@charset "UTF-8";
/* CSS Document */
/*---------------------page-ticket------------------------*/
html {
  scroll-behavior: smooth;
  scroll-padding-top: 100px;
}
br.spOnly {
  display: none;
}
.ti_container, .shbfam_container {
  padding: 0 9%;
}
.ti_extraLight {
  font-weight: 200;
}
div.ti_button_box {
  display: flex;
  justify-content: center;
  column-gap: 30px;
  /*0807追加*/
  margin-bottom: 40px;
}
a.ti_button {
  display: inline-block;
  background-color: #ffffff;
  border: solid .5px #003c88;
  color: #333333;
  width: 495px;
  height: 135px;
  font-size: 2.3rem;
  line-height: 2.3rem;
  border-radius: 20px;
}
a.ti_button:last-of-type {
  letter-spacing: .6rem;
}
.ti_button .text_pink {
  color: #f85674;
  font-size: 1.4rem;
  letter-spacing: 0.2rem;
}
.ti_button_text {
  text-align: center;
}
.ti_button .fa-globe, .ti_button .fa-phone {
  color: #3061b7;
  font-size: 3.8rem;
  margin-right: 20px;
}
/*.ti_button .fa-globe {
  padding-bottom: 10px;
}*/
.ti_button_con {
  margin-top: 47px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ti_button_con.button_phone {
  padding-right: 10px;
}
a.ti_button:hover {
  background-color: rgba(48, 97, 183, 0.10);
  color: #3061b7;
}
a.ti_button:hover span.text_pink {
  color: rgba(248, 86, 116, 0.80);
}
.shb_con {
  display: flex;
  align-items: center;
  background-color: #feeef1;
  max-width: 1100px;
  margin: 0 auto;
  padding: 30px 36px;
  column-gap: 50px;
  margin-top: 53px;
  margin-bottom: 65px;
}
.shb_con h3 {
  color: #f85674;
  font-size: 4.0rem;
  font-weight: 200;
}
.shb_con p {
  font-feature-settings: "palt";
}
.shb_con1 {
  width: 52%;
  padding-left: 25px;
  padding-top: 10px;
  padding-bottom: 10px;
}
.shb_con2 {
  flex: 1;
}
.shb_button, .re_button {
  display: flex;
  background-color: #ffffff;
  border: solid .3px #003c88;
  border-radius: 2px;
  width: 400px;
  height: 50px;
  font-size: 1.8rem;
  align-items: center;
  justify-content: space-between;
}
.shb_button:hover, .re_button:hover {
  background-color: rgba(48, 97, 183, 0.10);
}
.shb_button span {
  padding-left: 28px;
  color: #3061b7;
}
.shb_button img, .re_button img {
  width: 50px;
  height: auto;
  padding-right: 25px;
  vertical-align: middle;
}
/*reservation*/
.reservation {
  padding: 0 6%;
}
.re_bg_blue {
  background-color: #3061b7;
  color: #ffffff;
  font-size: 2.4rem;
  display: flex;
  align-items: center;
  padding: 15px 0;
  margin-bottom: 67px;
}
.re_con {
  max-width: 1220px;
  margin: 0 auto;
}
.reservation .fa-globe, .reservation .fa-phone {
  padding-left: 25px;
  padding-right: 16px;
  font-size: 2.9rem;
}
.re_button .fa-globe {
  color: #3061b7;
  padding-left: 20px;
  padding-right: 17px;
}
.re_net_caution {
  font-weight: 400;
  margin-bottom: 48px;
}
.re_button span {
  color: #333333;
}
.re_icon_text {
  display: flex;
  align-items: center;
}
.re_bg_skyblue {
  background-color: #eaeff8;
  padding: 26px 30px;
}
.re_bg_green {
  background-color: #1cb7b7;
  margin-right: 20px;
  display: inline-block;
  width: 127px;
  height: 41px;
  text-align: center;
}
.re_bg_green span {
  color: #ffffff;
  font-size: 2.0rem;
}
.mark_green {
  background-color: #1cb7b7;
  background: linear-gradient(transparent 58%, rgba(28, 183, 183, 0.35) 40%);
  font-size: 1.6rem;
}
.re_mark_text {
  margin-top: 26px;
  padding-left: 10px;
}
.re_con_step, .re_con_step_tel {
  padding: 0 4%;
}
.step {
  font-size: 2.4rem;
  color: #3061b7;
  font-weight: 300;
  letter-spacing: 0.1rem;
}
.step span {
  font-size: 3.6rem;
  font-weight: 300;
}
.step_title {
  display: flex;
  align-items: baseline;
  width: 40%;
  margin-top: -18px;
}
.step_text {
  font-size: 2.4rem;
  margin-left: 18px;
  font-weight: 200;
}
.step1, .step2 {
  display: flex;
  margin-bottom: 55px;
}
.step1 .re_bg_skyblue {
  width: calc(100% - 40%);
}
.button_online{
	line-height: 2.0rem;
}
.step2 .re_bg_skyblue {
  margin-bottom: 55px;
}
.re_bg_skyblue_con {
  flex: 1;
}
.re_flex {
  display: flex;
}
.re_detail {
  align-items: center;
  margin-bottom: 22px;
}
.re_detail p {
  font-size: 2.0rem;
  margin-bottom: 0;
}
.re_detail p span {
  font-size: 1.6rem;
}
.h4_flex {
  display: flex;
  align-items: center;
}
.h4_flex h4 {
  font-size: 2.0rem;
  line-height: 2.8rem;
}
.step2 .fa-credit-card, .step2 .fa-shop, .step2 .fa-truck, .step2 .fa-graduation-cap {
  font-size: 2.8rem;
  color: #3061b7;
  margin-right: 20px;
}
.re_tel .fa-phone {
  font-size: 3.2rem;
  color: #3061b7;
  margin-right: 20px;
  padding-left: 0;
  padding-right: 0;
}
.h4_detail {
  font-size: 1.3rem;
  padding-left: 56px;
}
.re_list {
  margin-top: 20px;
  padding-left: 53px;
  font-size: 1.6rem;
}
.re_list li {
  margin-bottom: 10px;
}
.re_list li:last-child{
	margin-bottom: 0;
}
.re_detail_p {
  font-size: 1.3rem;
  line-height: 1.6rem;
  padding-left: 80px;
}
.re_list_detail {
  padding-left: 106px;
}
.re_p {
  font-size: 1.6rem;
  padding-left: 53px;
  margin-top: 20px;
}
.re_tel span {
  font-size: 2.4rem;
  letter-spacing: 0.1rem;
  font-weight: 400;
}
p.re_time {
  font-size: 1.6rem;
  font-weight: 300;
}
p.re_caution {
  font-size: 1.3rem;
  padding-top: 19px;
  font-weight: 300;
}
.re_tel_detail {
  column-gap: 30px;
  margin-top: 14px;
  padding-left: 8px;
}
.mark_student {
  margin-top: 0;
  padding-left: 53px;
}
@media screen and (min-width: 781px) and (max-width: 1120px) {
  div.ti_button_box {
    display: block;
    text-align: center;
  }
  .ti_button_re_net {
    margin-bottom: 20px;
  }
  .shb_con {
    display: block;
  }
  .shb_con1 {
    width: 100%;
    margin-bottom: 30px;
  }
  a.shb_button{
    width: 65%;
	margin: 0;
  }
	a.re_button{
		width: 100%;
	}
}
@media screen and (max-width: 780px) {
  br.spOnly {
    display: block;
  }
  .ti_container, .shbfam_container, .reservation {
    padding: 0 20px;
  }
  div.ti_button_box {
    display: block;
  }
  a.ti_button {
    width: 100%;
    height: 100px;
    font-size: 1.6rem;
    margin-bottom: 15px;
  }
  .ti_button .text_pink {
    font-size: 1.2rem;
    letter-spacing: normal;
  }
  .ti_button_con {
    margin-top: 30px;
  }
  .ti_button .fa-globe, .ti_button .fa-phone {
    font-size: 2.8rem;
    margin-right: 10px;
  }
  .shb_con {
    margin-top: 24px;
    display: block;
  }
  .shb_con1 {
    width: 100%;
    padding-left: 0;
  }
  .shb_con h3 {
    font-size: 2.4rem;
  }
  a.shb_button {
    font-size: 1.2rem;
    width: 100%;
  }
  .shb_button span {
    padding-left: 20px;
  }
  .reservation a.jump_point {
    padding-top: 75px;
    margin-top: -75px;
  }
  .re_bg_blue {
    font-size: 1.8rem;
    margin-bottom: 35px;
  }
  .reservation .fa-globe, .reservation .fa-phone {
    font-size: 2.4rem;
  }
  .re_con_step, .re_con_step_tel {
    padding: 0;
  }
  .step1, .step2 {
    display: block;
  }
  .step_title {
    width: 100%;
  }
  .step1 .re_bg_skyblue {
    width: 100%;
  }
  .step_text {
    margin-left: 10px;
    font-size: 2.0rem;
  }
  .re_bg_green span {
    font-size: 1.4rem;
  }
  .re_detail p, .re_detail p span {
    font-size: 1.4rem;
  }
  .re_bg_green {
    width: 100px;
    height: 30px;
  }
  .re_flex {
    display: block;
  }
  .re_bg_skyblue {
    padding: 20px 24px;
  }
  a.re_button {
    font-size: 1.2rem;
    width: 100%;
  }
  a.re_button span {
    padding-left: 0;
  }
  .mark_green {
    font-size: 1.4rem;
  }
  .step {
    font-size: 1.8rem;
  }
  .step span {
    font-size: 2.8rem;
  }
  .h4_flex {
    display: block;
    text-align: center;
  }
  .h4_flex h4 {
    font-size: 1.8rem;
  }
  .h4_detail, .re_list, .re_detail_p, .re_list_detail, .re_p, .mark_student {
    padding-left: 0;
  }
  .step2 .re_bg_skyblue {
    text-align: center;
  }
  .re_list, .re_detail_p, .re_p, .mark_student {
    text-align: left;
  }
}
/*---------------------page-shb_family------------------------*/
p.small_read {
  text-align: center;
  margin-bottom: 65px;
}
.shbfam_container .special_read {
  padding-bottom: 1%;
}
.shbfam_img {
  max-width: 778px;
  margin: 0 auto;
}
.shbfam_spe_li {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  column-gap: 20px;
  margin-top: 112px;
  margin-bottom: 95px;
  padding-left: 0;
}
.spe_deco {
  background-color: #e04462;
  width: 100px;
  height: 100px;
  border-radius: 100px;
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%);
}
.spe_deco_text {
  color: #ffffff;
  font-size: 2.2rem;
  padding-top: 19px;
  padding-left: 19px;
  font-weight: 200;
}
.spe_deco_number {
  font-size: 3.0rem;
  padding-left: 2px;
}
.spe_h4 {
  display: inline-block;
  background-color: #feeef1;
  font-size: 1.8rem;
  color: #003c88;
  text-align: center;
  width: 264px;
  height: 70px;
  line-height: 2.4rem;
  padding-top: 24px;
}
.spe_h4_patop {
  padding-top: 12px;
}
.spe_des {
  font-size: 1.3rem;
  text-align: center;
  color: #003c88;
  margin-top: 20px;
  margin-bottom: 20px;
  font-feature-settings: "palt";
}
.spe_det {
  font-size: 1.2rem;
  margin-bottom: 0;
  text-align: left;
  font-weight: 400;
}
.spe_add {
  font-size: 1.2rem;
  text-align: left;
  padding-left: 11px;
}
.spe_mk {
  background: linear-gradient(transparent 58%, #ffff43 40%);
}
.spe_li_box {
  border: solid 1px #e04462;
  padding-left: 23px;
  padding-right: 23px;
  padding-top: 60px;
  padding-bottom: 25px;
  text-align: center;
  width: 320px;
  height: 360px;
}
.spe_det_box {
  padding-left: 17px;
}
.shbfam_spe_li li {
  position: relative;
}
.shbfam_spe_li li::before {
  content: "";
  position: absolute;
  background-color: #ffffff;
  width: 128px;
  height: 100px;
  left: 50%;
  transform: translate(-50%, -50%);
}
.shbfam_info {
  max-width: 884px;
  margin: 0 auto;
}
.info_h4 {
  text-align: center;
  font-size: 2.5rem;
  color: #003c88;
  font-weight: 200;
  position: relative;
}
.info_h4::before {
  content: "";
  position: absolute;
  width: 580px;
  border: solid 0.5px #003c88;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}
.info_h4::after {
  content: "";
  width: 340px;
  height: 25px;
  background-color: #ffffff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}
.info_con {
  margin-top: 48px;
}
.info_det {
  border-bottom: solid 1px #feeef1;
  display: flex;
  padding-top: 4px;
  padding-bottom: 4px;
}
.info_det:first-child {
  border-top: solid 1px #feeef1;
}
.info_cap {
  width: 215px;
  background-color: #feeef1;
  color: #003c88;
  text-align: center;
  font-size: 1.8rem;
  font-weight: 400;
  padding: 23px;
}
.info_des {
  padding-left: 38px;
  padding-top: 23px;
  font-size: 1.8rem;
  font-weight: 400;
}
.info_p {
  font-size: 1.8rem;
  text-align: center;
  font-weight: 400;
  margin-top: 37px;
  margin-bottom: 90px;
}

.pfm_list_wrap{
padding:0 10% 30px 10%;
display: flex;
justify-content: center;
}

@media screen and (min-width: 781px) and (max-width: 1120px){
	.shbfam_spe_li li{
		margin-bottom: 75px;
	}
	.shbfam_spe_li li:last-child{
		margin-bottom: 0;
	}
	.shbfam_info{
		padding: 0 2%;
		width: 100%;
	}
	.shbfam_spe_li{
		margin-bottom: 0;
	}
}
@media screen and (max-width: 780px) {
  p.small_read {
    margin-bottom: 38px;
  }
  .shbfam_spe_li {
    padding: 0 20px;
    margin-top: 90px;
    margin-bottom: 17px;
  }
  .spe_li_box {
    margin-bottom: 70px;
  }
  .spe_box_last {
    margin-bottom: 45px;
    height: 250px;
  }
  .info_h4 {
    font-size: 1.8rem;
  }
  .info_det {
    display: block;
  }
  .info_cap {
    font-size: 1.2rem;
    width: 100%;
    padding: 10px;
  }
  .info_des {
    padding-left: 0;
    text-align: left;
    font-size: 1.2rem;
    padding: 16px;
  }
  .info_det:last-child {
    border-bottom: solid 1px #feeef1;
    padding-bottom: 35px;
  }
  .info_h4::before {
    width: 300px;
  }
  .info_h4::after {
    width: 185px;
  }
  .shbfam_info {
    padding: 0 20px;
  }
  .info_des_center {
    text-align: center;
  }
  .info_p {
    text-align: left;
    font-size: 1.3rem;
    margin-top: 20px;
    margin-bottom: 55px;
  }
}
/*==============================
　　　　　　2025年度　セット券
==============================*/
.h-type01{
	color: #003c88;
    font-size: 150%;
    text-align: center;
    margin-bottom: 3%;
    line-height: 1.6;
	margin-top: 5%;
}
#press_list_all #main{
	margin-bottom: 5%;
}
.set_ticket{
	text-align: center;
}
.set_ticket p{
	display: inline-block;
	text-align: left;
	margin-bottom: 2.2em;
	font-size: 1.5rem;
}
.uketsuke_info{
	color: #003c88;
	font-size: 1.8rem;
	font-weight: 500;
	border: solid 1px #003c88;
	width: 570px;
	height: 140px;
	margin: 0 auto 60px;
	padding: 1em;
}
.uketsuke_info > div{
	display: inline-block;
	padding-left: 1em;
}
.t-date{
	font-size: 3.4rem;
	font-weight: 800;
	letter-spacing: 0.18em;
	line-height: 1.4em;
}
.t-week{
	font-size: 2.5rem;
	font-weight: 500;
}
.caution{
	background-color: #eaeff8;
	width: 82%;
	margin: 0 auto;
	padding: 3% 6%;
}
.fa-triangle-exclamation{
	color: #3061b7;
	font-size: 3.8rem;
}
.caution h4{
	font-size: 2.3rem;
	font-weight: 300;
}
.caution ul li{
	text-align: left;
	line-height: 2.2em;
}
.caution_ttl{
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 2%;
	margin-bottom: 0.4em;
	margin-left: -1.5em;
}
.set_ticket{
	margin-bottom: 130px;
}
.koen_box{
	display: flex;
	justify-content: space-between;
	column-gap: 5%;
	align-items: center;
	padding-right: 3%;
}
.koen_list > li > span{
	font-weight: 300;
}
.koen_list h3{
	font-size: 2.5rem;
	font-weight: 600;
	border-bottom: solid 1px #3061b7;
	line-height: 2em;
	margin-bottom: 0.5em;
}
.koen_img{
	width: 50%;
}
.koen_txt ul{
	font-size: 1.7rem;
}
ul.koen_nittei{
	margin-bottom: 1.2em;
}
ul.koen_detail{
	margin-bottom: 2em;
}
.price{
	background-color: #eaeff8;
	padding: 1em 1.2em;
	color: #3061b7;
	margin-bottom: 35px;
}
.price span{
	font-size: 1.8rem;
	color: #ff0000;
	font-weight: 600;
}
.price small{
	font-size: 1.4rem;
}
.koen_f{
	display: flex;
	margin-bottom: 1em;
}
.koen_list > li:not(:last-child){
	margin-bottom: 80px;
}
.koen_list > li:last-child{
	margin-bottom: 50px;
}
.good-value{
	font-size: 1.8rem;
	font-weight: 500;
	color: #3061b7;
	border: solid 1px #3061b7;
	width: 55%;
	margin: 0 auto;
	text-align: center;
	padding: 2em 0;
}
.good-value span{
	font-size: 3.0rem;
	font-weight: 600;
	color: #f85674;
	border-bottom: solid 2px #f85674;
	letter-spacing: 0.09em;
}
.set_ticket_flow{
	background-color: #f6f6f8;
	margin-bottom: 70px;
}
.set_ticket_flow h3{
	color: #003c88;
	font-size: 150%;
	border-bottom: solid 1px #3061b7;
	line-height: 2.2em;
	padding-top: 3em;
	margin-bottom: 2em;
}
.flow_list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.flow_list > li{
	background-color: #ffffff;
	width: 32.3%;
	padding: 3.5em 1.6em;
}
.flow_icon{
	color: #3061b7;
	font-size: 5.5rem;
	margin-bottom: 20px;
}
.flow_list > li h4{
	font-size: 2.0rem;
	font-weight: 600;
	color: #3061b7;
	letter-spacing: 0.08em;
	margin-bottom: 0.7em;
}
.flow_ttl{
	text-align: center;
}
.flow_list p{
	font-size: 1.4rem;
}
.payment li{
	font-size: 1.4rem;
	margin-bottom: 1em;
}
.payment span{
	font-size: 1.3rem;
}
.page_container_set_ticket{
	max-width: 1056px;
    padding: 0 20px 80px;
    margin-left: auto;
    margin-right: auto;
}
.under600{
	display: none;
}
@media screen and (max-width: 1050px){
	.flow_list{
		justify-content: center;
		column-gap: 3%;
		grid-row-gap: 30px;
	}
	.flow_list > li{
		width: 34%;
	}
	.page_container_set_ticket{
		max-width: 940px;
	}
}
@media screen and (max-width: 900px){
	.koen_box{
		flex-direction: column-reverse;
		grid-row-gap: 30px;
		padding-top: 20px;
		padding-right: 0;
	}
	.koen_img{
		width: 80%;
	}
	.flow_list > li{
		width: 50%;
	}
	.set_ticket{
		margin-bottom: 80px;
	}
	.t-date{
		font-size: 2.8rem;
	}
	.t-week{
		font-size: 1.9rem;
	}
	.uketsuke_info{
		width: 470px;
		height: 120px;
		font-size: 1.4rem;
		padding-top: 1.4em;
		margin-bottom: 40px;
	}
	.caution h4{
		font-size: 1.8rem;
	}
	.fa-triangle-exclamation{
		font-size: 3.2rem;
	}
	.koen_ttl{
		width: 80%;
		margin: 0 auto;
	}
	.set_ticket_flow h3{
		padding-top: 1.5em;
	}
	.koen_txt{
		width: 80%;
	}
}
@media screen and (max-width: 780px){
	#press_list_all #main{
		margin-bottom: 6%;
	}
}
@media screen and (max-width: 600px){
	.t-date{
		font-size: 2rem;
	}
	.t-week{
		font-size: 1.5rem;
	}
	.uketsuke_info{
		width: 100%;
		height: auto;
		padding-top: 1em;
		padding-bottom: 1.4em;
	}
	.uketsuke_info > div{
		padding-left: 0.5em;
	}
	.set_ticket p{
		font-size: 1.4rem;
		margin-bottom: 1.5em;
	}
	.caution{
		width: 100%;
		padding: 7.5% 7.5%;
	}
	.under600{
		display: block;
	}
	.h-type01{
		margin-bottom: 5%;
	}
	.uketsuke_info{
		margin-bottom: 25px;
	}
	.set_ticket{
		margin-bottom: 40px;
	}
	.koen_ttl{
		width: 100%;
	}
	.koen_img{
		width: 100%;
	}
	.koen_box{
	grid-row-gap: 20px;	
	}
	.koen_list h3{
		margin-bottom: 0;
		font-size: 2.2rem;
	}
	.koen_txt ul{
		font-size: 1.4rem;
	}
	.koen_list > li:not(:last-child){
		margin-bottom: 40px;
	}
	.good-value{
		width: 100%;
	}
	.good-value span{
		font-size: 2.2rem;
		display: inline-block;
		margin-bottom: 0.5em;
	}
	.good-value{
		font-size: 1.6rem;
	}
	.flow_list > li{
		width: 100%;
	}
	.flow_icon{
		font-size: 4.5rem;
	}
	.koen_txt{
		width: 100%;
	}
}









