@charset "UTF-8";
/*!
 * ress.css • v4.0.0
 * MIT License
 * github.com/filipelinhares/ress
 */
html {
  box-sizing: border-box;
  -webkit-text-size-adjust: 100%;
  word-break: normal;
  -moz-tab-size: 4;
  -o-tab-size: 4;
     tab-size: 4;
}

*, :after, :before {
  background-repeat: no-repeat;
  box-sizing: inherit;
}

:after, :before {
  text-decoration: inherit;
  vertical-align: inherit;
}

* {
  padding: 0;
  margin: 0;
}

hr {
  overflow: visible;
  height: 0;
  color: inherit;
}

details, main {
  display: block;
}

summary {
  display: list-item;
}

small {
  font-size: 80%;
}

[hidden] {
  display: none;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

a {
  background-color: transparent;
}

a:active, a:hover {
  outline-width: 0;
}

code, kbd, pre, samp {
  font-family: monospace, monospace;
}

pre {
  font-size: 1em;
}

b, strong {
  font-weight: bolder;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

table {
  border-color: inherit;
  text-indent: 0;
}

input {
  border-radius: 0;
}

[disabled] {
  cursor: default;
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

textarea {
  overflow: auto;
  resize: vertical;
}

button, input, optgroup, select, textarea {
  font: inherit;
}

optgroup {
  font-weight: 700;
}

button {
  overflow: visible;
}

button, select {
  text-transform: none;
}

[role=button], [type=button], [type=reset], [type=submit], button {
  cursor: pointer;
  color: inherit;
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button:-moz-focusring {
  outline: 1px dotted ButtonText;
}

[type=reset], [type=submit], button, html [type=button] {
  -webkit-appearance: button;
}

button, input, select, textarea {
  background-color: transparent;
  border-style: none;
}

a:focus, button:focus, input:focus, select:focus, textarea:focus {
  outline-width: 0;
}

select {
  -moz-appearance: none;
  -webkit-appearance: none;
}

select::-ms-expand {
  display: none;
}

select::-ms-value {
  color: currentColor;
}

legend {
  border: 0;
  color: inherit;
  display: table;
  white-space: normal;
  max-width: 100%;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  color: inherit;
  font: inherit;
}

img {
  border-style: none;
}

progress {
  vertical-align: baseline;
}

[aria-busy=true] {
  cursor: progress;
}

[aria-controls] {
  cursor: pointer;
}

[aria-disabled=true] {
  cursor: default;
}

@font-face {
  font-family: "Futura PT";
  font-weight: 700;
  src: url(../fonts/FuturaPTBold.otf);
}
:root {
  --font-zen-maru: "Zen Maru Gothic", sans-serif;
  --font-pacifico: "Pacifico", sans-serif;
  --font-family-base: "Noto Sans JP", sans-serif;
  --font-futura: "Futura PT", sans-serif;
}

html {
  font-size: 62.5%;
}

body {
  margin: 0;
  background-color: #fff;
  color: #202020;
  font-family: 游ゴシック, yu gothic, yugothic, ヒラギノ角ゴ pro w3, ヒラギノ角ゴ w3, hiragino kaku gothic pron, hiragino kaku gothic, メイリオ, meiryo, noto sans, noto sans cjk jp, system-ui, sans-serif;
  font-weight: 500;
  line-height: 1.7;
}

img,
svg {
  max-width: 100%;
  height: auto;
}

.bold {
  font-weight: bold;
}

.mb0 {
  margin-bottom: 0 !important;
}

.mt0 {
  margin-top: 0 !important;
}

@media screen and (max-width: 767px) {
  .only-pc {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .only-sp {
    display: none;
  }
}

.returntop {
  display: none;
  position: fixed;
  bottom: min(85px, 22.67vw);
  right: min(10px, 2.67vw);
  z-index: 999;
}
.returntop a {
  display: block;
  width: min(40px, 10.67vw);
  height: min(40px, 10.67vw);
  color: #fff;
  font-size: min(23px, 6.13vw);
  text-indent: -999em;
  text-decoration: none;
  border-radius: 100%;
  position: relative;
}
.returntop a::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: url(../images/return-top.svg) no-repeat center/contain;
}
@media screen and (min-width: 768px) {
  .returntop {
    bottom: 40px;
    right: 40px;
  }
  .returntop a {
    width: 60px;
    height: 60px;
  }
}
@media screen and (max-width: 1023px) {
  .returntop {
    bottom: 30px;
  }
}
@media screen and (max-width: 767px) {
  .returntop {
    bottom: min(25px, 6.67vw);
  }
}

.page-wrapper {
  position: relative;
  font-family: var(--font-family-base);
  padding-top: min(60px, 16vw);
}
@media screen and (min-width: 768px) {
  .page-wrapper {
    padding-top: min(78px, 20.8vw);
  }
}

.page-content {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 500px;
  min-height: 100vh;
  margin: auto;
  background-color: #fff;
  /*   @include pc {
      //box-shadow: 0px 0px 30px 5px rgba(0, 0, 0, 0.25);
      // padding-bottom: 74px;
      &:after {
        background-color: #fff;
        height: 30px;
        content: "";
        position: absolute;
        bottom: -30px;
        left: -20px;
        right: -20px;
      }
    } */
}
@media screen and (max-width: 1023px) {
  .page-content {
    max-width: 450px;
  }
}

.page-header {
  background-color: #ffffff;
  position: relative;
  z-index: 1001;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  transition: transform 0.3s;
}
.page-header a {
  display: flex;
  transition: 0.25s opacity;
}
.page-header a:hover {
  opacity: 0.7;
}
.page-header.shadow {
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.15);
}
.page-header__inner {
  display: flex;
  justify-content: space-between;
  padding: min(17px, 4.53vw) min(16px, 4.27vw);
  align-items: center;
}
.page-header ._left {
  display: flex;
  align-items: center;
}
.page-header .h1-logo {
  width: min(92px, 24.53vw);
}
.page-header .h1-logo img {
  width: 100%;
}
.page-header .mitsuioutletpark-logo {
  width: min(92px, 24.53vw);
  margin-left: min(10px, 2.67vw);
}
.page-header .mitsuioutletpark-logo img {
  width: 100%;
}
.page-header .mfg-logo {
  width: min(110px, 29.33vw);
}
.page-header .mfg-logo img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .page-header__inner {
    padding: min(20px, 5.33vw) min(28px, 7.47vw);
    max-width: 1366px;
    margin-left: auto;
    margin-right: auto;
  }
  .page-header .h1-logo {
    width: min(132.6px, 35.36vw);
  }
  .page-header .mitsuioutletpark-logo {
    width: min(132.6px, 35.36vw);
    margin-left: min(13.2px, 3.52vw);
  }
  .page-header .mfg-logo {
    width: min(167px, 44.53vw);
  }
}

.page-background {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 450px) {
  .page-background {
    display: none;
  }
}
.page-background__in {
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: #0280CA url(../images/confetti.svg) repeat center/contain;
  background: #0280CA;
  background-size: 1316px 901px;
  z-index: 1;
}
.page-background__left, .page-background__right {
  position: absolute;
  top: 0;
  z-index: -1;
  width: calc(50% - 250px);
  overflow: hidden;
  bottom: 0;
  overflow: hidden;
  top: min(60px, 16vw);
  padding-top: 60px;
  padding-bottom: 60px;
}
@media screen and (max-width: 1023px) {
  .page-background__left, .page-background__right {
    width: calc(50% - 225px);
  }
}
@media screen and (min-width: 768px) {
  .page-background__left, .page-background__right {
    top: min(78px, 20.8vw);
  }
}
.page-background__left .inner, .page-background__right .inner {
  position: relative;
  z-index: 2;
}
.page-background__left {
  left: 0;
  overflow: hidden;
  background: url(../images/funny-img01.png) no-repeat center/contain;
  background-size: 351px 760px;
}
.page-background__left::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  background: url(../images/funny-sun.png) no-repeat top left/contain;
  width: 10.322108vw;
  height: 9.956076vw;
  max-width: 141px;
}
.page-background__left::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: url(../images/confetti_01.png) no-repeat center/contain;
  /*  width: 400px;
   height: 901px; */
  z-index: -1;
  background-size: 400px 901px;
  background-repeat: repeat-x;
}
.page-background__left .inner {
  width: -moz-fit-content;
  width: fit-content;
  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
  padding: 0 min(20px, 5.33vw);
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
}
@media screen and (max-width: 1023px) {
  .page-background__left .inner {
    display: none;
  }
}
.page-background__left .llp_1stcp {
  padding-bottom: 20vh;
}
.page-background__right {
  right: 0;
  /*@media (min-aspect-ratio: 2.0) {
      &::before{
          background-size: 70%;
          top: 47%;
      }
      .inner{
          margin-left: 4rem;
         }
         .text01{
          max-width: 11.0rem;
      }
    }
     @media screen and (max-height:925px) {
      padding: 30px 0;
    }
    @media screen and (max-height:820px) and (max-width:1200px) {
      padding: 20px 0;
      &::before{
          background-size: 82%;
      }
      .text01{
          max-width: 11rem;
      }
    }
    @media screen and (max-height:730px) {
      &::before{
          background-size: 80%;
          left: 17%;
          top: 45%;
      }
     .inner{
      margin-left: 3rem;
     }
     .text01{
      max-width: 10rem;
  }
    }
    @media screen and (max-height:680px) {
      &::before{
          content: none;
      }
      .text01{
          max-width: 8rem;
      }
    }
    @media screen and (max-height:600px) {
      .text01{
          display: none;
      }
    } */
}
.page-background__right::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: url(../images/confetti_02.png) no-repeat center/contain;
  /*  width: 400px;
   height: 901px; */
  z-index: -1;
  background-size: 400px 901px;
  background-repeat: repeat-x;
}
.page-background__right .inner {
  width: -moz-fit-content;
  width: fit-content;
  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
  padding: 0 min(20px, 5.33vw);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  height: 100%;
}
@media screen and (max-width: 1023px) {
  .page-background__right .inner {
    display: none;
  }
}
.page-background__right .nav {
  margin-top: auto;
}
.page-background__right .nav .menu-list .menu-item {
  display: block;
}
.page-background__right .nav .menu-list .menu-item + .menu-item {
  margin-top: min(20px, 5.33vw);
}
.page-background__right .nav .menu-list .menu-item a {
  position: relative;
  display: inline-block;
  color: #fff;
  font-family: var(--font-futura);
  font-size: min(23px, 6.13vw);
  font-style: normal;
  font-weight: 700;
  line-height: 1;
  transition: 0.25s ease-out;
  text-decoration: none;
  width: 225px;
  height: 52px;
  line-height: 47px;
  text-align: center;
  border-radius: 5px;
  border: 3px solid #fff;
  background-color: #fff;
  /*  &.active {
     color: #faff00;
   } */
}
.page-background__right .nav .menu-list .menu-item a.-sale {
  background-color: #F05245;
}
.page-background__right .nav .menu-list .menu-item a.-event {
  background-color: #057FC9;
}
.page-background__right .nav .menu-list .menu-item a.-campaign {
  background-color: #EB8539;
}
.page-background__right .nav .menu-list .menu-item a.-newshop {
  background-color: #5FCB17;
}
.page-background__right .nav .menu-list .menu-item a .icon-arrow {
  position: absolute;
  top: 50%;
  right: 12px;
  transform: translate(-50%, -50%);
}
@media screen and (min-width: 768px) {
  .page-background__right .nav .menu-list .menu-item a:hover {
    color: #faff00;
  }
}
.page-background__right .text01 {
  margin-right: -5rem;
}
@media screen and (max-width: 1280px) {
  .page-background__right .text01 {
    width: 40rem;
  }
}
@media screen and (max-height: 1025px) {
  .page-background__right {
    padding: 4rem 0;
  }
}
@media screen and (max-height: 925px) {
  .page-background__right {
    padding: 3rem 0;
  }
  .page-background__right .text01 {
    max-width: 40rem;
  }
}
@media screen and (max-height: 800px) {
  .page-background__right {
    padding: 2rem 0;
  }
  .page-background__right .text01 {
    max-width: 30rem;
  }
}
@media screen and (max-height: 700px) {
  .page-background__right {
    padding: 1rem 0;
  }
  .page-background__right .text01 {
    max-width: 24rem;
  }
}

