body {
    font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Meiryo UI", "メイリオ", "Meiryo UI", sans-serif;
    text-align: center;
    font-size: 16px;
}

body,
nav {
    min-width: 1040px;
}

@media all and (-ms-high-contrast: none) {
    body {
        overflow-x: hidden;
    }
}

.inner {
    width: 980px;
    margin: 0 auto;
}

body,
a {
    color: #231815;
}

body,
dl,
figure {
    margin: 0;
    padding: 0;
}

body,
a {
    color: #000;
    text-decoration: none;
}

a:hover {
    opacity: .7;
}

img,
th {
    vertical-align: middle;
    text-align: center;
}

.parktower table {
    table-layout: fixed;
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%;
}

.tokyoprince table {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%;
}

h1,
h2,
h3,
h4,
p {
    font-weight: normal;
    max-height: 100%;
    margin: 0;
    padding: 0;
}

li {
    list-style: none;
}

a.avoid,
a.avoid:hover {
    cursor: default;
    opacity: .3;
	pointer-events: none;
}

a {
    outline: none;
}

/*color*/
nav.bottom li:first-child a,
nav.bottom a:after {
    background: #11356d;
}

.tokyoprince nav.bottom li.tp a,
.tokyoprince nav.bottom a:after {
    background: #7D0031;
}

.shinagawaprince nav.bottom li.tp a,
.shinagawaprince nav.bottom a:after {
    background: #9C7230;
}

.takanawaprince nav.bottom li.tp a,
.takanawaprince nav.bottom a:after {
    background: #00573B;
}

article {
    color: #11356d;
}

.parktower nav.bottom ul:first-child li:first-child a,
.parktower nav.bottom a:after {
    background: .11356d;
}

.tokyoprince nav.bottom ul:first-child li:first-child a,
.tokyoprince nav.bottom a:after {
    background: .7D0031;
}

.shinagawaprince nav.bottom ul:first-child li:first-child a,
.shinagawaprince nav.bottom a:after {
    background: .9C7230;
}

.takanawaprince nav.bottom ul:first-child li:first-child a,
.takanawaprince nav.bottom a:after {
    background: .00573B;
}

.parktower article {
    color: #11356d;
}

.tokyoprince article {
    color: #7D0031;
}

.shinagawaprince article {
    color: #9C7230;
}

.takanawaprince article {
    color: #00573B;
}


.tokyoprince li.sel::after {
    border-bottom: #000000 10px solid !important;
}

.shinagawaprince li.sel::after {
    border-bottom: #000000 10px solid !important;
}

.takanawaprince li.sel::after {
    border-bottom: #000000 10px solid !important;
}

.nega {
    color: #A0A0A0;
}

p,
li {
    max-height: 100%;
}

nav ul {
    overflow: hidden;
}

nav li {
    display: inline-block;
}

nav ul:first-child li:last-child {
    float: right;
}

nav a {
    display: inline-block;
    padding: 0 20px;
}

nav.top li:last-child {
    /*display: none;*/
}

nav.top li:last-child a {
    padding-left: 3px;
}

nav.top li:last-child a:first-child {
    padding-right: 3px;
}

nav.top li:last-child {
    padding-left: 20px;
    background: url(../images/lang.png) left center no-repeat;
}

nav.top {
    font-size: 15px;
    line-height: 32px;
    text-align: left;
}

nav.bottom {
    z-index: 999;
}

nav.bottom a {
    font-size: 15px;
    line-height: 70px;
    position: relative;
    letter-spacing: -.05em;
}

nav.bottom ul:last-child a {
    line-height: 45px;
}

nav.bottom a:after {
    content: '';
    display: none;
    width: 100%;
    height: 6px;
    position: absolute;
    bottom: 0;
    left: 0;
}

#sel a:after {
    display: block;
    width: 100%;
    height: 6px;
    position: absolute;
    bottom: 0;
    left: 0;
}

nav.bottom .hover a:hover {
    opacity: 1;
}

nav.bottom .hover a:hover:after {
    display: block;
}

nav.bottom li {
    margin-left: 3px;
}

nav.bottom li:first-child {
    margin-left: 0;
}

nav.bottom {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 70px;
    background: rgba(255, 255, 255, .9);
    text-align: left;
}

nav.bottom ul#select02 {
    box-shadow: 0 rgba(255, 255, 255, 0) !important;
}

nav.bottom ul {
    box-shadow: 0 0 4px rgba(0, 0, 0, .3);
    position: relative;
    z-index: 2;
}


