﻿@charset "utf-8";
/* CSS Document */

/*===================================================================
//  基本設定
//=================================================================*/
.sp-non {display: none !important;}
.pc {display: none !important;}
.tb {display: none !important;}
.sp {display: block !important;}
body {font-size: 16px;}
.contents-wrapper {padding-left: 0; padding-right: 0; box-sizing: border-box;}


.space-btm {padding-bottom: 4.5em;}
.contents-space-btm {padding-bottom: 5.5em;}
.margin-b-sp {margin-bottom: 1.5em !important;}
.wide90 {padding-left: 1.5em; padding-right: 1.5em; margin: 0 auto;}
.flex-container {display: flex; flex-wrap: wrap;}

table.base-table,
table.base-table tbody,
table.base-table tr,
table.base-table th,
table.base-table td {display: block;}
table.base-table th {padding-bottom: 0;}
table.base-table td {padding-top: 0.5em;}
table.base-table td ul.list,
table.base-table td ol.list {margin-left: 1.8em;}

.section_ttl {padding-bottom: 1.2em;}
.section_txt {
    display: inline-block;
    font-size: 3rem;
    color: #1d1d1d;
    line-height: 1.3;
}
.section_txt small {
    padding-top: 0.8em;
}
.section_ttl img {}
.txt_accent {width: 140px;}

.scroll_box {padding-left: 0;}

