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

/*=============================
  liqBg
=============================*/
/*liqSlide
=============================*/
#liqSlide {
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  visibility: hidden;
}

/*liqBg
=============================*/
#liqBg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 0;
  isolation: isolate;
  overflow: hidden;
}

#liqBg canvas {
  aspect-ratio: 1206/2262;
  width: 100%!important;
  height: 100%!important;
  object-fit: cover;
  object-position: top center;
  pointer-events: none;
}

/*=============================
  scroll-container
=============================*/
.scroll-container {
  position: relative;
  z-index: 10;
}

/*=============================
  topPage
=============================*/
#topPage{
  height: 100dvh;
}
#topPage > .inner{
  width: 100%;
  height: 100%;
  padding: 18px 15px;
}
#topPage h2{
  aspect-ratio: 453/202;
  max-width: 240px;
  width: calc((240/(var(--vw) - 30))*100%);
  margin-bottom: auto;
}
#topPage .logoArea{
}
#topPage .logoArea .copy02{
  aspect-ratio: 185/50;
  max-width: 185px;
  margin-right: auto;
}
#topPage .logoArea .logo{
  aspect-ratio: 148/67;
  max-width: 140px;
}


section:nth-of-type(n+2){margin-top: 100px;}
section .tit{
  height: 32px;
}
/*=============================
  sch
=============================*/
#sch{margin-top: 150px;}
#sch > .inner{ 
  padding: 0px 15px 50px;
}
#sch .titArea .tit{
  width: fit-content;
}
#sch .titArea .txt{
  margin-top: 40px;
}
#sch .titArea .txt span{display: block;}
#sch .titArea .txt .jp{
  font-size: 0.14rem;
  letter-spacing: 0.05em;
  line-height: calc(20/14);
}
#sch .titArea .txt .en{
  font-size: 0.14rem;
  letter-spacing: 0.05em;
  line-height: calc(20/14);
  margin-top: 0.5em;
}

#sch .calArea {
  margin-top: 40px;
}
#sch .cal_m {
  row-gap: 8px;
}
#sch .cal_m .splide__arrows{
  height: 40px;
  column-gap: 5px;
}
#sch .cal_m .splide__arrows button{
  flex: 1;
  height: 40px;
  background: rgba(0,0,0,0.2);
  backdrop-filter: blur(20px);
  border: none;
  cursor: pointer;
  font-size: 0.16rem;
  letter-spacing: 0.03em;
  color: #FFF;
  position: relative;
  transition: color 0.35s ease;
}
#sch .cal_m .splide__arrows button[disabled]{
  color: rgba(255,255,255,0.5);
  cursor: default;
  pointer-events: none;
}
#sch .cal_m .splide__arrows button img{
  display: inline-block;
  width: 20px;
  height: auto;
}
#sch .cal_m .splide__arrows button .txt{
  margin: 0 auto;
}
#sch .cal_m .splide__arrows button[disabled] img{
  opacity: 0.5;
}
#sch .cal_m .splide__arrows button.splide__arrow--next{margin-left: auto;}
#sch .cal_m .splide__arrows button.splide__arrow--prev{padding: 0 20px 0 15px;}

#sch .cal_m .splide__arrows button.splide__arrow--next{padding: 0 15px 0 20px;}
#sch .cal_m .splide__arrows button.splide__arrow--next img{transform: scale(-1, 1);}

#sch .cal_m .splide__track__outer{
  background: rgba(0,0,0,0.2);
  backdrop-filter: blur(20px);
  isolation: isolate;
	border-radius: 10px;
  padding: 20px 0px 0px;
}
#sch .cal_m .splide__track{
  height: 100%;
}
#sch .cal_m .splide__track .splide__list{
}
#sch .cal_m .splide__slide{
  width: calc(100% - 70px + 16px);
  height: 350px;
  grid-template-columns: repeat(7, 1fr);
  grid-template-rows: 45px 60px repeat(6, 1fr);
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  cursor: grab;
  position: relative;
  top:15px;
}
#sch .cal_m .splide__slide .year {
  grid-area: 1 / 1 / 2 / 7;
  font-size: 0.2rem;
  padding-left: 10px;
}
#sch .cal_m .splide__slide .month {
  grid-area: 1 / 7 / 2 / 8;
  font-size: 0.4rem;
  text-align: right;
  padding-right: 10px;
}
#sch .cal_m .splide__slide .week{
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.16rem;
  letter-spacing: 0.03em;
  margin-top: 10px;
}
#sch .cal_m .splide__slide .week:nth-of-type(3) { grid-area: 2 / 1 / 3 / 2; }
#sch .cal_m .splide__slide .week:nth-of-type(4) { grid-area: 2 / 2 / 3 / 3; }
#sch .cal_m .splide__slide .week:nth-of-type(5) { grid-area: 2 / 3 / 3 / 4; }
#sch .cal_m .splide__slide .week:nth-of-type(6) { grid-area: 2 / 4 / 3 / 5; }
#sch .cal_m .splide__slide .week:nth-of-type(7) { grid-area: 2 / 5 / 3 / 6; }
#sch .cal_m .splide__slide .week:nth-of-type(8) { grid-area: 2 / 6 / 3 / 7; }
#sch .cal_m .splide__slide .week:nth-of-type(9) { grid-area: 2 / 7 / 3 / 8; }