nav.bottom ul.select {
    position: fixed;
    right: 0;
}

/*nav.bottom ul.select li:before {
  content: ">";
    vertical-align:baseline;
margin-top: 15px;
    padding-left: 10px;
}*/


nav.bottom ul:first-child {
    z-index: 3;
}

nav.bottom ul:first-child li:first-child a {
    color: #fff;
}

nav.bottom ul:first-child li:last-child a {
    background: #9fa0a0;
    color: #fff;
}

nav.bottom a span {
    display: inline-block;
    transform: rotate(90deg);
}

nav.bottom.on a span {
    transform: rotate(-90deg);
}

nav.bottom ul:last-child {
    display: inline-block;
    background: #fff;
    float: right;
    padding: 20px 0;
}

nav.bottom ul:last-child li {
    display: block;
    margin: 0;
}

nav.bottom ul:last-child li a {
    background: #fff;
}

nav.bottom ul:last-child li a:before {
    content: '';
    padding-right: .5em;
}

nav.bottom ul:last-child {
    display: none;
}

nav.bottom.on ul:last-child {
    display: inline-block;
}

nav.bottom.fixed {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999;
}

nav.bottom ul.select p.A01 {
    margin-left: 3em !important;
}

.slide {
    position: relative;
    overflow: hidden;
}

.slide img {
    width: 100%;
}

main {
    width: 980px;
    margin: 0 auto;
    padding: 85px 0;
}

header h1 {
    font-size: 27px;
    line-height: 1.4;
    color: #898989;
}

header h1 span.subs {
    font-size: 0.9em;
    display: block;
    padding-bottom: 15px;
}


@media all and (-ms-high-contrast: none) {
    header h1 {
        margin: 2em 0;
    }
}


header p {
    font-size: 16px;
    line-height: 1.6;
    margin-top: 1.5em;
}

section {
    margin-top: 70px;
}

@media all and (-ms-high-contrast: none) {
    section {
        margin-top: 70px;
        width: 980px;
        margin: auto;
    }
}


.parktower section .line {
    overflow: hidden;
    margin-top: 75px;
}

.tokyoprince section .line {
    overflow: hidden;
    margin-top: 35px;
}

.shinagawaprince section .line {
    overflow: hidden;
    margin-top: 35px;
}

.takanawaprince section .line {
    overflow: hidden;
    margin-top: 35px;
}

@media all and (-ms-high-contrast: none) {
    .shinagawaprince section .line {
        overflow: hidden;
        margin: 3em 0 !important;
    }

    .takanawaprince section .line {
        overflow: hidden;
        margin: 3em 0 !important;
    }
}




section .line:first-child {
    margin-top: 0;
}

article h1 {
    font-size: 22px;
    line-height: 1.4;
    color: #898989;
    margin-top: 1em;
}

article {
    float: left;
    width: 475px;
    margin-left: 30px;
    border-top: 4px solid;
    padding-top: 6px;
}

article:first-child {
    margin-left: 0;
}

footer .top {
    background: #efefef;
}

@media all and (-ms-high-contrast: none) {
    footer .top {
        margin-top: 6em;
    }
}


footer .top,
footer .middle {
    text-align: left;
    padding: 30px 0;
}

footer {
    font-size: 14px;
    line-height: 1.4;
}

footer h1 {
    font-weight: bold;
}

footer .top h1 {
    margin-top: 1.5em;
}

footer .top div.inner div:first-child h1:first-child {
    margin-top: 0;
}

footer .top ul {
    margin-top: .5em;
}

footer .top li {
    display: inline-block;
    margin-left: 1em;
}

footer .top li:first-child {
    margin-left: 0;
}

footer .top ul {
    padding-left: 1.5em;
}

footer .top h1:before {
    content: "＞";
    display: inline-block;
    width: 1.5em;
}

footer .top .dib {
    display: inline-block;
    margin-right: 5%;
}

footer .middle li {
    font-size: 13px;
    display: inline-block;
    width: 33.0%;
    margin-top: .5em;
}

footer .middle li:first-child {
    width: 100%;
    margin-top: 0;
}

footer .middle li:before {
    content: '■ ';
}

footer .bottom {
    font-size: 11px;
    line-height: 1.4;
    padding: 2em 0;
}

footer .bottom {
    border-top: 1px solid;
}

.back-to-top {
    position: fixed;
    right: 10px;
    bottom: 10px;
    color: #fff;
    width: 40px;
    height: 40px;
    z-index: 2;
    display: none;
}

