@charset "utf-8";
/* CSS Document */
* {
	padding: 0;
	margin: 0;
	}
body {
	background: #ffffff;
	font-size: 8pt;
	color: #333333;
	font-family: kozuka-gothic-pr6n, sans-serif;
	font-style: normal;
	font-weight: 200;
}
li {
	list-style-type: none;
}
li img {
	display: block;
}
a img {
	border-style: none;
}
/*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: #86b81b;
    text-align: center;
}
.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);
}
/*Mobile上消す-------------------------*/
.logo{
	display:none;
}
.gnavi{
	display:none;
}
/*TOP PAGE-------------------------*/
#header{
	max-width:100%;
	height:1vh;
	margin-left:auto;
	margin-right:auto;
}
#contents{
	position:relative;
	width:auto;
	height:450px;
	overflow:hidden;
}
.top_photo{
	position:absolute;
	left:-10%;
	z-index:1;
}
.mobile_logo{
	position:absolute;
	z-index:2;
	left:0;
	right:0;
	bottom:25%;
	margin:auto;
}
@media screen and (max-width: 320px){
	#contents p{
	position:absolute;
	width:100%;
	z-index:3;
	top: 25%;
  	left: 50%;
  	-webkit-transform : translate(-50%,-50%);
  	transform : translate(-50%,-50%);
	text-align:center;
	color:rgb(0,0,0,0);
	font-size:1.5em;
	-webkit-text-stroke: 1px #fff;
	line-height:1.5em;
}
}
@media screen and (min-width:321px){
	#contents p{
	position:absolute;
	width:100%;
	z-index:3;
	top: 25%;
  	left: 50%;
  	-webkit-transform : translate(-50%,-50%);
  	transform : translate(-50%,-50%);
	text-align:center;
	color:rgb(0,0,0,0);
	font-size:2em;
	-webkit-text-stroke: 1px #fff;
	line-height:1.5em;
}
}
#contents_mobile{
	max-width:100%;
	margin-top:1vh;
	margin-left:auto;
	margin-right:auto;
	line-height:1.5;
	text-align:center;
	background-color:#000030;
}
#contents_mobile a{
	color:white;
}
.arrow {
	position: relative;
	display: inline-block;
	padding-left: 20px;
	font-size:14pt;
	color:#fff;
}
.arrow:before {
	content: '';
	width: 6px;
	height: 6px;
	border: 0;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -4px;
	transform: rotate(45deg);
}
#footer{
	width:100%;
	text-align:center;
	margin-top:5vh;
	position:absolute;
	bottom:0;
}
/*2ページ以降----------------------*/
#second_header{
	width:100%;
	height:10vh;
	top:0;
	margin-left:auto;
	margin-right:auto;
	position:fixed;
	background-color:#fff;
	z-index:99;
}
#second_contents{
	width:100%;
	/*height:auto;*/
	height:100%;
	overflow:hidden;
	margin-right:auto;
	margin-left:auto;
	margin-top:10vh;
	font-size:8pt;
	padding-bottom:3vh;
}
.second_logo{
	height:51px;
	margin-top:1vh;
	margin-left:13px;
}
#second_footer{
	width:100%;
	/*position:absolute;*/
	position:fixed;
	bottom:0;
	text-align:center;
	margin-top:3vh;
}
/*PROFILE----------------------*/
.prof_photo{
	text-align:center;
}
.prof_photo img{
	width:35%;
	margin-top:1vh;
}
.pc_only{
	display:none;
}
.fb img {
	width:10%;
}
.syuzai{
	margin-top:1vh;
}
.prof_comment{
	max-width:100%;
	margin-top:5%;
	margin-left:2%;
	margin-right:2%;
	text-align:center;
}
.com-1 span{
	font-weight:bold;
	font-size:10pt;
}
.com-2{
	margin-top:3%;
}
.com-2 b{
	font-weight:bold;
}
.com-3{
	margin-top:10%;
}
.com-3 b{
	font-weight:bold;
}
/*NEWS-------------------------*/
.news_content{
	width:100%;
	margin-top:1vh;
}
.news_title{
	margin-left:auto;
	margin-right:auto;
	text-align:center;
	background-color:aliceblue;
}
.news_detail p{
	margin-top:1vh;
	margin-bottom:2vh;
	text-align:center;
}
.news_detail {
	margin:0 auto;
	margin-left:5%;
	margin-right:5%;
}
.update_title{
	font-weight:bold;
}
.detail_photos li{
	margin-bottom:3%;
}
.detail_photos li img{
	margin-right:auto;
	margin-left:auto;
}
/*GUIDE------------------------*/
.guide_content{
	width:100%;
}
.guide_title{
	background-color:aliceblue;
	text-align:center;
}
.guide_content table{
	margin-top:1vh;
	margin-left:5%;
	margin-right:5%;
}
.guide_addition{
	/*width:100%;*/
	max-width:100%;
	margin-top:1vh;
	margin-left:5%;
	margin-right:5%;
	text-align:center;
}
.guide_staff{
	width:100%;
	margin-top:3vh;
	text-align:center;
}
.staff_flex{
	text-align:center;
}
.staff_flex img{
	margin-left:auto;
	margin-right:auto;
}
.staff{
	margin-top:1vh;
}
.staff li{
	margin-bottom:2.5vh;
}
.staff img{
	margin-bottom:0.5vh;
}
.staff span{
	font-weight:bold;
}
.staff_more{
	display:none;
}

