@charset "UTF-8";



/*導入
---------------------------------------------------------*/
.com_lead_box .lead_bg {
	background-image: url("../images/first/m_img@2x.png");
}
.com_lead_box .anc_list {
	width: 100%;
	max-width: 1006px;
	margin-left: auto;
	margin-right: auto;
	display: flex;
    justify-content: space-between;
}
.com_lead_box .anc_list li {
	width: 32%;
	max-width: 312px;
}
.com_lead_box .anc_list a {
	display: block;
	border-top: solid 2px #c0bcb8;
	border-bottom: solid 2px #c0bcb8;
	height: 4.5em;
	position: relative;
}
.com_lead_box .anc_list span {
	display: inline-block;
	position: absolute;
	left: calc(9% + 48px);
	top: 50%;
	transform: translateY(-50%);
	font-size: 95%;
	letter-spacing: .1em;
	line-height: 1.4em;
}
.com_lead_box .anc_list .com_arrow {
	position: absolute;
	left: 5%;
	top: 50%;
	transform: translateY(-50%);
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.com_lead_box .com_lead {
	margin-bottom: 6% !important;
}
.com_lead_box .anc_list {
	width: 80%;
	display: block;
}
.com_lead_box .anc_list li {
	width: 100%;
	max-width: 100%;
	margin-top: 1.0em;
}
.com_lead_box .anc_list li:first-child {
	margin-top: 0;
}
.com_lead_box .anc_list a {
	height: 3.0em;
}
.com_lead_box .anc_list span {
	left: 20%;
}
.com_lead_box .anc_list .com_arrow {
	width: 2.0em;
	height: 2.0em;
}
}



/*当院が大切にしていること
---------------------------------------------------------*/
#philosophy .lead {
	position: relative;
	padding-bottom: 60px;
	margin-bottom: 70px;
}
#philosophy .lead::before {
	content: "";
	position: absolute;
	width: 15%;
	max-width: 150px;
	height: 5px;
	background: #fc945d;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}
#philosophy .lead .img_box {
	text-align: center;
	position: relative;
	margin-bottom: 50px;
}
#philosophy .lead .img_box div {
	position: relative;
	z-index: 0;
	width: 90%;
	margin: 0 auto;
}
#philosophy .lead .img_box .ft_cinzel {
	position: absolute;
	z-index: 1;
	color: #fb7b37;
	font-size: 580%;
	letter-spacing: normal;
	line-height: 1.2em;
	opacity: 0.8;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	transform: translateY(45%);
}
#philosophy .lead .txt {
	text-align: center;
}
#philosophy .lead .txt dt {
	font-size: 180%;
	letter-spacing: .1em;
	line-height: 1.2em;
	margin-bottom: 1.0em;
}

.kodawari h3 {
	width: 85%;
	text-align: center;
	margin: 0 auto 70px;
}
.kodawari ul {
	display: flex;
    justify-content: space-between;
}
.kodawari li {
	width: 31%;
	max-width: 387px;
}
.kodawari li dl {
	margin-top: 30px;
	border-top: solid 1px #c0bcb8;
	padding-top: 30px;
}
.kodawari li dt {
	text-align: center;
	font-size: 150%;
	letter-spacing: .05em;
	line-height: 1.6em;
	margin-bottom: 1.0em;
}
.kodawari li .com_link2 {
	width: 100%;
}

