@charset "UTF-8";


.contentpage .m_img {
	background-image: url("../images/doctor/m_img@2x.jpg");
}
.swip_ticker li {
	width: 39.4vw;
	max-width: 590px;
}
.com_deco_txt {
	font-size: 120%;
}
.dr_style1 dt {
	font-size: min(240%,3.6vw);
	letter-spacing: .12em;
	line-height: 1.6;
	font-feature-settings: "halt";
	margin-bottom: .5em;
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.dr_style1 dt {
	letter-spacing: .08em;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.com_deco_txt {
	font-size: 90%;
}
.dr_style1 dt {
	font-size: 140%;
	letter-spacing: .05em;
}
}


/*---------------------------------------------------------
doctors
---------------------------------------------------------*/
.dr_bg {
	position: relative;
	padding-bottom: 70px;
}
.dr_bg::before {
	position: absolute;
	content: "";
	background-color: #F1F7F8;
	width: 100%;
	height: calc(100% - 300px);
	left: 0;
	bottom: 0;
	z-index: -1;
}
hr {
	width: 90%;
	max-width: 1300px;
	height: 1px;
	background-color: #E6E6E6;
	margin: 80px auto;
}
#doctors .com_title2 {
	margin-bottom: 4em;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.dr_bg {
	padding-bottom: 7%;
}
hr {
	margin: 8% auto;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.dr_bg {
	padding-bottom: 10%;
}
.dr_bg::before {
	height: calc(100% - 40vw);
}
hr {
	margin: 12% auto;
}
#doctors .com_title2 {
	margin-bottom: 2em;
}
}


