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


  ！！！！！注意！！！！！

  index.cssはSassから生成されていますので、
  直接編集しないようご注意ください

  ！！！！！注意！！！！！


  
--------------------*/
/* -------------------
  VARIABLES
--------------------*/
.font-a {
  font-family: "Dela Gothic One", sans-serif; }

.font-b {
  font-family: "Dela Gothic One", sans-serif;
  font-style: normal; }

.dela-gothic-one-regular {
  font-family: "Dela Gothic One", sans-serif;
  font-weight: 400;
  font-style: normal; }

.noto-sans-jp {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-style: normal; }

/* -------------------
  MIXIN
--------------------*/
/*タブレット*/
/* 
.example {
  font-size: vw(12);
}
*/
/* 
.example {
  font-size: fs(12); <- 12px quite
}
*/
/* 
.example {
  @include mq() {
    width: 100%;
  }
}
*/
/* -------------------
  COMMON
--------------------*/
html {
  scroll-behavior: smooth; }

body {
  font-family: "Noto Sans JP", sans-serif;
  color: #000;
  font-size: 15px;
  line-height: 1.67;
  font-weight: 500;
  position: relative; }
  body.noscroll {
    overflow: hidden; }
    body.noscroll:before {
      content: "";
      display: block;
      width: 100%;
      height: 100%;
      position: absolute;
      left: 0;
      top: 0;
      z-index: 1; }
  body.dark:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    background: rgba(0, 0, 0, 0.3);
    left: 0;
    top: 0;
    z-index: 1; }

section,
article,
header,
footer,
time {
  display: block; }

p,
ul,
table {
  margin-bottom: 2em; }
  p:last-child,
  ul:last-child,
  table:last-child {
    margin-bottom: 0; }

h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1.6;
  margin-bottom: 0.8em;
  font-weight: bold; }
  h1:last-child,
  h2:last-child,
  h3:last-child,
  h4:last-child,
  h5:last-child,
  h6:last-child {
    margin-bottom: 0; }

a {
  transition: all 0.3s ease 0s;
  cursor: pointer; }
  a[href^="tel:"] {
    pointer-events: none; }
    @media screen and (max-width: 767px) {
      a[href^="tel:"] {
        pointer-events: auto; } }
  a:hover {
    opacity: 0.5; }

img {
  vertical-align: bottom;
  max-width: 100%;
  height: auto; }
  img.pc-only {
    display: inline; }
    @media screen and (max-width: 767px) {
      img.pc-only {
        display: none; } }
  img.sp-only {
    display: none; }
    @media screen and (max-width: 767px) {
      img.sp-only {
        display: inline; } }

.pc-only {
  display: block; }
  @media screen and (max-width: 767px) {
    .pc-only {
      display: none; } }

.sp-only {
  display: none; }
  @media screen and (max-width: 767px) {
    .sp-only {
      display: block; } }

.pc-only2 {
  display: inline; }
  @media screen and (max-width: 767px) {
    .pc-only2 {
      display: none; } }

.sp-only2 {
  display: none; }
  @media screen and (max-width: 767px) {
    .sp-only2 {
      display: inline; } }

