@charset "utf-8";
/* CSS Document */


/* -----------------------------------------------------------
	リセットCSS
------------------------------------------------------------*/
/*html5doctor.com Reset Stylesheet v1.4.1 2010-03-01 Author: Richard Clark - http://richclarkdesign.com*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;}body{line-height:1;}article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary{display:block;}nav ul{list-style:none;}blockquote,q{quotes:none;}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none;}a{margin:0;padding:0;border:0;font-size:100%;vertical-align:baseline;background:transparent;}ins{background-color:#ff9;color:#000;text-decoration:none;}mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold;}del{text-decoration: line-through;}abbr[title],dfn[title]{border-bottom:1px dotted #000;cursor:help;}hr{display:block;height:1px;border:0;border-top:1px solid #cccccc;margin:1em 0;padding:0;}input,select{vertical-align:middle;}


/* -----------------------------------------------------------
	common
------------------------------------------------------------*/

body {
color: #333;
font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
line-height: 160%;
-webkit-text-size-adjust: 100%;
letter-spacing: 1px;
}

div {
margin: 0 auto;
  -webkit-box-sizing: border-box;
box-sizing: border-box;
}

p,li,dt,dd,th,td {
font-size: 16px;
line-height: 160%;
}

li {
list-style: none;
}

a {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
transition: all  0.3s ease;
}

a:hover {
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
opacity: 0.7;
}

a:hover img {
	-ms-filter: "alpha(opacity=70)";
	filter: alpha(opacity=70);
}

img {
line-height: 0;
max-width: 100%;
width: auto;
height: auto;
margin: 0 auto;
vertical-align: bottom;
}

input,
textarea,
select {
font-family: inherit;
padding: 5px 10px;
}

input[type="text"],
textarea,
select {
border: 1px solid #aaa;
box-shadow: 1px 1px 5px #ccc inset;
  -webkit-box-sizing: border-box;
box-sizing: border-box;
}

input[type="radio"],
select {
cursor: pointer;
}

input[type="radio"] {
margin-top: -2px;
}

input[type="radio"] + input[type="radio"] {
margin-left: 30px;
}

input[type="submit"],
input[type="reset"],
input[type="button"] {
cursor: pointer;
	-webkit-appearance: none;
border-radius: 0;
border: none;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
transition: all  0.3s ease;
}

input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover {
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
opacity: 0.7;
}

h2,h3 {
text-align: center;
}

p + p {
margin-top: 20px;
}

em {
font-style: normal;
}


/* -----------------------------------------------------------
	common name
------------------------------------------------------------*/

.wrap {
overflow: hidden;
}

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

.f-bold {
font-weight: bold;
}

.small {
font-size: .7em;
}

.mr0 {
margin-right: 0 !important;
}

.sp {
display: none;
}

.hamidashi {
position: absolute;
}

.va-top {
vertical-align: top !important;
}


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

.cmn-box > h2 {
margin: 40px 0;
}

.cmn-box h3 {
margin-bottom: 30px;
}

.cmn-box .inner {
padding: 60px 0 30px;
}

.cmn-box .inner {
background: url(img/bg01.png) no-repeat center top;
}

.cmn-sub-box {
padding: 10px;
position: relative;
}

.cmn-sub-box-inner {
padding: 25px 20px;
position: relative;
}

.cmn-box-zindex {
position: relative;
z-index: 2;
}

.csb01 .cmn-sub-box-inner {
border-top: 1px solid #fff;
border-bottom: 1px solid #fff;
}

.csb02 .cmn-sub-box-inner {
border-top: 1px solid #26a0ae;
border-bottom: 1px solid #26a0ae;
}

.cmn-sub-box:before,
.cmn-sub-box:after,
.cmn-sub-box-inner:before,
.cmn-sub-box-inner:after {
content: "";
display: block;
position: absolute;
width: 90px;
height: 71px;
background-repeat: no-repeat;
background-position: center;
background-size: contain;
z-index: 1;
}

.cmn-sub-box:before {
left: 0;
top: 0;
}

.cmn-sub-box:after {
right: 0;
top: 0;
}

.cmn-sub-box-inner:before {
left: -10px;
bottom: -10px;
}

.cmn-sub-box-inner:after {
right: -10px;
bottom: -10px;
}

.csb01:before {
background-image: url(img/ico_bg01.png);
}

.csb01:after {
background-image: url(img/ico_bg02.png);
}

