@charset "utf-8";

.font-serif {
    font-family: 'Noto Serif JP', 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, MS明朝, serif;
}

.font-gothic {
    font-family: 'Noto Sans JP', "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Verdana, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.wp-block-separator {
    border-color: #DBCCBC;
}

.mtscc_mtscc_entry .page-content h3 span {
    font-size: 18px;
}

.mtscc_mtscc_entry .page-content .wp-block-column h3 {
    margin-bottom: 15px;
    padding-bottom: 0;
    border-bottom: none;
    text-align: left;
}

.mtscc_mtscc_entry .page-content .wp-block-column h3.has-border {
    padding-left: 20px;
    border-left: 8px solid #71675D;
}

.mtscc_mtscc_entry .page-content h3.not-border {
    padding-bottom: 0;
    border-bottom: none;
    text-align: left;
}

.mtscc_mtscc_entry .page-content h3.sub-title {
    padding-bottom: 0;
    padding-left: 28px;
    border-bottom: none;
    border-left: 8px solid #71675D;
    text-align: left;
}

.mtscc_mtscc_entry .page-content h4 {
    font-size: 18px;
    font-weight: bold;
    border-left: 6px solid #71675D;
    padding-left: 20px;
    margin-top: 60px;
    margin-bottom: 20px;
}

.mtscc_mtscc_entry .page-content h4.not-border {
    border-left: none;
    padding-left: 0;
}

.mtscc_mtscc_entry .page-content h4.not-border+p {
    margin-top: 20px;
}

/* 浴衣レンタルの各ページでは「オプション詳細へ」ボタンを非表示 */
.postid-5887 .page-content .view-more-btn,
.postid-5891 .page-content .view-more-btn,
.postid-5893 .page-content .view-more-btn,
.postid-5901 .page-content .view-more-btn {
    display: none;
}

.page-content h2.bg-color-none {
    background-color: unset;
    padding-top: 0;
    padding-bottom: 0;
}

.page-content h2+h3 {
    margin-top: 50px;
}

.page-content>ul.sm-margin {
    margin: 20px 0;
}

.page-content p.sm-margin {
    margin: 20px 0;
}

.wp-block-separator+.page-content p.sm-margin {
    margin: 40px 0 20px;
}

.page-content p a {
    color: #8D4C42;
    text-decoration: underline;
}

.page-content figure.dashed-separator img {
    vertical-align: middle;
}

.page-content .ac-box .ac-text p:not(:last-child) {
    margin-bottom: 15px;
}

.page-content .common-link-box a span {
    font-family: 'Noto Serif JP', 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, MS明朝, serif;
}

.page-content .wp-block-quote {
    position: relative;
    padding-right: 25px;
    padding-left: 25px;
    margin-bottom: 30px;
    font-family: 'Noto Serif JP', 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, MS明朝, serif;
    font-size: 16px;
}

.page-content .wp-block-quote::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 18px;
    height: 14px;
    background: url('img/common/icon-double-quotation01.png') no-repeat center / contain;
    content: '';
}

.page-content .wp-block-quote::after {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 18px;
    height: 14px;
    background: url('img/common/icon-double-quotation02.png') no-repeat center / contain;
    content: '';
}

.page-content .wp-block-image .wp-element-caption {
    font-family: 'Noto Serif JP', 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, MS明朝, serif;
    font-size: 16px;
    text-align: center;
}

.page-content .wp-block-image .wp-element-caption a {
    color: #8D4C42;
    text-decoration: underline;
}

.page-content .transaction-law-item {
    display: flex;
}

.page-content .transaction-law-item:not(:last-child) {
    margin-bottom: 30px;
}

.page-content .company-item:not(:last-child) {
    margin-bottom: 20px;
}

.page-content .shop-item:not(:last-child) {
    margin-bottom: 20px;
}

.page-content .transaction-law-item dt {
    margin-right: 1em;
}

.page-content .company-map {
    position: relative;
    height: 430px;
}

.page-content .company-map iframe {
    position: relative;
    width: 100%;
    height: 100%;
}

.page-content .recruit-item:not(:last-of-type) {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #DBCCBC;
}

.page-content .recruit-item dt {
    font-family: 'Noto Serif JP', 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, MS明朝, serif;
    font-size: 18px;
    margin-bottom: 10px;
}

