@charset "UTF-8";

/*main_img
---------------------------------------------------------*/
.m_img_area{
	background-image: url(../images/clinic/m_img@2x.jpg);
	margin-bottom: 90px;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.m_img_area {
	margin-bottom: 9%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.m_img_area {
	margin-bottom: 0;
}
}



/*共通
---------------------------------------------------------*/
.main_title {
	font-size: 187%;
	font-weight: bold;
	letter-spacing: .2em;
	line-height: 1.6em;
}
.sub_txt dt {
	font-size: 120%;
	font-weight: bold;
	letter-spacing: .2em;
	line-height: 1.6em;
	margin-bottom: 0.8em;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.main_title {
	font-size: 167%;
	letter-spacing: .1em;
}
.sub_txt dt {
	letter-spacing: .1em;
	line-height: 1.5em;
	margin-bottom: 0.5em;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.main_title {
	font-size: 147%;
	letter-spacing: 0.05em;
	text-align: center;
}
.sub_txt dt {
	letter-spacing: 0.05em;
	line-height: 1.5em;
	text-align: center;
	margin-bottom: 0.4em;
}
}



/*concept
---------------------------------------------------------*/
.concept {
	padding-bottom: 110px;
	position: relative;
	z-index: 2;
}
.concept .w970 {
	position: relative;
}
.concept h3 {
	position: absolute;
	max-width: 310px;
	width: 32%;
	left: 0;
	top: -115px;
	z-index: 3;
}
.concept p {
	max-width: 620px;
	width: 64%;
	float: right;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.concept {
	padding-bottom: 11%;
}
.concept h3 {
	top: -12vw;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.concept {
	padding-bottom: 10%;
}
.concept .w970{
	width: 100%;
	padding: 0;
}
.concept h3 {
	position: static;
	max-width: 100%;
	width:100%;
	margin: 0 auto 5%;
}
.concept p {
	max-width:90%;
	width: 90%;
	margin: 0 auto;
	float: none;
}
}



/*kensyu_box
---------------------------------------------------------*/
.kensyu_box {
	background: #F8F5F0;
}
.kensyu_box .max1500{
	position: relative;
	z-index: 1;
}
.kensyu_box .abs_img li{
	position: absolute;
	display: block;
	z-index: -1;
}
.kensyu_box .abs_img li:nth-child(1){
	max-width: 215px;
	width: 14.334%;
	left: 1.5%;
	top:0;
	transform: translateY(-45%);
}
.kensyu_box .abs_img li:nth-child(2){
	max-width: 180px;
	width: 12%;
	left: 14%;
	right: 0;
	margin: auto;
	top:0;
	transform: translateY(-47%);
}
.kensyu_box .abs_img li:nth-child(3){
	max-width: 248px;
	width: 16.534%;
	right: 4%;
	top:0;
	transform: translateY(-65%);
}
.kensyu_box .abs_img li:nth-child(4){
	max-width: 180px;
	width: 12%;
	left: 3.5%;
	bottom: 0;
	transform: translateY(25%);
}
.kensyu_box .abs_img li:nth-child(5){
	max-width: 215px;
	width: 14.334%;
	right: 3.5%;
	bottom: 0;
	transform: translateY(20%);
}
.kensyu_box .w970 {
	padding: 70px 0 40px;
}
.kensyu_box .flt_l {
	max-width: 610px;
	width: 63%;
}
.kensyu_box h4 {
	max-width: 218px;
	width: 12.2em;
	font-size: 120%;
	margin-bottom: 1.6em;
}
.kensyu_box .flt_l ul {
	border-left: solid 2px #5F4C3D;
	padding-left: 0.67em;
	font-weight: bold;
	letter-spacing: .15em;
	line-height: 1.6em;
	margin-bottom: 1.34em;
}
.kensyu_box .flt_l li {
	background: url(../images/clinic/icon.png) no-repeat left top 0.6em;
	background-size: 0.54em 0.54em;
	padding-left: 1.13em;
}
.kensyu_box .flt_r {
	max-width: 310px;
	width: 32%;
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1415px) {
.kensyu_box .abs_img li:nth-child(1){
	transform: translateY(-65%);
}
.kensyu_box .abs_img li:nth-child(2){
	transform: translateY(-47%);
}
.kensyu_box .abs_img li:nth-child(3){
	transform: translateY(-65%);
}
.kensyu_box .abs_img li:nth-child(4){
	transform: translateY(75%);
}
.kensyu_box .abs_img li:nth-child(5){
	transform: translateY(30%);
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.kensyu_box .w970 {
	padding: 7vw 0 4vw;
}
.kensyu_box .flt_l {
	float: none;
	max-width: 100%;
	width: 100%;
}
.kensyu_box .flt_r {
	margin-left: 4%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.kensyu_box .w970 {
	padding: 10% 0;
}
.kensyu_box h4 {
	margin: 0 auto 1.6em;
}
.kensyu_box .flt_l {
	max-width: 100%;
	width: 100%;
	float: none;
	margin-bottom: 4%;
}
.kensyu_box .flt_l ul {
	border-left: none;
	border-top: solid 1px #5F4C3D;
	border-bottom: solid 1px #5F4C3D;
	padding-left: 0;
	padding: 1.25em 0;
	font-weight: bold;
	letter-spacing: .15em;
	line-height: 1.6em;
	margin-bottom: 1.34em;
}
.kensyu_box h4 {
	margin-bottom: 1em;
}
.kensyu_box .flt_r {
	width:90%;
	float: none;
	margin: 0 auto 6vw;
}
}



/*reception
---------------------------------------------------------*/
#reception .reception_bg{
	padding: 110px 0 120px;
}
#reception .w970 {
	position: relative;
}
#reception .copy {
	position: absolute;
	max-width: 310px;
	width: 32%;
	right: -20px;
	top: -55px;
}
#reception h3 {
	margin-bottom: 0.5em;
}
#reception .img{
	max-width: 970px;
	margin: 30px auto 0;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1015px) {
#reception .txt{
	width: 67%;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#reception .reception_bg {
	padding: 11% 0 12%;
}
#reception .copy {
	position: absolute;
	right: -2vw;
	top: -5.5vw;
}
#reception .img{
	margin: 3% auto 0;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#reception .reception_bg {
	padding: 10% 0 8%;
	margin-bottom: 8%;
	border-bottom: 1px solid rgba(95,76,61,0.30);
}
#reception .copy {
	display: none;
}
#reception .img{
	margin: 5vw auto 0;
}
}



