@charset "UTF-8";

/*
html{ scroll-padding-top:40px;}
*/
body{ font-family: "Shuei KakuGo Gin L"; line-height:1.7;}
.container-sm{ max-width:960px;}

/******************************************************************/
/* HEADER */
/******************************************************************/
header{ margin-bottom:4.8em;}
header img{ max-width:400px; margin-left:1em;}
@media (max-width: 992px){
	header{ margin-bottom:3.8em;}
	header img{ max-width:300px; margin-left:0.5em;}
}


/******************************************************************/
/* NAV */
/******************************************************************/
/*========= ナビゲーションのためのCSS ===============*/

#g-nav{
    /*position:fixed;にし、z-indexの数値を小さくして最背面へ*/
    position:fixed;
	z-index: -1;
	opacity: 0;/*はじめは透過0*/
    /*ナビの位置と形状*/
	top:0;
	width:100%;
    height: 100vh;/*ナビの高さ*/
	background:rgba(24,41,128,0.9);
    /*動き*/
	transition: all 0.3s;
}

/*アクティブクラスがついたら透過なしにして最前面へ*/
#g-nav.panelactive{
	opacity: 1;
	z-index:6666;
}

/*ナビゲーションの縦スクロール*/
/*
#g-nav.panelactive #g-nav-list{
    position: fixed;
    z-index: 999; 
    width: 100%;
    height: 100vh;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}
*/

/*ナビゲーション*/
#g-nav ul {
    display: none;
    /*ナビゲーション天地中央揃え*/
    position: absolute;
/*
    z-index: 999;
*/
    top:50%;
    left:50%;
    transform: translate(-50%,-50%);
    margin:0; padding:0;
}

#g-nav.panelactive ul {
    display: block;
}

/*リストのレイアウト設定*/

#g-nav li{
	list-style: none;
    text-align: center; 
}
#g-nav li.sitename img{ max-width:400px;}
/*
#g-nav li.sitename{ color:#FFF; margin-bottom:1em; font-family: "FB Miller Display Roman"; font-size:1.8em; border-bottom:1px solid #FFF;}
*/
#g-nav li a{
	color: #FFF;
	text-decoration: none;
	padding:10px;
	display: block;
	letter-spacing: 0.1em;
	font-family: "FB Miller Display Roman";
	font-size:1.5em;
}
@media (max-width:767.98px){
	#g-nav ul{ top:45%;}
/*
	#g-nav li.sitename{ font-size:1.5em; white-space:nowrap;}
*/

}

/*========= ボタンのためのCSS ===============*/
.openbtn{
	position:fixed;
    z-index: 8888;/*ボタンを最前面に*/
	top:10px;
	right: 10px;
	cursor: pointer;
    width: 50px;
    height:50px;
}
	
/*×に変化*/	
.openbtn span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 14px;
    height: 3px;
    border-radius: 2px;
	background-color: #666;
  	width: 45%;
  }

.openbtn span:nth-of-type(1) {
	top:15px;	
}

.openbtn span:nth-of-type(2) {
	top:23px;
}

.openbtn span:nth-of-type(3) {
	top:31px;
}

.openbtn.active span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 45%;
	background-color: #FFF;
}

.openbtn.active span:nth-of-type(2) {
	opacity: 0;
}

.openbtn.active span:nth-of-type(3){
    top: 30px;
    left: 18px;
    transform: translateY(-6px) rotate(45deg);
    width: 45%;
	background-color: #FFF;
}





