/*---------------------------------------------------------
共通設定
---------------------------------------------------------*/

html,body{
	margin: 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow-x: hidden;
}

html,* {
	box-sizing: border-box;
}

/* 見出し
--------------------------------------------- */
h1,h2,h3,h4,h5,h6{
	font-family: var(--zen);
	letter-spacing: .1rem;
	line-height: 1.5;
}

h1{
	font-size: 14px;
	font-weight: 400;
	margin: 0 0 10px;
}

h2{
	font-size: 30px;
	font-weight: 600;
	text-align: center;
	color: white;
	letter-spacing: .04rem;
}
h2.tlt{
	background-color: var(--blue);
	filter: var(--filter11);
	min-height: calc(254px / 2);
	margin: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

h3{
	font-size: 25px;
}

h4{
	font-size: 21px;
}

h5 {
	font-size: 25px;
}
h6 {
	font-size: 18px;
}

@media(max-width:576px){
	h2{
		font-size: 1.7rem;
	}
	h2.tlt {
		min-height: calc(170px / 2);
	}
}

/* txt
--------------------------------------------- */
p {
	font-size: calc(32px / 2);
	font-family: var(--zengothic);
	font-weight: 500;
	color: rgb(43, 43, 43);
	line-height: 2.5;
}

.bule {
	font-size: 21px;
	color: var(--blue_txt);
	font-weight: 600;
	line-height: 1.667;
}

.bule_gothic {
	font-size: 25px;
	font-family: var(--zengothic);
	color: var(--blue_txt);
	font-weight: bold;
	line-height: 1.4;
}

.line_tlt {
	background: rgb(124, 194, 167);
	width: calc(62px / 2);
	height: 2px;
	display: inline-block;
	vertical-align: super;
	margin-right: .5rem;
}

/* img
--------------------------------------------- */
img{filter: var(--filter12);}

/* リンク
--------------------------------------------- */
a{
	color: inherit;
	text-decoration: none;
}

a:hover{
	opacity: .7;
}

/* container
--------------------------------------------- */
.container{
	width: 900px;
	margin: 0 auto;
}

/* overflow
--------------------------------------------- */
.overflow{
	overflow: hidden;
}

/* bg_green
--------------------------------------------- */
.bg_green{
	position: relative;
}
.bg_green:before{
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: var(--green);
	z-index: 0;
	transform: skewY(-4deg);
	transform-origin: top right;
}
.green_bg{
	background: var(--green);
	padding: 3rem 0;
}

/* section
--------------------------------------------- */
.section{
	margin: 3rem auto;
	clear: both;
}

/* separator
--------------------------------------------- */
.separator{
	width: 100%;
	height: 10px;
	background: rgb(124, 194, 167);
	filter: var(--filter15);
}

/* figure
--------------------------------------------- */
figure{
	margin: 0;
}
figure img{
	width: 100%;
}

/* flex_cols
--------------------------------------------- */
.flex_cols{
	display: flex;
}
.flex_cols img{
	width: 100%;
}
#secondary_content_area .flex_cols img{
	width: calc(800px / 2);
	max-width: calc(800px / 2);
}
#secondary_content_area .flex_cols.md img{
	width: calc(600px / 2);
	max-width: calc(600px / 2);
}
#secondary_content_area .flex_cols.half img{
	width: calc(400px / 2);
	max-width: calc(400px / 2);
}
#secondary_content_area .flex_cols.half .img{
	text-align: center;
}
#secondary_content_area .flex_cols.half h4,
#secondary_content_area .flex_cols.half p{
	text-align: left;
}

@media(min-width:576px){
	#secondary_content_area .flex_cols > div.ml{
		margin-left: 2.5rem;
	}
	#secondary_content_area .flex_cols > div.mr{
		margin-right: 2.5rem;
	}
}

@media(max-width:576px){
	.flex_cols{
		flex-wrap: wrap;
	}
	#secondary_content_area .flex_cols img{
		width: 100%;
		max-width: 100%;
	}
}

/*justify-content*/
.justify-center{justify-content: center;}
.justify-between{justify-content: space-between;}

/*align-items*/
.align-center{align-items: center;}
.align-start{align-items: start}
.align-end{align-items: end}

/* float-end
--------------------------------------------- */
.float-end img{
	float: right;
	margin: 0 0 1.5rem 1.5rem;
}
.float-start img{
	float: left;
	margin: 0 1.5rem 1.5rem 0;
}
.float-end img,
.float-start img{
	width: 400px;
}
.float-end.w-3 img,
.float-start.w-3 img{
	width: 300px;
}

/* order
--------------------------------------------- */
@media(min-width:768px){
	.order_1{order: 1;}
	.order_2{order: 2;}
}

/* text-align
--------------------------------------------- */
@media(min-width:576px){
	.text_sm_center{text-align: center;}
	.text_sm_left{text-align: left;}
	.text_sm_right{text-align: right;}
}
@media(min-width:768px){
	.text_md_center{text-align: center;}
	.text_md_left{text-align: left;}
	.text_md_right{text-align: right;}
}

/* d-none
--------------------------------------------- */
@media(min-width:576px){
	.d-sm-none{display: none;}
}

.d-sm-block{display: block;}
@media(max-width:576px){
	.d-sm-block{display: none;}
}


/*---------------------------------------------------------
ヘッダー
---------------------------------------------------------*/
@media(min-width:1200px){
	header#masthead{
		width: calc(2260px / 2);
	}
}
header#masthead{
	margin: 0 auto;
}

