@charset "utf-8";

/* common
****************************************************/
*{ margin:0; padding:0; word-break:break-all; word-wrap:break-word; box-sizing:border-box; }
body{ font-size:19px; line-height:180%; color:#333; font-family:"ヒラギノ角ゴシック"; }
img{ max-width: 100%; height: auto; border:none; font-size:0; vertical-align:top; }
ul{ list-style-type:none; }
a{ text-decoration:none; color:#000; }
a:hover{ text-decoration:none; }
/*a:hover img{ opacity: 0.5; transition:all 0.3s ease; }*/
h1{ font-size:12px; font-weight:normal; }
address{ font-style:normal; }

@media screen and (max-width: 599px) {
	.sp_d-block { display: block; }
}

/* margin
****************************************************/
.mt10, .mt10ul li{ margin-top:10px; }
.mt20, .mt20ul li{ margin-top:20px; }
.mt30, .mt30ul li{ margin-top:30px; }
.mt40{ margin-top:40px; }
.mt50{ margin-top:50px; }
.mt60{ margin-top:60px; }
.mt75{ margin-top:75px; }
.mt100{ margin-top:100px; }
.mb20{ margin-bottom: 20px; }
.mb50{ margin-bottom: 50px; }
.mt1em{ margin-top: 1em; }
.mt2em{ margin-top: 2em; }
.pa1em{ padding: 1em; }
.pa10 { padding: 10px; }

/* padding
****************************************************/
.pd50 { padding: 50px; }

/* text-align
****************************************************/
.tar{ text-align:right; }
.tac{ text-align:center; }
.tal{ text-align:left; }
.ti1{ text-indent:1em; }
.ti2, .ti2ul li{ text-indent:-1em; padding-left:1em; }
.ti3, .ti3ul li{ text-indent:-1.5em; padding-left:1.5em; }
.tdu1{ text-decoration: underline; text-decoration-color: #B94949; }
.tdu2{ text-decoration: underline; text-decoration-color: #3a5da1; }

/* color
****************************************************/
.col_red{ color:red; }
.col_white{ color:white; }
.col_black{ color:black; }
.col_blue { color: #0188ee; }
.col1, .col1ul li:before, .col1icon:before{ color:#3a5da1; }
.col2, .col2ul li:before, .col2icon:before{ color:#B94949; }
.col3, .col3ul li:before, .col3icon:before{ color:#ADA53A; }
.col4, .col4ul li:before, .col4icon:before{ color:#ffffff; }
.col5, .col5ul li:before, .col5icon:before{ color:#0188ee; }


/* background
****************************************************/
/* color */
.bg1img{}
.bg1col{ background-color: #3A5DA1; }
.bg2col{ background-color: #ffffff; }
.bg3col{ background-color: #FFF0F0; }
.bg4col{ background-color: #D5EAFF; }

/* icon
****************************************************/
.icon1:before, .icon1ul li:before, .icon1dl dt:before{ content:"▶"; margin-right: .5em; }
.icon2:before, .icon2ul li:before, .icon2dl dt:before{ content:"●"; margin-right: .5em; }
.icon3:before, .icon3ul li:before, .icon3dl dt:before{ content:"■"; margin-right: .5em; }
.icon4:before, .icon4ul li:before, .icon4dl dt:before{ content:"◆"; margin-right: .5em; }
.icon5:before, .icon5ul li:before, .icon5dl dt:before{ content:"▲"; margin-right: .5em; }
.icon6:before, .icon6ul li:before, .icon6dl dt:before{ content:"＞"; margin-right: .5em; }

/* font-size
****************************************************/
.fs_s{ font-size:small; }
.fs_m{ font-size: medium; }
.fs12{ font-size:12px; }
.fs14{ font-size:14px; }
.fs15{ font-size:15px; }
.fs16{ font-size:16px; }
.fs20{ font-size:20px; }
.fs24{ font-size:24px; }
.fwb{ font-weight: bold; }

/* font-weight
****************************************************/
.fwn { font-weight: normal; }
.fwb { font-weight: bold; }
.fw100 { font-weight: 100; }
.fw200 { font-weight: 200; }
.fw300 { font-weight: 300; }
.fw400 { font-weight: 400; }
.fw500 { font-weight: 500; }
.fw600 { font-weight: 600; }
.fw700 { font-weight: 700; }
.fw800 { font-weight: 800; }
.fw900 { font-weight: 900; }

/* border-radius
****************************************************/
.br05, .br05ul li{ border-radius: 5px; -webkit-border-radius: 5px; -moz-border-radius: 5px; }
.br10, .br10ul li{ border-radius:10px; -webkit-border-radius:10px; -moz-border-radius:10px; }
.br15, .br15ul li{ border-radius:15px; -webkit-border-radius:15px; -moz-border-radius:15px; }
.br25, .br25ul li{ border-radius:25px; -webkit-border-radius:25px; -moz-border-radius:25px; }
.br50{ border-radius:50px; -webkit-border-radius:50px; -moz-border-radius:50px; }

/* list-style
****************************************************/
.ls_disc{ list-style:disc; margin-left:1em; }

/* column
****************************************************/
.clm1, .clm2{ letter-spacing: -0.4em; }
.clm1 li, .clm2 .row{ display: inline-block; letter-spacing: normal; vertical-align: top; }
.ofh1, .ofh2{ overflow: hidden; }
.ofh1 .fl, .ofh2 li{ float: left; }
.ofh1 .fr{ float: right; }

/* border
****************************************************/
/* header
****************************************************/
header .band1{ border: 3px solid #4188CC; color: #4188CC; width: 100%; text-align: center; font-size: 18px; }
header .h_logo { width: 400px; height: 50px; }


/* headline
****************************************************/
[class^="hl"]{ font-family: "見出ゴMB31", "Midashi Go MB31", serif; }
.hl1{ position: relative; text-align: center; font-weight: bold; }
.hl1::after{
	content: '';
	display: block;
	position: absolute;
	left: 50%;
	transform: translate(-50%);
	width: 50px;
	height: 4px;
	background-color: #163269;
	top: -15px;
}
.hl2{ background-color: #f0f0f0; border-bottom: 3px solid #3a5da1; padding: .5em 1em; }
.hl3{ border-bottom: 1px solid #73b6e8; }
.hl3:before{ content: "▶"; margin-right: .25em; color: #73b6e8; }
.hl4{ background-color: #3A5DA1; color: #fff; padding: .25em .75em; }
.hl5{ background-color: #D5EAFF; color: #3A5DA1; padding: .25em .75em; }

/* page title
****************************************************/
.pp1ttl{}

/* slider
****************************************************/
.slide .swiper-button-next, .slide .swiper-button-prev { color: #3A5DA1; }
.slide .swiper-pagination-bullet-active { background: #B94949; }
.slide img { max-width: 100%; height: auto; vertical-align: top; }

/* content
****************************************************/
/* notice */
#notice li{ border-bottom: 1px dotted #707070; padding: 1em 1em .5em 1em; }
#notice li a{ display: block; }
#notice li a:before{ content: "■ "; }
/* index */
#index .sec1 .ofh1{ border-bottom: 2px solid; padding: 0 0 .5em 1em; }
#index .sec1 .fl .ofh1{ border-color: #163269; }
#index .sec1 .fr .ofh1{ border-color: #B94949; }
#index .sec2{ background: url("images/top_tokucho_back.jpg"); }
#index .sec2 h2{ background: url("images/bg1img.png") repeat-x top center #395ca0; color: #fff; text-align: center; padding: 20px 0 15px; }
#index .sec2 h3{ margin: 40px 0 1em; border-bottom: 1px solid #3A5DA1; color: #3A5DA1; padding: 0 0 5px 100px; background-position: left center; background-repeat: no-repeat; background-size: 80px 54px; }
#index .sec2 [class^="num"]{ overflow: hidden; }
#index .sec2 .num1 h3{ background-image: url("images/top_tokucho_01@2x.png"); }
#index .sec2 .num1 .img{ background-image: url("images/top_tokucho_image01.png"); }
#index .sec2 .num2 h3{ background-image: url("images/top_tokucho_02@2x.png"); }
#index .sec2 .num2 .img{ background-image: url("images/top_tokucho_image02.png"); }
#index .sec2 .num3 h3{ background-image: url("images/top_tokucho_03@2x.png"); }
#index .sec2 .num3 .img{ background-image: url("images/top_tokucho_image03.png"); }
#index .sec2 .num4 h3{ background-image: url("images/top_tokucho_04@2x.png"); }
#index .sec2 .num4 .img{ background-image: url("images/top_tokucho_image04.png"); }
#index .sec2 .num5 h3{ background-image: url("images/top_tokucho_05@2x.png"); }
#index .sec2 .num5 .img{ background-image: url("images/top_tokucho_image05.png"); }
#index .sec2 .txt{ overflow: hidden; }
#index .sec3 h2{ text-align: center; color: #163269; margin: 30px 0 10px; }
#index .sec3{ background: url("images/top_syujutu_back.jpg") no-repeat top center; background-size:cover; }
#index .sec3 .fl, #index .sec3 .fr{ background-color: #fff; margin-top: 20px; }
#index .sec4{ background-color: #F0F0F0; padding: 40px 0;}
#index .sec4 h2{ text-align: center; }
#index .sec5{background: url("images/top_goaisatu_back.png") no-repeat top center; background-size:cover; padding: 40px 0; }
#index .sec5 .wrap{ background-color: #fff; padding: 20px; }
#index .bnr { background-color: #F0F0F0; }
#index .bnr li { text-align: center; }
#index .bnr li + li { margin-top: 30px; }
.name{ font-size: 16px; text-align: center; line-height: 200%; }
.name span{ font-size: 26px;}

#index .treatment-list{ display: flex; flex-wrap: wrap; justify-content: space-between; }
#index .treatment-list:nth-child(2){ margin: 20px 0 50px; }

#index .cataract-stay__button a { display: block; background: #B94949; padding: 20px 0; color: #fff; text-align: center; font-size: 1.2em; font-weight: bold; }
#index .cataract-stay__button a:hover { opacity: .6; }

@media screen and (min-width: 600px) {
	#index .treatment-list p { width: 48%; }
}


/* greeting */
#greeting .sec1__container-1 > div {
	margin-top: 30px;
}

#greeting .staff-introduction__area .image-list { display: flex; flex-wrap: wrap; }
#greeting .staff-introduction__area .image-list .image { margin-top: 30px; }
#greeting .staff-introduction__area .image-list:last-of-type { justify-content: space-between; }
#greeting .staff-introduction__area .image-list:first-of-type { justify-content: space-around; }

/* access */
#access .box1{ padding: 20px; }

/* about
****************************************************/
#about dt:before{ content:"▶ "; color:#DD6B5C; }
#about dd{ margin:15px 15px 50px; }

/* sitemap
****************************************************/
#sitemap li{ margin-bottom:2em; }
#sitemap .parent li:before{ content:"▶"; color:#DD6B5C; margin-right:.5em; }
#sitemap .child{ margin-top: 1em; }
#sitemap .child li{ margin-bottom: .5em; }
#sitemap .child li:before{ content:"";  margin-right:0; }
#sitemap .child a{ text-decoration:underline; }
#sitemap .child a:hover{ text-decoration:none; }

/* footer
****************************************************/
footer .sec1{ line-height: 150%; color: #fff; }
footer .sec1 .bg2col{ padding: 20px 20px 15px; text-align: center; color: #3A5DA1; }
footer .sec1 .band1{ border: solid #3A5DA1; border-width: 1px 0; padding: 5px 0; }
footer .lnk2btn, footer .lnk2btn:hover{ color: #3A5DA1; }
footer .lnk2btn:hover::after{ background-color: #D5EAFF; }
footer .lnk2btn:hover:before{ border-color: #3A5DA1; }
address{ border-top: 1px solid #3A5DA1; padding: 1em 0; }

/* 404
****************************************************/
.error404{ text-align:center; color:red; padding:100px 0; }

/* breadcrumbs
****************************************************/
.breadcrumbs{ list-style: none; overflow: hidden; font-size: 12px; }
.breadcrumbs li{ float: left; }
.breadcrumbs li::after{ content: '>'; display: inline-block; padding: 0 10px; }
.breadcrumbs li:last-child::after{ display: none; }

/* pagetop
****************************************************/
.pagetop {
	display:none;
	position:fixed;
	bottom:0px;
	right:10px;
	line-height:0;
	z-index: 9999;
}
.pagetop a{
	display:block;
	padding:5px;
	background-color:#3A5DA1;
	text-align:center;
	color:#ffffff;
	text-decoration:none;
	margin-bottom:5px;
	border-radius:5px;
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	opacity:.5;
}
.pagetop a:hover, .pagetop a:hover img{ opacity:1.0; }

/* link
****************************************************/
.lin1op:hover, .lin2op a:hover,
.lnk1btn:hover{ opacity: .6; }
.lnk1btn{ display: block; color: #3A5DA1; background-color: #D5EAFF; border: 1px solid #3A5DA1; padding: 1em; }
.lnk2btn {
	display: inline-block;
	text-align: left;
	text-decoration: none;
	line-height: 50px;
	outline: none;
	position: relative;
	z-index: 2;
	background-color: #fff;
	border: 2px solid #3A5DA1;
	color: #3A5DA1;
	line-height: 50px;
	overflow: hidden;
	padding-left: 1em;
	border-radius: 4px;
}
.lnk2btn::before,
.lnk2btn::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.lnk2btn,
.lnk2btn::before,
.lnk2btn::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.lnk2btn:hover { color: #fff; }
.lnk2btn::after {
	top: 0;
	right: -100%;
	width: 100%;
	height: 100%;
}
.lnk2btn:hover::after {
	right: 0;
	background-color: #3A5DA1;
}
.lnk2btn:before {
	content: '';
	width: 6px;
	height: 6px;
	border: 0;
	border-top: solid 2px #3A5DA1;
	border-right: solid 2px #3A5DA1;
	position: absolute;
	top: 50%;
	right: 10px;
	margin-top: -4px;
	transform: rotate(45deg);
	z-index: 10;
}
.lnk2btn:hover:before{ border-color: #fff; }





/**************************************************

	600px over

**************************************************/
@media only screen and (min-width:600px), print{

	/* common
	****************************************************/
	.wrap{ margin-left:auto; margin-right:auto; width:1000px; }
	.sp{ display:none!important; }

	/* margin
	****************************************************/
	.ml2em{ margin-left: 2em; }

	/* overflow:hidden;
	****************************************************/
	.ofh1pc, .ofh2pc{ overflow:hidden; }
	.ofh1pc .fl, .ofh2pc li{ float:left; }
	.ofh1pc .fr{ float:right; }

	/* column
	****************************************************/
	.clm1pc{ letter-spacing:-0.4em; font-size: .9em;}
	.clm1pc li{ display:inline-block; letter-spacing:normal; vertical-align:top; }

	/* width
	****************************************************/
	.w250, .bnt250{ width: 250px; }
	.w480{ width: 480px; }
	.w650{ width: 650px; }

	/* width
	****************************************************/
	.hl1{ font-size: 30px!important; }
	.hl2{ font-size: 24px; }
	.hl3, .hl4{ font-size: 22px; }

	/* header
	****************************************************/
	header{ padding: 10px 0 20px; }
	header .fr{ padding-top: 10px; margin-left: 10px; }
	header h1{ margin-bottom: 10px; }
	header .tel{ margin-top: 10px; }

	header .fr-web{ margin-right: 10px; }
	header .smark-isesaki { font-size: 20px; border-color: #3A5DA1; color: #fff; background: #3A5DA1; border-radius: 10px; font-weight: bold; text-shadow: 1px 1px 1px #000; }
	header .web-button { box-shadow: 3px 3px 5px #808080; transition: transform .3s ease-in-out, box-shadow .3s ease-in-out; }
	header .web-button:hover { transform: translateY(3px); box-shadow: 0 0 0 #808080; }
	/* nav
	****************************************************/
	.gnavi, .snavi{ font-size:22px; line-height: 20px; width:100%; }

	.gnavi{ background: url("images/bg1img.png") repeat-x top center #395ca0; }
	.gnavi ul{ letter-spacing: -0.4em; text-align: center; }
	.gnavi li{ display: inline-block; letter-spacing: normal; vertical-align: top; }
	.gnavi li{ width: 166px; background: url("images/nav1bg.png") no-repeat right center; padding-right: 1px; }
	.gnavi li:first-child{ width: 170px; padding-left: 1px; background: url("images/nav1bg.png") no-repeat left center, url("images/nav1bg.png") no-repeat right center; }
	.gnavi ul a{ display:block; color: #ffffff; padding: 20px 0; }
	.gnavi li:hover a{ background-color: #E7E7EF; color: #3A5DA1; }
	.gnavi .item{ position: relative; }
	.gnavi [class^="child"] a{ color: #333333!important; }
	.gnavi [class^="child"]{
		visibility: hidden;
		width: 100%;
		position: absolute;
		top: 60px;
		left: 0px;
		z-index: 999;
		background-color: #E7E7EF;
		font-size: 16px;
	}
	.gnavi [class^="child"] li{ background: none; text-align: left; padding-left: 0; padding-right: 0; }
	.gnavi .child li{ width: 166px; }
	.gnavi .child4, .gnavi .child5{ width: 1000px; text-align: left; }
	.gnavi .child4{ left: -502px; }
	.gnavi .child4 li{ width: 25%; }
	.gnavi .child5{ left: -668px; }
	.gnavi .child5 li{ width: 25%; }
	.gnavi [class^="child"] a{ padding-left: 1em; padding-right: .5em; }
	.gnavi [class^="child"] a:before{ content: "＞ ";  }
	.gnavi [class^="child"] a:hover{ text-decoration: underline; }
	.gnavi .item:hover [class^="child"]{ visibility: visible; }
	.snavi{ background-color: #F0F0F0; }
	.snavi li{ width: 25%; background: url("images/nav2bg.png") no-repeat right center; }
	.snavi li:first-child{ background: url("images/nav2bg.png") no-repeat left center, url("images/nav2bg.png") no-repeat right center; }
	.snavi ul a{ display:block; color: #3A5DA1; padding: 15px 0; text-align: center; }
	.snavi ul a img{ vertical-align: -9px; margin-right: 18px; }
	.snavi ul a:hover, .snavi ul .stay{ background-color: #C1C1C1; }
	.fixed{ position:fixed; top:0px; left:0px; z-index:999; }
	.fixed2{ position:fixed; top:60px; left:0px; z-index:998; }
	.space{ margin-top:60px; }
	.space2{ margin-top:120px; }
	.none{ display:none; }

	/* demo_blue 2022-04-25 */
	.snavi_border { border-top: 5px solid #395ca0; }
  .snavi_border ul a img{ vertical-align: text-top; margin-right: 10px; }
	.gnavi ul .link_text , .snavi ul .link_text { color: #000!important; font-weight: bold; }
	.gnavi ul .navi_text , .gnavi ul .stay { font-weight: bold; font-size: 25px; }

	/* page title
	****************************************************/
	.hl1{ font-size: 26px; }
	.pp1ttl{ background: url("images/h_image.png") repeat-x center center; height: 180px; }

	/* content
	****************************************************/
	/* common */
	.spa1{ padding:50px 0; }
	.spa2{ padding:80px 0; }
	.spa3{ padding:50px 0 100px; }
	.spa4{ padding:50px; }
	/* index */
	.pcmv{ background: url("images/main_pc.png") no-repeat bottom center; height: 550px; margin-bottom: 40px; }
	/* index */
	#index .sec2 .fl, #index .sec2 .fr{ width: 50%; overflow: hidden; }
	#index .sec2 .cutL, #index .sec2 .cutR{ background-repeat: no-repeat; height: 500px; background-size:cover; }
	#index .sec2 .cutL{ background-position: right 40px center; }
	#index .sec2 .cutR{ background-position: left 40px center; }
	#index .sec2 .rig{ float: right; }
	#index .sec2 .txt{ width: 500px; }
	#index .sec3{ padding: 35px 0 40px; }
	#index .sec3 .fl{ margin-right: 20px; }
	#index .sec3 ul{ padding: 15px 20px; font-size: 17px; }
	#index .sec3 li{ border-bottom: 1px dotted #707070; margin-bottom: 10px; }
	#index .sec3 li:last-child{ border: none; margin-bottom: 0; }
	#index .sec4{ padding: 80px 0; }
	#index .sec4 .box1{ padding: 35px 100px 0; }
	#index .sec4 .box2 li{ margin: 20px 20px 0 0; }
	#index .sec4 .box2 li:nth-child(4n){ margin-right: 0; }
	#index .sec4 .lnk2btn{ width: 260px; }
	#index .sec5 .wrap{ padding: 40px 35px; }
	#index .sec5 .fl{ width: 290px; line-height: 150%; font-size: 16px; }
	#index .sec5 .fr{ width: 610px; }
	#index .sec5 .ofh1pc{ margin-top: 35px; }
	#index .sec5 .name{ padding: 40px 0; border-bottom: 1px solid #707070; margin-bottom: 30px; }
	#index .sec5 .fr .tar{ margin-top: 50px; }
	#index .sec5 .lnk2btn{ width: 200px; }
	/* greeting */
	#greeting .sec2 .ofh1pc{ margin-top: 60px; }
	#greeting .sec2 figcaption{ margin-top: 20px; text-align: center; }
	#greeting .sec2 .fr{ width: 650px; }
	/* guide */
	#guide .sec2 .fr{ width: 650px; }
	/* access */
	#access .lnk2btn{ width: 400px; }

	/* sitemap
	****************************************************/
	#sitemap .wrap{ padding-left:100px; padding-right:100px; }
	#sitemap .child{ margin-left:1.5em; overflow:hidden; }
	#sitemap .child li{ float:left; width:33%; }

	/* footer
	****************************************************/
	footer .sec1{ padding: 40px 0; }
	footer .sec1 .fl{ width: 470px; }
	footer .sec1 .fl ul{ font-size: 14px; }
	footer .sec1 .fl li:first-child{ margin-right: 4em; }
	footer .sec1 .fr .lnk2btn{ width: 200px; font-size: 16px; }
	footer .sec2{ text-align: center; }
	footer .sec2 ul{ padding: 1em 0; }
	footer .sec2 li{ margin: 0 1em; }

	/* breadcrumbs
	****************************************************/
	.breadcrumbs ol{ margin: 5px 0 0 2em; }

	/* gmap
	****************************************************/
	.gmap{
		width:100%;
		position: relative;
		padding-bottom:340px;
		height: 0;
		overflow: hidden;
	}
	.gmap iframe, .gmap object, .gmap embed{
		position: absolute;
		top:0;
		left:0;
		width:100%;
		height:340px;
	}
}





/**************************************************

	600px under

**************************************************/
@media only screen and (max-width:599px){

	/* common
	****************************************************/
	body{ font-size:16px; }
	.wrap{ padding: 15px; line-height:1.5em; }
	img{ max-width:100%; height:auto; }
	.pc{ display:none!important; }
	.sp_tac{ text-align:center; }
	.bg2img{ background-size:auto 40%; }
	.fs20{ font-size:17px; }

	/* width
	****************************************************/
	.w1p{ width: 60%; }
	.bnt250{ width: 80%; }

	/* column
	****************************************************/
	.clm1sp, .clm2sp{ letter-spacing: -0.4em; }
	.clm1sp li, .clm2sp .row{ display: inline-block; letter-spacing: normal; vertical-align: top; }

	/* overflow:hidden;
	****************************************************/
	.ofh1sp, .ofh2sp, .ofh3sp{ overflow:hidden; }
	.ofh2sp li{ width: 48%; }
	.ofh3sp li{ width: 32%; margin-right: 2% !important; margin-top: 2% !important; }
	.ofh3sp li:nth-child(3n){ margin-right: 0 !important; }
	.ofh2sp li:nth-child(odd), .oh_clm3sp li{ float: left; }
	.ofh2sp li:nth-child(even), .oh_clm3sp li:nth-child(3n){ float: right; }

	/* header
	****************************************************/
	header .wrap{ padding:0; }

	/* nav
	****************************************************/
	html{ overflow-x: hidden; }
	.header-sp{ position:fixed; top:0px; left:0px; z-index:99; width:100%; }
	#headerSp{ width:100%; border-collapse:collapse; background-color: #fff; }
	#headerSp tr td:nth-of-type(1){ padding: 2% 5%; text-align: left; }
	#headerSp tr td:nth-of-type(2){ width: 20%; padding: 1% 1% 1% 0; text-align: center; }
	#headerSp tr td:last-child{ width: 15%; padding: 0; vertical-align: top; text-align: right; }
	/* nav */
	.gnavi{
		background-color: #fff;
		position: absolute;
		position: fixed;
		height: 100%;
		width: 100%;
		z-index: 9998;
	}
	.menubtn .close{ display: none; }
	.menubtn.active .open{ display: none; }
	.menubtn.active .close{ display: inline-block; }
	.gnavi .inner{ height:100%; overflow-y: scroll; -webkit-overflow-scrolling: touch; padding-bottom: 150px; }
	.gnavi .wrap{ padding: 0; margin: 10px 0; }
	.gnavi .mnavi li{ border-bottom: 2px solid #F0F0F0; padding: 10px 15px; }
	.gnavi .mnavi li a{ display:block; border-left: 4px solid #3A5DA1; padding: 5px 10px; color: #333; }
	.gnavi .mnavi li a:hover{}
	.gnavi [class^="child"]{ overflow: hidden; font-size: 14px; }
	.gnavi [class^="child"] li, .gnavi [class^="child"] li a{ border: none; padding: 5px 0 0 10px; }
	.gnavi [class^="child"] li{ float: left; width: 50%; }
	.gnavi [class^="child"] li a{ text-indent:-1.5em; padding-left:1.5em; }
	.gnavi [class^="child"] li a:before{ content: "＞ "; color: #3A5DA1; }
	/* accordion */
	.gnavi .door{ display:none; }
	.gnavi .switch{ cursor:pointer; display: block; position: relative;	}
	.gnavi .switch a{ pointer-events: none; display: inline-block; }
	.gnavi .switch:after{ content: url("images/sp_icon_plus.svg"); width: 20px; heigth: 20px; position: absolute; right: 10px; top: 50%; transform: translateY(-50%); }
	.gnavi .switch.active:after{ content: url("images/sp_icon_minus.svg"); }
	/* snaviSp */
	.snaviSp{ padding: 0 4%; font-size: 15px; }
	.snaviSp li{ margin: 2% 0; }
	.snaviSp li a{ display: block; background-color: #F0F0F0; padding: 15px 0 15px 15px; color: #3A5DA1; }
	.snaviSp a img{ vertical-align: -9px; margin-right: 9px; }

	/* page title
	****************************************************/
	.pp1ttl{ background: url("images/sp_h_image.png") repeat-x center center; background-size:cover; padding-top: 29%; }

	/* content
	****************************************************/
	/* common */
	.spa1{ padding-top: 50px; padding-bottom: 50px; }
	.spa3{ padding-top: 50px; padding-bottom: 100px; }
	.spa1sp{ margin-top: 50px; }
	/* index */
	#index{  }
	#index .sec2{ padding-bottom: 20px; }
	#index .sec2 h3{ margin-top: 20px; }
	#index .sec2 .cutL, #index .sec2 .cutR{ background-repeat: no-repeat; padding-top: 43%; background-size:cover; }
	#index .sec2 .txt{ margin: 0 20px 50px; }
	#index .sec3{ padding: 30px 0; }
	#index .sec3 h3 img{ width: 100%; }
	#index .sec3 ul{ padding: 10px 20px 20px; }
	#index .sec3 li{ margin-top: 10px; }
	#index .sec4 .box1 figure{ margin: 20px 0; }
	#index .sec4 .box2{ margin-top: 20px; }
	#index .sec4 .box2 li{ margin-top: 2%; }
	#index .sec4 .box2 li:nth-child(odd){ width: 49%; margin-right: 1%; }
	#index .sec4 .box2 li:nth-child(even){ width: 49%; margin-left: 1%; }
	#index .sec5{ padding: 30px 20px; }
	#index .sec5 .box1 img{ margin: 20px 0; }
	#index .sec5 .fr{ margin-top: 30px; }
	#index .sec5 .fr .tar{ margin: 100px 0 2em; padding-bottom: 2em; border-bottom: 1px solid #707070; }
	#index .sec5 .lnk2btn, #index .sec4 .lnk2btn{ width: 60%; }
	#index .bnr li img{ width: 100%; }

	#index .treatment-list p:last-child{ margin-top: 20px; }


	/* greeting */
	#greeting .sec2 figure{ text-align: center; margin-top: 50px; padding-bottom: 20px; }
	#greeting .sec2 figcaption{ margin-top: 20px; text-align: center; }
	/* guide */
	#guide .sec1 .w480{ margin-top: 20px; }
	#guide .sec2 .fl{ text-align: center; margin-bottom: 20px; }
	/* access */
	#access .lnk2btn{ min-width: 80%; }

	/* footer
	****************************************************/
	footer .sec1 .fr{ margin-top: 30px; padding-bottom: 30px; }
	footer .sec1 .lnk2btn{ width: 60%; }
	footer .sec2 ul{ padding-left: 15%; }
	footer .sec2 li{ padding: .5em 0; }
	address{ text-align: center; font-size: 12px; line-height: 150%; }

	/* breadcrumbs
	****************************************************/
	.breadcrumbs ol{ font-size: 10px; }

	/* gmap
	****************************************************/
	.gmap{
		position: relative;
		padding-bottom: 80%;
		padding-top:30px;
		height: 0;
		overflow: hidden;
	}
	.gmap iframe, .gmap object, .gmap embed{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}

	/* footerSp
	****************************************************/
	#footerSp{ width:100%; border-collapse:collapse; position:fixed; z-index:9999; bottom:0px; left:0px; background-color: #3A5DA1; border: solid #3A5DA1; border-width: 5px 0; }
	#footerSp tr td:nth-of-type(1){ width: 33%; }
	#footerSp tr td:nth-of-type(2){ width: 34%; border: solid #fff; border-width: 0 1px; }
	#footerSp tr td:nth-of-type(3){ width: 33%;}
	#footerSp img{ margin-bottom: 5px; }
	#footerSp a{ display: block; text-align:center; padding: 5px 0; color: #fff; }
}
@media only screen and (max-width:599px){

  #footerSp2{ width:100%; border-collapse:collapse; position:fixed; z-index:9999; bottom:0px; left:0px; background-color: #3A5DA1; border: solid #3A5DA1; border-width: 5px 0; }
	#footerSp2 tr td:nth-of-type(1){ width: 28%; }
	#footerSp2 tr td:nth-of-type(2){ width: 28%; border: solid #fff; border-width: 0 1px; }
	#footerSp2 tr td:nth-of-type(3){ width: 26%; border: solid #fff; border-width: 0 1px;}
	#footerSp2 tr td:nth-of-type(4){ width: 15%; background-color: #100222; border: solid #100222;  border-width: 5px 0; }

	#footerSp2 img{ margin-bottom: 5px; }
	#footerSp2 a{ display: block; text-align:center; padding: 5px 0; color: #fff; }

	#footerSp2 .conv_top a::after {
		content: "";
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    transform: rotate(-45deg);
    width: 8px;
    height: 8px;
    position: absolute;
    top: -20px;
    bottom: 0;
    right: 28px;
    margin: auto;
		transform: rotate(-45deg);
		left: 50%;
		right: -35%;
}
#footerSp2 .conv_top p{margin-top: 30px;}
}
