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

*{
	margin: 0;
	padding: 0;
}
body {
	background: #ffffff;
	font-size: 9pt;
	color: #555555;
	/*font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";*/
	
	font-family:"ヒラギノ角ゴ Pro W3",メイリオ,Osaka,Arial,Verdana,"ＭＳ Ｐゴシック",sans-serif;
	line-height: 1.7em;
	position:relative;
	-webkit-touch-callout:none;
	-webkit-user-select:none;
	user-select:none;
	-moz-user-select:none;
	-khtml-user-select:none;
	-webkit-user-drag:none;
	-khtml-user-drag:none;
	
}
li {
	list-style-type: none;
}
li img {
	display: block;
}
a img {
	border-style: none;
}
/*Mobile上消す-------------------------*/
.gnavi{
	display:none;
}
.pc_only{
	display:none;
}
.adjust_link{
	display:block;
	margin-top:-15vh;
	padding-top:15vh;
}
/*TOGGLE MENU----------------------*/
.globalMenuSp {
	position: fixed;
	z-index: 4;
	top: 0;
	left: 0;
	background: #fff;
	color: #000;
	text-align: center;
	transform: translateY(-100%);
	transition: all 0.6s;
	width: 100%;
}
.globalMenuSp ul {
	background: #fff;
	margin: 0 auto;
	padding: 0;
	width: 100%;
}
.globalMenuSp ul li {
	font-size: 1.1em;
	list-style-type: none;
	padding: 0;
	width: 100%;
	border-bottom: 1px dotted #000030;
}
/* 最後はラインを描かない */
.globalMenuSp ul li:last-child {
	/*padding-bottom: 0;
	border-bottom: none;*/
}
.globalMenuSp ul li a {
	display: block;
	color: #000;
	padding: 1em 0;
	text-decoration: none;
	font-weight:bold;
}
/* このクラスを、jQueryで付与・削除する */
.globalMenuSp.active {
	transform: translateY(0%);
}
.navToggle {
	display: block;
	position: fixed;    /* bodyに対しての絶対位置指定 */
	right: 13px;
	top:1vh;
	width: 42px;
	height: 51px;
	cursor: pointer;
	z-index: 5;
	background: #043c78;
	text-align: center;
	border:solid #fff;
}
.navToggle span {
	display: block;
	position: absolute;    /* .navToggleに対して */
	width: 30px;
	border-bottom: solid 3px #eee;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
	left: 6px;
}
.navToggle span:nth-child(1) {
	top: 9px;
}
.navToggle span:nth-child(2) {
	top: 18px;
}
.navToggle span:nth-child(3) {
	top: 27px;
}
.navToggle span:nth-child(4) {
	border: none;
	color: #eee;
	font-size: 9px;
	font-weight: bold;
	top: 34px;
}
/* 最初のspanをマイナス45度に */
.navToggle.active span:nth-child(1) {
	top: 18px;
	left: 6px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
/* 2番目と3番目のspanを45度に */
.navToggle.active span:nth-child(2),
.navToggle.active span:nth-child(3) {
	top: 18px;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);
}
/*TOPページ-------------------------*/
#header{
	/*max-width:100%;*/
	width:100vw;
	height:11vh;
	margin-left:auto;
	margin-right:auto;
}

.logo img{
	width:auto;
	height:6vh;
	margin-left:4vh;
	margin-top:2vh;
}
#contents{
	width: 100vw;
	height: auto;
}
#contentPic{
	display:none;
}
.top_photo{
	/*max-width:100vw;*/
	width:100vw;
	height:auto;
	margin-top:1vh;
	margin-bottom:2vh;
}
#contents_mobile{
	max-width:100%;
}
#contents_mobile h2{
	background-color:#043c78;
	text-align:center;
	color:#fff;
	padding-top:1vh;
	padding-bottom:1vh;
	position:relative;
}
#contents_mobile h2 a{
	text-decoration: none;
	color:#fff;
}
#contents_mobile dl a{
	text-decoration: none;
	color:#333333;
}
#contents_mobile dl{
	font-size:10pt;
}
#contents_mobile dt{
	float:left;
}
#contents_mobile dt,#contents_mobile dd{
	padding:1vh 2vh 1vh 2vh;
	border-bottom:dotted #043c78;
}
#footer{
	width:100%;
	text-align:center;
	margin-top:5vh;
	position:fixed;
	bottom:0;
	background-color: #fff;
}

/*2ページ以降----------------------*/
#second_header{
	width:100vh;
	height:12vh;
	top:0;
	margin-left:auto;
	margin-right:auto;
	position:fixed;
	background-color:#fff;
	z-index:99;
}
#second_contents{
	width:100vw;
	height:auto;
	overflow:hidden;
	margin-right:auto;
	margin-left:auto;
	margin-top:12vh;
	font-size:8pt;
	padding-bottom:3vh;
}
#second_footer{
	width:100vw;
	position:fixed;
	bottom:0;
	text-align:center;
	margin-top:3vh;
	background-color:#ffff;
}
/*PROFILE----------------------*/
.prof_left{
	max-width:100%;
	margin-top:1vh;
	margin-left:3vh;
	margin-right:3vh;
	text-align: center;
}
.prof_photo img{
	width:35%;
	margin-top:1vh;
}
.prof_fb img {
	width:10%;
	margin-top:1vh;
	margin-right:1vh;
	margin-left:1vh
}

.prof_right{
	max-width:100%;
	margin-top:1vh;
	margin-left:3vh;
	margin-right:3vh;
	/*text-align:center;*/
}
.prof_detail{
	margin-bottom:2vh;
}
.prof_detail h2{
	font-size:9pt;
}

.table_title{
	vertical-align: top;
}

