@charset "UTF-8";

figure {
    position: relative;
}

figcaption {
    font-size: 12px !important;
    position: absolute;
    bottom: 5px;
    font-size: 10px;
    line-height: 1;
    z-index: 1;
}


/* location */


#main {
    background-image: url(../img/loc_img01.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    padding: 24% 0;
    position: relative;
}

#main .cap_txt {
    font-size: 11px;
}

#main .page_ttl {
    width: 100%;
    position: absolute;
    top: 20%;
    left: 50%;
    transform: translateX(-50%);
}

#main .page_ttl h2 {
    /* width: 60%; */
    width: 30%;
    margin: 0 auto 30px;
}

#main .page_ttl p {
    font-size: 20px;
    letter-spacing: 4.4px;
    line-height: 1.5;
    text-align: center;
    color: #412514;
}

.bg {
    background-image: url(../img/bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    padding: 100px 0 0 0;
    position: relative;
}

.bg .bg_before01 {
    display: block;
    content: "";
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.shop_ttl {
    font-size: 22px;
    color: #412514;
    letter-spacing: 2px;
    line-height: 1.5;
    margin-bottom: 1.5vw;
    position: relative;
    z-index: 8;
}

.shop_txt {
    font-size: 14px;
    letter-spacing: 2px;
    line-height: 2;
    margin-bottom: 1.5vw;
    position: relative;
    z-index: 8;
}

.description {
    font-size: 12px;
    line-height: 1.5;
    margin-top: 10px;
    position: relative;
    z-index: 8;
}


/* shopping */
.shop_box01 .left {
    width: 66.142%;
}

.shop_box01 .right {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 33.858%;
}

.shop_box01 .right .txt {
    margin-left: 8%;
}

.shop_box01 .right .loc_img03 {
    align-self: flex-end;
}

.shop_box01 .right .loc_img03 .illust01 {
    display: inline-block;
    width: 13vw;
    position: absolute;
    top: -4vw;
    right: 2vw;
    z-index: 10;
}

.shop_box02 {
    align-items: flex-end;
    /* padding-bottom: 40px; */
    padding-bottom: 190px;
    position: relative;
    overflow: hidden;
}

.shop_box02::after {
    display: block;
    content: "";
    width: 8px;
    height: 100%;
    background: #d1c8a4;
    position: absolute;
    top: 0;
    right: 0;
}

.shop_box02 .left {
    /* width: 41%; */
    width: 35.43%;
}

.shop_box02 .left .loc_img04 .illust02 {
    display: inline-block;
    /* width: 25vw; */
    width: 24vw;
    position: absolute;
    /* bottom: -11vw; */
    bottom: -7vw;
    right: -11vw;
    z-index: 10;
}

.shop_box02 .right {
    width: 64.57%;
    /* width: 59%; */
    padding: 0 8.8% 0 22.6%;
    position: relative;
}

.shop_box02 .right .en_shopping {
    width: 1.5vw;
    position: absolute;
    top: 0;
    left: 18vw;
}

.shop_box02 .column04 ul {
    justify-content: space-between;
    flex-wrap: wrap;
}

.shop_box02 .column04 ul li {
    width: calc((100% - 10px) / 2);
}

.shop_box02 .column04 ul li:nth-of-type(n+3) {
    margin-top: 20px;
}

/* education */
#education {
    padding: 20px 0 140px 0;
    /* padding: 80px 0 140px 0; */
    position: relative;
    /* overflow: hidden; */
}

#education::after {
    display: block;
    content: "";
    width: 8px;
    height: 100%;
    background: #412514;
    position: absolute;
    top: 0;
    right: 0;
}

.education_box01 {
    align-items: flex-end;
    position: relative;
}

.education_box01 .en_education {
    width: 1.5vw;
    position: absolute;
    top: 0;
    right: 11vw;
}

.education_box01 .left {
    width: 41.29%;
    position: relative;
    z-index: 8;
}

.education_box01 .left .txt {
    padding: 0 0 0 8vw;
    position: relative;
}


.education_box01 .left .txt .illust03 {
    display: inline-block;
    width: 25vw;
    position: absolute;
    top: 0;
    right: -17vw;
    z-index: 10;
}