.page-content .recruit-item dd ul li {
    position: relative;
    padding-left: 1em;
}

.page-content .recruit-item dd ul li::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 1em;
    height: 1em;
    margin: 0;
    background-color: unset;
    content: '・';
}

.page-content>.wp-block-table.sm {
    width: 80%;
    margin: 0 auto;
}

.is-layout-flex .wp-block-buttons>.wp-block-button {
    width: 100%;
}

.is-layout-flex .wp-block-buttons>.wp-block-button a.wp-block-button__link {
    max-width: 100%;
}

.external-link-btn a.wp-block-button__link span {
    position: relative;
    padding-right: 25px;
}

.external-link-btn a.wp-block-button__link span::after {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    width: 15px;
    height: 15px;
    background: url('img/common/icon-open-external-link.svg') no-repeat center / contain;
    content: '';
}

.to-reserve-btn a.wp-block-button__link {
    background-color: #DE7B7B;
}

@media (hover: hover) and (pointer: fine) {

    .page-content a[href^="tel:"] {
        pointer-events: none;
    }

}

.mv-logo2 {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    width: 100%;
}

.mv-logo2 p {
    font-size: 36px;
    color: #fff;
    text-shadow: 2px 2px 2px #00000080;
    font-weight: bold;
}

.mv-logo2 .view-more-btn a {
    width: 300px;
    background: #5d201680;
    max-width: 100vw;
}

@media screen and (max-width: 767px) {
    .mv-logo2 p {
        font-size: 30px;
        padding: 10px 0;
        margin: auto;
    }

    .mv-logo2 .view-more-btn a {
        width: 250px;
    }
}

.home-sec13 .box .ttl-text {
    margin: 60px 0 40px;
}

@media screen and (max-width: 767px) {
    .home-sec13 .box h3.ttl-text {
        margin: 30px 0 20px;
    }

}

.width287 {
    width: 287px;
}

.container {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: space-between;
}

.common-link-box2 {
    width: 46%;
}

.common-link-box2 a span {
    position: absolute;
    transform: translateY(-45%);
    top: 59%;
    left: -20%;
    width: 100%;
    text-align: center;
    line-height: 1.5;
    font-size: 28px;
    color: #fff;
    white-space: nowrap;

    font-family: 'Noto Serif JP', 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, MS明朝, serif
}

.page-plan-tel a {
    display: block;
    border: 1px solid #C99693;
    padding: 20px 0;
    width: 100%;
    max-width: 420px;
    text-align: center;
    margin: 0 auto;
    font-size: 12px;
    letter-spacing: 0.04em;
}

.tel-button .fonttyousei {
    font-size: 20px;
    font-weight: bold;
}

.common-link-box2 a.js-reserve-modal-open {
    cursor: pointer;
}

@media(max-width:767px) {
    .sp-100 {
        width: 100%;
        height: auto;
    }
}

.mb30 {
    margin-bottom: 30px;
}

.pc-font {
    font-weight: bold;
}

.fontbold {
    font-weight: bold;
}

.colorpink {
    color: #DE7B7B;
}

.about-reserve-area {
    display: flex;
    flex-direction: row;
    width: 100%;
}

.about-reserve-area .number {
    width: 10%
}

.about-reserve-area .text {
    width: 90%
}

.about-reserve-area-kamakura {
    display: flex;
    flex-direction: row;
    width: 100%;
}

.about-reserve-area-kamakura .number {
    width: 17%
}

.about-reserve-area-kamakura .text {
    width: 83%
}

.mt5 {
    margin-top: 5px !important;
}

.mb5 {
    margin-bottom: 5px !important;
}

.mb0 {
    margin-bottom: 0px !important;
}

.mb10 {
    margin-bottom: 10px !important;
}

.mb30 {
    margin-bottom: 30px !important;
}

.transform5 img {
    transform: rotate(5deg);
}

.transform-no {
    transform: initial;
}

.ichi {
    vertical-align: super;
}

.mtscc_mtscc_entry .page-content h3 {
    text-align: left;
}

.fag-caution {
    color: #71675D;
    padding-top: 30px;
}

@media screen and (max-width: 767px) {
    .fag-caution {
        font: 14px;
    }
}

.fag-caution p {
    text-indent: 1em;
}

.faq-title {
    font-size: 18px;
    font-weight: bold;
}