/* site-branding
--------------------------------------------- */
.site-branding{
	margin: 15px auto 10px;
	display: flex;
	justify-content: space-between;
}
.site-branding .info{
	display: flex;
	align-items: center;
}
.site-branding .logo img{
	width: calc(561px / 2);
	filter: var(--filter12);
}
.site-branding .info .add{
	text-align: center;
	margin-right: 1.5rem;
}
.site-branding .info address{
	font-size: calc(56px / 2);
	font-family: var(--zen);
	color: rgb(0, 0, 0);
	font-weight: 600;
	font-style: normal;
	letter-spacing: .05rem;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 10px;
	line-height: 1;
}
.site-branding .info address:before{
	content: '';
	background: url(../images/common/tel.png)no-repeat;
	background-size: calc(31px / 2);
	width: calc(31px / 2);
	height: calc(50px / 2);
	margin-right: 10px;
}
.site-branding .info p{
	line-height: 1.3;
	margin: 0;
	font-size: 14px;
	font-family: var(--zen);
}
.site-branding .reservation img{
	width: calc(240px / 2);
	filter: var(--filter12);
}

/* main_images
--------------------------------------------- */
.main_images{
	width: 1000px;
	margin: 0 auto -200px;
	display: flex;
	justify-content: end;
	position: relative;
}
.main_images:before{
	content: '';
	background: white;
	width: 600px;
	height: 700px;
	position: absolute;
	bottom:0;
	right: 0;
	z-index: 1;
}
.splide{
	margin: 0;
	position: relative;
	z-index: 1;
}
.splide__track{
	overflow: visible;
}
.splide__slide{
	position: relative;
}
.splide__slide .tlt{
	position: absolute;
	top: 17%;
	left: -62%;
}
.splide .tlt h2{
	background: none;
	display: block;
	text-align: left;
	color: var(--blue);
	line-height: 1.6;
	margin: 0 0 2rem;
}
.splide .tlt p{
	font-weight: 500;
	line-height: 1.6;
	color: rgb(102, 102, 102);
}
.splide__slide img{
	width: 600px;
	height: 700px;
	object-fit: cover;
	filter: var(--filter12);
}

/*---------------------------------------------------------
トップページ
---------------------------------------------------------*/
/* sec_clinic
--------------------------------------------- */
.sec_clinic{
	position: relative;
	filter: var(--filter12);
}
.gradation img{
	width: 100%;
	height: calc(560px / 2);
}
.sec_clinic_bg{
	position: absolute;
	bottom: 0;
	letter-spacing: 0;
	line-height: 0;
}
.sec_clinic_bg img{
	width: 100%;
}
.sec_clinic .container{
	padding: 2rem 0 4rem;
	position: relative;
	z-index: 1;
}
.sec_clinic .inner{
	background-color: rgba(255, 255, 255, .702);
	box-shadow: var(--shadow);
	padding: 1rem;
}
.sec_clinic .wrap{
	border: 1px solid rgb(175, 207, 247);
	padding: 3rem 4rem;
	text-align: center;
}
.sec_clinic h2{
	background-color: var(--blue);
	display: inline-block;
	padding: 1rem 1rem;
	font-weight: 600;
	color: white;
	line-height: 1.6;
	letter-spacing: .1rem;
}
.sec_clinic h3{
	font-size: calc(42px / 2);
	margin-bottom: 1.5rem;
}
.sec_clinic h3,
.sec_clinic p{
	text-align: left;
}

/* sec_point
--------------------------------------------- */
.sec_point h2{
	margin: 6rem 0 5rem;
	line-height: 1.2;
}
.sec_point h2 span{
	font-size: calc(90px / 2);
}
.sec_point h3{
	font-size: calc(50px / 2);
	font-family: var(--zengothic);
	color: var(--blue);
	font-weight: 600;
	line-height: 1.4;
	display: flex;
	align-items: center;
	margin-bottom: 1rem;
}
.sec_point h3 img{
	width: calc(149px / 2);
	box-shadow: none!important;
	margin-right: 1rem;
}

/*in_1*/
.sec_point .in_1 .flex_cols{
	margin: 2rem 0 3rem;
	flex-wrap: wrap;
}
.sec_point .in_1 .flex_cols > div{
	width: calc(840px / 2);
	box-shadow: var(--shadow);
	padding: 15px 15px 25px;
}
.sec_point .in_1 .flex_cols > div h4{
	margin: 25px 0 15px;
}
.sec_point .in_1 .flex_cols > div p{
	font-size: 14px;
	line-height: 2.143;
	margin: 0;
}
.sec_point .in_1 .flex_cols img{
	 width: 100%;
    height: calc(450px / 2);
    object-fit: cover;
}

/*in_2*/
.sec_point .in_2{
	padding: 7rem 0 1rem;
	margin-bottom: 10rem;
	position: relative;
}
.sec_point .in_2 .flex_cols > div{
	width: 48%;
}

/*in_3*/
.sec_point .in_3 .flex_cols{
	margin-bottom: 2rem;
}
.sec_point .in_3 .flex_cols > div{
	width: 50%;
}
.sec_point .in_3 .flex_cols > div img{
	width: calc(780px / 2);
}

/*in_4*/
.sec_point .in_4{
	padding: 6rem 0 1rem;
	margin-bottom: 8rem;
	position: relative;
}

/*in_5*/
.sec_point .in_5{
	margin-bottom: 2rem;
}
.sec_point .in_5 h4.bule{
	margin: 1.5rem 0 1rem;
}
.sec_point .in_5 .flex_cols{
	margin: 3rem 0 2rem;
}
.sec_point .in_5 .flex_cols > div{
	width: calc(570px / 2);
	box-shadow: var(--shadow);
	padding: 15px 15px 20px;
}
.sec_point .in_5 .flex_cols > div h4{
	margin: 10px 0;
}
.sec_point .in_5 .flex_cols > div p{
	font-size: 14px;
	margin: 0;
}

