@charset "utf-8";
/*===============================================
root
===============================================*/
:root {
  /*font-size:67.5% screen brake:1280,400 */
  --size-10:clamp(0.5rem, 0.57vw + 0.27rem, 1rem);
  --size-15:clamp(0.7rem, 0.91vw + 0.34rem, 1.5rem);
  --size-20:clamp(1rem, 1.14vw + 0.55rem, 2rem);
  --size-25:clamp(1.2rem, 1.48vw + 0.61rem, 2.5rem);
  --size-30:clamp(1.5rem, 1.7vw + 0.82rem, 3rem);
  --size-40:clamp(2rem, 2.27vw + 1.09rem, 4rem);
  --size-50:clamp(2.5rem, 2.84vw + 1.36rem, 5rem);
  --size-60:clamp(3rem, 3.41vw + 1.64rem, 6rem);
  --size-70:clamp(3.5rem, 3.98vw + 1.91rem, 7rem);
  --size-80:clamp(4rem, 4.55vw + 2.18rem, 8rem);
  --size-90:clamp(4.5rem, 5.11vw + 2.45rem, 9rem);
  --size-100:clamp(5rem, 5.68vw + 2.73rem, 10rem);
  --size-110:clamp(5.5rem, 6.25vw + 3rem, 11rem);
  --size-120:clamp(6rem, 6.82vw + 3.27rem, 12rem);
  --size-130:clamp(6.5rem, 7.39vw + 3.55rem, 13rem);
  --size-140:clamp(7rem, 7.95vw + 3.82rem, 14rem);
  --size-150:clamp(7.5rem, 8.52vw + 4.09rem, 15rem);
  --text-10:1rem;
  --text-11:1.1rem;
  --text-12:clamp(1.1rem, 0.11vw + 1.05rem, 1.2rem);
  --text-13:clamp(1.2rem, 0.11vw + 1.15rem, 1.3rem);
  --text-14:clamp(1.3rem, 0.11vw + 1.25rem, 1.4rem);
  --text-15:clamp(1.4rem, 0.11vw + 1.35rem, 1.5rem);
  --text-16:clamp(1.4rem, 0.23vw + 1.31rem, 1.6rem);
  --text-18:clamp(1.5rem, 0.34vw + 1.364rem, 1.8rem);
  --text-20:clamp(1.6rem, 0.45vw + 1.418rem, 2.0rem);
  --text-22:clamp(1.6rem, 0.68vw + 1.327rem, 2.2rem);
  --text-25:clamp(1.8rem, 0.8vw + 1.48rem, 2.5rem);
  --text-28:clamp(1.8rem, 1.25vw + 1.3rem, 2.8rem);
  --text-29:clamp(1.8rem, 1.25vw + 1.3rem, 2.9rem);
  --text-30:clamp(1.9rem, 1.4000rem + 1.2500vw, 3rem);
  --text-32:clamp(2rem, 1.36vw + 1.45rem, 3.2rem);
  --text-38:clamp(2rem, 2.05vw + 1.18rem, 3.8rem);
  --text-42:clamp(2.2rem, 2.27vw + 1.29rem, 4.2rem);
  }

/*===============================================
margin padding width font-size
===============================================*/
.m-0 {margin:0px !important; }
.mx-auto {
  margin-right:auto !important;
  margin-left:auto !important;}