.hidden_box {
    margin: 0.5em 0;/*前後の余白*/
    padding: 0;
}

/*ボタン装飾*/
.hidden_box label {
    padding: 1px;
    /*font-weight: bold;*/
    /*border: solid 2px black;*/
    cursor :pointer;
}

/*ボタンホバー時*/
.hidden_box label:hover {
    /*background: #efefef;*/
	background:#fff;
}
/*チェックは見えなくする*/
.hidden_box input {
    display: none;
}
/*中身を非表示にしておく*/
.hidden_box .hidden_show {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 0.8s;
}
/*クリックで中身表示*/
.hidden_box input:checked ~ .hidden_show {
    padding: 0.4vh 0;
    height: auto;
    opacity: 1;
}

.guide_end_plan{
	width:100%;
	margin-top:3vh;
}
.end_plan{
	max-width:100%;
	margin-top:1vh;
	margin-left:5%;
	margin-right:5%;
	
}
.end_plan span{
	font-weight:bold;
}
.end_plan li{
	margin-bottom:0.5vh;
}
/*PLAN-------------------------*/
.plan_outline{
	width:100%;
}
.out_detail{
	margin-top:1vh;
	margin-left:5%;
	margin-right:5%;
	text-align:center;
}
.plan_outline span{
	font-weight:bold;
}
.attention{
	display:none;
}
.dashed{
	margin-top:20px;
	border:1px dashed #000030;
}
.ov_title{
	font-weight:bold;
	font-size:11pt;
}
.pickup{
	color:#86b81b;
}
.ov_comment{
	display:none;
}
.out_kikaku{
	margin-top:2vh;
	margin-left:5%;
	margin-right:5%;
	margin-bottom:5vh;
}
.out_kikaku span{
	font-weight:bold;
	font-size:11pt;
	display:inline-block;
	width:100%;
	text-align:center;
	color:#86b81b;
}
.year{
	font-weight:bold;
	font-size:11pt;
	display:inline-block;
	width:100%;
	text-align:center;
}
.out_kikaku ul{
	padding:0;
}
.out_kikaku ul li {
	color: #2d8fdd;
	background-color:whitesmoke;
	margin-bottom: 3px;
	line-height: 1.5;
	padding: 0.5em;
	list-style-type: none!important;
}
.arrow2 {
	position: relative;
	display: inline-block;
	padding-left: 20px;
	font-size:11pt;
	color:#000030;
}
.arrow2:before {
	content: '';
	width: 6px;
	height: 6px;
	border: 0;
	border-top: solid 2px #000030;
	border-right: solid 2px #000030;
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -4px;
	transform: rotate(45deg);
}
.package{
	margin-top:3vh;
	max-width:100%;
	text-align:center;
	margin-left:5%;
	margin-right:5%;
}
.midashi{
	font-weight:bold;
}
.plan_flex{
	margin-top:1vh;
	display:block;
	text-align:center;
}
.plan_flex img{
	margin-left:auto;
	margin-right:auto;
	margin-bottom:1vh;
}
.plan_flex table{
	box-sizing: border-box;
	border-collapse:collapse;
	margin-left:auto;
	margin-right:auto;
}
.plan_flex table td{
	padding: 0.1em 0.5em;
	text-align:left;
	vertical-align:top;
}
.go_to_detail{
	/*font-weight:bold;*/
	margin-top:0.5vh;
	color:red;
}
/*PLAN DETAIL--------------------*/
.plan_content{
	width:100%;
}
.plan_title{
	margin-top:1vh;
	margin-left:5%;
	margin-right:5%;
	text-align:center;
}
.plan_top{
	margin-top:1vh;
	margin-left:5%;
	margin-right:5%;
	text-align:center;
}
.plan_left{
	margin-top:1vh;
	margin-left:5%;
	margin-right:5%;
	text-align:center;
}
.plan_left p{
	margin-bottom:1vh;
}
.plan_left font{
	font-weight:bold;
}
.mobile_flex{
	margin-bottom:0.5vh;
	display:flex;
	justify-content: center;
}
.mobile_flex li{
	margin-right:1vh;
}
.plan_left table{
	box-sizing: border-box;
	border-collapse:collapse;
	margin: 0 auto;
	/*text-align: center;*/
	width: 100%;
}
.td_title{
	background-color: aliceblue;
}
.plan_left table td{
	border: 1px solid #333333;
	padding: 0.1em 0.5em;
	text-align:left;
}

