/* CSS Document */





.page_container {
    display: none;
}
.page_container.is_noanimation {
    display: block;
}





.l-section-inner-title {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
    color: #4C4B49;
    font-size: var( --font-size-24 );
    line-height: 1;
    letter-spacing: 0.1em;
    text-align: center;
}
@media screen and ( max-width: 768px ) {
}



.l-section-button {
    position: relative;
    width: min( calc( 280 * 100vw / var( --design-width ) ), 280px );
    height: min( calc( 280 * 100vw / var( --design-width ) ), 280px );
    margin: 0;
    padding: 0;
}
.l-section-button a {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: min( calc( 20 * 100vw / var( --design-width ) ), 20px );
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    font-size: var( --font-size-16 );
    line-height: 1;
    letter-spacing: 0.1em;
    border-radius: 50%;
    border: 1px solid #707071;
    transition: all 0.5s;
}
.l-section-button a .icon {
    position: relative;
    width: min( calc( 17.4 * 100vw / var( --design-width ) ), 17.4px );
    height: min( calc( 21.75 * 100vw / var( --design-width ) ), 21.75px );
    margin: 0;
    padding: 0;
    background-image: url( '../img/l-section-button-icon-gray.svg' );
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
.l-section-button a:hover {
    color: #fff;
    background-color: #707071;
    border: 1px solid #fff;
}
.l-section-button a:hover .icon {
    background-image: url( '../img/l-section-button-icon-white.svg' );
}
.l-section-button a.white {
    color: #fff;
    border: 1px solid #fff;
}
.l-section-button a.white .icon {
    background-image: url( '../img/l-section-button-icon-white.svg' );
}
.l-section-button a.white:hover {
    color: #707071;
    background-color: #fff;
    border: 1px solid #707071;
}
.l-section-button a.white:hover .icon {
    background-image: url( '../img/l-section-button-icon-gray.svg' );
}
@media screen and ( max-width: 768px ) {
    .l-section-button {
        width: calc( 105 * 100vw / var( --design-width ) );
        height: calc( 105 * 100vw / var( --design-width ) );
    }
    .l-section-button a {
        gap: calc( 10 * 100vw / var( --design-width ) );
        font-size: var( --font-size-12 );
    }
    .l-section-button a .icon {
        width: calc( 8.7 * 100vw / var( --design-width ) );
        height: calc( 10.875 * 100vw / var( --design-width ) );
    }
    .l-section-button a.white {
    }
    .l-section-button a.white .icon {
    }
}





/* ==============================

mv 

============================== */
.l-section.l-section--first.mv {
    height: auto;
    aspect-ratio: 1920 / 1158;
    margin-top: 0;
}
@media screen and ( max-width: 768px ) {
    .l-section.l-section--first.mv {
        aspect-ratio: 860 / 1338 ;
        margin-top: calc(60 * 100vw / var(--design-width));
    }
}


.l-section.mv .mv-inner-bg picture img {
    object-position: center bottom;
    object-position: center;
}
@media screen and ( max-width: 768px ) {
    .l-section.mv .mv-inner-bg picture img {
    }
}



.l-section.mv .mv-inner-fg {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
}
@media screen and ( max-width: 768px ) {
    .l-section.mv .mv-inner-fg {
    }
}



.l-section.mv .mv-inner-fg__image--catchcopy {
    position: relative;
    width: 45.16%;
    max-width: 867px;
    margin: 0 0 min( calc( 30 * 100vw / var( --design-width ) ), 30px );
    padding: 0;
}
.l-section.mv .mv-inner-fg__image--catchcopy picture img {
    width: 100%;
}
@media screen and ( max-width: 768px ) {
    .l-section.mv .mv-inner-fg__image--catchcopy {
        width: 70%;
        width: 60%;
        max-width: none;
        margin: 0 0 calc( 10 * 100vw / var( --design-width ) );
    }
}



.l-section.mv .mv-inner-fg-flexbox {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 0 min( calc( 20 * 100vw / var( --design-width ) ), 20px );
    width: min( calc( 1238 * 100vw / var( --design-width ) ), 1238px );
    margin: 0 0 min( calc( 40 * 100vw / var( --design-width ) ), 40px );
    padding: 0;
}
@media screen and ( max-width: 768px ) {
    .l-section.mv .mv-inner-fg-flexbox {
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        gap: calc( 10 * 100vw / var( --design-width ) ) 0;
        width: 100%;
        margin: 0 0 calc( 30 * 100vw / var( --design-width ) );
    }
}



.l-section.mv .mv-inner-fg__image--separator {
    position: relative;
    width: 1px;
    height: 100%;
    height: 50%;
    margin: 0;
    padding: 0;
    background-color: rgba( 255, 255, 255, 0.75 );
}
.l-section.mv .mv-inner-fg__image--point_01 {
    position: relative;
    width: min( calc( 732 * 100vw / var( --design-width ) ), 732px );
    margin: 0;
    padding: 0;
}
.l-section.mv .mv-inner-fg__image--point_02 {
    position: relative;
    width: min( calc( 540 * 100vw / var( --design-width ) ), 540px );
    margin: 0;
    padding: 0;
}
@media screen and ( max-width: 768px ) {
    .l-section.mv .mv-inner-fg__image--separator {
        position: relative;
        width: 70%;
        height: 1px;
        margin: 0 auto;
        padding: 0;
        background-color: #fff;
    }
    .l-section.mv .mv-inner-fg__image--point_01 {
        position: relative;
        width: calc( 202.184 * 100vw / var( --design-width ) );
        width: 70%;
        margin: 0;
        padding: 0;
    }
    .l-section.mv .mv-inner-fg__image--point_02 {
        position: relative;
        width: calc( 272.8 * 100vw / var( --design-width ) );
        width: 90%;
        width: 70%;
        margin: 0;
        padding: 0;
    }
}





/* ==============================

point 

============================== */
.l-section.point {
    padding: min( calc( 50 * 100vw / var( --design-width ) ), 50px ) 0;
    background-color: #353539;
}
.l-section.point .point-inner {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    max-width: var( --design-width-pixel );
    margin: 0 auto;
}
@media screen and ( max-width: 768px ) {
    .l-section.point {
        padding: calc( 25 * 100vw / var( --design-width ) ) 0;
    }
    .l-section.point .point-inner {
        flex-direction: column;
        max-width: none;
        padding: 0 var(--default-padding-x);
    }
}



.l-section.point .point-inner .each_point {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 25%;
    margin: 0;
    padding: 0;
    border-left: 1px solid #fff;
}
.l-section.point .point-inner .each_point:first-of-type {
    border-left: none;
}
.l-section.point .point-inner .each_point span {
    position: relative;
    display: inline-block;
    margin: 0;
    padding: 0;
    color: #fff;
    line-height: 1.4;
    letter-spacing: 0.1em;
}
.l-section.point .point-inner .each_point .text {
    font-size: min( calc( 30 * 100vw / var( --design-width ) ), 30px );
    text-align: center;
}
.l-section.point .point-inner .each_point .text-s {
    position: absolute;
    bottom: 50%;
    left: 10%;
    font-size: var( --font-size-13 );
    line-height: 1;
}
.l-section.point .point-inner .each_point .text-l {
    font-size: min( calc( 85 * 100vw / var( --design-width ) ), 85px );
    line-height: 1;
    letter-spacing: 0;
}
@media screen and ( max-width: 1100px ) {
    .l-section.point .point-inner .each_point .text-s {
        bottom: 90%;
    }
}
@media screen and ( max-width: 768px ) {
    .l-section.point .point-inner .each_point {
        width: 100%;
        border-left: none;
        border-top: 1px solid #fff;
        padding: calc( 15 * 100vw / var( --design-width ) ) 0;
    }
    .l-section.point .point-inner .each_point:first-of-type {
        border-left: none;
        border-top: none;
    }
    .l-section.point .point-inner .each_point span {
    }
    .l-section.point .point-inner .each_point .text {
        font-size: var( --font-size-26 );
        font-size: var( --font-size-24 );
    }
    .l-section.point .point-inner .each_point .text-s {
        position: absolute;
        bottom: 70%;
        left: 5%;
        font-size: var( --font-size-13 );
    }
    .l-section.point .point-inner .each_point .text-l {
        font-size: calc( 42.5 * 100vw / var( --design-width ) );
    }
}





/* ==============================

entry_box 

============================== */
.l-section.entry_box {
    padding: 0;
    background-image: url( '../img/entry_box-bg.webp' );
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
.l-section.entry_box .entry_box-inner {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    max-width: var( --design-width-pixel );
    margin: 0 auto;
    padding-top: min( calc( 190 * 100vw / var( --design-width ) ), 190px );
    padding-bottom: min(calc(95 * 100vw / var(--design-width)), 95px);
}

.l-section.entry_box .entry_box-banner {
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: var(--design-width-pixel);
    margin: 0 auto;
    padding-top: 0;
    padding-bottom: min(calc(190 * 100vw / var(--design-width)), 190px);
}

@media screen and ( max-width: 768px ) {
    .l-section.entry_box {
    }
    .l-section.entry_box .entry_box-inner {
        max-width: none;
        padding-top: calc( 95 * 100vw / var( --design-width ) );
        padding-bottom: calc( 40 * 100vw / var( --design-width ) );
    }
    .l-section.entry_box .entry_box-banner {
        padding-top: 0;
        padding-bottom: calc(95 * 100vw / var(--design-width));
    }
}



.l-section.entry_box .entry_box-inner-information {
    position: relative;
    width: 100%;
    max-width: 1410px;
    margin: 0 auto;
    padding: min( calc( 50 * 100vw / var( --design-width ) ), 50px );
    background-color: #E8E9E3;
}
.l-section.entry_box .entry_box-inner-information::before {
    content: '';
    position: absolute;
    top: 10px;
    left: 10px;
    width: calc( 100% - 20px );
    height: calc( 100% - 20px );
    margin: 0;
    padding: 0;
    border: 1px solid #262E41;
}
.l-section.entry_box .l-section-inner-title {
    position: relative;
    width: 100%;
    margin: 0 0 40px;
    padding: 0;
}
.l-section.entry_box .l-section-lead {
    margin-bottom: 40px;
}
.l-section.entry_box .entry_box-inner-information-entry_text {
    position: relative;
    margin: 0 0 70px;
    padding: 0;
    color: #4C4B49;
    font-size: var( --font-size-25 );
    font-size: var( --font-size-22 );
    line-height: 1.5;
    letter-spacing: 0.1em;
    text-align: center;
}
@media screen and ( max-width: 1000px ) {
    .l-section.entry_box .entry_box-inner-information-entry_text .spObj {
        display: block;
    }
}
@media screen and ( max-width: 768px ) {
    .l-section.entry_box .entry_box-inner-information {
        width: 100%;
        max-width: none;
        padding: calc( 50 * 100vw / var( --design-width ) ) calc( 25 * 100vw / var( --design-width ) );
    }
    .l-section.entry_box .entry_box-inner-information::before {
        top: 5px;
        left: 5px;
        width: calc( 100% - 10px );
        height: calc( 100% - 10px );
    }
    .l-section.entry_box .l-section-inner-title {
        margin: 0 0 calc( 20 * 100vw / var( --design-width ) );
    }
    .l-section.entry_box .l-section-lead {
        margin-bottom: calc( 20 * 100vw / var( --design-width ) );
    }
    .l-section.entry_box .entry_box-inner-information-entry_text {
        margin: 0 0 calc( 35 * 100vw / var( --design-width ) );
        font-size: var( --font-size-14 );
        text-align: left;
    }
}



.l-section.entry_box .entry_box-inner-information-entry_button {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    width: 100%;
    max-width: 1080px;
    margin: 0 auto;
    padding: 0;
}
.l-section.entry_box .entry_box-inner-information-entry_button a {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 48%;
    max-width: 526px;
    height: 95px;
    gap: min( calc( 20 * 100vw / var( --design-width ) ), 20px );
    margin: 0;
    padding: 0;
}
.l-section.entry_box .entry_box-inner-information-entry_button a.entry {
    background-color: #8B7847;
}
.l-section.entry_box .entry_box-inner-information-entry_button a.limited {
    background-color: #353539;
}
.l-section.entry_box .entry_box-inner-information-entry_button a span {
    position: relative;
    display: inline-block;
    margin: 0;
    padding: 0;
    color: #fff;
    line-height: 1;
    letter-spacing: 0.1em;
}
.l-section.entry_box .entry_box-inner-information-entry_button a .en {
    font-size: var( --font-size-16 );
}
.l-section.entry_box .entry_box-inner-information-entry_button a .jp {
    font-size: var( --font-size-20 );
}
@media screen and ( max-width: 768px ) {
    .l-section.entry_box .entry_box-inner-information-entry_button {
        position: relative;
        flex-direction: column;
        gap: calc( 30 * 100vw / var( --design-width ) );
        max-width: none;
    }
    .l-section.entry_box .entry_box-inner-information-entry_button a {
        width: 100%;
        max-width: none;
        height: calc( 70 * 100vw / var( --design-width ) );
        gap: calc( 10 * 100vw / var( --design-width ) );
    }
    .l-section.entry_box .entry_box-inner-information-entry_button a.entry {
    }
    .l-section.entry_box .entry_box-inner-information-entry_button a.limited {
    }
    .l-section.entry_box .entry_box-inner-information-entry_button a span {
    }
    .l-section.entry_box .entry_box-inner-information-entry_button a .en {
        font-size: var( --font-size-12 );
    }
    .l-section.entry_box .entry_box-inner-information-entry_button a .jp {
        font-size: var( --font-size-16 );
    }
}



.l-section.entry_box .entry_box-inner-information-information_list {
    position: relative;
    width: 100%;
    max-width: 1080px;
    max-width: 880px;
    margin: 0 auto;
    padding: min( calc( 50 * 100vw / var( --design-width ) ), 50px ) 0;
}
.l-section.entry_box .entry_box-inner-information-information_list-inner {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: min( calc( 10 * 100vw / var( --design-width ) ), 10px );
    width: 100%;
    height: auto;
    max-height: 200px;
    margin: 0;
    padding: 0;
    overflow-y: auto;
}
.l-section.entry_box .entry_box-inner-information-information_list-inner .each_information {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
    margin: 0;
    padding: 0 1em;
}
.l-section.entry_box .entry_box-inner-information-information_list-inner .each_information .date {
    position: relative;
    width: 7.5em;
    margin: 0;
    padding: 0;
    font-size: min( calc( 30 * 100vw / var( --design-width ) ), 30px );
    font-size: var( --font-size-18 );
    font-size: var( --font-size-16 );
    line-height: 1.75;
    letter-spacing: 0.1em;
}
.l-section.entry_box .entry_box-inner-information-information_list-inner .each_information .content {
    position: relative;
    width: calc( 100% - 8em );
    margin: 0;
    padding: 0;
    font-size: min( calc( 30 * 100vw / var( --design-width ) ), 30px );
    font-size: var( --font-size-18 );
    font-size: var( --font-size-16 );
    line-height: 1.75;
    letter-spacing: 0.1em;
}
@media screen and ( max-width: 768px ) {
    .l-section.entry_box .entry_box-inner-information-information_list {
        max-width: none;
        margin: 0 auto;
        padding: calc( 25 * 100vw / var( --design-width ) ) 0;
    }
    .l-section.entry_box .entry_box-inner-information-information_list-inner {
        gap: calc( 15 * 100vw / var( --design-width ) );
        max-height: 250px;
    }
    .l-section.entry_box .entry_box-inner-information-information_list-inner .each_information {
        flex-direction: column;
    }
    .l-section.entry_box .entry_box-inner-information-information_list-inner .each_information .date {
        width: 100%;
        font-size: var( --font-size-14 );
    }
    .l-section.entry_box .entry_box-inner-information-information_list-inner .each_information .content {
        width: 100%;
        font-size: var( --font-size-14 );
    }
}






/* ==============================

concept 

============================== */
.l-section.concept {
    padding: 0;
}
@media screen and ( max-width: 768px ) {
    .l-section.concept {
    }
}



.l-section.concept .concept-bg {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
    font-size: 0;
}
.l-section.concept .concept-bg.pcObj {
    display: block;
}
.l-section.concept .concept-bg.spObj {
    display: none;
}
.l-section.concept .concept-bg picture img {
    width: 100%;
    object-fit: cover;
    object-position: bottom center;
}
.l-section.concept .concept-bg figcaption {
    position: absolute;
    bottom: 0;
    right: 0;
    display: inline-block;
    width: auto;
    margin: 0;
    padding: 0 1em;
    color: #fff;
    font-size: var( --font-size-figcaption );
    line-height: 2;
    letter-spacing: 0.1em;
    background-color: rgba( 0, 0, 0, 0.4 )
}
@media screen and ( max-width: 768px ) {
    .l-section.concept .concept-bg {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
    }
    .l-section.concept .concept-bg.pcObj {
        display: none;
    }
    .l-section.concept .concept-bg.spObj {
        display: block;
    }
    .l-section.concept .concept-bg figure, 
    .l-section.concept .concept-bg picture {
        height: 100%;
    }
    .l-section.concept .concept-bg picture img {
        height: 100%;
    }
    .l-section.concept .concept-bg figcaption {
    }
}



.l-section.concept .concept-fg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
}
.l-section.concept .concept-inner {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    max-width: var( --design-width-pixel );
    margin: 0 auto;
    padding-top: min( calc( 130 * 100vw / var( --design-width ) ), 130px );
    padding-bottom: min( calc( 130 * 100vw / var( --design-width ) ), 130px );
}
@media screen and ( max-width: 768px ) {
    .l-section.concept .concept-fg {
        position: relative;
        top: auto;
        left: auto;
        width: 100%;
        height: 180vh;
        height: 150vh;
        height: calc( 950 * 100vw / var( --design-width ) ); /* 335 + 60 * 2 + X */
    }
    .l-section.concept .concept-inner {
        align-items: flex-start;
        height: 100%;
        padding-top: min( calc( 65 * 100vw / var( --design-width ) ), 65px );
        padding-bottom: min( calc( 65 * 100vw / var( --design-width ) ), 65px );
    }
}



.l-section.concept .concept-fg .concept-inner-content {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
}
.l-section.concept .concept-fg .l-section-inner-title {
    position: relative;
    width: 100%;
    margin: 0 0 min( calc( 75 * 100vw / var( --design-width ) ), 75px );
    padding: 0;
    color: #fff;
}
.l-section.concept .concept-fg .concept-inner-content-catchcopy {
    position: relative;
    width: min( calc( 1171 * 100vw / var( --design-width ) ), 1171px );
    margin: 0 auto min( calc( 75 * 100vw / var( --design-width ) ), 75px );
    padding: 0;
}
.l-section.concept .concept-fg .concept-inner-content-catchcopy img {
    width: 100%;
}
.l-section.concept .concept-fg .concept-inner-content-text {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
    color: #fff;
    font-size: min( calc( 29 * 100vw / var( --design-width ) ), 29px );
    line-height: 1.75;
    line-height: 2;
    line-height: 2.41;
    letter-spacing: 0.1em;
    text-align: center;
}
@media screen and ( max-width: 768px ) {
    .l-section.concept .concept-fg .concept-inner-content {
    }
    .l-section.concept .concept-fg .l-section-inner-title {
        margin: 0 0 calc( 37.5 * 100vw / var( --design-width ) );
    }
    .l-section.concept .concept-fg .concept-inner-content-catchcopy {
        width: 80%;
        margin: 0 auto calc( 37.5 * 100vw / var( --design-width ) );
    }
    .l-section.concept .concept-fg .concept-inner-content-catchcopy img {
    }
    .l-section.concept .concept-fg .concept-inner-content-text {
        font-size: var( --font-size-14 );
        text-align: left;
        text-shadow: 3px 3px 5px rgba( 0, 0, 0, 0.85 );
    }
}





/* ==============================

premium_position 

============================== */
.l-section.premium_position {
    padding: min( calc( 200 * 100vw / var( --design-width ) ), 200px ) 0;
    background-color: #F4F3ED;
}
.l-section.premium_position .premium_position-inner {
    padding-left: min( calc( 195 * 100vw / var( --design-width ) ), 195px );
}
@media screen and ( max-width: 768px ) {
    .l-section.premium_position {
        padding: calc( 65 * 100vw / var( --design-width ) ) 0;
    }
    .l-section.premium_position .premium_position-inner {
        padding: 0 var(--default-padding-x);
    }
}



.l-section.premium_position .l-section-title {
    text-align: left;
}
@media screen and ( max-width: 768px ) {
    .l-section.premium_position .l-section-title {
    }
}


.premium_position-inner-content {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    margin: 0;
    padding: 0;
}
.l-section.premium_position .l-section-lead {
    position: absolute;
    top: 0;
    left: 0;
    text-align: left;
}
.l-section.premium_position .l-section-button {
}
@media screen and ( max-width: 768px ) {
    .premium_position-inner-content {
        justify-content: flex-end;
        align-items: flex-start;
        margin-bottom: calc( 30 * 100vw / var( --design-width ) );
        padding-top: calc( 150 * 100vw / var( --design-width ) );
    }
    .l-section.premium_position .l-section-lead {
        margin: 0;
    }
    .l-section.premium_position .l-section-button {
        position: absolute;
        top: calc( 120 * 100vw / var( --design-width ) );
        left: 0;
        z-index: 5;
    }
}



.l-section.premium_position .premium_position-inner-content-image {
    position: relative;
    width: calc( 100% - 280px );
    margin: 0;
    padding: 0;
}
.l-section.premium_position .premium_position-inner-content-image picture img {
    width: 100%;
    mix-blend-mode: multiply;
}
.l-section.premium_position .premium_position-inner-content-image figcaption {
    position: absolute;
    display: inline-block;
    bottom: 10%;
    right: 0;
    width: auto;
    margin: 0;
    padding: 0;
    font-size: var( --font-size-figcaption );
    line-height: 2;
    letter-spacing: 0.1em;
}
@media screen and ( max-width: 768px ) {
    .l-section.premium_position .premium_position-inner-content-image {
        width: calc( 100% - calc( 105 * 100vw / var( --design-width ) ) );
        width: 100%;
    }
    .l-section.premium_position .premium_position-inner-content-image picture img {
        width: 100%;
        mix-blend-mode: multiply;
    }
    .l-section.premium_position .premium_position-inner-content-image figcaption {
        bottom: 0;
    }
}



.l-section.premium_position .premium_position-movie {
    position: relative;
    width: 100%;
    max-width: 924px;
    margin: 0 auto;
    padding: 0;
}
.l-section.premium_position .premium_position-movie-text {
    position: relative;
    width: 100%;
    margin: 0 0 min( calc( 35 * 100vw / var( --design-width ) ), 35px );
    padding: 0;
    font-size: min( calc( 31 * 100vw / var( --design-width ) ), 31px );
    line-height: 1;
    letter-spacing: 0.1em;
    text-align: center;
}
.l-section.premium_position .premium_position-movie-caption {
    position: relative;
    width: 100%;
    margin: 0 0 min( calc( 35 * 100vw / var( --design-width ) ), 35px );
    padding: 0;
    color: #fff;
    font-size: min( calc( 30 * 100vw / var( --design-width ) ), 30px );
    line-height: 2;
    letter-spacing: 0.1em;
    text-align: center;
    background-color: #1F2346;
}
.l-section.premium_position .premium_position-movie-image {
}
.l-section.premium_position .premium_position-movie-image a {
}
.l-section.premium_position .premium_position-movie-image a img {
}
@media screen and ( max-width: 768px ) {
    .l-section.premium_position .premium_position-movie {
        max-width: none;
    }
    .l-section.premium_position .premium_position-movie-text {
        margin: 0 0 calc( 20 * 100vw / var( --design-width ) );
        font-size: calc( 14 * 100vw / var( --design-width ) );
        line-height: 1.5;
    }
    .l-section.premium_position .premium_position-movie-caption {
        margin: 0 0 calc( 20 * 100vw / var( --design-width ) );
        font-size: calc( 13 * 100vw / var( --design-width ) );
        line-height: 3;
    }
    .l-section.premium_position .premium_position-movie-image {
    }
    .l-section.premium_position .premium_position-movie-image a {
    }
    .l-section.premium_position .premium_position-movie-image a img {
    }
}





/* ==============================

central_location 

============================== */
.l-section.central_location {
    padding: 0;
}
@media screen and ( max-width: 768px ) {
    .l-section.central_location {
    }
}



.l-section.central_location .central_location-bg {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
    font-size: 0;
}
.l-section.central_location .central_location-bg.pcObj {
    display: block;
}
.l-section.central_location .central_location-bg.spObj {
    display: none;
}
.l-section.central_location .central_location-bg picture img {
    width: 100%;
    object-fit: cover;
    object-position: bottom center;
}
.l-section.central_location .central_location-bg figcaption {
    position: absolute;
    bottom: 0;
    right: 0;
    display: inline-block;
    width: auto;
    margin: 0;
    padding: 0 1em;
    color: #fff;
    font-size: var( --font-size-figcaption );
    line-height: 2;
    letter-spacing: 0.1em;
    background-color: rgba( 0, 0, 0, 0.6 )
}
@media screen and ( max-width: 768px ) {
    .l-section.central_location .central_location-bg {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
    .l-section.central_location .central_location-bg.pcObj {
        display: none;
    }
    .l-section.central_location .central_location-bg.spObj {
        display: block;
    }
    .l-section.central_location .central_location-bg figure, 
    .l-section.central_location .central_location-bg picture {
        height: 100%;
    }
    .l-section.central_location .central_location-bg picture img {
        height: 100%;
    }
    .l-section.central_location .central_location-bg figcaption {
    }
}



.l-section.central_location .central_location-fg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: min( calc( 130 * 100vw / var( --design-width ) ), 130px ) 0;
}
.l-section.central_location .central_location-inner {
    width: 100%;
    max-width: var( --design-width-pixel );
    margin: 0 auto;
}
@media screen and ( max-width: 768px ) {
    .l-section.central_location .central_location-fg {
        position: relative;
        top: auto;
        left: auto;
        height: 200vh;
        height: calc( 1334 * 100vw / var( --design-width ) ); /* 750 + 60 * 2 + X */
        height: calc( 1500 * 100vw / var( --design-width ) ); /* 750 + 60 * 2 + X */
        padding: min( calc( 65 * 100vw / var( --design-width ) ), 65px ) 0;
    }
    .l-section.central_location .central_location-inner {
        max-width: none;
    }
}



.l-section.central_location .l-section-title {
    color: #fff;
}
.l-section.central_location .l-section-lead {
    color: #fff;
}
@media screen and ( max-width: 768px ) {
    .l-section.central_location .l-section-title {
    }
    .l-section.central_location .l-section-lead {
    }
}



.l-section.central_location .central_location-inner-content {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    margin: 0;
    padding: 0;
}
@media screen and ( max-width: 768px ) {
    .l-section.central_location .central_location-inner-content {
        flex-direction: column;
        justify-content: space-between;
        align-items: center;
        gap: calc( 30 * 100vw / var( --design-width ) );
        padding: 0 calc( 30 * 100vw / var( --design-width ) ) 0;
        padding-top: calc( calc( 60 * 100vw / var( --design-width ) ) + calc( 105 * 100vw / var( --design-width ) ) ); /* LINK分下げる */
    }
}



.l-section.central_location .central_location-content__image {
    position: relative;
    width: min( calc( 439 * 100vw / var( --design-width ) ), 439px );
    margin: 0;
    padding: 0;
}
.l-section.central_location .central_location-content__image.varie {
    margin-top: min( calc( 50 * 100vw / var( --design-width ) ), 50px );
}
.l-section.central_location .central_location-content__image.ichiban {
    position: absolute;
    top: min( calc( 230 * 100vw / var( --design-width ) ), 230px );
    top: min( calc( 210 * 100vw / var( --design-width ) ), 210px );
    left: min( calc( 310 * 100vw / var( --design-width ) ), 310px );
    width: min( calc( 311 * 100vw / var( --design-width ) ), 311px );
    margin: 0;
    padding: 0;
}

.l-section.central_location .central_location-content__image picture img {
    width: 100%;
}
.l-section.central_location .central_location-content__image figcaption {
    position: relative;
    display: block;
    width: auto;
    margin: 0;
    padding: 0;
    color: #fff;
    font-size: var( --font-size-figcaption );
    line-height: 2;
    letter-spacing: 0.1em;
}
@media screen and ( max-width: 768px ) {
    .l-section.central_location .l-section-button {
        position: absolute;
        top: 0;
        left: calc( 50% - calc( 52.5 * 100vw / var( --design-width ) ) );
        margin-bottom: calc( 30 * 100vw / var( --design-width ) );
        
    }
    .l-section.central_location .central_location-content__image {
        width: 50%;
    }
    .l-section.central_location .central_location-content__image.akos {
        width: 100%;
        padding-right: 50%;
    }
    .l-section.central_location .central_location-content__image.varie {
        width: 100%;
        padding-left: 50%;
        margin-top: 0;
    }
    .l-section.central_location .central_location-content__image.ichiban {
        top: calc( 90 * 100vw / var( --design-width ) );
        left: calc( 135 * 100vw / var( --design-width ) );
        width: 35%;
    }


    .l-section.central_location .central_location-content__image {
        width: 100%;
        padding: 0;
    }
    .l-section.central_location .central_location-content__image.akos {
        width: 100%;
        padding: 0;
    }
    .l-section.central_location .central_location-content__image.varie {
        width: 100%;
        padding: 0;
        margin-top: 0;
    }
    .l-section.central_location .central_location-content__image.ichiban {
        position: relative;
        top: auto;
        left: auto;
        width: 100%;
    }


    .l-section.central_location .central_location-content__image picture img {
    }
    .l-section.central_location .central_location-content__image figcaption {
        text-align: right;
        background-color: rgba( 0, 0, 0, 0.4 );
    }
}





/* ==============================

direct_access 

============================== */
.l-section.direct_access {
    padding: min( calc( 200 * 100vw / var( --design-width ) ), 200px ) 0;
    background-color: #272727;
}
.l-section.direct_access .direct_access-inner {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
@media screen and ( max-width: 768px ) {
    .l-section.direct_access {
        padding: calc( 100 * 100vw / var( --design-width ) ) 0;
    }
    .l-section.direct_access .direct_access-inner {
        display: flex;
        flex-direction: column-reverse;
        justify-content: flex-start;
        align-items: flex-start;
    }
    .l-section.direct_access {
        padding: 0;
    }
    .l-section.direct_access .direct_access-inner {
        display: block;
        height: calc( calc( 100vh + calc( 200 * 100vw / var( --design-width ) ) ) - calc( 60 * 100vw / var( --design-width ) ) );
        padding: calc( 100 * 100vw / var( --design-width ) ) 0;
    }
}



.l-section.direct_access .direct_access-inner-image {
    position: relative;
    width: min( calc( 991 * 100vw / var( --design-width ) ), 991px );
    margin: 0;
    padding: 0;
}
.l-section.direct_access .direct_access-inner-image picture img {
    width: 100%;
}
.l-section.direct_access .direct_access-inner-image figcaption {
    position: relative;
    display: block;
    width: auto;
    margin: 0;
    padding: 0;
    color: #fff;
    font-size: var( --font-size-figcaption );
    line-height: 2;
    letter-spacing: 0.1em;
    text-align: right;
}
@media screen and ( max-width: 768px ) {
    .l-section.direct_access .direct_access-inner-image {
        width: 100%;
    }
    .l-section.direct_access .direct_access-inner-image picture img {
    }
    .l-section.direct_access .direct_access-inner-image figcaption {
    }
    .l-section.direct_access .direct_access-inner-image {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
    .l-section.direct_access .direct_access-inner-image picture::after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 100%;
        height: 100%;
        margin: 0;
        padding: 0;
        background-color: rgba( 0, 0, 0, 0.5 );
    }
    .l-section.direct_access .direct_access-inner-image figure, 
    .l-section.direct_access .direct_access-inner-image picture {
        height: 100%;
    }
    .l-section.direct_access .direct_access-inner-image picture img {
        height: 100%;
        object-fit: cover;
        object-position: center;
    }
    .l-section.direct_access .direct_access-inner-image figcaption {
        position: absolute;
        bottom: 0;
        right: 0;
        display: inline-block;
        background-color: rgba( 0, 0, 0, 0.4 );
    }
}



.l-section.direct_access .direct_access-inner-content {
    position: relative;
    width: calc( 100% - min( calc( 1131 * 100vw / var( --design-width ) ), 1131px ) ); /* +140 */
    margin: 0;
    padding: 0;
}
.l-section.direct_access .l-section-title {
    color: #fff;
    text-align: left;
}
.l-section.direct_access .l-section-lead {
    color: #fff;
    text-align: left;
}
.l-section.direct_access .l-section-button {
    margin-left: min( calc( 120 * 100vw / var( --design-width ) ), 120px );
    margin-bottom: min( calc( 155 * 100vw / var( --design-width ) ), 155px );
}
.l-section.direct_access .direct_access-inner-content-image {
    position: relative;
    width: 100%;
    margin: 0;
    padding-left: min( calc( 120 * 100vw / var( --design-width ) ), 120px );
}
.l-section.direct_access .direct_access-inner-content-image figcaption {
    position: relative;
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    color: #fff;
    font-size: var( --font-size-figcaption );
    line-height: 2;
    letter-spacing: 0.1em;
    text-align: right;
}
@media screen and ( max-width: 768px ) {
    .l-section.direct_access .direct_access-inner-content {
        width: 100%;
        padding: 0 var(--default-padding-x);
    }
    .l-section.direct_access .l-section-title {
    }
    .l-section.direct_access .l-section-lead {
    }
    .l-section.direct_access .l-section-button {
        margin-left: auto;
        margin-right: auto;
        margin-bottom: calc( 45 * 100vw / var( --design-width ) );
    }
    .l-section.direct_access .direct_access-inner-content-image {
        margin-left: auto;
        margin-right: 0;
        margin-bottom: calc( 45 * 100vw / var( --design-width ) );
        padding: 0 0 0 30%;
    }
    .l-section.direct_access .direct_access-inner-content-image figcaption {
    }
}





/* ==============================

modern_design 

============================== */
.l-section.modern_design {
    padding: 0;
}
@media screen and ( max-width: 768px ) {
    .l-section.modern_design {
    }
}



.l-section.modern_design .modern_design-bg {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
    font-size: 0;
}
.l-section.modern_design .modern_design-bg.pcObj {
    display: block;
}
.l-section.modern_design .modern_design-bg.spObj {
    display: none;
}
.l-section.modern_design .modern_design-bg picture img {
    width: 100%;
    object-fit: cover;
    object-position: bottom center;
}
.l-section.modern_design .modern_design-bg figcaption {
    position: absolute;
    bottom: 0;
    right: 0;
    display: inline-block;
    width: auto;
    margin: 0;
    padding: 0 1em;
    color: #fff;
    font-size: var( --font-size-figcaption );
    line-height: 2;
    letter-spacing: 0.1em;
    background-color: rgba( 0, 0, 0, 0.4 )
}
@media screen and ( max-width: 768px ) {
    .l-section.modern_design .modern_design-bg {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
    }
    .l-section.modern_design .modern_design-bg.pcObj {
        display: none;
    }
    .l-section.modern_design .modern_design-bg.spObj {
        display: block;
    }
    .l-section.modern_design .modern_design-bg figure, 
    .l-section.modern_design .modern_design-bg picture {
        height: 100%;
    }
    .l-section.modern_design .modern_design-bg picture img {
        height: 100%;
        object-fit: cover;
        object-position: top center;
    }
    .l-section.modern_design .modern_design-bg figcaption {
    }
}



.l-section.modern_design .modern_design-fg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
}
.l-section.modern_design .modern_design-inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: var( --design-width-pixel );
    margin: 0 auto;
    padding-top: min( calc( 130 * 100vw / var( --design-width ) ), 130px );
    padding-bottom: min( calc( 130 * 100vw / var( --design-width ) ), 130px );
}
@media screen and ( max-width: 768px ) {
    .l-section.modern_design .modern_design-fg {
        position: relative;
        top: auto;
        left: auto;
        height: calc( 100vh - calc( 60 * 100vw / var( --design-width ) ) );
    }
    .l-section.modern_design .modern_design-inner {
        max-width: none;
        padding-top: calc( 65 * 100vw / var( --design-width ) );
        padding-bottom: calc( 65 * 100vw / var( --design-width ) );
    }
}



