.sp{
	display:none;
}

.main_menu_list{
	width:95%;
	margin:0 auto;
}

.main_menu_list li{
	border-radius:5px;
	min-height: 400px;
	margin:0 auto 30px;
}

.main_menu_list li a{
	display:block;
	width:100%;
	height:100%;
	padding:30px 10px;
	box-sizing:border-box;
}

.main_menu_list li:first-child{
	background:URL(../img/main_menu_li_glp1.png);
	background-size: cover;
}

.main_menu_list li:nth-child(2){
	background:URL(../img/main_menu_li_faga.png);
	background-size: cover;
}

.main_menu_list li:nth-child(3){
	background:URL(../img/main_menu_li_aga.png);
	background-size: cover;
}
.main_menu_list li:nth-child(4){
	background:URL(../img/main_menu_li_stemcell.png);
	background-size: cover;
}
.main_menu_list li h3{
	font-size:140%;
	color:#c25959;
	margin:0 0 30px;
	padding-bottom:10px;
	position:relative;
}

.main_menu_list li h3:after{
	content:"";
	width:10%;
	background:#c25959;
	height:1px;
	position:absolute;
	bottom:0;
	left:0;
}

.main_menu_list li h4{
	font-weight:normal;
	font-size:110%;
	margin:0 0 30px;
}

.main_menu_list li h4 span{
	color:#c25959;
	font-weight:bold;
}

.main_menu_list li .readmore{
	background:#c25959;
	width:15%;
	text-align:center;
	position:relative;
	color:#fff;
	font-weight:bold;
	font-size:75%;
	padding:5px 0;
	border-radius:5px;
	margin:20px 0;
}

.main_menu_list li .readmore:after{
	content: "";
	width: 5px;
	height: 5px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	right: 10%;
	top: calc(50% - 4px);
	position: absolute;
	transform: rotate(45deg);
}

.main_menu_list li p{
	font-size:90%;
}

.main_menu_list li *{
	color:#333;
}

.about_box{
	margin:150px auto 20px;
	background:#fff;
}

.about_docter{
	background:URL(../img/docter_bk.png) no-repeat;
	background-size: contain;
	position:relative;
}

.about_docter h3{
	color:#c25959;
	margin:0 0 40px;
	font-size:160%;
}

.about_docter h3 span{
	display:block;
	font-size:70%;
}

.about_docter p{
	margin:0 0 30px;
}

.about_docter p.docter_name{
	position:absolute;
	bottom:10px;
	right:20px;
	margin:0;
}

.about_docter{
	box-sizing:border-box;
	padding:30px 3.5%;
	border-radius:5px;
	min-height: 400px;
	margin:0 auto 30px;
	width:100%;
	margin:0 auto;
}

#about{
	overflow:hidden;
}

main #main_img{
	background:URL("../img/top_bk.png");
	background-repeat: no-repeat;
	box-sizing:border-box;
	position:relative;
	height:550px;
	overflow:hidden;
	width:100%;
	display:table;
}

main #main_img:after{
	content:"";
	box-sizing:border-box;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	border:30px solid #c25959;
	opacity:0.2;
}

main #main_img .main_img_inner{
	overflow:hidden;
	margin:100px auto;
	max-width: none;
	display:table-cell;
	vertical-align:middle;
}

.main_img_inner h1,.main_img_inner p{
	width:60%;
	margin-left:40%;
	text-align:center;
	color:#c25959;
}

.main_img_inner h1{
	margin-bottom:5px;
	font-size:240%;
	line-height:normal;
	letter-spacing:0.2em;
	font-family:serif,cursive;
}

body #header{height:60px;background:#c25a5a;}
body main{margin-top:60px;}
body #modal_header{height:60px;background:#c25a5a;}

#contact .contact_box .footer_btn a {
	color: #ffffff;
	text-shadow:none!important;
	display:block;
	padding:20px 0 20px 10%;
	border-radius:10px;
	box-sizing:border-box;
}

#contact .contact_box li:first-child a{
	border-bottom: 4px solid #0f76a9;
}

#contact .contact_box li:last-child a{
	border-bottom: 4px solid #cd2119;
}

#contact .contact_box .footer_btn{
	padding:0!important;
}

/* FLOW */

#flow{
	overflow:hidden;
}

