@charset "utf-8";

#pv-area{
	position: relative;
	background-position: center 50%;
	background-size: cover;
	padding:30px 0;
	margin: auto;
}
#pv-area h2.pv-catch{
	color: #000;
    font-size: 24px;
    font-weight: bold;
	position: relative;
	z-index: 10;
}
#pv-area b{
	background: linear-gradient(transparent 60%, #e4dab6 60%);
}
#pv-area .pv-overlay{
	position: absolute;
	left: 0;
	top: 0;
	background: rgba(255,255,255,.3);
	width: 100%;
	height: 100%;
}

/*固定記事のみに反映するCSS*/


article.page-template{
}
article.page-template p{
	margin: 20px auto;
}
article.page-template img{
	display: block;
	width: auto;
	max-width: 100%;
    margin: auto;
}
article.page-template h2,.relative_post h2{
	font-size: 130%;
	line-height: 1.4;
	font-weight: bold;
	border-bottom: 2px solid #ddd;
	padding: 0 0 2px;
	margin: 30px auto 10px;
}
article.page-template h3{
	font-size: 110%;
	line-height: 1.4;
	font-weight: bold;
	border-left: 4px solid #ddd;
	margin: 30px auto 10px;
	padding-left: 10px;
}
article.page-template b,article.page-template strong{
	background: linear-gradient(transparent 60%, #e4dab6 60%);
}
article.page-template h4{
	font-size: 110%;
	line-height: 1.4;
	font-weight: bold;
	margin: 30px auto 10px;
}
article.page-template h4::before{
	content: '◆';
	margin-right: 4px;
}
article.page-template blockquote{
	position: relative;
	border: 1px solid #eee;
	background: #f8f8f8;
	padding: 30px 35px;
	margin: 20px auto;
}
article.page-template blockquote::before{
	content: '“';
	position: absolute;
	color: #ddd;
	left: 5px;
	top: 10px;
	font-size: 40px;
    line-height: 1;
}
article.page-template blockquote::after{
	content: '”';
	position: absolute;
	color: #ddd;
	right: 5px;
	top: 10px;
	font-size: 40px;
    line-height: 1;
}
article.page-template ul{
	border: 1px dashed #eee;
	padding: 30px;
	margin: 20px auto;
}
article.page-template ul li{
    text-indent: -.7em;
}
article.page-template ul li::before{
	content: '■';
    margin-right: 6px;
}

article.page-template table{
	width: 100%;
	border:1px solid #ccc;
	margin: 20px auto;
	box-sizing:border-box;
}
article.page-template table th,article.page-template table td{
	padding: 5px 10px;
	text-align: left;
	border:1px solid #ccc;
	box-sizing:border-box;
}
article.page-template table th{
	background: #f8f8f8;
	font-weight: bold;
}
article.page-template .img-table{
	margin: 20px auto;
}
article.page-template .img-table .img-table-img{
	float:left;
	width:40%;
}
article.page-template .img-table table{
	float:right;
	width:56%;
}
article.page-template ul#sitemap_list{
}
.mw_wp_form table td input[type="text"]#your-age{
	width:30px;
}
span.mwform-checkbox-field.horizontal-item {
    margin-left: 10px;
    display: block;
}

.form .attention{
    margin: auto auto 30px;
}
sup{
	color:#c30000;
	margin-right:2px;
}
table td input[type="text"],table td input[type="email"]{
	border:1px solid #ccc;
	background:#fff;
	padding:2px 5px;
	font-size:14px;
	box-sizing:border-box;
}
table td textarea{
	border:1px solid #ccc;
	background:#fff;
	padding:2px 5px;
	font-size:14px;
	box-sizing:border-box;
}
article.page-template ul.form-btn{
	text-align:center;
	margin:30px auto auto;
	font-size:0;
	letter-spacing:-2em;
	border:none;
	padding:0;
}
article.page-template ul.form-btn li{
	display:inline-block;
	font-size:16px;
	letter-spacing:normal;
	vertical-align:top;
	text-indent: inherit;
}
article.page-template ul.form-btn li::before{
	content:'';
	margin-right:auto;
}
article.page-template ul.form-btn li input{
   -webkit-appearance: none;
   border-radius: 0;
	padding:10px 15px;
	border:none;
	color:#fff;
	box-sizing:border-box;
	margin:10px;
}
article.page-template ul.form-btn li.submit-btn input{
	width:300px;
}
article.page-template ul.form-btn li.back-btn input{
	width:200px;
	background:#bbb;
	color:#fff;
}
#comments-box .comment-form-comment label{
font-size:0;
}
#comments-box .comment-form-comment label:before {font-size: 16px; content: "体験談";}
.comment-awaiting-moderation{
	font-weight:bold;
	color:#f00;
}
#comments-box .comment-awaiting-moderation{
font-size:0;
}
#comments-box .comment-awaiting-moderation:before {font-size: 14px; content: "あなたの体験談は管理者の承認待ちです。これはプレビューで、体験談は承認後に表示されます。";
	font-weight:bold;
	font-style:normal;
	color:#f00;
}


