@charset "UTF-8";

body {
    text-align:center;
	font-family: dnp-shuei-gothic-kin-std,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	color:#423932;
	font-size: 17px;
	font-weight: 500;
	font-style: normal;
	/*font-feature-settings: "halt";*/
	letter-spacing: .06em;
	line-height: 2.08em;
	padding:0;
	margin:0;
	background:#fff;
	-webkit-text-size-adjust: 100%;
}
div,
dl,dt,dd,ul,ol,li,
h1,h2,h3,h4,h5,h6,
pre,form,fildset,p,blockquote{
	margin:0;
	padding:0;
	border:0;
	font-size:100%;
}
img{
    max-width: 100%;
    height: auto;
/*    width: auto;*/
	width: auto\9;
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	vertical-align: top;
	display: block;
	margin: auto;
}
table {
    font-size:inherit;
    font:100%;
	border-collapse: separate;
	border-spacing: 0;
}
address{
	font-style:normal;
}
ul{
	list-style:none;
}
a{
	color: inherit;
	text-decoration: none;
	outline: 0;
	transition: color 0.8s, background-color 0.8s;
}
a:hover{
	transition: color 0.4s, background-color 0.4s;
}
i {font-weight: normal !important;}	/*アイコンフォント*/
.clearfix:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}
.clearfix {
  min-height: 1px;
}
* html .clearfix {
  height: 1px;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}
/*<group=style>*/
.fw_bold{font-weight: 700;}
.fw_normal{font-weight: 400;}	
/*</group>*/

/*<group=text_align>*/
.txt_al_l{text-align:left;}
.txt_al_r{text-align:right;}
.txt_al_c{text-align:center;}
.sp_txt_l{text-align:center;}
/*</group>*/

/*<group=float>*/
.flt_l{float:left;}
.flt_r{float:right;}	
/*</group>*/

.blocklink,
.blocklink_out,
.blocklink_ank{
	cursor:pointer;
}
.img_max {
	width: 100% !important;
	max-width: initial !important;
}
.change_img img {margin-left: auto; margin-right: auto;}