.footer .icon_wrap a {color: #d4d4d4;}
.footer .copy {width: 100%; display: block; padding-bottom: 0; color: #d4d4d4;}

.curve {
}


.intro_wrap .section_txt_main {
    color: #1d1d1d;
    font-weight: bold;
    position: relative;
    padding: 1.5rem;
    text-align: center;
    font-size: 2.5rem;
    line-height: 1.5;
}




/*===================================================================
//  ヘッダー
//=================================================================*/

.header_contents .header_logo_mark {
    position: absolute;
    top: 8px;
}
.header_contents .header_logo_mark img {
    width: 65px;
    height: 65px;
}
.header_contents .header_logo {
    padding: 0.2em 2.3em 0.2em 2.3em;
    display: block;
    width: 100%;
}
.header_contents .header_logo a {
    max-width: 100px;
    width: 100%;
    line-height: 1;
    margin: 0 auto;
    display: block;
}
.header_contents .header_logo a .logo {width: 100%;}
#g-nav {padding-top: 6em; width: 100%; top:0; left:0; height: 100%; overflow-y: scroll; padding-bottom: 7em; background:rgb(255 255 255 / 100%);}
#g-nav .header_logo {background: transparent; float: none; width: 200px; padding-bottom: 0;}
.header_contents .header_logo h1 {
    width: 100%;
    display: block;
    text-align: center;
    padding: 0 0 0.3rem;
    opacity: 0.5;
    line-height: 1;
}
.header_contact_btn,
.header_tel_btn {
    display: block;
    width: 90%;
    margin: 0 auto!important;
    padding-top: 2em!important;
}
.header_contact_btn_inner,
.header_tel_btn_inner {
    width: 100%;
    font-size: 2em;
    padding: 0.5em 0.5em 0.7em;
    border-radius: 50px;
    box-shadow: 0 0 25px rgb(0 0 0 / 10%);
}
.header_tel_btn_inner {
    margin: 0 auto;
}
.header_contact_btn_inner,
.header_contact_btn_inner:after {
    color: #fff!important;
}

/*===================================================================
//  SPメニュー　Drawer
//=================================================================*/
/*.drawer-hamburger-icon, 
.drawer-hamburger-icon:after, 
.drawer-hamburger-icon:before {
    background: #3EA1D1;
}
.drawer-hamburger-icon,
.drawer-hamburger-icon:after, 
.drawer-hamburger-icon:before {
    height: 5px;
}
.drawer-hamburger {
    padding-top: 20px;
    padding-right: 20px;
}
.drawer--right.drawer-open .drawer-hamburger {
    right: 0px;
}
.drawer-nav {
    background: #defcee;
}
.drawer-overlay {
    background-color: rgba(0, 0, 0, .3);
}*/







/*===================================================================
//  メイン
//=================================================================*/
.main_wrap {
    background-image: url(../img/index/main_img_bg_sp.jpg);
    background-position:top;
    width: 100%;
}
.main_catch {
    position: relative;
    height: 100%;
}
.main_inner_catch {
    text-align: center;
    position: relative;
    height: 30vh;
    min-height: 440px;
    width: 100%;
}
.main_inner_catch:before {
    position: absolute;
    left: -26%;
    right: auto;
    top: auto;
    bottom: 0;
    width: 100%;
    height: 60vh;
    min-width: 330px;
}
.main_inner_catch::after {
    position: absolute;
    left: auto;
    right: -26%;
    top: auto;
    bottom: -4em;
    width: 100%;
    height: 50vh;
}
.main_catch_txt {
    top: 45%;
    width: 100%;
    margin-bottom: 1rem; 
    position: absolute;
    z-index: 2;
    padding-top: 0;
}

.main_catch_txt h2 {
    font-size: 1.5rem;
}
.main_catch_txt_small {
    font-size: 1.5rem;
}
.main_sub_desc h3 {
    font-size: 16px;
    margin-bottom: 1em;
}
.main_contact_btn,
.main_tel_btn {
    display: block;
    vertical-align: middle;
    text-align: center;
    width: 100%;
    margin: 0 auto;
}
.main_contact_btn_inner {
    padding: 1em 1em;
    margin: 0 auto;
    font-size: 1.8rem;
    max-width: 310px;
}
.main_contact_btn_inner i {
    margin-right: 0.3em;
}
/*.main_tel_btn_inner {
    width: auto;
    text-align: center;
    font-weight: 700;
    color: #67c33a;
    background: #fff;
    padding: 1em 1em;
    box-sizing: border-box;
    display: block;
    margin: 0 auto 0 0.3em;
    border-radius: 30px;
    box-shadow: 0 0 25px rgb(103 195 58 / 45%);
    transition: all .3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
    transition-property: transform, box-shadow;
}
.main_tel_btn_inner i {
    margin-right: 0.3em;
}*/



/** お悩み **/
.case_btm_icon {
    max-width: 140px;
    top: 32%;
}
.case_btm_txt {
    padding: 0.5rem 5% 25vh;
}


.case_btm_box {
    height: 90vh;
    background-image: url(../img/index/case_btm_bg.jpg);
}


/** 氣導法とは **/



/** クーポン **/



#coupon_btm {

}


/** セッションの流れ **/
.session_wrap {
    padding-bottom: 0;
}
/** 声 **/
.voice_wrap {
    padding-top: 32vw;
    padding-bottom: 26vh;
}
/** セラピスト紹介 **/
.therapist_box_01 {
    padding-bottom: 3em;
}
.summary_wrap {
    padding-top: 36vw;
}


.summary_txt {
    font-size: 7vw;
    padding: 20vw 0;
}






.form_wrap .section_ttl {
    padding-bottom: 0.5em;
}
.form_contact_btn_inner {
}





/*===================================================================
//  フッター
//=================================================================*/
footer .foot_logo {text-align: center; padding: 3rem 0 2rem;}

footer .foot_link li a {display: block; padding: 1rem 3em 2rem 0; color: #777;}
footer .add {padding-top: 3em; padding: 0 1em;}
footer .add .tel {margin-right: 1rem; color: #aaa;}

.form_wrap .flower {right: 0%; width: 35%;}
.form_wrap .flower_bg {right: 0; width: 100%;}


/*===================================================================
//  固定ページ　サービス料金
//=================================================================*/



.page .fv.page_menu {
    background-image: url(../img/page/main_menu_img_bg_sp.jpg);
}
.page .fv.page_access {
    background-image: url(../img/page/main_access_img_bg_sp.jpg);
}

.page_main_inner_catch {
    text-align: center;
    position: relative;
    height: 55vh;
    min-height: 245px;
    margin: 0 auto;
    overflow: hidden;
}
.page_main_catch_txt {
    margin-bottom: 0rem;
    position: absolute;
    left: 0;
    right: 0;
    top: 26vh;
    z-index: 1;
    padding-top: 0;
    font-size: 27px;
}
.page_main_catch_txt img {
    margin: 0 auto;
    width: 48%;
}


.page_summary_wrap {
    padding-bottom: 5em;
}





/** セラピスト紹介 **/
.page_prof_wrap {
    padding-top: 5em;
    padding-bottom: 25vh;
}
.page_prof_txt_wrap_inner:nth-child(odd) .page_prof_img_box {
    right: 0vw;
    width: 120vw;
}
.page_prof_txt_wrap_inner:nth-child(even) .page_prof_img_box {
    left: -20vw;
    width: 120vw;
}

.page_therapist_wrap {
    padding-top: 5em;
}
.page_therapist_img {
    width: 90vw;
    height: 90vw;
}


.page_access_list a {
    color: #562E00!important;
    text-decoration: none;
}


/** 予約フォーム **/
.form_section_txt {
    font-size: 3rem;
    letter-spacing: 0.1rem;
}




.form_wrap .section_ttl {
    padding-bottom: 0.5em;
}







/*===================================================================
//  404
//=================================================================*/
.error .error-text {margin: 5em 0;}

.backhome .arrow {font-size: 1.4rem;}



/*===================================================================
//  横向き・縦向き
//=================================================================*/
/* 横向き */
@media screen and (min-width: 568px) {
	
}

/* 縦向き */
@media screen and (max-width: 567px) {
	
}