#flow .inner{
	width:1000px;
	margin:75px auto 50px;
	box-sizing:border-box;
	border:2px solid #fad5d4;
	padding:0 30px;
	border-radius: 20px;
}

#flow .inner h2{
	color:#bc5959;
	text-align:center;
	display:table;
	padding:40px 30px 10px;
	background:#fff;
	margin:-50px auto;
	position:relative;
}

#flow .inner h2:after{
	content:"";
	width: 24px;
	height: 31px;
	background: URL("../img/flow_head.png") no-repeat;
	background-size: contain;
	position:absolute;
	top:0;
	left:0;
	right:0;
	margin:0 auto;
}



#flow .inner ul{
	width:100%;
	margin:90px auto 40px;;
	overflow:hidden;
}

#flow .inner ul li{
	width:22%;
	float:left;
	margin-right:4%;
	position:relative;
	box-sizing: border-box;
	padding: 10px;
}

#flow .inner ul li:last-child{
	margin-right:0;
}

#flow .inner ul li:after{
	content:"";
	position:absolute;
	right: -10%;
	top: 73%;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 0 10px 10px;
	border-color: transparent transparent transparent #bc5959;
}


#flow .inner ul li dl *{
	text-align:center;
}

#flow .inner ul li dl dt{
	font-size:120%;
	font-weight:bold;
	margin:10px auto;
}

#flow .inner ul li dl dd{
	font-size:90%;
}

#aga section.recomme,#faga section.recomme{
	padding:50px 0 30px;
}

.aga .pricebox table{
	width:100%;
}

.aga .pricebox table th{
	background:#7cb3ce;
	color:#fff;
	width:25%;
	padding:10px;
	border-right:2px solid #fff;
}

.aga .pricebox table th:first-child{
	width:50%;
}

.aga .pricebox table td{
	padding:15px 10px;
	border-bottom:1px solid #eee;
}

.aga .pricebox table td:nth-child(2),.aga .pricebox table td:last-child{
	text-align:center;
}

.aga .pricebox table td span{
	display:block;
	font-size:90%;
	position:relative;
	padding-left:1.5em;
}

.aga .pricebox table td span:before{
	position:absolute;
	content:"";
	display:block;
	left:0;
	top:22%;
	width:1em;
	height:1em;
	background:#bbe9ff;
	border-radius:50%;
}

.aga .pricebox table td em{
	font-style:normal;
	font-size:50%;
}

.aga p.caution{
	width:100%;
	text-align:right;
	font-size:80%;
	color:#555;
	margin:5px auto 50px;
}

.aga .pricebox .title{
	color:#7cb3ce;
}

.cta_box{
	display:flex;
	justify-content: center;
	margin:50px auto;
	flex-wrap: wrap;
}

.cta_box li{
	width:250px;
	margin: 0 10px 15px;
}

.cta_box li a{
	display:block;
	width:100%;
	color:#fff;
	text-align:center;
	box-sizing:border-box;
	border-radius:10px;
	position:relative;
	padding:20px 0;
}

.cta_box li.to_form a{
	background:#6bb8de;
	border-bottom: 4px solid #0f76a9;
}

.cta_box li.to_tel a{
	background:#ff5d55;
	border-bottom: 4px solid #cd2119;
}

.cta_box li.to_form a:before{
    content: "";
/*	background: url(../img/icon_web.png);*/
    background-size: cover;
    position: absolute;
    left: 10px;
    top: 50%;
    width: 37px;
    height: 55px;
    margin: -27.5px 0 0;
}

.cta_box li.to_tel a:before{
    content: "";
/*	background: url(../img/icon_tel.png);*/
    background-size: cover;
    position: absolute;
    left: 10px;
    top: 50%;
    width: 37px;
    height: 55px;
    margin: -27.5px 0 0;
}

#news{
	width: 1000px;
    margin: 75px auto 150px;
    box-sizing: border-box;
    padding: 0 30px;
    border-radius: 20px;
}

#news table{
	margin:0 auto;
	width:80%;
}

#news table th{
	width:20%;
	text-align:left;
	border-bottom:1px dotted #eee;
}

#news table td{
	width:80%;
	text-align:left;
	padding:20px;
	border-bottom:1px dotted #eee;
}