@media screen and (max-width: 767px) {
    .faq-title {
        font: 14px;
    }
}

.plan-page-content-sec .gradient-btn {
    margin-top: 100px;
}

.plan-page-content-sec .gradient-btn a {
    font-family: 'Noto Serif JP', 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, MS明朝, serif;
    padding: 20px;
    max-width: 600px;
    font-size: 20px;
    margin: auto;

}

/* サイトチェック修正 */
/* ご予約ページの戻るボタン非表示 */
.page-id-5822 .reverse-arrow.view-more-btn,
.page-id-3583 .reverse-arrow.view-more-btn {
    display: none;
}

/* ご予約ページのカレンダースクロールしないように */
@media screen and (max-width: 767px) {
    .page-inner .page-content table td {
        padding: 3%;
    }
}

/* プラント料金一覧の成人式振袖レンタルプランで価格が改行にならないように */
@media screen and (max-width: 375px) {
    .plan-intro-box .box .price-meta .price {
        letter-spacing: -1px;
    }
}

/* 戻るボタンの矢印を左右反転(class付与) */
.reverse-arrow a::after {
    left: 30px;
    transform: translateY(-50%) scale(-1, 1);
}


/* 成人式振袖レンタルプランのご予約はこちらボタンを中央揃えに */
a.wp-block-button__link.btn_center {
    display: flex;
    align-items: center;
    justify-content: center;
}


/* プラン・料金の浅草と鎌倉並びをスマホのとき中央揃えに */
@media screen and (max-width: 1200px) {
    .flex.jcsb {
        justify-content: center;
    }
}

/* 目次の数字を削除 */
.ez-toc-counter nav ul li a::before {
    display: none;
}

/* 鎌倉トップ、お悩みセクション横並び */
.home-sec13 .box-flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.home-sec13 .box-flex .img {
    width: 55%;
}

.home-sec13 .box-flex .text-box {
    width: 42%;
}

/* スマホ時 鎌倉トップ、お悩みセクション縦並び */

@media screen and (max-width: 991px) {
    .home-sec13 .box-flex {
        display: block;
    }

    .home-sec13 .box-flex .img,
    .home-sec13 .box-flex .text-box {
        width: 100%;
    }
}


/* 鎌倉トップ、着物種類豊富画像レイアウト用オーバーフロー */
.over-flow_img {
    height: 300px;
    overflow: hidden;
}


.over-flow_img img {
    height: auto;
}

/* スマホ時、ショップタイトルサイズ変更 */
@media screen and (max-width: 991px) {
    .shop-mv-title .shop-mv-title-text {
        font-size: 25px;
    }
}

/* 浅草グループプラン、カップルプラン　オプションボタン表示 */
.postid-5893 .page-content .view-more-btn,
.postid-5891 .page-content .view-more-btn {
    display: block;
}


/* 浅草当日の予約　トリミング */
.trimming_img img {
    width: 1000px;
    height: 400px;
    object-fit: cover;
}

/* 浅草振り袖・袴プラン　価格サイズ変更 */
.mtscc_mtscc_entry .page-content h3 {
    font-size: 20px;
}

/* トップページに令和服のバナー */
.mt-2 {
    margin-top: 2em;
}

.mt-2 .common-link-box a span {
    font-size: 22px;
}

@media screen and (max-width: 991px) {
    .mt-2 .common-link-box {
        max-width: 510px;
        margin: auto;
    }

    .mt-2 .common-link-box a span {
        font-size: 20px;
    }
}

/* 画像　比率合わせ */

.aspect-img img {
    object-fit: cover;
    background: transparent;
    width: 100%;
    object-position: center top;
    aspect-ratio: 4 / 3;
}

.aspect-img_center img {
    object-position: center center;
}

.aspect-img_bottom img {
    object-position: center bottom;
}

.aspect-img.aspect-img_yoko img {
    object-fit: cover;
    background: transparent;
    width: 100%;
    object-position: center center;
    aspect-ratio: 3/1;
}

/* プラン　写真個別対応 */
.postid-5865 .page-content .cont:nth-child(2) img,.postid-7159 .page-content .cont:nth-child(2) img,.postid-5867 .page-content .cont:nth-child(2) img,.postid-7132 .page-content .cont:nth-child(2) img {
    background: transparent;
    aspect-ratio: auto;
}

