/*
Theme Name: Lightning Child Sample
Theme URI:
Template: lightning
Description:
Author:
Tags:
Version: 0.6.1
*/


/* ------- トップページ ------------------------ */

html{
    scroll-behavior: smooth;
}
body{
    color: #2D0906;
    letter-spacing: 0.05em;
    font-family: 'Noto Serif JP', sans-serif;
}

/* ナビゲーション */
.gMenu>li:before{
    border: none;
}

/* ヘッダー */
.siteHeader_logo img {
    max-height: 80px;
}
.gMenu_outer nav{
    height: 90px;
}
.header_scrolled .gMenu_outer nav{
    height: auto;
}

/* テキスト */
body p{
    line-height: 2;
}
p.p-18{
    font-size: 18px;
    font-weight: 600;
}
p.f-b {
    font-weight: 600;
    font-size: 17px;
}

/* 背景色 */
.bg-color{
    background-color: #EBE3D7;
    margin: 80px calc(50% - 50vw);
    padding: 80px calc(50vw - 50%);
}
.bg-color-pale{
    background-color: #FEFAF5;
    margin: 80px calc(50% - 50vw);
    padding: 80px calc(50vw - 50%);
}

/* 見出し */
h2.is-style-vk-heading-plain{
    color: #A57846;
    font-size: 30px;
}
h2.is-style-vk-heading-plain::before{
    content: "";
    height: 1px;
    width: 160px;
    background-color: #A57846;
    display: inline-block;
    position: absolute;
    top: 20px;
    left: -180px;
}

h3.is-style-vk-heading-plain{
    font-size: 26px;
    margin-top: 70px;
    margin-bottom: 30px;
}

h4.is-style-vk-heading-plain{
    font-size: 22px;
    letter-spacing: 0.08em;
    line-height: 1.8em;
    margin-top: 60px;
    margin-bottom: 30px;
    color: #A57846;
}
.vk-med-one h4.is-style-vk-heading-plain{
    margin-top: 0;
}

/* ボタン */
.vk_button{
    margin-top: 40px;
}
.vk_button .vk_button_link{
    width: 300px;
    border-radius: 0;
}
.reserve .vk_button{
    margin-top: 0;
    margin: 15px;
}

/* お知らせ */
.wp-block-latest-posts li{
    display: flex;
    padding: 1.3em 0;
}
.wp-block-latest-posts li time{
    order: 1;
    margin-right: 2em;
    color: #2D0906;
}
.wp-block-latest-posts li a{
    order: 2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 0;
    color: #2D0906;
}

/* メニュー */
.menu-columns{
    width: 85%;
    margin-right: auto;
    margin-left: auto;
}
.menu-columns .wp-block-column figure{
    margin-bottom: 0;
}
.menu-columns .wp-block-column figure img{
    width: 100%;
}

/* ---- フッター ----------- */
.siteFooter{
    border-top: none;
    background: #2D0906;
    color: #fff;
}
.siteFooter .sectionBox{
    padding: 0.2em;
}
.copySection p{
    font-size: 12px!important;
}
.copySection p:last-of-type{
    display: none;
}