/******************************************************************/
/*  */
/******************************************************************/
h2.apiconlist{ margin-top:0.4em; margin-bottom:3em; font-size:1em;}
h2.apiconlist span{ background:url(../images/apicon.gif) left center no-repeat; padding:1em 1em 1em 4em; font-family: "Shuei KakuGo Gin M";}
h2.apiconlist strong{ font-size:1.7em; background-image:repeating-linear-gradient(-45deg,#fae499,#fae499 2px,transparent 2px,transparent 5px); background-size:100% 0.5em; padding:0 1em 0.9em 1em; background-position: 0 center; background-repeat:no-repeat;}
div.heading{ color:#182980; font-family: "FB Miller Display Roman"; text-align:center; font-size:4em; margin-top:0.5em; margin-bottom:0.5em; line-height:1.2;}
div.heading span{ text-decoration:underline;}
div.heading small{ display:block; color:#231815; font-size:0.3em; font-family: "Shuei KakuGo Gin M";}
h1{ line-height:1.7; font-family: "Shuei KakuGo Gin M"; font-size:1.75em;}
div.message{ line-height:2.3; font-size:1.1em; margin-top:2em;}
div.message h2{ color:#C2A100; font-size:1em;}
div.message span{ font-size:1.3em; background: repeating-linear-gradient(-45deg, #fbf0ec, #fbf0ec 5px, #F0E1DC 5px, #F0E1DC 10px); color:#7A4C2C; display:inline-block; margin:0.2em 0; padding:0 0.5em;}
div.coursebox{ position:relative; background:#182980; margin-bottom:1em; padding:1.5em; box-shadow:5px 5px 5px rgba(0,0,0,0.3); color:#FFF;}
div.coursebox div.coursenum{ font-family: "FB Miller Display Roman"; padding:0.4em; line-height:1; font-size:1.7em; position:absolute; left:-1em; top:-1em; display:inline-block; max-width:200px; border-radius:100%; background-image:repeating-linear-gradient(-45deg,#fae499,#fae499 4px,#FFF 4px,#FFF 8px); color:#231815; display:-webkit-box; display:-ms-flexbox; display:flex; -webkit-box-pack:center; -ms-flex-pack:center; justify-content:center; -webkit-box-align:center; -ms-flex-align:center; align-items: center; text-align:center;}
div.coursebox div.coursenum:before{ display:block; content:''; padding-top:100%;}
div.coursebox h3{ font-family: "Shuei KakuGo Gin M"; margin:0.3em 0 1em 0; font-size:1.75em;}
div.coursebox span{ background:#C2A100; color:#FFF; border-radius:10px; margin:0 1em 1em 1em;  display:inline-block;}
div.stepbox{ background:rgba(194,161,0,0.47); border-radius:10px; padding:0 1em 1.2em 1em;}
div.stepbox .h3{ text-align:center; font-family: "Shuei KakuGo Gin M"; margin:0 0 0.5em 0; letter-spacing:0.2em;}
div.stepbox div.num{ font-size:2em; font-family: "Futo Go B101 JIS2004"; color:#1D2080;}
div.kouzamenubox{ border:2px solid #182980; padding:1em; box-shadow:5px 5px 5px rgba(0,0,0,0.3);}
div.kouzamenutitle{ text-align:center; background:#182980; border-radius:10px; font-size:0.9em; padding:4em 0 1em 0; color:#FFF;}
div.kouzamenutitle h3{ font-size:2em; margin-top:1em; font-family: "Shuei KakuGo Gin M"; color:#FFDC00;}
div.kouzamenubox ol{ counter-reset: my-counter; list-style:none; padding:0;}
div.kouzamenubox ol li{ margin-bottom:0.5em; padding-left:30px; position:relative; font-size:1.1em; font-family: "Shuei KakuGo Gin M";}
div.kouzamenubox ol li:before{ content:counter(my-counter); counter-increment:my-counter; display:block; float:left; line-height:19px; margin-top:5px; margin-left:-30px; text-align:center; height:22px; width:22px; border-radius:50%; border:1px solid #000;}
div.kouzamenubox ol li h4{ font-size:1em;}
div.kouzamenubox ol li small{ font-size:0.8em;}
h2.instructor{ font-family: "Reimin Medium"; margin:1em 0; font-size:1.7em;}
h2.instructor small{ font-size:0.6em; margin-left:0.5em;}
div.instructornote{ background:#F3F3F3; margin-top:1em; padding:0.5em 2em 1em 2em; border-radius:10px;}
div.instructornote dl dt{ margin-top:1.5em; margin-bottom:0.7em; font-size:1em;}
div.instructornote dl dt span{ border-bottom:1px solid #000; padding:0.3em 0.5em;}
div.instructornote dl dd{ margin-left:0.8em; font-size:0.9em;}
div.instructornote dl dd ul{ margin:0 0 0 1em; padding:0;}
div.hd_contact{ background:#C2A100; color:#FFF; margin-bottom:0.5em; padding:0.2em; font-size:1.7em;}
div.phone{ font-family: "FB Miller Display Roman"; font-size:3em;}
div.mail{ font-family: "FB Miller Display Roman"; font-size:2em;}
div.phone a,div.mail a{ color:#000; text-decoration:none;}

@media (max-width:767.98px){
	div.message{ text-align:left!important; font-size:1em; line-height:1.7;}
	div.message span{ font-size:1.2em; margin:0.4em 0; padding:0.2em 0.5em;}
	div.message h2{ margin-top:0.2em; margin-bottom:0; line-height:1.6;}
	h2.apiconlist{ line-height:1; margin-bottom:2em;}
	h2.apiconlist span{ background-size:25px; padding:1em 0 1em 1.5em;}
	h2.apiconlist strong{ font-size:1.1em;}
	div.heading{ font-size:3em;}
	h1{ font-size:1.47em;}
	div.coursebox{ width:95%; margin:0 0 1em 5%;}
	div.coursebox h3{ margin-top:0.5em; font-size:1.47em;}
	div.coursebox div.coursenum{ font-size:1.3em;}
	div.coursebox span{ display:block; max-width:250px; margin-left:auto; margin-right:auto;}
	div.coursebox img{ margin-bottom:1em;}
	div.kouzamenutitle{ padding:1em 0;}
	div.kouzamenutitle h3{ font-size:1.65em;}
	div.kouzamenubox ol{ margin-top:1em;}
	div.kouzamenubox ol li h4{ line-height:1.7; margin-bottom:0;}
	div.stepbox{ padding:0.5em 1em 1em 1em;}
	div.stepbox .h3{ font-size:1.2em;}
	div.stepbox div.num{ font-size:1.5em;}
	div.instructorphoto{ text-align:center;}
	div.instructorphoto img{ width:60%;}
	h2.instructor{ text-align:center;}
	div.instructornote{ margin-top:2em; padding:0.5em 1em 1em 1em;}
}




/******************************************************************/
/* FOOTER */
/******************************************************************/
/*
footer{ margin-top:5em; padding:2em 0; color:#FFF; background:#7A4C2C; text-align:center;}
*/
footer{ margin-top:5em; padding:2em 0; border-top:1px solid #CCC; text-align:center;}
footer a{ color:#000; text-decoration:none;}
footer img{ max-width:400px;}
footer h2{ font-family: "FB Miller Display Roman"; font-size:2em; margin-bottom:1em; color:#182980;}
.copyright{ font-size:0.7em; margin-top:2em; color:#AAA;}
#pagetopbox{ display:none; position:fixed; bottom:130px; right:10px; z-index:3333;}
#pagetopbox a{ display:block;}
#pagetopbox a i{ font-size:2.5em; color:#C2A100; line-height:1;}
/*
div.btn_contact{ position:fixed; right:0; bottom:0; width:130px; height:130px; background:#CCAB9F;}
*/
div.btn_contact{ position:fixed; right:0; bottom:0; border:solid #182980; border-width:110px 110px 0 0; border-top-left-radius:110px; z-index:3333;}
div.btn_contact a{ position: absolute; -webkit-transform :translate(5%,-120%); transform:translate(5%,-120%); width:110px; text-align:center; text-decoration:none; color:#FFF;}
@media (max-width: 992px){
	footer{}
	footer h2{ font-size:1.7em;}
}