.postid-5875 .aspect-img img,
.postid-7300 .aspect-img img {
    aspect-ratio: auto;
}

.term-76 .plan-intro-box:last-child.aspect-img img,
.term-78 .plan-intro-box:last-child.aspect-img img {
    aspect-ratio: auto;
}

/* 料金はこちら タブレット修正 */
@media screen and (max-width: 991px) {
    .recommend-plan-sec .wrap .plan-link-box .box-flex {
        display: flex;
        align-items: center;
    }

    .recommend-plan-sec .wrap .plan-link-box .box-flex .text.top {
        font-size: 20px;
    }
}

/* プラン詳細　h3の下余白削除 */
.single-plan.mtscc_mtscc_entry .page-content h3 {
    margin-bottom: 0;
}


/* プランそれぞれの注意事項を一覧と詳細に表示 */
.attention {
    text-align: left;
    line-height: 1.25;
    margin: 10px 0;
}

.attention .red {
    font-size: 12px;
    color: #A43737;
    margin-bottom: 10px;
}

.page-content p.attention{
    line-height: 1.5;
	text-align: left;
}

.plan-intro-box .box .price-meta {
    margin-bottom: 0;
}

/* SP　おすすめプランの下の注意文表示 */
@media screen and (max-width: 991px) {
.recommend-plan-sec .box .att{
    transform: unset;

}

/* トップページ当日予約についての縦横比修正 */
.home-sec13 .trimming_img img {
    height: auto;
    object-fit: cover;
    aspect-ratio: 16 / 9;
}

}

.mtscc_confirm_form input {
    margin-bottom: 10px;
    width: 100%;
    box-sizing: border-box;
    line-height: 40px;
    height: 40px;
    border: 1px solid #d4d4d7;
    background: #fcfcfc;
    border-radius: 5px;
}

.mtscc_confirm_form input[type="submit"] ,[type="submit"] {
    align-self: center;
    background: #8E1B20;
    padding: 3px 10px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    line-height: 1.5;
    font-size: 100%;
    color: #fff;
    width: 200px;
    text-align: center;
    margin: 30px 0;
}

/* pagetopページトップ　ボタン */
.pagetop {
    height: 50px;
    width: 50px;
    position: fixed;
    right: 30px;
    bottom: 30px;
    background: #AA9A89;
    border-radius: 50%;
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 2;
    cursor: pointer;
  }
  .pagetop__arrow {
    display: block;
    height: 10px;
    width: 10px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    transform: translateY(20%) rotate(-45deg);
  }


@media screen and (max-width: 991px) {
    .pagetop{
        right: 20px;
    bottom: 100px;
  }
}

/* footerのsnsアイコン */
#footer .footer-sns {
    text-align: center;
    margin-bottom: 20px;
}

/* もっと見るボタン */
.shop-sec02 .flex .item .text-box .more-toggle span, .home-sec03 .point-slider-item .text-box .more-toggle span, .archive .plan-archive-content .plan-intro-box .more-toggle span {
    border-bottom: 1px solid #78634E;
    color: #78634E;
}


/* キャンセル受付終了 */
.subscription-cancel:not(:has(input.subscription.button)) {
    background: #fff;
    color: #ff0000;
}

@media screen and (max-width: 767px) {
.subscription-cancel {
    float: none;
}
}

/* 浴衣プランの追記 */

.home-sec06 .box-01 {
    width: 48%;
}
@media screen and (max-width: 767px) {
    .home-sec06 .box-01 {
        width: 100%;
        margin-bottom: 20px;
    }
}

.home-sec06 h3.text {
    margin-bottom: 20px;
    text-align: center;
    width: 100%;
}

.rental-plan-sec .rental-list.kimono .flex{
    flex-direction: row-reverse;
}
.rental-plan-sec .rental-list.kimono .label-text span{
    background-color: #AF8381;
}
.rental-plan-sec .rental-list.kimono .label-text::before{
    border-top-color: #C99693;
}
.rental-plan-sec .rental-list.kimono .flex .text-box .text.top{
    color: #8D4C42;
}
.rental-plan-sec .rental-list.kimono .flex .text-box .text.top::before{
    background-image: url(img/frontpage/icon-flower-ladies.svg);
}
.rental-plan-sec .rental-list.kimono .flex .text-box .text:not(.top){
    border-bottom-color: #F6DBCA;
    background-color: rgba(249,233,221,.7);
}

