@charset "utf-8";

/* common
---------------------------------------------*/
* {margin:0;padding:0;}

a:link,a:visited {
	color: #ffffff;
	text-decoration:underline;
}
a:hover,a:active {
	color: #d90909;
	text-decoration:underline;
}

.impact   {font-size:20pt; font-weight:bold;}
.impact2  {color:red;}
.impact3  {background:yellow; color:#000;}
#impact4  {underline;}
.impact5  {background:#173B50; padding:2px 5px; color:#fff;}
.impact6  {background:#f4f4f4; padding:3px; line-height:1.1;}
.impact7  {background: #B60000; padding:2px 5px; color:#fff;}
.style2   {color: #FF0000}
.style3   {color: #333333}
.style4   {color: #000000}


img{ border: none; width: 100%;}

/* ボタンのマウスオーバーで明るくする */
.btn:hover {
  filter: brightness(120%);
}


/* animation
---------------------------------------------*/
.feedInUp {
	opacity: 0;
	transform: translate(0,30px);
	-webkit-transform: translate(0,30px);
	transition: 1.5s;
}
.feedInUp_On {
	opacity: 1.0;
	transform: translate(0,0);
	-webkit-transform: translate(0,0);
}

/* layout
---------------------------------------------*/


/*TopIntro-Start*/
body {
	width: 100%;
	height: 100%;
	margin: 0px;
	padding: 0px;
  background-image: url(../img/sakubun2023/images/bg.jpg);
	background-repeat: repeat;
	background-attachment: fixed;
	background-position: top center;

-webkit-text-size-adjust:none;

  text-align:center;
  font-size:24px;
  font-family: 'meiryo', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
    color: #383d5c;
}

.form {
	background: url("../img/sakubun2023/images/form.png") no-repeat top center;
	height: 320px;
}

.sect1 {
  position: relative;
}
.sect1::before {
  content: "";
  background: url("../img/sakubun2023/img/bg_mv.png") no-repeat top center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  filter: blur(10px);
  z-index: -1;

}
.sect1 .inner{
  background: url("../img/sakubun2023/img/bg_mv.png") no-repeat;
  max-width: 1200px;
  min-height: 900px;
  background-size: cover;
  margin: 0 auto;
  position: relative;
  background-position: center;
}
.catchcopy{
  width: 22%;
  margin-left: 70%;
  padding-top: 10%;
}
.kikan{
  position: absolute;
  width: 20%;
  bottom: 20%;
  left: 5%;
}
.pagetitle{
  max-width: 800px;
  position: absolute;
  width: 100%;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 500;
}
.sect2{
  padding: 80px 0;
  background-color: #fff;
  position: relative;
  z-index: 5;
}
.bumon{
  display: flex;
  margin: 0 auto 40px;
  justify-content: space-between;
  max-width: 1100px;
}
.prize{
  max-width: 1000px;
  width: 96%;
  margin: 0 auto;
}

.catchcopy img,
.kikan img,
.pagetitle img,
.prize img,
.bumon img {
  width: 100%;
}

.sect-panel-sample{
  padding: 60px 0 0;
}
.sect-panel-sample h2{
  margin-bottom: 40px;
}
.image-panel{
  max-width: 900px;
  width: 90%;
  margin: 40px auto;
}

.oubo-youkou{
  display: flex;
  max-width: 900px;
  width: 94%;
  justify-content: space-between;
  margin: 0 auto;
}
.acource{
  margin-right: 4%;
}

.acource img, .bcource img, .image-panel img{
  width: 100%;
}

.boshu-youkou{
  max-width: 900px;
  width: 94%;
  margin: 0 auto;
  color: #705047;
}
.boshu-youkou tr{
  border-top: 1px solid #cf9d92;
  padding: 16px 0;
  display: block;
  display: flex;
}
.boshu-youkou th{
  width: 20%;
  margin-right: 4%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 400;
  background-color: #cfa195;
  color: #fff;
}
.boshu-youkou td {
  width: 66%;
  text-align: left;
}
.boshu-youkou td p{
  margin-bottom: 32px;
}
.boshu-youkou td a{
  color: #3f8ef4;
}
.prize-box{
  margin-bottom: 32px;
}
.prize-box .ninzuu{
  font-size: 16px;
  margin-left: 12px;
}
.prize-box .syoukin{
  font-size: 40px;
  margin-top: 12px;
  font-weight: bold;
  padding: 0 4px;
}

.sect
.ftv1 { background: url("../img/sakubun2023/images/ftv_01.png") no-repeat top center; height:    277px; }
.ftv2 { background: url("../img/sakubun2023/images/ftv_02.png") no-repeat top center; height:    113px; }
.ftv3 { background: url("../img/sakubun2023/images/ftv_03.png") no-repeat top center; height:    281px; }
.ftv4 { background: url("../img/sakubun2023/images/ftv_04.png") no-repeat top center; height:    299px; }

.title1 {
  margin: 0 auto 60px;
  width: 90%;
  max-width: 700px;
}
.about {
  margin: 0 auto;
  max-width: 893px;
}

.photo1 {
  max-width: 539px;
  width: 90%;
  margin: 0 auto;
}

.title2 {
  max-width: 492px;
  width: 90%;
  margin: 0 auto 60px;
}
.theme1 {
  max-width: 867px;
  margin: 0 auto 60px;
}
.photo2 {
  max-width: 725px;
  width: 90%;
  margin: 0 auto 60px;
}
.theme2 {
  max-width: 863px;
  width: 90%;
  margin: 0 auto 60px;
}
.photo3 {
  max-width: 725px;
  width: 90%;
  margin: 0 auto;
}
.theme3 {
  max-width: 758px;
  width: 90%;
  margin: 0 auto;
}

.title3 {
  max-width: 666px;
  width: 90%;
  margin: 60px auto;
}
.trick1 {
  max-width: 930px;
  margin: 0 auto;
}
.trick2 {
  max-width: 732px;
  margin: 0 auto;
}

.title4 {
  max-width: 282px;
  width: 90%;
  margin: 60px auto;
}

.title5 {
  max-width: 847px;
  width: 90%;
  margin: 60px auto;
}
.trigger1 {
  max-width: 911px;
  width: 90%;
  margin: 0 auto;
}
.trigger2 {
  max-width: 898px;
  width: 90%;
  margin: 0 auto;
  }
.trigger3 {
  max-width: 877px;
  width: 90%;
  margin: 0 auto 60px;
}
.photo4 {
  max-width: 754px;
  width: 90%;
  margin: 0 auto;
}

.form{
  padding-bottom: 120px;
}
.form p{
  font-size: 16px;
  font-weight: 600;
}
select#grade{
  padding: 12px;
  background-color: #eee;
  border-radius: 12px;
}
input#childname{
  padding: 12px;
  background-color: #eee;
  border-radius: 12px;
  max-width: 300px;
  width: 90%;
}
input#email{
  padding: 12px;
  background-color: #eee;
  border-radius: 12px;
  max-width: 300px;
  width: 90%;
}
button.submit {
  padding: 12px 40px;
  background-color: #ee9f2f;
  border: none;
  font-size: 20px;
  color: #fff;
}

@media screen and (max-width: 1080px) {
  .sect2,
  .about,
  .theme1,
  .theme2,
  .trick1,
  .trick2{
    width: 90%;
    margin: 0 auto;
    background-size: cover;
  }

}
@media screen and ( max-width: 767px ) {
  .sect1{
    margin-bottom: 60px;
  }
  .sect1 .inner{
    min-height: 0;
  }

  .catchcopy {
    width: 32%;
    margin-left: 52%;
  }

  .pagetitle {
    top: 85%;
  }

  .kikan {
    width: 32%;
    bottom: 12%
  }

  .bumon {
    display: block;
  }

  .bumon-a,
  .bumon-b {
    width: 90%;
    margin: auto 4% 5% 6%;
  }

  .bumon-b {
    width: 70%;
  }

  .oubo-youkou {
    display: block;
  }

  .sect-panel-sample {
    margin-top: 60px;
  }

  .sect-panel-sample h2 {
    font-size: 30px;
  }

  .sect-panel-sample p {
    font-size: 14px;
  }

  .acource {
    width: 100%;
    margin-bottom: 60px;
  }

  .boshu-youkou tr,
  .boshu-youkou th,
  .boshu-youkou td{
    display: block;
    width: 100%;
    font-size: 16px;
  }
  .boshu-youkou tr{
    border-top: none;
  }
  .boshu-youkou th{
    margin-bottom: 8px;
    margin-top: 12px;
  }
}

#wrap {

	background-image: url("../img/sakubun2023/images/wrap.png");
	background-repeat: repeat-y;
	background-position: center top;
	background-position:50% 0%;
}

#coursewrap {

	background-image: url("../img/sakubun2023/images/course_wrap.png");
	background-repeat: repeat-y;
	background-position: center top;
	background-position:50% 0%;
}

#megamiwrap {

	background-image: url("../img/sakubun2023/images/megamiwrap.png");
	background-repeat: repeat-y;
	background-position: center top;
	background-position:50% 0%;
}


.text {

	text-align:left;
	width:400px;
	margin:0 auto;
	text-shadow: 5px 3px 3px white;
	padding-top: 780px;
	padding-left: 500px;


}


.text2 {

	text-align:left;
	width:450px;
	margin:0 auto;
	text-shadow: 5px 3px 3px white;
	padding-top: 145px;
	padding-left: 70px;


}

.haikei {
	background-image: url("../img/sakubun2023/images/haikei.png");
	background-repeat: repeat-x;
	background-attachment: fixed;
	background-size:cover;
}


.green { background-color: #b8d4d5 ;

}

.fixed::before {
	content: "";
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: -1;
	background-size: cover;
	background-repeat: no-repeat;
}

.ftv.fixed::before {
	background-image: url("../img/sakubun2023/images/haikei.png");
	z-index: -1;
}

.yellow.fixed::before {
	background-image: url("../img/sakubun2023/images/yellow.png");
	z-index: -2;
}


.box {
	width:800px;
	margin:0 auto;
}

.box2 {
	width:500px;
	margin:0 auto;
	margin-left: 25px;
}

.kirakira {
	width:700px;
	margin:0 auto;
}

.money {
	font-size: 48px;
	font-style: italic;
}

.small {
	font-size: 35px;
	color: #f24497;
}

#container {

	text-align:left;
	width:1000px;
	margin:0 auto;


}

