@charset "utf-8";
/*common*/
#otetsugi_child{ font-family:
    'Noto Sans JP', "游ゴシック", "Yu Gothic", YuGothic,
    "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",
    "メイリオ", "Meiryo", Osaka, sans-serif; }
#otetsugi_child section{ margin-bottom:3em; }
.write_rl {
  -webkit-writing-mode: vertical-rl;
  -moz-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -ms-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
}

/*メイン*/
.main { position:relative; min-height:1000px;
  background:url("img/bg_mv.jpg?20240304") no-repeat top 3% center/cover; }
.main .inner{ position:relative; padding:50px; }
.main .copy img{ width:100%; }
.main .copy{ position:absolute; }
.main .tasho{ max-width:665px; left:0; top:740px;}
.main .ttl_img{ position: absolute; top:100%; left:44%; transform: translateX(-50%); width:45%; }
.main .ttl_img::before,.main .ttl_img::after { content: ''; position: absolute; background-position: center; background-repeat: no-repeat; background-size: contain;}
.main .ttl_img::before { top: 60%; width: 15%; height: 100%; background-image: url(img/mv_deco_left.png);}
.main .ttl_img::after { right: -25%; width: 21%; height: 100%; background-image: url(img/mv_deco_right.png);}

/*コンテンツ*/
.content { padding:1.5em 0;
	background: -webkit-linear-gradient(left, #e1f0e0 0%,#f1f9f0 100%);
	background: linear-gradient(to right, #e1f0e0 0%,#f1f9f0 100%); }
.content .box{ margin:-1em auto 2em; padding:2em 1em 1em; background:#FFF; }

.ttl_con { position:relative; width:95%; margin:0 auto; padding:0.1em 0;
 font-size:1.2em; font-weight: 500; text-align:center; letter-spacing: 0.1em;
 border-bottom:4px solid #717171; background-color:rgba(255,241,0,0.5); }

.ttl_b{ margin-bottom:1.5em; padding:0.3em 0; text-align:center; 
 	background:#FFF; border-left:4px solid #6fb26b; }
.button.st_bg, .button::after{ background: #6fb26b; }
.button:after{ background: #41863c; }
.kome li{ position:relative; padding-left:1em; }
.kome li::before{ position:absolute; content:"※"; left:0; top:0; }

/* schedule */
#schedule .note { gap: .5em; align-items: center;}
#schedule .note p { margin-block: 5px 15px;}
#schedule .note .ex{ font-size:0.9em; }
.full{ display: inline-block; width:30px; height:30px; 
		margin-right:0.5em; text-align:center;
		color:#FFF; background:#2b2b2b; border-radius:50%; }
#schedule .half{ padding:1.5em 1em; }
#schedule .half .ttl_sub{ padding:0.2em 0; text-align:center;	color:#FFF; }
#schedule .first{ background:#d5f5d2; }
#schedule .second{ background:#bbecee; }
#schedule .first .ttl_sub{ background:#4bb57a; }
#schedule .second .ttl_sub{ background:#48b5b8; }

/* capacity */
.capacity { margin-top: 3em; }
.capacity dl { margin-top: 1.5em; }
.capacity .first, .capacity .second { background: unset !important }
.capacity .second { margin-top: 0.5em; }
.capacity dt { padding: 0.2em 0.7em; color: #fff; }
.capacity .first dt { background: #4bb57a; }
.capacity .second dt { background: #48b5b8; }
.capacity dd { margin-left: 1em; }


/* about */
.about_pic li{ margin-bottom:1em; }
.about_pic .txt{ padding:1.2em 1.5em 1em; color:#FFF; }
.about_pic .manabu{ background:#34b79a; }
.about_pic .fureru{ background:#ee762e; }
.about_pic .asobu{ background:#3fbdd6; }
.about_pic .txt strong{ color:#fff100; }
.about_pic .txt .sub{ text-align:center; font-size:1.1em; }

/* place */
#place .inner { position: relative;}
#place .item { max-width: 700px; margin-top: clamp(30px,1vw,50px); margin-inline: auto;}
#place .item::after { content: ''; position: absolute; top: 26%; right: 0; width: 13%; height: 100%; background: url(img/pokkuma01.png) no-repeat center / contain;}
#place .item figure {margin-top: 1.5em;}

/* plan */
.plan_list{ margin:3em 0; }
.plan_list li{ padding:1em 0; border-bottom:1px solid #666666; }
.plan_list li:last-child{ border:0; }
.plan_list .ttl_sub span{ display:inline-block; margin-right:1.2em; padding:0.2em 0.5em; 
	text-align:center; color:#FFF; background:#6fb26b; }
#plan .pic li{ width:48%; margin-bottom:1.5em; }
#plan .kome{ font-size:0.9em; }

/* apply */
#apply .txt{ margin:1em 0; }
#apply .ttl_sub{ position:relative; width:100%; text-align:center; 
	color:#FFF; background:#73c3c8; }
#apply .detail{ position:relative; padding:1em 0.5em; }
#apply .detail::before{ position:absolute; content:""; left:0; bottom:0;
	width:98%; height:1px; background:#666; }
#apply .detail .kome{ font-size:0.9em; line-height:1.3; }
#apply .detail:nth-child(2n-1){ margin:0; padding-right:0; border-right:0; }
#apply .detail .sub{ margin-bottom:1.2em; padding:0.2em 0; text-align:center;
border:1px solid #666; }
#apply .txt:nth-child(2) .detail::before{ content:none; }
.pdf{ margin-top:2em; }
.pdf .button.st_bg{ color:#222; border:1px solid #80b87d; }
.pdf .button.st_bg, .pdf .button::after{ background:#eef8ee; }
.pdf .button:after{ background: #80b87d; }
.pdf .button span:before, .pdf .button span:after{ background: #222; }
.info{ margin-top:2em; padding:2em 2em 1em; text-align:center; border:5px solid #cadfc9; }
.info .sub, .info p{ font-size:1.1em; }
.info strong{ margin-right:1em; font-size:1.1em; }

.deadline{ text-align:center; font-size:1.1em; font-weight:500; }

.btn_list { justify-content: center; column-gap: 2em; row-gap: .5em; margin-block: 1.5em 1em;}
.btn_list li .button { padding-inline: .5em 2em; font-size: clamp(14px,3vw,16px);}
.btn_list li:has(.large) {text-align: center;}

#info .ttl_con { background-color: #FFF87F;}
#info .box { border: 4px solid #6fb26b; }
#info .box .button { padding-left: 1.5em;}
#info .box .button span.icon::before { content: ''; position: absolute; left: 1em; width: 1.4em; height: 1.4em; background: url(img/ico_file.svg) no-repeat center / contain;}

/* info */
.sub span { display: block;}
.info address { font-style: normal;}

/* 960px以上(PC) */
@media screen and (min-width: 960px) {

	#otetsugi_child section{ margin-bottom:5em; }
	.content { padding:70px 0; }
	.content .box{ width:90%; margin:-1.5em auto 3em; padding:3em 3em 2em; }

	.ttl_con { width:480px; padding:0.2em 0;
	 font-size:1.4em; border-width:4px; }
	.ttl_b{ font-size:1.1em; }

	/* schedule */
	#schedule .note .ex{ margin-left:3em; padding-top:0.2em; }
	#schedule .half{ font-size:1.05em; }
	#schedule .half .ttl_sub{ width:60px; margin-right:1.5em; }
	#schedule .half .half_list{ -webkit-box-flex:1; flex:1; }
	#schedule .half .half_list li{ width:32%; }
	#schedule .half strong{ font-size:1.1em; }
	
	/* plan */
	.plan_list li{ display:-webkit-flex; display:flex; }
	.plan_list .ttl_sub{ font-size:1.1em; }
	.plan_list .sub{ width:40%; }
	.plan_list .txt{ -webkit-box-flex:1; flex:1; }
	#plan .pic li{ width:32%; }


}


/* タブレットとPC */
@media screen and (min-width: 1600px) {
	.main .ttl_img::before{top:16%; left: -15%;}
	}

@media screen and (min-width: 600px) {
  /* about */
	.about_pic li{ width:31%; }

	/* place */
	#place .col2{ width:90%; margin:3em auto 5em; }
	.col2 li{ width:47%; }

	/* apply */
	#apply .ttl_sub{ width:5%; }
	#apply .ttl_sub span{ position:absolute; display:block; left:50%; top:50%; white-space: nowrap;
		transform: translateY(-50%) translateX(-50%);
	  -webkit- transform: /*translateY(-50%)*/ translateX(-50%); }
	#apply .detail{ width:46%; margin:0 1%; padding: 1em 1.5em 2em; border-right:1px solid #666666; }
	#apply .detail:nth-child(2n-1){ margin:0; padding-right:0; border-right:0; }
	.deadline{ margin:3em auto 1em; font-size:1.3em; }
}

/* 1499以下 */
@media screen and (max-width: 1499px) {
.main .ttl_img{top:50%;  transform: translate(-50%,50%);}
.main .ttl_img::before { top: 40%; left: unset;}
}

/* 1099以下 */
@media screen and (max-width: 1099px) {
	/*メイン*/
	.main .ttl{ width:230px; }
	.main .manabu{ width:180px; right:20px; }
	.main .asobu{ width:170px; left:30px; }
	.main .fureru{ width:180px; right:100px; }

	#place { padding-bottom: 10%;}
	#place .item::after { top: 60%; width: 17%;}
}

/* 959以下 (タブレット以下) */
@media screen and (max-width: 959px) {
	#schedule .ttl_sub{ width:5em; }
	.full{ width:25px;height:25px; }
	.half_list li{ margin:0 1em 1em 0; }
}

@media screen and (max-width: 759px) {
	.btn_list li { text-align: center;}
	#place .item::after  { top: 57%; width: 19%;}
}

@media screen and (max-width: 599px) {
	/*メイン*/
	.main{ min-height:auto; }
	.main .inner{ height:500px; }
	.main .ttl_img{ top: 0%;}
	.main .lead{ width: 100px; margin-left: -50px; top: 10px; }
	.main .manabu{ width:100px; right:10px; top: 50px; }
	.main .asobu{ width:90px; left:20px; top: 250px; }
	.main .fureru{ width:100px; right:30px; top:200px; }
	.main .tasho{ width: 100%; bottom:10px; top:auto; }

	/* capacity */
	.capacity { margin-top: 2em; }
	.capacity dl { margin-top: 1em; }

	/* place */
	#place { padding-bottom: 30%;}
	#place .item::after { top: 100%; width: 40%; height: 40%;}
	/* apply */
	#apply .ttl_sub{ -webkit-writing-mode: horizontal-tb; writing-mode: horizontal-tb; }

	.btn_list li { width: 95%; margin-inline: auto;}
	.btn_list li .button { display: inline-block; width: 100%;}
}

@media screen and (max-width: 399px) {
	.main .ttl_img{ width: 65%;}
}