/* スマホで電話をかけるボタン：画像対応 
.sp_tel_btn {
	position: relative;
}
.sp_tel_btn img {
	position: relative;
	z-index: 0;
}
.sp_tel_btn span,
.sp_tel_btn a {
	display: block;
}
.sp_tel_btn a {
	content: "";
	position: absolute;
	z-index: 1;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
}*/
.ank_adjust {
    /*padding-top: 150px;
    margin-top: -150px;*/
}
.flexbox {
	display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.fs15{
    font-size:15px;
    line-height: 1.6em;
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
body {
	font-size: 15px;
	letter-spacing: .05em;
	line-height: 2.0em;
}
.fs15{
    font-size:13px;
    line-height: 1.5em;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
/* スマホのときはビューポートを基準にサイズ調節する */
/* スマホ時：emまたは%で指定する */
/* スマホ以外でビューポート基準にするときは、その都度「vw」で指定する */
body {
	font-size: 4.1vw;
	letter-spacing: .05em;
	line-height: 1.8em;
}
.fs15{
    font-size: 3.5vw;
    line-height: 1.5em;
}
/*<group=text_align>*/
.sp_txt_l{text-align:left;}	
/*</group>*/
}




/*共通
---------------------------------------------------------*/
#wrapper{
	overflow: hidden;
}
.max_width {
	width: 94%;
	padding: 0 3%;
	margin-left: auto;
	margin-right: auto;
}
.max_1500 {
	width: 100%;
	max-width: 1500px;
	margin: 0 auto;
	text-align: left;
}
.w1500 {
	width: 94%;
	padding: 0 3%;
	max-width: 1500px;
	margin: 0 auto;
	text-align: left;
}
.w1440 {
	width: 94%;
	padding: 0 3%;
	max-width: 1440px;
	margin: 0 auto;
	text-align: left;
}
.w1420 {
	width: 94%;
	padding: 0 3%;
	max-width: 1420px;
	margin: 0 auto;
	text-align: left;
}
.w1400 {
	width: 94%;
	padding: 0 3%;
	max-width: 1400px;
	margin: 0 auto;
	text-align: left;
}
.w1380 {
	width: 94%;
	padding: 0 3%;
	max-width: 1380px;
	margin: 0 auto;
	text-align: left;
}
.w1320 {
	width: 94%;
	padding: 0 3%;
	max-width: 1320px;
	margin: 0 auto;
	text-align: left;
}
.w1350 {
	width: 94%;
	padding: 0 3%;
	max-width: 1350px;
	margin: 0 auto;
	text-align: left;
}
.w1310 {
	width: 94%;
	padding: 0 3%;
	max-width: 1310px;
	margin: 0 auto;
	text-align: left;
}
.w1300 {
	width: 94%;
	padding: 0 3%;
	max-width: 1300px;
	margin: 0 auto;
	text-align: left;
}
.w1290 {
	width: 94%;
	padding: 0 3%;
	max-width: 1290px;
	margin: 0 auto;
	text-align: left;
}
.w1280 {
	width: 94%;
	padding: 0 3%;
	max-width: 1280px;
	margin: 0 auto;
	text-align: left;
}
.w1250 {
	width: 94%;
	padding: 0 3%;
	max-width: 1250px;
	margin: 0 auto;
	text-align: left;
}
.w1240 {
	width: 94%;
	padding: 0 3%;
	max-width: 1240px;
	margin: 0 auto;
	text-align: left;
}
.w1200 {
	width: 94%;
	padding: 0 3%;
	max-width: 1200px;
	margin: 0 auto;
	text-align: left;
}
.w1180 {
	width: 94%;
	padding: 0 3%;
	max-width: 1180px;
	margin: 0 auto;
	text-align: left;
}
.w1140 {
	width: 94%;
	padding: 0 3%;
	max-width: 1140px;
	margin: 0 auto;
	text-align: left;
}
.w1100 {
	width: 94%;
	padding: 0 3%;
	max-width: 1100px;
	margin: 0 auto;
	text-align: left;
}
.w900{
	width: 94%;
	padding: 0 3%;
	max-width: 900px;
	margin: 0 auto;
	text-align: left;
}
.ft_dip {
    font-family: "eixample-dip-narrow", sans-serif;
    font-weight: 400;
    font-style: normal;
}
.com_txt_link {
	text-decoration: underline;
	text-underline-offset: .1em;
	text-decoration-color: #423932;
}
.com_txt_link:hover {
	text-decoration: none;
	color: #63B7A3;
}

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

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






/* 隙間
---------------------------------------------------------*/
.com_btm_150{
    margin-bottom: 150px;
}
.com_btm_120{
    margin-bottom: 120px;
}
.com_btm_100{
    margin-bottom: 100px;
}
.com_btm_90{
    margin-bottom: 90px;
}
.com_btm_80{
    margin-bottom: 80px;
}
.com_btm_70{
    margin-bottom: 70px;
}
.com_btm_60{
	margin-bottom: 60px;
}
.com_btm_50{
	margin-bottom: 50px;
}

.com_top_120{
    margin-top: 120px;
}
.com_top_100{
    margin-top: 100px;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
.com_btm_150{
    margin-bottom: 15%;
}
.com_btm_120{
    margin-bottom: 12%;
}
.com_btm_100{
    margin-bottom: 10%;
}
.com_btm_90{
    margin-bottom: 9%;
}
.com_btm_80{
    margin-bottom: 8%;
}
.com_btm_70{
    margin-bottom: 7%;
}
.com_btm_60{
	margin-bottom: 6%;
}
.com_btm_50{
	margin-bottom: 5%;
}
  
.com_top_120{
    margin-top: 12%;
}    
.com_top_100{
    margin-top: 10%;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.com_btm_150{
    margin-bottom: 17%;
}
.com_btm_120{
    margin-bottom: 14%;
}
.com_btm_100{
    margin-bottom: 12%;
}
.com_btm_90{
    margin-bottom: 11%;
}
.com_btm_80{
    margin-bottom: 10%;
}
.com_btm_70{
    margin-bottom: 9%;
}
.com_btm_60{
	margin-bottom: 8%;
}
.com_btm_50{
	margin-bottom: 7%;
}
   
.com_top_120{
    margin-top: 12%;
}     
.com_top_100{
    margin-top: 12%;
}
}





/* com_index1
---------------------------------------------------------*/
.com_index1{
    background: linear-gradient(to right,  rgba(99,183,163,1) 1%,rgba(132,212,193,1) 100%);
    text-align: center;
    color: #fff;
    font-size:168%;
    letter-spacing: 0.1em;
    line-height: 1.5em;
    padding: 1.1em 0;
    margin-bottom: 70px;
}
.com_index1_box{
    max-width: 1240px;
    margin: 0 auto;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
.com_index1{
    font-size:150%;
    padding: .8em 0;
    margin-bottom: 4%;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.com_index1{
    font-size:135%;
    letter-spacing: 0.05em;
    padding: .6em 0;
    margin-bottom: 5%;
}
}





/* com_index1
---------------------------------------------------------*/
.com_index1{
    background: linear-gradient(to right,  rgba(99,183,163,1) 1%,rgba(132,212,193,1) 100%);
    text-align: center;
    color: #fff;
    font-size:168%;
    letter-spacing: 0.1em;
    line-height: 1.5em;
    padding: 1.1em 0;
    margin-bottom: 70px;
}
.com_index1_box{
    max-width: 1240px;
    margin: 0 auto;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
.com_index1{
    font-size:150%;
    padding: .8em 0;
    margin-bottom: 4%;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.com_index1{
    font-size:135%;
    letter-spacing: 0.05em;
    padding: .6em 0;
    margin-bottom: 5%;
}
}





/*swiper共通設定
---------------------------------------------------------*/
.swiper {
    overflow: visible !important;
}
.swip_ticker .swiper-wrapper {
	transition-timing-function: linear !important;	/*滑らかに流れ続ける*/
}
.swiper-fade .swiper-slide {
    transition-property: opacity !important;	/* フェードモード時 共通調整 */
}





/*header
---------------------------------------------------------*/
header{
    display: block;
    padding: 22px 35px 18px;
    box-sizing: border-box;
}
header .h_inbox .h_logo{
    width: 35%;
    max-width: 360px;/*295px*/
    margin-top: 8px;
}
header .h_inbox .h_contact{
    width:62%;
    max-width: 640px;
}
header .h_inbox .h_contact .h_link1{
    text-align: right;
    margin-bottom: 23px;
}
header .h_inbox .h_contact .h_link1 p,
header .h_inbox .h_contact .h_link1 ul,
header .h_inbox .h_contact .h_link1 li{
    display: inline-block;
    line-height: 1em;
}
header .h_inbox .h_contact .h_link1 p{
    font-size:95%;
    margin-right: 0.5em;
}
header .h_inbox .h_contact .h_link1 li{
    margin: 0 -0.05em;
}
header .h_inbox .h_contact .h_link1 li a{
    display: block;
    font-size:80%;
    background: rgba(242,242,242,0.7);
    padding: .35em 1.2em .35em 1.3em;
    box-sizing: border-box;
    border-radius: 50px;
}
header .h_inbox .h_contact .h_link1 li a:hover,
header .h_inbox .h_contact .h_link1 li:nth-child(2) a{
    background: rgba(99,183,163,0.10);
    color: #63B7A3;
}
header .h_inbox .h_contact .h_link2 .sp_tel_btn{
    width: 56.5%;
}
header .h_inbox .h_contact .h_link2 .h_web{
    width: 39.3%;
    
}
header .h_inbox .h_contact .h_link2 .h_web a{
    position: relative;
    display: block;
    background: #63B7A3;
    border-radius: 50px;
}
header .h_inbox .h_contact .h_link2 .h_web a::before{
    position: absolute;
    display: block;
    content: "";
    background: url("../images/h_web_arrow.svg")no-repeat top right;
    background-size: 100% auto;
    width: 30px;
    height: 30px;
    top:-10px;
    right: 7%;
    filter: drop-shadow(0 0 5px rgba(0,0,0,0.2));
}
header .h_inbox .h_contact .h_link2 .h_web a:hover{
    background: #11988B;
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1300px) {
header{
    padding: 2vw 3% 1.8vw;
}
header .h_inbox .h_contact .h_link1{
    margin-bottom: 1.8vw;
}
header .h_inbox .h_contact .h_link2 .h_web a::before{
    top:-0.8vw;
    right: 2%;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
header{
    padding: 2.5vw 1.5% 2.5vw 3%;
}
header .h_inbox .h_logo{
    width: 35%;
    margin-top: 1vw;
}
header .h_inbox .h_contact .h_link1{
    margin-bottom: 1.5vw;
}
header .h_inbox .h_contact .h_link1 li a{
    padding: .3em 1em .3em 1.1em;
}
header .h_inbox .h_contact .h_link2 .sp_tel_btn{
    width: 57%;
}
header .h_inbox .h_contact .h_link2 .h_web{
    width: 40%;
}
header .h_inbox .h_contact .h_link2 .h_web a::before{
    width: 3vw;
    height: 3vw;
    top:-1vw;
    right: 5%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
header{
    padding: 4vw 4% 4vw;
}
header .h_inbox .h_logo{
    width:60%;
    margin-top: 0;
}
header .h_inbox .h_contact{
    display: none;
}
}









/*メインナビ
---------------------------------------------------------*/
.m_nav_area {
    width: 94%;
    max-width: 988px;
    margin: 0 auto;
    background:rgba(255,255,255,0.9);
    border-radius: 10px;
    padding: 0 1.3em;
    box-sizing: border-box;
    z-index: 50!important;
}
.frontpage .m_nav_area{
    position: absolute;
    bottom: 100px;/*55px*/
    left: 0;
    right: 0;
}
.m_nav {
	position: relative;
	width: 100%;
	display: flex;
    justify-content: space-between;
	font-size:90%;
    font-weight: bold;
	white-space: nowrap;
    line-height: 1em;
}
.m_nav > li {
	position: relative;
    width: 10%;
    text-align: center;
    box-sizing: border-box;
}
.m_nav > li:nth-child(1),
.m_nav > li:nth-child(5){    
    width: 10.5%;}
.m_nav > li:nth-child(2){    
    width: 20%;}
.m_nav > li:nth-child(3){    
    width: 22%;}
.m_nav > li:nth-child(4){    
    width: 13%;}
.m_nav > li:nth-child(6),
.m_nav > li:nth-child(7){    
    width: 12%;}

.m_nav > li > a {
	position: relative;
	display: block;
	text-align: center;
	white-space: nowrap;
    padding: 2.4em 0;
}
.m_nav > li > a::before {/*現在地*/
	position: absolute;
	content: "";
	background-color: #63B7A3;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	left: 50%;
	bottom: 1.5em;
	opacity: 0;
	transition: all 0.4s;
}
.m_nav > li > a.select::before,
.m_nav > li > a:hover::before {
	opacity: 1;
}
.m_nav > li > a::after{
    position: absolute;
    display: block;
    content: "";
    background: rgba(66,57,50,0.35);
    background-size: 100% auto;
    width: 1px;
    height: 1.3em;
    top: 50%;
	transform: translateY(-50%);
    right: 0;
}
.m_nav > li:last-child > a::after{
    display: none;}

.m_nav .open_trigger a span{
    position: relative;
    padding-right: 1em;
    box-sizing: border-box;
}
.m_nav .open_trigger strong.open_txt {
    position: relative;
    width: 100%;
}
.m_nav .open_trigger strong.round_btn {
    position: absolute;
	display: block;
	width: 7px;
	height: 7px;
	top: 53%;
	transform: translateY(-50%);
    right: 0;
}
.m_nav .open_trigger strong.round_btn::before,
.m_nav .open_trigger strong.round_btn::after{
	content: '';
    display: block;
    width: 7px;
    height: 1px;
    border-radius: 5px;
    background: #423932;
    position: absolute;
    left: 0;
	right: 0;
    top: 50%;
    transform: translateY(-50%);
	margin: auto;
}
.m_nav .open_trigger strong.round_btn::after {
	background: #423932;
	transform: translateY(-50%) rotate(90deg);
	transition: 0.5s;
}
.m_nav .open_trigger.open .round_btn::after {
	transform: rotate(0);
	transition: 0.5s;
}

/* アコーディオンメニュー */
.in_menu {
    position: absolute;
	display: none;
	background:#FAF9F9;
	width: 100%;
	left: 50%;
    top:calc(100% + 0.6em);
	transform: translateX(-50%);
	box-sizing: border-box;
    border-radius: 30px;
	z-index: 500;
}
/*下に表示する場合*/
.m_nav_area.open_bottom .in_menu {
	bottom:calc(100% + 0.6em);
	top: auto;
}
.in_menu a {
	position: relative;
	display: block;
	box-sizing: border-box;
	padding: .6em 0;
}

/*下層メインイメージ内メニューのみ*/
.contentpage .m_img_area .m_nav_area .in_menu{
    top:calc(100% + -1.5em);
}

/*abo_inmenu*/
.in_menu.abo_inmenu{
    padding: 25px 11% 25px 16%;
    text-align: left;
}
.in_menu.abo_inmenu li{
    position: relative;
}
.in_menu.abo_inmenu li:last-child{
    margin-bottom: 0;
}
.in_menu.abo_inmenu li::before{
    position: absolute;
	font-family: 'fontello';
	content: '\e800';	
	right: 0;
	font-size: 70%;
	top: 50%;
	transform: translateY(-50%);
    transition: 0.4s;
}
.in_menu.abo_inmenu li:hover{
    color: #63B7A3;
}
.in_menu.abo_inmenu li:hover::before{
    transition: 0.4s;
}

/*med_inmenu*/
.m_nav > li.menu_med{
    position: static;
}
.in_menu.med_inmenu {
	width: 147%!important;
    left: 50%;
    padding: 40px 5.5% 50px;
}

/*com_med_menu*/
.com_med_menu{
    display: flex;
	flex-wrap: wrap;
    font-size:110%;
    line-height: 1em;
}
.com_med_menu li{
    width: 19.36%;
    margin-right: 0.8%;
    margin-top: 0.8%;
}
.com_med_menu li:nth-child(-n+5){
    margin-top: 0;
}
.com_med_menu li:nth-child(5n){
    margin-right: 0;
}
.com_med_menu li a{
    display: block;
    background: #fff;
    border:1px solid #F2F2F2;
    border-radius: 30px;
    padding: 1.8em 0;
    box-sizing: border-box;
    transition: 0.3s;
}
.com_med_menu li a:hover{
    border-color:#63B7A3;
    transition: 0.3s;
}
/*精密検査ページとアクセスページの診療フッターでは、「精密検査」非表示*/
.examination .f_medical .com_med_menu li.type_color,
.access .f_medical .com_med_menu li.type_color{
    display: none;
}
.examination .f_medical .com_med_menu li,
.access .f_medical .com_med_menu li{
	 margin-top: 0.8%!important;
}
.examination .f_medical .com_med_menu li:nth-child(-n+6),
.access .f_medical .com_med_menu li:nth-child(-n+6){
    margin-top: 0!important;
}
.examination .f_medical .com_med_menu li,
.access .f_medical .com_med_menu li{
	 margin-right: 0.8%!important;
}
.examination .f_medical .com_med_menu li:nth-child(6),
.examination .f_medical .com_med_menu li:last-child,
.examination .f_medical .com_med_menu li:nth-child(11),
.access .f_medical .com_med_menu li:nth-child(6),
.access .f_medical .com_med_menu li:nth-child(11),
.access .f_medical .com_med_menu li:last-child{
    margin-right: 0!important;
}
.com_med_menu li.type_color a{
    background: #63B7A3;
    border:1px solid #63B7A3;
    color: #fff;
}
.com_med_menu li.type_color a:hover{
    background: #11988B;
    border-color:#11988B;
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1500px) {
.m_nav_area {
    padding: 0 1.3em;
}
.m_nav .open_trigger a span{
    padding-right: .7em;
}

/*abo_inmenu*/
.in_menu.abo_inmenu{
    padding-left: 11%;
    padding-right: 11%;
}

/*med_inmenu*/
.in_menu.med_inmenu {
	width: 92vw!important;
    left: 50%;
    padding: 2vw 2vw;
}    

/*com_med_menu*/
.com_med_menu li a{
    padding: 1.55em 0;
    border-radius: 20px;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.m_nav_area {
    padding: 0 1em;
}
.frontpage .m_nav_area{
    bottom:7vw;
}
.m_nav {
	letter-spacing: normal;
}
.m_nav > li > a {
    padding: 2.1em 0;
}
.m_nav .open_trigger a span{
    padding-right: .8em;
}

/* アコーディオンメニュー */
.in_menu {
    border-radius: 20px;
}

/*abo_inmenu*/
.in_menu.abo_inmenu{
    padding: 1.8vw 10%;
}

/*med_inmenu*/
.in_menu.med_inmenu {
	width: 100%!important;
    left: 50%;
    padding: 2vw 2%;
}

/*com_med_menu*/
.com_med_menu{
    font-size:100%;
    letter-spacing: normal;
}
.com_med_menu li a{
    border-radius: 10px;
    padding: 1.3em 0;
}
}

/* TBデバイスが横向き
------------------------------------------*/
@media (orientation: landscape) and (min-width: 768px) and (max-width: 959px) {

}

/* TBデバイスが縦向き
------------------------------------------*/
@media (orientation: portrait) and (min-width: 768px) and (max-width: 959px) {
.frontpage .m_nav_area{
    bottom:15vw!important;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.m_nav_area {
	display: none !important;
}
.com_med_menu{
    font-size: 85%!important;
    margin-bottom: -1.3%!important;
    justify-content: space-between!important;
}
.com_med_menu li{
    width: 49%!important;
    margin-bottom: 1.3%!important;
}
.com_med_menu li a{
    border-radius: 20px!important;
    padding: 1.5em 0!important;
}
}




/*スクロールメニュー
---------------------------------------------------------*/
#scl_header {
	position: fixed;
	z-index: 500;
	left: 0;
	top: 0;
	width: 100%;
	background-color: #FFF;
	box-sizing: border-box;
	transform: translateY(-100%);
    border-bottom: 1px solid #423932;
    padding: 0 1em;
}
#scl_header.is-show {
	display: block;
	transform: translateY(0);
	opacity: 1;
    animation: sclAnimation 1.0s;
}
#scl_header .scl_flex {
	display: flex;
    justify-content: space-between;
    align-items: center;
}
#scl_header .scl_flex .scl_nav_area{
    width: 70%;
    max-width: 950px;
}
#scl_header .scl_flex .scl_nav_area .m_nav > li > a{
    padding: 2.5em 0;
}
#scl_header .scl_flex .scl_nav_area .m_nav > li:last-child > a::after{
    display: block;
}
#scl_header .in_menu.med_inmenu {
    width: 147%!important;
    max-width: 1500px;
    left:73%;
}
#scl_header .scl_flex .scl_content{
    width: 29%;
    max-width: 430px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
#scl_header .scl_flex .scl_content .sp_tel_btn{
    width: 40%;
}
#scl_header .scl_flex .scl_content .scl_web{
    width: 55%;
}
#scl_header .scl_flex .scl_content .scl_web img{
    display: block;
    background:#63B7A3;
    border-radius: 100px;
    overflow: hidden;
    transition: 0.4s;
}
#scl_header .scl_flex .scl_content .scl_web a:hover img{
    background:#11988B;
    transition: 0.2s;
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1450px) {
#scl_header {
    padding: 0 .1em;
}
#scl_header .scl_flex .scl_nav_area .m_nav > li > a{
    padding: 2em 0;
    letter-spacing: normal;
    font-size: min(100%,1.3vw);
}
#scl_header .scl_flex .scl_nav_area .in_menu a{
    font-size: min(100%,1.3vw);
}
#scl_header .in_menu.med_inmenu {
    width: 130%!important;
    left:71%;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#scl_header {
    padding: 0 .2em;
}
#scl_header .scl_flex .scl_nav_area{
    width: 67%;
}
#scl_header .scl_flex .scl_nav_area .m_nav > li > a{
    padding: 2em 0;
    font-size:1.3vw;
    letter-spacing: normal;
}
#scl_header .in_menu.abo_inmenu{
    width: 130%;
}    
#scl_header .in_menu.med_inmenu {
    width: 140%!important;
    left: 74.5%;
}
#scl_header .scl_flex .scl_content{
    width:32%;
}
#scl_header .scl_flex .scl_content .sp_tel_btn{
    width: 41%;
}
#scl_header .scl_flex .scl_content .scl_web{
    width: 56%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#scl_header {
	display: none !important;
}
}