.shiro {
  background-color: #fff;
}

.triangle{
width:0;
height:0;
border-style:solid;
border-width: 68px 72px 0 72px;
border-color: #FFFFFF transparent transparent transparent;
margin:0 auto;
}

#footer {
	background-color: #ffe900;
}

ol,
ul{
	list-style-position: inside;
	padding-left:10px;
}
ol li,
ul li{
	text-align:left;
}

.publication {
  font-family: 'Zen Maru Gothic', sans-serif;
  background-image: url(../img/sakubun2023/images/bk.png);
  background-position: top;
  background-repeat: no-repeat;
  background-size: contain;
  padding-top: 300px;
  padding-bottom: 60px;
}

.publication h2 {
  text-align: center;
  color: #ee4858;
  font-size: 46px;
  font-weight: 600;
  letter-spacing: 0.03em;
  margin-bottom: 80px;
}

.publication_inner {
  max-width: 780px;
  margin: 0 auto;
}

.election {
  list-style: none;
  padding: 0;
}

.election li {
  margin-bottom: 50px;
}

.election li h3 {
  color: #ec7a59;
  font-size: 34px;
  font-weight: 500;
  position: relative;
  margin-bottom: 20px;
  padding-bottom: 12px;
}

.election li h3:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  border: 1px solid #ec7a59;
}