/*---------------------------------------------------------
doctors：stf_prof
---------------------------------------------------------*/
.stf_prof {
	line-height: 1.5;
}
.stf_prof dt {
	font-size: 113%;
	letter-spacing: .2em;
}
.stf_prof dd {
	font-size: min(3.8vw,244%);
	letter-spacing: .25em;
}
.stf_prof dd span {color: #1e88a8;}

.stf_prof .com_deco_txt {
	font-size: 107%;
	margin: .5em 0 1.5em;
}
.stf_prof .kamoku {
	font-size: 95%;
	letter-spacing: .25em;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.stf_prof dt {
	font-size: 105%;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.stf_prof dt {
	font-size: 90%;
}
.stf_prof dd {
	font-size: 150%;
}
.stf_prof .com_deco_txt {
	font-size: 90%;
	margin-bottom: 1em;
}
.stf_prof .kamoku {
	font-size: 90%;
	letter-spacing: .2em;
}
}


/*---------------------------------------------------------
doctors：stf_bio
---------------------------------------------------------*/
.stf_bio {
	position: relative;
	font-size: 93%;
	line-height: 1.35;
}
.stf_bio dt {
	letter-spacing: .2em;
}
.stf_bio dt,
.stf_bio .year {
	white-space: nowrap;
	color: #1e88a8;
}
.stf_bio li:not(:last-of-type) {
	margin-bottom: 1em;
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.stf_bio li:not(:last-of-type) {
	margin-bottom: .8em;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {

.stf_bio:not(:last-of-type) {
	margin-bottom: 10% !important;
}
.stf_bio li:not(:last-of-type) {
	margin-bottom: .6em;
}
}

/*---------------------------------------------------------
doctors：dr_radibox
---------------------------------------------------------*/
.dr_radibox {
	position: relative;
	max-width: 1200px;
	background-color: #B3DDE2;
	box-sizing: border-box;
	padding: 60px 5.3% 50px;
	border-radius: 4em;
	margin: 85px auto auto;
}
.dr_radibox dt {
	text-align: center;
	font-size: min(153%,2.4vw);
	letter-spacing: .25em;
	line-height: 1.6;
	margin-bottom: 1em;
}
.dr_radibox dt::before {
	position: absolute;
	content: "";
	background: url(../images/doctor/icon_thesis.svg) no-repeat center center;
	background-size: contain;
	width: 2.2em;
	height: 2.2em;
	left: 50%;
	top: 0;
	translate: -50% -30%;
}
.dr_radibox dd {
	font-size: 93%;
}
.dr_radibox .com_marulist2 > li::before {
	color: #7CC0C7;
}
.dr_radibox .com_marulist2 + p {
	margin-top: 1em;
}
.dr_radibox .cert_list {
	max-width: 990px;
	display: grid;
	justify-content: space-between;
	grid-template-columns: repeat(6,15.2%);
	row-gap: 10px;
	margin: 30px auto 0;
}
/* seminar */
.dr_radibox.seminar {background-color: #FFD8B5;}
.dr_radibox.seminar dt::before {background-image: url(../images/doctor/icon_seminar.svg);}
.dr_radibox.seminar .com_marulist2 > li::before {
	color: #FAB28A;
}

/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {
.dr_radibox dd {
	max-width: 1000px;
	margin: 0 auto;
}
.dr_radibox.thesis .com_marulist2.col2 {
	row-gap: 2em;
}
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.dr_radibox {
	padding: 6% 5.5% 5%;
	margin-top: 8%;
}
.dr_radibox .cert_list {
	grid-template-columns: repeat(5,18.5%);
	margin-top: 3%;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.dr_radibox {
	padding: 12% 6% 10%;
	border-radius: 8vw;
	margin-top: 12%;
}
.dr_radibox dt {
	font-size: 120%;
	margin-bottom: .8em;
}
.dr_radibox .cert_list {
	grid-template-columns: repeat(3,31%);
	margin-top: 5%;
}
}

/*---------------------------------------------------------
stf_type1 / stf_type2
---------------------------------------------------------*/
/* main_box */
.main_box {
	position: relative;
	margin: 0 auto 60px;
}
.shadow_box {
	position: relative;
	background-color: #FFF;
	box-sizing: border-box;
	padding: 4.5em 2% 5em;
	box-shadow: 0 0 15px rgba(0,0,0,0.15);
}
.shadow_box > div {
	max-width: max-content;
	margin: 0 auto;
}
/* hobbies */
.hobbies {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 105%;
	line-height: 1.5;
	margin-top: 2em;
}
.hobbies dt {
	color: #FFF;
	letter-spacing: .3em;
	line-height: 1.5;
	white-space: nowrap;
	background-color: #1e88a8;
	padding: .4em 2.5em;
	border-radius: .6em;
	border-bottom-left-radius: 0.16em;
	margin-right: 1.4em;
}
/* msg_box */
.msg_box {
	position: relative;
}
.msg_box .com_deco_txt {
	text-align: left;
}
.msg_box .dr_style1 dd {
	line-height: 3.2;
}
/* img_wrap */
.img_wrap {
	position: relative;
}
.img_wrap .img_sub {
	position: relative;
	z-index: 1;
}
.bio_bgarea {
	position: relative;
	box-sizing: border-box;
	padding: 80px 15%;
	padding-right: 0;
}
.bio_bgarea::before {
	position: absolute;
	content: "";
	background-color: #fff;
	width: 100vw;
	height: 100%;
	left: 0;
	top: 0;
}

.obj_deco {
	position: absolute;
	font-size: min(15vw,182px);
	letter-spacing: normal;
	line-height: 1;
	opacity: 0.2;
	z-index: -1;
}
/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {
.shadow_box {
	position: absolute;
	width: 35vw;
	max-width: 305px;
	top: 40%;
	translate: 0 -50%;
}
.shadow_box .com_deco_txt {
	text-align: left;
	margin-top: 1em;
}
.shadow_box .stf_prof dt {
	margin-bottom: .2em;
}

.img_wrap {
	display: flex;
	align-items: flex-start;
	margin-top: 60px;
}
.bio_bgarea {
	margin-left: auto;
}
.bio_bgarea.col2 {
	display: grid;
	grid-template-columns: repeat(2, 50%);
}
.bio_bgarea .stf_bio {
	display: grid;
	grid-template-columns: auto 1fr;
}
.bio_bgarea .stf_bio dt {
	width: 7.2em;
	margin-right: 1.5em;
	border-right: 1px solid #E6E6E6;
}
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.main_box {
	margin-bottom: 6%;
}

.shadow_box {
	width: 32vw;
	padding: 2.5em 2% 3em;
}
.hobbies {
	font-size: 100%;
}

.msg_box .dr_style1 dd {
	line-height: 2.8;
}

.bio_bgarea {
	padding: 8% 0;
	padding-left: 6%;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.main_box {
	margin-bottom: 10%;
}
.shadow_box {
	width: 65vw;
	text-align: center;
	padding: 1.5em 3% 1.8em;
	margin: -10% auto 0;
}
.shadow_box .stf_prof dl {
	display: flex;
	align-items: center;
}
.shadow_box .stf_prof dl dt {
	margin-right: 1em;
}
.hobbies {
	font-size: 88%;
	margin-top: 2em;
}
.hobbies dt {
	letter-spacing: .2em;
	padding: .4em 1.2em;
}

.msg_box .dr_style1 dd {
	line-height: 2;
}

.bio_bgarea {
	padding: 18% 2% 12% 9%;
}
.bio_bgarea .stf_bio dt {
	padding-bottom: 1em;
	margin-bottom: 1.2em;
	border-bottom: 1px solid #e6e6e6;
}

.obj_deco {
	font-size: 30vw;
}
}

/*---------------------------------------------------------
stf_type1
---------------------------------------------------------*/
.stf_type1 .main_box {
	max-width: 1110px;
}
.stf_type1 .msg_box::before {
	position: absolute;
	content: "";
	background: url(../images/doctor/dir_bg@2x.jpg) no-repeat right bottom;
	background-size: contain;
	width: 81%;
	height: 69vw;
	right: 0;
	bottom: 0;
	margin-right: calc(50% - 50vw);
	z-index: -1;
}
.stf_type1 .img_wrap .img_sub {
	max-width: 533px;
	margin-top: 3%;
}
.stf_type1 .img_wrap .img_sub > li:nth-of-type(1) {
	max-width: 318px;
}
.stf_type1 .img_wrap .img_sub > li:nth-of-type(2) {
	max-width: 455px;
}
.stf_type1 .stf_bio:not(:last-of-type) {
	margin-bottom: 3em;
}

.stf_type1 .obj_deco {
	right: 0;
	top: 0;
	translate: 0 -60%;
	z-index: 1;
}
/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {
.stf_type1 .main_box img {
	width: 93%;
	max-width: 1027px;
	margin-right: 0;
}
.stf_type1 .shadow_box {
	max-width: 345px;
}
.stf_type1 .shadow_box .com_deco_txt {
	font-size: 120%;
}
.stf_type1 .shadow_box .stf_prof dt {
	font-size: 126%;
}
.stf_type1 .shadow_box .stf_prof dd {
	font-size: min(4vw,272%);
}
.stf_type1 .shadow_box .stf_prof .kamoku {
	font-size: 105%;
}

.stf_type1 .msg_box dl {
	width: 72%;
}
.stf_type1 .img_wrap .img_sub {
	width: 45%;
	margin-left: -3%;
	margin-right: -7%;
}
.stf_type1 .img_wrap .img_sub > li:nth-of-type(1) {
	width: 59.7%;
	margin-bottom: 10%;
}
.stf_type1 .img_wrap .img_sub > li:nth-of-type(2) {
	width: 85.4%;
	margin-left: auto;
	margin-right: 0;
}
.stf_type1 .bio_bgarea {
	width: 65%;
}
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.stf_type1 .img_wrap .img_sub {
	width: 32%;
}
.stf_type1 .bio_bgarea {
	width: 78%;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.stf_type1 .msg_box::before {
	bottom: auto;
	top: 5vw;
}
.stf_type1 .img_wrap .img_sub {
	display: flex;
	justify-content: space-between;
}
.stf_type1 .img_wrap .img_sub > li:nth-of-type(1) {
	width: 45%;
	margin-left: -6%;
	translate: 0 20%;
}
.stf_type1 .img_wrap .img_sub > li:nth-of-type(2) {
	width: 55%;
}

.stf_type1 .obj_deco {
	top: 36vw;
	right: -5%;
	translate: none;
}
}

/*---------------------------------------------------------
stf_type2
---------------------------------------------------------*/
.stf_type2 .main_box {
	width: 90%;
	max-width: 924px;
}
.stf_type2 .shadow_box {
	right: 0;
}
.stf_type2 .img_sub {
	max-width: 240px;
}
.stf_type2 .msg_box .obj_deco {
	left: 62%;
	top: 35%;
	translate: -50% -50%;
}
/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {
.stf_type2 .main_box img {
	max-width: 698px;
	width: 76%;
	margin-left: 0;
}

.stf_type2 .msg_box dl {
	width: 67%;
}
.stf_type2 .msg_box .box_img {
	position: absolute;
	width: 32%;
	right: 0;
	top: 50%;
	translate: 0 -50%;
	margin-right: -7%;
}
.stf_type2 .img_wrap .img_sub {
	width: 18.5%;
	margin-left: 1%;
	margin-right: -4.5%;
	margin-top: 12%;
}
.stf_type2 .bio_bgarea {
	width: 85%;
	padding-left: 10%;
}
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.stf_type2 .img_wrap .img_sub {
	width: 18.5%;
	margin-left: -2%;
}
.stf_type2 .bio_bgarea {
	width: 88%;
	padding-left: 8%;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {

.stf_type2 .msg_box .box_img {
	width: 55%;
	margin-left: auto;
}
.stf_type2 .img_wrap {
	margin-top: 10%;
}
.stf_type2 .img_wrap .img_sub {
	position: absolute;
	width: 45%;
	left: -6%;
	bottom: 100%;
	translate: 0 20%;
}

.stf_type2 .msg_box .obj_deco {
	left: auto;
	right: 0;
	top: 18vw;
	translate: none;
}
}

/*---------------------------------------------------------
staff
---------------------------------------------------------*/
.stf_list {
	max-width: 1215px;
	margin: 0 auto;
}
.stf_list .box_img {
	max-width: 565px;
	margin: 0 auto 2em;
}
.stf_list .stf_prof {
	text-align: center;
}
.stf_list .stf_prof dl {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}
.stf_list .stf_prof dl dt {
	margin-right: 1em;
}
.stf_list .stf_bio {
	margin-top: 2em;
}
.stf_list .stf_bio dt {
	padding-bottom: 1.5em;
	margin-bottom: 1.5em;
	border-bottom: 1px solid #e6e6e6;
}
/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {
.stf_list {
	display: grid;
	justify-content: space-between;
	grid-template-columns: repeat(2, 47%);
	row-gap: 100px;
	max-width: 1215px;
	margin-left: auto;
	margin-right: auto;
}
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {

}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.stf_list > li:not(:last-of-type) {
	margin-bottom: 12%;
}
.stf_list .box_img {
	width: 80%;
	margin-bottom: 5%;
}
.stf_list .stf_bio {
	width: 90%;
	margin: 6% auto 0;
}
.stf_list .stf_bio dt {
	padding-bottom: 1em;
	margin-bottom: 1.2em;
}
}

/*---------------------------------------------------------
for
---------------------------------------------------------*/
#for {
	text-align: center;
	background: url(../images/doctor/for_bg@2x.png) no-repeat center top;
	background-size: 100% auto;
	padding-top: 21vw;
}
#for .for_title {
	font-size: 113%;
	letter-spacing: .2em;
	line-height: 1.6;
}
#for .ft_jos {
	text-align: center;
	color: #DCDCD2;
	font-size: min(5vw,294%);
	letter-spacing: .1em;
	line-height: 1;
	margin-top: .2em;
}
#for .inbox {
	position: relative;
	padding-top: 45px;
}
#for .inbox dl {
	position: relative;
}
#for .inbox dl dt {
	font-size: min(3.6vw,240%);
}
#for .inbox dl dd {
	line-height: 2.7;
}
/* img_list */
#for .img_list > li {
	position: absolute;
	translate: -50% -50%;
}
#for .img_list > li:nth-of-type(1) {
	width: 13vw;
	max-width: 193px;
	left: 13%;
	top: 16%;
}
#for .img_list > li:nth-of-type(2) {
	width: 16vw;
	max-width: 240px;
	left: 7.7%;
	top: 69%;
}
#for .img_list > li:nth-of-type(3) {
	width: 14vw;
	max-width: 200x;
	left: 95%;
	top: 34%;
}
#for .img_list > li:nth-of-type(4) {
	width: 14.1vw;
	max-width: 211px;
	left: 89%;
	top: 75%;
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {

#for .inbox dl dd {
	line-height: 2.5;
}
#for .img_list > li:nth-of-type(3) {
	top: 45%;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#for {
	padding-top: 25vw;
}
#for .for_title {
	font-size: 95%;
	letter-spacing: .15em;
}
#for .ft_jos {
	font-size: 160%;
}
#for .inbox {
	padding-top: 8%;
}
#for .inbox dl dt {
	font-size: 135%;
}
#for .inbox dl dd {
	text-align: left;
	line-height: 2;
}
/* img_list */
#for .img_list > li {
	translate: -50% -50%;
}
#for .img_list > li:nth-of-type(1) {
	width: 20vw;
	left: 5%;
	top: 6%;
}
#for .img_list > li:nth-of-type(2) {
	width: 16vw;
	left: 7.7%;
	top: 69%;
}
#for .img_list > li:nth-of-type(3) {
	width: 17vw;
	left: 96%;
	top: 11%;
}
#for .img_list > li:nth-of-type(4) {
	width: 14.1vw;
	left: 89%;
	top: 75%;
}
#for .img_list > li:nth-of-type(2),
#for .img_list > li:nth-of-type(4) {
	display: none;
}
}