/*Gallery----------------------*/
ul.work{
	max-width:100vw;
}
ul.work li{
	margin-bottom:2vh;
}
ul.work li img{
	display:block;
	margin:auto;
}
ul.work li p{
 	text-align:center;
 	font-weight:bold;
	margin-top:0.5vh;
}
ul.work li span{
 	margin-left:2vh;
 	color:#e2041b;
}
/*KOYA_xx CSS--------------------------*/
.koya_title{
	max-width:100vw;
	text-align: center;
}
.koya_title h1{
  	font-size:12pt;
}
#gallery{
    margin: 0 auto;
	margin:auto;
    overflow: hidden;
}
#gallery li {
	/*max-widt:100vw;*/
	padding:0.5vh;
	margin-top:1vh;
	text-align:center;
}
#gallery li img {
	/*max-width:100vw;*/
	width:100%;
    height: auto;
}

/*NEWS CSS--------------------------*/
.news{
	max-width:100%;
	margin-top:1vh;
	margin-left:3vh;
	margin-right:3vh;
}
.news li{
	padding: 1.1em 1em;
	margin: 2em 0;
	background-color:#ffffff;/*背景色*/
	border: solid 1px #043c78;
	color:#333333;/*文字色*/
	border-radius: 10px;
}
.news span{
	font-weight:bold;
}
.news p{
	margin-top:1vh;
}
.news table{
	margin-top:1vh;
	margin-bottom:1vh;
	border-collapse: collapse;
}
.news table tr, .news table td{
	border:solid 1px #333333;
	padding:0.2em 0.8em;
}
.table_title{
	vertical-align: top;
	width:13vw;
}
.news hr{
	margin-top:1vh;
	border-top: 1px dotted #043c78;
	border-bottom: 1px dotted #043c78;
}
.news img{
	margin-top:2vh;
}
/*SCHOOL CSS--------------------------*/

.school_left{
	max-width:100%;
	margin-top:1vh;
	margin-left:3vh;
	margin-right:3vh;
	text-align: center;
}
.school_photo img{
	width:80%;
	margin-top:1vh;
}
.school_right{
	max-width:100%;
	margin-top:1vh;
	margin-left:3vh;
	margin-right:3vh;
}
.school_right p{
	margin-top:0.5vh;
	margin-bottom:0.5vh;
}
.school_right h2{
	font-size:9pt;
}
.school_comments{
	margin-top:2vh;
}
.school_price{
	margin-top:2vh;
}
.school_history{
	margin-top:2vh;
}

.school_price table{
	margin-top:1vh;
	margin-bottom:2vh;
	border-collapse: collapse;
}
/*.school_price table tr, .schoo_price td{
	border:solid 1px #333333;
	padding:0.2em 0.8em;
}*/
.price_title{
	vertical-align: top;
	width:12vw;
}

/*CONTACT CSS--------------------------*/

.contact{
	max-width:100vw;
	margin-top:1vh;
	margin-left:3vh;
	margin-right:3vh;
}

#form{
	margin-top:3vh;
}
.contact p{
	margin-bottom:2vh;
} 
.contact dl{
	margin:1vh 1vh 2vh 1vh;
}
.contact dd input{
	height:1.7em;
	line-height:1.7em;
}
#form input,textarea{
	max-width:90%;
}
.cp_btn {
display: block;
max-width:100%;
padding: 0.2em;
text-align: center;
text-decoration: none;
color: #043c78;
border: 2px solid #043c78;
border-radius: 3px;
transition: .4s;
}
.cp_btn:hover {
background: #043c78;
color: #fff;
}


/*Conf tmpl*/
#template{
	max-width:100vw;
	margin-top:5vh;
	margin-left:3vh;
	margin-right:3vh;
}

.title{
	line-height:1.7em;
	margin-bottom:3vh;
	background-color:#043c78;
	color:#ffffff;
}

.tmpl_comment p{
	margin-bottom:3vh;
}
.tmpl_detail{
	background-color:#f5f5f5;
	margin-bottom:3vh;
}
.tmpl_detail table{
	font-size:11pt;
	border-collapse: collapse;
}
.tmpl_detail th{
	width:13vh;
	padding:1vh;
	text-align:left;
	vertical-align:top;
}
.tmpl_detail td{
	padding:1vh;
	text-align:left;
	vertical-align:top;
}

.tmpl_button{
	max-width:100vw;
	text-align:center;
}

.tmpl_button ul li{
	display:inline-block;
}
.tmpl_cp_btn{
	display: block;
	max-width:100vw;
	padding: 0.2em;
	text-align: center;
	text-decoration: none;
	color: #043c78;
	border: 2px solid #043c78;
	border-radius: 3px;
	transition: .4s;
}
	
.tmpl_cp_btn:hover {
	background: #043c78;
	color: #ffffff;
}

.tmpl_top_btn{
	display: block;
	max-width:100vw;
	padding: 0.2em;
	text-align: center;
	text-decoration: none;
	color: #043c78;
	border: 2px solid #043c78;
	border-radius: 3px;
	transition: .4s;
}
	
.tmpl_top_btn:hover {
	background: #043c78;
	color: #ffffff;
}

/*POLICY CSS--------------------------*/

.policy_title{
	max-width:100vw;
	margin-top:1vh;
	margin-left:3vh;
	margin-right:3vh;
	margin-bottom:1vh;
	text-align: center;
}
.policy_title h2{
	font-size:10pt;
}
.policy{
	max-width:100vw;
	margin-top:1vh;
	margin-left:3vh;
	margin-right:3vh;
	margin-bottom:3vh;
}
.policy span{
	font-weight:bold;
}
.policy p{
	margin-bottom:1vh;
}
.policy li{
	margin-bottom:1vh;
}