.container {
  position: relative;
  padding: 0 min(10px, 2.67vw);
}
@media screen and (min-width: 768px) {
  .container {
    padding: 0 min(20px, 5.33vw);
  }
}

.modal-wrapper {
  overflow: hidden;
  /* Landscape */
}
.modal-wrapper .modaal-container {
  max-width: 500px;
  height: auto;
  border-radius: 10px;
  overflow: hidden;
}
.modal-wrapper .modaal-content-container {
  padding: 0;
}
.modal-wrapper .modaal-inner-wrapper {
  padding: 120px 10px;
  padding-bottom: 40px;
}
.modal-wrapper .modaal-close {
  right: 10px;
  top: 70px;
  background: transparent;
}
.modal-wrapper .modaal-close::after, .modal-wrapper .modaal-close::before {
  top: 8px;
  width: 2px;
  height: 36px;
}
.modal-wrapper .modaal-close:hover {
  background-color: #979292;
}
.modal-wrapper .modaal-close:hover::after, .modal-wrapper .modaal-close:hover::before {
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  .modal-wrapper {
    /*  .modaal-content-container {
      padding: 37px 34px;
      padding-right: 12px;
    } */
  }
  .modal-wrapper .modaal-close:after,
  .modal-wrapper .modaal-close:before {
    width: 4px;
  }
  .modal-wrapper .modaal-close {
    right: 40px;
    top: 120px;
  }
}
@media only screen and (min-device-width: 314px) and (max-device-width: 736px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: landscape) {
  .modal-wrapper .modaal-inner-wrapper {
    padding: 80px 20px;
    padding-bottom: 20px;
  }
}

.modal-content {
  overflow: auto;
  overflow-y: auto;
  max-height: min(540px, 68vh);
  max-height: calc(100dvh - 50px - 40px - 40px - 60px);
  font-family: var(--font-family-base);
  /* Landscape */
}
@media screen and (min-width: 768px) {
  .modal-content::-webkit-scrollbar-thumb {
    background-color: #ddd;
  }
  .modal-content::-webkit-scrollbar {
    width: 7px;
    height: 7px;
  }
  .modal-content::-webkit-scrollbar-track {
    background: rgba(204, 204, 204, 0.2);
  }
  .modal-content::-webkit-scrollbar-thumb {
    background: #d9d9d9;
    border-radius: 1rem;
  }
  .modal-content::-webkit-scrollbar-thumb:hover {
    background: #94989b;
  }
}
@media screen and (min-width: 480px) {
  .modal-content {
    max-height: calc(100dvh - 66px - 70px - 40px);
  }
}
@media only screen and (min-device-width: 314px) and (max-device-width: 736px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: landscape) {
  .modal-content {
    max-height: calc(100dvh - 50px - 30px - 20px);
  }
}
@media screen and (min-width: 768px) {
  .modal-content {
    padding-right: 30px;
  }
  .modal-content::-webkit-scrollbar {
    width: 10px;
    height: 10px;
  }
}
.modal-content .modal-header {
  position: relative;
  background: #f05245;
}
.modal-content .modal-header::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  -webkit-mask-image: url(../images/circle-mark.svg);
          mask-image: url(../images/circle-mark.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: 740px 740px;
          mask-size: 740px 740px;
  opacity: 0.15;
  pointer-events: none;
  background-color: #f7a8a1;
}
.modal-content .modal-header.c1 .modal-header__inner {
  padding-top: min(15px, 4vw);
}
.modal-content .modal-header.c2 {
  background: #027fc9;
}
.modal-content .modal-header.c2::before {
  background-color: #84a5d4;
}
.modal-content .modal-header.c2 ._info {
  margin-top: min(25px, 6.67vw);
}
.modal-content .modal-header.c2 ._info ._info-label {
  color: #027fc9;
}
.modal-content .modal-header.c3 {
  background: #EB8539;
}
.modal-content .modal-header.c3::before {
  background-color: #f0b991;
}
.modal-content .modal-header.c3 ._info ._info-label {
  color: #EB8539;
}
.modal-content .modal-header.c31 .modal-header__inner {
  padding-top: min(8px, 2.13vw);
}
.modal-content .modal-header__inner {
  z-index: 1;
  padding: min(15px, 4vw) 10px;
  padding-top: min(29px, 7.73vw);
}
@media screen and (min-width: 768px) {
  .modal-content .modal-header__inner {
    padding: min(16.9px, 4.51vw) 10px;
    padding-top: min(37.7px, 10.05vw);
  }
}
.modal-content .modal-header p {
  margin: 0;
  color: #fff;
}
.modal-content .modal-header ._title {
  font-size: min(25px, 6.67vw);
  font-weight: 800;
  text-align: center;
  line-height: 1.1;
  --stroke-color: #000;
  --stroke-width: 1px;
  color: #fff100;
}
.modal-content .modal-header ._title .text1 {
  font-size: min(35px, 9.33vw);
  line-height: 1.4571428571;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .modal-content .modal-header ._title {
    font-size: min(32.5px, 8.67vw);
  }
  .modal-content .modal-header ._title .text1 {
    font-size: min(45.5px, 12.13vw);
  }
}
.modal-content .modal-header ._title__sub {
  text-align: center;
  color: #fff;
  font-weight: 900;
  font-size: min(16px, 4.27vw);
}
.modal-content .modal-header ._info {
  margin-top: min(15px, 4vw);
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  .modal-content .modal-header ._info {
    margin-top: min(19.5px, 5.2vw);
  }
}
.modal-content .modal-header ._info ._info-item {
  display: flex;
  align-items: center;
}
.modal-content .modal-header ._info ._info-item + ._info-item {
  margin-top: min(7px, 1.87vw);
}
.modal-content .modal-header ._info ._info-label {
  min-width: min(43.4px, 11.57vw);
  font-size: min(15px, 4vw);
  font-weight: bold;
  line-height: 1.4;
  background-color: #fff;
  border-radius: 5px;
  padding: 0 5px;
  color: #f05144;
  display: inline-block;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .modal-content .modal-header ._info ._info-label {
    min-width: min(56.42px, 15.05vw);
    font-size: min(19.5px, 5.2vw);
  }
}
.modal-content .modal-header ._info ._info-text {
  margin-left: min(7px, 1.87vw);
  font-size: min(15px, 4vw);
  font-weight: bold;
  line-height: 1.4;
  color: #fff;
}
.modal-content .modal-header ._info ._info-text .small {
  font-size: min(12px, 3.2vw);
}
@media screen and (min-width: 768px) {
  .modal-content .modal-header ._info ._info-text {
    margin-left: min(9.1px, 2.43vw);
    font-size: min(19.5px, 5.2vw);
  }
  .modal-content .modal-header ._info ._info-text .small {
    font-size: min(15.6px, 4.16vw);
  }
}
@media screen and (min-width: 768px) {
  .modal-content .modal-header {
    padding: 0 20px;
    margin-right: -30px;
  }
}
.modal-content .modal-header ._img01 {
  text-align: center;
}
.modal-content .modal-header ._off {
  text-align: center;
}
.modal-content .modal-body {
  padding: 20px 20px;
  padding-top: 0;
}
.modal-content .modal-body p {
  font-size: min(17px, 4.53vw);
  font-weight: 500;
  line-height: 1.1764705882;
}
.modal-content .modal-body .small {
  font-size: min(13px, 3.47vw);
}
@media screen and (min-width: 768px) {
  .modal-content .modal-body {
    padding: 30px 30px;
    padding-right: 0;
    padding-top: 0;
  }
  .modal-content .modal-body p {
    font-size: min(22.1px, 5.89vw);
  }
  .modal-content .modal-body .small {
    font-size: min(16.9px, 4.51vw);
  }
}
.modal-content figure {
  margin: 15px 0;
  text-align: center;
}
.modal-content .figure-full {
  margin: 0 -20px;
  margin-bottom: 15px;
}
@media screen and (min-width: 768px) {
  .modal-content .figure-full {
    margin: 0 -30px;
    margin-bottom: 15px;
  }
}
.modal-content p {
  margin-bottom: min(15px, 4vw);
  color: #000;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 1.64;
}
@media screen and (min-width: 768px) {
  .modal-content p {
    font-size: 16px;
  }
}
.modal-content ul {
  margin-bottom: min(10px, 2.67vw);
  padding-left: 2em;
}
.modal-content ul li {
  color: #000;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 1.64;
}
.modal-content .p-img {
  position: relative;
}
.modal-content .p-img .img {
  position: absolute;
  right: min(3px, 0.8vw);
  width: min(103px, 27.47vw);
  bottom: max(-20px, -5.33vw);
}

