@charset "utf-8";
/* CSS Document */

.sitemap {
	margin: auto;
	width:100%;
	max-width:1500px;
	padding:40px 0;
}
/*背景画像*/
.event-back1{
	background-image: url("../images/event/back1.webp");
	background-position: center;
	background-size: cover;
}
.event-back2{
	background-image: url("../images/event/back2.webp");
	background-position: center;
	background-size: cover;
}
.event-back3{
	background-image: url("../images/event/back3.webp");
	background-position: center;
	background-size: cover;
}
.event-section1 {
	background-color:#FFF47A;
	padding:50px 0;
}
@media(max-width:520px){
.event-section1 {
	background-color:#FFF47A;
	padding:30px 0 15px 0;
}	
}
.event-section1 h1{
	
}
.event-section1 h1 span{
	text-align:center;
	display:block;
	border:solid 3px #014099;
	color:#014099;
	background-color:#fff;
	border-radius:50px;
	padding:5px 5px 7px 5px;
	width:300px;
	margin:auto auto 20px auto;
	font-size:25px;
	box-sizing: border-box;
}
.event-section1 h1 img{
	width:90%;
	max-width:768px;
	display:block;
	margin:auto;
}
.dates {
	background-color:#014099;
}
.dates p{
	color:#fff;
	font-size:22px;
	text-align:center;
	padding:10px 5px 13px 5px;
	box-sizing: border-box;
}
@media(max-width:520px){
.event-section1 h1 span{
	border:solid 3px #014099;
	padding:3px 3px 5px 3px;
	width:260px;
	margin:auto auto 20px auto;
	font-size:18px;
}	
.dates p{
	font-size:20px;
	padding:7px 5px 10px 5px;
}
}
.event-section2 {
	padding-top:30px;
	padding-bottom:30px;
}
.event-section2 h2{
	text-align:center;
	font-size:30px;
	color:#014099;
}
.event-section2 h2 span{
	display:block;
	font-size:25px;
}
@media(max-width:520px){
.event-section2 {
	padding-top:15px;
	padding-bottom:30px;
}
.event-section2 h2{
	text-align:center;
	font-size:25px;
	color:#014099;
	margin:10px auto 15px auto;
}
.event-section2 h2 span{
	display:block;
	font-size:20px;
}	
}
.list-1{
	display:flex;
	flex-wrap:wrap;
	gap:15px;
	justify-content:center;
	width:90%;
	max-width:960px;
	margin:auto;
	list-style:none;
}
.list-1 li{
	border:solid 2px #014099;
	border-radius:10px;
	width:45%;
	padding:20px 10px;
	box-sizing: border-box;
	box-shadow: 3px 3px 5px 1px rgba(0, 0, 0, 0.1);
	background-color: #fff;
}
.list-1 li .details-img{
	width:70px;
	margin:auto;
}
.list-1 li .details-img img{
	width:100%;
	display:block;
}
.list-1 li .text-1{
	text-align:center;
	margin:5px 0;
	font-weight:bold;
	font-size:18px;
}
.list-1 li .text-2{
	text-align:center;
	margin:0;
	font-weight:bold;
	font-size:23px;
	color:#014099;
}
.list-1 li .text-big{
	font-size:40px;
}
.list-2 li{
	border:solid 2px #014099;
	border-radius:10px;
	width:45%;
	padding:20px 0;
	box-sizing: border-box;
	box-shadow: 3px 3px 5px 1px rgba(0, 0, 0, 0.1);background-color:#fff;
	position:relative;
	padding-top:45px;
}
@media(max-width:960px){
.list-1 li .text-1{
	margin:5px 0;
	font-size:18px;
}
.list-1 li .text-2{
	font-size:20px;
}	
.list-1 li .text-big{
	font-size:40px;
}
}
@media(max-width:768px){
.list-1 li .details-img{
	width:60px;
	margin:auto;
}
.list-1 li{
	width:48%;
	padding:15px 10px;
	box-sizing: border-box
}
.list-1 li .text-1{
	margin:5px 0;
	font-size:16px;
}
.list-1 li .text-2{
	font-size:18px;
}	
.list-1 li .text-big{
	font-size:30px;
}
.list-2 li{
	padding-top:35px;
}
}
@media(max-width:480px){
.list-1{
	gap:5px;
}
.list-1 li{
	width:48%;
	padding:10px 5px;
}
.list-1 li .text-1{
	margin:5px 0;
	font-size:16px;
}
.list-1 li .text-2{
	font-size:16px;
}	
.list-1 li .text-2 span{
	display:inline-block;
}
.list-2 li{
	padding-top:35px;
	margin-top:30px;
}
}
.event-section3{
	background-color:#D4F2FF;
}
.event-section3 h2{
	color:#014795;
	/*background-color:#014795;*/
}
.event-section4{
	background-color:#014099;
}
.event-section4 h2{
	color:#fff;
	/*background-color:#014795;*/
}
/*動画埋め込み*/
.menu-youtube{
	position: relative;
    width:96%; 
    height:0; 
    padding-top: 54%; 
	margin:20px auto 0 auto;
}
	.menu-youtube iframe{
	position: absolute;
  	top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.event-movie {
	max-width:640px;
	margin:auto;
	width:95%;
}
.event-movie p{
	font-size:14px;
}
/*予約について*/
.reserve-line {
	/*border:solid 2px #06C755;
	background-color:#06C755;*/
	width:90%;
	max-width:520px;
	margin:auto auto 20px auto;	
	/*border-radius:20px;*/
}
.reserve-line a{
	font-size:30px;
	font-weight:bold;
	color:#06C755;
	box-sizing: border-box;
	color:#fff;
}
.reserve-line a img{
	width:100%;
	border-radius:20px;
}
.reserve-line a .line-icon{
	display:block;
	width:80px;
}
.reserve-line a .line-icon img{
	display:block;
	width:100%;
}
.reserve-line a .line-border{
	margin:10px auto;
	/*border:solid 3px #fff;*/
	width:97%;
	box-sizing: border-box;
	border-radius:15px;
	display:flex;
	justify-content:center;
	align-items:center;
	background-color:#06C755;
}
.reserve-tel {
	width:90%;
	max-width:520px;
	margin:auto;	
}
.reserve-tel a{
	width:100%;
	margin:auto;	
	border-radius:10px;
	text-align:center;
	display:block;
	padding:10px 0;
	font-weight:bold;
	background-color:#D4F2FF;
	color:#014099;
}
@media(max-width:520px){
.reserve-line {
	margin:auto auto 7px auto;	
}
}

/*開催期間*/
.schedule-content {
	
}
.schedule-content ul{
	width:90%;
	max-width:768px;
	margin:auto;
	background-color:#FFFDE6;
	border:solid 5px #FFF16A;
	border-radius:20px;
	padding:10px 30px;
	box-sizing: border-box;
}
.schedule-content ul li{
	display:flex;
	align-items:center;
	margin:20px auto;
	color:#014099;
	font-weight:bold;
	font-size:20px;
}
.schedule-content ul li .icon-img{
	display:block;
	width:50px;
	min-width:50px;
	margin-right:5px;
}
.schedule-content ul li .icon-img img{
	display:block;
	width:100%;
}
.schedule-content ul li a{
	color:#06C755;
	text-decoration:underline;
}
@media(max-width:640px){
.schedule-content ul li{
	margin:15px auto;
	font-size:18px;
}
}
@media(max-width:480px){
.schedule-content ul li{
	margin:15px auto;
	font-size:17px;
}	
.schedule-content ul li .icon-img{
	display:block;
	width:40px;
	min-width:40px;
	margin-right:5px;
}
.schedule-content ul{
	border-radius:20px;
	padding:10px 20px;
	box-sizing: border-box;
}
}

/*よくある質問*/
.faq{
	width:90%;
	max-width:768px;
	margin:auto;
	/*font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	color:#737373;*/
}
.faq-item {
  margin-top: 20px;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  /*border: 1px solid #878787;*/
}

.faq-question__wrap {
  position: relative;
  /*background: #0C89B7;*/
	background:#fff;
  padding: 5px 50px 5px 55px;
  cursor: pointer;
  width:100%;
  margin:0;
  box-sizing: border-box;
	border: 3px solid #014099;
	border-radius:5px;
}

.minus-icon {
  position: absolute;
  content: "";
  width: 20px;
  height: 3px;
  background: #014099;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
}
.plus-icon {
  position: absolute;
  content: "";
  width: 20px;
  height: 3px;
  background: #014099;
  right: 20px;
  top: 50%;
  transform: translateY(-50%) rotate(90deg);
  transition: ease all 0.5s; /* 擬似要素のトランジションを追加 */
}

.plus-icon.active {
  transform: translateY(-50%);
}

.faq-question__title {
  font-weight: bold;
  color: #014099;
  font-size: 18px;
  position: relative;
	margin:10px;
}
.faq-question__title::before {
    position: absolute;
    color: #014099;
    content: "Q";
    top: 50%;
    left: -35px;
    transform: translateY(-50%);
  }

.faq-answer__wrap {
  background: #fff;
  padding: 10px 5px 10px 55px;
  transition: ease all 0.5s; /* 擬似要素のトランジションを追加 */
  height: 0;
  overflow: hidden;
  padding-top: 0;
  padding-bottom: 0;
}

.faq-answer__wrap.active {
  height: auto;
  padding: 10px 5px 10px 55px;
}
.faq-answer__wrap {
  background: #fff;
  opacity: 0;
  padding: 10px 5px 10px 55px;
  padding-top: 0;
  padding-bottom: 0;
  overflow: hidden;
  transition: ease all 0.7s; /* 擬似要素のトランジションを追加 */
}

.faq-answer__wrap.active {
  opacity: 1;
  padding: 10px 5px 10px 55px;
}

.faq-answer__title {
  position: relative;
  font-weight: bold;
  color: #000;
  font-size: 16px;
}

.faq-answer__title::before {
    position: absolute;
    color: #000;
    content: "A";
    top: 50%;
    left: -35px;
    transform: translateY(-50%);
  }

.faq-answer__text {
  margin-top: 5px;
}
@media(max-width:768px){
.faq-question__wrap {
  padding: 5px 40px 5px 40px;
}	
}
@media(max-width:520px){
.faq-item {
  margin-top: 10px;
}
.faq-question__title {
  font-size: 15px;
  margin:7px;
}
.faq-answer__title {
  font-size: 15px;
}
}
/*よくある質問ここまで*/
/*新学年で差をつけるなら今*/
.matome-text{
	display:flex;
	flex-direction:column;
	width:90%;
	margin:auto;
}
.matome-text img{
	display:block;
	max-width:450px;
	margin:auto;
	width:90%;
}
.matome {
	color:#014099;
	font-size:30px;
	text-align:center;
	font-weight:bold;
	margin:0 auto;
}
.matome span{
	font-size:50px;
}
.matome2 {
	color:#014099;
	font-size:20px;
	text-align:center;
	font-weight:bold;
	margin:5px auto;
}
.matome2 span{
	display:inline-block;
}
.matome3 {
	color:#014099;
	font-size:25px;
	text-align:center;
	font-weight:bold;
	position: relative;
	display:inline-block;
	margin:25px auto 5px auto;
}
.matome3::before,
.matome3::after {
    position: absolute;
    top: 7px;
    height: 25px;
    content: "";
}
.matome3::before {
    border-left: solid 3px;
    left: -20px;
    transform: rotate(-30deg);
}
.matome3::after {
    border-right: solid 3px;
    right: -20px;
    transform: rotate(30deg);
}
@media(max-width:640px){
.matome {
	font-size:25px;
}
.matome span{
	font-size:40px;
}
.matome2 {
	font-size:20px;
	margin:5px auto;
}
.matome3 {
	font-size:25px;
	margin:20px auto 5px auto;
}	
}
@media(max-width:480px){
.matome {
	font-size:20px;
}
.matome span{
	font-size:30px;
}
.matome2 {
	font-size:18px;
	margin:5px auto;
}
.matome3 {
	font-size:20px;
	margin:20px auto 5px auto;
}	
}
/*チラシ画像*/
.flyer {
	width:100%;
	margin:auto;
	/*background-color:#fff;*/
	padding:20px 0 50px 0;
	display:flex;
	justify-content:center;
	gap:20px;
	flex-wrap:wrap;
}
.flyer1 {
	max-width:640px;
	width:45%;
	box-sizing: border-box;
	box-shadow: 3px 3px 5px 1px rgba(0, 0, 0, 0.1);
	border:solid 10px #fff;
}
.flyer1 img{
	width:100%;
	display:block;
}

.event-section-end {
	background-color:#FFF8AF;
}
@media(max-width:1200px){
	.flyer1 {
	max-width:640px;
	width:90%;
		margin:auto;
	box-sizing: border-box;
	box-shadow: 3px 3px 5px 1px rgba(0, 0, 0, 0.1);
	border:solid 10px #fff;
}
}


@media(max-width:768px){
    .fixed-btn{
        border-radius: 0;
        width: 100%;
        margin:auto 0;
        font-size: 16px;
        padding: 10px 0;
    }
}
/*参加費無料*/
.free {
	background-color:#FF0004;
	display:inline-block;
	color:#fff;
	font-weight:bold;
	padding:5px 20px 10px 20px;
	border-radius:50px;
	margin:5px 10px 0px 10px;
}
@media(max-width:640px){
.free {
	background-color:#FF0004;
	display:inline-block;
	color:#fff;
	font-weight:bold;
	padding:1px 20px 5px 20px;
	margin:10px 10px 0px 10px;
}	
}
/*参加特典*/
.list-3 {
	width:90%;
	max-width:960px;
	margin:auto;
}
.list-3 li{
	background-color:#fff;
	border-radius:20px;
	position:relative;
	margin-top:60px;
	padding:40px 20px 20px 20px;
	box-sizing: border-box;
}

.tokuten-content {
}
.tokuten {
	background-color:#014099;
	color:#fff;
	font-weight:bold;
	position:absolute;
	top:-30px;
	left:50%;
	transform: translateX(-50%);
	font-size:25px;
	padding:10px 35px;
	margin:0;
	border-radius:50px;
}
.tokuten-text {
}
.tokuten-text p{
	text-align:center;
	font-size:22px;
	font-weight:bold;
	color:#014099;
}
.tokuten-text p span{
	background:linear-gradient(transparent 85%, #FFF47A 60%);
	padding-bottom:5px;
}
.tokuten-text p .cut{
	display:inline-block;
}
.tokuten-img {
	max-width:640px;
	margin:auto;
}
.tokuten-img img{
	width:100%;
	display:block;
}
.tokuten-img ul{
	display:flex;
	justify-content:center;
	gap:20px;
	margin:auto;
	max-width:520px;
}
.tokuten-img ul li{
	margin:0;
	padding:0;
}
@media(max-width:768px){
.tokuten {
	top:-25px;
	font-size:25px;
	padding:7px 35px;
	margin:0;
	border-radius:50px;
}	
}
@media(max-width:640px){
.list-3 li{
	margin-top:60px;
	padding:30px 20px 20px 20px;
}
.tokuten {
	top:-25px;
	font-size:25px;
	padding:7px 35px;
	margin:0;
	border-radius:50px;
}	
.tokuten-text p{
	font-size:20px;
}
}
@media(max-width:520px){
.list-3 li{
	margin-top:50px;
	padding:20px 20px 20px 20px;
}
/*.tokuten-img ul{
	gap:10px;
	flex-wrap:wrap;
}
.tokuten-img ul li{
	width:45%;
}*/
.tokuten {
	top:-22px;
	font-size:23px;
	padding:5px 35px;
	margin:0;
	border-radius:50px;
}	
.tokuten-text p{
	font-size:18px;
}
}