/*treatmentroom
---------------------------------------------------------*/
#treatmentroom .first_box {
	position: relative;
	padding-bottom: 40px;
}
#treatmentroom .first_box .copy {
	position: absolute;
	max-width: 310px;
	width: 32%;
	left: -20px;
	top: -60px;
	z-index: 3;
}
#treatmentroom .first_box .in_box {
	max-width: 645px;
	width: 67%;
	float: right;
}
#treatmentroom .first_box .main_title {
	margin-bottom: 0.5em;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#treatmentroom .first_box {
	padding-bottom: 4%;
}
#treatmentroom .first_box .copy {
	left: -2vw;
	top: -6vw;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#treatmentroom .first_box {
	padding-bottom: 6%;
}
#treatmentroom .first_box .copy {
	display: none;
}
#treatmentroom .first_box .in_box {
	max-width: 100%;
	width: 100%;
	float: none;
}
}



/*separate
---------------------------------------------------------*/
#separate dt {
	color: #95B500;
}
#separate .bg_box{
	position: relative;
	z-index: 1;
}
#separate .flex_box{
	max-width: 1235px;
	width: 100%;
	margin-left: 0;
	margin-right: auto;
	display: flex;
	justify-content: space-between;
}
#separate .flex_box .img_l{
	max-width: 750px;
	width: 61%;
}
#separate .flex_box .txt_r {
	padding-top: 60px;
	max-width: 425px;
	width: 35%;
}
#separate .flex_box .txt_r .img{
	max-width: 506px;
	width: 120%;
	margin-bottom: -45px;
	margin-top: 15px;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1500px) {
#separate .flex_box{
	justify-content: flex-start;
	margin-left: auto;
}
#separate .flex_box .img_l{
	max-width: 750px;
	width: 50%;
}
#separate .flex_box .txt_r {
	padding-top:3vw;
	max-width: 50%;
	width: 50%;
	padding-left: 4vw;
	padding-right: 4vw;
	box-sizing: border-box;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#separate .flex_box .txt_r .img{
	margin-bottom: -4.5vw;
	margin-top: 1.5vw;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#separate {
	margin-bottom: 8%;
}
#separate .flex_box{
	max-width: 90%;
	width: 90%;
	margin: 0 auto;
	display: block;
}
#separate .flex_box .img_l{
	width: 100%;
	margin: 0 auto 5vw;
}
#separate .flex_box .txt_r {
	padding-top: 0;
	max-width: 100%;
	width: 100%;
}
#separate .flex_box .txt_r .img{
	width:80%;
	margin: 0 auto;
	margin-top: 1em;
}
}