.l-section.modern_design .l-section-title {
    color: #fff;
}
.l-section.modern_design .l-section-lead {
    margin-bottom: min( calc( 300 * 100vw / var( --design-width ) ), 300px );
    color: #fff;
}
.l-section.modern_design .modern_design-inner-text {
    position: relative;
    margin: 0;
    padding: 0;
    color: #fff;
    font-size: min( calc( 45 * 100vw / var( --design-width ) ), 45px );
    line-height: 2;
    letter-spacing: 0.1em;
}
@media screen and ( max-width: 768px ) {
    .l-section.modern_design .l-section-title {
    }
    .l-section.modern_design .l-section-lead {
        margin-bottom: calc( 150 * 100vw / var( --design-width ) );
    }
    .l-section.modern_design .modern_design-inner-text {
        font-size: var( --fixed-font-size-20 );
    }
}





/* ==============================

smart_design 

============================== */
.l-section.smart_design {
    padding: 0;
    background-color: #948572;
}
.l-section.smart_design .smart_design-inner {
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
}
@media screen and ( max-width: 768px ) {
    .l-section.smart_design {
        padding: calc( 100 * 100vw / var( --design-width ) ) 0;
    }
    .l-section.smart_design .smart_design-inner {
        flex-direction: column;
        align-items: flex-start;
    }
}