.csb01 .cmn-sub-box-inner:before {
background-image: url(img/ico_bg03.png);
}

.csb01 .cmn-sub-box-inner:after {
background-image: url(img/ico_bg04.png);
}

.csb02:before {
background-image: url(img/ico_bg05.png);
}

.csb02:after {
background-image: url(img/ico_bg06.png);
}

.csb02 .cmn-sub-box-inner:before {
background-image: url(img/ico_bg07.png);
}

.csb02 .cmn-sub-box-inner:after {
background-image: url(img/ico_bg08.png);
}

.area01-box02:before,
.area01-box02:after,
.area01-box02 .cmn-sub-box-inner:before,
.area01-box02 .cmn-sub-box-inner:after,
.area03-box02:before,
.area03-box02:after,
.area03-box02 .cmn-sub-box-inner:before,
.area03-box02 .cmn-sub-box-inner:after {
background-color: #26a0ae;
}

.area01-box03:before,
.area01-box03:after,
.area01-box03 .cmn-sub-box-inner:before,
.area01-box03 .cmn-sub-box-inner:after,
.area03-box03:before,
.area03-box03:after,
.area03-box03 .cmn-sub-box-inner:before,
.area03-box03 .cmn-sub-box-inner:after {
background-color: #fff;
}

.area02-box02:before,
.area02-box02:after,
.area02-box02 .cmn-sub-box-inner:before,
.area02-box02 .cmn-sub-box-inner:after {
background-color: #dda851;
}


/*-- flex -----------*/

.flex-box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
display: flex;
	-webkit-box-pack:justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
align-items: center;
}

.flex-box-c01 {
width: 32%;
}

.flex-box-c02 {
width: 68%;
}

	/* IE9以下対策 */
	.flex-box {
	overflow: hidden\9;
	}
	
	.flex-box-c01 {
	float: left\9;
	}

	.flex-box-c02 {
	float: right\9;
	}


/* -----------------------------------------------------------
	page
------------------------------------------------------------*/

#page {
min-width: 1000px;
}

.inner {
width: 100%;
max-width: 1000px;
height: 100%;
}


/* -----------------------------------------------------------
	action
------------------------------------------------------------*/

.action {
background: #2bb3c1;
}

.action .inner {
padding: 15px 20px;
position: relative;
background: url(img/ico_campaign01.png) no-repeat left top;
}

.action-box {
overflow: hidden;
margin-bottom: 10px;
}

.action h2 {
float: left;
margin: 30px 0 0 20px;
}

.action .btn-form01 {
float: right;
}

.action-txt02 {
text-align: center;
position: relative;
z-index: 20;
}

.action .ico-woman01 {
left: 44%;
top: -8px;
margin: auto;
z-index: 1;
width: 84px;
}


/* -----------------------------------------------------------
	header
------------------------------------------------------------*/

#header {
border-top: 3px solid #50cbd9;
background: url(img/header_bg.png) repeat-x;
}

#header .inner {
padding: 20px 0 15px;
overflow: hidden;
}

h1 {
float: left;
}

.head-info {
float: right;
padding: 7px 10px;
width: 500px;
background: url(img/bg02.png);
position: relative;
}

.head-info p {
float: left;
}

.head-info .btn-form02 {
float: right;
width: 250px;
margin-top: 3px;
}

.head-info .ico-woman01 {
bottom: 0;
left: 33%;
width: 60px;
}


/* -----------------------------------------------------------
	firstview
------------------------------------------------------------*/

#firstview {
background: #f5fcfb;
}

#firstview h2 {
padding: 10px 0;
background: #50cbd9;
}


/* -----------------------------------------------------------
	area01
------------------------------------------------------------*/

#area01 .cmn-box-bg-inner {
background: #def1eb;
}

/* area01-box01 */

.area01-box01 .flex-box {
padding-bottom: 45px;
margin-bottom: 45px;
border-bottom: 1px dashed #c7ac64;
}

.area01-box01 .flex-box:last-child {
border-bottom: none;
margin-bottom: 0;
}

.area01-box01 h4 {
color: #c7ac64;
font-size: 18px;
line-height: 170%;
margin-bottom: 20px;
}

.area01-box01 .flex-box:nth-of-type(even) .flex-box-c01 {
	-webkit-order: 2;
	-ms-flex-order: 2;
order: 2;
text-align: right;
}