/* .education_box01 .left .loc_img09 .illust04 {
    display: inline-block;
    width: 30%;
    position: absolute;
    bottom: -8vw;
    right: 2vw;
    z-index: 10;
} */

.education_box01 .right {
    width: 57.71%;
    padding: 0 23.65% 0 10px;
}

.education_box01 .right .column04 ul {
    justify-content: space-between;
    flex-wrap: wrap;
}

.education_box01 .right .column04 ul li {
    width: calc((100% - 10px) / 2);
}

.education_box01 .right .column04 ul li:nth-of-type(n+3) {
    margin-top: 20px;
}

/* park */
#park {
    /* padding: 80px 0 40px 0; */
    padding: 0 0 40px 0;
    position: relative;
}

#park::after {
    display: block;
    content: "";
    width: 8px;
    height: 100%;
    background: #412514;
    position: absolute;
    top: 0;
    left: 0;
}

/* .park_box01 {
    overflow: hidden;
} */

.park_box01 .up {
    justify-content: flex-end;
    align-items: center;
}

.park_box01 .up .txt {
    width: 44.58%;
    position: relative;
    z-index: 8;
}

.park_box01 .up .txt .illust04 {
    display: inline-block;
    width: 30%;
    position: absolute;
    top: -13vw;
    right: 17vw;
    z-index: 10;
}

.park_box01 .up .image {
    width: 44.58%;
    position: relative;
    padding-bottom: 40px;
}

.park_box01 .up .image .en_park {
    width: 1.5vw;
    position: absolute;
    top: 5vw;
    left: -12vw;
}

.park_box01 .up .image .loc_img14 .illust05 {
    display: inline-block;
    width: 9vw;
    position: absolute;
    bottom: -2.7vw;
    left: -10vw;
    z-index: 10;
}

.park_box01 .under .column04 {
    width: 94.72%;
    margin: 0 0 0 auto;
}

.park_box01 .under .column04 ul {
    justify-content: space-between;
    flex-wrap: wrap;
}

.park_box01 .under .column04 ul li {
    width: calc((100% - 30px) / 4);
}

/* medical */
#medical {
    padding: 80px 0 80px 0;
    position: relative;
    overflow: hidden;
}

#medical::before {
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    background-image: url(../img/bg_before02.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: 0;
    left: 0;
}

#medical::after {
    display: block;
    content: "";
    width: 8px;
    height: 100%;
    background: #d1c8a4;
    position: absolute;
    top: 0;
    left: 0;
}

.medical_box01 .left {
    width: 65.14%;
    padding: 0 4vw 0 16vw;
    position: relative;
}

.medical_box01 .left .en_medical {
    width: 1.5vw;
    position: absolute;
    top: 9vw;
    left: 8vw;
}

.medical_box01 .left .column2_1 ul {
    justify-content: space-between;
    align-items: stretch;
}

.medical_box01 .left .column2_1 ul li {
    width: calc((100% - 10px) / 2);
}


.medical_box01 .left .column2_1 li ul {
    flex-direction: column;
}


.medical_box01 .left .column2_1 li ul li {
    width: 100%;
}

.medical_box01 .left .column2_1 li ul li:nth-of-type(2) {
    margin-top: 20px;
}

.medical_box01 .right {
    width: 34.86%;
}

.medical_box01 .right .loc_img22 .illust06 {
    display: inline-block;
    width: 18vw;
    position: absolute;
    top: 2vw;
    left: -14vw;
    z-index: 10;
}

/* map */
#map {
    padding: 100px 0 40px 0;
    position: relative;
}

#map::after {
    display: block;
    content: "";
    width: 8px;
    height: 100%;
    background: #412514;
    position: absolute;
    top: 0;
    right: 0;
}

/* #map figure {
    width: 90%;
    max-width: 1100px;
    margin: 0 auto;
} */

/* タブ切り替え */
.tab-panel {
    width: 90%;
    max-width: 1100px;
    margin: 0 auto;
}

.tab-group {
    display: flex;
    justify-content: center;
    margin-bottom: 10px;
}

