@charset "utf-8";
html,body{width:100%;height:100%;}
html{
font-size: 62.5%;
}

body{
font-size: 2rem;
line-height:2em;
font-family: "Montserrat","游ゴシック",YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;
margin:0;
color:#313131;
}
img{
outline:none;
border-style:none;
vertical-align:bottom;
max-width:100%;
}

a{
    color:#000;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    transition: all 0.5s;
text-decoration:none;
}
a:visited{
    color:#000;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    transition: all 0.5s;
}
a:hover {
    color: #F5A862;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    transition: all 0.5s;
}

.header{}
.logo{text-align:center;padding:2em 0;}

.gnav{
margin: 0 0 1em 0;
padding:1em 10%;
display:block;
text-align:center;
background:rgba(255,255,255,1);
box-shadow: 0 0 5px #333;
}

.gnav ul{text-align:center;
display:inline-block;
}

.gnav ul li{line-height:1.2em;display:inline-block;padding:0 2em;}
.gnav ul li span{display:block;font-size:0.8em;}

.gnav02{
margin: 0 0 1em 0;
padding:1em;
display:block;
text-align:right;
background:rgba(255,255,255,1);
}

.gnav02 ul{text-align:left;
display:inline-block;
}

.gnav02 ul li{line-height:1.2em;display:block;padding: 0.5em 0;}
.gnav02 ul li span{display:block;font-size:0.8em;}


