@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Barlow:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

body {
  line-height: 1; }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

nav ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

*, *:before, *:after {
  -webkit-box-sizing: inherit;
  -moz-box-sizing: inherit;
  -o-box-sizing: inherit;
  -ms-box-sizing: inherit;
  box-sizing: inherit; }

html {
  font-size: 62.5%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

body {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", " メイリオ ", Meiryo, " ＭＳ Ｐ ゴシック ", sans serif;
  font-size: 16px;
  font-weight: 400;
  position: relative;
  margin: 0 auto;
  line-height: 1.8;
  color: #3b3b3b;
  letter-spacing: 1px;
  overflow-x: hidden;
  height: 100%;
  background-color: #FCFFF2; }
  @media screen and (max-width: 834px) {
    body {
      font-size: 14px;
      overflow-x: hidden; } }
  body.popupfixed {
    overflow: hidden; }

::selection {
  background: #006a04;
  color: #FFF; }

::-moz-selection {
  background: #006a04;
  color: #FFF; }

li {
  list-style: none; }

img {
  max-width: 100%;
  height: auto;
  pointer-events: none; }

a, img {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all  0.3s ease; }

a,
a:link,
a:visited,
a:active {
  color: #c8161d;
  text-decoration: none;
  outline: none; }

@media screen and (min-width: 835px) {
  a:hover {
    color: #3b3b3b;
    text-decoration: none; } }
@media screen and (min-width: 835px) {
  a[href^="tel:"] {
    pointer-events: none; } }
@keyframes animation-fadeup {
  0% {
    transform: translateY(5rem);
    opacity: 0; }
  100% {
    transform: translateY(0rem);
    opacity: 1; } }
@keyframes animation-fadeleft {
  0% {
    transform: translateX(-2rem);
    opacity: 0; }
  100% {
    transform: translateY(0rem);
    opacity: 1; } }
.-animation-fadeup {
  opacity: 0; }
  .-animation-fadeup.-active {
    animation: animation-fadeup 1.5s 0.3s cubic-bezier(0.19, 1, 0.22, 1) forwards; }

.-animation-fadeup-group > div, .-animation-fadeup-group > a {
  opacity: 0; }
.-animation-fadeup-group.-active > div, .-animation-fadeup-group.-active > a {
  animation: animation-fadeup 1.5s 0.3s cubic-bezier(0.19, 1, 0.22, 1) forwards; }
  .-animation-fadeup-group.-active > div:nth-child(1), .-animation-fadeup-group.-active > a:nth-child(1) {
    animation-delay: 0.5s; }
  .-animation-fadeup-group.-active > div:nth-child(2), .-animation-fadeup-group.-active > a:nth-child(2) {
    animation-delay: 0.7s; }
  .-animation-fadeup-group.-active > div:nth-child(3), .-animation-fadeup-group.-active > a:nth-child(3) {
    animation-delay: 0.9s; }
  .-animation-fadeup-group.-active > div:nth-child(4), .-animation-fadeup-group.-active > a:nth-child(4) {
    animation-delay: 1.1s; }
  .-animation-fadeup-group.-active > div:nth-child(5), .-animation-fadeup-group.-active > a:nth-child(5) {
    animation-delay: 1.3s; }

@keyframes animation-img-blur {
  0% {
    opacity: 0;
    transform: scale(1.2);
    filter: blur(2rem); }
  100% {
    opacity: 1;
    transform: scale(1);
    filter: blur(0); } }
.-animation-img-blur {
  overflow: hidden;
  transform: scale(1.2);
  opacity: 0;
  filter: blur(2rem); }
  .-animation-img-blur.-active {
    animation: animation-img-blur 2s 0.1s cubic-bezier(0.19, 1, 0.22, 1) forwards; }

.-delay1.-active {
  animation-delay: 0.5s; }

.-delay2.-active {
  animation-delay: 0.7s; }

.-delay3.-active {
  animation-delay: 0.9s; }

.-delay4.-active {
  animation-delay: 1.1s; }

.-delay5.-active {
  animation-delay: 1.3s; }

:root {
  /*color - base*/
  --color-site-main: #006a04;
  --color-site-sub: #82a03f;
  --color-site-light: #ccd6ab;
  --color-text-base: #3b3b3b;
  /*font - base*/
  --font-family-jp: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Yu Gothic", yugothic, "メイリオ", meiryo, sans-serif;
  --font-family-jp2: "Zen Kaku Gothic New", sans-serif;
  --font-family-en: "Barlow", sans-serif;
  /*layout - base*/
  --layout-site-wide: 1280px;
  --layout-section-wide: 1040px; }

body {
  background: url(../images/bg_base.jpg) #fef1d6 repeat;
  background-size: 100% auto; }

.-end {
  display: none; }
  .-end.-show {
    display: none; }

.is-end .-end {
  display: block; }

.l-nav {
  z-index: 10; }
  @media screen and (min-width: 835px) {
    .l-nav {
      position: relative;
      max-width: 760px;
      margin: 0 auto;
      padding: 70px 0; } }
  @media screen and (max-width: 834px) {
    .l-nav {
      position: sticky;
      top: 0;
      margin: 10px 0;
      padding: 10px 0 10px; }
      .l-nav.is-sticky {
        background: rgba(255, 255, 255, 0.9);
        box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); } }
  .l-nav__menu {
    display: flex;
    justify-content: center; }
    .l-nav__menu.active {
      animation-delay: 1s; }
    .l-nav__menu li {
      display: flex;
      flex: 1; }
      @media screen and (max-width: 834px) {
        .l-nav__menu li {
          flex: 1;
          justify-content: center; } }
      @media screen and (max-width: 834px) {
        .l-nav__menu li:first-child {
          flex: 1.2; } }
      .l-nav__menu li a {
        color: var(--color-text-base);
        position: relative;
        font-weight: bold;
        display: flex;
        flex-direction: column; }
        @media screen and (min-width: 835px) {
          .l-nav__menu li a {
            padding: 10px 10px 25px;
            font-size: 16px;
            width: 100%;
            display: flex;
            justify-content: center;
            align-items: center; } }
        @media screen and (max-width: 834px) {
          .l-nav__menu li a {
            width: 100%;
            font-size: 11px;
            padding: 0 0 23px;
            letter-spacing: 1px;
            text-align: center; } }
        @media screen and (max-width: 834px) {
          .l-nav__menu li a span {
            display: flex;
            flex-direction: column;
            line-height: 1.2;
            height: 100%;
            justify-content: center; } }
        .l-nav__menu li a::before, .l-nav__menu li a::after {
          position: absolute;
          bottom: 0;
          left: 50%;
          transform: translateX(-50%);
          margin: auto;
          content: "";
          vertical-align: middle;
          transition: 0.3s; }
        .l-nav__menu li a::before {
          -webkit-border-radius: 50%;
          border-radius: 50%;
          background: var(--color-site-sub); }
          @media screen and (min-width: 835px) {
            .l-nav__menu li a::before {
              width: 24px;
              height: 24px; } }
          @media screen and (max-width: 834px) {
            .l-nav__menu li a::before {
              width: 18px;
              height: 18px; } }
        .l-nav__menu li a::after {
          left: 50%;
          transform: translateX(-50%) rotate(135deg); }
          @media screen and (min-width: 835px) {
            .l-nav__menu li a::after {
              bottom: 10px;
              border-top: 2px solid #fff;
              border-right: 2px solid #fff;
              width: 7px;
              height: 7px; } }
          @media screen and (max-width: 834px) {
            .l-nav__menu li a::after {
              bottom: 8px;
              border-top: 1px solid #fff;
              border-right: 1px solid #fff;
              width: 5px;
              height: 5px; } }
        @media screen and (min-width: 835px) {
          .l-nav__menu li a:hover {
            color: var(--color-site-main); }
            .l-nav__menu li a:hover::before, .l-nav__menu li a:hover::after {
              bottom: -5px; }
            .l-nav__menu li a:hover::before {
              background: var(--color-site-main); }
            .l-nav__menu li a:hover::after {
              bottom: 5px; } }
      .l-nav__menu li:not(:first-child) {
        border-left: 1px solid var(--color-text-base); }
        @media screen and (max-width: 834px) {
          .l-nav__menu li:not(:first-child) {
            border-width: 1px; } }

.l-wrapper {
  overflow-x: clip; }

.l-contents {
  position: relative; }
  @media screen and (max-width: 834px) {
    .l-contents > div {
      display: none; } }
  .l-contents .p-campaign {
    display: block !important; }

.l-section__contents {
  max-width: var(--layout-section-wide);
  margin: 0 auto;
  position: relative;
  width: 100%; }
  @media screen and (min-width: 835px) {
    .l-section__contents {
      padding: 0 40px; } }
  @media screen and (max-width: 834px) {
    .l-section__contents {
      padding: 0 25px; } }
.l-section__title {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  color: var(--color-site-main);
  position: relative;
  letter-spacing: 2.5px; }
  @media screen and (min-width: 835px) {
    .l-section__title {
      font-size: 24px; } }
  @media screen and (max-width: 834px) {
    .l-section__title {
      font-size: 18px; } }
  .l-section__title .-en {
    font-family: var(--font-family-en);
    display: inline-block;
    position: relative;
    letter-spacing: 1.5px; }
    @media screen and (min-width: 835px) {
      .l-section__title .-en {
        font-size: 14px; } }
    @media screen and (max-width: 834px) {
      .l-section__title .-en {
        font-size: 13px; } }
    .l-section__title .-en::before {
      content: "";
      width: 100%;
      height: 1px;
      background: var(--color-site-main);
      left: 0;
      bottom: 0;
      position: absolute; }
  .l-section__title.-white {
    color: #fff; }
    .l-section__title.-white .-en::before {
      background: #fff; }
.l-section__subtitle {
  margin-top: 60px;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  border-bottom: 1px solid var(--color-text-base);
  padding-bottom: 5px;
  margin-bottom: 15px; }

.l-footer {
  background: #f7f4ed;
  background-position: top center; }
  @media screen and (min-width: 835px) {
    .l-footer {
      padding: 80px 0 100px; } }
  @media screen and (max-width: 834px) {
    .l-footer {
      padding: 40px 10px 150px; } }
  .l-footer__menu {
    display: flex;
    gap: 30px; }
    @media screen and (max-width: 834px) {
      .l-footer__menu {
        flex-direction: column; } }
    .l-footer__menu-box {
      flex: 1;
      display: flex;
      flex-direction: column; }
      @media screen and (min-width: 835px) {
        .l-footer__menu-box {
          width: 40%; } }
      @media screen and (max-width: 834px) {
        .l-footer__menu-box {
          width: 100%; } }
      .l-footer__menu-box-header {
        display: flex;
        flex-direction: column; }
        @media screen and (min-width: 835px) {
          .l-footer__menu-box-header {
            min-height: 80px; } }
      .l-footer__menu-box-title {
        font-weight: bold; }
      @media screen and (min-width: 835px) {
        .l-footer__menu-box-text {
          font-size: 14px; } }
      @media screen and (max-width: 834px) {
        .l-footer__menu-box-text {
          font-size: 12px; } }
      .l-footer__menu-box ul {
        display: flex;
        flex-wrap: wrap; }
        @media screen and (min-width: 835px) {
          .l-footer__menu-box ul {
            margin-top: 20px; } }
        @media screen and (max-width: 834px) {
          .l-footer__menu-box ul {
            margin-top: 15px; } }
        .l-footer__menu-box ul li {
          padding-right: 10px; }
          @media screen and (min-width: 835px) {
            .l-footer__menu-box ul li {
              margin-bottom: 10px;
              width: 50%; } }
          @media screen and (max-width: 834px) {
            .l-footer__menu-box ul li {
              margin-bottom: 5px;
              width: 100%; } }
          .l-footer__menu-box ul li a {
            font-weight: bold;
            color: #c8161d; }
            @media screen and (min-width: 835px) {
              .l-footer__menu-box ul li a:hover {
                color: var(--color-text-base); } }
            @media screen and (max-width: 834px) {
              .l-footer__menu-box ul li a {
                font-size: 13px; } }
      .l-footer__menu-box-caution {
        margin: 20px auto 0;
        width: 100%; }
        @media screen and (max-width: 834px) {
          .l-footer__menu-box-caution {
            max-width: 400px; } }
  .l-footer__copyright {
    margin-top: 40px;
    display: flex;
    justify-content: space-between;
    color: var(--color-text-base);
    font-size: 12px;
    font-weight: bold; }
    @media screen and (min-width: 835px) {
      .l-footer__copyright {
        align-items: flex-end; } }
    @media screen and (max-width: 834px) {
      .l-footer__copyright {
        flex-direction: column;
        align-items: center;
        gap: 10px; } }
    .l-footer__copyright a {
      width: 140px;
      transition: 0.3s; }
      @media screen and (min-width: 835px) {
        .l-footer__copyright a:hover {
          opacity: 0.6; } }
      @media screen and (max-width: 834px) {
        .l-footer__copyright a {
          order: -1; } }

@media screen and (max-width: 834px) {
  .modal {
    overflow: hidden; } }

@media screen and (max-width: 834px) {
  body.modal {
    position: fixed;
    width: 100%; } }

.mfp-container {
  cursor: pointer; }

.mfp-content {
  max-width: 800px;
  padding: 0; }
  @media screen and (max-width: 834px) {
    .mfp-content {
      width: 90% !important; } }

.mfp-close-btn-in .mfp-close {
  background: #fff;
  border: 1px solid #000;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  right: -15px;
  top: -15px;
  opacity: 1;
  transition: 0.3s; }
  @media screen and (min-width: 835px) {
    .mfp-close-btn-in .mfp-close:hover {
      background-color: #000;
      color: #fff;
      transform: rotate(90deg); } }

.c-popup {
  border-radius: 10px;
  overflow: hidden;
  background: #fff repeat top center; }
  @media screen and (min-width: 835px) {
    .c-popup {
      padding: 40px; } }
  @media screen and (max-width: 834px) {
    .c-popup {
      padding: 15px 15px; } }
  .c-popup__header {
    font-size: 24px;
    text-align: center;
    font-weight: bold; }
    @media screen and (max-width: 834px) {
      .c-popup__header {
        font-size: 18px;
        padding-bottom: 5px; }
        .c-popup__header small {
          font-size: 16px; } }
    .c-popup__header span {
      text-decoration: underline; }
    @media screen and (min-width: 835px) {
      .c-popup__header.-midium {
        font-size: 20px; } }
    @media screen and (max-width: 834px) {
      .c-popup__header.-midium {
        font-size: 16px; } }
    .c-popup__header.-midium small {
      font-weight: normal; }
      @media screen and (min-width: 835px) {
        .c-popup__header.-midium small {
          font-size: 14px; } }
      @media screen and (max-width: 834px) {
        .c-popup__header.-midium small {
          font-size: 12px; } }
  .c-popup__body {
    margin-top: 0;
    overflow-y: auto;
    padding: 20px; }
    @media screen and (min-width: 835px) {
      .c-popup__body {
        max-height: 560px; } }
    @media screen and (max-width: 834px) {
      .c-popup__body {
        height: 450px;
        max-height: 65vh;
        margin-top: 0;
        padding: 3px 10px 10px; } }
    @media screen and (min-width: 835px) {
      .c-popup__body p {
        font-size: 14px; } }
    @media screen and (max-width: 834px) {
      .c-popup__body p {
        font-size: 13px; } }
    .c-popup__body p:not(:first-child) {
      margin-top: 20px; }
  .c-popup__body-sp {
    margin-top: 0;
    padding: 10px;
    max-height: 400px;
    overflow-y: auto; }
  .c-popup__list li,
  .c-popup .u-list li {
    text-indent: -1em;
    padding-left: 1em;
    margin-bottom: 5px; }
    @media screen and (min-width: 835px) {
      .c-popup__list li,
      .c-popup .u-list li {
        font-size: 14px; } }
    @media screen and (max-width: 834px) {
      .c-popup__list li,
      .c-popup .u-list li {
        font-size: 13px; } }
    .c-popup__list li::before,
    .c-popup .u-list li::before {
      content: "・"; }
    .c-popup__list li span,
    .c-popup .u-list li span {
      display: block;
      font-size: 13px;
      margin-top: 10px; }
      @media screen and (max-width: 834px) {
        .c-popup__list li span,
        .c-popup .u-list li span {
          font-size: 12px; } }
  .c-popup__note {
    margin-top: 10px; }
    .c-popup__note li {
      text-indent: -1em;
      padding-left: 1em;
      margin-bottom: 5px; }
      @media screen and (min-width: 835px) {
        .c-popup__note li {
          font-size: 14px; } }
      @media screen and (max-width: 834px) {
        .c-popup__note li {
          font-size: 12px; } }
      .c-popup__note li::before {
        content: "※"; }
      .c-popup__note li span {
        display: block;
        font-size: 13px;
        margin-top: 10px; }
        @media screen and (max-width: 834px) {
          .c-popup__note li span {
            font-size: 12px; } }

.c-requirements {
  background: #fff;
  border: 1px solid #cccccc;
  border-radius: 8px;
  overflow-y: scroll; }
  @media screen and (min-width: 835px) {
    .c-requirements {
      padding: 20px;
      height: 340px;
      margin-top: 30px; } }
  @media screen and (max-width: 834px) {
    .c-requirements {
      padding: 10px;
      height: 280px;
      margin-top: 20px; } }
  .c-requirements__maintitle {
    text-align: center;
    margin-bottom: 20px; }
    .c-requirements__maintitle span {
      font-weight: bold;
      text-decoration: underline; }
      @media screen and (min-width: 835px) {
        .c-requirements__maintitle span {
          font-size: 18px; } }
  .c-requirements__title {
    font-weight: bold;
    margin-top: 20px; }
  .c-requirements__title:first-child {
    margin-top: 0; }
  .c-requirements__text {
    padding-left: 10px;
    margin-top: 5px; }
    @media screen and (min-width: 835px) {
      .c-requirements__text {
        font-size: 14px; } }
    @media screen and (max-width: 834px) {
      .c-requirements__text {
        font-size: 12px; } }
  .c-requirements__list {
    padding-left: 0; }
    @media screen and (min-width: 835px) {
      .c-requirements__list {
        font-size: 14px; } }
    @media screen and (max-width: 834px) {
      .c-requirements__list {
        font-size: 12px; } }
    .c-requirements__list:not(:first-child) {
      margin-top: 5px;
      padding-left: 10px; }
    .c-requirements__list > li {
      text-indent: -1em;
      padding-left: 1em; }
      .c-requirements__list > li::before {
        content: "・"; }
      @media screen and (min-width: 835px) {
        .c-requirements__list > li span {
          font-size: 12px; } }
      @media screen and (max-width: 834px) {
        .c-requirements__list > li span {
          font-size: 10px; } }
  .c-requirements__list2 {
    padding-left: 10px;
    font-size: 14px; }
    @media screen and (min-width: 835px) {
      .c-requirements__list2 {
        font-size: 14px; } }
    @media screen and (max-width: 834px) {
      .c-requirements__list2 {
        font-size: 12px; } }
    .c-requirements__list2:not(:first-child) {
      margin-top: 5px; }
    .c-requirements__list2 > li {
      text-indent: -1em;
      padding-left: 1em; }
      .c-requirements__list2 > li::before {
        content: "●"; }
  .c-requirements__note {
    padding-left: 10px;
    margin-top: 5px; }
    @media screen and (min-width: 835px) {
      .c-requirements__note {
        font-size: 12px; } }
    @media screen and (max-width: 834px) {
      .c-requirements__note {
        font-size: 10px; } }
    .c-requirements__note li {
      text-indent: -1em;
      padding-left: 1em;
      margin-bottom: 5px; }
      .c-requirements__note li::before {
        content: "※"; }

@media screen and (min-width: 835px) {
  .c-apply {
    margin-top: 80px; } }
@media screen and (max-width: 834px) {
  .c-apply {
    margin-top: 50px; } }
.c-apply__img {
  height: auto;
  margin: 0 auto; }
  @media screen and (min-width: 835px) {
    .c-apply__img {
      width: 80%;
      max-width: 280px; } }
  @media screen and (max-width: 834px) {
    .c-apply__img {
      width: 65%;
      max-width: 210px; } }
.c-apply__text {
  font-weight: bold;
  text-align: center; }
  @media screen and (min-width: 835px) {
    .c-apply__text {
      font-size: 18px; } }
.c-apply__entry {
  text-align: center; }
  .c-apply__entry a {
    display: flex;
    justify-content: center;
    align-items: center;
    background: var(--color-site-main);
    border: 1px solid var(--color-site-main);
    color: #fff;
    font-weight: bold;
    text-align: center;
    border-radius: 10px;
    gap: 10px;
    position: relative; }
    @media screen and (min-width: 835px) {
      .c-apply__entry a {
        font-size: 20px;
        width: 100%;
        margin: 20px auto 0;
        padding: 30px 0; } }
    @media screen and (max-width: 834px) {
      .c-apply__entry a {
        font-size: 18px;
        width: 100%;
        margin: 20px auto 0;
        padding: 15px 0; } }
    .c-apply__entry a img,
    .c-apply__entry a svg {
      width: 10px;
      height: 10px;
      transition: 0.3s;
      fill: #fff;
      margin-left: 10px; }
    .c-apply__entry a::before {
      content: "";
      width: calc(100% - 6px);
      height: calc(100% - 6px);
      position: absolute;
      left: 3px;
      top: 3px;
      border: 1px solid #fff;
      border-radius: 10px; }
    @media screen and (min-width: 835px) {
      .c-apply__entry a:hover {
        background-color: #fff;
        color: var(--color-site-main);
        transform: scale(1.05); }
        .c-apply__entry a:hover::before {
          transform: scale(1.01);
          opacity: 0; }
        .c-apply__entry a:hover svg {
          fill: var(--color-site-main); } }

@media screen and (min-width: 835px) {
  .c-sns {
    margin-top: 30px; } }
@media screen and (max-width: 834px) {
  .c-sns {
    margin-top: 20px; } }
.c-sns__title {
  font-weight: bold;
  text-align: center;
  letter-spacing: 1px; }
  @media screen and (min-width: 835px) {
    .c-sns__title {
      font-size: 18px; } }
  @media screen and (max-width: 834px) {
    .c-sns__title {
      font-size: 14px; } }
  .c-sns__title span {
    display: inline-flex;
    align-items: center;
    gap: 20px; }
    .c-sns__title span::before, .c-sns__title span::after {
      content: "";
      width: 1px;
      background-color: var(--color-text-base);
      transform: rotate(-30deg); }
      @media screen and (min-width: 835px) {
        .c-sns__title span::before, .c-sns__title span::after {
          height: 25px; } }
      @media screen and (max-width: 834px) {
        .c-sns__title span::before, .c-sns__title span::after {
          height: 30px; } }
    .c-sns__title span::after {
      transform: rotate(30deg); }
.c-sns__list {
  margin-top: 20px;
  display: flex;
  justify-content: center; }
  @media screen and (min-width: 835px) {
    .c-sns__list {
      gap: 20px; } }
  @media screen and (max-width: 834px) {
    .c-sns__list {
      gap: 25px; } }
  .c-sns__list li {
    width: 40px;
    height: auto; }
    .c-sns__list li a {
      position: relative;
      display: block; }
      .c-sns__list li a img {
        transition: 0.3s; }
    .c-sns__list li a:hover p {
      opacity: 1;
      transform: translateX(-50%) translateY(-30px); }
    .c-sns__list li a:hover img {
      transform: scale(1.05);
      opacity: 1; }
    @media screen and (min-width: 835px) {
      .c-sns__list li a:hover img {
        transform: scale(1.2); } }
  .c-sns__list-text {
    position: absolute;
    background-color: var(--color-text-base);
    border-radius: 5px;
    padding: 3px 5px;
    font-size: 12px;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
    color: #fff;
    font-weight: bold;
    opacity: 0;
    transition: 0.3s;
    pointer-events: none;
    letter-spacing: 0; }

@media screen and (min-width: 835px) {
  .c-member {
    margin-top: 60px; } }
@media screen and (max-width: 834px) {
  .c-member {
    margin-top: 40px; } }
.c-member__contents {
  border: 1px solid #707070; }
  @media screen and (min-width: 835px) {
    .c-member__contents {
      padding: 0 30px 30px; } }
  @media screen and (max-width: 834px) {
    .c-member__contents {
      padding: 0 20px 20px; } }
.c-member__header {
  text-align: center; }
  @media screen and (min-width: 835px) {
    .c-member__header {
      margin-top: -1em; } }
  @media screen and (max-width: 834px) {
    .c-member__header {
      margin-top: -2em; } }
  .c-member__header-title {
    text-align: center;
    font-weight: bold;
    color: var(--color-text-base);
    display: flex;
    align-items: center;
    gap: 10px;
    background-color: #fdf2e7;
    display: inline-block;
    padding: 0 15px; }
    @media screen and (min-width: 835px) {
      .c-member__header-title {
        font-size: 16px; } }
    @media screen and (max-width: 834px) {
      .c-member__header-title {
        font-size: 15px; } }
    .c-member__header-title::before, .c-member__header-title::after {
      flex-grow: 1;
      height: 1px;
      width: auto;
      border-bottom: 1px dotted var(--color-text-base); }
.c-member__body-text {
  text-align: center;
  font-weight: bold;
  margin-top: 30px;
  font-family: var(--font-family-jp2); }
  @media screen and (min-width: 835px) {
    .c-member__body-text {
      font-size: 18px; } }
  @media screen and (max-width: 834px) {
    .c-member__body-text {
      font-size: 15px; } }
.c-member__body-note {
  margin-top: 5px;
  text-align: center;
  font-size: 12px; }
.c-member__body-app {
  display: flex;
  justify-content: center; }
  @media screen and (min-width: 835px) {
    .c-member__body-app {
      margin-top: 10px;
      gap: 15px;
      margin-bottom: 0; } }
  @media screen and (max-width: 834px) {
    .c-member__body-app {
      margin-top: 15px;
      gap: 10px;
      margin-bottom: 0; } }
  .c-member__body-app li {
    width: auto; }
    @media screen and (min-width: 835px) {
      .c-member__body-app li {
        height: 56px; } }
    @media screen and (max-width: 834px) {
      .c-member__body-app li {
        height: 48px; } }
    .c-member__body-app li a {
      display: block;
      width: auto;
      height: 100%; }
      .c-member__body-app li a img {
        height: 100%;
        width: auto;
        transition: 0.3s; }
    @media screen and (min-width: 835px) {
      .c-member__body-app li a:hover img {
        opacity: 0.6; } }
.c-member__body-entry {
  margin: 20px auto 0;
  text-align: center;
  display: flex;
  justify-content: center; }
  @media screen and (min-width: 835px) {
    .c-member__body-entry {
      width: 80%; } }
  @media screen and (max-width: 834px) {
    .c-member__body-entry {
      width: 100%; } }
  .c-member__body-entry a {
    border: 1px solid var(--color-site-sub);
    background-color: var(--color-site-sub);
    color: #fff;
    font-weight: bold;
    border-radius: 10px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%; }
    @media screen and (min-width: 835px) {
      .c-member__body-entry a {
        padding: 15px 15px; } }
    @media screen and (max-width: 834px) {
      .c-member__body-entry a {
        font-size: 13px;
        justify-content: center;
        padding: 12px 0; } }
    .c-member__body-entry a img,
    .c-member__body-entry a svg {
      width: 10px;
      height: 10px;
      transition: 0.3s;
      fill: #c8161d;
      margin-left: 10px; }
    .c-member__body-entry a svg {
      fill: #fff; }
    @media screen and (min-width: 835px) {
      .c-member__body-entry a:hover {
        background-color: #fff;
        color: var(--color-site-sub); }
        .c-member__body-entry a:hover svg {
          fill: var(--color-site-sub);
          transform: translateX(5px); } }

.c-pagetop {
  position: fixed;
  z-index: 1000;
  bottom: -100px;
  pointer-events: none;
  transition: 0.3s;
  font-family: "Barlow", sans-serif;
  line-height: 1;
  font-size: 12px;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  background-color: #333333;
  /*&::before {
		content: "";
		display: block;
		transition: .3s;
		border-top: 1px solid #FFF;
		border-right:  1px solid #FFF;
		transform: rotate(-45deg);
		@include mq(pc) {
			width: 10px;
			height: 10px;
			
		}
		@include mq(sp) {
			width: 6px;
			height: 6px;
		}
	}*/ }
  @media screen and (min-width: 835px) {
    .c-pagetop {
      right: 35px;
      cursor: pointer;
      width: 60px;
      height: 60px;
      gap: 5px; } }
  @media screen and (max-width: 834px) {
    .c-pagetop {
      right: 25px;
      width: 50px;
      height: 50px;
      gap: 5px; } }
  .c-pagetop svg {
    width: 14px;
    height: 14px;
    transition: 0.3s;
    fill: #fff; }
  @media screen and (min-width: 835px) {
    .c-pagetop:hover {
      transform: scale(1.1); }
      .c-pagetop:hover svg {
        transform: translateY(-3px); } }
  .c-pagetop.-show {
    pointer-events: auto; }
    @media screen and (min-width: 835px) {
      .c-pagetop.-show {
        bottom: 10px; } }
    @media screen and (max-width: 834px) {
      .c-pagetop.-show {
        bottom: 10px; } }

.c-fixed {
  position: fixed;
  z-index: 1000;
  opacity: 0;
  pointer-events: none;
  transition: 0.3s;
  width: auto;
  display: block; }
  @media screen and (min-width: 835px) {
    .c-fixed {
      width: 160px;
      height: 160px;
      bottom: 90px;
      right: -140px; }
      .c-fixed:hover {
        transform: scale(1.1); } }
  @media screen and (max-width: 834px) {
    .c-fixed {
      width: 86px;
      height: 86px;
      bottom: 75px;
      right: -100px; } }
  .c-fixed a {
    display: block; }
  .c-fixed.-show {
    opacity: 1;
    right: 10px;
    pointer-events: auto; }

.c-button.-sub a {
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  border-radius: 50px;
  border: 1px solid var(--color-text-base);
  color: var(--color-text-base);
  font-size: 14px;
  padding: 5px 1px 5px 30px;
  font-weight: 500;
  position: relative; }
  .c-button.-sub a svg {
    width: 12px;
    height: 12px;
    transition: 0.3s; }
  .c-button.-sub a:hover {
    background-color: var(--color-text-base);
    color: #fff; }
    .c-button.-sub a:hover svg {
      transform: translateX(5px);
      fill: #fff; }

.u-mt0 {
  margin-top: 0px !important; }

.u-mb0 {
  margin-bottom: 0px !important; }

.u-mr0 {
  margin-right: 0px !important; }

.u-ml0 {
  margin-left: 0px !important; }

.u-pt0 {
  padding-top: 0px !important; }

.u-pb0 {
  padding-bottom: 0px !important; }

.u-pr0 {
  padding-right: 0px !important; }

.u-pl0 {
  padding-left: 0px !important; }

.u-mt5 {
  margin-top: 5px !important; }

.u-mb5 {
  margin-bottom: 5px !important; }

.u-mr5 {
  margin-right: 5px !important; }

.u-ml5 {
  margin-left: 5px !important; }

.u-pt5 {
  padding-top: 5px !important; }

.u-pb5 {
  padding-bottom: 5px !important; }

.u-pr5 {
  padding-right: 5px !important; }

.u-pl5 {
  padding-left: 5px !important; }

.u-mt10 {
  margin-top: 10px !important; }

.u-mb10 {
  margin-bottom: 10px !important; }

.u-mr10 {
  margin-right: 10px !important; }

.u-ml10 {
  margin-left: 10px !important; }

.u-pt10 {
  padding-top: 10px !important; }

.u-pb10 {
  padding-bottom: 10px !important; }

.u-pr10 {
  padding-right: 10px !important; }

.u-pl10 {
  padding-left: 10px !important; }

.u-mt15 {
  margin-top: 15px !important; }

.u-mb15 {
  margin-bottom: 15px !important; }

.u-mr15 {
  margin-right: 15px !important; }

.u-ml15 {
  margin-left: 15px !important; }

.u-pt15 {
  padding-top: 15px !important; }

.u-pb15 {
  padding-bottom: 15px !important; }

.u-pr15 {
  padding-right: 15px !important; }

.u-pl15 {
  padding-left: 15px !important; }

.u-mt20 {
  margin-top: 20px !important; }

.u-mb20 {
  margin-bottom: 20px !important; }

.u-mr20 {
  margin-right: 20px !important; }

.u-ml20 {
  margin-left: 20px !important; }

.u-pt20 {
  padding-top: 20px !important; }

.u-pb20 {
  padding-bottom: 20px !important; }

.u-pr20 {
  padding-right: 20px !important; }

.u-pl20 {
  padding-left: 20px !important; }

.u-mt25 {
  margin-top: 25px !important; }

.u-mb25 {
  margin-bottom: 25px !important; }

.u-mr25 {
  margin-right: 25px !important; }

.u-ml25 {
  margin-left: 25px !important; }

.u-pt25 {
  padding-top: 25px !important; }

.u-pb25 {
  padding-bottom: 25px !important; }

.u-pr25 {
  padding-right: 25px !important; }

.u-pl25 {
  padding-left: 25px !important; }

.u-mt30 {
  margin-top: 30px !important; }

.u-mb30 {
  margin-bottom: 30px !important; }

.u-mr30 {
  margin-right: 30px !important; }

.u-ml30 {
  margin-left: 30px !important; }

.u-pt30 {
  padding-top: 30px !important; }

.u-pb30 {
  padding-bottom: 30px !important; }

.u-pr30 {
  padding-right: 30px !important; }

.u-pl30 {
  padding-left: 30px !important; }

.u-mt35 {
  margin-top: 35px !important; }

.u-mb35 {
  margin-bottom: 35px !important; }

.u-mr35 {
  margin-right: 35px !important; }

.u-ml35 {
  margin-left: 35px !important; }

.u-pt35 {
  padding-top: 35px !important; }

.u-pb35 {
  padding-bottom: 35px !important; }

.u-pr35 {
  padding-right: 35px !important; }

.u-pl35 {
  padding-left: 35px !important; }

.u-mt40 {
  margin-top: 40px !important; }

.u-mb40 {
  margin-bottom: 40px !important; }

.u-mr40 {
  margin-right: 40px !important; }

.u-ml40 {
  margin-left: 40px !important; }

.u-pt40 {
  padding-top: 40px !important; }

.u-pb40 {
  padding-bottom: 40px !important; }

.u-pr40 {
  padding-right: 40px !important; }

.u-pl40 {
  padding-left: 40px !important; }

.u-mt45 {
  margin-top: 45px !important; }

.u-mb45 {
  margin-bottom: 45px !important; }

.u-mr45 {
  margin-right: 45px !important; }

.u-ml45 {
  margin-left: 45px !important; }

.u-pt45 {
  padding-top: 45px !important; }

.u-pb45 {
  padding-bottom: 45px !important; }

.u-pr45 {
  padding-right: 45px !important; }

.u-pl45 {
  padding-left: 45px !important; }

.u-mt50 {
  margin-top: 50px !important; }

.u-mb50 {
  margin-bottom: 50px !important; }

.u-mr50 {
  margin-right: 50px !important; }

.u-ml50 {
  margin-left: 50px !important; }

.u-pt50 {
  padding-top: 50px !important; }

.u-pb50 {
  padding-bottom: 50px !important; }

.u-pr50 {
  padding-right: 50px !important; }

.u-pl50 {
  padding-left: 50px !important; }

@media screen and (min-width: 835px) {
  .u-sp,
  .u-display-sp {
    display: none !important; } }

@media screen and (max-width: 834px) {
  .u-pc,
  .u-display-pc {
    display: none !important; } }

.u-bold {
  font-weight: bold; }

.u-normal {
  font-weight: normal; }

.u-list {
  margin-top: 5px; }
  .u-list > li {
    text-indent: -1em;
    padding-left: 1em;
    font-weight: normal; }
    @media screen and (min-width: 835px) {
      .u-list > li {
        font-size: 14px; } }
    @media screen and (max-width: 834px) {
      .u-list > li {
        font-size: 14px; } }
    .u-list > li::before {
      content: "・"; }
    .u-list > li > strong {
      color: #006a04; }
    .u-list > li:not(:first-child) {
      margin-top: 3px; }
  .u-list-sub {
    margin-top: 5px;
    font-weight: normal; }
    @media screen and (min-width: 835px) {
      .u-list-sub {
        padding-left: 40px;
        font-size: 16px; } }
    @media screen and (max-width: 834px) {
      .u-list-sub {
        padding-left: 20px;
        font-size: 14px; } }
  .u-list.-point {
    margin-top: 10px; }
    .u-list.-point > li {
      font-weight: bold; }
      @media screen and (min-width: 835px) {
        .u-list.-point > li {
          font-size: 20px; } }
      @media screen and (max-width: 834px) {
        .u-list.-point > li {
          font-size: 16px; } }
      .u-list.-point > li::before {
        content: "●"; }
      .u-list.-point > li.-red {
        color: #c8161d; }
  .u-list.-num {
    list-style-type: none;
    counter-reset: list-counter; }
    .u-list.-num > li {
      counter-increment: list-counter; }
      .u-list.-num > li::before {
        content: "(" counter(list-counter) ")"; }
  .u-list.-note {
    margin-top: 6px;
    margin-bottom: 8px; }
    .u-list.-note li {
      text-indent: -1em;
      padding-left: 1em; }
      @media screen and (min-width: 835px) {
        .u-list.-note li {
          font-size: 12px; } }
      @media screen and (max-width: 834px) {
        .u-list.-note li {
          font-size: 12px; } }
      .u-list.-note li::before {
        content: "※"; }
      .u-list.-note li > strong {
        color: #006a04; }
    @media screen and (min-width: 835px) {
      .u-list.-note.-center li {
        text-align: center; } }

.p-main {
  position: relative; }
  @media screen and (max-width: 834px) {
    .p-main {
      overflow: hidden; } }
  .p-main__bg > div {
    position: absolute;
    z-index: 1; }
  @media screen and (min-width: 835px) {
    .p-main__bg .-bg-g01 {
      width: 32%;
      top: 0;
      left: 22%;
      transform: translateY(-75%); } }
  @media screen and (max-width: 834px) {
    .p-main__bg .-bg-g01 {
      width: 40%;
      top: 0;
      left: 29%;
      transform: translateY(-75%); } }
  .p-main__bg .-bg-g02 {
    width: 40%;
    top: 10%;
    left: 0;
    transform: translateX(-64%) rotate(90deg); }
  .p-main__bg .-bg-g03 {
    width: 36%;
    top: 50%;
    left: -26%;
    transform: translateX(0%) rotate(134deg); }
  .p-main__bg .-bg-g04 {
    width: 40%;
    top: 55%;
    right: -30%; }
  .p-main__bg .-bg-r01 {
    width: 30%;
    top: 13%;
    right: 0;
    transform: translateX(38%); }
  .p-main__img > div {
    position: absolute;
    z-index: 2; }
    .p-main__img > div .-object {
      position: absolute; }
  @media screen and (min-width: 835px) {
    .p-main__img .-img01 {
      width: 35%;
      max-width: 613px;
      top: 0;
      left: -3%; } }
  @media screen and (max-width: 834px) {
    .p-main__img .-img01 {
      width: 37%;
      max-width: 613px;
      top: -1%;
      left: -5%; } }
  @media screen and (max-width: 420px) {
    .p-main__img .-img01 {
      width: 48%;
      max-width: 613px;
      top: 0;
      left: -6%; } }
  @media screen and (min-width: 835px) {
    .p-main__img .-img01 .-object {
      bottom: -13%;
      left: 38%;
      width: 17%; } }
  @media screen and (max-width: 834px) {
    .p-main__img .-img01 .-object {
      bottom: -31%;
      left: 18%;
      width: 26%; } }
  @media screen and (max-width: 420px) {
    .p-main__img .-img01 .-object {
      bottom: -46%;
      left: 16%;
      width: 27%; } }
  @media screen and (min-width: 835px) {
    .p-main__img .-img02 {
      width: 42%;
      max-width: 742px;
      top: -4%;
      right: -11%; } }
  @media screen and (max-width: 834px) {
    .p-main__img .-img02 {
      width: 53%;
      max-width: 742px;
      top: -2%;
      right: -19%; } }
  @media screen and (max-width: 420px) {
    .p-main__img .-img02 {
      width: 62%;
      max-width: 742px; } }
  @media screen and (min-width: 835px) {
    .p-main__img .-img02 .-object {
      top: 21%;
      left: -15%;
      width: 27%; } }
  @media screen and (max-width: 834px) {
    .p-main__img .-img02 .-object {
      top: 13%;
      left: -15%;
      width: 28%; } }
  @media screen and (max-width: 420px) {
    .p-main__img .-img02 .-object {
      top: 29%;
      left: -9%;
      width: 30%; } }
  @media screen and (min-width: 835px) {
    .p-main__img .-img03 {
      width: 35%;
      max-width: 600px;
      bottom: -13%;
      left: -9%; } }
  @media screen and (max-width: 834px) {
    .p-main__img .-img03 {
      width: 43%;
      max-width: 600px;
      bottom: 3%;
      left: -12%; } }
  @media screen and (max-width: 420px) {
    .p-main__img .-img03 {
      width: 51%;
      max-width: 600px;
      bottom: -5%;
      left: -12%; } }
  @media screen and (min-width: 835px) {
    .p-main__img .-img03 .-object {
      bottom: 5%;
      right: -19%;
      width: 37%; } }
  @media screen and (max-width: 834px) {
    .p-main__img .-img03 .-object {
      bottom: 5%;
      left: 75%;
      width: 40%; } }
  @media screen and (max-width: 420px) {
    .p-main__img .-img03 .-object {
      bottom: 142%;
      left: 30%;
      width: 40%; } }
  @media screen and (min-width: 835px) {
    .p-main__img .-img04 {
      width: 35%;
      max-width: 629px;
      bottom: -13%;
      right: -9%; } }
  @media screen and (max-width: 834px) {
    .p-main__img .-img04 {
      width: 40%;
      max-width: 629px;
      bottom: 0%;
      right: -11%; } }
  @media screen and (max-width: 420px) {
    .p-main__img .-img04 {
      width: 48%;
      max-width: 629px;
      bottom: -7%;
      right: -11%; } }
  @media screen and (min-width: 835px) {
    .p-main__img .-img04 .-object {
      top: 34%;
      left: -4%;
      width: 16%; } }
  @media screen and (max-width: 834px) {
    .p-main__img .-img04 .-object {
      top: -14%;
      left: 25%;
      width: 20%; } }
  @media screen and (max-width: 420px) {
    .p-main__img .-img04 .-object {
      top: -72%;
      left: inherit;
      right: 41%;
      width: 20%; } }
  @media screen and (min-width: 835px) {
    .p-main__wrapper {
      padding-bottom: 60px; } }
  @media screen and (max-width: 834px) {
    .p-main__wrapper {
      padding-bottom: 120px; } }
  .p-main__inner {
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 3;
    position: relative; }
    @media screen and (min-width: 835px) {
      .p-main__inner {
        width: 85%;
        max-width: 1600px;
        padding: 120px 0 0; } }
    @media screen and (max-width: 834px) {
      .p-main__inner {
        width: 100%;
        padding: 90px 25px 0; } }
  .p-main__royal {
    height: auto; }
    @media screen and (min-width: 835px) {
      .p-main__royal {
        max-width: 420px;
        width: 42%; } }
    @media screen and (max-width: 834px) {
      .p-main__royal {
        width: 70%;
        max-width: 240px; } }
  .p-main__title {
    width: 100%; }
    @media screen and (min-width: 835px) {
      .p-main__title {
        max-width: 1000px;
        margin: 30px auto 0;
        padding: 0;
        width: 90%; } }
    @media screen and (max-width: 834px) {
      .p-main__title {
        margin: 10px auto 0;
        padding: 0; } }
    .p-main__title img {
      width: 100%; }
  .p-main__schedule {
    display: flex;
    justify-content: center;
    flex-direction: column; }
    @media screen and (min-width: 835px) {
      .p-main__schedule {
        margin: 30px auto 0; } }
    @media screen and (max-width: 834px) {
      .p-main__schedule {
        margin: 10px auto 0; } }
    .p-main__schedule-title {
      font-weight: bold;
      border-top: 1px solid var(--color-text-base);
      border-bottom: 1px solid var(--color-text-base);
      padding: 5px 0;
      text-align: center; }
      @media screen and (min-width: 835px) {
        .p-main__schedule-title {
          font-size: 18px; } }
      @media screen and (max-width: 834px) {
        .p-main__schedule-title {
          font-size: 12px; } }
    .p-main__schedule-date {
      margin-top: 10px;
      font-weight: 600;
      font-family: var(--font-family-en);
      line-height: 1;
      text-shadow: 0px 0px 7px #fdf2dd; }
      @media screen and (min-width: 835px) {
        .p-main__schedule-date {
          font-size: 32px; } }
      @media screen and (max-width: 834px) {
        .p-main__schedule-date {
          font-size: 16px; } }
      .p-main__schedule-date strong {
        font-size: 52px;
        font-weight: 600; }
        @media screen and (min-width: 835px) {
          .p-main__schedule-date strong {
            font-size: 52px; } }
        @media screen and (max-width: 834px) {
          .p-main__schedule-date strong {
            font-size: 24px; } }
  @media screen and (min-width: 835px) {
    .p-main__note {
      text-align: center;
      margin: 0 auto 0;
      font-size: 13px; } }
  @media screen and (max-width: 834px) {
    .p-main__note {
      text-align: right;
      padding-right: 15px;
      margin-top: 8px;
      font-size: 10px; } }

.p-campaign {
  margin-top: 40px;
  text-align: center;
  position: relative; }
  .p-campaign__bg > div {
    position: absolute;
    z-index: -1; }
  .p-campaign__bg .-bg-g01 {
    opacity: 0.8; }
    @media screen and (min-width: 835px) {
      .p-campaign__bg .-bg-g01 {
        width: 17%;
        top: 34%;
        right: 50%;
        transform: translateX(-73%) rotate(125deg); } }
    @media screen and (max-width: 834px) {
      .p-campaign__bg .-bg-g01 {
        width: 28%;
        top: 33%;
        left: 6%;
        transform: translateX(-73%) rotate(198deg); } }
  .p-campaign__bg .-bg-g02 {
    width: 25%;
    right: 0;
    transform: translateX(49%) rotate(0); }
    @media screen and (min-width: 835px) {
      .p-campaign__bg .-bg-g02 {
        top: 1%; } }
    @media screen and (max-width: 834px) {
      .p-campaign__bg .-bg-g02 {
        top: 14%; } }
  .p-campaign__bg .-bg-r01 {
    width: 30%;
    top: 0;
    left: 0;
    transform: translateX(-65%) rotate(0deg); }
  .p-campaign__intro {
    text-align: center;
    display: inline-block;
    margin: 30px auto;
    position: relative; }
    .p-campaign__intro-text {
      line-height: 2.2;
      font-weight: 500; }
      @media screen and (max-width: 834px) {
        .p-campaign__intro-text {
          font-size: 13px; } }
      .p-campaign__intro-text strong {
        font-weight: bold; }
        @media screen and (min-width: 835px) {
          .p-campaign__intro-text strong {
            font-size: 18px; } }
        @media screen and (max-width: 834px) {
          .p-campaign__intro-text strong {
            font-size: 14px; } }
      .p-campaign__intro-text .-num {
        font-family: var(--font-family-en);
        font-weight: bold;
        line-height: 1.2; }
        @media screen and (min-width: 835px) {
          .p-campaign__intro-text .-num {
            font-size: 28px; } }
        @media screen and (max-width: 834px) {
          .p-campaign__intro-text .-num {
            font-size: 24px; } }
    .p-campaign__intro-obj > div {
      position: absolute; }
    @media screen and (min-width: 835px) {
      .p-campaign__intro-obj .-object01 {
        left: -101px;
        top: 29%;
        width: 80px; } }
    @media screen and (max-width: 834px) {
      .p-campaign__intro-obj .-object01 {
        left: -31px;
        top: 10%;
        width: 41px; } }
    @media screen and (min-width: 835px) {
      .p-campaign__intro-obj .-object02 {
        right: -86px;
        top: -70px;
        width: 80px; } }
    @media screen and (max-width: 834px) {
      .p-campaign__intro-obj .-object02 {
        right: 0;
        top: -70px;
        width: 39px; } }
    @media screen and (min-width: 835px) {
      .p-campaign__intro-obj .-object03 {
        right: -164px;
        top: -24px;
        width: 74px; } }
    @media screen and (max-width: 834px) {
      .p-campaign__intro-obj .-object03 {
        right: -18px;
        top: -43px;
        width: 37px; } }
    @media screen and (min-width: 835px) {
      .p-campaign__intro-obj .-object04 {
        right: -140px;
        bottom: -66px;
        width: 100px; } }
    @media screen and (max-width: 834px) {
      .p-campaign__intro-obj .-object04 {
        right: 0;
        bottom: -55px;
        width: 57px; } }
  .p-campaign__detail {
    margin-top: 60px;
    text-align: center; }
    .p-campaign__detail-title {
      font-weight: bold;
      color: var(--color-site-main); }
      @media screen and (min-width: 835px) {
        .p-campaign__detail-title {
          font-size: 20px; } }
      @media screen and (max-width: 834px) {
        .p-campaign__detail-title {
          font-size: 18px; } }
    .p-campaign__detail-text {
      margin-top: 10px; }
      @media screen and (max-width: 834px) {
        .p-campaign__detail-text span {
          font-size: 12px; } }
    .p-campaign__detail-list {
      margin-top: 20px;
      display: flex;
      gap: 2rem; }
      @media screen and (max-width: 834px) {
        .p-campaign__detail-list {
          flex-direction: column; } }
      .p-campaign__detail-list .-item {
        display: flex;
        flex-direction: column;
        flex: 1;
        background: rgba(255, 255, 255, 0.7);
        border-radius: 15px;
        color: var(--color-text-base);
        text-align: center;
        box-shadow: 0px 2px 7px -4px rgba(0, 0, 0, 0.4); }
        @media screen and (min-width: 835px) {
          .p-campaign__detail-list .-item {
            padding: 20px 20px 30px; } }
        @media screen and (max-width: 834px) {
          .p-campaign__detail-list .-item {
            padding: 5px 20px 5px; } }
        .p-campaign__detail-list .-item::after {
          content: "";
          border-top: 1px solid var(--color-text-base);
          border-right: 1px solid var(--color-text-base);
          position: absolute;
          left: 50%;
          transform: translateX(-50%) rotate(135deg);
          transition: 0.3s; }
          @media screen and (min-width: 835px) {
            .p-campaign__detail-list .-item::after {
              width: 8px;
              height: 8px;
              bottom: 15px; } }
          @media screen and (max-width: 834px) {
            .p-campaign__detail-list .-item::after {
              content: none;
              width: 5px;
              height: 5px;
              bottom: 8px; } }
        .p-campaign__detail-list .-item .-title,
        .p-campaign__detail-list .-item .-prize,
        .p-campaign__detail-list .-item .-note,
        .p-campaign__detail-list .-item .-img,
        .p-campaign__detail-list .-item .-img img {
          transition: 0.3s; }
        .p-campaign__detail-list .-item .-title {
          display: flex;
          flex-direction: column;
          align-items: center;
          font-family: var(--font-family-jp2); }
          @media screen and (min-width: 835px) {
            .p-campaign__detail-list .-item .-title {
              font-size: 18px; } }
          @media screen and (max-width: 834px) {
            .p-campaign__detail-list .-item .-title {
              font-size: 15px; } }
          @media screen and (min-width: 835px) {
            .p-campaign__detail-list .-item .-title span {
              font-size: 14px; } }
          @media screen and (max-width: 834px) {
            .p-campaign__detail-list .-item .-title span {
              font-size: 12px; } }
          .p-campaign__detail-list .-item .-title .-prize {
            font-weight: bold;
            font-size: 16px;
            color: var(--color-site-main); }
            @media screen and (min-width: 835px) {
              .p-campaign__detail-list .-item .-title .-prize {
                margin-bottom: 10px; } }
            @media screen and (max-width: 834px) {
              .p-campaign__detail-list .-item .-title .-prize {
                margin-bottom: 1px; } }
            .p-campaign__detail-list .-item .-title .-prize strong {
              line-height: 1; }
              @media screen and (min-width: 835px) {
                .p-campaign__detail-list .-item .-title .-prize strong {
                  font-size: 52px; } }
              @media screen and (max-width: 834px) {
                .p-campaign__detail-list .-item .-title .-prize strong {
                  font-size: 46px;
                  margin-right: 3px; } }
        .p-campaign__detail-list .-item .-note {
          font-size: 12px;
          letter-spacing: 0; }
          @media screen and (min-width: 835px) {
            .p-campaign__detail-list .-item .-note {
              margin-top: 10px; } }
          @media screen and (max-width: 834px) {
            .p-campaign__detail-list .-item .-note {
              margin-top: 5px; } }
        .p-campaign__detail-list .-item .-img {
          margin-top: auto;
          padding-top: 20px;
          overflow: hidden;
          line-height: 0; }
          @media screen and (max-width: 834px) {
            .p-campaign__detail-list .-item .-img {
              width: 70%;
              margin-left: auto;
              margin-right: auto; } }
        @media screen and (min-width: 835px) {
          .p-campaign__detail-list .-item:hover {
            background-color: var(--color-site-main);
            transform: scale(1.03); }
            .p-campaign__detail-list .-item:hover .-title,
            .p-campaign__detail-list .-item:hover .-prize,
            .p-campaign__detail-list .-item:hover .-note,
            .p-campaign__detail-list .-item:hover .-img img {
              color: #fff;
              transform: scale(1.07); }
            .p-campaign__detail-list .-item:hover::after {
              border-color: #fff;
              transform: translateX(-50%) translateY(9px) rotate(135deg); } }

.p-prize {
  margin-top: 80px;
  position: relative; }
  .p-prize #prize_a {
    z-index: 1; }
  .p-prize__bg > div {
    position: absolute;
    z-index: -1; }
  @media screen and (min-width: 835px) {
    .p-prize__bg .-bg-g01 {
      width: 17%;
      top: -100px;
      left: 0;
      transform: translateX(-27%);
      opacity: 0.8; } }
  @media screen and (max-width: 834px) {
    .p-prize__bg .-bg-g01 {
      width: 22%;
      top: -32px;
      left: -9%;
      opacity: 0.8; } }
  .p-prize__bg .-bg-g02 {
    opacity: 0.8; }
    @media screen and (min-width: 835px) {
      .p-prize__bg .-bg-g02 {
        width: 20%;
        top: 700px;
        left: calc(50% + 300px); } }
    @media screen and (max-width: 834px) {
      .p-prize__bg .-bg-g02 {
        width: 20%;
        top: 800px;
        right: -5%; } }
  .p-prize__bg .-bg-g03 {
    width: 25%;
    top: 1600px;
    left: -12%; }
  .p-prize__bg .-bg-g04 {
    width: 25%;
    top: 3400px;
    right: 0;
    transform: translateX(49%) rotate(90deg); }
  .p-prize__bg .-bg-g05 {
    width: 25%;
    top: 5000px;
    left: -14%; }
  .p-prize__bg .-bg-r01 {
    opacity: 0.6; }
    @media screen and (min-width: 835px) {
      .p-prize__bg .-bg-r01 {
        width: 30%;
        top: 1065px;
        left: 11%; } }
    @media screen and (max-width: 834px) {
      .p-prize__bg .-bg-r01 {
        width: 30%;
        top: 1065px;
        left: -10%; } }
  .p-prize__bg .-bg-r02 {
    width: 30%;
    top: 2300px;
    right: 0;
    transform: translateX(60%) rotate(0deg); }
  .p-prize__bg .-bg-r03 {
    width: 30%;
    left: -17%;
    opacity: 0.8; }
    @media screen and (min-width: 835px) {
      .p-prize__bg .-bg-r03 {
        top: 3000px; } }
    @media screen and (max-width: 834px) {
      .p-prize__bg .-bg-r03 {
        top: 4000px; } }
  .p-prize__body {
    display: flex;
    flex-direction: column; }
    @media screen and (min-width: 835px) {
      .p-prize__body {
        gap: 60px; } }
    @media screen and (max-width: 834px) {
      .p-prize__body {
        gap: 20px; } }
  .p-prize__wrapper {
    margin-top: 30px;
    display: flex;
    flex-direction: column;
    gap: 60px; }
  .p-prize__contents {
    background: rgba(255, 255, 255, 0.7);
    border-radius: 20px; }
    @media screen and (min-width: 835px) {
      .p-prize__contents {
        padding: 40px 60px 60px; } }
    @media screen and (max-width: 834px) {
      .p-prize__contents {
        padding: 20px; } }
    .p-prize__contents-title {
      text-align: center;
      color: var(--color-site-main);
      font-weight: bold; }
      @media screen and (min-width: 835px) {
        .p-prize__contents-title {
          font-size: 18px; } }
      @media screen and (max-width: 834px) {
        .p-prize__contents-title {
          font-size: 16px; } }
    .p-prize__contents-header {
      text-align: center;
      font-family: var(--font-family-jp2);
      position: relative; }
      .p-prize__contents-header-illust > div {
        position: absolute;
        z-index: 1; }
      @media screen and (min-width: 835px) {
        .p-prize__contents-header-illust .-illust01 {
          width: 15%;
          top: 12%;
          left: 13%; } }
      @media screen and (max-width: 834px) {
        .p-prize__contents-header-illust .-illust01 {
          width: 20%;
          top: 12%;
          left: 0; } }
      @media screen and (min-width: 835px) {
        .p-prize__contents-header-illust .-illust02 {
          width: 17%;
          top: 10%;
          right: 13%; } }
      @media screen and (max-width: 834px) {
        .p-prize__contents-header-illust .-illust02 {
          width: 22%;
          top: 10%;
          right: 0%; } }
      .p-prize__contents-header .-prize {
        font-weight: bold;
        color: var(--color-site-main); }
        @media screen and (min-width: 835px) {
          .p-prize__contents-header .-prize {
            font-size: 28px; } }
        @media screen and (max-width: 834px) {
          .p-prize__contents-header .-prize {
            font-size: 20px; } }
        .p-prize__contents-header .-prize span {
          margin-right: 5px;
          line-height: 1; }
          @media screen and (min-width: 835px) {
            .p-prize__contents-header .-prize span {
              font-size: 84px; } }
          @media screen and (max-width: 834px) {
            .p-prize__contents-header .-prize span {
              font-size: 60px; } }
      .p-prize__contents-header .-num {
        display: inline-block;
        margin: 0 auto;
        background: var(--color-site-main);
        color: #fff;
        font-weight: bold;
        border-radius: 10px;
        letter-spacing: 1px; }
        @media screen and (min-width: 835px) {
          .p-prize__contents-header .-num {
            font-size: 20px;
            padding: 3px 20px; } }
        @media screen and (max-width: 834px) {
          .p-prize__contents-header .-num {
            font-size: 16px;
            padding: 1px 20px; } }
      .p-prize__contents-header .-title {
        margin-top: 10px;
        line-height: 1.6; }
        @media screen and (min-width: 835px) {
          .p-prize__contents-header .-title {
            font-size: 30px; } }
        @media screen and (max-width: 834px) {
          .p-prize__contents-header .-title {
            font-size: 20px; } }
        .p-prize__contents-header .-title span {
          display: block;
          margin-top: 5px; }
          @media screen and (min-width: 835px) {
            .p-prize__contents-header .-title span {
              font-size: 18px; } }
          @media screen and (max-width: 834px) {
            .p-prize__contents-header .-title span {
              font-size: 16px; } }
      .p-prize__contents-header .-period {
        margin-top: 10px;
        font-weight: 600; }
        @media screen and (max-width: 834px) {
          .p-prize__contents-header .-period {
            font-size: 13px; } }
    .p-prize__contents-desc {
      margin: 30px auto 0; }
      @media screen and (min-width: 835px) {
        .p-prize__contents-desc {
          width: 85%; } }
      @media screen and (min-width: 835px) {
        .p-prize__contents-desc p {
          font-size: 14px; } }
      @media screen and (max-width: 834px) {
        .p-prize__contents-desc p {
          font-size: 13px; } }
      .p-prize__contents-desc p strong {
        display: block; }
        @media screen and (min-width: 835px) {
          .p-prize__contents-desc p strong {
            font-size: 16px; } }
        @media screen and (max-width: 834px) {
          .p-prize__contents-desc p strong {
            font-size: 14px; } }
      .p-prize__contents-desc p + p {
        margin-top: 15px; }
      .p-prize__contents-desc .-note {
        font-size: 12px; }
    .p-prize__contents-about {
      margin: 20px auto 0; }
      @media screen and (min-width: 835px) {
        .p-prize__contents-about {
          width: 80%; } }
      .p-prize__contents-about-header {
        display: flex; }
        @media screen and (min-width: 835px) {
          .p-prize__contents-about-header {
            gap: 30px;
            align-items: flex-start; } }
        @media screen and (max-width: 834px) {
          .p-prize__contents-about-header {
            flex-direction: column-reverse;
            gap: 20px; } }
        .p-prize__contents-about-header .-img {
          flex-shrink: 0;
          border-radius: 15px;
          overflow: hidden;
          line-height: 0; }
          @media screen and (min-width: 835px) {
            .p-prize__contents-about-header .-img {
              width: 45%; } }
          @media screen and (max-width: 834px) {
            .p-prize__contents-about-header .-img {
              width: 100%; } }
        @media screen and (min-width: 835px) {
          .p-prize__contents-about-header .-text {
            font-size: 14px; } }
        @media screen and (max-width: 834px) {
          .p-prize__contents-about-header .-text {
            font-size: 13px; } }
        .p-prize__contents-about-header .-text strong {
          display: block;
          margin-top: 5px; }
      .p-prize__contents-about-body {
        margin-top: 30px;
        overflow: hidden;
        position: relative;
        z-index: 1; }
        @media screen and (min-width: 835px) {
          .p-prize__contents-about-body {
            color: #fff;
            background: url(../images/prize_b_about_bg.jpg) no-repeat;
            background-size: cover;
            padding: 40px 60px;
            border-radius: 20px;
            text-align: center; }
            .p-prize__contents-about-body::after {
              content: "";
              background: rgba(0, 0, 0, 0.6);
              width: 100%;
              height: 100%;
              position: absolute;
              left: 0;
              top: 0; } }
        .p-prize__contents-about-body-inner {
          position: relative;
          z-index: 2; }
          @media screen and (max-width: 834px) {
            .p-prize__contents-about-body-inner {
              border: 1px solid var(--color-text-base);
              border-radius: 20px;
              padding-bottom: 15px; } }
          .p-prize__contents-about-body-inner .-title {
            font-weight: bold;
            text-shadow: 0px 0px 7px rgba(0, 0, 0, 0.8);
            font-family: var(--font-family-jp2); }
            @media screen and (min-width: 835px) {
              .p-prize__contents-about-body-inner .-title {
                font-size: 22px; } }
            @media screen and (max-width: 834px) {
              .p-prize__contents-about-body-inner .-title {
                color: #fff;
                font-size: 18px;
                background: url(../images/prize_b_about_bg.jpg) no-repeat;
                background-size: cover;
                background-position: center 65%;
                padding: 40px 20px;
                border-top-left-radius: 20px;
                border-top-right-radius: 20px;
                overflow: hidden;
                position: relative;
                text-align: center; }
                .p-prize__contents-about-body-inner .-title span {
                  position: relative;
                  z-index: 2; }
                .p-prize__contents-about-body-inner .-title::before {
                  content: "";
                  background: rgba(0, 0, 0, 0.4);
                  width: 100%;
                  height: 100%;
                  position: absolute;
                  left: 0;
                  top: 0;
                  z-index: 1; } }
          .p-prize__contents-about-body-inner .-text {
            margin-top: 20px; }
            @media screen and (min-width: 835px) {
              .p-prize__contents-about-body-inner .-text {
                font-size: 14px; } }
            @media screen and (max-width: 834px) {
              .p-prize__contents-about-body-inner .-text {
                font-size: 13px;
                padding-left: 15px;
                padding-right: 15px; } }
          .p-prize__contents-about-body-inner .-link {
            margin: 30px auto 0; }
            @media screen and (min-width: 835px) {
              .p-prize__contents-about-body-inner .-link {
                width: 50%; } }
            @media screen and (max-width: 834px) {
              .p-prize__contents-about-body-inner .-link {
                width: calc(100% - 30px);
                margin: 20px auto 0; } }
            @media screen and (min-width: 835px) {
              .p-prize__contents-about-body-inner .-link a {
                background: transparent;
                color: #fff;
                border-color: #fff; }
                .p-prize__contents-about-body-inner .-link a svg {
                  fill: #fff; } }
            @media screen and (min-width: 835px) {
              .p-prize__contents-about-body-inner .-link a:hover {
                background-color: #fff;
                color: var(--color-text-base); }
                .p-prize__contents-about-body-inner .-link a:hover svg {
                  fill: var(--color-text-base); } }
    .p-prize__contents-tab {
      display: flex;
      margin-top: 30px;
      gap: 5px;
      padding: 0 5px; }
      .p-prize__contents-tab li {
        flex-grow: 1;
        flex: 1; }
        .p-prize__contents-tab li a {
          background-color: var(--color-site-main);
          color: #fff;
          opacity: 0.5;
          padding: 12px 5px;
          border-top-left-radius: 1rem;
          border-top-right-radius: 1rem;
          display: flex;
          flex-direction: column;
          text-align: center;
          align-items: center;
          gap: 5px;
          font-weight: bold; }
          .p-prize__contents-tab li a::after {
            content: "";
            display: block;
            width: 0;
            height: 0;
            border-left: 8px solid transparent;
            border-right: 8px solid transparent;
            border-top: 8px solid #fff; }
          .p-prize__contents-tab li a.is-active {
            opacity: 1; }
    .p-prize__contents-plan {
      position: relative; }
      @media screen and (min-width: 835px) {
        .p-prize__contents-plan {
          margin-top: 40px; }
          .p-prize__contents-plan .js-tab-item {
            display: block; } }
      @media screen and (max-width: 834px) {
        .p-prize__contents-plan {
          padding: 15px 15px 15px;
          width: calc(100% + 20px);
          margin-left: -10px;
          border: 2px solid var(--color-site-main);
          border-radius: 8px; }
          .p-prize__contents-plan .js-tab-item {
            display: none; }
          .p-prize__contents-plan .js-tab-item.is-active {
            display: block; } }
      .p-prize__contents-plan .-title {
        background: var(--color-site-main);
        text-align: center;
        font-weight: bold;
        color: #fff;
        border-radius: 50px;
        padding: 5px; }
        @media screen and (min-width: 835px) {
          .p-prize__contents-plan .-title {
            font-size: 18px; } }
        @media screen and (max-width: 834px) {
          .p-prize__contents-plan .-title {
            display: none; } }
      .p-prize__contents-plan .-detail {
        display: flex; }
        @media screen and (min-width: 835px) {
          .p-prize__contents-plan .-detail {
            gap: 30px;
            margin-top: 30px; } }
        @media screen and (max-width: 834px) {
          .p-prize__contents-plan .-detail {
            flex-direction: column;
            gap: 20px;
            margin-top: 0; } }
        .p-prize__contents-plan .-detail .-img {
          flex-shrink: 0; }
          @media screen and (min-width: 835px) {
            .p-prize__contents-plan .-detail .-img {
              width: 40%; } }
          @media screen and (max-width: 834px) {
            .p-prize__contents-plan .-detail .-img {
              width: 100%; } }
        .p-prize__contents-plan .-detail .-point {
          flex-grow: 1; }
          .p-prize__contents-plan .-detail .-point ul {
            display: flex;
            flex-direction: column; }
            @media screen and (min-width: 835px) {
              .p-prize__contents-plan .-detail .-point ul {
                gap: 10px; } }
            @media screen and (max-width: 834px) {
              .p-prize__contents-plan .-detail .-point ul {
                gap: 15px; } }
            .p-prize__contents-plan .-detail .-point ul li {
              font-weight: 600; }
              .p-prize__contents-plan .-detail .-point ul li span {
                font-weight: normal; }
                @media screen and (min-width: 835px) {
                  .p-prize__contents-plan .-detail .-point ul li span {
                    font-size: 14px; } }
                @media screen and (max-width: 834px) {
                  .p-prize__contents-plan .-detail .-point ul li span {
                    font-size: 12px; } }
              .p-prize__contents-plan .-detail .-point ul li .-note li {
                font-weight: normal; }
      .p-prize__contents-plan .-benefit {
        padding: 0; }
        @media screen and (min-width: 835px) {
          .p-prize__contents-plan .-benefit {
            margin-top: 30px;
            width: 100%; } }
        @media screen and (max-width: 834px) {
          .p-prize__contents-plan .-benefit {
            margin-top: 20px;
            width: 100%; } }
        .p-prize__contents-plan .-benefit .-trg {
          background-color: #fff;
          border: 1px solid var(--color-text-base);
          display: flex;
          align-items: center;
          justify-content: center;
          gap: 15px;
          position: relative;
          cursor: pointer;
          transition: 0.3s;
          padding: 0;
          color: var(--color-text-base);
          border-radius: 10px;
          font-weight: bold;
          /* &.-open {
            color: var(--color-site-main);
            &::before,
            &::after {
              background: var(--color-site-main);
            }
            & > span {
              &::before,
              &::after {
                border-color: var(--color-site-main);
              }
              &::before {
                transform: translateY(-50%) rotate(0);
              }
            }
          } */ }
          @media screen and (min-width: 835px) {
            .p-prize__contents-plan .-benefit .-trg {
              padding: 20px; }
              .p-prize__contents-plan .-benefit .-trg::before, .p-prize__contents-plan .-benefit .-trg::after {
                height: 1px;
                flex-grow: 1;
                background: var(--color-text-base);
                transition: 0.3s; } }
          @media screen and (max-width: 834px) {
            .p-prize__contents-plan .-benefit .-trg {
              padding: 15px;
              text-align: center; } }
          .p-prize__contents-plan .-benefit .-trg > span {
            position: relative;
            display: block;
            text-align: center;
            width: 100%; }
            @media screen and (max-width: 834px) {
              .p-prize__contents-plan .-benefit .-trg > span {
                width: 100%;
                justify-content: center; } }
            .p-prize__contents-plan .-benefit .-trg > span::before, .p-prize__contents-plan .-benefit .-trg > span::after {
              content: "";
              border-top: 2px solid var(--color-text-base);
              display: block;
              width: 12px;
              height: 1px;
              background: #000;
              transform: translateY(-50%);
              transition: 0.2s;
              position: absolute;
              top: 50%; }
              @media screen and (min-width: 835px) {
                .p-prize__contents-plan .-benefit .-trg > span::before, .p-prize__contents-plan .-benefit .-trg > span::after {
                  right: 0; } }
              @media screen and (max-width: 834px) {
                .p-prize__contents-plan .-benefit .-trg > span::before, .p-prize__contents-plan .-benefit .-trg > span::after {
                  right: -5px; } }
            .p-prize__contents-plan .-benefit .-trg > span::before {
              transform: translateY(-50%) rotate(90deg);
              transition: 0.2s; }
            .p-prize__contents-plan .-benefit .-trg > span::after {
              transform: translateY(-50%) rotate(0);
              transition: 0.2s; }
          @media screen and (min-width: 835px) {
            .p-prize__contents-plan .-benefit .-trg:hover {
              background-color: var(--color-text-base);
              color: #fff; }
              .p-prize__contents-plan .-benefit .-trg:hover > span::before, .p-prize__contents-plan .-benefit .-trg:hover > span::after {
                border-top: 2px solid #fff; }
              .p-prize__contents-plan .-benefit .-trg:hover > span::before {
                transform: translateY(-50%) rotate(180deg); }
              .p-prize__contents-plan .-benefit .-trg:hover > span::after {
                transform: translateY(-50%) rotate(90deg); } }
        .p-prize__contents-plan .-benefit .-list {
          display: grid; }
          @media screen and (min-width: 835px) {
            .p-prize__contents-plan .-benefit .-list {
              margin-top: 20px;
              grid-template-columns: repeat(3, 1fr);
              gap: 30px; } }
          @media screen and (max-width: 834px) {
            .p-prize__contents-plan .-benefit .-list {
              margin-top: 30px;
              grid-template-columns: repeat(1, 1fr);
              gap: 30px; } }
          .p-prize__contents-plan .-benefit .-list .-hotel {
            display: flex;
            flex-direction: column;
            text-align: center; }
            .p-prize__contents-plan .-benefit .-list .-hotel .-name {
              display: flex;
              justify-content: center;
              max-height: 65px;
              line-height: 1.6;
              font-weight: bold; }
            .p-prize__contents-plan .-benefit .-list .-hotel .-img {
              line-height: 0;
              margin-top: auto; }
              @media screen and (min-width: 835px) {
                .p-prize__contents-plan .-benefit .-list .-hotel .-img {
                  padding-top: 10px; } }
              @media screen and (max-width: 834px) {
                .p-prize__contents-plan .-benefit .-list .-hotel .-img {
                  padding: 10px 25px 0; } }
            .p-prize__contents-plan .-benefit .-list .-hotel .-place {
              margin-top: 10px;
              font-size: 13px;
              line-height: 1.6; }
              @media screen and (min-width: 835px) {
                .p-prize__contents-plan .-benefit .-list .-hotel .-place {
                  height: 60px; } }
            @media screen and (min-width: 835px) {
              .p-prize__contents-plan .-benefit .-list .-hotel .-link {
                margin-top: 5px; } }
            @media screen and (max-width: 834px) {
              .p-prize__contents-plan .-benefit .-list .-hotel .-link {
                margin-top: 10px; } }
        .p-prize__contents-plan .-benefit .-note {
          margin-top: 20px;
          font-size: 12px;
          text-align: center; }
    .p-prize__contents-hotel .-list {
      display: grid; }
      @media screen and (min-width: 835px) {
        .p-prize__contents-hotel .-list {
          margin-top: 20px;
          grid-template-columns: repeat(2, 1fr);
          gap: 30px; } }
      @media screen and (max-width: 834px) {
        .p-prize__contents-hotel .-list {
          margin-top: 5px;
          grid-template-columns: repeat(1, 1fr);
          gap: 25px; } }
      .p-prize__contents-hotel .-list .-hotel {
        display: flex;
        flex-direction: column;
        text-align: center; }
        .p-prize__contents-hotel .-list .-hotel .-name {
          display: flex;
          justify-content: center;
          max-height: 65px;
          line-height: 1.6;
          font-weight: bold; }
        .p-prize__contents-hotel .-list .-hotel .-img {
          line-height: 0; }
          @media screen and (min-width: 835px) {
            .p-prize__contents-hotel .-list .-hotel .-img {
              padding-top: 10px; } }
          @media screen and (max-width: 834px) {
            .p-prize__contents-hotel .-list .-hotel .-img {
              padding: 10px 25px 0; } }
        .p-prize__contents-hotel .-list .-hotel .-place {
          margin-top: 10px;
          font-size: 13px;
          line-height: 1.6; }
          @media screen and (min-width: 835px) {
            .p-prize__contents-hotel .-list .-hotel .-place {
              height: 50px; } }
        .p-prize__contents-hotel .-list .-hotel .-remarks {
          font-size: 12px;
          text-align: left; }
        @media screen and (min-width: 835px) {
          .p-prize__contents-hotel .-list .-hotel .-link {
            margin-top: auto;
            padding-top: 10px; } }
        @media screen and (max-width: 834px) {
          .p-prize__contents-hotel .-list .-hotel .-link {
            margin-top: 10px; } }
    .p-prize__contents-hotel .-note {
      text-align: right;
      font-size: 12px; }
      @media screen and (min-width: 835px) {
        .p-prize__contents-hotel .-note {
          margin-top: 30px; } }
      @media screen and (max-width: 834px) {
        .p-prize__contents-hotel .-note {
          margin-top: 50px !important; } }
    @media screen and (min-width: 835px) {
      .p-prize__contents-comment {
        margin-top: 60px; } }
    @media screen and (max-width: 834px) {
      .p-prize__contents-comment {
        margin-top: 40px; } }
    .p-prize__contents-comment-wrapper {
      display: flex;
      margin-top: 15px; }
      @media screen and (min-width: 835px) {
        .p-prize__contents-comment-wrapper {
          gap: 30px; } }
      @media screen and (max-width: 834px) {
        .p-prize__contents-comment-wrapper {
          flex-direction: column-reverse;
          align-items: center;
          gap: 20px; } }
      .p-prize__contents-comment-wrapper .-img {
        overflow: hidden;
        background-color: var(--color-site-light);
        width: 100px;
        height: 100px;
        border-radius: 50%;
        flex-shrink: 0;
        padding: 10px; }
      .p-prize__contents-comment-wrapper .-detail {
        position: relative;
        background: var(--color-site-light);
        border-radius: 12px;
        padding: 16px 20px; }
        @media screen and (min-width: 835px) {
          .p-prize__contents-comment-wrapper .-detail {
            font-size: 13px;
            line-height: 1.7; } }
        @media screen and (max-width: 834px) {
          .p-prize__contents-comment-wrapper .-detail {
            font-size: 12px;
            line-height: 1.6; } }
        .p-prize__contents-comment-wrapper .-detail::before {
          content: "";
          position: absolute;
          z-index: 1; }
          @media screen and (min-width: 835px) {
            .p-prize__contents-comment-wrapper .-detail::before {
              bottom: 0;
              left: -20px;
              border-width: 20px;
              border-style: solid;
              border-color: var(--color-site-light) var(--color-site-light) transparent transparent; } }
          @media screen and (max-width: 834px) {
            .p-prize__contents-comment-wrapper .-detail::before {
              left: 50%;
              bottom: -30px;
              border-width: 20px;
              border-style: solid;
              border-color: var(--color-site-light) transparent transparent transparent;
              transform: translateX(-50%); } }
    @media screen and (min-width: 835px) {
      .p-prize__contents-flow {
        margin-top: 60px; }
        .p-prize__contents-flow .c-popup.mfp-hide {
          display: block !important;
          padding: 0 !important;
          border-radius: 0 !important;
          overflow: hidden;
          background: transparent !important; }
          .p-prize__contents-flow .c-popup.mfp-hide .c-popup__header {
            display: none !important; }
          .p-prize__contents-flow .c-popup.mfp-hide .c-popup__body {
            padding: 0 !important;
            overflow: hidden;
            height: auto !important; }
            .p-prize__contents-flow .c-popup.mfp-hide .c-popup__body p:not(:first-child) {
              margin-top: 0 !important; } }
    @media screen and (max-width: 834px) {
      .p-prize__contents-flow {
        margin-top: 30px; } }
    @media screen and (min-width: 835px) {
      .p-prize__contents-flow-btn {
        display: none; } }
    @media screen and (max-width: 834px) {
      .p-prize__contents-flow-btn {
        padding: 15px 15px 15px 5px;
        border-radius: 10px;
        border: 1px solid var(--color-text-base);
        display: flex;
        flex-direction: column;
        text-align: center;
        align-items: center;
        gap: 5px;
        font-weight: bold;
        color: var(--color-text-base) !important;
        background-color: #fff;
        position: relative;
        font-size: 13px; }
        .p-prize__contents-flow-btn::before, .p-prize__contents-flow-btn::after {
          content: "";
          border-top: 2px solid var(--color-text-base);
          display: block;
          width: 12px;
          height: 1px;
          background: #000;
          transform: translateY(-50%);
          transition: 0.2s;
          position: absolute;
          top: 50%; } }
    @media screen and (max-width: 834px) and (max-width: 834px) {
      .p-prize__contents-flow-btn::before, .p-prize__contents-flow-btn::after {
        right: 15px; } }
    @media screen and (max-width: 834px) {
        .p-prize__contents-flow-btn::before {
          transform: translateY(-50%) rotate(90deg); } }
    @media screen and (max-width: 834px) {
      .p-prize__contents-flow-title {
        display: none; } }
    .p-prize__contents-flow-wrapper {
      display: flex;
      justify-content: center; }
      @media screen and (min-width: 835px) {
        .p-prize__contents-flow-wrapper {
          gap: 20px;
          margin-top: 20px; } }
      @media screen and (max-width: 834px) {
        .p-prize__contents-flow-wrapper {
          margin-top: 30px;
          flex-direction: column;
          gap: 50px; } }
      .p-prize__contents-flow-wrapper .-card {
        display: flex;
        flex-direction: column;
        flex: 1;
        flex-shrink: 0;
        position: relative; }
        @media screen and (min-width: 835px) {
          .p-prize__contents-flow-wrapper .-card {
            max-width: 200px; } }
        .p-prize__contents-flow-wrapper .-card:not(:last-child)::after {
          content: "";
          position: absolute;
          width: 0;
          height: 0; }
          @media screen and (min-width: 835px) {
            .p-prize__contents-flow-wrapper .-card:not(:last-child)::after {
              top: 57px;
              right: -26px;
              border-width: 10px;
              border-style: solid;
              border-color: transparent transparent transparent var(--color-site-main); } }
          @media screen and (max-width: 834px) {
            .p-prize__contents-flow-wrapper .-card:not(:last-child)::after {
              bottom: -40px;
              left: 50%;
              transform: translateX(-50%);
              border-width: 10px;
              border-style: solid;
              border-color: var(--color-site-main) transparent transparent transparent; } }
        .p-prize__contents-flow-wrapper .-card .-step {
          text-align: center;
          font-weight: bold;
          white-space: nowrap; }
          @media screen and (min-width: 835px) {
            .p-prize__contents-flow-wrapper .-card .-step {
              font-size: 13px; } }
          @media screen and (max-width: 834px) {
            .p-prize__contents-flow-wrapper .-card .-step {
              font-size: 16px; } }
        .p-prize__contents-flow-wrapper .-card .-schedule {
          border: 1px solid var(--color-site-main);
          display: flex;
          color: var(--color-site-main);
          font-weight: bold;
          text-align: center; }
          @media screen and (min-width: 835px) {
            .p-prize__contents-flow-wrapper .-card .-schedule {
              padding: 5px 10px;
              height: 80px;
              font-size: 14px;
              margin-top: 5px;
              flex-direction: column;
              justify-content: center;
              align-items: center;
              border-radius: 10px; } }
          @media screen and (max-width: 834px) {
            .p-prize__contents-flow-wrapper .-card .-schedule {
              padding: 5px;
              margin: 10px auto 0;
              font-size: 14px;
              justify-content: center;
              align-items: center;
              gap: 10px;
              border-radius: 5px;
              width: 100%; } }
          .p-prize__contents-flow-wrapper .-card .-schedule p {
            display: flex; }
            @media screen and (min-width: 835px) {
              .p-prize__contents-flow-wrapper .-card .-schedule p {
                flex-direction: column;
                align-items: center; } }
            @media screen and (max-width: 834px) {
              .p-prize__contents-flow-wrapper .-card .-schedule p {
                justify-content: center;
                align-items: center;
                gap: 10px; } }
            .p-prize__contents-flow-wrapper .-card .-schedule p:not(:first-child)::before {
              content: "";
              background-color: var(--color-site-main);
              display: block; }
              @media screen and (min-width: 835px) {
                .p-prize__contents-flow-wrapper .-card .-schedule p:not(:first-child)::before {
                  width: 1px;
                  height: 10px; } }
              @media screen and (max-width: 834px) {
                .p-prize__contents-flow-wrapper .-card .-schedule p:not(:first-child)::before {
                  width: 10px;
                  height: 1px; } }
        .p-prize__contents-flow-wrapper .-card .-img {
          margin: 15px auto 0; }
          @media screen and (min-width: 835px) {
            .p-prize__contents-flow-wrapper .-card .-img {
              width: 60%; } }
          @media screen and (max-width: 834px) {
            .p-prize__contents-flow-wrapper .-card .-img {
              width: 40%; } }
        .p-prize__contents-flow-wrapper .-card .-text {
          font-size: 12px;
          text-align: center; }
    .p-prize__contents-flow-note {
      margin-top: 20px; }
      @media screen and (min-width: 835px) {
        .p-prize__contents-flow-note {
          font-size: 12px; } }
      @media screen and (max-width: 834px) {
        .p-prize__contents-flow-note {
          font-size: 12px; } }
    @media screen and (min-width: 835px) {
      .p-prize__contents-btn {
        margin-top: 40px; } }
    @media screen and (max-width: 834px) {
      .p-prize__contents-btn {
        margin-top: 25px; } }
    .p-prize__contents-btn a {
      background-color: var(--color-site-sub);
      border: 1px solid var(--color-site-sub);
      color: #fff;
      border-radius: 15px;
      text-align: center;
      padding: 15px;
      display: block;
      font-weight: bold;
      position: relative;
      transition: 0.3s; }
      .p-prize__contents-btn a::before, .p-prize__contents-btn a::after {
        content: "";
        border-top: 2px solid #fff;
        content: "";
        display: block;
        width: 12px;
        height: 1px;
        position: absolute;
        top: 50%;
        right: 15px;
        transform: translate(-50%, -50%);
        transition: 0.2s; }
      .p-prize__contents-btn a::before {
        transform: translate(-50%, -50%) rotate(90deg);
        transition: 0.2s; }
      .p-prize__contents-btn a::after {
        transform: translate(-50%, -50%) rotate(0);
        transition: 0.2s; }
      .p-prize__contents-btn a:hover {
        background-color: #fff;
        color: var(--color-site-sub); }
        .p-prize__contents-btn a:hover::before, .p-prize__contents-btn a:hover::after {
          border-top: 2px solid var(--color-site-light); }
        .p-prize__contents-btn a:hover::before {
          transform: translate(-50%, -50%) rotate(180deg); }
        .p-prize__contents-btn a:hover::after {
          transform: translate(-50%, -50%) rotate(90deg); }
    .p-prize__contents-brand {
      margin-top: 35px; }
      .p-prize__contents-brand .-title {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 25px;
        position: relative;
        font-weight: bold;
        font-family: var(--font-family-jp2); }
        .p-prize__contents-brand .-title::before, .p-prize__contents-brand .-title::after {
          content: "";
          height: 1px;
          flex-grow: 1;
          background: var(--color-text-base);
          transition: 0.3s; }
      .p-prize__contents-brand .-wrapper {
        background-color: #fff;
        margin-top: 20px; }
        @media screen and (min-width: 835px) {
          .p-prize__contents-brand .-wrapper {
            padding: 25px; } }
        @media screen and (max-width: 834px) {
          .p-prize__contents-brand .-wrapper {
            padding: 20px 0 20px; } }
        .p-prize__contents-brand .-wrapper .-list {
          display: grid;
          grid-template-columns: repeat(3, 1fr);
          margin: 0 auto; }
          @media screen and (min-width: 835px) {
            .p-prize__contents-brand .-wrapper .-list {
              width: 85%;
              gap: 30px; } }
          @media screen and (max-width: 834px) {
            .p-prize__contents-brand .-wrapper .-list {
              width: 100%;
              gap: 0; } }
        @media screen and (max-width: 834px) {
          .p-prize__contents-brand .-wrapper .u-list {
            padding: 0 20px; } }
    @media screen and (min-width: 835px) {
      .p-prize__contents.-prize-b .-illust01 {
        width: 12%;
        top: 20%;
        left: 11%; } }
    @media screen and (max-width: 834px) {
      .p-prize__contents.-prize-b .-illust01 {
        width: 16%;
        top: 18%;
        left: 5%; } }
    @media screen and (min-width: 835px) {
      .p-prize__contents.-prize-b .-illust02 {
        width: 15%;
        top: 36%;
        right: 11%; } }
    @media screen and (max-width: 834px) {
      .p-prize__contents.-prize-b .-illust02 {
        width: 20%;
        top: 21%;
        right: 5%; } }
    .p-prize__contents.-prize-b .p-prize__contents-flow-wrapper {
      gap: 40px; }
      .p-prize__contents.-prize-b .p-prize__contents-flow-wrapper .-card:not(:last-child)::after {
        right: -35px; }
    @media screen and (min-width: 835px) {
      .p-prize__contents.-prize-c .-illust01 {
        width: 12%;
        top: 4%;
        left: 23%; } }
    @media screen and (max-width: 834px) {
      .p-prize__contents.-prize-c .-illust01 {
        width: 19%;
        top: 4%;
        left: 7%; } }
    @media screen and (min-width: 835px) {
      .p-prize__contents.-prize-c .-illust02 {
        width: 8%;
        top: 10%;
        right: 26%; } }
    @media screen and (max-width: 834px) {
      .p-prize__contents.-prize-c .-illust02 {
        width: 14%;
        top: 11%;
        right: 9%; } }
    .p-prize__contents.-prize-c .p-prize__contents-desc {
      width: 90%; }
    .p-prize__contents.-prize-c .p-prize__contents-flow-wrapper {
      gap: 40px; }
      .p-prize__contents.-prize-c .p-prize__contents-flow-wrapper .-card:not(:last-child)::after {
        right: -35px; }

.p-overview {
  position: relative; }
  @media screen and (min-width: 835px) {
    .p-overview {
      margin: 100px 0 0; } }
  @media screen and (max-width: 834px) {
    .p-overview {
      margin: 50px 0; } }
  .p-overview__bg > div {
    position: absolute;
    z-index: -1; }
  .p-overview__bg .-bg-g01 {
    width: 17%;
    top: 600px;
    left: 0;
    transform: translateX(-35%) rotate(45deg);
    opacity: 0.8; }
  .p-overview__bg .-bg-g02 {
    width: 20%;
    top: 1400px;
    right: -10%;
    transform: rotate(284deg);
    opacity: 0.8; }
  .p-overview__bg .-bg-r01 {
    width: 30%;
    top: 36px;
    right: -20%;
    opacity: 0.6; }
  .p-overview__contents {
    margin: 60px auto 0; }
    @media screen and (min-width: 835px) {
      .p-overview__contents {
        width: 700px; } }
  .p-overview__box {
    text-align: center; }
  .p-overview__period-text {
    font-weight: bold;
    text-align: center;
    font-family: var(--font-family-en); }
    @media screen and (min-width: 835px) {
      .p-overview__period-text {
        font-size: 28px; } }
    @media screen and (max-width: 834px) {
      .p-overview__period-text {
        font-size: 22px; } }
    @media screen and (min-width: 835px) {
      .p-overview__period-text small {
        font-size: 26px; } }
    @media screen and (max-width: 834px) {
      .p-overview__period-text small {
        font-size: 18px; } }
  .p-overview__result-text {
    text-align: center;
    font-family: var(--font-family-en); }
    @media screen and (min-width: 835px) {
      .p-overview__result-text {
        font-size: 28px;
        font-weight: bold; } }
    @media screen and (max-width: 834px) {
      .p-overview__result-text {
        font-size: 16px; } }
    .p-overview__result-text strong {
      font-weight: bold; }
      @media screen and (max-width: 834px) {
        .p-overview__result-text strong {
          font-size: 22px; } }
    .p-overview__result-text span {
      font-weight: bold; }
      @media screen and (min-width: 835px) {
        .p-overview__result-text span {
          font-size: 20px; } }
      @media screen and (max-width: 834px) {
        .p-overview__result-text span {
          font-size: 18px; } }
    .p-overview__result-text-note.u-list.-note {
      margin-bottom: 20px;
      font-size: 14px; }
    .p-overview__result-text:not(:first-of-type) {
      margin-top: 10px; }
  @media screen and (max-width: 834px) {
    .p-overview__result .u-list {
      text-align: left; } }
  @media screen and (max-width: 834px) {
    .p-overview__qualification .u-list {
      text-align: left; } }
  .p-overview__apply {
    text-align: left; }
    @media screen and (min-width: 835px) {
      .p-overview__apply-text {
        font-size: 14px; } }
    @media screen and (max-width: 834px) {
      .p-overview__apply-text {
        font-size: 12px; } }

.p-faq {
  position: relative; }
  @media screen and (min-width: 835px) {
    .p-faq {
      margin-top: 120px; } }
  @media screen and (max-width: 834px) {
    .p-faq {
      margin-top: 60px; } }
  .p-faq__bg > div {
    position: absolute;
    z-index: -1; }
  .p-faq__bg .-bg-r01 {
    width: 30%;
    top: 650px;
    left: -14%;
    opacity: 0.8; }
  .p-faq__header {
    text-align: center; }
  .p-faq__list {
    border-top: 1px solid var(--color-site-light); }
    @media screen and (min-width: 835px) {
      .p-faq__list {
        margin-top: 40px; } }
    @media screen and (max-width: 834px) {
      .p-faq__list {
        margin-top: 25px; } }
    .p-faq__list-note {
      margin-top: 5px; }
      @media screen and (min-width: 835px) {
        .p-faq__list-note {
          font-size: 12px; } }
      @media screen and (max-width: 834px) {
        .p-faq__list-note {
          font-size: 12px; } }
      .p-faq__list-note li {
        text-indent: -1em;
        padding-left: 1em;
        margin-bottom: 5px; }
        .p-faq__list-note li::before {
          content: "※"; }
  .p-faq__item {
    position: relative;
    border-bottom: 1px solid var(--color-site-light); }
    .p-faq__item-q {
      position: relative;
      transition: 0.3s; }
      @media screen and (min-width: 835px) {
        .p-faq__item-q {
          padding: 25px 20px; } }
      @media screen and (max-width: 834px) {
        .p-faq__item-q {
          padding: 10px 5px;
          min-height: 65px;
          display: flex;
          align-items: center; } }
      .p-faq__item-q p {
        font-weight: bold;
        display: flex;
        align-items: flex-start;
        gap: 20px;
        padding-right: 40px;
        transition: 0.3s; }
        @media screen and (min-width: 835px) {
          .p-faq__item-q p {
            font-size: 18px; } }
        @media screen and (max-width: 834px) {
          .p-faq__item-q p {
            font-size: 13px; } }
        .p-faq__item-q p::before {
          content: "Q";
          color: var(--color-site-main); }
          @media screen and (max-width: 834px) {
            .p-faq__item-q p::before {
              font-size: 14px; } }
      .p-faq__item-q.-open {
        background-color: rgba(255, 255, 255, 0.5); }
        .p-faq__item-q.-open p {
          color: var(--color-site-main); }
      @media screen and (min-width: 835px) {
        .p-faq__item-q:hover p {
          color: var(--color-site-main); } }
      .p-faq__item-q::before, .p-faq__item-q::after {
        content: "";
        border-top: 2px solid var(--color-site-main);
        content: "";
        display: block;
        width: 12px;
        height: 1px;
        background: #000;
        position: absolute;
        top: 50%;
        right: 15px;
        transform: translate(-50%, -50%);
        transition: 0.2s; }
      .p-faq__item-q::before {
        transform: translate(-50%, -50%) rotate(90deg);
        transition: 0.2s; }
      .p-faq__item-q::after {
        transform: translate(-50%, -50%) rotate(0);
        transition: 0.2s; }
      .p-faq__item-q.-open::before {
        transform: translate(-50%, -50%) rotate(0); }
    .p-faq__item-a {
      background-color: rgba(255, 255, 255, 0.5);
      display: flex;
      gap: 20px; }
      @media screen and (min-width: 835px) {
        .p-faq__item-a {
          padding: 0 20px 20px; } }
      @media screen and (max-width: 834px) {
        .p-faq__item-a {
          padding: 0 5px 20px; } }
      .p-faq__item-a::before {
        content: "A";
        font-weight: bold;
        color: var(--color-site-sub);
        font-size: 18px;
        flex-shrink: 0; }
        @media screen and (max-width: 834px) {
          .p-faq__item-a::before {
            font-size: 15px; } }
      @media screen and (min-width: 835px) {
        .p-faq__item-a p {
          font-size: 15px; } }
      @media screen and (max-width: 834px) {
        .p-faq__item-a p {
          font-size: 13px; } }
      .p-faq__item-a p + p {
        margin-top: 5px; }

.p-contact {
  position: relative;
  text-align: center;
  background-color: var(--color-site-main);
  color: #fff; }
  @media screen and (min-width: 835px) {
    .p-contact {
      margin-top: 160px; } }
  @media screen and (max-width: 834px) {
    .p-contact {
      margin-top: 80px; } }
  @media screen and (min-width: 835px) {
    .p-contact__inner {
      padding: 60px 0 80px; } }
  @media screen and (max-width: 834px) {
    .p-contact__inner {
      padding: 50px 0 50px; } }
  .p-contact__header {
    text-align: center; }
  .p-contact__body {
    border: 1px solid #fff;
    border-radius: 10px; }
    @media screen and (min-width: 835px) {
      .p-contact__body {
        width: 80%;
        margin: 40px auto 0;
        padding: 0 20px 30px; } }
    @media screen and (max-width: 834px) {
      .p-contact__body {
        margin-top: 40px;
        padding: 0 20px 20px; } }
    .p-contact__body-title {
      text-align: center; }
      @media screen and (min-width: 835px) {
        .p-contact__body-title {
          font-size: 20px;
          padding: 0;
          margin-top: -20px; } }
      @media screen and (max-width: 834px) {
        .p-contact__body-title {
          font-size: 15px;
          padding: 0;
          margin-top: -1em; } }
      .p-contact__body-title span {
        background: var(--color-site-main);
        padding: 0 20px; }
    @media screen and (min-width: 835px) {
      .p-contact__body-detail {
        padding: 0; } }
    @media screen and (max-width: 834px) {
      .p-contact__body-detail {
        padding: 0; } }
    .p-contact__body-detail strong {
      font-weight: bold; }
      @media screen and (min-width: 835px) {
        .p-contact__body-detail strong {
          font-size: 18px; } }
      @media screen and (max-width: 834px) {
        .p-contact__body-detail strong {
          font-size: 16px; } }
    .p-contact__body-mail {
      display: flex;
      justify-content: center;
      align-items: center; }
      .p-contact__body-mail img {
        margin-right: 10px;
        padding-top: 8px; }
        @media screen and (min-width: 835px) {
          .p-contact__body-mail img {
            width: 30px; } }
        @media screen and (max-width: 834px) {
          .p-contact__body-mail img {
            width: 20px; } }
      .p-contact__body-mail a {
        font-weight: 400;
        font-family: var(--font-family-en);
        color: var(--color-text-base); }
        @media screen and (min-width: 835px) {
          .p-contact__body-mail a {
            font-size: 28px; } }
        @media screen and (max-width: 834px) {
          .p-contact__body-mail a {
            font-size: 22px; } }
    @media screen and (min-width: 835px) {
      .p-contact__body-tel {
        margin-top: 10px; } }
    @media screen and (max-width: 834px) {
      .p-contact__body-tel {
        margin-top: 30px; } }
    .p-contact__body-tel p {
      font-weight: bold;
      font-size: 18px; }
    .p-contact__body-tel-inner {
      display: flex;
      justify-content: center;
      align-items: center; }
      .p-contact__body-tel-inner img {
        margin-right: 10px; }
        @media screen and (min-width: 835px) {
          .p-contact__body-tel-inner img {
            width: 22px; } }
        @media screen and (max-width: 834px) {
          .p-contact__body-tel-inner img {
            width: 16px; } }
      .p-contact__body-tel-inner a {
        font-weight: 500;
        font-family: var(--font-family-en);
        color: #fff;
        line-height: 1.2; }
        @media screen and (min-width: 835px) {
          .p-contact__body-tel-inner a {
            font-size: 36px; } }
        @media screen and (max-width: 834px) {
          .p-contact__body-tel-inner a {
            font-size: 30px; } }
      .p-contact__body-tel-inner svg {
        width: 22px;
        height: 30px;
        fill: #fff;
        margin-right: 10px; }
    .p-contact__body-entry {
      text-align: center;
      margin-top: 15px; }
      .p-contact__body-entry a {
        margin: 10px auto 0;
        max-width: 400px;
        background: #fff;
        color: var(--color-text-base);
        font-weight: bold;
        text-align: center;
        border-radius: 10px;
        border: 1px solid #fff;
        position: relative;
        gap: 10px; }
        @media screen and (min-width: 835px) {
          .p-contact__body-entry a {
            width: 70%;
            font-size: 16px;
            padding: 10px 0;
            display: flex;
            justify-content: center;
            align-items: center; } }
        @media screen and (max-width: 834px) {
          .p-contact__body-entry a {
            width: 100%;
            font-size: 14px;
            padding: 10px 20px;
            display: inline-block; } }
        .p-contact__body-entry a img,
        .p-contact__body-entry a svg {
          width: 10px;
          height: 10px;
          transition: 0.3s; }
        .p-contact__body-entry a svg {
          fill: var(--color-text-base); }
        @media screen and (min-width: 835px) {
          .p-contact__body-entry a:hover {
            background-color: var(--color-site-main);
            color: #fff; }
            .p-contact__body-entry a:hover img,
            .p-contact__body-entry a:hover svg {
              transform: translateX(5px);
              fill: #fff; } }
    .p-contact__body p {
      font-size: 14px;
      margin-top: 15px; }
      @media screen and (max-width: 834px) {
        .p-contact__body p {
          font-size: 12px; } }
    .p-contact__body-note {
      text-align-last: left;
      margin-top: 10px; }
      .p-contact__body-note li {
        text-indent: -1em;
        padding-left: 1em;
        margin-bottom: 5px;
        font-size: 14px; }
        @media screen and (max-width: 834px) {
          .p-contact__body-note li {
            font-size: 12px; } }
        .p-contact__body-note li::before {
          content: "※"; }
        .p-contact__body-note li span {
          display: block;
          font-size: 13px;
          margin-top: 10px; }
          @media screen and (max-width: 834px) {
            .p-contact__body-note li span {
              font-size: 12px; } }

.is-end .-open,
.is-end .l-footer {
  display: none; }
.is-end .end__main {
  font-weight: bold;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 9999;
  width: 100%;
  display: flex;
  justify-content: center; }
  @media screen and (min-width: 835px) {
    .is-end .end__main {
      height: 120%;
      padding-top: 350px; } }
  @media screen and (max-width: 834px) {
    .is-end .end__main {
      align-items: center;
      height: 100%; } }
  .is-end .end__main p {
    text-align: center;
    text-shadow: 0px 0px 4px #ccc;
    position: relative;
    z-index: 2; }
    @media screen and (min-width: 835px) {
      .is-end .end__main p {
        font-size: 52px; } }
    @media screen and (max-width: 834px) {
      .is-end .end__main p {
        font-size: 24px; } }
  .is-end .end__main::before {
    content: "";
    background: rgba(255, 255, 255, 0.8);
    width: 100%;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    height: 100%; }
.is-end .p-main__schedule-date {
  position: relative; }
  .is-end .p-main__schedule-date::after {
    content: "";
    display: block;
    width: 100%;
    height: 5px;
    background: #c00;
    position: absolute;
    left: 0%;
    top: 50%; }
.is-end .end__main-schedule {
  text-align: center;
  margin-top: 10px;
  font-weight: bold;
  color: #c00; }
  @media screen and (min-width: 835px) {
    .is-end .end__main-schedule {
      font-size: 24px; } }
  @media screen and (max-width: 834px) {
    .is-end .end__main-schedule {
      font-size: 16px; } }
.is-end .p-overview__period-text {
  color: #c00;
  text-decoration: line-through; }
  .is-end .p-overview__period-text span {
    color: var(--color-text-base); }
.is-end .p-overview__period-text-end {
  text-align: center;
  margin-top: 10px;
  font-weight: bold;
  color: #c00; }
  @media screen and (min-width: 835px) {
    .is-end .p-overview__period-text-end {
      font-size: 20px; } }
  @media screen and (max-width: 834px) {
    .is-end .p-overview__period-text-end {
      font-size: 18px; } }
