.SP {
display: none;
}

@media screen and (max-width: 750px) {
.SP {
display: block;
}
}

/*==========================
下層メインビジュアル
==========================*/
#ContmainImg {
margin-top: 130px;
position: relative;
z-index: 0;
overflow: hidden;
background: #D7E9DA;
padding: 40px;
line-height: 1.7;
text-align: center;
font-weight: 200;
letter-spacing: 0.05em;
}

#ContmainImg span {
font-weight: 400;
}

#ContmainImg {
background: #D7E9DA url(../img/cont_mainimg_news.jpg) no-repeat center bottom;
background-size: cover;
}


@media screen and (max-width: 980px) {
#ContmainImg {
margin-top: 120px;
}
}

@media screen and (max-width: 900px) {
#ContmainImg {
margin-top: 150px;
}
}

@media screen and (max-width: 830px) {
#ContmainImg {
margin-top: 170px;
}
}

@media screen and (max-width: 750px) {
#ContmainImg {
margin-top: 75px;
}
}

#ContmainImg h2 {
font-size: 1.6em;
}

#ContmainImg h2 strong {
font-weight: 300;
border-bottom: 3px solid #759270;
}

#ContmainImg span {
font-size: 0.8em;
}

/*==========================
下層コンテンツ共通
==========================*/
.ContBox {
max-width: 1000px;
margin: auto;
overflow: hidden;
position: relative;
padding-bottom: 2rem;
padding-top: 2rem;
padding-left: 20px;
padding-right: 20px;
box-sizing: border-box;
clear: both;
}

.ContBox.hBorder100 {
border-bottom: 1px solid #CCC;
}

.ContBox h3 {
font-size:1.4em;
font-weight: 300;
text-align: center;
line-height: 1.4;
padding-bottom: 1rem;
}

@media screen and (max-width: 750px) {
.ContBox h3 {
font-size:1.6em;
}
}

.ContBox p {
font-size:0.9em;
line-height: 1.9;
}

.ContBox p.pb20 {
padding-bottom: 20px;
}

.ContBox p.pb40 {
padding-bottom: 40px;
}

.ContBox p.small {
font-size: 0.75em;
}

.ContBox .txt_center {
text-align: center;
}

.ContBox a {
	color:#006E89;
}

.ContBox a:hover {
	text-decoration:none;
}

.ContBox a i {
	padding-right:5px;
}

/* クリア罫線 */
hr {
clear: both;
padding: 0;
margin: 0;
padding-top: 30px;
margin-bottom: 60px;
border: 0;
border-bottom: 1px solid #DDD;
}

/* 写真配置 */
.phRight {
float: right;
padding-left: 20px;
padding-bottom: 20px;
}

.phLeft {
float: left;
padding-right: 20px;
padding-bottom: 20px;
}

.phw40 {
width: 40%;
min-width: 200px;
}

.phw50 {
width: 50%;
min-width: 200px;
}

.phw60 {
width: 60%;
min-width: 200px;
}

@media screen and (max-width: 750px) {
.phRight {
width: 100vw;
min-width: 100vw;
float: none;
padding-left: 0;
padding-bottom: 20px;
margin:0 -20px;
}
.phLeft {
width: 100vw;
min-width: 100vw;
float: none;
padding-left: 0;
padding-bottom: 20px;
margin:0 -20px;
}
}

.phFrame img {
display: block;
border: 5px solid #FFF;
box-sizing: border-box;
box-shadow: 0 2px 4px rgba(0,0,0,0.3);
}

@media screen and (max-width: 750px) {
.phFrame img {
display: block;
border: 0;
box-sizing: border-box;
box-shadow: 0 0 0 rgba(0,0,0,0.3);
}
}

.phRotateRight {
-webkit-transform: rotate(2deg);
transform: rotate(2deg);
}

.phRotateLeft {
-webkit-transform: rotate(-2deg);
transform: rotate(-2deg);
}

@media screen and (max-width: 750px) {
.phRotateRight {
-webkit-transform: rotate(0);
transform: rotate(0);
}
.phRotateLeft {
-webkit-transform: rotate(0);
transform: rotate(0);
}
}

/* PDFボタン */
.PDF_link {
padding-top: 10px;
padding-bottom: 10px;
}