#sch .cal_m .splide__slide .day{padding-bottom: 5px;}
#sch .cal_m .splide__slide .day:nth-of-type(1) { grid-area: 3 / 1 / 4 / 2; }
#sch .cal_m .splide__slide .day:nth-of-type(2) { grid-area: 3 / 2 / 4 / 3; }
#sch .cal_m .splide__slide .day:nth-of-type(3) { grid-area: 3 / 3 / 4 / 4; }
#sch .cal_m .splide__slide .day:nth-of-type(4) { grid-area: 3 / 4 / 4 / 5; }
#sch .cal_m .splide__slide .day:nth-of-type(5) { grid-area: 3 / 5 / 4 / 6; }
#sch .cal_m .splide__slide .day:nth-of-type(6) { grid-area: 3 / 6 / 4 / 7; }
#sch .cal_m .splide__slide .day:nth-of-type(7) { grid-area: 3 / 7 / 4 / 8; }
#sch .cal_m .splide__slide .day:nth-of-type(8) { grid-area: 4 / 1 / 5 / 2; }
#sch .cal_m .splide__slide .day:nth-of-type(9) { grid-area: 4 / 2 / 5 / 3; }
#sch .cal_m .splide__slide .day:nth-of-type(10) { grid-area: 4 / 3 / 5 / 4; }
#sch .cal_m .splide__slide .day:nth-of-type(11) { grid-area: 4 / 4 / 5 / 5; }
#sch .cal_m .splide__slide .day:nth-of-type(12) { grid-area: 4 / 5 / 5 / 6; }
#sch .cal_m .splide__slide .day:nth-of-type(13) { grid-area: 4 / 6 / 5 / 7; }
#sch .cal_m .splide__slide .day:nth-of-type(14) { grid-area: 4 / 7 / 5 / 8; }
#sch .cal_m .splide__slide .day:nth-of-type(15) { grid-area: 5 / 1 / 6 / 2; }
#sch .cal_m .splide__slide .day:nth-of-type(16) { grid-area: 5 / 2 / 6 / 3; }
#sch .cal_m .splide__slide .day:nth-of-type(17) { grid-area: 5 / 3 / 6 / 4; }
#sch .cal_m .splide__slide .day:nth-of-type(18) { grid-area: 5 / 4 / 6 / 5; }
#sch .cal_m .splide__slide .day:nth-of-type(19) { grid-area: 5 / 5 / 6 / 6; }
#sch .cal_m .splide__slide .day:nth-of-type(20) { grid-area: 5 / 6 / 6 / 7; }
#sch .cal_m .splide__slide .day:nth-of-type(21) { grid-area: 5 / 7 / 6 / 8; }
#sch .cal_m .splide__slide .day:nth-of-type(22) { grid-area: 6 / 1 / 7 / 2; }
#sch .cal_m .splide__slide .day:nth-of-type(23) { grid-area: 6 / 2 / 7 / 3; }
#sch .cal_m .splide__slide .day:nth-of-type(24) { grid-area: 6 / 3 / 7 / 4; }
#sch .cal_m .splide__slide .day:nth-of-type(25) { grid-area: 6 / 4 / 7 / 5; }
#sch .cal_m .splide__slide .day:nth-of-type(26) { grid-area: 6 / 5 / 7 / 6; }
#sch .cal_m .splide__slide .day:nth-of-type(27) { grid-area: 6 / 6 / 7 / 7; }
#sch .cal_m .splide__slide .day:nth-of-type(28) { grid-area: 6 / 7 / 7 / 8; }
#sch .cal_m .splide__slide .day:nth-of-type(29) { grid-area: 7 / 1 / 8 / 2; }
#sch .cal_m .splide__slide .day:nth-of-type(30) { grid-area: 7 / 2 / 8 / 3; }
#sch .cal_m .splide__slide .day:nth-of-type(31) { grid-area: 7 / 3 / 8 / 4; }
#sch .cal_m .splide__slide .day:nth-of-type(32) { grid-area: 7 / 4 / 8 / 5; }
#sch .cal_m .splide__slide .day:nth-of-type(33) { grid-area: 7 / 5 / 8 / 6; }
#sch .cal_m .splide__slide .day:nth-of-type(34) { grid-area: 7 / 6 / 8 / 7; }
#sch .cal_m .splide__slide .day:nth-of-type(35) { grid-area: 7 / 7 / 8 / 8; }
#sch .cal_m .splide__slide .day:nth-of-type(36) { grid-area: 8 / 1 / 9 / 2; }
#sch .cal_m .splide__slide .day:nth-of-type(37) { grid-area: 8 / 2 / 9 / 3; }
#sch .cal_m .splide__slide .day:nth-of-type(38) { grid-area: 8 / 3 / 9 / 4; }
#sch .cal_m .splide__slide .day:nth-of-type(39) { grid-area: 8 / 4 / 9 / 5; }
#sch .cal_m .splide__slide .day:nth-of-type(40) { grid-area: 8 / 5 / 9 / 6; }
#sch .cal_m .splide__slide .day:nth-of-type(41) { grid-area: 8 / 6 / 9 / 7; }
#sch .cal_m .splide__slide .day:nth-of-type(42) { grid-area: 8 / 7 / 9 / 8; }