/* 1200px以下
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1200px) {
.kodawari li dt br {
	display: none;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#philosophy .lead {
	padding-bottom: 6%;
	margin-bottom: 6%;
}
#philosophy .lead::before {
	height: 3px;
}
#philosophy .lead .img_box {
	margin-bottom: 6%;
}
#philosophy .lead .img_box .ft_cinzel {
	font-size: 9vw;
}
#philosophy .lead .txt dt {
	font-size: 160%;
	margin-bottom: .6em;
}
#philosophy .lead .txt dd {
	text-align: left;
}

.kodawari h3 {
	margin-bottom: 6%;
}
.kodawari li dl {
	margin-top: 10%;
	padding-top: 8%;
	font-size: 90%;
	letter-spacing: .05em;
	line-height: 1.8em;
}
.kodawari li dt {
	font-size: 140%;
	letter-spacing: normal;
	margin-bottom: .5em;
}
.kodawari li dt br.tb_only,
.kodawari li dt br.tb_br {
	display: block;
}
.kodawari li .com_link2 a {
	padding-left: 3%;
	padding-right: 3%;
	letter-spacing: normal;
}
.kodawari li .com_link2 i {
	right: 0;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#philosophy .lead {
	padding-bottom: 8%;
	margin-bottom: 10%;
}
#philosophy .lead::before {
	height: 2px;
}
#philosophy .lead .img_box {
	margin-bottom: 8%;
}
#philosophy .lead .img_box .ft_cinzel {
	font-size: 300%;
}
#philosophy .lead .txt dt {
	font-size: 150%;
	margin-bottom: .5em;
}
#philosophy .lead .txt dd {
	text-align: left;
}

.kodawari h3 {
	width: 100%;
	margin-bottom: 8%;
}
.kodawari ul {
	display: block;
}
.kodawari li {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	padding: 0 4% 8%;
	border-bottom: solid 2px #c0bcb8;
	margin-bottom: 8%;
}
.kodawari li:nth-child(1) {
	margin-bottom: 4%;
}
.kodawari li:last-child {
	padding-bottom: 0;
	border-bottom: none;
	margin-bottom: 0;
}
.kodawari li h4 {
	width: 65%;
	margin: 0 auto;
}
.kodawari li dl {
	margin-top: 6%;
	padding-top: 4%;
	font-size: 90%;
	line-height: 1.8em;
}
.kodawari li dt {
	font-size: 150%;
	margin-bottom: .3em;
}
.kodawari li .com_link2 {
	width: 80%;
}
}



/*当院の治療方針について
---------------------------------------------------------*/
#policy .bg {
	position: relative;
}
#policy .bg::before,
#policy .bg::after {
	content: "";	/*背景*/
	position: absolute;
	z-index: 0;
	width: 100%;
	left: 0;
	top: 0;
}
#policy .bg::before {
	height: 757px;
background: -moz-linear-gradient(top,  rgba(255,255,191,1) 60%, rgba(255,255,191,0) 100%);
background: -webkit-linear-gradient(top,  rgba(255,255,191,1) 60%,rgba(255,255,191,0) 100%);
background: linear-gradient(to bottom,  rgba(255,255,191,1) 60%,rgba(255,255,191,0) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffbf', endColorstr='#00ffffbf',GradientType=0 );
}
#policy .bg::after {
	z-index: 1;
	height: 100%;
	background: url("../images/first/bg2@2x.png") no-repeat right top;
	background-size: 890px auto;
}
#policy .bg > div {
	position: relative;
	z-index: 2;
}

#policy .pol_lead {
	padding-top: 80px;	
}
#policy .pol_lead .com_index1 {
	color: #75461d;
	opacity: 0.8;
	position: absolute;
	left: 3%;
	top: 0;
	transform: translateY(-50%);
	
}
#policy .pol_lead h2 {
	font-size: 180%;
	letter-spacing: .1em;
	line-height: 1.4em;
	margin-bottom: 70px;	
}
#policy .pol_lead .com_lead {
	width: 100%;
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;	
}
#policy .pol_lead .com_lead > dd {
	width: 100%;	
	max-width: 830px;
}

/* 1500p以下
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1500px) {
#policy .bg::after {
	background-size: 60% auto;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#policy .pol_lead {
	padding-top: 8%;
}
#policy .pol_lead h2 {
	font-size: 160%;
	margin-bottom: 6%;	
}
#policy .pol_lead .com_lead > dd {
	max-width: 100%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#policy .bg::before {
	height: 100vw;
}
#policy .bg::after {
	background-size: 80% auto;
}

#policy .pol_lead {
	padding-top: 10%;
}
#policy .pol_lead h2 {
	font-size: 120%;
	letter-spacing: .05em;
	margin-bottom: 10%;	
}
#policy .pol_lead .com_lead > dd {
	max-width: 100%;	
}
}



/*患者さまへのお願い
---------------------------------------------------------*/
#please .ple_style {
	text-align: center;
}
#please .in_box {
	width: 100%;
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
}
#please .ple_style > dt {
	font-size: 180%;
	letter-spacing: .1em;
	line-height: 1.6em;
	margin-bottom: .5em;
}

#please .box1 .ple_style {
	margin-bottom: 40px;
}
#please .box1 .bg_gray {
	background: rgba(75,64,51,0.08);
	border-radius: 15px;
	padding: 40px 5% 60px;
}
#please .box1 .bg_gray .check_list {
	font-size: 120%;
	letter-spacing: .15em;
	line-height: 1.8em;
}
#please .box1 .bg_gray .check_list > li {
	padding: .8em 0;
	padding-left: 3.0em;
	border-bottom: solid 1px #c0bcb8;
	background: url("../images/check1@2x.png") no-repeat .2em .6em;
	background-size: 2.2em auto;
}

#please .box2 .ple_style > dt {
	display: flex;
    justify-content: center;
    align-items: center;
	text-align: left;
}
#please .box2 .ple_style > dt div {
	width: 25%;
	max-width: 220px;
	margin-right: .5em;
	transform: translateY(-.5em);
}

