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


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

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

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



--------------------*/
/* -------------------
  VARIABLES
--------------------*/
.font-a {
  font-family: "Noto Sans JP", sans-serif;
}

.font-b {
  font-family: "Noto Sans JP", sans-serif;
  font-style: normal;
}

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

/* 
.example {
  @include mq() {
    width: 100%;
  }
}
*/
/* -------------------
  COMMON
--------------------*/
html,
body {
  overflow-x: clip;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  color: #000000;
  font-size: 15px;
  line-height: 2;
  font-weight: 500;
  position: relative;
}
@media screen and (max-width: 767px) {
  body {
    font-size: 3.8461538462vw;
  }
}

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: 12px;
  position: absolute;
  z-index: 3;
  padding: 0px 3.6603221083vw;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .breadcrumbs {
    font-size: 3.0769230769vw;
    right: auto;
    bottom: auto;
    padding: 0 3.8461538462vw;
  }
}
.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;
}
.breadcrumbs--white ul li {
  color: #fff;
}
.breadcrumbs--white ul li a {
  color: #fff;
}

.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 {
  margin-top: 45px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
}
.c-btn__note {
  text-align: center;
  font-weight: bold;
}
.c-btn a {
  background: #d94473;
  color: #fff;
  min-width: 375px;
  height: 65px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-size: 17px;
  font-weight: bold;
  border-radius: 100vh;
  position: relative;
  letter-spacing: 0.05em;
  padding-right: 40px;
  padding-left: 20px;
}
@media screen and (max-width: 767px) {
  .c-btn a {
    min-width: 100%;
    height: 55px;
    font-size: 4.1025641026vw;
  }
}
.c-btn a .arrow {
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translate(0, -50%);
  display: flex;
  justify-content: center;
  align-items: center;
}
.c-btn.blue a {
  background: linear-gradient(0deg, #cfeef7 0%, #ffffff 50%);
  border: 2px solid #3399ff;
  color: #3399ff;
}
.c-btn.blue a .arrow path {
  stroke: #3399ff;
}

.c-header {
  margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .c-header {
    margin-bottom: 20px;
  }
}
.c-header__title .en {
  font-size: 20px;
  display: block;
  color: #3399ff;
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .c-header__title .en {
    font-size: 4.6153846154vw;
  }
}
.c-header__title .jp {
  font-size: 35px;
  display: block;
  color: #d94473;
}
@media screen and (max-width: 767px) {
  .c-header__title .jp {
    font-size: 7.6923076923vw;
  }
}
.c-header__title.center {
  text-align: 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;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide {
  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 0.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 */
  }
  .slick-next span:before {
    left: 15px;
  }
  .slick-next *::-ms-backdrop:before,
  .slick-next span:before {
    left: 15px;
  }
  .slick-next {
    /* IE11 */
  }
}

.ui-datepicker {
  background-color: #fff;
  padding: 0.8em 0.5em 0.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: 0.7em 0.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 1s ease 0s, transform 1s 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: "Noto Sans JP", 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 0.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: 0.1s;
}

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

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

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

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

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

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

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

.delay-9 {
  transition-delay: 0.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: 2s;
}

.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: 0.1s;
}

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

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

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

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

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

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

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

.ani-delay-9 {
  animation-delay: 0.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: 2s;
}

.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: #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 #3399ff;
  padding: 11px 16px;
  padding-right: 35px;
  width: 340px;
}
@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: 60px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .pagination {
    margin-top: 40px;
    font-size: 20px;
  }
}
.pagination .wp-pagenavi {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
@media screen and (max-width: 767px) {
  .pagination .wp-pagenavi {
    padding-top: 40px;
  }
}
.pagination .wp-pagenavi .page,
.pagination .wp-pagenavi .current {
  font-weight: 700;
  width: 39px;
  height: 39px;
  line-height: 1;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 3px;
}
@media screen and (max-width: 767px) {
  .pagination .wp-pagenavi .page,
  .pagination .wp-pagenavi .current {
    width: 24px;
    height: 24px;
  }
}
.pagination .wp-pagenavi .current {
  background: #000;
}
.pagination .wp-pagenavi .extend {
  position: relative;
  color: #8e8e8e;
}
.pagination .wp-pagenavi .extend::before {
  content: "…";
  display: block;
  width: 100%;
  height: 100%;
}
.pagination .wp-pagenavi .nextpostslink,
.pagination .wp-pagenavi .last,
.pagination .wp-pagenavi .previouspostslink,
.pagination .wp-pagenavi .first {
  width: 21px;
  height: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  display: block;
}
@media screen and (max-width: 767px) {
  .pagination .wp-pagenavi .nextpostslink,
  .pagination .wp-pagenavi .last,
  .pagination .wp-pagenavi .previouspostslink,
  .pagination .wp-pagenavi .first {
    width: 24px;
    height: 24px;
  }
}
.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 {
  margin-left: 0.5em;
}
.pagination .wp-pagenavi .nextpostslink:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url(../images/pagination/right.svg) no-repeat center/contain;
}
.pagination .wp-pagenavi .last {
  margin-left: 10px;
}
.pagination .wp-pagenavi .last:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url(../images/pagination/right.svg) no-repeat center/contain;
}
.pagination .wp-pagenavi .previouspostslink {
  margin-right: 0.5em;
}
.pagination .wp-pagenavi .previouspostslink:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url(../images/pagination/left.svg) no-repeat center/contain;
}
.pagination .wp-pagenavi .first {
  margin-right: 10px;
}
.pagination .wp-pagenavi .first:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url(../images/pagination/left.svg) no-repeat center/contain;
}
.pagination .wp-pagenavi .disabled {
  opacity: 0.4 !important;
  pointer-events: none;
  cursor: default;
}

/* -------------------
	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 0.3s;
}
.breadcrumb ul li a:hover {
  opacity: 0.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 0.3s;
}
.breadcrumb ul li a:hover {
  opacity: 0.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 0.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 0.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 0.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 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: "Noto Sans JP", 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: 66px;
  height: 66px;
  top: 50%;
  bottom: auto;
  border-radius: 0;
  transform: translate(0, -50%);
}
@media screen and (max-width: 767px) {
  body .slick-prev,
  body .slick-next {
    width: 36px;
    height: 36px;
  }
}
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: -33px;
}
@media screen and (max-width: 767px) {
  body .slick-prev {
    left: 0px;
  }
}
body .slick-prev:before {
  background-image: url(../images/slick/left.svg);
}
body .slick-next {
  right: -33px;
}
@media screen and (max-width: 767px) {
  body .slick-next {
    right: 0px;
  }
}
body .slick-next:before {
  background-image: url(../images/slick/right.svg);
}
body .slick-dots {
  bottom: -40px;
  left: 50%;
  transform: translate(-50%, 0);
  display: flex;
}
body .slick-dots li {
  bottom: 0 !important;
  width: 13px;
  height: 13px;
  margin: 0 4px;
  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: #8e8e8e;
  text-align: center;
  opacity: 1;
  color: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
body .slick-dots li.slick-active button:before {
  background-color: #000;
  opacity: 1;
}

.l-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 23px 3vw;
  position: sticky;
  top: 0;
  background: #fff;
  box-shadow: 0 2px 11px rgba(217, 68, 115, 0.25);
  z-index: 10;
}
@media screen and (max-width: 767px) {
  .l-header {
    padding: 10px 5vw;
  }
}
.l-header__logo {
  width: 294.5px;
  margin: 0;
}
@media screen and (max-width: 767px) {
  .l-header__logo {
    width: 200px;
  }
}
@media screen and (max-width: 767px) {
  .l-header__logo {
    width: min(55vw, 200px);
  }
}
@media screen and (max-width: 767px) {
  .l-header {
    padding: 10px 15px;
  }
}

@media screen and (max-width: 767px) {
  .gnav {
    display: none;
  }
}
.gnav__list {
  display: flex;
  align-items: center;
  gap: 30px;
}
@media screen and (max-width: 767px) {
  .gnav__list {
    gap: 12px;
  }
}
.gnav__item {
  font-size: 17px;
  font-weight: bold;
}
.gnav__item.gnav__contact a {
  background: #d94473;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 187px;
  height: 52px;
  border-radius: 100vh;
}

/* =========================== */
#C-1,
#C-2,
#C-3,
#C-4,
#C-5,
#C-6,
#S-1,
#S-2,
#S-3,
#S-4,
#S-5,
#S-6,
#S-7,
#S-8,
#about,
#support,
#worklife,
#challenger,
#recruit,
#contact {
  scroll-margin-top: 80px;
  /* 追従ヘッダー分 */
}
@media screen and (max-width: 767px) {
  #C-1,
  #C-2,
  #C-3,
  #C-4,
  #C-5,
  #C-6,
  #S-1,
  #S-2,
  #S-3,
  #S-4,
  #S-5,
  #S-6,
  #S-7,
  #S-8,
  #about,
  #support,
  #worklife,
  #challenger,
  #recruit,
  #contact {
    scroll-margin-top: 50px;
  }
}