/*in_6*/
.sec_point .in_6{
	padding: 6rem 0 0;
	margin-bottom: 3rem;
	position: relative;
}
.sec_point .in_6 h3{
	margin-bottom: 2rem;
}


.sec_point img{
	border-radius: var(--rounded);
}
.sec_point .in_2 img,
.sec_point .in_3 img,
.sec_point .in_4 img,
.sec_point .in_6 img{
	box-shadow: var(--imgshadow);
}

/* sec_greeting
--------------------------------------------- */
.sec_greeting .sg_bg{
	min-height: calc(1400px / 2);
	position: relative;
}
.sec_greeting .sg_bg:before{
	content: '';
	background: url(../images/top/sec_greeting.jpg)no-repeat center;
	background-size: cover;
	filter: var(--filter12);
	width: 600px;
	height: calc(1400px / 2);
	position: absolute;
	top: 0;
	left: 0;
}
@media(min-width:1200px){
	.sec_greeting .sg_bg:before{
		width: 50%;
	}
}
.sec_greeting .sg_name{
	background: url(../images/top/sec_greeting_name.png)no-repeat;
	background-size: cover;
	width: calc(650px / 2);
	height: calc(358px / 2);
	position: absolute;
	bottom: 2.5rem;
	right: 54%;
}
.sec_greeting .sg_bg{
	margin-bottom: 4rem;
}
.sec_greeting .sg_bg p{
	width: 50%;
	margin: 0 0 0 auto;
	position: relative;
}
.sec_greeting p.txt_2{
	margin-bottom: 4rem;
}
.sg_cols1{
	margin: 1rem 0 2rem;
}
.sg_cols2{
	margin: 0 0 5rem;
}
.sg_col > div{
	width: 50%;
}
.sec_greeting p.txt_4{
	position: relative;
}
.sg_col > div img{
	width: calc(800px / 2);
	box-shadow: var(--imgshadow);
	border-radius: var(--rounded);
}

@media(min-width:576px){
	.sec_greeting .indent{
		text-indent: -2.5rem;
		padding-left: 2.5rem;
	}
}

/* workplace
--------------------------------------------- */
.workplace{
	background: url(../images/top/workplace.jpg)no-repeat center;
	background-size: cover;
	width: 100%;
	height: calc(1654px / 2);
	display: flex;
	align-items: center;
	margin: 2rem 0 3rem;
}
.workplace .inner{
	width: 56%;
	margin: 0 0 0 auto;
}
.workplace h3,
.workplace h4,
.workplace p{
	color: white;
}
.workplace h3,
.workplace h4{
	font-family: var(--zen);
}
.workplace h3{
	font-size: 30px;
}

/* treatment
--------------------------------------------- */
.treatment{
	margin-bottom: 5rem;
}
.treatment h2{
	margin: 2rem 0 5rem;
}
.treatment .flex_cols{
	flex-wrap: wrap;
}
.treatment .flex_cols > div{
	width: 25%;
	margin-bottom: 1rem;
}
.treatment img{
/*	width: calc(496px / 2);*/
height: calc(519px / 2);
}

/* posts
--------------------------------------------- */
.posts{
	background: rgb(245, 245, 245);
	padding: 5rem 0;
}
.posts h5 {
	color: rgb(43, 43, 43);
	font-weight: 400;
	text-align: center;
	margin: 0 0 1.5rem;
}
.posts .flex_cols > div{
	width: 50%;
	padding: 0 1.5rem;
}
.posts .flex_cols > div td a{
	display: block;
	font-size: 15px;
    line-height: 1.5;
}
.posts .post_link{
	margin: 1rem 0 0;
}
.posts .post_link a{
	background: rgb(0 195 166);
	color: white;
	text-align: center;
	display: flex!important;
	align-items: center;
	justify-content: center;
	padding: 8px 1rem;
	filter: var(--filter15);
}
.posts .post_link a:before{
	content: '';
	background: url(../images/top/right.png)no-repeat center center;
	background-size: cover;
	width: calc(32px / 2);
	height: calc(32px / 2);
	display: block;
	margin-right: 1rem;
}
.posts table th,
.posts table td{
	vertical-align: baseline;
	padding: 13px 0;
}
.posts table th{
	font-family: var(--zengothic);
	font-weight: 400;
	width: 30%;
}

/*---------------------------------------------------------
フッター
---------------------------------------------------------*/
/* information
--------------------------------------------- */
.information{
	padding: 5rem 0 5rem;
}
.information .logo{
	text-align: center;
	margin: 1.5rem 0 5rem;
}
.information .logo img{
	width: calc(384px / 2);
}
.information .flex_cols > div{
	width: 50%;
}
.information .add p.address{
	letter-spacing: .1rem;
}
.information .add address{
	font-size: calc(56px / 2);
	font-family: var(--zen);
	color: rgb(0, 0, 0);
	font-weight: 600;
	font-style: normal;
	letter-spacing: .05rem;
	display: flex;
	align-items: center;
	margin: 1.5rem 0 1rem;
	line-height: 1;
}
.information .add address:before{
	content: '';
	background: url(../images/common/tel.png)no-repeat;
	background-size: calc(31px / 2);
	width: calc(31px / 2);
	height: calc(50px / 2);
	margin-right: 10px;
}
.information .add p{
	font-family: var(--zen);
	line-height: 1.3;
	margin: 0;
}
.information .information_link{
	display: flex;
	justify-content: start;
	margin-top: 1.5rem;
}
.information .information_link > div{
	margin-right: 1rem;
}
.information .information_link > div:last-child {
	margin-right: 0;
}
.information .information_link img{
	width: calc(240px / 2);
}
.information .medical_hours h6{
	text-align: center;
	font-weight: 400;
	letter-spacing: .2rem;
	margin: 0 0 1rem;
}
.information .medical_hours dl{
	font-family: var(--zen);
	display: flex;
	align-items: center;
	text-align: center;
	border-top:1px solid #000;
	padding: 1.2rem 0;
	margin: 0;
}
.information .medical_hours dl:last-of-type{
	border-bottom:1px solid #000;
}
.information .medical_hours dl dt{
	width: 30%;
	letter-spacing: .15rem;
	font-size: calc(36px / 2);
}
.information .medical_hours dl dd{
	width: 70%;
	font-size: calc(36px / 2);
	letter-spacing: 2px;
}
.information .medical_hours p {
	font-family: var(--zen);
	color: rgb(168, 31, 31);
	font-weight: 600;
	line-height: 1.312;
	text-align: center;
	filter: var(--filter13);
}