#please .box3 .txt {
	text-align: center;
}
#please .box3 .txt span {
	font-size: 120%;
}
#please .box3 .not_list {
	width: 100%;
	max-width: 1042px;
	margin-left: auto;
	margin-right: auto;
	display: flex;
    justify-content: space-between;
}
#please .box3 .not_list > li {
	width: 49%;
	max-width: 507px;
	box-sizing: border-box;
	background: rgba(75,64,51,0.08);
	padding: 15px 3%;
	border-radius: 60px;
	display: flex;
    justify-content: space-between;
    align-items: center;
}
#please .box3 .not_list > li div {
	width: 28%;
}
#please .box3 .not_list > li dl {
	width: 70%;
}
#please .box3 .not_list > li dt {
	line-height: 1.6em;
}
#please .box3 .not_list > li dd {
	color: #36607c;
	font-size: 180%;
	letter-spacing: .05em;
	line-height: 1.2em;
	margin-top: .1em;
}

/* 1100p以下
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1100px) {
#please .ple_style > dt {
	font-size: 160%;
	letter-spacing: .05em;
}

#please .box3 .not_list > li {
	padding: 2%;
	font-size: 90%;
}
#please .box3 .not_list > li dd {
	font-size: 3.0vw;
	letter-spacing: normal;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#please .box1 .ple_style {
	margin-bottom: 4%;
}
#please .box1 .bg_gray {
	padding: 3% 4% 5%;
}
#please .box1 .bg_gray .check_list {
	font-size: 110%;
	letter-spacing: .1em;
	line-height: 1.6em;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#please .ple_style {
	text-align: left;
}
#please .ple_style > dt {
	font-size: 130%;
	letter-spacing: normal;
	line-height: 1.4em;
	margin-bottom: .5em;
}

#please .box1 .ple_style {
	margin-bottom: 6%;
}
#please .box1 .bg_gray {
	padding: 4% 4% 6%;
}
#please .box1 .bg_gray .check_list {
	font-size: 110%;
	letter-spacing: .05em;
	line-height: 1.6em;
}
#please .box1 .bg_gray .check_list > li {
	padding-left: 2.6em;
}

#please .box2 .ple_style > dt div {
	width: 35%;
	margin-right: .2em;
	transform: none;
}

#please .box3 .txt {
	text-align: left;
}
#please .box3 .not_list {
	display: block;
}
#please .box3 .not_list > li {
	width: 100%;
	max-width: 100%;
	padding: 3%;
	margin-top: .5em;
}
#please .box3 .not_list > li:first-child {
	margin-top: 0;
}
#please .box3 .not_list > li div {
	width: 26%;
}
#please .box3 .not_list > li dl {
	width: 70%;
	font-size: 90%;
}
#please .box3 .not_list > li dd {
	font-size: 140%;
	letter-spacing: .05em;
	line-height: 1.2em;
	margin-top: .1em;
}
}



/*治療の流れ
---------------------------------------------------------*/
.flow {
	padding: 100px 0 150px;
}
.flow_list > li {
	background: #f7f3e7;
	position: relative;
	padding: 50px 4.5% 70px;
	margin-bottom: 140px;
}
.flow_list > li::before {
	content: "STEP01";
	position: absolute;
	width: 100%;
	left: 0;
	top: 0;
	transform: translateY(-50%);
	text-align: center;
	font-family: new-order, sans-serif;
	font-weight: 500;
	font-style: normal;
	color: #fc945d;
	font-size: 290%;
	letter-spacing: .2em;
	line-height: 1.2em;
}
.flow_list > li::after {
	content: "";	/*矢印*/
	display: block;
	width: 100%;
	height: 34px;
	background: url("../images/first/arrow1@2x.png") no-repeat center center;
	background-size: contain;
	position: absolute;
	left: 0;
	top: calc(100% + 40px);
}
.flow_list > li.arrow2::after {
	background-image: url("../images/first/arrow2@2x.png");
}
.flow_list > li:last-child {
	margin-bottom: 0;
}
.flow_list > li:last-child::after {
	display: none;
}

