@charset "utf-8";

@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);



/* --------------------------------------------
									全ページ共通
---------------------------------------------- */ 
html,
body { height:100%; }

html{}
body { min-width: 350px; height:auto; background:#ededed;}

body *{/* background:rgba(000,000,000,0.6); border:1px solid #000000; */}



/* フォントの指定 */
body,input,select,textarea {
	font-family: 'Noto Sans JP', sans-serif; font-weight: 400;
	color:#000; font-size:14px; line-height:1.8; letter-spacing:0.05em;}
/* フォントの指定 */
	
a {color:#000; text-decoration: none;}
p {text-align:justify; text-justify:inter-ideograph;}


/* HG明朝B */
.injection h2,
.laser h2,
.laser h2 + p,
.form .formWrapper h3,
#form .thanks h3
{ font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝B", serif; font-weight: normal;}


/*------------------------------------------

Header

------------------------------------------*/
#header .shinryou { width:100%; padding: .5% 0; color: #fff; background: #991e23;}
#header .shinryou ul { text-align: center;}
#header .shinryou ul li { display: inline-block; margin: 0 .2%;}
#header .shinryou ul li b { box-sizing: border-box; padding-right: 1em; border: solid #fff; border-width: 0 1px 0 0;}
#header .shinryou ul li span { display: inline-block; padding-right: 1em; font-weight: bold;}
#header .headerInner { overflow: hidden; width: 95%; max-width: 1350px; margin: 0 auto 50px; padding-top: 20px;}
#header .logo { position: relative; margin-top: 25px;}
#header .logo * { display: block; position: absolute; top: 0; left: 0;}
#header .logo , #header .logo * { float: left; overflow: hidden; width: 682px; height: 43px; text-indent: 100%; white-space: nowrap;}
#header .logo span { background: url(../img/index/logo.png) top left no-repeat;}
@media screen and (max-width: 1400px) {
#header .logo , #header .logo * { width: 340px;}
#header .logo span { background-size: 180%;}
}
@media screen and (max-width: 1080px) {
#header .headerInner { width:100%; margin-bottom:15px;}
#header .logo , #header .logo * { float:none; width: 220px; height:93px; margin: 0 auto;}
#header .logo span { background: url(../img/index/logoSp.png) top left no-repeat; background-size:contain;}
}
@media screen and (max-width: 768px) {
#header .shinryou ul { width: 60%; min-width: 350px; margin: 0 auto; text-align: left;}
#header .shinryou ul li { display: block; margin: 0; font-size: .929em;}
#header .shinryou ul li span { display: inline-block; width: 20%;}
#header .shinryou ul li b { display: inline-block; width: 80%; padding-right: 0; border-width: 0 0 1px 0;}
#header .shinryou ul li:nth-last-of-type(1) b { border: none;}
#header .shinryou ul li span { padding-right: 0;}
}

#header .headerInfo { float: right; overflow: hidden; width: 60%; max-width: 600px;}
#header .sns { float: left; width: 90px; text-align: center; margin-right: 5%; padding-top: 2.5em;}
#header .sns li { display: inline-block; margin: 0 5.5%;}
#header .tel { float: left; max-width: 215px; padding: 20px 32px 0 0; font-size: .857em; line-height: 1.4;}
#header .tel b { display: block; font-size: 1.8em;}
#header .douisyo { overflow: hidden; font-size: .75em; line-height: 1.4;}
#header .douisyo p:nth-of-type(1) { margin-bottom: 10px; font-weight: normal;}
#header .douisyo p:nth-of-type(1) b { font-weight: normal; color: #991e23;}
#header .douisyo .button { display: block; box-sizing: border-box; width: 210px; height: 42px; padding: 0 3px 3px 0; border: solid #991e23; border-width: 0 1px 1px 0;}
#header .douisyo .button a { display: block; height: 100%; font-size: 1.3em; font-weight: bold; text-align: center; color: #fff; line-height: 36px; vertical-align: middle; background: #991e23;}
#header .douisyo .button span { padding-left: 1.8em; background: url(../img/index/pdfIcon.png) left center no-repeat;}
@media screen and (max-width: 1080px) {
#header .headerInfo { float:none; box-sizing:border-box; overflow:inherit; width:95%; max-width:none; margin: 0 auto; padding:15px 0; background:#fff;}
#header .sns { float: none; width: 100%; margin-right: 0; padding-top: 0;}
#header .sns li { display: inline-block; margin: 0 .5% 1em;}
#header .tel { float:none; width:100%; max-width: none; margin-bottom: 15px; padding:0; font-size:.78em; text-align:center;}
#header .tel b { display:block; font-size: 1.4em;}
#header .douisyo { width: 100%;}
#header .douisyo p:nth-of-type(1) { width:90%; margin:0 auto 10px; text-align:center;}
#header .douisyo p:nth-of-type(1) b {}
#header .douisyo .button { overflow:hidden; width:160px; height:38px; margin:0 auto; line-height: 34px;}
#header .douisyo .button a { font-size:1em;}
#header .douisyo .button span { padding-left: 2.5em;}
}


#header .nav { max-width: 1560px; height: 40px; margin: 0 auto 15px;}
#header .nav ul { height: 30px; text-align: center;}
#header .nav ul * { height: 30px;}
#header .nav ul li { display: inline-block; margin: 0 1.5%;}
#header .nav ul li a { display: block; box-sizing: border-box; font-weight: bold;}
#header .nav ul li:hover a { border-bottom: 1px solid #c1272d; color: #999;}

/*-- menu --*/
#menuButton { display: none; width: 45px; height: 45px; position: fixed; top: 10px; right: 10px; z-index: 9999; border-right: 0px; cursor: pointer; background: #fff;}
.menu1,
.menu2,
.menu3 { width:30px; height:2px; background:#000; position:absolute; right: 8px; border-radius:0px;
transition: all 0.5s ease-out; 
-o-transition: all 0.5s ease-out; /* opera */ 
-moz-transition: all 0.5s ease-out; /* firefox */
-webkit-transition: all 0.5s ease-out; /* chrome, safari */
-ms-transition: all 0.5s ease-out; /* ie */   } 
.menu1 { top:12px;} 
.menu2 { top:22px;} 
.menu3 { top:32px;} 
.menuclick1 { top:22px;-moz-transform: rotate(225deg);-webkit-transform: rotate(225deg);-o-transform: rotate(225deg);-ms-transform: rotate(225deg); transform: rotate(225deg); }
.menuclick2 { opacity:0;}
.menuclick3 { top:22px;-moz-transform: rotate(-225deg);-webkit-transform: rotate(-225deg);-o-transform: rotate(-225deg);-ms-transform: rotate(-225deg);transform: rotate(-225deg); }

@media screen and (max-width: 1080px) {
#header .nav { display: none; position: fixed; top: 0; left: 0; z-index: 99; width: 100%; height: auto; margin: 0; background: #fff;}
#header .nav ul { width: 100%; height: 100%; border: solid #ccc; border-width: 1px 0;}
#header .nav ul li { display: table; box-sizing: border-box; float: left; width: 100%; height: 8vh; margin: 0 auto; text-align: center; border: solid #ccc; font-size: 12px; border-width: 0 1px 1px 0; background: none;}
#header .nav ul li * { position: static; width: 50%; height: auto;}
#header .nav ul li:hover { border-bottom: 1px solid #f39c32; background-image: none;}
#header .nav ul li a { display: table-cell; height: 100%; padding: .25em 0; font-size: 1.157em; text-decoration: none; line-height: 1.8; vertical-align: middle;}
#header .nav ul li a span { background: none;}	
/*-- menu --*/
#menuButton { display: block;}
}


.contentsInner { width: 95%; max-width: 860px; margin: 0 auto;}

/* ------------------------------
 Price
------------------------------ */

.priceWrapper { overflow: hidden; max-width: 700px; margin: 0 auto;}

.price h4 { margin-bottom: 4px; font-size: 1.143em; font-weight: normal; border-bottom: 1px solid #b3b3b3;}
.price h4 span { display: inline-block; padding-bottom: 5px;}

.price table { width: 100%;}
.price table .part { padding-left: 4px;}
.price table th,
.price table td { box-sizing: border-box; padding: 4px 0; vertical-align: middle; border: dashed #b3b3b3; border-width: 0px 1px 1px 0px;}
.price table th:nth-last-of-type(1),
.price table td:nth-last-of-type(1) { border-right: none;}

.price table tbody .priceDetail { padding: 0 1em; text-align: right;}
.price table tbody .none { padding: 0 1em; text-align: center;}

.price table thead th { font-size: .857em; font-weight: normal; color: #787878;}
.price table .woman,
.price table .man { text-align: center;}
.price table .woman { color: #c1272d;}
.price table .man { color: #121c3c;}

.price table tbody .part,
.price table tbody .menu,
.price table tbody .course { font-size: .929em;}
.price table tbody .part span,
.price table tbody .menu span,
.price table tbody .course span { font-size: .846em;}
@media screen and (max-width: 768px) {
.price h4 { font-size: .929em;}
.price table tbody .part,
.price table tbody .menu,
.price table tbody .course { font-size: .86em;}
.price table tbody .part span,
.price table tbody td { font-size: .85em;}
}


/*------------------------------------------

PageTop

------------------------------------------*/
.pageTop { position: fixed; bottom: 20%; right: 20px; width: 100px; border: 1px solid #121c3c; font-size: .929em; text-align: center;}
.pageTop a { display: block; box-sizing: border-box; padding: 20px 5px; color: #fff; background: #121c3c;}
.pageTop a span { display: block; font-weight: bold; font-size: 1.2em; text-align: center;}
@media screen and (max-width: 960px) {
.pageTop { position: fixed; bottom: 0; right: 0; width: 100%; border: 1px solid #121c3c; font-size: .929em; text-align: center;}
.pageTop a { padding: 10px 0;}
.pageTop a span { display: inline-block;}
}