/* map
--------------------------------------------- */
footer .map {
	line-height: 0;
}

/* img_clinic
--------------------------------------------- */
footer .img img{
	width: 100%;
	height: 400px;
	object-fit: cover;
}

/* footer_menu
--------------------------------------------- */
.footer_menu{
	padding: 4rem 0 3rem;
}
.footer_menu ul a{
	display: block;
	font-family: var(--zen);
	font-size: calc(32px / 2);
}
.footer_menu nav > ul{
	display: flex;
	justify-content: space-between;
}
.footer_menu nav > ul > li > a{
	margin-bottom: 1rem;
}
.footer_menu ul{
	list-style: none;
	margin: 0;
	padding: 0;
}
.footer_menu ul ul a{
	font-size: calc(28px / 2);
	padding: 8px 0;
}
.footer_menu li{
	margin: 0;
}

/* searchform
--------------------------------------------- */
.searchform {
	font-family: var(--zen);
	position: relative;
	width: calc(410px / 2);
	height: calc(70px / 2);
	display: flex;
	border:1px solid var(--blue);
	margin: 0 0 0 auto;
}
.searchfield{
	width: calc(410px / 2);
	height: calc(70px / 2);
	outline: none;
	border: none!important;
	background: none;
	padding-left: 10px!important;
}
.searchform input[type="submit"]{
	cursor: pointer;
	border: none;
	width: calc(64px / 2);
	height: calc(67px / 2);
	background: url(../images/common/search.png)no-repeat center center;
	background-color: var(--blue);
	background-size: calc(39px / 2);;
	position: absolute;
	top: 0;
	right: 0;
}
.searchform input[type="submit"]:hover{
	opacity: .7;
}
.searchform ::placeholder{
	color: rgb(0, 0, 0);
	padding-left: .5rem;
	font-family: var(--zen);
	font-size: 14px;
	font-weight: 400;
}
.mob-search{
	padding: 20px 10px 10px;
}

/* copyright
--------------------------------------------- */
.copyright{
	background-color: var(--blue);
	text-align: center;
	color: white;
	padding: 2.4rem 0;
	filter: var(--filter12);
}
.copyright span{
	font-family: var(--zen);
	font-size: 12px;
	letter-spacing: .1rem;
}

/* sp_flex
--------------------------------------------- */
.sp_flex{
	display: flex;
	background-color: rgb(124, 194, 167);
	filter: var(--filter12);
	width: 100%;
	height: calc(140px / 2);
	position: fixed;
	bottom: 0;
	letter-spacing: 0;
	z-index: 999;
}
.sp_flex > div{
	width: 50%;
	position: relative;
}
.sp_flex > div:first-child:before{
	content: '';
	background: url(../images/common/sp_tel.png)no-repeat center center;
	background-size: calc(252px / 2);
	width: calc(252px / 2);
	height: calc(87px / 2);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
}
.sp_flex > div:first-child:after{
	content: '';
	background: white;
	width: 2px;
	height: 70%;
	position: absolute;
	top:50%;
	right:0;
	transform: translateY(-50%);
}
.sp_flex > div:last-child:before{
	content: '';
	background: url(../images/common/sp_reservation.png)no-repeat center center;
	background-size: calc(288px / 2);
	width: calc(288px / 2);
	height: calc(80px / 2);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
}
.sp_flex > div a{
	display: block;
    width: 100%;
    height: 100%;
    position: relative;
}


@media(min-width:576px){
	.sp_flex{
		display: none;
	}
}




/*---------------------------------------------------------
mobile　対応
---------------------------------------------------------*/
@media(max-width:1200px){
	html,body{
		overflow-x: hidden;
	}
}

/* container
--------------------------------------------- */
@media(max-width:992px){
	.container {
		width: 100%;
		padding-left: 1rem!important;
		padding-right: 1rem!important;
	}
}

/* ヘッダー
--------------------------------------------- */
@media(max-width:1200px){
	header#masthead{
		padding: 0 1rem;
	}
}

/* main_images
--------------------------------------------- */
@media(max-width:992px){
	.main_images{
		width: 100%;
	}
	.splide__slide .tlt {
		left: -25%;
	}
}



@media(max-width:768px){
	.main_images{
		margin: 0;
	}
	.splide__slide img{
		width: 100%;
		height: auto;
	}
	.main_images:before{
		width: 100%;
		height: 100%;
	}
	.splide__slide .tlt {
		position: relative;
		top: unset;
		left: unset;
		display: block;
		text-align: center;
		background: url(../images/top/sec_clinic_gd_sp.png)no-repeat center center;
		background-size: cover;
	}
	.splide .tlt h2{
		text-align: center;
		margin: 0;
		padding: 2rem 0 1rem;
	}
}

