/*
Theme Name: Cocoon Child
version: 1.0.0
Template: Cocoon
*/

@charset "UTF-8";
.onlySP{
	display: none;
}
.onlyTB{
	display: none;
}
#main{
	border: none;
	min-height: 27vw;
}
#main .breadcrumb{
	font-size: 0.7em;
}
/*font-style*/
@font-face {
    font-family: "M PLUS Rounded 1c";
    src: url("https://fonts.gstatic.com/s/mplusrounded1c/v19/VdGBAYIAV6gnpUpoWwNkYvrugw9RuM0C45sPxeymz15fQEPFwkYlR0a4qBwdyXRVeV9klkI.119.woff2") format("woff2");
    font-weight: 900;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0020-0021, U+3000-303F, U+3040-309F, U+30A0-30FF, U+4E00-9FFF;
}
@font-face {
    font-family: "M PLUS Rounded 1c";
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url("../fonts/m-plus-rounded-1c-v19-japanese-500.woff2") format("woff2");
    unicode-range: U+0020-0021, U+3000-303F, U+3040-309F, U+30A0-30FF, U+4E00-9FFF;
}

	/* font-weight */
	.regular{
		font-weight: 400;
	}
	.medium{
		font-family: "M PLUS Rounded 1c", sans-serif;
		font-weight: 500;
	}
	.bold{
		font-family: "M PLUS Rounded 1c", sans-serif;
		font-weight: 700;
	}
	/* font-marker */
	span.marker {
		background: linear-gradient(transparent 50%, rgba(248,248,0,0.25) 50%);
	}
	body.fz-22px { 
		font-size: 1.15vw; 
	}
.article h3{
	font-size: 1.2em;
}

/*END font-style*/
/* テキスト */
.center{
	text-align: center;
}

/* HEADER */
/* クリティカルCSS - function.php  */
/*メインヴィジュアル*/
/* apeal-area - function.php */
/* END メインヴィジュアル */
/*REMOVE front-Page-header*/
.front-top-page .article-header{
	display:none;
}
.front-top-page .main{
	padding:1vw 0 0 0 ;
}
.front-top-page .author-info{
	background-color: #FFFBF8;
}
.article .front-h2{
	margin:0 auto;
	padding: 0;
	text-align: center;
	font-size:1.5em;
	padding: 1em;
}
/* 症状セクション */
.symptomSec{
	margin-top:6.3vw;
	padding:2.9vw 5.2vw;
	background-color: #F5F9ED;
	position: relative;
}
.symptomSec .front-h2{
	background-color: #F5F9ED;
}
.mainSymptom{
	position: relative;
	max-width: 100%;
	height:14.8vw;
	margin-top:3.8vw;
}
.mainSymptom >div{
	position: absolute;
	display: flex;
	justify-content: space-between;
	width: 100%;
	padding-left:0;
	z-index:0;
	height: 14.89vw;
	align-items:center;
}

.mainSymptom >div figure{
	flex-basis: 19.7vw;
	height: 14.9vw;
}
.mainSymptom >div figure img{
	border-radius: 1.4em;
	box-shadow: 3px 3px 3px #00000029;
	width:100%;
	height: auto;
	object-fit: cover;
}
.mainSymptom >ul{
	display:flex;
	list-style-type: none;	
	justify-content: space-between;
	max-width: 100%;
	padding-left:0;
	position: relative;
	z-index: 1;
	height: 14.89vw;
	align-items:center;
}
.mainSymptom >ul li{
	flex-basis:19.73vw;
	margin: 0;
	background-color: rgba(255,255,255,0.8);
	font-size: 1.14vw;
}
.mainSymptom li.mSym01{
	padding:2vw;
}
.mainSymptom li.mSym02{
	padding:0.98vw 1.3vw 1.35vw;
}
.mainSymptom li.mSym03{
	padding:0.98vw 2.6vw 1.3vw;
}
.mainSymptom li.mSym04{
	padding:2vw 6.25vw;
}

