@charset "UTF-8";
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1;
}

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

@font-face {
  font-family: 'icomoon';
  src: url("../fonts/icomoon.eot?zq31z");
  src: url("../fonts/icomoon.eot?zq31z#iefix") format("embedded-opentype"), url("../fonts/icomoon.ttf?zq31z") format("truetype"), url("../fonts/icomoon.woff?zq31z") format("woff"), url("../fonts/icomoon.svg?zq31z#icomoon") format("svg");
  font-weight: normal;
  font-style: normal; }


.pcon{display: block!important;}
.spon{display: none!important;}

.pt1{padding-top: 1px;}
.pt20{padding-top: 20px;}
.pt10{padding-top: 10px; line-height: 1.7;}

.mt10{margin-top: 10px;}
.mt20{margin-top: 20px;}
.pt30{padding-top: 30px;}
.pt40{padding-top: 40px;}
.mt30{margin-top: 30px;}
.mt40{margin-top: 40px;}
.pb30{padding-bottom: 30px;}
.mb30{margin-bottom: 30px;}
.pb10{padding-bottom: 10px;}
.mb10{margin-bottom: 10px;}
.pb20{padding-bottom: 20px;}
.pb30{padding-bottom: 30px;}
.mb20{margin-bottom: 20px;}
.mb30{margin-bottom: 30px;}
.mb40{margin-bottom: 40px;}
.pt60{padding-top: 60px;}
.mt60{margin-top: 60px;}
.pb60{padding-bottom: 60px;}
.mb60{margin-bottom: 60px;}
.ptb15{padding: 15px 0;}
.mtb15{margin: 15px 0;}
.ptb10{padding-top: 10px; padding-bottom: 10px;}
.ptb60{padding-top: 60px; padding-bottom: 60px;}
.mtb60{margin: 60px 0;}
.ptb30{padding-top: 30px;padding-bottom:30px;}
.ptb40{padding-top: 40px;padding-bottom:40px;}
.mtb30{margin: 30px 0;}
.mtb40{margin-top: 40px;margin-bottom: 40px;}
.ptb20{padding: 20px 0;}
.mtb20{margin: 20px 0;}
.mtb10{margin: 10px 0;}
.mb5{margin-bottom: 5px;}
.plr15{padding:0 10px;}
.p40{padding: 40px;}
.p5{padding: 5px;}
.p15{padding: 15px;}
.mb5{margin-bottom: 5px;}
.pb5{padding-bottom: 5px;}
.redtex{color: #FF0000;}




/* -----------------------------------------
  common 
-----------------------------------------*/
html {
  font-size: 62.5%; }

body {
  color: #333333;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.6;
  text-align: center; 
  font-feature-settings : "palt";
  background:#fff;
}

a {
  text-decoration: none; }

a:hover {
  opacity: 0.7; }
.textcenter{
  text-align: -webkit-center;
  text-align: -moz-center;
  text-align: center;
}

.textleft{
  text-align: -webkit-left;
  text-align: -moz-left;
  text-align: left;
}


.clearfix::after{
content:"";
display:block;
clear:both;
}

.alignright {
  float: right; }

.aligncenter {
  display: block;
  margin: auto; }

.alignleft {
  float: left; }

.red {
  color: #d80000; }

.bold {
  font-weight: bold; }



.cmn_w {
  margin: 0 auto;
  width: 700px;
	}
	

.pdn30 {
  padding: 30px 0; }

.mgnB45 {
  margin-bottom: 45px; }

.en {
  font-family: '小塚ゴシック Pro L','Kozuka Gothic Pro Light',sans-serif; }

.bg_gray {
  background-color: #f0f5f8;
	}

.lh0{line-height:0;}


#header {
	width:100%;
	margin: 0 auto;
	background-color:#fff6f9;
	text-align:center;
	/*position: fixed;
	height: 265px;*/
}

#header h1{
	text-align:center;
	color:#fff;
	padding:5px 0;
	/*background-color:#377CB7;*/
	font-size: 14px;
}

.inner{
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
}

.fixed{
	position:fixed;
	width:100%;
	height:130px;
	top:0px;
	z-index:100;
}


.logo{
	width:100%;
	margin: 0 auto;
	background:#FFF;
}

#header h2{text-align: center;}
#header h2 img{
	width:100%;
	max-width: 385px;
	padding:20px 0;
}

.tel{
	float:left;
	padding:20px 0;
}
.tel img{
	width:100%;
	max-width: 300px;
}