.copyright{padding:0.5em;background:#000;color:#fff;text-align:center;font-size:0.8em;}

.minchou{color:#2E0201;font-family: 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', '游明朝','Yu Mincho', '游明朝体', 'YuMincho','ＭＳ Ｐ明朝', 'MS PMincho', serif;
}

.page_title{
vertical-align:middle;
text-align:center;padding:3em 0;}
.page_title span{
font-weight:900;
font-size:1.2em;background:#fff;
display:inline-block;
padding:0.5em;
}

.top_image{
padding: 0 10%;
margin-bottom:5em;
}

.home_cost{padding:1em 10%;}

.home_out{
padding: 1em 10% 5em 10%;
margin-bottom:3em;
overflow:hidden;
}
.home_l,
.home_r{padding-left:5%;}
.home_r{padding-top:2em;}

.home_title{padding: 1em 5% 1em 5%;font-size:1.2em;font-weight:900;border:1px solid #999;margin-bottom:2em;}
.home_title span{display:inline-block;padding-left:1em;}

.page_out{padding:0 10%;}
table.form_table{}
table.form_table th{padding:1em;font-weight:900;line-height:1.2em;vertical-align:top;width:10em;border-bottom:1px dotted #ccc;}
table.form_table td{border-bottom:1px dotted #ccc;padding:1em;vertical-align:top;}
table.form_table span{color:brown;}
table.form_table th span{display:block;padding:0;}

#formbox{	background-color: #fff;
	color: #333;
	width: 85%;
	border: 1px solid #ddd;
	font-size: 100%;
	padding: 0.5em;
	border-radius: 4px;
	box-shadow: 1px 1px 3px rgba(0,0,0,.1) inset;
	margin-bottom:0.5em;
}

ul.form01{padding:0;margin:0;}
ul.form01 li{padding:0 1% 0 0;margin:0;width:49%;display:inline-block;vertical-align:top;}
ul.form01 li dl{padding:0;margin:0;}
ul.form01 li dl span{display:block;}
ul.form01 dt{text-align:right;line-height:1em;vertical-align:top;font-weight:900;display:inline-block;padding: 0;margin:0;float:left;width:7em;}
ul.form01 dd{vertical-align:top;padding:0;margin:0 0 0 8em;}

dl.form02{padding:0;margin:0;}
dl.form02 span{display:block;}
dl.form02 dt{text-align:right;line-height:1em;vertical-align:top;font-weight:900;display:inline-block;padding: 0;margin:0;float:left;width:7em;}
dl.form02 dd{vertical-align:top;padding:0;margin:0 0 0 8em;}

ul.fomr06{padding:0;margin:0;}
ul.fomr06 li{padding:0;margin:0;width:16%;display:inline-block;vertical-align:top;}
ul.fomr06 li dl dt{text-align:right;padding:0;margin:0;font-weight:900;width:4em;float:left;}
ul.fomr06 li dl dt span{display:block;line-height:1em;}
ul.fomr06 li dl dd{padding:0;margin:0 0 0 4.5em;}

ul.form04{padding: 1em 0;margin:0;}
ul.form04 li{display:inline-block;width:18%;vertical-align:top;text-align:center;font-weight:900;}
ul.form04 li:first-child,
ul.form04 li:last-child{width:40%;}
ul.form04 li dl{text-align:left;}
ul.form04 li dl dt span{line-height:1em;display:block;}
ul.form04 li dl dt{text-align:right;width:2.5em;font-weight:900;float:left;padding:0;margin:0;}
ul.form04 li dl dd{margin:0 0 0 4em;padding:0;}

table.guide_table{padding:0;margin:0 0 2em 0;width:100%;}
table.guide_table th{text-align:center;padding:0.5em;margin:0;border-bottom:3px solid #999;}
table.guide_table td{padding:0.5em;margin:0;border:1px solid #999;}
table.guide_table td:nth-of-type(1),
table.guide_table td:nth-of-type(3){background:#eee;}
table.guide_table td:nth-of-type(3),
table.guide_table td:nth-of-type(4){text-align:center;}
table.guide_table td:nth-of-type(3){width:5em;}
table.guide_table td img{width:1.5em;padding: 0 0.5em;vertical-align:middle;}
table.guide_table span{display:inline-block;padding: 0 0.5em;}
table.guide_table .course01 span{display:inline-block;padding: 0;}

.guide_out{margin:0 10%;}

ul.guide_icon_list{padding:0;margin:0;text-align:center;}
ul.guide_icon_list li{width:18%;padding:0.5%;margin:0;display:inline-block;vertical-align:middle;}
ul.guide_icon_list li span{display:inline-block;padding:0 1em;}
ul.guide_icon_list img{width:1.6em;padding-right:0.5em;vertical-align:middle;}

.guide_title{padding:3em 0 1em 0;font-size:1.4em;font-weight:900;text-align:center;}
.guide_title span{display:block;}

.guide_messa{text-align:center;}
.guide_messa_inner{font-weight:900;font-size:1.2em;margin: 0 0 2em 0;padding:1em;border:5px solid #ccc;display:inline-block;}

.button{text-decoration: underline}

.open {position:absolute;top:0;right:0;
	cursor:pointer; /* マウスオーバーでカーソルの形状を変えることで、クリックできる要素だとわかりやすいように */
display:none;
}
#pop-up {
	display: none; /* label でコントロールするので input は非表示に */
}
.overlay {
	display: none; /* input にチェックが入るまでは非表示に */
}
#pop-up:checked + .overlay {
	display: block;
	z-index: 9999;
	background-color: #00000070;
	position: fixed;
	width: 100%;
	height: 100vh;
	top: 0;
	left: 0;
}
.window {
	width: 90vw;
	max-width: 380px;
	height: 340px;
	background-color: #ffffff;
	border-radius: 6px;
	display: flex;
	justify-content: center;
	align-items: center;
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.text {
	font-size: 18px;
	margin: 0;
}
.close {
	cursor:pointer;
	position: absolute;
	top: 4px;
	right: 4px;
	font-size: 20px;
}


.scroll_text{display:none;}

/* ■■■ ＴＯＰスライダー ■■■ */

.top_slider{
}
.photo-show{
height:500px;
width:1000px;
overflow:hidden;
position: relative;
z-index:-50;
margin:0 auto;
}


.photo-show img { 
    animation: show 36s infinite;
    -webkit-animation: show 36s infinite;
    opacity: 0;
    position: absolute; /*画像を全て重ねる*/
width:100%;
left: 50%;
   height:auto;
    top: 50%;
    transform: translate(-50%, -50%);
    object-fit: cover;
}

/*アニメーション*/

@keyframes show {
    0% { opacity: 0 }
   10% { opacity: 1 }
  25% { opacity: 1 }
  30% { opacity: 0 }
 100% { opacity: 0 }
 }

@-webkit-keyframes show {
    0% { opacity: 0 }
   10% { opacity: 1 }
  25% { opacity: 1 }
  30% { opacity: 0 }
 100% { opacity: 0 }
}
@keyframes show02 {
    0% { opacity: 0 }
   10% { opacity: 1 }
  25% { opacity: 1 }
  30% { opacity: 0 }
 100% { opacity: 0 }
 }

@-webkit-keyframes show02 {
    0% { opacity: 0 }
   10% { opacity: 1 }
  25% { opacity: 1 }
  30% { opacity: 0 }
 100% { opacity: 0 }
}
@keyframes show03 {
    0% { opacity: 0 }
   10% { opacity: 1 }
  25% { opacity: 1 }
  30% { opacity: 0 }
 100% { opacity: 0 }
 }

@-webkit-keyframes show03 {
    0% { opacity: 0 }
   10% { opacity: 1 }
  25% { opacity: 1 }
  30% { opacity: 0 }
 100% { opacity: 0 }
}
@keyframes show04 {
    0% { opacity: 0 }
   10% { opacity: 1 }
  25% { opacity: 1 }
  30% { opacity: 0 }
 100% { opacity: 0 }
 }

@-webkit-keyframes show04 {
    0% { opacity: 0 }
   10% { opacity: 1 }
  25% { opacity: 1 }
  30% { opacity: 0 }
 100% { opacity: 0 }
}
@keyframes show05 {
    0% { opacity: 0 }
   10% { opacity: 1 }
  25% { opacity: 1 }
  30% { opacity: 0 }
 100% { opacity: 0 }
 }

@-webkit-keyframes show05 {
    0% { opacity: 0 }
   10% { opacity: 1 }
  25% { opacity: 1 }
  30% { opacity: 0 }
 100% { opacity: 0 }
}
@keyframes show06 {
    0% { opacity: 0 }
   10% { opacity: 1 }
  25% { opacity: 1 }
  30% { opacity: 0 }
 100% { opacity: 0 }
 }

@-webkit-keyframes show06 {
    0% { opacity: 0 }
   10% { opacity: 1 }
  25% { opacity: 1 }
  30% { opacity: 0 }
 100% { opacity: 0 }
}
@keyframes show07 {
    0% { opacity: 0 }
   10% { opacity: 1 }
  25% { opacity: 1 }
  30% { opacity: 0 }
 100% { opacity: 0 }
 }

@-webkit-keyframes show07 {
    0% { opacity: 0 }
   10% { opacity: 1 }
  25% { opacity: 1 }
  30% { opacity: 0 }
 100% { opacity: 0 }
}
@keyframes show08 {
    0% { opacity: 0 }
   10% { opacity: 1 }
  25% { opacity: 1 }
  30% { opacity: 0 }
 100% { opacity: 0 }
 }

@-webkit-keyframes show08 {
    0% { opacity: 0 }
   10% { opacity: 1 }
  25% { opacity: 1 }
  30% { opacity: 0 }
 100% { opacity: 0 }
}
@keyframes show09 {
    0% { opacity: 0 }
   10% { opacity: 1 }
  25% { opacity: 1 }
  30% { opacity: 0 }
 100% { opacity: 0 }
 }

@-webkit-keyframes show09 {
    0% { opacity: 0 }
   10% { opacity: 1 }
  25% { opacity: 1 }
  30% { opacity: 0 }
 100% { opacity: 0 }
}

/*各画像のアニメーションの開始時間をずらす*/

.photo-show img:nth-of-type(1) {
    animation-delay: 0s;
    -webkit-animation-delay: 0s;
}

.photo-show img:nth-of-type(2) {
    animation-delay: 4s;
    -webkit-animation-delay: 4s;
}

.photo-show img:nth-of-type(3) {
    animation-delay: 8s;
    -webkit-animation-delay: 8s;
}

.photo-show img:nth-of-type(4) {
    animation-delay: 12s;
    -webkit-animation-delay: 12s;
}
.photo-show img:nth-of-type(5) {
    animation-delay: 16s;
    -webkit-animation-delay: 16s;
}
.photo-show img:nth-of-type(6) {
    animation-delay: 20s;
    -webkit-animation-delay: 20s;
}
.photo-show img:nth-of-type(7) {
    animation-delay: 24s;
    -webkit-animation-delay: 24s;
}
.photo-show img:nth-of-type(8) {
    animation-delay: 28s;
    -webkit-animation-delay: 28s;
}
.photo-show img:nth-of-type(9) {
    animation-delay: 32s;
    -webkit-animation-delay: 32s;
}


.spots_out{background-image: linear-gradient(0deg, transparent 31px, #333 32px), linear-gradient(90deg,  transparent 31px, #333 32px);
background-size: 32px 32px;
padding: 2em 15%;}

.home_o_l{width:70%;float:left;}
.home_o_r{margin: 0 0 0 72%;}

table.cost_table{border:1px solid #ccc;}
table.cost_table td{border:1px solid #ccc;padding:0.5em;}

/* スライドする要素 */
.content {
  width: 500px;
  height: 250px;
}
/* スライドレールの枠 */
.wrap {
  overflow: hidden;
  display: flex;
  align-items: center;
  height: 250px;
  margin-bottom: 100px;
}
/* content4つをまとめたスライドブロック */
.slideshow {
  display: flex;
  -webkit-animation: loop-slide 80s infinite linear 1s both;
  animation: loop-slide 80s infinite linear 1s both;
}
@-webkit-keyframes loop-slide {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes loop-slide {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}

.link_button{text-align:center;padding:1em 0;}
.link_button a{
background:#F4A819;
box-shadow: 0 0 10px 10px rgba(0,0,0,0.2);
color:#fff;
font-weight:900;
border:3px solid #fff;
  border-radius: 10px ;
display:inline-block;
padding:0.5em;
}
.link_button a:hover{
background:#D86010;
}

/* メインメニュー PC
------------------------------------------------------------*/
@media only screen and (min-width:1025px){

}

/* メインメニュー iPadサイズ以下から
------------------------------------------------------------*/
@media only screen and (max-width:1024px){
.home_out{
margin-bottom:3em;
}
.top_image{padding: 0 1em;}
.gnav{padding-right:5%;padding-left:5%;}
}

/* 959px以下から 1カラム表示
------------------------------------------------------------*/
@media only screen and (max-width: 959px){



.gnav{display:none;}
.open {display:block;display:absolute;z-index:100;}

.top_image{
margin:5em 0;
}

.top_slider{
}
.photo-show{
height:auto;
padding-top:50%;
width:100%;
overflow:hidden;
position: relative;
z-index:-50;
margin:0 auto;
}

.photo-show{
height:450px;
width:900px;
overflow:hidden;
position: relative;
z-index:-50;
margin:0 auto;
}
.photo-show img { 
    position: absolute; /*画像を全て重ねる*/
width:100%;
   height:auto;
left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    object-fit: cover;
}
.guide_messa_inner{font-size:0.8em;}

.guide_title{font-size:0.8em;}

table.guide_table{font-size:0.8em;}
}

/* 幅644px以下から ヘッダー等微調節
------------------------------------------------------------*/
@media only screen and (max-width: 644px){

body{
font-size: 2rem;
line-height:1.4em;
font-family: "Montserrat","游ゴシック",YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;
margin:0;
color:#313131;
}
.logo{margin-top:100px;padding: 0 1em;}




.home_out{
padding: 1em 1em 3em 1em;
margin-bottom:3em;
}

table.cost_table{}
table.cost_table td{display:block;}

.scroll table{width:1000px;}
.scroll{
overflow: auto;　　　　/*tableをスクロールさせる*/
white-space: nowrap;　　/*tableのセル内にある文字の折り返しを禁止*/
}
.scroll::-webkit-scrollbar{　　/*tableにスクロールバーを追加*/
 height: 5px;
}
.scroll::-webkit-scrollbar-track{　　/*tableにスクロールバーを追加*/
 background: #F1F1F1;
}
.scroll::-webkit-scrollbar-thumb {　　/*tableにスクロールバーを追加*/
 background: #BCBCBC;
}
.guide_out{margin:0 1em;}
.page_out{padding:0 1em}
.scroll_text{display:block;text-align:right;color:red;font-size:0.8em;}


table.form_table{}
table.form_table th{padding:1em;font-weight:900;line-height:1.2em;vertical-align:top;width:auto;display:block;border-bottom:1px dotted #ccc;}
table.form_table td{border-bottom:1px dotted #ccc;display:block;padding:1em;vertical-align:top;}
table.form_table span{color:brown;}
table.form_table th span{display:block;padding:0;}


ul.form01{padding:0;margin:0;}
ul.form01 li{padding:0 1% 0 0;margin:0;width:auto;display:block;vertical-align:top;}
ul.form01 li dl{padding:0;margin:0;}
ul.form01 li dl span{display:block;}
ul.form01 dt{text-align:right;line-height:1em;vertical-align:top;font-weight:900;display:inline-block;padding: 0;margin:0;float:left;width:7em;}
ul.form01 dd{vertical-align:top;padding:0;margin:0 0 0 8em;}

ul.fomr06{padding:0;margin:0;}
ul.fomr06 li{padding:0 0 1em 0;margin:0;width:auto;display:block;vertical-align:top;clear:both;}
ul.fomr06 li dl dt{text-align:right;padding:0;margin:0;font-weight:900;width:4em;float:left;}
ul.fomr06 li dl dt span{display:block;line-height:1em;}
ul.fomr06 li dl dd{padding:0;margin:0 0 0 4.5em;}


ul.form04{padding: 1em 0;margin:0;border-bottom:1px dotted #ccc;}
ul.form04 li{display:block;width:auto;vertical-align:top;text-align:center;font-weight:900;}
ul.form04 li:first-child,
ul.form04 li:last-child{width:auto;}
ul.form04 li dl{text-align:left;}
ul.form04 li dl dt span{line-height:1em;display:block;}
ul.form04 li dl dt{text-align:right;width:2.5em;font-weight:900;float:left;padding:0;margin:0;}
ul.form04 li dl dd{margin:0 0 0 4em;padding:0;}


.page_title{display:table-cell;
vertical-align:middle;
text-align:center;line-height:1.2em;}
.page_title span{
font-weight:900;
font-size:1em;background:#fff;
display:inline-block;
padding:0.5em;
}

.home_o_l{width:auto;float:none;}
.home_o_r{margin: 1em 0 0 0;}


.spots_out{background-image: linear-gradient(0deg, transparent 31px, #333 32px), linear-gradient(90deg,  transparent 31px, #333 32px);
background-size: 32px 32px;
padding: 2em 1em;}


.link_button{text-align:center;padding:1em 0;font-size:0.8em;}
.link_button a{
background:#F4A819;
box-shadow: 0 0 10px 10px rgba(0,0,0,0.2);
color:#fff;
font-weight:900;
border:3px solid #fff;
  border-radius: 10px ;
display:inline-block;
padding:0.5em;
}
.link_button a:hover{
background:#D86010;
}


ul.guide_icon_list{padding:0;margin:0;text-align:center;font-size:0.6em;}
ul.guide_icon_list li{width:46%;padding:0.5%;margin:0;display:inline-block;vertical-align:middle;vertical-align:top;}
ul.guide_icon_list li span{display:inline-block;padding:0 1em;}
ul.guide_icon_list img{width:1em;padding-right:0.5em;vertical-align:middle;}

}