.election li p {
  display: inline-flex;
  width: 100%;
  align-items: center;
  justify-content: space-between;
}

.election li p .name {
  font-size: 30px;
  font-weight: 500;
}

.election li p .name {
  color: #46b49f;
  font-size: 26px;
  font-weight: 500;
}

.election li p .name .san {
  font-size: 20px;
  vertical-align: bottom;
}

.election li p .product_ttl {
  font-size: 24px;
  font-weight: 400;
  color: #333;
}

.image-gallery {
  display: flex;
  margin-bottom: 25px;
  margin-top: 20px;
}
.comment{
  background-color: #eee;
  padding: 16px;
  font-size: .8em;
  margin-bottom: 40px;
}

.image-gallery a {
  max-width: 350px;
  margin-right: 20px;
  transition: 0.3s;
}

.image-gallery a:hover {
  transition: 0.3s;
  opacity: 0.6;
}

.image-gallery img {
  max-width: 100%;
}

.ano {
  text-align: center;
  font-size: 14px;
}

.message {

  padding: 50px 5%;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  color: #333;
  font-size: 18px;
  text-align: left;
  max-width: 800px;
  margin: 0 auto;
  margin-top: 50px;
  margin-bottom: 50px;
}

.message p {
  margin-bottom: 15px;
}