.PDF_link a {
background: #D81E28;
display: inline-block;
padding: 8px;
padding-left: 20px;
padding-right: 20px;
color: #FFF;
border-radius: 3px;
font-size: 1em;
text-decoration: none;
box-shadow: 0 2px 0 rgba(216, 30, 40,0.3);
}

.PDF_link a:hover {
opacity: 0.7;
}

.PDF_link a i {
padding-right: 5px;
}

.btn_center {
text-align: center;
}

/* 施術メニュー下部のお問い合わせ */
.menu_contact {
background: #D7E8DA;
text-align: center;
}

.menu_contact h3 {
color: #759270;
}

.menu_contact address {
font-size: 2.4em;
font-weight: 100;
padding-bottom: 20px;
}

@media screen and (max-width: 750px) {
.menu_contact h3 {
font-size: 1.4em;
font-weight: 400;
}

.menu_contact address {
font-size: 1.8em;
}
}

.menu_contact .contact_btn {
padding-top: 25px;
padding-bottom: 20px;
}

.menu_contact .contact_btn a {
background: #759270;
color: #FFF;
padding: 10px;
padding-left: 20px;
padding-right: 20px;
text-decoration: none;
border-radius: 4px;
box-shadow: 0 2px 0 rgba(0,0,0,0.2);
}

/*==========================
20221230
==========================*/
.ContBox .title {
	text-align: left;
	font-weight: 700;
}
.ContBox .title .underline {
	border-bottom: 3px solid #759270;
}

.ContBox .textbox {
	padding-bottom: 1.6em;
}

.ContBox .textbox .catch {
	font-size: 1.2em;
}

.ContBox .textbox .text {
	padding-bottom: 1em;
}

.ContBox .textbox .text .small {
	font-size: 0.8em;
}

.ContBox .textbox .list {
	padding: 1em 0 0.4em;
}

.ContBox .textbox .list .link {
	padding-bottom: 0.8em;
}

.ContBox .textbox .list .link a::before {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 0 4px 5px;
	border-color: transparent transparent transparent #006E89;
	margin-right: 0.4em;
}

.ContBox .flexbox {
	display: flex;
	flex-direction: row-reverse;
	flex-wrap: wrap;
	justify-content: space-between;
}

.ContBox .flexbox:nth-child(even) {
	flex-direction: row;
}

.ContBox .flexbox .textbox {
	width: 55%;
}

@media screen and (max-width: 750px) {
	.ContBox .flexbox .textbox {
		width: 100%;
	}
}

/*==========================
20240306
==========================*/
#InsoleWrapper {
	padding-top: 2em;
}
#InsoleWrapper .textbox .list_text {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-bottom: 1em;
}

#InsoleWrapper .textbox .list_text.bold {
	font-weight: 700;
}

#InsoleWrapper .textbox .list_text .text {
	font-size: 0.9em;
  line-height: 1.9;
	width: 50%;
	padding-bottom: 0;
}

@media screen and (max-width: 750px) {
	#InsoleWrapper .textbox .list_text .text {
		width: 100%;
		text-indent: -0.6em;
		margin-left: 1.5em;
		line-height: 1.65;
		padding-bottom: 0.4em;
	}
	#InsoleWrapper .textbox .list_text .text:last-child {
		padding-bottom: 0;
	}
}

#InsoleWrapper .textbox .list_text .text::before {
	content: "●";
	display: inline-block;
	color: #42A36F;
	padding-right: 0.2em;
}

#InsoleWrapper .textbox .list_text .text.full {
	width: 100%;
}

.ContBox .textbox .text .big_text {
	font-size: 1.2em;
}

.ContBox .textbox .text .marker {
	background: linear-gradient(transparent 60%, yellow 0%);
}

.ContBox .textbox .sec_title {
	font-weight: 700;
	color: #42A36F;
	text-align: left;
	border-bottom: 2px solid #42A36F;
	padding-bottom: 0.5em;
	margin-bottom: 1em;
}

@media screen and (max-width: 750px) {
	.ContBox .textbox .sec_title {
		text-align: center;
		padding-bottom: 0.2em;
	}
}

.ContBox .textbox .sec_title .small_text {
	font-size: 0.8em;
	display: inline-block;
	padding-right: 0.2em;
}

@media screen and (max-width: 750px) {
	.ContBox .textbox .sec_title .small_text {
		font-size: 0.7em;
		display: block;
		padding-right: 0;
		padding-bottom: 0.1em;
	}
}