/*---------------------------------------------------------
new
---------------------------------------------------------*/
#new {
	background: url(../images/doctor/for_bg@2x.jpg) no-repeat right bottom;
	background-size: min(68%,1017px) auto;
}
#new .cycle {
	position: relative;
	max-width: 1252px;
	margin: 0 auto 50px;
}
#new .cycle::before {
	position: absolute;
	content: "";
	background: url(../images/doctor/cycle_arw@2x.png) no-repeat center center;
	background-size: contain;
	width: 9%;
	height: 11%;
	left: 50%;
	top: 50%;
	translate: -50% -50%;
}
#new .cycle > li {
	max-width: 540px;
}
#new .com_flt .img_l {
	max-width: 590px;
}
#new .box_sum .com_deco_txt {
	text-align: left;
	font-size: 146%;
}
/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {
#new .com_index1 {
	font-size: min(3vw,200%);
}
#new .cycle {
	display: flex;
	justify-content: space-between;
}
#new .cycle > li {
	width: 44%;
}
#new .com_flt .img_l {
	width: 46%;
}
#new .dr_style1 dd {
	line-height: 2.6;
}
#new .box_sum {
	width: 68%;
	max-width: 880px;
}
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#new .box_sum .com_deco_txt {
	font-size: 130%;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#new {
	background-position: right -10vw bottom 92vw;
	background-size: 80% auto;
}
#new .cycle {
	margin-bottom: 12%;
}
#new .cycle > li:first-of-type {
	margin-bottom: 20vw;
}
#new .cycle::before {
	background-size: 100% 100%;
	width: 14vw;
	height: 18vw;
	top: 49%;
	rotate: 90deg;
}
#new .com_flt .img_l {
	width: 95%;
}
#new .box_sum .com_deco_txt {
	font-size: 105%;
}
}

