 @charset "utf-8";
/* CSS Document */
/* location_overwrite.css */





/* =========================
breakpoint
========================= */
@media screen and ( min-width: 769px ){
    /* SP <> PC ブレークポイント */
}
@media screen and ( min-width: 1389px ){
    /* XDデザインサイズ　1388 */
}





img {
    max-width: none;
    width: 100%;
}
@media screen and ( min-width: 769px ){
    img {
    }
}
@media screen and ( min-width: 1389px ){
}





/* =========================
c-title--page--full
========================= */
.c-title--page--full {
    height: auto;
}
@media screen and ( min-width: 769px ){
}
@media screen and ( min-width: 1389px ){
}





/* =========================
page_main_visual
========================= */
.page_main_visual .c-title--page--full__title picture {
    width: calc( 142.77 * 100vw / 375 );
    aspect-ratio: 467 / 90;
}
@media screen and ( min-width: 769px ){
    .page_main_visual .c-title--page--full__title picture {
        width: max( min( calc( 219.25 * 100vw / 1388 ), 302.57px ), 219.25px );
    }
}
@media screen and ( min-width: 1389px ){
}





/* =========================
history
========================= */
.history {
}
@media screen and ( min-width: 769px ){
    .history {
        padding: 0;
    }
}
@media screen and ( min-width: 1389px ){
}