.area01-box01 .flex-box:nth-of-type(even) .flex-box-c02 {
	-webkit-order: 1;
	-ms-flex-order: 1;
order: 1;
}


/* area01-box02 */

.area01-box02 {
color: #fff;
margin-bottom: 25px;
background: #26a0ae url(img/bg03.png) no-repeat center top;
}

.area01-box02 h3 {
margin-bottom: 15px;
}

.area01-box02 h4 {
margin-bottom: 20px;
line-height: 170%;
width: 75%;
}

.area01-box02 .flex-box-c01 {
text-align: right;
}


/* area01-box03 */

.area01-box03 {
background: #fff url(img/bg04.png) no-repeat center top;
}

.area01-box03 h3 {
margin-bottom: 50px;
}

.area01-box03 .flex-box {
float: left;
width: 50%;
padding: 0 0 20px 20px;
}

.area01-box03 h4 {
color: #269fac;
font-size: 17px;
line-height: 120%;
margin-bottom: 7px;
}

.area01-box03 h4 span {
display: block;
font-size: 14px;
}

.area01-box03 p {
font-size: 14px;
}

.area01-box03 .flex-box {
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
align-items: flex-start;
}

.area01-box03 .flex-box-c01 {
width: 30%;
}

.area01-box03 .flex-box-c02 {
width: 67%;
margin: 10px 0 0 3%;
}

.area01-box03 .flex-box:nth-of-type(odd) {
clear: both;
padding: 0 20px 20px 0;
}

.area01-box03 .flex-box:nth-of-type(even) {
border-left: 1px dashed #2bb3c1;
}

.area01-box03 .flex-box:nth-of-type(n + 3) {
padding-top: 30px;
border-top: 1px dashed #2bb3c1;
}

.area01-txt04 {
text-align: center;
margin: 30px auto;
}


/* -----------------------------------------------------------
	area02
------------------------------------------------------------*/

#area02 .cmn-box-bg-inner {
background: #fff9e9;
}


/* area02-box01 */

.area02-box01 {
margin-bottom: 40px;
}


/* area02-box02 */

.area02-box02 {
color: #fff;
margin-bottom: 40px;
background: #dda851 url(img/bg03.png) no-repeat center top;
}

.area02-box02 .cmn-sub-box-inner {
padding-bottom: 50px;
}

.area02-box02 .flex-box-c01 {
text-align: right;
}


/* area02-box03 */

.area02-box03 {
text-align: center;
padding-top: 20px;
border-top: 1px solid #333;
}

.area02-box03 p {
line-height: 180%;
}

.area02-box03 span {
color: #bf4417;
font-size: 20px;
font-weight: bold;
}


/* -----------------------------------------------------------
	area03
------------------------------------------------------------*/

#area03 .cmn-box-bg-inner {
background: #def1eb;
}


/* area03-box01 */
.area03-box01 {
margin-bottom: 40px;
}


/* area03-box02 */
.area03-box02 {
margin-bottom: 25px;
background: #26a0ae url(img/bg03.png) no-repeat center top;
}

.area03-box02 h3 {
margin-bottom: 50px;
}

.area03-box02 .cmn-sub-box-inner {
padding: 20px 10px 40px;
}

.area03-box02 dl {
float: left;
width: 23.7%;
padding: 10px;
margin-right: 1.7%;
min-height: 330px;
background: #fff;
  -webkit-box-sizing: border-box;
box-sizing: border-box;
position: relative;
}

.area03-box02 dl:nth-of-type(4n) {
margin-right: 0;
}

.area03-box02 dt {
color: #c09538;
font-weight: bold;
margin-bottom: 5px;
}

.area03-box02 dt img {
display: block;
margin: 0 auto -15px;
}

.area03-box02 dd {
font-size: 14px;
}

.area03-box02 dl:before {
display: block;
text-align: center;
position: absolute;
left: 0;
right: 0;
top: -30px;
margin: auto;
}
 
.area03-box02 dl.step1:before {
content: url(img/ico_step1.png);
}

.area03-box02 dl.step2:before {
content: url(img/ico_step2.png);
}

.area03-box02 dl.step3:before {
content: url(img/ico_step3.png);
}

.area03-box02 dl.step4:before {
content: url(img/ico_step4.png);
}


/* area03-box03 */
.area03-box03 {
background: #fff url(img/bg04.png) no-repeat center top;
}

.area03-box03 .cmn-sub-box-inner {
padding: 20px 10px 70px;
}