/* =========================== */
#hamburger {
  position: fixed;
  top: 16px;
  right: 20px;
  z-index: 1300;
  width: 50px;
  height: 18px;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  background: transparent;
  appearance: none;
  cursor: pointer;
  display: none;
}
@media screen and (max-width: 767px) {
  #hamburger {
    display: block;
  }
}
#hamburger .inner_line {
  position: absolute;
  display: block;
  width: 100%;
  height: 5px;
  background: #d94473;
  transition: all 0.3s ease;
}
@media screen and (max-width: 767px) {
  #hamburger .inner_line {
    height: 3px;
  }
}
#hamburger #line1 {
  top: 0;
}
#hamburger #line2 {
  bottom: 0px;
}
#hamburger.active #line1 {
  top: 8px;
  transform: rotate(-197deg);
  background: #fff;
}
#hamburger.active #line2 {
  bottom: 7px;
  transform: rotate(197deg);
  background: #fff;
}
#hamburger:focus-visible {
  outline: 2px solid #000;
  outline-offset: 3px;
}

/* =========================== */
#hamburger-menu {
  position: fixed;
  inset: 0;
  z-index: 1100;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
#hamburger-menu.active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
#hamburger-menu .hamburger-menu-inner {
  height: 100%;
  overflow-y: auto;
  overscroll-behavior: contain;
}
#hamburger-menu .overlay {
  position: relative;
  min-height: 420px;
  padding: 120px 40px 60px;
  box-sizing: border-box;
  overflow: hidden;
  background: #d94473;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
}
@media (max-width: 1199px) {
  #hamburger-menu .overlay {
    padding-inline: 32px;
  }
}
@media screen and (max-width: 767px) {
  #hamburger-menu .overlay {
    min-height: 100%;
    padding: 100px 24px 240px;
  }
}
@media screen and (max-width: 767px) {
  #hamburger-menu .gnav {
    display: block;
  }
  #hamburger-menu .gnav__list {
    display: flex;
    flex-direction: column;
  }
  #hamburger-menu .gnav__item a {
    color: #fff;
  }
  #hamburger-menu .gnav__item.gnav__contact a {
    background: #fff;
    color: #d94473;
  }
}

/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
.l-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 40px 3vw;
  background: #fff6f9;
  position: relative;
}
.l-footer__logo {
  width: 207px;
}
@media screen and (max-width: 767px) {
  .l-footer__logo {
    width: 180px;
  }
}
.l-footer__right {
  display: flex;
  align-items: center;
  gap: 30px;
}
@media screen and (max-width: 767px) {
  .l-footer__right {
    flex-direction: column;
    gap: 20px;
  }
}
.l-footer .fnav__list {
  display: flex;
  align-items: center;
  gap: 30px;
}
@media screen and (max-width: 767px) {
  .l-footer .fnav__list {
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px 20px;
  }
}
.l-footer .copyright {
  font-size: 14px;
}
@media screen and (max-width: 767px) {
  .l-footer .copyright {
    font-size: 12px;
  }
}
@media screen and (max-width: 767px) {
  .l-footer {
    flex-direction: column;
    gap: 25px;
    padding: 35px 15px;
    text-align: center;
  }
}

/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
/* =========================== */
.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;
}

.fix-bgimg {
  position: fixed;
  width: 100%;
  height: 100%;
}
.fix-bgimg img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

/* =========================== */
.l-main {
  position: relative;
}

