@charset "utf-8";

@import url('https://use.fontawesome.com/releases/v5.14.0/css/all.css');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&family=Shippori+Mincho:wght@400;500;600;700;800&display=swap');

/* CSS Document */

html {
    color: #5c5a59;
    font-size: 16px;
    font-family: "游ゴシック", YuGothic, Hiragino Sans, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", Hiragino Kaku Gothic ProN, "メイリオ", Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
    font-weight: 500;
    line-height: 1.6;
}



/*フォント系*/

.fs12 {
    font-size: 12px;
}

.fs14 {
    font-size: 14px;
}

.fs16 {
    font-size: 16px;
}

.fs18 {
    font-size: 18px;
}

.fs20 {
    font-size: 20px;
}

.fs22 {
    font-size: 22px;
}

.fs24 {
    font-size: 24px;
}

.fs26 {
    font-size: 26px;
}

.fs28 {
    font-size: 28px;
}

.fs30 {
    font-size: 30px;
}

.fs32 {
    font-size: 32px;
}

.fs34 {
    font-size: 34px;
}

.fs36 {
    font-size: 36px;
}

.fs38 {
    font-size: 38px;
}

.fs40 {
    font-size: 40px;
}

.fs42 {
    font-size: 42px;
}

.fs44 {
    font-size: 44px;
}

.fs46 {
    font-size: 46px;
}

@media only screen and (max-width: 1024px) {
    .fs20 {
        font-size: 18px;
    }

    .fs22 {
        font-size: 20px;
    }

    .fs24 {
        font-size: 20px;
    }

    .fs26 {
        font-size: 22px;
    }

    .fs28 {
        font-size: 22px;
    }

    .fs30 {
        font-size: 24px;
    }

    .fs32 {
        font-size: 24px;
    }

    .fs34 {
        font-size: 26px;
    }

    .fs36 {
        font-size: 26px;
    }

    .fs38 {
        font-size: 28px;
    }

    .fs40 {
        font-size: 28px;
    }

    .fs42 {
        font-size: 30px;
    }

    .fs44 {
        font-size: 30px;
    }

    .fs46 {
        font-size: 32px;
    }
}

@media only screen and (max-width: 599px) {
    .fs18 {
        font-size: 16px;
    }

    .fs20 {
        font-size: 18px;
    }

    .fs22 {
        font-size: 18px;
    }

    .fs24 {
        font-size: 20px;
    }

    .fs26 {
        font-size: 20px;
    }

    .fs28 {
        font-size: 22px;
    }

    .fs30 {
        font-size: 22px;
    }

    .fs32 {
        font-size: 24px;
    }

    .fs34 {
        font-size: 24px;
    }

    .fs36 {
        font-size: 26px;
    }

    .fs38 {
        font-size: 26px;
    }

    .fs40 {
        font-size: 28px;
    }

    .fs42 {
        font-size: 28px;
    }

    .fs44 {
        font-size: 30px;
    }

    .fs46 {
        font-size: 32px;
    }
}



/* show hide */

.show\@pc {
    display: block;
}

.hide\@pc {
    display: none;
}

[data-element-id] .show\@tb {
    display: block;
    border: solid 4px green;
    position: relative;
}

[data-element-id] .show\@tb:after {
    display: block;
    content: "モバイル用です。";
    color: #fff;
    font-weight: 700;
    background: green;
    padding: 5px;
    text-align: center;
}

[data-element-id] .show\@sp {
    display: block;
    border: solid 4px green;
    position: relative;
}

[data-element-id] .show\@sp:after {
    display: block;
    content: "モバイル用です。";
    color: #fff;
    font-weight: 700;
    background: green;
    padding: 5px;
    text-align: center;
}

@media (max-width: 1024px) {
    .show\@tb {
        display: block;
    }

    .hide\@tb {
        display: none;
    }
}

@media (max-width: 599px) {
    .show\@sp {
        display: block;
    }

    .hide\@sp {
        display: none;
    }
}



/*トランスフォーム親*/

.tfmp {
    position: relative;
    overflow: hidden;
}



/* telリンク */

/* @media (max-width: 1024px) {
    a[href*="tel"], button[href*="tel"] {
       pointer-events: none !important;
    }
} */



/* fead */

.fead-mv.mv {
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;
}



/* icon */

.icon-plus:before {
    content: "\f067";
    font-family: 'font awesome 5 free';
    font-weight: bold;
}



/*ofiImg*/

.ofiImg img {
    width: 100%;
    height: 100% !important;
    font-family: "object-fit: cover; object-position: 50% 50%;";
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
}

.ofiImg.tc {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
}

.ofiImg.t150 {
    position: relative;
    padding-top: 150%;
    display: block;
}

.ofiImg.t150 img {
    position: absolute;
    top: 0;
    left: 0;
}

.ofiImg.t140 {
    position: relative;
    padding-top: 140%;
    display: block;
}

.ofiImg.t140 img {
    position: absolute;
    top: 0;
    left: 0;
}

.ofiImg.t130 {
    position: relative;
    padding-top: 130%;
    display: block;
}

.ofiImg.t130 img {
    position: absolute;
    top: 0;
    left: 0;
}

.ofiImg.t120 {
    position: relative;
    padding-top: 120%;
    display: block;
}

.ofiImg.t120 img {
    position: absolute;
    top: 0;
    left: 0;
}

.ofiImg.t110 {
    position: relative;
    padding-top: 110%;
    display: block;
}

.ofiImg.t110 img {
    position: absolute;
    top: 0;
    left: 0;
}

.ofiImg.t100 {
    position: relative;
    padding-top: 100%;
    display: block;
}

.ofiImg.t100 img {
    position: absolute;
    top: 0;
    left: 0;
}

.ofiImg.t90 {
    position: relative;
    padding-top: 90%;
    display: block;
}

.ofiImg.t90 img {
    position: absolute;
    top: 0;
    left: 0;
}

.ofiImg.t80 {
    position: relative;
    padding-top: 80%;
    display: block;
}

.ofiImg.t80 img {
    position: absolute;
    top: 0;
    left: 0;
}

.ofiImg.t70 {
    position: relative;
    padding-top: 70%;
    display: block;
}

.ofiImg.t70 img {
    position: absolute;
    top: 0;
    left: 0;
}

.ofiImg.t60 {
    position: relative;
    padding-top: 60%;
    display: block;
}

.ofiImg.t60 img {
    position: absolute;
    top: 0;
    left: 0;
}

.ofiImg.t50 {
    position: relative;
    padding-top: 50%;
    display: block;
}

.ofiImg.t50 img {
    position: absolute;
    top: 0;
    left: 0;
}

.ofiImg.t40 {
    position: relative;
    padding-top: 40%;
    display: block;
}

.ofiImg.t40 img {
    position: absolute;
    top: 0;
    left: 0;
}

.ofiImg.t30 {
    position: relative;
    padding-top: 30%;
    display: block;
}

.ofiImg.t30 img {
    position: absolute;
    top: 0;
    left: 0;
}

.ofiImg.t20 {
    position: relative;
    padding-top: 20%;
    display: block;
}

.ofiImg.t20 img {
    position: absolute;
    top: 0;
    left: 0;
}



/*フレックス*/

.flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.flexc {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: justify;
    justify-content: center;
}

.flexs {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: distribute;
    justify-content: space-around;
}

.flexb {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.flexsb {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.flex > div[data-collection-list-content],
.flexc > div[data-collection-list-content],
.flexb > div[data-collection-list-content],
.flexsb > div[data-collection-list-content],
.flexs > div[data-collection-list-content] {
    width: 100%;
}

.flex > div[data-recommend-collection-list-content],
.flexc > div[data-recommend-collection-list-content],
.flexb > div[data-recommend-collection-list-content],
.flexsb > div[data-recommend-collection-list-content],
.flexs > div[data-recommend-collection-list-content] {
    width: 100%;
}

.flex > div[data-collection-list-content] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.flexc > div[data-collection-list-content] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: justify;
    justify-content: center;
}

.flexs > div[data-collection-list-content] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: distribute;
    justify-content: space-around;
}

.flexsb > div[data-collection-list-content] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.flexb > div[data-collection-list-content] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.flex > div[data-recommend-collection-list-content] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.flexc > div[data-recommend-collection-list-content] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: justify;
    justify-content: center;
}

.flexs > div[data-recommend-collection-list-content] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: distribute;
    justify-content: space-around;
}