.area03-box03 dl {
float: left;
width: 50%;
padding: 0 0 20px 20px;
  -webkit-box-sizing: border-box;
box-sizing: border-box;
}

.area03-box03 dt {
color: #269fac;
font-size: 17px;
font-weight: bold;
}

.area03-box03 dd {
font-size: 14px;
}

.a3b3-img {
margin-bottom: 5px;
overflow: hidden;
}

.a3b3-img img:nth-of-type(2) {
float: right;
}

.area03-box03 dl:nth-of-type(odd) {
clear: both;
padding: 0 20px 20px 0;
}

.area03-box03 dl:nth-of-type(even) {
border-left: 1px dashed #2bb3c1;
}

.area03-box03 dl:nth-of-type(n + 3) {
padding-top: 20px;
border-top: 1px dashed #2bb3c1;
}

.area03-box03-child {
text-align: center;
margin-top: 40px;
padding: 10px;
background: url(img/area03_bg01.png);
}

.area03-box03-child h3 {
margin-bottom: 20px;
}

.area03-box03-child .bg-inner {
padding: 20px 10px;
border: 1px solid #fff;
box-shadow: 1px 1px 2px #999, 1px 1px 2px #999 inset;
}

.area03-box03-child p {
font-size: 14px;
}


/* -----------------------------------------------------------
	area04
------------------------------------------------------------*/

#area04 {
background: url(img/area04_bg.png) no-repeat center top;
}

#area04 .inner {
padding: 40px 0 20px;
}

#area04 h2 {
margin-bottom: 30px;
}

.area04-box {
width: 96%;
padding: 30px 20px 15px;
margin: 0 auto;
overflow: hidden;
background: #fff; /*IE8*/
background: rgba(255,255,255,.7);
}

.area04-box h3 {
font-size: 18px;
text-align: left;
}

.area04-img01 {
float: right;
}

.area04-box-child01 {
float: left;
width: 65%;
margin-bottom: 20px;
letter-spacing: 0;
}

.area04-box-child01 h3 {
margin-bottom: 20px;
}

.area04-txt01 {
text-align: right;
margin-top: 0;
}

.area04-box-child02 {
clear: both;
padding-top: 15px;
overflow: hidden;
border-top: 1px solid #999;
}

.area04-box-child02 table {
float: left;
width: 50%;
}

.area04-box-child02 th,
.area04-box-child02 td {
font-weight: normal;
text-align: left;
vertical-align: top;
}

.area04-box-child02 th {
padding-right: 10px;
}


/* -----------------------------------------------------------
	form
------------------------------------------------------------*/

#form {
background: url(img/form_bg02.png);
}

#form .inner {
padding: 20px 0 30px;
}

#form h2 {
margin-bottom: 20px;
}

.form-box {
padding-bottom: 30px;
background: #fff;
position: relative;
}

.form-box .ico-woman01 {
left: 13.5%;
bottom: 100%;
}

.form-box-ttl {
text-align: center;
padding: 15px 20px 10px;
margin-bottom: 60px;
background: url(img/form_bg01.png);
position: relative;
}

.form-box-ttl:before {
content: "";
background: url(img/ico_campaign02.png) no-repeat left top;
background-size: contain;
width: 145px;
height: 85px;
position: absolute;
display: block;
left: 0;
top: 0;
z-index: 1;
}

.form-box-ttl h3 {
margin-bottom: 10px;
position: relative;
z-index: 2;
}

.form-box-ttl p {
font-size: 20px;
font-weight: bold;
padding: 7px 20px 5px;
background: #fff;
border-radius: 50px;
}


/* form本体 */

#formWrap {
width: 90%;
margin: 0 auto;
}

#formWrap table {
width: 100%;
margin-bottom: 40px;
  -webkit-box-sizing: border-box;
box-sizing: border-box;
border-collapse: collapse;
border-top: 1px solid #ccc;
}

#formWrap th,
#formWrap td {
text-align: left;
font-weight: normal;
vertical-align: middle;
border-bottom: 1px solid #ccc;
}

#formWrap th {
width: 30%;
padding: 15px 0 15px 50px;
}

#formWrap th.hissu {
background: url(img/ico_hissu.png) no-repeat 10px center;
}

#formWrap td {
padding: 15px 30px 15px 15px;
}

#formWrap input[type="text"] {
width: 100%;
max-width: 250px;
}