/* =========================== */
.SPJ-kv {
  position: relative;
}
.SPJ-kv__catch {
  width: 595px;
  position: absolute;
  left: calc(50% - 380px);
  transform: translate(-50%, 0);
  top: 10px;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .SPJ-kv__catch {
    width: 86vw;
    left: 50%;
    top: 20px;
  }
}
.SPJ-kv__illust {
  width: 933px;
  position: relative;
  left: calc(50% + 220px);
  transform: translate(-50%, 0);
}
@media screen and (max-width: 767px) {
  .SPJ-kv__illust {
    width: 135%;
    max-width: none;
    left: 50%;
    margin-top: 45vw;
  }
}
.SPJ-kv__btn {
  position: absolute;
  left: calc(50% - 380px);
  transform: translate(-50%, 0);
  bottom: 60px;
}
@media screen and (max-width: 767px) {
  .SPJ-kv__btn {
    left: 50%;
    bottom: 10vw;
    width: fit-content;
  }
}
.SPJ-kv__btn .c-btn {
  margin-top: 12px;
}
.SPJ-kv__btn .c-btn a {
  min-width: 313px;
}
@media screen and (max-width: 767px) {
  .SPJ-kv__btn .c-btn a {
    min-width: 0;
    width: min(88vw, 313px);
  }
}
@media screen and (max-width: 767px) {
  .SPJ-kv__btn .c-btn {
    margin-top: 8px;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-kv {
    overflow: hidden;
  }
}

/* =========================== */
.SPJ-what {
  text-align: center;
  margin-top: -40px;
  position: relative;
  background: url(../img/spj/what-bg.png) no-repeat center top/cover;
}
@media screen and (max-width: 767px) {
  .SPJ-what {
    margin-top: -4vw;
  }
}
.SPJ-what .sect-inner {
  position: relative;
  padding: 10vw 0 68px;
}
@media screen and (max-width: 767px) {
  .SPJ-what .sect-inner {
    padding: 75px 5vw 60px;
  }
}
.SPJ-what__top {
  width: 100%;
}
.SPJ-what__top img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .SPJ-what__top img {
    max-width: 100%;
    height: auto;
  }
}
.SPJ-what__title {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.SPJ-what__title .line-1 img {
  width: 648.14px;
}
@media screen and (max-width: 767px) {
  .SPJ-what__title .line-1 {
    width: 100%;
  }
}
.SPJ-what__title .line-2 {
  font-size: 35px;
  color: #d94473;
}
@media screen and (max-width: 767px) {
  .SPJ-what__title .line-2 {
    font-size: clamp(21px, 5.5vw, 30px);
  }
}
@media screen and (max-width: 767px) {
  .SPJ-what__title {
    gap: 8px;
  }
}
.SPJ-what__body {
  font-size: 18px;
  font-weight: 600;
  line-height: 3;
  position: relative;
}
.SPJ-what__body .dot {
  position: relative;
  display: inline-block;
  font-weight: 600;
  color: #d94473;
}
.SPJ-what__body .dot::before {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #d94473;
  position: absolute;
  left: 50%;
  top: 9px;
  transform: translate(-50%, 0);
}
@media screen and (max-width: 767px) {
  .SPJ-what__body {
    font-size: 14px;
    line-height: 2.1;
  }
}
.SPJ-what__illust-1 {
  position: absolute;
  left: -110px;
  bottom: 0;
  width: 472px;
  mix-blend-mode: multiply;
}
@media screen and (max-width: 767px) {
  .SPJ-what__illust-1 {
    left: -35px;
    width: 42%;
  }
}
.SPJ-what__illust-2 {
  position: absolute;
  right: -110px;
  bottom: 0;
  width: 468px;
  mix-blend-mode: multiply;
}
@media screen and (max-width: 767px) {
  .SPJ-what__illust-2 {
    right: -35px;
    width: 42%;
  }
}

/* =========================== */
.SPJ-about {
  background: #fff6f9;
  padding: 60px 0;
}
.SPJ-about__header {
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .SPJ-about__header {
    margin-bottom: 25px;
  }
}
.SPJ-about__title {
  background: #3399ff;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  display: inline-block;
  padding: 6px 30px;
  border-radius: 100vh;
}
.SPJ-about__title .en::after {
  content: "|";
  margin: 0 5px 0 10px;
}
@media screen and (max-width: 767px) {
  .SPJ-about__title {
    font-size: 13px;
    padding: 7px 17px;
  }
}
.SPJ-about__title-2 {
  font-size: 45px;
  color: #d94473;
  font-weight: 800;
  line-height: 1.24;
  margin-bottom: 15px;
}
.SPJ-about__title-2 .small {
  font-size: 35px;
}
@media screen and (max-width: 767px) {
  .SPJ-about__title-2 .small {
    font-size: 0.75em;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-about__title-2 {
    font-size: 6.4102564103vw;
    line-height: 1.4;
  }
}
.SPJ-about__list {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .SPJ-about__list {
    flex-direction: column;
    align-items: center;
    gap: 20px;
  }
}
.SPJ-about__item {
  border: 3px solid #d94473;
  background: #fff;
  border-radius: 50%;
  width: 341px;
  height: 341px;
  text-align: center;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.SPJ-about__item .num {
  background: url(../img/spj/about-num-heart.svg) no-repeat center/contain;
  width: 61px;
  height: 54px;
  text-align: center;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
  padding-bottom: 5px;
  position: absolute;
  left: 12px;
  top: 26px;
}
@media screen and (max-width: 767px) {
  .SPJ-about__item .num {
    width: 52px;
    height: 47px;
    top: 15px;
    left: 12px;
  }
}
.SPJ-about__item .icon {
  height: 114px;
  display: flex;
  justify-content: center;
  align-items: end;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .SPJ-about__item .icon {
    height: 95px;
  }
}
.SPJ-about__item .title {
  font-size: 20px;
  color: #d94473;
  margin-bottom: 5px;
}
@media screen and (max-width: 767px) {
  .SPJ-about__item .title {
    font-size: 18px;
  }
}
.SPJ-about__item .body {
  max-width: 230px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .SPJ-about__item .body {
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-about__item {
    width: min(100%, 320px);
    height: auto;
    aspect-ratio: 1;
  }
}
.SPJ-about__recruiting {
  max-width: 904px;
  margin: 0 auto;
  margin-top: 80px;
}
.SPJ-about__recruiting__title {
  text-align: center;
  font-size: 35px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  margin-bottom: 15px;
}
@media screen and (max-width: 767px) {
  .SPJ-about__recruiting__title {
    font-size: 23px;
    flex-wrap: wrap;
  }
}
.SPJ-about__recruiting__note {
  text-align: right;
  font-size: 13px;
  margin-bottom: 15px;
}
@media screen and (max-width: 767px) {
  .SPJ-about__recruiting__note {
    font-size: 12px;
  }
}
.SPJ-about__recruiting .table-wrap {
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 40px;
}
.SPJ-about__recruiting .table-wrap .table-row {
  display: flex;
}
.SPJ-about__recruiting .table-wrap .table-row .term {
  background: #d94473;
  color: #fff;
  width: 211px;
  min-height: 82px;
  display: flex;
  align-items: center;
  padding: 10px 20px;
  font-size: 18px;
  line-height: 1.45;
  border-bottom: 1px solid #fff;
}
@media screen and (max-width: 767px) {
  .SPJ-about__recruiting .table-wrap .table-row .term {
    width: 100%;
    min-height: 0;
    padding: 12px 15px;
    font-size: 15px;
  }
}
.SPJ-about__recruiting .table-wrap .table-row .desc {
  width: calc(100% - 211px);
  background: #fff;
  display: flex;
  align-items: center;
  border-bottom: 1px solid #efb9ca;
  padding: 10px 20px;
}
.SPJ-about__recruiting .table-wrap .table-row .desc strong {
  color: #d94473;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  .SPJ-about__recruiting .table-wrap .table-row .desc strong {
    font-size: 17px;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-about__recruiting .table-wrap .table-row .desc {
    width: 100%;
    padding: 15px;
    font-size: 14px;
  }
}
.SPJ-about__recruiting .table-wrap .table-row:last-child .term,
.SPJ-about__recruiting .table-wrap .table-row:last-child .desc {
  border: none;
}
@media screen and (max-width: 767px) {
  .SPJ-about__recruiting .table-wrap .table-row {
    flex-direction: column;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-about__recruiting .table-wrap {
    margin-bottom: 25px;
  }
}
.SPJ-about__recruiting__bnr {
  background: #ffedf3;
  border: 3px solid #d94473;
  border-radius: 10px;
  text-align: center;
  position: relative;
  padding: 30px;
}
.SPJ-about__recruiting__bnr .title {
  color: #d94473;
  font-size: 22px;
  margin-bottom: 10px;
}
.SPJ-about__recruiting__bnr .body {
  line-height: 1.67;
  margin: 0;
}
.SPJ-about__recruiting__bnr .illust-1 {
  position: absolute;
  width: 131px;
  left: 40px;
  top: 50%;
  transform: translate(0, -50%);
}
@media screen and (max-width: 767px) {
  .SPJ-about__recruiting__bnr .illust-1 {
    width: 75px;
    left: auto;
    right: 20px;
    top: auto;
    bottom: 16px;
    transform: none;
  }
}
.SPJ-about__recruiting__bnr .illust-2 {
  position: absolute;
  width: 168px;
  right: 20px;
  bottom: 0;
}
@media screen and (max-width: 767px) {
  .SPJ-about__recruiting__bnr .illust-2 {
    width: 95px;
    left: 12px;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-about__recruiting__bnr {
    padding: 25px 15px 100px;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-about__recruiting {
    margin-top: 50px;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-about {
    padding: 45px 5vw;
  }
}
@media screen and (min-width: 768px) and (max-width: 949px) {
  .SPJ-about__list {
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
  }
  .SPJ-about__item {
    width: 30%;
    height: auto;
    aspect-ratio: 1;
  }
}

/* =========================== */
.SPJ-support {
  background: #fff6f9;
  padding: 60px 0 70px;
}
.SPJ-support__movie {
  background-color: #d94473;
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .SPJ-support__movie {
    margin-bottom: 15px;
  }
}
.SPJ-support__list {
  display: flex;
  gap: 20px;
}
@media screen and (max-width: 767px) {
  .SPJ-support__list {
    flex-direction: column;
    gap: 15px;
  }
}
.SPJ-support__item {
  width: calc((100% - 40px) / 3);
}
.SPJ-support__item img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .SPJ-support__item {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-support {
    padding: 45px 5vw 50px;
  }
}

/* =========================== */
.SPJ-try {
  text-align: center;
  padding: 60px 0 0;
  background: #fff;
}
.SPJ-try__upper {
  position: relative;
  background: url(../img/spj/try-illust.png) no-repeat center bottom/789px;
  min-height: 499px;
  padding-bottom: 600px;
}
@media screen and (max-width: 767px) {
  .SPJ-try__upper {
    min-height: 0;
    padding: 0 5vw 80vw;
    background-size: 95vw;
  }
}
.SPJ-try__title {
  font-size: 40px;
  font-weight: 800;
}
.SPJ-try__title span {
  font-size: 55px;
  color: #d94473;
}
@media screen and (max-width: 767px) {
  .SPJ-try__title span {
    font-size: 1.2em;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-try__title {
    font-size: clamp(23px, 6vw, 30px);
  }
}
.SPJ-try__lead {
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .SPJ-try__lead {
    font-size: 14px;
    line-height: 1.8;
  }
}
.SPJ-try__fukidashi {
  position: absolute;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .SPJ-try__fukidashi {
    max-width: 48%;
    height: auto;
    min-height: 0;
    padding: 20px 8px 15px;
  }
}
.SPJ-try__fukidashi .text {
  font-size: 20px;
  line-height: 1.5;
  font-weight: bold;
}
.SPJ-try__fukidashi .text span {
  color: #d94473;
}
@media screen and (max-width: 767px) {
  .SPJ-try__fukidashi .text {
    font-size: 2.4vw;
  }
}
.SPJ-try__fukidashi.fukidashi-1 {
  background-image: url(../img/spj/try-fukidashi-1.png);
  width: 488px;
  height: 173px;
  left: calc(50% - 510px);
  bottom: 410px;
  padding: 73px 0 0 19px;
}
@media screen and (max-width: 767px) {
  .SPJ-try__fukidashi.fukidashi-1 {
    width: 48%;
    height: auto;
    aspect-ratio: 976/346;
    left: 1%;
    bottom: 61vw;
    padding: 6vw 0vw 0vw 5vw;
  }
}
.SPJ-try__fukidashi.fukidashi-2 {
  background-image: url(../img/spj/try-fukidashi-2.png);
  width: 501px;
  height: 139px;
  right: calc(50% - 510px);
  bottom: 410px;
  padding: 38px 60px 0 0;
}
@media screen and (max-width: 767px) {
  .SPJ-try__fukidashi.fukidashi-2 {
    width: 48%;
    height: auto;
    aspect-ratio: 1002/278;
    right: 1%;
    bottom: 61vw;
    padding: 3vw 4vw 0vw 0vw;
  }
}
.SPJ-try__fukidashi.fukidashi-3 {
  background-image: url(../img/spj/try-fukidashi-3.png);
  width: 452px;
  height: 164.5px;
  left: calc(50% - 649px);
  bottom: 170px;
  padding: 23px 0 0 10px;
}
@media screen and (max-width: 767px) {
  .SPJ-try__fukidashi.fukidashi-3 {
    width: 48%;
    height: auto;
    aspect-ratio: 904/329;
    left: 1%;
    bottom: 43vw;
    padding: 2vw 0vw 0vw 0vw;
  }
}
.SPJ-try__fukidashi.fukidashi-4 {
  background-image: url(../img/spj/try-fukidashi-4.png);
  width: 452px;
  height: 180.5px;
  right: calc(50% - 649px);
  bottom: 170px;
  padding: 38px 0 0 0;
}
@media screen and (max-width: 767px) {
  .SPJ-try__fukidashi.fukidashi-4 {
    width: 48%;
    height: auto;
    aspect-ratio: 904/361;
    right: 1%;
    bottom: 40vw;
    padding: 4vw 0vw 0vw 0vw;
  }
}
.SPJ-try__lower {
  background: #d94473;
  color: #fff;
  font-size: 18px;
  padding: 50px 20px;
}
.SPJ-try__lower strong {
  font-size: 21px;
  font-weight: 800;
}
@media screen and (max-width: 767px) {
  .SPJ-try__lower strong {
    font-size: 17px;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-try__lower {
    padding: 35px 15px;
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-try {
    padding-top: 45px;
  }
}
@media screen and (min-width: 768px) and (max-width: 949px) {
  .SPJ-try__fukidashi {
    transform: scale(0.75);
  }
  .SPJ-try__upper {
    overflow: hidden;
  }
}

/* =========================== */
.SPJ-wrap-1 {
  background: linear-gradient(0deg, #ffedf3 0%, #ffffff 57%);
}

/* =========================== */
.SPJ-why {
  padding: 60px 20px;
}
@media screen and (max-width: 767px) {
  .SPJ-why {
    padding: 40px 5vw;
  }
}
.SPJ-why .sect-inner {
  display: flex;
  flex-direction: row-reverse;
  border: 3px solid #d94473;
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
}
@media screen and (max-width: 767px) {
  .SPJ-why .sect-inner {
    display: flex;
    flex-direction: column;
    border-width: 2px;
    border-radius: 12px;
  }
}
.SPJ-why .img {
  width: 42%;
}
.SPJ-why .img img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .SPJ-why .img {
    width: 100%;
    height: auto;
    aspect-ratio: 4/3;
    background-position: center center;
  }
}
.SPJ-why .text {
  width: 58%;
  padding: 44px 40px 48px;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .SPJ-why .text {
    width: 100%;
    padding: 25px 20px 30px;
  }
}
.SPJ-why .title {
  margin: 0 0 14px;
  padding: 10px 20px;
  border-radius: 50px;
  background: #d94473;
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .SPJ-why .title {
    margin-bottom: 18px;
    padding: 12px 15px;
    font-size: 16px;
    line-height: 1.5;
  }
}
.SPJ-why .body {
  font-weight: 600;
  line-height: 2.15;
  letter-spacing: 0.02em;
  color: #111;
}
.SPJ-why .body p {
  margin: 0;
}
.SPJ-why .body span {
  color: #d94473;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .SPJ-why .body {
    font-size: 14px;
    line-height: 2;
    letter-spacing: 0.02em;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-why .body br {
    display: none;
  }
}

/* =========================== */
.SPJ-how {
  padding: 40px 20px 80px;
}
@media screen and (max-width: 767px) {
  .SPJ-how {
    padding: 40px 5vw 50px;
  }
}
.SPJ-how__title {
  margin: 0;
  font-size: 34px;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .SPJ-how__title {
    font-size: 24px;
    line-height: 1.5;
  }
}
.SPJ-how__lead {
  margin: 8px 0 42px;
  font-weight: 600;
  line-height: 1.8;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .SPJ-how__lead {
    margin: 12px 0 30px;
    font-size: 14px;
    line-height: 1.8;
    text-align: left;
  }
}
.SPJ-how__list {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media screen and (max-width: 767px) {
  .SPJ-how__list {
    gap: 20px;
  }
}
.SPJ-how__item {
  display: flex;
  align-items: flex-start;
  gap: 19px;
  padding: 24px 25px;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(219, 64, 117, 0.22);
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .SPJ-how__item {
    flex-direction: column;
    gap: 18px;
    padding: 18px;
    border-radius: 10px;
  }
}
.SPJ-how__img {
  width: 293px;
  flex-shrink: 0;
}
.SPJ-how__img img {
  display: block;
  width: 100%;
  aspect-ratio: 293/168;
  object-fit: cover;
  border-radius: 10px;
}
@media screen and (max-width: 767px) {
  .SPJ-how__img img {
    aspect-ratio: 16/9;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-how__img {
    width: 100%;
  }
}
.SPJ-how__text {
  flex: 1;
  min-width: 0;
}
@media screen and (max-width: 767px) {
  .SPJ-how__text {
    width: 100%;
  }
}
.SPJ-how__num {
  display: inline-block;
  min-width: 109px;
  padding: 4px 15px;
  border-radius: 50px;
  background: #d94473;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .SPJ-how__num {
    font-size: 11px;
    padding: 5px 14px;
  }
}
.SPJ-how__heading {
  margin: 8px 0 12px;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .SPJ-how__heading {
    margin: 10px 0 12px;
    font-size: 18px;
  }
}
.SPJ-how__text p {
  margin: 0;
  font-weight: 600;
  line-height: 1.85;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .SPJ-how__text p {
    font-size: 14px;
    line-height: 1.9;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-how__text p br {
    display: none;
  }
}

/* =========================== */
.SPJ-recruiting {
  padding: 0px 0 80px;
}
@media screen and (max-width: 767px) {
  .SPJ-recruiting {
    padding: 0px 5vw 50px;
  }
}
.SPJ-recruiting .SPJ-about__recruiting {
  margin: 0 auto;
}
.SPJ-recruiting__note {
  text-align: center;
  line-height: 1.73;
  margin-bottom: 30px;
}
.SPJ-recruiting .table-wrap .table-row .term {
  width: 225px;
}
@media screen and (max-width: 767px) {
  .SPJ-recruiting .table-wrap .table-row .term {
    width: 100%;
  }
}
.SPJ-recruiting .table-wrap .table-row .desc {
  width: calc(100% - 225px);
}
@media screen and (max-width: 767px) {
  .SPJ-recruiting .table-wrap .table-row .desc {
    width: 100%;
  }
}

/* =========================== */
.SPJ-worklife {
  padding: 90px 20px 40px;
}
@media screen and (max-width: 767px) {
  .SPJ-worklife {
    padding: 40px 5vw 50px;
  }
}
.SPJ-worklife__list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 30px;
}
@media screen and (max-width: 767px) {
  .SPJ-worklife__list {
    grid-template-columns: 1fr;
    gap: 20px;
    max-width: 450px;
    margin: 0 auto;
  }
}
.SPJ-worklife__item {
  overflow: hidden;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 4px 10px rgba(219, 64, 117, 0.22);
}
.SPJ-worklife__heading {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 57px;
  margin: 0;
  padding: 10px;
  box-sizing: border-box;
  background: #d94473;
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .SPJ-worklife__heading {
    min-height: 50px;
    padding: 10px;
    font-size: 18px;
  }
}
.SPJ-worklife__content {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 159px;
  padding: 20px 12px;
  box-sizing: border-box;
}
.SPJ-worklife__content p {
  position: relative;
  z-index: 1;
  width: 65%;
  margin: 0;
  color: #111;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.7;
  text-align: center;
  white-space: nowrap;
}
.SPJ-worklife__content p span {
  color: #d94473;
}
@media screen and (max-width: 767px) {
  .SPJ-worklife__content p {
    width: 65%;
    font-size: 16px;
  }
}
.SPJ-worklife__content img {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 48%;
  max-height: 95%;
  object-fit: contain;
  object-position: right bottom;
}
@media screen and (max-width: 767px) {
  .SPJ-worklife__content img {
    width: 43%;
    max-height: 95%;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-worklife__content {
    min-height: 160px;
    padding: 20px 15px;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-worklife__title-2 {
    margin-bottom: 18px;
    font-size: clamp(24px, 6vw, 32px);
    line-height: 1.45;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-worklife__header {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-worklife__title {
    margin-bottom: 18px;
    padding: 8px 22px;
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-worklife__title .en {
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-worklife__lead {
    font-size: 14px;
    line-height: 1.9;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-worklife__lead br {
    display: none;
  }
}

/* =========================== */
.SPJ-challenger {
  padding: 40px 20px 110px;
}
@media screen and (max-width: 767px) {
  .SPJ-challenger {
    padding: 40px 5vw 50px;
  }
}
.SPJ-challenger__profile {
  display: grid;
  grid-template-columns: 460px minmax(0, 1fr);
  align-items: stretch;
  gap: 50px;
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__profile {
    grid-template-columns: 1fr;
    gap: 25px;
  }
}
.SPJ-challenger__photo {
  overflow: hidden;
  border-radius: 9px;
}
.SPJ-challenger__photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__photo {
    width: 100%;
    max-width: 460px;
    margin: 0 auto;
    aspect-ratio: 460/524;
  }
}
.SPJ-challenger__info {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.SPJ-challenger__name-wrap {
  display: flex;
  align-items: end;
  flex-wrap: wrap;
  gap: 18px;
  margin-bottom: 22px;
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__name-wrap {
    gap: 10px;
    margin-bottom: 18px;
  }
}
.SPJ-challenger__name {
  margin: 0;
  color: #d94473;
  font-size: 72px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__name {
    font-size: 10.2564102564vw;
  }
}
.SPJ-challenger__position {
  display: inline-block;
  padding: 5px 20px;
  border-radius: 50px;
  background: #d94473;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.3;
  white-space: nowrap;
  position: relative;
  top: -14px;
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__position {
    padding: 5px 14px;
    font-size: 11px;
    top: -1.5vw;
  }
}
.SPJ-challenger__detail {
  display: flex;
  flex: 1;
  flex-direction: column;
  justify-content: space-between;
  gap: 35px;
  padding: 27px 35px 34px;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 4px 12px rgba(219, 64, 117, 0.22);
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__detail {
    gap: 30px;
    padding: 25px 20px;
    border-radius: 10px;
  }
}
.SPJ-challenger__description {
  color: #111;
  font-size: 15px;
  font-weight: 600;
  line-height: 2;
  letter-spacing: 0.02em;
}
.SPJ-challenger__description p {
  margin: 0;
}
.SPJ-challenger__description p + p {
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__description {
    font-size: 14px;
    line-height: 1.9;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__description p + p {
    margin-top: 22px;
  }
}
.SPJ-challenger__sns {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 15px;
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__sns {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }
}
.SPJ-challenger__sns-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 55px;
  padding: 10px 18px;
  padding-left: 30px;
  border-radius: 50px;
  box-sizing: border-box;
  background: #d94473;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none;
  white-space: nowrap;
  transition: opacity 0.3s;
}
.SPJ-challenger__sns-link img {
  display: block;
  width: 28px;
  height: 28px;
  object-fit: contain;
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__sns-link img {
    width: 26px;
    height: 26px;
  }
}
.SPJ-challenger__sns-link .arrow {
  margin-left: 5px;
  font-weight: 400;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__sns-link .arrow {
    margin-left: 8px;
  }
}
.SPJ-challenger__sns-link:hover {
  opacity: 0.75;
}
.SPJ-challenger__sns-link:focus-visible {
  outline: 3px solid #3399ff;
  outline-offset: 4px;
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__sns-link {
    width: 100%;
    min-height: 52px;
    padding: 10px 20px;
    font-size: 14px;
  }
}
.SPJ-challenger__follow {
  margin-top: 90px;
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__follow {
    margin-top: 60px;
  }
}
.SPJ-challenger__follow-title {
  margin: 0 0 22px;
  color: #111;
  font-size: 34px;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}
.SPJ-challenger__follow-title span {
  color: #d94473;
  font-size: 46px;
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__follow-title span {
    font-size: 30px;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__follow-title {
    margin-bottom: 20px;
    font-size: 23px;
    line-height: 1.5;
  }
}
.SPJ-challenger__follow-tags {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 18px;
  margin-bottom: 20px;
}
.SPJ-challenger__follow-tags span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 7px 30px;
  border-radius: 50px;
  box-sizing: border-box;
  background: #fff;
  box-shadow: 0 4px 10px rgba(219, 64, 117, 0.25);
  color: #d94473;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__follow-tags span {
    width: 100%;
    max-width: 350px;
    min-height: 38px;
    padding: 8px 15px;
    font-size: 13px;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__follow-tags {
    gap: 10px;
    margin-bottom: 22px;
  }
}
.SPJ-challenger__follow-lead {
  margin: 0 0 43px;
  color: #111;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.8;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__follow-lead {
    margin-bottom: 30px;
    font-size: 14px;
    line-height: 1.8;
    text-align: left;
  }
}
.SPJ-challenger__follow-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 30px;
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__follow-list {
    grid-template-columns: 1fr;
    gap: 20px;
    max-width: 450px;
    margin: 0 auto;
  }
}
.SPJ-challenger__follow-item {
  overflow: hidden;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 4px 10px rgba(219, 64, 117, 0.22);
}
.SPJ-challenger__follow-img {
  width: 100%;
  aspect-ratio: 342/202;
  overflow: hidden;
}
.SPJ-challenger__follow-img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__follow-img {
    aspect-ratio: 16/9;
  }
}
.SPJ-challenger__follow-body {
  min-height: 160px;
  padding: 22px 24px 30px;
  box-sizing: border-box;
}
.SPJ-challenger__follow-body h4 {
  margin: 0 0 12px;
  color: #d94473;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__follow-body h4 {
    margin-bottom: 10px;
    font-size: 18px;
  }
}
.SPJ-challenger__follow-body p {
  margin: 0;
  color: #111;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.85;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__follow-body p {
    font-size: 14px;
    line-height: 1.9;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__follow-body {
    min-height: auto;
    padding: 20px 20px 25px;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__title-2 {
    margin-bottom: 15px;
    font-size: clamp(24px, 6vw, 32px);
    line-height: 1.45;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__header {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__title {
    margin-bottom: 18px;
    padding: 8px 20px;
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__title .en {
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-challenger__lead {
    font-size: 14px;
    line-height: 1.9;
  }
}

/* =========================== */
.SPJ-step {
  position: relative;
  padding: 75px 20px 100px;
  background: #d94473;
  color: #fff;
}
.SPJ-step::before {
  content: "";
  position: absolute;
  inset: 17px 14px;
  border: 3px solid #fff;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .SPJ-step::before {
    inset: 10px;
    border-width: 2px;
  }
}
.SPJ-step .sect-inner {
  position: relative;
  z-index: 1;
}
.SPJ-step__header {
  margin-bottom: 42px;
}
@media screen and (max-width: 767px) {
  .SPJ-step__header {
    margin-bottom: 30px;
  }
}
.SPJ-step__title {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3px;
  margin: 0;
  color: #fff;
  font-weight: 700;
}
.SPJ-step__title .en {
  font-size: 20px;
  line-height: 1.3;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .SPJ-step__title .en {
    font-size: 16px;
  }
}
.SPJ-step__title .jp {
  font-size: 34px;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .SPJ-step__title .jp {
    font-size: clamp(21px, 5.5vw, 28px);
    line-height: 1.5;
  }
}
.SPJ-step__content {
  position: relative;
}
.SPJ-step__list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: 45px;
  row-gap: 42px;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media screen and (max-width: 767px) {
  .SPJ-step__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 24px;
    row-gap: 35px;
  }
}
.SPJ-step__item {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  aspect-ratio: 1/1;
  padding: 30px 12px 20px;
  border-radius: 50%;
  box-sizing: border-box;
  background: #fff;
  color: #111;
  text-align: center;
}
.SPJ-step__item:not(:nth-child(4)):not(:last-child)::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -37px;
  transform: translate(0, -50%);
  width: 29px;
  height: 25px;
  background: url(../img/spj/arrow-right-white.svg) no-repeat center/contain;
}
@media screen and (max-width: 767px) {
  .SPJ-step__item:not(:nth-child(4)):not(:last-child)::after {
    content: none;
  }
}
.SPJ-step__item h3 {
  margin: 8px 0 2px;
  color: #d94473;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.3;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .SPJ-step__item h3 {
    margin: 5px 0 3px;
    font-size: clamp(11px, 3vw, 15px);
    white-space: normal;
  }
}
.SPJ-step__item p {
  margin: 0;
  color: #111;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.45;
  max-width: 180px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .SPJ-step__item p {
    font-size: clamp(10px, 2.5vw, 12px);
    line-height: 1.4;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-step__item p br {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-step__item {
    padding: 20px 8px 15px;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-step__item:nth-child(odd):not(:last-child)::after {
    content: "→";
    position: absolute;
    top: 50%;
    right: -25px;
    transform: translateY(-50%);
    color: #fff;
    font-size: 25px;
    line-height: 1;
  }
}
.SPJ-step__num {
  position: absolute;
  top: 13px;
  left: 13px;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 42px;
  background: url("../img/spj/step-num-heart.svg") no-repeat center/contain;
  color: #d94473;
  font-size: 14px;
  font-weight: 800;
  padding-bottom: 3px;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .SPJ-step__num {
    top: 0;
    left: 0;
    width: 35px;
    height: 33px;
    font-size: 11px;
  }
}
.SPJ-step__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 76px;
  height: 76px;
}
.SPJ-step__icon img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
@media screen and (max-width: 767px) {
  .SPJ-step__icon {
    width: 45px;
    height: 45px;
  }
}
.SPJ-step__character {
  position: absolute;
  right: -5px;
  bottom: -100px;
  width: 48%;
  max-width: 510px;
  pointer-events: none;
}
.SPJ-step__character img {
  display: block;
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .SPJ-step__character {
    position: relative;
    right: auto;
    bottom: auto;
    width: 85%;
    max-width: 350px;
    margin: 30px auto -80px;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-step {
    padding: 60px 25px 80px;
  }
}

/* =========================== */
.SPJ-wrap-2 {
  background-color: #fff6f9;
  background-image: url(../img/spj/wrap-2-bg.png);
  background-repeat: repeat-y;
  background-position: center top;
  background-size: 1551px auto;
}
@media screen and (max-width: 767px) {
  .SPJ-wrap-2 {
    background-size: 120% auto;
  }
}

/* =========================== */
.SPJ-supporter {
  padding: 60px 20px 85px;
}
@media screen and (max-width: 767px) {
  .SPJ-supporter {
    padding: 40px 5vw 60px;
  }
}
.SPJ-supporter__list {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
@media screen and (max-width: 767px) {
  .SPJ-supporter__list {
    gap: 20px;
  }
}
.SPJ-supporter__item {
  display: grid;
  grid-template-columns: 315px minmax(0, 1fr);
  gap: 28px;
  padding: 25px 30px;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 4px 12px rgba(219, 64, 117, 0.22);
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .SPJ-supporter__item {
    grid-template-columns: 1fr;
    gap: 20px;
    padding: 20px;
    border-radius: 10px;
  }
}
.SPJ-supporter__visual {
  min-width: 0;
}
.SPJ-supporter__img {
  width: 100%;
  aspect-ratio: 315/192;
  overflow: hidden;
  border-radius: 10px;
  background: #fff0f5;
}
.SPJ-supporter__img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .SPJ-supporter__img {
    aspect-ratio: 315/192;
  }
}
.SPJ-supporter__name {
  margin: 10px 0 0;
  color: #d94473;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .SPJ-supporter__name {
    margin-top: 10px;
    font-size: 21px;
  }
}
.SPJ-supporter__body {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding-top: 2px;
  color: #111;
  font-weight: 600;
  line-height: 1.9;
  letter-spacing: 0.02em;
}
.SPJ-supporter__body p {
  margin: 0;
}
.SPJ-supporter__body p + p {
  margin-top: 25px;
}
@media screen and (max-width: 767px) {
  .SPJ-supporter__body {
    padding-top: 0;
    font-size: 14px;
    line-height: 1.85;
  }
}
.SPJ-supporter__lead {
  margin-bottom: 42px !important;
}
@media screen and (max-width: 767px) {
  .SPJ-supporter__lead {
    margin-bottom: 25px !important;
    font-size: 14px;
  }
}
.SPJ-supporter__info {
  display: flex;
  flex-direction: column;
  gap: 38px;
  margin: 0;
}
@media screen and (max-width: 767px) {
  .SPJ-supporter__info {
    gap: 25px;
  }
}
.SPJ-supporter__info-row {
  display: grid;
  grid-template-columns: 132px minmax(0, 1fr);
  align-items: start;
  gap: 22px;
}
.SPJ-supporter__info-row > dt {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 7px 15px;
  border-radius: 50px;
  box-sizing: border-box;
  background: #d94473;
  color: #fff;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .SPJ-supporter__info-row > dt {
    width: 132px;
    min-height: 34px;
    font-size: 13px;
  }
}
.SPJ-supporter__info-row > dd {
  margin: 0;
  padding-top: 6px;
}
@media screen and (max-width: 767px) {
  .SPJ-supporter__info-row > dd {
    padding-top: 0;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-supporter__info-row {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}
.SPJ-supporter__company {
  margin: 0;
  font-size: 14px;
}
.SPJ-supporter__company > div {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 15px;
}
@media screen and (max-width: 767px) {
  .SPJ-supporter__company > div {
    display: block;
    margin-bottom: 8px;
  }
}
.SPJ-supporter__company dt {
  flex-shrink: 0;
  color: #d94473;
  font-weight: 700;
  width: 86px;
}
@media screen and (max-width: 767px) {
  .SPJ-supporter__company dt {
    margin-bottom: 2px;
    width: 100%;
  }
}
.SPJ-supporter__company dd {
  flex: 1;
  margin: 0;
  overflow-wrap: anywhere;
}
.SPJ-supporter__company a {
  color: inherit;
  text-decoration: none;
  transition: opacity 0.3s;
}
.SPJ-supporter__company a:hover {
  opacity: 0.7;
  text-decoration: underline;
}
.SPJ-supporter__company a:focus-visible {
  outline: 2px solid #3699ff;
  outline-offset: 3px;
}
.SPJ-supporter__body--ambassador {
  justify-content: space-between;
  gap: 30px;
}
@media screen and (max-width: 767px) {
  .SPJ-supporter__body--ambassador {
    gap: 25px;
  }
}
.SPJ-supporter__subheading {
  margin: 0 0 5px;
  color: #d94473;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .SPJ-supporter__subheading {
    margin-bottom: 10px;
    font-size: 18px;
  }
}
.SPJ-supporter__btn-wrap {
  display: flex;
  justify-content: flex-end;
}
@media screen and (max-width: 767px) {
  .SPJ-supporter__btn-wrap {
    justify-content: center;
  }
}
.SPJ-supporter__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 15px;
  min-height: 32px;
  padding: 6px 15px 6px 20px;
  border-radius: 50px;
  box-sizing: border-box;
  background: #d94473;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none;
  transition: opacity 0.3s;
}
.SPJ-supporter__btn .arrow {
  font-size: 19px;
  font-weight: 400;
  line-height: 1;
}
.SPJ-supporter__btn:hover {
  opacity: 0.75;
}
.SPJ-supporter__btn:focus-visible {
  outline: 3px solid #3699ff;
  outline-offset: 3px;
}
@media screen and (max-width: 767px) {
  .SPJ-supporter__btn {
    width: 100%;
    max-width: 350px;
    min-height: 45px;
    padding: 10px 15px;
    font-size: 13px;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-supporter .c-header {
    margin-bottom: 25px;
  }
}

/* =========================== */
.SPJ-recruit {
  padding: 0 0 50px;
}
@media screen and (max-width: 767px) {
  .SPJ-recruit {
    padding: 0 5vw 50px;
  }
}
.SPJ-recruit .SPJ-about__recruiting {
  margin: 0;
  max-width: 100%;
}
.SPJ-recruit .SPJ-about__recruiting .table-wrap .table-row .term {
  width: 220px;
  font-size: 16.5px;
}
@media screen and (max-width: 767px) {
  .SPJ-recruit .SPJ-about__recruiting .table-wrap .table-row .term {
    width: 100%;
  }
}
.SPJ-recruit .SPJ-about__recruiting .table-wrap .table-row .desc {
  width: calc(100% - 220px);
}
@media screen and (max-width: 767px) {
  .SPJ-recruit .SPJ-about__recruiting .table-wrap .table-row .desc {
    width: 100%;
  }
}

/* =========================== */
.SPJ-faq {
  padding: 0 0 100px;
}
@media screen and (max-width: 767px) {
  .SPJ-faq {
    padding: 0 5vw 100px;
  }
}
.SPJ-faq .sect-inner {
  max-width: 838px;
}
.SPJ-faq__item {
  margin-bottom: 20px;
}
.SPJ-faq__item .question,
.SPJ-faq__item .answer {
  position: relative;
  padding: 20px;
  padding-left: 65px;
  padding-right: 60px;
}
@media screen and (max-width: 767px) {
  .SPJ-faq__item .question,
  .SPJ-faq__item .answer {
    padding: 14px;
    padding-left: 50px;
    padding-right: 40px;
  }
}
.SPJ-faq__item .question .icon,
.SPJ-faq__item .answer .icon {
  position: absolute;
  left: 20px;
  top: 21px;
}
@media screen and (max-width: 767px) {
  .SPJ-faq__item .question .icon,
  .SPJ-faq__item .answer .icon {
    left: 15px;
    width: 26px;
    top: 9px;
  }
}
.SPJ-faq__item .question {
  background: #f7e0e8;
  border-radius: 100vh;
  cursor: pointer;
}
.SPJ-faq__item .question .cont {
  font-size: 16px;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .SPJ-faq__item .question .cont {
    font-size: 3.8461538462vw;
    line-height: 1.5;
    display: block;
  }
}
.SPJ-faq__item .question .status {
  width: 16px;
  height: 16px;
  display: block;
  position: absolute;
  right: 30px;
  top: 50%;
  transform: translate(0, -50%);
}
@media screen and (max-width: 767px) {
  .SPJ-faq__item .question .status {
    right: 20px;
  }
}
.SPJ-faq__item .question .status-inner {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}
.SPJ-faq__item .question .status-inner .line-1,
.SPJ-faq__item .question .status-inner .line-2 {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 3px;
  background: #d94473;
  display: block;
  transition: all 0.3s ease 0s;
}
.SPJ-faq__item .question .status-inner .line-1 {
  transform: translate(-50%, -50%) rotate(0deg);
}
.SPJ-faq__item .question .status-inner .line-2 {
  transform: translate(-50%, -50%) rotate(90deg);
}
.SPJ-faq__item .question.open .status-inner .line-1 {
  transform: translate(-50%, -50%) rotate(180deg);
}
.SPJ-faq__item .question.open .status-inner .line-2 {
  transform: translate(-50%, -50%) rotate(-180deg);
}
.SPJ-faq__item .answer {
  display: none;
}
@media screen and (max-width: 767px) {
  .SPJ-faq__item .answer {
    padding-right: 30px;
  }
}
.SPJ-faq__item .answer .cont {
  font-size: 14px;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .SPJ-faq__item .answer .cont {
    font-size: 3.5897435897vw;
    line-height: 1.6;
    display: block;
  }
}

/* =========================== */
.SPJ-partner {
  position: relative;
  min-height: 620px;
  padding: 65px 20px;
  box-sizing: border-box;
  background: #d94473;
  color: #fff;
}
.SPJ-partner::before {
  content: "";
  display: block;
  width: 138px;
  height: 79px;
  background: url(../img/spj/partner-truck.png) no-repeat center/contain;
  position: absolute;
  left: 3vw;
  top: -79px;
}
.SPJ-partner .sect-inner {
  position: relative;
  z-index: 2;
}
.SPJ-partner__content {
  width: 58%;
  max-width: 620px;
}
@media screen and (max-width: 767px) {
  .SPJ-partner__content {
    width: 100%;
    max-width: none;
  }
}
.SPJ-partner .SPJ-about__title-2 {
  color: #fff;
  font-size: 30px;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .SPJ-partner .SPJ-about__title-2 {
    font-size: 6.4102564103vw;
  }
}
.SPJ-partner .SPJ-about__title-2 span {
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  .SPJ-partner .SPJ-about__title-2 span {
    font-size: 120%;
  }
}
.SPJ-partner__body {
  color: #fff;
}
.SPJ-partner__tags {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 15px;
  max-width: 470px;
  margin: 0 0 10px;
  padding: 0;
  list-style: none;
}
.SPJ-partner__tags li {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: 5px 25px;
  border-radius: 50px;
  box-sizing: border-box;
  background: #fff;
  color: #d94473;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .SPJ-partner__tags li {
    min-height: 32px;
    padding: 5px 15px;
    font-size: 13px;
  }
}
.SPJ-partner__tags .SPJ-partner__tags-other {
  min-height: auto;
  padding: 0;
  background: transparent;
  color: #fff;
  font-size: 15px;
}
@media screen and (max-width: 767px) {
  .SPJ-partner__tags .SPJ-partner__tags-other {
    font-size: 13px;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-partner__tags {
    max-width: 100%;
    gap: 8px;
    margin-bottom: 20px;
  }
}
.SPJ-partner__lead {
  margin: 0 0 35px;
  font-size: 15px;
  font-weight: 600;
  line-height: 2;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .SPJ-partner__lead {
    margin-bottom: 25px;
    font-size: 14px;
    line-height: 1.9;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-partner__lead br {
    display: none;
  }
}
.SPJ-partner__description {
  margin: 0 0 38px;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.9;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .SPJ-partner__description {
    margin-bottom: 30px;
    font-size: 14px;
    line-height: 1.9;
  }
}
.SPJ-partner .c-btn {
  justify-content: flex-start;
  align-items: flex-start;
  text-align: left;
}
.SPJ-partner__visual {
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  bottom: 0;
  width: 48%;
  overflow: hidden;
  clip-path: ellipse(100% 85% at 100% 50%);
}
.SPJ-partner__visual img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: left center;
}
@media screen and (max-width: 767px) {
  .SPJ-partner__visual img {
    object-position: center 35%;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-partner__visual {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    width: calc(100% + 30px);
    height: 320px;
    margin: 35px -15px 0;
    clip-path: ellipse(85% 100% at 50% 100%);
  }
}
@media screen and (max-width: 767px) {
  .SPJ-partner__title-2 {
    font-size: clamp(23px, 5.5vw, 30px);
    line-height: 1.5;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-partner__title-2 br {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-partner {
    min-height: auto;
    padding: 45px 15px 0;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-partner__header {
    margin-bottom: 25px;
  }
}
/* =========================== */
.SPJ-contact {
  padding: 60px 20px;
  background: linear-gradient(105deg, #f8e0e9 0%, #f0e8f5 45%, #dceeff 100%);
}
.SPJ-contact .sect-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 530px;
  align-items: center;
  gap: 40px;
}
@media screen and (max-width: 767px) {
  .SPJ-contact .sect-inner {
    grid-template-columns: 1fr;
    gap: 30px;
  }
}
.SPJ-contact__banner {
  width: 100%;
}
.SPJ-contact__link {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 180px;
  padding: 25px 30px;
  border: 3px solid #d94473;
  border-radius: 11px;
  box-sizing: border-box;
  background: linear-gradient(0deg, #ffedf3 0%, #ffffff 57%);
  color: #d94473;
  text-decoration: none;
  transition: box-shadow 0.3s, transform 0.3s;
}
.SPJ-contact__link:hover {
  transform: translateY(-3px);
  box-shadow: 0 6px 15px rgba(219, 64, 117, 0.2);
  opacity: 1;
}
.SPJ-contact__link:focus-visible {
  outline: 3px solid #3699ff;
  outline-offset: 4px;
}
@media screen and (max-width: 767px) {
  .SPJ-contact__link {
    min-height: 160px;
    padding: 20px 15px;
    border-width: 2px;
    border-radius: 10px;
  }
}
.SPJ-contact__banner-text {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}
.SPJ-contact__banner-sub {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .SPJ-contact__banner-sub {
    font-size: 14px;
  }
}
.SPJ-contact__banner-title {
  font-size: 30px;
  font-weight: 700;
  line-height: 1.4;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .SPJ-contact__banner-title {
    font-size: clamp(18px, 5vw, 25px);
    white-space: normal;
  }
}
.SPJ-contact__character {
  position: absolute;
  z-index: 1;
  right: 30px;
  bottom: 0;
  width: 160px;
  height: auto;
  max-height: 200px;
  object-fit: contain;
  object-position: bottom;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .SPJ-contact__character {
    right: 20px;
    width: 125px;
    max-height: 175px;
  }
}
.SPJ-contact__arrow {
  position: absolute;
  z-index: 3;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  width: 21px;
  height: 19px;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .SPJ-contact__arrow {
    right: 12px;
    font-size: 22px;
  }
}
@media screen and (max-width: 767px) {
  .SPJ-contact {
    padding: 45px 15px 55px;
  }
}

/* =========================== */
.is-hide {
  display: none !important;
}

/* =========================== */
/* =========================== */
@-moz-document url-prefix() {}
/* -------------------
  OBJECT FIT FOR IE
--------------------*/
.cover {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover;";
}
/*# sourceMappingURL=../maps/spj.css.map */
