@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

.content{ margin-top: 0;}

.home .wrap{width: 100%;}

.en{
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.main{
  padding: 0;
  border: 0;
}

.body{
  line-height: 1.5;
}

.body.white{background: #fff!important;}

.error404 .sidebar{
  display: none;
}

.error404 .main{
  width: 100%;
}

.green{
  color: #01B9A8; 
}

li{list-style: none;}

ul{padding-left: 0;}

/*********************************************************

					　　　　初期設定

**********************************************************/

html{
	font-size: 62.5%; /*1rem=10px*/
	box-sizing: border-box;
	scroll-behavior: smooth;
}


body{
	line-height: 1.5;
	margin: 0 auto;
	padding: 0;
	width: 100%;
  font-family: "Noto Sans JP", serif;
  font-weight: 400;
  font-style: normal;
}

.pc{display: block;}

.sp{display: none;}

a{
text-decoration: none;
color: #333;
}


.inner{
  position: relative;
  width: 90%;
  max-width: 1220px;
  margin: 0 auto;
}

.inner2{
  width: 100%;
  max-width: 1000px;
  margin: 0 0 0 auto;
  text-align: left;
}


.inner3{
  position: relative;
  width: 90%;
  max-width: calc(1220px + 80px);
  margin: 0 auto;
}

.sec-bar{
  display: block;
  width: 90%;
  max-width: 1540px;
  height: 1px;
  background: #777;
  margin: 0 auto;
}

/* fontは1240px時maxとする */
.subtitle-wrap,
.subtitle-wrap2{
  font-size: min(2.58vw,32px);
  text-align: left;
  padding-left: 0.6em;
  border-left:solid 10px #088E8A;
  color: #333;
  margin-bottom: 1.5em;
}

.subtitle-wrap2{color: #fff;}
.subtitle{
  font-size: min(2.58vw,32px);
  font-weight: 600;
  line-height: 1;
}

.subtitle2{
  font-size: min(1.3vw,16px);
  font-weight: 300;
  line-height: 1;
  margin-top: 0.3em;
}

/* .ex動作基本 */

.ex{
  opacity: 0;
  transform: translateY(5vw);
  transition: ease-in-out 0.7s;
}

.ex.active{
  opacity: 1;
  transform: translateY(0);
}





/**********************************************************

                    　　　header

**********************************************************/

.header{
  font-size: clamp(13px,1.3vw,20px);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  padding: 13px 0;
  height: auto;
  background: #fff;
  z-index: 10;
}

.header-inner{
  width: calc(100% - 30px);
  max-width: 1920px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.header-logo{
  width: auto;
  height: 3.6em;
  display: block;
}

.header-menu{
  width: 75%;
  max-width: 1080px;
}

.header-menu ul{
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: 500;
}

.header-menu ul li:last-of-type{
  margin-right: 1em;
}

.dammy-space{
  font-size: clamp(13px,1.3vw,20px);
  width: 100%;
  height: 3.6em;
  padding: 13px 0;
  box-sizing: content-box;
}

.spmenu-btn{
  display: none;
}


  
  
/**********************************************************

                    　　　ch

**********************************************************/

.ch{
  position: relative;
  width: 100%;
  /* padding: 0 3%; */
  aspect-ratio: 10/4.9;
  max-height: calc(100vh - 110px);
  /* background: #ffcace; */
  /* background: url(img/title-back-pc.webp)no-repeat center / cover; */
  /* background: #ccc; */
  overflow: hidden;
}

.ch-video{
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: bottom;
}

.ch-video-back{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -1;
}

.ch-img{
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.ch-h1{
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.scroll-bar-wrap{
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  aspect-ratio: 10/4.9;
  height: 100%;
  max-height: calc(100vh - 110px);
}

.scroll-bar{
  position: absolute;
  right: 3%;
  bottom: 0;
  width: 2px;
  height: 10%;
  min-height: 65px;
  background: rgba(255,255,255,0.3);
}

.scroll-bar::before{
  content: "SCROLL";
  position: absolute;
  top: 23px;
  left: -13px;
  font-size: 11px;
  font-weight: 600;
  color: #fff;
  transform: rotate(90deg);
}

.scroll-bar::after{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: rgba(255,255,255,1);
  animation: 2.5s scroll linear infinite;
  transform-origin: left top;
}

@keyframes scroll{
  0% { transform: scale(1,0); }
  45% {transform-origin: left top; transform: scale(1,1); }
  55% { transform-origin: left bottom; transform: scale(1,1); }
  95% { transform-origin: left bottom;  transform: scale(1,0); }
  100% { transform-origin: left top;  transform: scale(1,0); }

}

.nolook{
  display: none;
}

.sec-title{
  height: 60px;
  width: auto;
}

.sec-title.min{
  max-height: 60px;
  height: 5vw;
}

.sec-subtitle{
  font-size: min(2.58vw,25px);
  font-weight: 300;
  line-height: 1;
  margin-top: 1em;
  margin-bottom: 3em;
}

.table{
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  border: 0;
}

.table tr th,
.table tr td{
  font-weight: 300;
  line-height: 1;
  border-top: solid 1px #777;
  border-bottom: solid 1px #777;
  background: #F5F5F5;
  text-align: left;
  padding: 1.5em 1em;
}

.table tr th{
  width: 30%;
}

.banner{
  width: 100%;
  padding: 80px 0 0;
}
.banner .inner{
  text-align: center;
}
.banner-wrap{
  display: flex;
  justify-content:center;
}
.banner-nolink{
  width: 48.5%;
  height: auto;
}
.banner-link{
  width: 48.5%;
  height: auto;
  transition: 0.3s ease;
}
.banner-link img{
  width: 100%;
  height: 100%;
}

.banner-boxtext{
  display: inline-block;
  color: #fff;
  background: #4d55e6;
  font-size: 22px;
  font-weight: 300;
  line-height: 1.2;
  padding: 0.35em 0.7em 0.5em;
  margin-top: 1em;
}

.sns-wrap01{
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  height: 100%;
  aspect-ratio: 10/4.9;
  max-height: calc(100vh - 110px);
}

.sns-flex01{
  position: absolute;
  font-size: min(3vw,35px);
  top: 4%;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 1em;
  align-items: center;
  justify-content: flex-end;
  width: 100%;
  max-width: 2280px;
  height: 1em;
}

.sns-flex01 a{
  height: 100%;
  aspect-ratio: 1/1;
}


.sns-flex01 a img{
  width: 100%;
  height: 100%;
  max-width: 100%;
  display: block;
}

.sns-flex01 span{
  width: 15%;
}

.sns-flex02{
  /* font-size: min(3vw,35px); */
  font-size: 35px;
  margin: 1.5em auto;
  display: flex;
  gap: 1em;
  align-items: center;
  justify-content: center;
  width: auto;
  height: 1em;
}

.sns-flex02 a{
  height: 100%;
  aspect-ratio: 1/1;
}


.sns-flex02 a img{
  width: 100%;
  height: 100%;
  max-width: 100%;
  display: block;
}

.ch-img02{
  position: absolute;
  right: 2%;
  bottom: 2vw;
  /* transform: translateX(310%); */
  width: 12vw;
  max-width: 170px;
  height: auto;
}

/* .ch-btn{
  position: absolute;
  top: 3%;
  right: 0;
  width: 25%;
  max-width: 500px;
}

.ch-btn img{
  width: 100%;
  height: auto;
  filter: drop-shadow( 5px 5px 5px rgba(0,0,0,0.3));
} */

.ch-btn-wrap{
  position: fixed;
  top: 110px;
  right: 0;
  z-index: 10;
}

.ch-btn,
.ch-btn2{
  position: absolute;
  top: 3%;
  right: 0;
  width: 15em;
  /* max-width: 550px; */
  transform: translateX(10%);
  font-size: min(1.9vw,28px);
  font-weight: 500;
  line-height: 1;
  text-align: center;
  background: #FF367B;
  color: #fff;
  border: solid 0.2em #FF367B;
  border-radius: 0.5em;
  padding: 0.5em 3em 0.6em 0.5em;
  box-shadow: 0.3em 0.3em 0.3em rgba(0,0,0,0.2);
}
.ch-btn2{
  background: #FF9D00;
  border: solid 0.2em #FF9D00;
  top: calc(3% + 3em);
}


.ch-btn::after,
.ch-btn2::after{
  content: '';
  position: absolute;
  top: 50%;
  right: 2em;
  transform: translateY(-50%);
  width: 1em;
  aspect-ratio: 1/1;
  background: url(img/sec06-arrow01a.webp)no-repeat center / contain;
}



  
/**********************************************************

                    　　　sec01

**********************************************************/

.sec01{
  width: 100%;
  /* padding: 120px 0 0; */
  padding: 120px 0;
  text-align: center;
  font-size: min(2.58vw,25px);
}

.sec01-text{
  font-size: 1em;
  font-weight: 300;
  line-height: 2.5;
  margin-top: 0.5em;
  /* opacity: 0;
  transform: translateY(100%); */
}

.sec01-text span{display: inline-block;}

.sec01-logo{
  width: 100px;
  height: auto;
  margin-top: 1em;
  /* opacity: 0;
  transform: translateY(30%); */
}

/* .active2 .sec01-title,.active2 .sec01-text,.active2 .sec01-logo,
.active2 .icontext{
  opacity: 1;
  transform: translateY(0);
}

.ex .t01{ transition: ease-out 0.5s 0.1s;}
.ex .t02{ transition: ease-out 0.5s 0.3s;}
.ex .t03{ transition: ease-out 0.5s 0.5s;}
.ex .t04{ transition: ease-out 0.5s 0.8s;}
.ex .t05{ transition: ease-out 0.5s 1.2s;} */

#accordion01{
  width: 100%;
  max-width: 1000px;
  margin: 3em auto 0;
  border-bottom: 1px solid #999;
}

#accordion01 dt{
  position: relative;
  font-weight: 600;
  margin-bottom: 1em;
  cursor: pointer;
}

#accordion01 dt::after{
  content: '';
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%) rotate(180deg);
  width: 0.9em;
  height: 0.9em;
  background: url(img/acc-arrow01.webp)no-repeat center / contain;
  transition: ease-in-out 0.2s;
}
#accordion01.active2 dt::after{
  transform: translateY(-50%) rotate(0);
}

#accordion01 dd{
  font-size: 0.8em;
  line-height: 2;
  font-weight: 300;
  text-align: justify;
  padding-bottom: 0;
  height: 0;
  overflow: hidden;
  transition: ease-in-out 0.1s;
}

#accordion01.active2 dd{
  padding-bottom: 1em;
  height: auto;
}
  
  
/**********************************************************

                    　　　sec02

**********************************************************/

.sec02,.sec03,.sec06{
  position: relative;
  width: 100%;
  padding: 160px 0;
  text-align: center;
  font-size: min(2.58vw,25px);
}
.sec02{padding: 160px 0 0;}
.sec03{padding: 0 0 160px;}


.icontext{
  position: relative;
  /* font-size: 50px; */
  font-size: min(1.94vw,24px);
  font-weight: 300;
  line-height: 1;
  padding-left: 4em;
  margin-bottom: 1em;
}
.sec02-textwrap .icontext:last-of-type{
  margin-bottom: 0;
}

.icontext span{
  font-size: 75%;
}

.icontext::before{
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 3.5em;
}
.icontext.t01::before{background: url(../img/sec02-icon01.svg)no-repeat center / contain;}
.icontext.t02::before{background: url(../img/sec02-icon02.svg)no-repeat center / contain;}
.icontext.t03::before{background: url(../img/sec02-icon03.svg)no-repeat center / contain;}
  
.top-news{
  width: 100%;
}

.top-news-wrap{
  position: relative;
  display: flex;
  border-bottom: solid 1px #333;
  z-index: 1;
}

.top-news .top-news-wrap:last-of-type{
  border: none;
}