/* sec_clinic
--------------------------------------------- */
@media(max-width:768px){
	.sec_clinic .gradation{
		display: none;
	}
	.sec_clinic .wrap{
		padding: 1rem;
	}
}

@media(max-width:576px){
	.sec_clinic h2{
		font-size: 1.4rem;
		margin-bottom: 0;
	}
}

/* sec_point
--------------------------------------------- */
@media(max-width:768px){
	.sec_point .in_1 .flex_cols{
		justify-content: center;
	}
	.sec_point .in_1 .flex_cols > div:first-child{
		margin-bottom: 1.5rem;
	}
	.sec_point .in_2 .flex_cols{
		flex-wrap: wrap;
	}
	.sec_point .in_2 .flex_cols > div{
		width: 100%;
	}
	.sec_point .in_2 .flex_cols > div:first-child{
		margin-bottom: 1.5rem;
	}
}

@media(max-width:850px){
	.sec_point .in_3 .flex_cols > div img{
		width: 100%;

	}
}

@media(max-width:768px){
	.sec_point .in_3 .flex_cols > div,
	.sec_point .in_3 .flex_cols > div img{
		width: 100%;

	}
	.sec_point .in_5 .flex_cols{
		flex-wrap: wrap;
	}
	.sec_point .in_5 .flex_cols > div{
		width: 100%;
		margin-bottom: 1.5rem;
	}
}

@media(max-width:576px){
	.sec_point h2 {
		margin: 0 0 2rem;
		padding: 10px 0;
	}
	.sec_point h3 img {
		width: calc(90px / 2);
	}
	.sec_point .in_1 .flex_cols > div {
		width: 100%;
	}
	.sec_point .in_1 .flex_cols img {
		width: 100%;
		height: auto;
	}
	.sec_point .in_1 .flex_cols table td{
		margin-bottom:1rem;
	}
	.sec_point .in_2,
	.sec_point .in_4{
		padding: 4rem 0 1rem;
		margin-bottom: 5rem;
	}
	.sec_point .in_6 {
		padding: 4rem 0 1rem;
		margin-bottom: 2rem;
	}
}

/* sec_greeting
--------------------------------------------- */
@media(max-width:1200px){
	.sec_greeting .sg_bg p{
		padding-left: 1rem;
	}
}

@media(max-width:768px){
	.sec_greeting .sg_bg{
		flex-wrap: wrap;
	}
	.sec_greeting .sg_bg:before{
		position: unset;
		display: block;
		width: 100%;
		margin-bottom: 1.5rem;
	}
	.sec_greeting .sg_bg p{
		width: 100%;
		padding-left: 0;
	}
	.sec_greeting .sg_name {
		top: 46%;
		bottom: 0;
		right: 1rem;
	}
	.sg_cols1,
	.sg_cols2{
		flex-wrap: wrap;
	}
	.sg_cols2 {
		margin: 0;
	}
	.sg_col > div{
		width: 100%;
		text-align: center;
	}
	.sg_col > div.txt{
		text-align: left;
	}
	.sg_col > div img{
	 width:100%;
	}
}

@media(max-width:576px){
	.sec_greeting .sg_bg {
		margin-bottom: 2rem;
	}
	.sec_greeting .sg_bg:before{
		height: calc(875px / 2);
	}
	.sec_greeting .sg_name {
		background-size: cover;
		width: calc(455px / 2);
		height: calc(250px / 2);
		top: 28%;
	}
	.sec_greeting p.txt_2 {
		margin-bottom: 2rem;
	}
}

/* workplace
--------------------------------------------- */
@media(max-width:768px){
	.workplace{
		background-image: -moz-linear-gradient( -90deg, rgb(255,255,255) 0%, rgb(241,255,251) 100%);
		background-image: -webkit-linear-gradient( -90deg, rgb(255,255,255) 0%, rgb(241,255,251) 100%);
		background-image: -ms-linear-gradient( -90deg, rgb(255,255,255) 0%, rgb(241,255,251) 100%);
		height: auto;
		margin-bottom: 0;
		padding-bottom: 1rem;
	}
	.workplace .inner{
		width: 100%;
	}
	.workplace h3{
		background: url(../images/top/workplace.jpg)no-repeat center;
		background-size: cover;
		width: 100%;
		height: calc(800px / 2);
		margin: 0;
		padding-right: 1rem;
		display: flex;
		align-items: center;
		justify-content: end;
	}
	.workplace h4{
		color: var(--blue);
	}
	.workplace p{
		color: rgb(43, 43, 43);
	}
}

@media(max-width:576px){
	.workplace h3{
		height: calc(516px / 2);
	}
}

/* treatment
--------------------------------------------- */
@media(max-width:992px){
	.treatment img{
		height: auto;
	}
}

@media(max-width:576px){
	.treatment {
		margin-bottom: 2rem;
	}
	.treatment h2{
		margin: 0 0 3rem;
	}
	.treatment .flex_cols > div{
		width: 50%;
	}
}

/* posts
--------------------------------------------- */
@media(max-width:768px){
	.posts{
		background: none;
		padding: 0;
	}
	.posts .flex_cols{
		flex-wrap: wrap;
	}
	.posts .flex_cols > div{
		width: 100%;
		background: rgb(245, 245, 245);
		padding: 1.5rem 1rem;
	}
	.posts .flex_cols > div.info{
		margin-bottom: 1.5rem;
	}
}