/* スクロールメニューアニメーション */
@keyframes sclAnimation {
	0% {
		transform: translateY(-100%);
	}
	100% {
		transform: translateY(0);
	}
}







/* 下層メインイメージ
---------------------------------------------------------*/
.contentpage .m_img_area{
    position: relative;
    padding-top: 15px;
}
.contentpage .m_titlebox{
    padding-top: 52px;
    margin-bottom: 30px;
}
.contentpage .m_title{
    position: relative;
    text-align: center;
    padding-top: 20px;
}
.contentpage .m_title::before{
    position: absolute;
    display: block;
    content: "";
    background: url(../images/com_lead_deco.svg)no-repeat top center;
    background-size: 100% auto;
    width: 5px;
    height: 5px;
    top:0;
    left: 0;
    right: 0;
    margin: 0 auto;
}
.contentpage .m_title .fw_bold{
    font-size:320%;
    letter-spacing: -0.01em;
    line-height: 1.4em;
}
.contentpage .m_title .ft_dip{
    font-size:90%;
    letter-spacing: 0.1em;
    line-height: 1em;
}
.contentpage .pankuzu{
    text-align: right;
    font-size:13px;
    margin-top: 40px;
    letter-spacing: 0.01em;
    line-height: 1em;
}
.contentpage .pankuzu li{
    position: relative;
    display: inline-block;
    padding-right: 1.3em;
}
.contentpage .pankuzu li:last-child{
    padding-right: 0;
}
.contentpage .pankuzu li::before{
    position: absolute;
    display: block;
    content: "＞";
    top:0;
    right: 0;
}
.contentpage .pankuzu li:last-child::before{
    display: none;
}
.contentpage .pankuzu li,
.contentpage .pankuzu li a{
    color: #A09B98;
}
.contentpage .pankuzu li a{
    text-decoration: underline;
}
.contentpage .pankuzu li a:hover{
    text-decoration: none;
    color: #63B7A3
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
.contentpage .m_img_area{
    padding-top: 0;
    margin-top: -1.5vw;
}
.contentpage .m_titlebox{
    padding-top: 2vw;
    margin-bottom: 2vw;
}
.contentpage .m_title{
    padding-top: 2vw;
}
.contentpage .m_title .fw_bold{
    font-size: 4.8vw;
}
.contentpage .pankuzu{
    font-size: 11px;
    letter-spacing: normal;
    margin-top: 3.2vw;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.contentpage .m_img_area{
    padding-top: 5vw;
}
.contentpage .m_titlebox{
    padding-top: 1vw;
    margin-bottom: 2vw;
}
.contentpage .m_title{
    padding-top: 2.7vw;
}
.contentpage .m_title .fw_bold{
    font-size: 8vw;
}
.contentpage .pankuzu{
    font-size: 2.5vw;
    margin-top: 5vw;
    letter-spacing: normal;
}
}





/* com_lead
---------------------------------------------------------*/
.com_lead{
    text-align: center;
}
.com_lead_tit{
    font-size: min(230%,3.85vw);
    letter-spacing: normal;
    line-height: 1.4em;
}
.com_lead_tit span{
    color: #63B7A3;
}
.com_lead_txt{
    margin-top: 2em;
}
.com_lead .com_btn1{
    margin-top: 2.1em;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
.com_lead_tit{
    margin-bottom: .5em;
}
.com_lead_txt{
    margin-top: 1.3em;
}
.com_lead .com_btn1{
    margin-top: 1.6em;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.com_lead_tit{
    font-size: 150%;
    line-height: 1.55em;
    margin-bottom: .4em;
}
.com_lead_txt{
    margin-top: .8em;
    text-align: left;
}
.com_lead .com_btn1{
    margin-top: 1.3em;
}
}





/* f_medical
---------------------------------------------------------*/
.f_medical{
    background: rgba(237,236,235,0.30);
    padding: 65px 0;
    box-sizing: border-box;
}
.f_medical p.ft_dip{
    font-size:115%;
    line-height: 1em;
    letter-spacing: 0.1em;
    margin-bottom: 1.5em;
    color: #63B7A3;
    text-align: center;
}
.f_medical .com_med_menu{
    text-align: center;
    font-weight: bold;
    font-size:100%;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
.f_medical{
    padding: 5% 0;
}
.f_medical p.ft_dip{
    margin-bottom: 1.2em;
}
.f_medical .com_med_menu{
    font-size: 1.75vw;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.f_medical{
    padding: 10% 0;
}
.f_medical p.ft_dip{
    font-size:120%;
    margin-bottom: 1em;
}
}





/* f_bnr
---------------------------------------------------------*/
.f_bnr{
    padding: 50px 0;
    border-top:rgba(66,57,50,0.35) 1px solid;
}
.f_bnr .f_bnr_list > li{
    border-left: 1px solid rgba(66,57,50,0.35);
    width: 17.5%;
    box-sizing: border-box;
    text-align: center;
    padding: 0 10px;
    align-items: center;	
    display: flex;
}
.f_bnr .f_bnr_list > li:last-child{
    width: 30%;
    border-right: 1px solid rgba(66,57,50,0.35);
}
.f_bnr .f_bnr_list > li:last-child img{
    width: 100%!important;
    max-width: 100%!important;
    height: auto!important;
}
.f_bnr .f_bnr_list > li > div{
    display: inline-block;
    align-items: center;	
    margin: 0 auto;
}
.f_bnr .f_bnr_list > li .ft_dip{
    font-size:170%;
    letter-spacing: normal;
    font-weight: normal;
}
.f_bnr .f_bnr_list > li:nth-child(1) .ft_dip{
    font-size:205%;
}
.f_bnr .f_bnr_list > li:nth-child(4) .ft_dip{
    font-size:175%;
    margin: .05em 0 -0.2em;
}
.f_bnr .f_bnr_list > li p:nth-child(2){
    font-size: 75%;
    border-left-style: 0.15em;
    font-weight: bold;
    margin-top: .2em;
}
.f_bnr .f_bnr_list > li:nth-child(3) p:nth-child(2){
    font-size: 88%;
}
.f_bnr .f_bnr_list > li .col2{
    width:100px;
    margin: 0 auto;
}
.f_bnr .f_bnr_list > li .col2 li{
    width: 48%;
}
.f_bnr .f_bnr_list > li:nth-child(4) img{
    display: block;
    overflow: hidden;
    width: 26px;
}
.f_bnr .f_bnr_list > li:nth-child(4) i{
    font-size:60%;
    color: #5F6368;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
.f_bnr{
    padding: 4.5% 0 4%;
}
.f_bnr .f_bnr_list > li{
    padding: 0 5px;
}
.f_bnr .f_bnr_list > li .ft_dip{
    font-size:2.7vw;
}
.f_bnr .f_bnr_list > li:nth-child(1) .ft_dip{
    font-size:3.5vw;
}
.f_bnr .f_bnr_list > li:nth-child(4) .ft_dip{
    font-size: 2.7vw;
    margin: -0.1em 0 -0.3em;
}
.f_bnr .f_bnr_list > li p:nth-child(2){
    font-size: 1.5vw;
    margin-top:-0.3em;
}
.f_bnr .f_bnr_list > li:nth-child(3) p:nth-child(2){
    font-size: 1.6vw;
    margin-top: 0;
}
.f_bnr .f_bnr_list > li .col2{
    width:10vw;
}
.f_bnr .f_bnr_list > li:nth-child(4) img{
    width:2.8vw;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.f_bnr{
    padding: 8% 0;
}
.f_bnr .f_bnr_list > li{
    width: 50%;
    margin-bottom: 4%
}
.f_bnr .f_bnr_list > li:nth-child(even){
    border-right: 1px solid rgba(66,57,50,0.35);
}
.f_bnr .f_bnr_list > li:last-child{
    width: 100%;
    margin-bottom: 0;
}
.f_bnr .f_bnr_list > li:last-child a{
    width: 100%;
    padding: 0;
    margin: 0;
}
.f_bnr .f_bnr_list > li .ft_dip{
    font-size:6vw;
}
.f_bnr .f_bnr_list > li:nth-child(1) .ft_dip{
    font-size:7.5vw;
}
.f_bnr .f_bnr_list > li:nth-child(4) .ft_dip{
    font-size:6vw;
    margin: -0.1em 0 -0.3em;
}
.f_bnr .f_bnr_list > li p:nth-child(2){
    font-size: 2.8vw;
    margin-top: -0.1em;
}
.f_bnr .f_bnr_list > li:nth-child(3) p:nth-child(2){
    font-size: 2.8vw;
    margin-top: 0;
}
.f_bnr .f_bnr_list > li .col2{
    width:18vw;
}
.f_bnr .f_bnr_list > li:nth-child(4) img{
    width: 6vw;
}
.f_bnr .f_bnr_list > li:nth-child(4) i{
    font-size: 2vw;
}
}






/* com_btn1
---------------------------------------------------------*/
.com_btn1 a{
    position: relative;
    display: inline-block;
    min-width: max-content;
    color: #fff;
    background: #423932;
    border-radius:200px;
    font-size:15px;
    font-weight: bold;
    padding: .85em 4em .85em 2.5em;
    box-sizing:border-box;
    width: 100%;
    max-width: 290px;
    text-align: left;
}
.com_btn1 a::before{
    position: absolute;
	font-family: 'fontello';
	content: '\e800';	
	right: 2.9em;
	font-size:70%;
	top: 50%;
	transform: translateY(-50%);
}
.com_btn1.out a::before{
	transform: translateY(-50%) rotate(-45deg);
}
.com_btn1 a:hover{
    background: #63B7A3;}

.com_btn1.icon_flow a::before{
	content: '\e803';
    font-size:75%;
    top: 50%;
}

/*type2*/
.com_btn1.type2 a{
    border:1px solid #63B7A3;
    background: #fff;
    color: #63B7A3;
    padding-top: .75em;
    padding-bottom: .75em;
}
.com_btn1.type2 a:hover{
    border:1px solid #63B7A3;
    background: #63B7A3;
    color: #fff;
}

/*type390*/
.com_btn1.type390 a{
    max-width: 390px;
}

/*com_btn1_list*/
.com_btn1_list{
    text-align: center;
    margin-top: 60px;
}
.com_btn1_list li{
    display: inline-block;
    margin-right: 20px;
}
.com_btn1_list li:last-child{
    margin-right: 0;
}
.com_btn1_list li a{
    width: 290px;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
.com_btn1 a{
    padding: .7em 3em .7em 1.5em;
    max-width: 270px;
}
.com_btn1 a::before{
	right: 2em;
}
    
/*type2*/
.com_btn1.type2 a{
    padding: .65em 1.8em;
}
    
/*com_btn1_list*/
.com_btn1_list{
    margin-top: 4%;
}
.com_btn1_list li{
    margin-right: 1%;
}
.com_btn1_list li a{
    width: 270px;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.com_btn1 a{
    font-size: 90%;
    padding: .7em 3em .7em 1.5em;
    width: 70%;
    max-width: 100%;
    text-align: center;
}
.com_btn1.sp_big a{
    width: 90%;
}
.com_btn1 a::before{
	right: 1.8em;
}
    
/*type2*/
.com_btn1.type2 a{
    padding-top: .65em;
    padding-bottom: .65em;
}
/*type_spfull*/
.com_btn1.type_spfull a{
    width: 100%!important;
    max-width: 100%!important;
}
    
/*sp_widthauto*/
.icon_flow.sp_widthauto a{
    width: auto;
    padding-left: 3.5em;
    padding-right: 3.5em;
}
    
/*com_btn1_list*/
.com_btn1_list{
    margin-top: 5%;
}
.com_btn1_list li{
    display: block;
    margin-right: 0;
    margin-bottom: 4%;
}
.com_btn1_list li:last-child{
    margin-right: 0;
    margin-bottom: 0;    
}
.com_btn1_list li a{
    width: 70%;
}
}




/* com_btn2
---------------------------------------------------------*/
.com_btn2{
    text-align: center;
    font-size:90%;
    letter-spacing: 0.1em;
    line-height: 1em;
}
.com_btn2 a{
    position: relative;
    font-weight: bold;
    padding-right: 1.5em;
    box-sizing: border-box;
}
.com_btn2 a::before{
    position: absolute;
	font-family: 'fontello';
	content: '\e800';	
	right: 0;
	font-size: 70%;
	top: 0;
    transition: 0.4s;
}
.com_btn2 a:hover::before{	
	right: -1em;
    transition: 0.2s;
}
.com_btn2.type_soto a::before{
	content: '\e801';
    top: 0.5em;
}
.com_btn2.type_line a{
    padding-bottom: 1.5em;
}
.com_btn2.type_line.ft_dip a{
    padding-bottom: 1.1em;
}
.com_btn2.type_line a::after{
    position: absolute;
    display: block;
    content: "";
    background: #423932;
    background-size: 100% auto;
    width: calc(100% + 1em);
    height: 1px;
    bottom: 0;
    left: -0.5em;
}
.com_btn2.ft_dip a{
    font-size:110%;
    letter-spacing: 0.12em;
    font-weight: normal;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
.com_btn2.type_line a{
    padding-bottom: 1.2em;
}
.com_btn2.type_line.ft_dip a{
    padding-bottom: 1em;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.com_btn2{
    letter-spacing: 0.05em;
}
.com_btn2.type_line a{
    padding-right: 1.2em;
    padding-bottom: 1.1em;
}
.com_btn2.type_line.ft_dip a{
    padding-bottom: 1em;
}
}





/*com_btn_list
---------------------------------------------------------*/
.com_btn_list{
	display: flex;
}
.com_btn_list li{
	width: 100%;
	max-width: 290px;
	margin-right: 1em;
}
.com_btn_list .com_btn1 a{
	max-width: 100%;
	width: 100%;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.com_btn_list{
	justify-content: center;
}
.com_btn_list li{
	max-width: 250px;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.com_btn_list{
	display: block;
}
.com_btn_list li{
	margin: 0 auto;
	width: 70%;
}
}





/* drawer
---------------------------------------------------------*/
.drw_inbox .dr_box1{
    padding: 5% 4% 4%;
    box-sizing: border-box;
}
.drw_inbox .dr_box1 .dr_home{
    text-align: left;
    margin-bottom: 8%;
}
.drw_inbox .dr_box1 .dr_home a{
    display:inline-block;
    padding: .9em 3em .8em;
    box-sizing: border-box;
    border:1px solid #423932;
    border-radius: 500px;
    line-height: 1em;
    font-size:78%;
    font-weight: bold;
    letter-spacing: 0.1em;
}
.drw_inbox .dr_box1 li{
    width: 48.5%;
    border-top:1px solid rgba(66,57,50,0.35);
    font-size:85%;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 1em;
    text-align: left;
}
.drw_inbox .dr_box1 li:nth-child(1),
.drw_inbox .dr_box1 li:nth-child(2){
    border-top:none;
}
.drw_inbox .dr_box1 li a{
    position: relative;
    display: block;
    padding: 1.5em .5em;
    box-sizing: border-box;
}
.drw_inbox .dr_box1 li a::before{
    position: absolute;
	font-family: 'fontello';
	content: '\e802';	
	right: .5em;
	font-size:50%;
	top: 50%;
	transform: translateY(-50%);
}

/*dr_box2*/
.com_sp_med_menu{
    background: #63B7A3;
    padding: 8% 4%;
    box-sizing: border-box;
}
.com_sp_med_menu > p.ft_dip{
    font-size:130%;
    line-height: 1em;
    letter-spacing: 0.1em;
    margin-bottom: 1em;
    color: #fff;
    text-align: center;
}
.com_sp_med_menu ul{
    margin-bottom: -2%!important;
}
.com_sp_med_menu li{
    width: 49.2%!important;
    margin-bottom: 2%!important;
    border:none!important;
}
.com_sp_med_menu li a{
    display: block;
    background: #fff;
    border-radius: 50px;
    padding: 1.5em 0!important;
    box-sizing: border-box;
    text-align: center;
    line-height: 1em!important;
    font-size: 85%!important;
    font-weight: bold;
    border:none!important;
}
.com_sp_med_menu li a::before{
    display: none;
}
.com_sp_med_menu li.type_color a{
    background: #423932;
    color: #fff;
}

/*dr_box3*/
.drw_inbox .dr_box3{
    padding: 8% 4% 20vw;
}
.drw_inbox .dr_box3 > .flexbox{
    margin-bottom: -4%;
}
.drw_inbox .dr_box3 > .flexbox > li{
    width: 50%;
    border-left:1px solid rgba(66,57,50,0.35);
    box-sizing: border-box;
    text-align: center;
    margin-bottom: 4%;
    line-height: 1em;
    padding: .8em 0;
}
.drw_inbox .dr_box3 > .flexbox > li:nth-child(even){
    border-right:1px solid rgba(66,57,50,0.35);
}
.drw_inbox .dr_box3 > .flexbox > li:nth-child(1) .ft_dip{
    font-size:180%!important;
}
.drw_inbox .dr_box3 > .flexbox > li .ft_dip{
    font-size:150%!important;
    letter-spacing: normal!important;
    font-weight: normal!important;
}
.drw_inbox .dr_box3 > .flexbox > li p:nth-child(2){
    font-size: 75%;
    border-left-style: 0.15em;
    font-weight: bold;
    margin-top: 1em;
}
.drw_inbox .dr_box3 .dr_box3_col2{
    width:50%;
    margin: 0 auto;
}
.drw_inbox .dr_box3 .dr_box3_col2 li{
    width: 48%;
}
.drw_inbox .dr_box3 > .flexbox > li:nth-child(4) img{
    display: block;
    overflow: hidden;
    width: 6vw;
}
.drw_inbox .dr_box3 > .flexbox > li:nth-child(4) .ft_dip{
    margin: .25em 0 .4em;
}
.drw_inbox .dr_box3 > .flexbox > li:nth-child(4) i{
    font-size:60%;
    color: #5F6368;
}





/* com_style
---------------------------------------------------------*/
.com_style1 dt{
	font-size: min(3.2vw,175%);
	letter-spacing: 0.06em;
	line-height: 1.5em;
	font-weight: bold;
	margin-bottom: 0.5em;
}
.com_style1 dt span{
	color: #63B7A3;
}

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

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) {
.com_style1 dt{
	font-size:  145%;
	letter-spacing: 0.05em;
	line-height: 1.4em;
	margin-bottom: 0.4em;
}
}





/*com_faq_list
---------------------------------------------------------*/
.com_faq_list > li{
	padding-top: 60px;
	margin-top: 55px;
	border-top: 1px solid rgba(66,57,50,0.5);
}
.com_faq_list > li:first-child{
	padding-top: 10px;
	margin-top: 0;
	border-top: none;
}
.com_faq_list > li dl{
	max-width: 1200px;
    margin: 0 auto;
}
.com_faq_list > li dt,
.com_faq_list > li dd{
	padding-left: 5.3em;
	position: relative;
}
.com_faq_list > li dt{
	margin-bottom: 3.5em;
}
.com_faq_list > li dt::before{
	position: absolute;
	content: "";
	background: url("../images/icon_q.svg") no-repeat left top;
	background-size: 100% 100%;
	width: 3.529412em;
	height: 3.529412em;
	left: 0;
	top:-0.9em;
}
.com_faq_list > li dd::before{
	position: absolute;
	content: "";
	background: url("../images/icon_a.svg") no-repeat left top;
	background-size: 100% 100%;
	width: 3.529412em;
	height: 3.529412em;
	left: 0;
	top:-0.6em;
}
.com_faq_list > li dt p{
	font-size: 115%;
	letter-spacing: 0.1em;
	line-height: 1.5em;
	font-weight: bold;
}

.com_faq_list > li dd a{
	position: relative;
    display: inline-block;
    border:1px solid #63B7A3;
    background: #fff;
    color: #63B7A3;
    border-radius:200px;
    font-size:15px;
    font-weight: bold;
	padding: .75em 2.5em;
    box-sizing:border-box;
    width: 100%;
    max-width: 290px;
    text-align: left;
	margin-top: 1.8em;
}
.com_faq_list > li dd a::before{
    position: absolute;
	font-family: 'fontello';
	content: '\e800';	
	right: 2.9em;
	font-size:70%;
	top: 50%;
	transform: translateY(-50%);
}
.com_faq_list > li dd a:hover{
    border:1px solid #63B7A3;
    background: #63B7A3;
    color: #fff;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.com_faq_list > li{
	padding-top: 6%;
	margin-top:5.5%;
}
.com_faq_list > li:first-child{
	padding-top: 1%;
}
.com_faq_list > li dt{
	margin-bottom: 4%;
}
.com_faq_list > li dd a{
	 max-width: 250px;
	 padding: .65em 1.8em;
	margin-top: 1.5em;
}
.com_faq_list > li dd a::before{
    right: 2em;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.com_faq_list > li{
	padding-top: 8%;
	margin-top: 7.5%;
}
.com_faq_list > li:first-child{
	padding-top: 0;
}
.com_faq_list > li dt,
.com_faq_list > li dd{
	padding-left: 3.6em;
}
.com_faq_list > li dt::before{
	width: 2.6em;
	height: 2.6em;
	top:0em;
}
.com_faq_list > li dd::before{
	width: 2.6em;
	height: 2.6em;
	top:0em;
}
.com_faq_list > li dt{
	margin-bottom:1em;
}
.com_faq_list > li dt p{
	font-size: 115%;
	letter-spacing: 0.05em;
}
.com_faq_list > li dd a{
	font-size: 90%;
    padding: .65em 0;
    width: 100%;
    max-width: 100%;
    text-align: center;
	margin-top: 1em;
}
.com_faq_list > li dd a::before{
    right: 1.8em;
}
}





/* footer
---------------------------------------------------------*/
footer{
    background: #fff;
}
/*f_box1*/
footer .f_box1{
    /*background: #806E61;*/
	background: #8C7D72;
    padding: 120px 0 100px;
}
footer .f_box1,
footer .f_box1 a{
    color: #fff;
}
footer .f_box1 .flex_l{
    width: 48%;
    max-width: 520px;
}
footer .f_box1 .flex_l .clinic_name{
    font-size:165%;
    font-size: min(165%,3.2vw);
    line-height: 1em;
}
footer .f_box1 .flex_l address{
    font-size:90%;
    line-height: 1.5em;
    margin: 2.4em 0;
}
.com_timetable{
    margin-bottom: 2.8rem;
}
.com_timetable p{
    font-size:93%;
    letter-spacing: 0.25em;
    line-height: 1.4em;
    margin-top: .7em;
    text-align: center;
}
.com_btnlist{
    max-width: 520px;
    margin-left: auto;
    margin-right: auto;
}
.com_btnlist li:nth-child(1){
    width: 52%;
}
.com_btnlist li:nth-child(2){
    width: 46%;
}
.com_btnlist li:nth-child(2){
    background: #63B7A3;
    border-radius: 50px;
    transition: 0.8s;
}
.com_btnlist li:nth-child(2):hover{
    background: #11988B;
    transition: 0.2s;
}
footer .f_box1 .flex_r{
    width: 47.5%;
}
footer .f_box1 .flex_r iframe{
    border-radius: 30px!important;
}
footer .f_box1 .flex_r .com_btn2.type_line{
    margin-top: 0.5em;
}
footer .f_box1 .flex_r .com_btn2.type_line a::after{
    background: #fff;
}

footer .f_box1 .sitemap{
    font-size:90%;
    line-height: 1em;
    max-width: 960px;
    margin: 100px auto 0 0;
}
footer .f_box1 .sitemap .sitemap1{
    width: 22%;
}
footer .f_box1 .sitemap .sitemap2{
    width:52.5%;
}
footer .f_box1 .sitemap .sitemap3{
    width:20%;
}
footer .f_box1 .sitemap p,
footer .f_box1 .sitemap li{
    margin-bottom: 1.2em;
}
footer .f_box1 .sitemap li:last-child{
    margin-bottom: 0;
}
footer .f_box1 .sitemap a{
    position: relative;
    padding-left: 1.25em;
    box-sizing: border-box;
    transition: 0.4s;
}
footer .f_box1 .sitemap a:hover{
    color: #63B7A3;
    transition: 0.2s;
}
footer .f_box1 .sitemap a::before{
    position: absolute;
	font-family: 'fontello';
	content: '\e802';	
	left: 0;
	font-size:55%;
	top: 55%;
	transform: translateY(-50%);
}
footer .f_box1 .sitemap2 li,
footer .f_box1 .sitemap3 li{
    font-size:85%;
    margin-bottom: 1em;
}
footer .f_box1 .sitemap li:last-child{
    margin-bottom: 0!important;
}
footer .f_box1 .sitemap2 a::before,
footer .f_box1 .sitemap3 a::before{
    position: absolute;
    display: block;
	content: "-";	
	left: 0;
	font-size:100%;
    font-weight: bold;
	top: 55%;
	transform: translateY(-50%);
}
footer .f_box1 .sitemap .col3 ul:nth-child(1){
    width: 28.5%;
}
footer .f_box1 .sitemap .col3 ul:nth-child(2){
    width: 28.5%;
}
footer .f_box1 .sitemap .col3 ul:nth-child(3){
    width: 35%;
}

/*f_box2*/
footer .f_box2{
    padding: 50px 0;
}
footer .f_box2 .bnr_tit{
    text-align: center;
    font-size:88%;
    letter-spacing: 0.12em;
    color: #63B7A3;
    line-height: 1em;
    margin-bottom: 1.8em;
}
footer .f_box2 .bnr_list{
    margin-bottom: -1.5em;
}
footer .f_box2 .bnr_list li{
    float: left;
    width: 24.5%;
    margin-right: 0.6666%;
    margin-bottom: 1.5em;
}
footer .f_box2 .bnr_list li:nth-child(4n){
    margin-right: 0;
}
footer .f_box2 .copy_box{
    background: #A4ADAC;
    width: 94%;
    max-width: 1420px;
    margin: 75px auto 0;
    border-radius: 30px;
    padding: 35px 2.8em 35px 3.4em;
    box-sizing: border-box;
    color: #fff;
    letter-spacing: 0.12em;
    line-height: 1.6em;
    transition: 0.8s;
}
footer .f_box2 .copy_box:hover{
    background: #63B7A3;
    transition: 0.4s;
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1300px) {
/*f_box1*/
footer .f_box1{
    padding: 8vw 0 6vw;
}
footer .f_box1 .flex_l address{
    letter-spacing: normal;
    margin: 2em 0;
}
.com_timetable{
    margin-bottom: 2rem;
}
.com_timetable p{
    letter-spacing: 0.1em;
}
footer .f_box1 .flex_r iframe{
    height:40vw;
}

footer .f_box1 .sitemap{
    letter-spacing: normal;
    margin: 8vw auto 0 0;
}
footer .f_box1 .sitemap a{
    padding-left: 1em;
}

/*f_box2*/
footer .f_box2{
    padding: 4vw 0;
}
footer .f_box2 .bnr_tit{
    margin-bottom: 1.3em;
}
footer .f_box2 .bnr_list{
    margin-bottom: -1%;
}
footer .f_box2 .bnr_list li{
    margin-bottom: 1%;
}
footer .f_box2 .copy_box{
    margin: 6vw auto 0;
}
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
/*f_box1*/
footer .f_box1{
    padding: 8vw 0;
}
footer .f_box1 .flex_l address{
    margin: 1.5em 0;
}
.com_timetable{
    margin-bottom: 2rem;
}
.com_timetable p{
    letter-spacing: 0.1em;
}
footer .f_box1 .flex_r iframe{
    height: 40vw;
    border-radius:20px!important;
}

footer .f_box1 .sitemap{
    letter-spacing: normal;
    margin: 8vw auto 0 0;
}
footer .f_box1 .sitemap a{
    padding-left: 1.1em;
}

/*f_box2*/
footer .f_box2{
    padding: 4vw 0 3vw;
}
footer .f_box2 .bnr_tit{
    margin-bottom: 1.5em;
}
footer .f_box2 .bnr_list{
    margin-bottom: 1%;
}
footer .f_box2 .bnr_list li{
    margin-bottom: 1%;
}
footer .f_box2 .copy_box{
    font-size:100%;
    margin: 6% auto 0;
    border-radius: 20px;
    padding: 3vw 2em 3vw 2em;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
/*f_box1*/
footer .f_box1{
    padding: 12% 0 10%;
}
footer .f_box1 .f_box1_inbox.flexbox{
    display: block;
}
footer .f_box1 .flex_l{
    width: 100%;
    max-width: 100%;
}
footer .f_box1 .flex_l .clinic_name{
    font-size: 150%;
    text-align: center;
}
footer .f_box1 .flex_l address{
    text-align: center;
    line-height: 1.7em;
    margin: 1.5em 0;
}
.com_timetable{
    margin-bottom: 2rem;
}
.com_timetable p{
    letter-spacing: 0.1em;
    margin-top: .7em;
}
footer .f_box1 .flex_r{
    width: 100%;
    margin-top: 8%;
}
footer .f_box1 .flex_r iframe{
    height: 60vw;
}

footer .f_box1 .sitemap{
    line-height: 1em;
    max-width: 100%;
    margin: 17% auto 0 0;
}
footer .f_box1 .sitemap > .flexbox{
    display: block;
}
    
footer .f_box1 .sitemap .sitemap1{
    width: 100%;
    margin-bottom: 2em;
}
footer .f_box1 .sitemap .sitemap1 ul,
footer .f_box1 .sitemap .sitemap3 ul{
    display: flex;
    justify-content: space-between;
	flex-wrap: wrap;
}
footer .f_box1 .sitemap .sitemap1 ul li,
footer .f_box1 .sitemap .sitemap3 ul li{
    width: 50%;
}
footer .f_box1 .sitemap .sitemap2{
    width:100%;
    margin-bottom: 2em;
}
footer .f_box1 .sitemap .sitemap3{
    width:100%;
}
footer .f_box1 .sitemap p{
    margin-bottom: .8em;
}
footer .f_box1 .sitemap .sitemap3 p{
    font-size:110%;
    margin-bottom: .6em;
}
footer .f_box1 .sitemap li{
    margin-bottom: 1em;
}
footer .f_box1 .sitemap a{
    padding-left: 1em;
}
footer .f_box1 .sitemap .sitemap2 a,
footer .f_box1 .sitemap .sitemap3 a{
    padding-left: 0.7em;
    font-size:95%;
}
footer .f_box1 .sitemap2 li,
footer .f_box1 .sitemap3 li{
    font-size:85%;
    margin-bottom:.7em;
}
footer .f_box1 .sitemap .col3{
    flex-wrap: wrap;
}
footer .f_box1 .sitemap .col3 ul:nth-child(1){
    width: 50%;
}
footer .f_box1 .sitemap .col3 ul:nth-child(2){
    width: 50%;
}
footer .f_box1 .sitemap .col3 ul:nth-child(3){
    width: 100%;
    margin-top: .7em;
    display: flex;
    justify-content: space-between;
	flex-wrap: wrap;
}
footer .f_box1 .sitemap .col3 ul:nth-child(3) li{
    width: 50%;
}
    
/*スマホサイトマップ*/
footer .f_box1 .sitemap{
    background: #726359;
    border-radius: 30px;
}
footer .f_box1 .sitemap .open_btn {
	cursor: pointer;
    position: relative;
	padding: .9em 1em 1em;
	background-color: #413933;
    color: #fff;
    border-radius: 30px;
    text-align: center;
    font-size:130%;
    line-height: 1em;
    letter-spacing: 0.1em;
}
footer .f_box1 .sitemap .open_btn strong{
    font-weight: normal;
    padding-right: 1em;
    box-sizing: border-box;
}
footer .f_box1 .sitemap .open_btn.active {
	background-color: #726359;
}
footer .f_box1 .sitemap .open_box {
	display: none;
    padding: 3% 6% 8% 6%;
    box-sizing: border-box;
}
footer .f_box1 .sitemap .icon_open {
	letter-spacing: normal;
	line-height: 1.0em;
	display: inline-block;
	vertical-align: middle;
	width: 1em;
	height: 1em;
	position: absolute;
	right: 32vw;
	top: 50%;
	transform: translateY(-50%);
}
footer .f_box1 .sitemap .icon_open::before,
footer .f_box1 .sitemap .icon_open::after {
	content: "";
	position: absolute;
	width: .6em;
	height: 1px;
	background: rgba(255,255,255,0.5);
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}
footer .f_box1 .sitemap .open_btn .icon_open::after {
	transform: rotate(90deg);
	transition: all 0.4s;
}
footer .f_box1 .sitemap .open_btn.active .icon_open::after {
	transform: rotate(0deg);
}
    
    
    
    
    
    
/*f_box2*/
footer .f_box2{
    padding: 10% 0 18vw;
}
footer .f_box2 .bnr_tit{
    letter-spacing: 0.1em;
    margin-bottom: 1em;
}
footer .f_box2 .bnr_list{
    margin-bottom: -2%;
}
footer .f_box2 .bnr_list li{
    width: 49%;
    margin-right: 2%;
    margin-bottom: 2%;
}
footer .f_box2 .bnr_list li:nth-child(2n){
    margin-right: 0;
}
footer .f_box2 .copy_box{
    width: 96%;
    margin: 10% auto 0;
    border-radius: 20px;
    padding: 5.5vw 5% 5.3vw;
    line-height: 1em;
    font-size: 88%;
}
footer .f_box2 .copy_box .pagetop{
    width: 4vw;
}
}





/*スマホフッター
---------------------------------------------------------*/
@media only screen and (min-width: 768px) {
#sp_footer {display: none!important;}}
#sp_footer {
	position: fixed;
	width: 100%;
    max-height: 110px;
	left: 0;
	bottom: 0;
	z-index: 999;
    display: flex;
    justify-content: space-between;
}
#sp_footer li{
    width: 50%;
    background: #F6F5F5;
    text-align: center;
}
#sp_footer li:nth-child(2){
    background: #63B7A3;
}















/*アニメーション
---------------------------------------------------------*/
/*4本のちょんちょんが伸びる*/
.com_chon{
    position: absolute;
    width: 1px;
    height: 60px;
    overflow: hidden;
    transform: rotate(135deg);
}
.com_chon.type1{
    transform: rotate(135deg);
    top: 0;
    left: 0;
}
.com_chon.type2{
    transform: rotate(-135deg);
    top: 0;
    right: 0;
}
.com_chon.type3{
    transform: rotate(45deg);
    bottom: 0;
    left: 0;
}
.com_chon.type4{
    transform: rotate(-45deg);
    bottom: 0;
    right: 0;
}
.com_chon::before{
    content: '';
    display: block;
    width: 100%;
    height: 0;
    background-color: #423932;
}
.anime_on .com_chon::before{
    animation: anime_com_chon .4s forwards;
    animation-delay: 1s;
}
@keyframes anime_com_chon {
  0% {
    height: 0;
  } 
  60% {
    height: 100%;
  }
  100% {
    height: 60%;
  }
}




/* com_chon_tit
---------------------------------------------------------*/
.com_chon_tit{
    position: relative;
    font-size:80%;
    letter-spacing: 0.12em;
    line-height: 1em;
    color: #77B763;
    margin-bottom: 1.5em;
    display: inline-block;
    margin-left: 1.5em;
}
.com_chon_tit_inbox{
    display: flex;
    align-items: center;	
}
.com_chon_tit span:nth-child(2){
    font-size:150%;
    font-weight: normal;
    padding: 0 .3em 0 .4em;
    box-sizing: border-box;
}
.com_chon_tit .com_chon{
    width: 1.5px;
    height: .7em;
}
.com_chon_tit .com_chon::before{
    background-color: #77b763;
}
.com_chon_tit.anime_on .com_chon::before{
    animation: anime_com_chon 1s forwards;
    animation-delay: 0;
}
.com_chon_tit .com_chon.type1{
    top:-0.8em;
    left: -0.8em;
}
.com_chon_tit .com_chon.type2{
    top:-0.8em;
    right: -0.8em;
}
.com_chon_tit .com_chon.type3{
    bottom:-0.8em;
    left: -0.8em;
}
.com_chon_tit .com_chon.type4{
    bottom:-0.8em;
    right: -0.8em;
}

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

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.com_chon_tit{
    display: inline-block;
    font-size:80%;
    letter-spacing: 0.12em;
    line-height: 1em;
    margin-left:auto;
    margin-bottom: 1.5em;
}
}



/*当院で満たす施設基準及び加算に関する掲示
---------------------------------------------------------*/
.infoadd_bnr.com_btn1.type2 {
	margin-top: 2.4em;
	margin-left: auto;
	margin-right: auto;
}
.infoadd_bnr.com_btn1.type2 a {
	max-width: 420px;
	border: 1px solid #fff;
	background: none;
	color: #fff;
	padding-top: .75em;
	padding-bottom: .75em;
}
.infoadd_bnr.com_btn1.type2 a:hover{
    border:1px solid #63B7A3;
    background: #63B7A3;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.infoadd_bnr.com_btn1.type2 {
	margin-top: 2em;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.infoadd_bnr.com_btn1.type2 {
	margin-top: 2em;
}
.infoadd_bnr.com_btn1.type2 a {
	max-width: 100%;
}
}



/* PC
------------------------------------------*/
@media only screen and (min-width: 960px)  {
.tb_only{display:none !important;}
.sp_only{display:none !important;}
.sp_tb{display:none !important;}
.sp_pc{display:block !important;}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.pc_only{display:none !important;}
.sp_only{display:none !important;}
.sp_pc{display:none !important;}
.sp_pc{display:none !important;}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.pc_only{display:none !important;}
.tb_only{display:none !important;}
.tb_pc{display:none !important;}
.sp_pc{display:block!important;}
}