.back-to-top:before {
    content: "";
    display: block;
    width: 40px;
    height: 40px;
    border-radius: 20px;
    position: absolute;
    left: 0;
    top: 0;
    background: #11356d;
}

.back-to-top:after {
    content: "↑";
    display: block;
    text-align: center;
    width: 40px;
    height: 40px;
    line-height: 40px;
    position: absolute;
    left: 0;
    top: 0;
}

@media (max-device-width: 750px) {
    .back-to-top {
        position: fixed;
        right: 10px;
        bottom: 10px;
        color: #fff;
        width: 80px !important;
        height: 80px !importantz;
        z-index: 2;
        display: none;
    }

    .back-to-top:before {
        content: "";
        display: block;
        width: 80px !important;
        height: 80px !important;
        border-radius: 20px;
        position: absolute;
        left: 0;
        top: 0;
        background: #11356d;
    }

    .back-to-top:after {
        content: "↑";
        display: block;
        text-align: center;
        width: 80px !important;
        height: 80px !important;
        line-height: 40px;
        position: absolute;
        left: 0;
        top: 0;
    }
}

@media screen and (max-width: 320px) {

    /* 320pxまでの幅の場合に適応される */
    .back-to-top {
        position: fixed;
        right: 10px;
        bottom: 10px;
        color: #fff;
        width: 80px !important;
        height: 80px !important;
        z-index: 2;
        display: none;
    }

    .back-to-top:before {
        content: "";
        display: block;
        width: 80px !important;
        height: 80px !important;
        border-radius: 20px;
        position: absolute;
        left: 0;
        top: 0;
        background: #11356d;
    }

    .back-to-top:after {
        content: "↑";
        display: block;
        text-align: center;
        width: 80px !important;
        height: 80px !important;
        line-height: 40px;
        position: absolute;
        left: 0;
        top: 0;
    }
}

/* ----------------------------------------
   TOPPAGE用
---------------------------------------- */
body.miceFactsheetTop {}

body.miceFactsheetTop nav.bottom {
    background: none;
}

body.miceFactsheetTop nav.bottom ul.bar {
    overflow: visible;
    height: 70px;
    box-shadow: none;
}

body.miceFactsheetTop nav.bottom ul:first-child li:last-child {
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.3);
}

body.miceFactsheetTop #description {
    text-align: left;
}

body.miceFactsheetTop #description h2 {
    padding-bottom: 7px;
    border-bottom: 1px solid #000;
    font-size: 1.2em;
    font-weight: bold;
}

body.miceFactsheetTop #description article {
    float: none;
    width: auto;
    margin-left: 0;
    border: none;
    padding: 10px 0 60px;
    color: #000;
}

body.miceFactsheetTop #description article:last-child {
    padding-bottom: 0;
}

body.miceFactsheetTop #description article p {
    line-height: 1.3;
}

body.miceFactsheetTop #description article p+p {
    margin-top: 5px;
}

body.miceFactsheetTop #description article p.lead {
    line-height: 1.5;
    font-weight: bold;
}

body.miceFactsheetTop main {
    padding: 80px 0 95px;
}

body.miceFactsheetTop #map {}

body.miceFactsheetTop #map iframe {
    width: 100%;
    /*height: 480px;*/
    height: 600px;
}

body.miceFactsheetTop #areaMap {
    text-align: left;
}

body.miceFactsheetTop #areaMap h2 {
    margin-bottom: 50px;
    padding: 10px 0;
    background: #000;
    text-align: center;
    color: #fff;
    font-size: 1.1em;
}

body.miceFactsheetTop #areaMap article {
    float: none;
    width: auto;
    height: auto;
    margin: 0 auto;
    padding: 0;
    border: none;
    text-align: center;
}

body.miceFactsheetTop map,
body.miceFactsheetTop area {
    border: none;
    outline: none;
}

/* 追加：2019.02.14
---------------------------------------- */
.nowrap {
    white-space: nowrap;
}

/* 追加：2019.03.01
---------------------------------------- */
.ib {
    display: inline-block;
}

.flex {
    display: flex;
}

.flex > * {
    flex: 0 0 auto;
}

.flex.jc-sb {
    justify-content: space-between;
}

.flex.jc-c {
    justify-content: center;
}

.m-auto {
    margin-right: auto;
    margin-left: auto;
}

.ml20 { margin-left: 20px; }

.pr30 { padding-right: 30px; }
.pl30 { padding-left: 30px; }