.history_bg {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0 min(calc(100 * 100vw / 1388), 100px);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.history_bg.bg_01 {
    background-image: url( '../img/location/history_01-bg_sp.webp' );
}
.history_bg.bg_02 {
    background-image: url( '../img/location/history_02-bg_sp.webp' );
}
.history_bg.bg_03 {
    background-image: url( '../img/location/history_03-bg_sp.webp' );
}
@media screen and ( min-width: 769px ){
    .history_bg.bg_01 {
        background-image: url( '../img/location/history_01-bg_pc.webp' );
    }
    .history_bg.bg_02 {
        background-image: url( '../img/location/history_02-bg_pc.webp' );
    }
    .history_bg.bg_03 {
        background-image: url( '../img/location/history_03-bg_pc.webp' );
    }
}
@media screen and ( min-width: 1389px ){
}



.history .history_bg .history-common {
    position: relative;
    width: 100%;
    height: auto;
    margin: 0;
    padding: max( min( calc( 80 * 100vw / 1388 ), 110.4px ), 80px ) 0 0;
    z-index: 5;
}
.history .history_bg .history-common .l-content-section-inner--v2 {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: calc( 20 * 100vw / 375 );
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
}
.history .history_bg .history-common h2 {
    position: relative;
    width: calc( 76.09 * 100vw / 375 );
    width: calc( 91.308 * 100vw / 375 );
    margin: 0 auto;
    padding: 0;
}
.history .history_bg .history-common h2 > picture {
}
.history .history_bg .history-common .lead {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
    color: #fff;
    font-size: var( --font_size-ex_large );
    line-height: 1.55;
    letter-spacing: 0.02em;
    text-align: center;
}
@media screen and ( min-width: 769px ){
    .history .history_bg .history-common {
        height: auto;
    }
    .history .history_bg .history-common .l-content-section-inner--v2 {
        gap: max( min( calc( 20 * 100vw / 1388 ), 27.6px ), 20px );
    }
    .history .history_bg .history-common h2 {
        width: max( min( calc( 101.46 * 100vw / 1388 ), 140.01px ), 101.46px );
        width: max( min( calc( 121.752 * 100vw / 1388 ), 168.017px ), 121.752px );
    }
    .history .history_bg .history-common h2 > picture {
    }
    .history .history_bg .history-common .lead {
    }
}
@media screen and ( min-width: 1389px ){
}



.history .history_bg .each_history {
    position: relative;
    width: 100%;
    margin: 0;
    padding: calc( 80 * 100vw / 375 ) 0;
}
.history .history_bg .each_history .l-content-section-inner--v2 {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
}
.history .history_bg .each_history.history_02 .l-content-section-inner--v2 {
    display: flex;
    flex-direction: column-reverse;
    justify-content: flex-start;
    align-items: flex-start;
}
.history_bg .history-text_wrap {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
}
.history .history_bg .each_history .history-no {
    position: relative;
    width: calc( 89.58 * 100vw / 375 );
    margin: 0 auto calc( 30 * 100vw / 375 );
    padding: 0;
}
.history .history_bg .each_history .history-no > picture {
    display: inline-block;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
}
.history .history_bg .each_history .history-text_01 {
    position: relative;
    width: 100%;
    margin: 0 0 calc( 25 * 100vw / 375 );
    padding: 0;
    color: #fff;
    font-size: var( --font_size-large );
    line-height: 1.76;
    letter-spacing: 0.02em;
    text-align: center;
}
.history .history_bg .each_history .history-text_02 {
    position: relative;
    width: 100%;
    margin: 0 0 calc( 35 * 100vw / 375 );
    padding: 0;
    color: #fff;
    font-size: var( --font_size-normal );
    line-height: 2;
    letter-spacing: 0.02em;
    text-align: center;
}
.history .history_bg .each_history .history-image {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
}
.history .history_bg .each_history .history-image > figure {
}
.history .history_bg .each_history .history-image > figure > picture {
}
@media screen and ( min-width: 769px ){
    .history .history_bg {
    }
    .history .history_bg .each_history {
        position: relative;
        width: 100%;
        margin: 0;
        padding: max( min( calc( 120 * 100vw / 1388 ), 165.6px ), 120px ) 0;
    }
    .history .history_bg .each_history .l-content-section-inner--v2 {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 3.37%;
        padding: 0;
    }
    .history .history_bg .each_history.history_02 .l-content-section-inner--v2 {
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        gap: 3.37%;
        padding: 0;
    }
    .history_bg .history-text_wrap {
        width: 37.88%;
    }
    .history .history_bg .each_history .history-no {
        position: relative;
        width: max( min( calc( 89.58 * 100vw / 1388 ), 123.62px ), 89.58px );
        margin: 0 auto max( min( calc( 30 * 100vw / 1388 ), 41.4px ), 30px );
    }
    .history .history_bg .each_history .history-no > picture {
    }
    .history .history_bg .each_history .history-text_01 {
        margin: 0 0 max( min( calc( 10 * 100vw / 1388 ), 13.8px ), 10px );
    }
    .history .history_bg .each_history .history-text_02 {
        margin: 0;
    }
    .history .history_bg .each_history .history-image {
        width: 41.25%;
        margin: 0;
        padding: 0;
    }
    .history .history_bg .each_history .history-image > figure {
    }
    .history .history_bg .each_history .history-image > figure > picture {
    }
}
@media screen and ( min-width: 1389px ){
}





/* =========================
style
========================= */
.style {
    background-color: #EFEDEA;
}
.style .l-content-section-inner--v2 {
    padding-top: calc( 60 * 100vw / 375 );
    padding-bottom: calc( 40 * 100vw / 375 );
}
@media screen and ( min-width: 769px ){
    .style {
        background-color: #EFEDEA;
    }
    .style .l-content-section-inner--v2 {
        padding-top: max( min( calc( 80 * 100vw / 1388 ), 110.4px ), 80px );
        padding-bottom: max( min( calc( 70 * 100vw / 1388 ), 96.6px ), 70px );
    }
}
@media screen and ( min-width: 1389px ){
}



.style .style-title {
    margin: 0 0 calc( 30 * 100vw / 375 );
}
.style .style-title h2 {
    position: relative;
    width: calc( 143.53 * 100vw / 375 );
    width: calc( 172.236 * 100vw / 375 );
    aspect-ratio: 191 / 17;
    margin: 0 auto calc( 20 * 100vw / 375 );
    padding: 0;
}
.style .style-title h2 picture {
    position: relative;
    display: inline-block;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
}
.style .style-title .style-lead {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
    font-size: var( --font_size-ex_large );
    line-height: 1.54;
    letter-spacing: 0.02em;
    text-align: center;
}
@media screen and ( min-width: 769px ){
    .style .style-title {
        margin: 0 0 max( min( calc( 60 * 100vw / 1388 ), 82.8px ), 60px );
    }
    .style .style-title h2 {
        width: max( min( calc( 191.37 * 100vw / 1388 ), 264.09px ), 191.37px );
        width: max( min( calc( 229.644 * 100vw / 1388 ), 316.908px ), 229.644px );
        margin: 0 auto max( min( calc( 30 * 100vw / 1388 ), 41.4px ), 30px );
    }
    .style .style-title h2 picture {
    }
    .style .style-title .style-lead {
    }
}
@media screen and ( min-width: 1389px ){
}



.each_style-v2 {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    height: calc( calc( 303 * 100vw / 1388 ) + calc( max(min(calc(30 * 100vw / 1388), 41.4px), 30px) * 2 ) );
    margin: 0;
    padding: max(min(calc(30 * 100vw / 1388), 41.4px), 30px);
    background-color: #fff;
    border: 1px solid #908552;
    box-shadow: 0 0 max(min(calc(3 * 100vw / 1388), 4.14px), 3px) max(min(calc(2 * 100vw / 1388), 2.76px), 2px) rgba(0, 0, 0, 0.3);
}
.each_style-v2.kitayama_street {
    margin-bottom: max(min(calc(35 * 100vw / 1388), 48.3px), 35px);
}
.each_style-v2.botanical_garden {
    margin-bottom: max(min(calc(35 * 100vw / 1388), 48.3px), 35px);
}
.each_style-v2.nature {
    margin-bottom: max(min(calc(35 * 100vw / 1388), 48.3px), 35px);
    margin-bottom: 0;
}
.each_style-v2-title {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 38.82%;
    height: 100%;
    margin: 0;
    padding: 0;
}
.each_style-v2-title h2 {
    position: relative;
    width: 95.43%;
    margin: 0 auto max( min( calc( 15 * 100vw / 1388 ), 20.7px ), 15px );
    padding: 0 0 max( min( calc( 5 * 100vw / 1388 ), 6.9px ), 5px );
    color: #908552;
    font-size: var( --font_size-large );
    line-height: 1.76;
    letter-spacing: 0.35em;
    text-align: center;
    border-bottom: 1px solid #908552;
}
.each_style-v2-lead {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin: 0 0 max(min(calc(20 * 100vw / 1388), 27.6px), 20px);
    padding: 0;
    font-size: var( --font_size-large );
    line-height: 1.76;
    letter-spacing: 0.02em;
    text-align: center;
}
.each_style-v2-lead-text {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin: 0;
    padding: 0;
    font-size: var(--font_size-normal);
    line-height: 2;
    letter-spacing: 0.02em;
    text-align: center;
}
.each_style-v2-image {
    position: relative;
    width: 58.15%;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    height: 100%;
    margin: 0;
    padding: 0;
}
.each_style-v2-image-item {
    position: relative;
    height: 100%;
    margin: 0;
    padding: 0;
}
.kitayama_street .each_style-v2-image-item {
    width: 69.6%;
}
.botanical_garden .each_style-v2-image-item {
    width: calc( calc( 100% - 5px ) / 2 );
}
.nature .each_style-v2-image-item {
    width: calc( calc( 100% - 5px ) / 2 );
}
.each_style-v2-image-item > figure, 
.each_style-v2-image-item > figure picture, 
.each_style-v2-image-item > figure picture img {
    position: relative;
    display: inline-block;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
}
.each_style-v2-image-item > figure picture img {
    object-fit: cover;
}
.botanical_garden .each_style-v2-image-item > figure figcaption {
    width: 100%;
    color: #fff;
    background-color: #908552;
    text-align: center;
}
.each_style-v2-image-item--inner {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    height: 100%;
    margin: 0;
    padding: 0;
}
.kitayama_street .each_style-v2-image-item--inner {
    width: calc( calc( 100% - 69.6% ) - 5px );
}
.botanical_garden .each_style-v2-image-item--inner {
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 5px;
    width: calc( calc( 100% - 5px ) / 2 );
}
.nature .each_style-v2-image-item--inner {
    display: block;
    width: calc( calc( 100% - 5px ) / 2 );
    margin: 0;
    padding: 0;
}
.each_style-v2-image-item--inner-item {
    width: 100%;
    margin: 0;
    padding: 0;
}
.kitayama_street .each_style-v2-image-item--inner-item {
    height: calc( calc( 100% - 5px ) / 2 );
}
.botanical_garden .each_style-v2-image-item--inner-item.image_02 {
    width: 100%;
}
.botanical_garden .each_style-v2-image-item--inner-item.image_03 {
    width: calc( calc( 100% - 5px ) / 2 );
}
.botanical_garden .each_style-v2-image-item--inner-item.image_04 {
    width: calc( calc( 100% - 5px ) / 2 );
}
.each_style-v2-image-item--inner-item > figure, 
.each_style-v2-image-item--inner-item > figure picture, 
.each_style-v2-image-item--inner-item > figure picture img {
    position: relative;
    display: inline-block;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
}
.each_style-v2-image-item--inner-item figure picture img {
    object-fit: cover;
}
.each_style-v2-text {
    display: none;
}
@media screen and ( max-width: 768px ){
    .each_style-v2 {
        display: block;
        width: 100%;
        height: auto;
        padding: calc(30 * 100vw / 375) 0;
        box-shadow: 0 0 calc(3 * 100vw / 375) calc(2 * 100vw / 375) rgba(0, 0, 0, 0.3);
    }
    .each_style-v2.kitayama_street {
        margin-bottom: calc( 35 * 100vw / 375 );
    }
    .each_style-v2.botanical_garden {
        margin-bottom: calc( 35 * 100vw / 375 );
    }
    .each_style-v2.nature {
        margin-bottom: calc( 35 * 100vw / 375 );
        margin-bottom: 0;
    }
    .each_style-v2-title {
        width: 91.25%;
        height: auto;
        margin: 0 auto calc( 20 * 100vw / 375 );
    }
    .each_style-v2-title h2 {
        width: 100%;
        margin: 0 auto calc( 15 * 100vw / 375 );
        padding: 0 0 calc( 5 * 100vw / 375 );
    }
    .each_style-v2-lead {
        width: 100%;
        margin: 0 0 calc( 20 * 100vw / 375 );
        padding: 0;
        font-size: var( --font_size-large );
        line-height: 1.76;
        letter-spacing: 0.02em;
        text-align: center;
    }
    .each_style-v2-lead-text {
        display: none;
    }
    .each_style-v2-image {
        display: block;
        width: 100%;
        height: auto;
        margin-bottom: calc(30 * 100vw / 375);
    }
    .each_style-v2-image-item {
        width: 100%;
        height: auto;
        margin-bottom: 5px;
    }
    .kitayama_street .each_style-v2-image-item {
        width: 100%;
    }
    .botanical_garden .each_style-v2-image-item {
        width: 100%;
    }
    .nature .each_style-v2-image-item {
        width: 100%;
    }
    .each_style-v2-image-item > figure, 
    .each_style-v2-image-item > figure picture, 
    .each_style-v2-image-item > figure picture img {
        position: relative;
        display: inline-block;
        width: 100%;
        height: auto;
        margin: 0;
        padding: 0;
    }
    .each_style-v2-image-item figure picture img {
        object-fit: cover;
    }
    .each_style-v2-image-item--inner {
        flex-direction: row;
        justify-content: space-between;
        height: auto;
    }
    .kitayama_street .each_style-v2-image-item--inner {
        width: 100%;
    }
    .botanical_garden .each_style-v2-image-item--inner {
        width: 100%;
    }
    .nature .each_style-v2-image-item--inner {
        display: block;
        width: 100%;
        margin: 0;
        padding: 0;
    }
    .each_style-v2-image-item--inner-item {
    }
    .kitayama_street .each_style-v2-image-item--inner-item {
        width: calc( calc( 100% - 5px ) / 2 );
        height: auto;
    }
    .each_style-v2-image-item--inner-item > figure, 
    .each_style-v2-image-item--inner-item > figure picture, 
    .each_style-v2-image-item--inner-item > figure picture img {
        position: relative;
        display: inline-block;
        width: 100%;
        height: auto;
        margin: 0;
        padding: 0;
    }
    .each_style-v2-image-item--inner-item figure picture img {
        object-fit: cover;
    }
    .each_style-v2-text {
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        margin: 0;
        padding: 0;
        font-size: var( --font_size-normal );
        line-height: 2;
        letter-spacing: 0.02em;
        text-align: center;
    }
}



.style .access {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
}
.style .access .access-lead {
    position: relative;
    width: 100%;
    margin: 0 0 calc( 20 * 100vw / 375 );
    padding: 0;
    font-size: var( --font_size-large );
    line-height: 1.76;
    letter-spacing: 0.02em;
    text-align: center;
}
.style .access p {
    position: relative;
    width: 100%;
    margin: 0 0 calc( 20 * 100vw / 375 );
    padding: 0;
    font-size: var( --font_size-normal );
    line-height: 2;
    letter-spacing: 0.02em;
    text-align: center;
}
.style .access figure {
    position: relative;
    width: 100%;
    margin: 0 0 calc( 10 * 100vw / 375 );
    padding: 0;
}
.style .access ul.remark {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: calc( 5 * 100vw / 375 );
    width: 100%;
    margin: 0;
    padding: 0;
}
.style .access ul.remark li {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
    margin: 0;
    padding: 0;
    font-size: var( --font_size-small );
    line-height: 1.66;
    letter-spacing: 0.02em;
}
.style .access ul.remark li span {
    width: calc( 100% - 1.5em );
    font-size: var( --font_size-small );
    line-height: 1.66;
    letter-spacing: 0.02em;
}
.style .access ul.remark li span.icon_symbol {
    width: 1.5em;
}
@media screen and ( min-width: 769px ){
    .style .access {
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
        padding: 0 max( min( calc( 50 * 100vw / 1388 ), 69px ), 50px );
    }
    .style .access .access-lead {
        position: relative;
        width: 55.15%;
        margin: 0 0 max( min( calc( 20 * 100vw / 1388 ), 27.6px ), 20px ) auto;
        text-align: left;
    }
    .style .access p {
        position: relative;
        width: 55.15%;
        margin: 0 0 max( min( calc( 20 * 100vw / 1388 ), 27.6px ), 20px ) auto;
        text-align: left;
    }
    .style .access figure {
        position: absolute;
        top: 0;
        left: max( min( calc( 50 * 100vw / 1388 ), 69px ), 50px );
        width: 38.29%;
        z-index: 5;
    }
    .style .access ul.remark {
        gap: max( min( calc( 5 * 100vw / 1388 ), 6.9px ), 5px );
        width: 55.15%;
        margin: 0 0 0 auto;
    }
    .style .access ul.remark li {
    }
    .style .access ul.remark li span {
    }
    .style .access ul.remark li span.icon_symbol {
    }
}
@media screen and ( min-width: 1389px ){
}





.lifeinfo__wrap .panel_area .data p {
    font-family: "Noto Serif JP", serif;
}
@media screen and ( min-width: 769px ){
}
@media screen and ( min-width: 1389px ){
}


