#formWrap textarea {
width: 100%;
max-width: 400px;
}

#formWrap input[type="submit"] {
color: white;
font-weight: bold;
display: block;
margin: 0 auto;
width: 90%;
max-width: 324px;
height: 50px;
background: #1e7d88 url(img/ico_arrow.png) no-repeat 88% center;
border-radius: 3px;
}

.form-caution {
margin-bottom: 60px;
}

.form-caution dt {
font-weight: bold;
font-size: 14px;
}

.form-caution dd {
margin-bottom: 20px;
font-size: 14px;
}


/* -----------------------------------------------------------
	area05
------------------------------------------------------------*/

#area05 {
border-bottom: 1px solid #fff;
}

#area05 .cmn-box-bg-inner {
background: #f1f9f6;
}

.area05-box01 {
color: #000;
}

.area05-box01 table {
background: #fff;
width: 100%;
border-collapse: collapse;
}

.area05-box01 th,
.area05-box01 td {
padding: 15px;
text-align: left;
font-size: 14px;
font-weight: normal;
vertical-align: top;
border: 1px solid #ccc;
}

.area05-box01 th {
width: 250px;
background: #d3ede3;
}


/*-- 診療時間 -----------*/

.sinryo-time th,
.sinryo-time td {
font-weight: bold;
padding: 5px 10px;
text-align: center;
letter-spacing: 0;
vertical-align: middle;
}

.sinryo-time th {
width: auto;
}

.sinryo-time th:first-of-type {
background: #fff;
text-align: left;
}

.sinryo-time tr:first-of-type th {
background: #d3ede3 !important;
}

.sinryo-time td {
color: #2bb3c1;
font-size: 16px;
}

.sinryo-time .close {
color: #bf4417;
font-size: 14px;
}

.sinryo-caution td {
color: #000;
font-size: 14px;
text-align: right;
border: none;
padding-right: 0;
}

.sinryo-caution td span {
color: #2bb3c1;
font-size: 16px;
}

/* map */
.g-map {
position: relative;
padding-bottom: 38%;
height: 0;
overflow: hidden;
}

.g-map iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
	-webkit-box-sizing: border-box;
box-sizing: border-box;
}


/* -----------------------------------------------------------
	footer
------------------------------------------------------------*/

#footer {
border-top: 3px solid #50cbd9;
background: url(img/header_bg.png) repeat-x;
}

#footer .inner {
padding: 20px 0 15px;
overflow: hidden;
}

#footer h2 {
float: left;
margin-right: 100px;
}



/* -----------------------------------------------------------
	media query
------------------------------------------------------------*/

/* スマホ横1*/
@media screen and (max-width: 768px) {

p,li,dt,dd,th,td {
line-height: 140% !important;
font-size: 14px !important;
}

.sp {
display: block;
}

.pc {
display: none;
}

p + p {
margin-top: 15px;
}


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

.cmn-box > h2 {
margin: 20px 0;
}

.cmn-box h3 {
margin-bottom: 20px !important;
}

.cmn-box .inner {
padding: 35px 10px 10px;
}

.cmn-sub-box {
padding: 5px !important;
}

.cmn-sub-box-inner {
padding: 20px 15px !important;
}

.cmn-sub-box:before,
.cmn-sub-box:after,
.cmn-sub-box-inner:before,
.cmn-sub-box-inner:after {
width: 45px;
height: 36px;
}

.cmn-sub-box-inner:before {
left: -5px;
bottom: -5px;
}

.cmn-sub-box-inner:after {
right: -5px;
bottom: -5px;
}


/*-- flex -----------*/

.flex-box {
display: block;
}

.flex-box-c01 {
width: 100%;
float: none;
text-align: center !important;
margin-bottom: 15px;
}

.flex-box-c01 img {
max-width: 170px;
}

.flex-box-c02 {
width: 100%;
float: none;
}


/* -----------------------------------------------------------
	page
------------------------------------------------------------*/

#page,
.inner {
width: 100%;
min-width: 100%;
}

.inner {
padding: 10px;
}


/* -----------------------------------------------------------
	action
------------------------------------------------------------*/

.action .inner {
background-size: 25%;
padding: 10px;
}

.action-box {
width: 92%;
padding-left: 15%;
margin: 0 0 10px auto;
background: url(img/ico_woman01.png) no-repeat left bottom;
background-size: 15%;
}

.action h2 {
float: none;
margin: 0 auto 5px;
}

.action .btn-form01 {
float: none;
text-align: center;
}

.action-txt02 {
max-width: 500px;
margin: 0 auto;
}


/* -----------------------------------------------------------
	header
------------------------------------------------------------*/

#header .inner {
padding: 10px 0 0;
}