.keySymptom{
	max-width: 100%;
	margin:4.6vw auto 7.1vw;
	display: flex;
	list-style-type: none;	
	justify-content: center;
	align-items:center;
	padding: 0;
}
.article ul.keySymptom >li{
	flex-basis: 8.2vw;
	height: 8.2vw;
	margin:0 1.3vw;
	text-align:center;
	font-size:1vw;
	border: 1px solid #00807A;
	border-radius: 50%;
	box-shadow: 5px 5px 6px #00000029;
	background-color: #00807A;
	color: #ffffff;
	font-weight: 700;
}
.keySymptom >li.keySym01{
	padding: 3.3vw 2.34vw;
}
.keySymptom >li.keySym02{
	padding: 3.3vw 1.35vw;
}
.keySymptom >li.keySym03{
	padding:3.3vw 1.92vw;
}
.keySymptom >li.keySym04{
	padding: 3.3vw 1.35vw;
}
.keySymptom >li.keySym05{
	padding: 3.3vw 2.4vw;
}
.keySymptom >li.keySym06{
	padding: 3.3vw 0.9vw;
}
.keySymptom >li.keySym07{
	padding: 3.3vw 2.4vw;
}
.symptomSec span.next{
	width: 13.3vw;
	height:4.5vw;
	position: absolute;
	left: 50%;
	transform: translate(-50%);
	bottom:-4.5vw;
	background: url('../image/triangle.svg') no-repeat center center/ contain;
}
/* END 症状セクション */
/*PRセクション*/
.front-top-page .prSec{
	padding-top:10.6vw;
	position: relative;
}
.front-top-page .prSec span.comicLeft{
	content:"";
	display: block;
	width: 12.4vw;
	height:18.8vw;
	position: absolute;
	left:8.6vw;
	top:4.4vw;
	background: url('/wp-content/uploads/2024/10/comic-left.png') no-repeat center center /contain;
}
.front-top-page .prSec span.comicRight{
	content:"";
	display: block;
	width: 11.8vw;
	height:19.5vw;
	position: absolute;
	right:8.6vw;
	top:4.4vw;
	background: url('/wp-content/uploads/2024/10/comic-right.png') no-repeat center center /contain;
}
.pcfz-2w{
	font-size: 2vw !important;
}
.front-top-page .prSec h2{
	padding-bottom:0.5em; 
	border-bottom: 1px solid #333333;
	width:64vw;
	max-width:100%;
}
.front-top-page .prSec h2 > span{
	font-size: 2.5vw;
}
.front-top-page .prSec p.h2-catch{
	padding-top: 1vw;
	text-align: center;
	font-size:1.3vw;
	max-width:100%;
}
.front-top-page .prSec .introduce{
	margin:13.5vw 0 0 0;
	background-color: #F9F5ED;
	width:100%;
	max-width:100%;
	position: relative;
	padding: 2.7vw 14.6vw 6vw;
	text-align: center;
}
.front-top-page .prSec .comic{
	position: relative;
	max-width: 73.3vw;
}
p.fukudashi{
	position: absolute;
	top:4.68vw;
	left:55.3vw;
	padding:3.5vw 4.2vw 3.8vw 6.25vw;
	font-size: 1.1vw;
	background: url('/wp-content/uploads/2024/10/fukidashi_imgx2.png') no-repeat center center /contain;
}
.faceIllust >img{
	border-radius: 50%;
	border: 1px solid #707070;
	width:10.6vw;
	height:10.6vw;
}
p.faceIllust{
	margin: 0 auto;
	width:10.6vw;
	height:10.6vw;
}
.introduce > dl{
	margin: 1em 3em 0.5em;
}
.introduce dl.bold > dt, .introduce dl.bold > dd{
	display: inline-block;
	margin-left:0;
	padding:0;
}
.introduce p.intro{
	font-size:0.8em;
	margin-bottom: 3em;
}
.introduce p.aboutus{
	margin-bottom: 6vw;
	line-height: 2.1;
}
/* ベーシックボタンの設定 */
.basic-button{
	margin: 0 auto;
	text-align: center;
}
.basicBtn{
	color: #ffffff !important;
	font-weight: 700;
	font-size: 	1.2em;
	padding: 0.7em 3em;
	background-color: #014C46;
	border: 1px solid #014C46;
	border-radius: 3em;
	box-shadow: 8px 8px 5px #00000029;
}
.basicBtn:hover{
	opacity: 0.7;
}
/* お客様の声セクション */
.reviewSec > .front-h2{
	margin: 9vw auto 1vw;
}
.reviewSec .reviewMemo{
	text-align: center;
	font-size: 0.8em;
	margin-bottom: 2vw;
}
.reviewSec .reviewMemo >p {
	margin-bottom: 0.5em;
}
.reviewSec .reviewMemo >p::before{
	content: "※";
	display: inline-block;
	width: 1em;
	height:1em;
	margin-right: 0.5em;
}
.reviewSec .review{
	border: 1px solid #333333;
	border-radius: 20px;
	padding: 2em;
	max-width:67.1vw;
	margin: 0 auto 2vw;
	box-shadow: 5px 5px 6px #00000029;
	display: flex;
}
.reviewSec .review.right{
	flex-direction: row-reverse;
}
.reviewSec .review >div{
	flex-basis: 46vw;
}
.reviewSec .review >figure{
	flex-basis: 13.9vw;
}
.reviewSec .review >figure figcaption{
	font-size: 1vw;
	padding: 0 0.5em;
}
.reviewSec .review >figure img{
	border: 1px solid #888888;
	border-radius: 0.5em;
}
.reviewSec .review.left >div{
	margin-left:2em;
}
.reviewSec .review.right >div{
	margin-right:2em;
}
.reviewSec .review >div h3{
	margin-bottom: 0;
	border-bottom: 1px solid #333333;
	font-weight:500;
	padding: 0.5em 1em;
}
.reviewSec .review >div p{
	line-height: 1.5;
	margin-top: 1em;
	padding-left:1em;
}
.reviewSec .basic-button{
	margin-top: 5vw;
}
/* area-Section */
.areaSec{
	margin-top: 7.2vw;
	background-color: #F5F9ED;
	padding: 2.4vw 0 4.3vw 0;
	margin-bottom:0 !important;
	position: relative;
}
.areaSec >h2{
	background-color: #F5F9ED !important;
}
.areaSec >p{
	margin-top: 1.9em;
	text-align: center;
}
.areaSec >div{
	display: flex;
	max-width:70vw;
	width:100%;
	justify-content: space-between;
	margin-top:2.6em;
}
.areaSec .areaMap{
	flex-basis: 30vw;
	align-self: flex-end;
	margin-bottom:0;
	position: relative;
}
#mapSearch{
	display: flex;
	justify-content: space-between;
	font-size:0.8em;
	margin-bottom:0.5em;
}
#addressInput{
	padding: 0.5em 1em;
	line-height: 1.5;
	width: 24.5vw;
}
#checkAddress{
	background-color: #00807A;
	font-size: 1em;
	flex-basis: 5vw;
	padding:0.5em;
	color:#ffffff;
	border:none;
	border-radius: 0.3em;
	box-shadow: #999999 0.5px 0.5px 3px;
}
#checkAddress:hover{
	opacity:0.8;
}
.areaSec .areaDirection{
	flex-basis: 35vw;
	align-self: center;
}
#map-title{
	position: absolute;
	bottom: -2.5em;
	left:0.5em;
	padding: 0.5em;
	font-size:0.7em;
}
/* マップが非表示でも領域確保 */
#mapContainer{
	position: relative;
	width:100%;
	height: 18vw; /*レスポンシブ*/
}
/* APIマップ表示 */
#map {
	height: 100%;
	width:100%;
}
#map .gm-style{
	font-size: 1em;
}
#map .gm-style .gm-style-mtc button {
    font-size: 1em !important; /*map 左上のボタン*/
}
#map .gm-style .gm-style-iw.gm-style-iw-c { 
	max-width: 15.6vw !important; 
	font-size: 1.15vw; /*bodyの基本フォントサイズと合わせる*/
	max-height: 20.8vw !important;
}
/* 事務所ピン */
#map .gm-style .gm-style-iw div.gm-style-iw-d{
	font-size: 0.8em; 
	padding: 1em !important;
}

.map-error { color: red; }
.map-success { 
	color: green; 
}
/* functions.phpの<style>またはcustom-style.cssに追加 */
.gm-style .gm-style-iw-c, /* 親コンテナ */
.gm-style .gm-style-iw-d, /* コンテンツコンテナ */
.gm-style .gm-style-iw-t, /* テール（矢印）コンテナ */
.gm-style .gm-style-iw { /* 最上位コンテナ */
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
}
.map-info { 
	color: black; 
    white-space: normal;
    overflow: visible !important;
    box-sizing: border-box;
	font-size: 0.8em; /*infowWindowのフォントサイズemで設定*/
}
.map-success, .map-error {
    display: block; /* インライン要素をブロック化して余白を確保 */
    margin-top: 0.3em;
}
.areaSec mark{
	background-color: initial;
}
.areaSec span.shape{
	width: 24.3vw;
	height:4.4vw;
	position: absolute;
	bottom:-2.5vw;
	left:50%;
	transform: translate(-50%);
	background: url('../image/secTriangle.svg') no-repeat center center /contain;
	z-index: 1;
}
/* WEB特典セクション */
.privilegeSec{
	background-color: #FFFBF8;
	margin-bottom:0 !important;
	position: relative;
}
.privilegeSec .preH2{
	color: #ffffff;
	background-color: initial;
	font-size:1.3vw;
	padding:0  54.8vw 0 20vw;
	line-height:1.6;
}
.privilegeSec > .preSec{
	background-color: #9BC19F;
	padding:4.9vw 0;  
	max-width:100%;
	width:100%;
	position: relative;
}
.privilegeSec > .preSec > .woman{
	position: absolute;
	width: 13.3vw;
	height:13.6vw;
	right:30.7vw;
	bottom:0;
	background: url('/wp-content/uploads/2024/10/question_womanx2.png') no-repeat center center /contain;
}
.privilegeSec >p{
	margin-top: 10.7vw; 
	text-align: center;
	line-height:2.6;
	position: relative; 
	z-index: 1;
}
.privilegeSec span.bubble{
	max-width: 100%;
	width:100%;
	height: 16.7vw;
	position: absolute;
	display: block;
	left:0;
	top:27.6vw;
	background-image: url('/wp-content/uploads/2025/08/PC-1920-bubble.jpg');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	z-index: 0;
}
/* retina対応 */
@media (min-width: 1025px) and (-webkit-min-device-pixel-ratio: 2), (min-width: 1025px) and (min-resolution: 192dpi) {
	.privilegeSec span.bubble {
		background-image: url('/wp-content/uploads/2025/08/PC-1920x2-bubble.jpg');
	}
}