/*private
---------------------------------------------------------*/
#private dt {
	color: #95B500;
}
#private .flex_box{
	max-width: 1235px;
	margin-left: auto;
	margin-right: 0;
	display: flex;
	justify-content: space-between;
}
#private .flex_box .img_r{
	max-width: 750px;
	width: 61%;
}
#private .flex_box .txt_l {
	padding-top: 60px;
	width: 425px;
}
#private .flex_box .txt_l .img{
	max-width: 630px;
	width: 148.24%;
	margin-left: -48.24%;
	margin-top: 15px;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1500px) {
#private .flex_box{
	justify-content: flex-start;
	margin-right: auto;
}
#private .flex_box .img_r{
	max-width: 750px;
	width: 50%;
}
#private .flex_box .txt_l {
	padding-top:0;
	max-width: 50vw;
	width: 50%;
	padding-right: 4vw;
	padding-left: 4vw;
	box-sizing: border-box;
}
#private .flex_box .txt_l .img{
	margin-left: -25%;
	position: relative;
	z-index: 1;
}
}

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

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#private .flex_box{
	max-width: 90%;
	width: 90%;
	margin: 0 auto;
	display: flex;
	flex-direction: column-reverse;
    flex-wrap: wrap;
}
#private .flex_box .img_r{
	width: 100%;
	margin: 0 auto 5vw;
}
#private .flex_box .txt_l {
	padding-top:0;
	width:100%;
}
#private .flex_box .txt_l .img{
	width:100%;
	margin: 0 auto;
	margin-top: 1em;
}
}



/*counseling
---------------------------------------------------------*/
#counseling .counseling_bg{
	padding-bottom: 80px;
}
#counseling .w970{
	position: relative;
}
#counseling .copy{
	position: absolute;
	max-width: 310px;
	width: 32%;
	right: -2%;
	top:0;
	z-index: 2;
}
#counseling .flex_box{
	position:relative;
	display: flex;
	justify-content: space-between;
}
#counseling .flex_box .txt_l{
	max-width:480px;
	width: 51%;
	padding-top: 80px;
}
#counseling .flex_box .txt_l .in_box{
	max-width: 450px;
	width: 93.75%;
}
#counseling .flex_box .txt_l h3 {
  margin-bottom: 0.5em;
}
#counseling .flex_box .txt_l .img{
	max-width: 500px;
	width: 104.167%;
	margin-left: -4.167%;
	margin-top: 15px;
}
#counseling .flex_box .img_r{
	max-width:430px;
	width: 45%;
	padding-top: 170px;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1030px) {
#counseling .flex_box .txt_l{
	padding-top: 7.77vw;
}
#counseling .flex_box .img_r{
	padding-top: 16.505vw;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#counseling .counseling_bg{
	padding-bottom: 8%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#counseling .counseling_bg{
	padding:8% 0 10%;
    margin-top: 8%;
    border-top: 1px solid rgba(95,76,61,0.30);
}
#counseling .copy{
	display: none;
}
#counseling .flex_box{
	display: block;
}
#counseling .flex_box .txt_l{
	max-width:100%;
	width: 100%;
	padding-top: 0;
}
#counseling .flex_box .txt_l .in_box{
	max-width: 100%;
	width: 100%;
}
#counseling .flex_box .txt_l .img{
	display: none;
}
#counseling .flex_box .img_r{
	max-width:640px;
	width: 100%;
	padding-top: 0;
	margin: 5% auto 0;
	text-align: center;
}
}


