@charset "UTF-8";

.contentpage .m_img .m_img_bg{
	background-image:url(../images/first/m_img@2x.jpg);
}


/*lead
---------------------------------------------------------*/
.com_lead{
	margin-top:105px;
	margin-bottom: 80px;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.com_lead{
	margin-top:50px;
	margin-bottom:40px;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.com_lead{
	margin-top:10%;
	margin-bottom:10%;
}
}



/* 診療予約に関するお願い
---------------------------------------------------------*/
#onegai{
	margin-bottom: 100px;
}
#onegai .bgbox{
	background:url(../images/first/box_bg@2x.jpg) no-repeat center bottom;
	background-size:cover;
}
#onegai .onegai_con{
	width: 94%;
	margin: 0 auto;
	max-width: 960px;
	text-align:center;
	padding: 80px 3% 85px 3%;
}
#onegai .onegai_con .title{
	display: inline-block;
	background: #fff;
	color:#544a47;
	padding: 10px 2.8em;
	border-radius: 50px;
	font-size:155%;
	font-weight: 600;
	letter-spacing: 0.2em;
	margin-bottom:40px;
}
#onegai .onegai_con .onegai_list{
	margin-bottom: 35px;
	border-top: 1px solid #fff;
}
#onegai .onegai_con .onegai_list li{
	position: relative;
	color:#fff;
	padding: 1.4em 0;
	border-bottom: 1px solid #fff;
	text-align: left;
	padding-left: 1.2em;
}
#onegai .onegai_con .onegai_list li span{
	color: #ffffa0;
}
#onegai .onegai_con .onegai_list li::before{
	position: absolute;
	display: block;
	content: "・";
	left: 0;
	top:1.35em;
	color:#fff;
}
#onegai .onegai_con .txt{
	font-size:135%;
	font-weight: 600;
	letter-spacing: 0.1em;
	color:#fff;
}
#onegai .onegai_con .linkbox{
	overflow: hidden;
	padding-top: 50px;
}
#onegai .onegai_con .linkbox li{
	float: left;
	background: #fff;
	width: 49%;
	margin-right: 2%;
	padding: 38px 30px 35px;
	box-sizing: border-box;
}
#onegai .onegai_con .linkbox li.webbox{
	background: #249f98;
	margin-right: 0;
}
#onegai .onegai_con .linkbox li p{
	font-size:110%;
	letter-spacing: 0.15em;
}
#onegai .onegai_con .linkbox li.webbox a{
	color:#fff;
}
#onegai .onegai_con .linkbox li.telbox,
#onegai .onegai_con .linkbox li.webbox{
	position: relative;
}
#onegai .onegai_con .linkbox li.telbox::before,
#onegai .onegai_con .linkbox li.webbox::before{
	position: absolute;
	display: block;
	content: "";
	background: url(../images/first/tel_icon.svg) no-repeat top center;
	background-size:100% auto;
	width: 45px;
	height: 45px;
	top: -23px;
	left: 0;
	right: 0;
	margin: 0 auto;
}
#onegai .onegai_con .linkbox li.webbox::before{
	background: url(../images/first/web_icon.svg) no-repeat top center;
	background-size:100% auto;
}
#onegai .onegai_con .linkbox li.webbox::after{
	position: absolute;
	display: block;
	content: "";
	background: url(../images/first/triangle.svg) no-repeat bottom right;
	background-size:100% auto;
	width: 15px;
	height: 15px;
	bottom: 10px;
	right: 10px;
}
#onegai .onegai_con .linkbox li img{
	margin-top: 1em;
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1200px) {
#onegai .onegai_con .onegai_list li{
	font-size:95%;
}
#onegai .onegai_con .linkbox{
	padding-top: 60px;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#onegai{
	margin-bottom: 8%;
}
#onegai .bgbox{
	background:url(../images/first/box_bg@2x.jpg) no-repeat center top #7f7f7f;
	background-size:100% auto;
}
#onegai .onegai_con{
	padding: 5% 3% 6% 3%;
}
#onegai .onegai_con .title{
	padding: 8px 2em;
	font-size:145%;
	margin-bottom:4%;
}
#onegai .onegai_con .onegai_list{
	margin-bottom: 4%;
}
#onegai .onegai_con .onegai_list li{
	padding: 1em 0 1em 1.2em;
}
#onegai .onegai_con .onegai_list li::before{
	top:1em;
}
#onegai .onegai_con .txt{
	font-size: 125%;
}
#onegai .onegai_con .linkbox{
	padding-top: 8%;
}
#onegai .onegai_con .linkbox li{
	padding: 35px 30px 28px;
	box-sizing: border-box;
}
#onegai .onegai_con .linkbox li p{
	font-size:100%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#onegai{
	margin-bottom: 10%;
}
#onegai .bgbox{
	background:url(../images/first/box_bg@2x.jpg) no-repeat center top #7f7f7f;
	background-size:100% auto;
}
#onegai .onegai_con{
	padding-top: 7%;
	padding-bottom: 8%;
}
#onegai .onegai_con .title{
	padding: 1.5% 2em;
	font-size: 110%;
	letter-spacing: 0.1em;
	margin-bottom: 6%;
}
#onegai .onegai_con .onegai_list{
	margin-bottom: 5%;
}
#onegai .onegai_con .onegai_list li{
	padding: 3% 0 3% 1em;
}
#onegai .onegai_con .onegai_list li::before{
	top:0.7em;
}
#onegai .onegai_con .txt{
	font-size:100%;
}
#onegai .onegai_con .linkbox{
	padding-top:12%;
}
#onegai .onegai_con .linkbox li{
	float: none;
	width: 90%;
	margin: 0 auto;
	padding: 7% 10% 6%;
}
#onegai .onegai_con .linkbox li:last-child{
	margin: 10% auto 0;
}
#onegai .onegai_con .linkbox li p{
	font-size: 3.8vw;
	letter-spacing: 0.1em;
}
#onegai .onegai_con .linkbox li img{
	margin-top: 0.7em;
}
#onegai .onegai_con .linkbox li.telbox::before,
#onegai .onegai_con .linkbox li.webbox::before{
	background-size:90% auto;
}
}