.ml-auto {margin-left:auto !important;}
/* margin-top */
.mt-0 { margin-top:0 !important; }
.mt-5 { margin-top:5px !important; }
.mt-10 { margin-top:var(--size-10) !important; }
.mt-15 { margin-top:var(--size-15) !important; }
.mt-20 { margin-top:var(--size-20) !important; }
.mt-25 { margin-top:var(--size-25) !important; }
.mt-30 { margin-top:var(--size-30) !important; }
.mt-40 { margin-top:var(--size-40) !important; }
.mt-50 { margin-top:var(--size-50) !important; }
.mt-60 { margin-top:var(--size-60) !important; }
.mt-70 { margin-top:var(--size-70) !important; }
.mt-80 { margin-top:var(--size-80) !important; }
.mt-90 { margin-top:var(--size-90) !important; }
.mt-100 { margin-top:var(--size-100) !important; }
.mt-110 { margin-top:var(--size-110) !important; }
.mt-120 { margin-top:var(--size-120) !important; }
.mt-130 { margin-top:var(--size-130) !important; }
.mt-140 { margin-top:var(--size-140) !important; }
.mt-150 { margin-top:var(--size-150) !important; }
/* margin-bottom */
.mb-0 { margin-bottom:0 !important; }
.mb-5 { margin-bottom:5px !important; }
.mb-10 { margin-bottom:var(--size-10) !important; }
.mb-15 { margin-bottom:var(--size-15) !important; }
.mb-20 { margin-bottom:var(--size-20) !important; }
.mb-25 { margin-bottom:var(--size-25) !important; }
.mb-30 { margin-bottom:var(--size-30) !important; }
.mb-40 { margin-bottom:var(--size-40) !important; }
.mb-50 { margin-bottom:var(--size-50) !important; }
.mb-60 { margin-bottom:var(--size-60) !important; }
.mb-70 { margin-bottom:var(--size-70) !important; }
.mb-80 { margin-bottom:var(--size-80) !important; }
.mb-90 { margin-bottom:var(--size-90) !important; }
.mb-100 { margin-bottom:var(--size-100) !important; }
.mb-110 { margin-bottom:var(--size-110) !important; }
.mb-120 { margin-bottom:var(--size-120) !important; }
.mb-130 { margin-bottom:var(--size-130) !important; }
.mb-140 { margin-bottom:var(--size-140) !important; }
.mb-150 { margin-bottom:var(--size-150) !important; }
@media screen and (max-width: 767px) {
  .sp_mt-0 { margin-top:0 !important; }
  .sp_mt-5 { margin-top:5px !important; }
  .sp_mt-10 { margin-top:var(--size-10) !important; }
  .sp_mt-15 { margin-top:var(--size-15) !important; }
  .sp_mt-20 { margin-top:var(--size-20) !important; }
  .sp_mt-25 { margin-top:var(--size-25) !important; }
  .sp_mt-30 { margin-top:var(--size-30) !important; }
  .sp_mt-40 { margin-top:var(--size-40) !important; }
  .sp_mt-50 { margin-top:var(--size-50) !important; }
  .sp_mt-60 { margin-top:var(--size-60) !important; }
  .sp_mt-70 { margin-top:var(--size-70) !important; }
  .sp_mt-80 { margin-top:var(--size-80) !important; }
  .sp_mt-90 { margin-top:var(--size-90) !important; }
  .sp_mt-100 { margin-top:var(--size-100) !important; }
  .sp_mt-110 { margin-top:var(--size-110) !important; }
  .sp_mt-120 { margin-top:var(--size-120) !important; }
  .sp_mt-130 { margin-top:var(--size-130) !important; }
  .sp_mt-140 { margin-top:var(--size-140) !important; }
  .sp_mt-150 { margin-top:var(--size-150) !important; }

  .sp_mb-0 { margin-bottom:0 !important; }
  .sp_mb-5 { margin-bottom:5px !important; }
  .sp_mb-10 { margin-bottom:var(--size-10) !important; }
  .sp_mb-15 { margin-bottom:var(--size-15) !important; }
  .sp_mb-20 { margin-bottom:var(--size-20) !important; }
  .sp_mb-25 { margin-bottom:var(--size-25) !important; }
  .sp_mb-30 { margin-bottom:var(--size-30) !important; }
  .sp_mb-40 { margin-bottom:var(--size-40) !important; }
  .sp_mb-50 { margin-bottom:var(--size-50) !important; }
  .sp_mb-60 { margin-bottom:var(--size-60) !important; }
  .sp_mb-70 { margin-bottom:var(--size-70) !important; }
  .sp_mb-80 { margin-bottom:var(--size-80) !important; }
  .sp_mb-90 { margin-bottom:var(--size-90) !important; }
  .sp_mb-100 { margin-bottom:var(--size-100) !important; }
  .sp_mb-110 { margin-bottom:var(--size-110) !important; }
  .sp_mb-120 { margin-bottom:var(--size-120) !important; }
  .sp_mb-130 { margin-bottom:var(--size-130) !important; }
  .sp_mb-140 { margin-bottom:var(--size-140) !important; }
  .sp_mb-150 { margin-bottom:var(--size-150) !important; }
  }