.wbr {
  white-space: nowrap;
}

.color-r {
  color: #f05245;
}

.footer {
  font-family: var(--font-family-base);
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  .footer {
    z-index: 3;
    position: relative;
  }
}
.footer a {
  display: inline-block;
  transition: 0.25s opacity;
}
.footer a:hover {
  opacity: 0.7;
}

.footer__inner {
  max-width: 1040px;
  margin-left: auto;
  margin-right: auto;
  padding: 0 20px;
}

.footer__sitelink {
  padding: 1em 0em;
}
.footer__sitelink ul {
  list-style: none;
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 0;
}
.footer__sitelink ul li {
  font-size: min(11px, 2.93vw);
  font-weight: 400;
  height: auto;
  padding: min(5px, 1.33vw) 0;
}
.footer__sitelink ul li a {
  text-decoration: none;
  color: inherit;
  transition: all 0.3s ease;
}
@media screen and (max-width: 767px) {
  .footer__sitelink ul {
    display: block;
  }
}
@media screen and (min-width: 768px) {
  .footer__sitelink {
    padding: min(15px, 4vw) 0;
  }
  .footer__sitelink ul li {
    width: 20%;
    font-size: min(14px, 3.73vw);
  }
}

.footer__link {
  padding: min(10px, 2.67vw) 0em;
  border-top: 1px solid #cccccc;
}
.footer__link ul {
  list-style: none;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
}
.footer__link ul li {
  width: 50%;
  align-self: stretch;
}
.footer__link ul li a {
  padding: min(10px, 2.67vw) min(20px, 5.33vw);
  display: flex;
  height: 100%;
  background: #fff;
}
.footer__link ul li:nth-child(2n+1):not(:last-child) {
  border-right: 1px solid #cccccc;
}
.footer__link ul li:not(:nth-last-child(-n+2)) {
  border-bottom: 1px solid #cccccc;
}
.footer__link ul li img {
  margin: auto;
  display: block;
  max-height: min(44px, 11.73vw);
}
@media screen and (min-width: 768px) {
  .footer__link {
    border-bottom: 1px solid #cccccc;
  }
  .footer__link ul li {
    width: 25%;
    border-bottom: 0;
  }
  .footer__link ul li:not(:last-child) {
    border-right: 1px solid #cccccc;
  }
  .footer__link ul li:not(:nth-last-child(-n+1)) {
    border-bottom: 0;
  }
}
@media screen and (max-width: 767px) {
  .footer__link ul .w100 {
    width: 100%;
  }
}

.footer__bottom {
  padding-bottom: min(20px, 5.33vw);
  margin-left: -20px;
  margin-right: -20px;
}
.footer__bottom p {
  text-align: center;
  font-size: 10px;
}
@media screen and (min-width: 768px) {
  .footer__bottom {
    padding-top: min(20px, 5.33vw);
  }
}

.footer__logo {
  text-align: center;
  margin-top: 10px;
}

.copyright {
  margin-top: 10px;
}

/****
Main css page
******/
.icon-arrow {
  position: relative;
  width: min(12px, 3.2vw);
  height: min(8px, 2.13vw);
  display: inline-block;
}
.icon-arrow::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  -webkit-mask-image: url(../images/icon-arrow.svg);
          mask-image: url(../images/icon-arrow.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #fff;
}

.fs13 {
  font-size: 13px;
}
@media screen and (min-width: 768px) {
  .fs13 {
    font-size: min(16.9px, 4.51vw);
  }
}

.fs16 {
  font-size: min(16px, 4.27vw);
}
@media screen and (min-width: 768px) {
  .fs16 {
    font-size: min(20.8px, 5.55vw);
  }
}

.fs18 {
  font-size: min(18px, 4.8vw);
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .fs18 {
    font-size: min(23.4px, 6.24vw);
  }
}

.fs19 {
  font-size: min(19px, 5.07vw);
}
@media screen and (min-width: 768px) {
  .fs19 {
    font-size: min(24.7px, 6.59vw);
  }
}

.fs20 {
  font-size: min(20px, 5.33vw);
}
@media screen and (min-width: 768px) {
  .fs20 {
    font-size: min(26px, 6.93vw);
  }
}

.fs21 {
  font-size: min(21px, 5.6vw);
}
@media screen and (min-width: 768px) {
  .fs21 {
    font-size: min(27.3px, 7.28vw);
  }
}

.fs22 {
  font-size: min(22px, 5.87vw);
}
@media screen and (min-width: 768px) {
  .fs22 {
    font-size: min(28.6px, 7.63vw);
  }
}

.fs23 {
  font-size: min(23px, 6.13vw);
}
@media screen and (min-width: 768px) {
  .fs23 {
    font-size: min(29.9px, 7.97vw);
  }
}

.fs25 {
  font-size: min(25px, 6.67vw);
}
@media screen and (min-width: 768px) {
  .fs25 {
    font-size: min(32.5px, 8.67vw);
  }
}

.fs32 {
  font-size: min(32px, 8.53vw);
}
@media screen and (min-width: 768px) {
  .fs32 {
    font-size: min(41.6px, 11.09vw);
  }
}

.fs28 {
  font-size: min(28px, 7.47vw);
}
@media screen and (min-width: 768px) {
  .fs28 {
    font-size: min(36.4px, 9.71vw);
  }
}

.fs33 {
  font-size: min(33px, 8.8vw);
}
@media screen and (min-width: 768px) {
  .fs33 {
    font-size: min(42.9px, 11.44vw);
  }
}

.fs35 {
  font-size: min(35px, 9.33vw);
}
@media screen and (min-width: 768px) {
  .fs35 {
    font-size: min(45.5px, 12.13vw);
  }
}

.fs38 {
  font-size: min(38px, 10.13vw);
}
@media screen and (min-width: 768px) {
  .fs38 {
    font-size: min(49.4px, 13.17vw);
  }
}

.lh1 {
  line-height: 1;
}

.lh-12 {
  line-height: 1.2 !important;
}

.stroke-text-16 {
  --stroke-color: #000;
  --stroke-width: 1px;
  text-shadow: calc(var(--stroke-width) * 1) calc(var(--stroke-width) * 0) 0 var(--stroke-color), calc(var(--stroke-width) * 0.9239) calc(var(--stroke-width) * 0.3827) 0 var(--stroke-color), calc(var(--stroke-width) * 0.7071) calc(var(--stroke-width) * 0.7071) 0 var(--stroke-color), calc(var(--stroke-width) * 0.3827) calc(var(--stroke-width) * 0.9239) 0 var(--stroke-color), calc(var(--stroke-width) * 0) calc(var(--stroke-width) * 1) 0 var(--stroke-color), calc(var(--stroke-width) * -0.3827) calc(var(--stroke-width) * 0.9239) 0 var(--stroke-color), calc(var(--stroke-width) * -0.7071) calc(var(--stroke-width) * 0.7071) 0 var(--stroke-color), calc(var(--stroke-width) * -0.9239) calc(var(--stroke-width) * 0.3827) 0 var(--stroke-color), calc(var(--stroke-width) * -1) calc(var(--stroke-width) * 0) 0 var(--stroke-color), calc(var(--stroke-width) * -0.9239) calc(var(--stroke-width) * -0.3827) 0 var(--stroke-color), calc(var(--stroke-width) * -0.7071) calc(var(--stroke-width) * -0.7071) 0 var(--stroke-color), calc(var(--stroke-width) * -0.3827) calc(var(--stroke-width) * -0.9239) 0 var(--stroke-color), calc(var(--stroke-width) * 0) calc(var(--stroke-width) * -1) 0 var(--stroke-color), calc(var(--stroke-width) * 0.3827) calc(var(--stroke-width) * -0.9239) 0 var(--stroke-color), calc(var(--stroke-width) * 0.7071) calc(var(--stroke-width) * -0.7071) 0 var(--stroke-color), calc(var(--stroke-width) * 0.9239) calc(var(--stroke-width) * -0.3827) 0 var(--stroke-color);
}