.rental-plan-sec .rental-list.yukata .label-text span{
    background-color: #6E8D9B;
}
.rental-plan-sec .rental-list.yukata .label-text::before{
    border-top-color: #6E8D9B;
}
.rental-plan-sec .rental-list.yukata .flex .text-box .text.top{
    color: #606A71;
}
.rental-plan-sec .rental-list.yukata .flex .text-box .text.top::before{
    background-image: url(img/frontpage/icon-flower-mens.svg);
}
.rental-plan-sec .rental-list.yukata .flex .text-box .text:not(.top){
    border-bottom-color: #E5DEDC;
    background-color: rgba(235,233,231,.7);
}

.mt-0 {
    margin-top: 0;
}

.home-sec04 .flex h3.ttl-text {
    color: #78634E;
}


@media screen and (max-width: 767px) {
.home-sec04 .flex .ttl-text{
    margin: 0 0 30px;
}

}

.recommend-plan-sec .box .img img {
    /* aspect-ratio: 4 / 3; */
    aspect-ratio: 4 / 4;
}

/* 横スクロール */

.block-columns {
    display: flex;
    flex-wrap: wrap;
    gap: 0.3em;
    flex-wrap: wrap!important;
}

.block-columns .block-column {
    max-width: 31%;
}

.block-columns.block-scroll-x {
    overflow-x: scroll;
}

.block-image.aspect-img img {
    aspect-ratio: 1 / 1;
}

.block-columns.block-scroll-x {
    padding-bottom: 20px;
    flex-wrap: nowrap!important;
    }
.block-columns.block-scroll-x:not(.is-not-stacked-on-mobile)>.block-column {
    flex-shrink: 0;
    display: inline-block;
    white-space: normal;
}
.block-columns.block-scroll-x:not(.is-not-stacked-on-mobile)>.img2 {
    flex-shrink: 0;
    display: inline-block;
    white-space: normal;
}
.block-columns.block-scroll-x::-webkit-scrollbar {
    width: 16px;
    height: 20px;
    }
.block-columns.block-scroll-x::-webkit-scrollbar-track {
    background-color: #F3F0E8;
    border-radius: 100px;
    }
.block-columns.block-scroll-x::-webkit-scrollbar-thumb {
    background:#E6C0BD;
    border-radius: 100px;
    width: 130px;
    }
@media (max-width: 781px){
    .block-columns.block-scroll-x:not(.is-not-stacked-on-mobile)>.block-column {
        max-width: 95%;
    }
    .block-columns.block-scroll-x:not(.is-not-stacked-on-mobile)>.img2 {
        max-width: 95%;
    }
}

.tenpo-accordion-intext{
    font-size: 14px;
    line-height: 1.6;
    margin-top: 10px;
    color: #71675D;
    font-family: 'Noto Sans JP', "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Verdana, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    text-align:left;
}
.pa-30{
    padding: 30px;
}
.mt-40{
    margin-top:40px;
    text-align: center;
}
 .tenpo-accordion-text{
    border-bottom: 1px solid #78634E;
    color: #78634E;
    isplay: inline-block;
    padding-right: 20px;
    position: relative;
    font-size: 14px;
    padding-bottom: 2px;
    cursor: pointer;
    }
 .tenpo-accordion-text::before{
    content: "";
    width: 12px;
    height: 1px;
    background-color: #333;
    display: inline-block;
    margin-left: 10px;
    transition: .3s;
    position: absolute;
    transform: translateY(-50%);
    top: 45%;
    right: 0;
}
.tenpo-accordion-text::after{
    transform: translateY(-50%) rotate(-90deg);
    content: "";
    width: 12px;
    height: 1px;
    background-color: #333;
    display: inline-block;
    margin-left: 10px;
    transition: .3s;
    position: absolute;
    top: 45%;
    right: 0;
}


.flex-tenpo-box .slick-dots{
    position: fixed;
}

.home-sec03 .flex-tenpo-box .point-slider-item .text-box{
    padding:  20px 0 0 0!important;
}

.home-sec04 .text-box {
padding: 20px 0 0 50px;
}
.home-sec04 .text-box .text.over{
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    color: #71675D;
    font-size: 14px;
}