.message h3 {
  margin-top: 0;
  margin-bottom: 30px;
  text-align: center;
}

.message blockquote {
  margin: 0;
  padding: 20px 3%;
  background-color: #eee;
  border-radius: 8px;
  margin-bottom: 20px;
}

.message ul {
  list-style: none;
  padding: 0;
}

.message ul li {
  margin-bottom: 15px;
}

@media screen and (max-width:1024px) {

  .publication {
    font-family: 'Zen Maru Gothic', sans-serif;
    padding: 0 3%;
    padding-top: 180px;
    padding-bottom: 100px;
  }

  .publication h2 {
    text-align: center;
    color: #ee4858;
    font-size: 7vw;
    font-weight: 500;
    letter-spacing: 0.03em;
    margin-bottom: 50px;
  }

  .publication_inner {
    max-width: 800px;
    margin: 0 auto;
  }

  .election {
    list-style: none;
    padding: 0;
  }

  .election li {
    margin-bottom: 30px;
  }

  .election li p {
    display: inline-flex;
    width: 90%;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 35px;
  }

  .election li h3 {
    color: #ec7a59;
    text-align: center;
    font-size: 6vw;
    font-weight: 500;
    position: relative;
    margin-bottom: 25px;
    padding-bottom: 12px;
  }

  .election li p .name {
    color: #46b49f;
    font-size: 5vw;
    margin-bottom: 10px;
    font-weight: 500;
  }

  .election li p .name .san {
    font-size: 5vw;
  }

  .election li p .product_ttl {
    font-size: 5vw;
  }

  .ano {
    text-align: center;
    font-size: 34px;
  }
  .image-gallery{
    width: 96%;
  }
  .image-gallery a {
    max-width: 100%;
    width: 100%;
    margin-right: 0;
  }

  .message {
    padding: 35px 10%;
    box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
    max-width: 90%;
    margin-top: 70px;
  }

  .message p {
    font-size: 4vw;
    line-height: 1.7;
    margin-bottom: 36px
  }

  .message h3 {
    font-size: 6vw;
    margin-bottom: 36px;
  }

  .message h4 {
    font-size: 40px;
    margin-bottom: 30px;
  }

  .message blockquote {
    font-size: 38px;
    padding: 5px 3%;
    margin-bottom: 34px;
  }

  .message ul li {
    margin-bottom: 34px;
    font-size: 38px;
    line-height: 1.7;
  }
}