.tabs {
    width: calc((100% - 10px) / 6);
    /* flex-grow: 1; */
    font-size: 14px;
    font-weight: normal;
    letter-spacing: 2px;
    color: #040000;
    text-align: center;
    background: rgb(229, 223, 178);
    background: linear-gradient(135deg, rgba(229, 223, 178, 1) 0%, rgba(202, 189, 130, 1) 100%);
    list-style: none;
    border: solid 1px #CABD82;
    padding: 15px 0;
    /* filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#E5DFB2",endColorstr="#CABD82",GradientType=1); */
    cursor: pointer;
    transition: .5s;
}

.tabs:not(:last-child) {
    margin-right: 2px;
}

.tabs:nth-of-type(n+2) {
    color: #040000;
    border: solid 1px #d1d1c8;
    background: rgb(241, 242, 237);
    background: linear-gradient(135deg, rgba(241, 242, 237, 1) 0%, rgba(209, 209, 200, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#F1F2ED", endColorstr="#deded6", GradientType=1);
    opacity: 0.8;
}

.tabs:hover {
    transition: .5s;
    opacity: .5;
}

.tabs:nth-of-type(1),
.tabs:nth-of-type(2) {
    display: flex;
    justify-content: center;
    align-items: center;
}

.panel-group {
    /* border:solid 1px #FFF;
  border-top:none; */
    /* background: #eee; */
}

.panel {
    display: none;
}

.panel figure {
    max-width: 1160px;
    margin: 0 auto;
}

.tabs.is-active {
    filter: brightness(0.7);
    color: #040000;
    transition: all 0.2s ease-out;
}

.tabs:nth-of-type(n+2).is-active {
    background: #deded6;
}

.panel.is-show {
    display: block;
}

/* lifeinfo*/
#life_info {
    padding: 80px 0 0 0;
    position: relative;
    margin-bottom: 50px;
}

#life_info::after {
    display: block;
    content: "";
    width: 8px;
    height: 100%;
    background: #d1c8a4;
    position: absolute;
    top: 0;
    right: 0;
}

#life_info .facilities {
    width: 90%;
    max-width: 1100px;
    /* margin: 0 auto 3em; */
    margin: 0 auto 0;
}

#life_info .facilities .block {
    margin: 0 0 2.5em;
}

#life_info .facilities .block .title {
    display: flex;
    align-items: center;
    text-align: left;
    padding: 0;
    /* padding: 0 0 0 1.25em; */
    letter-spacing: 4px;
    font-size: 24px;
    color: #b4a86d;
    position: relative;
    /* margin: 0 0 0.5em; */
    margin: 0 0 0.8em;
}

#life_info .facilities .block .title span.txt {
    display: inline-block;
}

#life_info .facilities .block .title span.line {
    display: inline-block;
    flex: 1;
    height: 1px;
    margin-left: 10px;
    background: #b4a86d;
}

/* #life_info .facilities .block .title:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 15px;
    height: 3px;
    margin: auto;
    background-color: #d1c8a4;
} */

#life_info .facilities .block ul {
    /* font-size: 13px; */
    font-size: 14px;
    color: #000;
}

#life_info .facilities .block ul li {
    border-bottom: 1px solid #412514;
    /* padding: 0 0 0.4em; */
    padding: 0 0 0.7em;
    margin: 0 0 0.8em;
    /* max-width: 384px; */
}

#life_info .facilities .block ul li dl {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

#life_info .facilities .block ul li dl dt {
    font-weight: normal;
    line-height: 1.5;
}

#life_info .facilities .block ul li dl dd {
    font-weight: normal;
    line-height: 1.5;
}

#life_info .facilities .block.block_3col ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

#life_info .facilities .block.block_3col ul li {
    width: 32%;
}

#life_info .facilities .block.block_2col {
    width: 66%;
    max-width: 794px;
}

#life_info .facilities .block.block_2col ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

#life_info .facilities .block.block_2col ul li {
    width: 48.5%;
}

#life_info .facilities .block_wrap {
    display: flex;
    justify-content: space-between;
}

#life_info .facilities .block_wrap .block.block_1col {
    width: 32%;
}

/* 段差調整padding */
/* #life_info .facilities .block ul li.gap {
    padding: 0 0 2.1em 0;
} */