/*kidsroom
---------------------------------------------------------*/
#kidsroom .kidsroom_bg{
	background: #FFF9C1;
	margin-bottom: 90px;
}
#kidsroom .w970 {
	padding: 40px 0 65px;
	text-align: center;
	position: relative;
}
#kidsroom h3 {
	max-width: 900px;
	margin: 0 auto 30px;
}
#kidsroom .link_btn{
	font-size: 120%;
	font-weight: bold;
	letter-spacing: .15em;
	line-height: 1.0em;
	width: 17.777778em;
	margin: 30px auto 0;
}
#kidsroom .link_btn a{
	display: block;
	background: #fff;
	border-radius: 2em;
	padding: 0.8em 0;
	color: #95B500;
	text-align: center;
	border: 2px solid #95B500; 
}
#kidsroom .link_btn a:hover{
	background:  #95B500;
	color: #fff;
}
#kidsroom .link_btn a span{
	padding-right: 1.2em;
	position: relative;
}
#kidsroom .link_btn a span::before{
	position: absolute;
	content: "";
	background: url(../images/arrow5.png) no-repeat right center;
	background-size: 100% 100%;
	width: 0.6em;
	height: 0.69em;
	right: 0;
	top: 0.25em;
	transition: .5s linear;
}
#kidsroom .link_btn a:hover span::before{
	background-image: url(../images/arrow4.png);
	transition: .5s linear;
}
#kidsroom .img_max{
	position: relative;
	width: 100%;
	height: 300px;
}
#kidsroom .img_max::before{
	position: absolute;
	content: "";
	background: url("../images/clinic/img5@2x.jpg") no-repeat center center;
	background-size: cover;
	width: 100%;
	height: 100%;
	left: 0;
	right: 0;
	margin: auto;
}
#kidsroom .img_max .takuzi {
	position: absolute;
	display: block;
	max-width: 970px;
	width: 94%;
	left: 0;
	right: 0;
	margin: auto;
	top:0;
	transform: translateY(-10%);
	z-index: 2;
}
#kidsroom .img_max .takuzi p{
	max-width: 280px;
	width: 29%;
	margin-right: 0;
	margin-left: auto;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#kidsroom .kidsroom_bg{
	margin-bottom: 9%;
}
#kidsroom .w970 {
	padding:4% 0 7%;
	text-align: center;
	position: relative;
}
#kidsroom h3 {
	margin: 0 auto 3%;
}
#kidsroom .link_btn{
	font-size: 115%;
	margin: 3% auto 0;
}
#kidsroom .link_btn a span{
	padding-right: 1.2em;
	position: relative;
}
#kidsroom .img_max{
	position: relative;
	width: 100%;
	height: 25vw;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#kidsroom .kidsroom_bg{
	margin-bottom: 10%;
}
#kidsroom .w970 {
	padding: 6% 0 8%;
	text-align: center;
	position: relative;
}
#kidsroom h3 {
	max-width: 597px;
	margin: 0 auto 5%;
}
#kidsroom .link_btn{
	font-size: 110%;
	letter-spacing: .1em;
	margin: 5% auto 0;
}

#kidsroom .img_max{
	height: auto
}
#kidsroom .img_max::before{
	position: static;
	background: none;
}
#kidsroom .img_max .takuzi {
	position: static;
	max-width: 100%;
	width:100%;
	transform: translateY(0);
}
#kidsroom .img_max .takuzi p{
	max-width: 100%;
	width: 100%;
	margin: 0;
}
}



/*other
---------------------------------------------------------*/
#other h3 {
	text-align: center;
	margin-bottom: 50px;
}
#other .txt_l,
#other .txt_r{
	max-width: 320px;
	width: 34%;
}
#other .img_l,
#other .img_r{
	max-width: 600px;
	width:62%;
}
#other .sub_txt dt {
	color: #008C66;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#other h3 {
	margin-bottom: 5%;
}
#other .txt_l{
	max-width: 100%;
	width: 100%;
	float: none;
}
#other .img_r{
	margin-left: 4%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#other h3 {
	margin-bottom: 7%;
}
#other .flt_box.com_btm_40{
	margin-bottom: 8%;
	padding-bottom: 8%;
	border-bottom: 1px solid rgba(95,76,61,0.30);
}
#other .txt_l,
#other .txt_r{
	max-width: 100%;
	width: 100%;
	float: none;
}
#other .img_l,
#other .img_r{
	max-width: 600px;
	width:100%;
	float: none;
	margin: 0 auto 5vw;
}
}