/* information
--------------------------------------------- */
@media(max-width:850px){
	.information{
		padding: 3rem 0 1.5rem;
	}
	.information .logo{    
		margin: 0 0 2rem;
	}
	.information .flex_cols{
		flex-wrap: wrap;
		text-align: center;
	}
	.information .add address{
		justify-content: center;
		margin:1rem;
	}
	.information .flex_cols > div {
		width: 100%;
	}
	.information .information_link{
		justify-content: center;
	}
	.information .flex_cols > div.medical_hours{
		margin-top: 1.5rem;
	}
	footer .img img {
		height: auto;
	}
}

@media(max-width:576px){
	.information .information_link > div {
		margin-right: .5rem;
	}
	.information .information_link img {
		width: 100%;
	}
	.information .medical_hours dl dt {
		width: 40%;
	}
	.information .medical_hours dl dd {
		margin-left: 0;
	}
}

/* footer_menu
--------------------------------------------- */
@media(max-width:768px){
	.footer_menu {
		padding: 3rem 0 2rem;
	}
	.footer_menu nav > ul{
		display: block;
	}
	.footer_menu nav > ul > li{
		margin-bottom: 1.5rem;
	}
	.footer_menu nav > ul > li > a{
		margin-bottom: .5rem;
	}
	.footer_menu nav ul ul{
		display: flex;
		flex-wrap: wrap;
	}
	.footer_menu ul ul a{
		padding-right: 15px;
	}
}

/* copyright
--------------------------------------------- */
@media(max-width:576px){
	.copyright{
		margin-bottom: calc(140px / 2);
		padding: 1.4rem 0;
	}
}






/*---------------------------------------------------------
secondary 共通設定
---------------------------------------------------------*/
.secondary_main_images{
	background-image: url(../images/secondary/main.jpg);
	background-size: cover;
	width: 100%;
	height: 210px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.secondary_main_images h2{
	font-size: 40px;
	font-family: var(--zen);
	font-weight: 500;
	color: var(--blue);
	line-height: 1.125;
	letter-spacing: .2rem;
}

@media(max-width:576px){
	.secondary_main_images{
		height: 115px;
	}
	.secondary_main_images h2{
		font-size: 30px;
	}
}

/* パンくず
--------------------------------------------- */
.breadcrumb{
	background-color: rgb(242, 242, 242);
	padding: 5px 0;
}
.breadcrumb .breadcrumbs{
	margin: 0;
	font-size: 12px;
	font-family: var(--zen);
	line-height: 1;
}

/*---------------------------------------------------------
secondary レイアウト
---------------------------------------------------------*/
/*---------------------------------------------------------
secondary　下層
---------------------------------------------------------*/
/* 見出し
--------------------------------------------- */
@media(max-width:576px){
	#secondary_content_area h2.tlt{
		padding: 15px 0;
	}
}

h3.midashi{
	font-size: 25px;
	font-family: var(--zengothic);
	color: var(--blue_txt);
	line-height: 1.4;
	border-left: 5px solid rgb(175, 207, 247);
	filter: var(--filter13);
	padding-left: 1rem;
}
h4.midashi{
	font-size: 20px;
	font-family: var(--zengothic);
	color: var(--blue_txt);
	line-height: 1.4;
}

/* archive
--------------------------------------------- */
.archive-title{
	font-size: 18px;
	font-family: var(--zengothic);
	font-weight: 500;
	color: rgb(43, 43, 43);
	margin: 0;
	padding: 10px 0;
	line-height: 1.5;
}

/* single
--------------------------------------------- */
.single .entry-content p{
	line-height: 2;
}
.single-title{
	font-size: 18px;
	font-family: var(--zengothic);
	font-weight: 500;
	color: rgb(43, 43, 43);
	margin: 0;
	padding: 10px 0;
	line-height: 1.5;
}

/* widget-title
--------------------------------------------- */
.widget-title{
	font-size: 20px;
	font-family: var(--zengothic);
	color: var(--blue_txt);
	line-height: 1.4;
	text-align: left;
	margin-bottom: 0;
}
.widget-area ul{
	list-style: none;
	margin: 0;
	padding: 0;
}
.widget-area ul li a{
	display: block;
	border-bottom: 1px solid #e3e3e3;
	padding: 15px 0;
}

/* nav-links
--------------------------------------------- */
.nav-links{
	display: flex;
	justify-content: center;
}
.nav-links a{
	padding: 0 10px;
}
.nav-links *{
	font-weight: 600;
	color: var(--blue_txt);
}

@media(max-width:576px){
	.navigation.post-navigation	{
		margin-bottom:3rem;
	}
}


/* wp-pagenavi
--------------------------------------------- */
.wp-pagenavi{
	display: flex;
	justify-content: center;
}
.wp-pagenavi *{
	border: none!important;
}
.wp-pagenavi span,
.wp-pagenavi a{
	background: var(--blue_txt);
	color: white;
	padding: 7px 10px;
}

@media(max-width:576px){
	.wp-pagenavi{
		margin-bottom:3rem;
	}
.wp-pagenavi span, .wp-pagenavi a {
    padding: 4px 5px;
	}
}

/* search
--------------------------------------------- */
.error-404.not-found,
.no-results.not-found{
	text-align: center;
}
.search-tlt{
	font-size: 18px;
	font-family: var(--zengothic);
	font-weight: 500;
}
.search-title,.cannot-title{
	font-size: 18px;
	font-family: var(--zengothic);
	font-weight: 500;
	color: var(--blue_txt);
}
.no-results.not-found .searchform{
	margin: 0 auto;
}

/* secondary_content_area
--------------------------------------------- */
#secondary_content_area p{
	margin-top: 0;
}

