@charset "utf-8";
/* @import url('https://fonts.googleapis.com/css2?family=Architects+Daughter&family=Luckiest+Guy&family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&family=Outfit:wght@100..900&family=Permanent+Marker&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap'); */
/*--------------------------------------------------------*/


.center {
	margin: auto;
}
.sub_main .h2 {
	color: var(--base-color-yellow);
}
.sub_main .h2_span  {
	background-color: var(--base-color-yellow);
	color: var(--base-color-white);
}

.sub_main section {
	margin-bottom: min(13vw, 6.5em);
}

@media screen and (max-width: 1000px) {
    .sb-top-section-highlight {
          margin-bottom: min(17vw, 6.5em);
    }
}
/* ----------
サブページトップ画像
----------- */

.sb-top-section-news {
    position: relative;
    overflow: hidden;
    width: 100%;
    z-index: 4;
    height:clamp(122px, 19.88889vw + 33.33333px, 350px);
	background-image: url(../img/pc_news.webp);
    background-position-y: 100%;
	background-size:cover;
	background-repeat: no-repeat;
}
.sb-top-section-outline {
    position: relative;
    overflow: hidden;
    width: 100%;
    z-index: 4;
    height: clamp(122px, 19.88889vw + 33.33333px, 350px);
	background-image: url(../img/pc_outline.webp);
    background-position-y: 100%;
	background-size:cover;
	background-repeat: no-repeat;
}
.sb-top-section-highlight {
    position: relative;
    overflow: hidden;
    width: 100%;
    z-index: 4;
    height: clamp(122px, 19.88889vw + 33.33333px, 350px);
	background-image: url(../img/pc_highlight.webp);
    background-position-y: 100%;
	background-size:cover;
	background-repeat: no-repeat;
}
.sb-top-section-goods {
    position: relative;
    overflow: hidden;
    width: 100%;
    z-index: 4;
    height:clamp(122px, 19.88889vw + 33.33333px, 350px);
	background-image: url(../img/pc_goods.webp);
    background-position-y: 100%;
	background-size:cover;
	background-repeat: no-repeat;
}
.sb-top-section-ticket {
    position: relative;
    overflow: hidden;
    width: 100%;
    z-index: 4;
    height:clamp(122px, 19.88889vw + 33.33333px, 350px);
	background-image: url(../img/pc_ticket.webp);
    background-position-y: 100%;
	background-size:cover;
	background-repeat: no-repeat;
}
.sb-top-section-caution {
    position: relative;
    overflow: hidden;
    width: 100%;
    z-index: 4;
    height: clamp(122px, 19.88889vw + 33.33333px, 350px);
	background-image: url(../img/pc_caution.webp);
    background-position-y: 100%;
	background-size:cover;
	background-repeat: no-repeat;
}

@media screen and (max-width: 500px){
	.sb-top-section-news {
	background-image: url(../img/sp_news.webp);
}
.sb-top-section-outline {
    position: relative;
    overflow: hidden;
    width: 100%;
    z-index: 4;
    height: clamp(122px, 19.88889vw + 33.33333px, 300px);
	background-image: url(../img/sp_outline.webp);
    background-position-y: 23%;
	background-size:cover;
	background-repeat: no-repeat;
}
.sb-top-section-highlight {
    position: relative;
    overflow: hidden;
    width: 100%;
    z-index: 4;
    height: clamp(122px, 19.88889vw + 33.33333px, 300px);
	background-image: url(../img/sp_highlight.webp);
    background-position-y: 41%;
	background-size:cover;
	background-repeat: no-repeat;
}
.sb-top-section-goods {
    position: relative;
    overflow: hidden;
    width: 100%;
    z-index: 4;
    height:clamp(122px, 19.88889vw + 33.33333px, 300px);
	background-image: url(../img/sp_goods.webp);
    background-position-y: 36%;
	background-size:cover;
	background-repeat: no-repeat;
}
.sb-top-section-ticket {
    position: relative;
    overflow: hidden;
    width: 100%;
    z-index: 4;
    height:clamp(122px, 19.88889vw + 33.33333px, 300px);
	background-image: url(../img/sp_ticket.webp);
    background-position-y: 23%;
	background-size:cover;
	background-repeat: no-repeat;
}
.sb-top-section-caution {
    position: relative;
    overflow: hidden;
    width: 100%;
    z-index: 4;
    height: clamp(122px, 19.88889vw + 33.33333px, 300px);
	background-image: url(../img/sp_caution.webp);
    background-position-y: 34%;
	background-size:cover;
	background-repeat: no-repeat;
}
}