.privilegeSec > p > i, .privilegeSec p > em{
	font-style: normal;
}
.privilegeSec .privilege{
	max-width:100%;
	width:100%;
	position: relative;
	margin-top: 10.5vw;
	margin-left:0;
	margin-right:0;
	padding: 7.5vw 2vw 11vw;
}
.privilegeSec .privilege >span{
	content: "";
	width:52vw;
	height:29vw;
	display: block;
	position: absolute; 
	z-index: 1;
	left: 23vw;
	top:-0.5vw;
	filter: drop-shadow(8px 8px 5px #00000029);
	background-image: url('/wp-content/uploads/2025/08/PC-harigami.png');
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center center;

}
@media (min-width: 1024px) and (min-resolution: 2dppx) {
    .privilegeSec .privilege >span {
        background-image: url('/wp-content/uploads/2025/08/PCx2-harigami.png'); 
    }
}
.privilegeSec .privilege > p{
	text-align: center;
	position: relative;
	z-index: 2;
	line-height: 1.5;
	margin-bottom: 1.4em !important;
}
.privilegeSec .privilege > p:first-of-type{
	margin-top:3em;
}
.privilegeSec .contactBtn{
	display:flex;
	max-width:100%;
	justify-content: center;
	align-items: flex-end;
	position: relative;
	margin-top:2vw;
}
.privilegeSec .basic-button .basicBtn{
	text-decoration: none;
}
.privilegeSec .basic-button.left{
	margin-right: 5vw;
}
.privilegeSec .basic-button.right{
	margin-left: 5vw;
}

.privilegeSec .basic-button.left >p{
	color: #00807A;
}
.privilegeSec .basic-button.left >p:before{
	content: "";
	display: inline-block;
	width: 2.2vw;
	height:2.5vw;
	border-left: 1px solid #00807A;
	transform:rotate(-45deg);
}
.privilegeSec .basic-button.left >p:after{
	content: "";
	display: inline-block;
	width: 2.2vw;
	height:2.5vw;
	border-right: 1px solid #00807A;
	transform:rotate(45deg);
}
/* 事務所アドレス */
.addressSec{
	background-color: #FFFBF8;
	margin-bottom:0;
	padding-top: 15vw;
	text-align:center;
	padding-bottom:6.5vw;
}
.addressSec p{
	margin: 0 auto;
	margin-bottom:0.5em;
	padding-bottom:0.5em;
	width: 36vw;
	font-size:1.5em;
	border-bottom: 1px solid #333333;
}
.addressSec address{
	width:36vw;
	margin:0 auto;
	font-style:normal;
	font-size: 0.8em;
}

/* お知らせカテゴリ */
.category-news h1, .page h1{
	text-align:center;
	font-size:1.5em;
	margin-bottom:4vw;
	margin-top:3vw;
}
.category-news h1 span{
	display:none;
}
.category-news figure{
	display:none;
}
.category-news .entry-card-content{
	width: 57vw;
	margin: 0 auto;
	padding-left:4em;
}
.category-news .admin-pv{
	display:none;
}
.category-news .entry-card-meta{
	right:50%;
	transform:translate(50%);
	text-align:right;
	width:53vw;
	border-bottom:1px solid #707070;
}
.category-news .list.ect-entry-card >a{
	color: #1967d2;
}
.category-news .list.ect-entry-card >a:hover{
	color: #00807A;
}
.category-news h2{
	margin: 0;
	padding-right:10em;
	font-weight:400;
}
.category-news h2:hover{
	font-weight:700;
}
.category-news .a-wrap{
	padding:0;
}
.category-news .entry-card-snippet{
	display:none;
}
/* 投稿ページ(お知らせ) */
.single-post h1{
	text-align:center;
	width:57vw;
	margin: 3vw auto 1em;
	border-bottom: 1px solid #333333;
	padding-bottom:3vw;
}
.single-post .entry-content.cf{
	width:55vw;
	padding: 0 2em;
	margin: 0 auto;
}
.single-post .date-tags{
	width: 57vw;
	margin: 0 auto;
	padding-bottom:1em;
}
.single-post div.entry-categories-tags.ctdt-one-row{
	display: none !important;
}
/* 固定ページ */
blockquote::before,blockquote::after{
	color: #C8C8C8 !important;
}
.page .menu-description {
	max-width:100%;
	text-align: center;
	margin:0;
}
.page dl.menuPlan{
	max-width:100%;
	width:100%;
	margin-top:3vw;
}
.page dl.menuPlan >div{
	display:flex;
	flex-wrap: wrap;
	border: 1px dashed #333333;
	margin-bottom: 2vw;
	background-color:#F5F9ED;
}
.page dl.menuPlan > div dt{
	flex-basis: 10vw;
	padding: 1em 2em;
	text-align: center;
	align-self: center;
}
.page dl.menuPlan >div dd{
	flex-basis:49.8vw;
	padding: 1em;
	text-align:left;
	border-left: 1px dashed #333333;
	background-color:#ffffff;
	margin-left:0;
}
.page .menu-page{
	width: 60vw;
	margin: 0 auto;
}
/* 固定ページの日付タグ削除 */
.page .date-tags{
	display: none;
}
/* よくある質問 */
.page .common-question,.privacy-policy .entry-content.cf{
	width: 100%;
	max-width:50vw;
	margin: 0 auto 5vw;
}
.page .common-question h2,.privacy-policy h2{
	max-width:100%;	
	margin-bottom: 1em;	
}
.page .common-question h2{
	padding: 1em 2em 1em 4em;
}
.privacy-policy h2{
	font-size: 1.5em;
	padding: 1em 2em 1em 1.5em;
}
.page .common-question p,.privacy-policy p{
	max-width:100%;
}
.page .common-question p{
	margin-bottom: 3em;
	padding-left:3em;
	padding-right:1em;
}
.privacy-policy p{
	margin-bottom: 1em;
	padding: 0 0 0 1em;
	text-indent:1em;
}
body.privacy-policy .article ul{
	margin-bottom: 1em;
}
.page .common-question .question{
	background-color: #9BC19F;
	color:#ffffff;
	border-color: #ffffff;
	border-radius:1em;
}
.page .common-question .question::before{
	color:#ffffff;
	border-right-color: #ffffff;
}
/* 目次 */
.toc{
	border-color: #888888 !important;
	border-radius: 1em;
}
.toc-title{
	padding: 0.3em 1em;
}
.toc a:hover{
	color: #00807A;
	text-decoration: underline; 
}
/* プライバシーポリシー */
.privacy-policy h2{
	border-top:1px solid #333333;
	border-bottom: 1px solid #333333;
}
.privacy-policy section{
	margin-bottom: 5em !important;
}
/*FOOTER*/
body #footer {
	background-image: url('/wp-content/uploads/2025/08/footer_page_background-1920.png');
    background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	width: 100%;
    height: 26vw;
    padding-top:0;
    position: relative;
}
body.front-top-page #footer {
	background-image: url('/wp-content/uploads/2025/08/footer_background-1920.png');
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
    width: 100%;
    height: 26vw;
    padding-top:0;
    position: relative;
}
/* retina対応 */
@media (min-width:1025px) and (-webkit-min-device-pixel-ratio: 2), (min-width: 1025px) and (min-resolution: 192dpi) {
	body #footer {
		background-image: url('/wp-content/uploads/2025/08/footer_page_backgroundx2.png');
	}
	body.front-top-page #footer {
		background-image: url('/wp-content/uploads/2025/07/footer_backgroundx2.png');
	}
}
#footer { 
	margin-top: 0; 
	padding: 0; 
}
#navi-footer .navi-footer-in a { 
	border-right: 1px solid #333333; 
}
#footer-in .footer-bottom.fnm-text-width .menu-footer li a { 
	padding-right: 3em; 
	padding-left: 3em; 
}
#footer-in .menu-item-389 a {
	 border: 0; 
	}