.section {
  padding: min(20px, 5.33vw) 0;
}
@media screen and (min-width: 768px) {
  .section {
    padding: min(26px, 6.93vw) 0;
  }
}
.section .section-ttl {
  color: #fff100;
  font-size: min(25px, 6.67vw);
  font-weight: 800;
  line-height: 1.44;
  letter-spacing: 0.02em;
  --stroke-color: #000;
  --stroke-width: 1px;
  text-align: center;
  padding: min(12px, 3.2vw) 0;
  background-color: #5fcb16;
}
.section .section-ttl__text {
  position: relative;
  display: inline-block;
  padding: 0 min(29px, 7.73vw);
}
.section .section-ttl__text::before, .section .section-ttl__text::after {
  position: absolute;
  content: "";
  width: min(27px, 7.2vw);
  height: min(35px, 9.33vw);
  background: url(../images/text-mark.svg) no-repeat center/contain;
  top: 50%;
  transform: translateY(-50%);
}
.section .section-ttl__text::before {
  left: 0;
}
.section .section-ttl__text::after {
  right: 0;
  transform: translateY(-50%) scaleX(-1);
}
@media screen and (min-width: 768px) {
  .section .section-ttl {
    font-size: min(32.5px, 8.67vw);
  }
  .section .section-ttl__text {
    padding: 0 min(37.7px, 10.05vw);
  }
  .section .section-ttl__text::before, .section .section-ttl__text::after {
    width: min(35.1px, 9.36vw);
    height: min(45.5px, 12.13vw);
  }
}
.section .section-box {
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid #000000;
}
@media screen and (max-width: 767px) {
  .section .section-box {
    overflow: hidden;
  }
}
.section .section-box.-left {
  margin-left: max(-10px, -2.67vw);
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-left: 0;
}
.section .section-box.-left .section-ttl {
  padding-left: min(10px, 2.67vw);
}
.section .section-box.-left .section-content {
  padding-left: min(30px, 8vw);
}
.section .section-box.-right {
  margin-right: max(-10px, -2.67vw);
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-right: 0;
}
.section .section-box.-right .section-ttl {
  padding-right: min(10px, 2.67vw);
}
.section .section-box.-right .section-content {
  padding-right: min(30px, 8vw);
}
@media screen and (min-width: 768px) {
  .section .section-box.-left {
    margin-left: max(-20px, -5.33vw);
  }
  .section .section-box.-left .section-ttl {
    padding-left: min(20px, 5.33vw);
  }
  .section .section-box.-left .section-content {
    padding-left: min(40px, 10.67vw);
  }
  .section .section-box.-right {
    margin-right: max(-20px, -5.33vw);
  }
  .section .section-box.-right .section-ttl {
    padding-right: min(20px, 5.33vw);
  }
  .section .section-box.-right .section-content {
    padding-right: min(40px, 10.67vw);
  }
}
.section .section-content {
  padding: min(20px, 5.33vw);
  padding-top: 0;
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  .section .section-content {
    padding: min(26px, 6.93vw);
    padding-top: 0;
  }
}
.section .section-description {
  font-size: min(18px, 4.8vw);
  line-height: 1.4444444444;
  text-align: center;
  font-weight: 700;
  padding: min(15px, 4vw) 0;
  margin-left: -1em;
  margin-right: -1em;
}
@media screen and (min-width: 768px) {
  .section .section-description {
    font-size: min(23.4px, 6.24vw);
    padding: min(19.5px, 5.2vw) 0;
  }
}
.section .box-list .box-item + .box-item {
  margin-top: min(20px, 5.33vw);
}
.section .box-list .box-item__img {
  position: relative;
  z-index: 2;
  padding-top: 1.7rem;
}
.section .box-list .box-item__img img {
  display: block;
}
.section .box-list .box-item__img .img-point {
  position: absolute;
  top: min(12px, 3.2vw);
  left: min(19px, 5.07vw);
}
@media screen and (min-width: 768px) {
  .section .box-list .box-item__img .img-point {
    top: min(15.6px, 4.16vw);
    left: min(24.7px, 6.59vw);
  }
  .section .box-list .box-item__img .img-point img {
    width: 65px;
  }
}
.section .box-list .box-item__img.-text-l {
  padding-top: min(20px, 5.33vw);
}
@media screen and (min-width: 768px) {
  .section .box-list .box-item__img.-text-l {
    padding-top: min(32.5px, 8.67vw);
  }
}
.section .box-list .box-item__img.-text-l .box-item__time {
  font-size: min(25px, 6.67vw);
}
@media screen and (min-width: 768px) {
  .section .box-list .box-item__img.-text-l .box-item__time {
    font-size: min(32.5px, 8.67vw);
  }
}
.section .box-list .box-item__img.-text-l .box-item__title {
  font-size: min(30px, 8vw);
}
@media screen and (min-width: 768px) {
  .section .box-list .box-item__img.-text-l .box-item__title {
    font-size: min(39px, 10.4vw);
  }
}
.section .box-list .box-item__img.-text-l .txt-s {
  font-size: min(25px, 6.67vw);
}
@media screen and (min-width: 768px) {
  .section .box-list .box-item__img.-text-l .txt-s {
    font-size: min(32.5px, 8.67vw);
  }
}
.section .box-list .box-item__link {
  display: block;
  text-decoration: none;
  width: 100%;
  height: auto;
  aspect-ratio: 315/170;
  background-color: #027fc9;
  border: 1px solid #ffffff;
  border-radius: 10px;
  position: relative;
  box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.16);
  color: #fff;
  font-weight: 800;
  text-align: center;
}
.section .box-list .box-item__link::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  -webkit-mask-image: url(../images/circle-mark.svg);
          mask-image: url(../images/circle-mark.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: 740px 740px;
          mask-size: 740px 740px;
  background-color: #84a5d4;
  opacity: 0.15;
}
@media screen and (min-width: 768px) {
  .section .box-list .box-item__link {
    transition: 0.25s opacity;
  }
  .section .box-list .box-item__link:hover {
    opacity: 0.7;
  }
}
.section .box-list .box-item__more {
  display: inline-flex;
  align-items: center;
  position: absolute;
  right: min(10px, 2.67vw);
  bottom: min(10px, 2.67vw);
}
.section .box-list .box-item__more .text-more {
  color: #fff;
  font-weight: 600;
  font-size: min(12px, 3.2vw);
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .section .box-list .box-item__more .text-more {
    font-size: min(15.6px, 4.16vw);
  }
}
.section .box-list .box-item__more .icon-arrow {
  width: min(16px, 4.27vw);
  height: min(16px, 4.27vw);
  background-color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: 4px;
}
.section .box-list .box-item__more .icon-arrow::before {
  left: 57%;
  top: 45%;
  width: min(12px, 3.2vw);
  height: min(7px, 1.87vw);
  background-color: #027fc9;
  transform: translate(-50%, -50%) rotate(-90deg);
}
@media screen and (min-width: 768px) {
  .section .box-list .box-item__more .icon-arrow {
    width: min(20.8px, 5.55vw);
    height: min(20.8px, 5.55vw);
  }
  .section .box-list .box-item__more .icon-arrow::before {
    width: min(15.6px, 4.16vw);
    height: min(9.1px, 2.43vw);
  }
}
.section .box-list .box-item__title {
  color: #fff100;
  line-height: 1.125;
  font-size: min(24px, 6.4vw);
}
@media screen and (min-width: 768px) {
  .section .box-list .box-item__title {
    font-size: min(31.2px, 8.32vw);
  }
}
.section .box-list .box-item__title .num {
  font-size: min(35px, 9.33vw);
}
@media screen and (min-width: 768px) {
  .section .box-list .box-item__title .num {
    font-size: min(45.5px, 12.13vw);
  }
}
.section .box-list .box-item__subtitle {
  font-size: min(17px, 4.53vw);
}
@media screen and (min-width: 768px) {
  .section .box-list .box-item__subtitle {
    font-size: min(22.1px, 5.89vw);
  }
}
.section .box-list .box-item__time {
  font-size: min(18px, 4.8vw);
  font-weight: 900;
}
@media screen and (min-width: 768px) {
  .section .box-list .box-item__time {
    font-size: min(23.4px, 6.24vw);
  }
}
.section .box-list .box-item__time small {
  font-size: 0.8333333333em;
}
.section .event-list {
  margin: 0 max(-2px, -0.53vw);
}
.section .event-list .item + .item {
  margin-top: 20px;
}
.section .event-list .item__link {
  display: block;
  text-decoration: none;
  border-radius: 10px;
  border: 1px solid #fff;
  background-color: #ec8d47;
  box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.16);
  position: relative;
}
@media screen and (min-width: 768px) {
  .section .event-list .item__link {
    transition: 0.25s opacity;
  }
  .section .event-list .item__link:hover {
    opacity: 0.7;
  }
}
.section .event-list .item .item-pickup {
  position: absolute;
  top: min(40px, 10.67vw);
  left: max(-14px, -3.73vw);
  width: min(113px, 30.13vw);
}
.section .event-list .item .item-pickup img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .section .event-list .item .item-pickup {
    top: min(52px, 13.87vw);
    width: min(146.9px, 39.17vw);
  }
}
.section .event-list .item .item-head {
  background-color: #fef100;
  font-size: min(26.85px, 7.16vw);
  font-weight: 900;
  text-align: center;
  color: #027fc9;
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
  line-height: 1.56;
}
@media screen and (min-width: 768px) {
  .section .event-list .item .item-head {
    font-size: min(34.905px, 9.31vw);
  }
}
.section .event-list .item .item-head.color-b {
  color: #000;
}
.section .event-list .item .item-head .color-b {
  color: #000;
}
.section .event-list .item .item-head .color-r {
  color: #f05245;
}
.section .event-list .item .item-head__label {
  width: min(28px, 7.47vw);
  height: min(28px, 7.47vw);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  background-color: #027fc9;
  border-radius: 50%;
  color: #fff;
  font-size: min(21.82px, 5.82vw);
  font-weight: bold;
  padding-bottom: min(2px, 0.53vw);
  position: relative;
  top: max(-2px, -0.53vw);
  margin: 0 1px;
}
.section .event-list .item .item-head__label.bg-b {
  background-color: #000;
}
.section .event-list .item .item-head__label.bg-r {
  background-color: #f05245;
}
@media screen and (min-width: 768px) {
  .section .event-list .item .item-head__label {
    font-size: min(28.366px, 7.56vw);
    width: min(36.4px, 9.71vw);
    height: min(36.4px, 9.71vw);
  }
}
.section .event-list .item .item-img img {
  display: block;
}
.section .event-list .item .item-body {
  padding: min(10px, 2.67vw);
  position: relative;
}
.section .event-list .item .item-body::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  -webkit-mask-image: url(../images/circle-mark.svg);
          mask-image: url(../images/circle-mark.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: 740px 740px;
          mask-size: 740px 740px;
  opacity: 0.15;
  background-color: #f0b991;
}
.section .event-list .item .item-body__title {
  position: relative;
  z-index: 1;
  font-size: min(25px, 6.67vw);
  line-height: 1.2;
  font-weight: 900;
  text-align: center;
  color: #fef100;
  --stroke-color: #000;
  --stroke-width: 1px;
  /*  .fs25 {
    font-size: minc(25);
    line-height: calc(36/25);
    letter-spacing: 0.04em;
  } */
}
@media screen and (min-width: 768px) {
  .section .event-list .item .item-body__title {
    font-size: min(32.5px, 8.67vw);
  }
}
.section .event-list .item .item-body__title .fs17 {
  font-size: min(17px, 4.53vw);
  line-height: 1.4705882353;
  display: inline-block;
}
@media screen and (min-width: 768px) {
  .section .event-list .item .item-body__title .fs17 {
    font-size: min(22.1px, 5.89vw);
  }
}
.section .event-list .item .item-body__title .lt04 {
  letter-spacing: 0.04em;
}
.section .event-list .item .item-body__title .fs20 {
  font-size: min(20px, 5.33vw);
  line-height: 1.45;
  display: inline-block;
}
@media screen and (min-width: 768px) {
  .section .event-list .item .item-body__title .fs20 {
    font-size: min(26px, 6.93vw);
  }
}
.section .event-list .item .item-body__title .fs21 {
  font-size: min(21px, 5.6vw);
  line-height: 1.0952380952;
}
@media screen and (min-width: 768px) {
  .section .event-list .item .item-body__title .fs21 {
    font-size: min(27.3px, 7.28vw);
  }
}
.section .event-list .item .item-body__title .fs22 {
  font-size: min(22px, 5.87vw);
  line-height: 1.45;
  display: inline-block;
}
@media screen and (min-width: 768px) {
  .section .event-list .item .item-body__title .fs22 {
    font-size: min(28.6px, 7.63vw);
  }
}
.section .event-list .item .item-body__title .lh12 {
  line-height: 1.2;
}
.section .event-list .item .item-body__text {
  position: relative;
  z-index: 1;
  margin-top: min(10px, 2.67vw);
  display: flex;
  flex-direction: column;
  justify-content: center;
  flex-wrap: wrap;
  gap: min(15px, 4vw) min(10px, 2.67vw);
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
}
.section .event-list .item .item-body__text .ib-item {
  display: flex;
  align-items: center;
  margin-right: min(2px, 0.53vw);
}
.section .event-list .item .item-body__text .ib-item .ib-l {
  min-width: min(43.4px, 11.57vw);
  font-size: min(15px, 4vw);
  font-weight: bold;
  line-height: 1.4;
  background-color: #fff;
  border-radius: 5px;
  padding: 0 5px;
  color: #f79208;
  display: inline-block;
  text-align: center;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .section .event-list .item .item-body__text .ib-item .ib-l {
    min-width: min(56.42px, 15.05vw);
    font-size: min(19.5px, 5.2vw);
  }
}
.section .event-list .item .item-body__text .ib-item .ib-t {
  font-size: min(18px, 4.8vw);
  font-weight: bold;
  color: #fff;
  line-height: 1.4444444444;
  margin-left: min(8px, 2.13vw);
}
.section .event-list .item .item-body__text .ib-item .ib-t.fs14 {
  font-size: min(14px, 3.73vw);
}
@media screen and (min-width: 768px) {
  .section .event-list .item .item-body__text .ib-item .ib-t {
    font-size: min(23.4px, 6.24vw);
  }
  .section .event-list .item .item-body__text .ib-item .ib-t.fs14 {
    font-size: min(18.2px, 4.85vw);
  }
}
.section .event-list .item .item-body__text2 {
  text-align: center;
  font-weight: 500;
  font-size: min(10px, 2.67vw);
  margin-top: min(8px, 2.13vw);
  line-height: 1.5;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .section .event-list .item .item-body__text2 {
    font-size: min(13px, 3.47vw);
    margin-top: min(10.4px, 2.77vw);
  }
}
.section .event-list .item .item-body__more {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  margin-top: min(15px, 4vw);
  justify-content: flex-end;
}
.section .event-list .item .item-body__more .text-more {
  color: #fff;
  font-weight: 600;
  font-size: min(12px, 3.2vw);
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .section .event-list .item .item-body__more .text-more {
    font-size: min(15.6px, 4.16vw);
  }
}
.section .event-list .item .item-body__more .icon-arrow {
  width: min(16px, 4.27vw);
  height: min(16px, 4.27vw);
  background-color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: 4px;
}
.section .event-list .item .item-body__more .icon-arrow::before {
  left: 57%;
  top: 45%;
  width: min(12px, 3.2vw);
  height: min(7px, 1.87vw);
  background-color: #ec8d47;
  transform: translate(-50%, -50%) rotate(-90deg);
}
@media screen and (min-width: 768px) {
  .section .event-list .item .item-body__more .icon-arrow {
    width: min(20.8px, 5.55vw);
    height: min(20.8px, 5.55vw);
  }
  .section .event-list .item .item-body__more .icon-arrow::before {
    width: min(15.6px, 4.16vw);
    height: min(9.1px, 2.43vw);
  }
}
.section .event-list .item .item-body__flex {
  display: flex;
  align-items: center;
  margin-top: min(10px, 2.67vw);
  margin-bottom: max(-17px, -4.53vw);
}
.section .event-list .item .item-body__flex ._img {
  width: min(112px, 29.87vw);
}
@media screen and (min-width: 768px) {
  .section .event-list .item .item-body__flex ._img {
    width: min(145.6px, 38.83vw);
  }
}
.section .event-list .item .item-body__flex ._img2 {
  width: min(123px, 32.8vw);
  margin-left: min(10px, 2.67vw);
}
@media screen and (min-width: 768px) {
  .section .event-list .item .item-body__flex ._img2 {
    width: min(159.9px, 42.64vw);
    margin-left: 20px;
  }
}
.section .event-list .item .item-body__flex .item-body__text {
  justify-content: flex-start;
  flex: 1;
  margin-top: 0;
  padding-left: min(8px, 2.13vw);
}
.section .event-list .item ._body2 {
  padding-top: min(30px, 8vw);
}
@media screen and (max-width: 767px) {
  .section .event-list .item .pd0 {
    padding: min(10px, 2.67vw) min(5px, 1.33vw);
  }
}
.section .campaign-list {
  margin: 0 -1px;
}
.section .campaign-list .item {
  position: relative;
  background-color: #f05144;
  border-radius: 10px;
  border: 1px solid #fff;
  box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.16);
  overflow: hidden;
}
.section .campaign-list .item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  -webkit-mask-image: url(../images/circle-mark.svg);
          mask-image: url(../images/circle-mark.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: 740px 740px;
          mask-size: 740px 740px;
  opacity: 0.15;
  background-color: #f7a8a1;
}
.section .campaign-list .item + .item {
  margin-top: min(20px, 5.33vw);
}
.section .campaign-list .item__link {
  display: block;
  text-decoration: none;
  position: relative;
  z-index: 1;
  padding: min(10px, 2.67vw);
  color: #fff;
  text-align: center;
  min-height: min(171px, 45.6vw);
  padding-bottom: min(30px, 8vw);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .section .campaign-list .item__link {
    min-height: min(222.3px, 59.28vw);
    transition: 0.25s opacity;
  }
  .section .campaign-list .item__link:hover {
    opacity: 0.7;
  }
}
.section .campaign-list .item__img {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .section .campaign-list .item__img._img01 img {
    width: min(131.3px, 35.01vw);
  }
}
.section .campaign-list .item__img._img02 {
  position: absolute;
  left: 0px;
  top: 3px;
}
@media screen and (min-width: 768px) {
  .section .campaign-list .item__img._img02 img {
    width: min(98.8px, 26.35vw);
  }
}
.section .campaign-list .item__off {
  text-align: center;
  margin-top: min(6px, 1.6vw);
}
@media screen and (min-width: 768px) {
  .section .campaign-list .item__off svg {
    width: min(250.9px, 66.91vw);
  }
}
.section .campaign-list .item__subtitle {
  font-size: min(15px, 4vw);
  letter-spacing: 0.05em;
  font-weight: 900;
  line-height: 1;
}
.section .campaign-list .item__subtitle .num {
  font-size: min(21px, 5.6vw);
}
@media screen and (min-width: 768px) {
  .section .campaign-list .item__subtitle {
    font-size: min(19.5px, 5.2vw);
  }
  .section .campaign-list .item__subtitle .num {
    font-size: min(27.3px, 7.28vw);
  }
}
.section .campaign-list .item__title {
  font-size: min(25px, 6.67vw);
  font-weight: 800;
  line-height: 1.1;
  text-align: center;
  color: #fef100;
  --stroke-color: #000;
  --stroke-width: 1px;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 768px) {
  .section .campaign-list .item__title {
    font-size: min(32.5px, 8.67vw);
  }
}
.section .campaign-list .item__title .num {
  font-size: min(46px, 12.27vw);
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .section .campaign-list .item__title .num {
    font-size: min(59.8px, 15.95vw);
  }
}
.section .campaign-list .item__title .txt-img {
  margin-right: min(6px, 1.6vw);
  line-height: 1;
  position: relative;
  top: min(3px, 0.8vw);
}
@media screen and (min-width: 768px) {
  .section .campaign-list .item__title .txt-img {
    top: 7px;
  }
}
.section .campaign-list .item__title .img-svg {
  margin: 0 -2px;
  display: inline-block;
  position: relative;
  top: min(3px, 0.8vw);
}
.section .campaign-list .item__title .img-svg svg {
  display: block;
  height: auto;
}
@media screen and (min-width: 768px) {
  .section .campaign-list .item__title .paypay {
    width: 96.2px;
  }
}
.section .campaign-list .item__text {
  font-size: min(20px, 5.33vw);
  font-weight: 900;
  line-height: 1.2;
  text-align: center;
  color: #fff;
  margin-top: min(5px, 1.33vw);
}
@media screen and (min-width: 768px) {
  .section .campaign-list .item__text {
    font-size: min(26px, 6.93vw);
  }
}
.section .campaign-list .item__text small {
  font-size: 0.81em;
}
.section .campaign-list .item__more {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  position: absolute;
  right: min(10px, 2.67vw);
  bottom: min(10px, 2.67vw);
}
.section .campaign-list .item__more .text-more {
  color: #fff;
  font-weight: 600;
  font-size: min(12px, 3.2vw);
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .section .campaign-list .item__more .text-more {
    font-size: min(15.6px, 4.16vw);
  }
}
.section .campaign-list .item__more .icon-arrow {
  width: min(16px, 4.27vw);
  height: min(16px, 4.27vw);
  background-color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: 4px;
}
.section .campaign-list .item__more .icon-arrow::before {
  left: 57%;
  top: 45%;
  width: min(12px, 3.2vw);
  height: min(7px, 1.87vw);
  background-color: #f05144;
  transform: translate(-50%, -50%) rotate(-90deg);
}
@media screen and (min-width: 768px) {
  .section .campaign-list .item__more .icon-arrow {
    width: min(20.8px, 5.55vw);
    height: min(20.8px, 5.55vw);
  }
  .section .campaign-list .item__more .icon-arrow::before {
    width: min(15.6px, 4.16vw);
    height: min(9.1px, 2.43vw);
  }
}

