@charset "UTF-8";


/* ========================================================
  
  common

======================================================== */


/*---------------------------------------------------------
 slide
---------------------------------------------------------*/
.com_box__s .com_flt {
	max-width: 1040px;
	margin-inline: auto;
}
/* PC,Tablet
------------------------------------------*/
@media only screen and (min-width: 768px) {

.com_box__s {
	padding-left: 6%;
	padding-right: 6%;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {

}


/*---------------------------------------------------------
 slide
---------------------------------------------------------*/
/* dot */
.splide__pagination {
	position: absolute;
	width: 100%;
	inset: auto 0 1.6em auto;
	margin: auto;
}
.splide__pagination button {
	background-color: #FFF;
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
/* dot */
.splide__pagination {
	bottom: 1em;
}
}


/*---------------------------------------------------------
 clinic
---------------------------------------------------------*/
.cln_flex .box_img {
	position: relative;
	max-width: max-content;
}
.cln_flex .box_img .abs {
	position: absolute;
}
/* PC,Tablet
------------------------------------------*/
@media only screen and (min-width: 768px) {

.cln_flex {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.cln_flex .box_img {
	width: 55%;
}
.cln_flex .box_txt {
	width: 39%;
}

.cln_col2 {
	display: grid;
	justify-content: space-between;
	grid-template-columns: 47% 47%;
}
}

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

.cln_flex .box_img {
	width: 100%;
	margin: 0 auto 7%;
}
}



/* ========================================================
  
  

======================================================== */




/*---------------------------------------------------------
 WELCOME
---------------------------------------------------------*/
.welcome_title {
	text-align: center;
	margin-bottom: 10%;
}
.welcome_title .com_h__deco {
	--deco-color: #85c16c;
	--deco-bg-color: #F5F5F2;
	opacity: 0.4;
	margin-bottom: .2em;
}
#welcome .com_h__en::before {
	color: var(--color-grn);
}

/*WELCOME: welcome_inner
---------------------------------------------------------*/
.welcome_staff {
	position: relative;
	width: 66%;
	max-width: max-content;
	margin: 0 auto 12%;
}
.welcome_staff .abs {
	position: absolute;
	width: 65%;
	max-width: 178px;
	left: 0;
	top: 0;
	translate: -48% -20%;
	filter: drop-shadow(0 0 10px rgba(0,0,0,0.1));
}
/* PC,Tablet
------------------------------------------*/
@media only screen and (min-width: 768px) {

.welcome_inner {
	display: grid;
	justify-content: space-between;
	align-items: start;
	grid-template-columns: 37% 58%;
	grid-template-rows: auto;
}
.welcome_staff {
	grid-column: 1/2;
	grid-row: 1/2;
	margin-top: -12%;
}
.welcome_slide {
	grid-column: 2/3;
	grid-row: 1/3;
}
.welcome_txt {
	grid-column: 1/2;
	grid-row: 2/3;
}
}

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

.welcome_staff {
	width: 60%;
	margin-bottom: 10%;
}
.welcome_slide {
	margin-bottom: 6%;
}
}


/*---------------------------------------------------------
 FAMILY
---------------------------------------------------------*/
.family_box .fam_inner {
	max-width: 1100px;
	margin-inline: auto;
}
.family_box .com_box__s {
	background-color: rgba(213,172,85,0.1);
}
/* PC,Tablet
------------------------------------------*/
@media only screen and (min-width: 768px) {

.family_box .cln_flex .box_txt {
	align-self: center;
}
}


/*FAMILY: fam_lead
---------------------------------------------------------*/
.fam_lead {
	position: relative;
	text-align: center;
	padding: 0 5%;
}
.fam_lead .com_h__bld > span {
	display: block;
	font-size: 160%;
	line-height: 1.4;
	letter-spacing: .12em;
	margin-top: .2em;
}
.fam_lead .com_h__bld > span::first-letter {
	color: #d5ac55;
}
/* abs_img */
.fam_lead .abs_img {
	position: absolute;
	width: 15%;
	max-width: max-content;
	top: 50%;
	translate: -50% -50%;
}
.fam_lead .abs_img img {
	border-radius: 27%;
}
.fam_lead .abs_img.img1 {
	left: -3.2%;
	top: 56%;
}
.fam_lead .abs_img.img2 {
	left: 95%;
	top: 12%;
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {

.fam_lead {
	padding: 0;
}
.fam_lead .com_h__bld > span {
	font-size: 140%;
	letter-spacing: .08em;
}
.fam_lead p {
	text-align: left;
}
/* abs_img */
.fam_lead .abs_img {
	width: 20%;
}
.fam_lead .abs_img.img1 {
	left: -2%;
	top: 20%;
}
.fam_lead .abs_img.img2 {
	left: 102%;
	top: 6%;
}
}

/*FAMILY: fam_point
---------------------------------------------------------*/
.fam_point {
	text-align: center;
}
.fam_point .box_img {
	position: relative;
	width: 85%;
	max-width: max-content;
	margin: 0 auto 5%;
}
.fam_point .box_img .abs {
	position: absolute;
	max-width: max-content;
	width: 45%;
	bottom: 5%;
	right: -12%;
}
.fam_point .com_h__bld {
	font-size: min(2vw,153%);
}
.fam_point > li:nth-of-type(1) .box_img .abs {
	left: -12%;
	right: auto;
}
.fam_point > li:nth-of-type(2) .box_img .abs {
	top: 5%;
	bottom: auto;
}
/* PC,Tablet
------------------------------------------*/
@media only screen and (min-width: 768px) {

.fam_point {
	display: grid;
	justify-content: space-between;
	grid-template-columns: repeat(3,31%);
}
}

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

.fam_point > li:nth-of-type(n+2) {
	margin-top: 8%;
}
.fam_point .box_img {
	width: 60%;
}
.fam_point .box_img .abs {
	width: 50%;
}
.fam_point .com_h__bld {
	font-size: 105%;
}
}