/* flex_cols col2
--------------------------------------------- */
#secondary_content_area .flex_cols.col2{
	flex-wrap: wrap;
}
#secondary_content_area .flex_cols.col2 > div{
	width: calc(840px / 2);
	padding: 1rem 1rem;
	margin-bottom: 1.5rem;
}
#secondary_content_area .flex_cols.col2 > div.img{
	background: white;
}
#secondary_content_area .flex_cols.col2 > div p{
	font-size: 14px;
	line-height: 2.143;
}

@media(max-width:992px){
	#secondary_content_area .flex_cols.col2 > div {
		width: 100%;
	}
}

@media(max-width:768px){
	#secondary_content_area .flex_cols{
		flex-wrap: wrap;
	}
	#secondary_content_area .flex_cols > div{
		width: 100%;
	}
	#secondary_content_area .flex_cols.col2 > div{
		width: 100%;
	}
	#secondary_content_area .flex_cols > div.ml,
	#secondary_content_area .flex_cols > div.mr,
	#secondary_content_area .flex_cols.col2 > div.img{
		text-align: center;
		margin: 0 0 1.5rem;
	}
	#secondary_content_area .flex_cols > div p,
	#secondary_content_area .flex_cols.col2 > div.img h3,
	#secondary_content_area .flex_cols.col2 > div.img h4,
	#secondary_content_area .flex_cols.col2 > div.img p{	
		text-align: left;
	}
}

/* flex_cols col3
--------------------------------------------- */
#secondary_content_area .flex_cols.col3{
	flex-wrap: wrap;
}
#secondary_content_area .flex_cols.col3 > div.txt{
	width: 32.5%;
	padding: 1rem 1rem;
	margin-bottom: 1.5rem;
	border: 1px solid rgb(175, 207, 247);
	background: white;
}
#secondary_content_area .flex_cols.col3 > div.img{
	width: 32.5%;
	background: white;
	padding: 1rem 1rem 1.5rem;
}
#secondary_content_area .flex_cols.col3 > div.img img{
	width: 100%;
	min-height: 200px;
	object-fit: cover;
}
#secondary_content_area .flex_cols.col3 > div.txt h4,
#secondary_content_area .flex_cols.col3 > div.txt h5{
	font-size: 1.2rem;
	margin: 1rem 0;
}
#secondary_content_area .flex_cols.col3 > div.img h4,
#secondary_content_area .flex_cols.col3 > div.img h5{
	font-size: 1rem;
	margin: 1rem 0;
}
#secondary_content_area .flex_cols.col3 > div p{
	font-size: 14px;
	line-height: 2.143;
	margin: 0;
}

@media(max-width:768px){
	#secondary_content_area .flex_cols{
		flex-wrap: wrap;
	}
	#secondary_content_area .flex_cols > div{
		width: 100%;
	}
	#secondary_content_area .flex_cols.col3 > div,
	#secondary_content_area .flex_cols.col3 > div.img,
	#secondary_content_area .flex_cols.col3 > div.txt{
		width: 100%;
	}
	#secondary_content_area .flex_cols > div.ml,
	#secondary_content_area .flex_cols > div.mr,
	#secondary_content_area .flex_cols.col3 > div.img{
		text-align: center;
		margin: 0 0 1.5rem;
	}
	#secondary_content_area .flex_cols > div p,
	#secondary_content_area .flex_cols.col3 > div.img h3,
	#secondary_content_area .flex_cols.col3 > div.img h4,
	#secondary_content_area .flex_cols.col3 > div.img p{	
		text-align: left;
	}
}

/* inner_post
--------------------------------------------- */
.inner_post{
	background-color: white;
	box-shadow: var(--shadow);
	padding: 1rem;
}
.inner_post .wrap {
	border: 1px solid rgb(175, 207, 247);
	padding: 2rem 2rem;
}
.inner_post .wrap h3.midashi,
.inner_post .wrap h4.midashi,
.inner_post .wrap h4.bule{
	margin: 0 0 1.5rem;
}
.inner_post .wrap p:last-of-type{
	margin: 0;
}
.inner_post ul{
	list-style: none;
	margin: 2.5rem 0 0;
	padding: 0;
}
.inner_post ul li{
	margin-bottom: 1rem;
	padding-bottom: 1rem;
	padding-left: .5rem;
	border-bottom: 1px solid rgb(175, 207, 247);
}


@media(max-width:576px){
	.inner_post .wrap {
	padding: 2rem 1rem;
}
}


/* white-wrap
--------------------------------------------- */
.white-wrap{
	background: white;
	border: 1px solid rgb(175, 207, 247);
	padding: 2rem 1.5rem;
	margin-bottom: 1.5rem;
}
.white-wrap h4{
	border-left: 5px solid rgb(175, 207, 247);
	padding-left: 1rem;
	margin-top: 0;
	margin-bottom: 1rem;
}
.white-wrap p:last-of-type{
	margin-bottom: 0;
}

/* list_of
--------------------------------------------- */
.list_of{
	background: white;
	padding: 2rem 2.5rem;
}
.list_of > div{
	margin-bottom: 3rem;
}
.list_of > div h6{
	font-family: var(--zengothic);
	font-weight: 500;
	color: var(--blue_txt);
	margin: 0 0 1rem;
}

/* list
--------------------------------------------- */
ul.list{
	list-style: none;
	margin: 0;
	padding: 0;
}
ul.list li{
	background: white;
	font-family: var(--zengothic);
	font-weight: 500;
	color: var(--blue_txt);
	line-height: 1.4;
	padding: 15px 10px;
	margin-bottom: 15px;
	border-left: 5px solid rgb(175, 207, 247);
	filter: var(--filter13);
}