.section-top {
  padding-bottom: min(73px, 19.47vw);
  padding-top: 0;
  position: relative;
}
@media screen and (min-width: 768px) {
  .section-top {
    padding-bottom: min(94.9px, 25.31vw);
  }
}
.section-top::after {
  content: "";
  position: absolute;
  right: min(10px, 2.67vw);
  left: min(5px, 1.33vw);
  bottom: 1px;
  height: min(63px, 16.8vw);
  background: url(../images/sale-img2.png) no-repeat center bottom/contain;
}
@media screen and (min-width: 768px) {
  .section-top::after {
    right: min(13px, 3.47vw);
    left: min(6.5px, 1.73vw);
    height: min(81.9px, 21.84vw);
  }
}
.section-top .section-top__in {
  position: relative;
}
.section-top .text-top {
  margin-left: max(-10px, -2.67vw);
  margin-right: max(-10px, -2.67vw);
  padding-top: min(25px, 6.67vw);
  padding-bottom: min(20px, 5.33vw);
  text-align: center;
  font-size: min(16px, 4.27vw);
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.5;
  background: url(../images/kamihubuki.png) no-repeat center/contain;
}
@media screen and (min-width: 768px) {
  .section-top .text-top {
    padding-top: min(32.5px, 8.67vw);
    padding-bottom: min(26px, 6.93vw);
    font-size: min(20.8px, 5.55vw);
  }
}
.section-top .text-bottom {
  padding: 4px min(30px, 8vw);
  background-color: #000000;
  border-radius: 10px;
  border: 3px dotted #fef100;
  margin: 0 min(7px, 1.87vw);
  position: relative;
}
.section-top .text-bottom p {
  font-size: min(10px, 2.67vw);
  color: #fff;
  line-height: 1.4;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-align: center;
}
.section-top .text-bottom::before {
  content: "";
  position: absolute;
  top: max(-57px, -15.2vw);
  left: 0;
  width: min(41px, 10.93vw);
  height: min(57px, 15.2vw);
  background: url(../images/sale-img1.png) no-repeat center/contain;
}
@media screen and (min-width: 768px) {
  .section-top .text-bottom {
    padding: min(5.2px, 1.39vw) min(39px, 10.4vw);
    margin: 0 min(9.1px, 2.43vw);
  }
  .section-top .text-bottom p {
    font-size: min(13px, 3.47vw);
  }
  .section-top .text-bottom::before {
    top: max(-74.1px, -19.76vw);
    width: min(53.3px, 14.21vw);
    height: min(74.1px, 19.76vw);
  }
}

