@charset "UTF-8";
/**************************************************/
/* base */
/**************************************************/
@media (max-aspect-ratio: 12/7) {
  :root {
    font-size: 1.3333333333vw;
  }
}
@media (min-aspect-ratio: 12/7) {
  :root {
    font-size: 2.2857142857vh;
  }
}
@media (max-width: 767px) {
  :root {
    font-size: 4.4444444444vw;
  }
}

html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  font-family: "Noto Sans JP", "Noto Sans CJK JP", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ヒラギノ角ゴ Pro", "Hiragino Sans", "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
  font-size: 1rem;
  color: #262626;
}

img {
  max-width: 100%;
}

input,
textarea {
  font-size: 16px;
}

ul,
ol {
  list-style: none;
  margin: 0;
  padding: 0;
}

a.-telink,
a.js-telink {
  cursor: default;
  opacity: 1 !important;
}

@media (max-width: 1119px) {
  ._view-cw-high {
    display: none !important;
  }
}
@media (min-width: 1120px) {
  ._view-cw-low {
    display: none !important;
  }
}
@media (max-width: 1366px) {
  ._view-xl-high {
    display: none !important;
  }
}
@media (min-width: 1367px) {
  ._view-xl-low {
    display: none !important;
  }
}
@media (max-width: 1079px) {
  ._view-lg-high {
    display: none !important;
  }
}
@media (min-width: 1080px) {
  ._view-lg-low {
    display: none !important;
  }
}
@media (max-width: 767px) {
  ._view-md-high {
    display: none !important;
  }
}
@media (min-width: 768px) {
  ._view-md-low {
    display: none !important;
  }
}
@media (max-width: 480px) {
  ._view-sm-high {
    display: none !important;
  }
}
@media (min-width: 481px) {
  ._view-sm-low {
    display: none !important;
  }
}
@-webkit-keyframes confetti-anim {
  0% {
    opacity: 0;
    -webkit-transform: translate(0, 0) scale(0.5);
            transform: translate(0, 0) scale(0.5);
  }
  100% {
    -webkit-transform: translate(calc(-3.125rem + 6.25rem * var(--x)), calc(-3.125rem + 6.25rem * var(--y))) scale(1);
            transform: translate(calc(-3.125rem + 6.25rem * var(--x)), calc(-3.125rem + 6.25rem * var(--y))) scale(1);
    opacity: 1;
  }
}
@keyframes confetti-anim {
  0% {
    opacity: 0;
    -webkit-transform: translate(0, 0) scale(0.5);
            transform: translate(0, 0) scale(0.5);
  }
  100% {
    -webkit-transform: translate(calc(-3.125rem + 6.25rem * var(--x)), calc(-3.125rem + 6.25rem * var(--y))) scale(1);
            transform: translate(calc(-3.125rem + 6.25rem * var(--x)), calc(-3.125rem + 6.25rem * var(--y))) scale(1);
    opacity: 1;
  }
}
@-webkit-keyframes fadeleft-anim {
  0% {
    -webkit-transform: translateX(-3em);
            transform: translateX(-3em);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}
@keyframes fadeleft-anim {
  0% {
    -webkit-transform: translateX(-3em);
            transform: translateX(-3em);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}
@-webkit-keyframes faderight-anim {
  0% {
    -webkit-transform: translateX(3em);
            transform: translateX(3em);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}
@keyframes faderight-anim {
  0% {
    -webkit-transform: translateX(3em);
            transform: translateX(3em);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}
body.-menuopen {
  overflow: hidden;
}

#inbox {
  overflow-x: clip;
}
#inbox::after {
  content: "";
  display: block;
  position: fixed;
  inset: 0;
  background: url("../img/pcnav-bg.webp") top center/cover no-repeat;
  z-index: -1;
}
#inbox > .wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  max-width: 75rem;
  margin: 0 auto;
}
#inbox > .wrapper > .inner {
  max-width: 22.5rem;
  margin: 0 auto;
}
@media (min-width: 768px) {
  #inbox > .wrapper > .inner {
    -webkit-box-shadow: 0 0.1875rem 0.375rem 0 rgba(0, 0, 0, 0.16);
            box-shadow: 0 0.1875rem 0.375rem 0 rgba(0, 0, 0, 0.16);
  }
}
#inbox > .wrapper > .sidebar {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  width: 26.25rem;
  height: 100vh;
}
@media (max-width: 767px) {
  #inbox > .wrapper > .sidebar {
    display: none;
  }
}
#inbox > .wrapper > .sidebar .head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  line-height: 1;
  height: 2.8125rem;
  color: #CEC29B;
  background-image: url("../img/pcnav-head-border.svg");
  background-position: bottom left;
  background-repeat: repeat-x;
  background-size: 22.3125rem 0.375rem;
  font-size: 0.6875rem;
  padding: 0.625rem 2.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
#inbox > .wrapper > .sidebar .body {
  padding: 1.625rem 0;
  height: calc(100vh - 5.625rem);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: hidden;
}
#inbox > .wrapper > .sidebar .body .l-spnav-content {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  min-width: 21.25rem;
  margin-inline: auto;
  padding-bottom: 0;
}
#inbox > .wrapper > .sidebar .foot {
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  line-height: 1;
  height: 2.8125rem;
  font-size: 0.5625rem;
  color: #CEC29B;
  background-image: url("../img/pcnav-head-border.svg");
  background-position: top left;
  background-repeat: repeat-x;
  background-size: 22.3125rem 0.375rem;
  padding: 0.625rem 2.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
#inbox > .wrapper > .sidebar > .inner {
  background-size: 75rem auto;
  height: 100%;
}
#inbox > .wrapper > .sidebar.-left .l-spnav-content {
  padding-top: 0.8125rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}
#inbox > .wrapper > .sidebar.-left .l-spnav-content .logo {
  margin-bottom: 4.875rem;
}
#inbox > .wrapper > .sidebar.-left .l-spnav-content .logo > a {
  display: inline-block;
  padding: 0.125rem;
}
#inbox > .wrapper > .sidebar.-left .l-spnav-content .logo > a > img {
  width: 9.5rem;
}
#inbox > .wrapper > .sidebar.-left .l-spnav-content .title.-message img {
  width: 5.125rem;
}
#inbox > .wrapper > .sidebar.-left .l-spnav-content .title.-aniversary img {
  width: 11.3125rem;
}
#inbox > .wrapper > .sidebar.-left .l-spnav-content .title + .title {
  margin-top: 2.1875rem;
}
#inbox > .wrapper > .sidebar.-left .l-spnav-content li a {
  font-size: 1rem;
}
#inbox > .wrapper > .sidebar.-left .l-spnav-content .list {
  margin-top: 1.75rem;
}
#inbox > .wrapper > .sidebar.-left .l-spnav-content .sns {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 0.75rem;
  margin-left: 0.3125rem;
}
#inbox > .wrapper > .sidebar.-left .l-spnav-content .sns .-fb {
  width: 1.375rem;
}
#inbox > .wrapper > .sidebar.-left .l-spnav-content .sns .-tw {
  width: 1.125rem;
}
#inbox > .wrapper > .sidebar.-left .l-spnav-content .sns .-yt {
  width: 1.4375rem;
}
#inbox > .wrapper > .sidebar.-left .l-spnav-content .sns .-ins {
  width: 1.25rem;
}
#inbox > .wrapper > .sidebar.-right .video {
  display: none;
  position: absolute;
  inset: 0;
  width: calc(50vw - 11.25rem);
  overflow: hidden;
}
#inbox > .wrapper > .sidebar.-right .video video {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
}
#inbox > .wrapper > .sidebar.-right .head {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
#inbox > .wrapper > .sidebar.-right .head, #inbox > .wrapper > .sidebar.-right .foot {
  background-position-x: 0.625rem;
}
#inbox > .wrapper > .sidebar.-right > .inner {
  display: none;
}
#inbox > .wrapper > .sidebar.-right .content {
  height: 100%;
  padding: 2.8125rem 0 0 1.25rem;
}
#inbox > .wrapper > .sidebar.-right .logo {
  width: 12.5rem;
  margin: 0 auto;
}
#inbox > .wrapper > .sidebar.-right .logo img {
  width: 100%;
}
#inbox > .wrapper > .sidebar.-right .list {
  margin: 4.375rem 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#inbox > .wrapper > .sidebar.-right .list li {
  opacity: 0;
  -webkit-filter: blur(0.3125rem);
          filter: blur(0.3125rem);
  visibility: hidden;
  -webkit-transition: 0.8s;
  transition: 0.8s;
}
#inbox > .wrapper > .sidebar.-right .list li img {
  display: block;
  width: 100%;
}
#inbox > .wrapper > .sidebar.-right .list li.-active {
  opacity: 1;
  visibility: visible;
  -webkit-filter: blur(0);
          filter: blur(0);
}
#inbox > .wrapper > .sidebar.-right .list li:nth-child(1) {
  width: 7.5625rem;
}
#inbox > .wrapper > .sidebar.-right .list li:nth-child(2) {
  margin-top: -0.3125rem;
  margin-left: 1.875rem;
  width: 12.375rem;
}
#inbox > .wrapper > .sidebar.-right .list li:nth-child(3) {
  margin-left: 2.5rem;
  width: 11.875rem;
}
#inbox > .wrapper > .sidebar.-right .list li:nth-child(4) {
  margin-left: 0.625rem;
  margin-top: 0.1875rem;
  width: 11.5625rem;
}
#inbox > .wrapper > .sidebar.-right .list li:nth-child(5) {
  margin-left: 3.5625rem;
  margin-top: -0.25rem;
  width: 12.5rem;
}