h1 {
float: none;
max-width: 200px;
margin: 0 auto 10px;
}

.head-info {
float: none;
width: 100%;
}

.head-info p {
float: none;
max-width: 250px;
margin: 0 auto 5px;
}

.head-info .btn-form02 {
float: none;
width: auto;
max-width: 230px;
}


/* -----------------------------------------------------------
	firstview
------------------------------------------------------------*/

#firstview .inner {
padding: 0;
}


/* -----------------------------------------------------------
	area01
------------------------------------------------------------*/

/* area01-box01 */

.area01-box01 .flex-box {
padding-bottom: 20px;
margin-bottom: 20px;
}

.area01-box01 h4 {
font-size: 16px;
line-height: 150%;
margin-bottom: 10px;
}


/* area01-box02 */

.area01-box02 {
background-size: 60%;
}

.area01-box02 h4 {
font-size: 14px;
width: 100%;
line-height: 150%;
margin-bottom: 10px;
}

.area01-box02 .flex-box-c01 {
margin: 20px auto 0;
}


/* area01-box03 */

.area01-box03 {
background-size: 60%;
}

.area01-box03 .flex-box {
padding: 10px;
}

.area01-box03 h4 {
font-size: 16px;
text-align: center;
}

.area01-box03 .flex-box-c01 {
width: 100%;
}

.area01-box03 .flex-box-c02 {
width: 100%;
margin: 0;
}

.area01-box03 .flex-box:nth-of-type(odd) {
padding: 10px;
}

.area01-box03 .flex-box:nth-of-type(n + 3) {
padding-top: 10px;
}

.area01-txt04 {
margin: 20px auto;
}


/* -----------------------------------------------------------
	area02
------------------------------------------------------------*/

/* area02-box01 */

.area02-box01 {
margin-bottom: 20px;
}


/* area02-box02 */

.area02-box02 {
background-size: 70%;
margin-bottom: 20px;
}

.area02-box02 .flex-box-c01 {
margin: 20px auto 0;
}


/* area02-box03 */

.area02-box03 {
padding: 15px;
}

.area02-box03 p {
line-height: 180% !important;
}

.area02-box03 span {
font-size: 16px;
}


/* -----------------------------------------------------------
	area03
------------------------------------------------------------*/

/* area03-box01 */
.area03-box01 {
margin-bottom: 20px;
}


/* area03-box02 */
.area03-box02 {
background-size: 70%;
margin-bottom: 20px;
}

.area03-box02 h3 {
margin-bottom: 40px !important;
}

.area03-box02 .cmn-sub-box-inner {
padding: 20px 10px;
}

.area03-box02 dl {
width: 48%;
margin: 0 1%;
}

.area03-box02 dl:nth-of-type(n + 3) {
margin-top: 40px;
}

.area03-box02 dt {
margin-bottom: 7px;
}

.area03-box02 dt img {
margin-bottom: -10px;
}


/* area03-box03 */
.area03-box03 {
background-size: 70%;
}

#page .area03-box03 dl {
padding: 10px;
}

.area03-box03 dt {
font-size: 16px;
text-align: center;
}

.a3b3-img img {
width: 46%;
margin: 0 1%;
}

.area03-box03-child {
margin-top: 20px;
}

.area03-box03-child .bg-inner {
padding: 10px;
}


/* -----------------------------------------------------------
	area04
------------------------------------------------------------*/

#area04 {
background-color: #def1eb;
background-size: contain;
}

#area04 .inner {
padding: 10px;
}

#area04 h2 {
margin: 12% auto 18%;
}

.area04-box {
width: 100%;
padding: 10px;
}

.area04-img01 {
width: 50%;
max-width: 200px;
float: none;
display: block;
margin: 0 auto 10px;
}

.area04-box-child01 {
width: 100%;
}

.area04-box-child01 h3 {
text-align: center;
margin-bottom: 10px;
}

.area04-txt01 {
max-width: 150px;
margin: 10px 0 0 auto;
}

.area04-box-child02 table {
float: none;
width: 100%;
}