.section-link {
  left: 0;
  right: 0;
  width: 100%;
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
  background-color: #fff;
  z-index: 99;
  top: min(59px, 15.73vw);
  position: sticky;
}
@media screen and (min-width: 768px) {
  .section-link {
    top: 78px;
  }
}
.section-link .nav-link__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  list-style: none;
}
.section-link .nav-link__list .nav-item {
  position: relative;
}
.section-link .nav-link__list .nav-item .icon-arrow {
  position: absolute;
  top: 50%;
  right: 7px;
  transform: translate(-50%, -50%);
}
.section-link .nav-link__list .nav-item__link {
  display: block;
  background: #898989;
  color: #fff;
  font-family: var(--font-futura);
  font-size: min(20px, 5.33vw);
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  height: min(40px, 10.67vw);
  text-decoration: none;
  transition: ease-out 0.25s;
  white-space: nowrap;
}
.section-link .nav-link__list .nav-item__link.-sale {
  background-color: #f05245;
}
.section-link .nav-link__list .nav-item__link.-campaign {
  background-color: #eb8539;
}
.section-link .nav-link__list .nav-item__link.-event {
  background-color: #027fc9;
}
.section-link .nav-link__list .nav-item__link.-newshop {
  background-color: #5fcb16;
}
@media screen and (min-width: 768px) {
  .section-link .nav-link__list .nav-item__link {
    font-size: min(26px, 6.93vw);
  }
  .section-link .nav-link__list .nav-item__link:hover {
    color: #faff00;
  }
}
@media screen and (max-width: 1023px) {
  .section-link {
    max-width: 450px;
  }
}

.other-link {
  padding: min(20px, 5.33vw) 0;
}
@media screen and (min-width: 768px) {
  .other-link {
    padding: min(26px, 6.93vw) 0;
  }
}
.other-link .btn-other {
  --stroke-color: #000;
  --stroke-width: 1px;
  display: block;
  border: 1px solid #000000;
  background-color: #c95694;
  font-size: min(25px, 6.67vw);
  font-weight: 800;
  letter-spacing: 0.02em;
  line-height: 1.44;
  text-align: center;
  color: #fff;
  height: min(50px, 13.33vw);
  line-height: min(46px, 12.27vw);
  text-decoration: none;
  border-radius: 10px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .other-link .btn-other {
    font-size: min(32.5px, 8.67vw);
    border-radius: 13px;
    height: min(60px, 16vw);
    line-height: min(55.2px, 14.72vw);
    transition: ease-out 0.25s;
  }
  .other-link .btn-other:hover {
    color: #faff00;
    opacity: 0.7;
  }
  .other-link .btn-other:hover .icon-arrow::before {
    background-color: #faff00;
  }
}
.other-link .btn-other .icon-arrow {
  position: absolute;
  top: 50%;
  right: min(20px, 5.33vw);
  width: min(17px, 4.53vw);
  height: min(10px, 2.67vw);
  transform: translateY(-50%) rotate(-90deg);
}