#form{
	padding: 40px 0;
}
#container{
	padding-bottom: 40px;
}


#form h3{
	margin-bottom: 40px;
}

#form p.contact_txt{
	width: 100%;
	max-width: 610px;
	margin: 0 auto;
	text-align: center;
}

#form p.reserve_txt{
	width: 100%;
	max-width: 715px;
	margin: 0 auto;
	text-align: center;
}

#form .contact{
	width:100%;
	max-width: 960px;
	margin: 40px auto 0;
	border: 3px solid #b75780;
	box-sizing: border-box;
	padding-bottom:40px;
}
.contact_tel img {
    width: 500px;
}

.contact_tel {
    text-align: center;
    margin: 30px 0 0;
}
textarea.naiyou {
    border: 1px solid #ccc;
    padding: 10px;
}
#form .contact ul.info{
	margin:0 auto;
	width: 100%;
	max-width: 910px;
}
#form .contact ul.info li.clinic{
	float: left;
	width: 100%;
	max-width: 395px;
	text-align: right;
}

#form .contact ul.info li.telno{
	float: right;
	width: 100%;
	max-width: 495px;
	text-align: right;
}

#form .contact p.txt img{
	width: 100%;
	max-width:650px;
}
#form p.time{
	width: 100%;
	max-width: 320px;
	margin: 0 auto;
	text-align: center;
}
.ftitle{
    text-align: right;
	font-size: 15px;
    margin-bottom: 15px;
	margin-top: 10px;
}
.ftitle_top{padding-top:20px;}
.fmidashi{float:left;}
#mailform .imicon{
    width: 47px;
    display: block;
    /*margin: 0px 0px 0 5px;*/
    padding: 0 0 0 5px;
    float:  right;
	text-align: left;
	box-sizing: border-box;
}
.fcont1{
  border-bottom: 0.5px solid #8C731E;
  padding-bottom: 20px;
  font-size: 14px;
}
.fcont1_top{
	border-top: 0.5px solid #8C731E;
	padding-top: 20px;
}
ul.mfp_buttons{
	width: 100%;
	margin: 20px 0 20px 2%;
	text-align: center;
	padding-left: 31%;
	box-sizing: border-box;
}
ul.mfp_buttons li{
	float: left;
	padding:0 10px;
	box-sizing: border-box;
}
#mailform small{
  font-size: 0.7em;
}

#footer {
	width:100%;
	margin: 0 auto;
	background:#C1BBAD;
}
	
#footer p{
	color:#FFF;
	font-size:14px;
	padding:5px 0;
}

button {
    border-color: none;
    border: none;
    padding: 0;
	background: none;

}
button.mapareabutton {
    border: 1px solid #038ea0;
    padding: 15px 70px;
    font-size: 16px;
    color: #038ea0;
}
.fcont1 .nametext{
  width: 80%;
  margin-right: 10px;
}

.fcont1 .oldtext{
  width: 20%;
  margin-right: 10px;
}

.naiyou{
  width: 100%!important ;
  min-height: 150px;
}
input#mfp_element_22, .fcont1 .nametext, .fcont1 .oldtext, select, input.mfp_element_add, input[type="tel"] {
    height: 45px;
    font-size: 16px;
    padding-left: 10px;
}
.form1 {
    margin-top: 60px;
}
.h2_sabu h2 {
    font-size: 30px;
    color: #534741;
}
.h2_sabu span {
    color: #d9a9bc;
}
.h2_sabu span:before, .h2_sabu span:after {
    content: "";
    border-top: 1px solid #d9a9bc;
    width: 30px;
    display: inline-block;
    height: 5px;
}
.h2_sabu span:before {
    margin-right: 10px;
}
.h2_sabu span:after {
    margin-left: 10px;
}
h2,  .h2_sabu span, p.price_button a, .pe_line, #footer p.fot, .h2_sabu h2 {
    font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
    
}
.h2_sabu {
    text-align: center;
    margin: auto;
}
.h2_sabu h2 {
    text-align: center;
}
#header {
    width: 100%;
    margin: 0 auto;
    background-color: #C1BBAD;
	text-align: left;
    top: 0;
    color: #fff;
}