.flow_list h3 {
	text-align: center;
	font-size: 200%;
	letter-spacing: .1em;
	line-height: 1.6em;
	padding-bottom: 1.2em;
	margin-bottom: 60px;
	position: relative;
}
.flow_list h3::before {
	content: "";
	position: absolute;
	width: 15%;
	max-width: 150px;
	height: 5px;
	background: #fc945d;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}
.flow_list .in_box {
	width: 100%;
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
}
.flow_list .flt_box {
	overflow: hidden;
}
.flow_list .flt_box .img_r {
	float: right;
	width: 40%;
	max-width: 422px;
}
.flow_list .flt_box .txt_l {
	float: left;
	width: 57%;
}
.flow_list .flt_box .com_link2 {
	margin-left: 0;
}

/*問診・カウンセリング*/
.flow_list .emergency {
	margin-top: 1.5em;
	border: solid 2px #d25550;
	padding: 20px 5%;
	font-size: 95%;
	letter-spacing: .15em;
	line-height: 2.0em;
}
.flow_list .emergency dt {
	color: #d25550;
	font-size: 125%;
	letter-spacing: .1em;
	line-height: 1.6em;
	margin-bottom: .5em;
}

/*問題点抽出と診査・診断*/
.flow_list .sub_box1 {
	margin-top: 40px;
	background: #fff;
	border-radius: 20px;
	padding: 30px 6% 50px;
}
.flow_list .sub_box1 dt {
	text-align: center;
	font-size: 180%;
	letter-spacing: .1em;
	line-height: 1.6em;
	margin-bottom: .5em;
}
.flow_list .sub_box1 ul {
	display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.flow_list .sub_box1 li {
	box-sizing: border-box;
	font-size: 120%;
	letter-spacing: .1em;
	line-height: 1.2em;
	padding: .2em 0;
	padding-left: 1.8em;
	background: url("../images/check2@2x.png") no-repeat left top;
	background-size: 1.5em auto;
	margin: 1.5em .5em 0;
}

.flow_list > li:nth-child(2)::before {content: "STEP02";}
.flow_list > li:nth-child(3)::before {content: "STEP03";}
.flow_list > li:nth-child(4)::before {content: "STEP04";}
.flow_list > li:nth-child(5)::before {content: "STEP05";}
.flow_list > li:nth-child(6)::before {content: "STEP06";}
.flow_list > li:nth-child(7)::before {content: "STEP07";}
.flow_list > li:nth-child(8)::before {content: "STEP08";}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.flow {
	padding: 8% 0 10%;
}
.flow_list > li {
	padding: 5% 4% 6%;
	margin-bottom: 10vw;
}
.flow_list > li::before {
	font-size: 240%;
}
.flow_list > li::after {
	height: 3vw;	/*矢印*/
	top: calc(100% + 2.5vw);
}

.flow_list h3 {
	font-size: 180%;
	padding-bottom: .6em;
	margin-bottom: 5%;
}
.flow_list h3::before {
	height: 3px;
}
.flow_list .flt_box .img_r {
	margin-left: 3%;
	margin-bottom: 1.0em;
}
.flow_list .flt_box .txt_l {
	float: none;
	width: 100%;
}

/*問診・カウンセリング*/
.flow_list .emergency {
	padding: 2% 4%;
	letter-spacing: .1em;
	line-height: 1.8em;
}

/*問題点抽出と診査・診断*/
.flow_list .sub_box1 {
	margin-top: 6%;
	padding: 4%;
}
.flow_list .sub_box1 dt {
	font-size: 160%;
	margin-bottom: .3em;
}
.flow_list .sub_box1 ul {
	width: 530px;
	margin: 0 auto;
	display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.flow_list .sub_box1 li {
	width: 50%;
	margin: 1.0em 0 0;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.flow {
	padding: 10% 0 14%;
}
.flow .scl_area {
	position: relative;
}
.flow .scl_area p {
	width: 200%;
	padding-bottom: 1.0em;
}
.flow_list > li {
	padding: 8% 4%;
	margin-bottom: 15vw;
}
.flow_list > li::before {
	font-size: 180%;
}
.flow_list > li::after {
	height: 4vw;	/*矢印*/
	top: calc(100% + 3vw);
}

.flow_list h3 {
	font-size: 150%;
	letter-spacing: .05em;
	padding-bottom: .5em;
	margin-bottom: 8%;
	position: relative;
}
.flow_list h3::before {
	height: 2px;
}
.flow_list .flt_box .img_r {
	float: none;
	width: 60%;
	margin: 0 auto 1.0em;
}
.flow_list .flt_box .txt_l {
	float: none;
	width: 100%;
}
.flow_list .flt_box .com_link2 {
	margin-left: auto;
}

/*問診・カウンセリング*/
.flow_list .emergency {
	padding: 4%;
	font-size: 90%;
	letter-spacing: normal;
	line-height: 1.6em;
}

/*問題点抽出と診査・診断*/
.flow_list .sub_box1 {
	margin-top: 6%;
	padding: 5%;
}
.flow_list .sub_box1 dt {
	font-size: 140%;
	letter-spacing: .05em;
	margin-bottom: .3em;
}
.flow_list .sub_box1 ul {
	width: 80%;
	margin: 0 auto;
	display: block;
}
.flow_list .sub_box1 li {
	font-size: 110%;
	padding: .2em 0;
	padding-left: 1.8em;
	background-position: left .2em;
	margin: .5em 0 0;
}
}



/*
---------------------------------------------------------*/

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
}