.top-news-wrap::before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #333;
  transform-origin: right top;
  transform: scaleX(0);
  transition: transform ease-in-out 0.5s;
  z-index: -1;
}


.top-news-text{
  font-size: 15px;
  line-height: 1;
  font-weight: 300;
  padding: 1.2em 0 1.1em 1em;
}

.top-news-btn{
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

#slider01{
  position: relative;
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
}

#slider01 .splide__track{
  z-index: 2;
}

#slider01 .splide__slide{
  border-radius: 0;
  padding-right: 15px;
  padding-left: 15px;
  padding-top: 15px;
}

#slider01 .splide__slide a{
  display: block;
  transition: ease-in-out 0.3s;
}


#slider01 .splide__slide img{
  border-radius: 20px;
  border:solid 2px #999;
  filter: drop-shadow(5px 5px 5px rgba(0,0,0,0.2));
}

#slider01 .splide__slide p{
  font-size: clamp(12px,1.43vw,23px);
  font-weight: 300;
  margin-top: 0.6em;
  text-align: center;
  color: #fff;
}

/* 矢印カスタム */
#slider01 .button {
  background-color: transparent; /* ボタンの背景を透明にする */
  height: 40px;
  width: 40px;
  transition: unset;
  border: 0;
}

#slider01 .splide__arrows{
  position: absolute;
  top: 50%;
  left: 50%;
  width: calc(100% + 80px);
  transform: translate(-50%,-50%);
  display: flex;
  justify-content: space-between;
  display: none;
}

#slider01 .prev,
#slider01 .next{
  position: relative;
  cursor: pointer;
}


#slider01 .button::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  margin: auto;
}

#slider01 .prev::before {
  background: url(img/sec02-arrow02.webp)no-repeat center right / contain;
}

#slider01 .next::before {
  background: url(img/sec02-arrow01.webp)no-repeat center left / contain;
}

#slider01 .button:disabled::before {
  opacity: .5;
}

#slider01 .splide__slide img {
  height: auto;
  width: 100%;
}

  
/**********************************************************

                    　　　sec03

**********************************************************/

.sec03{
  background: #F5F5F5;
}

.sec03 .inner{
  position: relative;
  z-index: 2;
}

.sec03-back-wrap{
  position: absolute;
  top: 0;
  right: 0;
  width: 35%;
  overflow: hidden;
  opacity: 1;
}
.sec03-back{
  width: 100%;
  height: auto;
  opacity: 1;
}