/*スクロールダウン*/
/* 個別設定部分 */
/* shopping */
.scrolldown.ver01 {
    position: absolute;
    bottom: 0;
    /* left: 10vw; */
    left: 17vw;
}

/* education */
.scrolldown.ver02 {
    position: absolute;
    bottom: 0;
    right: 13.5vw;
}

/* education */
.scrolldown.ver03 {
    position: absolute;
    bottom: 0;
    left: -13vw;
}

/* medical */
.scrolldown.ver04 {
    position: absolute;
    bottom: 0;
    left: 7vw;
}

/* 共通設定部分 */
/* 丸の描写 */
.scrolldown:before {
    content: "";
    /*描画位置*/
    position: absolute;
    bottom: 0;
    left: -2px;
    /*丸の形状*/
    width: 6px;
    height: 200px;
    background: #412514;
    /*丸の動き1.6秒かけて透過し、永遠にループ*/
    /* animation:
        circlemove 3s ease-in-out infinite,
        cirlemovehide 3s ease-out infinite; */

    /*丸の動き1.6秒かけて透過し、1回だけ*/
    /* animation:
        circlemove 3s ease-in-out,
        cirlemovehide 3s ease-out; */
}

.scrolldown.ver03:before {
    height: 8vw;
}

/*下からの距離が変化して丸の全体が上から下に動く*/
@keyframes circlemove {
    0% {
        bottom: 60vw;
    }

    100% {
        bottom: -5px;
    }
}

/*上から下にかけて丸が透過→不透明→透過する*/
@keyframes cirlemovehide {
    0% {
        opacity: 0
    }

    50% {
        opacity: 1;
    }

    80% {
        opacity: 0.9;
    }

    100% {
        opacity: 0;
    }
}

.scrolldown:after {
    content: "";
    /*描画位置*/
    position: absolute;
    bottom: 0;
    left: 0;
    /*線の形状*/
    width: 1px;
    height: 48vw;
    background: rgba(65, 37, 20, .3);
}

/* 個別設定 */
.scrolldown.ver03:after {
    height: 31vw;
}

.scrolldown.ver04:after {
    height: 53vw;
}

/* コンテンツがスクロール範囲に入ったらラインが下りる実装ができないため固定 */


/* ゴールド縦帯の配置 */
.shop_box02 .column04 ul {
    position: relative;
}

.shop_box02 .column04 ul::before {
    display: block;
    content: "";
    width: 180px;
    height: 37vw;
    /* padding-top: 18vw; */
    background-image: url(../img/gold01.png);
    background-repeat: no-repeat;
    background-size: 100%;
    position: absolute;
    top: -32vw;
    right: 5vw;
}

.education_box01 .left .loc_img09 {
    z-index: 8;
}

#park::before {
    display: block;
    content: "";
    width: 180px;
    height: 42vw;
    /* padding-top: 18vw; */
    background-image: url(../img/gold02.png);
    background-repeat: no-repeat;
    background-size: 100%;
    position: absolute;
    top: -10vw;
    left: 14vw;
    z-index: 0;
}

.medical_box01 .left .column2_1 ul {
    position: relative;
    z-index: 8;
}

#medical::before {
    display: block;
    content: "";
    width: 180px;
    height: 55vw;
    /* padding-top: 18vw; */
    background-image: url(../img/gold03.png);
    background-repeat: no-repeat;
    background-size: 100%;
    position: absolute;
    top: -1vw;
    left: 40vw;
    opacity: 0.5;
}

@media screen and (max-width: 1180px) {
    .scrolldown:before {
        z-index: 1;
    }

    .shop_box01 .left .loc_img02 {
        z-index: 8;
    }

    .shop_box02 {
        padding-bottom: 130px;
        overflow: initial;
    }

    .shop_box02 .right {
        margin-bottom: -6vw;
    }

    .education_box01 .left .txt .illust03 {
        right: -25vw;
    }
}


@media screen and (max-width: 1000px) {
    #life_info .facilities .block ul {
        font-size: calc(11vw / 1000 * 100);
        min-height: 0vw;
        color: #000;
    }

    #medical::before {
        background-size: cover;
    }
}