.adj-10:before {
  content: "";
  display: block;
  height: 10px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -10px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-15:before {
  content: "";
  display: block;
  height: 15px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -15px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-20:before {
  content: "";
  display: block;
  height: 20px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -20px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-25:before {
  content: "";
  display: block;
  height: 25px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -25px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-30:before {
  content: "";
  display: block;
  height: 30px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -30px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-35:before {
  content: "";
  display: block;
  height: 35px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -35px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-40:before {
  content: "";
  display: block;
  height: 40px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -40px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-45:before {
  content: "";
  display: block;
  height: 45px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -45px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-50:before {
  content: "";
  display: block;
  height: 50px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -50px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-55:before {
  content: "";
  display: block;
  height: 55px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -55px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-60:before {
  content: "";
  display: block;
  height: 60px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -60px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-65:before {
  content: "";
  display: block;
  height: 65px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -65px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-70:before {
  content: "";
  display: block;
  height: 70px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -70px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-75:before {
  content: "";
  display: block;
  height: 75px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -75px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-80:before {
  content: "";
  display: block;
  height: 80px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -80px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-85:before {
  content: "";
  display: block;
  height: 85px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -85px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-90:before {
  content: "";
  display: block;
  height: 90px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -90px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-95:before {
  content: "";
  display: block;
  height: 95px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -95px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-100:before {
  content: "";
  display: block;
  height: 100px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -100px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-105:before {
  content: "";
  display: block;
  height: 105px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -105px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-110:before {
  content: "";
  display: block;
  height: 110px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -110px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-115:before {
  content: "";
  display: block;
  height: 115px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -115px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-120:before {
  content: "";
  display: block;
  height: 120px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -120px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-125:before {
  content: "";
  display: block;
  height: 125px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -125px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-130:before {
  content: "";
  display: block;
  height: 130px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -130px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-135:before {
  content: "";
  display: block;
  height: 135px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -135px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-140:before {
  content: "";
  display: block;
  height: 140px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -140px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-145:before {
  content: "";
  display: block;
  height: 145px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -145px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-150:before {
  content: "";
  display: block;
  height: 150px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -150px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-155:before {
  content: "";
  display: block;
  height: 155px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -155px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-160:before {
  content: "";
  display: block;
  height: 160px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -160px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-165:before {
  content: "";
  display: block;
  height: 165px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -165px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-170:before {
  content: "";
  display: block;
  height: 170px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -170px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-175:before {
  content: "";
  display: block;
  height: 175px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -175px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-180:before {
  content: "";
  display: block;
  height: 180px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -180px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-185:before {
  content: "";
  display: block;
  height: 185px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -185px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-190:before {
  content: "";
  display: block;
  height: 190px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -190px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-195:before {
  content: "";
  display: block;
  height: 195px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -195px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-200:before {
  content: "";
  display: block;
  height: 200px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -200px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-205:before {
  content: "";
  display: block;
  height: 205px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -205px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-210:before {
  content: "";
  display: block;
  height: 210px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -210px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-215:before {
  content: "";
  display: block;
  height: 215px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -215px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-220:before {
  content: "";
  display: block;
  height: 220px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -220px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-225:before {
  content: "";
  display: block;
  height: 225px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -225px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-230:before {
  content: "";
  display: block;
  height: 230px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -230px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-235:before {
  content: "";
  display: block;
  height: 235px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -235px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-240:before {
  content: "";
  display: block;
  height: 240px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -240px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-245:before {
  content: "";
  display: block;
  height: 245px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -245px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-250:before {
  content: "";
  display: block;
  height: 250px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -250px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-255:before {
  content: "";
  display: block;
  height: 255px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -255px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-260:before {
  content: "";
  display: block;
  height: 260px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -260px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-265:before {
  content: "";
  display: block;
  height: 265px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -265px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-270:before {
  content: "";
  display: block;
  height: 270px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -270px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-275:before {
  content: "";
  display: block;
  height: 275px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -275px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-280:before {
  content: "";
  display: block;
  height: 280px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -280px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-285:before {
  content: "";
  display: block;
  height: 285px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -285px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-290:before {
  content: "";
  display: block;
  height: 290px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -290px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.adj-295:before {
  content: "";
  display: block;
  height: 295px;
  /* 調整したい高さ（固定ヘッダーの高さ） */
  margin-top: -295px;
  /* heightと同じ分のネガティブマージン */
  visibility: hidden; }

.c-width {
  max-width: 1088px !important;
  margin: 0 auto; }

.c-width-700 {
  max-width: 700px !important;
  margin: 0 auto; }

.c-width-710 {
  max-width: 710px !important;
  margin: 0 auto; }

.c-width-720 {
  max-width: 720px !important;
  margin: 0 auto; }

.c-width-730 {
  max-width: 730px !important;
  margin: 0 auto; }

.c-width-740 {
  max-width: 740px !important;
  margin: 0 auto; }

.c-width-750 {
  max-width: 750px !important;
  margin: 0 auto; }

.c-width-760 {
  max-width: 760px !important;
  margin: 0 auto; }

.c-width-770 {
  max-width: 770px !important;
  margin: 0 auto; }

.c-width-780 {
  max-width: 780px !important;
  margin: 0 auto; }

.c-width-790 {
  max-width: 790px !important;
  margin: 0 auto; }

.c-width-800 {
  max-width: 800px !important;
  margin: 0 auto; }

.c-width-810 {
  max-width: 810px !important;
  margin: 0 auto; }

.c-width-820 {
  max-width: 820px !important;
  margin: 0 auto; }

.c-width-830 {
  max-width: 830px !important;
  margin: 0 auto; }

.c-width-840 {
  max-width: 840px !important;
  margin: 0 auto; }

.c-width-850 {
  max-width: 850px !important;
  margin: 0 auto; }

.c-width-860 {
  max-width: 860px !important;
  margin: 0 auto; }

.c-width-870 {
  max-width: 870px !important;
  margin: 0 auto; }

.c-width-880 {
  max-width: 880px !important;
  margin: 0 auto; }

.c-width-890 {
  max-width: 890px !important;
  margin: 0 auto; }

.c-width-900 {
  max-width: 900px !important;
  margin: 0 auto; }

.c-width-910 {
  max-width: 910px !important;
  margin: 0 auto; }

.c-width-920 {
  max-width: 920px !important;
  margin: 0 auto; }

.c-width-930 {
  max-width: 930px !important;
  margin: 0 auto; }

.c-width-940 {
  max-width: 940px !important;
  margin: 0 auto; }

.c-width-950 {
  max-width: 950px !important;
  margin: 0 auto; }

.c-width-960 {
  max-width: 960px !important;
  margin: 0 auto; }

.c-width-970 {
  max-width: 970px !important;
  margin: 0 auto; }

.c-width-980 {
  max-width: 980px !important;
  margin: 0 auto; }

.c-width-990 {
  max-width: 990px !important;
  margin: 0 auto; }

.c-width-1000 {
  max-width: 1000px !important;
  margin: 0 auto; }

.c-width-1010 {
  max-width: 1010px !important;
  margin: 0 auto; }

.c-width-1020 {
  max-width: 1020px !important;
  margin: 0 auto; }

.c-width-1030 {
  max-width: 1030px !important;
  margin: 0 auto; }

.c-width-1040 {
  max-width: 1040px !important;
  margin: 0 auto; }

.c-width-1050 {
  max-width: 1050px !important;
  margin: 0 auto; }

.c-width-1060 {
  max-width: 1060px !important;
  margin: 0 auto; }

.c-width-1070 {
  max-width: 1070px !important;
  margin: 0 auto; }

.c-width-1080 {
  max-width: 1080px !important;
  margin: 0 auto; }

.c-width-1090 {
  max-width: 1090px !important;
  margin: 0 auto; }

.c-width-1100 {
  max-width: 1100px !important;
  margin: 0 auto; }

.c-width-1110 {
  max-width: 1110px !important;
  margin: 0 auto; }

.c-width-1120 {
  max-width: 1120px !important;
  margin: 0 auto; }

.c-width-1130 {
  max-width: 1130px !important;
  margin: 0 auto; }

.c-width-1140 {
  max-width: 1140px !important;
  margin: 0 auto; }

.c-width-1150 {
  max-width: 1150px !important;
  margin: 0 auto; }

.c-width-1160 {
  max-width: 1160px !important;
  margin: 0 auto; }

.c-width-1170 {
  max-width: 1170px !important;
  margin: 0 auto; }

.c-width-1180 {
  max-width: 1180px !important;
  margin: 0 auto; }

.c-width-1190 {
  max-width: 1190px !important;
  margin: 0 auto; }

.c-width-1200 {
  max-width: 1200px !important;
  margin: 0 auto; }

.c-width-1210 {
  max-width: 1210px !important;
  margin: 0 auto; }

.c-width-1220 {
  max-width: 1220px !important;
  margin: 0 auto; }

.c-width-1230 {
  max-width: 1230px !important;
  margin: 0 auto; }

.c-width-1240 {
  max-width: 1240px !important;
  margin: 0 auto; }

.c-width-1250 {
  max-width: 1250px !important;
  margin: 0 auto; }

.c-width-1260 {
  max-width: 1260px !important;
  margin: 0 auto; }

.c-width-1270 {
  max-width: 1270px !important;
  margin: 0 auto; }

.c-width-1280 {
  max-width: 1280px !important;
  margin: 0 auto; }

.c-width-1290 {
  max-width: 1290px !important;
  margin: 0 auto; }

.c-width-1300 {
  max-width: 1300px !important;
  margin: 0 auto; }

.breadcrumbs {
  font-size: 11px;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 3;
  padding: 20px 3.66032vw;
  width: 100%; }
  @media screen and (max-width: 767px) {
    .breadcrumbs {
      right: auto;
      bottom: auto;
      padding: 15px 3.84615vw; } }
  .breadcrumbs ul {
    display: flex; }
    @media screen and (max-width: 767px) {
      .breadcrumbs ul {
        flex-wrap: wrap; } }
    .breadcrumbs ul li {
      color: #fff; }
      @media screen and (max-width: 767px) {
        .breadcrumbs ul li {
          line-height: 1.5; } }
      .breadcrumbs ul li a {
        color: #fff; }
      .breadcrumbs ul li .arrow {
        margin: 0 0.5em; }
      .breadcrumbs ul li.home {
        display: flex; }
        .breadcrumbs ul li.home a {
          display: flex;
          align-items: center; }
  .breadcrumbs.white {
    background: none; }

.flowing-ttl {
  display: flex;
  width: 100%;
  overflow: hidden; }
  .flowing-ttl__item {
    flex-shrink: 0;
    white-space: nowrap;
    padding: 0 15px; }
    .flowing-ttl__item:nth-child(odd) {
      animation: MoveLeft 40s -20s infinite linear; }
    .flowing-ttl__item:nth-child(even) {
      animation: MoveLeft2 40s infinite linear; }
  .flowing-ttl.reverse .flowing-ttl__item:nth-child(odd) {
    animation: MoveLeft 40s -20s infinite linear reverse; }
  .flowing-ttl.reverse .flowing-ttl__item:nth-child(even) {
    animation: MoveLeft2 40s infinite linear reverse; }

@keyframes MoveLeft {
  0% {
    transform: translateX(100%); }
  to {
    transform: translateX(-100%); } }

@keyframes MoveLeft2 {
  0% {
    transform: translateX(0); }
  to {
    transform: translateX(-200%); } }

section .sect-inner {
  max-width: 1088px;
  margin: 0 auto; }
  @media screen and (max-width: 767px) {
    section .sect-inner {
      padding: 0px; } }

.c-btn {
  text-align: center;
  margin-top: 50px; }
  .c-btn a {
    background: #a9e654;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    border-radius: 10px;
    font-size: 20px;
    font-weight: bold;
    min-width: 530px;
    height: 80px;
    position: relative;
    padding: 0 53px; }
    @media screen and (max-width: 767px) {
      .c-btn a {
        min-width: auto;
        width: 100%;
        font-size: 15px;
        height: 56px;
        padding: 0 45px; } }
    .c-btn a::after {
      content: "";
      display: inline-block;
      width: 32px;
      height: 32px;
      position: absolute;
      right: 20px;
      top: 50%;
      transform: translate(0, -50%);
      background-color: #000;
      /* ←これが色になる */
      -webkit-mask: url("../images/common/shuriken-1-black.svg") no-repeat center/contain;
      mask: url("../images/common/shuriken-1-black.svg") no-repeat center/contain;
      transition: 0.3s; }
      @media screen and (max-width: 767px) {
        .c-btn a::after {
          width: 26px;
          height: 26px;
          right: 15px; } }
    .c-btn a:hover {
      opacity: 1;
      background: #d1111c;
      color: #fff; }
      .c-btn a:hover::after {
        background-color: #fff;
        /* hoverで色変更 */
        transform: translate(0, -50%) rotate(45deg); }

.page-hero {
  background-color: #000;
  position: relative; }
  .page-hero__bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%; }
    .page-hero__bg img {
      object-fit: cover;
      width: 100%;
      height: 100%;
      opacity: 0.5; }
  .page-hero__cont {
    height: 365px;
    position: relative;
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    gap: 10px; }
    @media screen and (max-width: 767px) {
      .page-hero__cont {
        height: 43.07692vw; } }
  .page-hero.single-news-hero {
    background: none;
    height: auto; }
  @media screen and (max-width: 767px) {
    .page-hero__icon {
      width: 38px;
      height: 38px; }
      .page-hero__icon img {
        width: 100%;
        height: 100%;
        object-fit: contain; }
      .page-hero__icon.information img, .page-hero__icon.news img {
        transform: scale(1.6); } }
  .page-hero__title {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px; }
    .page-hero__title .jp {
      font-size: 30px; }
      @media screen and (max-width: 767px) {
        .page-hero__title .jp {
          font-size: 5.12821vw; } }
    .page-hero__title .en {
      font-size: 20px;
      font-family: "Dela Gothic One", sans-serif;
      font-weight: 400;
      text-transform: uppercase; }
      @media screen and (max-width: 767px) {
        .page-hero__title .en {
          font-size: 3.07692vw; } }

.c-title {
  margin-bottom: 50px; }
  @media screen and (max-width: 767px) {
    .c-title {
      margin-bottom: 30px; } }
  .c-title .main {
    font-size: 30px;
    padding-left: 55px;
    line-height: 1.5;
    position: relative;
    color: #d1111c;
    margin-bottom: 10px; }
    @media screen and (max-width: 767px) {
      .c-title .main {
        font-size: 5.12821vw;
        padding-left: 39px;
        margin-bottom: 5px; } }
    .c-title .main::before {
      content: "";
      display: block;
      width: 50px;
      height: 50px;
      background: url(../images/common/c-title-shuriken-red.svg) no-repeat left top/contain;
      position: absolute;
      left: -3px;
      top: 0px; }
      @media screen and (max-width: 767px) {
        .c-title .main::before {
          width: 40px;
          height: 40px;
          left: -2px;
          top: -4px; } }
  .c-title .sub {
    font-size: 40px;
    font-family: "Dela Gothic One", sans-serif;
    font-weight: 400;
    line-height: 1.3;
    margin-bottom: 10px; }
    @media screen and (max-width: 767px) {
      .c-title .sub {
        font-size: 6.41026vw;
        margin-bottom: 5px; } }
  @media screen and (max-width: 767px) {
    .c-title .lead {
      font-size: 3.84615vw; } }
  .c-title .lead.fs-l {
    font-size: 20px;
    font-weight: bold; }
    @media screen and (max-width: 767px) {
      .c-title .lead.fs-l {
        font-size: 3.84615vw;
        font-weight: 500; } }
  .c-title .flex {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px; }
    .c-title .flex .lead {
      border: 1px solid #fff;
      border-radius: 100vh;
      padding: 5px 17px 7px; }
      @media screen and (max-width: 767px) {
        .c-title .flex .lead {
          line-height: 1.34;
          padding: 8px 17px 10px; } }
  .c-title.white .main,
  .c-title.white .sub,
  .c-title.white .lead {
    color: #fff; }
  .c-title.white .main::before {
    background: url(../images/common/c-title-shuriken-white.svg) no-repeat left top/contain; }

.front-logo {
  height: 100vh;
  background: #d1111c;
  display: flex;
  justify-content: center;
  align-items: center; }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
  margin-bottom: 0 !important; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

.slick-dots {
  display: flex;
  justify-content: center;
  bottom: 35px; }
  .slick-dots li {
    opacity: 0.5; }
    .slick-dots li:last-child {
      margin-right: 0; }
    .slick-dots li button {
      position: relative;
      display: inline-block;
      width: 10px;
      height: 10px;
      font-size: 0;
      background-color: #fff;
      border-radius: 50%; }
      .slick-dots li button:before {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        display: inline-block;
        width: 10px;
        height: 10px;
        background-color: #EEEEEE;
        border-radius: 50%;
        content: ""; }
    .slick-dots li.slick-active {
      opacity: 1; }
      .slick-dots li.slick-active button {
        border: none; }
        .slick-dots li.slick-active button:before {
          background-color: #ffcc00; }

.slick-prev,
.slick-next {
  position: absolute;
  top: calc(50% - 20px);
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: #6B9FE8;
  z-index: 1;
  transition: all .3s; }
  .slick-prev:hover, .slick-prev:focus,
  .slick-next:hover,
  .slick-next:focus {
    outline: 0; }
  .slick-prev:hover,
  .slick-next:hover {
    background-color: #2f5baf; }
  .slick-prev span,
  .slick-next span {
    display: block;
    position: relative;
    width: 100%;
    height: 100%; }
    .slick-prev span:before,
    .slick-next span:before {
      position: absolute;
      top: 15px;
      border: solid #fff;
      border-width: 0 2px 2px 0;
      display: inline-block;
      padding: 4px;
      content: ""; }

.slick-prev {
  left: 0; }
  @media screen and (max-width: 1050px) {
    .slick-prev {
      left: 10px; } }
  .slick-prev span:before {
    left: 17px;
    transform: rotate(135deg);
    -webkit-transform: rotate(135deg); }

.slick-next {
  right: 0; }
  @media screen and (max-width: 1050px) {
    .slick-next {
      right: 10px; } }
  .slick-next span:before {
    left: 20px;
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg) translate(-50%, -50%); }
  @media all and (-ms-high-contrast: none) {
    .slick-next {
      /* IE10 */
      /* IE11 */ }
      .slick-next span:before {
        left: 15px; }
      .slick-next *::-ms-backdrop:before,
      .slick-next span:before {
        left: 15px; } }

.ui-datepicker {
  background-color: #fff;
  padding: .8em .5em .3em; }

.ui-datepicker .ui-datepicker-title {
  font-size: 0.875rem;
  text-align: center; }

.ui-widget.ui-widget-content {
  border-radius: 5px; }

.ui-widget-header {
  border: none;
  background: inherit;
  color: #474F5F;
  font-weight: bold; }

.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .ui-button, html .ui-button.ui-state-disabled:hover, html .ui-button.ui-state-disabled:active {
  border: none;
  background: #ECF0F4;
  font-weight: bold;
  color: #3B93D2;
  text-align: center;
  padding: 7px 9px;
  font-size: 0.6875rem; }

.ui-datepicker th {
  padding: .7em .3em;
  text-align: center;
  font-weight: bold;
  border: 0;
  color: #AFB4BC;
  font-size: 0.6875rem; }

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
  position: absolute;
  left: 10px;
  cursor: pointer;
  font-size: 0.75rem; }
  .ui-datepicker .ui-datepicker-prev:hover,
  .ui-datepicker .ui-datepicker-next:hover {
    border: none;
    background-color: #fff; }

.ui-datepicker .ui-datepicker-next {
  right: 10px;
  left: auto; }

.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
  margin-top: -6px; }

.ui-icon {
  width: 10px;
  height: 10px; }

.ui-widget-content .ui-state-default:hover {
  border: 0px;
  text-align: center;
  background: #000;
  color: #fff; }

.ui-widget-content .ui-state-active {
  border: 0px;
  background: #000;
  color: #fff; }

.ui-datepicker td {
  padding: 1px; }

a.ui-state-default {
  width: 100%;
  display: block; }

/* Fade up */
.fadeup {
  opacity: 0;
  transform: translate(0, 30px);
  transition: opacity 0.5s ease 0s, transform 0.5s ease 0s; }
  .fadeup.in {
    opacity: 1;
    transform: translate(0, 0); }

.fadeup2 {
  transform: translate(0, 80px);
  transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0s; }
  .fadeup2.in {
    transform: translate(0, 0); }

.eachCharaFU {
  overflow: hidden; }
  .eachCharaFU .chara {
    opacity: 0;
    display: inline-block;
    animation: eachCharaFU 0.8s forwards; }

@keyframes eachCharaFU {
  0% {
    opacity: 0;
    transform: translateY(100%); }
  100% {
    opacity: 1;
    transform: translateY(0); } }

/* Fade up */
.matrix-inner {
  display: block;
  overflow: hidden;
  opacity: 0; }
  .matrix-inner-2 {
    display: block;
    opacity: 0;
    transform: matrix(1, 0, 0, 1, 0, 100);
    transition: 1.2s cubic-bezier(0.22, 1, 0.36, 1); }

.matrix.in .matrix-inner {
  opacity: 1; }
  .matrix.in .matrix-inner-2 {
    opacity: 1;
    transform: matrix(1, 0, 0, 1, 0, 0); }

/* Fade in */
.fadein {
  opacity: 0;
  transition: opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transform: scale(0.9); }
  .fadein.in {
    opacity: 1;
    transform: scale(1); }

/* Fade up */
.fadeleft {
  opacity: 0;
  transform: translate(-80px, 0);
  transition: opacity 0.4s ease 0s, transform 0.4s ease 0s; }
  .fadeleft.in {
    opacity: 1;
    transform: translate(0, 0); }

.fadeleft2 {
  transform: translate(-80px, 0);
  transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0s; }
  .fadeleft2.in {
    transform: translate(0, 0); }

/* Fade up */
.faderight {
  opacity: 0;
  transform: translate(80px, 0);
  transition: opacity 0.4s ease 0s, transform 0.4s ease 0s; }
  .faderight.in {
    opacity: 1;
    transform: translate(0, 0); }

.faderight2 {
  transform: translate(80px, 0);
  transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0s; }
  .faderight2.in {
    transform: translate(0, 0); }

.fuwafuwa {
  animation: fuwafuwa 2.5s infinite; }

.fuwafuwa-t {
  animation: fuwafuwa-t 3.5s infinite; }

@keyframes fuwafuwa {
  0% {
    transform: translateY(0px); }
  50% {
    transform: translateY(-20%); }
  100% {
    transform: translateY(0px); } }

@keyframes fuwafuwa-t {
  0% {
    transform: translateY(0px); }
  40% {
    opacity: 1; }
  100% {
    transform: translateY(-180%);
    opacity: 0; } }

/* Nina */
.button--ninaWrap {
  display: inline-block;
  text-align: center;
  min-width: 154px;
  max-width: 100%;
  background: #fff;
  border-radius: 72px;
  overflow: hidden; }
  @media screen and (max-width: 767px) {
    .button--ninaWrap {
      width: 100%; } }

.button--nina {
  position: relative;
  display: inline-block;
  height: 55px;
  line-height: 56px;
  color: #474F5F;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
  vertical-align: middle;
  font-size: 0.75rem;
  font-family: "Dela Gothic One", sans-serif;
  font-weight: 500;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  text-align: center; }
  .button--nina span {
    vertical-align: middle; }

.button--nina > span {
  display: inline-block;
  opacity: 0;
  color: #fff;
  -webkit-transform: translate3d(0, -10px, 0);
  transform: translate3d(0, -10px, 0);
  -webkit-transition: -webkit-transform 0.3s, opacity 0.3s;
  transition: transform 0.3s, opacity 0.3s;
  -webkit-transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1);
  transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1); }

.button--nina::before {
  content: attr(data-text);
  position: absolute;
  top: -12px;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 1em 0;
  -webkit-transition: -webkit-transform 0.3s, opacity 0.3s;
  transition: transform 0.3s, opacity 0.3s;
  -webkit-transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1);
  transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1); }

.button--ninaWrap:hover {
  background-color: #474F5F;
  letter-spacing: -1.5px; }

.button--ninaWrap:hover .button--nina {
  letter-spacing: -1.5px; }

.button--ninaWrap:hover .button--nina::before {
  opacity: 0;
  -webkit-transform: translate3d(0, 100%, 0);
  transform: translate3d(0, 100%, 0); }

.button--ninaWrap:hover .button--nina > span {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.button--ninaWrap:hover .button--nina > span:nth-child(1) {
  -webkit-transition-delay: 0.045s;
  transition-delay: 0.045s; }

.button--ninaWrap:hover .button--nina > span:nth-child(2) {
  -webkit-transition-delay: 0.09s;
  transition-delay: 0.09s; }

.button--ninaWrap:hover .button--nina > span:nth-child(3) {
  -webkit-transition-delay: 0.135s;
  transition-delay: 0.135s; }

.button--ninaWrap:hover .button--nina > span:nth-child(4) {
  -webkit-transition-delay: 0.18s;
  transition-delay: 0.18s; }

.button--ninaWrap:hover .button--nina > span:nth-child(5) {
  -webkit-transition-delay: 0.225s;
  transition-delay: 0.225s; }

.button--ninaWrap:hover .button--nina > span:nth-child(6) {
  -webkit-transition-delay: 0.27s;
  transition-delay: 0.27s; }

.button--ninaWrap:hover .button--nina > span:nth-child(7) {
  -webkit-transition-delay: 0.315s;
  transition-delay: 0.315s; }

.button--ninaWrap:hover .button--nina > span:nth-child(8) {
  -webkit-transition-delay: 0.36s;
  transition-delay: 0.36s; }

.button--ninaWrap:hover .button--nina > span:nth-child(9) {
  -webkit-transition-delay: 0.405s;
  transition-delay: 0.405s; }

.button--ninaWrap:hover .button--nina > span:nth-child(10) {
  -webkit-transition-delay: 0.45s;
  transition-delay: 0.45s; }

.button--nina:after {
  position: absolute;
  right: -2px;
  top: calc(50% - 4px);
  display: inline-block;
  width: 5px;
  height: 9px;
  background: url(../images/common/icon-arrow-right.svg) no-repeat;
  transition: all .3s;
  content: "";
  z-index: 1; }

.button--ninaWrap:hover .button--nina:after {
  top: calc(50% - 3px);
  display: inline-block;
  transform: translateX(18px);
  background-image: url(../images/common/icon-arrow-right-white.svg); }

.button--ninaWrap--blue {
  background: #4AABB8; }
  .button--ninaWrap--blue .button--nina {
    color: #fff; }
    .button--ninaWrap--blue .button--nina span {
      color: #4AABB8; }
    .button--ninaWrap--blue .button--nina::after {
      background: url(../images/common/icon-arrow-right-white.svg) no-repeat; }
  .button--ninaWrap--blue:hover {
    background-color: #fff;
    letter-spacing: -1.5px; }
    .button--ninaWrap--blue:hover .button--nina {
      color: #4AABB8; }
      .button--ninaWrap--blue:hover .button--nina::after {
        background: url(../images/common/icon-arrow-right-blue.svg) no-repeat; }

.smoothupwrap {
  overflow: hidden;
  display: block; }

.smoothup {
  display: block;
  transition: transform 0.8s ease-in-out;
  transform: translate3d(0, 100%, 0) skewY(12deg);
  transform-origin: left; }

.in .smoothup {
  transform: translate3d(0, 0, 0) skewY(0); }

.delay-1 {
  transition-delay: .1s; }

.delay-2 {
  transition-delay: .2s; }

.delay-3 {
  transition-delay: .3s; }

.delay-4 {
  transition-delay: .4s; }

.delay-5 {
  transition-delay: .5s; }

.delay-6 {
  transition-delay: .6s; }

.delay-7 {
  transition-delay: .7s; }

.delay-8 {
  transition-delay: .8s; }

.delay-9 {
  transition-delay: .9s; }

.delay-10 {
  transition-delay: 1s; }

.delay-11 {
  transition-delay: 1.1s; }

.delay-12 {
  transition-delay: 1.2s; }

.delay-13 {
  transition-delay: 1.3s; }

.delay-14 {
  transition-delay: 1.4s; }

.delay-15 {
  transition-delay: 1.5s; }

.delay-16 {
  transition-delay: 1.6s; }

.delay-17 {
  transition-delay: 1.7s; }

.delay-18 {
  transition-delay: 1.8s; }

.delay-19 {
  transition-delay: 1.9s; }

.delay-20 {
  transition-delay: 2.0s; }

.delay-21 {
  transition-delay: 2.1s; }

.delay-22 {
  transition-delay: 2.2s; }

.delay-23 {
  transition-delay: 2.3s; }

.delay-24 {
  transition-delay: 2.4s; }

.ani-delay-1 {
  animation-delay: .1s; }

.ani-delay-2 {
  animation-delay: .2s; }

.ani-delay-3 {
  animation-delay: .3s; }

.ani-delay-4 {
  animation-delay: .4s; }

.ani-delay-5 {
  animation-delay: .5s; }

.ani-delay-6 {
  animation-delay: .6s; }

.ani-delay-7 {
  animation-delay: .7s; }

.ani-delay-8 {
  animation-delay: .8s; }

.ani-delay-9 {
  animation-delay: .9s; }

.ani-delay-10 {
  animation-delay: 1s; }

.ani-delay-11 {
  animation-delay: 1.1s; }

.ani-delay-12 {
  animation-delay: 1.2s; }

.ani-delay-13 {
  animation-delay: 1.3s; }

.ani-delay-14 {
  animation-delay: 1.4s; }

.ani-delay-15 {
  animation-delay: 1.5s; }

.ani-delay-16 {
  animation-delay: 1.6s; }

.ani-delay-17 {
  animation-delay: 1.7s; }

.ani-delay-18 {
  animation-delay: 1.8s; }

.ani-delay-19 {
  animation-delay: 1.9s; }

.ani-delay-20 {
  animation-delay: 2.0s; }

.ani-delay-21 {
  animation-delay: 2.1s; }

.ani-delay-22 {
  animation-delay: 2.2s; }

.ani-delay-23 {
  animation-delay: 2.3s; }

.ani-delay-24 {
  animation-delay: 2.4s; }

/* -------------------
  PARTS
--------------------*/
.mgt-0 {
  margin-top: 0; }

.mgt-5 {
  margin-top: 5px; }

.mgt-10 {
  margin-top: 10px; }

.mgt-15 {
  margin-top: 15px; }

.mgt-20 {
  margin-top: 20px; }

.mgt-25 {
  margin-top: 25px; }

.mgt-30 {
  margin-top: 30px; }

.mgt-35 {
  margin-top: 35px; }

.mgt-40 {
  margin-top: 40px; }

.mgt-45 {
  margin-top: 45px; }

.mgt-50 {
  margin-top: 50px; }

.mgt-55 {
  margin-top: 55px; }

.mgt-60 {
  margin-top: 60px; }

.mgt-65 {
  margin-top: 65px; }

.mgt-70 {
  margin-top: 70px; }

.mgt-75 {
  margin-top: 75px; }

.mgt-80 {
  margin-top: 80px; }

.mgt-85 {
  margin-top: 85px; }

.mgt-90 {
  margin-top: 90px; }

.mgt-95 {
  margin-top: 95px; }

.mgt-100 {
  margin-top: 100px; }

.mgb-0 {
  margin-bottom: 0 !important; }

.mgb-5 {
  margin-bottom: 5px; }

.mgb-10 {
  margin-bottom: 10px; }

.mgb-15 {
  margin-bottom: 15px; }

.mgb-20 {
  margin-bottom: 20px; }

.mgb-25 {
  margin-bottom: 25px; }

.mgb-30 {
  margin-bottom: 30px; }

.mgb-35 {
  margin-bottom: 35px; }

.mgb-40 {
  margin-bottom: 40px; }

.mgb-45 {
  margin-bottom: 45px; }

.mgb-50 {
  margin-bottom: 50px; }

.mgb-55 {
  margin-bottom: 55px; }

.mgb-60 {
  margin-bottom: 60px; }

.mgb-65 {
  margin-bottom: 65px; }

.mgb-70 {
  margin-bottom: 70px; }

.mgb-75 {
  margin-bottom: 75px; }

.mgb-80 {
  margin-bottom: 80px; }

.mgb-85 {
  margin-bottom: 85px; }

.mgb-90 {
  margin-bottom: 90px; }

.mgb-95 {
  margin-bottom: 95px; }

.mgb-100 {
  margin-bottom: 100px; }

.mgl-0 {
  margin-left: 0; }

.mgl-1 {
  margin-left: 1px; }

.mgl-2 {
  margin-left: 2px; }

.mgl-3 {
  margin-left: 3px; }

.mgl-4 {
  margin-left: 4px; }

.mgl-5 {
  margin-left: 5px; }

.mgl-6 {
  margin-left: 6px; }

.mgl-7 {
  margin-left: 7px; }

.mgl-8 {
  margin-left: 8px; }

.mgl-9 {
  margin-left: 9px; }

.mgl-10 {
  margin-left: 10px; }

.mgr-0 {
  margin-right: 0; }

.mgr-1 {
  margin-right: 1px; }

.mgr-2 {
  margin-right: 2px; }

.mgr-3 {
  margin-right: 3px; }

.mgr-4 {
  margin-right: 4px; }

.mgr-5 {
  margin-right: 5px; }

.mgr-6 {
  margin-right: 6px; }

.mgr-7 {
  margin-right: 7px; }

.mgr-8 {
  margin-right: 8px; }

.mgr-9 {
  margin-right: 9px; }

.mgr-10 {
  margin-right: 10px; }

.mgr-20 {
  margin-right: 20px; }
  @media screen and (max-width: 767px) {
    .mgr-20 {
      margin-right: 10px; } }

.pdt-10 {
  padding-top: 10px !important; }

.pdt-20 {
  padding-top: 20px !important; }

.pdt-30 {
  padding-top: 30px !important; }

.pdt-40 {
  padding-top: 40px !important; }

.pdt-50 {
  padding-top: 50px !important; }

.mx-0 {
  margin-left: 0 !important;
  margin-right: 0 !important; }

.my-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important; }

.px-0 {
  padding-left: 0 !important;
  padding-right: 0 !important; }

.py-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important; }

.m-center {
  margin: 0 auto; }

.mb-10 {
  margin-bottom: 10px !important; }

.mt-10 {
  margin-top: 10px !important; }

.mr-10 {
  margin-right: 10px !important; }

.ml-10 {
  margin-left: 10px !important; }

.pb-10 {
  padding-bottom: 10px !important; }

.pt-10 {
  padding-top: 10px !important; }

.pr-10 {
  padding-right: 10px !important; }

.pl-10 {
  padding-left: 10px !important; }

.mb-15 {
  margin-bottom: 15px !important; }

.mt-15 {
  margin-top: 15px !important; }

.mr-15 {
  margin-right: 15px !important; }

.ml-15 {
  margin-left: 15px !important; }

.pb-15 {
  padding-bottom: 15px !important; }

.pt-15 {
  padding-top: 15px !important; }

.pr-15 {
  padding-right: 15px !important; }

.pl-15 {
  padding-left: 15px !important; }

.mb-20 {
  margin-bottom: 20px !important; }

.mt-20 {
  margin-top: 20px !important; }

.mr-20 {
  margin-right: 20px !important; }

.ml-20 {
  margin-left: 20px !important; }

.pb-20 {
  padding-bottom: 20px !important; }

.pt-20 {
  padding-top: 20px !important; }

.pr-20 {
  padding-right: 20px !important; }

.pl-20 {
  padding-left: 20px !important; }

.mb-25 {
  margin-bottom: 25px !important; }

.mt-25 {
  margin-top: 25px !important; }

.mr-25 {
  margin-right: 25px !important; }

.ml-25 {
  margin-left: 25px !important; }

.pb-25 {
  padding-bottom: 25px !important; }

.pt-25 {
  padding-top: 25px !important; }

.pr-25 {
  padding-right: 25px !important; }

.pl-25 {
  padding-left: 25px !important; }

.mb-30 {
  margin-bottom: 30px !important; }

.mt-30 {
  margin-top: 30px !important; }

.mr-30 {
  margin-right: 30px !important; }

.ml-30 {
  margin-left: 30px !important; }

.pb-30 {
  padding-bottom: 30px !important; }

.pt-30 {
  padding-top: 30px !important; }

.pr-30 {
  padding-right: 30px !important; }

.pl-30 {
  padding-left: 30px !important; }

.mb-35 {
  margin-bottom: 35px !important; }

.mt-35 {
  margin-top: 35px !important; }

.mr-35 {
  margin-right: 35px !important; }

.ml-35 {
  margin-left: 35px !important; }

.pb-35 {
  padding-bottom: 35px !important; }

.pt-35 {
  padding-top: 35px !important; }

.pr-35 {
  padding-right: 35px !important; }

.pl-35 {
  padding-left: 35px !important; }

.mb-40 {
  margin-bottom: 40px !important; }

.mt-40 {
  margin-top: 40px !important; }

.mr-40 {
  margin-right: 40px !important; }

.ml-40 {
  margin-left: 40px !important; }

.pb-40 {
  padding-bottom: 40px !important; }

.pt-40 {
  padding-top: 40px !important; }

.pr-40 {
  padding-right: 40px !important; }

.pl-40 {
  padding-left: 40px !important; }

.mb-45 {
  margin-bottom: 45px !important; }

.mt-45 {
  margin-top: 45px !important; }

.mr-45 {
  margin-right: 45px !important; }

.ml-45 {
  margin-left: 45px !important; }

.pb-45 {
  padding-bottom: 45px !important; }

.pt-45 {
  padding-top: 45px !important; }

.pr-45 {
  padding-right: 45px !important; }

.pl-45 {
  padding-left: 45px !important; }

.mb-50 {
  margin-bottom: 50px !important; }

.mt-50 {
  margin-top: 50px !important; }

.mr-50 {
  margin-right: 50px !important; }

.ml-50 {
  margin-left: 50px !important; }

.pb-50 {
  padding-bottom: 50px !important; }

.pt-50 {
  padding-top: 50px !important; }

.pr-50 {
  padding-right: 50px !important; }

.pl-50 {
  padding-left: 50px !important; }

.mb-55 {
  margin-bottom: 55px !important; }

.mt-55 {
  margin-top: 55px !important; }

.mr-55 {
  margin-right: 55px !important; }

.ml-55 {
  margin-left: 55px !important; }

.pb-55 {
  padding-bottom: 55px !important; }

.pt-55 {
  padding-top: 55px !important; }

.pr-55 {
  padding-right: 55px !important; }

.pl-55 {
  padding-left: 55px !important; }

.mb-60 {
  margin-bottom: 60px !important; }

.mt-60 {
  margin-top: 60px !important; }

.mr-60 {
  margin-right: 60px !important; }

.ml-60 {
  margin-left: 60px !important; }

.pb-60 {
  padding-bottom: 60px !important; }

.pt-60 {
  padding-top: 60px !important; }

.pr-60 {
  padding-right: 60px !important; }

.pl-60 {
  padding-left: 60px !important; }

.mb-65 {
  margin-bottom: 65px !important; }

.mt-65 {
  margin-top: 65px !important; }

.mr-65 {
  margin-right: 65px !important; }

.ml-65 {
  margin-left: 65px !important; }

.pb-65 {
  padding-bottom: 65px !important; }

.pt-65 {
  padding-top: 65px !important; }

.pr-65 {
  padding-right: 65px !important; }

.pl-65 {
  padding-left: 65px !important; }

.mb-70 {
  margin-bottom: 70px !important; }

.mt-70 {
  margin-top: 70px !important; }

.mr-70 {
  margin-right: 70px !important; }

.ml-70 {
  margin-left: 70px !important; }

.pb-70 {
  padding-bottom: 70px !important; }

.pt-70 {
  padding-top: 70px !important; }

.pr-70 {
  padding-right: 70px !important; }

.pl-70 {
  padding-left: 70px !important; }

.mb-75 {
  margin-bottom: 75px !important; }

.mt-75 {
  margin-top: 75px !important; }

.mr-75 {
  margin-right: 75px !important; }

.ml-75 {
  margin-left: 75px !important; }

.pb-75 {
  padding-bottom: 75px !important; }

.pt-75 {
  padding-top: 75px !important; }

.pr-75 {
  padding-right: 75px !important; }

.pl-75 {
  padding-left: 75px !important; }

.mb-80 {
  margin-bottom: 80px !important; }

.mt-80 {
  margin-top: 80px !important; }

.mr-80 {
  margin-right: 80px !important; }

.ml-80 {
  margin-left: 80px !important; }

.pb-80 {
  padding-bottom: 80px !important; }

.pt-80 {
  padding-top: 80px !important; }

.pr-80 {
  padding-right: 80px !important; }

.pl-80 {
  padding-left: 80px !important; }

.mb-85 {
  margin-bottom: 85px !important; }

.mt-85 {
  margin-top: 85px !important; }

.mr-85 {
  margin-right: 85px !important; }

.ml-85 {
  margin-left: 85px !important; }

.pb-85 {
  padding-bottom: 85px !important; }

.pt-85 {
  padding-top: 85px !important; }

.pr-85 {
  padding-right: 85px !important; }

.pl-85 {
  padding-left: 85px !important; }

.mb-90 {
  margin-bottom: 90px !important; }

.mt-90 {
  margin-top: 90px !important; }

.mr-90 {
  margin-right: 90px !important; }

.ml-90 {
  margin-left: 90px !important; }

.pb-90 {
  padding-bottom: 90px !important; }

.pt-90 {
  padding-top: 90px !important; }

.pr-90 {
  padding-right: 90px !important; }

.pl-90 {
  padding-left: 90px !important; }

.mb-95 {
  margin-bottom: 95px !important; }

.mt-95 {
  margin-top: 95px !important; }

.mr-95 {
  margin-right: 95px !important; }

.ml-95 {
  margin-left: 95px !important; }

.pb-95 {
  padding-bottom: 95px !important; }

.pt-95 {
  padding-top: 95px !important; }

.pr-95 {
  padding-right: 95px !important; }

.pl-95 {
  padding-left: 95px !important; }

.mb-100 {
  margin-bottom: 100px !important; }

.mt-100 {
  margin-top: 100px !important; }

.mr-100 {
  margin-right: 100px !important; }

.ml-100 {
  margin-left: 100px !important; }

.pb-100 {
  padding-bottom: 100px !important; }

.pt-100 {
  padding-top: 100px !important; }

.pr-100 {
  padding-right: 100px !important; }

.pl-100 {
  padding-left: 100px !important; }

.mb-105 {
  margin-bottom: 105px !important; }

.mt-105 {
  margin-top: 105px !important; }

.mr-105 {
  margin-right: 105px !important; }

.ml-105 {
  margin-left: 105px !important; }

.pb-105 {
  padding-bottom: 105px !important; }

.pt-105 {
  padding-top: 105px !important; }

.pr-105 {
  padding-right: 105px !important; }

.pl-105 {
  padding-left: 105px !important; }

.mb-110 {
  margin-bottom: 110px !important; }

.mt-110 {
  margin-top: 110px !important; }

.mr-110 {
  margin-right: 110px !important; }

.ml-110 {
  margin-left: 110px !important; }

.pb-110 {
  padding-bottom: 110px !important; }

.pt-110 {
  padding-top: 110px !important; }

.pr-110 {
  padding-right: 110px !important; }

.pl-110 {
  padding-left: 110px !important; }

.mb-115 {
  margin-bottom: 115px !important; }

.mt-115 {
  margin-top: 115px !important; }

.mr-115 {
  margin-right: 115px !important; }

.ml-115 {
  margin-left: 115px !important; }

.pb-115 {
  padding-bottom: 115px !important; }

.pt-115 {
  padding-top: 115px !important; }

.pr-115 {
  padding-right: 115px !important; }

.pl-115 {
  padding-left: 115px !important; }

.mb-120 {
  margin-bottom: 120px !important; }

.mt-120 {
  margin-top: 120px !important; }

.mr-120 {
  margin-right: 120px !important; }

.ml-120 {
  margin-left: 120px !important; }

.pb-120 {
  padding-bottom: 120px !important; }

.pt-120 {
  padding-top: 120px !important; }

.pr-120 {
  padding-right: 120px !important; }

.pl-120 {
  padding-left: 120px !important; }

.mb-125 {
  margin-bottom: 125px !important; }

.mt-125 {
  margin-top: 125px !important; }

.mr-125 {
  margin-right: 125px !important; }

.ml-125 {
  margin-left: 125px !important; }

.pb-125 {
  padding-bottom: 125px !important; }

.pt-125 {
  padding-top: 125px !important; }

.pr-125 {
  padding-right: 125px !important; }

.pl-125 {
  padding-left: 125px !important; }

.mb-130 {
  margin-bottom: 130px !important; }

.mt-130 {
  margin-top: 130px !important; }

.mr-130 {
  margin-right: 130px !important; }

.ml-130 {
  margin-left: 130px !important; }

.pb-130 {
  padding-bottom: 130px !important; }

.pt-130 {
  padding-top: 130px !important; }

.pr-130 {
  padding-right: 130px !important; }

.pl-130 {
  padding-left: 130px !important; }

.mb-135 {
  margin-bottom: 135px !important; }

.mt-135 {
  margin-top: 135px !important; }

.mr-135 {
  margin-right: 135px !important; }

.ml-135 {
  margin-left: 135px !important; }

.pb-135 {
  padding-bottom: 135px !important; }

.pt-135 {
  padding-top: 135px !important; }

.pr-135 {
  padding-right: 135px !important; }

.pl-135 {
  padding-left: 135px !important; }

.mb-140 {
  margin-bottom: 140px !important; }

.mt-140 {
  margin-top: 140px !important; }

.mr-140 {
  margin-right: 140px !important; }

.ml-140 {
  margin-left: 140px !important; }

.pb-140 {
  padding-bottom: 140px !important; }

.pt-140 {
  padding-top: 140px !important; }

.pr-140 {
  padding-right: 140px !important; }

.pl-140 {
  padding-left: 140px !important; }

.mb-145 {
  margin-bottom: 145px !important; }

.mt-145 {
  margin-top: 145px !important; }

.mr-145 {
  margin-right: 145px !important; }

.ml-145 {
  margin-left: 145px !important; }

.pb-145 {
  padding-bottom: 145px !important; }

.pt-145 {
  padding-top: 145px !important; }

.pr-145 {
  padding-right: 145px !important; }

.pl-145 {
  padding-left: 145px !important; }

.mb-150 {
  margin-bottom: 150px !important; }

.mt-150 {
  margin-top: 150px !important; }

.mr-150 {
  margin-right: 150px !important; }

.ml-150 {
  margin-left: 150px !important; }

.pb-150 {
  padding-bottom: 150px !important; }

.pt-150 {
  padding-top: 150px !important; }

.pr-150 {
  padding-right: 150px !important; }

.pl-150 {
  padding-left: 150px !important; }

.mb-155 {
  margin-bottom: 155px !important; }

.mt-155 {
  margin-top: 155px !important; }

.mr-155 {
  margin-right: 155px !important; }

.ml-155 {
  margin-left: 155px !important; }

.pb-155 {
  padding-bottom: 155px !important; }

.pt-155 {
  padding-top: 155px !important; }

.pr-155 {
  padding-right: 155px !important; }

.pl-155 {
  padding-left: 155px !important; }

.mb-160 {
  margin-bottom: 160px !important; }

.mt-160 {
  margin-top: 160px !important; }

.mr-160 {
  margin-right: 160px !important; }

.ml-160 {
  margin-left: 160px !important; }

.pb-160 {
  padding-bottom: 160px !important; }

.pt-160 {
  padding-top: 160px !important; }

.pr-160 {
  padding-right: 160px !important; }

.pl-160 {
  padding-left: 160px !important; }

.mb-165 {
  margin-bottom: 165px !important; }

.mt-165 {
  margin-top: 165px !important; }

.mr-165 {
  margin-right: 165px !important; }

.ml-165 {
  margin-left: 165px !important; }

.pb-165 {
  padding-bottom: 165px !important; }

.pt-165 {
  padding-top: 165px !important; }

.pr-165 {
  padding-right: 165px !important; }

.pl-165 {
  padding-left: 165px !important; }

.mb-170 {
  margin-bottom: 170px !important; }

.mt-170 {
  margin-top: 170px !important; }

.mr-170 {
  margin-right: 170px !important; }

.ml-170 {
  margin-left: 170px !important; }

.pb-170 {
  padding-bottom: 170px !important; }

.pt-170 {
  padding-top: 170px !important; }

.pr-170 {
  padding-right: 170px !important; }

.pl-170 {
  padding-left: 170px !important; }

.mb-175 {
  margin-bottom: 175px !important; }

.mt-175 {
  margin-top: 175px !important; }

.mr-175 {
  margin-right: 175px !important; }

.ml-175 {
  margin-left: 175px !important; }

.pb-175 {
  padding-bottom: 175px !important; }

.pt-175 {
  padding-top: 175px !important; }

.pr-175 {
  padding-right: 175px !important; }

.pl-175 {
  padding-left: 175px !important; }

.mb-180 {
  margin-bottom: 180px !important; }

.mt-180 {
  margin-top: 180px !important; }

.mr-180 {
  margin-right: 180px !important; }

.ml-180 {
  margin-left: 180px !important; }

.pb-180 {
  padding-bottom: 180px !important; }

.pt-180 {
  padding-top: 180px !important; }

.pr-180 {
  padding-right: 180px !important; }

.pl-180 {
  padding-left: 180px !important; }

.mb-185 {
  margin-bottom: 185px !important; }

.mt-185 {
  margin-top: 185px !important; }

.mr-185 {
  margin-right: 185px !important; }

.ml-185 {
  margin-left: 185px !important; }

.pb-185 {
  padding-bottom: 185px !important; }

.pt-185 {
  padding-top: 185px !important; }

.pr-185 {
  padding-right: 185px !important; }

.pl-185 {
  padding-left: 185px !important; }

.mb-190 {
  margin-bottom: 190px !important; }

.mt-190 {
  margin-top: 190px !important; }

.mr-190 {
  margin-right: 190px !important; }

.ml-190 {
  margin-left: 190px !important; }

.pb-190 {
  padding-bottom: 190px !important; }

.pt-190 {
  padding-top: 190px !important; }

.pr-190 {
  padding-right: 190px !important; }

.pl-190 {
  padding-left: 190px !important; }

.mb-195 {
  margin-bottom: 195px !important; }

.mt-195 {
  margin-top: 195px !important; }

.mr-195 {
  margin-right: 195px !important; }

.ml-195 {
  margin-left: 195px !important; }

.pb-195 {
  padding-bottom: 195px !important; }

.pt-195 {
  padding-top: 195px !important; }

.pr-195 {
  padding-right: 195px !important; }

.pl-195 {
  padding-left: 195px !important; }

.mb-200 {
  margin-bottom: 200px !important; }

.mt-200 {
  margin-top: 200px !important; }

.mr-200 {
  margin-right: 200px !important; }

.ml-200 {
  margin-left: 200px !important; }

.pb-200 {
  padding-bottom: 200px !important; }

.pt-200 {
  padding-top: 200px !important; }

.pr-200 {
  padding-right: 200px !important; }

.pl-200 {
  padding-left: 200px !important; }

.mb-205 {
  margin-bottom: 205px !important; }

.mt-205 {
  margin-top: 205px !important; }

.mr-205 {
  margin-right: 205px !important; }

.ml-205 {
  margin-left: 205px !important; }

.pb-205 {
  padding-bottom: 205px !important; }

.pt-205 {
  padding-top: 205px !important; }

.pr-205 {
  padding-right: 205px !important; }

.pl-205 {
  padding-left: 205px !important; }

.mb-210 {
  margin-bottom: 210px !important; }

.mt-210 {
  margin-top: 210px !important; }

.mr-210 {
  margin-right: 210px !important; }

.ml-210 {
  margin-left: 210px !important; }

.pb-210 {
  padding-bottom: 210px !important; }

.pt-210 {
  padding-top: 210px !important; }

.pr-210 {
  padding-right: 210px !important; }

.pl-210 {
  padding-left: 210px !important; }

.mb-215 {
  margin-bottom: 215px !important; }

.mt-215 {
  margin-top: 215px !important; }

.mr-215 {
  margin-right: 215px !important; }

.ml-215 {
  margin-left: 215px !important; }

.pb-215 {
  padding-bottom: 215px !important; }

.pt-215 {
  padding-top: 215px !important; }

.pr-215 {
  padding-right: 215px !important; }

.pl-215 {
  padding-left: 215px !important; }

.mb-220 {
  margin-bottom: 220px !important; }

.mt-220 {
  margin-top: 220px !important; }

.mr-220 {
  margin-right: 220px !important; }

.ml-220 {
  margin-left: 220px !important; }

.pb-220 {
  padding-bottom: 220px !important; }

.pt-220 {
  padding-top: 220px !important; }

.pr-220 {
  padding-right: 220px !important; }

.pl-220 {
  padding-left: 220px !important; }

.mb-225 {
  margin-bottom: 225px !important; }

.mt-225 {
  margin-top: 225px !important; }

.mr-225 {
  margin-right: 225px !important; }

.ml-225 {
  margin-left: 225px !important; }

.pb-225 {
  padding-bottom: 225px !important; }

.pt-225 {
  padding-top: 225px !important; }

.pr-225 {
  padding-right: 225px !important; }

.pl-225 {
  padding-left: 225px !important; }

.mb-230 {
  margin-bottom: 230px !important; }

.mt-230 {
  margin-top: 230px !important; }

.mr-230 {
  margin-right: 230px !important; }

.ml-230 {
  margin-left: 230px !important; }

.pb-230 {
  padding-bottom: 230px !important; }

.pt-230 {
  padding-top: 230px !important; }

.pr-230 {
  padding-right: 230px !important; }

.pl-230 {
  padding-left: 230px !important; }

.mb-235 {
  margin-bottom: 235px !important; }

.mt-235 {
  margin-top: 235px !important; }

.mr-235 {
  margin-right: 235px !important; }

.ml-235 {
  margin-left: 235px !important; }

.pb-235 {
  padding-bottom: 235px !important; }

.pt-235 {
  padding-top: 235px !important; }

.pr-235 {
  padding-right: 235px !important; }

.pl-235 {
  padding-left: 235px !important; }

.mb-240 {
  margin-bottom: 240px !important; }

.mt-240 {
  margin-top: 240px !important; }

.mr-240 {
  margin-right: 240px !important; }

.ml-240 {
  margin-left: 240px !important; }

.pb-240 {
  padding-bottom: 240px !important; }

.pt-240 {
  padding-top: 240px !important; }

.pr-240 {
  padding-right: 240px !important; }

.pl-240 {
  padding-left: 240px !important; }

.mb-245 {
  margin-bottom: 245px !important; }

.mt-245 {
  margin-top: 245px !important; }

.mr-245 {
  margin-right: 245px !important; }

.ml-245 {
  margin-left: 245px !important; }

.pb-245 {
  padding-bottom: 245px !important; }

.pt-245 {
  padding-top: 245px !important; }

.pr-245 {
  padding-right: 245px !important; }

.pl-245 {
  padding-left: 245px !important; }

.mb-250 {
  margin-bottom: 250px !important; }

.mt-250 {
  margin-top: 250px !important; }

.mr-250 {
  margin-right: 250px !important; }

.ml-250 {
  margin-left: 250px !important; }

.pb-250 {
  padding-bottom: 250px !important; }

.pt-250 {
  padding-top: 250px !important; }

.pr-250 {
  padding-right: 250px !important; }

.pl-250 {
  padding-left: 250px !important; }

.mb-255 {
  margin-bottom: 255px !important; }

.mt-255 {
  margin-top: 255px !important; }

.mr-255 {
  margin-right: 255px !important; }

.ml-255 {
  margin-left: 255px !important; }

.pb-255 {
  padding-bottom: 255px !important; }

.pt-255 {
  padding-top: 255px !important; }

.pr-255 {
  padding-right: 255px !important; }

.pl-255 {
  padding-left: 255px !important; }

.mb-260 {
  margin-bottom: 260px !important; }

.mt-260 {
  margin-top: 260px !important; }

.mr-260 {
  margin-right: 260px !important; }

.ml-260 {
  margin-left: 260px !important; }

.pb-260 {
  padding-bottom: 260px !important; }

.pt-260 {
  padding-top: 260px !important; }

.pr-260 {
  padding-right: 260px !important; }

.pl-260 {
  padding-left: 260px !important; }

.mb-265 {
  margin-bottom: 265px !important; }

.mt-265 {
  margin-top: 265px !important; }

.mr-265 {
  margin-right: 265px !important; }

.ml-265 {
  margin-left: 265px !important; }

.pb-265 {
  padding-bottom: 265px !important; }

.pt-265 {
  padding-top: 265px !important; }

.pr-265 {
  padding-right: 265px !important; }

.pl-265 {
  padding-left: 265px !important; }

.mb-270 {
  margin-bottom: 270px !important; }

.mt-270 {
  margin-top: 270px !important; }

.mr-270 {
  margin-right: 270px !important; }

.ml-270 {
  margin-left: 270px !important; }

.pb-270 {
  padding-bottom: 270px !important; }

.pt-270 {
  padding-top: 270px !important; }

.pr-270 {
  padding-right: 270px !important; }

.pl-270 {
  padding-left: 270px !important; }

.mb-275 {
  margin-bottom: 275px !important; }

.mt-275 {
  margin-top: 275px !important; }

.mr-275 {
  margin-right: 275px !important; }

.ml-275 {
  margin-left: 275px !important; }

.pb-275 {
  padding-bottom: 275px !important; }

.pt-275 {
  padding-top: 275px !important; }

.pr-275 {
  padding-right: 275px !important; }

.pl-275 {
  padding-left: 275px !important; }

.mb-280 {
  margin-bottom: 280px !important; }

.mt-280 {
  margin-top: 280px !important; }

.mr-280 {
  margin-right: 280px !important; }

.ml-280 {
  margin-left: 280px !important; }

.pb-280 {
  padding-bottom: 280px !important; }

.pt-280 {
  padding-top: 280px !important; }

.pr-280 {
  padding-right: 280px !important; }

.pl-280 {
  padding-left: 280px !important; }

.mb-285 {
  margin-bottom: 285px !important; }

.mt-285 {
  margin-top: 285px !important; }

.mr-285 {
  margin-right: 285px !important; }

.ml-285 {
  margin-left: 285px !important; }

.pb-285 {
  padding-bottom: 285px !important; }

.pt-285 {
  padding-top: 285px !important; }

.pr-285 {
  padding-right: 285px !important; }

.pl-285 {
  padding-left: 285px !important; }

.mb-290 {
  margin-bottom: 290px !important; }

.mt-290 {
  margin-top: 290px !important; }

.mr-290 {
  margin-right: 290px !important; }

.ml-290 {
  margin-left: 290px !important; }

.pb-290 {
  padding-bottom: 290px !important; }

.pt-290 {
  padding-top: 290px !important; }

.pr-290 {
  padding-right: 290px !important; }

.pl-290 {
  padding-left: 290px !important; }

.mb-295 {
  margin-bottom: 295px !important; }

.mt-295 {
  margin-top: 295px !important; }

.mr-295 {
  margin-right: 295px !important; }

.ml-295 {
  margin-left: 295px !important; }

.pb-295 {
  padding-bottom: 295px !important; }

.pt-295 {
  padding-top: 295px !important; }

.pr-295 {
  padding-right: 295px !important; }

.pl-295 {
  padding-left: 295px !important; }

/* -------------------
  Date, time, phone
--------------------*/
select {
  background-color: #fff;
  background-image: url(../images/common/select-down.svg);
  background-repeat: no-repeat;
  background-position: right 15px center;
  background-size: 13px auto;
  border: 1px solid #d1d1d1;
  padding: 11px 16px;
  padding-right: 35px;
  width: 290px;
  border-radius: 5px; }
  @media screen and (max-width: 767px) {
    select {
      width: 100%;
      padding: 15px 28px;
      padding-right: 35px; } }

.ui-datepicker select {
  padding: 0;
  background-size: 10px auto; }

/* Datepicker 全体のサイズを調整 */
.ui-datepicker {
  width: 280px !important;
  font-size: 14px !important; }

/* 日付セルのサイズを調整 */
.ui-datepicker td span,
.ui-datepicker td a {
  width: 32px !important;
  height: 32px !important;
  line-height: 32px !important;
  font-size: 14px !important;
  display: inline-block;
  padding: 0 !important; }

/* 月・年のタイトル部分 */
.ui-datepicker-title {
  font-size: 16px !important; }

/* 前月・次月ボタン */
.ui-datepicker-prev,
.ui-datepicker-next {
  top: 5px !important; }

.align-center {
  text-align: center; }

.align-left {
  text-align: left !important; }

.align-right {
  text-align: right; }

.align-top {
  align-items: flex-start !important; }

.cc {
  display: flex;
  justify-content: center;
  align-items: center; }

.d_flex {
  display: flex; }
  .d_flex.between {
    justify-content: space-between; }
  .d_flex.center {
    justify-content: center; }
  @media screen and (max-width: 767px) {
    .d_flex {
      display: block; } }

.d_flex2 {
  display: flex;
  align-items: center; }

.d_flex3 {
  display: flex;
  justify-content: center; }

.col2-75 {
  display: flex;
  justify-content: space-between; }
  @media screen and (max-width: 767px) {
    .col2-75 {
      display: block; } }
  @media screen and (max-width: 767px) {
    .col2-75--left {
      width: 100%;
      margin-bottom: 20px; } }
  .col2-75--right {
    width: 25%;
    margin-left: 20px;
    flex-shrink: 0; }
    @media screen and (max-width: 767px) {
      .col2-75--right {
        width: 100%;
        margin-left: 0; } }

.col2-25 {
  display: flex;
  justify-content: space-between; }
  @media screen and (max-width: 767px) {
    .col2-25 {
      display: block; } }
  .col2-25--left {
    width: 25%;
    margin-right: 20px;
    flex-shrink: 0; }
    @media screen and (max-width: 767px) {
      .col2-25--left {
        width: 100%;
        margin-right: 0;
        margin-bottom: 20px; } }
  @media screen and (max-width: 767px) {
    .col2-25--right {
      width: 100%;
      margin-bottom: 20px; } }

.col2 {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -10px; }
  @media screen and (max-width: 767px) {
    .col2 {
      display: block;
      margin: 0; } }
  .col2-item {
    width: 50%;
    padding: 0 10px;
    margin-bottom: 20px; }
    @media screen and (max-width: 767px) {
      .col2-item {
        width: 100%;
        padding: 0; } }
    .col2-item--inner {
      display: block; }

.col3 {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -10px; }
  @media screen and (max-width: 767px) {
    .col3 {
      display: block;
      margin: 0; } }
  .col3-item {
    width: 33.33%;
    padding: 0 10px;
    margin-bottom: 20px; }
    @media screen and (max-width: 767px) {
      .col3-item {
        width: 100%;
        padding: 0; } }
    .col3-item--inner {
      display: block; }

.col4 {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -10px; }
  @media screen and (max-width: 767px) {
    .col4 {
      display: block;
      margin: 0; } }
  .col4-item {
    width: 25%;
    padding: 0 10px;
    margin-bottom: 20px; }
    @media screen and (max-width: 767px) {
      .col4-item {
        width: 100%;
        padding: 0; } }
    .col4-item--inner {
      display: block; }

.col5 {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -10px; }
  @media screen and (max-width: 767px) {
    .col5 {
      display: block;
      margin: 0; } }
  .col5-item {
    width: 20%;
    padding: 0 10px;
    margin-bottom: 20px; }
    @media screen and (max-width: 767px) {
      .col5-item {
        width: 100%;
        padding: 0; } }
    .col5-item--inner {
      display: block; }

.pagination {
  line-height: 1;
  font-size: 25px;
  margin-top: 80px; }
  .pagination .wp-pagenavi {
    padding-top: 48px;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 15px; }
    .pagination .wp-pagenavi .page,
    .pagination .wp-pagenavi .current {
      color: #d1111c;
      font-weight: 500;
      width: 44px;
      height: 44px;
      line-height: 44px;
      display: flex;
      align-items: center;
      justify-content: center;
      border: 2px solid #d1111c;
      border-radius: 50%; }
    .pagination .wp-pagenavi .current {
      background: #d1111c;
      color: #fff; }
    .pagination .wp-pagenavi .nextpostslink,
    .pagination .wp-pagenavi .last,
    .pagination .wp-pagenavi .previouspostslink,
    .pagination .wp-pagenavi .first {
      width: 44px;
      height: 44px;
      display: flex;
      align-items: center;
      justify-content: center; }
      .pagination .wp-pagenavi .nextpostslink:before,
      .pagination .wp-pagenavi .last:before,
      .pagination .wp-pagenavi .previouspostslink:before,
      .pagination .wp-pagenavi .first:before {
        font-size: 11px;
        position: relative;
        width: 100%;
        height: 100%; }
    .pagination .wp-pagenavi .nextpostslink:before {
      content: url(../images/pagination/right.svg); }
    .pagination .wp-pagenavi .last:before {
      content: url(../images/pagination/right2.svg); }
    .pagination .wp-pagenavi .previouspostslink:before {
      content: url(../images/pagination/left.svg); }
    .pagination .wp-pagenavi .first:before {
      content: url(../images/pagination/left2.svg); }
    .pagination .wp-pagenavi .disabled {
      opacity: 0.4 !important;
      pointer-events: none;
      cursor: default; }

.store_news-pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px; }
  @media screen and (max-width: 767px) {
    .store_news-pagination {
      gap: 10px; } }
  .store_news-pagination .page-numbers {
    color: #d1111c;
    font-weight: 500;
    width: 44px;
    height: 44px;
    line-height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #d1111c;
    border-radius: 50%; }
    @media screen and (max-width: 767px) {
      .store_news-pagination .page-numbers {
        width: 34px;
        height: 34px;
        line-height: 34px;
        font-size: 15px; } }
    .store_news-pagination .page-numbers.current {
      background: #d1111c;
      color: #fff; }
    .store_news-pagination .page-numbers.next {
      background: url(../images/pagination/right.svg) no-repeat center/100% 100%;
      border: none; }
    .store_news-pagination .page-numbers.prev {
      background: url(../images/pagination/left.svg) no-repeat center/100% 100%;
      border: none; }

/* -------------------
	BREADCRUMB
--------------------*/
.breadcrumb {
  margin-top: 22px;
  padding: 0 30px; }
  @media screen and (max-width: 1050px) {
    .breadcrumb {
      white-space: nowrap;
      overflow-x: auto;
      margin-top: 5px;
      margin-bottom: 12px; } }
  @media screen and (max-width: 1050px) {
    .breadcrumb {
      padding: 0 8px; } }
  .breadcrumb-wrapper {
    padding-top: 15px; }
    @media screen and (max-width: 1050px) {
      .breadcrumb-wrapper {
        padding: 0 0 5px 0; } }
  .breadcrumb ul li {
    display: inline-block;
    font-size: 0.75rem;
    position: relative;
    padding-right: 20px;
    color: #000; }
    .breadcrumb ul li a {
      display: inline-block;
      color: #68A0FA;
      transition: all .3s; }
      .breadcrumb ul li a:hover {
        opacity: .8; }
    .breadcrumb ul li:last-child {
      padding-right: 0; }
      .breadcrumb ul li:last-child:before {
        display: none; }
    .breadcrumb ul li:before {
      display: inline-block;
      position: absolute;
      top: 7px;
      right: 4px;
      width: 4px;
      height: 5px;
      background: url(../images/common/icon-breadcrumb.svg) center center/100% 100% no-repeat;
      content: ""; }
    @media screen and (max-width: 1050px) {
      .breadcrumb ul li {
        margin-bottom: 8px; } }
    .breadcrumb ul li a {
      transition: all .3s; }
      .breadcrumb ul li a:hover {
        opacity: .7; }

/* -------------------
  THUMBNAIL, IMAGE
--------------------*/
.thumb-ttl {
  margin-top: 10px; }

/* -------------------
  PAGE TOP
--------------------*/
/* -------------------
  ACCORDION
--------------------*/
.accordion-label {
  background: #F2F5F7;
  border-bottom: 1px solid #fff;
  box-sizing: border-box;
  cursor: pointer;
  display: flex;
  font-weight: 700;
  height: 65px;
  align-items: center;
  padding: 25px 70px 25px 20px;
  position: relative;
  transition: all 0.6s; }
  .accordion-label:after {
    position: absolute;
    right: 20px;
    top: 50%;
    display: inline-block;
    border: solid #939393;
    border-width: 0 0 2px 2px;
    display: inline-block;
    padding: 2px;
    transform: translateY(-50%) rotate(-45deg);
    -webkit-transform: translateY(-50%) rotate(-45deg);
    transition: all .25s;
    content: ""; }
  .accordion-label.active:after {
    transform: translateY(-50%) rotate(135deg);
    -webkit-transform: translateY(-50%) rotate(135deg); }

.accordion-cnt {
  display: none;
  padding: 25px 70px 25px 20px; }

/* -------------------
  TABS
--------------------*/
@media screen and (max-width: 1050px) {
  .tabs-navWrapper {
    white-space: nowrap;
    overflow-x: auto; } }

.tabs-nav {
  display: flex;
  width: 100%; }

.tabs-item {
  width: 220px;
  max-width: 100%;
  font-size: 1.125rem;
  color: #818181;
  background-color: #EBEBEB;
  margin-right: 8px;
  padding: 17px 15px;
  cursor: pointer;
  text-align: center;
  transition: all .3s; }
  @media screen and (max-width: 767px) {
    .tabs-item {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 33.33%;
      margin-right: 0;
      font-size: 0.875rem; } }
  .tabs-item:last-child {
    margin-right: 0; }
  .tabs-item.active, .tabs-item:hover {
    color: #5DC1CF;
    background-color: #fff; }
  @media screen and (max-width: 767px) {
    .tabs-item.type2 {
      width: 50%; } }
  .tabs-item.type3 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 126px;
    max-width: 20%;
    font-size: 0.875rem;
    font-weight: bold;
    padding: 17px 3px;
    margin-right: 0; }
    @media screen and (max-width: 767px) {
      .tabs-item.type3 {
        max-width: 100%;
        width: 100%;
        font-size: 0.75rem; } }

.tabs-cnt {
  background-color: #fff;
  padding: 30px 20px 0; }
  .tabs-cnt.type2 {
    padding-bottom: 40px; }
  .tabs-cnt.type3 {
    padding-left: 0;
    padding-right: 0; }
  @media screen and (max-width: 767px) {
    .tabs-cnt.type4 {
      padding-left: 0;
      padding-right: 0; } }

@media screen and (max-width: 1050px) {
  .tabs2-navWrapper {
    white-space: nowrap;
    overflow-x: auto; } }

.tabs2-nav {
  margin: 0 auto;
  padding: 0 2vw; }

.tabs2-item {
  padding: 20px 15px;
  color: #474F5F;
  font-size: 1.5rem;
  font-weight: bold;
  background: none;
  cursor: pointer;
  text-align: center;
  transition: all .3s; }
  @media screen and (max-width: 1050px) {
    .tabs2-item {
      font-size: 1.25rem; } }
  .tabs2-item span {
    padding-top: 42px;
    background: url(../images/common/icon-fac-black.svg) top center no-repeat; }
  @media screen and (min-width: 1051px) {
    .tabs2-item {
      cursor: auto; } }

.tabs2-title {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 170px;
  background: url(../images/top/bg-tabItem-blue.svg) no-repeat;
  background-size: 100% 100%;
  margin: 0 0 7px; }
  .tabs2-title-type2 {
    background-image: url(../images/top/bg-tabItem-pink.svg); }
    .tabs2-title-type2 span {
      background: url(../images/common/icon-doc-black.svg) top center no-repeat; }
  @media screen and (max-width: 1050px) {
    .tabs2-title {
      height: 39vw; } }

.tabs2-cnt {
  display: flex;
  background-color: #fff;
  margin: 7px 0 0; }

.tabs2-panel {
  width: 50%;
  padding: 0 15px; }

.tabs2-menu .thumb {
  position: relative;
  background: url(../images/top/bg-card-blue.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center center;
  height: 139px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 0 20px; }
  @media screen and (max-width: 767px) {
    .tabs2-menu .thumb {
      height: 29vw; } }
  .tabs2-menu .thumb figcaption {
    font-size: 0.9375rem;
    font-weight: 700;
    position: absolute;
    bottom: 15px;
    display: block;
    text-align: center;
    width: 100%; }
    @media screen and (max-width: 1050px) {
      .tabs2-menu .thumb figcaption {
        font-size: 0.8125rem;
        bottom: 12px; } }
  @media screen and (max-width: 1050px) {
    .tabs2-menu .thumb img {
      max-width: 65%;
      max-height: 65%; } }

.tabs2-menu-type2 .thumb {
  background-image: url(../images/top/bg-card-green.png); }

@media screen and (max-width: 1050px) {
  .tabs2-menu {
    display: flex;
    flex-flow: row wrap; } }

.tabs2-menu li {
  width: 32%;
  margin: 0 calc(4% / 2) 10px 0; }
  .tabs2-menu li:nth-of-type(3n) {
    margin: 0 0 10px 0; }

.modal-complete {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  width: 180px;
  height: 180px;
  padding: 0;
  margin: 0;
  color: #ffffff;
  background: #191b1d;
  opacity: 0.8;
  border-radius: 3px;
  z-index: 8000; }
  .modal-complete--cnt {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    height: 100%; }
    .modal-complete--cnt-icon {
      text-align: center; }
      .modal-complete--cnt-icon img {
        width: 46px; }
    .modal-complete--cnt-msg {
      margin-top: 20px;
      font-size: 0.875rem;
      line-height: 1.25rem;
      text-align: center; }

.btn-close {
  background: #818181 url(../images/common/icon-x.svg) center center no-repeat;
  opacity: 1;
  border-radius: 50%; }

.modal-dialog.type2 {
  max-width: 600px; }

.modal-confirm {
  width: 335px;
  max-width: 100%;
  padding: 5px 20px 25px;
  margin: 0 auto;
  text-align: center; }
  @media screen and (max-width: 767px) {
    .modal-confirm {
      padding-bottom: 35px; } }
  .modal-confirm .modal-header {
    margin-bottom: 30px;
    border-bottom: none;
    padding-right: 0; }
  .modal-confirm .btn-white {
    margin-bottom: 10px; }
    @media screen and (max-width: 767px) {
      .modal-confirm .btn-white {
        margin-bottom: 20px; } }
  .modal-confirm .btn-blue {
    margin-bottom: 15px; }
    @media screen and (max-width: 767px) {
      .modal-confirm .btn-blue {
        margin-bottom: 25px; } }
  .modal-confirm .btn-white,
  .modal-confirm .btn-blue {
    display: block;
    width: 100%;
    height: 52px;
    line-height: 52px;
    padding: 0; }
  .modal-confirm--ttl {
    color: #474f5f;
    font-weight: bold;
    margin-bottom: 15px; }
  .modal-confirm--msg {
    margin-bottom: 30px;
    font-size: 0.875rem; }
  .modal-confirm--close {
    color: #68a0fa;
    font-size: 0.75rem;
    cursor: pointer; }

.modal-backdrop.show {
  opacity: 0.8; }

.modal-colection {
  width: 600px;
  max-width: 95%;
  margin: 0 auto;
  text-align: center; }
  @media screen and (max-width: 767px) {
    .modal-colection {
      padding-bottom: 35px; } }
  .modal-colection .btn-close {
    margin-right: 0;
    padding: 0;
    background: url(../images/common/icon-x.svg) center center no-repeat; }
  .modal-colection .modal-header {
    padding: 15px 20px;
    margin-bottom: 30px;
    border-bottom: none;
    background-color: #5dc1cf; }
    .modal-colection .modal-header--ttl {
      font-size: 1rem;
      line-height: 1;
      font-weight: bold;
      color: #fff; }
  .modal-colection--close {
    color: #68a0fa;
    font-size: 0.75rem;
    cursor: pointer; }
  .modal-colection--list {
    padding: 10px 30px 20px; }
    .modal-colection--list-row {
      display: flex;
      flex-wrap: wrap;
      margin: 0 -10px; }
      .modal-colection--list-row-item {
        width: 33.33%;
        padding: 10px; }
        @media screen and (max-width: 767px) {
          .modal-colection--list-row-item {
            width: 100%; } }
        .modal-colection--list-row-item a {
          position: relative;
          display: flex;
          justify-content: center;
          align-items: center;
          width: 100%;
          height: 60px;
          padding-bottom: 20px;
          font-size: 1rem;
          font-family: "Dela Gothic One", sans-serif;
          color: #474f5f;
          border: solid 1px #5dc1cf;
          background-color: #f4f4f4;
          border-radius: 2px;
          transition: all 0.25s; }
          @media screen and (max-width: 767px) {
            .modal-colection--list-row-item a {
              padding: 0 15px 0 45px; } }
          .modal-colection--list-row-item a:hover {
            opacity: 0.7; }
          .modal-colection--list-row-item a:after {
            position: absolute;
            bottom: 10px;
            left: 50%;
            transform: translateX(-50%);
            display: block;
            width: 14px;
            height: 14px;
            border-radius: 50%;
            border: solid 1px #5dc1cf;
            content: ""; }
            @media screen and (max-width: 767px) {
              .modal-colection--list-row-item a:after {
                left: 25px;
                top: 50%;
                transform: translate(0, -50%); } }
        .modal-colection--list-row-item.disable a {
          color: #c7c7c7;
          border-color: #ebebeb;
          background-color: #ebebeb; }
          .modal-colection--list-row-item.disable a:after {
            width: 6px;
            height: 2px;
            bottom: 16px;
            background-color: #c7c7c7;
            border: none; }
        .modal-colection--list-row-item.cancel a {
          color: #c7c7c7;
          border-color: #ebebeb;
          background-color: #f4f4f4; }
          .modal-colection--list-row-item.cancel a:after {
            width: auto;
            height: auto;
            bottom: 5px;
            font-size: 1.25rem;
            background: none;
            border: none;
            color: #5dc1cf;
            font-weight: normal;
            content: "×"; }

.modal-find {
  max-width: 1000px; }
  .modal-find .modal-header {
    border-bottom: none; }
  .modal-find .checkboxWrap label {
    width: 100%;
    padding-left: 28px;
    color: #818181;
    font-size: 0.875rem; }
  .modal-find .checkboxWrap-outer {
    position: relative;
    display: block;
    text-align: left;
    padding-right: 28px;
    padding: 15px 28px 15px 15px;
    margin-right: 0;
    width: 100%;
    background-color: #fff; }
    .modal-find .checkboxWrap-outer:hover {
      background-color: #effdf9; }
      .modal-find .checkboxWrap-outer:hover .checkboxWrap label {
        color: #5dc1cf; }
    .modal-find .checkboxWrap-outer:after {
      position: absolute;
      top: 50%;
      right: 22px;
      transform: translateY(-50%);
      display: block;
      width: 5px;
      height: 10px;
      background: url(../images/common/icon-arrow-right-blue.svg) no-repeat;
      background-size: contain;
      content: ""; }
  .modal-find .tabs {
    display: flex;
    padding: 0 40px 40px; }
    .modal-find .tabs-navWrapper {
      display: flex;
      flex-wrap: wrap;
      width: 30%;
      min-width: 200px;
      flex-shrink: 0;
      border-right: solid 1px #ebebeb; }
    .modal-find .tabs-nav {
      display: flex;
      flex-wrap: wrap;
      flex-flow: column; }
    .modal-find .tabs-cnt {
      padding: 0;
      width: 100%; }
      .modal-find .tabs-cnt--list {
        display: flex;
        flex-wrap: wrap;
        height: 550px;
        overflow-y: auto; }
      .modal-find .tabs-cnt--item {
        width: 50%;
        background-color: #fafafa; }
        .modal-find .tabs-cnt--item:nth-child(2n + 1) {
          border-right: solid 1px #ebebeb; }
  .modal-find--foot {
    text-align: center;
    padding-bottom: 30px; }
    .modal-find--foot-direct {
      margin-bottom: 10px; }

@media screen and (max-width: 767px) {
  .modal-form .container6 {
    padding: 0 20px; } }

.modal-form .form-search {
  margin-bottom: 10px; }
  .modal-form .form-search .input.hasBtn {
    font-size: 0.875rem; }

.modal-form .form-search02--inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 20px 0 30px; }
  @media screen and (max-width: 767px) {
    .modal-form .form-search02--inner {
      display: block; } }

@media screen and (max-width: 767px) {
  .modal-form .form-search02--label {
    text-align: left;
    margin-bottom: 8px; } }

.modal-form .form-search02--cnt .form-input {
  display: flex;
  align-items: center; }
  .modal-form .form-search02--cnt .form-input .input._date {
    width: 170px;
    margin-left: 30px; }

/* -------------------
  SLICK SLIDER
--------------------*/
body .slick-prev,
body .slick-next {
  width: 43px;
  height: 43px;
  top: 50%;
  bottom: auto;
  border-radius: 0;
  transform: translate(0, -50%); }
  @media screen and (max-width: 767px) {
    body .slick-prev,
    body .slick-next {
      width: 35px;
      height: 35px; } }
  body .slick-prev:before, body .slick-prev:after,
  body .slick-next:before,
  body .slick-next:after {
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    content: "";
    display: block;
    opacity: 1;
    width: 100%;
    height: 100%; }

body .slick-prev {
  left: -60px; }
  @media screen and (max-width: 767px) {
    body .slick-prev {
      left: -18px; } }
  body .slick-prev:before {
    background-image: url(../images/slick/left.svg); }
    @media screen and (max-width: 767px) {
      body .slick-prev:before {
        background-image: url(../images/slick/left-black.svg); } }

body .slick-next {
  right: -60px; }
  @media screen and (max-width: 767px) {
    body .slick-next {
      right: -18px; } }
  body .slick-next:before {
    background-image: url(../images/slick/right.svg); }
    @media screen and (max-width: 767px) {
      body .slick-next:before {
        background-image: url(../images/slick/right-black.svg); } }

body .slick-dots {
  bottom: -30px;
  left: 50%;
  transform: translate(-50%, 0); }
  body .slick-dots li {
    bottom: 0 !important;
    width: 10px;
    height: 10px;
    margin: 0 3px;
    padding: 0;
    opacity: 1;
    cursor: pointer; }
    body .slick-dots li button {
      font-size: 0;
      line-height: 0;
      display: block;
      width: 100%;
      height: 100%;
      padding: 0;
      cursor: pointer;
      color: transparent;
      border: 0;
      outline: none;
      background: transparent; }
      body .slick-dots li button:before {
        line-height: 20px;
        position: absolute;
        top: 0;
        left: 0;
        transform: translate(0, 0);
        width: 100%;
        height: 100%;
        border-radius: 100vh;
        content: "" !important;
        display: block;
        background-color: #fff;
        text-align: center;
        opacity: 0.5;
        color: #fff;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    body .slick-dots li.slick-active button:before {
      background-color: #fff;
      opacity: 1; }

.l-header {
  position: relative;
  z-index: 10;
  width: 100%;
  background: #d1111c;
  color: #fff;
  display: flex;
  justify-content: space-between;
  padding: 10px;
  padding-right: 2.63543vw;
  padding-left: 0; }
  .l-header__logo-set {
    display: flex;
    align-items: center;
    gap: 40px;
    background: url(../images/common/logo-bg.svg) no-repeat right center/375px auto;
    height: 115px;
    padding: 0 90px 0 30px; }
    @media screen and (max-width: 767px) {
      .l-header__logo-set {
        padding: 0 60px 0 20px;
        gap: 5.12821vw; } }
  .l-header__logo {
    padding-top: 12px; }
    @media screen and (max-width: 767px) {
      .l-header__logo img {
        width: 70px; } }
  .l-header__stores {
    align-items: center;
    font-weight: bold;
    line-height: 1.5;
    padding-bottom: 12px; }
    .l-header__stores a {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center; }
    .l-header__stores .jp {
      font-size: 18px; }
      @media screen and (max-width: 767px) {
        .l-header__stores .jp {
          font-size: 4.10256vw; } }
    .l-header__stores .en {
      font-size: 15px; }
      @media screen and (max-width: 767px) {
        .l-header__stores .en {
          font-size: 3.33333vw; } }

/* 追従専用ヘッダー */
.l-fixed-header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 30;
  width: 100%;
  background: #fff;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
  transform: translateY(-100%);
  opacity: 0;
  pointer-events: none;
  transition: transform 0.45s ease, opacity 0.45s ease;
  background: #d1111c;
  color: #fff;
  display: flex;
  justify-content: space-between;
  padding-left: 0;
  /* 表示 */ }
  @media screen and (max-width: 767px) {
    .l-fixed-header {
      height: 68px;
      box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16); } }
  .l-fixed-header.is-show {
    transform: translateY(0);
    opacity: 1;
    pointer-events: auto; }
  .l-fixed-header.page-header {
    transform: translateY(0);
    opacity: 1;
    pointer-events: auto;
    position: sticky; }
  .l-fixed-header .l-header__logo-set {
    background: none;
    height: auto; }
    @media screen and (max-width: 767px) {
      .l-fixed-header .l-header__logo-set {
        gap: 10px;
        padding: 0 0px 0 10px;
        max-width: calc(100% - 75px);
        flex-grow: 1; } }
  .l-fixed-header .l-header__logo {
    padding: 0;
    margin: 0; }
    @media screen and (max-width: 767px) {
      .l-fixed-header .l-header__logo img {
        width: 50px; } }
  .l-fixed-header .l-header__stores {
    background: #fff;
    color: #d1111c;
    padding: 8px 16px;
    border-radius: 10px;
    min-width: 198px;
    flex-grow: 1; }
    @media screen and (max-width: 767px) {
      .l-fixed-header .l-header__stores {
        min-width: 164px;
        border-radius: 5px;
        padding: 8px;
        display: flex;
        flex-direction: column;
        align-items: center; } }
    @media screen and (max-width: 767px) {
      .l-fixed-header .l-header__stores .jp {
        font-size: 15px; } }
    @media screen and (max-width: 767px) {
      .l-fixed-header .l-header__stores .en {
        font-size: 12px; } }
  .l-fixed-header .gnav__line a {
    border-radius: 0px;
    padding: 14px 10px; }

.gnav {
  display: flex;
  align-items: center;
  /* 子階層 */ }
  @media screen and (max-width: 767px) {
    .gnav {
      display: none; } }
  .gnav__list {
    display: flex;
    margin: 0; }
  .gnav__item {
    border-right: 3px solid #fff; }
    .gnav__item:last-child {
      border-right: none; }
    .gnav__item a {
      display: flex;
      flex-direction: column;
      align-items: center;
      width: 133px; }
      .gnav__item a .icon {
        height: 52px;
        display: flex;
        justify-content: center;
        align-items: center; }
    .gnav__item.has-child a .label {
      position: relative;
      padding-right: 14px; }
      .gnav__item.has-child a .label::before {
        content: "";
        display: block;
        width: 10px;
        height: 10px;
        background: url(../images/common/gnav-arrow-down.svg) no-repeat center/contain;
        position: absolute;
        right: 0;
        top: 9px; }
    .gnav__item.has-child:hover .gnav__child {
      opacity: 1;
      visibility: visible;
      transform: translateY(0); }
  .gnav__line a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px;
    border: 6px solid #3cc754;
    border-radius: 10px;
    background: #fff;
    color: #000000;
    line-height: 1.2;
    font-weight: bold; }
  .gnav__child {
    position: absolute;
    left: 0;
    top: 100%;
    width: 100%;
    padding: 20px 5vw 40px;
    margin: 0;
    background: #d1111c;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
    z-index: 10;
    display: flex;
    justify-content: center;
    gap: 25px; }
    .gnav__child > li {
      flex: 1;
      margin-top: 0px; }
      .gnav__child > li a {
        min-width: auto;
        width: 100%;
        color: #000; }
        .gnav__child > li a:hover {
          background: #a9e654;
          color: #000;
          opacity: 0.5; }

.headfix-btn {
  position: fixed;
  top: 50%;
  right: 0;
  transform: translate(0, -50%);
  z-index: 5; }
  @media screen and (max-width: 767px) {
    .headfix-btn {
      display: none; } }
  .headfix-btn__list {
    display: flex;
    flex-direction: column;
    gap: 20px; }
  .headfix-btn__item a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 10px;
    background: #fff;
    border: 5px solid #000000;
    border-right: none;
    border-radius: 10px 0 0 10px;
    width: 50px;
    padding: 15px 0 12px; }
    .headfix-btn__item a .label {
      writing-mode: vertical-rl;
      text-orientation: upright;
      font-size: 18px;
      font-weight: bold;
      letter-spacing: 0.1em; }
    .headfix-btn__item a .arrow {
      display: flex;
      align-items: center;
      justify-content: center; }
      .headfix-btn__item a .arrow img {
        width: 19px; }

#C-1,
#C-2,
#C-3,
#C-4,
#C-5,
#C-6,
#C-7,
#S-1,
#S-2,
#S-3,
#S-4,
#S-5,
#S-6,
#S-7 {
  scroll-margin-top: 80px;
  /* 追従ヘッダー分 */ }
  @media screen and (max-width: 767px) {
    #C-1,
    #C-2,
    #C-3,
    #C-4,
    #C-5,
    #C-6,
    #C-7,
    #S-1,
    #S-2,
    #S-3,
    #S-4,
    #S-5,
    #S-6,
    #S-7 {
      scroll-margin-top: 50px;
      /* 追従ヘッダー分 */ } }

@media screen and (max-width: 767px) {
  #hamburger {
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    z-index: 35;
    top: 0px;
    right: 0px;
    width: 66px;
    height: 68px;
    cursor: pointer;
    transition: 1s;
    color: #000;
    background: #a9e654;
    padding: 10px 10px 5px; }
    #hamburger .inner {
      position: relative;
      width: 100%;
      height: 100%; }
      #hamburger .inner .inner_line {
        display: block;
        position: absolute;
        left: 0;
        width: 100%;
        height: 3px;
        transition: 0.4s;
        background: #000; }
        #hamburger .inner .inner_line#line1 {
          top: 0; }
          #hamburger .inner .inner_line#line1.active {
            transform: translateY(13px) rotate(-30deg); }
        #hamburger .inner .inner_line#line2 {
          top: 13px; }
          #hamburger .inner .inner_line#line2.active {
            opacity: 0; }
        #hamburger .inner .inner_line#line3 {
          top: 26px; }
          #hamburger .inner .inner_line#line3.active {
            transform: translateY(-13px) rotate(30deg); }
      #hamburger .inner .hamburger__label {
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translate(-50%, 0); }
  #hamburger-menu {
    position: fixed;
    inset: 0;
    z-index: 20;
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease; }
    #hamburger-menu.active {
      opacity: 1;
      pointer-events: auto;
      visibility: visible; }
    #hamburger-menu .hamburger-menu-inner {
      overflow: auto;
      height: 100vh;
      position: relative;
      background: #d1111c;
      padding: 100px 10px 60px; }
    #hamburger-menu .hnav__line a {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      padding: 10px;
      border: 6px solid #3cc754;
      border-radius: 10px;
      background: #fff;
      color: #000000;
      line-height: 1.2;
      font-weight: bold; }
      #hamburger-menu .hnav__line a .icon {
        flex: 0 0 35px; }
    #hamburger-menu .hnav__list {
      padding: 20px; }
    #hamburger-menu .hnav__item {
      border-bottom: 1px solid #fff;
      font-size: 18px;
      font-weight: 700; }
      #hamburger-menu .hnav__item a {
        color: #fff;
        display: block;
        padding: 20px 0; }
    #hamburger-menu .hnav__child {
      font-size: 15px;
      font-weight: 500; }
      #hamburger-menu .hnav__child li a {
        padding: 0 0 20px; } }

@keyframes fadeIn {
  0% {
    display: none;
    opacity: 0; }
  1% {
    display: block;
    opacity: 0; }
  100% {
    display: block;
    opacity: 1; } }

.footer-contact {
  background-color: #000;
  color: #fff;
  text-align: center;
  position: relative; }
  .footer-contact__bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%; }
    .footer-contact__bg img {
      object-fit: cover;
      width: 100%;
      height: 100%;
      opacity: 0.5; }
  .footer-contact__cont {
    text-align: center;
    padding: 80px 30px;
    position: relative; }
    @media screen and (max-width: 767px) {
      .footer-contact__cont {
        padding: 60px 0px; } }
  .footer-contact__title {
    font-family: "Dela Gothic One", sans-serif;
    font-weight: 100;
    font-size: 60px; }
    @media screen and (max-width: 767px) {
      .footer-contact__title {
        font-size: 7.69231vw;
        line-height: 1.33; } }
    .footer-contact__title span {
      display: inline-block;
      position: relative; }
      .footer-contact__title span::before, .footer-contact__title span::after {
        content: "";
        display: block;
        width: 78px;
        height: 118px;
        background: url(../images/common/footer-contact-title-bg-left.svg) no-repeat center/contain;
        position: absolute;
        top: 0; }
        @media screen and (max-width: 767px) {
          .footer-contact__title span::before, .footer-contact__title span::after {
            width: 53px;
            height: 80px; } }
      .footer-contact__title span::before {
        background: url(../images/common/footer-contact-title-bg-left.svg) no-repeat center/contain;
        left: -80px; }
        @media screen and (max-width: 767px) {
          .footer-contact__title span::before {
            left: -40px; } }
      .footer-contact__title span::after {
        background: url(../images/common/footer-contact-title-bg-right.svg) no-repeat center/contain;
        right: -80px; }
        @media screen and (max-width: 767px) {
          .footer-contact__title span::after {
            right: -40px; } }
  .footer-contact__list {
    display: flex;
    max-width: 1256px;
    margin: 0 auto;
    justify-content: center; }
    @media screen and (max-width: 767px) {
      .footer-contact__list {
        flex-direction: column;
        justify-content: normal;
        padding: 0 8vw; } }
  .footer-contact__item {
    width: 50%;
    padding: 20px 35px; }
    @media screen and (max-width: 767px) {
      .footer-contact__item {
        width: 100%;
        padding: 0; } }
    .footer-contact__item .title {
      font-size: 30px;
      font-weight: bold;
      margin-bottom: 30px; }
      @media screen and (max-width: 767px) {
        .footer-contact__item .title {
          font-size: 5.12821vw; } }
    .footer-contact__item a {
      display: block;
      position: relative;
      background: url(../images/common/footer-contact-btn-1.svg) no-repeat center bottom/contain;
      width: 100%;
      height: auto;
      aspect-ratio: 592/311;
      color: #000000; }
      @media screen and (max-width: 767px) {
        .footer-contact__item a {
          background: url(../images/common/footer-contact-btn-1-sp.svg) no-repeat center bottom/contain; } }
      .footer-contact__item a .ninja {
        text-align: center;
        display: block;
        transition: all 0.3s ease 0s; }
      .footer-contact__item a .text {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 20px; }
      .footer-contact__item a .icon {
        display: block;
        flex: 0 0 66px; }
        @media screen and (max-width: 767px) {
          .footer-contact__item a .icon {
            flex: 0 0 35px; } }
        .footer-contact__item a .icon img {
          width: 100%; }
      .footer-contact__item a .label {
        display: block;
        font-size: 25px;
        font-weight: bold;
        text-align: left; }
        @media screen and (max-width: 767px) {
          .footer-contact__item a .label {
            font-size: 3.84615vw; } }
    .footer-contact__item.line {
      /* 線の長さ2pxの線を背景画像とする */
      background-image: linear-gradient(to bottom, #fff 6px, transparent 6px);
      /* 背景画像の大きさを設定 */
      background-size: 1px 12px;
      /* 背景の開始位置を指定 */
      background-position: right top;
      /* 横方向に繰り返す */
      background-repeat: repeat-y; }
      @media screen and (max-width: 767px) {
        .footer-contact__item.line {
          /* 線の長さ2pxの線を背景画像とする */
          background-image: linear-gradient(to right, #fff 6px, transparent 6px);
          /* 背景画像の大きさを設定 */
          background-size: 12px 1px;
          /* 背景の開始位置を指定 */
          background-position: left bottom;
          /* 横方向に繰り返す */
          background-repeat: repeat-x;
          padding: 0 0 30px; } }
      .footer-contact__item.line a .ninja img {
        width: calc(446px / 2); }
        @media screen and (max-width: 767px) {
          .footer-contact__item.line a .ninja img {
            width: calc(446px / 3.7); } }
      .footer-contact__item.line a:hover {
        opacity: 1; }
        .footer-contact__item.line a:hover .ninja {
          transform: scale(1.05);
          rotate: -20deg; }
    @media screen and (max-width: 767px) {
      .footer-contact__item.contact {
        padding: 30px 0 0; } }
    .footer-contact__item.contact a {
      background: url(../images/common/footer-contact-btn-2.svg) no-repeat center bottom/contain; }
      @media screen and (max-width: 767px) {
        .footer-contact__item.contact a {
          background: url(../images/common/footer-contact-btn-2-sp.svg) no-repeat center bottom/contain; } }
      .footer-contact__item.contact a .ninja img {
        width: calc(346px / 2); }
        @media screen and (max-width: 767px) {
          .footer-contact__item.contact a .ninja img {
            width: calc(346px / 3.7); } }
      .footer-contact__item.contact a:hover {
        opacity: 1; }
        .footer-contact__item.contact a:hover .ninja {
          transform: scale(1.05);
          rotate: 13deg; }

.l-footer {
  background-color: #d1111c;
  color: #fff;
  padding: 60px 30px 130px; }
  @media screen and (max-width: 767px) {
    .l-footer {
      padding: 50px 8vw 100px; } }
  .l-footer .sect-inner {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    max-width: 1130px;
    margin: 0 auto; }
    @media screen and (max-width: 767px) {
      .l-footer .sect-inner {
        flex-direction: column;
        align-items: stretch; } }
  .l-footer-left {
    display: flex;
    align-items: flex-start;
    gap: 20px; }
    @media screen and (max-width: 767px) {
      .l-footer-left {
        flex-direction: column;
        align-items: stretch; } }
  .l-footer-right {
    text-align: right; }
    @media screen and (max-width: 767px) {
      .l-footer-right {
        text-align: left;
        padding-top: 40px; } }
  @media screen and (max-width: 767px) {
    .l-footer__logo {
      width: 100%;
      text-align: center; } }
  .l-footer__logo img {
    width: 167px; }
  .l-footer__info {
    border-top: 2px solid #fff;
    border-bottom: 2px solid #fff;
    padding: 17px 0;
    padding-right: 50px; }
    @media screen and (max-width: 767px) {
      .l-footer__info {
        padding-right: 0px; } }
  .l-footer__store {
    font-size: 20px; }

.fnav {
  margin-bottom: 20px; }
  .fnav__list {
    display: flex;
    justify-content: flex-end;
    gap: 30px;
    margin-bottom: 20px; }
    @media screen and (max-width: 767px) {
      .fnav__list {
        flex-direction: column;
        justify-content: stretch;
        gap: 20px; } }

.footer__line {
  display: none; }
  @media screen and (max-width: 767px) {
    .footer__line {
      display: block;
      position: fixed;
      left: 0;
      bottom: 10px;
      width: 100%;
      padding: 0 10px;
      z-index: 10; }
      .footer__line a {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        padding: 10px;
        border: 6px solid #3cc754;
        border-radius: 10px;
        background: #fff;
        color: #000000;
        line-height: 1.2;
        font-weight: bold; }
        .footer__line a .icon {
          flex: 0 0 35px; } }

.sidebar-search {
  padding: 20px 0 40px;
  background-color: #fff; }
  .sidebar-search--head {
    padding: 0 10px 20px; }
  .sidebar-search--img {
    margin-bottom: 18px;
    text-align: center; }
  .sidebar-search--ttl {
    margin-bottom: 10px; }
  .sidebar-search--ratingWrap {
    display: flex;
    align-items: center;
    margin-bottom: 10px; }
  .sidebar-search--rating {
    display: flex;
    align-items: center; }
    .sidebar-search--rating-stars {
      display: flex;
      align-items: center; }
      .sidebar-search--rating-stars img {
        display: inline-block;
        margin-right: 3px; }
    .sidebar-search--rating-number {
      line-height: 1; }
    .sidebar-search--rating-cmt {
      position: relative;
      display: block;
      padding-left: 22px; }
      .sidebar-search--rating-cmt:before {
        position: absolute;
        top: 5px;
        left: 0;
        width: 17px;
        height: 15px;
        display: block;
        background: url(../images/search/icon-msg.svg) no-repeat;
        background-size: 100% 100%;
        content: ""; }
  .sidebar-search .form {
    border-top: solid 1px #EBEBEB; }
    .sidebar-search .form-row {
      display: flex;
      padding: 12px 15px;
      border-bottom: solid 1px #EBEBEB; }
      .sidebar-search .form-row:last-child {
        border-bottom: none; }
      .sidebar-search .form-row--cnt {
        width: 100%; }
        @media screen and (max-width: 767px) {
          .sidebar-search .form-row--cnt .label-box {
            flex-wrap: wrap;
            flex-flow: column; }
            .sidebar-search .form-row--cnt .label-box .link-blue {
              display: block; } }
    .sidebar-search .form-label {
      width: 72px;
      margin-right: 12px;
      flex-shrink: 0;
      margin-bottom: 0; }
      @media screen and (max-width: 767px) {
        .sidebar-search .form-label {
          margin-right: 20px; } }
  .sidebar-search--map {
    margin: 30px 0 35px; }

.bg-red {
  background: #d1111c; }

/* =========================== */
.index-open {
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: 5; }
  @media screen and (max-width: 767px) {
    .index-open {
      position: static;
      padding: 0 8vw;
      margin-bottom: 20px; } }
  .index-open a {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    border: 7px solid #d1111c;
    border-left: none;
    border-bottom: none;
    border-radius: 0 10px 0px 0;
    background: #fff;
    padding: 10px; }
    @media screen and (max-width: 767px) {
      .index-open a {
        display: flex;
        border: none;
        border-radius: 10px;
        flex-direction: column;
        padding: 20px 10px; } }
  .index-open-header {
    line-height: 1.2; }
    .index-open-header .line-1 {
      font-family: "Dela Gothic One", sans-serif;
      font-weight: 400;
      font-size: 20px; }
    .index-open-header .line-2 {
      font-family: "Dela Gothic One", sans-serif;
      font-weight: 400;
      font-size: 30px;
      color: #d1111c; }
  .index-open-cont {
    display: flex;
    align-items: center;
    gap: 10px; }
    .index-open-cont__time {
      background: #a9e654;
      display: flex;
      align-items: center;
      text-align: center;
      border-radius: 5px;
      padding: 10px;
      gap: 10px; }
      .index-open-cont__time .label {
        font-size: 12px;
        font-weight: bold;
        line-height: 1.33; }
      .index-open-cont__time .time {
        font-family: "Dela Gothic One", sans-serif;
        font-weight: 400;
        font-size: 20px; }
        @media screen and (max-width: 767px) {
          .index-open-cont__time .time {
            font-size: 16px; } }
    .index-open-cont__arrow {
      color: #d1111c; }
      .index-open-cont__arrow .label {
        font-size: 12px; }
      .index-open-cont__arrow .arrow {
        display: flex;
        align-items: center;
        justify-content: center; }
        .index-open-cont__arrow .arrow img {
          width: 25px; }

/* =========================== */
@media screen and (max-width: 767px) {
  .index-accordion-list {
    display: flex;
    gap: 20px;
    margin: 0 8vw 20px; } }

/* =========================== */
.index-headaccess {
  max-width: 1294px;
  margin: 0 auto 30px; }
  @media screen and (max-width: 767px) {
    .index-headaccess {
      margin: 0;
      flex: 1;
      background: #fff;
      border-radius: 5px; } }
  .index-headaccess-header {
    display: none; }
    @media screen and (max-width: 767px) {
      .index-headaccess-header {
        display: block;
        padding: 12px;
        position: relative;
        font-weight: bold; }
        .index-headaccess-header .status {
          width: 15px;
          height: 15px;
          position: absolute;
          right: 12px;
          top: 50%;
          transform: translate(0, -50%); }
          .index-headaccess-header .status-inner {
            width: 100%;
            height: 100%;
            position: relative; }
            .index-headaccess-header .status-inner .line-1,
            .index-headaccess-header .status-inner .line-2 {
              background: #000;
              width: 100%;
              height: 3px;
              position: absolute;
              left: 50%;
              top: 50%;
              transform: translate(-50%, -50%);
              transition: all 0.3s ease 0s; }
            .index-headaccess-header .status-inner .line-2 {
              transform: translate(-50%, -50%) rotate(90deg); }
        .index-headaccess-header.open .line-2 {
          transform: translate(-50%, -50%) rotate(0deg); } }
  .index-headaccess-cont {
    background: #fff;
    border-radius: 100vh;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 11px 26px;
    gap: 20px; }
    @media screen and (max-width: 767px) {
      .index-headaccess-cont {
        border-radius: 0px;
        flex-direction: column;
        background: none;
        padding: 0px 12px 20px;
        display: none;
        gap: 0; } }
  .index-headaccess__text {
    font-weight: bold; }
    @media screen and (max-width: 767px) {
      .index-headaccess__text {
        margin-bottom: 20px; } }
    .index-headaccess__text br {
      display: none; }
      @media screen and (max-width: 767px) {
        .index-headaccess__text br {
          display: block; } }
  .index-headaccess__btn {
    flex-shrink: 0; }
    .index-headaccess__btn a {
      font-weight: bold;
      color: #d1111c;
      display: flex;
      align-items: center;
      gap: 3px; }
      @media screen and (max-width: 767px) {
        .index-headaccess__btn a {
          justify-content: center; } }
      .index-headaccess__btn a .arrow {
        display: flex;
        align-items: center;
        justify-content: center; }
        .index-headaccess__btn a .arrow img {
          width: 15px; }

/* =========================== */
.index-equipment {
  max-width: 1294px;
  margin: 0 auto 30px; }
  @media screen and (max-width: 767px) {
    .index-equipment {
      margin: 0;
      flex: 1;
      background: #fff;
      border-radius: 5px; } }
  .index-equipment-header {
    display: none; }
    @media screen and (max-width: 767px) {
      .index-equipment-header {
        display: block;
        padding: 12px;
        position: relative;
        font-weight: bold; }
        .index-equipment-header .status {
          width: 15px;
          height: 15px;
          position: absolute;
          right: 12px;
          top: 50%;
          transform: translate(0, -50%); }
          .index-equipment-header .status-inner {
            width: 100%;
            height: 100%;
            position: relative; }
            .index-equipment-header .status-inner .line-1,
            .index-equipment-header .status-inner .line-2 {
              background: #000;
              width: 100%;
              height: 3px;
              position: absolute;
              left: 50%;
              top: 50%;
              transform: translate(-50%, -50%);
              transition: all 0.3s ease 0s; }
            .index-equipment-header .status-inner .line-2 {
              transform: translate(-50%, -50%) rotate(90deg); }
        .index-equipment-header.open .line-2 {
          transform: translate(-50%, -50%) rotate(0deg); } }
  .index-equipment-cont {
    display: flex;
    gap: 10px; }
    @media screen and (max-width: 767px) {
      .index-equipment-cont {
        display: block;
        display: none;
        padding: 0 20px; } }
  .index-equipment__list {
    display: flex;
    gap: 10px;
    margin: 0;
    width: calc(100% - 106px); }
    @media screen and (max-width: 767px) {
      .index-equipment__list {
        flex-wrap: wrap;
        width: 100%;
        gap: 7px; } }
  .index-equipment__item {
    width: calc((100% - 100px) / 11);
    height: auto;
    aspect-ratio: 1/1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;
    border: 5px solid #a9e654;
    background: #fff;
    border-radius: 5px;
    text-align: center;
    padding: 5px 0; }
    @media screen and (max-width: 767px) {
      .index-equipment__item {
        width: calc((100% - 14px) / 3); } }
    .index-equipment__item .icon {
      display: flex;
      justify-content: center;
      align-items: center; }
    .index-equipment__item .label {
      font-size: 10px;
      font-weight: bold;
      line-height: 1; }
    .index-equipment__item.disable {
      border-color: #d8d8d8; }
      .index-equipment__item.disable .icon,
      .index-equipment__item.disable .label {
        opacity: 0.25; }
  @media screen and (max-width: 767px) {
    .index-equipment__btn {
      padding: 30px 0; } }
  .index-equipment__btn a {
    font-weight: bold;
    background: #fff;
    border-radius: 5px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    height: 100%;
    width: 96px;
    color: #d1111c; }
    @media screen and (max-width: 767px) {
      .index-equipment__btn a {
        flex-direction: row;
        width: 100%; } }
    .index-equipment__btn a .label {
      line-height: 1.5; }
    .index-equipment__btn a .arrow {
      display: flex;
      align-items: center;
      justify-content: center; }
      .index-equipment__btn a .arrow img {
        width: 26px; }
        @media screen and (max-width: 767px) {
          .index-equipment__btn a .arrow img {
            width: 15px; } }

/* =========================== */
.sp-modal {
  display: none; }
  @media screen and (max-width: 767px) {
    .sp-modal {
      position: fixed;
      inset: 0;
      z-index: 9999; }
      .sp-modal.is-active {
        display: block; } }

.sp-modal__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6); }

.sp-modal__body {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% - 40px);
  max-height: 80vh;
  overflow-y: auto;
  background: #fff;
  border-radius: 16px;
  padding: 40px 20px 24px; }

.sp-modal__close {
  position: absolute;
  right: 16px;
  top: 12px;
  font-size: 28px;
  line-height: 1;
  background: none;
  border: 0;
  cursor: pointer; }

.is-modal-open {
  overflow: hidden; }

/* =========================== */
.index-kv {
  max-width: 1294px;
  margin: 0 auto 50px;
  position: relative;
  width: 100%;
  overflow: hidden; }
  @media screen and (max-width: 767px) {
    .index-kv {
      margin: 0;
      padding: 0 8vw 50px; } }
  .index-kv__catch {
    position: absolute;
    left: 80px;
    top: 50%;
    transform: translate(0, -50%) rotate(-13deg);
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
    margin: 0; }
    @media screen and (max-width: 767px) {
      .index-kv__catch {
        width: 70vw;
        top: auto;
        bottom: -10px;
        left: 40px;
        gap: 3px;
        transform-origin: top left; } }
    .index-kv__catch__icon {
      position: absolute;
      left: -17px;
      top: -105px;
      transform: rotate(13deg); }
      @media screen and (max-width: 767px) {
        .index-kv__catch__icon {
          width: 24.94359vw;
          left: 1vw;
          top: -20vw; } }
    .index-kv__catch__line {
      background: #000;
      color: #fff;
      font-size: 102px;
      font-family: "Dela Gothic One", sans-serif;
      font-weight: 300;
      display: block;
      line-height: 0.9;
      padding: 0 10px 9px 13px; }
      @media screen and (max-width: 767px) {
        .index-kv__catch__line {
          font-size: 10vw;
          padding: 3px 7px 7px 8px; } }
  @media screen and (max-width: 767px) {
    .index-kv__list {
      width: 100%;
      overflow: hidden; } }
  .index-kv__item__img img {
    border-radius: 10px; }
  .index-kv__shuriken-1 {
    position: absolute;
    right: 140px;
    bottom: 0;
    z-index: 1;
    animation: rotate 3s linear infinite reverse; }
    @media screen and (max-width: 767px) {
      .index-kv__shuriken-1 {
        width: 12.82051vw;
        right: 70px;
        bottom: 0px; } }
  .index-kv__shuriken-2 {
    position: absolute;
    right: 10px;
    bottom: 30px;
    z-index: 1;
    animation: rotate 3s linear infinite; }
    @media screen and (max-width: 767px) {
      .index-kv__shuriken-2 {
        width: 23.07692vw;
        right: 0px;
        bottom: 20px; } }

/* =========================== */
.index-intro {
  max-width: 1153px;
  margin: 0 auto;
  padding-bottom: 60px;
  position: relative;
  text-align: center;
  color: #fff; }
  @media screen and (max-width: 767px) {
    .index-intro {
      padding: 0 8vw 50px; } }
  .index-intro__title {
    font-family: "Dela Gothic One", sans-serif;
    font-weight: 400;
    font-size: 50px;
    margin-bottom: 10px;
    line-height: 1.2; }
    @media screen and (max-width: 767px) {
      .index-intro__title {
        font-size: 30px; } }
  .index-intro__lead {
    font-size: 20px;
    margin-bottom: 50px; }
    @media screen and (max-width: 767px) {
      .index-intro__lead {
        font-size: 15px;
        line-height: 2.33; } }
  .index-intro__item {
    margin: 0 15px; }
    @media screen and (max-width: 767px) {
      .index-intro__item {
        margin: 0; } }
    .index-intro__item img {
      width: 100%; }
  @media screen and (max-width: 767px) {
    .index-intro .gnav__list {
      flex-wrap: wrap;
      gap: 15px 25px;
      margin-bottom: 30px; }
    .index-intro .gnav__item {
      width: calc((100% - 25px) / 2);
      border: 1px solid #fff;
      border-radius: 5px; }
      .index-intro .gnav__item a {
        height: 85px;
        width: 100%;
        justify-content: center; }
        .index-intro .gnav__item a .icon {
          max-height: 45px; }
          .index-intro .gnav__item a .icon img {
            max-height: 100%; }
      .index-intro .gnav__item.has-child a .label {
        padding-right: 0px; }
        .index-intro .gnav__item.has-child a .label::before {
          display: none; } }

/* =========================== */
.index-news {
  padding: 100px 0; }
  @media screen and (max-width: 767px) {
    .index-news {
      padding: 44.61538vw 8vw 30px; } }
  .index-news .sect-inner {
    position: relative; }
  .index-news__title {
    text-align: center;
    font-family: "Dela Gothic One", sans-serif;
    font-weight: 400;
    font-size: 45px; }
    @media screen and (max-width: 767px) {
      .index-news__title {
        font-size: 30px; } }
  .index-news__icon-1 {
    position: absolute;
    left: -100px;
    top: 140px;
    animation: rotate 3s linear infinite; }
    @media screen and (max-width: 767px) {
      .index-news__icon-1 {
        left: 26px;
        top: -14vw;
        width: 12.82051vw; } }
  .index-news__icon-2 {
    position: absolute;
    z-index: 1;
    right: 20px;
    top: -30px; }
    @media screen and (max-width: 767px) {
      .index-news__icon-2 {
        left: 50%;
        top: -24vw;
        transform: translate(-50%, 0);
        width: 20vw; } }
  .index-news__icon-3 {
    position: absolute;
    left: -70px;
    top: 10px; }
    @media screen and (max-width: 767px) {
      .index-news__icon-3 {
        left: auto;
        right: 0;
        top: -23vw;
        width: 20vw; } }
  .index-news .tab_box .btn_area {
    display: flex;
    gap: 40px;
    justify-content: center;
    margin-bottom: 35px; }
    @media screen and (max-width: 767px) {
      .index-news .tab_box .btn_area {
        gap: 10px; } }
    .index-news .tab_box .btn_area .tab_btn {
      width: calc((100% - 40px) / 2);
      padding: 8px 0;
      color: #fff;
      background: #a3a3a3;
      border-radius: 100vh;
      text-align: center;
      cursor: pointer;
      transition: all 0.2s ease 0s;
      font-size: 20px;
      font-weight: bold;
      position: relative; }
      @media screen and (max-width: 767px) {
        .index-news .tab_box .btn_area .tab_btn {
          font-size: 15px;
          width: 50%; } }
      .index-news .tab_box .btn_area .tab_btn.active {
        background: #d1111c;
        color: #fff; }
        .index-news .tab_box .btn_area .tab_btn.active::before {
          content: "";
          display: block;
          width: 0;
          height: 0;
          border-style: solid;
          border-right: 15px solid transparent;
          border-left: 15px solid transparent;
          border-top: 13px solid #d1111c;
          border-bottom: 0;
          position: absolute;
          left: 50%;
          bottom: -22px;
          transform: translate(-50%, 0); }
          @media screen and (max-width: 767px) {
            .index-news .tab_box .btn_area .tab_btn.active::before {
              bottom: -19px; } }
        .index-news .tab_box .btn_area .tab_btn.active > span {
          position: relative; }
          .index-news .tab_box .btn_area .tab_btn.active > span::before {
            content: "";
            display: block;
            width: 40px;
            height: 40px;
            background: url(../images/common/shuriken-1-white.svg) no-repeat center/contain;
            position: absolute;
            left: -40px;
            top: -5px;
            transform: rotate(80deg); }
            @media screen and (max-width: 767px) {
              .index-news .tab_box .btn_area .tab_btn.active > span::before {
                width: 26px;
                height: 26px;
                left: -29px;
                top: -2px; } }
  .index-news .tab_box .panel_area .tab_panel {
    display: none; }
    .index-news .tab_box .panel_area .tab_panel.active {
      display: block; }
  .index-news__list {
    display: flex;
    flex-wrap: wrap;
    gap: 50px;
    min-width: 100%;
    opacity: 1;
    transition: opacity 0.2s ease; }
    @media screen and (max-width: 767px) {
      .index-news__list .slick-dots li button:before {
        background-color: #959595; }
      .index-news__list .slick-dots li.slick-active button:before {
        background-color: #d1111c; } }
    .index-news__list.is-adjusting {
      opacity: 0; }
  .index-news__item {
    width: calc((100% - 100px) / 3); }
    .index-news__item a {
      border: 4px solid #000000;
      border-radius: 10px;
      background: #fff;
      padding: 15px;
      position: relative;
      display: block; }
    .index-news__item-img {
      margin-bottom: 15px;
      width: 100%;
      height: auto;
      aspect-ratio: 290/180; }
      .index-news__item-img img {
        border-radius: 5px;
        object-fit: cover;
        width: 100%;
        height: 100%; }
    .index-news__item-text .date {
      color: #d1111c;
      line-height: 1.6; }
    .index-news__item-text .title {
      font-size: 20px;
      color: #d1111c;
      margin-bottom: 7px; }
    .index-news__item-text .category {
      font-size: 12px;
      padding-top: 20px; }
      .index-news__item-text .category ul {
        display: flex;
        flex-wrap: wrap; }
        .index-news__item-text .category ul li {
          border: 1px solid #d1111c;
          color: #d1111c;
          border-radius: 100vh;
          padding: 0 10px; }
    .index-news__item__store {
      position: absolute;
      left: 0;
      top: 0;
      background: #000;
      color: #fff;
      font-weight: bold;
      padding: 0px 12px 5px;
      border-radius: 0px 0 10px 0; }

/* 回転アニメーション */
@keyframes rotate {
  from {
    transform: rotate(0deg); }
  to {
    transform: rotate(360deg); } }

/* =========================== */
.index-guide {
  color: #fff;
  position: relative;
  overflow: hidden;
  padding-top: 56px;
  /* 波部分 */ }
  @media screen and (max-width: 767px) {
    .index-guide {
      padding-top: 36px; } }
  .index-guide::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 200%;
    /* ループ用に広げる */
    height: 120px;
    background: url("../images/top/guide-wave.svg") repeat-x;
    background-size: 3367px auto;
    animation: waveMove 20s linear infinite; }
    @media screen and (max-width: 767px) {
      .index-guide::before {
        background: url("../images/top/guide-wave-sp.svg") repeat-x;
        background-size: 1903px auto;
        animation: waveMove 10s linear infinite; } }
  .index-guide__kunai {
    position: absolute;
    top: 0px;
    left: 100px;
    z-index: 1;
    animation: knifeMove 2s linear infinite; }
    @media screen and (max-width: 767px) {
      .index-guide__kunai img {
        width: calc(138px / 2); } }
  .index-guide-inner {
    background: #d1111c;
    position: relative;
    padding: 80px 0 210px; }
    @media screen and (max-width: 767px) {
      .index-guide-inner {
        padding: 60px 8vw 145px; } }
  .index-guide-grid {
    display: grid;
    grid-template-columns: auto 413px;
    grid-template-rows: auto 1fr;
    grid-column-gap: 0px;
    grid-row-gap: 20px;
    position: relative;
    padding-bottom: 50px; }
    @media screen and (max-width: 767px) {
      .index-guide-grid {
        display: flex;
        flex-direction: column; } }
  .index-guide__title {
    font-size: 25px;
    margin-bottom: 10px; }
    @media screen and (max-width: 767px) {
      .index-guide__title {
        text-align: center;
        font-size: 3.84615vw; } }
  .index-guide__lead {
    font-size: 80px;
    font-family: "Dela Gothic One", sans-serif;
    font-weight: 400;
    line-height: 1.25; }
    @media screen and (max-width: 767px) {
      .index-guide__lead {
        text-align: center;
        font-size: 7.69231vw; } }
  .index-guide__body {
    font-size: 20px;
    line-height: 2;
    position: relative; }
    @media screen and (max-width: 767px) {
      .index-guide__body {
        font-size: 4.10256vw;
        line-height: 2.4; } }
    .index-guide__body p {
      position: relative;
      z-index: 1;
      margin: 0; }
    .index-guide__body strong {
      font-size: 25px;
      display: inline-block;
      text-decoration: underline;
      margin: 10px 0 20px; }
      @media screen and (max-width: 767px) {
        .index-guide__body strong {
          font-size: 4.10256vw;
          display: inline; } }
    .index-guide__body img.shuriken-1-green {
      border-radius: 0;
      position: absolute;
      left: -320px;
      bottom: -280px;
      width: 490px;
      opacity: 0.35;
      animation: rotate 3s linear infinite; }
      @media screen and (max-width: 767px) {
        .index-guide__body img.shuriken-1-green {
          left: -150px;
          bottom: -180px; } }
  .index-guide__img-1 {
    grid-area: 1 / 2 / 3 / 3;
    padding-top: 30px;
    position: relative; }
    .index-guide__img-1 img {
      border-radius: 10px; }
      .index-guide__img-1 img.shuriken-1-green {
        border-radius: 0;
        position: absolute;
        right: 100px;
        top: -60px;
        width: 80px; }
        @media screen and (max-width: 767px) {
          .index-guide__img-1 img.shuriken-1-green {
            width: 8vw;
            right: -7vw;
            top: auto;
            bottom: 21vw; } }
      .index-guide__img-1 img.shuriken-2-white {
        border-radius: 0;
        position: absolute;
        right: -190px;
        top: -110px;
        animation: rotate 3s linear infinite; }
        @media screen and (max-width: 767px) {
          .index-guide__img-1 img.shuriken-2-white {
            width: 100px;
            right: -5vw;
            top: auto;
            bottom: -5vw; } }
  .index-guide__img-2 {
    position: absolute;
    right: 110px;
    bottom: 0;
    width: 438px; }
    @media screen and (max-width: 767px) {
      .index-guide__img-2 {
        position: static;
        width: 63.33333vw; } }
    .index-guide__img-2 img {
      border-radius: 10px; }
  .index-guide__ninja {
    position: absolute;
    right: -120px;
    bottom: -230px;
    z-index: 3;
    opacity: 0;
    transform: translateX(120%) translateY(30px) rotate(-12deg);
    transition: transform 0.9s cubic-bezier(0.18, 0.89, 0.32, 1.28), opacity 0.3s ease; }
    @media screen and (max-width: 767px) {
      .index-guide__ninja {
        width: 41.79487vw;
        right: -9.79487vw;
        bottom: -13vw; } }
    .index-guide__ninja.in {
      opacity: 1;
      transform: translateX(0) translateY(0) rotate(0deg); }
    .index-guide__ninja img {
      display: block;
      width: 282px;
      height: auto; }
  .index-guide__activities {
    margin-bottom: 30px;
    position: relative;
    z-index: 1; }
    @media screen and (max-width: 767px) {
      .index-guide__activities {
        background: #fff;
        border-radius: 10px; } }
    .index-guide__activities__title {
      margin: 0;
      color: #d1111c;
      display: inline-flex;
      flex-direction: column;
      padding: 10px 50px 10px 95px;
      background: #fff url(../images/common/shuriken-1-red.svg) no-repeat left 13px center/70px auto;
      line-height: 1.5;
      border-radius: 10px 10px 0 0; }
      @media screen and (max-width: 767px) {
        .index-guide__activities__title {
          padding: 15px 0px 15px 84px;
          display: flex;
          background: url(../images/common/shuriken-1-red.svg) no-repeat left 13px center/60px auto; } }
      .index-guide__activities__title .en {
        font-family: "Dela Gothic One", sans-serif;
        font-weight: 400;
        font-size: 25px; }
        @media screen and (max-width: 767px) {
          .index-guide__activities__title .en {
            font-size: 5.64103vw; } }
      .index-guide__activities__title .jp {
        font-size: 20px; }
        @media screen and (max-width: 767px) {
          .index-guide__activities__title .jp {
            font-size: 4.61538vw; } }
    .index-guide__activities-cont {
      background: #fff;
      padding: 40px;
      border-radius: 0 10px 10px 10px; }
      @media screen and (max-width: 767px) {
        .index-guide__activities-cont {
          padding: 0 20px 20px; } }
      .index-guide__activities-cont .index-equipment__list {
        flex-wrap: wrap;
        gap: 20px;
        width: 100%; }
        @media screen and (max-width: 767px) {
          .index-guide__activities-cont .index-equipment__list {
            gap: 7px; } }
      .index-guide__activities-cont .index-equipment__item {
        width: calc((100% - 100px) / 6); }
        @media screen and (max-width: 767px) {
          .index-guide__activities-cont .index-equipment__item {
            width: calc((100% - 14px) / 3); } }
        .index-guide__activities-cont .index-equipment__item .icon {
          width: 105px;
          height: 76px; }
          @media screen and (max-width: 767px) {
            .index-guide__activities-cont .index-equipment__item .icon {
              width: 17vw;
              height: 9.5vw; } }
          .index-guide__activities-cont .index-equipment__item .icon img {
            width: 100%;
            height: 100%;
            object-fit: contain; }
        .index-guide__activities-cont .index-equipment__item .label {
          color: #000;
          font-size: 14px;
          line-height: 1.28; }
          @media screen and (max-width: 767px) {
            .index-guide__activities-cont .index-equipment__item .label {
              font-size: 10px; } }
  .index-guide__btns ul {
    display: flex;
    flex-wrap: wrap;
    gap: 25px; }
    @media screen and (max-width: 767px) {
      .index-guide__btns ul {
        gap: 20px; } }
    .index-guide__btns ul li {
      width: calc((100% - 25px) / 2);
      margin: 0; }
      @media screen and (max-width: 767px) {
        .index-guide__btns ul li {
          width: 100%; } }
      .index-guide__btns ul li a {
        color: #000; }
        .index-guide__btns ul li a:hover {
          background: #000; }
  .index-guide .flowing-ttl {
    margin-top: -150px; }
    @media screen and (max-width: 767px) {
      .index-guide .flowing-ttl {
        margin-top: -100px; } }
    .index-guide .flowing-ttl__item {
      padding: 0 10px; }
      .index-guide .flowing-ttl__item img {
        height: calc((604px / 2));
        width: auto; }
        @media screen and (max-width: 767px) {
          .index-guide .flowing-ttl__item img {
            height: calc((604px / 3)); } }

/* アニメーション */
@keyframes waveMove {
  from {
    transform: translateX(0); }
  to {
    transform: translateX(-50%); } }

@keyframes knifeMove {
  0% {
    transform: translate(0, 0); }
  70% { }
  100% {
    transform: translate(-300px, 300px); } }

/* =========================== */
.index-lesson {
  text-align: center;
  padding: 50px 0 100px; }
  @media screen and (max-width: 767px) {
    .index-lesson {
      padding: 30px 8vw 70px; } }
  .index-lesson__badge {
    background: url(../images/top/lesson-title-bg.svg) no-repeat center/contain;
    width: 370px;
    height: 113px;
    margin: 0 auto 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 45px;
    font-family: "Dela Gothic One", sans-serif;
    font-weight: 400;
    color: #fff; }
    @media screen and (max-width: 767px) {
      .index-lesson__badge {
        font-size: 6.92308vw;
        width: 71.02564vw;
        height: 21.62308vw; } }
  .index-lesson__title {
    font-size: 60px;
    font-family: "Dela Gothic One", sans-serif;
    font-weight: 400;
    text-align: center;
    line-height: 1.08; }
    @media screen and (max-width: 767px) {
      .index-lesson__title {
        font-size: 5.12821vw;
        line-height: 1.5; } }
  .index-lesson__lead {
    font-size: 20px;
    line-height: 2; }
    @media screen and (max-width: 767px) {
      .index-lesson__lead {
        font-size: 3.84615vw;
        text-align: left; } }
  .index-lesson__title-2 {
    font-size: 25px;
    position: relative;
    margin-bottom: 50px; }
    @media screen and (max-width: 767px) {
      .index-lesson__title-2 {
        font-size: 5.12821vw;
        margin-bottom: 30px; } }
    .index-lesson__title-2::before, .index-lesson__title-2::after {
      content: "";
      display: block;
      width: 240px;
      height: 213px;
      position: absolute;
      bottom: 0; }
    .index-lesson__title-2::before {
      background: url(../images/top/lesson-ninja-left.svg) no-repeat center bottom/contain;
      left: 0; }
      @media screen and (max-width: 767px) {
        .index-lesson__title-2::before {
          left: 50%;
          transform: translate(-50%, 0); } }
    .index-lesson__title-2::after {
      background: url(../images/top/lesson-ninja-right.svg) no-repeat center bottom/contain;
      right: 0; }
      @media screen and (max-width: 767px) {
        .index-lesson__title-2::after {
          display: none; } }
    .index-lesson__title-2 > span {
      display: block;
      position: relative;
      border-bottom: 2px solid #000;
      padding: 0 0 7px; }
      .index-lesson__title-2 > span:after {
        content: "";
        width: 0;
        height: 0;
        border-style: solid;
        border-right: 30px solid transparent;
        border-left: 30px solid transparent;
        border-top: 18px solid #000000;
        border-bottom: 0;
        position: absolute;
        left: 50%;
        bottom: -18px;
        transform: translate(-50%, 0); }
        @media screen and (max-width: 767px) {
          .index-lesson__title-2 > span:after {
            border-right: 20px solid transparent;
            border-left: 20px solid transparent;
            border-top: 12px solid #000000;
            bottom: -12px; } }
  .index-lesson__list {
    display: flex;
    gap: 55px;
    margin: 0 -28px; }
    .index-lesson__list .slick-prev {
      left: 0; }
      .index-lesson__list .slick-prev:before {
        background-image: url(../images/slick/left-black.svg); }
    .index-lesson__list .slick-next {
      right: 0; }
      .index-lesson__list .slick-next:before {
        background-image: url(../images/slick/right-black.svg); }
    @media screen and (max-width: 767px) {
      .index-lesson__list {
        margin-bottom: 10px !important; }
        .index-lesson__list .slick-track {
          padding-bottom: 10px; }
        .index-lesson__list .slick-dots li button:before {
          background-color: #959595; }
        .index-lesson__list .slick-dots li.slick-active button:before {
          background-color: #d1111c; } }
  .index-lesson__item {
    width: calc((100% - 55px) / 2);
    border-radius: 10px;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
    background: #ffffff;
    background: linear-gradient(0deg, white 50%, #d1111c 50%);
    padding: 32px;
    margin: 5px 28px;
    color: #fff;
    text-align: left; }
    @media screen and (max-width: 767px) {
      .index-lesson__item {
        padding: 10px 21px; } }
    .index-lesson__item .text {
      line-height: 1.3;
      margin-bottom: 20px; }
      @media screen and (max-width: 767px) {
        .index-lesson__item .text {
          margin-bottom: 10px; } }
      .index-lesson__item .text .en {
        font-family: "Dela Gothic One", sans-serif;
        font-weight: 400;
        font-size: 20px; }
        @media screen and (max-width: 767px) {
          .index-lesson__item .text .en {
            font-size: 5.12821vw; } }
      .index-lesson__item .text .jp {
        font-size: 25px;
        font-weight: 700; }
        @media screen and (max-width: 767px) {
          .index-lesson__item .text .jp {
            font-size: 5.12821vw; } }
    .index-lesson__item .img {
      width: 100%;
      height: auto;
      aspect-ratio: 449 / 275; }
      .index-lesson__item .img img {
        border-radius: 10px;
        object-fit: cover;
        width: 100%;
        height: 100%; }
        @media screen and (max-width: 767px) {
          .index-lesson__item .img img {
            border-radius: 5px; } }
  .index-lesson .cs {
    font-family: "Dela Gothic One", sans-serif;
    font-size: 30px;
    font-weight: 100; }
    @media screen and (max-width: 767px) {
      .index-lesson .cs {
        font-size: 6.15385vw; } }

/* =========================== */
.index-price {
  background: #d1111c;
  border-radius: 130px;
  padding: 60px 0; }
  @media screen and (max-width: 767px) {
    .index-price {
      border-radius: 60px;
      padding: 45px 8vw 90px; } }
  .index-price .sect-inner {
    max-width: 1480px; }
  .index-price__title {
    text-align: center;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "Dela Gothic One", sans-serif;
    font-weight: 400;
    gap: 20px; }
    @media screen and (max-width: 767px) {
      .index-price__title {
        gap: 10px; } }
    .index-price__title .en {
      font-size: 45px; }
      @media screen and (max-width: 767px) {
        .index-price__title .en {
          font-size: 6.41026vw; } }
    .index-price__title .jp {
      font-size: 60px; }
      @media screen and (max-width: 767px) {
        .index-price__title .jp {
          font-size: 7.69231vw; } }
    @media screen and (max-width: 767px) {
      .index-price__title .icon {
        width: 48px; } }
  .index-price__lead {
    text-align: center;
    color: #fff;
    font-size: 30px;
    font-weight: bold;
    margin-bottom: 10px; }
    @media screen and (max-width: 767px) {
      .index-price__lead {
        font-size: 5.12821vw; } }
  .index-price__body {
    text-align: center;
    color: #fff; }
    @media screen and (max-width: 767px) {
      .index-price__body {
        font-size: 3.84615vw;
        text-align: left; } }
  .index-price__body {
    margin-bottom: 30px; }
  .index-price__list {
    display: flex;
    justify-content: center;
    gap: 40px;
    background-image: url(../images/top/price-bg.png), url(../images/top/price-bg.png);
    background-repeat: no-repeat;
    background-position: left top, right top;
    background-size: auto 100%; }
    @media screen and (max-width: 767px) {
      .index-price__list {
        flex-direction: column;
        background: none;
        align-items: center; } }
  .index-price__item {
    background-color: #fff;
    width: 340px;
    text-align: center;
    border-radius: 170px;
    border: 9px solid #339cb9;
    color: #339cb9;
    padding: 50px 0; }
    @media screen and (max-width: 767px) {
      .index-price__item {
        width: 62.5641vw;
        padding: 40px 0; } }
    @media screen and (max-width: 767px) {
      .index-price__item.plan-1 .illust {
        width: 28.71795vw;
        height: auto;
        margin: 20px auto; } }
    .index-price__item.plan-2 {
      border: 9px solid #2b9800;
      color: #2b9800; }
      @media screen and (max-width: 767px) {
        .index-price__item.plan-2 .illust {
          width: 43.58974vw;
          height: auto;
          margin: 20px auto; } }
    .index-price__item .text-1 {
      font-size: 20px;
      line-height: 1.25;
      font-weight: bold; }
      @media screen and (max-width: 767px) {
        .index-price__item .text-1 {
          font-size: 3.84615vw; } }
    .index-price__item .text-2 {
      font-size: 30px;
      font-family: "Dela Gothic One", sans-serif;
      font-weight: 400; }
      @media screen and (max-width: 767px) {
        .index-price__item .text-2 {
          font-size: 5.64103vw; } }
    .index-price__item .illust {
      height: 260px;
      display: flex;
      justify-content: center;
      align-items: center; }
    .index-price__item .price {
      font-size: 30px;
      font-family: "Dela Gothic One", sans-serif;
      font-weight: 400; }
      @media screen and (max-width: 767px) {
        .index-price__item .price {
          font-size: 5.64103vw; } }

/* =========================== */
.index-access {
  padding: 100px 0;
  overflow: hidden;
  width: 100%; }
  @media screen and (max-width: 767px) {
    .index-access {
      padding: 50px 0 50px; } }
  .index-access-header {
    position: relative;
    overflow: hidden;
    height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: calc(100% + 200px);
    margin-left: -100px; }
    @media screen and (max-width: 767px) {
      .index-access-header {
        height: auto;
        display: block;
        margin-bottom: 30px; } }
  .index-access__title {
    position: relative;
    z-index: 3;
    text-align: center;
    background: #fff;
    padding: 0 50px; }
    .index-access__title .en {
      font-family: "Dela Gothic One", sans-serif;
      font-weight: 400;
      font-size: 45px; }
      @media screen and (max-width: 767px) {
        .index-access__title .en {
          font-size: 6.41026vw; } }
    .index-access__title .jp {
      font-size: 20px;
      font-weight: 700; }
      @media screen and (max-width: 767px) {
        .index-access__title .jp {
          font-size: 5.12821vw; } }
  .index-access__ninja-wrap {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none; }
    @media screen and (max-width: 767px) {
      .index-access__ninja-wrap {
        position: static;
        height: 82px;
        width: 100%; } }
  .index-access__ninja-list {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    gap: 40px; }
    .index-access__ninja-list.left {
      right: calc(50% + 180px); }
      @media screen and (max-width: 767px) {
        .index-access__ninja-list.left.is-sp {
          position: static;
          width: 100%;
          left: 0;
          transform: translate(0, 0);
          display: flex;
          justify-content: center;
          gap: 15px; } }
    .index-access__ninja-list.right {
      left: calc(50% + 180px); }
  .index-access__ninja-item {
    position: relative;
    width: 180px;
    flex: 0 0 180px; }
    @media screen and (max-width: 767px) {
      .index-access__ninja-item {
        width: 88px;
        flex: 0 0 88px; } }
    .index-access__ninja-item img {
      width: 100%;
      display: block;
      opacity: 0.25; }
    .index-access__ninja-item::after {
      content: "";
      position: absolute;
      inset: 0;
      background: url("../images/top/access-ninja.svg") center/contain no-repeat;
      opacity: 0; }
    .index-access__ninja-item.is-active::after {
      opacity: 1; }
  .index-access-flex {
    display: flex; }
    @media screen and (max-width: 767px) {
      .index-access-flex {
        flex-direction: column;
        padding: 0 8vw; } }
    .index-access-flex-left {
      width: 49%;
      padding-right: 60px; }
      @media screen and (max-width: 767px) {
        .index-access-flex-left {
          width: 100%;
          padding-right: 0; } }
    .index-access-flex-right {
      width: 51%; }
      @media screen and (max-width: 767px) {
        .index-access-flex-right {
          width: 100%; } }
      .index-access-flex-right .img {
        margin-bottom: 20px; }
        .index-access-flex-right .img img {
          border-radius: 10px; }
      .index-access-flex-right .equipment__title {
        color: #d1111c;
        font-weight: bold;
        margin-bottom: 10px; }
      .index-access-flex-right .equipment .index-equipment__list {
        flex-wrap: wrap;
        gap: 10px;
        width: 100%; }
        @media screen and (max-width: 767px) {
          .index-access-flex-right .equipment .index-equipment__list {
            gap: 7px; } }
      .index-access-flex-right .equipment .index-equipment__item {
        width: calc((100% - 50px) / 6);
        padding-bottom: 0; }
        @media screen and (max-width: 767px) {
          .index-access-flex-right .equipment .index-equipment__item {
            width: calc((100% - 14px) / 3); } }
        .index-access-flex-right .equipment .index-equipment__item .icon img {
          max-height: 38px; }
        .index-access-flex-right .equipment .index-equipment__item .label {
          font-size: 10px;
          line-height: 1.28; }
  .index-access__title-2 {
    background: #d1111c;
    color: #fff;
    font-size: 20px;
    border-radius: 10px;
    padding: 10px 15px; }
    @media screen and (max-width: 767px) {
      .index-access__title-2 {
        font-size: 15px; } }
  .index-access-row {
    border-bottom: 1px solid #c1c1c1;
    padding: 17px 0; }
    .index-access-row .term {
      color: #d1111c;
      font-weight: bold;
      display: flex;
      align-items: center; }
      .index-access-row .term .icon {
        display: flex;
        align-items: center;
        width: 23px; }
    .index-access-row .desc .btn {
      margin-top: 12px; }
      .index-access-row .desc .btn a {
        background: #000;
        color: #fff;
        border-radius: 100vh;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        width: 245px;
        height: 51px; }
  @media screen and (max-width: 767px) {
    .index-access .c-btn {
      padding: 0 8vw; } }

/* =========================== */
.index-sns {
  background: #a9e654;
  padding: 120px 30px;
  text-align: center; }
  @media screen and (max-width: 767px) {
    .index-sns {
      padding: 50px 20px; } }
  .index-sns .sect-inner {
    background: #fff;
    border-radius: 150px;
    padding: 90px; }
    @media screen and (max-width: 767px) {
      .index-sns .sect-inner {
        border-radius: 60px;
        padding: 30px 15px; } }
  .index-sns__title {
    line-height: 1.1; }
    .index-sns__title .en {
      font-family: "Dela Gothic One", sans-serif;
      font-weight: 400;
      font-size: 45px;
      display: block; }
      @media screen and (max-width: 767px) {
        .index-sns__title .en {
          font-size: 6.41026vw; } }
    .index-sns__title .jp {
      font-family: "Dela Gothic One", sans-serif;
      font-weight: 400;
      font-size: 60px;
      display: block; }
      @media screen and (max-width: 767px) {
        .index-sns__title .jp {
          font-size: 7.69231vw; } }
  .index-sns__lead {
    font-size: 20px;
    font-weight: bold; }
    @media screen and (max-width: 767px) {
      .index-sns__lead {
        font-size: 3.84615vw; } }
  .index-sns__list {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 30px; }
    @media screen and (max-width: 767px) {
      .index-sns__list {
        gap: 7px;
        flex-wrap: wrap;
        margin-top: 20px; } }
  .index-sns__item {
    width: 170px;
    height: 50px; }
    @media screen and (max-width: 767px) {
      .index-sns__item {
        width: calc((100% - 7px) / 2); } }
    .index-sns__item a {
      border: 4px solid #000;
      border-radius: 5px;
      background: #fff;
      display: flex;
      align-items: center;
      padding: 0 10px;
      height: 100%;
      position: relative; }
      .index-sns__item a .label {
        flex-grow: 1; }
    .index-sns__item.instagram a {
      border-color: #ea33b4; }
    .index-sns__item.youtube a {
      border-color: #ed0000; }
    .index-sns__item.tiktok a {
      border-color: #51f4ee; }
  .index-sns__instagram {
    position: relative; }
    .index-sns__instagram__title {
      font-family: "Dela Gothic One", sans-serif;
      font-weight: 400;
      font-size: 45px;
      color: #a9e654;
      line-height: 1;
      position: absolute;
      transform: rotate(90deg);
      transform-origin: left top;
      left: -4px;
      top: 10px; }
      @media screen and (max-width: 767px) {
        .index-sns__instagram__title {
          position: static;
          transform: rotate(0);
          font-size: 8.97436vw;
          text-align: center; } }

/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
.beginner-anchor {
  margin-bottom: 40px; }
  .beginner-anchor__list {
    display: flex;
    gap: 23px;
    padding: 23px 0; }
    @media screen and (max-width: 767px) {
      .beginner-anchor__list {
        padding: 30px 8vw 0;
        gap: 10px;
        flex-wrap: wrap; } }
    .beginner-anchor__list li {
      flex: 1;
      margin: 0; }
      @media screen and (max-width: 767px) {
        .beginner-anchor__list li {
          flex: auto;
          width: calc((100% - 10px) / 2); } }
      .beginner-anchor__list li a {
        background: #a9e654;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        border-radius: 10px;
        font-size: 20px;
        font-weight: bold;
        height: 80px;
        position: relative; }
        @media screen and (max-width: 767px) {
          .beginner-anchor__list li a {
            width: 100%;
            font-size: 12px;
            height: 56px;
            border-radius: 5px; } }
        .beginner-anchor__list li a::before {
          content: "";
          display: block;
          position: absolute;
          right: 15px;
          top: 50%;
          transform: translate(0, -50%);
          width: 0;
          height: 0;
          border-style: solid;
          border-right: 7px solid transparent;
          border-left: 7px solid transparent;
          border-top: 12px solid #000;
          border-bottom: 0; }
          @media screen and (max-width: 767px) {
            .beginner-anchor__list li a::before {
              border-right: 6px solid transparent;
              border-left: 6px solid transparent;
              border-top: 9px solid #000;
              right: 8px; } }

/* =========================== */
.beginner-intro {
  color: #fff; }
  @media screen and (max-width: 767px) {
    .beginner-intro {
      padding: 0 8vw; } }
  .beginner-intro .sect-inner {
    display: flex; }
    @media screen and (max-width: 767px) {
      .beginner-intro .sect-inner {
        display: block; } }
  .beginner-intro-text {
    width: 53%; }
    @media screen and (max-width: 767px) {
      .beginner-intro-text {
        width: 100%;
        margin-bottom: 30px; } }
  .beginner-intro-img {
    width: 47%; }
    @media screen and (max-width: 767px) {
      .beginner-intro-img {
        width: 100%; } }
  .beginner-intro__title {
    font-size: 50px;
    font-family: "Dela Gothic One", sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin-bottom: 20px; }
    @media screen and (max-width: 767px) {
      .beginner-intro__title {
        font-size: 7.69231vw; } }
  .beginner-intro__body {
    font-size: 20px;
    line-height: 2; }
    @media screen and (max-width: 767px) {
      .beginner-intro__body {
        font-size: 3.84615vw; } }

/* =========================== */
.beginner-flow {
  padding-top: 100px;
  padding-bottom: 100px; }
  @media screen and (max-width: 767px) {
    .beginner-flow {
      padding: 80px 8vw 50px; } }
  @media screen and (max-width: 767px) {
    .beginner-flow .c-title {
      text-align: center; }
      .beginner-flow .c-title .main {
        padding-left: 0px; }
        .beginner-flow .c-title .main::before {
          left: 50%;
          top: -42px;
          transform: translate(-50%, 0); } }
  .beginner-flow__list {
    display: flex;
    flex-wrap: wrap;
    gap: 40px; }
    @media screen and (max-width: 767px) {
      .beginner-flow__list .slick-list {
        padding: 30px 0 0; }
      .beginner-flow__list .slick-prev,
      .beginner-flow__list .slick-next {
        width: 36px;
        height: 36px; }
      .beginner-flow__list .slick-prev {
        left: -20px; }
        .beginner-flow__list .slick-prev:before {
          background-image: url(../images/slick/left.svg); }
      .beginner-flow__list .slick-next {
        right: -20px; }
        .beginner-flow__list .slick-next:before {
          background-image: url(../images/slick/right.svg); } }
  .beginner-flow__item {
    width: calc((100% - 120px) / 4);
    background: #fff;
    border-radius: 10px;
    padding: 22px;
    padding-top: 30px;
    position: relative; }
    @media screen and (max-width: 767px) {
      .beginner-flow__item {
        margin: 0 30px; } }
    .beginner-flow__item .num {
      text-align: center;
      width: 45px;
      height: 45px;
      background: #d1111c;
      color: #fff;
      display: flex;
      justify-content: center;
      align-items: center;
      font-family: "Dela Gothic One", sans-serif;
      font-size: 30px;
      border-radius: 50%;
      padding-bottom: 3px;
      position: absolute;
      left: 50%;
      top: -22px;
      transform: translate(-50%, 0); }
    .beginner-flow__item .header {
      text-align: center;
      min-height: 176px;
      display: flex;
      flex-direction: column; }
    .beginner-flow__item .title {
      font-size: 20px;
      line-height: 1.25; }
      .beginner-flow__item .title small {
        font-size: 12px;
        display: block;
        padding-top: 5px; }
    .beginner-flow__item .icon {
      flex-grow: 1;
      display: flex;
      justify-content: center;
      align-items: center;
      margin-bottom: 5px; }
    .beginner-flow__item .body {
      margin-bottom: 15px;
      font-weight: 700; }
    .beginner-flow__item .body-2 {
      font-size: 12px;
      font-weight: 500; }
    .beginner-flow__item .line a,
    .beginner-flow__item .btn a {
      display: flex;
      align-items: center;
      gap: 10px;
      padding: 4px;
      height: 62px;
      border: 5px solid #3cc754;
      border-radius: 5px;
      background: #fff;
      color: #000000;
      line-height: 1.2;
      font-weight: bold;
      font-size: 13px;
      position: relative; }
      .beginner-flow__item .line a .icon,
      .beginner-flow__item .btn a .icon {
        flex: 0 0 28px; }
    .beginner-flow__item .btn a {
      justify-content: center;
      border-color: #a9e654; }
      .beginner-flow__item .btn a .arrow {
        position: absolute;
        right: 10px;
        top: 50%;
        transform: translate(0, -50%); }
        .beginner-flow__item .btn a .arrow img {
          width: 17px; }
  .beginner-flow__note {
    background: #fff;
    border-radius: 10px;
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 40px; }
    @media screen and (max-width: 767px) {
      .beginner-flow__note {
        margin-top: 100px;
        display: block; } }
    .beginner-flow__note .header {
      border-right: 1px solid #d1111c;
      display: flex;
      align-items: center;
      gap: 20px;
      padding-right: 30px; }
      @media screen and (max-width: 767px) {
        .beginner-flow__note .header {
          flex-direction: column;
          padding: 0;
          border-right: none;
          gap: 10px;
          margin-bottom: 20px; } }
      @media screen and (max-width: 767px) {
        .beginner-flow__note .header .icon {
          order: 1; }
          .beginner-flow__note .header .icon img {
            width: 40px; } }
      @media screen and (max-width: 767px) {
        .beginner-flow__note .header .illust {
          order: 3; } }
      .beginner-flow__note .header .text {
        font-size: 20px;
        line-height: 1.5;
        font-weight: bold;
        color: #d1111c; }
        @media screen and (max-width: 767px) {
          .beginner-flow__note .header .text {
            font-size: 4.61538vw;
            order: 2;
            text-align: center; } }
        .beginner-flow__note .header .text span {
          text-decoration: underline; }

/* =========================== */
.beginner-facility {
  padding: 140px 0; }
  @media screen and (max-width: 767px) {
    .beginner-facility {
      padding: 60px 8vw; } }
  .beginner-facility .index-equipment__list {
    gap: 24px;
    flex-wrap: wrap;
    width: 100%; }
    @media screen and (max-width: 767px) {
      .beginner-facility .index-equipment__list {
        gap: 15px; } }
  .beginner-facility .index-equipment__item {
    width: calc((100% - 120px) / 6); }
    @media screen and (max-width: 767px) {
      .beginner-facility .index-equipment__item {
        width: calc((100% - 30px) / 3); } }
    .beginner-facility .index-equipment__item .icon {
      width: 106px;
      height: 77px; }
      @media screen and (max-width: 767px) {
        .beginner-facility .index-equipment__item .icon {
          width: 60px;
          height: 40px; } }
      .beginner-facility .index-equipment__item .icon img {
        width: 100%;
        height: 100%;
        object-fit: contain; }
    .beginner-facility .index-equipment__item .label {
      font-size: 15px;
      line-height: 1.26; }
      @media screen and (max-width: 767px) {
        .beginner-facility .index-equipment__item .label {
          font-size: 3.07692vw; } }
  .beginner-facility__list {
    display: flex;
    flex-wrap: wrap;
    gap: 123px 26px;
    padding: 116px 0 0; }
    @media screen and (max-width: 767px) {
      .beginner-facility__list {
        gap: 100px; } }
  .beginner-facility__item {
    width: calc((100% - 26px) / 2);
    border: 5px solid #a9e654;
    border-radius: 10px;
    position: relative;
    background: #fff;
    padding: 30px; }
    @media screen and (max-width: 767px) {
      .beginner-facility__item {
        width: 100%;
        padding: 30px 13px; } }
    .beginner-facility__item .icon {
      width: 160px;
      height: 160px;
      border: 5px solid #a9e654;
      border-radius: 50%;
      background: #fff;
      position: absolute;
      position: absolute;
      left: 50%;
      top: -80px;
      transform: translate(-50%, 0); }
      @media screen and (max-width: 767px) {
        .beginner-facility__item .icon {
          width: 100px;
          height: 100px;
          top: -50px; } }
      .beginner-facility__item .icon-inner {
        width: 100%;
        height: 100%;
        position: relative;
        display: flex;
        justify-content: center;
        padding-top: 16px; }
        .beginner-facility__item .icon-inner::before {
          content: "";
          display: block;
          width: 120%;
          height: 100%;
          background: #fff;
          position: absolute;
          left: 50%;
          top: 75px;
          transform: translate(-50%, 0); }
          @media screen and (max-width: 767px) {
            .beginner-facility__item .icon-inner::before {
              top: 45px; } }
        .beginner-facility__item .icon-inner .img {
          width: 98px;
          height: 76px;
          position: relative; }
          @media screen and (max-width: 767px) {
            .beginner-facility__item .icon-inner .img {
              width: 50px;
              height: 50px; } }
          .beginner-facility__item .icon-inner .img img {
            width: 100%;
            height: 100%;
            object-fit: contain; }
    .beginner-facility__item .title {
      font-size: 30px;
      text-align: center;
      margin-bottom: 10px;
      position: relative; }
      @media screen and (max-width: 767px) {
        .beginner-facility__item .title {
          font-size: 5.12821vw; } }
      .beginner-facility__item .title br {
        display: none; }
    .beginner-facility__item .text {
      margin-top: 40px;
      position: relative; }
  .beginner-facility .gallery__list .slick-prev,
  .beginner-facility .gallery__list .slick-next {
    width: 36px;
    height: 36px; }
  .beginner-facility .gallery__list .slick-prev {
    left: -15px; }
    @media screen and (max-width: 767px) {
      .beginner-facility .gallery__list .slick-prev {
        left: -40px; } }
    .beginner-facility .gallery__list .slick-prev:before {
      background-image: url(../images/slick/left-green.svg); }
  .beginner-facility .gallery__list .slick-next {
    right: -15px; }
    @media screen and (max-width: 767px) {
      .beginner-facility .gallery__list .slick-next {
        right: -40px; } }
    .beginner-facility .gallery__list .slick-next:before {
      background-image: url(../images/slick/right-green.svg); }
  .beginner-facility .gallery__list .slick-dots {
    bottom: -26px; }
    .beginner-facility .gallery__list .slick-dots li button:before {
      background-color: #959595; }
    .beginner-facility .gallery__list .slick-dots li.slick-active button:before {
      background-color: #a9e654; }
  .beginner-facility .gallery__list .gallery__item__img {
    width: 100%;
    height: auto;
    aspect-ratio: 460/260; }

/* =========================== */
.beginner-point {
  background: #d1111c;
  padding: 100px 0; }
  @media screen and (max-width: 767px) {
    .beginner-point {
      padding: 60px 8vw 223px; } }
  .beginner-point .sect-inner {
    position: relative; }
  .beginner-point__list {
    display: flex;
    flex-wrap: wrap;
    gap: 35px;
    margin: 0; }
    @media screen and (max-width: 767px) {
      .beginner-point__list {
        gap: 20px; } }
  .beginner-point__item {
    width: calc((100% - 70px) / 3);
    background: #fff;
    border-radius: 10px;
    padding: 30px;
    padding-top: 24px; }
    @media screen and (max-width: 767px) {
      .beginner-point__item {
        width: 100%;
        padding: 20px;
        padding-top: 17px; } }
    .beginner-point__item .title {
      color: #d1111c;
      font-size: 25px;
      margin: 0; }
      @media screen and (max-width: 767px) {
        .beginner-point__item .title {
          font-size: 20px; } }
  .beginner-point__illust {
    position: absolute;
    right: 40px;
    bottom: -127px;
    width: calc(434px / 2); }
    @media screen and (max-width: 767px) {
      .beginner-point__illust {
        width: calc(434px / 2.3);
        right: auto;
        left: 50%;
        bottom: -240px;
        transform: translate(-50%, 0); } }

/* =========================== */
.beginner-staff {
  padding: 110px 0; }
  @media screen and (max-width: 767px) {
    .beginner-staff {
      padding: 60px 8vw 80px; } }
  .beginner-staff__list {
    display: flex;
    flex-wrap: wrap;
    gap: 35px; }
  .beginner-staff__item {
    width: calc((100% - 70px) / 3);
    background: #fff;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
    border-radius: 10px;
    display: flex;
    flex-direction: column; }
    @media screen and (max-width: 767px) {
      .beginner-staff__item {
        width: 100%; } }
    .beginner-staff__item .header {
      text-align: center;
      padding: 25px; }
      .beginner-staff__item .header .img {
        margin-bottom: 10px; }
        .beginner-staff__item .header .img img {
          width: 125px; }
      .beginner-staff__item .header .name {
        font-size: 25px;
        font-weight: bold; }
      .beginner-staff__item .header .job {
        color: #d1111c; }
    .beginner-staff__item .body {
      background: #d1111c;
      color: #fff;
      font-size: 18px;
      line-height: 1.39;
      font-weight: bold;
      border-radius: 0 0 10px 10px;
      padding: 25px;
      flex-grow: 1; }
      @media screen and (max-width: 767px) {
        .beginner-staff__item .body {
          font-size: 4.61538vw;
          padding: 18px;
          padding-bottom: 25px; } }
  .beginner-staff .cs {
    font-family: "Dela Gothic One", sans-serif;
    font-size: 30px;
    font-weight: 100; }
    @media screen and (max-width: 767px) {
      .beginner-staff .cs {
        font-size: 6.15385vw; } }

/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
.information-opentime {
  padding-top: 60px; }
  @media screen and (max-width: 767px) {
    .information-opentime {
      padding: 0px 8vw 0;
      scroll-margin-top: 100px !important;
      /* 追従ヘッダー分 */ } }
  .information-opentime .c-title {
    margin-bottom: 30px; }
  .information-opentime-cont {
    background: #fff;
    border-radius: 10px;
    padding: 60px 90px; }
    @media screen and (max-width: 767px) {
      .information-opentime-cont {
        padding: 20px; } }
  .information-opentime__badge {
    display: flex;
    align-items: center;
    gap: 30px;
    border: 7px solid #d1111c;
    border-radius: 5px;
    background: #fff;
    padding: 20px 30px;
    padding-right: 15px;
    margin-bottom: 70px; }
    @media screen and (max-width: 767px) {
      .information-opentime__badge {
        display: block;
        border-radius: 10px;
        flex-direction: column;
        padding: 20px 10px;
        margin-bottom: 30px; } }
    .information-opentime__badge-header {
      line-height: 1.2;
      display: flex;
      align-items: center;
      gap: 10px; }
      @media screen and (max-width: 767px) {
        .information-opentime__badge-header {
          flex-direction: column;
          gap: 0;
          margin-bottom: 7px; } }
      .information-opentime__badge-header .line-1 {
        font-family: "Dela Gothic One", sans-serif;
        font-weight: 400;
        font-size: 20px; }
      .information-opentime__badge-header .line-2 {
        font-family: "Dela Gothic One", sans-serif;
        font-weight: 400;
        font-size: 30px;
        color: #d1111c; }
    .information-opentime__badge-cont {
      gap: 10px;
      flex-grow: 1; }
      .information-opentime__badge-cont__time {
        background: #a9e654;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        border-radius: 5px;
        padding: 10px;
        gap: 20px; }
        .information-opentime__badge-cont__time .label {
          font-size: 12px;
          font-weight: bold;
          line-height: 1.33; }
        .information-opentime__badge-cont__time .time {
          font-family: "Dela Gothic One", sans-serif;
          font-weight: 400;
          font-size: 20px; }
          @media screen and (max-width: 767px) {
            .information-opentime__badge-cont__time .time {
              font-size: 16px; } }
  .information-opentime__time {
    display: flex;
    justify-content: space-between;
    margin-bottom: 40px;
    gap: 55px; }
    @media screen and (max-width: 767px) {
      .information-opentime__time {
        flex-direction: column;
        gap: 15px;
        margin-bottom: 20px; } }
    .information-opentime__time dl {
      width: calc((100% - 55px) / 2);
      display: flex;
      justify-content: space-between;
      border-bottom: 1px solid #000000;
      font-size: 25px;
      font-weight: bold;
      padding-bottom: 7px; }
      @media screen and (max-width: 767px) {
        .information-opentime__time dl {
          width: 100%;
          display: block;
          font-size: 4.61538vw; } }
      .information-opentime__time dl dt {
        color: #d1111c; }
  .information-opentime__note {
    background: #f4f4f4;
    border-radius: 10px;
    padding: 25px 30px; }
    @media screen and (max-width: 767px) {
      .information-opentime__note {
        padding: 15px 20px; } }
    .information-opentime__note .red {
      color: #d1111c; }

/* =========================== */
.information-equipment {
  padding-top: 60px; }
  @media screen and (max-width: 767px) {
    .information-equipment {
      padding: 50px 8vw 0; } }
  .information-equipment .c-title {
    margin-bottom: 30px; }
    @media screen and (max-width: 767px) {
      .information-equipment .c-title {
        margin-bottom: 15px; } }
  .information-equipment-cont {
    background: #fff;
    border-radius: 10px;
    padding: 35px 45px; }
    @media screen and (max-width: 767px) {
      .information-equipment-cont {
        padding: 20px; } }
    .information-equipment-cont .index-equipment__list {
      width: 100%;
      flex-wrap: wrap;
      gap: 22px; }
      @media screen and (max-width: 767px) {
        .information-equipment-cont .index-equipment__list {
          gap: 7px; } }
    .information-equipment-cont .index-equipment__item,
    .information-equipment-cont .index-equipment__btn {
      width: calc((100% - 110px) / 6); }
      @media screen and (max-width: 767px) {
        .information-equipment-cont .index-equipment__item,
        .information-equipment-cont .index-equipment__btn {
          width: calc((100% - 14px) / 3); } }
      .information-equipment-cont .index-equipment__item .icon,
      .information-equipment-cont .index-equipment__btn .icon {
        width: 90px;
        height: 77px;
        margin-bottom: 5px; }
        @media screen and (max-width: 767px) {
          .information-equipment-cont .index-equipment__item .icon,
          .information-equipment-cont .index-equipment__btn .icon {
            width: 60px;
            height: 40px; } }
        .information-equipment-cont .index-equipment__item .icon img,
        .information-equipment-cont .index-equipment__btn .icon img {
          width: 100%;
          height: 100%;
          object-fit: contain; }
      .information-equipment-cont .index-equipment__item .label,
      .information-equipment-cont .index-equipment__btn .label {
        font-size: 14px; }
        @media screen and (max-width: 767px) {
          .information-equipment-cont .index-equipment__item .label,
          .information-equipment-cont .index-equipment__btn .label {
            font-size: 2.5641vw; } }
    @media screen and (max-width: 767px) {
      .information-equipment-cont .index-equipment__btn {
        width: 100%;
        padding: 26px 0 11px; } }
    .information-equipment-cont .index-equipment__btn a {
      background: #d1111c;
      color: #fff;
      height: 100%;
      width: 100%;
      gap: 10px; }
      @media screen and (max-width: 767px) {
        .information-equipment-cont .index-equipment__btn a {
          background: none;
          color: #d1111c; } }
      .information-equipment-cont .index-equipment__btn a .label {
        font-size: 22px; }
        @media screen and (max-width: 767px) {
          .information-equipment-cont .index-equipment__btn a .label {
            font-size: 15px; } }
      .information-equipment-cont .index-equipment__btn a .arrow img {
        width: 40px; }
        @media screen and (max-width: 767px) {
          .information-equipment-cont .index-equipment__btn a .arrow img {
            width: 15px; } }

/* =========================== */
.information-access {
  padding-top: 60px; }
  @media screen and (max-width: 767px) {
    .information-access {
      padding: 50px 8vw 0; } }
  .information-access .c-title {
    margin-bottom: 30px; }
    @media screen and (max-width: 767px) {
      .information-access .c-title {
        margin-bottom: 15px; } }
  .information-access-cont {
    background: #fff;
    border-radius: 10px;
    padding: 70px; }
    @media screen and (max-width: 767px) {
      .information-access-cont {
        padding: 20px; } }
  .information-access-flex {
    display: flex;
    margin-bottom: 50px; }
    @media screen and (max-width: 767px) {
      .information-access-flex {
        flex-direction: column;
        gap: 30px;
        margin-bottom: 30px; } }
  .information-access__map {
    width: 48%; }
    @media screen and (max-width: 767px) {
      .information-access__map {
        width: 100%; } }
  .information-access__text {
    width: 52%;
    padding-right: 40px; }
    @media screen and (max-width: 767px) {
      .information-access__text {
        width: 100%;
        padding-right: 0; } }
  .information-access__title-2 {
    font-size: 25px; }
    @media screen and (max-width: 767px) {
      .information-access__title-2 {
        font-size: 4.61538vw; } }
  .information-access-unit .title {
    color: #d1111c;
    font-weight: bold;
    border-bottom: 1px solid #000;
    margin: 30px 0 10px;
    padding-bottom: 5px; }
  .information-access__gmap iframe {
    width: 100%;
    height: auto;
    aspect-ratio: 904/337;
    border-radius: 10px; }
    @media screen and (max-width: 767px) {
      .information-access__gmap iframe {
        aspect-ratio: 1/1; } }

/* =========================== */
.information-partner {
  padding-top: 60px;
  padding-bottom: 120px; }
  @media screen and (max-width: 767px) {
    .information-partner {
      padding: 60px 8vw; } }
  .information-partner .c-title {
    margin-bottom: 30px; }
    @media screen and (max-width: 767px) {
      .information-partner .c-title {
        margin-bottom: 15px; } }
  .information-partner-cont {
    background: #fff;
    border-radius: 10px;
    padding: 70px; }
    @media screen and (max-width: 767px) {
      .information-partner-cont {
        padding: 20px; } }
  .information-partner-unit {
    margin-bottom: 50px; }
  .information-partner__title {
    font-size: 25px;
    padding-left: 50px;
    line-height: 1.5;
    position: relative;
    margin-bottom: 20px; }
    @media screen and (max-width: 767px) {
      .information-partner__title {
        font-size: 4.61538vw;
        padding-left: 39px; } }
    .information-partner__title::before {
      content: "";
      display: block;
      width: 50px;
      height: 50px;
      background: url(../images/information/partner-icon-regular.svg) no-repeat left top/contain;
      position: absolute;
      left: -3px;
      top: -4px; }
      @media screen and (max-width: 767px) {
        .information-partner__title::before {
          width: 40px;
          height: 40px;
          left: -2px;
          top: -4px; } }
    .information-partner__title.gold::before {
      background: url(../images/information/partner-icon-gold.svg) no-repeat left top/contain; }
  .information-partner__list {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 30px; }
    @media screen and (max-width: 767px) {
      .information-partner__list {
        gap: 10px; } }
  .information-partner__item {
    width: calc((100% - 90px) / 4); }
    @media screen and (max-width: 767px) {
      .information-partner__item {
        width: calc((100% - 10px) / 2); } }
  .information-partner__empty {
    margin-bottom: 20px; }
  .information-partner__note a {
    color: #d1111c;
    text-decoration: underline; }

/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
.c-contentbox {
  background: #fff;
  border-radius: 10px;
  padding: 85px 95px; }
  @media screen and (max-width: 767px) {
    .c-contentbox {
      padding: 20px; } }

/* =========================== */
.price-anchor .beginner-anchor__list li:first-child {
  width: 100%; }

/* =========================== */
.price-topbnr {
  max-width: 1163px;
  margin: 0 auto;
  padding: 70px 0 90px; }
  @media screen and (max-width: 767px) {
    .price-topbnr {
      padding: 40px 8vw; } }

/* =========================== */
.pricenotemargin {
  position: relative; }
  .pricenotemargin::before {
    content: "※金額は税込です";
    display: block;
    position: absolute;
    right: 0;
    bottom: -35px;
    text-align: right; }
    @media screen and (max-width: 767px) {
      .pricenotemargin::before {
        font-size: 12px;
        bottom: -25px; } }

.pricenotemargin-white {
  position: relative; }
  .pricenotemargin-white::before {
    content: "※金額は税込です";
    display: block;
    position: absolute;
    right: 0;
    bottom: -35px;
    text-align: right;
    color: #fff; }
    @media screen and (max-width: 767px) {
      .pricenotemargin-white::before {
        font-size: 12px;
        bottom: -25px; } }

/* =========================== */
.price-intro {
  padding: 80px 0 0; }
  @media screen and (max-width: 767px) {
    .price-intro {
      padding: 0 8vw;
      scroll-margin-top: 100px !important;
      /* 追従ヘッダー分 */ } }
  .price-intro .c-title {
    margin-bottom: 13px; }
  .price-intro__initialregistration {
    background: #f4f4f4;
    border-radius: 5px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 25px 35px; }
    @media screen and (max-width: 767px) {
      .price-intro__initialregistration {
        flex-direction: column;
        gap: 10px;
        padding: 15px;
        text-align: center; } }
    .price-intro__initialregistration .title {
      font-size: 25px;
      margin: 0; }
      @media screen and (max-width: 767px) {
        .price-intro__initialregistration .title {
          font-size: 4.61538vw; } }
    @media screen and (max-width: 767px) {
      .price-intro__initialregistration .body {
        font-size: 3.84615vw; } }
    .price-intro__initialregistration .price {
      font-size: 30px;
      color: #d1111c;
      font-weight: bold;
      text-align: center;
      line-height: 1.5; }
      @media screen and (max-width: 767px) {
        .price-intro__initialregistration .price {
          font-size: 5.12821vw; } }
      .price-intro__initialregistration .price small {
        display: block;
        font-size: 15px; }
        @media screen and (max-width: 767px) {
          .price-intro__initialregistration .price small {
            font-size: 3.07692vw; } }
    .price-intro__initialregistration .note {
      position: absolute;
      right: 0;
      bottom: -30px;
      text-align: right; }
      @media screen and (max-width: 767px) {
        .price-intro__initialregistration .note {
          font-size: 3.07692vw; } }
  .price-intro__unit {
    margin-top: 50px; }
    .price-intro__unit .title {
      font-size: 25px;
      margin: 0 0 10px;
      padding: 0 0 10px;
      border-bottom: 1px solid #000000; }
      @media screen and (max-width: 767px) {
        .price-intro__unit .title {
          font-size: 4.61538vw; } }
    @media screen and (max-width: 767px) {
      .price-intro__unit .body {
        font-size: 3.84615vw; } }
    .price-intro__unit .body a {
      color: #d1111c;
      text-decoration: underline; }
    .price-intro__unit .step {
      margin-top: 20px; }
      .price-intro__unit .step ul {
        display: flex;
        gap: 64px; }
        @media screen and (max-width: 767px) {
          .price-intro__unit .step ul {
            flex-direction: column;
            gap: 35px; } }
        .price-intro__unit .step ul li {
          background: #d1111c;
          color: #fff;
          border-radius: 5px;
          font-size: 20px;
          font-weight: bold;
          height: 75px;
          display: flex;
          justify-content: center;
          align-items: center;
          flex-grow: 1; }
          @media screen and (max-width: 767px) {
            .price-intro__unit .step ul li {
              font-size: 4.61538vw;
              text-align: center;
              line-height: 1.39;
              height: auto;
              padding: 15px 10px; } }
          .price-intro__unit .step ul li.arrow {
            position: relative; }
            .price-intro__unit .step ul li.arrow::before {
              content: "";
              display: block;
              width: 0;
              height: 0;
              border-style: solid;
              border-top: 27px solid transparent;
              border-bottom: 27px solid transparent;
              border-left: 28px solid #d1111c;
              border-right: 0;
              position: absolute;
              right: -49px;
              top: 50%;
              transform: translate(0, -50%); }
              @media screen and (max-width: 767px) {
                .price-intro__unit .step ul li.arrow::before {
                  border-right: 28px solid transparent;
                  border-left: 28px solid transparent;
                  border-top: 18px solid #d1111c;
                  border-bottom: 0;
                  right: auto;
                  left: 50%;
                  top: auto;
                  bottom: -27px;
                  transform: translate(-50%, 0); } }

/* =========================== */
.price-visitor {
  padding: 80px 0 0; }
  @media screen and (max-width: 767px) {
    .price-visitor {
      padding: 80px 8vw 0; } }
  .price-visitor .c-title {
    margin-bottom: 13px; }
  .price-visitor__head {
    color: #d1111c;
    font-size: 20px;
    margin-bottom: 15px; }
  .price-visitor__row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 28px;
    border-radius: 4px;
    font-weight: 700;
    border-radius: 5px;
    font-size: 22px;
    font-weight: bold;
    line-height: 1.5; }
    @media screen and (max-width: 767px) {
      .price-visitor__row {
        padding: 16px;
        border-radius: 4px;
        padding: 15px 18px;
        gap: 15px; }
        .price-visitor__row + .price__row {
          margin-top: 20px; } }
    .price-visitor__row small {
      display: block;
      font-size: 15px; }
      @media screen and (max-width: 767px) {
        .price-visitor__row small {
          font-size: 3.07692vw; } }
  .price-visitor__row:nth-child(2n - 1) {
    background: #f4f4f4; }
  .price-visitor__title {
    margin: 0; }
    @media screen and (max-width: 767px) {
      .price-visitor__title {
        font-size: 3.84615vw; } }
    .price-visitor__title small {
      font-weight: 500; }
  .price-visitor__item {
    text-align: center;
    color: #d1111c; }
    @media screen and (max-width: 767px) {
      .price-visitor__item {
        font-size: 4.61538vw;
        flex-shrink: 0; } }
  .price-visitor__note {
    margin-top: 28px;
    padding: 24px 28px;
    border: 1px solid #777;
    border-radius: 4px;
    line-height: 1.8; }
    @media screen and (max-width: 767px) {
      .price-visitor__note {
        margin-top: 8px;
        font-size: 3.84615vw;
        padding: 15px; } }
    .price-visitor__note a {
      color: #d1111c;
      text-decoration: underline; }

/* =========================== */
.price-member {
  padding: 80px 0 0; }
  @media screen and (max-width: 767px) {
    .price-member {
      padding: 80px 8vw 0; } }
  .price-member .c-title {
    margin-bottom: 13px; }
  @media screen and (max-width: 767px) {
    .price-member .c-contentbox {
      padding-top: 30px; } }
  .price-member__point {
    margin-bottom: 70px; }
    @media screen and (max-width: 767px) {
      .price-member__point {
        margin-bottom: 35px; } }
    .price-member__point ul {
      display: flex;
      gap: 15px; }
      @media screen and (max-width: 767px) {
        .price-member__point ul {
          flex-direction: column;
          gap: 40px; } }
      .price-member__point ul li {
        border: 4px solid #d1111c;
        border-radius: 10px;
        text-align: center;
        position: relative;
        padding: 18px;
        flex-grow: 1; }
        @media screen and (max-width: 767px) {
          .price-member__point ul li.has-note {
            margin-bottom: 20px; } }
        .price-member__point ul li .label {
          color: #a9e654;
          background: #fff;
          font-family: "Dela Gothic One", sans-serif;
          font-weight: 400;
          font-size: 20px;
          position: absolute;
          left: 50%;
          top: -20px;
          transform: translate(-50%, 0);
          padding: 0 20px; }
        .price-member__point ul li .title {
          font-size: 20px;
          color: #d1111c;
          margin: 0; }
        .price-member__point ul li .body {
          margin: 0; }
        .price-member__point ul li .note {
          position: absolute;
          left: 50%;
          bottom: -35px;
          margin: 0;
          width: 100%;
          transform: translate(-50%, 0); }
  .price-member .monthly {
    max-width: 904px; }
    .price-member .monthly__summary {
      display: grid;
      grid-template-columns: 1fr 36px 1fr;
      align-items: center;
      gap: 18px;
      font-weight: 700; }
      @media screen and (max-width: 767px) {
        .price-member .monthly__summary {
          display: block; } }
    .price-member .monthly__box {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 70px;
      min-height: 82px;
      padding: 0 32px;
      background: #f4f4f4;
      border-radius: 4px;
      font-size: 22px; }
      @media screen and (max-width: 767px) {
        .price-member .monthly__box {
          justify-content: space-between;
          min-height: 62px;
          padding: 0 18px;
          gap: 16px;
          font-size: 20px; } }
  @media screen and (max-width: 767px) and (max-width: 767px) {
    .price-member .monthly__box {
      font-size: 4.61538vw; } }
      .price-member .monthly__box.monthly__box--center {
        justify-content: center; }
    .price-member .monthly__box strong,
    .price-member .monthly__plan strong {
      color: #d1111c;
      white-space: nowrap; }
    .price-member .monthly__plus {
      display: grid;
      place-items: center;
      width: 33px;
      height: 33px;
      background: #d1111c;
      color: #fff;
      border-radius: 50%;
      font-size: 20px;
      font-weight: bold;
      padding-bottom: 2px;
      line-height: 1; }
      @media screen and (max-width: 767px) {
        .price-member .monthly__plus {
          margin: 12px auto; } }
    .price-member .monthly__heading {
      margin: 40px 0 16px;
      font-size: 20px; }
      @media screen and (max-width: 767px) {
        .price-member .monthly__heading {
          display: none; } }
    .price-member .monthly__plans {
      display: grid;
      gap: 14px; }
      @media screen and (max-width: 767px) {
        .price-member .monthly__plans {
          padding: 0 16px;
          background: #f4f4f4;
          border-radius: 4px;
          gap: 0; } }
    .price-member .monthly__plan {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 32px;
      min-height: 88px;
      padding: 22px 44px;
      border-radius: 4px;
      font-size: 22px; }
      @media screen and (max-width: 767px) {
        .price-member .monthly__plan {
          display: flex;
          min-height: auto;
          padding: 16px 0;
          background: transparent;
          border-radius: 0;
          border-top: 1px solid #999;
          gap: 12px;
          font-size: 4.61538vw; } }
      .price-member .monthly__plan.bg {
        background: #f4f4f4; }
    .price-member .monthly__plan h5 {
      margin: 0;
      font-size: 24px; }
      @media screen and (max-width: 767px) {
        .price-member .monthly__plan h5 {
          font-size: 3.84615vw;
          line-height: 1.5; } }
    .price-member .monthly__plan p {
      margin: 12px 0 0;
      font-size: 16px; }
      @media screen and (max-width: 767px) {
        .price-member .monthly__plan p {
          display: none; } }
    .price-member .monthly__note {
      margin-top: 38px;
      padding: 24px 28px;
      border: 1px solid #777;
      border-radius: 4px;
      line-height: 1.6; }
    @media screen and (max-width: 767px) {
      .price-member .monthly__note {
        margin-top: 26px;
        padding: 14px 16px;
        font-size: 3.84615vw;
        line-height: 1.7; } }
    .price-member .monthly__note a {
      color: #d1111c;
      text-decoration: underline; }

/* =========================== */
.price-lesson {
  padding: 80px 0 0; }
  @media screen and (max-width: 767px) {
    .price-lesson {
      padding: 80px 8vw 0; } }
  .price-lesson .c-title {
    margin-bottom: 13px; }
  .price-lesson .lesson-price-cont {
    padding: 66px 92px; }
    @media screen and (max-width: 767px) {
      .price-lesson .lesson-price-cont {
        padding: 20px; } }
  @media screen and (max-width: 767px) {
    .price-lesson .c-btn {
      margin-top: 20px; } }

/* =========================== */
.price-ticket {
  padding: 80px 0 180px; }
  @media screen and (max-width: 767px) {
    .price-ticket {
      padding: 80px 8vw 60px; } }
  .price-ticket .c-title {
    margin-bottom: 13px; }
  .price-ticket__list {
    display: flex;
    gap: 66px; }
    @media screen and (max-width: 767px) {
      .price-ticket__list {
        flex-direction: column;
        gap: 100px; } }
  .price-ticket__item {
    width: calc((100% - 66px) / 2);
    background: #fff;
    border-radius: 10px;
    text-align: center;
    position: relative;
    padding: 40px 30px 100px; }
    @media screen and (max-width: 767px) {
      .price-ticket__item {
        width: 100%;
        padding: 17px 20px 60px; } }
    .price-ticket__item.item-1::before {
      content: "";
      display: block;
      width: 0;
      height: 0;
      border-style: solid;
      border-top: 42px solid transparent;
      border-bottom: 42px solid transparent;
      border-left: 27px solid #fff;
      border-right: 0;
      position: absolute;
      right: -45px;
      top: 50%;
      transform: translate(0, -50%); }
      @media screen and (max-width: 767px) {
        .price-ticket__item.item-1::before {
          border-right: 42px solid transparent;
          border-left: 42px solid transparent;
          border-top: 27px solid #fff;
          border-bottom: 0;
          right: auto;
          left: 50%;
          top: auto;
          bottom: -78px;
          transform: translate(-50%, 0); } }
    .price-ticket__item.item-2 {
      padding-top: 60px; }
      @media screen and (max-width: 767px) {
        .price-ticket__item.item-2 {
          padding-top: 17px;
          padding-bottom: 30px; } }
      .price-ticket__item.item-2 > .icon {
        margin-bottom: 30px; }
        @media screen and (max-width: 767px) {
          .price-ticket__item.item-2 > .icon {
            margin-bottom: 10px; } }
    .price-ticket__item .num {
      background: #d1111c;
      color: #fff;
      width: 45px;
      height: 45px;
      border-radius: 50%;
      font-size: 30px;
      font-family: "Dela Gothic One", sans-serif;
      font-weight: 400;
      position: absolute;
      left: 10px;
      top: 10px;
      display: flex;
      justify-content: center;
      align-items: center;
      padding-bottom: 3px; }
      @media screen and (max-width: 767px) {
        .price-ticket__item .num {
          position: static;
          margin: 0 auto; } }
    .price-ticket__item .title {
      font-size: 25px; }
      @media screen and (max-width: 767px) {
        .price-ticket__item .title {
          font-size: 5.12821vw; } }
      .price-ticket__item .title small {
        display: block;
        font-size: 12px; }
        @media screen and (max-width: 767px) {
          .price-ticket__item .title small {
            font-size: 3.07692vw; } }
    .price-ticket__item > .icon {
      margin-bottom: 10px;
      min-height: 115px;
      display: flex;
      justify-content: center;
      align-items: center; }
      @media screen and (max-width: 767px) {
        .price-ticket__item > .icon {
          min-height: auto;
          margin-bottom: 10px; } }
    .price-ticket__item .body {
      font-weight: bold; }
    .price-ticket__item .line {
      position: absolute;
      left: 50%;
      bottom: -40px;
      transform: translate(-50%, 0); }
      @media screen and (max-width: 767px) {
        .price-ticket__item .line {
          bottom: -30px; } }
      .price-ticket__item .line a {
        width: 415px;
        height: 108px;
        margin: 0 auto;
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 10px 22px;
        border: 6px solid #3cc754;
        border-radius: 10px;
        background: #fff;
        color: #000000;
        line-height: 1.2;
        font-weight: bold;
        font-size: 23px;
        text-align: left;
        position: relative; }
        @media screen and (max-width: 767px) {
          .price-ticket__item .line a {
            font-size: 3.84615vw;
            width: 71.02564vw;
            height: 72px;
            padding: 10px 14px; } }
        .price-ticket__item .line a .icon {
          flex: 0 0 48px; }
          @media screen and (max-width: 767px) {
            .price-ticket__item .line a .icon {
              flex: 0 0 32px; } }
        .price-ticket__item .line a .arrow {
          position: absolute;
          right: 20px;
          top: 50%;
          transform: translate(0, -50%); }
          @media screen and (max-width: 767px) {
            .price-ticket__item .line a .arrow {
              right: 10px; } }
          .price-ticket__item .line a .arrow img {
            width: 36px; }
            @media screen and (max-width: 767px) {
              .price-ticket__item .line a .arrow img {
                width: 24px; } }

/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
@media screen and (max-width: 767px) {
  .lesson-intro {
    padding: 0 8vw; } }

.lesson-intro__header {
  text-align: center;
  margin-bottom: 40px; }

.lesson-intro__title {
  color: #fff;
  font-family: "Dela Gothic One", sans-serif;
  font-weight: 400;
  font-size: 49px;
  margin: 0; }
  @media screen and (max-width: 767px) {
    .lesson-intro__title {
      font-size: 7.69231vw;
      text-align: left; } }

.lesson-intro__lead {
  color: #fff;
  font-weight: 700;
  font-size: 30px; }
  @media screen and (max-width: 767px) {
    .lesson-intro__lead {
      font-size: 3.84615vw;
      text-align: left; } }

.lesson-intro__cont {
  background: #fff;
  border-radius: 10px;
  display: flex;
  align-items: center;
  position: relative;
  padding: 40px;
  gap: 20px; }
  @media screen and (max-width: 767px) {
    .lesson-intro__cont {
      display: block;
      padding: 20px;
      padding-top: 170px;
      margin-top: 50px; } }

.lesson-intro__title-2 {
  color: #d1111c;
  font-size: 30px;
  margin: 0; }
  @media screen and (max-width: 767px) {
    .lesson-intro__title-2 {
      text-align: center;
      font-size: 5.12821vw;
      margin: 0 0 5px; } }

.lesson-intro__illust {
  position: absolute;
  right: 40px;
  bottom: 0;
  width: 144px; }
  @media screen and (max-width: 767px) {
    .lesson-intro__illust {
      right: auto;
      left: 50%;
      bottom: auto;
      top: -20px;
      transform: translate(-50%, 0); } }

/* =========================== */
.lesson-about {
  padding-top: 90px; }
  @media screen and (max-width: 767px) {
    .lesson-about {
      padding: 70px 8vw 0; } }
  .lesson-about .c-title {
    margin-bottom: 20px; }
  .lesson-about__list {
    margin: 0 -30px;
    margin-bottom: 70px !important;
    padding-bottom: 30px; }
    @media screen and (max-width: 767px) {
      .lesson-about__list {
        margin-bottom: 50px !important;
        padding-bottom: 0px; } }
    .lesson-about__list .slick-prev,
    .lesson-about__list .slick-next {
      width: 55px;
      height: 55px; }
      @media screen and (max-width: 767px) {
        .lesson-about__list .slick-prev,
        .lesson-about__list .slick-next {
          width: 36px;
          height: 36px; } }
    .lesson-about__list .slick-prev {
      left: 0px; }
      @media screen and (max-width: 767px) {
        .lesson-about__list .slick-prev {
          left: 10px; } }
      .lesson-about__list .slick-prev:before {
        background-image: url(../images/slick/left-black.svg); }
    .lesson-about__list .slick-next {
      right: 0px; }
      @media screen and (max-width: 767px) {
        .lesson-about__list .slick-next {
          right: 10px; } }
      .lesson-about__list .slick-next:before {
        background-image: url(../images/slick/right-black.svg); }
    .lesson-about__list .slick-dots li {
      width: 16px;
      height: 16px;
      margin: 0 8px; }
      @media screen and (max-width: 767px) {
        .lesson-about__list .slick-dots li {
          width: 10px;
          height: 10px;
          margin: 0 3px; } }
  .lesson-about__item {
    background: #fff;
    border-radius: 10px;
    padding: 33px;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
    margin: 0 30px; }
    @media screen and (max-width: 767px) {
      .lesson-about__item {
        padding: 18px; } }
    .lesson-about__item__title {
      font-size: 25px;
      color: #d1111c;
      margin-bottom: 15px; }
      @media screen and (max-width: 767px) {
        .lesson-about__item__title {
          font-size: 5.12821vw; } }
    .lesson-about__item__img {
      position: relative;
      margin-bottom: 15px; }
      .lesson-about__item__img::before {
        content: "";
        display: block;
        width: 51px;
        height: 89px;
        background: url(../images/lesson/about-shuriken.svg) no-repeat center/contain;
        position: absolute;
        right: -10px;
        top: -55px; }
        @media screen and (max-width: 767px) {
          .lesson-about__item__img::before {
            width: 26px;
            height: 45px;
            right: -5px;
            top: -27px; } }
      .lesson-about__item__img img {
        border-radius: 5px; }
    .lesson-about__item__tag {
      border-bottom: 1px solid #c7c7c7;
      padding-bottom: 12px;
      margin-bottom: 12px; }
      .lesson-about__item__tag ul {
        display: flex;
        flex-wrap: wrap;
        gap: 10px; }
        .lesson-about__item__tag ul li {
          font-size: 14px;
          color: #5c5c5c;
          font-weight: bold; }
          @media screen and (max-width: 767px) {
            .lesson-about__item__tag ul li {
              font-size: 3.07692vw; } }
    .lesson-about__item__title-2 {
      font-size: 20px;
      margin-bottom: 10px; }
      @media screen and (max-width: 767px) {
        .lesson-about__item__title-2 {
          font-size: 4.61538vw; } }
    @media screen and (max-width: 767px) {
      .lesson-about__item__body {
        font-size: 3.84615vw; } }
    .lesson-about__item__profile {
      display: flex;
      align-items: center;
      gap: 20px;
      margin-top: 30px; }
      @media screen and (max-width: 767px) {
        .lesson-about__item__profile {
          gap: 10px; } }
      .lesson-about__item__profile .img {
        flex: 0 0 95px; }
      .lesson-about__item__profile .text .name {
        font-size: 20px;
        font-weight: bold; }
        @media screen and (max-width: 767px) {
          .lesson-about__item__profile .text .name {
            font-size: 4.61538vw; } }
      .lesson-about__item__profile .text .job {
        color: #d1111c; }
        @media screen and (max-width: 767px) {
          .lesson-about__item__profile .text .job {
            font-size: 3.07692vw; } }
  .lesson-about .cs {
    font-family: "Dela Gothic One", sans-serif;
    font-size: 30px;
    font-weight: 100;
    text-align: center;
    color: #fff; }
    @media screen and (max-width: 767px) {
      .lesson-about .cs {
        font-size: 6.15385vw; } }

/* =========================== */
.lesson-price {
  padding-top: 90px; }
  @media screen and (max-width: 767px) {
    .lesson-price {
      padding: 70px 8vw 0; } }
  .lesson-price .c-title {
    margin-bottom: 20px; }
  .lesson-price-cont {
    background: #fff;
    border-radius: 10px;
    padding: 66px 92px;
    position: relative; }
    @media screen and (max-width: 767px) {
      .lesson-price-cont {
        padding: 20px; } }
  .lesson-price__list {
    display: flex;
    gap: 54px; }
    @media screen and (max-width: 767px) {
      .lesson-price__list {
        flex-direction: column;
        gap: 20px; } }
  .lesson-price__item {
    width: calc((100% - 54px) / 2);
    background: #f4f4f4;
    border-radius: 5px;
    text-align: center;
    padding: 30px 20px; }
    @media screen and (max-width: 767px) {
      .lesson-price__item {
        width: 100%; } }
    .lesson-price__item .label {
      font-size: 22px;
      font-weight: bold;
      margin-bottom: 10px; }
      @media screen and (max-width: 767px) {
        .lesson-price__item .label {
          font-size: 5.12821vw; } }
    .lesson-price__item .illust {
      height: 150px;
      width: 150px;
      margin: 0 auto;
      margin-bottom: 10px;
      display: flex;
      justify-content: center;
      align-items: center; }
      .lesson-price__item .illust img {
        width: 100%;
        height: 100%;
        object-fit: contain; }
    .lesson-price__item .price {
      font-size: 22px;
      font-weight: bold;
      color: #d1111c; }
      @media screen and (max-width: 767px) {
        .lesson-price__item .price {
          font-size: 5.12821vw; } }
  .lesson-price__note {
    margin-top: 28px;
    padding: 24px 28px;
    border: 1px solid #777;
    border-radius: 4px;
    line-height: 1.8; }
    @media screen and (max-width: 767px) {
      .lesson-price__note {
        margin-top: 8px;
        font-size: 3.84615vw;
        padding: 15px; } }
    .lesson-price__note a {
      color: #d1111c;
      text-decoration: underline; }

/* =========================== */
.lesson-schedule {
  padding-top: 120px;
  /* PCでは時間・対象を2カラム分として見せる */ }
  @media screen and (max-width: 767px) {
    .lesson-schedule {
      padding: 70px 8vw 0; } }
  .lesson-schedule .c-title {
    margin-bottom: 20px; }
  .lesson-schedule .lesson {
    font-weight: 700; }
  .lesson-schedule .lesson__head,
  .lesson-schedule .lesson__card {
    display: grid;
    grid-template-columns: 1.1fr 1.1fr 1.1fr 1.1fr 1.1fr; }
  @media screen and (max-width: 767px) {
    .lesson-schedule .lesson__head {
      display: none; } }
  .lesson-schedule .lesson__head > div {
    padding: 14px;
    background: #292929;
    color: #fff;
    text-align: center;
    border-right: 2px solid #d1111c; }
  .lesson-schedule .lesson__head > div:last-child {
    border-right: 0; }
  .lesson-schedule .lesson__card {
    margin-top: 10px;
    background: #fff; }
    @media screen and (max-width: 767px) {
      .lesson-schedule .lesson__card {
        display: block;
        margin-top: 28px;
        background: #fff; } }
    @media screen and (max-width: 767px) {
      .lesson-schedule .lesson__card:first-of-type {
        margin-top: 0; } }
    @media screen and (max-width: 767px) {
      .lesson-schedule .lesson__card::before {
        content: "レッスン";
        display: block;
        padding: 14px;
        background: #292929;
        color: #fff;
        text-align: center; } }
  .lesson-schedule .lesson__card--pink {
    background: #fde1e1; }
  .lesson-schedule .lesson__card > h4,
  .lesson-schedule .lesson__day,
  .lesson-schedule .lesson__teacher {
    display: grid;
    place-items: center;
    margin: 0;
    padding: 18px 12px;
    border-right: 2px solid #d1111c;
    color: #000;
    text-align: center; }
    @media screen and (max-width: 767px) {
      .lesson-schedule .lesson__card > h4,
      .lesson-schedule .lesson__day,
      .lesson-schedule .lesson__teacher {
        display: block;
        padding: 12px 12px;
        border-right: 0;
        border-bottom: 2px solid #e60012; } }
  .lesson-schedule .lesson__card > h4 {
    color: #d1111c;
    font-size: 16px;
    line-height: 1.6; }
    @media screen and (max-width: 767px) {
      .lesson-schedule .lesson__card > h4 {
        font-size: 16px; } }
  .lesson-schedule .lesson__rows {
    display: grid;
    border-right: 2px solid #d1111c; }
    @media screen and (max-width: 767px) {
      .lesson-schedule .lesson__rows {
        display: block;
        border-right: 0;
        grid-column: auto; } }
  .lesson-schedule .lesson__rows p {
    display: grid;
    grid-template-columns: 1fr 1fr;
    margin: 0;
    border-bottom: 2px solid #d1111c; }
    @media screen and (max-width: 767px) {
      .lesson-schedule .lesson__rows p {
        grid-template-columns: 1fr 1fr; } }
  .lesson-schedule .lesson__rows p:last-child {
    border-bottom: 0; }
    @media screen and (max-width: 767px) {
      .lesson-schedule .lesson__rows p:last-child {
        border-bottom: 2px solid #d1111c; } }
  .lesson-schedule .lesson__rows span {
    display: grid;
    place-items: center;
    min-height: 32px;
    padding: 6px 10px; }
    @media screen and (max-width: 767px) {
      .lesson-schedule .lesson__rows span {
        min-height: auto;
        padding: 6px 8px; } }
  .lesson-schedule .lesson__rows span:first-child {
    border-right: 2px solid #d1111c; }
  .lesson-schedule .lesson__rows {
    grid-column: span 2; }
  .lesson-schedule .lesson__teacher {
    border-right: 0; }
    @media screen and (max-width: 767px) {
      .lesson-schedule .lesson__teacher {
        border-bottom: 0; } }
  .lesson-schedule .cs {
    font-family: "Dela Gothic One", sans-serif;
    font-size: 30px;
    font-weight: 100;
    text-align: center;
    color: #fff;
    margin-top: 30px; }
    @media screen and (max-width: 767px) {
      .lesson-schedule .cs {
        font-size: 6.15385vw; } }
  .lesson-schedule__note {
    color: #fff;
    margin-top: 20px; }

/* =========================== */
.lesson-contact {
  padding: 90px 0 120px; }
  @media screen and (max-width: 767px) {
    .lesson-contact {
      padding: 70px 8vw 70px; } }
  .lesson-contact .c-title {
    margin-bottom: 20px; }
  .lesson-contact-cont {
    background: #fff;
    border-radius: 10px;
    padding: 40px 60px;
    display: flex;
    align-items: center;
    justify-content: space-between; }
    @media screen and (max-width: 767px) {
      .lesson-contact-cont {
        padding: 20px;
        display: block; } }
  .lesson-contact__text {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.25;
    width: 52%;
    padding-right: 60px; }
    @media screen and (max-width: 767px) {
      .lesson-contact__text {
        width: 100%;
        padding-right: 0;
        margin-bottom: 15px;
        font-size: 3.84615vw;
        line-height: 1.67; } }
  .lesson-contact .c-btn {
    width: 48%;
    margin: 0; }
    @media screen and (max-width: 767px) {
      .lesson-contact .c-btn {
        width: 100%; } }
    .lesson-contact .c-btn a {
      width: 100%;
      min-width: auto; }

/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* ===========================
	アーカイブページ
=========================== */
.a_news-header {
  background: #d1111c;
  color: #fff;
  text-align: center;
  font-family: "Dela Gothic One", sans-serif;
  font-size: 50px;
  font-weight: 400;
  padding: 22px; }
  @media screen and (max-width: 767px) {
    .a_news-header {
      font-size: 7.69231vw;
      line-height: 1.34; } }

/* =========================== */
.a_news-nav {
  margin: 85px 0 60px; }
  @media screen and (max-width: 767px) {
    .a_news-nav {
      margin: 70px 8vw 40px; } }
  .a_news-nav__list {
    display: flex;
    gap: 42px; }
    @media screen and (max-width: 767px) {
      .a_news-nav__list {
        gap: 10px; } }
  .a_news-nav__item {
    flex: 1;
    position: relative;
    text-align: center;
    font-size: 20px;
    font-weight: bold; }
    @media screen and (max-width: 767px) {
      .a_news-nav__item {
        font-size: 3.84615vw; } }
    .a_news-nav__item .fukidashi {
      position: absolute;
      left: 50%;
      top: -43px;
      transform: translate(-50%, 0);
      color: #d1111c;
      width: 100%; }
      @media screen and (max-width: 767px) {
        .a_news-nav__item .fukidashi {
          font-size: 3.07692vw; } }
      .a_news-nav__item .fukidashi span {
        position: relative;
        display: inline-block; }
        .a_news-nav__item .fukidashi span::before, .a_news-nav__item .fukidashi span::after {
          content: "";
          display: block;
          width: 18px;
          height: 26px;
          position: absolute;
          top: 4px; }
          @media screen and (max-width: 767px) {
            .a_news-nav__item .fukidashi span::before, .a_news-nav__item .fukidashi span::after {
              top: auto;
              bottom: 0; } }
        .a_news-nav__item .fukidashi span::before {
          background: url(../images/news/fukidashi-orn-left.svg) no-repeat center/contain;
          left: -23px; }
          @media screen and (max-width: 767px) {
            .a_news-nav__item .fukidashi span::before {
              left: -21px; } }
        .a_news-nav__item .fukidashi span::after {
          background: url(../images/news/fukidashi-orn-right.svg) no-repeat center/contain;
          right: -23px; }
          @media screen and (max-width: 767px) {
            .a_news-nav__item .fukidashi span::after {
              right: -21px; } }
    .a_news-nav__item a {
      display: flex;
      justify-content: center;
      align-items: center;
      background: #a3a3a3;
      color: #fff;
      border-radius: 100vh;
      height: 50px; }
      @media screen and (max-width: 767px) {
        .a_news-nav__item a {
          height: 44px; } }
      .a_news-nav__item a.active {
        background: #d1111c;
        color: #fff; }
        .a_news-nav__item a.active::before {
          content: "";
          display: block;
          width: 0;
          height: 0;
          border-style: solid;
          border-right: 15px solid transparent;
          border-left: 15px solid transparent;
          border-top: 13px solid #d1111c;
          border-bottom: 0;
          position: absolute;
          left: 50%;
          bottom: -22px;
          transform: translate(-50%, 0); }
          @media screen and (max-width: 767px) {
            .a_news-nav__item a.active::before {
              bottom: -19px; } }
        .a_news-nav__item a.active > span {
          position: relative; }
          .a_news-nav__item a.active > span::before {
            content: "";
            display: block;
            width: 40px;
            height: 40px;
            background: url(../images/common/shuriken-1-white.svg) no-repeat center/contain;
            position: absolute;
            left: -40px;
            top: -5px;
            transform: rotate(80deg); }
            @media screen and (max-width: 767px) {
              .a_news-nav__item a.active > span::before {
                width: 26px;
                height: 26px;
                left: -29px;
                top: -2px; } }

/* =========================== */
.archive-news {
  padding: 0 0 90px; }
  @media screen and (max-width: 767px) {
    .archive-news {
      padding: 0 8vw 50px; } }
  .archive-news__title {
    font-size: 25px;
    color: #d1111c;
    font-weight: bold;
    margin-bottom: 20px; }
    @media screen and (max-width: 767px) {
      .archive-news__title {
        font-size: 5.12821vw; } }
  @media screen and (max-width: 767px) {
    .archive-news .index-news__list {
      flex-direction: column;
      gap: 35px; } }
  @media screen and (max-width: 767px) {
    .archive-news .index-news__item {
      width: 100%; } }

/* ===========================
	シングルページ
=========================== */
.single-news {
  background: #d1111c;
  padding: 110px 20px; }
  @media screen and (max-width: 767px) {
    .single-news {
      padding: 50px 15px; } }
  .single-news .sect-inner {
    background: #fff;
    border-radius: 10px;
    padding: 90px;
    position: relative;
    overflow: hidden; }
    @media screen and (max-width: 767px) {
      .single-news .sect-inner {
        padding: 50px 20px 40px; } }
  .single-news__store {
    position: absolute;
    left: 0;
    top: 0;
    background: #000;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    padding: 5px 21px 8px;
    border-radius: 0px 0 10px 0; }
    @media screen and (max-width: 767px) {
      .single-news__store {
        padding: 5px 21px;
        font-size: 4.61538vw; } }
  .single-news__update {
    position: absolute;
    right: 0;
    top: 0;
    padding: 21px;
    text-align: right; }
    @media screen and (max-width: 767px) {
      .single-news__update {
        font-size: 3.84615vw;
        padding: 10px 18px; } }
  .single-news__header {
    margin-bottom: 20px; }
    .single-news__header .category {
      font-size: 12px;
      padding-top: 20px;
      margin-bottom: 10px; }
      .single-news__header .category ul {
        display: flex;
        flex-wrap: wrap; }
        .single-news__header .category ul li {
          border: 1px solid #d1111c;
          color: #d1111c;
          border-radius: 100vh;
          padding: 0 10px; }
    .single-news__header .title {
      font-size: 25px;
      color: #d1111c;
      margin-bottom: 7px;
      border-bottom: 1px solid #000000;
      padding-bottom: 12px;
      margin-bottom: 20px; }
      @media screen and (max-width: 767px) {
        .single-news__header .title {
          font-size: 5.12821vw;
          padding-bottom: 8px;
          margin-bottom: 15px; } }
  .single-news__eyecatch {
    margin-bottom: 20px; }
  .single-news__cont {
    margin-bottom: 60px; }
    @media screen and (max-width: 767px) {
      .single-news__cont {
        margin-bottom: 40px; } }
    .single-news__cont h1,
    .single-news__cont h2,
    .single-news__cont h3,
    .single-news__cont h4 {
      font-size: 20px;
      border-top: 2px solid #d1111c;
      border-bottom: 2px solid #d1111c;
      padding: 20px 0;
      margin-top: 2em; }
      @media screen and (max-width: 767px) {
        .single-news__cont h1,
        .single-news__cont h2,
        .single-news__cont h3,
        .single-news__cont h4 {
          font-size: 5.12821vw; } }
    .single-news__cont figure {
      margin-bottom: 1.5em; }
    .single-news__cont ul li {
      position: relative;
      font-size: 18px;
      font-weight: bold;
      padding-left: 28px;
      margin-bottom: 10px; }
      @media screen and (max-width: 767px) {
        .single-news__cont ul li {
          font-size: 4.61538vw; } }
      .single-news__cont ul li::before {
        content: "●";
        display: block;
        width: 100%;
        height: 100%;
        position: absolute;
        left: 0;
        top: 0;
        color: #d1111c; }

/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
@-moz-document url-prefix() {}/* -------------------
  OBJECT FIT FOR IE
--------------------*/
.cover {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;'; }

/*# sourceMappingURL=../maps/index.css.map */