/* padding */
.px-20 {
  padding-right:var(--size-20) !important;
  padding-left:var(--size-20) !important;}
.px-30 {
  padding-right:var(--size-30) !important;
  padding-left:var(--size-30) !important;}
.px-40 {
  padding-right:var(--size-40) !important;
  padding-left:var(--size-40) !important;}

.pr-1\/10 {padding-right:10% !important;}
.pr-2\/10 {padding-right:20% !important;}
.pr-3\/10 {padding-right:30% !important;}
.pr-4\/10 {padding-right:40% !important;}
.pr-5\/10 {padding-right:50% !important;}

/*---- width ---------------------*/
.w-fit {width:fit-content !important; }

.w-1\/2 {width:50% !important;}
.w-1\/3 {width:33.333333% !important;}
.w-2\/3 {width:66.666667% !important;}
.w-1\/4 {width:25% !important;}
.w-2\/4 {width:50% !important;}
.w-3\/4 {width:75% !important;}
.w-1\/5 {width:20% !important;}
.w-2\/5 {width:40% !important;}
.w-3\/5 {width:60% !important;}
.w-4\/5 {width:80% !important;}
.w-1\/6 {width:16.666667% !important;}
.w-2\/6 {width:33.333333% !important;}
.w-3\/6 {width:50% !important;}
.w-4\/6 {width:66.666667% !important;}
.w-5\/6 {width:83.333333% !important;}
.w-1\/12 {width:8.333333% !important;}
.w-2\/12 {width:16.666667% !important;}
.w-3\/12 {width:25% !important;}
.w-4\/12 {width:33.333333% !important;}
.w-5\/12 {width:41.666667% !important;}
.w-6\/12 {width:50% !important;}
.w-7\/12 {width:58.333333% !important;}
.w-8\/12 {width:66.666667% !important;}
.w-9\/12 {width:75% !important;}
.w-10\/12 {width:83.333333% !important;}
.w-11\/12 {width:91.666667% !important;}

.w100 {width:100% !important; }
.w90 {width:90% !important; }
.w80 {width:80% !important; }
.w70 {width:70% !important; }
.w60 {width:60% !important; }
.w50 {width:50% !important; }
.w40 {width:40% !important; }
.w30 {width:30% !important; }
.w20 {width:20% !important; }
.w10 {width:10% !important; }
@media print, screen and (min-width: 768px) {
  .pc_w100 {width:100% !important; }
  .pc_w90 {width:90% !important; }
  .pc_w80 {width:80% !important; }
  .pc_w70 {width:70% !important; }
  .pc_w60 {width:60% !important; }
  .pc_w50 {width:50% !important; }
  .pc_w40 {width:40% !important; }
  .pc_w30 {width:30% !important; }
  .pc_w20 {width:20% !important; }
  .pc_w10 {width:10% !important; }
  }
/*---- max-width ---------------------*/
@media print, screen and (min-width: 768px) {
  .pc_max30 { max-width:30px !important; }
  .pc_max40 { max-width:40px !important; }
  .pc_max50 { max-width:50px !important; }
  .pc_max60 { max-width:60px !important; }
  .pc_max70 { max-width:70px !important; }
  .pc_max80 { max-width:80px !important; }
  .pc_max90 { max-width:90px !important; }
  .pc_max100 { max-width:100px !important; }
  .pc_max110 { max-width:110px !important; }
  .pc_max120 { max-width:120px !important; }
  .pc_max130 { max-width:130px !important; }
  .pc_max140 { max-width:140px !important; }
  .pc_max150 { max-width:150px !important; }
  .pc_max200 { max-width:200px !important; }
  .pc_max250 { max-width:250px !important; }
  .pc_max300 { max-width:300px !important; }
  .pc_max350 { max-width:350px !important; }
  .pc_max400 { max-width:400px !important; }
  .pc_max450 { max-width:450px !important; }
  .pc_max500 { max-width:500px !important; }
  }