.sb_h2_container {
	position: absolute;
	top: calc(50% + 0.5em);
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);	
}

.sb_h2 { 
    display: grid;
    font-family: var(--font_ttl_suruga);
    font-size: var(--font-size-main-ttl-en);
    color: var(--base-color-white);
    letter-spacing: clamp(0.3rem, 0.233rem + 0.29vw, 0.5rem);
    margin-bottom: 0!important;
	text-align: center;
	white-space: nowrap;
}

.sb_h2 span {
    background-color: var(--base-color-white);
    color: var(--base-color-blue);
}

.sub_inner {
	max-width: 1100px;
    margin: 6% auto 4%;
	padding: 0 4%;
}

.sub_main {
	font-size: var(--font-size-16px);
	text-align: left;
	padding: 63px 0;
	/* background-image: url(../img/sbbg.png); */
	background-size: 3%;
  /* opacity: .7; */
}

.news,.outline,.caution,.ticket,.highlight {
	border-radius: min(6vw, 2em);
	border: min(1vw, .3em) solid var(--base-color-blue);	
	background-color: var(--base-color-white);
	padding: min(8vw, 4rem) min(4vw, 4rem);
}

dt {
	background-color: var(--base-color-yellow);
	color: var(--base-color-white);
	display: inline-block;
	padding: min(2vw, .2em) min(2vw, .6em);
	border-radius:min(1.6vw,.5em) min(1.6vw,.5em) 0 0;
	margin-bottom: -1px;
	font-size: clamp(0.813rem, 0.792rem + 0.09vw, 0.875rem);
}
dd {
	padding: min(1.2vw, 1em) 0 min(6vw, 2em);
	border-top: 1px dashed var(--base-color-yellow);
	line-height: min(6vw, 1.5em);
}

.small_tx {
	font-size: clamp(0.75rem, 0.729rem + 0.09vw, 0.813rem);
	font-weight: var(--font-weight-regular);
}

@media screen and (max-width: 1000px){
	.sub_main {
	    padding: 60px 0;
		background-size: 15%;	
	}
}
/* ------------
news
------------ */
.news .news_date {
    color: var(--base-color-blue);
}

.news .news_ttl {
    font-size: var(--font-size-24px);
    font-weight: var(--font-weight-bold);    
    color: var(--tx_base-color-black);
}

.news_ttl_border {
  height: 1px;
  background-color: var(--base-color-blue);
  margin: min(2vw, 1.2em) 0;
}

section.news.fadein-up.article {
  margin-bottom: 5%!important;
}

.news_photo img {
  width: 100%;
}
.news_photo {
  width: 100%;
  margin: 0 auto 5%;
}





/* ------------
caution
------------ */

.caution h4 {
	margin-bottom: min(3vw, 1em);
	font-size: clamp(1.125rem, 1.083rem + 0.18vw, 1.25rem);

}

.caution ul li {
	list-style: disc;
    margin-left: 1.5rem;
	line-height: min(6vw, 1.5em);
	margin-bottom: min(3vw, .5em);
}
.caution ul .circle {
	list-style: none;
    position: relative;
	padding-left: 1em;
}
.caution ul .circle::before {
	content: "◦";
	position: absolute;
	left: 0;
	top: 0.1em;
}