.l-section.smart_design .smart_design-inner-conetnt {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    width: calc( 100% - min( calc( 1041 * 100vw / var( --design-width ) ), 1041px ) );
    margin: 0;
    padding: 0 0 0 min( calc( 110 * 100vw / var( --design-width ) ), 110px );
}
.l-section.smart_design .l-section-title {
    color: #fff;
    text-align: left;
}
.l-section.smart_design .l-section-lead {
    color: #fff;
    text-align: left;
}
.l-section.smart_design .l-section-button {
}
@media screen and ( max-width: 768px ) {
    .l-section.smart_design .smart_design-inner-conetnt {
        width: 100%;
        padding: 0 var(--default-padding-x) calc( 50 * 100vw / var( --design-width ) );
    }
    .l-section.smart_design .l-section-title {
    }
    .l-section.smart_design .l-section-lead {
    }
    .l-section.smart_design .l-section-button {
        margin: 0 auto;
    }
}



.l-section.smart_design .smart_design-inner-image {
    position: relative;
    width: min( calc( 1041 * 100vw / var( --design-width ) ), 1041px );
    margin: 0;
    padding: 0;
    font-size: 0;
}
.l-section.smart_design .smart_design-inner-image picture img {
    width: 100%;
}
.l-section.smart_design .smart_design-inner-image figcaption {
    position: absolute;
    bottom: 0;
    right: 0;
    display: inline-block;
    width: auto;
    margin: 0;
    padding: 0 1em;
    color: #fff;
    font-size: var( --font-size-figcaption );
    line-height: 2;
    letter-spacing: 0.1em;
    background-color: rgba( 0, 0, 0, 0.4 )
}
@media screen and ( max-width: 768px ) {
    .l-section.smart_design .smart_design-inner-image {
        width: 80%;
        margin: 0 auto;
    }
    .l-section.smart_design .smart_design-inner-image picture img {
    }
    .l-section.smart_design .smart_design-inner-image figcaption {
    }
}


