@media screen and (max-width: 767px) {
  .sp_max30 { max-width:30px !important; }
  .sp_max40 { max-width:40px !important; }
  .sp_max50 { max-width:50px !important; }
  .sp_max60 { max-width:60px !important; }
  .sp_max70 { max-width:70px !important; }
  .sp_max80 { max-width:80px !important; }
  .sp_max90 { max-width:90px !important; }
  .sp_max100 { max-width:100px !important; }
  .sp_max110 { max-width:110px !important; }
  .sp_max120 { max-width:120px !important; }
  .sp_max130 { max-width:130px !important; }
  .sp_max140 { max-width:140px !important; }
  .sp_max150 { max-width:150px !important; }
  .sp_max200 { max-width:200px !important; }
  .sp_max250 { max-width:250px !important; }
  .sp_max300 { max-width:300px !important; }
  .sp_max350 { max-width:350px !important; }
  .sp_max400 { max-width:400px !important; }
  .sp_max450 { max-width:450px !important; }
  .sp_max500 { max-width:500px !important; }
  }
/*---- font-size ---------------------*/
.text-10 {font-size:var(--text-10);}
.text-11 {font-size:var(--text-11);}
.text-12 {font-size:var(--text-12);}
.text-13 {font-size:var(--text-13);}
.text-14 {font-size:var(--text-14);}
.text-15 {font-size:var(--text-15);}
.text-16 {font-size:var(--text-16);}
.text-18 {font-size:var(--text-18);}
.text-20 {font-size:var(--text-20);}
.text-22 {font-size:var(--text-22);}
.text-25 {font-size:var(--text-25);}
.text-28 {font-size:var(--text-28);}
.text-29 {font-size:var(--text-29);}
.text-30 {font-size:var(--text-30);}
.text-32 {font-size:var(--text-32);}
.text-35 {font-size:var(--text-35);}
.text-38 {font-size:var(--text-38);}
.text-42 {font-size:var(--text-42);}

.text-xs {font-size:75% !important;}
.text-s {font-size:85% !important;}
.text-m {font-size:95% !important;}
.text-l {font-size:115% !important;}
.text-xl {font-size:125% !important;}
@media screen and (max-width: 767px) {
  .sp_text-xs {font-size:75% !important;}
  .sp_text-s {font-size:85% !important;}
  .sp_text-m {font-size:95% !important;}
  .sp_text-l {font-size:115% !important;}
  .sp_text-xl {font-size:125% !important;}
  }
/*---- line-height ---------------------*/
.line-height-20 {line-height:2;}
.line-height-18 {line-height:1.875;}
.line-height-15 {line-height:1.5;}
.line-height-14 {line-height:1.4;}
.line-height-13 {line-height:1.3;}
/*===============================================
layout
===============================================*/
/* flex */
.flex {display:flex !important; }
.flex-wrapp {flex-wrap:wrap !important; }
.flex-wrap-reverse {flex-wrap:wrap-reverse !important; }
.flex-nowrap {flex-wrap:nowrap !important; }
.flex-row {flex-direction:row !important; }
.flex-row-reverse {flex-direction:row-reverse !important;}
.flex-col {flex-direction:column !important;}
.flex-col-reverse {flex-direction:column-reverse !important;}
.justify-start {justify-content:flex-start !important;}
.justify-end {justify-content:flex-end !important;}
.justify-center {justify-content:center !important;}
.justify-between {justify-content:space-between !important;}
.items-start {align-items:flex-start !important;}
.items-end {align-items:flex-end !important;}
.items-center {align-items:center !important;}
@media screen and (max-width:767px) {
  .sp_flex {display:flex !important; }
  .sp_flex-wrapp {flex-wrap:wrap !important; }
  .sp_flex-wrap-reverse {flex-wrap:wrap-reverse !important; }
  .sp_flex-nowrap {flex-wrap:nowrap !important; }
  .sp_flex-row {flex-direction:row !important; }
  .sp_flex-row-reverse {flex-direction:row-reverse !important;}
  .sp_flex-col {flex-direction:column !important;}
  .sp_flex-col-reverse {flex-direction:column-reverse !important;}
  .sp_justify-start {justify-content:flex-start !important;}
  .sp_justify-end {justify-content:flex-end !important;}
  .sp_justify-center {justify-content:center !important;}
  .sp_justify-between {justify-content:space-between !important;}
  .sp_items-start {align-items:flex-start !important;}
  .sp_items-end {align-items:flex-end !important;}
  .sp_items-center {align-items:center !important;}
  }