/* ページトップボタン */
.page_top_btn{
    height: 42px;
    width: 42px;
    background-repeat: no-repeat;
    box-shadow: none;
    bottom: 3%;
    background-image: url(https://meguro.belfine-official.com/wp-content/uploads/2024/08/page-top-btn.png);
    background-size: cover;
}


/* ページヘッダー */
.page-header {
    background-color: #2D0906;
    color: #fff;
}
.page-header_pageTitle::after{
    content: "脱毛";
    display: block;
    font-size: 16px;
    margin-top: 15px;
    letter-spacing: 0.08em;
}
.post-name-body .page-header_pageTitle::after{
    content: "ボディ";
}
.post-name-relaxation .page-header_pageTitle::after{
    content: "リラクゼーション";
}
.post-name-facial .page-header_pageTitle::after{
    content: "フェイシャル";
}
.post-name-salon .page-header_pageTitle::after{
    content: "サロン";
}

/* ------ 脱毛 ------------------------ */
.point-columns{
    margin-top: 50px;
}
.point-columns .wp-block-column{
    background-color: #FEFAF5;
    padding: 30px 30px 10px;
    border-radius: 6px;
}
.point-columns .wp-block-column p:first-of-type{
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.08em;
}
.point-columns .wp-block-column{
    position: relative;
}
.point-columns .wp-block-column::before{
    content: "01";
    display: inline-block;
    font-size: 36px;
    color: #A57846;
    position: absolute;
    left: 30px;
    top: -28px;
    font-weight: 600;
}
.point-columns .wp-block-column:nth-child(2)::before{
    content: "02";
}
.point-columns.last .wp-block-column:nth-child(1)::before{
    content: "03";
}
.point-columns.last .wp-block-column:nth-child(2)::before{
    content: "04";
}

.parts-text code{
    font-size: 16px;
    font-family: 'Noto Serif JP', sans-serif;
    color: #2D0906;
    border: 1px solid #2D0906;
    padding: 2px 14px;
    border-radius: 50vw;
    margin-top: 40px;
    margin-left: 0;
    margin-right: 10px;
}

.price-table{
    margin-top: 30px;
    margin-bottom: 40px;
}
.price-table thead{
    border-bottom: 0;
}
.price-table tr td{
    font-size: 16px!important;
    padding: 0.8em!important;
}
.price-table thead tr th{
    background-color: #2D0906;
    color: #fff;
    font-size: 16px!important;
    padding: 0.4em!important;
}


/* ------ ボディ ------------------------ */
.onayami-columns{
    margin-top: 40px;
}
.onayami-columns figure img{
    width: 75%;
    margin-right: auto;
    margin-left: auto;
}

.price-ttl{
    border-top: 1px solid #ccc;
    padding-top: 30px;
    margin-top: 30px;
    font-weight: 600;
    font-size: 18px;
}
.price-ttl.first{
    border: none;
}
.price-ttl span{
    float: right;
}


/* ------ リラクゼーション ------------------------ */
.point-list{
    background-color: #fff;
    padding: 10px 10px 10px 50px!important;
}
.treatment-box{
    border: 1px solid #A57846;
    padding: 30px;
    position: relative;
    margin-top: 30px;
}
.treatment-box p:first-of-type{
    position: absolute;
    top: -18px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    background-color: #fff;
    display: inline-block;
    width: 110px;
    color: #2D0906;
    font-weight: 600;
    font-size: 18px;
}
.rec-columns{
    gap: 10px!important;
    margin-bottom: 10px!important;
}
.rec-columns .wp-block-column{
    text-align: center;
    background-color: #EBE3D7;
    padding: 10px;
    border-radius: 50vw;
}
.rec-columns .wp-block-column p{
    margin-bottom: 0;
}


/* ------ フェイシャル ------------------------ */
.biophyto-columns .wp-block-column{
    background-color: #fff;
    padding: 20px;
    border-radius: 6px;
}
.biophyto-columns .wp-block-column p:first-of-type{
    font-size: 18px;
    font-weight: 600;
}

.effect-text{
    margin-top: 40px;
    position: relative;
    padding-left: 5%;
}
.effect-text::before{
    content: "01";
    border-right: 1px solid #2D0906;
    padding-right: 10px;
    color: #2D0906;
    font-size: 24px;
    line-height: 24px;
    margin-top: 6px;
    display: inline-block;
    position: absolute;
    left: 0;
}
.effect-text.second:before{
    content: "02";
}
.effect-text.third:before{
    content: "03";
}
.effect-text p:first-of-type{
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 10px;
}

.step-columns .wp-block-column{
    background-color: #FEFAF5;
    padding-bottom: 20px;
}
.step-columns .wp-block-column p{
    padding-right: 20px;
    padding-left: 20px;
    text-align: center;
}
.step-columns .wp-block-column figure{
    margin-bottom: 0;
}
.step-columns .wp-block-column p:first-of-type{
    background-color: #A57846;
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    margin-top: 0;
}
.step-columns .wp-block-column p:last-of-type{
    text-align: left;
    font-size: 14px;
}


/* ------ サロン ------------------------ */
.salon-table tr td:first-of-type{
    width: 20%;
}
.salon-table tr td{
    font-size: 16px!important;
    padding: 1.2em!important;
}
.salon-table tr td iframe{
    margin-bottom: 10px;
}

/* ------ 投稿 ------------------------ */

body.blog .siteContent{
    padding-bottom: 15rem;
}
body.single .siteContent{
    padding-bottom: 15rem;
}
body.archive .siteContent{
    padding-bottom: 15rem;
}

.entry-meta_items_author{
    display: none;
}
.vk_post .vk_post_title{
    font-size: 14px!important;
    font-weight: normal;
    margin: 0;
}
.postNextPrev_label{
    margin-bottom: 0.5em;
}

.postNextPrev .vk_post:last-of-type .vk_post_title{
    text-align: right;
}

h1.entry-title {
    font-size: 28px;
}

body.blog .page-header_pageTitle::after{
    content: "お知らせ";
}
body.single .page-header_pageTitle::after{
    content: "お知らせ";
}
body.archive .page-header_pageTitle::after{
    content: "お知らせ";
}

.archive-header_title{
    font-size: 28px;
}


/* ------ お問い合わせ ------------------------ */

/* ContactFrom7 */
.contact7 p.contact-ttl{
    font-size: 22px;
    margin-bottom: 60px;
    border-left: 5px solid #004899;
    padding-left: 15px;
    font-weight: 500;
    letter-spacing: 0.08em;
}
.contact7 p.contact-ttl span{
    font-size: 16px;
    font-weight: normal;
    color: #333;
}
.contact7 p.contact-p{
    font-size: 20px;
    color: #004899;
    font-weight: 500;
    letter-spacing: 0.08em;
    margin-top: 50px;
    margin-bottom: 35px;
    padding-bottom: 5px;
    border-bottom: 1px solid #004899;
}
.contact7 {
	max-width: 100%;
	box-sizing: border-box;
    background-color: #f5f5f5;
    padding: 3%;
    margin-top: 50px;
}
.contact7 dd {
	margin: 0 0 30px 0;
    border-left: none;
    padding-left: 0;
}
.contact7 dd:last-of-type{
    margin-bottom: 0;
}
.contact7 dt {
	font-weight: normal;
    border-left: none;
    padding-left: 0;
}
span.wpcf7-spinner{
    display: none;
}
 
/* 必須マーク */
.contact7 .must {
	background-color: #d93e14;
    color: #fff;
    font-size: 12px;
    padding: 1px 4px;
    margin-left: 8px;
}
.contact7 .optional {
	background-color: #999;
    color: #fff;
    font-size: 12px;
    padding: 1px 4px;
    margin-left: 8px;
}
.form-control{
    border-radius: 0;
}
.btn_contact7 {
	text-align: center;
}
.btn_contact7 input {
	width: 40%;
	background-color: #004899;
	color: #fff;
    font-weight: bold;
	font-size: 1.1em;
	letter-spacing: 1em;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	-ms-transition: 0.3s;
	transition: 0.3s;	
    margin-top: 50px;
    padding-left: 2em;
    height: 44px;
    border-radius: 0;
    border: none;
}
.btn_contact7 input:hover {
    background-color: #fff;
    color: #004899;
    border: 1px solid #004899;
}

.contact7 input.wpcf7-number{
    width: 80px;
    margin-right: 10px;
    margin-left: 10px;
    display: inline-block;
}




/* ------- SP ----------------------------- */

@media (max-width: 991.98px){

    /* ロゴ */
    .siteHeader_logo img {
        max-height: 40px;
    }
 
    /* ナビゲーション */
    .vk-mobile-nav-menu-btn{
        border: none;
    }
    .vk-mobile-nav-menu-btn.menu-open{
        border: none;
    }
    .vk-menu-acc .acc-btn{
        border: none;
    }

    /* 見出し */
    h2.is-style-vk-heading-plain{
        font-size: 26px;
    }
    h2.is-style-vk-heading-plain span{
        font-size: 16px!important;
    }
    h2.is-style-vk-heading-plain::before {
        width: 15px;
        top: 17px;
        left: -20px;
    }
    h3.is-style-vk-heading-plain {
        font-size: 24px;
        margin-bottom: 25px;
        margin-top: 40px;
    }
    h4.is-style-vk-heading-plain{
        font-size: 20px;
        margin-bottom: 20px;
    }

    /* 背景色 */
    .bg-color-pale{
        margin: 50px calc(50% - 50vw);
        padding: 50px calc(50vw - 50%);
    }
    .bg-color{
        margin: 50px calc(50% - 50vw);
        padding: 50px calc(50vw - 50%);
    }

    /* ボタン */
    .vk_button{
        margin-top: 30px;
    }

    /* 画像 */
    .wp-block-cover.min-auto{
        min-height: auto;
    }
    .wp-block-column.sp-p-0{
        padding-top: 0!important;
    }

    /* トップ-メニュー */
    .menu-columns{
        width: 100%;
    }

    /* トップ-サロン */
    .salon-columns{
        gap: 0!important;
    }

    /* cta */
    .reserve .vk_button{
        margin-right: 0;
        margin-left: 0;
    }
    .cta-columns{
        gap: 10px!important;
    }

    /* 脱毛 */
    .point-columns {
        margin-top: 30px;
    }
    .point-columns.sp-mt{
        margin-top: 40px;
    }
    .point-columns .wp-block-column p:first-of-type{
        font-size: 16px!important;
        margin-bottom: 10px;
    }
    .point-columns .wp-block-column::before{
        font-size: 30px;
        left: 25px;
        top: -24px;
    }
    .point-columns .wp-block-column{
        padding: 25px 25px 10px;
    }
    .parts-text code {
        margin-top: 20px;
        font-size: 14px;
    }
    .price-table thead tr th,.price-table tr td{
        font-size: 14px!important;
    }

    /* ボディ */
    .onayami-columns figure img {
        width: 55%;
    }
    p.f-b{
        font-size: 16px;
    }
    .price-ttl {
        padding-top: 25px;
        margin-top: 25px;
        font-size: 16px;
    }

    /* リラクゼーション */
    .point-list {
        padding: 10px 10px 10px 40px !important;
    }
    .treatment-box p:first-of-type{
        font-size: 16px;
        top: -16px;
        width: 100px;
    }
    .treatment-box{
        padding: 25px;
    }
    .rec-columns {
        gap: 15px!important;
    }

    /* フェイシャル */
    .biophyto-columns .wp-block-column p:first-of-type{
        font-size: 16px;
        margin-bottom: 10px;
    }
    .biophyto-columns{
        gap: 15px!important;
    }
    .effect-text::before{
        font-size: 22px;
    }
    .effect-text{
        padding-left: 12%;
        margin-top: 30px;
    }
    .step-columns{
        gap: 15px!important;
        margin-bottom: 15px;
    }
    .step-columns .wp-block-column p{
        padding-right: 15px;
        padding-left: 15px;
        margin-bottom: 10px;
    }
    .step-columns .wp-block-column p:first-of-type{
        margin-bottom: 15px;
    }
    .step-columns .wp-block-column{
        padding-bottom: 15px;
    }

    /* サロン */
    .salon-table tr td:first-of-type{
        padding-left: 0!important;
    }
    .salon-table tr td:last-of-type{
        padding-right: 0!important;
    }
    .salon-table tr td{
        font-size: 14px!important;
    }
    .salon-table iframe{
        height: 200px;
    }
    

    /* お問い合わせ */
    .btn_contact7 input {
        width: 80%;
    }

    /* ニュース */
    h1.entry-title{
        font-size: 22px;
    }
    .media .media-body .media-heading{
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    .media .postList_thumbnail{
        width: 150px;
    }
    .subSection{
        margin-top: 5rem;
    }
    .postNextPrev{
        gap: 10px!important;
    }

}