/* ------------
tickets
------------ */
h5 {
	margin-bottom: 0.5rem;
    border-left: 6px solid var(--base-color-yellow);
    padding-left: 0.5rem;
    line-height: 1.2;
	font-size: var(--font-size-16px);
	color: var(--base-color-yellow);
}

table,td,th {
	border: 1px solid #7f8281;
	border-collapse: collapse;
	font-size: clamp(0.813rem, 0.792rem + 0.09vw, 0.875rem);
	margin-top: 1%;
}

td, th {
	padding: 3px;
	width: 250px;
	height: 25px;
}
th {
	background: #d7d7d7;
}
.even {
	background: #fbf8f0;
}
.odd {
	background: #fefcf9;
}

.ticket span {
	font-size: clamp(0.813rem, 0.792rem + 0.09vw, 0.875rem);
}
.span_a {
	font-weight: var(--font-weight-regular);
}

.ticket dl {
	margin-top: 2%;
}

.ticket_caution_list li {
	list-style: disc;
	margin-left: 2em;
}

.ticket_detail_box {
	background-color: #fff8e0;
	padding: 2%;
	border-radius: min(1.6vw,.5em);
}
.ticket_detail_tx {
	text-align: center;
	color: var(--base-color-yellow);
	font-weight: var(--font-weight-bold);
}
.border {
	border: .5px solid var(--base-color-blue);
	display: block;
}

.g_cf img {
	width: 100%;
}
.g_cf {
	max-width: 600px;
	margin: auto;
}
/* ------------
.outline
------------ */
.outline a,
.news a {
	text-decoration: underline;
	color: #0f7174;
}


/* ------------
highlight
------------ */
.h6 {
	font-family: "Permanent Marker", cursive;
    font-size: 56px;
    position: absolute;
    top: 21px;
    left: 42%;
    rotate: -10deg;
    color: var(--base-color-blue);
}
.h6 .span_point {
	font-size: 80px;
}
.span_hl_tx {
	font-size: clamp(1.125rem, 0.875rem + 1.08vw, 1.875rem);
	font-weight: var(--font-weight-bold);
	display: block;
	text-align: center;
  padding-bottom: 1%;
}

.h6::after {
	background-image: url(../img/marker.png);
	height: 50px;
}
.highlight {
	margin-bottom: ;
}

.hl_photo_box1 img {
	width: 100%;
	height: 600px;
}
.hl_photo_box1,
.hl_photo_box2,
.hl_photo_box3 {
	/* padding: 0 min(4vw, 4rem); */
}

.hl_photo_box1 {
	display: flex;
}

.hl_photo_box2 {
	max-width: 1000px;
	margin: auto;
  /* height: 400px; */
}
.hl_photo_box3 {
	max-width: 1000px;
	margin: auto;
}

.highlight_point {
  position: relative;
  display: block;
  width: fit-content;
 margin: min(1vw,-6.5em) auto 5%;
}

.highlight_point_img img {
  max-width: 350px;   /* ←好きな大きさに変更 例：300px */
  height: auto;   /* 縦横比を維持 */
  display: block;
}

.highlight_point p {
  position: absolute;
  top: 35%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  font-size: var(--font-size-30px);
  font-family: var(--font_main_serif);
  font-weight: var(--font-weight-bold);
  white-space: nowrap;
}

.highlight_point_accent {
	  color: var(--accents-color-yellow);
    font-size: clamp(1.5rem, 1.125rem + 1.62vw, 2.625rem);
    position: relative;
    top: 0.03em;  
}