ul.list_bg{
	list-style: none;
	margin: 0;
	padding: 0;
}
ul.list_bg li{
	background: white;
	font-family: var(--zengothic);
	font-weight: 500;
	color: var(--blue_txt);
	line-height: 1.4;
	padding: 15px 15px;
	margin-bottom: 15px;
	border: 1px solid rgb(175, 207, 247);
	filter: var(--filter13);
}

.list dl{
	background: white;
	padding: 1rem;
}
.list dl dt{
	color: var(--blue_txt);
	font-size: 1.2rem;
	font-weight: 500;
	display: inline-block;
	border-bottom: 1px solid var(--blue_txt);
	margin-bottom: 1rem;
}
.list dl dd{
	margin: 0;
	line-height: 1.8;
}

/* qa
--------------------------------------------- */
.qa dl{
	background-color: rgba(255, 255, 255, .702);
	box-shadow: var(--shadow);
	padding: 2.5rem 2rem;
	margin-bottom: 3rem;
}
.qa dl:last-child{
	margin-bottom: 0;
}
.qa dl dt{
	font-size: 25px;
	font-family: var(--zengothic);
	font-weight: 500;
	color: var(--blue_txt);
	line-height: 1.4;
	filter: var(--filter13);
	margin-bottom: 20px;
	padding-left: 2rem;
	position: relative;
}
.qa dl dt:before{
	content: 'Q';
	color: #61c4a7;
	font-size: 30px;
	font-family: var(--zen);
	line-height: 1;
	position: absolute;
	top:0;
	left: 0;
}
.qa dl dd{
	line-height: 2;
	margin: 0;
	position: relative;
	padding-left: 2rem;
}
.qa dl dd:before{
	content: 'A';
	color: #61c4a7;
	font-size: 30px;
	line-height: 1;
	margin-right: 5px;
	font-family: var(--zen);
	position: absolute;
	top:0;
	left: 0;
}

@media (max-width: 576px) {
	.qa dl {
		padding: 2rem 1rem;
	}
	.qa dl dt {
		font-size: 20px;
	}
	.qa dl dt:before,
	.qa dl dd:before{
		font-size: 25px;
	}
}

/* layout_1
--------------------------------------------- */
.layout_1 th,
.layout_1 td{
	padding: 1rem;
	border: 1px solid #ccc;
}
.layout_1 th{
	width: 30%;
	background: #effffb;
	font-family: var(--zen);
	font-weight: 500;
}
.layout_1 tr th:not(.layout_1 tr:first-child th){
	width: 30%;
}
.layout_1.w-20 tr th:not(.layout_1 tr:first-child th){
	width: 20%;
}
@media (max-width: 576px) {
	.layout_1 .hiden{
		display:none;
	}
	.layout_1 {
		width: 100%;
	}
	.layout_1 td,
	.layout_1 th{
		display: block;
		width: 100%!important;
		border-bottom:none;
	}
	.layout_1 td{
		padding: 15px;
		display: block;
		width: 100%;
		line-height: 1.8;
	}
	.layout_1 td:before{
		content: attr(data-label);
		font-weight: 500;
		padding: 5px 10px;
		display: block;
		background-color: #f8f9fa;
	}
	.layout_1 tr td:first-child:before{
		background-color: black;
		color: white;
	}
	.layout_1 tr:last-child{
		border-bottom: solid 1px #ccc;
	}
	
	.layout_1.rec td:before{
		display:none;
	}
}

/* layout_2
--------------------------------------------- */
.layout_2 th,
.layout_2 td{
	padding: 1rem;
	border: 1px solid #ccc;
	background: white;
}
.layout_2 th{
	width: 30%;
	font-family: var(--zen);
	font-weight: 500;
}

@media (max-width: 576px) {
	.layout_2 th{
		width: 100%;
		border-bottom:none;
		border-top:none;
	}
		.layout_2 tr:first-child th{
		border-top:solid 1px #ccc;
	}
}

/* inquiry
--------------------------------------------- */
.inquiry th,
.inquiry td{
	padding: 1rem;
	border: 1px solid #ccc;
	background: white;
}
.inquiry th{
	width: 30%;
	font-family: var(--zen);
	font-weight: 500;
	background: #effffb;
}
.inquiry th p,
.inquiry td p{
	margin:0;
}
.inquiry th p{
	display:flex;
	justify-content: space-between;
}
.submit_{
	text-align:center;
}
.submit_ input[type="submit"]{
    text-align: center;
    background: #78c6a4;
    border: none;
    padding: 1rem 1.5rem;
    color: white;
}
.submit_ input[type="submit"]:hover{
	cursor:pointer;
}

@media (max-width: 576px) {
.inquiry th,
.inquiry input[type="text"],
.inquiry input[type="url"], 
.inquiry input[type="email"],
.inquiry input[type="tel"]{
	width: 100%;
}
}

/* table
--------------------------------------------- */
@media (max-width: 576px) {
	table th,
	table td{
		width: 100%;
		display: block;
	}
}

.table th,.table td{
	padding:20px;
	border-bottom:1px solid #ccc;
}
.table.career th,.table.career td{
	padding:10px;
}
@media (max-width: 576px) {
	.table.career th,.table.career td{
	text-align: left;
}
}

.quiz_{
	text-align:center;
}
.wpcf7-quiz-label{
	display:block;
}

.doctorsfile{
	text-align:center;
}
@media(max-width:576px){
	.doctorsfile{
		padding:0 15px;
	}
	.doctorsfile img{
	width:100%;
}
}