/**カスタム2020**/
article.page-template ul.p-feature{
	border:none;
	padding:0;
	background:none;
}
article.page-template ul.p-feature li{
	width:100%;
	margin:auto;
	list-style:none;
	padding:0;
	text-indent: inherit;
}
article.page-template ul.p-feature li::before{
	content:'';
	margin:auto;
}
article.page-template ul.p-feature li .p-feature-image{
	float:left;
	width:40%;
	height:200px;
}
article.page-template ul.p-feature li .p-feature-text{
	float:right;
	width:60%;
	padding:50px 30px;
	box-sizing:border-box;
}
article.page-template ul.p-feature li:nth-child(even) .p-feature-image{
	float:right;
}
article.page-template ul.p-feature li:nth-child(even) .p-feature-text{
	float:left;
}
article.page-template ul.p-feature li .p-feature-text h3{
	margin-top:auto;
}

article.page-template ul.flow{
}
article.page-template ul.flow li{
	width:100%;
	position:relative;
	margin:15px auto;
	list-style:none;
	padding:0;
	text-indent: inherit;
}
article.page-template ul.flow li:not(:first-child) {
	margin-top: 30px;
}
article.page-template ul.flow li .flow-image{
	float:left;
	width:28%;
}
article.page-template ul.flow li .flow-image img {
	width: auto;
	height: 180px;
}
article.page-template ul.flow li .flow-text{
	font-family: 'Noto Sans JP', sans-serif;
}
article.page-template ul.flow li .flow-body{
	float:right;
	width:71%;
}
article.page-template ul.flow li .step{
	/* position:absolute;
	z-index:10; */
	display:inline-block;
	background:#8c8272;
	color:#fff;
	line-height: 1;
    padding: 3px 5px;
	font-size: 20.7px;
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	/* left:-5px;
	top:-5px; */
}
article.page-template ul.flow li::before{
	content:'';
	margin:auto;
}
article.page-template ul.flow li .step b{
	background:none;
	font-size: 19px;
	font-weight: normal;
}
article.page-template ul.flow li h3{
	border:none;
	margin-top: 13px;
	margin-bottom: 4px;
	color:#998679;
	padding-left:0;
	font-size: 18px;
}

.doctor-photo{
	float:left;width:200px;
}
.doctor-textarea{
	float:right;
	width:calc(100% - 220px);
}
article.page-template ul.gallery{
	background:none;
	font-size:0;
	letter-spacing:-2em;
	width:100%;
	max-width:800px;
	margin:auto;
	border:none;
	padding:0;
}
article.page-template ul.gallery li{
	display:inline-block;
	width:49%;
	margin:15px auto;
}
article.page-template ul.gallery li:first-child{
	width:100%;
}
article.page-template ul.gallery li:nth-child(even){
	margin-right:2%;
}
article.page-template .front-access p{
	margin: auto;
	font-size: 90%; 
	line-height: 1.4;
}
article.page-template .front-access h4::before{
	content:'';
	margin:auto;
}
article.page-template .front-access h4{
	font-size:100%;
	margin:auto;
}


@media (max-width: 780px) {
	#pv-area h2.pv-catch{
		font-size:18px;
	}
	#footer-cv{
		padding:30px 0;
	}
	table td textarea{
		width:100%;
		box-sizing:border-box;
	}
	/* article.page-template ul.flow li .flow-textarea h3{
		padding-top:35px;
	}
	.flow-text.sp-only{
		float:left;
		width:100%;
		margin:5px auto auto;
	} */
	article.page-template ul.flow li .step{
		padding: 1.2vw;
		font-size: 6vw;
		/* top:0;
		left:32%;
		padding:1px 15px; */
	}
	article.page-template ul.flow li .step b {
		font-size: 5vw;
	}
	article.page-template ul.flow li .flow-image,
	article.page-template ul.flow li .flow-body {
		float: none;
		width: 100%;
	}
	article.page-template ul.flow li .flow-image img {
		width: 100%;
		height: auto;
	}
	article.page-template ul.flow li .flow-body {
		margin-top: 4.5vw;
	}
	article.page-template ul.flow li h3 {
		margin-top: 3vw;
		font-size: 5.3vw;
	}
	article.page-template ul.flow li .flow-text {
		text-align: justify;
		font-size: 3.2vw;
	}
	article.page-template ul.flow li:not(:first-child) {
		margin-top: 14vw;
	}
	article.page-template ul.flow {
		padding: 0 10px;
		border: 0;
	}
}

@media (max-width: 600px) {
	article.page-template ul.p-feature li {
		margin:auto auto 15px;
	}
	article.page-template ul.p-feature li .p-feature-image{
		float:none;
		width:100%;
		margin:auto auto 10px;
	}
	article.page-template ul.p-feature li .p-feature-text{
		float:none;
		width:100%;
		padding:0;
	}
	/* article.page-template ul.flow li h3{
		margin-top:auto;
	} */
	#content-area .front-feature h3.feature-title{
		font-size:120%;
	}
}
@media (max-width: 480px) {
	#pv-area{
		margin:auto auto 10px;
	}
	#pv-area h2.pv-catch{
		font-size:14px;
	}
	article.page-template blockquote{
		padding: 15px 20px;
	}
	article.page-template ul{
		padding:15px 20px;
	}
	article.page-template h2, .relative_post h2{
		font-size:120%;
	}

	article.page-template .img-table .img-table-img{
		float:none;
		width:100%;
		margin:auto auto 10px;
	}
	article.page-template .img-table table{
		float:right;
		width:100%;
	}
	#footer-cv{
		padding:20px 0;
	}
	.doctor-photo{
		float:none;
		width:100%;
		max-width:150px;
		margin:auto;
	}
	.doctor-textarea{
		float:none;
		width:100%;
		margin:10px auto auto;
	}
}