/*---------------------------------------------------------
 COUNSELING
---------------------------------------------------------*/

/* PC,Tablet
------------------------------------------*/
@media only screen and (min-width: 768px) {

#counseling .com_bg__img {
	top: -140px;
}
#counseling .box_txt {
	align-self: flex-end;
	margin-bottom: 5%;
}
#counseling .box_txt p {
	max-width: 423px;
}
}

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

#counseling .com_bg__img {
	top: 50vw;
}
}



/*---------------------------------------------------------
 TREATMENT
---------------------------------------------------------*/
#treatment .com_bg__color {
	background-color: #E0EDE6;
}
#treatment .com_h__deco {
	--deco-color: var(--color-bgrn);
	--deco-bg-color: #E0EDE6;
	opacity: 0.5;
	margin-bottom: .8em;
}
#treatment .com_h__en::before {
	color: var(--color-bgrn);
}
#treatment .com_box__s {
	background-color: rgba(255,255,255,0.5);
}

/* treatment-room */
#treatment-room .box_img .abs {
	width: 58%;
	max-width: 133px;
	left: -40%;
	top: 55%;
	translate: 0 -50%;
}
/* operation */
#operation-room .box_img .abs {
	width: 25%;
	max-width: 108px;
	right: 3%;
	bottom: 5%;
}
#equipment .com_flt .img_l {
	display: grid;
	justify-content: space-between;
	grid-template-columns: 48% 48%;
}
#equipment .com_flt .img_l img:first-of-type {
	margin-top: 7.5%;
}
/* PC,Tablet
------------------------------------------*/
@media only screen and (min-width: 768px) {

.trt_slide {
	visibility: visible !important;
}
.trt_slide ul {
	display: grid !important;
	grid-template-columns: 50% 1fr;
}
/* treatment-room */
#treatment-room {
	width: 92%;
	max-width: 1070px;
	margin-inline: auto;
}
#treatment-room .box_txt {
	width: 63%;
}
#treatment-room .box_img {
	width: 25%;
	max-width: max-content;
}
/* operation-room */
#operation-room {
	grid-template-columns: 50% 1fr;
}
#operation-room .com_bg__img {
	top: -85px;
}
#operation-room .box_img {
	width: 67%;
}
#operation-room .box_txt {
	width: 28%;
	align-self: flex-end;
	padding-bottom: 2%;
}
/* equipment */
#equipment .com_flt .img_l {
	width: 35%;
	max-width: 361px;
}
#equipment .com_flt .txt_r {
	width: 60%;
}
}

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

/* treatment-room */
#treatment-room .box_img {
	width: 60%;
	margin: 7% 10% 0 auto;
}
/* operation */
#operation-room .com_bg__img {
	top: 45vw;
}
}



/*---------------------------------------------------------
 nagomi
---------------------------------------------------------*/
#nagomi .com_bg__color {
	background-color: var(--color-bei);
}
.nagomi_title {
	margin-bottom: 4%;
}
.nagomi_title .com_h__en {
	margin-bottom: 1.8em;
}
.nagomi_title .com_h__en::before {
	color: var(--color-pnk);
}
.nagomi_title .com_h__min img {
	display: inline-block;
	width: 4.14em;
	margin: .2em .2em .2em -0.7em;
	vertical-align: -1.6em;
}
/* PC,Tablet
------------------------------------------*/
@media only screen and (min-width: 768px) {

#nagomi .com_col_list .com_h__min {
	font-size: min(2.5vw,180%);
}
}

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

.nagomi_title {
	margin-bottom: 8%;
}
}



/*---------------------------------------------------------
 CERTIFIED
---------------------------------------------------------*/
#certified .com_bg__color {
	background-color: #e6e9e2;
}
#certified .com_h__deco {
	--deco-color: #85c16c;
	--deco-bg-color: #e6e9e2;
	opacity: 0.4;
	margin-bottom: .4em;
}
#certified .ft_min {
	text-align: center;
	font-size: min(1.8vw,120%);
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#certified .ft_min {
	font-size: 105%;
}
}



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

/* PC,Tablet
------------------------------------------*/
@media only screen and (min-width: 768px) {

}

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

}