.section-link_fixed {
  display: none;
  transform: translateY(100%);
  transition: transform 0.25s;
}

.section-sale {
  background-color: #d6f2ff;
}
.section-sale .section-ttl {
  background-color: #027fc9;
}
.section-sale .section-ttl .text1 {
  font-size: min(34px, 9.07vw);
  line-height: 1.4705882353;
}
.section-sale .section-description {
  position: relative;
}
.section-sale .section-description::before {
  position: absolute;
  content: "";
  height: min(62px, 16.53vw);
  top: max(-27px, -7.2vw);
  bottom: 0;
  left: min(5px, 1.33vw);
  right: max(-3px, -0.8vw);
  background: url(../images/sale-img3.png) no-repeat center/contain;
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  .section-sale .section-description::before {
    height: min(80.6px, 21.49vw);
    left: min(6.5px, 1.73vw);
    right: max(-3.9px, -1.04vw);
  }
}

.section-event {
  background-color: #f7dbd1;
}
.section-event .section-ttl {
  background-color: #f05245;
}
.section-event .section-content {
  position: relative;
}
.section-event .section-content::before {
  position: absolute;
  content: "";
  height: min(53px, 14.13vw);
  top: max(-10px, -2.67vw);
  bottom: 0;
  left: min(6px, 1.6vw);
  right: 0;
  background: url(../images/sale-img4.png) no-repeat top center/contain;
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  .section-event .section-content::before {
    height: min(68.9px, 18.37vw);
    top: max(-13px, -3.47vw);
    left: min(7.8px, 2.08vw);
  }
}
.section-event .box-list .box-item__link {
  background-color: #f05144;
}
.section-event .box-list .box-item__link::before {
  background-color: #f7a8a1;
}

.section-campaign {
  background-color: #f8e7c6;
}
.section-campaign .section-ttl {
  background-color: #eb8539;
}
.section-campaign .section-content {
  position: relative;
}
.section-campaign .section-content::before {
  position: absolute;
  content: "";
  height: min(57px, 15.2vw);
  top: max(-11px, -2.93vw);
  bottom: 0;
  left: min(6px, 1.6vw);
  right: max(-6px, -1.6vw);
  background: url(../images/sale-img5.png) no-repeat top center/contain;
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  .section-campaign .section-content::before {
    height: min(74.1px, 19.76vw);
    top: max(-14.3px, -3.81vw);
    left: min(7.8px, 2.08vw);
    right: max(-7.8px, -2.08vw);
  }
}

.section-newshop {
  background-color: #dbf7c7;
}
.section-newshop .section-ttl {
  letter-spacing: 0.09em;
}
.section-newshop .section-content {
  background-color: #fff;
  position: relative;
}
.section-newshop .section-content::before {
  position: absolute;
  content: "";
  height: min(69px, 18.4vw);
  right: min(14px, 3.73vw);
  top: min(8px, 2.13vw);
  bottom: 0;
  left: min(11px, 2.93vw);
  background: url(../images/sale-img6.png) no-repeat top center/contain;
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  .section-newshop .section-content::before {
    height: min(89.7px, 23.92vw);
    right: min(18.2px, 4.85vw);
    top: min(10.4px, 2.77vw);
    left: min(14.3px, 3.81vw);
  }
}
.section-newshop .newshop-list .item {
  border: 1px solid #707070;
  border-radius: 10px;
  overflow: hidden;
  background-color: #dbf7c7;
  padding: min(5px, 1.33vw);
}
@media screen and (min-width: 768px) {
  .section-newshop .newshop-list .item {
    padding: min(6.5px, 1.73vw);
  }
}
.section-newshop .newshop-list .item .item-img {
  border-radius: 10px;
  background-color: #fff;
  overflow: hidden;
}
.section-newshop .newshop-list .item .item-img img {
  display: block;
}
.section-newshop .newshop-list .item .item-time {
  text-align: center;
  color: #f05245;
  font-weight: 800;
  font-size: min(20px, 5.33vw);
  letter-spacing: 0.055em;
  line-height: 1.35;
  padding: 9px 0 9px 0;
}
@media screen and (min-width: 768px) {
  .section-newshop .newshop-list .item .item-time {
    font-size: min(26px, 6.93vw);
  }
}
.section-newshop .newshop-list .item + .item {
  margin-top: min(20px, 5.33vw);
}

.section-event {
  padding-top: min(20px, 5.33vw);
  padding-bottom: min(20px, 5.33vw);
}

.section-instagram {
  background: #ffdf00;
  padding: min(12px, 3.2vw) 0;
}
.section-instagram .section-content {
  margin-top: 0;
  padding: 0;
}
.section-instagram .insta-box {
  border-radius: 10px;
  background: #fff;
  padding: min(10px, 2.67vw) min(15px, 4vw);
}
.section-instagram .insta-box__ttl {
  font-size: min(14px, 3.73vw);
  font-style: normal;
  font-weight: 700;
  line-height: 1.4285714286;
  text-align: center;
  letter-spacing: -0.026em;
}
.section-instagram .insta-box__user {
  display: flex;
  align-items: center;
  width: -moz-max-content;
  width: max-content;
  margin-left: auto;
  margin-right: auto;
  text-decoration: none;
  transition: 0.25s ease-out;
}
.section-instagram .insta-box__user:hover {
  opacity: 0.7;
}
.section-instagram .insta-box__user .img {
  width: min(40px, 10.67vw);
  margin-right: min(10px, 2.67vw);
}
.section-instagram .insta-box__user .img img {
  width: 100%;
  display: block;
}
.section-instagram .insta-box__user .text {
  flex: 1;
  color: #eb1e66;
  text-align: center;
  font-size: min(18px, 4.8vw);
  font-weight: 700;
  line-height: 1;
}
.section-instagram .insta-box__text {
  text-align: center;
  font-size: min(10px, 2.67vw);
  font-weight: 500;
  line-height: normal;
  margin-top: min(6px, 1.6vw);
}
@media screen and (min-width: 768px) {
  .section-instagram {
    padding: min(15.96px, 4.26vw) 0;
  }
  .section-instagram .insta-box {
    padding: min(13.3px, 3.55vw) min(19.95px, 5.32vw);
  }
  .section-instagram .insta-box__ttl {
    font-size: min(18.2px, 4.85vw);
  }
  .section-instagram .insta-box__user .img {
    width: min(53.2px, 14.19vw);
    margin-right: min(13.3px, 3.55vw);
  }
  .section-instagram .insta-box__user .text {
    font-size: min(23.94px, 6.38vw);
  }
  .section-instagram .insta-box__text {
    font-size: min(13.3px, 3.55vw);
    margin-top: min(7.98px, 2.13vw);
  }
}

.modal {
  display: none;
}

@media screen and (min-width: 768px) {
  .toho {
    width: 152.1px;
  }
}

@media screen and (min-width: 768px) {
  .svgoff {
    width: 250.9px;
  }
}

@media screen and (min-width: 768px) {
  .svgbus {
    width: 52px;
  }
}

.pd1 {
  padding: min(8px, 2.13vw) 0;
}

.pd2 {
  padding-bottom: min(8px, 2.13vw);
}

.pd3 {
  padding: min(10px, 2.67vw) 0;
}

.pd4 {
  padding-bottom: min(10px, 2.67vw);
}

.pd11 {
  padding-left: min(30px, 8vw) !important;
}

.item-off {
  position: relative;
}
.item-off::after {
  content: "終了しました";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  line-height: 1;
  font-size: min(35px, 9.33vw);
  color: #fff;
  background-color: rgba(172, 172, 172, 0.9);
  text-align: center;
  font-weight: 800;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
}
@media screen and (min-width: 768px) {
  .item-off::after {
    font-size: min(45.5px, 12.13vw);
  }
}
.item-off:hover {
  opacity: 1 !important;
  cursor: auto;
}

.item-comingsoon {
  position: relative;
  overflow: hidden;
  pointer-events: none;
}
.item-comingsoon .comingsoon-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  z-index: 3;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  line-height: 1;
  font-size: min(35px, 9.33vw);
  color: #fff;
  background-color: rgba(172, 172, 172, 0.9);
}
.item-comingsoon .comingsoon-content .txt-coming {
  line-height: 1.2;
  font-size: min(35px, 9.33vw);
  font-weight: 700;
  color: #fff;
  text-align: center;
  font-family: var(--font-futura);
}
@media screen and (min-width: 768px) {
  .item-comingsoon .comingsoon-content .txt-coming {
    font-size: min(45.5px, 12.13vw);
  }
}
.item-comingsoon .comingsoon-content .txt-date {
  color: #fff;
  font-size: min(18px, 4.8vw);
  line-height: 1;
  font-weight: 800;
}
@media screen and (min-width: 768px) {
  .item-comingsoon .comingsoon-content .txt-date {
    font-size: min(23.4px, 6.24vw);
  }
}

.special-content {
  background-color: #f7dbd1;
}
.special-content .page-heading {
  padding: min(20px, 5.33vw) 0;
}
.special-content .page-heading-title {
  border: 1px solid #000000;
  background-color: #f05245;
  border-radius: 10px;
  font-size: min(25px, 6.67vw);
  font-weight: 900;
  letter-spacing: 0.05em;
  line-height: 1.44;
  color: #fef100;
  --stroke-width: 1px;
  --stroke-color: #000;
  padding: min(10px, 2.67vw) 0;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .special-content .page-heading-title {
    font-size: min(32.5px, 8.67vw);
  }
}