.flex > div[data-collection-archive-content] {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.flexsb > div[data-collection-archive-content] {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.flexb > div[data-collection-archive-content] {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.flexc > div[data-collection-archive-content] {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.flex > div[data-collection-filtered-content] {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.flexc > div[data-collection-filtered-content] {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.flexsb > div[data-collection-filtered-content] {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.flexb > div[data-collection-filtered-content] {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.aic {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.asc {
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
}

.ase {
    -webkit-align-self: flex-end;
    -ms-flex-item-align: end;
    align-self: flex-end;
}

.spa {
    -ms-flex-pack: distribute;
    justify-content: space-around;
}

.spb {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.reverse {
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}



/*wrap*/

#wrapper {
    overflow: hidden;
    min-width: 320px;
    margin: 0 auto;
}



/*common*/

.odd > *:nth-of-type(odd) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.even > *:nth-of-type(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.ol > li {
    padding-left: 1.5em;
    position: relative;
}

.ol > li:before {
    content: "●";
    position: absolute;
    left: 0;
}

.cl > li {
    padding-left: 2em;
    position: relative;
}

.cl > li:before {
    content: "\f00c";
    font-family: "font awesome 5 free";
    font-weight: bold;
    position: absolute;
    left: 0;
    font-size: 150%;
}

.nl {
    counter-reset: number;
}

.nl > li {
    padding-left: 1.5em;
    position: relative;
}

.nl > li:before {
    counter-increment: number;
    content: counter(number);
    position: absolute;
    top: 0.25em;
    left: 0;
    border: 1px solid;
    border-radius: 50%;
    width: 1em;
    height: 1em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.z1 {
    position: relative;
    z-index: 1;
}

.memh {
    margin: 0.5em 0;
}

.mem1 {
    margin: 1em 0;
}

.mem2 {
    margin: 2em 0;
}

.mbemh {
    margin-bottom: 0.5em;
}

.mbem1 {
    margin-bottom: 1em;
}

.mbem2 {
    margin-bottom: 2em;
}

.mbem3 {
    margin-bottom: 3em;
}

.mremh {
    margin-right: 0.5em;
}

.mrem1 {
    margin-right: 1em;
}

.mrem2 {
    margin-right: 2em;
}

.mrem3 {
    margin-right: 3em;
}

.mlemh {
    margin-left: 0.5em;
}

.mlem1 {
    margin-left: 1em;
}

.mlem2 {
    margin-left: 2em;
}

.mlem3 {
    margin-left: 3em;
}

.fw300 {
    font-weight: 300;
}

.fw400 {
    font-weight: 400;
}

.fw500 {
    font-weight: 500;
}

.fw600 {
    font-weight: 600;
}

.fw700 {
    font-weight: 700;
}

.row2 {
    width: 48%;
    margin: 1%;
}

.row3 {
    width: 31.333%;
    margin: 1%;
}

.row4 {
    width: 23%;
    margin: 1%;
}

.row5 {
    width: 18%;
    margin: 1%;
}

.w100 {
    width: 100%;
    display: block;
}

.w20 {
    width: 20%;
    margin: 1% 0;
}

.w25 {
    width: 25%;
    margin: 1% 0;
}

.w26 {
    width: 26%;
    margin: 1% 0;
}

.w30 {
    width: 30%;
    margin: 1% 0;
}

.w36 {
    width: 36%;
    margin: 1% 0;
}

.w40 {
    width: 40%;
    margin: 1% 0;
}

.w46 {
    width: 46%;
    margin: 1% 0;
}

.w48 {
    width: 48%;
    margin: 1% 0;
}

.w50 {
    width: 50%;
    margin: 1% 0;
}

.w56 {
    width: 56%;
    margin: 1% 0;
}

.w60 {
    width: 60%;
    margin: 1% 0;
}

.w66 {
    width: 66%;
    margin: 1% 0;
}

.w70 {
    width: 70%;
    margin: 1% 0;
}

.w76 {
    width: 76%;
    margin: 1% 0;
}

.w80 {
    width: 80%;
    margin: 1% 0;
}

.w86 {
    width: 86%;
    margin: 1% 0;
}

.m600 {
    max-width: 600px;
    margin: auto;
}

.m700 {
    max-width: 700px;
    margin: auto;
}

.m800 {
    max-width: 800px;
    margin: auto;
}

.m900 {
    max-width: 900px;
    margin: auto;
}

.m960 {
    max-width: 960px;
    margin: auto;
}

.m1000 {
    max-width: 1020px;
    margin: auto;
    width: 98%;
}

.m1100 {
    max-width: 1130px;
    margin: auto;
    width: 98%;
}

.m1200 {
    max-width: 1250px;
    width: 96%;
    margin: auto;
}

.harea {
    padding: 80px 0;
}

.area {
    padding: 80px 0;
}

.area60 {
    padding: 60px 0;
}

.area40 {
    padding: 40px 0;
}

.area20 {
    padding: 20px 0;
}

.m80 {
    margin: 80px 0;
}

.m60 {
    margin: 60px 0;
}

.m40 {
    margin: 40px 0;
}

.m20 {
    margin: 20px 0;
}

.mt80 {
    margin-top: 80px;
}

.mt60 {
    margin-top: 60px;
}

.mt40 {
    margin-top: 40px;
}

.mt20 {
    margin-top: 20px;
}

.mb80 {
    margin-bottom: 80px;
}

.mb60 {
    margin-bottom: 60px;
}

.mb40 {
    margin-bottom: 40px;
}

.mb20 {
    margin-bottom: 20px;
}

.pic {
    text-align: center;
}

.pix {
    text-align: center;
}

.pic img {
    width: 100%;
}

.tac {
    text-align: center;
}

.tal {
    text-align: left;
}

.tar {
    text-align: right;
}

.tac599 {
    text-align: center;
}

.tar599 {
    text-align: right;
}

.tarc599 {
    text-align: right;
}

.txt {
    line-height: 200%;
}

.lh160 {
    line-height: 160%;
}

.lh200 {
    line-height: 200%;
}

.str125 {
    font-size: 125%;
}

.str150 {
    font-size: 150%;
}

.str175 {
    font-size: 175%;
}

.str200 {
    font-size: 200%;
}

.uk-lb img {
    -webkit-transition: 0.3s all ease;
    transition: 0.3s all ease;
}

.uk-lb img:hover {
    cursor: pointer;
    opacity: 0.6;
}

.inb {
    display: inline-block;
}

@media only screen and (max-width:1024px) {
    .m600 {
        width: 96%;
    }

    .m700 {
        width: 96%;
    }

    .m800 {
        width: 96%;
    }

    .m900 {
        width: 96%;
    }

    .m960 {
        width: 96%;
    }

    .m1000 {
        width: 96%;
    }

    .harea {
        padding: 60px 0;
    }

    .area {
        padding: 60px 0;
    }

    .area60 {
        padding: 50px 0;
    }

    .area40 {
        padding: 30px 0;
    }

    .row4 {
        width: 31.333%;
    }

    .row5 {
        width: 23%;
    }

    .mt80 {
        margin-top: 60px;
    }

    .mt60 {
        margin-top: 50px;
    }

    .mt40 {
        margin-top: 30px;
    }

    .mb80 {
        margin-bottom: 60px;
    }

    .mb60 {
        margin-bottom: 50px;
    }

    .mb40 {
        margin-bottom: 30px;
    }

    .br1024 br {
        display: none;
    }
}

@media only screen and (max-width:599px) {
    .w20 {
        width: 100%;
        margin: 2% auto;
    }

    .pic.w20 {
        max-width: 400px;
    }

    .w20 .pic {
        max-width: 400px;
        margin: 0 auto;
    }

    .w26 {
        width: 100%;
        margin: 2% auto;
    }

    .pic.w26 {
        max-width: 400px;
    }

    .w26 .pic {
        max-width: 400px;
        margin: 0 auto;
    }

    .w30 {
        width: 100%;
        margin: 2% auto;
    }

    .pic.w30 {
        max-width: 400px;
    }

    .w30 .pic {
        max-width: 400px;
        margin: 0 auto;
    }

    .w36 {
        width: 100%;
        margin: 2% auto;
    }

    .pic.w36 {
        max-width: 400px;
    }

    .w36 .pic {
        max-width: 400px;
        margin: 0 auto;
    }

    .w40 {
        width: 100%;
        margin: 2% auto;
    }

    .pic.w40 {
        max-width: 400px;
    }

    .w40 .pic {
        max-width: 400px;
        margin: 0 auto;
    }

    .w46 {
        width: 100%;
        margin: 2% auto;
    }

    .w48 {
        width: 100%;
        margin: 2% auto;
    }

    .w50 {
        width: 100%;
        margin: 2% auto;
    }

    .w56 {
        width: 100%;
        margin: 2% auto;
    }

    .w60 {
        width: 100%;
        margin: 2% auto;
    }

    .w66 {
        width: 100%;
        margin: 2% auto;
    }

    .w70 {
        width: 100%;
        margin: 2% auto;
    }

    .w76 {
        width: 100%;
        margin: 2% auto;
    }

    .w80 {
        width: 100%;
        margin: 2% auto;
    }

    .w86 {
        width: 100%;
        margin: 2% auto;
    }

    .m600 {
        width: 94%;
    }

    .m700 {
        width: 94%;
    }

    .m800 {
        width: 94%;
    }

    .m900 {
        width: 94%;
    }

    .m960 {
        width: 94%;
    }

    .m1000 {
        width: 94%;
    }

    .m1100 {
        width: 94%;
    }

    .m1200 {
        width: 94%;
    }

    .harea {
        padding: 40px 0;
    }

    .area {
        padding: 40px 0;
    }

    .area60 {
        padding: 40px 0;
    }

    .area40 {
        padding: 20px 0;
    }

    .row2 {
        width: 98%;
    }

    .row3 {
        width: 48%;
    }

    .row4 {
        width: 48%;
    }

    .row5 {
        width: 31.333%;
    }

    .m80 {
        margin: 40px 0;
    }

    .m60 {
        margin: 40px 0;
    }

    .mt80 {
        margin-top: 40px;
    }

    .mt60 {
        margin-top: 40px;
    }

    .mt40 {
        margin-top: 30px;
    }

    .mb80 {
        margin-bottom: 40px;
    }

    .mb60 {
        margin-bottom: 40px;
    }

    .mb40 {
        margin-bottom: 30px;
    }

    .tac599 {
        text-align: left;
    }

    .tar599 {
        text-align: left;
    }

    .tarc599 {
        text-align: center;
    }

    .br599 br {
        display: none;
    }
}



/*common*/

.shippori {
    font-family: 'Shippori Mincho', serif;
    letter-spacing: 1px;
}

.shipporiAll * {
    font-family: 'Shippori Mincho', serif;
    letter-spacing: 1px;
}

.h100 {
    height: 100%;
}

.pem1 {
    padding: 1em;
}

.headlabel {
    margin-bottom: 5px;
    text-align: right;
    line-height: 0;
}

.headlabel span {
    display: inline-block;
    width: 40%;
    margin-left: auto;
    height: 8px;
    background: -webkit-gradient(linear, left top, right top, from(#4bc4a6), color-stop(60%, #4bc4a6), color-stop(60%, #ef841a), to(#ef841a));
    background: linear-gradient(90deg, #4bc4a6 0%, #4bc4a6 60%, #ef841a 60%, #ef841a 100%);
}

.ol.b li:before {
    color: #3399cc;
    font-size: 75%;
}

.ol.g li:before {
    color: #4bc4a6;
    font-size: 75%;
}

.fc-orange {
    color: #f99129;
}

.fc-green {
    color: rgba(75, 196, 166, 255);
}

.tlink {
    color: #f99129;
}

.tlink:after {
    content: "\f35d";
    font-family: 'font awesome 5 free';
    font-weight: bold;
    margin-left: 5px;
}

.tlink:hover {
    color: #f99129;
    text-decoration: underline;
}

.tel.tel01 a {
    display: inline-block;
}

.tel.tel01 {
    position: relative;
    padding-left: 1em;
    display: block;
}

.tel.tel01:before {
    content: "\f095";
    font-family: "font awesome 5 free";
    font-weight: bold;
    position: absolute;
    left: 0;
    font-weight: 400;
    -webkit-transform: rotate(5deg);
    transform: rotate(5deg);
    -webkit-transform-origin: left center;
    transform-origin: left center;
}

.more01 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.more01 a {
    width: 230px;
    max-width: 100%;
    color: #fff;
    background: #F19133;
    border: 1px solid #F19133;
    border-radius: 8px;
    padding: 15px 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.more01 a:before {
    display: block;
    content: "\f35a";
    color: #fff;
    font-family: "font awesome 5 free";
    font-weight: bold;
    margin-right: 20px;
}

.more01 a:hover {
    color: #F19133;
    background: #fff;
    opacity: 1;
}

.more01 a:hover:before {
    color: #F19133;
}

.more02 > * {
    display: inline-block;
    max-width: 100%;
    color: #fff;
    background: #f0933a;
    border: solid 1px #f0933a;
    border-radius: 8px;
    padding: 0.25em 1em;
    opacity: 1;
}

.more02 > *:hover {
    color: #f0933a;
    background: none;
    border: 1px solid;
    opacity: 1;
}

.more02.g > * {
    background: #4bc4a6;
    border: solid 1px #4bc4a6;
    border-radius: 8px;
}

.more02.g > *:hover {
    color: #4bc4a6;
    background: none;
}

.more02.gr > * {
    color: #fff;
    background: #959595;
    border: solid 1px #959595;
}

.more02.gr > *:hover {
    color: #959595;
    background: none;
}

.more02.t > * {
    color: #fff;
    background: no-repeat;
    border: 1px solid;
    border-radius: 0;
}

.more03 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.more03 a {
    width: 380px;
    max-width: 100%;
    color: #fff;
    background: #f0933a;
    border-radius: 8px;
    padding: 0.8em;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.more03 a:before {
    display: block;
    content: "\f138";
    font-family: "font awesome 5 free";
    font-weight: bold;
    font-size: 110%;
    line-height: 1;
    margin-right: 10px;
}

.more05 a {
    display: inline-block;
    max-width: 100%;
}

.more05 .btn {
    display: inline-block;
    max-width: 100%;
    width: 260px;
    padding: 1em;
    text-align: center;
    position: relative;
    margin-right: 35px;
}

.more05 .btn:after {
    position: absolute;
    content: url(/import/tenant_1/160.16.223.20/html/images/back01.png);
    top: 50%;
    right: -35px;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    z-index: 1;
}

.back01 a {
    display: inline-block;
}

.back01 a:before {
    display: block;
    content: url(/import/tenant_1/160.16.223.20/html/images/back01.png);
    margin-bottom: 0.25em;
}

.back02 a {
    display: inline-block;
    width: 200px;
    max-width: 100%;
    color: #fff;
    background: #f99129;
    border: 1px solid #f99129;
    padding: 0.5em;
    opacity: 1;
}

.back02 a:hover {
    color: #f99129;
    background: none;
}

.bb-orange-thick:after {
    display: block;
    width: 100%;
    height: 4px;
    margin: 1em 0;
    content: "";
    background: -webkit-gradient(linear, left top, right top, from(#f0933a), color-stop(30%, #f0933a), color-stop(30%, #dcdcdc), to(#dcdcdc));
    background: linear-gradient(90deg, #f0933a 0%, #f0933a 30%, #dcdcdc 30%, #dcdcdc 100%);
}

.bb-orange:after {
    display: block;
    width: 100%;
    height: 1px;
    margin: 1em 0;
    content: "";
    background: -webkit-gradient(linear, left top, right top, from(#ED7803), color-stop(30%, #ED7803), color-stop(30%, #dcdcdc), to(#dcdcdc));
    background: linear-gradient(90deg, #ED7803 0%, #ED7803 30%, #dcdcdc 30%, #dcdcdc 100%);
}

.bbLG:after {
    display: block;
    width: 100%;
    height: 4px;
    margin: 1em 0;
    content: "";
    background: -webkit-gradient(linear, left top, right top, from(#4bc4a6), color-stop(30%, #4bc4a6), color-stop(30%, #dcdcdc), to(#dcdcdc));
    background: linear-gradient(90deg, #4bc4a6 0%, #4bc4a6 30%, #dcdcdc 30%, #dcdcdc 100%);
}

.bbLG1:after {
    display: block;
    width: 100%;
    height: 1px;
    margin: 1em 0;
    content: "";
    background: -webkit-gradient(linear, left top, right top, from(#4bc4a6), color-stop(30%, #4bc4a6), color-stop(30%, #dcdcdc), to(#dcdcdc));
    background: linear-gradient(90deg, #4bc4a6 0%, #4bc4a6 30%, #dcdcdc 30%, #dcdcdc 100%);
}

.bb1 {
    display: inline-block;
}

.bb1:after {
    content: "";
    width: 140px;
    height: 1px;
    border-bottom: 1px solid;
    display: block;
    margin: 0.5em auto;
}

.bb1.l:after {
    margin: 0.5em 0;
}

.bb2 {
    display: inline-block;
}

.bb2:after {
    content: "";
    width: 190px;
    height: 2px;
    border-bottom: 2px solid;
    display: block;
    margin: 0.5em auto;
}

.bb1box {
    padding: 2em;
    border: 1px solid #bfbfbf;
    background: #FBF9F5;
    border-radius: 10px;
}

.bb1box-red {
    background: #fdf1ee;
    border: solid 2px #db3100;
}

.markLB {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, rgba(255, 255, 255, 0)), color-stop(60%, #f8cba3));
    background: linear-gradient(rgba(255, 255, 255, 0) 60%, #f8cba3 60%);
}

.markLB .underline {
    display: block;
    width: 100%;
    height: 40%;
    background: #f8cba3;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
}

.checklist li {
    background: none;
    margin: 0.5em 0;
    padding-left: 1.3em;
    position: relative;
}

.checklist li:before {
    display: block;
    content: "\f111";
    color: #874421;
    font-family: 'Font Awesome 5 Free';
    position: absolute;
    top: 0;
    left: 0;
}

.reservebnr01 a {
    padding: 1.5em 3em;
    background: #f99129;
    display: inline-block;
    width: 760px;
    max-width: 100%;
}

.reservebnr01 * {
    color: #fff;
}

.reservebnr01 dt {
    width: 10em;
    margin-right: 1em;
    border-right: 2px solid;
    font-size: 18px;
}

.reservebnr01 dt span {
    display: inline-block;
    padding-right: 2em;
    position: relative;
}

.reservebnr01 dt span:after {
    position: absolute;
    top: 0;
    right: 0;
    content: "\f105";
    font-family: "font awesome 5 free";
    font-weight: bold;
    width: 1em;
    height: 1em;
    line-height: 1em;
    text-align: center;
    border: 1px solid;
    border-radius: 50%;
    letter-spacing: -2px;
    font-size: 150%;
}

.reservebnr01 dd {
    width: calc(100% - 13em);
}

@media only screen and (max-width:1024px) {
    .more03 .btn {
        padding: 0.75em;
    }

    .bb1:after {
        width: 105px;
    }

    .bb2:after {
        width: 137.5px;
    }

    .reservebnr01 a {
        padding: 1.25em 2em;
    }

    .bb1box {
        padding: 1.5em;
    }
}

@media only screen and (max-width:599px) {
    .more03 .btn {
        padding: 0.5em;
    }

    .bb1:after {
        width: 70px;
    }

    .bb2:after {
        width: 95px;
    }

    .reservebnr01 a {
        padding: 1.5em;
    }

    .reservebnr01 dt {
        width: 100%;
        border-right: none;
        border-bottom: 2px solid;
        padding-bottom: 0.5em;
        margin-bottom: 1em;
    }

    .reservebnr01 dd {
        width: 100%;
    }

    .bb1box {
        padding: 1em;
    }
}



/* 見出し */

.tit01 {
    font-family: 'Shippori Mincho', serif;
    letter-spacing: 3px;
    margin-bottom: 40px;
    text-align: center;
}

.tit01 > * {
    display: block;
}

.tit01 .jp {
    font-size: 30px;
}

.tit01 .jp:after {
    content: "";
    display: block;
    width: 200px;
    height: 1px;
    margin: 10px auto 0;
    border-bottom: 1px solid #27110a;
}

.tit01 .en {
    font-size: 20px;
    margin-top: 15px;
}

@media (max-width: 1024px) {
    .tit01 .jp {
        font-size: 26px;
    }

    .tit01 .en {
        font-size: 18px;
    }
}

@media (max-width: 599px) {
    .tit01 .jp {
        font-size: 22px;
    }

    .tit01 .en {
        font-size: 16px;
    }
}

.tit02 {
    color: #874421;
    font-size: 24px;
    font-family: 'Shippori Mincho', serif;
    letter-spacing: 1px;
    padding: 0.5em 1em;
    margin-bottom: 40px;
    position: relative;
}

.tit02:before, .tit02:after {
    display: block;
    content: "";
    height: 100%;
    position: absolute;
    top: 0;
    z-index: -1;
}

.tit02:before {
    width: 60%;
    background: url(/import/tenant_1/160.16.223.20/html/images/common/bg02.jpg) no-repeat;
    background-size: cover;
    left: 0;
    opacity: 0.7;
}

.tit02:after {
    width: 40%;
    border-top: solid 1px #e8e8e8;
    border-bottom: solid 1px #e8e8e8;
    right: 0;
}

@media (max-width: 1024px) {
    .tit02 {
        font-size: 22px;
        padding: 0.5em 0.75em;
        margin-bottom: 30px;
    }
}

@media (max-width: 599px) {
    .tit02 {
        font-size: 20px;
        padding: 0.25em 0.5em;
        margin-bottom: 20px;
    }

    .tit02:before {
        width: 100%;
    }

    .tit02:after {
        display: none;
    }
}

.tit03 {
    font-size: 24px;
    font-family: 'Shippori Mincho', serif;
    letter-spacing: 1px;
    margin-bottom: 40px;
}

.tit03:after {
    display: block;
    width: 100%;
    height: 1px;
    margin: 0.5em 0;
    content: "";
    background: -webkit-gradient(linear, left top, right top, from(#ED7803), color-stop(30%, #ED7803), color-stop(30%, #dcdcdc), to(#dcdcdc));
    background: linear-gradient(90deg, #ED7803 0%, #ED7803 30%, #dcdcdc 30%, #dcdcdc 100%);
}

@media (max-width: 1024px) {
    .tit03 {
        font-size: 22px;
        margin-bottom: 30px;
    }
}

@media (max-width: 599px) {
    .tit03 {
        font-size: 20px;
        margin-bottom: 20px;
    }
}

.tit04 {
    color: #874421;
    font-size: 24px;
    font-family: 'Shippori Mincho', serif;
    background: #ffde80;
    letter-spacing: 1px;
    padding: 10px;
    margin-bottom: 40px;
    text-align: center;
    position: relative;
}

.tit04:before, .tit04:after {
    display: block;
    content: "";
    width: 0;
    height: 0;
    position: absolute;
}

.tit04:before {
    border-top: solid 20px #dbae54;
    border-right: solid 20px transparent;
    top: 0;
    left: 0;
}

.tit04:after {
    border-bottom: solid 20px #dbae54;
    border-left: solid 20px transparent;
    bottom: 0;
    right: 0;
}

@media (max-width: 1024px) {
    .tit04 {
        font-size: 22px;
        margin-bottom: 30px;
    }
}

@media (max-width: 599px) {
    .tit04 {
        font-size: 20px;
        margin-bottom: 20px;
    }
}

.tit05 {
    color: #f99129;
    font-size: 18px;
    font-weight: bold;
    border-left: solid 4px;
    padding-left: 10px;
    margin-bottom: 20px;
}

/*header*/

header {
    position: relative;
}

header h1 {
    font-size: 10px;
    margin-bottom: 10px;
}

.headtop {
    margin-bottom: 30px;
}

/* .headtopL {
    max-width: 250px;
} */

.headadd {
    font-size: 10px;
    margin-bottom: 5px;
    text-align: right;
}

.hinfolist {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.hinfolist dl {
    background-color: #F48500;
    text-align: center;
    padding: 10px;
    border-radius: 10px;
    margin: 0 5px;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

.hinfolist dt {
    color: #fff;
    text-align: center;
}

.hinfolist dd {
    color: #FFFF99;
    font-size: 20px;
    text-align: center;
}

@media only screen and (max-width:1024px) {
    h1 {
        padding-right: 50px;
        margin-bottom: 1em;
    }

    .headtop {
        padding: 20px 0 10px;
        margin: 0;
    }

    /* .headtopL {
        max-width: 200px;
    } */

    .hinfolist dd {
        font-size: 18px;
    }
}

@media only screen and (max-width:599px) {
    h1 {
        margin-bottom: 0.5em;
    }

    .hlogo a {
        max-width: 260px;
    }

    .headtopL {
        margin: auto;
    }

    .headtopR {
        width: 100%;
        margin-top: 10px;
    }

    .hinfolist dt {
        font-size: 12px;
    }

    .hinfolist dd {
        font-size: 14px;
    }
}

/*gnav*/

#gnav p.toggle span.n {
    display: none;
}

[data-element-id] #gnav {
    position: static;
}

#gnav {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    z-index: 200;
    width: 100%;
    /* position: absolute; */
    bottom: 0;
    left: 0;
}

#gnav.fixed {
    position: fixed;
    z-index: 200;
    top: 0;
    bottom: auto;
    background: rgba(255, 255, 255, 0.8);
}

.glist li {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝", serif;
    letter-spacing: 1px;
    text-align: center;
    position: relative;
}

.glist > li:before {
    content: "|";
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    font-weight: 700;
    color: #000;

}

[data-element-id] #gnav li.pcnone {
    display: block;
}

.glist li.pcnone {
    display: none;
}

.glist li .gIcon01 {
    display: inline-block;
    padding-left: 30px;
    background: url(/import/tenant_1/160.16.223.20/html/images/homeicon01.png) left top 2px /20px no-repeat;
}

.glist li a {
    width: 100%;
    display: block;
    font-weight: 700;
    padding: 1em;
}

.fix .accordion-toggle {
    opacity: 0.8;
}

.glist .dropdown {
    position: relative;
}

.glist .dropdown > a .en {
    padding-right: 40px;
    position: relative;
}

.glist .dropdown > a .en:before {
    display: block;
    content: "\f067";
    font-size: 80%;
    font-family: 'Font Awesome 5 Free';
    font-weight: bold;
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.glist .dropdown > a.active .en:before {
    content: "\f068";
}

[data-element-id] .glist .dropdown > ul {
    width: 100%;
    opacity: 1;
    visibility: visible;
    position: static;
}

.glist .dropdown > ul {
    width: 250px;
    background: #fcf1e5;
    opacity: 0;
    visibility: hidden;
    position: absolute;
    top: 100%;
    left: 0;
    -webkit-transition: 0.2s;
    transition: 0.2s;
}

.glist .dropdown:hover > ul {
    opacity: 1;
    visibility: visible;
    z-index: 10;
}

@media only screen and (max-width: 1024px) {
    #gnav .gnavinn {
        position: fixed;
        top: 0;
        right: 0;
        width: 100%;
        max-width: 350px;
        height: 0;
        opacity: 0;
        visibility: hidden;
        -webkit-transition: height ease .1s, opacity ease .4s;
        transition: height ease .1s, opacity ease .4s;
        padding: 0;
        border: none;
        padding-bottom: 0;
        background: #fcf1e5;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        -webkit-transform: translate3d(0, 0, 0) !important;
        transform: translate3d(0, 0, 0) !important;
        z-index: 250;
    }

    #gnav p.toggle {
        display: block !important;
        position: fixed;
        width: 40px;
        height: 40px;
        top: 20px;
        right: 10px;
        cursor: pointer;
        opacity: 0.8;
        z-index: 251;
        -webkit-transform: translate3d(0, 0, 0) !important;
        transform: translate3d(0, 0, 0) !important;
    }

    #gnav.action .gnavinn {
        height: 100vh;
        opacity: 1;
        visibility: visible;
    }

    #gnav p.toggle span.n {
        display: block;
        text-indent: 9999px;
    }

    #gnav p.toggle .icon-bar {
        display: block;
        width: 22px;
        height: 2px;
        border-bottom: 2px solid #323232;
        position: absolute;
        left: 50%;
        margin-left: -11px;
        -webkit-transition: all .7s cubic-bezier(.19, 1, .22, 1);
        transition: all .7s cubic-bezier(.19, 1, .22, 1);
        -webkit-transition-timing-function: cubic-bezier(.19, 1, .22, 1);
        transition-timing-function: cubic-bezier(.19, 1, .22, 1);
        -webkit-transition-property: transform;
        -webkit-transition-property: -webkit-transform;
        transition-property: -webkit-transform;
        transition-property: transform;
        transition-property: transform, -webkit-transform;
        transition-property: transform, -webkit-transform;
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        position: relative;
    }

    #gnav p.toggle .icon-bar:nth-child(1) {
        -webkit-transition-delay: 150ms;
        transition-delay: 150ms
    }

    #gnav p.toggle .icon-bar:nth-child(2) {
        width: 16px;
        top: 6px;
        -webkit-transition-delay: .4s;
        transition-delay: .4s
    }

    #gnav p.toggle .icon-bar:nth-child(3) {
        width: 12px;
        top: 12px;
        -webkit-transition-delay: 0s;
        transition-delay: 0s;
    }

    #gnav.action p.toggle .icon-bar:nth-child(1) {
        -webkit-transform: rotate(315deg);
        transform: rotate(315deg);
        top: -2px;
        width: 25px;
        margin-left: -13px;
    }

    #gnav.action p.toggle .icon-bar:nth-child(2) {
        -webkit-transform: translate(-50px, 0);
        transform: translate(-50px, 0);
        opacity: 0;
    }

    #gnav.action p.toggle .icon-bar:nth-child(3) {
        width: 25px;
        -webkit-transform: rotate(-315deg);
        transform: rotate(-315deg);
        margin-left: -15px;
    }
    
    .glist {
        width: 100%;
        padding: 60px 3% 80px;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
    
    .glist li {
        display: block !important;
        width: 100%;
        text-align: left;
        position: static;
        padding: 0;
        -webkit-box-flex: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
    }
    
    .glist > li {
        -webkit-transform: translate(-2em, 0);
        transform: translate(-2em, 0);
        -webkit-transition: 0.6s all ease;
        transition: 0.6s all ease;
        opacity: 0;
    }
    
    .glist > li:before {
        display: none;
    }

    .action .glist > li {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        opacity: 1;
    }

    .glist a {
        height: auto;
        display: block;
        padding: 1em;
        border: none !important;
    }
    
    .glist .dropdown > ul {
        width: 100%;
        background: none;
        position: static;
        opacity: 1;
        visibility: visible;
    }
    
    .glist .dropdown > ul li a {
        padding-left: 2.5em !important;
        position: relative;
    }
    
    .glist .dropdown > ul li a:before {
        display: block;
        content: "∟";
        position: absolute;
        top: 1em;
        left: 1em;
    }

    .overlay {
        height: 100%;
        overflow: hidden;
    }

    .overlay:after {
        content: "";
        width: 100%;
        height: 100%;
        background: #000;
        position: fixed;
        top: 0;
        left: 0;
        opacity: 0.4;
        z-index: 100;
    }
}

@media only screen and (max-width:599px) {
    .headtop {
        padding: 0 0 10px;
    }

    #gnav .gnavinn {
        padding: 60px 3% 33%;
    }
    
    #gnav p.toggle {
        top: 17px;
    }
    
    .glist {
        padding: 0;
    }

    .glist li {
        width: 100% !important;
        font-size: 14px;
    }
}

/*スライドショー mainImg*/

.homeSlide {
    position: relative;
    overflow: hidden;
}

.homeSlide .pic {
    height: 70vh;
    opacity: 0.9;
}

.homeSlide .uk-slidenav-position {
    width: 100%;
    height: 100%;
}

.homeSlide .uk-slideshow {
    width: 100%;
    height: 100% !important;
}

.homeSlide .uk-slideshow > li {
    width: 100%;
    height: 100% !important;
}

.homeSlide .uk-slideshow > li > div {
    width: 100%;
    height: 100% !important;
}

.homeSlide .tbox {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    max-width: 100%;
    position: absolute;
    bottom: 2%;
    right: 20%;
}

.homeSlide .tbox * {
    color: #fff;
    text-shadow: 0px 0px 10px #999;
}

.homeSlide .tbox dt {
    font-size: 34px;
}

.homeSlide .tbox dt .big {
    font-size: 150%;
    font-weight: bold;
}

.homeSlide .tbox dd {
    font-size: 28px;
    margin: 1em 0;
}

.mainImg {
    position: relative;
    overflow: hidden;
}

.mainImg:before {
    display: block;
    content: "";
    width: 40%;
    height: 100%;
    background: url(/import/tenant_1/160.16.223.20/html/images/common/bg02.jpg) no-repeat;
    background-size: cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    opacity: 0.7;
}

.mainImg .ofiImg {
    width: 60%;
    height: 30vw;
    margin-left: auto;
    opacity: 0.9;
}

.mainImg .tit {
    position: absolute !important;
    top: 50%;
    left: calc(50% - 500px);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 5;
}

.mainImg .tit > * {
    display: block;
    color: #874421;
    text-shadow: 0px 0px 20px;
}

.mainImg .tit .ja {
    font-size: 2.7vw;
    letter-spacing: 10px;
}

.mainImg .tit .en {
    font-size: 1.2vw;
    letter-spacing: 5px;
    margin-top: 10px;
}

@media only screen and (max-width:1024px) {
    .homeSlide .pic {
        height: 45vh;
    }

    .homeSlide .tbox {
        max-width: 90%;
        padding: 10px;
        bottom: 5%;
        right: auto;
    }

    .homeSlide .tbox dt {
        font-size: 26px;
    }

    .homeSlide .tbox dd {
        font-size: 22px;
    }

    .mainImg .tit {
        width: 90%;
        left: 5%;
    }

    .mainImg .tit .ja {
        font-size: 32px;
    }

    .mainImg .tit .en {
        font-size: 16px;
    }
}

@media only screen and (max-width:599px) {
    .homeSlide .tbox {
        max-width: calc(100% - 20px);
        bottom: 10px;
        right: 50%;
        transform: translateX(50%);
    }

    .homeSlide .tbox dt {
        font-size: 16px;
    }

    .homeSlide .tbox dd {
        font-size: 12px;
    }

    .mainImg .pic {
        height: 45vw;
    }

    .mainImg .tit .ja {
        font-size: 22px;
    }

    .mainImg .tit .en {
        font-size: 16px;
    }
}

/*footer*/

footer {
    padding: 60px 0;
    margin-top: 80px;
    background: url(/import/tenant_1/160.16.223.20/html/images/common/bg01.png) center no-repeat #fad8bb;
    background-size: cover;
}

footer * {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝", serif;
    letter-spacing: 1px;
}

.finfolist {
    margin-bottom: 20px;
}

.flogo {
    max-width: 180px;
    margin-bottom: 20px;
}

.fadd {
    font-size: 14px;
}

.fpoint {
    color: #f0933a;
    font-size: 20px;
    font-family: "游ゴシック", YuGothic, Hiragino Sans, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", Hiragino Kaku Gothic ProN, "メイリオ", Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
    background: #fff;
    border: solid 1px #f0933a;
    padding: 10px;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.fpoint + * {
    background: #fff;
    margin-top: 10px;
}

.fpoint .icon {
    width: 30px;
    margin-right: 10px;
}

.copy {
    text-align: center;
    padding: 20px 0 0;
}

.table + * {
    margin-top: 30px;
}

.table table {
    width: 100%;
    background: #fff;
    border: 1px solid #cccccc;
}

.table table tr {
    border-bottom: 1px solid #cccccc;
}

.table table th {
    width: auto;
    font-weight: normal;
    padding: 0.5em;
    text-align: center;
    font-size: 14px;
}

.table table td {
    text-align: center;
    padding: 0.5em;
    border-left: 1px solid #ccc;
    font-size: 14px;
}

.table tbody td {
    color: #ed7600;
    font-size: 14px;
}

.table .txt {
    font-size: 14px;
    margin-top: 5px;
    text-align: right;
}

.fnavlist li {
    width: 48%;
    margin: 1%;
}

.fnavlist li a:before {
    display: inline-block;
    content: "\f054";
    font-family: "font awesome 5 free";
    font-weight: bold;
    margin-right: 5px;
}

@media only screen and (max-width:1024px) {
    footer {
        margin-top: 60px;
        padding: 50px 0 150px;
    }

    .footR {
        width: 100%;
        margin-bottom: 4%;
    }

    .footL {
        width: 100%;
    }

    .flogo {
        margin-left: auto;
        margin-right: auto;
    }

    .fadd {
        text-align: center;
    }
}

@media only screen and (max-width:599px) {
    footer {
        margin-top: 40px;
        padding: 40px 0 80px;
    }

    .fnavlist li {
        font-size: 14px;
    }

    .table table th {
        font-size: 10px;
    }

    .table table td {
        font-size: 10px;
    }

    .table .txt {
        font-size: 12px;
        text-align: left;
    }
}

/*ffix*/

[data-element-id] .ffix {
    max-width: none;
    margin-top: 20px;
    position: static;
}

.ffix {
    position: fixed;
    left: 0;
    bottom: 10%;
    z-index: 99;
    max-width: 60px;
}

[data-element-id] .ffix ul {
    display: flex;
}

[data-element-id] .ffix li {
    margin: 0 10px;
}

.ffix li {
    margin-bottom: 2em;
}

[data-element-id] .ffix li a {
    border-radius: 15px;
}

.ffix li a {
    display: block;
    padding: 2em 1em;
    color: #fff;
    border-radius: 0 15px 15px 0;
    line-height: 120%;
    font-size: 18px;

}

.ffixlist li:nth-of-type(2n+1) a {
    background: #f0933a;
    border: solid 1px #f0933a;
}

.ffixlist li:nth-of-type(2n+2) a {
    background: #4bc4a6;
    border: solid 1px #4bc4a6;
}

.ffixlist.type-b li:nth-of-type(2n+1) a {
    color: #f0933a;
    background: #fff;
}

.ffixlist.type-b li:nth-of-type(2n+2) a {
    color: #4bc4a6;
    background: #fff;
}

@media only screen and (max-width:1024px) {
    .ffix {
        max-width: inherit;
        width: 100%;
        padding: 10px 5px;
        bottom: 0;
        left: 0;
    }

    .ffix ul {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .ffix li {
        width: 50%;
        padding: 0 5px;
        margin: 0;
    }

    .ffix li a {
        border-radius: 10px;
        padding: 15px;
        text-align: center;
    }
}

@media only screen and (max-width:599px) {
    .ffix li a {
        font-size: 14px;
    }
}

/*home*/

/*IE対策 background-position*/

@media all and (-ms-high-contrast: none) {
    .homeSlide .pic img {
        background-position: top right !important;
    }
}

.home02 {
    background: #fce5d2;
}

.home02 .tfmp:before {
    content: "";
    background: #fff;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 40%;
    z-index: 1;
    background: -webkit-gradient(linear, right top, left bottom, color-stop(50%, rgba(255, 255, 255, 0)), color-stop(50.5%, rgba(255, 255, 255, 0.6))) no-repeat top left/100% 100%;
    background: linear-gradient(to bottom left, rgba(255, 255, 255, 0) 50%, rgba(255, 255, 255, 0.6) 50.5%) no-repeat top left/100% 100%;
}

.home02wrap .txt {
    line-height: 2.5;
}

.home02wrap .pic {
    width: 65%;
    margin: auto;
    padding-top: 130px;
    position: relative;
}

.home02wrap .pic .v-txt {
    font-size: 30px;
    font-weight: bold;
    letter-spacing: 4px;
    text-align: left;
    position: absolute;
    top: 0;
    right: 50%;
    z-index: 1;
    -webkit-transform: translateX(50%);
    transform: translateX(50%);
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}

.home02wrap .pic .v-txt .mini {
    font-size: 75%;
    font-weight: normal;
}

.home02cirlist {
    max-width: 850px;
    margin: 40px auto;
}

.home02ciritem {
    width: 29.333%;
    margin: 2%;
    position: relative;
}

.home02ciritem:after {
    display: block;
    content: "";
    padding-top: 100%;
}

.home02ciritem .cir {
    width: 100%;
    height: 100%;
    color: #fff;
    font-size: 16px;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝", serif;
    background: #fff;
    border-radius: 50%;
    padding: 1em;
    text-align: center;
    position: absolute;
    top: 0;
    left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.home02ciritem .cir:after {
    display: block;
    content: "\f35a";
    font-family: "font awesome 5 free";
    font-weight: bold;
    position: absolute;
    left: 50%;
    bottom: 15px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

.home02ciritem:nth-of-type(3n+1) .cir {
    color: #F29F4C;
}

.home02ciritem:nth-of-type(3n+2) .cir {
    color: #4BC4A6;
}

.home02ciritem:nth-of-type(3n+3) .cir {
    color: #DB3400;
}

.home02ciritem .cir .icon {
    margin-top: 10px;
}

.home03listwrap {
    border-bottom: 2px solid #dcdcdc;
    padding: 1em 0 2em;
}

.home03list {
    overflow-y: auto;
    max-height: 400px;
    -webkit-overflow-scrolling: touch;
    padding: 0 1em;
}

.home03list::-webkit-scrollbar {
    width: 12px;
}

.home03list::-webkit-scrollbar-thumb {
    background: #d2d2d2;
    border-radius: 10px;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.home03list::-webkit-scrollbar-track-piece {
    background: #efefef;
}

.home03item + * {
    margin-top: 30px;
}

.home03item .tbox dd {
    margin: 1em 0;
}

.home03item .tbox dd.tit {
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.home03item .pbox {
    width: 36%;
}

.home03item .tbox {
    width: 60%;
}

.home04contwrap .home04cont:nth-of-type(2n+1) .titbox .ofiImg:before {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: rgba(120, 47, 5, 0.6);
    content: "";
}

.home04contwrap .home04cont:nth-of-type(2n+2) .titbox .ofiImg:before {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: rgba(75, 196, 166, 0.6);
    content: "";
}

.home04cont .titbox .tfmp {
    padding: 70px 0;
}

.home04cont .titbox h3 {
    color: #fff;
}

.home04box .pointbox {
    max-width: 768px;
    margin: 40px auto;
}

.home04box .pointbox .pbox {
    width: 140px;
}

.home04box .pointbox .tbox {
    width: calc(100% - 145px);
}

.home04box .pointbox .tbox .txt {
    padding: 1em 2em 1em 4em;
    background: url(/import/tenant_1/160.16.223.20/html/images/balloon01.png) center center /100% 100% no-repeat;
}

.home04item a {
    display: block;
}

.home04item dl .num {
    color: #f99129;
    font-size: 30px;
    font-family: 'Shippori Mincho', serif;
    font-style: italic;
    padding: 5px 0 0;
    text-align: center;
}

.home04item dl .tit {
    font-size: 14px;
    font-family: 'Shippori Mincho', serif;
    border-bottom: 1px solid #D4D4D4;
    padding-bottom: 10px;
    text-align: center;
}

.home04item dl .txt {
    font-size: 14px;
    margin-top: 10px;
}

.home04bnritem {
    position: relative;
    overflow: hidden;
    width: 49%;
}

.home04bnritem a {
    display: block;
}

.home04bnritem .tbox {
    position: absolute;
    left: 0;
    top: 0;
    width: 290px;
    max-width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    z-index: 1;
    padding: 0.5em;
}

.home04bnritem .tbox dt,
.home04bnritem .tbox dd {
    color: #fff;
    margin: 0.5em 0;
    text-align: center;
}

.home04bnrlist .home04bnritem:nth-of-type(2n+1) .tbox {
    background: rgba(237, 118, 0, 0.6);
}

.home04bnrlist .home04bnritem:nth-of-type(2n+2) .tbox {
    background: rgba(75, 196, 166, 0.6);
}

.home04bnritem .ofiImg {
    display: block;
    padding-top: 35%;
    position: relative;
}

.home04bnritem .ofiImg img {
    position: absolute;
    top: 0;
    left: 0;
}

.home05 .m1000 {
    max-width: 950px;
}

.home05bnrbox .tbox {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    max-width: 100%;
    margin-left: auto;
    padding: 2em;
}

.home05bnrbox .tbox .tit {
    margin-bottom: 1em;
    text-shadow: 1px 1px 1px #fff;
}

.home05bnrbox .pic {
    width: 70%;
}

.home06 {
    /* background: #fdf1e5; */
}

.home06-nobg {
    background: transparent;
}

.home06 .tbox dl + dl {
    margin-top: 20px;
}

.home06 .tbox dt {
    width: 150px;
    font-weight: bold;
}

.home06 .tbox dd {
    width: calc(100% - 150px);
}

.home06 .map {
    margin-bottom: 10px;
}

.home06 .map:after {
    padding-top: 70%;
}

@media only screen and (max-width:1024px) {
    .home02 .tfmp:before {
        height: 30%;
    }

    .home02wrap .pic {
        width: 85%;
    }

    .home02wrap .pic .v-txt {
        font-size: 26px;
    }

    .home04cont01 .titbox .tfmp {
        padding: 60px 0;
    }

    .home04box .pointbox .pbox {
        width: 120px;
    }

    .home04box .pointbox .tbox {
        width: calc(100% - 125px);
    }

    .home04bnritem .tbox {
        width: 100%;
    }

    .home06 .tbox dt {
        width: 100%;
        margin-bottom: 5px;
    }

    .home06 .tbox dd {
        width: 100%;
    }
}

@media only screen and (max-width:599px) {
    .home02 .tfmp:before {
        height: 15%;
    }

    .home02ciritem {
        width: 70%;
        margin: auto;
    }

    .home02ciritem + * {
        margin-top: 30px;
    }

    .home03boxitem {
        margin: 40px 0;
    }

    .home03list {
        height: 300px;
    }

    .home04cont01 .titbox .tfmp {
        padding: 40px 0;
    }

    .home04box .pointbox .tbox {
        width: 100%;
    }

    .home04box .pointbox .tbox .txt {
        padding: 1em;
        background: none;
        border: 2px solid #dcdcdc;
        border-radius: 10px;
    }

    .home04bnritem {
        width: 100%;
    }

    .home05bnrbox .tbox {
        width: 250px;
        padding: 30px 0;
    }

    .home05bnrbox .tbox .tit {
        text-align: right;
    }

    .home05bnrbox .pic {
        width: 100%;
    }
}

/*under*/

/*news*/

.newsarea h2 .inb {
    padding-right: 40px;
    background: url(/import/tenant_1/160.16.223.20/html/images/balloon02.png) top right /30px no-repeat;
}

.newsarea {
    width: 64%;
}

.newscalist {
    width: 28%;
}

.nlist .nitem:first-of-type a {
    border-top: 1px solid #c9c9c9;
}

.nitem a {
    display: block;
    padding: 2em 1em;
    border-bottom: 1px solid #c9c9c9;
}

.nitem dt:before {
    font-family: "font awesome 5 free";
    font-weight: bold;
    content: "\f105";
    display: inline-block;
    margin-right: 0.5em;
    color: #4bc4a6;
    font-weight: 700;
}

.nitem dt {
    width: 7em;
}

.nitem dd {
    width: calc(100% - 8em);
}

.newspagenav ul {
    max-width: 300px;
    margin: 80px auto;
}

.newspagenav li {
    width: 14%;
    text-align: center;
    font-weight: 700;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.newspagenav li a {
    display: block;
}

.newspagenav li.now a {
    border-bottom: 1px solid #4bc4a6;
}

.newscalist dl {
    margin-bottom: 80px;
}

.newscalist dt {
    padding: 0.5em 1em;
    color: #fff;
    text-align: center;
}

.newscalist li a {
    display: block;
    padding: 2em;
    position: relative;
    border-bottom: 1px solid #c9c9c9;
}

.newscalist li a:before {
    position: absolute;
    top: 2em;
    content: "●";
    left: 0.5em;
}

.newsclist li a:before {
    color: #4bc4a6;
}

.newsalist li a:before {
    color: #f99129;
}

.newsclist dt {
    background: #4bc4a6;
}

.newsalist dt {
    background: #f99129;
}

.npostbox .titbox dt {
    margin-bottom: 1.5em;
}

.npostbox .titbox dt span:after {
    content: "";
    display: block;
    width: 15em;
    height: 4px;
    border-bottom: 4px solid #c9c9c9;
    margin: 0.5em auto 0.5em;
}

.npostbox .single {
    padding: 60px 0;
    border-bottom: 1px solid #c9c9c9;
}

@media only screen and (max-width:1024px) {
    .newsarea {
        width: 100%;
    }

    .newscalist {
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .newscalist dl {
        margin-bottom: 60px;
        width: 48%;
    }

    .nitem a {
        padding: 1.5em 1em;
    }

    .newscalist li a {
        padding: 1.5em;
    }

    .newscalist li a:before {
        font-size: 75%;
        left: 0.25em;
    }

    .npostbox .single {
        padding: 50px 0;
    }
}

@media only screen and (max-width:599px) {
    .newscalist dl {
        width: 100%;
    }

    .newscalist dl:last-of-type {
        margin-bottom: 0;
    }

    .nitem dt {
        width: 100%;
        margin-bottom: 1%;
    }

    .nitem dd {
        width: 100%;
    }

    .nitem a {
        padding: 1em 1em;
    }

    .npostbox .single {
        padding: 40px 0;
    }
}

/*faq*/

.faq01list .faq01item:last-of-type {
    margin-bottom: 0;
}

.faq01item {
    margin-bottom: 60px;
}

.faq01item .subtit {
    min-height: 50px;
    position: relative;
    padding-top: 8px;
    padding-left: 60px;
}

.faq01item .subtit:before {
    display: block;
    width: 50px;
    height: 50px;
    content: "Q";
    color: #fff;
    font-size: 24px;
    background: #f99129;
    line-height: 50px;
    text-align: center;
    position: absolute;
    left: 0;
    top: 0;
}

.faq01item .ans {
    padding: 1em;
    background: #edf9f6;
}

.faq01item .ans .t {
    min-height: 50px;
    position: relative;
    padding-top: 8px;
    padding-left: 60px;
}

.faq01item .ans .t:before {
    display: block;
    content: "A";
    width: 50px;
    height: 50px;
    color: #fff;
    font-size: 24px;
    background: #4bc4a6;
    line-height: 50px;
    text-align: center;
    position: absolute;
    left: 0;
    top: 0;
}

@media only screen and (max-width:1024px) {
    .faq01item .subtit {
        min-height: 45px;
    }

    .faq01item .subtit:before {
        width: 45px;
        height: 45px;
        line-height: 45px;
        font-size: 22px;
    }

    .faq01item .ans .t {
        min-height: 45px;
    }

    .faq01item .ans .t:before {
        width: 45px;
        height: 45px;
        line-height: 45px;
        font-size: 22px;
    }

    .faq01item {
        margin-bottom: 50px;
    }
}

@media only screen and (max-width:599px) {
    .faq01item .subtit {
        min-height: 40px;
        padding-left: 50px;
    }

    .faq01item .subtit:before {
        width: 40px;
        height: 40px;
        line-height: 40px;
        font-size: 20px;
    }

    .faq01item .ans .t {
        min-height: 40px;
        padding-top: 6px;
        padding-left: 50px;
    }

    .faq01item .ans .t:before {
        width: 40px;
        height: 40px;
        line-height: 40px;
        font-size: 20px;
    }

    .faq01item {
        margin-bottom: 40px;
    }
}

/*case*/

.comcase01item {
    margin-bottom: 80px;
}

.comcase01list .comcase01item:last-of-type {
    margin-bottom: 0;
}

.comcase01list .comcase01item:nth-of-type(odd) .comcase01itembox {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.comcase01itemlistitem .subtit {
    color: #f99129;
    font-size: 20px;
    font-weight: bold;
    margin: 0.5em 0;
    text-align: center;
}

.comcase01item .reservebox {
    margin-bottom: 0;
}

.comcase01item .reservebox .more05 {
    width: 300px;
}

.comcase01item .reservebox .tbox {
    width: calc(100% - 300px);
}

.comcase01item .reservebox .tbox {
    padding-left: 90px;
    background-position: top left;
    background-size: 80px 120px;
    background-repeat: no-repeat;
}

.comcase01item .reservebox .tboxinn {
    min-height: 120px;
    padding: 1em 2em 1em 4em;
    background: url(/import/tenant_1/160.16.223.20/html/images/balloon01.png) center center /100% 100% no-repeat;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.reservebox .tbox {
    background-image: url(/import/tenant_1/160.16.223.20/html/images/chicon01.png);
}

.reservebox .tbox .fc {
    color: #f99129;
}

.reservebox .more05 .btn {
    background: #f99129;
    color: #fff;
}

.comcase01listbox .reservebnrbox {
    margin-top: 160px;
}

.comcase01item .bb1box .fc {
    color: #f99129;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 10px;
}

.comcase01item .bb1box-red .fc {
    color: #DA3200;
}

.comcase01item .bb1box dl + dl {
    margin-top: 20px;
}

.comcase01itemtable table {
    width: 100%;
}

.comcase01itemtable table th {
    color: #8C4600;
    font-size: 14px;
    font-weight: bold;
    background: #F7F2ED;
    border: 1px solid #b0bec5;
    padding: 15px;
}

.comcase01itemtable table td {
    font-size: 14px;
    border: 1px solid #b0bec5;
    padding: 15px;
}

.comcase01itemtable table .price {
    font-size: 18px;
    text-align: right;
}

.comcase01itemtable table .big {
    font-size: 120%;
}

.comcase01itemtable table .mini {
    font-size: 80%;
}

.comcase01itemflow02 dl + dl {
    margin-top: 50px;
}

.comcase01itemflow01 > * + * {
    margin-top: 30px;
}

.comcase01itemflow01 .tit {
    color: #F19133;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 20px;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
}

.comcase01itemflow01 .tit .num {
    width: 40px;
    line-height: 40px;
    color: #fff;
    background: #F19133;
    border-radius: 100%;
    margin-right: 10px;
    text-align: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.comcase01itemflow02 dl {
    border: 1px solid #F19133;
    background: #FBF9F5;
    border-radius: 10px;
    position: relative;
}

.comcase01itemflow02 dt {
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    background: #F19133;
    border-radius: 10px 10px 0 0;
    padding: 10px;
    padding-left: 2em;
    position: relative;
}

.comcase01itemflow02 dt .num {
    display: block;
    position: absolute;
    top: 10px;
    left: 10px;
}

.comcase01itemflow02 dd {
    border-radius: 0 0 10px 10px;
    padding: 10px;
}

.comcase01itemflow02 dl + dl:before {
    display: block;
    content: "\f078";
    font-size: 20px;
    font-family: 'Font Awesome 5 Free';
    font-weight: bold;
    position: absolute;
    left: 50%;
    bottom: calc(100% + 10px);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

@media only screen and (max-width:1024px) {
    .comcase01item {
        margin-bottom: 60px;
    }

    .comcase01item .reservebox .tbox {
        width: 100%;
        margin-bottom: 1em;
    }

    .comcase01listbox .reservebnrbox {
        margin-top: 100px;
    }
}

@media only screen and (max-width:599px) {
    .comcase01item {
        margin-bottom: 40px;
    }

    .comcase01itemlistitem .subtit {
        font-size: 18px;
    }

    .comcase01itemlistitem [class*='heightLine'] {
        height: auto !important;
    }

    .comcase01item .reservebox .tboxinn {
        padding: 1em;
        background: none;
        border: 2px solid #dcdcdc;
        border-radius: 10px;
    }

    .comcase01item .reservebox .tbox {
        padding-left: 0;
        padding-top: 88px;
        background-size: 60px;
    }

    .comcase01listbox .reservebnrbox {
        margin-top: 40px;
    }

    .comcase01itemtable table {
        border-top: solid 1px #b0bec5;
    }

    .comcase01itemtable table th {
        display: block;
        border-top: none;
    }

    .comcase01itemtable table td {
        display: block;
        border-top: none;
    }
}



/*blog*/

.bitem a {
    display: block;
}

.bitem dd {
    margin: 0.5em 0;
}

.bitem .tit {
    margin: 1em 0;
}

.bitem .pbox {
    -webkit-box-shadow: 0.5em 0.5em #46aee0;
    box-shadow: 0.5em 0.5em #46aee0;
    margin-bottom: 0.5em;
    margin-right: 0.5em;
}

.bitem dl:not(.院長ブログ) .pbox {
    -webkit-box-shadow: 0.5em 0.5em #4bc4a6;
    box-shadow: 0.5em 0.5em #4bc4a6;
}

.bitem .date {
    z-index: 1;
    position: relative;
    margin-left: 0.5em;
    top: -4em;
    margin-bottom: -2em;
}

.bitem .date .label {
    display: inline-block;
    color: #fff;
    padding: 0.5em;
    background: #f99129;
}

.calist dt {
    text-align: center;
    color: #fff;
    background: #000;
    width: 100%;
    padding: 5px;
}

.calist li {
    padding: 10px 0;
}

.calist li:before {
    content: "\f0da";
    font-family: "font awesome 5 free";
    font-weight: bold;
    margin-right: 10px;
}

.calist ul {
    padding: 10px 30px;
}

.blogpagenav ul {
    max-width: 300px;
    margin: 40px auto 160px;
}

.blogpagenav li {
    width: 14%;
    text-align: center;
    font-weight: 700;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.blogpagenav li a {
    display: block;
    width: 2em;
    height: 2em;
    line-height: 2em;
    background: #bfbfbf;
}

.blogpagenav li.now > * {
    background: #f9912a;
    color: #fff;
}

.blogcalist dt {
    color: #fff;
    text-align: center;
    padding: 0.5em 2em;
    font-weight: 700;
    position: relative;
    cursor: pointer;
    -webkit-transition: 0.3s all ease;
    transition: 0.3s all ease;
    border: 1px solid transparent;
}

.blogcalist dt:after {
    position: absolute;
    right: 1em;
    content: "\f107";
    font-family: "font awesome 5 free";
    font-weight: bold;
    -webkit-transition: 0.3s all ease;
    transition: 0.3s all ease;
}

.blogcalist dt.is-parent:after {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

.blogcalist dt.open {
    margin-bottom: 1em;
}

[data-element-id] .blogcalist dd {
    display: block;
}

.blogcalist dd {
    display: none;
}

.blogclist dt {
    background: #f99129;
}

.blogalist dt {
    background: #4bc4a6;
}

.blogclist dt:hover {
    background: #fff;
    color: #f99129;
    border-color: inherit;
}

.blogalist dt:hover {
    background: #fff;
    color: #4bc4a6;
    border-color: inherit;
}

.blogcalist li a {
    padding: 1em 2em;
    display: block;
    border-bottom: 1px solid #c9c9c9;
    position: relative;
}

.blogcalist li a:before {
    position: absolute;
    top: calc(1em * 1.6);
    content: "●";
    left: 0.5em;
    font-size: 70%;
}

.blogalist li a:before {
    color: #4bc4a6;
}

.blogclist li a:before {
    color: #f9912a;
}

.blogsinglebox .tit {
    padding-bottom: 1em;
    border-bottom: 1px solid #dcdcdc;
}

.blogsinglebox .single {
    padding: 60px 0;
}

.blogrecoitem .tit .ruby {
    color: #aaa;
    display: inline-block;
    font-size: 16px;
    font-family: "游ゴシック", YuGothic, Hiragino Sans, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", Hiragino Kaku Gothic ProN, "メイリオ", Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
}

.blogsinglebox .back02 {
    margin-bottom: 40px;
}

@media only screen and (max-width:1024px) {
    .blogpagenav ul {
        margin: 40px auto 120px;
    }

    .bitem .date {
        position: static;
        margin: 1em 0 1em 0.5em;
    }

    .bitem .date .label {
        padding: 0.25em;
    }

    .blogsinglebox .single {
        padding: 50px 0;
    }
}

@media only screen and (max-width:599px) {
    .blogpagenav ul {
        margin: 40px auto 80px;
    }

    .blogcalist dd {
        margin-bottom: 60px;
    }

    .blogcalist dl:last-of-type dd {
        margin-bottom: 0;
    }

    .blogsinglebox .single {
        padding: 40px 0;
    }
}

/*form*/

.form dl {
    padding: 20px 0;
    border-bottom: 1px solid #fff;
}

.form dl:last-of-type {
    border-bottom: none;
}

.form dt {
    width: 36%;
    font-weight: 600;
}

.form dt .reqw {
    font-size: 14px;
    text-align: center;
    padding: 0 10px;
    background: #d5262b;
    color: #fff;
    margin-left: 10px;
    border-radius: 5px;
}

.form dd {
    width: 60%;
}

.form dd input {
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 5px;
}

.form dd select {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 5px;
}

.form dd input[type="radio"] {
    display: none;
}

.form dd input[type="radio"] + label {
    padding-left: 20px;
    position: relative;
    margin-right: 20px;
    line-height: 200%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.form dd input[type="radio"] + label::before {
    content: "";
    display: block;
    position: absolute;
    top: 4px;
    left: 0;
    width: 10px;
    height: 10px;
    border: 1px solid #303841;
    border-radius: 50%;
    background: #fff;
}

.form dd input[type="radio"]:checked + label::after {
    content: "";
    display: block;
    position: absolute;
    top: 6px;
    left: 2px;
    width: 8px;
    height: 8px;
    background: #303841;
    border-radius: 50%;
}

.form dd input[type="radio"]:checked + label {
    border-bottom: 1px solid;
    -webkit-transition: 0.6s;
    transition: 0.6s;
}

.form dd textarea {
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 5px;
    font-size: 16px;
    font-family: "游ゴシック",
        YuGothic,
        Hiragino Sans,
        "ヒラギノ角ゴ ProN W3",
        "Hiragino Kaku Gothic Pro",
        Hiragino Kaku Gothic ProN,
        "メイリオ",
        Meiryo,
        'ＭＳ Ｐゴシック',
        sans-serif;
    height: 300px;
}

.formbtn li button {
    text-align: center;
    color: #fff;
    display: block;
    background: #d5262b;
    padding: 20px 40px;
    position: relative;
    z-index: 1;
    opacity: 1;
    overflow: hidden;
    border: none;
    width: 100%;
    margin: 80px auto;
    -webkit-transition: 0.3s all ease;
    transition: 0.3s all ease;
}

.formbtn li button:after {
    position: absolute;
    font-family: "font awesome 5 free";
    font-weight: bold;
    content: "\f105";
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 20px;
}

.formbtn2 li:nth-of-type(odd) button:after {
    right: auto;
    left: 20px;
    content: "\f104";
}

.formbtn li button:hover {
    opacity: 0.6;
    cursor: pointer;
}

.formbtn li {
    width: 100%;
    max-width: 320px;
    margin: auto;
}

.formbtn2 li {
    max-width: 250px;
}

@media only screen and (max-width:1024px) {
    .form dt {
        width: 100%;
        padding-bottom: 1em;
    }

    .form dd {
        width: 100%;
    }

    .form dl {
        padding: 15px 0;
    }

    .formbtn li button {
        margin: 60px auto;
        padding: 15px 40px;
    }

    .formbtn2 li {
        max-width: 200px;
    }

}

@media only screen and (max-width:599px) {
    .formbtn li button {
        margin: 40px auto;
        padding: 10px 40px;
        max-width: 250px;
    }

    .formbtn2 li {
        max-width: 130px;
    }
}


/* 2023/02/20追記 */
.headtopL {
    display: flex;
    align-items: center;
}

.headtopL .hlogo {
    max-width: 250px;
    margin-right: 20px;
}

.htel .tel a {
    display: block;
    background: #4bc4a6;
    color: #fff;
    padding: 10px 20px;
    position: relative;
    font-size: 20px;
    border-radius: 10px;
    text-align: center;
}

.htel .tel a:before {
    content: "\f879";
    font-family: "font awesome 5 Free";
    font-weight: bold;
    margin-right: 5px;
}

@media (max-width:1024px) {
  .headtopL {
      display: block;
  }
  
  .headtopL .hlogo {
      margin-right: 0;
      margin-bottom: 10px;
  }
  .htel .tel a {
    padding: 5px 10px;
  }
}

@media (max-width:599px) {
  .headtopL {
      display: block;
  }
  
  .headtopL .hlogo {
      margin-right: 0;
      margin-bottom: 10px;
  }
  
  .headtopL .htel {
      text-align: center;
      max-width: 200px;
      margin: auto;
  }
  .htel .tel a {
      font-size: 15px;
  }
}

/* 2023/09/25 */
.ffix2 {
    position: fixed;
    right: 0;
    top: 50%;
    z-index: 99;
    max-width: 60px;
    transform: translateY(-50%);
}

.ffix2 li a {
    display: block;
    padding: 2em 1em;
    border-radius: 15px 0 0 15px;
    line-height: 120%;
    font-size: 18px;
    background: #ffde80;
    color: #874421;
}

.ffix2 .-pc {
    display: block;
}

.ffix2 .-sp {
    display: none;
}



[data-element-id].ffix2 {
    position: static;
    transform: unset;
    max-width: none;
    display: flex;
    align-items: center;
}

[data-element-id].ffix2list {
    border: 2px solid;
    position: relative;
}

.ffix2 .-sp li a {
    border-radius: 15px;
}

.ffix2 .-sp li a .tell {
    display: none;
}

[data-element-id].ffix2 .-sp li a .tell {
    display: block;
    position: relative;
    border: 1px solid green;
}

[data-element-id].ffix2 .-sp li a .tell:before {
    content: "変更すると、リンク先も同時に変更されます";
    display: block;
    background: green;
    color: #fff;
    font-size: 10px;
}

[data-element-id].ffix2list.-pc:before {
    content: "PC用";
    display: block;
    background: green;
    color: #fff;
    font-size: 12px;
}

[data-element-id].ffix2 .-sp {
    display: block;
}

[data-element-id].ffix2list.-sp:before {
    content: "SP用";
    display: block;
    background: green;
    color: #fff;
    font-size: 12px;
}

@media (max-width:1024px) {
  .ffix2 .-pc {
    display: none;
  }
  
  .ffix2 .-sp {
    display: block;
  }
    
  .ffix2 {
      max-width: inherit;
      width: 50%;
      padding: 10px 5px;
      bottom: 60px;
      left: 0;
      transform: unset;
      top: unset;
      margin: auto;
  }
  
  .ffix2 li a {
      border-radius: 10px;
      padding: 15px;
      text-align: center;
  }

}

@media (max-width:599px) {
  .ffix2 li a {
    font-size: 14px;
  }
  .ffix2 {
    bottom: 70px;
  }
}

.pc-br {
    display: block;
}

.pc-br.tb {
    display: block;
}

@media (max-width: 1024px) {
    .tb-br {
        display: block;
    }

    .pc-br.tb {
        display: inline;
    }
}

@media (max-width: 599px) {
    .pc-br {
        display: inline;
    }

    .sp-br {
        display: block;
    }
    
 .ffix2 li a {
        padding: 8px;
        }
}

.banar-p{
  margin-bottom: 20px;
}

/* 2025/12/13 */

.home04bnrbox .c-orange a{
  color: #ff9900;
  border-bottom: 1px solid #ff9900;
}