.point_tx {
  font-size: var(--font-size-20px);
  line-height: min(6vw, 1.5em);

}
@media screen and (max-width: 600px){
	.highlight_point_img img {
		max-width: 250px;
	}
	.highlight_point {
		margin: min(1vw, -4.5em) auto 5%;
	}
}
@media screen and (max-width: 400px){
	.highlight_point {
		margin: min(1vw, -3.9em) auto 5%;
	}	
}
/* ------スライダー------- */
.sliderArea {
  max-width: 100%;
  margin: 0 auto;
  padding: 0 25px;
}
.sliderArea.w300 {
  max-width: 300px;
}
.slick-slide {
  margin: 0 5px;
}
.slick-slide img {
  width: 100%;
  height: auto;
}
.slick-prev, .slick-next {
  z-index: 1;
}
.slick-prev:before, .slick-next:before {
  color: #000;
}
.slick-slide {
  transition: all ease-in-out .3s;
  /* opacity: .2; */
}
.slick-active {
  /* opacity: 1; */
}
.slick-current {
  /* opacity: 1; */
}
.thumb {
  margin: 20px 0 0;
}
.thumb .slick-slide {
  cursor: pointer;
}
.thumb .slick-slide:hover {
  /* opacity: .7; */
}

.slick-prev:before, .slick-next:before {
    color: #4d7e8d;
}

/* ----------
slick
---------- */

.slick-prev:before, .slick-next:before {
  font-size: 33px;
}
.slick-prev {
    left: -35px;
}

.sliderArea3 {
max-width: 600px; /* ← 好きな幅に */
margin: 0 auto;   /* 中央寄せ */
padding: 0 25px;  /* 既存と合わせるなら */
}

@media screen and (max-width: 600px){
	.highlight_point {
		margin: min(1vw, -3.9em) auto 5%;
	}
  .slick-prev:before, .slick-next:before {
  font-size: 22px;
  }
  .slick-prev {
      left: -25px;
  }	
}
/* -------------------- */


/* ------会場マップ------ */
.venue_map_ttl {
	background-color: var(--base-color-blue);
	color: var(--base-color-white);
	text-align: center;
	padding: 12px;
	font-size: var(--font-size-20px);
}

.lity-content img {
    max-width: 80%;  
    max-height: 80vh;
}
/* --------サムネイル表示----- */
.bl_imgSwitcher_main {
	border: 1px solid #a0d0d2;
	padding: 1%;
}
.bl_imgSwitcher {
  inline-size: min(100%, 712px);
  margin-inline: auto;
  margin-block: 1.5rem;
}

/* メイン画像 */
.bl_imgSwitcher_main img {
  aspect-ratio: 3/2;
  inline-size: 100%;
  object-fit: contain;
  border-radius: 20px;
  transition: opacity .4s cubic-bezier(.25, 1, .5, 1);
}

/* サムネイルのエリア */
.bl_imgSwitcher_thumb {
  display: flex;
  gap: 0 2%;
  margin-block-start: 1rem;
  /* overflow-x: scroll; */
}

/* サムネイルの各ボタン */
.bl_imgSwitcher_btn {
  flex-shrink: 0;
  max-width: 100px;
  aspect-ratio: 1;
  overflow: hidden;
  position: relative;
  border: 1px solid #a0d0d2;

  &::before {
    content: "";
    border-radius: inherit;
    position: absolute;
    inset: 0;
    z-index: 10;
    transition: background-color .4s;
  }

  &:focus-visible::before {
    background-color: var(--overlay-color);
  }

  img {
    aspect-ratio: 1;
    inline-size: 100%;
    object-fit: cover;
  }
}

@media (any-hover: hover) {
  .bl_imgSwitcher_btn:hover::before {
    background-color: var(--overlay-color);
  }
}

/* is_activeクラスが付与されたら、サムネイルに半透明の黒背景を適用 */
.bl_imgSwitcher_btn.is_active::before {
  background-color: var(--overlay-color);
}

/* ----------
原稿用紙位置調整
---------- */
.mako,
.ao,
.gou,
.regomu,
.regosi,
.santa,
.taika,
.emi,
.santa_b,
.haru,
.rui {
  pointer-events: none;
}

