@charset "UTF-8";

/* common  --------------------------- */
*,*:before,*:after{padding:0;margin:0;image-rendering:auto;border:0 none;outline:0;font-size:inherit;font-weight:inherit;font-style:inherit;text-decoration:inherit;box-sizing:border-box;-webkit-text-size-adjust:auto;vertical-align:baseline;}
header,footer,article,section,aside{position:relative;}
ul,ol,li{list-style:none;}
img{max-width:100%;}

/* base ------------------------------- */
body{color:#333;background-color:#fff;font-size:0;}
body,input,select,option,textarea{font-family:Verdana,"メイリオ",sans-serif;}
.inner{margin:auto;}
.flex{display:flex;align-items:center;}
main{word-break:break-all;}
.check:before{content:"」";display:inline-block;transform-origin:5px;-webkit-transform-origin:5px;transform:rotate(45deg);-webkit-transform:rotate(45deg);}

#p02{color:#fff;background:url(images/02-bg-pc.jpg) 50% 50% no-repeat #000;background-size:cover;text-align:center;}
#p03{color:#666;background:url(images/03-bg.jpg) 50% 50% #ebebeb;}
#p05{color:#333;background:url(images/05-bg.jpg) 50% 50% no-repeat #ebffff;}
#p06{color:#333;background:#a9d7ef;}

#p08 .inner{width:640px;padding:0 5%;}
form{font-size:14px;padding-top:30px;}
label{display:block;line-height:2.4em;vertical-align:middle;}
input,select,option,textarea{font-size:14px;padding:1em;border:1px solid #999;width:100%;}
input[type="checkbox"]{width:auto;margin-right:0.2em;}
form dt{font-size:16px;}
form dt:before{content:attr(data-type);display:inline-block;padding:0 0.8em;margin-right:0.5em;font-size:14px;color:#fff;background:#e61c24;border-radius:5px;}
form dt.optional:before{background:#f4a93b;}
form dd{padding:0.5em 0.2em 1.5em;}
form dd.flex{justify-content:space-between;}
form dd.flex > input{width:49.5%;}
form p{padding-bottom:2em;}
form p em{color:#29a4db;}
form .btnB input{color:#fff;background:#29a4db;font-size:16px;}


/* width 800-(pc) ---------------------------------------------------------------------------------------------------------------------------- */
@media screen and (min-width:800px){
	.inner{width:1920px;max-width:100%;}

	#p01 .inner{padding:20px 2%;}
	#p01 > .flex{}
	#p01 > .flex > ul.flex{font-size:16px;}
	#p01 > .flex > ul.flex li:before{content:"/";padding:0 0.2em;}
	#p01 > .flex > ul.flex li:first-child:before{content:"";padding:0;}

	#p02{padding:150px 0;}
	#p02 h1{font-size:18px;letter-spacing:0.45em;text-indent:0.45em;}
	#p02 h1 em{display:block;color:#3fc3ff;line-height:1.8em;font-size:36px;letter-spacing:0.2em;text-indent:0.2em;}
	#p02 ul{padding-top:40px;line-height:1.6em;font-size:16px;}
	#p02 .btnA{padding-top:30px;}
	#p02 .btnA span{display:inline-block;line-height:2.4em;padding:0 4.5em;font-size:24px;background:#30de93;border-radius:1.2em;cursor:pointer;}

	#p03{padding:80px 0;}
	#p03 .inner{width:1100px;padding:0 30px;}
	#p03 h2{color:#3fc3ff;font-size:24px;letter-spacing:0.1em;text-align:center;}
	#p03 p{padding-top:1.5em;line-height:1.8em;font-size:16px;letter-spacing:0.1em;}

	#p04{padding:80px 0;color:#fff;background:url(images/04-bg-pc.jpg) 50% 50% no-repeat #000;background-size:cover;text-align:right;}
	#p04 .inner{display:inline-block;width:48%;min-width:520px;text-align:left;}
	#p04 h2 span{color:#3fc3ff;font-size:36px;font-weight:bold;}
	#p04 h2 em{display:block;font-size:16px;letter-spacing:0.1em;}
	#p04 ul{padding-top:1.2em;padding-right:5%;line-height:1.6em;color:#fff;font-size:14px;letter-spacing:0.05em;}
	#p04 ul li{padding-top:0.2em;}

	h2.h2-img-em{text-align:center;}
	h2.h2-img-em img{width:200px;}
	h2.h2-img-em em{display:block;line-height:3em;font-size:16px;letter-spacing:0.1em;padding-bottom:0.5em;}

	#p05{padding:80px 0;}
	#p05 .inner{width:1300px;padding:0 2%;}
	#p05 ul.flex{justify-content:space-around;padding-top:30px;}
	#p05 ul.flex li{position:relative;width:22%;}
	#p05 ul.flex li p{position:absolute;top:60%;left:1em;right:1em;line-height:1.4em;color:#fff;font-size:16px;letter-spacing:0.05em;}

	#p06{padding:80px 0 60px;}
	#p06 .inner{width:1200px;padding:0 2%;}
	#p06 ul.flex{justify-content:center;flex-wrap:wrap;padding-top:30px;}
	#p06 ul.flex li{position:relative;width:32%;margin:0 0.6%;padding-bottom:20px;}
	#p06 ul.flex li div{position:absolute;top:1em;left:45%;right:1em;line-height:1.4em;font-size:14px;letter-spacing:0.05em;}
	#p06 ul.flex li div h3{color:#3fc3ff;font-size:18px;font-weight:bold;}
	#p06 ul.flex li div h3 em{display:block;letter-spacing:0.05em;}
	#p06 ul.flex li div p{padding-top:0.5em;}
	#p06 ul.flex li:last-child div{left:30%;}

	#p07{padding:80px 0;border-bottom:1px solid #999;}
	#p07 .inner{width:1400px;}
	#p07 ul.flex{justify-content:center;padding-top:30px;}
	#p07 ul.flex li{position:relative;width:21%;display:flex;align-items:center;padding:0 2.5%;font-size:16px;}
	#p07 ul.flex li:before{content:"\025b6";position:absolute;left:-0.5em;display:block;font-size:30px;}
	#p07 ul.flex li:first-child:before{content:"";}
	#p07 ul.flex li img{width:100%;}
	#p07 ul.flex li span{position:absolute;top:75%;left:0;right:0;line-height:1.4em;font-size:16px;letter-spacing:0.05em;text-align:center;}

	#p08{padding:80px 0;}

	#p09{padding-bottom:50px;}
	#p09 .inner{width:1000px;padding:0 100px;}
	#p09 p{font-size:13px;padding-bottom:1.5em;}
	#p09 p#copyright{padding-top:30px;text-align:center;}
}
@media screen and (min-width:800px) and (max-width:1200px){
	#p05 ul.flex li p{font-size:14px;}
	#p06 ul.flex li div{right:0.5em;font-size:13px;}
	#p06 ul.flex li div h3{font-size:16px;}
	#p07 ul.flex li span{font-size:14px;}
}
@media screen and (min-width:800px) and (max-width:1000px){
	#p05 ul.flex li p{left:0.8em;right:0.8em;font-size:13px;}
	#p06 ul.flex li div{line-height:1.2em;font-size:12px;letter-spacing:0.05em;}
	#p06 ul.flex li div h3{font-size:14px;}
	#p07 ul.flex li span{font-size:12px;}
}
@media screen and (min-width:800px) and (max-width:900px){
	#p06 ul.flex li div{top:0.5em;}
}

/* width -799(mobile) ---------------------------------------------------------------------------------------------------------------------------- */
@media screen and (max-width:799px){
	.inner{width:640px;}
	.check:before{font-size:32px;}

	#p01 .inner{padding:20px 5%;}
	#p01 > .flex{}
	#p01 > .flex > ul.flex{flex-wrap:wrap;font-size:18px;width:60%;}
	#p01 > .flex > ul.flex li:after{content:"/";padding:0 0.2em;}
	#p01 > .flex > ul.flex li:last-child:after{content:"";padding:0;}

	h2.h2-img-em{text-align:center;}
	h2.h2-img-em img{}
	h2.h2-img-em em{display:block;line-height:2.4em;font-size:22px;letter-spacing:0.05em;}

	#p02{padding:300px 0 200px;}
	#p02 h1{font-size:18px;letter-spacing:0.2em;text-indent:0.2em;}
	#p02 h1 em{display:block;color:#3fc3ff;line-height:1.6em;font-size:36px;letter-spacing:0.2em;text-indent:0.2em;}
	#p02 ul{padding-top:40px;}
	#p02 ul li{line-height:1.6em;font-size:14px;}
	#p02 .btnA{padding-top:30px;}
	#p02 .btnA span{display:inline-block;line-height:2.4em;padding:0 4.5em;font-size:24px;background:#30de93;border-radius:1.2em;cursor:pointer;}

	#p03{padding:50px 0;color:#666;background:url(images/03-bg.jpg) 50% 50% #ebebeb;}
	#p03 .inner{padding:0 5%;}
	#p03 h2{color:#3fc3ff;font-size:28px;font-weight:bold;letter-spacing:0.05em;text-align:center;}
	#p03 p{padding:1em 0.8em 0;line-height:1.4em;font-size:22px;letter-spacing:0.05em;}

	#p04{padding:100px 0 80px;color:#fff;background:url(images/04-bg-sp.jpg) 0 50% no-repeat #000;background-size:cover;}
	#p04 .inner{padding:0 2%;}
	#p04 h2 span{display:block;color:#3fc3ff;font-size:40px;font-weight:bold;text-align:center;}
	#p04 h2 em{display:block;font-size:32px;letter-spacing:0.1em;font-weight:bold;padding-top:3em;}
	#p04 ul{padding-top:0.5em;line-height:1.6em;color:#fff;font-size:22px;letter-spacing:0.05em;}

	#p05{padding:50px 0 70px;}
	#p05 ul.flex{justify-content:space-around;flex-wrap:wrap;padding-top:50px;}
	#p05 ul.flex li{position:relative;width:50%;padding:0.5em;font-size:20px;line-height:1.4em;color:#fff;letter-spacing:0.05em;}
	#p05 ul.flex li p{position:absolute;top:60%;left:1.5em;right:1.5em;}

	#p06{padding:30px 0 50px;}
	#p06 .inner{padding:0 5%;}
	#p06 ul.flex{justify-content:center;flex-wrap:wrap;padding-top:50px;}
	#p06 ul.flex li{position:relative;width:100%;padding-bottom:50px;text-align:center;}
	#p06 ul.flex li div{position:absolute;top:1em;left:48%;right:1em;line-height:1.4em;font-size:24px;letter-spacing:0.05em;text-align:left;}
	#p06 ul.flex li div h3{color:#3fc3ff;font-size:28px;font-weight:bold;}
	#p06 ul.flex li div h3 em{display:block;letter-spacing:0.05em;}
	#p06 ul.flex li div p{padding-top:0.5em;}
	#p06 ul.flex li:last-child div{left:30%;}
	#p06 ul.flex li:last-child p{line-height:1.2em;}

	#p07{padding:30px 0 50px;}
	#p07 ul.flex{justify-content:center;flex-wrap:wrap;}
	#p07 ul.flex li{position:relative;width:100%;display:flex;align-items:center;padding:90px 5% 0;font-size:32px;}
	#p07 ul.flex li:before{content:"▼";position:absolute;top:0px;left:0;right:0;display:block;line-height:90px;font-size:40px;color:#929292;text-align:center;}
	#p07 ul.flex li:first-child:before{content:"";}
	#p07 ul.flex li img{margin:auto;}
	#p07 ul.flex li span{position:absolute;top:80%;left:0;right:0;line-height:1.4em;font-size:32px;letter-spacing:0.05em;text-align:center;}

	#p08{padding:30px 0 50px;}
	#p08 .inner{padding:0 7%;}
	form{font-size:20px;}
	label{line-height:3em;}
	input,select,option,textarea{font-size:24px;}
	input[type="checkbox"]{font-size:14px;}
	form dt{font-size:28px;}
	form dt:before{font-size:24px;}
	form .btnB input{color:#fff;background:#29a4db;font-size:28px;-webkit-appearance:none;}

	#p09{padding-bottom:50px;}
	#p09 .inner{padding:0 7%;}
	#p09 p{font-size:20px;padding-bottom:1.5em;}
	#p09 p#copyright{padding-top:30px;text-align:center;}


}

/*フォームテキストエリアに影をつける*/
input {
  box-shadow: 0 0 8px gray;
  
}

#date-radio, #age-select, #educational-radio, #from-check {
  box-shadow: 0 0 0 ;
}

.parsley-custom-error-message {
  color : crimson;
  font-size: 14px !important;
  font-weight: bolder;
  margin-bottom: 20px;
}

.parsley-required {
  color : crimson;
  font-size: 14px !important;
  font-weight: bolder;
  margin-bottom: 20px;
}