#sch .cal_m .splide__slide .day .num{
  text-align: center;
  font-size: 0.16rem;
}
#sch .cal_m .splide__slide .day .mark{
  aspect-ratio: 1/1;
  height: 100%;
  max-height: 12px;
  margin-left: auto;
  margin-right: auto;
  margin-top: max(6%,3px);
}
#sch .cal_m .splide__slide .day .mark li{
  aspect-ratio: 1/1;
  max-width: 6px;
  width: 50%;
  align-self: flex-start;
}
#sch .no{background: var(--green);}
#sch .re{background: var(--blue);}
#sch .ev{background: var(--yello);}
#sch .or{background: var(--or);}


#sch .cal_d {
  background: rgba(0,0,0,0.2);
  backdrop-filter: blur(20px);
  isolation: isolate;
	border-radius: 10px;
  padding: 25px 7px 35px 20px;
  margin-top: 20px;
}
#sch .cal_d .cList{
  column-gap: 15px;
  padding-right: 13px;
}
#sch .cal_d .cList li{
  width: fit-content;
  font-size: 0.15rem;
  letter-spacing: 0.03em;
  line-height: 1.5;
}
#sch .cal_d .cList li span{
  display: inline-block;
  aspect-ratio: 1/1;
  width: 10px;
  margin-right: 0.25em;
}

#sch .cal_d .splide{
  height: 300px;
  margin-top: 30px;
}
#sch .cal_d .splide .splide__track,
#sch .cal_d .splide .splide__list{
  height: 100%;
}
#sch .cal_d .splide .splide__slide{
  width: 100%;
  height: 100%;
  padding-right: 13px;
}
#sch .cal_d .splide .splide__slide ul li{
  border-bottom: 1px solid #FFF;
}
#sch .cal_d .splide .splide__slide ul li a{
  font-size: 0.14rem;
  padding: 15px 0px;
}
#sch .cal_d .splide .splide__slide ul li a .mark{
  aspect-ratio: 1/1;
  display: inline-block;
  width: 12px;
  margin-right: 5px;
  margin-top: 0.2em;
}
#sch .cal_d .splide .splide__slide ul li a .day{
  width: 45px;
  line-height: 1.3;
}
#sch .cal_d .splide .splide__slide ul li a .txt{
  width: calc(100% - 45px - 30px - 50px - 27px);
  letter-spacing: 0.05em;
  line-height: 1.3;
  margin-right: auto;
  padding-right: 1em;
}
#sch .cal_d .splide .splide__slide ul li a .floor{
  width: 50px;
  letter-spacing: 0.05em;
  text-align: right;
  margin-top: 0.2em;
}
#sch .cal_d .splide .splide__slide ul li a .icon{
  width: 17px;
  height: 13px;
  margin-left: 10px;
  margin-top: 0.1em;
}


/*=============================
  news
=============================*/
#news > .inner{
  padding: 0px 20px 0px 20px;
}