.area04-box-child02 th,
.area04-box-child02 td {
padding: 5px 0;
}

.area04-box-child02 th {
width: 80px;
}


/* -----------------------------------------------------------
	form
------------------------------------------------------------*/

#form .inner {
padding: 10px 0;
}

#form h2 {
margin-bottom: 10px;
}

.form-box {
padding-bottom: 20px;
}

.form-box-ttl {
padding: 10px;
margin-bottom: 20px;
}

.form-box-ttl:before {
width: 85px;
height: 50px;
}

.form-box-ttl p {
font-size: 16px !important;
padding: 10px 5px;
border-radius: 10px;
}


/* form本体 */

#formWrap {
width: 100%;
}

#formWrap th,
#formWrap td {
display: block;
font-size: 14px;
width: auto;
  -webkit-box-sizing: border-box;
box-sizing: border-box;
}

#formWrap th {
font-weight: bold;
padding: 10px 5px 5px;
border-bottom: none;
}

#formWrap td {
padding: 5px 5px 10px;
}

#formWrap th.hissu {
padding-left: 50px;
}

#formWrap input[type="text"] {
max-width: 100%;
}

#formWrap input,
#formWrap textarea {
max-width: 100%;
}

.form-caution {
padding: 0 10px;
margin-bottom: 20px;
}


/* -----------------------------------------------------------
	area05
------------------------------------------------------------*/

.area05-box01 table {
border-bottom: 1px solid #ccc;
}

.area05-box01  th,
.area05-box01 td {
display: block;
width: 100%;
padding: 10px;
vertical-align: middle;
border-bottom: none;
  -webkit-box-sizing: border-box;
box-sizing: border-box;
}


/*-- 診療時間 -----------*/

#area05 .sinryo-time {
width: 100%;
border-bottom: none;
}

#area05 .sinryo-time th,
#area05 .sinryo-time td {
display: table-cell;
width: auto;
padding: 3px;
font-size: 12px;
}

.sinryo-time th:first-of-type {
width: 150px
}

.sinryo-caution td {
padding-top: 10px;
border-top: 1px solid #ccc;
}

/* map */
.g-map {
padding-bottom: 56%;
}


/* -----------------------------------------------------------
	footer
------------------------------------------------------------*/

#footer .inner {
padding: 10px;
}

#footer h2 {
float: none;
max-width: 200px;
text-align: left;
margin: 0 0 10px;
}

#footer p {
font-size: 12px !important;
}

#footer .copyright {
display: block;
margin-top: 10px;
font-size: 10px;
}

}


/* スマホ横2 */
@media screen and (max-width: 640px) {


/* -----------------------------------------------------------
	area01
------------------------------------------------------------*/

/* area01-box03 */

.area01-box03 .cmn-sub-box-inner {
padding: 20px 5px !important;
}

#page .area01-box03 .flex-box {
float: none;
width: 100%;
padding: 20px 0;
border: none;
border-bottom: 1px dashed #2bb3c1;
}

.area01-box03 h4 {
font-size: 16px;
text-align: center;
margin-bottom: 15px;
}

.area01-box03 .flex-box-c01 img {
max-width: 80px;
}


/* -----------------------------------------------------------
	area03
------------------------------------------------------------*/

/* area03-box02 */
.area03-box02 dl {
float: none;
width: 100%;
min-height: 100%;
margin: 0 auto 40px;
}

.area03-box02 dl:last-of-type {
margin-bottom: 0;
}

.area03-box02 dl:nth-of-type(n + 3) {
margin-top: 40px;
}

.area03-box02 dt {
margin-bottom: 7px;
text-align: center;
}

.area03-box02 dt img {
margin-bottom: -10px;
}


/* area03-box03 */

#page .area03-box03 .cmn-sub-box-inner {
padding: 20px 5px !important;
}

#page .area03-box03 dl {
float: none;
width: 100%;
border: none;
padding: 20px 0;
border-bottom: 1px dashed #2bb3c1;
}

.area03-box03 dt {
margin-bottom: 10px;
}

}


/* スマホ縦 */
@media screen and (max-width: 414px) {

.br-414 {
display: block;
}


/* -----------------------------------------------------------
	area05
------------------------------------------------------------*/

#area05 .sinryo-time th,
#area05 .sinryo-time td {
font-size: 10px !important;
}

.sinryo-time th {
width: auto;
}

/* map */
.g-map {
padding-bottom: 80%;
}

}