/*---------------------------------------------------------
team
---------------------------------------------------------*/
#team {
	position: relative;
}
#team .com_deco_txt {
	margin-bottom: 2em;
}
#team .com_fuki {
	font-size: min(3vw,200%);
	letter-spacing: .16em;
	line-height: 1.5;
}
#team .com_fuki::before,
#team .com_fuki::after {
	background: url(../images/doctor/fuki.svg) no-repeat center center;
	background-size: contain;
	width: 2px;
	height: 2em;
	bottom: 0;
}
#team .com_fuki::before {
	right: calc(100% + 1.4em);
	rotate: -30deg;
}
#team .com_fuki::after {
	left: calc(100% + 1.4em);
	rotate: 30deg;
}

#team i {
	position: absolute;
    letter-spacing: normal;
    line-height: 1;
	font-size: min(12vw,160px);
	opacity: 0.4;
	z-index: 2;
}
#team i:nth-of-type(1) {
	right: 5%;
	bottom: 0;
	translate: 0 60%;
}
#team i:nth-of-type(2) {
	left: 6%;
	top: 15%;
}
#team i:nth-of-type(3) {
	font-size: min(12vw,120px);
	left: 65%;
	top: -5%;
	opacity: 0.2;
	rotate: 45deg;
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {

#team .com_fuki {
	font-size: 120%;
	letter-spacing: .12em;
}
#team i {
	font-size: 20vw;
}
#team i:nth-of-type(2) {
	left: 3%;
	top: 30%;
}
#team i:nth-of-type(3) {
	font-size: 18vw;
	left: 75%;
}
}

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

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

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

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

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


}