/* サブトップ下 */
.sb-top-section-news,
.sb-top-section-outline,
.sb-top-section-highlight,
.sb-top-section-ticket,
.sb-top-section-goods,
.sb-top-section-caution {
  margin-bottom: min(30vw, 16.5em)!important;
}

.outline_section_1,
.highlight_section_1,
.ticket_section_1,
.caution_section_1,
.goods_section_1,
.news_section_1 {
  position: relative;
  z-index: 1;
  
}
.ao {
position: absolute;
top: 327px;
right: 0%;
width: 45%;
}
.gou {
position: absolute;
top: 327px;
right: 0%;
width: 45%;
}
.regomu {
position: absolute;
top: 327px;
right: 0%;
width: 45%;
}
.mako {
position: absolute;
top: 327px;
right: 0%;
width: 45%;
}
.regosi {
position: absolute;
top: 327px;
right: 0%;
width: 45%;
}
.santa {
position: absolute;
top: 327px;
right: 0%;
width: 45%;
}

/* SNSの横 */
.outline_section_2,
.highlight_section_2,
.goods_section_2,
.news_section_2  {
  position: relative;
  z-index: -1;
  /* overflow: hidden; */
}
.taika {
position: absolute;
left: -500px;
z-index: -1;
bottom: -300px;
width: 90%;
}
.emi {
position: absolute;
left: -500px;
z-index: -1;
bottom: -300px;
width: 90%;
}
.santa_b {
position: absolute;
left: -500px;
z-index: -1;
bottom: -300px;
width: 90%;
}
.haru {
position: absolute;
left: -500px;
z-index: -1;
bottom: -300px;
width: 90%;
}

.sub_main_news  {
	padding-bottom: 300px;
}
.rui {
position: absolute;
bottom: -600px;
z-index: -2;
width: 70%;
right: -400px;
}

@media screen and (max-width: 1600px){
.sb-top-section-outline,
.sb-top-section-highlight {
margin-bottom: min(24vw, 9.5em);	
}
.sub_inner section {
margin-bottom: min(10vw, 21.5em);
} 
.taika {
left: -375px;
bottom: -352px;
width: 70%;
}
.santa_b {
left: -375px;
bottom: -352px;
width: 70%;
}
.emi {
left: -375px;
bottom: -352px;
width: 70%;
}
.haru {
left: -375px;
bottom: -352px;
width: 70%;
}
.rui {
right: -335px;
bottom: -500px;
width: 57%;
}

}
@media screen and (max-width: 1500px){
.taika {
left: -301px;
bottom: -352px;
width: 65%;
}
.santa_b {
left: -301px;
bottom: -352px;
width: 65%;
}
.emi {
left: -301px;
bottom: -352px;
width: 65%;
}
.haru {
left: -301px;
bottom: -352px;
width: 65%;
}
}

@media screen and (max-width: 1400px){
.sb-top-section-outline,
.sb-top-section-highlight {
margin-bottom: min(24vw, 16.5em);
}
.sub_inner section {
margin-bottom: min(13vw, 21.5em);
}
.rui {
right: -150px;
bottom: -427px;
width: 50%;
}
}