#footer-in { 
	position: absolute; 
	bottom: 0;
	padding-bottom: 2em;
}
.footer-bottom{
	margin-top:0;
	padding: 1em;
	position: relative;
	font-size: 0.8em;
}
#navi-footer .navi-footer-in ul.menu-footer li:first-of-type{
	border-left: none;
}
#navi-footer-in .menu-footer a{
	font-size: 1em;
}

@media screen and (max-width: 2017px) {
    #container .wrap { width: 100% !important; }
}

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*既存テーマは1023px以下 カスタム1024px以下 ー タブレット*/
@media (min-width: 680px) and (max-width: 1024px){
/* PC専用は非表示 */
	.onlyPC{
		display: none;
	}
	br.onlySP{
		display:none;
	}
	.onlyTB{
		display: block;
	}
	/* TB-FONT */
	body.fz-22px {
		font-size: 2vw;
	}
	.tbfz-2vw{
		font-size: 2vw !important;
	}
	/* 固定。カテゴリページなど設定できない部分のフォントサイズ*/
	.fz-20px{
		font-size:2vw !important; 
	}
	.tbfz-3vw{
		font-size: 3vw !important; 
	}
	.tbfz-1-8vw{
		font-size: 1.8vw !important;
	}
	.tbfz-2-5vw{
		font-size: 2.5vw !important;
	}
	.tbfz-2-6vw{
		font-size:2.6vw !important;
	}
	/* TB HEADER */
	#header-container{
		display:none;
	}
	#navi-menu-content .menu-close-button{
		text-align: right;
		font-size: 2em;
		margin-top: 1em;
		padding-right: 1em;
	}
	#navi-menu-content ul.menu-drawer a{
		padding: 2em 2em 2em 3em;
	}
	#navi-menu-content ul.menu-drawer li:first-of-type{
		margin-top: 3em;
	}
	/* モバイルフッターメニュー */
	.mobile-footer-menu-buttons {
        display: flex; /* Cocoonのdisplay: none;を上書き */
        align-items: stretch; /* デフォルトに合わせる */
        bottom: calc(-1 * (env(safe-area-inset-bottom, 0) + 7.5vh)); /* JavaScriptと整合 */
		transition: 0.3s;
        position: fixed;
        width: 100%;
        height: 7.5vh;
        box-shadow: 0 0 5px darkgrey; /* デフォルトスタイルを継承 */
        background: var(--cocoon-white-color);
        z-index: 3;
    }
	.mobile-footer-menu-buttons .menu-button{
		width: 100%;
	}
	.mobile-menu-buttons .menu-icon{
		font-size: 1.3em;
	}
	.mobile-menu-buttons .menu-caption{
		font-size: 0.8em;
	}
	/* TB-MAIN */
	#main{
		min-height: 50vh;
	}

	/* TB TOP */
		/* TB APEAL-AREA */
		body.front-top-page #appeal {
			height: 50vh;
			min-height:50vh;
		}
		body.front-top-page  #appeal .appeal-title{
			font-size:1.8em;
		}
		.front-top-page .appeal-message,.appeal-button{
			font-size:1em;
		}
		body.front-top-page #appeal span.appeal-img01{
			width:11vh;
			height:11vh;
			top:5vh;
			right: 8vh;
		}
		body.front-top-page #appeal span.appeal-img02{
			width:10vh;
			height: 10vh;
			top:3vh;
			left:18vh;
		}
		body.front-top-page #appeal span.appeal-img03{
			width:11vh;
			height:11vh;
			top:12vh;
			left:3vh;
		}
		body.front-top-page #appeal span.appeal-img04{
			width:15vh;
			height:20vh;
			right:3vh;
		}
		body.front-top-page #appeal .appeal-in{
			padding:3em;
		}
		body.front-top-page .appeal-content .appeal-button{
			padding: 1em 2em;
		}
		
		/* TB TOP-section Button */
		#main .newsSec h2{
			margin-top: 5vw;
		}
		#main ul.newsPost{
			width:69vw;
			font-size:1.8vw;
			padding:1.25em;
			margin-top:2vw; 
		}
		#main .newsPost li{
			margin-top:0.8em;
		}
		#main .newsPost a{
			flex-basis:45vw;
		}
		#main .newsPost time{
			flex-basis: 18vw;
		}
		/* TB 症状 SECTION */
		.symptomSec .front-h2{
			margin-bottom: 8vw !important;
		}
		body.front-top-page .symptomSec span.okyu{
			width:12.5vw;
			height:12.5vw;
			top:-13vw;
			right:9.3vw;
		}
		.article .symptomSec{
			margin-top:15vw;
			padding-top:8vw;
		}
		.article .mainSymptom{
			width:89.5vw;
			height:56vw;
		}
		.article .mainSymptom >div figure img{
			width:32.5vw;
		}
		.article .mainSymptom >ul{
			padding:0 !important;
		}
		.article .mainSymptom >div, .mainSymptom >ul{
			flex-wrap: wrap;
			justify-content: center;
			text-align:center;
			align-items:center;
		}
		.article .mainSymptom >div figure, .mainSymptom >ul li{
			flex-basis: 32.5vw;
			height: 25.9vw;
		}
		.article .mainSymptom >ul li{
			height: 9.7vw;
		}
		.article .mainSymptom >ul li.mSym02, .mainSymptom >ul li.mSym01{
			margin-top:7.8vw !important;
		}
		.article .mainSymptom >ul li.mSym03, .mainSymptom >ul li.mSym04{
			margin-top:18.2vw !important;
		}
		.article .mainSymptom >div figure{
			margin-bottom:1em;
		}
		.article .mainSymptom figure.mainSym01,figure.mainSym03{
			margin-right:2.5vw;
		} 
		.article .mainSymptom >ul li.mSym01,.mainSymptom >ul li.mSym03{
			margin-right:2.5vw !important;
		}
		.article .mainSymptom li.mSym02 {
			padding: 0.98vw 0 1.35vw;
		}
		.article .mainSymptom li.mSym01, .mainSymptom li.mSym04{
			padding-top:3vw;
		}
		.article .mainSymptom li.mSym02, .mainSymptom li.mSym03{
			padding-top:1.4vw;
		}
		.article .keySymptom{
			flex-wrap: wrap;
			padding: 0 11vw;
			width:89.5vw;
			height:26vw;
		}
		.article ul.keySymptom >li{
			flex-basis:13vw;
			height:13vw;
		}
		.article .keySymptom >li.keySym01, .keySymptom >li.keySym05,.keySymptom >li.keySym06,.keySymptom >li.keySym07{
			padding: 4.5vw 1vw; 
		}
		.article .keySymptom >li.keySym02,.keySymptom >li.keySym03,.keySymptom >li.keySym04{
			padding: 5vw 0;
		}
		/* TB PR-SECTION */
		.front-top-page .prSec {
			padding-top: 20vw;
		}
		.front-top-page .prSec .introduce {
			padding: 10vw 13vw;
			margin-top:20vw;
		}
		.front-top-page .prSec h2{
			width:80vw;
		}
		.front-top-page .prSec span.comicLeft {
			left:1.6vw;
			top:16.4vw;
		}
		.front-top-page .prSec span.comicRight{
			right:1.6vw;
			top:16.4vw;
		}
		.faceIllust >img{
			width:17.6vw;
			height:17.6vw;
		}
		p.faceIllust{
			width:17.6vw;
			height:17.6vw;
		}
		p.fukudashi{
			top:17.6vw;
			left:56.3vw;
			padding: 2em 2em 2em 3.5em;
			background-size: 44vw; 
		}
		/*TB-ボタン*/
		.basicBtn{
			padding: 1em 3em;
		}
		/* REVIEW */
		.reviewSec > .front-h2{
			margin: 10vw auto 1vw;
		}
		.reviewSec .reviewMemo{
			margin-bottom: 5vw;
		}
		.reviewSec .review {
			max-width:70vw;
			margin: 0 auto 5vw;
			display: block;
			padding: 3vw; 
		}  
		.reviewSec .review figure, .reviewSec .review h3{
			text-align: center;			
		}
		.reviewSec .review >div h3{
			line-height:1.6;
			padding: 0.5em 2em;
		}
		.reviewSec .review >div p{
			padding-right: 2.5vw;
			padding-left: 2.5vw;
			line-height: 1.8;
		}
		body.front-top-page .reviewSec .review >div{
			margin-left:2vw;
			margin-right: 2vw;
		}
		.reviewSec .review >figure figcaption{
			font-size: 0.9em;
		}
		.reviewSec .basic-button{
			margin-top: 7.8vw;
		}
		/* TB エリア SECTION*/
		.areaSec{
			margin-top:10vw;
			padding: 10vw 13vw;
		}
		.areaSec >div{
			display: block;
		}
		#addressInput{
			width:59vw;
		}
		#mapSearch{
			font-size:1em;
		}
		#checkAddress{
			flex-basis: 10vw;
		}
		/* マップが非表示でも領域確保 */
		#mapContainer{
			position: relative;
			width:100%;
			height: 48vw; /*TBレスポンシブ*/
		}
		#map{
			height: 40vw;
			width: 100%;
			margin-bottom:8vw;
		}
		#map .gm-style .gm-style-iw.gm-style-iw-c { 
			max-width: 40vw !important; 
			font-size: 2vw; /*TBフォント基本サイズ*/
			max-height: 19.5vw !important;
		}
		#map-title{
			font-size: 0.8em;
			bottom: 2em;
		}
		#map .gm-style .gm-style-iw div.gm-style-iw-d{
			font-size: 1em; /*infowIndow内の表示サイズ*/
			padding: 1em !important;
		}
		.map-info{
			font-size:1em;
			padding: 0 !important;
		}
		.areaSec .areaMap{
			text-align: center;
		}
		.areaSec .areaMap >iframe {
			width:45.5vw;
			height:32.5vw;
			margin-bottom: 5vw !important;
		}
		.areaSec span.onlySP{
			display: inline-block;
		}
		.tbfz-2-3vw{
			font-size: 2.3vw !important;
		}
		/* 特典 SECTION */
		.privilegeSec > .preSec {
			padding: 10vw 0;
		}
		.privilegeSec .preH2 {
			padding: 0 49.8vw 0 13vw;
		}
		.privilegeSec > .preSec > .woman{
			width: 28.3vw;
			height: 25.6vw;
			right: 13vw;
		}
		.privilegeSec >p{
			margin-top:20vw;
		}
		.privilegeSec span.bubble{
			background-image: url('/wp-content/uploads/2025/08/TB-1024-bubble.jpg');
			top: 58.6vw;
			height: 20.7vw;
		}
		.privilegeSec .privilege >span {
			background-image: url('/wp-content/uploads/2025/08/TB-harigami.png');
			width:94vw;
			top:-1vw;
			height:65vw;
			left:2.5vw;
		}
		/* タブレット @2x */
		@media (min-width: 680px) and (max-width: 1024px) and (min-resolution: 2dppx) {
			.privilegeSec .privilege >span {
				background-image: url('/wp-content/uploads/2025/08/TBx2-harigami.png'); 				
			}
			.privilegeSec span.bubble{
				background-image: url('/wp-content/uploads/2025/08/TB-1024x2-bubble.jpg');
			}
		}	
		.privilegeSec .privilege{
			height: 58.7vw;
			padding: 20.7vw 2vw 12.3vw;
		}
		.privilegeSec .contactBtn{
			display: block;
			padding: 0;
		}
		.privilegeSec .basic-button.left{
			margin-right:0;
			margin-bottom: 12vw;
		}
		.privilegeSec .basic-button.right{
			margin-left: 0;
		}
		/* FOOTER*/
		.addressSec{
			padding-top:20vw;
			padding-bottom:20vw;
		}
		.addressSec p{
			font-size: 3vw;
			width: 58.5vw;
			margin-bottom: 2.6vw;
			padding-bottom: 1.8vw;
		}
		.addressSec address{
			font-size: 1em;
		}
		.footer-bottom-content{
			text-align: center;
		}
		.footer-bottom-logo, .footer-bottom-content{
			float: none;
		}
		.navi-footer{
			float: none;
			margin: 0;
			width:100%;
		}
		.navi-footer-in > .menu-footer li.menu-item{
			width:32%;
			border:0;
			margin:2px;
			display:flex;
			flex:1 1 auto;
			text-align: center;
		}
		.copyright{
			height:8vh;
			width:100%;
			margin-top:0.5em;
		}
		.navi-footer-in a{
			border-right: 0;
		}
		.navi-footer-in > .menu-footer{
			justify-content: center;
		}
		.navi-footer-in > .menu-footer li.menu-item{
			margin-bottom: 4.5vw;
			font-size: 1.3em;
		}
		#navi-footer .navi-footer-in > .menu-footer li.menu-item a{
			width:100%;
		}
		#navi-footer .navi-footer-in > .menu-footer li.menu-item-386 a{
			border-right: none;
		}
		.footer-bottom-logo{
			position: relative;
			bottom: auto;
			line-height: 1;
		}
		.logo-footer{
			margin: 5vw auto !important;
		}
		body #footer .footer-bottom-logo .site-name-text{
			font-size: 2em;
		}
		body.front-top-page #footer .footer-bottom-logo {
			display: none;
		}
		body #footer{
			padding-top: 0;
			height:50vh;
		}
		body.front-top-page #footer{
			padding-top: 0;
			height:40vh;
		}		
		#footer-in {
			padding-bottom: 1em;
		}
		/* FOOTER - IMAGE */
		/* タブレット 834px 標準 */
		@media (min-width: 680px) and (max-width: 834px) {
			body #footer{
				background-image: url('/wp-content/uploads/2025/08/TB-footer_page_background.png');	}		
			body.front-top-page #footer{
				background-image: url('/wp-content/uploads/2025/08/TB-footer_background.png');}
		}
		/* タブレット 834px @2x */
        @media (min-width: 680px) and (max-width: 834px) and (min-resolution: 2dppx) {
            body #footer {
                background-image: url('/wp-content/uploads/2025/08/TB-footer_page_backgroundx2.png');}
			body.front-top-page #footer {
                background-image: url('/wp-content/uploads/2025/08/TB-footer_backgroundx2.png');}
        }
		/* タブレット　1024px 標準 */
		@media (min-width: 835px) and (max-width: 1024px) {
			body #footer {
                background-image: url('/wp-content/uploads/2025/08/TB-1024_footer_page_background.png');}
			body.front-top-page #footer {
            	background-image: url('/wp-content/uploads/2025/08/TB-1024_footer_background.png');}
		}
		/* タブレット 1024px @2x */
		@media (min-width: 835px) and (max-width: 1024px) and (min-resolution: 2dppx) {
            body #footer {
                background-image: url('/wp-content/uploads/2025/08/TB-1024x2_footer_page_background.png');}
			body.front-top-page #footer {
                background-image: url('/wp-content/uploads/2025/08/TB-1024x2_footer_background.png');}
        }
		/* 固定ページ　カテゴリーページ */
		#main .breadcrumb{
			font-size: 1em;
		}
		.breadcrumb-home .breadcrumb-caption{
			margin: 0 1em; 
		}
		.category-news h1, .page h1{
			margin: 10vw;
		}
		.category-news .entry-card-title{
			font-size:2vw;
			padding-left: 1em;
			padding-right: 13vw;
		}
		.category-news .entry-card-meta, .category-news .entry-card-content{
			width:75.5vw;
		}
		.category-news .entry-card-content{
			padding-left:0;
		}
		/* .category-news .main, .page .main, .single-post .main{
			margin-bottom: 5vw !important;
		} */
		/* .front-top-page .main{
			margin-bottom:0 !important;
		} */
			/* 投稿ページ */
			.single-post h1{
				text-align:left;
				width:75.5vw;
				padding-left:1em;
				font-size: 2.5vw;
				margin: 10vw auto 2em;	
			}
			.single-post .entry-content.cf{
				max-width:75.5vw;
				width:100%;
				padding: 0 6.5vw;
				margin: 0 auto;
			}
			.single-post .date-tags{
				max-width:75vw;
				width:100%;
			}
			/* メニュー */
			.page .menu-page{
				width: 80vw;
				padding: 0;
				margin: 0 auto;
			}
			.page .menu-page > p {
				margin-bottom: 5vw;
			}
			.page dl.menuPlan >div {
			display: block;
			margin-bottom: 5vw;
			}
			.page dl.menuPlan >div dd{
				width:100%;
				border-left:0;
				border-top: 1px dashed #333333;
			}		
			/* よくある質問  プライバシーポリシー*/
			.page .common-question h2,.privacy-policy h2{
				margin-bottom:3vw;
			}
			.page .common-question h2, .privacy-policy h2{
				font-size: 1.2em;
			}
			.page .common-question,.privacy-policy .entry-content.cf{
				width: 100%;
				max-width:75.5vw;
				margin: 0 auto;
			}
			.page .common-question p, .privacy-policy p{
				margin-bottom: 5vw;
			}
}
	