.home-sec04 .text-box .more-toggle{
    text-align: center;
    margin-top: 15px;
}
.home-sec04 .text-box .text {
    color: #71675D;
    font-size: 14px;
}

.home-sec04 .text-box .more-toggle span {
    border-bottom: 1px solid #78634E;
    color: #78634E;
}

.home-sec04 .text-box .more-toggle span {
    display: inline-block;
    padding-right: 20px;
    position: relative;
    font-size: 14px;

    padding-bottom: 2px;
    cursor: pointer;
}


.home-sec04 .text-box .more-toggle span::before {
    content: "";
    width: 12px;
    height: 1px;
    background-color: #333;
    display: inline-block;
    margin-left: 10px;
    transition: .3s;
    position: absolute;
    transform: translateY(-50%);
    top: 45%;
    right: 0;
}


.home-sec04 .text-box .more-toggle span::after {
   /* transform: translateY(-50%) rotate(0deg);*/
    content: "";
    width: 12px;
    height: 1px;
    background-color: #333;
    display: inline-block;
    margin-left: 10px;
    transition: .3s;
    position: absolute;
    transform: translateY(-50%);
    top: 45%;
    right: 0;
}

.flex-tenpo-box .flex-in .text {
width: 55%;
color: #71675D;
}

@media (max-width: 781px){
    .flex-tenpo-box {
        width: 100%;
    }
}

.flex-tenpo-box .text-box .text.hide {
    display: none;
}

.flex-tenpo-box .text-box .text {
    display:block;
    padding: 0 20px 20px;
}

.flex-tenpo-box .text-box {
    padding: 0;
}

.flex-tenpo-box .text-box {
    margin: 0;
    padding-bottom: 20px;
}

.flex-tenpo-box .text-box .more-toggle {
    margin: 0;
}


.home-sec08 .text-box .text {
    color: #fff;
}

.home-sec08 .img {
    text-align: center;
}

.home-sec08 .view-more-btn {
    text-align: center;
    margin-top: 60px;
}

.home-sec08 .img img {
    max-width: 400px;
}


@media (max-width: 781px){
    .home-sec08 .img img {
        width: 100%;
    }
    .home-sec08 .view-more-btn {
        margin-top: 30px;
    }

}


.sec03 .more {
    padding: 0px 20px 20px;
}

.sec03 .more .more-toggle span {
    border-bottom: 1px solid #78634E;
    color: #78634E;
}

.sec03 .more .more-toggle span::before{
    content: "";
    width: 12px;
    height: 1px;
    background-color: #333;
    display: inline-block;
    margin-left: 10px;
    transition: .3s;
    position: absolute;
    transform: translateY(-50%);
    top: 45%;
    right: 0;
}

.sec03 .more  .more-toggle span::after{
    transform: translateY(-50%) rotate(-90deg)!important;
}

.sec03 .more .more-toggle span.active::after{
    transform: translateY(-50%) rotate(0deg)!important;
}

.sec03 .more .more-toggle span::after{

    content: "";
    width: 12px;
    height: 1px;
    background-color: #333;
    display: inline-block;
    margin-left: 10px;
    transition: .3s;
    position: absolute;
    transform: translateY(-50%);
    top: 45%;
    right: 0;
}

.sec03  .more .more-toggle span{
    display: inline-block;
    padding-right: 20px;
    position: relative;
    font-size: 14px;
    border-bottom: 1px solid #333;
    padding-bottom: 2px;
    cursor: pointer;
}

.sec03  .more .more-toggle{
    text-align: center;
    margin-top: 5px;
}
.sec03 .more .text:not(.top).hide {
    overflow: hidden;
    display: -webkit-box!important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
}
.sec03  .more .text:not(.top) {
    font-size: 14px;
    line-height: 1.6;
    margin-top: 10px;
}

.sec03 .cont .box .text-box .price-meta .price-text2{
    font-size: 15px;
    margin: 0 4px;
    font-weight: bold;
    color: #A43737;
}

.sec03 .cont .box .text-box .price-meta .price-text2 small{
    font-size: 12px;
    margin: 0 4px;
    font-weight: bold;
    color: #A43737;
}

.reserve-modal.lang-modal .ttl-text{
    margin: 30px 0 30px;
    position:relative;
    padding-left:25px;
}