.plan_right{
	margin-top:1vh;
	margin-left:5%;
	margin-right:5%;
	text-align:center;
}
.plan_right img{
	display:none;
}
.plan_right p{
	/*margin-top:1vh;*/
	display:none;
}
.btn-flat-logo {
	margin-top:2vh;
	position: relative;
	display: inline-block;
	font-weight: bold;
	padding:0.5em 1em;
	text-decoration: none;
	color: #fff;
	background: #000030;
	transition: .4s;
}
.plan_footer{
	margin-top:2vh;
	margin-left:5%;
	margin-right:5%;
	font-size:7pt;
	text-align:center;
}
.plan_footer span{
	font-weight:bold;
}
.go_back{
	display:none;
}
/*ALBUM--------------------*/
.album_content{
	width:100%;
	margin-bottom:2vh;
}
.album_title{
	margin-left:auto;
	margin-right:auto;
	text-align:center;
	background-color:aliceblue;
}
.album_annai{
	margin-top:1vh;
	text-align:center;
}
.up_later{
	text-align:center;
	margin-top:1vh;
}
.album_content ul{
	text-align:center;
}
.album_content ul li{
	display:inline-block;
}
.album_content ul li img{
	margin-top:2vh;
}
/*ALBUM DETAIL---------------*/
.album_goback{
	display:none;
}
#gallery{
    margin: 0 auto;
    overflow: hidden;
	margin-top:1vh;
}
#gallery li {
	max-width:100%;
	padding:1%;
	margin-top:5%;
	margin-right:1%;
	margin-bottom:1%;
	text-align:center;
}
#gallery li img {
    max-width: 100%;
    height: auto;
}
/*LINK DETAIL----------------*/
.link_content{
	width:100%;
	margin-bottom:2vh;
	margin-top:5vh;
}
.link_content ul{
	margin-left:10%;
	margin-right:10%;
	margin-bottom:2vh;
}


/*POLICY----------------------*/
.policy_content{
	width:100%;
	margin-top:1vh;
}
.policy_title{
	margin-left:auto;
	margin-right:auto;
	text-align:center;
	background-color:aliceblue;
}
.policy_details{
	margin-left:5%;
	margin-right:5%;
	margin-bottom:2vh;
	margin-top:1vh;
}
.policy_details span{
	font-weight:bold;
}

/*CONTACT DETAIL-------------*/
.contact_content{
	width:100%;
	margin-bottom:2vh;
	margin-top:5vh;
	text-align:center;
}
.contact_content p{
	margin-left:5%;
	margin-right:5%;
	margin-bottom:2vh;
}
.contact_address{
	width:100%;
	margin-bottom:5vh;
	margin-top:2vh;
	text-align:center;
}
.contact_address p{
	margin-top:2vh;
}
.apply{
	width:100%;
	text-align:center;
	margin-bottom:10vh;
}
.apply p{
	margin-left:5%;
	margin-right:5%;
}
/*APPLY DETAIL---------------*/
.apply_content{
	width:100%;
	margin-top:1vh;
}
.apply_title{
	margin-left:auto;
	margin-right:auto;
	text-align:center;
	background-color:aliceblue;
}
.apply_content p{
	margin-top:1vh;
	margin-bottom:2vh;
	text-align:center;
}
#form{
	margin:0 auto;
	margin-left:5%;
	margin-right:5%;
}
#form dl{
	padding-bottom:2vh;
}
#form dd{
	font-weight:bold;
	font-size:9pt;
}
.flag{
	font-size:8pt;
}
#form span{
	color:#C0C0C0;
}
#form dt{
	font-size:9pt;
}
#form select{
	width:100%;
	border:1px solid #d3d3d3;
	padding:0.5em 0;
	font-size:9pt;
}
#form input[type="text"] {
  	width:100%;
	padding:0.5em 0;
	font-size:9pt;
	border:1px solid #d3d3d3;
  	-moz-box-sizing: border-box;
  	-webkit-box-sizing: border-box;
  	box-sizing: border-box;
}
#form input[type="radio"]{
	width:10%;	
}
#form textarea{
	width:100%;
	border:1px solid #D3D3D3;
	vertical-align:top;
	height:5em;
}
.contact_button{
	text-align:center;
}
.cp_button {
	margin-top:1vh;
	position: relative;
	display: inline-block;
	font-weight: bold;
	padding:0.5em 1em;
	text-decoration: none;
	color: #fff;
	background: #000030;
	transition: .4s;
}