.grow {flex-grow:1 !important; }
.shrink-0 {flex-shrink:0 !important;}
/* float */
.float-right {float:right;}
.float-left {float:left;}
:has(.float-right),:has(.float-left) {display:flow-root;}
/* vertical-align */
.align-baseline {vertical-align:baseline !important;}
.align-top {vertical-align:top !important;}
.align-middle {vertical-align:middle !important;}
.align-bottom {vertical-align:bottom !important;}
/*-------- display ----------------------------*/
.none { display:none !important; }
@media screen and (max-width: 767px) {.sp_none { display:none !important; }}
@media print, screen and (min-width: 768px) {.pc_none { display:none !important; }}
.block { display:block !important; }
.inline-block { display:inline-block !important; }
.inline { display:inline !important; }
.table {display:table !important; }
.table-cell { display:table-cell !important; }
@media screen and (max-width: 767px) {
  .sp_block { display:block !important; }
  .sp_inline-block { display:inline-block !important; }
  .sp_inline { display:inline !important; }
  .sp_table {display:table !important; }
  .sp_table-cell { display:table-cell !important; }
  }
/*-------- text -------------------------------*/
.bold {font-weight:bold !important; }
.underline {text-decoration-line:underline !important; }
.no-underline {text-decoration-line:none !important; }
.text-center {text-align:center !important; }
.text-right {text-align:right !important; }
.text-left {text-align:left !important; }
@media screen and (max-width: 767px) {
  .sp_text-center {text-align:center !important;}
  .sp_text-right {text-align:right !important;}
  .sp_text-left {text-align:left !important;}
  }
.font-normal { font-weight:400 !important;}
.font-medium { font-weight:500 !important;}
.font-semibold { font-weight:600 !important;}
.break-words {overflow-wrap:break-word !important;}
.whitespace-normal {white-space:normal !important;}
.whitespace-nowrap {white-space:nowrap !important;}
/*-------- border -------------------------------*/
.border {border:1px solid currentColor !important; }
.border-0 {border-width:0px !important; }
.border-b {border-bottom:1px solid currentColor !important; }
.rounded-2 {border-radius:0.2rem !important;}
.rounded-4 {border-radius:0.4rem !important;}
.rounded-6 {border-radius:0.6rem !important;}
.rounded-8 {border-radius:0.8rem !important;}
.rounded-12 {border-radius:1.2rem !important;}
.rounded-16 {border-radius:1.6rem !important;}
.rounded-24 {border-radius:2.4rem !important;}
.rounded-full {border-radius:9999px !important;}
/*-------- font -------------------------------*/
.font-serif {font-family:"游明朝";}
/*-------- background -------------------------------*/
.bg-white {background-color:white;}
/*===============================================
element or block module
===============================================*/
/* icon */
.el_mark {
  display:block!important;
  padding-left:1em !important;
  list-style:none !important;
  text-indent:-1em !important;
  }
/* background */
.el_bg-dot {
  display:block;
  margin:var(--size-30) 0;
  padding:var(--size-50);
  background-color:#fff;
  background-image:radial-gradient(#ffdbc9 15%, transparent 15%), radial-gradient(#ffdbc9 15%, transparent 15%);
  background-position:0 0, 15px 15px;
  background-size:30px 30px;
  }
/* banzai */
.el_h-banzai {
  line-height:1.4!important;
  position:relative!important;
  width:-moz-fit-content!important;
  width:     fit-content!important;
  margin-right:auto!important;
  margin-left:auto!important;
  padding-right:30px!important;
  padding-left:30px!important;
  }
.el_h-banzai::before,
.el_h-banzai::after {
  position:absolute;
  display:inline-block;
  width:2px;
  height:60%;
  content:"";
  border-radius:1px;/* 線幅の半分 */
  background-color:currentColor;
  }
.el_h-banzai::before {
  top:65%;
  left:0;
  margin-right:30px;
  transform:translateY(-50%) rotate(-35deg);
  }
.el_h-banzai::after {
  top:65%;
  right:0;
  margin-left:30px;
  transform:translateY(-50%)rotate(35deg);
  }
.el_h-banzai__L {
  margin-right:initial!important;
  margin-left:initial!important;
  text-align:left!important;
  }
/* marker */
.el_textLine-yellow {
  background-image:linear-gradient(rgba(0, 0, 0, 0) 70%, rgba(255, 240, 145, 0.7) 70%);
  }