section#form h3 {
    font-size: 33px;
    text-align: center;
    font-family: "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    color: #018fa0;
}
span.hissu {
    font-size: 12px;
    border: 1px solid #E03373;
    color: #fff;
    padding: 0px 8px;
    background: #E03373;
	display: inline-block;
}
#mailform span.block {
    width: 50px;
    display: block;
    margin: 0 0 0 auto;
    padding: 0 0 0 5px;
    float: none;
    text-align: right;
    box-sizing: border-box;
}
section#sec04 .flow {
    width: 95%;
    margin: auto;
}
input#mfp_element_3.number_sinsatu {
    width: 160px;
}
/* -----------------------------------------
  middle
-----------------------------------------*/
@media only screen and (min-width: 641px) and (max-width: 959px) {

.tbon{display: none !important;}

.inner{
	width: 100%;
	margin: 0 auto;
	padding:0 10px;
	box-sizing:border-box;
}
#form h3 {margin-bottom: 20px;}
#form .contact ul.info{padding:0 10px;box-sizing:border-box;}
#form .contact ul.info li.clinic{width: 48%;}
#form .contact ul.info li.telno{width: 48%;padding-top: 10px;}
ul.mfp_buttons{margin-left: 0;padding-left: 0;width: 80%;margin: 0 auto;}
ul.mfp_buttons li{width: 48%;}
ul.mfp_buttons li:first-child{padding-left: 0;}
ul.mfp_buttons li:last-child{padding-right: 0;}
.ftitle{text-align: left;}
.formwrap .imicon{
    padding: 0 5px 0 0;
    float:  left;
	text-align: left;
	margin: 0px 10px 0 0;
}
}






/* -----------------------------------------
  SP
-----------------------------------------*/
@media screen and (max-width: 640px) {

section#form h3 {
    font-size: 25px;
	    margin-top: 25px;
}
  * {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box; 
		}

body {
	font-size: 12px;
	font-size: 1.2rem;
	}

 img {
    max-width: 100%;
    height: auto;
	}
 .spon {display: block!important;}
 .pcon {display: none!important; }


.fixed{
	position: static;
	height:auto;
}

#header h1{
	text-align:center;
	font-size: 9px;
	padding: 4px 0;
}

.inner{
	width: 100%;
	margin: 0 auto;
	padding:0 20px;
	box-sizing:border-box;
}

.logo{
	width:100%;
	margin: 0 auto;
	padding:7px 0 7px;
}

#header h2,.tel{text-align:center;line-height: 0;}

#header h2 img{
	width:100%;

	max-width: 280px;
	margin:0 auto;
	float:none;
	padding: 0;
}

#form{padding:0 0 20px;}
	
#form h3{
	margin-bottom: 20px;
}
	.form_h2 {
    margin: 20px;
}

#form .contact{
	width:100%;
	max-width: 960px;
	margin: 40px auto 0;
	border:none;
	box-sizing: border-box;
	padding-bottom:20px;
}

.formwrap .imicon{
    padding: 0 5px 0 0;
    float:  left;
	text-align: left;
	margin: 0px 5px 0 0;
}
div.mfp_buttons button#mfp_button_send, div.mfp_buttons button#mfp_button_cancel {
    border: 1px solid #f5b0cb;
    padding: 10px 40px;
    font-size: 13px;
    color: #f5b0cb;
}
#form .contact ul.info li.clinic{
	float: none;
	text-align: center;
}

#form .contact ul.info li.telno{
	float: none;
	text-align: center;
}

.ftitle_top{border-top: 0.5px solid #856244;}
.ftitle{text-align: left;}

.fcont1_top{
	border-top: none;
	padding-top: 0;
}

ul.mfp_buttons{
	width: 100%;
	margin: 20px 0;
	text-align: center;
	padding-left: 0;
	box-sizing: border-box;
}

ul.mfp_buttons li{
	float: left;
	padding:0 3px;
	box-sizing: border-box;
	width: 50%;
}
	
#form p.reserve_txt{text-align: left;}
	
#footer {
	padding:10px;
}
	
#footer p{
	font-size: 12px;
	color: #fff;
}
.mtb20{margin: 15px 0;}
.ftitle {
    margin-bottom: 10px;
    margin-top: 0px;
}
.ftitle_top {
    padding-top: 15px;
}
button.mapareabutton {
    padding: 10px 20px;
    font-size: 15px;
    width: 100%;
}
#mailform .imicon {
    float: left;
}
.fcont1 .nametext {
    width: 85%;
}
input#mfp_element_22, input#mfp_element_25, .fcont1 .nametext, .fcont1 .oldtext, input#mfp_element_23, select, input.mfp_element_add, input[type="tel"] {
    border: 1px solid #ccc;
	margin-bottom: 5px;
}
#mailform span.block {
    padding: 0px 2px 0 5px;
    float: left;
}
}