/* about_index
---------------------------------------------------------*/
.about_index{
	text-align:center;
	margin-bottom: 100px;
}
.about_index h4{
	font-weight:500;
	letter-spacing: 0.2em;
	font-size:160%;
}
.about_index .ft_europa{
	font-size:250%;
	color:#6caec0;
	font-style: oblique;
	letter-spacing: 0.08em;
	padding: 35px 0 25px 0;
	background-position: center center;
	background-repeat: no-repeat;
	background-size:auto 100%;
	margin-bottom: 25px;
}
.about_index .ft_europa{
	background-image:url(../images/first/leaf@2x.png);
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.about_index{
	margin-bottom: 60px;
}
.about_index h4{
	font-size:140%;
}
.about_index .ft_europa{
	font-size:220%;
	padding: 25px 0 20px 0;
	margin-bottom: 15px;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.about_index{
	margin-bottom: 12%;
}
.about_index h4{
	letter-spacing: 0.2em;
	font-size:5.3vw;
	line-height: 1.5em;
	margin-bottom: 3%;
}
.about_index .ft_europa{
	font-size:5.3vw;
	padding: 4% 0 3% 0;
	margin-bottom: 3%;
}
}



/* flow
---------------------------------------------------------*/
#flow{
	margin-bottom: 150px;
}
#flow .stepbox li .step{
	text-align: center;
	margin-bottom: 35px;
}
#flow .stepbox li > dl > dt{
	background: #5dbd8d;
	color: #fff;
	padding: 1.2em 0 1.2em 2.85em;
	font-size: 155%;
	font-weight:600;
	letter-spacing: 0.2em;
}
#flow .stepbox li > dl > dd{
	background: #f8f7f6;
	padding: 55px 70px;
}
#flow .stepbox li > dl > dd .flt_box{
	overflow: hidden;
}
#flow .stepbox li > dl > dd .flt_box.mgn_b{
	margin-bottom: 35px;
}
#flow .stepbox li > dl > dd .flt_box .img{
	float: right;
	width: 28%;
	margin-left: 2%;
}
#flow .stepbox li > dl > dd .flt_box .txt{
	float: left;
	width: 67%;
}
#flow .stepbox li > dl > dd .flt_box .txt dt{
	font-size: 160%;
	font-weight:600;
	letter-spacing: 0.15em;
	color:#5dbd8d;
	margin-bottom: 10px;
}
#flow .stepbox li > dl > dd .flt_box .txt dd .attention{
	color:#d86758;
	font-size:95%;
	margin-top: 1em;
}
#flow .btn_list{
	margin-top: 30px;
	overflow: hidden;
}
#flow .btn_list li{
	position: relative;
	float: left;
	margin-right: 1%;
	width: 19.2%;
	background:#61b8b3;
	box-sizing: border-box;
	padding: 0.8em 1.5em 0.8em 1.3em;
	margin-bottom: 1%;
	font-size: 93%;
	line-height: 1.5em;
	letter-spacing: 0.01em;
}
#flow .btn_list li::before{
	position: absolute;
	display: block;
	content: "";
	background: url(../images/first/btn_icon.svg) no-repeat top right;
	background-size:100% auto;
	width: 6px;
	height: 7px;
	top:50%;
	right: 8px;
	-webkit-transform: translateY(-50%); /* Safari用 */
 	transform: translateY(-50%);
}
#flow .btn_list li:nth-child(5n){
	margin-right: 0;
}
#flow .btn_list li a{
	color:#fff;
}
#flow .stepbox .c_txt{
	text-align: center;
	color:#5dbd8d;
	font-size:110%;
	font-weight:600;
	letter-spacing: 0.2em;
	line-height: 2.2em;
	margin-top: 35px;
	margin-bottom: 40px;
}
#flow .stepbox .c_btn{
	display:block;
	margin: 0 auto;
	text-align: center;
}
#flow .stepbox .c_btn a{
	position: relative;
	display: inline-block;
	font-size: 90%;
	letter-spacing: 0.15em;
	text-align: center;
	border-top:#544a47 1px solid;
	border-bottom:#544a47 1px solid;
	padding: 0.8em 5em 0.8em 2.2em;
	color: #544a47;
}
#flow .stepbox .c_btn a::before{
	position: absolute;
	font-family: 'fontello';
	content: '\e800';
	right: 0.5em;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	color: #544a47;
	font-size: 240%;
}
#flow .stepbox li .arrow{
	text-align: center;
	margin: 35px auto 45px;
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1200px) {
#flow .stepbox li > dl > dd{
	padding: 55px;
}
#flow .stepbox li > dl > dd .flt_box.mgn_b{
	margin-bottom: 40px;
}
#flow .btn_list li{
	padding: 0.8em 1.5em 0.8em 1em;
	font-size: 90%;
}
}
	
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#flow{
	margin-bottom: 12%;
}
#flow .stepbox li .step{
	margin-bottom: 5%;
}
#flow .stepbox li > dl > dt{
	padding: 1em 0 1em 4.2%;
	font-size: 140%;
	letter-spacing: 0.15em;
}
#flow .stepbox li > dl > dd{
	padding: 4% 4% 5%;
}
#flow .stepbox li > dl > dd .flt_box.mgn_b{
	margin-bottom: 5%;
}
#flow .stepbox li > dl > dd .flt_box .img{
	width: 35%;
	margin-bottom: 2%;
}
#flow .stepbox li > dl > dd .flt_box .txt{
	float: none;
	width: 100%;
}
#flow .stepbox li > dl > dd .flt_box .txt dt{
	font-size: 140%;
	margin-bottom: 1%;
}
#flow .btn_list{
	margin-top: 4%;
}
#flow .btn_list li{
	width: 24.25%;
}
#flow .btn_list li:nth-child(4n){
	margin-right: 0;
}
#flow .btn_list li:nth-child(5n){
	margin-right: 1%;
}
#flow .stepbox .c_txt{
	letter-spacing: 0.15em;
	line-height: 2em;
	margin-top: 3%;
	margin-bottom: 5%;
}
#flow .stepbox li .arrow{
	margin: 4% auto 6%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#flow{
	margin-bottom:10%;
}
#flow .stepbox li .step{
	width: 35%;
	padding-left: 3%;
	margin: 0 auto 3%;
}
#flow .stepbox li > dl > dt{
	padding: 3% 0 3% 4%;
	font-size:5vw;
	text-align: center;
	letter-spacing: 0.15em;
}
#flow .stepbox li > dl > dd{
	padding: 5% 4% 7%;
}
#flow .stepbox li > dl > dd .flt_box.mgn_b{
	margin-bottom: 10%;
}
#flow .stepbox li > dl > dd .flt_box .img{
	float: none;
	width: 70%;
	margin: 0 auto 3.5%;
}
#flow .stepbox li > dl > dd .flt_box .txt{
	float: none;
	width: 100%;
}
#flow .stepbox li > dl > dd .flt_box .txt dt{
	font-size: 130%;
	letter-spacing: 0.1em;
	margin-bottom: 0.2em;
}
#flow .stepbox li > dl > dd .flt_box .txt dd .attention{
	font-size:100%;
	margin-top: 0.5em;
}
#flow .btn_list{
	margin-top: 5%;
}
#flow .btn_list li{
	width: 49.5%;
	padding: 0.7em 1.2em 0.7em 1em;
	font-size:90%;
}
#flow .btn_list li:nth-child(5n){
	margin-right: 1%;
}
#flow .btn_list li:nth-child(even){
	margin-right: 0;
}
#flow .stepbox .c_txt{
	font-size:100%;
	letter-spacing: 0.08em;
	line-height: 1.8em;
	margin-top: 5%;
	margin-bottom: 7%;
	text-align: left;
}
#flow .stepbox .c_btn a{
	padding: 0.8em 3em 0.8em 1em;
	margin-bottom: 3%;
}
#flow .stepbox .c_btn a::before{
	right: 0.1em;
	font-size: 200%;
}
#flow .stepbox li .arrow{
	margin: 5% auto 8%;
}
}