.lang-modal .ttl-text::before {
    content: '';
    width: 20px;
    height: 20px;
    display: inline-block;
    background-size: contain;
    background-repeat:no-repeat;
    position:absolute;
    top: 18px;
    transform: translateX(-30px);
}

@media (max-width: 781px){
    .lang-modal .ttl-text::before {
        top: 10px;
        transform: translateX(-30px);
    }
}

.lang-modal .ttl-text.icon-en::before {
    background-image:url('img/common/icon-en.svg');
}

.lang-modal .ttl-text.icon-zh-hans::before {
    background-image:url('img/common/icon-zh-hant.svg');
}

.lang-modal .ttl-text.icon-zh-hant::before {
    background-image:url('img/common/icon-zh-hans.svg');
}

.lang-modal .ttl-text.icon-ko::before {
    background-image:url('img/common/icon-ko.svg');
}
.lang-modal .ttl-text.icon-ja::before {
    background-image:url('img/common/icon-ja.svg');
}

.shop-sec04 .box dl dd .view-more-btn {
    margin-bottom: 30px;
    font-family: 'Noto Serif JP', 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,MS明朝,serif;
}


.price-text3{
    font-size: 28px;
    text-align: center;
    color: #A43737;
    font-family: 'Noto Serif JP', 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,MS明朝,serif;
    font-weight: bold;
}





.flex-yoyaku{
    display: flex;
    flex-flow:row;
	flex-wrap: wrap;
	row-gap: 50px;
}


.jcsb-yoyaku {
    justify-content: space-between;
}

.common-link-box-yoyaku a {
    display: block;
    position: relative;
    max-width: 510px;
    margin: 0 auto;
}

.common-link-box-yoyaku2 a {
    display: block;
    position: relative;
    max-width: 510px;
    /*margin: 0 auto*/
}

.common-link-box-yoyaku a span {
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
    left: 0;
    width: 100%;
    text-align: center;
    line-height: 1.5;
    font-size: 28px;
    color: #fff;
    white-space: nowrap;
}
.common-link-box-yoyaku2 a span {
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
    left: 0;
    width: 100%;
    text-align: center;
    line-height: 1.5;
    font-size: 28px;
    color: #fff;
    white-space: nowrap;
}
.pc-mb-45{
    margin-bottom: 45px!important;
}
@media screen and (max-width: 991px){
    .common-link-box-yoyaku{
        width: 49%;
    }
    .common-link-box-yoyaku a,
    .common-link-box-yoyaku2 a {
        max-width: 100%;
    }
}

@media screen and (max-width: 767px){
    .common-link-box-yoyaku a span {
        font-size: 15px;
    }
    .common-link-box-yoyaku2 a span {
        font-size: 15px;
    }
.sp-mt-30{
    margin-top: 30px!important;
}
.pc-mb-45{
    margin-bottom: 30px!important;
}
    }

.underline-link {
    color: #8D4C42;
    text-decoration: underline;
}

#slider_resize_for_hairset{
    max-width: 700px;
    margin: 0 auto;
}

#slider_resize_for_hairset .block-image.aspect-img img {
    aspect-ratio: 0.44 / 1;
}
#slider_resize_for_hairset .block-columns.block-scroll-x:not(.is-not-stacked-on-mobile)>.block-column {
    margin-left: 10px;
    margin-right: 0px;
}

@media (max-width: 781px){
    #slider_resize_for_hairset .block-columns.block-scroll-x:not(.is-not-stacked-on-mobile)>.block-column {
        max-width: 70%;
        margin-right: 5px;
    }
    #slider_resize_for_hairset .block-columns.block-scroll-x:not(.is-not-stacked-on-mobile)>.img2 {
        max-width: 70%;
    }
}

/* reCAPTCHA */
.grecaptcha-badge{
    bottom:30px!important;
    left:30px!important;
    width:70px!important;
}
.grecaptcha-badge:hover{
    width:256px!important;
}

@media(max-width:767px){
    .grecaptcha-badge{bottom:100px!important;left:0px!important;width:70px!important;}
    .grecaptcha-badge:hover{width:256px!important;}
}

/* プラン一覧＆詳細のサムネイル比率調整 */
.plan-archive-content .plan-intro-box.aspect-img img {
    aspect-ratio: 4 / 4;
}

.single-plan .plan-intro-box .aspect-img img {
    aspect-ratio: 4 / 4;
}