.special-content-main .nav_tabs {
  display: flex;
}
.special-content-main .nav_tabs_item {
  display: block;
  padding: min(3px, 0.8vw) min(17px, 4.53vw);
  border-radius: 10px 10px 0 0;
  background-color: #fff;
  margin-bottom: -1px;
  border-bottom: 1px solid #000;
}
.special-content-main .nav_tabs_item .nav_tabs_text {
  font-size: min(20px, 5.33vw);
  font-weight: bold;
  line-height: 1.45;
  color: #dddddd;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .special-content-main .nav_tabs_item .nav_tabs_text {
    font-size: min(26px, 6.93vw);
  }
}
.special-content-main .nav_tabs_item.js-active {
  background-color: #fceeed;
  border: 1px solid #000;
  border-bottom: 0;
}
.special-content-main .nav_tabs_item.js-active .nav_tabs_text {
  color: #f05245;
}
.special-content-main .sp_tabs_panels {
  border: 1px solid #000;
  border-radius: 0 10px 10px 10px;
  background-color: #fceeed;
}
.special-content-main .sp_tabs_panels_item {
  padding: min(20px, 5.33vw);
  padding-top: 0;
}
.special-content-main .sp_tabs_panels .tabs-title {
  font-size: min(25px, 6.67vw);
  line-height: 1.44;
  font-weight: 800;
  text-align: center;
  color: #fff100;
  padding: min(20px, 5.33vw) 0;
  --stroke-color: #000;
  --stroke-width: 1px;
}
@media screen and (min-width: 768px) {
  .special-content-main .sp_tabs_panels .tabs-title {
    font-size: min(32.5px, 8.67vw);
    padding: min(26px, 6.93vw) 0;
  }
}
.special-content-main .sp_tabs_panels .tabs-title ._num {
  color: #f05245;
  font-size: min(35px, 9.33vw);
  line-height: 0.7;
  position: relative;
  top: 3px;
}
@media screen and (min-width: 768px) {
  .special-content-main .sp_tabs_panels .tabs-title ._num {
    font-size: min(45.5px, 12.13vw);
  }
}
.special-content-main .sp_tabs_panels .tabs-title .-lr {
  position: relative;
  display: inline-block;
  padding: 0 min(29px, 7.73vw);
}
.special-content-main .sp_tabs_panels .tabs-title .-lr::before, .special-content-main .sp_tabs_panels .tabs-title .-lr::after {
  position: absolute;
  content: "";
  width: min(27px, 7.2vw);
  height: min(35px, 9.33vw);
  background: url(../images/text-mark.svg) no-repeat center/contain;
  bottom: 0;
}
.special-content-main .sp_tabs_panels .tabs-title .-lr::before {
  left: 0;
}
.special-content-main .sp_tabs_panels .tabs-title .-lr::after {
  right: 0;
  transform: scaleX(-1);
}
.special-content-main .sp_tabs_panels .tabs-title .-lr ._num {
  font-size: min(45px, 12vw);
  letter-spacing: 0.01em;
}
.special-content-main .sp_tabs_panels .tabs-title-sub {
  font-size: min(20px, 5.33vw);
  line-height: 1.5015;
  font-weight: 600;
  text-align: center;
  background-color: #f05245;
  border-radius: min(15px, 4vw);
  color: #fff;
  max-width: min(280px, 74.67vw);
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  .special-content-main .sp_tabs_panels .tabs-title-sub {
    font-size: min(26px, 6.93vw);
    max-width: min(364px, 97.07vw);
    line-height: 1.95195;
    border-radius: min(19.5px, 5.2vw);
  }
}
.special-content-main .sp_tabs_panels .sp-time {
  font-size: min(18px, 4.8vw);
  font-weight: bold;
  line-height: 1.6666666667;
  padding: 0 min(25px, 6.67vw);
  padding-top: min(10px, 2.67vw);
  padding-bottom: min(30px, 8vw);
  position: relative;
}
@media screen and (min-width: 768px) {
  .special-content-main .sp_tabs_panels .sp-time {
    font-size: min(23.4px, 6.24vw);
    padding: 0 min(32.5px, 8.67vw);
    padding-top: min(13px, 3.47vw);
    padding-bottom: min(39px, 10.4vw);
  }
}
.special-content-main .sp_tabs_panels .sp-time._time1::before {
  content: "";
  position: absolute;
  top: min(10px, 2.67vw);
  right: 0;
  left: max(-10px, -2.67vw);
  bottom: min(10px, 2.67vw);
  background: url(../images/special/spec-1.png) no-repeat top center/contain;
}
.special-content-main .sp_tabs_panels .sp-time._time2 {
  min-height: min(90px, 24vw);
  text-align: center;
  padding-top: min(25px, 6.67vw);
}
@media screen and (min-width: 768px) {
  .special-content-main .sp_tabs_panels .sp-time._time2 {
    min-height: min(117px, 31.2vw);
  }
}
.special-content-main .sp_tabs_panels .sp-time._time2::before {
  content: "";
  position: absolute;
  top: min(18px, 4.8vw);
  right: 0;
  left: 0;
  bottom: 0;
  background: url(../images/special/spec-2.png) no-repeat top center/contain;
}
.special-content-main .sp_tabs_panels .spec-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px 4px;
}
.special-content-main .sp_tabs_panels .spec-list .item {
  border: 1px solid #707070;
  background-color: #eaf7ff;
  padding: min(7px, 1.87vw);
  padding-bottom: min(26px, 6.93vw);
  position: relative;
  border-radius: 5px;
  overflow: hidden;
}
.special-content-main .sp_tabs_panels .spec-list .item:nth-child(2n):not(.item-end) {
  background-color: #ffeecc;
}
.special-content-main .sp_tabs_panels .spec-list .item:nth-child(2n):not(.item-end) .item-textf {
  background-color: #f79208;
}
.special-content-main .sp_tabs_panels .spec-list .item-img img {
  width: 100%;
  height: auto;
  aspect-ratio: 140/85;
  -o-object-fit: cover;
     object-fit: cover;
}
.special-content-main .sp_tabs_panels .spec-list .item-title1 {
  text-align: center;
  font-size: min(20px, 5.33vw);
  font-weight: bold;
  line-height: 1.25;
}
@media screen and (min-width: 768px) {
  .special-content-main .sp_tabs_panels .spec-list .item-title1 {
    font-size: min(26px, 6.93vw);
  }
}
.special-content-main .sp_tabs_panels .spec-list .item-title2 {
  text-align: center;
  font-size: min(14px, 3.73vw);
  font-weight: bold;
  line-height: 1.25;
}
@media screen and (min-width: 768px) {
  .special-content-main .sp_tabs_panels .spec-list .item-title2 {
    font-size: min(18.2px, 4.85vw);
  }
}
.special-content-main .sp_tabs_panels .spec-list .item-text {
  text-align: center;
  font-size: min(13px, 3.47vw);
  font-weight: 500;
  line-height: 1.25;
  margin-top: min(7px, 1.87vw);
}
@media screen and (min-width: 768px) {
  .special-content-main .sp_tabs_panels .spec-list .item-text {
    font-size: min(16.9px, 4.51vw);
  }
}
.special-content-main .sp_tabs_panels .spec-list .item-textf {
  text-align: center;
  font-size: min(13px, 3.47vw);
  font-weight: 500;
  line-height: 1.25;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #027fc9;
  color: #fff;
  right: 0;
}
@media screen and (min-width: 768px) {
  .special-content-main .sp_tabs_panels .spec-list .item-textf {
    font-size: min(16.9px, 4.51vw);
  }
}
.special-content-main .sp_tabs_panels .spec-list .item-end {
  border: none;
  background-color: transparent;
  padding: 0;
  position: relative;
  overflow: unset;
}
.special-content-main .sp_tabs_panels .spec-list .item-end .img {
  transform: translateX(20px) translateY(10px);
}
.special-content-main .spec-back {
  padding: min(20px, 5.33vw) 0;
}
.special-content-main .spec-back-btn {
  font-size: min(20px, 5.33vw);
  font-weight: bold;
  text-align: center;
  line-height: 1.25;
  display: block;
  border: 1px solid #000;
  border-radius: min(28px, 7.47vw);
  padding: min(12px, 3.2vw) min(10px, 2.67vw);
  color: #000;
  text-decoration: none;
  position: relative;
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  .special-content-main .spec-back-btn {
    font-size: min(26px, 6.93vw);
  }
}
.special-content-main .spec-back-btn .icon-arrow {
  width: min(26px, 6.93vw);
  height: min(26px, 6.93vw);
  background-color: #000;
  border-radius: 50%;
  position: absolute;
  right: min(12px, 3.2vw);
  top: 50%;
  transform: translateY(-50%);
}
.special-content-main .spec-back-btn .icon-arrow::before {
  width: min(11px, 2.93vw);
  height: min(7px, 1.87vw);
  transform: translate(-50%, -50%) rotate(-90deg);
}

@keyframes displayAnime {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.nav_tabs_item {
  cursor: pointer;
}

.nav_tabs_panels .nav_tabs_panel {
  display: none;
  opacity: 0;
  transition: 3s opacity ease-out;
}

.nav_tabs_panels .nav_tabs_panel.js-active {
  display: block;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
  animation-name: displayAnime;
}