.sec03-back-wrap::before{
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  height: 110%;
  width: 50%;
  background: linear-gradient(to left, #F5F5F5, transparent);
  animation: 10s flash linear infinite;
  transform: translateX(-101%);
}

.sec03-back-wrap2{
  position: absolute;
  bottom: 0;
  left: -10%;
  width: 35%;
  overflow: hidden;
  opacity: 1;
}
.sec03-back2{
  width: 100%;
  height: auto;
  opacity: 1;
}

.sec03-back-wrap2::before{
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  height: 110%;
  width: 50%;
  background: linear-gradient(to left, #F5F5F5, transparent);
  animation: 10s flash linear infinite;
  transform: translateX(-101%);
}

@keyframes flash {
  0%,40% { transform: translateX(-101%);}
  60%,100% { transform: translateX(250%);}
}

.splide__slide img{
  height: auto;
  width: 100%;
}

.splide__slide{
  border-radius: 20px;
  overflow: hidden;
}

.splide.ex{
  opacity: 0;
  transform: translateY(20%);
  transition: ease-out 0.5s 0.1s;
}

.splide.ex.active{
  opacity: 1;
  transform: translateY(0);
}

.inquiry-text{
  font-size: min(3.1vw,40px);
  font-weight: 300;
  line-height: 1.7;
  color: #333;
  margin-top: 1.3em;
  text-align: center;
}

.sec03-flex{
  width: 100%;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-top: 80px;
}

.sec03-flex a{
  pointer-events: none;
}

.sec03-flex-wrap{
  font-size: min(1.38vw,20px);
  font-weight: 500;
  line-height: 1.3;
  width: 24%;
  padding: 0 0.5%;
  text-align: center;
}


.sec03-flex-wrap img{
  width: 50%;
  display: block;
  margin: 0 auto 0.7em;
}

.sec03-flex-wrap span{
  display: inline-block;
}

.sec03-flex-wrap .small{
  font-size: 80%;
  margin-top: 0.5em;
}

.sec03-g-map{
  width: 100%;
  height: 450px;
}

.sec03-g-map iframe{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sec03-textwrap{
  font-size: 18px;
  font-weight: 300;
  display: flex;
  flex-wrap: wrap;
  align-items:stretch ;
  text-align: left;
  margin-bottom: 180px;
}

.sec03-textwrap02{
  text-align: center;
  width: 100%;
  /* max-width: 800px; */
  margin: 0 auto 180px;
}

.sec03-textwrap02 a:hover{
  opacity: 0.5;
}

.sec03-textwrap p:nth-of-type(1){
  text-align: left;
  width: 100%;
  margin-top: 0.5em;
  font-size: 150%;
}

.sec03-textwrap a{
  text-align: left;
  width: 100%;
  margin-bottom: 1.2em;
  text-decoration: underline;
}

.sec03-textwrap p:nth-of-type(2){
  padding: 0 1.2em;
  border-left: 1px solid #333;
  align-content: center;
}

.sec03-textwrap p:nth-of-type(3){
  line-height: 1.5;
  border-left: 1px solid #333;
  padding: 0 1.2em;
}

.rank-text{
  font-size: 25px;
  font-weight: 300;
  margin-top: 2em;
}

.sec03-img01{
  width: 62.5%;
  max-width: 476px;
  height: auto;
  margin-bottom: 20px;
}

.sec03-flex03,
.sec03-flex05{
  width: 100%;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 14px;
}

.sec03-flex03 a{
  /* width: 37.5%; */
  width: 38.3%;
  /* max-width: 280px; */
  max-width: 337px;
  height: auto;
  margin-bottom: 20px;
}

.sec03-flex05 a{
  width: 25%;
  max-width: 220px;
}

.sec03-img02{
  width: 100%;
  height: auto;
}

.sec03-img04{
  width: 18%;
  max-width: 220px;
}

.sec03-flex02{
  width: 100%;
  max-width: 871px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.sec03-img03{
  width: calc(100% / 5 - 11.2px);
  height: auto;
}

.sec03-flex04{
  width: 100%;
  display: flex;
  justify-content: space-between;
  font-size: min(1.198vw,15px);
  font-weight: 300;
  text-align: center;
  margin-top: 1.2em;
  align-items: flex-start;
}

.sec03-flex04 p {
  width: 25%;
  border-right: 1px solid #333;
}
.sec03-flex04 p:first-of-type{
  border-left: 1px solid #333;
}

.sec03-flex04 p span{
  display: inline-block;
  margin-top: 1em;
}

.sec-subtitle02{
  font-size: min(2.58vw, 25px);
  font-weight: 300;
  line-height: 1;
  margin: 2em auto 1em;
}

.sec03-text01{
  font-size: min(1.9vw,20px);
  font-weight: 300;
}

.sec03-flex10{
  width: 100%;
  max-width: 800px;
  margin: 80px auto 0;
  display: flex;
  justify-content: space-between;
}

.sec03-flex10 div{
  width: 45%;
}

.sec03-flex10 div img{
  width: 100%;
  height: auto;
}

.sec03-flex10 div .dl-btn{
  width: 100%;
  font-size: 20px;
  padding: 0.7em 1em 0.7em 0;
  border-radius: 2.5em;
  display: block;
  margin-top: 1em;
}
.sec03-flex10 .dl-btn::after{
  left: auto;
  margin-left: 1em;
}
.sec03-flex10 .dl-btn:hover{
  box-shadow: none;
  transform: translateY(0.1em);
}



/**********************************************************

                    　　　sec04

**********************************************************/

.sec04{
  position: relative;
  width: 100%;
  background: #F5F5F5;
  padding: 160px 0 120px;
  z-index: 1;
}

.sec04 .inner{
  text-align: center;
}

.sec04 .inner .sec-subtitle{
  /* color: #fff; */
}

.splide__slide img{
  width: 100%;
  height: auto;
}

.chenge-back{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  background: #29293B;
  opacity: 0;
  pointer-events: none;
}







/**********************************************************

                    　　　sec05

**********************************************************/

.sec05{
  padding: 0;
  text-align: center;
  padding: 100px 0 100px;
}

.sec05 p{
  display: inline-block;
  text-align: left;
  color: #fff;
  font-size: 20px;
  font-weight: 300;
  letter-spacing: 0.05em;
  line-height: 2;
}

.linktext{
  font-size: 20px;
  line-height: 1;
  margin-bottom: 80px;
  display: inline-block;
  color: #01B9A8;
  text-decoration: underline;
}







  
/**********************************************************

                    　　　sec06

**********************************************************/

.sec06{
  position: relative;
  width: 100%;
  background: #A9A9B1;
  z-index: -1;
  padding: 0 0 40px;
}
.sec06::before{
  /* content: ''; */
  position: absolute;
  top: 0;
  left: 0;
  transform: translateY(-40%);
  width: 100%;
  height: 320px;
  background: #010e16;
  z-index: -1;
}

.sec06-back-wrap{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.sec06-back-wrap-sticky{
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.sec06-back{
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  /* background: #01B9A8; */
  background: url(img/sec06-back.webp)no-repeat top / cover;
  z-index: -1;
}

.sec-title.mt160{
  margin-top: 160px;
}

/* .sec06 .inner{
  position: absolute;
  top: 0;
  left: 0;
} */

.sec06 .sec-subtitle{
  color: #fff;
}

.inner-over{
  width: 100vw;
  margin-left: calc(50% - 50vw);
}

.sec06-wrap01{
  position: relative;
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
  /* margin-left: calc(50% - 50vw); */
  height: auto;
  line-height: 0;
}

@media screen and (min-width: 1920px){
  .sec06-wrap01 {margin: 0 auto;}
}

/* .sec06-wrap01 a:nth-of-type(n+2){
  position: absolute;
  top: 0;
  left: 0;
} */

.sec06-wrap01 img{
  width: 100%;
  height: auto;
}

.sec06-wrap01 a{
  position: absolute;
  background: #fff;
  display: inline-block;
  opacity: 0;
}


.sec06-wrap01 a:nth-of-type(1){
  top: 0;
  left: 0;
  height: 100%;
  width: 55.5%;
  clip-path: polygon(0 0, 100% 0, 80.3% 100%, 0 100%);
  /* pointer-events: none; */
}

.sec06-wrap01 a:nth-of-type(2){
  top: 0;
  right: 0;
  height: 57.2%;
  width: 50.8%;
  clip-path: polygon(12.3% 0, 100% 0, 100% 100%, 0 100%);
}

.sec06-wrap01 a:nth-of-type(3){
  bottom: 0;
  right: 0;
  height: 43%;
  width: 55.5%;
  clip-path: polygon(8.6% 0, 100% 0, 100% 100%, 0 100%);
  /* pointer-events: none; */
}

.nagu-btn{
  /* margin-top: 60px; */
  margin: 60px auto 0;
  width: 60%;
  display: block;
  border: solid rgba(255, 255, 0, 0) 8px;
  border-radius: 30px;
  box-sizing: border-box;
  overflow: hidden;
  line-height: 1;
}


.sec06-wrap02{
  padding: 120px 0;
  width: 100%;
  display: flex;
  /* justify-content: space-between; */
  justify-content: center;
}

.sec06-wrap02 button{
  width: 48%;
  font-size: min(2.2vw,39px);
  color: #01B9A8;
  padding: 0.3em 0 0.2em;
  border: solid 0.15em #01B9A8;
  background: #fff;
  border-radius: 1.5em;
  box-sizing: border-box;
  cursor: pointer;
  box-shadow: 0.2em 0.2em 0.3em rgba(0,0,0,0.1);
  transition: ease-in-out 0.3s;
}


.ev-title{
  font-size: min(2.2vw,39px);
  font-weight: 500;
  margin-bottom: 1.2em;
}

.sec06 .ev-title,
.sec06 .caution{
  color: #fff;
}

.ev-title .en{
  font-weight: 500;
  display: inline-block;
  transform: translateY(0.1em);
  letter-spacing: 0.05em;
}


.ev-title .yotei{
  font-size: 0.8em;
  font-weight: 600;
  display: inline-block;
  transform: translateY(-7%);
}

.day{ font-size: 150%;}

.caution{
  position: relative;
  font-size: min(1.7vw,20px);
  font-weight: 300;
  line-height: 1.8;
  text-align: justify;
  width: calc(100% - 4em);
  padding-left: 4em;
  margin-bottom: 3em;
  display: block;
  box-sizing: content-box;
}

.caution::before{
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  display: block;
  width: 3em;
  height: auto;
  aspect-ratio: 1/1;
  background: url(img/icon-caution.webp)no-repeat center right / contain;
}

.caution2{
  font-size: min(1.7vw,20px);
  font-weight: 300;
  line-height: 1.8;
  text-align: center;
  color: #fff;
}

.sec06-flex{
  width: 100%;
  max-width: 870px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}

.sec06-flex-wrap{
  width: 43.6%;
  margin-bottom: 1em;
  line-height: 1;
}

.sec06-flex-wrap p{
  margin-top: 0.5em;
  color: #fff;
  font-weight: 300;
}

.sec06-logo01{
  height: 70px;
  width: auto;
  margin-top: 0.5em;
}

.sec06-logo02{
  height: 55px;
  width: auto;
  margin-top: 0.5em;
}

.sec06-btn{
  position: relative;
  font-weight: 300;
  line-height: 1.4;
  width: 100%;
  background: #FF367B;
  color: #fff;
  border: solid 0.2em #FF367B;
  /* margin-top: 120px; */
  margin: 120px auto;
  border-radius: 0.5em;
  padding: 1.5em 0;
  box-shadow: 0.3em 0.3em 0.3em rgba(0,0,0,0.2);
}
.sec06-btn span{
  font-size: 156%;
  font-weight: 500;
}


.sec06-btn::after{
  content: '';
  position: absolute;
  top: 50%;
  right: 2em;
  transform: translateY(-50%);
  width: 1.2em;
  aspect-ratio: 1/1;
  background: url(img/sec06-arrow01a.webp)no-repeat center / contain;
}



/* モーダルウインドウ */
.modal01{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 20;
  opacity: 0;
  pointer-events: none;
}
.modal01.active{
  opacity: 1;
  pointer-events: all;
}

.modal-back{
  width: 100%;
  height: 100%;
  background: rgba(001, 185, 168, 0.7);
  cursor: pointer;
}

.modal-wrap{
  position: absolute;
  top: 50%;
  left: 50%;
  width: 90%;
  height: 80vw;
  /* height: 90vh; */
  /* max-width: 1720px; */
  max-width: 1300px;
  max-height: 970px;
  font-size: min(2.6vw,50px);
  border-radius: 1em;
  padding: 1em;
  background: #fff;
  box-shadow: 0.3em 0.3em 0.3em rgba(0,0,0,0.2);
  text-align: center;
  transform: translate(-50%,-45%);
  transition: ease-in-out 0.5s 0.1s;
  opacity: 0;
  box-sizing: border-box;
}
.active .modal-wrap{
  transform: translate(-50%,-50%);
  opacity: 1;
}

#modal-target02 .modal-wrap{
  height: 70vw;
  max-height: 90vh;
}

#modal-target01 .modal-wrap{
  padding: 1em 1em 1.5em;
}

#modal-target01 .modal-wrap::after{
  content: '※イベントの内容、講演者は変更になる可能性があります。';
  position: absolute;
  left: 0;
  bottom: 0.6em;
  width: 100%;
  font-size: 0.5em;
}


.close-btn01{
  position: absolute;
  top: 40px;
  right: 40px;
  /* border: solid 1px #333; */
  border: none;
  width: 34px;
  height: 34px;
  cursor: pointer;
  background: #fff;
  z-index: 10;
}
.close-btn01::before,
.close-btn01::after{
  content: '';
  position: absolute;
  left: -20%;
  top: 36%;
  width: 140%;
  height: 2px;
  background: #333;
  transform-origin: center;
}
.close-btn01::before{ transform: rotate(45deg);}
.close-btn01::after{ transform: rotate(-45deg);}

.modal-title{
  font-size: 1em;
  font-weight: 600;
}

.modal-tab-wrap{
  width: 100%;
  display: flex;
  gap: 1em;
  justify-content: center;
  margin-top: 0.7em;
}

.modal-tab-wrap button,
.dl-btn{
  font-size: 0.6em;
  color: #01B9A8;
  font-weight: 500;
  line-height: 1.2;
  background: #fff;
  border: solid 2px #01B9A8;
  border-radius: 1em;
  width: 6em;
  padding: 0.3em 0 0.2em;
  cursor: pointer;
  box-shadow: 0.15em 0.15em 0.2em rgba(0,0,0,0.2);
}

.modal-tab-wrap button.active{
  background: #01B9A8;
  color: #fff;
}

.dl-btn{
  position: relative;
  color: #fff;
  background: #D80000;
  border: solid 2px #D80000;
  padding: 0.2em 1em 0.3em 0;
}
.dl-btn::after{
  content: '';
  position: absolute;
  top: 50%;
  left: calc(50% + 0.8em);
  transform: translateY(-50%);
  width: 0.9em;
  height: 0.9em;
  background: url(img/icon-dl01a.webp)no-repeat center / cover;
}



.modal-contents{
  position: relative;
  width: 100%;
  height: calc(100% - 5em);
  overflow-y: scroll;
  /* background: #ccc; */
  margin-top: 0.8em;
}

.modal-contents.active02b .content02a{
  animation: map 0.6s linear 0.3s 1 forwards;
}
@keyframes map {
  0%   { aspect-ratio:auto;}
  50%  { aspect-ratio:auto; }
  100% { aspect-ratio: 1/1.29; }
}
.modal-contents.active02c,
.modal-contents.active02d{
  overflow: hidden;
}

.modal-contents img{ 
  position: absolute; 
  top: 0; left: 0; 
  transform: translateY(30px); 
  opacity: 0; 
  transition: 0.3s linear;
  pointer-events: none;
}

.modal-contents .content02c{
  max-height: 95%;
  transform: translate(0,30px);
  display: block;
  position: relative;
  /* position: absolute;
  left: 0%; */
}

.modal-contents .content02d{
  max-height: 95%;
  transform: translate(0,30px);
  display: block;
  position: relative;
  /* position: absolute; */
}

.active01a .content01a{ transform: translateY(0); opacity: 1; transition:linear 0.5s 0.5s;}
.active01b .content01b{ transform: translateY(0); opacity: 1; transition:linear 0.5s 0.5s;}
.active02a .content02a{ transform: translateY(0); opacity: 1; transition:linear 0.5s 0.5s;}
.active02b .content02b{ transform: translateY(0); opacity: 1; transition:linear 0.5s 0.5s;}
.active02c .content02c{ transform: translate(0,0); opacity: 1; transition:linear 0.5s 0.5s;}
.active02d .content02d{ transform: translate(0,0); opacity: 1; transition:linear 0.5s 0.5s;}

.content02c-wrap,
.content02d-wrap{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
}

.active02c .content02c-wrap,
.active02d .content02d-wrap{
  position: sticky;
  top: 0;
}

.experience .modal-contents .content02c{
  position: sticky;
}

/**********************************************************

                    　　　footer

**********************************************************/

.footer{
  width: 100%;
  padding: 160px 0 40px!important;
  text-align: center;
  margin-top: 0!important;
  background: #29293B;
}

.footer .sec-subtitle{color: #fff;}

.footer p{
  display: inline-block;
  text-align: left;
  color: #fff;
  font-size: min(2.4vw,25px);
  font-weight: 300;
  letter-spacing: 0.05em;
  line-height: 2;
}

.footer p:last-of-type{
  font-size: min(1.8vw,20px);
}

#top-btn{
  position: fixed;
  bottom: 5vw;
  right: 5vw;
  width: 60px;
  height: 60px;
  background: #fff;
  border: 0;
  cursor: pointer;
  padding: 15px;
  opacity: 0;
  transition: ease 0.3s;
  transform: translateY(25%);
  align-content: center;
  z-index: 5;
}


#top-btn.active{
  opacity: 1;
  transform: translateY(0);
}





/**********************************************************

                    　下層ページ用

**********************************************************/
.page:not(.home){
  background: #F4F4F4;
}

.page:not(.home) .dammy-space{
  background: #F4F4F4;
}

.page:not(.home) .main{
  background: transparent;
}

.page-ch{
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  line-height: 1;
}

.page-sec{
  width: 100%;
  max-width: 1200px;
  padding: 80px 0;
  margin: 0 auto;
}

.page-sec .inner{
  width: 90%;
  max-width: 850px;
  margin: 0 auto;
  /* background: #eee; */
}

.page:not(.home) .footer{
  position: relative;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  z-index: 2;
}

.page-flex01{
  font-size: 50px;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 1.4em;
  margin-top: 2em;
}

.page-flex01-wrap{
  position: relative;
  width: calc(50% - 0.7em);
  height: auto;
  aspect-ratio: 1/1;
  border-radius: 0.5em;
  background: url(img/page-jtb-bakc.webp)no-repeat center / cover;
  text-align: center;
  box-shadow: 5px 5px 5px rgba(0,0,0,0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
}
.page-flex01-wrap::before{
  content: '';
  position: absolute;
  top: 2%;
  left: 2%;
  width: 96%;
  height: 96%;
  display: block;
  background: #fff;
  border-radius: 0.4em;
  opacity: 0;
  z-index: -1;
}
.page-flex01-wrap::after{
  content: '外部サイトに移動します';
  position: absolute;
  bottom: calc(100% + 0.2em);
  width: 100%;
  font-size: min(2.35vw, 22px);
}


.page-flex01-wrap p{
  color: #fff;
}


.page-flex01-wrap p:nth-of-type(2){
  font-size: 50%;
  font-weight: 400;
  line-height: 2;
  margin-top: 0.6em;
}

.page-subtitle{
  font-size: min(3.2vw,30px);
  line-height: 1.8;
  font-weight: 500;
  margin-bottom: 1.5em;
}

.page-text01{
  font-size: min(2.35vw,22px);
  line-height: 2;
  font-weight: 300;
}


.content-back{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: url(img/sec06-back.webp)no-repeat top / cover;
  z-index: -1;
}

.content-page{
  width: 100%;
  padding: 80px 0;
}

.content-page2{
  width: 100%;
}

.content-page .inner{
  width: 100%;
  max-width: 1200px;
}

.content-title{
  height: 60px;
  width: auto;
  display: block;
  margin: 0 auto;
}

.content-subtitle{
  font-size: min(2.58vw, 25px);
  font-weight: 300;
  line-height: 1;
  margin-top: 1em;
  margin-bottom: 2em;
  color: #fff;
  text-align: center;
}

.content-date{
  font-size: min(3.76vw, 50px);
  letter-spacing: 0.1em;
  color: #fff;
  text-align: center;
  line-height: 2;
}
.content-date span{
  font-size: 0.6em;
  transform: translateY(-0.1em);
  display: inline-block;
  margin-left: 0.5em;
}

.co-inner{
  width: 96vw;
  /* max-width: 1400px; */
  max-width: 1300px;
  margin-left: 50%;
  transform: translateX(-50%);
}

.co-flex{
  font-size: min(2vw,17px);
  width: 100%;
  background: #3B293A;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items:stretch;
  padding: 0.7em 1.4em;
  margin-bottom: 1em;
  cursor: pointer;
  /* border: solid 2px #3B293A; */
}

.co-flex.exp,.ex-flex.exp{position: relative;}
.co-flex.exp::after,
.ex-flex.exp::after{
  content: '※クリックで詳細を確認できます';
  position: absolute;
  font-size: 0.8em;
  right: 0;
  top: -2em;
  color: #fff;
  pointer-events: none;
}

.co-time{
  color: #fff;
  font-weight: 400;
  letter-spacing: 0.05em;
  padding-right: 1em;
  width: 7.7em;
  border-right: 1px solid #fff;
  align-content: center;
}

.co-title{
  color: #fff;
  font-weight: 400;
  letter-spacing: 0.05em;
  padding: 0 1em;
  border-right: 1px solid #fff;
  text-align: left;
  width: calc(100% - 52.7em);
  align-content: center;
  display: inline-block;
}

.co-title span{
  display: inline-block;
}

.co-flex-wrap{
  display: flex;
  flex-wrap: wrap;
  /* align-items: center; */
  align-items: flex-start;
  /* width: 65%; */
  width: 45em;
  /* justify-content: space-between; */
  justify-content: flex-start;
  gap: 1em 1em;
  padding-left: 1em;
}

.co-flex-wrap div{
  display: flex;
  /* align-items: center; */
  align-items: flex-start;
  width: calc(100% / 3 - 0.7em);
}

.co-face{
  width: 3.5em;
  height: 3.5em;
  border-radius: 50%;
}

.co-name{
  color: #fff;
  line-height: 1.4;
  margin-left: 0.5em;
}

.co-name span{
  font-size: 0.8em;
}

.co-post{
  color: #fff;
}


.co-wrap{
  font-size: min(2.6vw, 50px);
  background: #fff;
  border-radius: 0.7em;
  padding: 1em;
  text-align: center;
  box-sizing: border-box;
  /* height: 64vw; */
  height: auto;
  /* max-height: 970px; */
}

.co-caution{
  font-size: 16px;
  color: #fff;
  text-align: center;
  padding: 2em 0;
}

.co-title02{
  font-size: 1em;
  font-weight: 600;
}

.co-tab-wrap{
  width: 100%;
  display: flex;
  gap: 1em;
  justify-content: center;
  margin-top: 0.7em;
}

.co-tab-wrap button{
  font-size: 0.6em;
  color: #01B9A8;
  font-weight: 500;
  line-height: 1.2;
  background: #fff;
  border: solid 2px #01B9A8;
  border-radius: 1em;
  width: 6em;
  padding: 0.3em 0 0.2em;
  cursor: pointer;
  box-shadow: 0.15em 0.15em 0.2em rgba(0, 0, 0, 0.2);
}
.co-tab-wrap button.active{
  background: #01B9A8;
  color: #fff;
}

.co-contents{
  position: relative;
  width: 100%;
  /* height: calc(100% - 4.1em); */
  height: auto;
  aspect-ratio: 100 / 57;
  overflow-y: scroll;
  margin-top: 0.8em;
}

.co-contents.active01a{
  overflow:hidden;
}

.content01a-wrap,
.content01b-wrap{
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.content01b-wrap{
  height: auto;
  aspect-ratio: 100 / 79;
}

.active01a .content01a-wrap,
.active01b .content01b-wrap{
  visibility: visible;
}

.co-contents img{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: translateY(30px);
  opacity: 0;
  /* visibility: hidden; */
  transition: 0.3s linear;
}


.active01a .content01a{
  transform: translateY(0);
  opacity: 1;
  transition: linear 0.5s 0.5s;
  /* visibility: visible; */
}

.co-content{
  position: relative;
}

.content-wrap01a .co-button,
.content-wrap01b .co-button{
  pointer-events: none;
}

.co-button{
  position: absolute;
  background: #fff;
  /* background: #ccc; */
  /* background: rgba(0, 0, 0, 0.3); */
  width: 22.6%;
  /* height: 12.5%; */
  height: 9.6%;
  opacity: 0;
  display: block;
  cursor: pointer;
  z-index: 3;
}

.co-button.b01{
  top: 10.0%;
  left: 7.7%;
  height: 3.7%;
}
.co-button.b02{
  top: 14.3%;
  left: 7.7%;
  height: 8.3%;
}
.co-button.b03{
  top: 14.3%;
  left: 31.7%;
  height: 8.3%;
}
.co-button.b04{
  top: 25.9%;
  left: 31.7%;
}
.co-button.b05{
  top: 36.3%;
  left: 7.7%;
}
.co-button.b06{
  top: 49.3%;
  left: 7.7%;
}
.co-button.b07{
  top: 49.3%;
  left: 31.7%;
}
.co-button.b08{
  top: 62.0%;
  left: 7.7%;
  height: 20.3%;
}


.co-button.b11{
  top: 7.3%;
  left: 7.7%;
  height: 7.0%;
}
.co-button.b12{
  top: 16.6%;
  left: 7.7%;
  height: 7.0%;
}
.co-button.b13{
  top: 26.0%;
  left: 7.7%;
  height: 7.0%;
}
.co-button.b14{
  top: 35.4%;
  left: 7.7%;
  height: 7.0%;
}
.co-button.b15{
  top: 37.6%;
  left: 31.7%;
  height: 7.0%;
}
.co-button.b16{
  top: 49.4%;
  left: 7.7%;
  height: 7.0%;
}



/* モーダル */
.co-modal01{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  min-height: 100vh;
  z-index: 20;
  opacity: 0;
  pointer-events: none;
  background: #ccc;
  overflow-y: scroll;
}
.co-modal01.active{
  opacity: 1;
  pointer-events: all;
}

.co-mpdal-cover{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  min-height: 100vh;
  padding: 5vw 0;
  pointer-events: none;
  /* overflow-y: scroll; */
}

.co-modal-back{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(001, 185, 168, 0.7);
  cursor: pointer;
}

.co-modal-wrap{
  position: relative;
  /* top: 10%;
  left: 50%; */
  width: 90%;
  margin: 0 auto;
  height: auto;
  max-width: 1720px;
  font-size: min(2.6vw, 50px);
  border-radius: 1em;
  padding: 1em;
  background: #fff;
  box-shadow: 0.3em 0.3em 0.3em rgba(0, 0, 0, 0.2);
  text-align: center;
  transform: translate(0, 5%);
  transition: ease-in-out 0.5s 0.1s;
  opacity: 0;
  box-sizing: border-box;
}
.active .co-modal-wrap{
  transform: translate(0, 0);
  opacity: 1;
  pointer-events: all;
}

.slide-flex{
  font-size: 16px;
  width: 90%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 5em 8%;
}

.slide-flex-wrap{
  width: 46%;
}

.slide-flex-wrap .modal-face{
  width: 30%;
  height: auto;
}

.modal-readtext{
  text-align: justify;
  line-height: 2;
}

.modal-name{
  font-size: 1.5em;
  margin-top: 0.7em;
}

.modal-name span{
  font-size: 0.75em;
}

.modal-post{
  margin-top: 0.5em;
  margin-bottom: 1.4em;
}

.modal-date,
.modal-location{
  font-size: 24px;
  color: #01B9A8;
}

.modal-title{
  font-size: 28px;
  font-weight: 700;
  margin: 1em 0;
}

.co-modal01 .splide__arrows{
  position: absolute;
  top: 45%;
  left: 0;
  width: 100vw;
  margin-left: calc(50% - 50vw);
}

/* 矢印のクリック範囲など */
.co-modal01 .slide-button {
  background-color: transparent; /* ボタンの背景を透明にする */
  height: 3vw;
  transition: .2s;
  width: 3vw;
  border: none;
  cursor: pointer;
}

/* 矢印共通のスタイル */
.co-modal01 .slide-button::before {
  background-repeat: no-repeat;
  background-size: contain;
  bottom: 0;
  content: "";
  height: 3vw;
  left: 0;
  margin: auto;
  position: absolute;
  top: 0;
  width: 3vw;
}
.co-modal01 .slide-button.prev{
  position: absolute;
  left: 1%;
}
.co-modal01 .slide-button.next{
  position: absolute;
  right: 1%;
}
/* 前の矢印 */
.next::before {
  background: url(img/slide-arrow-r.webp)no-repeat center / contain;
}
/* 次の矢印 */
.prev::before {
  background: url(img/slide-arrow-l.webp)no-repeat center / contain;
}

/*1280px以下 conferenceのみ*/
@media screen and (max-width: 1280px){
  .co-flex{max-width: 1000px; margin: 0 auto 1em;}
  .co-flex-wrap{width: 100%; margin-top: 0.7em; padding-left: 0;}
  .co-title{width: calc(100% - 7.7em); border-right: none;}
}

.modal-table01{
  width: 100%;
  border: 0;
  margin-top: 2em;
}
.modal-table01.ver2 th{width: 13em;}

.modal-table01 tr,
.modal-table01 th{
  background: #fff!important;
}

.modal-table01 th,
.modal-table01 td{
  font-weight: 400;
  text-align: justify;
  /* padding: 1em 0; */
  padding: 0.5em 0;
  vertical-align: top;
}

.modal-table01 th{width: 8em;}

.modal-table01 tr:first-of-type th,
.modal-table01 tr:first-of-type td{
  padding: 0;
}


.ex-flex{
  font-size: min(2vw, 17px);
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
}

.ex-flex li{
  width: calc(50% - 0.5em);
  background: #293A3B;
  padding: 0.8em 1.2em;
  margin-bottom: 1em;
  align-content: center;
  cursor: pointer;
}

/* フード用 */
.food .ex-flex li{
  background: #3B3329;
  padding: 1.2em 1.2em;
  cursor: pointer;
}


.ex-text01{
  color: #fff;
  font-weight: 400;
  letter-spacing: 0.05em;
  padding: 0.1em 0;
  text-align: left;
  line-height: 1.5;
}
.ex-text01.mt1{
  margin-top: 0.5em;
}

.ex-text01 span{font-size: 0.9em; color: #01B9A8;}

.ex-wrap{
  font-size: min(2.6vw, 50px);
  background: #fff;
  border-radius: 0.7em;
  padding: 1em;
  text-align: center;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  aspect-ratio: 1/1;
  max-height: 90vh;
}

.ex-wrap .co-caution,
.co-wrap .co-caution,
.modal-wrap .co-caution{
  color: #333;
  padding: 0 0 0.5em;
}

.ex-wrap .modal-contents{
  /* height: 54vw; */
  height: calc(100% - 4.5em);
  /* overflow: unset; */
}

.ex-wrap .content02a{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 1/1.908;
  /* display: contents; */
  cursor: pointer;
  transform: translateY(30px);
  transition: 0.5s 0s linear;
  opacity: 0;
  overflow: hidden;
}

.ex-wrap .active02a .content02a{
  opacity: 1;
  transform: translateY(0);
  transition: 0.5s 0.5s linear;
}

.ex-wrap .content02c{
  position: absolute;
  top: 0;
  left: 0;
  /* width: 100%; */
  width: auto;
  /* height: auto; */
  height: 100%;
  max-height: 80vh;
  aspect-ratio: 5/3;
  cursor: pointer;
  transform: translateY(30px);
  transition: 0.5s 0s linear;
  opacity: 0;
  overflow: hidden;
  pointer-events: none;
  margin: 0 auto;
}

.ex-wrap .content02c img{
  width: 100%;
  height: auto;
  opacity: 1;
  transform: unset;
}

.ex-wrap .active02c .content02c{
  opacity: 1;
  transform: translateY(0);
  transition: 0.5s 0.5s linear;
  pointer-events: all;
}

.ex-btn{
  position: absolute;
  width: 7.5%;
  height: auto;
  aspect-ratio: 1/1;
  background: rgba(255, 255, 255, 0);
  border: none;
  cursor: pointer;
}


.ex-wrap .content02a img{
  width: 100%;
  height: auto;
  opacity: 1;
  transform: unset;
}

/* .ex-wrap02 p{
  position: absolute;
  bottom: 120%;
  left: 50%;
  transform: translate(-50%,-15%);
  font-size: 16px;
  line-height: 1.5;
  font-weight: 600;
  text-align: left;
  width: auto;
  padding: 0.7em 1em;
  border-radius: 1em;
  background: #01B9A8;
  color: #fff;
  display: inline-block;
  white-space: nowrap;
  box-shadow: 0.3em 0.3em 0.3em rgba(0, 0, 0, 0.2);
  z-index: 3;
  transition: 0s;
  opacity: 0;
  pointer-events: none;
}
.ex-wrap02 p span{
  font-size: 87.5%;
  font-weight: 400;
}
.ex-wrap02 p::after{
  content: '';
  position: absolute;
  left: 50%;
  top: calc(100% - 0.6em);
  transform: translateX(-50%);
  width: 1.5em;
  aspect-ratio: 5/7;
  background: url(img/ex-arrow.webp)no-repeat center top / contain;
} */

/* .ex-wrap02.w20 p,
.ex-wrap02.w21 p{
  transform:rotate(-45deg) translate(-87%,-97%);
} */

.ex-btn.e01{ top: 9.4%; left: 19.8%;}
.ex-btn.e02{ top: 9.4%; left: 27.3%;}

.ex-btn.e03{ top: 21.3%; left: 55.2%;}
.ex-btn.e04{ top: 25.2%; left: 55.2%;}

.ex-btn.e05{ top: 19.4%; left: 34.6%;}
.ex-btn.e06{ top: 23.3%; left: 34.6%;}
.ex-btn.e07{ top: 19.4%; left: 27.1%;}
.ex-btn.e08{ top: 23.3%; left: 27.1%;}

.ex-btn.e09{ top: 13.6%; left: 10.2%;}
.ex-btn.e10{ top: 17.5%; left: 10.2%;}
.ex-btn.e11{ top: 21.4%; left: 10.2%;}
.ex-btn.e12{ top: 25.3%; left: 10.2%;}
.ex-btn.e13{ top: 29.2%; left: 10.2%;}

.ex-btn.e14{ top: 32.3%; left: 35.7%; width: 15%; aspect-ratio: 2/1;}

.ex-btn.e15{ top: 44.8%; left: 27.5%;}
.ex-btn.e16{ top: 48.7%; left: 27.5%;}

.ex-btn.e17{ top: 44.8%; left: 10.2%; aspect-ratio: 1/2;}

.ex-btn.e18{ top: 58.7%; left: 40.9%; width: 10.1%; aspect-ratio: 4/3;}
.ex-btn.e19{ top: 58.7%; left: 50.9%; width: 10.1%; aspect-ratio: 4/3;}

.ex-btn.e20{ top: 72.15%; left: 39.0%; aspect-ratio: 1/1.35; transform-origin: top right; transform: rotate(45deg);}
.ex-btn.e21{ top: 75.9%; left: 31.8%; aspect-ratio: 1/1.35; transform-origin: top right; transform: rotate(45deg);}

.ex-btn.e22{ top: 17.4%; left: 67.3%; ;width: 28.4%; aspect-ratio: 1 / 1.33;}

.ex-btn.e23{ top: 20.4%; left: 27.4%; width: 35%; aspect-ratio: 2/1.12;}
.ex-btn.e24{ top: 42.3%; left: 69.9%; width: 4%; }

.food-map-wrap{
  position: relative;
  width: 100%;
  height: calc(100% - 4em);
  /* aspect-ratio: 50 / 27; */
  margin-top: 0.7em;
  /* background: #eee; */
  overflow: scroll;
}

.food-map-wrap span{
  position: relative;
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1.29;
  /* overflow-x: scroll; */
  display: block;
}

.food-map-wrap img{
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: left top;
}

.food-btn{
  position: absolute;
  left: 35.0%;
  top: 24.4%;
  width: 5.7%;
  height: auto;
  aspect-ratio: 2 / 3;
  /* background: rgba(0, 0, 0, 0.3); */
  background: #fff;
  /* background: #ccc; */
  opacity: 0;
  border: 0;
  cursor: pointer;
}


.food-btn.f1{left: 16.0%; top: 50.1%;}
.food-btn.f2{left: 16.0%; top: 59.2%;}
.food-btn.f3{left: 16.0%; top: 68.3%;}
.food-btn.f4{left: 16.0%; top: 77.4%;}

.food-btn.f5{left: 22.3%; top: 88.1%; aspect-ratio: 3/2.1; width: 8.5%;}
.food-btn.f6{left: 31.5%; top: 88.1%; aspect-ratio: 3/2.1; width: 8.5%;}
.food-btn.f7{left: 40.7%; top: 88.1%; aspect-ratio: 3/2.1; width: 8.5%;}
.food-btn.f8{left: 49.9%; top: 88.1%; aspect-ratio: 3/2.1; width: 8.5%;}

.food-btn.f9{left: 59.1%; top: 77.4%;}
.food-btn.f10{left: 59.1%; top: 68.3%;}
.food-btn.f11{left: 59.1%; top: 59.2%;}
.food-btn.f12{left: 59.1%; top: 50.1%;}

.food-btn.f13{left: 72.5%; top: 42.9%; width: 10%; aspect-ratio: 4 / 2.85;}
.food-btn.f14{left: 72.5%; top: 53.7%; width: 10%; aspect-ratio: 4 / 2.85;}
.food-btn.f15{left: 72.5%; top: 64.7%; width: 10%; aspect-ratio: 4 / 2.85;}
.food-btn.f16{left: 72.5%; top: 75.5%; width: 10%; aspect-ratio: 4 / 2.85;}
.food-btn.f17{left: 72.5%; top: 86.3%; width: 10%; aspect-ratio: 4 / 2.85;}
/* .food-btn.f18{left: 47.0%; top: 65.1%;}
.food-btn.f19{left: 53.0%; top: 65.1%;}
.food-btn.f20{left: 59.1%; top: 65.1%;}
.food-btn.f21{left: 65.1%; top: 65.1%;}
.food-btn.f22{left: 71.2%; top: 65.1%;}
.food-btn.f23{left: 77.2%; top: 65.1%;} */

.modal-food-img-wrap{
  width: 90%;
  height: auto;
  max-width: 500px;
  aspect-ratio: 4.3/3;
  margin: 0 auto;
  overflow: hidden;
}

.modal-food-img-wrap img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.modal-food-text{
  font-size: 18px;
  line-height: 2;
  text-align: justify;
  margin-top: 2em;
  margin: 2em auto 0;
  width: 90%;
  max-width: 700px;
}

.modal-food-text a{
  color: #01B9A8;
  text-decoration: underline;
}

.modal-food-text a:hover{
  color: #da7293;
}

.sec-jcoin,.sec-jcoin02{
  width: 100vw;
  margin-left: calc(50% - 50vw);
}

.sec-jcoin02{padding-top: 3vw; padding-bottom: 6vw; background: #fff;}

.sec-jcoin .inner,
.sec-jcoin02 .inner{
  position: relative;
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
}

.sec-jcoin02 .subinner{
  width: 82.3%;
  /* height: 500px; */
  /* background: #ccc; */
  margin: 0 auto;
}

.jcoin-link01{
  position: absolute;
  left: 8.5%;
  top: 34.3%;
  width: 39%;
  aspect-ratio: 6.5/1;
  background: #DD8123;
  border: solid 2px #DD8123;
  box-sizing: border-box;
  opacity: 0.1;
}


.jcoin-flex{
  position: absolute;
  left: 50%;
  top: 75.2%;
  transform: translateX(-50%);
  width: 82%;
  max-width: 1574px;
  display: flex;
  justify-content: center;
  gap: 2%;
  /* background: #ccc; */
}

.jcoin-flex a{
  width: 21%;
}


.jcoin-link02{
  position: absolute;
  left: 50%;
  top: 92.6%;
  width: 41%;
  font-size: min(1.25vw,23px);
  text-decoration: underline;
  color: #01B9A8;
  text-align: center;
  padding-left: 4%;
}


.jcoin-chtext{
  font-size: min(2.5vw,28px);
  font-weight: 500;
  line-height: 1.2;
  padding: 0.5em 0 0.6em 1.2em;
  /* background: #F5F5F5; */
  background: #D97393;
  color: #fff;
  margin-top: 1.8em;
}
.jcoin-chtext.mt0{
  margin-top: 0;
}

.jcoin-readtext{
  font-size: min(2vw,20px);
  font-weight: 300;
  line-height: 1.8;
  /* margin-top: 0.5em; */
  text-align: justify;
  word-break: break-all;
}

.jcoin-readtext a,
.jcoin-a a,
.jcoin-readtext02 a{
  color: #01B9A8;
  text-decoration: underline;
}

.jcoin-readtext a:hover,
.jcoin-a a:hover,
.jcoin-readtext02 a:hover{
  color: #da7293;
}

.jcoin-readtext span{
  font-weight: 500;
  color: #D97393;
}

.jcoin-readtext.mt1{margin-top: 1.5em; margin-bottom: 0.3em;}

.jcoin-textbox{
  width: 100%;
  background: #F9F8CA;
  padding: 1em 2em;
}

.jcoin-wrap01{
  font-size: min(2vw,20px);
  font-weight: 300;
  width: 100%;
  text-align: center;
  padding: 1em;
  background: #F5F5F5;
  margin-top: 2.5em;
}

.jcoin-wrap01-flex{
  display: flex;
  flex-wrap: wrap;
}

.jcoin-wrap01-flex p{
  width: calc(100% / 6);
  margin-top: 1em;
}

.jcoin-readtext02{
  font-size: min(2vw,20px);
  font-weight: 300;
  line-height: 1.8;
  margin-top: 0.5em;
  text-align: justify;
}

.jcoin-readtext02 span{display: inline-block;}

.jcoin-readtext02 .blue{
  font-weight: 400;
  line-height: 1.2;
  color: #01B9A8;
  margin-top: 0.8em;
  display: inline-block;
}

.jcoin-readtext02 .big{
  font-weight: 400;
  font-size: 1.25em;
  line-height: 1.2;
  margin-right: 1em;
}

.jcoin-readtext02 .tel{
  position: relative;
  padding-left: 1.5em;
}
.jcoin-readtext02 .tel::before{
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 1.25em;
  height: 1.25em;
  background: url(img/icon-tel.webp)no-repeat center / contain;
}

.jcoin-readtext02 .mail{
  position: relative;
  font-weight: 400;
  font-size: 1.25em;
  padding-left: 1.2em;
  line-height: 1.2;
  word-break: break-all;
}
.jcoin-readtext02 .mail::before{
  content: '';
  position: absolute;
  top: 0.2em;
  left: 0;
  width: 1em;
  height: 1em;
  background: url(img/icon-mail.webp)no-repeat center / contain;
}

.jcoin-readtext02 .pink{
  font-weight: 400;
  color: #FF367B;
  line-height: 1.2;
}

.jcoin-linkbtn01{
  position: absolute;
  top: 29%;
  left: 20%;
  background: #fff;
  opacity: 0;
  display: block;
  width: 40%;
  height: auto;
  aspect-ratio: 25/4;
  z-index: 2;
}
.jcoin-linkbtn01:hover{
  opacity: 0.2;
}

.jcoin-q{
  position: relative;
  font-size: 20px;
  font-weight: 500;
  cursor: pointer;
  line-height: 1.5;
  border-top: 1px solid #777;
  /* border-bottom: 1px solid #777; */
  margin-top: 0.5em;
  padding-top: 0.75em;
  padding-bottom: 0.25em;
  padding-right: 2em;
}
.jcoin-q.first{border: none; margin-top: 0; padding-top: 0.25em;}
.jcoin-a{
  font-size: 16px;
  font-weight: 300;
  line-height: 1.7;
  height: 0;
  overflow: hidden;
  padding-right: 2.5em;
  text-align: justify;
}
.jcoin-a.last{border-bottom: 1px solid #777; padding: 0.25em 0;}
.jcoin-q.active{
  border-bottom: 0;
}
.jcoin-a.active{
  height: auto;
}
.jcoin-a.last.active{padding: 0 0 0.5em 0;}

.jcoin-q::after{
  content: "";
  position: absolute;
  top: 60%;
  right: 0;
  font-size: 1em;
  width: 1em;
  height: 2px;
  background: #777;
}
.jcoin-q::before{
  content: "";
  position: absolute;
  top: 60%;
  right: 0;
  font-size: 1em;
  width: 1em;
  height: 2px;
  background: #777;
  transition: ease-in-out 0.3s;
  transform: rotate(90deg); 
}

.jcoin-q.active::before{
  transform: rotate(0);
}

.jcoin-q.first::after,
.jcoin-q.first::before{
  top: 50%;
}

.sec-faq{
  width: 100%;
  padding: 80px 0;
}

.sec-faq .inner{
  max-width: 1000px;
}

.faq-title{
  font-family: Arial, Helvetica, sans-serif;
  font-size: 50px;
  line-height: 1;
  font-weight: 600;
  letter-spacing: 0.3em;
  text-align: center;
  margin-bottom: 1.5em;
}

.sec-faq dl{
  font-size: 20px;
  width: 100%;
}

.sec-faq dt{
  position: relative;
  font-weight: 500;
  line-height: 2;
  width: 100%;
  text-align: justify;
  border-top: 1px solid #7B7B7B;
  padding: 2em 0 2em 3em;
  cursor: pointer;
  overflow: hidden;
  z-index: 1;
}
.sec-faq dt::before{
  content: 'Q';
  position: absolute;
  left: 0;
}
.sec-faq dt::after{
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform-origin: top right;
  transform: scale(0,1);
  transition:transform ease 0.3s;
  background: #fff;
  z-index: -1;
  opacity: 0.5;
}

.sec-faq dt span{
  display: block;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1.5em;
  height: 1.5em;
  /* background: #ccc; */
}
.sec-faq dt span::before,
.sec-faq dt span::after{
  content: '';
  position: absolute;
  left: 0;
  top: calc(50% - 1px);
  width: 100%;
  height: 2px;
  background: #333;
}
.sec-faq dt span::after{
  transform-origin: center;
  transform: rotate(90deg);
  transition: ease 0.3s;
}
.sec-faq dt.active span::after{
  transform: rotate(0);
}

.sec-faq dd{
  position: relative;
  font-weight: 300;
  line-height: 2;
  width: 100%;
  text-align: justify;
  padding: 0;
  height: 0;
  padding: 0 0 0 3em;
  overflow: hidden;
  transition: ease 0.3s;
}
.sec-faq dd::before{
  content: 'A';
  font-weight: 500;
  position: absolute;
  left: 0.1em;
}

.sec-faq dd.active{
  height: auto;
  padding: 0 0 1em 3em;
}

.sec-faq dl dd:last-of-type{
  border-bottom: 1px solid #7B7B7B;
}



/**********************************************************

                        comingsoon

**********************************************************/

.coming{
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: url(img/coming-img02.webp)no-repeat center / cover;
  margin-left: calc(50% - 50vw);
}

.coming-text{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  width: 33%;
  height: auto;
}

.coming .footer{
  position: absolute!important;
  bottom: 0;
  left: 0;
  background: none;
}

@media screen and (max-width: 834px){
  .coming-text{
    width: 80%;
  }
}

.ac-btn01{
  height: 1.5em;
  width: 8.205em;
  background: url(img/Archive-button01.webp)no-repeat left / contain;
  display: inline-block;
  margin-top: 0.3em;
  z-index: 100;
}
.ac-btn01:hover{
  opacity: 0.5;
}


/**********************************************************

                  hover用のメディアクエリ

**********************************************************/

@media(hover: hover) {

  .header-menu ul li a:hover{
    text-decoration: underline;
    color: #01B9A8;
  }
  .banner-link:hover{
    opacity: 0.7;
    transform: translateY(-8%);
  }

  .sns-flex01 a:hover{
    opacity: 0.7;
  }

  .sns-flex02 a:hover{
    opacity: 0.7;
  }

  .ch-btn:hover{
    background: #fff;
    color: #FF367B;
  }
  .ch-btn2:hover{
    background: #fff;
    color: #FF9D00;
  }

  .ch-btn:hover::after{ background: url(img/sec06-arrow01b.webp)no-repeat center / contain;}
  .ch-btn2:hover::after{ background: url(img/sec06-arrow01c.webp)no-repeat center / contain;}

  .top-news-wrap:hover::before{
    transform-origin: left top;
    transform: scaleX(1);
  }

  .top-news-wrap:hover{
    color: #fff;
  }

  #slider01 .splide__slide a:hover{
    transform: translateY(-15px);
  }

  .sec03-flex-wrap a:hover{
    color: #01B9A8;
    text-decoration: underline;
  }

  .sec03-flex-wrap a:hover span{
    text-decoration: underline;
  }

  .sec03-flex-wrap a:hover img{
    opacity: 0.5;
  }

  .sec06-wrap01 a:hover{
    opacity: 0.5;
  }

  .sec06-wrap02 button:hover{
    background: #01B9A8;
    color: #fff;
    box-shadow: 0 0 0 rgba(0,0,0,0.1);
    transform: translateY(5%);
  }

  .sec06-btn:hover{
    background: #fff;
    color: #FF367B;
  }
  .sec06-btn:hover::after{
    background: url(img/sec06-arrow01b.webp)no-repeat center / contain;
  }

  .dl-btn:hover{
    background: #fff;
    color: #D80000;
  }

  .dl-btn:hover::after{
    background: url(img/icon-dl01b.webp)no-repeat center / cover;
  }

  #top-btn:hover{
    opacity: 0.5;
  }

  .page-flex01-wrap:hover p{
    color: #FF0000;
  }

  .page-flex01-wrap:hover::after{
    color: #333;
  }

  .page-flex01-wrap:hover::before{
    opacity: 1;
  }

  .co-flex:hover{
    background: #fff;
  }

  .co-flex:hover .co-time,
  .co-flex:hover .co-title,
  .co-flex:hover .co-name{
    color: #3B293A;
  }

  .co-flex:hover .co-time{border-right: 1px solid #3B293A;}

  .co-button:hover{
    opacity: 0.5;
  }

  .slide-button:hover{
    opacity: 0.5;
  }
  .food .ex-flex li:hover{
    background: #fff;
  }
  .food .ex-flex li:hover p{
    color: #3B3329;
  }
  .ex-btn:hover{
    background: rgba(255, 255, 255, 0.5);
  }

  .ex-flex li:hover{
    background: #fff;
  }

  .ex-flex li:hover p{
    color: #293A3B;
  }

  .ex-wrap02:hover p{
    transform: translate(-50%,0);
    opacity: 1;
    transition: ease 0.3s;
  }

  .ex-wrap02.w20:hover p,
  .ex-wrap02.w21:hover p{
    /* transform:rotate(-45deg) translate(-73%,-146%); */
    transform:rotate(-45deg) translate(-87%,-82%);
  }

  .food-btn:hover{
    opacity: 0.5;
  }

  .jcoin-link01:hover{
    background: transparent;
    opacity: 0.5;
  }

  .jcoin-flex a:hover{
    opacity: 0.5;
  }

  .jcoin-link02:hover{
    color: #da7293;
  }

  .sec-faq dt:hover::after{
    transform-origin: top left;
    transform: scale(1,1);
  }

  .nagu-btn:hover{
    border: solid rgba(255, 255, 0, 1) 8px;
  }

  @media screen and (max-width: 834px){
    .nagu-btn:hover{
      border: 0;
      opacity: 0.5;
    }
  }

}
  


/**********************************************************

             レスポンシブデザイン用のメディアクエリ

**********************************************************/

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
  .pc{display: none;}
	.sp{display: block;}

  #slider01 .splide__arrows{display: flex;}

  main.main{
    padding: 0;
  }

  .header{
    width: 100%;
    padding: 10px 0;
  }

  .header-logo{
    height: 40px;
  }

  .header-menu{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: #fff;
    z-index: -1;
    transform: translateX(101%);
    transition: ease-in-out 0.3s;
  }

  .header-menu.active{
    transform: translateX(0);
  }

  .header-menu ul{
    display: block;
    text-align: center;
    font-size: min(6.8vw,27px);
    margin-top: 4em;
  }

  .header-menu ul li{ 
    margin-bottom: 1.2em;
    transform: translateY(100%);
    transition: ease 0.7s 0.3s;
    opacity: 0;
  }
  .header-menu.active ul li{transform: translateY(0); opacity: 1;}
  .header-menu ul li:last-of-type{ margin-right: 0;}

  .spmenu-btn{
    position: relative;
    display: block;
    /* background: #ccc; */
    height: 40px;
    width: 40px;
    cursor: pointer;
  }

  .spmenu-btn span{
    position: absolute;
    top: 19px;
    left: 0;
    width: 100%;
    height: 2px;
    background: #333;
    display: block;
    transition: 0.2s;
  }

  .spmenu-btn span::before,
  .spmenu-btn span::after{
    content: '';
    position: absolute;
    left: 0;
    width: 100%;
    height: 100%;
    background: #333;
    transition: ease 0.3s;
  }

  .spmenu-btn span::before{ top: -12px;}
  .spmenu-btn span::after{ bottom: -12px;}

  .spmenu-btn.active span{
    background: none;
  }

  .spmenu-btn.active span::before,
  .spmenu-btn.active span::after{
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: auto;
    width: 100%;
    height: 100%;
    background: #333;
    transform-origin: center;
  }

  .spmenu-btn.active span::before{ transform: rotate(45deg);}
  .spmenu-btn.active span::after{ transform: rotate(-45deg);}

  .dammy-space{
    height: 60px;
    padding: 0;
  }

  .ch{
    width: 100%;
    height: auto;
    max-height: none;
    /* padding: 12vw 0 0; */
    padding: 7vw 0 0;
    aspect-ratio: auto;
    background: url(img/title-back-sp.webp)no-repeat center / cover;
  }

  .ch-img02{ display: none;}

  .ch-btn-wrap{
    /* position: absolute; */
    /* left: 5%;
    top: 10vw;
    width: 90%; */
    position: fixed;
    top: 60px;
    left: 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
  }
  .ch-btn,.ch-btn2{
    position: relative;
    font-size: min(3.43vw,22px);
    /* width: 48.5%; */
    width: 50%;
    border-radius: 0;
    padding: 0.7em 1.5em 0.85em 0.5em;
    transform: none;
  }

  .ch-btn::after,.ch-btn2::after{
    right: 0.5em;
    width: 0.9em;
  }

  .banner{padding: 17vw 0 0;}

  .banner-wrap{display: block;}
  .banner-nolink{width: 100%; margin-bottom: 4vw;}
  .banner-link{width: 100%;}
  .banner-boxtext{
    width: 100%;
    font-size: min(4.375vw,22px);
    line-height: 1.5;
  }
  .banner-boxtext span{
    display: inline-block;
  }

  .sec01,.sec02,.sec03,.sec06{
    padding: 15vw 0;
    font-size: 3.8vw;
  }
  .sec03{padding: 0 0 17vw 0;}

  .sec06{padding: 0;}

  .sec01-logo{width: 25%;}

  .sec01-text span{text-align: justify;}

  .sec-title,
  .content-title{
    height: 8vw;
  }

  #accordion01 dd{font-size: 0.95em;}

  .sec-title.mt160{margin-top: 15vw;}

  .sec-subtitle,
  .content-subtitle{
    font-size: 1em; 
    margin: 0.7em auto 2em;
  }

  .table tr th, .table tr td{
    font-size: 1em;
    line-height: 1.5;
  }

  .sec03-flex{
    /* display: block; */
    flex-wrap: wrap;
    width: 100%;
    margin: 10vw auto 0;
  }

  .sec03-flex-wrap{
    width: 50%;
    font-size: min(4vw,27px);
    margin-bottom: 1em;
  }

  .sec03-flex-wrap .small{
    display: none;
  }

  .sec03-flex .sec03-flex-wrap:last-of-type{
    margin-bottom: 0;
  }

  .sec03-flex-wrap img{
    width: 60%;
  }

  .sec03 .sec-subtitle{
    margin-bottom: 1em;
  }

  .sec03-flex10{
    display: block;
    width: 90%;
    max-width: 500px;
    margin-top: 10vw;
    padding: 0.3em 1em 0.2em;
  }

  .sec03-flex10 div{
    width: 100%;
  }

  .sec03-flex10 div .dl-btn{
    width: 100%;
    display: block;
    font-size: min(4.375vw, 25px);
  }

  .sec03-flex10 .dl-btn:first-of-type{
    margin-bottom: 3em;
  }

  .sec04{
    padding: 20vw 0 0;
  }

  .sec05{
    padding: 20vw 0;
  }

  .sec05 p{
    font-size: min(4vw ,20px);
    width: calc(100% - 40px);
  }

  .sec05 p span{
    display: inline-block;
  }
  
  .linktext{
    font-size: min(4vw ,20px);
    margin-bottom: 15vw;
  }

  .sns-wrap01{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 200px;
    transform: none;
  }

  .sns-flex01{
    font-size: min(6.9vw,30px);
    position: absolute;
    top: 1em;
    left: 0;
    display: flex;
    gap: 1em;
    align-items: center;
    justify-content: flex-end;
    width: 100%;
    height: 6.9vw;
    max-height: 30px;
    /* background: #777; */
    transform: none;
  }
  
  .sns-flex01 span{
    width: 0;
  }

  .sns-flex02{
    font-size: min(6.9vw,30px);
    height: 6.9vw;
    max-height: 30px;
    margin-top: 15vw;
  }

  .inner3{
    width: 100%;
  }

  #slider01{width: 100%;}

  /* #slider01 .splide__arrows{
    display: none;
  } */

  #slider01 .splide__arrows{
    width: 94%;
    z-index: 2;
  }

  #slider01 .button{
    width: 8vw;
    height: 8vw;
    max-width: 40px;
    max-height: 40px;
  }

  #slider01 .splide__slide{
    padding: 3.125vw 3.125vw 0 3.125vw;
  }

  #slider01 .splide__slide a:hover{
    transform: translateY(-3.125vw);
  }

  #slider01 .splide__slide p{
    font-size: 4.7vw
  }

  .sec06::before{
    height: 100vw;
    transform: translateY(-35%);
  }

  .sec06-wrap01sp{
    width: 100%;
    max-width: 550px;
    margin: 0 auto;
  }

  .sec06-wrap01sp a{
    margin-bottom: 3vw;
    display: block;
    line-height: 1;
  }
  .sec06-wrap01sp a img{
    filter: drop-shadow(0.2em 0.2em 0.2em rgba(0, 0, 0, 0.3));
  }

  /* .sec06-wrap01sp a:nth-of-type(3){
    pointer-events: none;
  } */

  .nagu-btn{
    width: 100%;
    max-width: 550px;
    /* border: solid rgba(255, 255, 0, 0) 1vw; */
    border-radius: 2vw;
    border: none;
    margin: 10vw auto 0;
  }

  /* .nagu-btn:hover{
    border: solid rgba(255, 255, 0, 1) 1vw;
  } */

  .sec06-wrap01sp a:last-of-type{
    margin-bottom: 0;
  }

  .sec06-wrap02{
    display: block;
    width: 80%;
    max-width: 450px;
    margin: 0 auto;
    padding: 15vw 0;
  }

  .sec06-wrap02 button{
    width: 100%;
    font-size: min(5vw,25px);
  }

  .sec06-wrap02 button:first-of-type{
    margin-bottom: 3vw;
  }

  .sec-title.min{
    height: 17vw;
    max-height: none;
  }

  .ev-title{
    font-size: min(4.68vw,25px);
    margin-bottom: 0.5em;
  }

  .ev-title .en{
    font-size: 190%;
  }

  .caution{
    padding-left: 0;
    padding-top: 3em;
    margin-bottom: 2em;
    font-size: min(4.68vw,25px);
    width: 100%;
    line-height: 2;
  }

  .caution::before{
    width: 2em;
    top: 0.5em;
    left: 50%;
    transform: translateX(-50%);
  }

  .sec06-flex{
    max-width: 550px;
    display: block;
  }

  .sec06-flex-wrap{
    width: 100%;
    margin-bottom: 7vw;
  }

  .sec06-flex-wrap p{
    font-size: min(5vw,25px);
  }

  .sec06-logo01{
    height: 17vw;
    max-height: 83px;
  }

  .sec06-flex .sec06-flex-wrap:last-of-type .sec06-logo01{
    height: 13vw;
    max-height: 75px;
  }

  .sec06-btn{
    font-size: min(4.68vw,25px);
    width: 100%;
    display: block;
    margin: 15vw auto;
    padding: 0.8em 0;
  }
  .sec06-btn span{
    font-size: 130%;
  }

  .sec06-btn::after{right: 1em;}

  .caution2{
    font-size: min(4.68vw,20px);
    padding-bottom: 0.5em;
    line-height: 1.3;
  }

  .sec03-g-map{
    max-width: 550px;
    height: 90vw;
    max-height: 550px;
    /* aspect-ratio: 1/1; */
    margin: 0 auto;
  }

  .sec03-textwrap{
    width: 100%;
    max-width: 550px;
    margin: 0 auto 17vw;
  }

  .sec03-textwrap02{
    margin: 0 auto 17vw;
  }

  .sec03-img01{width: 90%; margin-bottom: 2.5vw; max-width: none;}

  .sec03-img02{width: 75%; margin-bottom: 2.5vw;}

  .sec03-img04{width: 55%; margin-bottom: 2.5vw;}

  .sec03-img03{
    width: 48.5%;
  }

  .sec03-flex02{
    gap: 2.5vw;
    justify-content: space-between;
  }

  .sec03-flex02 .sec03-img03:last-of-type{
    margin-bottom: 0;
  }
  
  .sec03-textwrap p:nth-of-type(1),
  .sec03-textwrap a{
    font-size: min(4vw,24px);
  }

  .sec03-textwrap p:nth-of-type(2){
    padding: 0;
    border-left: none;
    font-size: min(5vw,25px);
    padding-bottom: 0.3em;
    margin-bottom: 0.3em;
    border-bottom: 1px solid #333;
    display: block;
    width: 100%;
  }

  .sec03-textwrap p:nth-of-type(3){
    padding: 0;
    border-left: none;
    font-size: min(4vw,24px);
    text-align: justify;
  }

  .footer{
    padding: 17vw 0 3vw!important;
  }

  .footer p{
    font-size: min(3.8vw,20px);
    display: inline-block
  }

  .footer p span{
    display: inline-block;
  }

  .footer p:last-of-type{
    font-size: min(3.28vw,12px);
  }

  .modal-wrap,#modal-target02 .modal-wrap{
    /* font-size: min(6.25vw,25px); */
    font-size: min(4.2vw,25px);
    transition: unset;
    padding: 1em 0.5em;
    height: auto;
    aspect-ratio: 2/3.5;
    max-height: 90vh;
    max-width: 550px;
  }
  .close-btn01{
    top: 1.5em;
    right: 1.5em;
    width: 1em;
    height: 1em;
  }

  .modal-contents.active01a{
    overflow-x: scroll;
    overflow-y: hidden;
  }

  .modal-tab-wrap{gap: 0.5em; flex-wrap: wrap;}

  .modal-contents{
    overflow-x: scroll;
    height: calc(100% - 9em);
  }

  .modal-contents img{
    transform: translateY(1em);
    height: auto;
    width: 230vw;
    max-width: none;
  }

  #contents02 .content02a,
  #contents02 .content02b{
    /* width: auto; */
    /* height: 95%; */
    /* max-width: 500px; */
    width: 100%;
    min-width: 500px;
  }

  .active02c .content02c-wrap, 
  .active02d .content02d-wrap{
    width: 100%;
  }

  #contents02 img:nth-of-type(3){
    width: auto;
    height: 90%;
    left: 0;
    transform: translate(0, 30px);
  }

  #contents02.active02c img:nth-of-type(3){
    transform: translate(0, 0);
  }

  .modal-contents .content02d{
    /* left: 0; */
    transform: translate(0, 30px);
    width: 100%;
    height: auto;
    object-fit: contain;
    /* height: 95%; */
    /* width: auto; */
  }

  .modal-contents .content02c{
    /* left: 0; */
    transform: translateY(30px);
    width: 100%;
    height: auto;
    object-fit: contain;
    /* height: 80%; */
  }
  .modal-contents.active02c .content02c{
    transform: translateY(0);
  }

  .modal-contents.active02d .content02d{
    transform: translate(0, 0);
  }

  .page-sec{
    padding: 17vw 0;
  }

  .page-subtitle{
    font-size: min(5vw,26px);
    display: inline-block;
  }

  .page-subtitle span{display: inline-block;}

  .page-text01{
    font-size: min(3.43vw,19px);
  }

  .page-flex01{
    width: 70%;
    max-width: 400px;
    margin: 16vw auto 0;
    display: block;
    font-size: min(8.43vw,50px);
  }

  .page-flex01-wrap::after{
    font-size: min(3.43vw, 19px);
  }

  .page-flex01 a:not(:first-of-type)::after{
    content: none;
  }

  .page-flex01-wrap{
    width: 100%;
    margin-top: 1em;
  }

  #slider01 .splide__slide a:hover{
    transform: translateY(0);
  }

  #top-btn{
    width: 7.2vw;
    height: 7.2vw;
    min-width: 40px;
    min-height: 40px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  #top-btn img{
    width: 4vw;
    min-width: 20px;
    height: auto;
  }

  .content-page{
    padding: 12.5vw 0;
  }

  .co-caution{
    font-size: min(3.28vw,16px);
  }

  .content-date{
    font-size: min(7.5vw,50px);
  }

  .co-inner{
    width: 90vw;
  }
  
  .co-flex{
    display: block;
    font-size: 4.37vw;
    padding: 1em;
  }

  .co-flex.exp{
    margin-top: 1.5em;
  }

  .ex-flex.exp{
    margin-top: 3.5em;
  }

  .co-time,.co-title{
    width: 100%;
    border-right: none;
    padding: 0;
  }

  .co-flex:hover .co-time{
    border-right: none;
  }

  .co-flex-wrap{
    margin-top: 1em;
    flex-wrap: wrap;
    gap: 1em 0;
    justify-content: center;
  }

  .co-flex-wrap div{
    width: 50%;
    display: block;
    text-align: center;
  }

  .co-face{
    width: 60%;
    height: auto;
    margin-bottom: 0.5em;
  }

  .co-wrap{
    /* height: 140vw; */
    height: auto;
    max-height: none;
    padding: 5%;
    /* font-size: min(6.25vw, 25px); */
    font-size: min(4.375vw, 25px);
  }

  .ex-wrap{
    height: 160vw;
    font-size: min(6.25vw, 25px);
  }

  .co-contents img{
    height: 100%;
    width: 100%;
    max-width: none;
  }

  /* .co-contents .content01b{
    height: 140%;
    width: auto;
  } */

  .co-contents.active01a{
    overflow-x: scroll;
  }

  .co-title2{
    font-size: 1em;
    font-weight: 600;
  }

  .co-tab-wrap{ gap: 0.5em;}

  .co-tab-wrap button{font-size: 1em;}

  .co-modal-wrap{ font-size: 5vw; padding: 2.5vw;}

  .food .co-modal-wrap{ font-size: 5vw; padding: 2.5vw 2.5vw 3.5vw}

  .modal-date, .modal-location{ font-size: min(3.75vw,24px);}

  .modal-title{
    font-size: min(4.68vw,28px);
    margin: 1em auto 0;
    width: 95%;
    pointer-events: none;
  }

  .food .modal-title{
    margin: 1em auto 1.5em;
  }

  .slide-flex{
    width: 95%;
    display: block;
  }

  .slide-flex-wrap{width: 100%;}

  .modal-name{
    font-size: min(3.75vw,24px);
    margin-top: 0.5em;
  }

  .modal-post{
    margin-top: 0.5em;
    margin-bottom: 0;
    font-size: min(3.75vw,16px);
    line-height: 1.7;
  }

  .modal-post span{
    display: inline-block;
  }

  .modal-readtext{
    font-size: min(3.75vw,16px);
    line-height: 1.7;
    margin-top: 0.5em;
  }

  .slide-flex-wrap .modal-face{
    margin-top: 10vw;
  }

  /* .co-button{width: 20%; height: 12.1%;} */

  /* .co-button.b01{
    top: 9.9%;
    left: 21.7%;
    height: 3.8%;
  } */

  /* .co-button.b02{left: 21.7%; top: 14.4%;}
  .co-button.b03{left: 88.8%; top: 23.2%;}
  .co-button.b04{left: 21.7%; top: 36.2%;}
  .co-button.b05{left: 21.7%; top: 49.2%;}
  .co-button.b06{left: 88.8%; top: 49.2%;}
  .co-button.b07{left: 21.7%; top: 62.3%; height: 18.7%;}
  
  .co-button.b11{left: 21.9%; top: 10.3%; height: 12.2%;}
  .co-button.b12{left: 21.9%; top: 23.5%; height: 12.2%;}
  .co-button.b13{left: 21.9%; top: 36.7%; height: 12.2%;}
  .co-button.b14{left: 86.8%; top: 49.5%; height: 12.2%; width: 66.9%;}
  .co-button.b15{left: 21.9%; top: 62.9%; height: 12.2%;} */

  .ex-flex{
    display: block;
    font-size: min(4.375vw,17px);
    max-width: 550px;
    margin: 0 auto;
  }

  .ex-flex li{width: 100%;}

  .ex-wrap{
    height: 120vw;
    min-height: 550px;
    font-size: min(4.375vw,25px);
  }
  
  .ex-wrap .modal-contents{
    height: calc(100% - 8.5em);
    overflow: scroll;
    overflow-x: scroll;
  }

  .co-wrap .co-contents{
    /* height: 130vw; */
    /* overflow: scroll; */
    aspect-ratio: none;
    height: 90vw;
    min-height: 472px;
    overflow-x: scroll;
  }

  .co-wrap .content01a-wrap{
    height: 100%;
    width: auto;
    aspect-ratio: 100 / 57;
  }

  .co-wrap .content01b-wrap{
    height: 140%;
    width: auto;
    aspect-ratio: 100 / 79;
  }

  .modal-table01{
    margin: 1em 0 0;
  }

  .modal-table01.min{
    /* font-size: 0.8em; */
    font-size: min(4vw,20px);
  }

  .co-modal-triger{
    position: relative;
    font-size: min(3.75vw,16px);
    background: #eee;
    width: 100%;
    border: none;
    padding: 0.3em 0;
    margin-top: 0.5em;
    cursor: pointer;
  }

  .co-modal-triger::before,
  .co-modal-triger::after{
    content: '';
    width: 1em;
    height: 2px;
    background: #333;
    position: absolute;
    right: 1em;
    top: calc(50% - 1px);
    transform-origin: center;
  }
  .co-modal-triger::after{
    transform: rotate(90deg);
  }
  .co-modal-triger.active::after{
    transform: rotate(0);
  }

  .co-modal-target{
    height: 0;
    overflow: hidden;
  }
  .co-modal-target.active{
    height: auto;
  }

  .modal-table01.co-modal-target{
    display: none;
  }
  .modal-table01.co-modal-target.active{
    display: block;
  }

  /* .ex-wrap .content02a{
    height: 100%;
    width: auto;
    aspect-ratio: 50 / 27;
  } */

  .ex-wrap .content02a img{
    height: auto!important;
    width: 100%!important;
    /* height: 100%!important; */
    min-width: 500px;
  }

  .ex-wrap .content02a{
    width: auto;
    min-width: 500px;
    height: auto;
    aspect-ratio: 500 / 954;
    margin-top: 1em;
  }

  .ex-wrap .content02c{
    width: 100%;
    min-width: 500px;
    height: auto;
    /* aspect-ratio: 500 / 954; */
    margin-top: 1em;
  }

  .co-title02{
    font-size: 1.5em;
  }

  .modal-tab-wrap button, .dl-btn{
    font-size: 1em;
  }

  .ex-wrap02{
    /* width: auto; */
    /* height: 6.8%; */
    width: 7.5%;
    height: auto;
    /* background: rgba(0, 0, 0, 0.3); */
  }
  .ex-wrap02.w01{ top: 9.4%; }
  .ex-wrap02.w02{ top: 9.4%; }

  .ex-wrap02.w03{ top: 21.3%; }
  .ex-wrap02.w04{ top: 25.3%; }

  .ex-wrap02.w05{ top: 19.5%; }
  .ex-wrap02.w06{ top: 23.5%; }
  .ex-wrap02.w07{ top: 19.5%; }
  .ex-wrap02.w08{ top: 23.5%; }

  .ex-wrap02.w09{ top: 13.5%; }
  .ex-wrap02.w10{ top: 17.4%; }
  .ex-wrap02.w11{ top: 21.4%; }
  .ex-wrap02.w12{ top: 25.4%; }
  .ex-wrap02.w13{ top: 29.3%; }

  .ex-wrap02.w14{ top: 32.2%; }

  .ex-wrap02.w15{ top: 44.8%; }
  .ex-wrap02.w16{ top: 48.8%; }

  .ex-wrap02.w17{ top: 44.8%; }

  .ex-wrap02.w18{ top: 58.7%; }
  .ex-wrap02.w19{ top: 58.7%; }

  .ex-wrap02.w20{ top: 69.5%; }
  .ex-wrap02.w21{ top: 73.3%; }

  /* .ex-wrap02.w22{ top: 52.9%; left: 64.9%; height: 9.3%;}
  .ex-wrap02.w23{ top: 59.9%; left: 68.6%; height: 9.3%;} */

  .food .ex-wrap{
    height: auto;
    min-height: auto;
    max-height: none;
    aspect-ratio: auto;
  }

  /* .food-map-wrap{
    width: 100%;
    height: 90vw;
    min-height: 400px;
    overflow-x: scroll;
  } */

  .food-map-wrap{
    overflow-x: scroll;
    width: 100%;
    height: 100%;
    min-height: 500px;
    aspect-ratio: 1/1.29;
  }

  .food-map-wrap span{
    width: auto;
    height: 100%;
  }

  /* .food-map-wrap span{
    width: auto;
    height: 100%;
    aspect-ratio: 50 / 27;
    overflow: unset;
  } */

  .modal-food-text{
    font-size: min(4vw,18px);
    margin-top: 1em;
  }

  .ex-wrap02 p{
    font-size: min(3.75vw,16px);
  }

  .ex-wrap02 p.active{
    transform: translate(-50%,0);
    opacity: 1;
    transition: ease 0.3s;
  }

  .ex-wrap02.w09 p,
  .ex-wrap02.w10 p,
  .ex-wrap02.w11 p,
  .ex-wrap02.w12 p,
  .ex-wrap02.w13 p{ transform: translate(-35%, -15%);}
  .ex-wrap02.w09 p.active,
  .ex-wrap02.w10 p.active,
  .ex-wrap02.w11 p.active,
  .ex-wrap02.w12 p.active,
  .ex-wrap02.w13 p.active{ transform: translate(-35%, 0);}
  .ex-wrap02.w09:hover p,
  .ex-wrap02.w10:hover p,
  .ex-wrap02.w11:hover p,
  .ex-wrap02.w12:hover p,
  .ex-wrap02.w13:hover p{ transform: translate(-35%, 0);}
  .ex-wrap02.w09 p::after,
  .ex-wrap02.w10 p::after,
  .ex-wrap02.w11 p::after,
  .ex-wrap02.w12 p::after,
  .ex-wrap02.w13 p::after{ transform: translateX(-200%);}

  .ex-wrap02.w20 p,
  .ex-wrap02.w21 p{
    transform: rotate(-45deg) translate(-73%,-115%);
  }

  .ex-wrap02.w20:hover p,
  .ex-wrap02.w21:hover p{
    transform: rotate(-45deg) translate(-73%,-100%);
  }

  .ex-wrap02.w20 p.active,
  .ex-wrap02.w21 p.active{
    transform: rotate(-45deg) translate(-73%,-100%);
  }

  .jcoin-link01{
    left: 3.5%;
    top: 13.2%;
    width: 93%;
    aspect-ratio: 3.3/1;
  }

  .jcoin-flex{
    top: 54.35%;
    display: block;
    width: 60%;
  }

  .jcoin-flex a{
    display: block;
    width: 100%;
    margin-bottom: 5vw;
  }

  .jcoin-link02{
    left: 0;
    top: 95.3%;
    width: 100%;
    font-size: 3.8vw;
    padding-left: 0;
  }

  .sec-jcoin02 .subinner{width: 90%;}

  .jcoin-chtext{font-size: min(3.8vw,28px); padding: 0.4em 0 0.5em 0.5em;}

  .jcoin-readtext,
  .jcoin-wrap01,
  .jcoin-readtext02,
  .jcoin-q,
  .jcoin-a{font-size: min(3.43vw,20px);}

  .jcoin-wrap01-flex p{width: calc(100% / 3);}

  .jcoin-linkbtn02{
    position: absolute;
    top: 12%;
    left: 20%;
    background: #fff;
    opacity: 0;
    display: block;
    width: 51%;
    height: auto;
    aspect-ratio: 19/4;
    z-index: 2;
  }
  .jcoin-linkbtn01:hover{
    opacity: 0;
  }

  .jcoin-linkbtn01{
    position: absolute;
    top: 15.1%;
    left: 20%;
    background: #fff;
    opacity: 0;
    display: block;
    width: 46%;
    height: auto;
    aspect-ratio: 4/1;
    z-index: 2;
  }

  .jcoin-linkbtn03{
    position: absolute;
    top: 16.7%;
    left: 20%;
    background: #fff;
    opacity: 0;
    display: block;
    width: 57%;
    height: auto;
    aspect-ratio: 19/4;
    z-index: 2;
  }

  .jcoin-textbox{
    padding: 2.5% 5%;
  }

  .sec-faq{padding: 14vw 0;}

  .sec-faq dl{font-size: min(4vw,20px);}

  .faq-title{font-size: min(9.37vw,50px);}

  .sec03-flex03,
  .sec03-flex05{
    display: block;
  }

  .sec03-flex05 a img{
    margin-bottom: 2.5vw;
    width: 55%;
  }

  .sec03-flex04{
    margin-top: 6vw;
    margin: 5vw auto 0;
    font-size: min(3.75vw, 18px);
    flex-wrap: wrap;
    width: 20em;
    border-left: 1px solid #333;
    border-right: 1px solid #333;
  }

  .sec03-flex04 p{
    width: 100%;
    margin-bottom: 1em;
    border:none
  }

  .sec03-flex04 p:first-of-type{border: none;}
  .sec03-flex04 p:last-of-type{margin-bottom: 0;}

  .sec-subtitle02{font-size: min(6.25vw,32px); margin: 3em auto 1em;}

  .sec03-text01{font-size: min(4.375vw,22px); line-height: 2;}


}



/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}


/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}


/* 年内公開用 */

.header-menu .nolink a{pointer-events: none; text-align: center; display: block; line-height: 1.1;}

.header-menu .nolink a span{font-size: 0.6em;}

.sec01-boxtext{
  background: #01B9A8;
  color: #fff;
  line-height: 1.5;
  padding: 0.4em 1em;
  display: inline-block;
}
.sec01-boxtext span{
  display: inline-block ;
}