.site-header {
  opacity: 0;
  visibility: hidden;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100;
  height: 3.75rem;
  background-image: url("../img/spnav-head-border.svg");
  background-position: bottom left;
  background-repeat: repeat-x;
  background-size: 21.1875rem 0.375rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (min-width: 768px) {
  .site-header {
    display: none;
  }
}
.site-header.-show {
  opacity: 1;
  visibility: visible;
}
.site-header > .inner {
  width: 100%;
  height: calc(100% - 0.375rem);
  padding: 0.75rem 1.25rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-image: url("../img/spnav-bg.webp");
  background-size: 22.5rem 43.75rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.site-header .logo {
  width: 6.4375rem;
}
.site-header .logo img {
  display: block;
  width: 100%;
}
.site-header .btn-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 1.25rem;
  padding-left: 0;
  padding-right: 0;
  border: none;
  background-color: transparent;
  color: inherit;
  cursor: pointer;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  position: absolute;
  z-index: 101;
  top: 50%;
  right: 1.25rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  margin-top: -0.125rem;
}
.site-header .btn-menu:focus {
  outline: none;
}
.site-header .btn-menu .bars {
  display: block;
  position: relative;
  width: 1.5rem;
  height: 0.125rem;
  background-color: #A58D60;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.site-header .btn-menu .bars::before, .site-header .btn-menu .bars::after {
  display: block;
  position: absolute;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #A58D60;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  content: "";
}
.site-header .btn-menu .bars::before {
  -webkit-transform: translate(0, -0.5625rem);
          transform: translate(0, -0.5625rem);
}
.site-header .btn-menu .bars::after {
  -webkit-transform: translate(0, 0.5625rem);
          transform: translate(0, 0.5625rem);
}
.site-header .btn-menu.-open .bars {
  background-color: transparent;
}
.site-header .btn-menu.-open .bars::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.site-header .btn-menu.-open .bars::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.l-spnav {
  display: none;
  position: fixed;
  z-index: 100;
  width: 100%;
  height: 100dvh;
  min-height: 43.75rem;
  top: 0;
  left: 0;
  background-image: url("../img/spnav-bg.webp");
  background-size: 22.5rem 43.75rem;
  background-repeat: repeat;
}
.l-spnav .head {
  font-size: 0.625rem;
  font-weight: bold;
  color: #CEC29B;
  height: 3.75rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  padding: 0 1.25rem 0.8125rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-image: url("../img/spnav-head-border.svg");
  background-position: bottom left;
  background-repeat: repeat-x;
  background-size: 21.1875rem 0.375rem;
  line-height: 1;
}
.l-spnav .body {
  padding: 1.875rem 0.625rem 2.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: auto;
  height: calc(100vh - 3.75rem);
}

.bg-line {
  background-image: linear-gradient(0deg, transparent 5em, #EAE6DB 0, transparent 5.1em), linear-gradient(#EAE6DB 1px, transparent 0);
  background-size: 100% 1.625rem;
}

.l-spnav-content {
  padding: 1.5625rem 0.9375rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 100%;
  min-height: 43.75rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.l-spnav-content .title.-message img {
  width: 5rem;
}
.l-spnav-content .title.-aniversary img {
  width: 11.125rem;
}
.l-spnav-content .title + .title {
  margin-top: 3.5rem;
}
.l-spnav-content .list {
  margin-top: 2.125rem;
  position: relative;
}
.l-spnav-content .list li {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.l-spnav-content .list li + li {
  margin-top: 1.25rem;
}
.l-spnav-content .list li .btn {
  font-size: 1.0625rem;
  letter-spacing: 0.05em;
  font-weight: bold;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  text-decoration: none;
  color: #262626;
  padding-left: 2.25rem;
  position: relative;
  display: inline;
}
.l-spnav-content .list li .btn::before {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 2rem;
  height: 1.5625rem;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
}
.l-spnav-content .list li:nth-child(1) a::before {
  background-image: url("../img/one-index.svg");
}
.l-spnav-content .list li:nth-child(2) a::before {
  background-image: url("../img/two-index.svg");
}
.l-spnav-content .list li:nth-child(3) a::before {
  background-image: url("../img/three-index.svg");
}
.l-spnav-content .list li:nth-child(4) a::before {
  background-image: url("../img/four-index.svg");
}
.l-spnav-content .list .badge {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-55%);
          transform: translateY(-55%);
  right: -4.25rem;
  width: 3.9375rem;
  height: 3.9375rem;
}
.l-spnav-content .list .badge img {
  width: 100%;
}
.l-spnav-content .list .badge-long {
  display: block;
  padding-left: 2.25rem;
}
.l-spnav-content .list .badge-long img {
  margin-top: 0.3125rem;
  height: 1.1875rem;
}
.l-spnav-content .sns {
  list-style: none;
  padding: 0;
  margin: 5rem 0 0.9375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.25rem;
}
.l-spnav-content .sns a {
  display: block;
}
.l-spnav-content .sns img {
  width: 100%;
  display: block;
}
.l-spnav-content .sns .-fb {
  width: 1.625rem;
}
.l-spnav-content .sns .-tw {
  width: 1.375rem;
}
.l-spnav-content .sns .-yt {
  width: 1.6875rem;
}
.l-spnav-content .sns .-ins {
  width: 1.5625rem;
}

.site-footer {
  background: #43413D;
  padding: 3.375rem 0.625rem 3rem;
}
.site-footer .logo {
  width: 10.625rem;
  margin: 0 auto;
}
.site-footer .logo img {
  display: block;
  width: 100%;
}
.site-footer .sns {
  list-style: none;
  padding: 0;
  margin: 3.125rem 0 1.875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.9375rem;
}
.site-footer .copyright {
  text-align: center;
  font-size: 0.5625rem;
  font-weight: 100;
  color: #fff;
  margin: 0;
  line-height: 1;
  letter-spacing: 0.06em;
}

.section-message {
  background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(33.5%, #fdfdfc), to(#f2f1ec));
  background: linear-gradient(to bottom, #fff 0%, #fdfdfc 33.5%, #f2f1ec 100%);
  padding: 2.375rem 1.25rem 5.375rem;
  text-align: center;
}
.section-message .heading {
  margin: 0 auto;
}
.section-message .heading > img {
  width: 6.25rem;
}
.section-message .title {
  font-size: 1.375rem;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  font-weight: 900;
  margin: 3.125rem auto 1.75rem;
}
.section-message .title > img {
  width: 11.8125rem;
}
.section-message .text {
  font-size: 0.875rem;
  text-align: center;
  line-height: 2.4285714286;
  letter-spacing: 0.02em;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  font-weight: bold;
  margin: 0;
}
.section-message .udon {
  width: 10.25rem;
  height: 14.5rem;
  margin: 2rem auto 0;
  -webkit-transform: translateX(-0.1875rem);
          transform: translateX(-0.1875rem);
  position: relative;
}
.section-message .udon .smoke {
  position: absolute;
  top: 0.1875rem;
  left: -1.125rem;
  right: -0.5625rem;
  -webkit-transition: opacity 2s ease-out;
  transition: opacity 2s ease-out;
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
  -webkit-transform-origin: center bottom;
          transform-origin: center bottom;
  opacity: 0;
  -webkit-mask: url(../img/udon-bowl-smoke-mask.webp) center/cover no-repeat;
          mask: url(../img/udon-bowl-smoke-mask.webp) center/cover no-repeat;
  -webkit-mask-size: 100%;
          mask-size: 100%;
  -webkit-mask-position: 0 0;
          mask-position: 0 0;
}
.section-message .udon .smoke > img {
  display: block;
  width: 100%;
  -webkit-transition: 1s ease-out;
  transition: 1s ease-out;
  -webkit-transition-delay: 1.6s;
          transition-delay: 1.6s;
}
.section-message .udon .smoke[data-trigger=smoke].-visible {
  -webkit-animation: sway 2s linear;
          animation: sway 2s linear;
  opacity: 1;
  -webkit-mask-size: 200%;
          mask-size: 200%;
  -webkit-mask-position: 0 100%;
          mask-position: 0 100%;
}
@-webkit-keyframes sway {
  0% {
    opacity: 0;
    -webkit-mask: url(../img/udon-bowl-smoke-mask.webp) center/cover no-repeat;
            mask: url(../img/udon-bowl-smoke-mask.webp) center/cover no-repeat;
    -webkit-mask-size: 100%;
            mask-size: 100%;
    -webkit-mask-position: 0 0;
            mask-position: 0 0;
  }
  40% {
    opacity: 1;
    -webkit-mask-size: 100%;
            mask-size: 100%;
    -webkit-mask-position: 0 0;
            mask-position: 0 0;
  }
  50% {
    -webkit-filter: blur(2px);
            filter: blur(2px);
  }
  100% {
    -webkit-filter: blur(0);
            filter: blur(0);
  }
}
@keyframes sway {
  0% {
    opacity: 0;
    -webkit-mask: url(../img/udon-bowl-smoke-mask.webp) center/cover no-repeat;
            mask: url(../img/udon-bowl-smoke-mask.webp) center/cover no-repeat;
    -webkit-mask-size: 100%;
            mask-size: 100%;
    -webkit-mask-position: 0 0;
            mask-position: 0 0;
  }
  40% {
    opacity: 1;
    -webkit-mask-size: 100%;
            mask-size: 100%;
    -webkit-mask-position: 0 0;
            mask-position: 0 0;
  }
  50% {
    -webkit-filter: blur(2px);
            filter: blur(2px);
  }
  100% {
    -webkit-filter: blur(0);
            filter: blur(0);
  }
}

.special-contents {
  background: #f2f1ec;
  overflow-x: clip;
}
@media (max-width: 767px) {
  .special-contents {
    padding-top: 3.5rem;
  }
}
.special-contents > .heading {
  text-align: center;
  margin: 0 auto 2.3125rem;
  position: relative;
}
.special-contents > .heading img {
  width: 13.125rem;
}
.special-contents > .heading .confetti {
  position: absolute;
  top: 50%;
  left: -0.25rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 23rem;
  height: 13.1875rem;
  overflow: visible;
}
.special-contents > .heading .confetti path {
  opacity: 0;
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-animation: confetti-anim 0.5s ease-out forwards;
          animation: confetti-anim 0.5s ease-out forwards;
  -webkit-animation-play-state: paused;
          animation-play-state: paused;
}
.special-contents > .heading.-inview .confetti path {
  -webkit-animation-play-state: running;
          animation-play-state: running;
}

.special-anchor-sp {
  display: none;
  padding: 1.875rem;
}
@media (max-width: 767px) {
  .special-anchor-sp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0.625rem;
  }
}
.special-anchor-sp > li .btn {
  display: block;
  background: white;
  border-radius: 6.25rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 0.875rem;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  font-weight: bold;
  position: relative;
}
.special-anchor-sp > li .btn::before {
  position: absolute;
  top: 50%;
  left: 0.9375rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 2rem;
  height: 1.5rem;
  background-repeat: no-repeat;
  background-size: contain;
  pointer-events: none;
  content: "";
}
.special-anchor-sp > li .btn::after {
  position: absolute;
  top: 50%;
  right: 0.9375rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 0.4375rem;
  height: 0.625rem;
  background: url("../img/icon-arrow.svg");
  background-repeat: no-repeat;
  background-size: contain;
  pointer-events: none;
  content: "";
}
.special-anchor-sp > li .btn a:not(.badge) {
  display: block;
  padding: 1rem 1.375rem 1rem 3.25rem;
  color: inherit;
  text-decoration: none;
}
.special-anchor-sp > li .btn .badge {
  position: absolute;
  z-index: 2;
  width: 3.3125rem;
  right: 1.875rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.special-anchor-sp > li .btn .badge img {
  width: 100%;
  pointer-events: none;
}
.special-anchor-sp li:nth-child(1) .btn::before {
  background-image: url("../img/one-index.svg");
}
.special-anchor-sp li:nth-child(2) .btn::before {
  background-image: url("../img/two-index.svg");
}
.special-anchor-sp li:nth-child(3) .btn::before {
  background-image: url("../img/three-index.svg");
}
.special-anchor-sp li:nth-child(4) .btn::before {
  background-image: url("../img/four-index.svg");
}

.basic-section > .index {
  width: 4.1875rem;
  margin-left: auto;
  margin-right: auto;
}
.basic-section > .index img {
  width: 100%;
}
.basic-section > .title {
  margin: 1.875rem 0 0.75rem;
  font-size: 1.125rem;
  font-weight: bold;
  text-align: center;
  color: var(--accent, #66A500);
  letter-spacing: 0.02em;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
}
.basic-section > .title.-orange {
  --accent: #FFA11E;
}
.basic-section > .title.-blue {
  --accent: #0263B9;
}
.basic-section > .text {
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.8461538462;
  text-align: justify;
  letter-spacing: 0.02em;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
}
.basic-section > .text mark {
  background: -webkit-gradient(linear, left bottom, left top, color-stop(0.375rem, #FFF000), color-stop(0.375rem, transparent));
  background: linear-gradient(to top, #FFF000 0.375rem, transparent 0.375rem);
}

.section-one {
  padding: 2.3125rem 1.25rem 0;
}
.section-one > .index {
  margin-bottom: 1.875rem;
}
.section-one > .heading {
  margin: 0 auto 2.375rem;
  width: 12.5rem;
}
.section-one > .heading img {
  width: 100%;
}
.section-one > .title {
  --accent: #B90025;
  padding-right: 5rem;
  text-align: right;
  position: relative;
}
.section-one > .title .badge {
  position: absolute;
  bottom: -0.5rem;
  right: -0.375rem;
  width: 5.4375rem;
}
.section-one > .image {
  margin: 0.875rem 0 1.75rem;
}
.section-one > .image img {
  display: block;
  width: 100%;
}
.section-one .info-list {
  position: relative;
  margin: 1.75rem 0 2.5rem;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
.section-one .info-list.-end::after {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  background: url(../img/course-end.svg) center/contain no-repeat;
  -webkit-transform: rotate(-4deg);
          transform: rotate(-4deg);
  -webkit-filter: drop-shadow(3px 3px 6px rgba(0, 0, 0, 0.16));
          filter: drop-shadow(3px 3px 6px rgba(0, 0, 0, 0.16));
}
.section-one .info-list dt, .section-one .info-list dd {
  margin: 0;
}
.section-one .info-list dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 0.75rem;
}
.section-one .info-list dt:not(:first-child) {
  margin-top: 1.5625rem;
}
.section-one .info-list dt::after {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 0.4375rem;
          flex: 1 0 0.4375rem;
  border-top: 1px dashed #9D9D9D;
  margin-left: 0.4375rem;
  content: "";
}
.section-one .info-list dt img {
  width: auto;
  height: 1.625rem;
}
.section-one .info-list dd > h4 {
  margin: 0.75rem 0 0;
  font-size: 0.75rem;
  line-height: 1.5833333333;
  letter-spacing: 0.09em;
}
.section-one .info-list dd > p {
  margin: 0.375rem 0 0;
  font-size: 0.625rem;
  line-height: 1.9;
  letter-spacing: 0.09em;
}
.section-one .info-list dd > p > strong {
  font-size: 0.9375rem;
  line-height: 1.2666666667;
  letter-spacing: 0.09em;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
}
.section-one .info-list dd > p + p {
  margin-top: 0.75rem;
}
.section-one .info-detail-list {
  margin: 0 0 2.125rem;
  border-radius: 0.25rem;
  background: #fff;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
.section-one .info-detail-list dt {
  position: relative;
  padding: 1.25rem 4.0625rem 1.25rem 1.25rem;
  font-size: 0.875rem;
  line-height: 1.5714285714;
  letter-spacing: 0.1em;
  font-weight: 500;
  cursor: pointer;
}
.section-one .info-detail-list dt::after {
  position: absolute;
  top: 50%;
  right: 1.25rem;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.75rem;
  border-radius: 50%;
  background-color: #B90025;
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M-4.19617e-05 11.704C-4.19617e-05 18.1679 5.24002 23.408 11.704 23.408C18.1679 23.408 23.408 18.1679 23.408 11.704C23.408 5.24006 18.1679 0 11.704 0C5.24002 0 -4.19617e-05 5.24006 -4.19617e-05 11.704Z' fill='%23B90025'/%3E%3Cpath d='M14.9089 10.756L11.6739 13.991L8.43894 10.756' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  -webkit-transition: 0.4s -webkit-transform;
  transition: 0.4s -webkit-transform;
  transition: 0.4s transform;
  transition: 0.4s transform, 0.4s -webkit-transform;
  content: "";
}
.section-one .info-detail-list dd {
  margin: 0;
  padding: 0.375rem 1rem 1rem;
}
.section-one .info-detail-list dd h4 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 0 0.75rem;
}
.section-one .info-detail-list dd h4:not(:first-child) {
  margin-top: 1.5625rem;
}
.section-one .info-detail-list dd h4::after {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 0.4375rem;
          flex: 1 0 0.4375rem;
  border-top: 1px dashed #9D9D9D;
  margin-left: 0.4375rem;
  content: "";
}
.section-one .info-detail-list dd h4 img {
  width: auto;
  height: 1.625rem;
}
.section-one .info-detail-list dd p {
  font-size: 0.75rem;
  line-height: 1.5833333333;
  letter-spacing: 0.09em;
}
.section-one .info-detail-list dd a {
  color: inherit;
}
.section-one .info-detail-list dd ul {
  display: -ms-grid;
  display: grid;
  row-gap: 0.3em;
  margin: 0 0 0 0.5rem;
  padding: 0;
  font-size: 0.75rem;
  line-height: 1.5833333333;
  letter-spacing: 0.09em;
}
.section-one .info-detail-list dd ul > li {
  text-indent: -0.625rem;
}
.section-one .info-detail-list dd ul > li::before {
  content: "・";
  display: inline-block;
  width: 0.625rem;
  text-indent: 0.1875rem;
}
.section-one .info-detail-list dd ul.-bigDisc {
  margin-top: 0.75rem;
}
.section-one .info-detail-list dd ul.-bigDisc > li {
  margin-top: 0.3em;
}
.section-one .info-detail-list dd ul.-bigDisc > li::before {
  width: 0.375rem;
  content: "●";
  margin: 0 0.25rem 0.1875rem 0;
  font-size: 0.625rem;
  text-indent: 0;
  vertical-align: middle;
}
.section-one .info-detail-list:not(.-open) dt::after {
  -webkit-transform: rotate(0);
          transform: rotate(0);
}
.section-one .info-detail-list:not(.-open) dd {
  display: none;
}
.section-one .course-box {
  padding: 0 0.625rem;
}
.section-one .course-box .heading {
  text-align: center;
  margin: 0 0 0.875rem;
}
.section-one .course-box .heading img {
  width: 11.3125rem;
}
.section-one .course-box .card {
  background: #fff;
  border-radius: 0.25rem 0 0 0.25rem;
  border-left: 0.5rem solid #B90025;
}
.section-one .course-box .card + .card {
  margin-top: 0.5rem;
}
.section-one .course-box .head {
  display: -ms-grid;
  display: grid;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-grid-columns: 3.4375rem 1fr;
  grid-template-columns: 3.4375rem 1fr;
  padding: 0.625rem 2.1875rem 0.625rem 0;
  position: relative;
  cursor: pointer;
}
.section-one .course-box .head::after {
  position: absolute;
  top: 50%;
  right: 0.625rem;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.75rem;
  border-radius: 50%;
  background-color: #B90025;
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M-4.19617e-05 11.704C-4.19617e-05 18.1679 5.24002 23.408 11.704 23.408C18.1679 23.408 23.408 18.1679 23.408 11.704C23.408 5.24006 18.1679 0 11.704 0C5.24002 0 -4.19617e-05 5.24006 -4.19617e-05 11.704Z' fill='%23B90025'/%3E%3Cpath d='M14.9089 10.756L11.6739 13.991L8.43894 10.756' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-transition: 0.4s -webkit-transform;
  transition: 0.4s -webkit-transform;
  transition: 0.4s transform;
  transition: 0.4s transform, 0.4s -webkit-transform;
  content: "";
}
.section-one .course-box .head .left {
  text-align: center;
  border-right: 1px dashed #A8A8A8;
  padding: 0.375rem 0 0.125rem;
}
.section-one .course-box .head .left > img {
  width: 1.6875rem;
}
.section-one .course-box .head .lead {
  font-size: 0.75rem;
  line-height: 1.5;
  font-weight: 500;
  padding-left: 0.75rem;
}
.section-one .course-box .head.-open::after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.section-one .course-box .body {
  display: none;
}
.section-one .course-box .body p {
  padding: 0.3125rem 1.625rem 1.25rem;
  font-size: 0.6875rem;
  line-height: 1.6363636364;
  color: #505050;
  letter-spacing: 0.1em;
  margin: 0;
}
.section-one .gallery-box {
  margin: 3.125rem 0 3.75rem 0.625rem;
}
.section-one .gallery-box .image > span {
  display: block;
  background: #fff;
  -webkit-box-shadow: 0 0.1875rem 0.375rem 0 rgba(0, 0, 0, 0.16);
          box-shadow: 0 0.1875rem 0.375rem 0 rgba(0, 0, 0, 0.16);
  opacity: 0;
  -webkit-animation-play-state: paused;
          animation-play-state: paused;
  -webkit-animation-duration: 0.7s;
          animation-duration: 0.7s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
.section-one .gallery-box .image img {
  width: 100%;
  display: block;
}
.section-one .gallery-box .image:nth-child(1) {
  width: 11.5625rem;
  -webkit-transform: rotate(-10deg);
          transform: rotate(-10deg);
  margin-left: 0.9375rem;
}
.section-one .gallery-box .image:nth-child(1) > span {
  -webkit-transform: translateX(-3em);
          transform: translateX(-3em);
  -webkit-animation-name: fadeleft-anim;
          animation-name: fadeleft-anim;
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
}
.section-one .gallery-box .image:nth-child(2) {
  width: 9.5625rem;
  -webkit-transform: rotate(5deg);
          transform: rotate(5deg);
  margin-top: -1.9375rem;
  margin-left: auto;
  margin-right: 0.4375rem;
}
.section-one .gallery-box .image:nth-child(2) > span {
  -webkit-transform: translateX(3em);
          transform: translateX(3em);
  -webkit-animation-name: faderight-anim;
          animation-name: faderight-anim;
  -webkit-animation-delay: 0.05s;
          animation-delay: 0.05s;
}
.section-one .gallery-box .image:nth-child(3) {
  width: 10.5rem;
  -webkit-transform: rotate(-5deg);
          transform: rotate(-5deg);
  margin-top: -3.375rem;
  margin-left: -0.125rem;
  position: relative;
  z-index: 1;
}
.section-one .gallery-box .image:nth-child(3) > span {
  -webkit-transform: translateX(-3em);
          transform: translateX(-3em);
  -webkit-animation-name: fadeleft-anim;
          animation-name: fadeleft-anim;
  -webkit-animation-delay: 0.1s;
          animation-delay: 0.1s;
}
.section-one .gallery-box .image:nth-child(4) {
  width: 11.5rem;
  -webkit-transform: rotate(-23deg);
          transform: rotate(-23deg);
  margin-top: -0.4375rem;
  margin-left: auto;
  margin-right: 2.875rem;
}
.section-one .gallery-box .image:nth-child(4) > span {
  -webkit-transform: translateX(3em);
          transform: translateX(3em);
  -webkit-animation-name: faderight-anim;
          animation-name: faderight-anim;
  -webkit-animation-delay: 0.15s;
          animation-delay: 0.15s;
}
.section-one .gallery-box.-inview .image > span {
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.section-one .contact-box {
  padding-bottom: 3.75rem;
}
.section-one .contact-box .lead {
  text-align: center;
  font-size: 0.875rem;
  line-height: 1.5714285714;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  font-weight: bold;
  margin: 0 0 1.125rem;
}
.section-one .contact-box .button > a {
  display: block;
  border-radius: 50vh;
  background: #B90025;
  color: #fff;
  font-size: 1rem;
  font-weight: 600;
  text-align: center;
  text-decoration: none;
  padding: 1.625rem 0.625rem;
}
.section-one .contact-box .button > a::after {
  display: inline-block;
  margin-left: 0.875rem;
  width: 0.9375rem;
  height: 0.6875rem;
  background-image: url("data:image/svg+xml,%3Csvg width='15' height='11' viewBox='0 0 15 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.22099 1.3H13.101V6.3H4.22099V1.3ZM2.92099 7.6H14.405V0H2.91699L2.92099 7.6Z' fill='white'/%3E%3Cpath d='M0 2.26489V10.5249H12.14V9.22489H1.3V2.26489H0Z' fill='white'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
}
.section-one .contact-box .button.-closed > a {
  background: #707070;
  cursor: not-allowed;
  pointer-events: none;
}
.section-one .contact-box .button.-closed > a::after {
  content: none;
}
.section-one .contact-box .note {
  font-size: 0.6875rem;
  line-height: 1.8181818182;
  margin: 1.75rem 0 0;
  letter-spacing: 0.02em;
}
.section-one .contact-box .note > span {
  font-size: 0.75rem;
}
.section-one .contact-box .note a {
  color: inherit;
}

.section-two {
  background: #fff;
  padding: 2.1875rem 1.25rem 2.8125rem;
}
.section-two > .index {
  margin-bottom: 1.625rem;
}
.section-two > .heading {
  margin: 0;
  text-align: center;
}
.section-two > .heading > img {
  width: 18.75rem;
}
.section-two .current-menu {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 0.625rem 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.625rem;
  margin-top: 2.5rem;
  position: relative;
}
.section-two .current-menu::before {
  position: absolute;
  content: "";
  background: url("../img/menu-soldOut02.svg") no-repeat center center/contain;
  width: 12.5rem;
  height: 4.0625rem;
  z-index: 100;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.section-two .current-menu .item {
  background-image: url("../img/menu-border-01.svg");
  background-repeat: no-repeat;
  background-size: contain;
  padding: 1.5rem 0.875rem 0.875rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
}
.section-two .current-menu .item:nth-child(even) {
  background-image: url("../img/menu-border-02.svg");
  --accent: #015A12;
}
.section-two .current-menu .item > .image.-bg-gray::before {
  position: absolute;
  inset: 0;
  background: 62.5% no-repeat, rgba(0, 0, 0, 0.4);
  z-index: 1;
  content: "";
}
.section-two .current-menu .item > .image.-soldOut::before {
  position: absolute;
  inset: 0;
  background: url(../img/menu-soldOut.svg) center/62.5% no-repeat, rgba(0, 0, 0, 0.4);
  z-index: 1;
  content: "";
}
.section-two .current-menu .bubble {
  position: absolute;
  top: -0.625rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  color: #fff;
  font-size: 0.8125rem;
  width: 7.6875rem;
  text-align: center;
  border-radius: 50vh;
  background: var(--accent, #66A500);
  padding: 0.375rem 0 0.25rem;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
}
.section-two .current-menu .bubble::after {
  position: absolute;
  top: calc(100% - 0.125rem);
  left: 0.875rem;
  border-style: solid;
  border-width: 0 0.75rem 0.75rem 0;
  border-color: transparent var(--accent, #66A500) transparent transparent;
  content: "";
}
.section-two .current-menu .image {
  position: relative;
}
.section-two .current-menu .image img {
  display: block;
  width: 100%;
}
.section-two .current-menu .plus {
  position: absolute;
  bottom: 0.25rem;
  right: 0.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  background: #66A500;
}
.section-two .current-menu .plus > svg {
  width: 0.875rem;
  height: 0.875rem;
}
.section-two .past-menu {
  margin-top: 1.5625rem;
  border-radius: 2.25rem;
  background: #F2F1EC;
}
.section-two .past-menu .head {
  font-size: 1rem;
  text-align: center;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  font-weight: bold;
  text-decoration: none;
  padding: 1.75rem 2rem 1.75rem 0.625rem;
  line-height: 1;
  cursor: pointer;
  position: relative;
}
.section-two .past-menu .head::after {
  position: absolute;
  top: 50%;
  right: 1.5rem;
  margin-top: -1rem;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background-color: #66A500;
  background-image: url("data:image/svg+xml,%3Csvg width='32' height='32' viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 16C0 24.8366 7.16344 32 16 32C24.8366 32 32 24.8366 32 16C32 7.16344 24.8366 0 16 0C7.16344 0 0 7.16344 0 16Z' fill='%2366A500'/%3E%3Cpath d='M20.3801 14.7L15.9572 19.123L11.5342 14.7' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-transition: 0.4s -webkit-transform;
  transition: 0.4s -webkit-transform;
  transition: 0.4s transform;
  transition: 0.4s transform, 0.4s -webkit-transform;
  content: "";
}
.section-two .past-menu .head.-open::after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.section-two .past-menu .body {
  padding: 0 1.125rem;
  display: none;
}
.section-two .past-menu .body > .inner {
  border-top: 1px dashed #A8A8A8;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 0.625rem 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.625rem;
  padding: 1.25rem 0 1.875rem;
}
.section-two .past-menu .item {
  border: 1px solid #767676;
  position: relative;
}
.section-two .past-menu .item > .title {
  display: block;
  padding: 0.3125rem;
  font-size: 0.6875rem;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  text-align: center;
  color: #fff;
  background: #767676;
}
.section-two .past-menu .item img {
  display: block;
}
.section-two .past-menu .plus {
  position: absolute;
  bottom: 0.25rem;
  right: 0.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  background: #66A500;
}
.section-two .past-menu .plus > svg {
  width: 0.875rem;
  height: 0.875rem;
}

.section-three {
  overflow-x: hidden;
  padding: 2.0625rem 1.25rem 3.125rem;
  background: url("../img/three-bg-top.webp") no-repeat top center/100% auto, url("../img/three-bg-bottom.webp") no-repeat bottom center/100% auto, #F2F1EC;
}
.section-three .comingsoon {
  text-align: center;
  background: #fff;
  color: #8C8C8C;
  font-size: 1.25rem;
  line-height: 1;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  padding: 1.625rem 0.625rem;
  border-radius: 0.375rem;
  margin-top: 1.75rem;
}
.section-three > .heading {
  max-width: 14.5rem;
  margin: 0 auto 0;
  position: relative;
}
.section-three .num-vote-box {
  position: relative;
  margin: 2.625rem auto 0;
  max-width: 13.375rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-weight: bold;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  z-index: 1;
}
.section-three .num-vote-box::after {
  position: absolute;
  content: "";
  inset: 0;
  background: url("../img/vote-confetti.svg") no-repeat center/100% auto;
  border-radius: 0 0 0.5rem 0.5rem;
  -webkit-transition: all 0.2s ease-out 0.3s;
  transition: all 0.2s ease-out 0.3s;
  z-index: -1;
}
.section-three .num-vote-box.-visible::after {
  inset: -5rem;
}
.section-three .num-vote-box > .heading {
  border-radius: 0.5rem 0.5rem 0 0;
  margin: 0;
  text-align: center;
  color: white;
  font-size: 0.75rem;
  padding: 0.4375rem 0;
  background: -webkit-gradient(linear, left top, left bottom, from(#A58D60), to(#675126));
  background: linear-gradient(to bottom, #A58D60 0%, #675126 100%);
}
.section-three .num-vote-box > .body {
  border: solid 0.25rem #A58D60;
  border-top: none;
  padding: 0.375rem 0 0.25rem;
  border-radius: 0 0 0.5rem 0.5rem;
  background: white;
}
.section-three .num-vote-box > .body .number {
  margin: 0;
  text-align: center;
  padding-left: 0.9375rem;
  font-style: normal;
  font-size: 1.75rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.section-three .num-vote-box > .body .number small {
  font-size: 0.625rem;
  display: inline-block;
  margin-left: 0.75rem;
  padding-bottom: 0.375rem;
}
.section-three .vote-end-top {
  position: relative;
  text-align: center;
  margin-block: 1.875rem 0;
}
.section-three .vote-end-top > img {
  width: 18.75rem;
  z-index: 1;
}
.section-three .vote-end-bottom {
  position: relative;
  text-align: center;
  margin-block: 1.875rem 0;
}
.section-three .vote-end-bottom > img {
  width: 18.75rem;
  z-index: 1;
}
.section-three .ranking-box {
  margin: 3.125rem auto 0;
  background: #F2F1EC;
  border-radius: 0.5rem;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  font-weight: bold;
  text-align: center;
}
.section-three .ranking-box > .title {
  margin: 0;
  font-size: 1.5625rem;
}
.section-three .ranking-box > .title > img {
  height: 1.5625rem;
}
.section-three .ranking-box .text {
  margin: 1rem 0 0;
  font-size: 0.875rem;
  line-height: 1.4285714286;
}
.section-three .ranking-box > ol {
  display: -ms-grid;
  display: grid;
  gap: 0.25rem;
  list-style-type: none;
  margin: 1.125rem 0 0;
  padding: 0;
}
.section-three .ranking-box > ol > li {
  opacity: 0;
  -webkit-transform: translateY(1.25rem);
          transform: translateY(1.25rem);
  -webkit-transition: opacity 0.5s ease, -webkit-transform 0.5s ease;
  transition: opacity 0.5s ease, -webkit-transform 0.5s ease;
  transition: opacity 0.5s ease, transform 0.5s ease;
  transition: opacity 0.5s ease, transform 0.5s ease, -webkit-transform 0.5s ease;
}
.section-three .ranking-box > ol > li > img {
  width: 18.75rem;
  -webkit-filter: drop-shadow(0.1875rem 0.1875rem 0.375rem rgba(0, 0, 0, 0.06));
          filter: drop-shadow(0.1875rem 0.1875rem 0.375rem rgba(0, 0, 0, 0.06));
}
.section-three .ranking-box > ol.-visible > li:nth-child(1) {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-delay: 0.1s;
          transition-delay: 0.1s;
}
.section-three .ranking-box > ol.-visible > li:nth-child(2) {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}
.section-three .ranking-box > ol.-visible > li:nth-child(3) {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}
.section-three .ranking-box > ol.-visible > li:nth-child(4) {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}
.section-three .ranking-box > ol.-visible > li:nth-child(5) {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}
.section-three .vote-contents {
  padding: 3.75rem 0.625rem 0;
  position: relative;
  z-index: 0;
}
.section-three .vote-contents::before {
  position: absolute;
  content: "";
  z-index: -1;
  background: -webkit-gradient(linear, left top, left bottom, from(#F2F1EC), color-stop(9.375rem, transparent), color-stop(transparent), color-stop(98%, rgba(242, 241, 236, 0.7)), to(#F2F1EC)), url("../img/vote-bg.webp") no-repeat center/cover;
  background: linear-gradient(to bottom, #F2F1EC 0%, transparent 9.375rem, transparent calc(100% - 8.75rem), rgba(242, 241, 236, 0.7) 98%, #F2F1EC 100%), url("../img/vote-bg.webp") no-repeat center/cover;
  width: calc(100% + 2.5rem);
  height: 100%;
  left: -1.25rem;
  top: 0;
}
.section-three .vote-contents > *:first-child {
  margin-top: 0 !important;
}
.section-three .vote-heading {
  margin: 1.625rem auto 0;
  height: 2.1875rem;
  position: relative;
  z-index: 2;
}
.section-three .vote-heading img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.section-three .vote-box {
  background: #F2F1EC;
  border: solid 0.125rem #262626;
  border-radius: 0.75rem;
  padding: 1.75rem 1.25rem 1.25rem;
  margin-top: -1.25rem;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  text-align: center;
}
.section-three .vote-box .period {
  margin: 0;
  font-size: 1.125rem;
  font-weight: bold;
  letter-spacing: -0.02em;
  margin-left: -0.75rem;
  margin-right: -0.75rem;
}
.section-three .vote-box .period small {
  font-weight: 400;
  font-size: 0.8125rem;
  display: inline-block;
  margin-right: 0.375rem;
}
.section-three .vote-box .lead2 {
  font-size: 0.8125rem;
  letter-spacing: -0.04em;
  text-align: center;
  margin: 0;
  margin-bottom: 0.3125rem;
  padding-bottom: 0.75rem;
  border-bottom: dashed 1px #9D9D9D;
  line-height: 1.4615384615;
}
.section-three .vote-box .lead {
  font-size: 0.875rem;
  line-height: 1.5;
  margin: 0;
  letter-spacing: -0.02em;
}
.section-three .vote-box .lead > img {
  width: 100%;
  display: block;
}
.section-three .vote-box .lead.-slide {
  padding-bottom: 0.625rem;
  font-weight: bold;
}
.section-three .vote-box .lead > span {
  display: inline-block;
  margin: 0.5rem 0 0.1875rem;
}
.section-three .vote-box .lead > span img {
  display: block;
  width: 100%;
}
.section-three .vote-box .lead small {
  font-weight: 400;
  font-size: 0.875rem;
}
.section-three .vote-box .lead em {
  font-size: 1.0625rem;
  font-style: normal;
}
.section-three .vote-box .lead + .lead {
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: dashed 1px #9D9D9D;
}
.section-three .vote-box .slideImg {
  width: 7.8125rem;
  height: 12.75rem;
  margin-bottom: 0.25rem;
  margin-top: 0.625rem;
  margin-left: auto;
  margin-right: auto;
}
.section-three .vote-btn {
  margin-top: 1.875rem;
}
.section-three .vote-btn a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 4.5rem;
  background: linear-gradient(145deg, #0361B4 0%, #00277E 100%);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: white;
  text-decoration: none;
  padding: 1.5625rem 3.5rem 1.5625rem 2.375rem;
  border-radius: 6.25rem;
  position: relative;
}
.section-three .vote-btn a::before {
  position: absolute;
  content: "";
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 1.5rem;
  width: 2rem;
  height: 2rem;
  background: white;
  border-radius: 6.25rem;
}
.section-three .vote-btn a::after {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 1.5rem;
  width: 2rem;
  height: 2rem;
  -webkit-mask: url("../img/icon-arrow.svg") no-repeat center/auto 0.6875rem;
          mask: url("../img/icon-arrow.svg") no-repeat center/auto 0.6875rem;
  background: #0263B9;
  content: "";
}
.section-three .vote-btn a > img {
  width: 12.5625rem;
  display: block;
  -o-object-fit: contain;
     object-fit: contain;
}
.section-three .vote-slider {
  margin-top: -1.25rem;
  overflow: visible;
  cursor: pointer;
  position: relative;
  --swiper-navigation-size: 2.375rem;
}
.section-three .vote-slider::before {
  z-index: 3;
  position: absolute;
  content: "";
  width: 7.3125rem;
  height: 7.3125rem;
  top: -1.5rem;
  left: -2.125rem;
  background: url("../img/vote-flow-balloon.webp") no-repeat center/contain;
}
.section-three .vote-slider .vote-box {
  margin-top: 0;
}
.section-three .vote-slider .vote-box .lead small {
  font-size: 0.75rem;
}
.section-three .vote-slider .swiper-button-prev, .section-three .vote-slider .swiper-button-next {
  width: var(--swiper-navigation-size);
  border-radius: 50%;
  background: rgba(38, 38, 38, 0.9);
  -webkit-box-shadow: 0 0.1875rem 0.375rem 0 rgba(0, 0, 0, 0.16);
          box-shadow: 0 0.1875rem 0.375rem 0 rgba(0, 0, 0, 0.16);
  background-position: center center;
  background-size: 0.5rem 0.875rem;
  background-repeat: no-repeat;
  margin: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.section-three .vote-slider .swiper-button-prev::after, .section-three .vote-slider .swiper-button-next::after {
  display: none;
}
.section-three .vote-slider .swiper-button-prev {
  background-image: url("data:image/svg+xml,%3Csvg width='8' height='14' viewBox='0 0 8 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.75194 12.091L1.41394 6.752L6.75194 1.414' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");
  left: -1.125rem;
}
.section-three .vote-slider .swiper-button-next {
  background-image: url("data:image/svg+xml,%3Csvg width='9' height='14' viewBox='0 0 9 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.41395 12.091L6.75195 6.752L1.41395 1.414' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");
  right: -1.125rem;
}
.section-three .vote-slider .swiper-button-disabled {
  opacity: 0.6;
}
.section-three .entry-products {
  padding: 1.875rem 0 1.25rem;
}
.section-three .entry-products > .heading {
  margin: 0 auto;
  max-width: 13.0625rem;
}
.section-three .entry-products > .heading img {
  width: 100%;
}
.section-three .entry-products > .finished {
  margin: 1.5rem auto 0;
  max-width: 18.75rem;
}
.section-three .entry-products > .finished img {
  width: 100%;
}
.section-three .entry-products > .lead {
  margin: 1.5rem 0 0 0;
  text-align: center;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  line-height: 1.5;
  letter-spacing: -0.02em;
  font-size: 0.9375rem;
  font-weight: bold;
}
.section-three .entry-slider {
  margin-top: 1.875rem;
  overflow: visible;
  --swiper-navigation-size: 2.375rem;
}
.section-three .entry-slider .swiper-wrapper {
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
}
.section-three .entry-slider .swiper-slide {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: auto;
}
.section-three .entry-slider .swiper-button-prev, .section-three .entry-slider .swiper-button-next {
  width: var(--swiper-navigation-size);
  border-radius: 50%;
  background: rgba(38, 38, 38, 0.9);
  -webkit-box-shadow: 0 0.1875rem 0.375rem 0 rgba(0, 0, 0, 0.16);
          box-shadow: 0 0.1875rem 0.375rem 0 rgba(0, 0, 0, 0.16);
  background-position: center center;
  background-size: 0.5rem 0.875rem;
  background-repeat: no-repeat;
}
.section-three .entry-slider .swiper-button-prev::after, .section-three .entry-slider .swiper-button-next::after {
  display: none;
}
.section-three .entry-slider .swiper-button-prev {
  left: 0;
  background-image: url("data:image/svg+xml,%3Csvg width='8' height='14' viewBox='0 0 8 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.75194 12.091L1.41394 6.752L6.75194 1.414' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");
}
.section-three .entry-slider .swiper-button-next {
  right: 0;
  background-image: url("data:image/svg+xml,%3Csvg width='9' height='14' viewBox='0 0 9 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.41395 12.091L6.75195 6.752L1.41395 1.414' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");
}
.section-three .entry-slider + .entry-slider .swiper-button-prev {
  right: 0;
  left: auto;
  background-image: url("data:image/svg+xml,%3Csvg width='9' height='14' viewBox='0 0 9 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.41395 12.091L6.75195 6.752L1.41395 1.414' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");
}
.section-three .entry-slider + .entry-slider .swiper-button-next {
  left: 0;
  right: auto;
  background-image: url("data:image/svg+xml,%3Csvg width='8' height='14' viewBox='0 0 8 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.75194 12.091L1.41394 6.752L6.75194 1.414' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");
}
.section-three .entry-btn {
  margin-top: 2.625rem;
}
.section-three .entry-btn a {
  display: block;
  margin: 0 auto;
  max-width: 14.625rem;
  background: #262626;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: white;
  text-decoration: none;
  padding: 1.25rem 2rem 1.25rem 2.1875rem;
  border-radius: 6.25rem;
  position: relative;
}
.section-three .entry-btn a::after {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 1.5rem;
  width: 0.375rem;
  height: 0.5625rem;
  -webkit-mask: url("../img/icon-arrow.svg") no-repeat center/contain;
          mask: url("../img/icon-arrow.svg") no-repeat center/contain;
  background: white;
  content: "";
}
.section-three .entry-btn a > img {
  width: 9.375rem;
  display: block;
  -o-object-fit: contain;
     object-fit: contain;
}
.section-three .ranking {
  background: url(../img/ranking-bg.png) no-repeat top 2.125rem center/100% auto;
  margin-left: -1.25rem;
  margin-right: -1.25rem;
  margin-top: 2rem;
  padding: 0 1.25rem;
}
.section-three .ranking-title {
  margin: 0 auto;
  max-width: 13.125rem;
}
.section-three .ranking-title img {
  width: 100%;
}
.section-three .ranking-no1title {
  display: block;
  max-width: 14.375rem;
  padding-right: 0.625rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 1.25rem auto 0;
}
.section-three .ranking-no1title img {
  width: 100%;
}
.section-three .ranking-item {
  background: white;
  width: calc(50% - 0.1875rem);
  -webkit-box-shadow: 0.125rem 0.125rem 0.1875rem rgba(0, 0, 0, 0.2);
          box-shadow: 0.125rem 0.125rem 0.1875rem rgba(0, 0, 0, 0.2);
  border-radius: 0.5rem;
  border: solid 0.125rem #262626;
  padding: 0 0.8125rem 2.25rem;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0;
  z-index: inherit;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.section-three .ranking-item::before {
  z-index: -1;
  border-radius: 0.375rem;
  content: "";
  position: absolute;
  top: -0.1px;
  left: 50%;
  -webkit-transform: translateX(-50%) scaleY(-1);
          transform: translateX(-50%) scaleY(-1);
  width: 100%;
  height: 50%;
}
.section-three .ranking-item > .image {
  width: 6.5625rem;
  aspect-ratio: 1;
  margin-top: -1.375rem;
  margin-inline: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-left: 0.3125rem;
}
.section-three .ranking-item > .copy {
  position: absolute;
  z-index: 3;
  width: 2.21875rem;
  margin: 0;
  left: 0.25rem;
  top: -1.125rem;
  -webkit-transform: rotate(-6deg);
          transform: rotate(-6deg);
  -webkit-transform-origin: top right;
          transform-origin: top right;
}
.section-three .ranking-item > .copy.-sm {
  width: 0.9375rem;
}
.section-three .ranking-item > .copy img {
  width: 100%;
}
.section-three .ranking-item > .rankNum {
  position: absolute;
  z-index: 3;
  margin: 0;
  width: 2.875rem;
  right: 0.1875rem;
  top: 2.125rem;
}
.section-three .ranking-item > .rankNum img {
  width: 100%;
  -webkit-filter: drop-shadow(0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16));
          filter: drop-shadow(0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16));
}
.section-three .ranking-item > .title {
  margin: 0;
  padding-bottom: 0.5625rem;
  border-bottom: dashed 1px #9D9D9D;
  height: 2.375rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.section-three .ranking-item > .title img {
  -o-object-fit: contain;
     object-fit: contain;
  height: 1.65625rem;
}
.section-three .ranking-item > .title.-sm img {
  height: 0.7125rem;
}
.section-three .ranking-item > .lead {
  font-size: 0.6875rem;
  font-weight: 500;
  letter-spacing: -0.02em;
  margin: 0.625rem 0 0.5rem 0;
  text-align: left;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  line-height: 1.4545454545;
}
.section-three .ranking-item > .month {
  margin-top: auto;
  margin-inline: auto;
  margin-bottom: 0;
}
.section-three .ranking-item > .month img {
  height: 1.0625rem;
  -o-object-fit: contain;
     object-fit: contain;
}
.section-three .ranking-item .num-box {
  border: solid 0.125rem #262626;
  border-radius: 0.25rem;
  background: white;
  position: absolute;
  z-index: 3;
  bottom: -1.125rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 7.75rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.section-three .ranking-item .num-box > .heading {
  background: #262626;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  font-weight: bold;
  color: white;
  text-align: center;
  display: block;
  padding: 0.125rem 0 0.25rem;
  font-size: 0.625rem;
  letter-spacing: 0.02em;
}
.section-three .ranking-item .num-box > .number {
  text-align: center;
  margin: 0.1875rem 0 0.1875rem;
  font-size: 0.625rem;
  font-weight: bold;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
}
.section-three .ranking-item .num-box > .number > span {
  display: inline-block;
  font-size: 0.9375rem;
  margin-right: 0.4375rem;
}
.section-three .ranking-item.-no1 {
  width: 100%;
  border-radius: 1.125rem;
  border-width: 0.1875rem;
  margin-top: 1.375rem;
  padding: 0 1.875rem 3.25rem;
}
.section-three .ranking-item.-no1::before {
  border-radius: 0.9375rem;
}
.section-three .ranking-item.-no1 > .image {
  width: 11.8125rem;
  margin-top: -2.875rem;
  padding: 0;
}
.section-three .ranking-item.-no1 > .copy {
  width: 3.2375rem;
  left: 1.25rem;
  top: -1.25rem;
}
.section-three .ranking-item.-no1 > .rankNum {
  right: 1.625rem;
  top: 2.25rem;
  width: 5.9375rem;
}
.section-three .ranking-item.-no1 > .title {
  padding-bottom: 0.8125rem;
  height: 2.125rem;
}
.section-three .ranking-item.-no1 > .title img {
  height: 1.09375rem;
}
.section-three .ranking-item.-no1 > .lead {
  margin-top: 0.875rem;
  margin-bottom: 0.75rem;
  font-size: 0.8125rem;
}
.section-three .ranking-item.-no1 > .month img {
  height: 1.3125rem;
}
.section-three .ranking-item.-no1 .num-box {
  width: 11.4375rem;
  bottom: -1.375rem;
  border-radius: 0.5rem;
}
.section-three .ranking-item.-no1 .num-box > .heading {
  font-size: 0.75rem;
  padding: 0.25rem 0 0.3125rem;
}
.section-three .ranking-item.-no1 .num-box > .number {
  margin: 0.3125rem 0 0.1875rem;
  font-size: 0.8125rem;
}
.section-three .ranking-item.-no1 .num-box > .number > span {
  font-size: 1.4375rem;
}
.section-three .ranking-item.-kakiage1 {
  background: url(../img/products/bg-bottom-kakiage1.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage1::before {
  background: url(../img/products/bg-bottom-kakiage1.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-item.-kakiage2 {
  background: url(../img/products/bg-bottom-kakiage2.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage2::before {
  background: url(../img/products/bg-bottom-kakiage2.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-item.-kakiage3 {
  background: url(../img/products/bg-bottom-kakiage3.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage3::before {
  background: url(../img/products/bg-bottom-kakiage3.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-item.-kakiage4 {
  background: url(../img/products/bg-bottom-kakiage4.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage4::before {
  background: url(../img/products/bg-bottom-kakiage4.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-item.-kakiage5 {
  background: url(../img/products/bg-bottom-kakiage5.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage5::before {
  background: url(../img/products/bg-bottom-kakiage5.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-item.-kakiage6 {
  background: url(../img/products/bg-bottom-kakiage6.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage6::before {
  background: url(../img/products/bg-bottom-kakiage6.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-item.-kakiage7 {
  background: url(../img/products/bg-bottom-kakiage7.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage7::before {
  background: url(../img/products/bg-bottom-kakiage7.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-item.-kakiage8 {
  background: url(../img/products/bg-bottom-kakiage8.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage8::before {
  background: url(../img/products/bg-bottom-kakiage8.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-item.-kakiage9 {
  background: url(../img/products/bg-bottom-kakiage9.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage9::before {
  background: url(../img/products/bg-bottom-kakiage9.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-item.-kakiage10 {
  background: url(../img/products/bg-bottom-kakiage10.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage10::before {
  background: url(../img/products/bg-bottom-kakiage10.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-item.-kakiage11 {
  background: url(../img/products/bg-bottom-kakiage11.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage11::before {
  background: url(../img/products/bg-bottom-kakiage11.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-item.-kakiage12 {
  background: url(../img/products/bg-bottom-kakiage12.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage12::before {
  background: url(../img/products/bg-bottom-kakiage12.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-item.-kakiage13 {
  background: url(../img/products/bg-bottom-kakiage13.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage13::before {
  background: url(../img/products/bg-bottom-kakiage13.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-item.-kakiage14 {
  background: url(../img/products/bg-bottom-kakiage14.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage14::before {
  background: url(../img/products/bg-bottom-kakiage14.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-item.-kakiage15 {
  background: url(../img/products/bg-bottom-kakiage15.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage15::before {
  background: url(../img/products/bg-bottom-kakiage15.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-item.-kakiage16 {
  background: url(../img/products/bg-bottom-kakiage16.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage16::before {
  background: url(../img/products/bg-bottom-kakiage16.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-item.-kakiage17 {
  background: url(../img/products/bg-bottom-kakiage17.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage17::before {
  background: url(../img/products/bg-bottom-kakiage17.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-item.-kakiage18 {
  background: url(../img/products/bg-bottom-kakiage18.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage18::before {
  background: url(../img/products/bg-bottom-kakiage18.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-item.-kakiage19 {
  background: url(../img/products/bg-bottom-kakiage19.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage19::before {
  background: url(../img/products/bg-bottom-kakiage19.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-item.-kakiage20 {
  background: url(../img/products/bg-bottom-kakiage20.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage20::before {
  background: url(../img/products/bg-bottom-kakiage20.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-item.-kakiage21 {
  background: url(../img/products/bg-bottom-kakiage21.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage21::before {
  background: url(../img/products/bg-bottom-kakiage21.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-item.-kakiage22 {
  background: url(../img/products/bg-bottom-kakiage22.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage22::before {
  background: url(../img/products/bg-bottom-kakiage22.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-item.-kakiage23 {
  background: url(../img/products/bg-bottom-kakiage23.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage23::before {
  background: url(../img/products/bg-bottom-kakiage23.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-item.-kakiage24 {
  background: url(../img/products/bg-bottom-kakiage24.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage24::before {
  background: url(../img/products/bg-bottom-kakiage24.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-item.-kakiage25 {
  background: url(../img/products/bg-bottom-kakiage25.webp) no-repeat bottom -1px center/100% auto, white;
}
.section-three .ranking-item.-kakiage25::before {
  background: url(../img/products/bg-bottom-kakiage25.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .ranking-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 2.75rem 0.375rem;
  margin-top: 3.25rem;
}
.section-three .ranking-lead {
  max-width: 17.125rem;
  margin: 3.25rem auto 0;
}
.section-three .ranking-lead img {
  width: 100%;
}
.section-three .kongetsu {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(96%, transparent), to(#F2F1EC)), url(../img/kongetsu-bg.png) no-repeat top center/100% auto;
  background: linear-gradient(180deg, transparent 96%, #F2F1EC 100%), url(../img/kongetsu-bg.png) no-repeat top center/100% auto;
  margin-left: -1.25rem;
  margin-right: -1.25rem;
  margin-top: 1.875rem;
  padding: 3.5625rem 2.25rem 2.625rem;
}
.section-three .kongetsu-title {
  margin: 0 auto;
  max-width: 14.75rem;
}
.section-three .kongetsu-title img {
  width: 100%;
}
.section-three .kongetsu-heading {
  margin: 1.25rem auto 0;
  max-width: 11.4375rem;
  position: relative;
  padding-bottom: 0.9375rem;
}
.section-three .kongetsu-heading::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 14.875rem;
  height: 1.875rem;
  background: url(../img/kongetsu-heading-deco.svg) no-repeat center bottom/contain;
}
.section-three .kongetsu-heading img {
  width: 100%;
}
.section-three .kongetsu-item {
  background: white;
  width: 16.25rem;
  margin: 1.875rem auto 0;
  -webkit-box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.4);
          box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.4);
  border-radius: 0.75rem;
  border: solid 0.125rem #262626;
  padding: 0 1.5rem 1.25rem;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: inherit;
}
.section-three .kongetsu-item::before {
  z-index: -1;
  border-radius: 0.625rem;
  content: "";
  position: absolute;
  top: -0.1px;
  left: 50%;
  -webkit-transform: translateX(-50%) scaleY(-1);
          transform: translateX(-50%) scaleY(-1);
  width: 100%;
  height: 50%;
}
.section-three .kongetsu-item > .image {
  width: 8.4375rem;
  aspect-ratio: 1;
  margin-top: -2rem;
  margin-inline: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.section-three .kongetsu-item > .copy {
  position: absolute;
  z-index: 3;
  width: 3.125rem;
  margin: 0;
  left: 1rem;
  top: -1.375rem;
  -webkit-transform: rotate(-6deg);
          transform: rotate(-6deg);
  -webkit-transform-origin: top right;
          transform-origin: top right;
}
.section-three .kongetsu-item > .copy.-sm {
  width: 1.4375rem;
  left: 1.875rem;
}
.section-three .kongetsu-item > .copy img {
  width: 100%;
}
.section-three .kongetsu-item > .rankNum {
  position: absolute;
  z-index: 3;
  margin: 0;
  width: 2.875rem;
  right: 0.1875rem;
  top: 2.125rem;
}
.section-three .kongetsu-item > .rankNum img {
  width: 100%;
  -webkit-filter: drop-shadow(0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16));
          filter: drop-shadow(0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16));
}
.section-three .kongetsu-item > .title {
  margin: 0.75rem 0 0 0;
  padding: 0.8125rem 0;
  border-top: dashed 1px #9D9D9D;
  border-bottom: dashed 1px #9D9D9D;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.section-three .kongetsu-item > .title img {
  -o-object-fit: contain;
     object-fit: contain;
  height: 2.125rem;
}
.section-three .kongetsu-item > .title.-sm img {
  height: 0.9125rem;
}
.section-three .kongetsu-item > .month {
  width: 4.9375rem;
  margin: 0;
  position: absolute;
  right: -1.375rem;
  top: -1.3125rem;
  z-index: 2;
}
.section-three .kongetsu-item > .month img {
  width: 100%;
  -webkit-filter: drop-shadow(0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16));
          filter: drop-shadow(0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16));
}
.section-three .kongetsu-item > .lead {
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: -0.02em;
  margin: 0.875rem 0 0 0;
  text-align: left;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  line-height: 1.5714285714;
}
.section-three .kongetsu-item.-kakiage1::before {
  background: url(../img/products/bg-bottom-kakiage1.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-item.-kakiage2::before {
  background: url(../img/products/bg-bottom-kakiage2.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-item.-kakiage3::before {
  background: url(../img/products/bg-bottom-kakiage3.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-item.-kakiage4::before {
  background: url(../img/products/bg-bottom-kakiage4.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-item.-kakiage5::before {
  background: url(../img/products/bg-bottom-kakiage5.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-item.-kakiage6::before {
  background: url(../img/products/bg-bottom-kakiage6.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-item.-kakiage7::before {
  background: url(../img/products/bg-bottom-kakiage7.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-item.-kakiage8::before {
  background: url(../img/products/bg-bottom-kakiage8.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-item.-kakiage9::before {
  background: url(../img/products/bg-bottom-kakiage9.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-item.-kakiage10::before {
  background: url(../img/products/bg-bottom-kakiage10.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-item.-kakiage11::before {
  background: url(../img/products/bg-bottom-kakiage11.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-item.-kakiage12::before {
  background: url(../img/products/bg-bottom-kakiage12.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-item.-kakiage13::before {
  background: url(../img/products/bg-bottom-kakiage13.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-item.-kakiage14::before {
  background: url(../img/products/bg-bottom-kakiage14.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-item.-kakiage15::before {
  background: url(../img/products/bg-bottom-kakiage15.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-item.-kakiage16::before {
  background: url(../img/products/bg-bottom-kakiage16.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-item.-kakiage17::before {
  background: url(../img/products/bg-bottom-kakiage17.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-item.-kakiage18::before {
  background: url(../img/products/bg-bottom-kakiage18.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-item.-kakiage19::before {
  background: url(../img/products/bg-bottom-kakiage19.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-item.-kakiage20::before {
  background: url(../img/products/bg-bottom-kakiage20.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-item.-kakiage21::before {
  background: url(../img/products/bg-bottom-kakiage21.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-item.-kakiage22::before {
  background: url(../img/products/bg-bottom-kakiage22.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-item.-kakiage23::before {
  background: url(../img/products/bg-bottom-kakiage23.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-item.-kakiage24::before {
  background: url(../img/products/bg-bottom-kakiage24.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-item.-kakiage25::before {
  background: url(../img/products/bg-bottom-kakiage25.webp) no-repeat bottom -1px center/100% auto;
}
.section-three .kongetsu-notes {
  margin: 2em -0.625rem 0 0;
  padding: 0;
  list-style: none;
}
.section-three .kongetsu-notes > li {
  padding-left: 1em;
  text-indent: -1em;
  font-size: 0.6875rem;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  font-weight: 500;
  line-height: 1.6;
}
.section-three .kongetsu-notes > li + li {
  margin-top: 0.5em;
}
.section-three .kongetsu-kikan {
  margin-top: 1.5rem;
  border-top: dashed 1px #9D9D9D;
  border-bottom: dashed 1px #9D9D9D;
  padding: 0.75rem 0 0.75rem 0.3125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.375rem;
}
.section-three .kongetsu-kikan > .heading {
  width: 4rem;
  margin: 0;
}
.section-three .kongetsu-kikan > .heading img {
  width: 100%;
}
.section-three .kongetsu-kikan > .text {
  font-size: 1.0625rem;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  margin: 0;
  font-weight: bold;
  letter-spacing: 0.02em;
}

.section-products {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 3rem 1.25rem 3.5rem;
  background: url("../img/three-bg-top2.webp") no-repeat top -20px center/100% auto, url("../img/three-bg-bottom.webp") no-repeat bottom -20px center/100% auto, white;
}
@media (max-width: 767px) {
  .section-products {
    margin-top: 3.375rem;
  }
}
.section-products > .heading {
  margin: 0 auto;
  max-width: 13rem;
}
.section-products > .heading img {
  width: 100%;
}
.section-products > .finished {
  margin: 1.5rem auto 0;
  max-width: 18.75rem;
}
.section-products > .finished img {
  width: 100%;
}

.product-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1.25rem 0.375rem;
  margin: 2.25rem 0 0 0;
  padding: 0;
  list-style: none;
}
.product-list > li {
  width: calc(50% - 0.1875rem);
}

.product-item {
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 9.8125rem;
  max-width: 100%;
  border: solid 0.125rem #262626;
  border-radius: 0.5rem;
  -webkit-box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.4);
          box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.4);
  padding: 0 0 0.875rem 0;
  text-align: center;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  letter-spacing: -0.02em;
  color: inherit;
  text-decoration: none;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
  background: url("../img/product-bg.webp") no-repeat bottom -1px center/100% auto, white;
  position: relative;
}
.product-item#kakiage1 {
  background: url("../img/products/bg-bottom-kakiage1.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item#kakiage2 {
  background: url("../img/products/bg-bottom-kakiage2.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item#kakiage3 {
  background: url("../img/products/bg-bottom-kakiage3.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item#kakiage4 {
  background: url("../img/products/bg-bottom-kakiage4.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item#kakiage5 {
  background: url("../img/products/bg-bottom-kakiage5.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item#kakiage6 {
  background: url("../img/products/bg-bottom-kakiage6.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item#kakiage7 {
  background: url("../img/products/bg-bottom-kakiage7.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item#kakiage8 {
  background: url("../img/products/bg-bottom-kakiage8.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item#kakiage9 {
  background: url("../img/products/bg-bottom-kakiage9.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item#kakiage10 {
  background: url("../img/products/bg-bottom-kakiage10.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item#kakiage11 {
  background: url("../img/products/bg-bottom-kakiage11.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item#kakiage12 {
  background: url("../img/products/bg-bottom-kakiage12.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item#kakiage13 {
  background: url("../img/products/bg-bottom-kakiage13.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item#kakiage14 {
  background: url("../img/products/bg-bottom-kakiage14.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item#kakiage15 {
  background: url("../img/products/bg-bottom-kakiage15.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item#kakiage16 {
  background: url("../img/products/bg-bottom-kakiage16.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item#kakiage17 {
  background: url("../img/products/bg-bottom-kakiage17.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item#kakiage18 {
  background: url("../img/products/bg-bottom-kakiage18.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item#kakiage19 {
  background: url("../img/products/bg-bottom-kakiage19.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item#kakiage20 {
  background: url("../img/products/bg-bottom-kakiage20.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item#kakiage21 {
  background: url("../img/products/bg-bottom-kakiage21.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item#kakiage22 {
  background: url("../img/products/bg-bottom-kakiage22.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item#kakiage23 {
  background: url("../img/products/bg-bottom-kakiage23.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item#kakiage24 {
  background: url("../img/products/bg-bottom-kakiage24.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item#kakiage25 {
  background: url("../img/products/bg-bottom-kakiage25.webp") no-repeat bottom -1px center/100% auto, white;
}
.product-item .bgImg {
  aspect-ratio: 157/104;
  border-radius: 0.375rem 0.375rem 0 0;
  overflow: hidden;
}
.product-item .bgImg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.product-item .image {
  position: absolute;
  width: 5.875rem;
  aspect-ratio: 1;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 2;
  top: 2.5rem;
}
.product-item .copy {
  position: absolute;
  z-index: 3;
  top: -0.5rem;
  left: 0.5rem;
  width: 2.21875rem;
  margin: 0;
  -webkit-transform: rotate(-6deg);
          transform: rotate(-6deg);
  -webkit-transform-origin: top left;
          transform-origin: top left;
}
.product-item .copy.-sm {
  width: 1rem;
}
.product-item .copy.-lg {
  width: 3.375rem;
}
.product-item .copy img {
  width: 100%;
}
.product-item .title {
  margin: 0;
  font-size: 0.8125rem;
  text-align: center;
  margin-top: 2rem;
  margin-bottom: 0.625rem;
  min-height: 1.625rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.product-item .title > img {
  height: 1.625rem;
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.product-item .title.-sm > img {
  height: 0.75rem;
}
.product-item .more {
  display: inline-block;
  padding-right: 0.8125rem;
  font-size: 0.625rem;
  margin-top: auto;
  position: relative;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
}
.product-item .more::after {
  position: absolute;
  content: "";
  width: 0.6875rem;
  height: 0.6875rem;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background: url("../img/icon-arrow-more.svg") no-repeat center/contain;
}

.product-totop {
  margin-top: 3.375rem;
}
.product-totop > .btn {
  display: block;
  margin: 0 auto;
  max-width: 14.625rem;
  background: #262626;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: white;
  text-decoration: none;
  padding: 1.25rem 1.875rem;
  border-radius: 6.25rem;
  position: relative;
  text-align: center;
}
.product-totop > .btn::after {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(180deg);
          transform: translateY(-50%) rotate(180deg);
  left: 1.5rem;
  width: 0.375rem;
  height: 0.5625rem;
  -webkit-mask: url(../img/icon-arrow.svg) no-repeat center/contain;
  mask: url(../img/icon-arrow.svg) no-repeat center/contain;
  background: white;
  content: "";
}
.product-totop > .btn img {
  display: inline-block;
  width: 5.26875rem;
}

.section-four {
  background: #fff;
  background-image: url(/synced-assets/campaign_anniversary2025/img/nikoniko/bg-image-02.webp);
  background-size: 100% auto;
  background-position: center -70px;
  background-repeat: repeat-y;
  padding: 2.1875rem 1.25rem 2.8125rem;
}
.section-four > .index {
  margin-bottom: 1.625rem;
}
.section-four > .heading {
  margin: 0;
  text-align: center;
}
.section-four > .heading > img {
  width: 18.125rem;
}
.section-four > .title.-interview {
  display: block;
  margin: 4.0625rem auto 1.875rem;
  width: 11.75rem;
}
.section-four > .title.-interview > img {
  max-width: 11.75rem;
  width: 100%;
}

.interview:not(.-other) {
  background: #FFA11E url(/synced-assets/campaign_anniversary2025/img/nikoniko/bg-dot.webp);
  border-radius: 0.75rem;
  padding: 2.8125rem 2.1875rem 2.1875rem;
}
.interview:not(.-other).-nikoniko02 {
  margin-top: 1.25rem;
  background: #0263B9 url(/synced-assets/campaign_anniversary2025/img/nikoniko/bg-dot.webp);
  color: #fff;
}
.interview:not(.-other).-nikoniko08 {
  margin-top: 1.25rem;
  background: #629F00 url(/synced-assets/campaign_anniversary2025/img/nikoniko/bg-dot.webp);
  color: #fff;
}
.interview.-other {
  display: block;
  margin-top: 3.75rem;
  text-decoration: none;
  color: inherit;
}
.interview__decorations {
  position: relative;
}
.interview:not(.-other) .interview__decorations::before {
  content: "";
  position: absolute;
  inset: -1.25rem -1.25rem -0.625rem -1.5625rem;
  background-image: url("/synced-assets/campaign_anniversary2025/img/nikoniko/deco-top-01.svg"), url("/synced-assets/campaign_anniversary2025/img/nikoniko/deco-top-02.svg"), url("/synced-assets/campaign_anniversary2025/img/nikoniko/deco-top-03.svg"), url("/synced-assets/campaign_anniversary2025/img/nikoniko/deco-top-04.svg");
  background-repeat: no-repeat;
  background-position: 90% 0%, 0% 64%, 4% 88%, 100% 100%;
  background-size: 3rem auto, 3.625rem auto, 4.375rem auto, 3.75rem auto;
  pointer-events: none;
  z-index: 1;
}
.interview.-other .interview__decorations {
  margin: auto;
  width: 15rem;
}
.interview:not(.-other) .interview__image {
  display: block;
  height: 16.25rem;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0.9375rem;
  border: 0.0625rem solid #262626;
}
.interview__message, .interview__deco {
  position: absolute;
  content: "";
}
.interview__message:not(.-other) {
  top: -0.9375rem;
  left: 0.9375rem;
  width: 3.5rem;
}
.interview__message.-other {
  top: 0rem;
  left: 0.9375rem;
  width: 3.5rem;
}
.interview__message.-other.-nikoniko04 {
  left: 0rem;
  width: 5.9375rem;
}
.interview__message.-other.-nikonikoIndex04 {
  left: -0.9375rem;
  width: 5.9375rem;
}
.interview__profile {
  text-align: center;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  font-weight: bold;
}
.interview__profile p:nth-of-type(1) {
  font-size: 0.875rem;
}
.interview__profile p:nth-of-type(2) {
  font-size: 1.375rem;
  margin-top: 0.625rem;
}
.interview__btn a {
  display: block;
  margin: 0 auto;
  max-width: 14.625rem;
  background: #F2F1EC;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  font-size: 0.8125rem;
  text-align: center;
  color: #262626;
  text-decoration: none;
  text-align: left;
  padding: 1.125rem 2rem 1.125rem 2.6875rem;
  border-radius: 6.25rem;
  border: 1px solid #262626;
  position: relative;
}
.interview__btn a::after {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 1.5rem;
  width: 0.375rem;
  height: 0.5625rem;
  -webkit-mask: url("../img/icon-arrow.svg") no-repeat center/contain;
          mask: url("../img/icon-arrow.svg") no-repeat center/contain;
  background: #262626;
  content: "";
}
.interview__btn a > img {
  width: 9.375rem;
  display: block;
  -o-object-fit: contain;
     object-fit: contain;
}
.interview__btn.-list {
  margin-top: 3.125rem;
}
.interview__btn.-list a {
  background: #FFA11E;
}
.interview__btn.-list-back a {
  color: #fff;
  background: #262626;
  text-align: center;
}
.interview__btn.-list-back a::after {
  right: unset;
  left: 1.5rem;
  -webkit-mask: url("../img/icon-arrow.svg") no-repeat center/contain;
          mask: url("../img/icon-arrow.svg") no-repeat center/contain;
  background: #fff;
  -webkit-transform: translateY(-50%) scaleX(-1);
          transform: translateY(-50%) scaleX(-1);
}
.interview__btn.-top-back {
  margin-top: 2.5rem;
}
.interview__btnB a {
  display: block;
  margin: 0 auto;
  max-width: 14.625rem;
  background: #FFA11E;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  font-size: 0.8125rem;
  text-align: center;
  color: #262626;
  text-decoration: none;
  text-align: left;
  padding: 1.125rem 2rem 1.125rem 2.6875rem;
  border-radius: 6.25rem;
  border: 1px solid #262626;
  position: relative;
}
.interview__btnB a::after {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 1.5rem;
  width: 0.375rem;
  height: 0.5625rem;
  -webkit-mask: url("../img/icon-arrow.svg") no-repeat center/contain;
          mask: url("../img/icon-arrow.svg") no-repeat center/contain;
  background: #262626;
  content: "";
}
.interview__btnC a {
  display: block;
  margin: 0 auto;
  max-width: 14.625rem;
  background: #262626;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  font-size: 0.8125rem;
  text-align: center;
  color: #fff;
  text-decoration: none;
  padding: 1.125rem 2rem 1.125rem 2.6875rem;
  border-radius: 6.25rem;
  position: relative;
}
.interview__btnC a::before {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(180deg);
          transform: translateY(-50%) rotate(180deg);
  left: 1.5rem;
  width: 0.375rem;
  height: 0.5625rem;
  -webkit-mask: url("../img/icon-arrow.svg") no-repeat center/contain;
          mask: url("../img/icon-arrow.svg") no-repeat center/contain;
  background: #fff;
  content: "";
}

.section-sp-interview {
  background: url(/synced-assets/campaign_anniversary2025/img/nikoniko/bg-image-04.webp) center/cover, #fff;
  background-size: 100% auto;
  background-position: center -70px;
  padding: 2.1875rem 1.25rem 2.8125rem;
}
.section-sp-interview > img {
  width: 11.75rem;
  display: block;
  margin: 0 auto;
}
.section-sp-interview .sp-interview {
  display: block;
  margin-top: 1.875rem;
}
.section-sp-interview .sp-interview:first-of-type, .section-sp-interview .sp-interview:nth-of-type(2) {
  margin-top: 2.5rem;
}
.section-sp-interview .sp-interview__grid {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1.25rem 1fr;
  grid-template-columns: 1fr 1fr;
  -webkit-column-gap: 1.25rem;
     -moz-column-gap: 1.25rem;
          column-gap: 1.25rem;
}
.section-sp-interview .sp-interview__decorations {
  position: relative;
}
.section-sp-interview .sp-interview__image {
  display: block;
  height: 11.875rem;
}
.section-sp-interview .sp-interview__message {
  position: absolute;
  content: "";
}
.section-sp-interview .sp-interview__message {
  top: -0.9375rem;
  left: 0.625rem;
  width: 2.5rem;
}
.section-sp-interview .sp-interview__profile {
  text-align: center;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  font-weight: bold;
}
.section-sp-interview .sp-interview__profile p:nth-of-type(1) {
  font-size: 0.75rem;
  margin: 0.625rem 0 0;
}
.section-sp-interview .sp-interview__profile p:nth-of-type(2) {
  font-size: 0.9375rem;
  margin: 0.3125rem 0 0;
}

.sp-interview-slider {
  overflow: visible;
  margin-inline: -45%;
}
.sp-interview-slider .swiper-wrapper {
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
}
.sp-interview-slider.-first {
  margin-top: 3.75rem;
}
.sp-interview-slider.-second {
  margin-top: 1.875rem;
}
.sp-interview-slider .swiper-slide {
  width: 11.8125rem;
}
.sp-interview-slider .sp-interview {
  display: block;
  margin-top: 1.875rem;
}
.sp-interview-slider .sp-interview__decorations {
  position: relative;
}
.sp-interview-slider .sp-interview__image {
  display: block;
  width: 100%;
}
.sp-interview-slider .sp-interview__message {
  position: absolute;
  content: "";
}
.sp-interview-slider .sp-interview__message {
  top: -0.3125rem;
  left: 0.9375rem;
  width: 2.6875rem;
}
.sp-interview-slider .sp-interview__profile {
  text-align: center;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  font-weight: bold;
}
.sp-interview-slider .sp-interview__profile p:nth-of-type(1) {
  font-size: 0.8125rem;
  margin: 0.625rem 0 0;
}
.sp-interview-slider .sp-interview__profile p:nth-of-type(2) {
  font-size: 1.25rem;
  margin: 0.3125rem 0 0;
}
.sp-interview-slider .swiper-button-prev::after {
  background: url("/synced-assets/campaign_anniversary2025/img/nikoniko/icon-arrow-circle-left.svg") no-repeat center/contain;
}
.sp-interview-slider .swiper-button-next::after {
  background: url("/synced-assets/campaign_anniversary2025/img/nikoniko/icon-arrow-circle-right.svg") no-repeat center/contain;
}
.sp-interview-slider .swiper-button-prev {
  left: var(--swiper-navigation-sides-offset, 26%);
}
.sp-interview-slider .swiper-button-next {
  right: var(--swiper-navigation-sides-offset, 26%);
}
.sp-interview-slider .swiper-button-prev,
.sp-interview-slider .swiper-button-next {
  width: 2.375rem;
  height: 2.375rem;
}
.sp-interview-slider .swiper-button-prev::after,
.sp-interview-slider .swiper-button-next::after {
  top: -0.625rem;
  left: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  content: "";
}
.sp-interview-slider .js-sp-interview-slider2-prev {
  right: var(--swiper-navigation-sides-offset, 26%) !important;
  left: unset;
}
.sp-interview-slider .js-sp-interview-slider2-prev::after {
  -webkit-transform: scaleX(-1);
          transform: scaleX(-1);
}
.sp-interview-slider .js-sp-interview-slider2-next {
  left: var(--swiper-navigation-sides-offset, 26%) !important;
  right: unset;
}
.sp-interview-slider .js-sp-interview-slider2-next::after {
  -webkit-transform: scaleX(-1);
          transform: scaleX(-1);
}

.sp-interview__new {
  position: absolute;
  content: "";
  bottom: 0rem;
  right: 0rem;
  width: 3.0625rem;
  height: 3.0625rem;
}

.section-sp-interview-footer {
  padding: 3.125rem 0 3.125rem;
}
.section-sp-interview-footer > img {
  width: 11.75rem;
  display: block;
  margin: 4.6875rem auto 0;
}
.section-sp-interview-footer .sp-interview-slider {
  margin-top: 2.5rem;
}

.section-main-talk {
  --bgc: #FFA11E;
  background: url(/synced-assets/campaign_anniversary2025/img/nikoniko/bg-image.webp) center/cover, var(--bgc);
  background-size: 100% auto;
  background-position: center -70px;
  background-repeat: repeat-y;
  padding: 2.1875rem 1.25rem 2.8125rem;
  text-align: justify;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
.section-main-talk.-nikoniko02 {
  --bgc: #0263B9;
  background: url(/synced-assets/campaign_anniversary2025/img/nikoniko/bg-image-03.webp) center/cover, var(--bgc);
  background-size: 100% auto;
  background-position: center -70px;
  background-repeat: repeat-y;
}
.section-main-talk.-nikoniko02 > *:not(.profile-box) {
  color: #fff;
}
.section-main-talk.-nikoniko08 {
  --bgc: #629F00;
  background: url(/synced-assets/campaign_anniversary2025/img/nikoniko/bg-image-03.webp) center/cover, var(--bgc);
  background-size: 100% auto;
  background-position: center -70px;
  background-repeat: repeat-y;
}
.section-main-talk.-nikoniko08 > *:not(.profile-box) {
  color: #fff;
}
.section-main-talk.-other {
  background: url(/synced-assets/campaign_anniversary2025/img/nikoniko/bg-image-02.webp) center/cover, #F2F1EC;
  background-size: 100% auto;
  background-position: center -70px;
  background-repeat: repeat-y;
}
.section-main-talk .interview__decorations {
  position: relative;
}
.section-main-talk .interview__decorations.-other {
  text-align: right;
}
.section-main-talk .interview__decorations:not(.-other)::before {
  content: "";
  position: absolute;
  inset: -1.25rem -0.625rem -0.9375rem -1.5625rem;
  background-image: url("/synced-assets/campaign_anniversary2025/img/nikoniko/deco-top-01.svg"), url("/synced-assets/campaign_anniversary2025/img/nikoniko/deco-top-02.svg"), url("/synced-assets/campaign_anniversary2025/img/nikoniko/deco-top-03.svg"), url("/synced-assets/campaign_anniversary2025/img/nikoniko/deco-top-04.svg");
  background-repeat: no-repeat;
  background-position: 95% 0%, 0% 73%, 10% 100%, 100% 100%;
  background-size: 3rem auto, 3.625rem auto, 5rem auto, 4.375rem auto;
  pointer-events: none;
  z-index: 1;
}
.section-main-talk .interview__image:not(.-other) {
  display: block;
  height: 13.75rem;
  border-radius: 0.5rem;
  border: 0.0625rem solid #262626;
}
.section-main-talk .interview__image:not(.-other).-nikoniko02 {
  aspect-ratio: 8/5;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 0 -22px;
     object-position: 0 -22px;
}
.section-main-talk .interview__image:not(.-other).-nikoniko08 {
  aspect-ratio: 8/5;
  -o-object-fit: cover;
     object-fit: cover;
}
.section-main-talk .interview__image.-other {
  margin-inline: -1.25rem;
  width: 18.75rem;
  height: 16.25rem;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: left;
     object-position: left;
}
.section-main-talk .interview__message {
  content: "";
  position: absolute;
  top: -0.9375rem;
  left: 0.9375rem;
  width: 3.5rem;
}
.section-main-talk .interview__profile {
  text-align: center;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
}
.section-main-talk .interview__profile p:nth-of-type(1) {
  font-size: 0.875rem;
}
.section-main-talk .interview__profile p:nth-of-type(2) {
  font-size: 1.375rem;
  margin-top: 0.625rem;
}
.section-main-talk .name-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 1.25rem;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.section-main-talk .name-box.-other {
  margin-top: 0;
}
.section-main-talk .name-box__left {
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  font-weight: bold;
}
.section-main-talk .name-box__left p:nth-of-type(1) {
  font-size: 0.875rem;
  margin: 0;
}
.section-main-talk .name-box__left p:nth-of-type(2) {
  font-size: 1.25rem;
  margin: 0.625rem auto 0;
}
.section-main-talk .name-box__right p {
  font-size: 0.625rem;
  margin: 0;
}
.section-main-talk .border-dot {
  display: inline-block;
  border: 1px dashed #505050;
  width: 100%;
  margin-top: 1.125rem;
}
.section-main-talk .border-dot.-nikoniko02 {
  border-color: #fff;
}
.section-main-talk .border-dot.-nikoniko08 {
  border-color: #D1D1D1;
}
.section-main-talk .text-box {
  margin-top: 0.875rem;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  line-height: 1.8461538462;
}
.section-main-talk .text-box p {
  font-size: 0.8125rem;
  margin-block: 0.625rem 0;
}
.section-main-talk .text-box p:first-of-type {
  margin-bottom: 0.625rem;
  font-weight: bold;
}
.section-main-talk .text-box img {
  display: block;
  margin: 0.9375rem auto;
}
.section-main-talk .text-box img.img-detail02-03, .section-main-talk .text-box img.-other {
  width: 15.625rem;
}
.section-main-talk .text-box h2 {
  margin-block: 1.875rem 0;
  font-size: 1rem;
  position: relative;
  padding-left: 0.9375rem;
  line-height: 1.375;
}
.section-main-talk .text-box h2::before {
  content: "";
  position: absolute;
  width: 0.375rem;
  inset: 0;
  background: #FFD800;
}
.section-main-talk .text-box h3 {
  margin-block: 1.25rem 0;
  font-size: 0.75rem;
  font-weight: bold;
}
.section-main-talk .text-box h3::before {
  content: "―";
}
.section-main-talk .text-box.-other h2::before {
  background: #FFA11E;
}
.section-main-talk .profile-box {
  margin-top: 3rem;
  padding: 0.9375rem;
  background: #fff;
  border-radius: 0.375rem;
  -webkit-box-shadow: 1px 1px 6px 1px rgba(0, 0, 0, 0.1);
          box-shadow: 1px 1px 6px 1px rgba(0, 0, 0, 0.1);
}
.section-main-talk .profile-box > img {
  width: 4.25rem;
  height: auto;
}
.section-main-talk .profile-box h2 {
  font-weight: bold;
  font-size: 1.0625rem;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  margin: 0.9375rem auto 0;
}
.section-main-talk .profile-box h2 > span {
  font-size: 0.5625rem;
  padding-left: 0.5625rem;
}
.section-main-talk .profile-box p {
  font-size: 0.6875rem;
  margin: 0.625rem auto 0;
  line-height: 1.8461538462;
}
.section-main-talk__btn a {
  display: block;
  margin: 0 auto;
  max-width: 14.625rem;
  background: #F2F1EC;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  font-size: 0.8125rem;
  text-align: center;
  color: #262626;
  text-decoration: none;
  text-align: left;
  padding: 1.25rem 2rem 1.25rem 2.6875rem;
  border-radius: 6.25rem;
  position: relative;
}
.section-main-talk__btn a::after {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 1.5rem;
  width: 0.375rem;
  height: 0.5625rem;
  -webkit-mask: url("../img/icon-arrow.svg") no-repeat center/contain;
          mask: url("../img/icon-arrow.svg") no-repeat center/contain;
  background: #262626;
  content: "";
}
.section-main-talk__btn a > img {
  width: 9.375rem;
  display: block;
  -o-object-fit: contain;
     object-fit: contain;
}

.section-interview02 {
  overflow-x: hidden;
  padding: 2.0625rem 1.25rem 3.125rem;
  background: #fff;
}
.section-interview02 .comingsoon {
  text-align: center;
  background: #fff;
  color: #8C8C8C;
  font-size: 1.25rem;
  line-height: 1;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  padding: 1.625rem 0.625rem;
  border-radius: 0.375rem;
  margin-top: 1.75rem;
}
.section-interview02 > .heading {
  max-width: 14.5rem;
  margin: 0 auto 0;
  position: relative;
}
.section-interview02 .num-vote-box {
  position: relative;
  margin: 2.625rem auto 0;
  max-width: 13.375rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-weight: bold;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  z-index: 1;
}
.section-interview02 .num-vote-box::after {
  position: absolute;
  content: "";
  inset: 0;
  background: url("../img/vote-confetti.svg") no-repeat center/100% auto;
  border-radius: 0 0 0.5rem 0.5rem;
  -webkit-transition: all 0.2s ease-out 0.3s;
  transition: all 0.2s ease-out 0.3s;
  z-index: -1;
}
.section-interview02 .num-vote-box.-visible::after {
  inset: -5rem;
}
.section-interview02 .num-vote-box > .heading {
  border-radius: 0.5rem 0.5rem 0 0;
  margin: 0;
  text-align: center;
  color: white;
  font-size: 0.75rem;
  padding: 0.4375rem 0;
  background: -webkit-gradient(linear, left top, left bottom, from(#A58D60), to(#675126));
  background: linear-gradient(to bottom, #A58D60 0%, #675126 100%);
}
.section-interview02 .num-vote-box > .body {
  border: solid 0.25rem #A58D60;
  border-top: none;
  padding: 0.375rem 0 0.25rem;
  border-radius: 0 0 0.5rem 0.5rem;
  background: white;
}
.section-interview02 .num-vote-box > .body .number {
  margin: 0;
  text-align: center;
  padding-left: 0.9375rem;
  font-style: normal;
  font-size: 1.75rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.section-interview02 .num-vote-box > .body .number small {
  font-size: 0.625rem;
  display: inline-block;
  margin-left: 0.75rem;
  padding-bottom: 0.375rem;
}
.section-interview02 .vote-end-top {
  position: relative;
  text-align: center;
  margin-block: 1.875rem 0;
}
.section-interview02 .vote-end-top > img {
  width: 18.75rem;
  z-index: 1;
}
.section-interview02 .vote-end-bottom {
  position: relative;
  text-align: center;
  margin-block: 1.875rem 0;
}
.section-interview02 .vote-end-bottom > img {
  width: 18.75rem;
  z-index: 1;
}
.section-interview02 .ranking-box {
  margin: 3.125rem auto 0;
  background: #F2F1EC;
  border-radius: 0.5rem;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  font-weight: bold;
  text-align: center;
}
.section-interview02 .ranking-box > .title {
  margin: 0;
  font-size: 1.5625rem;
}
.section-interview02 .ranking-box > .title > img {
  height: 1.5625rem;
}
.section-interview02 .ranking-box .text {
  margin: 1rem 0 0;
  font-size: 0.875rem;
  line-height: 1.4285714286;
}
.section-interview02 .ranking-box > ol {
  display: -ms-grid;
  display: grid;
  gap: 0.25rem;
  list-style-type: none;
  margin: 1.125rem 0 0;
  padding: 0;
}
.section-interview02 .ranking-box > ol > li {
  opacity: 0;
  -webkit-transform: translateY(1.25rem);
          transform: translateY(1.25rem);
  -webkit-transition: opacity 0.5s ease, -webkit-transform 0.5s ease;
  transition: opacity 0.5s ease, -webkit-transform 0.5s ease;
  transition: opacity 0.5s ease, transform 0.5s ease;
  transition: opacity 0.5s ease, transform 0.5s ease, -webkit-transform 0.5s ease;
}
.section-interview02 .ranking-box > ol > li > img {
  width: 18.75rem;
  -webkit-filter: drop-shadow(0.1875rem 0.1875rem 0.375rem rgba(0, 0, 0, 0.06));
          filter: drop-shadow(0.1875rem 0.1875rem 0.375rem rgba(0, 0, 0, 0.06));
}
.section-interview02 .ranking-box > ol.-visible > li:nth-child(1) {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-delay: 0.1s;
          transition-delay: 0.1s;
}
.section-interview02 .ranking-box > ol.-visible > li:nth-child(2) {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}
.section-interview02 .ranking-box > ol.-visible > li:nth-child(3) {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}
.section-interview02 .ranking-box > ol.-visible > li:nth-child(4) {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}
.section-interview02 .ranking-box > ol.-visible > li:nth-child(5) {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}
.section-interview02 .vote-contents {
  padding: 3.75rem 0.625rem 0;
  position: relative;
  z-index: 0;
}
.section-interview02 .vote-contents::before {
  position: absolute;
  content: "";
  z-index: -1;
  background: -webkit-gradient(linear, left top, left bottom, from(#F2F1EC), color-stop(9.375rem, transparent), color-stop(transparent), color-stop(98%, rgba(242, 241, 236, 0.7)), to(#F2F1EC)), url("../img/vote-bg.webp") no-repeat center/cover;
  background: linear-gradient(to bottom, #F2F1EC 0%, transparent 9.375rem, transparent calc(100% - 8.75rem), rgba(242, 241, 236, 0.7) 98%, #F2F1EC 100%), url("../img/vote-bg.webp") no-repeat center/cover;
  width: calc(100% + 2.5rem);
  height: 100%;
  left: -1.25rem;
  top: 0;
}
.section-interview02 .vote-contents > *:first-child {
  margin-top: 0 !important;
}
.section-interview02 .vote-heading {
  margin: 1.625rem auto 0;
  height: 2.1875rem;
  position: relative;
  z-index: 2;
}
.section-interview02 .vote-heading img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.section-interview02 .vote-box {
  background: #F2F1EC;
  border: solid 0.125rem #262626;
  border-radius: 0.75rem;
  padding: 1.75rem 1.25rem 1.25rem;
  margin-top: -1.25rem;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  text-align: center;
}
.section-interview02 .vote-box .period {
  margin: 0;
  font-size: 1.125rem;
  font-weight: bold;
  letter-spacing: -0.02em;
  margin-left: -0.75rem;
  margin-right: -0.75rem;
}
.section-interview02 .vote-box .period small {
  font-weight: 400;
  font-size: 0.8125rem;
  display: inline-block;
  margin-right: 0.375rem;
}
.section-interview02 .vote-box .lead2 {
  font-size: 0.8125rem;
  letter-spacing: -0.04em;
  text-align: center;
  margin: 0;
  margin-bottom: 0.3125rem;
  padding-bottom: 0.75rem;
  border-bottom: dashed 1px #9D9D9D;
  line-height: 1.4615384615;
}
.section-interview02 .vote-box .lead {
  font-size: 0.875rem;
  line-height: 1.5;
  margin: 0;
  letter-spacing: -0.02em;
}
.section-interview02 .vote-box .lead > img {
  width: 100%;
  display: block;
}
.section-interview02 .vote-box .lead.-slide {
  padding-bottom: 0.625rem;
  font-weight: bold;
}
.section-interview02 .vote-box .lead > span {
  display: inline-block;
  margin: 0.5rem 0 0.1875rem;
}
.section-interview02 .vote-box .lead > span img {
  display: block;
  width: 100%;
}
.section-interview02 .vote-box .lead small {
  font-weight: 400;
  font-size: 0.875rem;
}
.section-interview02 .vote-box .lead em {
  font-size: 1.0625rem;
  font-style: normal;
}
.section-interview02 .vote-box .lead + .lead {
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: dashed 1px #9D9D9D;
}
.section-interview02 .vote-box .slideImg {
  width: 7.8125rem;
  height: 12.75rem;
  margin-bottom: 0.25rem;
  margin-top: 0.625rem;
  margin-left: auto;
  margin-right: auto;
}
.section-interview02 .vote-btn {
  margin-top: 1.875rem;
}
.section-interview02 .vote-btn a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 4.5rem;
  background: linear-gradient(145deg, #0361B4 0%, #00277E 100%);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: white;
  text-decoration: none;
  padding: 1.5625rem 3.5rem 1.5625rem 2.375rem;
  border-radius: 6.25rem;
  position: relative;
}
.section-interview02 .vote-btn a::before {
  position: absolute;
  content: "";
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 1.5rem;
  width: 2rem;
  height: 2rem;
  background: white;
  border-radius: 6.25rem;
}
.section-interview02 .vote-btn a::after {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 1.5rem;
  width: 2rem;
  height: 2rem;
  -webkit-mask: url("../img/icon-arrow.svg") no-repeat center/auto 0.6875rem;
          mask: url("../img/icon-arrow.svg") no-repeat center/auto 0.6875rem;
  background: #0263B9;
  content: "";
}
.section-interview02 .vote-btn a > img {
  width: 12.5625rem;
  display: block;
  -o-object-fit: contain;
     object-fit: contain;
}
.section-interview02 .vote-slider {
  margin-top: -1.25rem;
  overflow: visible;
  cursor: pointer;
  position: relative;
  --swiper-navigation-size: 2.375rem;
}
.section-interview02 .vote-slider::before {
  z-index: 3;
  position: absolute;
  content: "";
  width: 7.3125rem;
  height: 7.3125rem;
  top: -1.5rem;
  left: -2.125rem;
  background: url("../img/vote-flow-balloon.webp") no-repeat center/contain;
}
.section-interview02 .vote-slider .vote-box {
  margin-top: 0;
}
.section-interview02 .vote-slider .vote-box .lead small {
  font-size: 0.75rem;
}
.section-interview02 .vote-slider .swiper-button-prev, .section-interview02 .vote-slider .swiper-button-next {
  width: var(--swiper-navigation-size);
  border-radius: 50%;
  background: rgba(38, 38, 38, 0.9);
  -webkit-box-shadow: 0 0.1875rem 0.375rem 0 rgba(0, 0, 0, 0.16);
          box-shadow: 0 0.1875rem 0.375rem 0 rgba(0, 0, 0, 0.16);
  background-position: center center;
  background-size: 0.5rem 0.875rem;
  background-repeat: no-repeat;
  margin: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.section-interview02 .vote-slider .swiper-button-prev::after, .section-interview02 .vote-slider .swiper-button-next::after {
  display: none;
}
.section-interview02 .vote-slider .swiper-button-prev {
  background-image: url("data:image/svg+xml,%3Csvg width='8' height='14' viewBox='0 0 8 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.75194 12.091L1.41394 6.752L6.75194 1.414' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");
  left: -1.125rem;
}
.section-interview02 .vote-slider .swiper-button-next {
  background-image: url("data:image/svg+xml,%3Csvg width='9' height='14' viewBox='0 0 9 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.41395 12.091L6.75195 6.752L1.41395 1.414' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");
  right: -1.125rem;
}
.section-interview02 .vote-slider .swiper-button-disabled {
  opacity: 0.6;
}
.section-interview02 .entry-products {
  padding: 1.875rem 0 1.25rem;
}
.section-interview02 .entry-products > .heading {
  margin: 0 auto;
  max-width: 13.0625rem;
}
.section-interview02 .entry-products > .heading img {
  width: 100%;
}
.section-interview02 .entry-products > .finished {
  margin: 1.5rem auto 0;
  max-width: 18.75rem;
}
.section-interview02 .entry-products > .finished img {
  width: 100%;
}
.section-interview02 .entry-products > .lead {
  margin: 1.5rem 0 0 0;
  text-align: center;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  line-height: 1.5;
  letter-spacing: -0.02em;
  font-size: 0.9375rem;
  font-weight: bold;
}
.section-interview02 .entry-slider {
  margin-top: 1.875rem;
  overflow: visible;
  --swiper-navigation-size: 2.375rem;
}
.section-interview02 .entry-slider .swiper-wrapper {
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
}
.section-interview02 .entry-slider .swiper-slide {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: auto;
}
.section-interview02 .entry-slider .swiper-button-prev, .section-interview02 .entry-slider .swiper-button-next {
  width: var(--swiper-navigation-size);
  border-radius: 50%;
  background: rgba(38, 38, 38, 0.9);
  -webkit-box-shadow: 0 0.1875rem 0.375rem 0 rgba(0, 0, 0, 0.16);
          box-shadow: 0 0.1875rem 0.375rem 0 rgba(0, 0, 0, 0.16);
  background-position: center center;
  background-size: 0.5rem 0.875rem;
  background-repeat: no-repeat;
}
.section-interview02 .entry-slider .swiper-button-prev::after, .section-interview02 .entry-slider .swiper-button-next::after {
  display: none;
}
.section-interview02 .entry-slider:nth-of-type(1) .swiper-button-prev {
  left: 0;
  background-image: url("data:image/svg+xml,%3Csvg width='8' height='14' viewBox='0 0 8 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.75194 12.091L1.41394 6.752L6.75194 1.414' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");
}
.section-interview02 .entry-slider:nth-of-type(1) .swiper-button-next {
  right: 0;
  background-image: url("data:image/svg+xml,%3Csvg width='9' height='14' viewBox='0 0 9 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.41395 12.091L6.75195 6.752L1.41395 1.414' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");
}
.section-interview02 .entry-slider:nth-of-type(2) .swiper-button-prev {
  right: 0;
  left: auto;
  background-image: url("data:image/svg+xml,%3Csvg width='9' height='14' viewBox='0 0 9 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.41395 12.091L6.75195 6.752L1.41395 1.414' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");
}
.section-interview02 .entry-slider:nth-of-type(2) .swiper-button-next {
  left: 0;
  right: auto;
  background-image: url("data:image/svg+xml,%3Csvg width='8' height='14' viewBox='0 0 8 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.75194 12.091L1.41394 6.752L6.75194 1.414' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");
}
.section-interview02 .entry-btn {
  margin-top: 2.625rem;
}
.section-interview02 .entry-btn a {
  display: block;
  margin: 0 auto;
  max-width: 14.625rem;
  background: #262626;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: white;
  text-decoration: none;
  padding: 1.25rem 2rem 1.25rem 2.1875rem;
  border-radius: 6.25rem;
  position: relative;
}
.section-interview02 .entry-btn a::after {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 1.5rem;
  width: 0.375rem;
  height: 0.5625rem;
  -webkit-mask: url("../img/icon-arrow.svg") no-repeat center/contain;
          mask: url("../img/icon-arrow.svg") no-repeat center/contain;
  background: white;
  content: "";
}
.section-interview02 .entry-btn a > img {
  width: 9.375rem;
  display: block;
  -o-object-fit: contain;
     object-fit: contain;
}

.product-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
  background: rgba(0, 0, 0, 0.6);
  overflow: hidden;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.product-modal-slider {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  max-width: 22.5rem;
  width: 100%;
  padding: 1.875rem 1.25rem;
  max-height: 100%;
  --swiper-navigation-size: 2.375rem;
  overflow-x: hidden;
  overflow-y: auto;
}
.product-modal-slider .swiper-slide {
  height: auto;
}
.product-modal-slider .swiper-button-prev, .product-modal-slider .swiper-button-next {
  width: var(--swiper-navigation-size);
  border-radius: 50%;
  background: rgba(38, 38, 38, 0.9);
  -webkit-box-shadow: 0 0.1875rem 0.375rem 0 rgba(0, 0, 0, 0.16);
          box-shadow: 0 0.1875rem 0.375rem 0 rgba(0, 0, 0, 0.16);
  background-position: center center;
  background-size: 0.5rem 0.875rem;
  background-repeat: no-repeat;
  top: 46.5%;
}
.product-modal-slider .swiper-button-prev::after, .product-modal-slider .swiper-button-next::after {
  display: none;
}
.product-modal-slider .swiper-button-prev {
  background-image: url("data:image/svg+xml,%3Csvg width='8' height='14' viewBox='0 0 8 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.75194 12.091L1.41394 6.752L6.75194 1.414' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");
}
.product-modal-slider .swiper-button-next {
  background-image: url("data:image/svg+xml,%3Csvg width='9' height='14' viewBox='0 0 9 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.41395 12.091L6.75195 6.752L1.41395 1.414' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");
}

.product-modal-item {
  height: 100%;
  background: white;
  border: solid 0.25rem #262626;
  border-radius: 1.25rem;
  background: url("../img/product-bg.webp") no-repeat bottom -2px center/100% auto, white;
  padding: 0 1.875rem 3.125rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: relative;
}
.product-modal-item[data-target=kakiage1] {
  background: url("../img/products/bg-bottom-kakiage1.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item[data-target=kakiage2] {
  background: url("../img/products/bg-bottom-kakiage2.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item[data-target=kakiage3] {
  background: url("../img/products/bg-bottom-kakiage3.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item[data-target=kakiage4] {
  background: url("../img/products/bg-bottom-kakiage4.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item[data-target=kakiage5] {
  background: url("../img/products/bg-bottom-kakiage5.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item[data-target=kakiage6] {
  background: url("../img/products/bg-bottom-kakiage6.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item[data-target=kakiage7] {
  background: url("../img/products/bg-bottom-kakiage7.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item[data-target=kakiage8] {
  background: url("../img/products/bg-bottom-kakiage8.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item[data-target=kakiage9] {
  background: url("../img/products/bg-bottom-kakiage9.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item[data-target=kakiage10] {
  background: url("../img/products/bg-bottom-kakiage10.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item[data-target=kakiage11] {
  background: url("../img/products/bg-bottom-kakiage11.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item[data-target=kakiage12] {
  background: url("../img/products/bg-bottom-kakiage12.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item[data-target=kakiage13] {
  background: url("../img/products/bg-bottom-kakiage13.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item[data-target=kakiage14] {
  background: url("../img/products/bg-bottom-kakiage14.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item[data-target=kakiage15] {
  background: url("../img/products/bg-bottom-kakiage15.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item[data-target=kakiage16] {
  background: url("../img/products/bg-bottom-kakiage16.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item[data-target=kakiage17] {
  background: url("../img/products/bg-bottom-kakiage17.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item[data-target=kakiage18] {
  background: url("../img/products/bg-bottom-kakiage18.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item[data-target=kakiage19] {
  background: url("../img/products/bg-bottom-kakiage19.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item[data-target=kakiage20] {
  background: url("../img/products/bg-bottom-kakiage20.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item[data-target=kakiage21] {
  background: url("../img/products/bg-bottom-kakiage21.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item[data-target=kakiage22] {
  background: url("../img/products/bg-bottom-kakiage22.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item[data-target=kakiage23] {
  background: url("../img/products/bg-bottom-kakiage23.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item[data-target=kakiage24] {
  background: url("../img/products/bg-bottom-kakiage24.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item[data-target=kakiage25] {
  background: url("../img/products/bg-bottom-kakiage25.webp") no-repeat bottom -2px center/100% auto, white;
}
.product-modal-item .close {
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 2.375rem;
  height: 2.375rem;
  font-size: 1.25rem;
  background: #0263B9;
  border-radius: 6.25rem;
  display: inline-block;
  -webkit-box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16);
          box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16);
  border: none;
  color: white;
  font-weight: bold;
  position: absolute;
  top: -1.25rem;
  right: -0.5rem;
}
.product-modal-item .bgImg {
  margin-left: -1.875rem;
  margin-right: -1.875rem;
  overflow: hidden;
  border-radius: 1.125rem 1.125rem 0 0;
}
.product-modal-item .bgImg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.product-modal-item .image {
  position: absolute;
  z-index: 2;
  width: 10.25rem;
  top: 3.875rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  aspect-ratio: 1;
}
.product-modal-item .copy {
  position: absolute;
  z-index: 3;
  width: 3.84375rem;
  top: -1.125rem;
  left: 1rem;
  -webkit-transform: rotate(-6deg);
          transform: rotate(-6deg);
  -webkit-transform-origin: top left;
          transform-origin: top left;
  margin: 0;
}
.product-modal-item .copy.-sm {
  width: 1.625rem;
}
.product-modal-item .copy.-lg {
  width: 5.84375rem;
}
.product-modal-item .copy img {
  width: 100%;
}
.product-modal-item .title {
  border-top: dashed 1px #9D9D9D;
  border-bottom: dashed 1px #9D9D9D;
  margin: 4.5rem 0 0 0;
  padding: 0.625rem 0;
  text-align: center;
  min-height: 5.1875rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.product-modal-item .title > img {
  height: 3rem;
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.product-modal-item .title.-sm > img {
  height: 1.25rem;
}
.product-modal-item .text {
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  font-size: 0.875rem;
  line-height: 1.5714285714;
  margin: 1.375rem 0 0.875rem;
  color: #262626;
}
.product-modal-item .voteBtn {
  width: calc(100% + 0.5rem);
  margin-left: -0.25rem;
  margin-top: auto;
}
.product-modal-item .voteBtn button {
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  border: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 4rem;
  width: 100%;
  background: linear-gradient(145deg, #0361B4 0%, #00277E 100%);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: white;
  text-decoration: none;
  padding: 1.25rem 2.875rem 1.25rem 1.75rem;
  border-radius: 6.25rem;
  position: relative;
}
.product-modal-item .voteBtn button::before {
  position: absolute;
  content: "";
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 1.125rem;
  width: 1.75rem;
  height: 1.75rem;
  background: white;
  border-radius: 6.25rem;
}
.product-modal-item .voteBtn button::after {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 1.125rem;
  width: 1.75rem;
  height: 1.75rem;
  -webkit-mask: url("../img/icon-arrow.svg") no-repeat center/auto 0.6875rem;
          mask: url("../img/icon-arrow.svg") no-repeat center/auto 0.6875rem;
  background: #0263B9;
  content: "";
}
.product-modal-item .voteBtn button > img {
  width: 10.625rem;
  display: block;
  -o-object-fit: contain;
     object-fit: contain;
}
.product-modal-item .voteBtn button.-finished {
  pointer-events: none;
  background: #818181;
}
.product-modal-item .voteBtn button.-finished::before {
  background: #A3A3A3;
}
.product-modal-item .voteBtn button.-finished::after {
  background: #818181;
}
.product-modal-item .voteBtn button.-finished > img {
  width: 10.5rem;
}
.product-modal-item .voteBtn button.-noEntry {
  background: #B90025;
  padding-left: 2.375rem;
  text-align: center;
  pointer-events: none;
}
.product-modal-item .voteBtn button.-noEntry::before, .product-modal-item .voteBtn button.-noEntry::after {
  display: none;
}
.product-modal-item .voteBtn button.-noEntry > img {
  width: 11rem;
}
.product-modal-item .voteBtn button.-cpfinished {
  pointer-events: none;
  text-align: center;
  background: #767676;
  padding: 1.5rem;
  cursor: default;
}
.product-modal-item .voteBtn button.-cpfinished::before, .product-modal-item .voteBtn button.-cpfinished::after {
  display: none;
}
.product-modal-item .voteBtn button.-cpfinished > img {
  width: 13.0625rem;
  display: block;
  margin: 0 auto;
}

.entry-finished {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  max-width: 22.5rem;
  width: 100%;
  padding: 1.875rem 1.25rem;
  margin: 0 auto;
  max-height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
}
.entry-finished > .box {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 2.5rem 1.5rem 5.625rem;
  background: white;
  border: solid 0.25rem #262626;
  border-radius: 1.25rem;
  background: white;
  cursor: pointer;
  position: relative;
}
.entry-finished > .box .close {
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 2.375rem;
  height: 2.375rem;
  font-size: 1.25rem;
  background: #0263B9;
  border-radius: 6.25rem;
  display: inline-block;
  -webkit-box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16);
          box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16);
  border: none;
  color: white;
  font-weight: bold;
  position: absolute;
  top: -1.25rem;
  right: -0.375rem;
}
.entry-finished > .box .heading {
  margin: 0 auto;
  max-width: 12.875rem;
}
.entry-finished > .box .heading img {
  width: 100%;
}
.entry-finished > .box .image {
  margin: 1.875rem 0 0 0;
}
.entry-finished > .box .lead {
  margin: 2rem 0 0 0;
  border-top: dashed 1px #9D9D9D;
  padding-top: 1.5rem;
  font-size: 0.8125rem;
  letter-spacing: -0.02em;
  text-align: center;
  line-height: 1.6923076923;
  font-family: "解ミン 宙 H JIS2004 AP", "Kaimin Sora Heavy JIS2004 AP", "解ミン 宙 B JIS2004 AP", "Kaimin Sora Bold JIS2004 AP", "解ミン 宙 M JIS2004 AP", "Kaimin Sora Medium JIS2004 AP", "解ミン 宙 R JIS2004 AP", "Kaimin Sora Regular JIS2004 AP", "解ミン 宙 H", "Kaimin Sora Heavy", "解ミン 宙 B", "Kaimin Sora Bold", "解ミン 宙 M", "Kaimin Sora Medium", "解ミン 宙 R", "Kaimin Sora Regular", serif;
  color: #5F5F5F;
}
.entry-finished > .box .share {
  color: white;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: black;
  text-decoration: none;
  margin: 1.875rem auto 0;
  width: 12.5rem;
  max-width: 100%;
  border-radius: 0.3125rem;
  font-size: 0.8125rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
  padding: 0.875rem 0 0.875rem 1.25rem;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.entry-finished > .box .share::before {
  display: inline-block;
  width: 1.25rem;
  height: 1.25rem;
  content: "";
  background: url("../img/icon-twitter.svg") no-repeat center/contain;
  margin-right: 2.1875rem;
}

.section-other {
  padding: 3.625rem 1.25rem 4.375rem;
}
.section-other .image {
  width: 13.375rem;
  margin: 0 auto;
}
.section-other .image img {
  width: 100%;
}

:root {
  --f-item-width: 512px;
  --f-item-height: 724px;
}
@media (max-width: 767px) {
  :root {
    --f-item-width: 70vw;
    --f-item-height: 70vw * 724 / 512;
  }
}

.fancybox-image {
  max-width: var(--f-item-width);
}

.fancybox__container {
  --fancybox-bg: rgba(0, 0, 0, 0.8);
  --fancybox-content-color: #000;
}

.fancybox__nav {
  --f-button-bg: rgba(0, 0, 0, 0.8);
  --f-button-active-bg: rgba(0, 0, 0, 0.8);
  --f-button-prev-pos: calc(50% - var(--f-item-width) / 2 - 40px);
  --f-button-next-pos: calc(50% - var(--f-item-width) / 2 - 40px);
}

.f-button {
  background-repeat: no-repeat;
  background-position: center center;
}
.f-button svg {
  display: none;
}
.f-button[data-fancybox-close] {
  --f-button-width: 38px;
  --f-button-height: 38px;
  background-color: #66A500;
  border-radius: 50%;
  background-image: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.707291 0.707672L13.1369 13.1373' stroke='white' stroke-width='2'/%3E%3Cpath d='M13.1368 0.707764L0.707242 13.1373' stroke='white' stroke-width='2'/%3E%3C/svg%3E%0A");
  background-size: 14px 14px;
  position: fixed;
  top: calc(50% - (var(--f-item-height) + var(--f-button-height)) / 2);
  right: calc(50% - (var(--f-item-width) + var(--f-button-width)) / 2);
}
.f-button.is-prev {
  background-image: url("data:image/svg+xml,%3Csvg width='10' height='16' viewBox='0 0 10 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7.82 14.226L1.414 7.82L7.82 1.414' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");
  background-size: 10px 16px;
}
.f-button.is-next {
  background-image: url("data:image/svg+xml,%3Csvg width='10' height='16' viewBox='0 0 10 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.415 14.226L7.821 7.82L1.415 1.414' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");
  background-size: 10px 16px;
}

.f-carousel__dots {
  position: absolute;
  bottom: calc(50% - var(--f-item-height) / 2 - 20px);
  left: 0;
  right: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0 20px;
}
.f-carousel__dots li {
  width: 12px;
  height: 4px;
  margin: 0 2px;
}
.f-carousel__dots button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  display: block;
}
.f-carousel__dots .is-current .f-carousel__dot {
  background: #66A500;
}

.f-carousel__dot {
  display: block;
  width: 100%;
  height: 100%;
  background: #D5D5D5;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.course-report-box h2 {
  margin-top: 2.5rem;
  text-align: center;
}
.course-report-box h2 > img {
  width: 17.375rem;
}

.reportcard-wrapper {
  position: relative;
}
.reportcard-wrapper::after {
  position: absolute;
  content: "";
  background-color: #fff;
  width: 100%;
  height: 100%;
  border-radius: 0.5rem;
  top: 0.5rem;
  right: -0.5rem;
  -webkit-box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1);
  background-color: rgba(255, 255, 255, 0.8);
}

.reportcard {
  background-color: #fff;
  border-radius: 0.5rem;
  padding: 1.25rem 1.5625rem 2.5rem 2.5rem;
  position: relative;
  -webkit-box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1);
  z-index: 1;
}
.reportcard:not(.-report01) {
  margin-top: 1.5625rem;
}
.reportcard.-report05 {
  margin-bottom: 2.1875rem;
}
.reportcard::before {
  position: absolute;
  content: "";
  height: 95%;
  width: 1.75rem;
  top: 0.9375rem;
  left: -0.375rem;
  background: url(../img/report/note-left-repeat.svg) repeat-y top left/contain;
}
.reportcard-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  width: 100%;
  height: 4.75rem;
  background: url(../img/report/note-line.svg) no-repeat center center/contain;
}
.reportcard-head-left {
  width: 3.75rem;
  height: 3.75rem;
  margin-top: -0.3125rem;
}
.reportcard-head-left > img {
  width: 100%;
}
.reportcard-head-copy {
  height: 100%;
  margin-left: 0.625rem;
}
.reportcard-head-copy > img {
  width: 100%;
}
.reportcard-deco > img {
  position: absolute;
  content: "";
  height: auto;
}
.reportcard.-report01 .reportcard-head-copy {
  width: 12.3125rem;
  margin-top: 0.625rem;
}
.reportcard.-report01 .reportcard-deco > img {
  width: 2.8125rem;
  bottom: -0.9375rem;
  right: 0.9375rem;
}
.reportcard.-report02 .reportcard-head-copy {
  width: 10.625rem;
}
.reportcard.-report02 .reportcard-deco > img {
  width: 2.8125rem;
  bottom: -1.5625rem;
  right: 0.625rem;
}
.reportcard.-report03 .reportcard-head-copy {
  width: 11.0625rem;
}
.reportcard.-report03 .reportcard-deco > img {
  width: 2.8125rem;
  bottom: -2.1875rem;
  right: 0.625rem;
}
.reportcard.-report04 .reportcard-head-copy {
  width: 11.125rem;
}
.reportcard.-report04 .reportcard-deco > img {
  width: 3.8125rem;
  bottom: -1.5rem;
  right: -0.3125rem;
}
.reportcard.-report05 .reportcard-head-copy {
  width: 11.3125rem;
}
.reportcard.-report05 .reportcard-deco > img {
  width: 4.75rem;
  bottom: -1.5625rem;
  right: 0.3125rem;
}

.card-title {
  margin-top: 0.625rem;
  height: 1.3125rem;
}
.card-subtitle {
  margin-top: 0.625rem;
  width: 100%;
}
.card-text-lead {
  font-family: "Noto Sans JP", "Noto Sans CJK JP";
  line-height: 1.6666666667;
  font-size: 0.75rem;
  font-weight: 500;
  margin: 0.9375rem 0 0;
}
.card-img {
  margin-top: 1.25rem;
}

.reportcard-slider {
  padding-bottom: 4.375rem;
}
.reportcard-slider.-none {
  padding-bottom: 0;
}
.reportcard-slider .swiper-button-prev:after {
  background: url(../img/report/icon-arrow-circle-left.svg) no-repeat center/contain;
}
.reportcard-slider .swiper-button-next:after {
  background: url(../img/report/icon-arrow-circle-right.svg) no-repeat center/contain;
}
.reportcard-slider .swiper-button-prev {
  left: var(--swiper-navigation-sides-offset, 12%);
}
.reportcard-slider .swiper-button-next {
  right: var(--swiper-navigation-sides-offset, 12%);
}
.reportcard-slider .swiper-button-prev,
.reportcard-slider .swiper-button-next {
  width: 2.1875rem;
  height: 2.1875rem;
  top: auto;
  bottom: 0;
}
.reportcard-slider .swiper-button-prev::after,
.reportcard-slider .swiper-button-next::after {
  top: 0;
  left: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  content: "";
}
.reportcard-slider .swiper-pagination {
  display: block;
  bottom: 2.5%;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: auto;
}
.reportcard-slider .swiper-pagination-bullet-active {
  background-color: #B90025;
}

.c-loading {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.8);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 9999;
}

.c-loading .spinner {
  border: 0.5rem solid #f3f3f3;
  border-top: 0.5rem solid #C81432;
  border-radius: 50%;
  width: 3.75rem;
  height: 3.75rem;
  -webkit-animation: spin 2s linear infinite;
          animation: spin 2s linear infinite;
}

@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
.main-visual {
  display: -ms-grid;
  display: grid;
  place-items: center;
  place-content: center;
  gap: 1.125rem;
  height: 100dvh;
  margin: auto;
  background: #fff;
}
.main-visual > .bowl {
  width: 11.25rem;
  height: 28.875rem;
}
.main-visual > .message-ja {
  margin-right: -2.3125rem;
  margin-bottom: -5.625rem;
  z-index: 1;
  opacity: 0;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.main-visual > .message-ja > svg {
  width: 10.1875rem;
  height: 8.6875rem;
}
.main-visual > .message-en {
  margin-right: 0.8125rem;
  margin-bottom: -14.625rem;
  z-index: 1;
}
.main-visual > .message-en > svg {
  width: 16.6875rem;
  height: 6.8125rem;
}
.main-visual > .message-en .mask path {
  fill: none;
  stroke: #ffffff;
  stroke-width: 0.4375rem;
  stroke-dasharray: 4000;
  stroke-dashoffset: 4000;
}
.main-visual > .message-en .text {
  -webkit-mask: url(#mask-wrapper);
          mask: url(#mask-wrapper);
  fill: #000;
}
.main-visual > .image {
  opacity: 0;
}
.main-visual > .image > img {
  width: 8.8125rem;
  height: 1.625rem;
}
.main-visual.-done > .message-en .mask path {
  -webkit-animation: line 3s 0.4s forwards;
          animation: line 3s 0.4s forwards;
}
.main-visual.-done > .message-ja, .main-visual.-done > .image {
  opacity: 1;
}

@-webkit-keyframes line {
  0% {
    stroke-dashoffset: 4000;
  }
  100% {
    stroke-dashoffset: 0;
  }
}

@keyframes line {
  0% {
    stroke-dashoffset: 4000;
  }
  100% {
    stroke-dashoffset: 0;
  }
}
[data-trigger].-invisible {
  opacity: 0;
}

[data-trigger].-visible {
  opacity: 1;
  -webkit-transition: opacity 0.8s ease-in;
  transition: opacity 0.8s ease-in;
}

[data-trigger=fadeIn].-invisible {
  opacity: 0;
}

[data-trigger=fadeIn].-visible {
  opacity: 1;
  -webkit-transition: opacity 0.8s ease-in;
  transition: opacity 0.8s ease-in;
}

[data-trigger=fadeInUp].-invisible {
  opacity: 0;
  -webkit-transform: translateY(40px);
          transform: translateY(40px);
}

[data-trigger=fadeInUp].-visible {
  opacity: 1;
  -webkit-transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
  transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
  transition: opacity 0.8s ease-out, transform 0.8s ease-out;
  transition: opacity 0.8s ease-out, transform 0.8s ease-out, -webkit-transform 0.8s ease-out;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

[data-trigger=fadeInLeft].-invisible {
  opacity: 0;
  -webkit-transform: translateX(-40px);
          transform: translateX(-40px);
}

[data-trigger=fadeInLeft].-visible {
  opacity: 1;
  -webkit-transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
  transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
  transition: opacity 0.8s ease-out, transform 0.8s ease-out;
  transition: opacity 0.8s ease-out, transform 0.8s ease-out, -webkit-transform 0.8s ease-out;
  -webkit-transform: translateX(0);
          transform: translateX(0);
}