@media only screen and (max-width: 820px) {
    #main {
        padding: 30% 0;
    }

    #main .page_ttl {
        width: 100%;
    }

    #main .page_ttl h2 {
        width: 80%;
    }

    #main .page_ttl p {
        font-size: 16px;
        text-shadow: 0px 0px 7px rgba(255, 255, 255, 1), 0px 0px 7px rgba(255, 255, 255, 1), 0px 0px 7px rgba(255, 255, 255, 1), 0px 0px 7px rgba(255, 255, 255, 1), 0px 0px 7px rgba(255, 255, 255, 1), 0px 0px 7px rgba(255, 255, 255, 1), 0px 0px 7px rgba(255, 255, 255, 1), 0px 0px 7px rgba(255, 255, 255, 1), 0px 0px 7px rgba(255, 255, 255, 1);
    }

    .shop_ttl {
        font-size: 18px;
    }

    .shop_txt {
        margin-bottom: 24px;
    }

    .description {
        font-size: 11px;
    }

    .bg {
        padding: 60px 0 0 0;
    }

    /* shopping */
    .shop_box01 {
        flex-wrap: wrap;
        width: 90%;
        margin: 0 auto;
    }

    .shop_box01 .left {
        width: 100%;
    }

    .shop_box01 .right {
        width: 100%;
        /* margin-top: 40px; */
    }

    .shop_box01 .loc_img02 {
        margin-bottom: 20px;
    }

    .shop_box01 .right .txt {
        margin-left: 0;
    }

    .shop_box02 {
        flex-wrap: wrap;
        padding-bottom: 20px;
    }

    .shop_box02::after {
        width: 4px;
    }

    .shop_box02 .left {
        width: 90%;
        margin: 0 auto;
        /* padding-top: 80px; */
        padding-top: 40px;
        position: relative;
        z-index: 8;
    }

    .shop_box02 .right {
        width: 90%;
        padding: 40px 0 0 0;
        margin: 0 auto;
    }

    .shop_box02 .right .loc_img04 {
        /* width: 84%; */
        width: 64%;
        margin: 0 auto 80px 5vw;
        /* margin: 0 auto 80px auto; */
    }

    .shop_box02 .right .loc_img04 .illust02 {
        display: block;
        width: 41vw;
        position: absolute;
        /* bottom: -9vw; */
        bottom: -11vw;
        /* right: -28vw; */
        right: -30vw;
    }

    .en_shopping_sp {
        width: 50%;
        /* width: 3.5vw; */
        position: initial;
        /* margin: 0 auto 40px; */
        margin: 0 auto 0;
        position: relative;
    }

    /* education */
    #education {
        padding: 60px 0 100px 0;
    }

    #education::after {
        width: 4px;
    }

    .en_education_sp {
        /* width: 3.5vw; */
        width: 50%;
        position: initial;
        margin: 0 auto 40px;
        position: relative;
    }

    .education_box01 {
        flex-wrap: wrap;
    }

    .education_box01 .left {
        width: 90%;
        margin: 0 auto;
    }

    .education_box01 .left .txt {
        padding: 0;
    }

    .education_box01 .left .txt .illust03 {
        width: 37vw;
        top: -3vw;
        right: -4vw;
    }

    .education_box01 .left .loc_img09 .illust04 {
        width: 28vw;
        bottom: -16vw;
    }

    .education_box01 .right {
        width: 90%;
        margin: 0 auto;
    }

    .education_box01 .right {
        /* padding: 40px 0 0 0; */
        padding: 80px 0 0 0;
    }

    /* park */
    #park {
        padding: 0 0 50px 0;
    }

    #park::after {
        width: 4px;
    }

    .en_park_sp {
        width: 50%;
        /* width: 3.5vw; */
        position: initial;
        margin: 0 auto 40px;
        position: relative;
    }

    .park_box01 .up {
        flex-wrap: wrap;
    }

    .park_box01 .up .txt {
        width: 90%;
        margin: 0 auto;
    }

    .park_box01 .up .txt .illust04 {
        width: 21%;
        top: -5vw;
        right: 9vw;
    }


    .park_box01 .up .image {
        width: 90%;
        margin: 0 auto;
    }

    .park_box01 .up .image .loc_img14 .illust05 {
        width: 29vw;
        bottom: -18vw;
        left: 0vw;
    }

    .park_box01 .under .column04 {
        width: 90%;
        margin: 0 auto;
    }

    .park_box01 .under .column04 ul li {
        width: calc((100% - 10px) / 2);
    }

    .park_box01 .under .column04 ul li:nth-of-type(n+3) {
        margin-top: 20px;
    }


    /* medical */
    #medical {
        padding: 50px 0 50px 0;
    }

    #medical::after {
        width: 4px;
    }

    .en_medical_sp {
        width: 50%;
        /* width: 3.5vw; */
        position: initial;
        margin: 0 auto 40px;
        position: relative;
    }

    .medical_box01 {
        flex-wrap: wrap;
    }

    .medical_box01 .left {
        width: 90%;
        margin: 0 auto;
        padding: 0;
    }

    .medical_box01 .right {
        width: 90%;
        margin: 0 auto;
    }

    .medical_box01 .left .column2_1 ul {
        flex-wrap: wrap;
    }

    .medical_box01 .left .column2_1 ul li {
        width: 100%;
    }

    .medical_box01 .left .column2_1 ul li:nth-of-type(1) {
        width: 100%;
        margin-bottom: 20px;
    }

    .medical_box01 .left .column2_1 li ul {
        width: 100%;
        justify-content: space-between;
        flex-direction: row;
    }

    .medical_box01 .left .column2_1 ul li ul.flex li {
        width: calc((100% - 10px) / 2);
    }

    .medical_box01 .left .column2_1 ul li ul.flex li:nth-of-type(2) {
        margin-top: 0;
    }

    .medical_box01 .right .loc_img22 {
        width: 50%;
        margin: 0 9vw 0 auto;
        z-index: 8;
    }

    .medical_box01 .right .loc_img22 .illust06 {
        width: 43vw;
        left: -29vw;
    }

    /* map */
    #map {
        padding: 50px 0 50px 0;
    }

    #map::after {
        width: 4px;
    }


    /* タブ切り替え */
    .tab-group {
        flex-wrap: wrap;
    }

    .tabs {
        width: calc((100% - 5px) / 2);
        font-size: 12px;
        letter-spacing: 1px;
        /* letter-spacing: 2px; */
        line-height: 1.3;
        padding: 15px 0;
    }

    .tabs:hover {
        opacity: 1;
    }

    .panel-group {
        border-top: 1px solid #FFF;
        /* height:100px;
      border:solid 1px #FFF;
      border-top:none;
      background:#eee; */
    }

    .all_block p {
        font-size: 12px;
    }

    .tabs:not(:last-child) {
        margin-right: 5px;
    }

    .tabs:nth-child(2n) {
        margin-right: 0;
    }

    .tabs:not(:nth-last-child(-n+2)) {
        margin-bottom: 5px;
    }


    /* life_info */

    #life_info {
        padding: 50px 0 18px 0;
        margin-bottom: 0;
    }

    #life_info::after {
        width: 4px;
    }

    #life_info .facilities {
        margin: 0 auto 0;
    }

    #life_info .facilities .block {
        margin: 0 0 2em;
    }

    #life_info .facilities .block .title {
        text-align: left;
        /* padding: 0 0 0 0.9em; */
        padding: 0;
        letter-spacing: 4px;
        font-size: 20px;
        position: relative;
        margin: 0 0 0.5em;
    }

    /* #life_info .facilities .block .title:before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        width: 10px;
        height: 2px;
        margin: auto;
        background-color: #d1c8a4;
    } */

    #life_info .facilities .block ul {
        font-size: 14px;
        color: #000;
    }

    #life_info .facilities .block ul li {
        border-bottom: 1px solid #412514;
        padding: 0 0 0.4em;
        margin: 0 0 0.8em;
        /* max-width: 384px; */
        max-width: 100%;
    }

    #life_info .facilities .block ul li dl {
        display: flex;
        justify-content: space-between;
    }

    #life_info .facilities .block.block_3col ul {
        display: block;
    }

    #life_info .facilities .block.block_3col ul li {
        width: 100%;
    }

    #life_info .facilities .block.block_2col {
        width: 100%;
        max-width: 794px;
    }

    #life_info .facilities .block.block_2col ul {
        display: block;
    }

    #life_info .facilities .block.block_2col ul li {
        width: 100%;
    }

    #life_info .facilities .block_wrap {
        display: block;
    }

    #life_info .facilities .block_wrap .block.block_1col {
        width: 100%;
    }



    /*スクロールダウン*/
    .sp_only {
        /* overflow-y: hidden; */
        /* display: inline-block; */
        overflow-x: hidden;
    }

    .en_shopping_sp,
    .en_education_sp,
    .en_medical_sp,
    .en_park_sp {
        overflow: hidden;
        padding-bottom: 20px;
    }

    /* 個別設定部分 */
    /* shopping */
    .scrolldown_sp.ver01 {
        position: absolute;
        bottom: 0;
        left: -10px;
    }

    /* education */
    .scrolldown_sp.ver02 {
        position: absolute;
        bottom: 0;
        left: -10px;
    }

    /* education */
    .scrolldown_sp.ver03 {
        position: absolute;
        bottom: 0;
        left: -10px;
    }

    /* medical */
    .scrolldown_sp.ver04 {
        position: absolute;
        bottom: 0;
        left: -10px;
    }

    /* 共通設定部分 */
    /* 丸の描写 */
    .scrolldown_sp:before {
        content: "";
        /*描画位置*/
        position: absolute;
        bottom: 0;
        left: -2px;
        /*丸の形状*/
        width: 40px;
        height: 4px;
        background: #412514;
        /*丸の動き1.6秒かけて透過し、永遠にループ*/
        /* animation:
            circlemove 3s ease-in-out infinite,
            cirlemovehide 3s ease-out infinite; */

        /*丸の動き1.6秒かけて透過し、1回のみ*/
        /* animation:
            circlemove 3s ease-in-out infinite,
            cirlemovehide 3s ease-out infinite; */
    }

    /*下からの距離が変化して丸の全体が上から下に動く*/
    @keyframes circlemove {
        0% {
            right: 40vw;
        }

        100% {
            right: 0;
        }
    }

    /*上から下にかけて丸が透過→不透明→透過する*/
    @keyframes cirlemovehide {
        0% {
            opacity: 0
        }

        50% {
            opacity: 1;
        }

        80% {
            opacity: 0.9;
        }

        100% {
            opacity: 0;
        }
    }

    .scrolldown_sp:after {
        content: "";
        /*描画位置*/
        position: absolute;
        bottom: 0;
        left: 0;
        /*線の形状*/
        /* width: 1px; */
        width: 69vw;
        height: 1px;
        background: rgba(65, 37, 20, .3);
    }

    /* 個別設定 */
    .scrolldown_sp.ver03:after {
        /* height: 31vw; */
        height: 1px;
    }

    .scrolldown_sp.ver04:after {
        /* height: 53vw; */
        height: 1px;
    }

    /* ラインの横移動が実装できないためスマホは動きなし */
    .scrolldown_sp {
        display: block;
        width: 100%;
    }

    .scrolldown_sp:before {
        width: 60px;
        left: 50%;
        transform: translateX(-50%);
    }



    /* ゴールド縦帯の配置 */
    .shop_box02 .right .loc_img04 {
        z-index: 8;
    }

    .shop_box02 .column04 ul::before {
        /* width: 60px; */
        width: 50px;
        height: 80vw;
        top: -19vw;
        right: 29vw;
        /* top: -66vw; */
    }

    #park::before {
        content: none;
    }

    .park_box01 .up .image {
        position: relative;
        z-index: 8;
    }

    .park_box01 .up .image .loc_img14 {
        z-index: 8;
    }

    .park_box01 .under .column04 ul {
        position: relative;
        z-index: 8;
    }

    .park_box01 .up .image .loc_img14::before {
        display: block;
        content: "";
        width: 60px;
        height: 80vw;
        /* padding-top: 18vw; */
        background-image: url(../img/gold02.png);
        background-repeat: no-repeat;
        background-size: 100%;
        position: absolute;
        top: 50vw;
        left: 14vw;
        z-index: -1;
    }

    #medical::before {
        content: none;
    }

    .medical_box01 .left .column2_1 ul li:nth-of-type(1) .loc_img19 {
        z-index: 8;
    }

    .medical_box01 .left .column2_1 ul li:nth-of-type(1) .loc_img19::after {
        display: block;
        content: "";
        width: 60px;
        height: 80vw;
        /* padding-top: 18vw; */
        background-image: url(../img/gold03.png);
        background-repeat: no-repeat;
        background-size: 100%;
        position: absolute;
        bottom: -80vw;
        right: 14vw;
        z-index: -1;
    }
}