/*834px以下　タブレット とりあえず今は必要無し*/
/* @media screen and (max-width: 834px){ */
  /*必要ならばここにコードを書く*/
/* } */

/*既存テーマは480px以下　既存テーマより幅広く適応携帯用*/

@media screen and (max-width: 679px){
	/*body*/
	body.category-news #main, body.page #main, body.single-post #main {
		margin-bottom: 10vw;
		padding: 2em;
	}
	body.front-top-page #main{
		margin-bottom:0 !important;
		padding:0;
	}
	#main{
		min-height: 40vh;
	}
	/* SP 非表示 - 表示設定 */
	span.onlySP,br.onlySP{
		display: inline;
	}
	div.onlySP{
		display: block;
	}
	.onlyPC, .onlyPC-TB{
		display: none;
	}
	/* SP-FONT 基本フォントサイズ */
	body.fz-22px{
		font-size: 16px;
	}
	.spfz-16{
		font-size:16px !important;
	}
	.spfz-20{
		font-size:20px !important;
	}
	.spfz-18{
		font-size: 18px !important;
	}
	.spfz-17{
		font-size: 17px !important;
	}
	.spfz-14{
		font-size: 14px !important;
	}
	.front-top-page .prSec h2 > span{
		font-size: 23px !important;
	}
		/* 固定。カテゴリページなど設定できない部分のフォントサイズ*/
		.fz-20px{
			font-size: 16px !important; 
		}
		/* header */
		#header-container{
			display: none;
		}
	/* モバイルメニュー */
	#navi-menu-content .menu-close-button{
		text-align: right;
		font-size: 2em;
		margin-top: 1em;
		padding-right: 1em;
	}
	#navi-menu-content ul.menu-drawer a{
		padding: 2em 2em 1em 3em;
	}
	#navi-menu-content ul.menu-drawer li:first-of-type{
		margin-top: 3em;
	}
	/* モバイルフッターメニュー */
	.mobile-footer-menu-buttons {
        display: flex; /* Cocoonのdisplay: none;を上書き */
        align-items: stretch; /* デフォルトに合わせる */
        bottom: calc(-1 * (env(safe-area-inset-bottom, 0) + 10vh)); /* JavaScriptと整合 */
        position: fixed;
        width: 100%;
        height: 10vh;
        box-shadow: 0 0 5px darkgrey; /* デフォルトスタイルを継承 */
        background: var(--cocoon-white-color);
        z-index: 3;
		transition: 0.3s;
    }
	.mobile-footer-menu-buttons .menu-button{
		width: 100%;
	}
	.mobile-menu-buttons .menu-icon{
		font-size: 1em;
	}
	.mobile-menu-buttons .menu-caption{
		font-size: 0.8em;
	}
	/* SP appeal-Sec */
	body.front-top-page #appeal{
		height: 80vh;
	}
	body.front-top-page #appeal .appeal-title{
		text-shadow: 0px 3px 3px rgba(0, 0, 0, 0.05); /* 薄く */
	}
	
	#container #appeal #appeal-in .appeal-content{
		padding:0 ;
	}
	body.front-top-page .appeal-title{
		font-size: 1.5em;
	}
	body.front-top-page .appeal-message, .appeal-button{
		font-size: 0.9em;
	}
	body.front-top-page .appeal-button{
		font-size: 1em;
	}
	#appeal-in .appeal-content .appeal-message {
		margin-top:5vw;
	}

	@media screen and (max-width: 679px) and (min-height: 770px){
		body.front-top-page #appeal span.appeal-img03{
			width:9vh;
			height:9vh;
			left:21.5vw;
			top: 57vh;
			transform:rotate(-18deg);
		}
		body.front-top-page #appeal span.appeal-img02{
			width:13vh;
			height:13vh;
			left:10vw;
			top: 9vh;
			transform:rotate(-13deg);
		}
		body.front-top-page #appeal span.appeal-img01 {
			width: 14vh;
			height: 14vh;
			top:3vh;
			right:11vw;
			transform: rotate(6deg);
		}
		body.front-top-page #appeal span.appeal-img04 {
			width: 16vh;
			height:22vh;
		}
	}
	@media screen and (max-width: 679px) and (max-height: 769px){
			body.front-top-page #appeal span.appeal-img03{
			width:12vh;
			height:12vh;
			left:7.5vw;
			top: 4vh;
			transform:rotate(0deg);
		}
		body.front-top-page #appeal span.appeal-img02{
			width:11vh;
			height:11vh;
			left:37vw;
			top: 8vh;
			transform:rotate(-13deg);
		}
		body.front-top-page #appeal span.appeal-img01 {
			width: 15vh;
			height: 15vh;
			top:1vh;
			right:7vw;
			transform: rotate(6deg);
		}
		body.front-top-page #appeal span.appeal-img04 {
			width: 16vh;
			height:22vh;
		}
	}

	/* SP newsSec */
		#main ul.newsPost{
			width:88vw;
			padding:1.5em;
			font-size: 4vw;
			margin-top: 5vw;
		}
		#main ul.newsPost time{
			font-size: 3.5vw;
			text-align: right;
		}
		/* お知らせタイトル ２列まで表示　それ以上は[・・・]で省略 */
		#main ul.newsPost a{
			-webkit-line-clamp: 2;
			padding-right:0;
		}  
		#main ul.newsPost li{
			height: auto;
			display: block;
		}
		#main ul.newsPost li{
		border-bottom: 1px dotted #999999;
		}
		#main ul.newsPost li:last-of-type{
			border-bottom: none;
		}
	/*  SP SymtomSec */
	body.front-top-page section.symptomSec span.okyu {
		width: 28.5vw;
		height:28.5vw;
		top: -33.6vw;
	}
	body.front-top-page section.symptomSec {
		padding: 18.9vw 9.3vw 5vw;
		margin-top: 38vw; 
	}
	body.front-top-page section.symptomSec .front-h2{
		margin-bottom: 10vw;
		line-height: 1.8;
	}
	body.front-top-page section.symptomSec .mainSymptom >div, .mainSymptom >ul{
		display: block;
	}
	body.front-top-page section.symptomSec .mainSymptom >div figure img{
		width:81vw;
		height: 43.4vw;
		object-fit: cover;
		border-radius: 10px;
	}
	body.front-top-page section.symptomSec .mainSymptom >div figure{
		margin-bottom: 15vw;
		height: 42vw;
		width: 80vw;
	}
	body.front-top-page section.symptomSec figure.mainSym01, figure.mainSym03{
		margin-right: 0;
	}
	body.front-top-page section.symptomSec .mainSymptom >ul li{
		background-color: rgba(255,255,255,0.95);
		width: 77.8vw;
		margin: 0 auto;
	}
	body.front-top-page section.symptomSec .mainSymptom >ul li{
		margin-bottom: 39.7vw;
	}
	body.front-top-page section.symptomSec .mainSymptom >ul li.mSym03{
		margin-top: 0;
	}
	body.front-top-page section.symptomSec .mainSymptom >ul li.mSym04{
		margin-bottom: 0; 
	}
	body.front-top-page section.symptomSec .mainSymptom{
		margin-top: 0;
		padding-top: 32vw;
		height: 227.2vw;
		width: 100%;
	}
	body.front-top-page section.symptomSec .mainSymptom >div {
		top:0;
		height: auto;
	}
	body.front-top-page section.symptomSec .mainSymptom >ul li{
		height: auto;
		text-align: center;
	}
	body.front-top-page section.symptomSec .mainSymptom li.mSym01, .mainSymptom li.mSym04{
		padding: 5.2vw 2.6vw;
	}
	body.front-top-page .article section.symptomSec .keySymptom{
		margin: 11.2vw auto 17.6vw;
		padding: 0;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	body.front-top-page .article section.symptomSec .keySymptom >li{
		flex-basis: 35.2vw;
		height: 35.2vw;
		margin-bottom: 7.2vw;
	}
	body.front-top-page .article section.symptomSec .keySymptom >li.keySym01, body.front-top-page .article section.symptomSec .keySymptom >li.keySym05, body.front-top-page .article section.symptomSec .keySymptom >li.keySym06, body.front-top-page .article section.symptomSec .keySymptom >li.keySym07, body.front-top-page .article section.symptomSec .keySymptom >li.keySym02, body.front-top-page .article section.symptomSec .keySymptom >li.keySym03, body.front-top-page .article section.symptomSec .keySymptom >li.keySym04{
		padding: 14.6vw 2.6vw;
		line-height: 1.7;
	}
	/* SP PR-SECTION */
	body.front-top-page .prSec{
		padding-top: 71.2vw;
	}
	body.front-top-page .prSec h2 {
		line-height: 2;
		padding-bottom: 80vw;
		width:80vw;
	}
	body.front-top-page .prSec p.h2-catch{
		line-height: 2.25;
		padding-top: 20vw;
	}
	body.front-top-page .prSec span.comicLeft{
		width: 100vw;
		height:64vw;
		left:0;
		top:8.9vw;
		background: url(../image/SP_comicTop.svg) no-repeat center center /contain;
	}
	body.front-top-page .prSec span.comicRight{
		width: 100vw;
		height:53.2vw;
		left:0;
		top:111.2vw;
		background: url(../image/SP_comicBottom.svg) no-repeat center center /contain;
	}
	body.front-top-page .article section.symptomSec span.next{
		background: url(../image/SP-triangle.svg) no-repeat center center/contain;
		width: 44vw;
		height:22vw;
		bottom: -16vw;
	}
	body.front-top-page .prSec .introduce{
		margin-top: 28.5vw;
		padding: 20vw 10vw 20vw;
	}
	p.fukudashi{
		position: relative;
		width: 80vw;
		height: 24.8vw;
		top:0;
		left:50%;
		transform: translate(-50%);
		background: url(../image/SP-fukidashi.svg) no-repeat center center /contain;
		padding: 5vw 4.93vw 9.6vw;
		margin-bottom: 6.13vw;
	}
	p.faceIllust{
		width: 37.3vw;
		height: 37.3vw;
	}
	.faceIllust >img{
		width:100%;
		height:100%;
	}
	.introduce > dl{
		margin: 4.8vw auto 0;
		line-height: 1.7;
	}
	.introduce p.intro{
		margin-bottom: 3em; 
		line-height: 2.15;
	}
	.introduce p.aboutus{
		margin-bottom: 15vw;
	}
	/* SP-BUTTON */
	.basicBtn, body.front-top-page .appeal-content .appeal-button{
		padding: 0.8em 2em;
	}	
	/* SP-REVIEW */
	.reviewSec > .front-h2{
		margin: 20vw auto 5vw;
	}
	.reviewSec .reviewMemo{
		text-align: left;
		font-size: 0.8em;
		margin-bottom:3vw;
	}
	.reviewSec .reviewMemo >p{
		margin-bottom:0em;
		padding: 0.5em 2em 0 3.5em;
		position: relative;
	}
	.reviewSec .reviewMemo >p::before{
		height: auto;
		margin-right:0.5em;
		position: absolute;
		left: 2em;
	}
	.reviewSec .review{
		max-width: 90vw;
		padding: 13.3vw 8vw;
		margin: 0 auto 15vw;
		display: block;
	}
	.reviewSec .review >div p{
		line-height: 1.87;
		padding-right: 0;
		padding-left:0;
	}
	.reviewSec .review >figure{
		text-align: center;
	}
	.reviewSec .review >figure img{
		width: 53.8vw;
		height:31.2vw;
	}
	.reviewSec .review >figure figcaption{
		font-size: 0.8em;
	}
	.reviewSec .review >div h3{
		margin-top: 5vw;
		padding: 0.5em;
	}
	body.front-top-page .article .reviewSec .review >div {
		margin-right: 0;
		margin-left:0;
	}
	/* SP AREA-SEC */
	.areaSec{
		margin-top: 20vw;
		padding: 25.8vw 7.3vw 29vw;
	}
	.areaSec >p{
		margin-top: 8vw;
		padding: 1em 0;
		border-top: 1px dashed #333333;
		border-bottom: 1px dashed #333333;
		max-width: 90vw;
	}
	.areaSec >div {
		margin-top: 10vw;
		display: block;
		max-width: 80vw;
	}
	.areaSec .areaMap{
		width: 100%;
		margin-bottom:15vw;
	}
	/* マップが非表示でも領域確保 */
	#mapContainer{
		position: relative;
		width:100%;
		height: 65vw; /*SPレスポンシブ*/
	}
	#map-title{
		bottom: -3em;
	}
	#map{
		height:100%;
		width:80vw;
		border: 1px solid #777777;
	}
	#checkAddress{
		display:none;
	}
	#mapSearch{
		display: block;
		text-align: center;
		font-size: 4vw;
	}
	.areaMap >div.catchtxt{
		text-align:center;
		font-size: 0.8em;
		margin-bottom:0.5em;
		position: relative;
		color: #00807A;
	}
	.areaMap >div.catchtxt span.noticeLeft{
		display: inline-block;
		width: 30px;
		height: 30px;
		position: absolute;
		left:1em;
		top:0;
		transform:rotate(-45deg);
		border-left: 1px solid #00807A;
	}
	.areaMap >div.catchtxt span.noticeLeft::after{
		content:"";
		display: inline-block;
		width: 35px;
		height: 35px;
		position: absolute;
		left:-0.5em;
		top:0;
		border-left: 1px solid #00807A;
	}

	.areaMap >div.catchtxt span.noticeRight{
		display: inline-block;
		width: 30px;
		height: 30px;
		position: absolute;
		right:1em;
		top:0;
		transform:rotate(45deg);
		border-right: 1px solid #00807A;
	}
	.areaMap >div.catchtxt span.noticeRight::after{
		content:"";
		display: inline-block;
		width: 35px;
		height: 35px;
		position: absolute;
		Right:-0.5em;
		top:0;
		border-right: 1px solid #00807A;
	}
	#addressInput{
		width: 100%;
		line-height:1.5;
		border: 1px solid #777777;
		padding: 0.5em;
	}
	#map-title{
		font-size: 0.7em;
	}
	#map .gm-style .gm-style-mtc button {
    	font-size: 16px !important;
	}
	#map .gm-style .gm-style-iw.gm-style-iw-c{ 
		max-width: 60vw !important; 
		max-height: 200px !important;
		font-size: 16px; /*SPの基本フォントサイズ*/
	}
	#map .gm-style .gm-style-iw div.gm-style-iw-d{
		font-size: 0.8em; /*infowIndow内の表示サイズ*/
		padding: 1em !important;
	}
	.map-info{
		font-size:1em;
		padding: 0 !important;
	}
	.areaDirection p{
		line-height: 2.37;
	}
	.areaDirection p:first-child{
		margin-bottom: 10.1vw;
	}
	/* SP PRIVILEGE-SEC */
	.privilegeSec > .preSec{
		padding:34.4vw 0 70.1vw;
	}
	.privilegeSec .preH2{
		padding: 0 11.6vw;
		line-height: 2.1; 
		text-align: center;
	}
	.privilegeSec > .preSec > .woman{
		width: 64vw;
		height: 66vw;
		right: initial;
		left: 50%;
		transform: translate(-50%);
	}
	.areaSec span.shape{
		background: url(../image/SP-triangle2.svg) no-repeat center center /contain;
		width: 44vw;
		height: 22vw;
		bottom: -16vw;
	}
	.privilegeSec >p{
		margin-top: 26.6vw;
		padding: 0 10vw;
		line-height: 3;
	}
	.privilegeSec span.bubble {
		width: 100vw;
		height: 30vw;
		top: 204vw;
		background-image: url(/wp-content/uploads/2025/08/SP-430x2-bubble.jpg);
	}

	.privilegeSec .privilege{
		margin-top: 48vw;
		padding: 14.9vw 2.5em 19.4vw;
		height: 114.4vw;
	}
	.privilegeSec .privilege >span{
		background-image: url(/wp-content/uploads/2025/08/SPx2-harigami.png);
		width: 100%;
		height: 600px; /*height固定*/
		left: 50%;
		transform: translate(-50%);
		top: -29vw;
	}
	.privilegeSec .privilege > p:first-of-type{
		margin-top: 0;
	}
	.privilegeSec .privilege > p{
		line-height: 2.25;
	}
	.privilegeSec .contactBtn{
		display:block;
	}
	.privilegeSec .contactBtn{
		margin-top: 15vw;
	}
	.privilegeSec .basic-button.left >p:before{
		width: 6.6vw;
		height: 6.6vw;
	}
	.privilegeSec .basic-button.left >p:after{
		width: 6.6vw;
		height: 6.6vw;
	}
	.privilegeSec .basic-button.right,.privilegeSec .basic-button.left{
		margin-right:0;
		margin-left:0;
	}
	.privilegeSec .basic-button.left{
		margin-bottom: 30vw;
	}
	/* SP アドレス */
	.addressSec{
		padding-top: 40vw;
		padding-bottom:30vw;
		margin-bottom:0;
	}
	.addressSec address{
		width: 100%;
		font-size: 0.8em !important;
	}
	.addressSec p{
		width: 63vw;
		margin-bottom: 4vw !important;
	}
	/* SP-FOOTER */
	body #footer{
		height:auto;
		background-image: url(/wp-content/uploads/2025/08/SPx2-footer_background_PAGE.png);
	}
	body.front-top-page #footer{
		height: auto;
		background-image: url(/wp-content/uploads/2025/08/SPx2-footer_background_TOP.png);
	}
	#footer .footer-bottom-logo{
		display: none;
	}
	#navi-footer .navi-footer-in a{
		border-right: none;
	}
	#footer-in{
		position: relative;
		padding-bottom: 0;
		padding-top:30vw;
	}
	.footer-bottom{
		font-size: 1em;
		padding: 1em 1em 5em 1em; 
	}
	#footer .navi-footer-in > .menu-footer{
		display: block;
	}
	#footer .navi-footer-in > .menu-footer li.menu-item{
		width: 100%;
		margin: 0 0 1.2em 0;
		padding: 0 1em; 
	}
	#footer-in .footer-bottom.fnm-text-width .menu-footer li a{
		padding-right: 1em;
		padding-left: 1em;
	}
	.copyright{
		font-size: 0.8em;
	}		
	/* SP-お知らせトップ */
	body.category-news h1, .page h1 {
		font-size: 1.3em;
		margin: 20vw auto;
		padding: 0.5em 1em;
	}
	body.category-news #list{
		display: block;
		width: 100%;
	}
	body.category-news .entry-card-content{
		width:100%;
		padding-left:0;
	}
	body.category-news .entry-card-title{
		font-size: 1em;
		padding-right: 1em;
		padding-left:1em;
		line-height: 1.7;
	}
	body.category-news #list a{
		margin-bottom: 5vw;
	}
	body.category-news .list.ect-entry-card{
		row-gap: 2em;
	}
	body.category-news .entry-card-content{
		padding-bottom: 1.8em;
	}
	body.category-news .entry-card-info span.entry-date,.post-date, .post-update, .post-author, .amp-back, .entry-category {
		font-size: 0.9em;
	}
	body.category-news .entry-card-meta{
		border-color: #9999;
		width:80vw;
	}
	/* 投稿ページ */
	.single-post h1{
		font-size: 1.2em;
		margin: 15vw auto 0.5em;
		padding: 1em 0;
		width: 80vw;
	}
	.single-post .date-tags{
		width: 80vw;
	}
	.single-post .entry-content.cf {
		padding:0;
		width: 80vw;
		text-indent: 1em;
	}
	/* 固定ページ */
	body.page .menu-page > p{
		text-align: left;
		margin-bottom: 2em;
	}
	body.page .menu-page {
		width: 85vw;
	}
	body.page dl.menuPlan >div {
		margin-bottom: 10vw;
		display:block;
	}
	body.page dl.menuPlan{
		margin-top: 0;
	}
	.page dl.menuPlan >div dd{
		border-left: none;
	}
	body.page .common-question h2, .privacy-policy h2{
		font-size: 1.1em;
	}
	body.page .common-question, .privacy-policy .entry-content.cf{
		max-width: 85vw;
	}
	/* クエスションマーク */
	.question::before{
		top: 50% !important;
		left:1em !important;
		font-size: 30px !important;
	}
	body.page .common-question .question{
		border-radius: 12px;
	}
	body.page .common-question h2{
		padding: 0.5em 1em 0.5em 3em;
		line-height: 1.5;
	}
	body.page .common-question p, .privacy-policy p {
		padding-left: 1em;
		padding-right:1em;
		margin-bottom: 3em;
	}
	/* SP プライバシーポリシー */
	.toc{
		margin-bottom: 20vw !important;
	}
	.privacy-policy h2{
		padding: 1em 0.5em;
	}	
}