#news .titArea{
}
#news .titArea .tit{
  width: fit-content;
  margin-right: auto;
}
#news .titArea .btList{
  width: fit-content;
}
#news .titArea .btList li + li{
  margin-top: 6px;
}
#news .titArea .btList li a{
  min-width: 180px;
  min-height: 40px;
  background: rgba(0,0,0,0.2);
  backdrop-filter: blur(20px);
  font-size: 0.17rem;
  letter-spacing: 0.05em;
  padding: 0.5em 1em 0.5em 1.5em;
}
#news .titArea .btList li a .icon{
  width: 13px;
  height: 13px;
  margin-left: auto;
}


#news .newsArea{
  margin-top: 30px;
}
#news .newsArea ul{
  column-gap: 15px;
  flex-wrap: wrap;
}
#news .newsArea ul + ul,
#news .newsArea ul > li:nth-child(n+3),
#news .newsArea ul:not(:has(li:nth-child(3))) > li:nth-child(n+2){
  margin-top: 15px;
}
#news .newsArea ul li{width: 100%;}
#news .newsArea ul:has(li:nth-child(3)) li{
  flex: 0 0 calc((100% - 15px) / 2);
  width: calc((100% - 15px) / 2);
}
#news .newsArea ul li a{
  height: 100%;
  background: rgba(0,0,0,0.2);
  backdrop-filter: blur(20px);
	isolation: isolate;
	border-radius: 10px;
  row-gap: 5px;
  container-type: inline-size;
}
#news .newsArea ul li a{padding: 15px 15px 15px;}
#news .newsArea ul:has(li:nth-child(3)) li a{row-gap: 3px;padding: 15px 15px 10px;}
#news .newsArea ul li a .thum{
  aspect-ratio: 1/1;
  width: 100%;
  overflow: hidden;
}
#news .newsArea ul li a .thum.bgW{background: #FFF;}

#news .newsArea ul li a .data{
  width: 100%;
  letter-spacing: 0.05em;
  font-size: clamp(0.1rem, 5.26cqi, 0.12rem);
}
#news .newsArea ul li a .data{margin-top: 1em;}
#news .newsArea ul:has(li:nth-child(3)) li a .data{margin-top: 0.5em;}
#news .newsArea ul li a .data .status{
  margin-left: 1em;
}
#news .newsArea ul li a h3{
  width: calc(100% - 30px);
  font-size: clamp(0.11rem,5.26cqi, 0.15rem);
  letter-spacing: 0.05em;
  margin-right: auto;
}
#news .newsArea ul li a .floor{
  width: 30px;
  text-align: right;
  font-size: clamp(0.11rem,5.26cqi, 0.15rem);
  letter-spacing: 0.05em;
}
/*=============================
  csoon
=============================*/
#csoon{height: 100dvh;}
#csoon > .inner{
  height: 100%;
  padding: 25px 15px 15px;
}
#csoon h2{
  margin:0 10px;
  font-size: 0.41rem;
  line-height: calc(43/41);
}
#csoon footer{
  margin-top: auto;
}
#csoon footer #backToTop{
  width: 135px;
  margin-left: auto;
  margin-bottom: 10px;
}
#csoon footer #backToTop a{
  height: 52px;
  padding: 1em 1.25em 1em 1.5em;
  font-size: 0.22rem;
  background: rgba(0,0,0,0.2);
  backdrop-filter: blur(20px);
}
#csoon footer #backToTop a .icon{
  display: inline-block;
  width: 21px;
  height: 10px;
  margin-left: auto;
	transform: scale(1,-1) rotate(-90deg);
}


#csoon footer #fnav{
  --fnav_in_w:620;
  background: rgba(0,0,0,0.2);
  backdrop-filter: blur(20px);
  padding: 20px 30px 20px 15px;
  isolation: isolate;
	border-radius: 12px;
}
#csoon footer #fnav .logo{
  aspect-ratio: 112/50;
  width: 112px;
  margin-right: auto;
}
#csoon footer #fnav .snsList{
  width: fit-content;
  padding-top: 3px;
}
#csoon footer #fnav .snsList li{
  width: 20px;
  height: 20px;
}
#csoon footer #fnav .snsList li + li{
  margin-left: 20px;
}
#csoon footer #fnav .snsList li a{
  display: block;
  width: 100%;
  aspect-ratio: 1/1;
}
#csoon footer #fnav .copyRight{
  width: 100%;
  font-size: 0.09rem;
  letter-spacing: 0.1em;
  margin-top: 2em;
}
/* mainF
=============================*/