@media only screen and (max-width: 499px) {
    .shop_box01 .right .loc_img03 .illust01 {
        top: -10vw;
    }
}

/* 追加調整 */

/* 改行調整 */
.tab_br {
    display: block;
}

#main {
    z-index: 5;
}

.w_90 {
    width: 90%;
    margin: 0 auto;
}

.shop_box01 {
    width: 100%;
    padding: 30px 30px;
    border: 4px solid #d1c8a4;
    margin: 0 auto;
    position: relative;
    z-index: 5;
}

.shop_box02 {
    overflow: initial;
}

.shop_box02 .column04 ul::before {
    z-index: 0;
}

#education {
    padding: 160px 0 140px 0;
}

#education .scrolldown:after {
    height: 64vw;
}

.pc_sp_ttl {
    display: block;
}

.tab_ttl {
    display: none;
}

.br_1360 {
    display: block;
}


@media screen and (max-width: 1520px) {
    .shop_box01 .right .loc_img03 .illust01 {
        width: 12vw;
        top: -1.5vw;
    }
}

@media screen and (max-width: 1425px) {
    .shop_box01 .left {
        align-self: flex-end;
    }

    #education .scrolldown:after {
        height: 82vw;
    }
}

@media screen and (max-width: 1360px) {
    .br_1360 {
        display: none;
    }
}