@media screen and (max-width: 1300px){  
.sub_inner section {
margin-bottom: min(13vw, 21.5em);
} 
.sub_main_news {
padding-bottom: 211px;
}
.rui {
right: -125px;
z-index: -2;
width: 50%;
}
.ao {
top: 280px;
}
.mako {
top: 280px;
}
.regomu {
top: 280px;
}
.gou {
top: 280px;
}
.regosi {
top: 280px;
}
.santa {
top: 280px;
}
.taika {
left: -230px;
bottom: -300px;
}
.emi {
left: -230px;
bottom: -300px;
}
.santa_b {
left: -230px;
bottom: -300px;
}
.haru {
left: -230px;
bottom: -300px;
}
.rui {
right: -102px;
bottom: -390px;
z-index: -2;
width: 50%;
}

}
@media screen and (max-width: 1200px){  
.sub_main {
    position: relative;
    overflow: hidden;
}
.ao {
top: 253px;
right: -42px;
}
.mako {
top: 253px;
right: -42px;
}
.regomu {
top: 253px;
right: -42px;
}
.gou {
top: 253px;
right: -42px;
}
.regosi {
top: 253px;
right: -42px;
}
.santa {
top: 253px;
right: -42px;
}
.taika {
left: -227px;
top: -279px;
}
.emi {
left: -227px;
top: -279px;
}
.haru {
left: -227px;
top: -279px;
}
.santa_b {
left: -227px;
top: -279px;
}
.rui {
right: -79px;
bottom: -350px;
z-index: -2;
width: 50%;
}
}
@media screen and (max-width: 900px){
.ao {
  top: 180px;
  width: 60%;
  right: -6%;
}
.mako {
  top: 180px;
  width: 60%;
  right: -6%;
}
.regomu {
  top: 180px;
  width: 60%;
  right: -6%;
}
.gou {
  top: 180px;
  width: 60%;
  right: -6%;
}
.regosi {
  top: 180px;
  width: 60%;
  right: -6%;
}
.santa {
  top: 180px;
  width: 60%;
  right: -6%;
}
.taika {
  top: -150px;
  width: 60%;
  left: -13%;
}
.santa_b {
 top: -150px;
  width: 60%;
  left: -13%;
}
.emi {
  top: -150px;
  width: 60%;
  left: -13%;
}
.haru {
  top: -150px;
  width: 60%;
  left: -13%;
}
.rui {
right: -69px;
bottom: -460px;
z-index: -2;
width: 50%;
}
}
@media screen and (max-width: 800px){
.taika {
width: 60%;
left: -11%;
top: -140px;
}
.emi{
width: 60%;
left: -11%;
top: -140px;
}
.santa_b{
width: 60%;
left: -11%;
top: -140px;
}
.haru{
width: 60%;
left: -11%;
top: -140px;
}
}
@media screen and (max-width: 700px){
.taika {
  left: -11%;
  top: -95px;
}
.santa_b {
  left: -11%;
  top: -95px;
}
.haru {
  left: -11%;
  top: -95px;
}
.rui {
right: -53px;
width: 50%;
bottom: -280px;
}

}
@media screen and (max-width: 500px){
.ao {
width: 60%;
top: 153px;
}
.mako {
width: 60%;
top: 153px;
}
.regomu {
top: 153px;
width: 60%;
}
.regosi {
top: 153px;
width: 60%;
}
.gou {
top: 153px;
width: 60%;
}
.santa {
top: 153px;
width: 60%;
}
.taika {
left: -50px;
width: 70%;
top: -95px;
}
.santa_b {
left: -50px;
width: 70%;
top: -95px;
}
.emi {
left: -50px;
width: 70%;
top: -95px;
}
.haru {
left: -50px;
width: 70%;
top: -118px;
}
.rui {
right: -53px;
width: 70%;
bottom: -319px;
}
}
@media screen and (max-width: 400px){
.sb-top-section-outline {
margin-bottom: min(30vw, 16.5em);
}
.sub_inne section {
  margin-bottom: min(23vw, 21.5em);
}
.ao {
top: 153px;
right: -4%;
}
.mako {
top: 153px;
right: -4%;
}
.regomu {
top: 153px;
right: -4%;
}
.santa {
top: 153px;
right: -4%;
}
.gou {
top: 153px;
}
.regosi {
top: 153px;

}
.taika {
left: -50px;
width: 70%;  
}
.santa_b {
left: -50px;
width: 70%;  
}
.emi {
left: -50px;
width: 70%;  
}
.haru {
left: -50px;
width: 70%;  
}
.rui{
right: -32px;
top: 163px;
z-index: -2;
width: 57%;
}
.sub_main_news {
	padding-bottom: 135px;
}
}

.italic {
	font-style: italic;
}

