@charset "utf-8";
/* CSS Document */
*{margin: 0;padding: 0;}
html{font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";line-height: 1.6;}
img{max-width: 100%;}
body{background-color: #f9f4ff;}
header{background-image: url(img/background_main_sakura.jpg);  height: 650px; background-repeat: repeat-x;}
h1{text-align: center;padding-top: 20px;}
#yoko img{margin: 0 auto;text-align: center;}




h3{font-size: 1.2rem;border-left: 10px solid #EDDD15; border-bottom: 1px solid #EDDD15;padding: 10px 10px;margin-bottom: 10px;  clear: both;}


.text_box{margin-bottom: 4em;}
.text_box #jyoken h2{background-color: #D9D9D9; color: #000;padding: 10px;text-align: center;margin: 5px 0 30px 0;border-top: 10px double #fff;border-bottom: 10px double #fff;}
.text{color: #aa3331;font-size:140%;font-weight: bold;line-height:1.5em;margin-top: 1em;margin-bottom: 2em;padding: 0 1.5em;}


.moko{margin: 3em 0;}
.f_right{float: right; width: 45%;}
.f_left{float: left; width: 45%;}
.f_clear{clear: both;}
.fct{font-weight: bold; color: red; text-align: center; font-size: 150%;}
.mb20{margin-bottom: 20px;}
.photo{margin: 15px;float: left;}
.photo img{margin: 10px;}
.mt20{margin-top: 20px; margin-left: 2em;}
.mt30{margin-top: 30px;}
.pt30{padding-top: 30px;}
.fwb{font-weight: bold; margin-bottom: 20px;}
.fw{font-weight: bold;}
.fn{font-weight: normal;}
.t_right{text-align: right; margin-right: 10px;}
.text_r{text-align: right;}
.mtc{text-align: center;margin-top: 30px;}
.tacb{text-align: center; font-weight: bold; font-size: 20px;}
.p_box{border: solid #2F5189; padding: 5px;}
dt.syousai{float: left;}
dt.syousai::after{content: "："}
dd.syousai{margin-left: 80px;}

.why{background-color: #C4E3EB;padding: 15px;margin: 20px 0;}
dl.program{margin: 0 auto;
padding: 25px;}
dl.program dt{font-size: 1.2rem;border-bottom: 1px dashed #eb6ea5;padding: 10px 10px;margin: 0 10px; margin-bottom: 15px;font-weight: bold; margin-top: 20px;}
dl.program dd{margin-bottom: 2em;}
.program dd{font-size:18px;padding-left: 1em;}
.time{background-color: #FFFABA;padding: 5px 10px;margin-bottom: 3px;border: 1px solid #ccc;}

.target{
	background: none;
	border: 1px solid #666;	/* 線の太さ・種類・色 */
	margin: 20px 10px; /* 外側の余白 上下・左右 */
	padding: 30px 20px 20px; /* 内側の余白 */
	position: relative;
	font-weight: bold;
	text-align: center;
}

.sc{
	margin: 30px 0;
}


.target:before{
	background-color: #fff;
	content: '＜到達目標＞';
	padding: 2px 10px; /* タイトルの余白 上下・左右 */
	position: absolute;
	top: -10px;
	left: 30px;
	text-align: center;
	font-weight: bold;
}
.target:after{
	background: none;
	border: 1px solid #333;	/* 線の太さ・種類・色 */
	content: '';
	position: absolute;
	top: 3px;
	left: 3px;
	width: 100%;
	height: 100%;
	z-index: -1;
}

footer{background-color: #f9f4ff;padding: 1em;}

.pmark{float: right;margin-left: 20px;}
.koushi_img{float: left; width: 25%;}
.koushi_text{float: left; width: 75%;}

/*--------- clearfix -----------*/
.clearfix:after { 
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
	}
/* Hides from IE-mac \*/ 
.clearfix {display: inline-block;} 
/* End hide from IE-mac */
* html .clearfix {height: 1%;} 
.clearfix {display: block;}

@media screen and (min-width:1000px){
	.wrap{width: 1000px;margin: 0 auto;padding: 2em 0 0 0; background-color: #FFFFFF;}
	.map{width: 500px;height: 400px; margin-left: 10px;float: right;border: 2px solid #ccc;}
	footer div{width: 1000px;margin: auto;}
}

table.border{border-collapse: collapse;border: 1px solid #787878; width: 90%; margin: 0 auto;}
table.border th,table.border td{border: 1px solid #787878;padding: 10px;}
table.border th{background-color: #ffe5e5;font-weight: normal;}
table.sche{margin: 20px 0;}
table.sche th,table.sche td{padding: 0 20px 0 0;}

ul.disc {margin-left: 1.5em;}
ul.disc li{list-style: disc;}
ul.list{list-style: none;margin-left: 1em;text-indent: -1em;}
ul.list li:before{content: "※";}
ol{margin-left: 30px;}
ol.kakko{list-style: none;}

.red{color: red;}
.apl{font-size: 125%;margin: 20px 0 60px 0;font-weight: bold;}
.large{font-size: 140%;}

.yn_btn{text-align: center;margin: 20px 0;}
.yn_btn img{margin-right: 20px;margin-bottom: 10px;}


.mb10{margin-bottom: 10px;}
.mb20{margin-bottom: 20px;}
.mb30{margin-bottom: 30px;}
.mtb130{margin-top: 10px; margin-bottom: 30px;}

.button {
  display: inline-block;
  width: 75%;
  text-align: center;
  text-decoration: none;
  outline: none;
	border: 1px solid #c9171e;
  background-color: #e83929;
  border-radius: 4px;
  color: #fff;
  -webkit-transition: none;
  transition: none;
	font-weight: bold;
	letter-spacing: 5px;
	font-size: 20px;
	padding: 20px 10px;
}
.button a{color: white;}
.button::before,
.button::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}
.button,
.button::before,
.button::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}
.button:hover {
  border:1px solid #cd5e3c;
  background-color: #b7282e;
  background-image: -webkit-linear-gradient(top, #cd5e3c, #b7282e);
  background-image: linear-gradient(to bottom, #cd5e3c, #b7282e);
}
.button:active {
  background: #e83929;
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, .2);
  color: #1679a1;
  text-shadow: 0 1px 1px rgba(255, 255, 255, .5);
}
@media screen and (min-width:1000px){
	.w50{width: 50%;}
}
@media screen and (max-width:999px){
	.wrap{background-color: #FFFFFF;padding: 1em 0 0 0;}
	table td.pro{font-weight: bold;background-color: #CFDCF0}
	.sc{display: block; overflow-x: scroll;white-space: nowrap; -webkit-overflow-scrolling: touch; width: auto;}
	#jyoken table{display: block; overflow-x: scroll;white-space: nowrap; -webkit-overflow-scrolling: touch; width: auto;}
	header{height: auto;}
	header p{text-align: center;color: #fff;padding-top: 80px;}
	.text{color: #aa3331;font-size:120%;font-weight: bold;line-height:1.5em;margin-top: 1em;margin-bottom: 1em;}
}
@media screen and (max-width:650px){
	table.border{border-collapse: collapse;border: 1px solid #787878; width: 100%; margin: 0 auto;}
    table.border th,table.border td{border: 1px solid #787878;padding: 10px;}
    table.border th{background-color: #ffe5e5;font-weight: normal;}
	.koushi_img{float: none; width: 150px;margin: 10px auto;}
    .koushi_text{float: none; width: 100%;}
	.photo{width: 100%;margin-top: 10px;}
	header{height: auto;}
	h1 img{width: 100%;}
}

	@media screen and (max-width:450px){
#mokuteki h2,#nittei h2,#yoko h2,#joken h2,#taisei h2,#omousikomi h2{ font-size: 18px;padding: 12px;text-align: center;border-top: 8px double #FFFFFF;border-bottom: 8px double #FFFFFF;}
}
	
	#mokuteki h2,#nittei h2,#yoko h2,#joken h2,#taisei h2,#omousikomi h2{background-color: #cf1821; color: #FFFFFF; font-size: 28px;padding: 15px;text-align: center;border-top: 8px double #FFFFFF;border-bottom: 8px double #FFFFFF;}
	h3{font-size: 1rem;border-left: 10px solid #EDDD15; border-bottom: 1px solid #EDDD15;padding: 10px 10px;margin-bottom: 10px;  clear: both;}
    #camp h3{font-size: 1rem;border-left: 10px solid #D2182F; border-bottom: none;}
	#otoiawase p{font-size: 90%;}
	
	.program dd{font-size: 100%;}

	@media screen and (max-width:450px){
#mokuteki h2,#nittei h2,#yoko h2,#joken h2,#taisei h2,#omousikomi h2{ font-size: 18px;padding: 12px;text-align: center;border-top: 8px double #FFFFFF;border-bottom: 8px double #FFFFFF;}
}
	