@media only screen and (max-width: 1180px) {
    .tab_br {
        display: none;
    }

    .shop_box01 .left {
        align-self: flex-end;
    }

    .medical_box01 .right .loc_img22 .illust06 {
        top: -2vw;
    }

}

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

    .shop_box02 .column04 ul::before {
        height: 49vw;
        top: -43vw;
    }

    .shop_box01 {
        padding: 15px 15px;
    }
}

@media only screen and (max-width: 1180px) {
    .tab_ttl {
        display: block;
    }

    .pc_sp_ttl {
        display: none;
    }

    .shop_box01 {
        flex-wrap: wrap;
    }

    .shop_box01 .tab_ttl {
        width: 100%;
    }
}

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

    .pc_sp_ttl {
        display: block;
    }

    .tab_ttl {
        display: none;
    }

    .shop_box01 {
        padding: 15px 15px;
        margin: 30px auto 0;
    }

    .shop_box01 .right .loc_img03 .illust01 {
        width: 28vw;
        top: -7vw;
    }

    .shop_box02 .left {
        padding-top: 0;
    }

    #education {
        padding: 100px 0 140px 0;
    }

    .education_box01 .left .txt .illust03 {
        width: 29vw;
        top: -3vw;
    }

    .park_box01 .up .txt .illust04 {
        width: 21%;
        top: -12vw;
        right: 1vw;
    }

    .park_box01 .under {
        margin-top: 120px;
    }

    .park_box01 .up .image .loc_img14 .illust05 {
        width: 18vw;
    }

}

@media only screen and (max-width: 499px) {
    .shop_box02 .column04 ul::before {
        top: -24vw;
    }

    .education_box01 .left .txt .illust03 {
        top: -9vw;
    }

    .park_box01 .up .txt .illust04 {
        width: 21%;
        top: -5vw;
        right: 9vw;
    }
}

/* 20240205_メンテ */
#illust_box {
    padding: 80px 0;
}

#illust_box p {
    font-size: 20px;
    letter-spacing: 1.5px;
    line-height: 1.5;
    text-align: center;
    margin-bottom: 40px;
}

#illust_box figure figcaption {
    display: inline-block;
    bottom: 5%;
    right: 10px;
}

#illust_box figure img {
    mix-blend-mode: darken;
}

@media only screen and (max-width: 820px) {
    #illust_box {
        padding: 30px 0;
    }

    #illust_box p {
        font-size: 16px;
    }

    #illust_box figure figcaption {
        bottom: 0;
        right: 10px;
    }
}