@charset "UTF-8";
@property --f {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --mt {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --mb {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --ml {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --mr {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --pt {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --pb {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --pl {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --pr {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --ls {
  syntax: "<number>";
  inherits: false;
  initial-value: 0;
}
* {
  margin: 0;
  padding: 0;
}

body {
  overflow-x: hidden;
  font-size: clamp(14px, 0.9375vw, 18px);
  color: #333;
  line-height: 1.6;
  letter-spacing: 0.111em;
}

dl,
ol,
ul {
  margin: 0 !important;
  padding: 0 !important;
}

address {
  margin-bottom: 0;
}

.pc {
  display: block !important;
}

.sp {
  display: none !important;
}

.tab {
  display: none !important;
}

img {
  display: block;
  max-width: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
  margin-bottom: 0;
}

[mt] {
  margin-top: calc(var(--mt) * min(1, 100vw / 1920px));
}

[mb] {
  margin-bottom: calc(var(--mb) * min(1, 100vw / 1920px));
}

[ml] {
  margin-left: calc(var(--ml) * min(1, 100vw / 1920px));
}

[mr] {
  margin-right: calc(var(--mr) * min(1, 100vw / 1920px));
}

.mt10 {
  margin-top: 0.52vw;
}

.mb10 {
  margin-bottom: 0.52vw;
}

.ml10 {
  margin-left: 0.52vw;
}

.mr10 {
  margin-right: 0.52vw;
}

.my10 {
  margin-top: 0.52vw;
  margin-bottom: 0.52vw;
}

.mx10 {
  margin-left: 0.52vw;
  margin-right: 0.52vw;
}

.mt20 {
  margin-top: 1.04vw;
}

.mb20 {
  margin-bottom: 1.04vw;
}

.ml20 {
  margin-left: 1.04vw;
}

.mr20 {
  margin-right: 1.04vw;
}

.my20 {
  margin-top: 1.04vw;
  margin-bottom: 1.04vw;
}

.mx20 {
  margin-left: 1.04vw;
  margin-right: 1.04vw;
}

.mt30 {
  margin-top: 1.56vw;
}

.mb30 {
  margin-bottom: 1.56vw;
}

.ml30 {
  margin-left: 1.56vw;
}

.mr30 {
  margin-right: 1.56vw;
}

.my30 {
  margin-top: 1.56vw;
  margin-bottom: 1.56vw;
}

.mx30 {
  margin-left: 1.56vw;
  margin-right: 1.56vw;
}

.mt35 {
  margin-top: 1.8229166667vw;
}

.mb35 {
  margin-bottom: 1.8229166667vw;
}

.ml35 {
  margin-left: 1.8229166667vw;
}

.mr35 {
  margin-right: 1.8229166667vw;
}

.my35 {
  margin-top: 1.8229166667vw;
  margin-bottom: 1.8229166667vw;
}

.mx35 {
  margin-left: 1.8229166667vw;
  margin-right: 1.8229166667vw;
}

.mt40 {
  margin-top: 2.08vw;
}

.mb40 {
  margin-bottom: 2.08vw;
}

.ml40 {
  margin-left: 2.08vw;
}

.mr40 {
  margin-right: 2.08vw;
}

.my40 {
  margin-top: 2.08vw;
  margin-bottom: 2.08vw;
}

.mx40 {
  margin-left: 2.08vw;
  margin-right: 2.08vw;
}

.mt50 {
  margin-top: 2.6vw;
}

.mb50 {
  margin-bottom: 2.6vw;
}

.ml50 {
  margin-left: 2.6vw;
}

.mr50 {
  margin-right: 2.6vw;
}

.my50 {
  margin-top: 2.6vw;
  margin-bottom: 2.6vw;
}

.mx50 {
  margin-left: 2.6vw;
  margin-right: 2.6vw;
}

.mt60 {
  margin-top: 3.12vw;
}

.mb60 {
  margin-bottom: 3.12vw;
}

.ml60 {
  margin-left: 3.12vw;
}

.mr60 {
  margin-right: 3.12vw;
}

.my60 {
  margin-top: 3.12vw;
  margin-bottom: 3.12vw;
}

.mx60 {
  margin-left: 3.12vw;
  margin-right: 3.12vw;
}

.mt70 {
  margin-top: 3.64vw;
}

.mb70 {
  margin-bottom: 3.64vw;
}

.ml70 {
  margin-left: 3.64vw;
}

.mr70 {
  margin-right: 3.64vw;
}

.my70 {
  margin-top: 3.64vw;
  margin-bottom: 3.64vw;
}

.mx70 {
  margin-left: 3.64vw;
  margin-right: 3.64vw;
}

.mt80 {
  margin-top: 4.16vw;
}

.mb80 {
  margin-bottom: 4.16vw;
}

.ml80 {
  margin-left: 4.16vw;
}

.mr80 {
  margin-right: 4.16vw;
}

.my80 {
  margin-top: 4.16vw;
  margin-bottom: 4.16vw;
}

.mx80 {
  margin-left: 4.16vw;
  margin-right: 4.16vw;
}

.mt90 {
  margin-top: 4.68vw;
}

.mb90 {
  margin-bottom: 4.68vw;
}

.ml90 {
  margin-left: 4.68vw;
}

.mr90 {
  margin-right: 4.68vw;
}

.my90 {
  margin-top: 4.68vw;
  margin-bottom: 4.68vw;
}

.mx90 {
  margin-left: 4.68vw;
  margin-right: 4.68vw;
}

.mt100 {
  margin-top: 5.2vw;
}

.mb100 {
  margin-bottom: 5.2vw;
}

.ml100 {
  margin-left: 5.2vw;
}

.mr100 {
  margin-right: 5.2vw;
}

.my100 {
  margin-top: 5.2vw;
  margin-bottom: 5.2vw;
}

.mx100 {
  margin-left: 5.2vw;
  margin-right: 5.2vw;
}

.mt110 {
  margin-top: 5.72vw;
}

.mb110 {
  margin-bottom: 5.72vw;
}

.ml110 {
  margin-left: 5.72vw;
}

.mr110 {
  margin-right: 5.72vw;
}

.my110 {
  margin-top: 5.72vw;
  margin-bottom: 5.72vw;
}

.mx110 {
  margin-left: 5.72vw;
  margin-right: 5.72vw;
}

.mt120 {
  margin-top: 6.24vw;
}

.mb120 {
  margin-bottom: 6.24vw;
}

.ml120 {
  margin-left: 6.24vw;
}

.mr120 {
  margin-right: 6.24vw;
}

.my120 {
  margin-top: 6.24vw;
  margin-bottom: 6.24vw;
}

.mx120 {
  margin-left: 6.24vw;
  margin-right: 6.24vw;
}

.mt130 {
  margin-top: 6.76vw;
}

.mb130 {
  margin-bottom: 6.76vw;
}

.ml130 {
  margin-left: 6.76vw;
}

.mr130 {
  margin-right: 6.76vw;
}

.my130 {
  margin-top: 6.76vw;
  margin-bottom: 6.76vw;
}

.mx130 {
  margin-left: 6.76vw;
  margin-right: 6.76vw;
}

.mt140 {
  margin-top: 7.28vw;
}

.mb140 {
  margin-bottom: 7.28vw;
}

.ml140 {
  margin-left: 7.28vw;
}

.mr140 {
  margin-right: 7.28vw;
}

.my140 {
  margin-top: 7.28vw;
  margin-bottom: 7.28vw;
}

.mx140 {
  margin-left: 7.28vw;
  margin-right: 7.28vw;
}

.mt150 {
  margin-top: 7.8vw;
}

.mb150 {
  margin-bottom: 7.8vw;
}

.ml150 {
  margin-left: 7.8vw;
}

.mr150 {
  margin-right: 7.8vw;
}

.my150 {
  margin-top: 7.8vw;
  margin-bottom: 7.8vw;
}

.mx150 {
  margin-left: 7.8vw;
  margin-right: 7.8vw;
}

.mt160 {
  margin-top: 8.32vw;
}

.mb160 {
  margin-bottom: 8.32vw;
}

.ml160 {
  margin-left: 8.32vw;
}

.mr160 {
  margin-right: 8.32vw;
}

.my160 {
  margin-top: 8.32vw;
  margin-bottom: 8.32vw;
}

.mx160 {
  margin-left: 8.32vw;
  margin-right: 8.32vw;
}

.mt170 {
  margin-top: 8.84vw;
}

.mb170 {
  margin-bottom: 8.84vw;
}

.ml170 {
  margin-left: 8.84vw;
}

.mr170 {
  margin-right: 8.84vw;
}

.my170 {
  margin-top: 8.84vw;
  margin-bottom: 8.84vw;
}

.mx170 {
  margin-left: 8.84vw;
  margin-right: 8.84vw;
}

.mt180 {
  margin-top: 9.36vw;
}

.mb180 {
  margin-bottom: 9.36vw;
}

.ml180 {
  margin-left: 9.36vw;
}

.mr180 {
  margin-right: 9.36vw;
}

.my180 {
  margin-top: 9.36vw;
  margin-bottom: 9.36vw;
}

.mx180 {
  margin-left: 9.36vw;
  margin-right: 9.36vw;
}

.mt190 {
  margin-top: 9.88vw;
}

.mb190 {
  margin-bottom: 9.88vw;
}

.ml190 {
  margin-left: 9.88vw;
}

.mr190 {
  margin-right: 9.88vw;
}

.my190 {
  margin-top: 9.88vw;
  margin-bottom: 9.88vw;
}

.mx190 {
  margin-left: 9.88vw;
  margin-right: 9.88vw;
}

.mt200 {
  margin-top: 10.4vw;
}

.mb200 {
  margin-bottom: 10.4vw;
}

.ml200 {
  margin-left: 10.4vw;
}

.mr200 {
  margin-right: 10.4vw;
}

.my200 {
  margin-top: 10.4vw;
  margin-bottom: 10.4vw;
}

.mx200 {
  margin-left: 10.4vw;
  margin-right: 10.4vw;
}

.mt210 {
  margin-top: 10.92vw;
}

.mb210 {
  margin-bottom: 10.92vw;
}

.ml210 {
  margin-left: 10.92vw;
}

.mr210 {
  margin-right: 10.92vw;
}

.my210 {
  margin-top: 10.92vw;
  margin-bottom: 10.92vw;
}

.mx210 {
  margin-left: 10.92vw;
  margin-right: 10.92vw;
}

.mt220 {
  margin-top: 11.44vw;
}

.mb220 {
  margin-bottom: 11.44vw;
}

.ml220 {
  margin-left: 11.44vw;
}

.mr220 {
  margin-right: 11.44vw;
}

.my220 {
  margin-top: 11.44vw;
  margin-bottom: 11.44vw;
}

.mx220 {
  margin-left: 11.44vw;
  margin-right: 11.44vw;
}

.mt230 {
  margin-top: 11.96vw;
}

.mb230 {
  margin-bottom: 11.96vw;
}

.ml230 {
  margin-left: 11.96vw;
}

.mr230 {
  margin-right: 11.96vw;
}

.my230 {
  margin-top: 11.96vw;
  margin-bottom: 11.96vw;
}

.mx230 {
  margin-left: 11.96vw;
  margin-right: 11.96vw;
}

.mt240 {
  margin-top: 12.48vw;
}

.mb240 {
  margin-bottom: 12.48vw;
}

.ml240 {
  margin-left: 12.48vw;
}

.mr240 {
  margin-right: 12.48vw;
}

.my240 {
  margin-top: 12.48vw;
  margin-bottom: 12.48vw;
}

.mx240 {
  margin-left: 12.48vw;
  margin-right: 12.48vw;
}

.mt250 {
  margin-top: 13vw;
}

.mb250 {
  margin-bottom: 13vw;
}

.ml250 {
  margin-left: 13vw;
}

.mr250 {
  margin-right: 13vw;
}

.my250 {
  margin-top: 13vw;
  margin-bottom: 13vw;
}

.mx250 {
  margin-left: 13vw;
  margin-right: 13vw;
}

.mt260 {
  margin-top: 13.52vw;
}

.mb260 {
  margin-bottom: 13.52vw;
}

.ml260 {
  margin-left: 13.52vw;
}

.mr260 {
  margin-right: 13.52vw;
}

.my260 {
  margin-top: 13.52vw;
  margin-bottom: 13.52vw;
}

.mx260 {
  margin-left: 13.52vw;
  margin-right: 13.52vw;
}

.mt270 {
  margin-top: 14.04vw;
}

.mb270 {
  margin-bottom: 14.04vw;
}

.ml270 {
  margin-left: 14.04vw;
}

.mr270 {
  margin-right: 14.04vw;
}

.my270 {
  margin-top: 14.04vw;
  margin-bottom: 14.04vw;
}

.mx270 {
  margin-left: 14.04vw;
  margin-right: 14.04vw;
}

.mt280 {
  margin-top: 14.56vw;
}

.mb280 {
  margin-bottom: 14.56vw;
}

.ml280 {
  margin-left: 14.56vw;
}

.mr280 {
  margin-right: 14.56vw;
}

.my280 {
  margin-top: 14.56vw;
  margin-bottom: 14.56vw;
}

.mx280 {
  margin-left: 14.56vw;
  margin-right: 14.56vw;
}

.mt290 {
  margin-top: 15.08vw;
}

.mb290 {
  margin-bottom: 15.08vw;
}

.ml290 {
  margin-left: 15.08vw;
}

.mr290 {
  margin-right: 15.08vw;
}

.my290 {
  margin-top: 15.08vw;
  margin-bottom: 15.08vw;
}

.mx290 {
  margin-left: 15.08vw;
  margin-right: 15.08vw;
}

.mt300 {
  margin-top: 15.6vw;
}

.mb300 {
  margin-bottom: 15.6vw;
}

.ml300 {
  margin-left: 15.6vw;
}

.mr300 {
  margin-right: 15.6vw;
}

.my300 {
  margin-top: 15.6vw;
  margin-bottom: 15.6vw;
}

.mx300 {
  margin-left: 15.6vw;
  margin-right: 15.6vw;
}

.mb22 {
  margin-bottom: min(1.1458333333vw, 22px);
}

.mb15 {
  margin-bottom: min(0.78125vw, 15px);
}

.ml_auto {
  margin-left: auto;
}

.mr_auto {
  margin-right: auto;
}

[pt] {
  padding-top: calc(var(--pt) * min(1, 100vw / 1920px));
}

[pb] {
  padding-bottom: calc(var(--pb) * min(1, 100vw / 1920px));
}

[pl] {
  padding-left: calc(var(--pl) * min(1, 100vw / 1920px));
}

[pr] {
  padding-right: calc(var(--pr) * min(1, 100vw / 1920px));
}

.pt10 {
  padding-top: 0.52vw;
}

.pb10 {
  padding-bottom: 0.52vw;
}

.pl10 {
  padding-left: 0.52vw;
}

.pr10 {
  padding-right: 0.52vw;
}

.py10 {
  padding-top: 0.52vw;
  padding-bottom: 0.52vw;
}

.px10 {
  padding-left: 0.52vw;
  padding-right: 0.52vw;
}

.pt20 {
  padding-top: 1.04vw;
}

.pb20 {
  padding-bottom: 1.04vw;
}

.pl20 {
  padding-left: 1.04vw;
}

.pr20 {
  padding-right: 1.04vw;
}

.py20 {
  padding-top: 1.04vw;
  padding-bottom: 1.04vw;
}

.px20 {
  padding-left: 1.04vw;
  padding-right: 1.04vw;
}

.pt30 {
  padding-top: 1.56vw;
}

.pb30 {
  padding-bottom: 1.56vw;
}

.pl30 {
  padding-left: 1.56vw;
}

.pr30 {
  padding-right: 1.56vw;
}

.py30 {
  padding-top: 1.56vw;
  padding-bottom: 1.56vw;
}

.px30 {
  padding-left: 1.56vw;
  padding-right: 1.56vw;
}

.pt40 {
  padding-top: 2.08vw;
}

.pb40 {
  padding-bottom: 2.08vw;
}

.pl40 {
  padding-left: 2.08vw;
}

.pr40 {
  padding-right: 2.08vw;
}

.py40 {
  padding-top: 2.08vw;
  padding-bottom: 2.08vw;
}

.px40 {
  padding-left: 2.08vw;
  padding-right: 2.08vw;
}

.pt50 {
  padding-top: 2.6vw;
}

.pb50 {
  padding-bottom: 2.6vw;
}

.pl50 {
  padding-left: 2.6vw;
}

.pr50 {
  padding-right: 2.6vw;
}

.py50 {
  padding-top: 2.6vw;
  padding-bottom: 2.6vw;
}

.px50 {
  padding-left: 2.6vw;
  padding-right: 2.6vw;
}

.pt60 {
  padding-top: 3.12vw;
}

.pb60 {
  padding-bottom: 3.12vw;
}

.pl60 {
  padding-left: 3.12vw;
}

.pr60 {
  padding-right: 3.12vw;
}

.py60 {
  padding-top: 3.12vw;
  padding-bottom: 3.12vw;
}

.px60 {
  padding-left: 3.12vw;
  padding-right: 3.12vw;
}

.pt70 {
  padding-top: 3.64vw;
}

.pb70 {
  padding-bottom: 3.64vw;
}

.pl70 {
  padding-left: 3.64vw;
}

.pr70 {
  padding-right: 3.64vw;
}

.py70 {
  padding-top: 3.64vw;
  padding-bottom: 3.64vw;
}

.px70 {
  padding-left: 3.64vw;
  padding-right: 3.64vw;
}

.pt80 {
  padding-top: 4.16vw;
}

.pb80 {
  padding-bottom: 4.16vw;
}

.pl80 {
  padding-left: 4.16vw;
}

.pr80 {
  padding-right: 4.16vw;
}

.py80 {
  padding-top: 4.16vw;
  padding-bottom: 4.16vw;
}

.px80 {
  padding-left: 4.16vw;
  padding-right: 4.16vw;
}

.pt90 {
  padding-top: 4.68vw;
}

.pb90 {
  padding-bottom: 4.68vw;
}

.pl90 {
  padding-left: 4.68vw;
}

.pr90 {
  padding-right: 4.68vw;
}

.py90 {
  padding-top: 4.68vw;
  padding-bottom: 4.68vw;
}

.px90 {
  padding-left: 4.68vw;
  padding-right: 4.68vw;
}

.pt100 {
  padding-top: 5.2vw;
}

.pb100 {
  padding-bottom: 5.2vw;
}

.pl100 {
  padding-left: 5.2vw;
}

.pr100 {
  padding-right: 5.2vw;
}

.py100 {
  padding-top: 5.2vw;
  padding-bottom: 5.2vw;
}

.px100 {
  padding-left: 5.2vw;
  padding-right: 5.2vw;
}

.pt110 {
  padding-top: 5.72vw;
}

.pb110 {
  padding-bottom: 5.72vw;
}

.pl110 {
  padding-left: 5.72vw;
}

.pr110 {
  padding-right: 5.72vw;
}

.py110 {
  padding-top: 5.72vw;
  padding-bottom: 5.72vw;
}

.px110 {
  padding-left: 5.72vw;
  padding-right: 5.72vw;
}

.pt120 {
  padding-top: 6.24vw;
}

.pb120 {
  padding-bottom: 6.24vw;
}

.pl120 {
  padding-left: 6.24vw;
}

.pr120 {
  padding-right: 6.24vw;
}

.py120 {
  padding-top: 6.24vw;
  padding-bottom: 6.24vw;
}

.px120 {
  padding-left: 6.24vw;
  padding-right: 6.24vw;
}

.pt130 {
  padding-top: 6.76vw;
}

.pb130 {
  padding-bottom: 6.76vw;
}

.pl130 {
  padding-left: 6.76vw;
}

.pr130 {
  padding-right: 6.76vw;
}

.py130 {
  padding-top: 6.76vw;
  padding-bottom: 6.76vw;
}

.px130 {
  padding-left: 6.76vw;
  padding-right: 6.76vw;
}

.pt140 {
  padding-top: 7.28vw;
}

.pb140 {
  padding-bottom: 7.28vw;
}

.pl140 {
  padding-left: 7.28vw;
}

.pr140 {
  padding-right: 7.28vw;
}

.py140 {
  padding-top: 7.28vw;
  padding-bottom: 7.28vw;
}

.px140 {
  padding-left: 7.28vw;
  padding-right: 7.28vw;
}

.pt150 {
  padding-top: 7.8vw;
}

.pb150 {
  padding-bottom: 7.8vw;
}

.pl150 {
  padding-left: 7.8vw;
}

.pr150 {
  padding-right: 7.8vw;
}

.py150 {
  padding-top: 7.8vw;
  padding-bottom: 7.8vw;
}

.px150 {
  padding-left: 7.8vw;
  padding-right: 7.8vw;
}

.pt160 {
  padding-top: 8.32vw;
}

.pb160 {
  padding-bottom: 8.32vw;
}

.pl160 {
  padding-left: 8.32vw;
}

.pr160 {
  padding-right: 8.32vw;
}

.py160 {
  padding-top: 8.32vw;
  padding-bottom: 8.32vw;
}

.px160 {
  padding-left: 8.32vw;
  padding-right: 8.32vw;
}

.pt170 {
  padding-top: 8.84vw;
}

.pb170 {
  padding-bottom: 8.84vw;
}

.pl170 {
  padding-left: 8.84vw;
}

.pr170 {
  padding-right: 8.84vw;
}

.py170 {
  padding-top: 8.84vw;
  padding-bottom: 8.84vw;
}

.px170 {
  padding-left: 8.84vw;
  padding-right: 8.84vw;
}

.pt180 {
  padding-top: 9.36vw;
}

.pb180 {
  padding-bottom: 9.36vw;
}

.pl180 {
  padding-left: 9.36vw;
}

.pr180 {
  padding-right: 9.36vw;
}

.py180 {
  padding-top: 9.36vw;
  padding-bottom: 9.36vw;
}

.px180 {
  padding-left: 9.36vw;
  padding-right: 9.36vw;
}

.pt190 {
  padding-top: 9.88vw;
}

.pb190 {
  padding-bottom: 9.88vw;
}

.pl190 {
  padding-left: 9.88vw;
}

.pr190 {
  padding-right: 9.88vw;
}

.py190 {
  padding-top: 9.88vw;
  padding-bottom: 9.88vw;
}

.px190 {
  padding-left: 9.88vw;
  padding-right: 9.88vw;
}

.pt200 {
  padding-top: 10.4vw;
}

.pb200 {
  padding-bottom: 10.4vw;
}

.pl200 {
  padding-left: 10.4vw;
}

.pr200 {
  padding-right: 10.4vw;
}

.py200 {
  padding-top: 10.4vw;
  padding-bottom: 10.4vw;
}

.px200 {
  padding-left: 10.4vw;
  padding-right: 10.4vw;
}

.pt210 {
  padding-top: 10.92vw;
}

.pb210 {
  padding-bottom: 10.92vw;
}

.pl210 {
  padding-left: 10.92vw;
}

.pr210 {
  padding-right: 10.92vw;
}

.py210 {
  padding-top: 10.92vw;
  padding-bottom: 10.92vw;
}

.px210 {
  padding-left: 10.92vw;
  padding-right: 10.92vw;
}

.pt220 {
  padding-top: 11.44vw;
}

.pb220 {
  padding-bottom: 11.44vw;
}

.pl220 {
  padding-left: 11.44vw;
}

.pr220 {
  padding-right: 11.44vw;
}

.py220 {
  padding-top: 11.44vw;
  padding-bottom: 11.44vw;
}

.px220 {
  padding-left: 11.44vw;
  padding-right: 11.44vw;
}

.pt230 {
  padding-top: 11.96vw;
}

.pb230 {
  padding-bottom: 11.96vw;
}

.pl230 {
  padding-left: 11.96vw;
}

.pr230 {
  padding-right: 11.96vw;
}

.py230 {
  padding-top: 11.96vw;
  padding-bottom: 11.96vw;
}

.px230 {
  padding-left: 11.96vw;
  padding-right: 11.96vw;
}

.pt240 {
  padding-top: 12.48vw;
}

.pb240 {
  padding-bottom: 12.48vw;
}

.pl240 {
  padding-left: 12.48vw;
}

.pr240 {
  padding-right: 12.48vw;
}

.py240 {
  padding-top: 12.48vw;
  padding-bottom: 12.48vw;
}

.px240 {
  padding-left: 12.48vw;
  padding-right: 12.48vw;
}

.pt250 {
  padding-top: 13vw;
}

.pb250 {
  padding-bottom: 13vw;
}

.pl250 {
  padding-left: 13vw;
}

.pr250 {
  padding-right: 13vw;
}

.py250 {
  padding-top: 13vw;
  padding-bottom: 13vw;
}

.px250 {
  padding-left: 13vw;
  padding-right: 13vw;
}

.pt260 {
  padding-top: 13.52vw;
}

.pb260 {
  padding-bottom: 13.52vw;
}

.pl260 {
  padding-left: 13.52vw;
}

.pr260 {
  padding-right: 13.52vw;
}

.py260 {
  padding-top: 13.52vw;
  padding-bottom: 13.52vw;
}

.px260 {
  padding-left: 13.52vw;
  padding-right: 13.52vw;
}

.pt270 {
  padding-top: 14.04vw;
}

.pb270 {
  padding-bottom: 14.04vw;
}

.pl270 {
  padding-left: 14.04vw;
}

.pr270 {
  padding-right: 14.04vw;
}

.py270 {
  padding-top: 14.04vw;
  padding-bottom: 14.04vw;
}

.px270 {
  padding-left: 14.04vw;
  padding-right: 14.04vw;
}

.pt280 {
  padding-top: 14.56vw;
}

.pb280 {
  padding-bottom: 14.56vw;
}

.pl280 {
  padding-left: 14.56vw;
}

.pr280 {
  padding-right: 14.56vw;
}

.py280 {
  padding-top: 14.56vw;
  padding-bottom: 14.56vw;
}

.px280 {
  padding-left: 14.56vw;
  padding-right: 14.56vw;
}

.pt290 {
  padding-top: 15.08vw;
}

.pb290 {
  padding-bottom: 15.08vw;
}

.pl290 {
  padding-left: 15.08vw;
}

.pr290 {
  padding-right: 15.08vw;
}

.py290 {
  padding-top: 15.08vw;
  padding-bottom: 15.08vw;
}

.px290 {
  padding-left: 15.08vw;
  padding-right: 15.08vw;
}

.pt300 {
  padding-top: 15.6vw;
}

.pb300 {
  padding-bottom: 15.6vw;
}

.pl300 {
  padding-left: 15.6vw;
}

.pr300 {
  padding-right: 15.6vw;
}

.py300 {
  padding-top: 15.6vw;
  padding-bottom: 15.6vw;
}

.px300 {
  padding-left: 15.6vw;
  padding-right: 15.6vw;
}

/*----------------------------------------------------------------

フォントサイズ

----------------------------------------------------------------*/
[f] {
  font-size: max(calc(var(--f) * 0.5), calc(var(--f) * min(1, 100vw / 1920px)));
}

.f_10 {
  font-size: min(10px, 0.5208333333vw);
}

.f_12 {
  font-size: clamp(10px, 0.625vw, 12px);
}

.f_14 {
  font-size: clamp(12px, 0.7291666667vw, 14px);
}

.f_16 {
  font-size: clamp(14px, 0.8333333333vw, 16px);
}

.f_18 {
  font-size: clamp(14px, 0.9375vw, 18px);
}

.f_19 {
  font-size: clamp(14px, 0.9895833333vw, 19px);
}

.f_20 {
  font-size: clamp(14px, 1.1vw, 20px);
}

.f_22 {
  font-size: clamp(16px, 1.15vw, 22px);
}

.f_24 {
  font-size: clamp(16px, 1.25vw, 24px);
}

.f_24.material-symbols-outlined {
  font-size: clamp(16px, 1.25vw, 24px);
}

.f_26 {
  font-size: clamp(16px, 1.35vw, 26px);
}

.f_28 {
  font-size: clamp(16px, 1.45vw, 28px);
}

.f_30 {
  font-size: clamp(16px, 1.56vw, 30px);
}

.f_32 {
  font-size: clamp(16px, 1.66vw, 32px);
}

.f_34 {
  font-size: clamp(16px, 1.77vw, 34px);
}

.f_34.material-symbols-outlined {
  font-size: clamp(24px, 1.77vw, 34px);
}

.f_36 {
  font-size: clamp(16px, 1.875vw, 36px);
}

.f_38 {
  font-size: clamp(16px, 1.98vw, 38px);
}

.f_40 {
  font-size: clamp(16px, 2.08vw, 40px);
}

.f_42 {
  font-size: clamp(16px, 2.1875vw, 42px);
}

.f_44 {
  font-size: clamp(16px, 2.3vw, 44px);
}

.f_46 {
  font-size: clamp(16px, 2.34vw, 46px);
}

.f_47 {
  font-size: clamp(16px, 2.4479166667vw, 47px);
}

.f_48 {
  font-size: clamp(16px, 2.5vw, 48px);
}

.f_50 {
  font-size: clamp(16px, 2.6vw, 50px);
}

.f_52 {
  font-size: clamp(16px, 2.7vw, 52px);
}

.f_54 {
  font-size: clamp(16px, 2.8125vw, 54px);
}

.f_56 {
  font-size: clamp(16px, 2.91vw, 56px);
}

.f_58 {
  font-size: clamp(16px, 3.02vw, 58px);
}

.f_60 {
  font-size: clamp(16px, 3.125vw, 60px);
}

.f_62 {
  font-size: clamp(16px, 3.23vw, 62px);
}

.f_64 {
  font-size: clamp(16px, 3.33vw, 64px);
}

.f_65 {
  font-size: clamp(16px, 3.3854166667vw, 65px);
}

.f_66 {
  font-size: clamp(16px, 3.43vw, 66px);
}

.f_68 {
  font-size: clamp(16px, 3.54vw, 68px);
}

.f_70 {
  font-size: clamp(16px, 3.64vw, 70px);
}

.f_72 {
  font-size: clamp(16px, 3.75vw, 72px);
}

.f_74 {
  font-size: clamp(16px, 3.85vw, 74px);
}

.f_76 {
  font-size: clamp(16px, 3.95vw, 76px);
}

.f_78 {
  font-size: clamp(16px, 4.0625vw, 78px);
}

.f_80 {
  font-size: clamp(16px, 4.16vw, 80px);
}

.f_82 {
  font-size: clamp(16px, 4.27vw, 82px);
}

.f_84 {
  font-size: clamp(16px, 4.375vw, 84px);
}

.f_86 {
  font-size: clamp(16px, 4.48vw, 86px);
}

.f_88 {
  font-size: clamp(16px, 4.58vw, 88px);
}

.f_90 {
  font-size: clamp(16px, 4.6875vw, 90px);
}

.f_92 {
  font-size: clamp(16px, 4.8vw, 92px);
}

.f_94 {
  font-size: clamp(16px, 4.9vw, 94px);
}

.f_96 {
  font-size: clamp(16px, 5vw, 96px);
}

.f_98 {
  font-size: clamp(16px, 5.1vw, 98px);
}

.f_100 {
  font-size: clamp(16px, 5.2vw, 100px);
}

.f_102 {
  font-size: clamp(16px, 5.3125vw, 102px);
}

.f_104 {
  font-size: clamp(16px, 5.41vw, 104px);
}

.f_106 {
  font-size: clamp(16px, 5.52vw, 106px);
}

.f_108 {
  font-size: clamp(16px, 5.625vw, 108px);
}

.f_110 {
  font-size: clamp(16px, 5.73vw, 110px);
}

.f_112 {
  font-size: clamp(16px, 5.83vw, 112px);
}

.f_114 {
  font-size: clamp(16px, 5.9375vw, 114px);
}

.f_116 {
  font-size: clamp(16px, 6.04vw, 116px);
}

.f_118 {
  font-size: clamp(16px, 6.14vw, 118px);
}

.f_120 {
  font-size: clamp(16px, 6.25vw, 120px);
}

.f_122 {
  font-size: clamp(16px, 6.35vw, 122px);
}

.f_124 {
  font-size: clamp(16px, 6.45vw, 124px);
}

.f_126 {
  font-size: clamp(16px, 6.5625vw, 126px);
}

.f_128 {
  font-size: clamp(16px, 6.66vw, 128px);
}

.f_130 {
  font-size: clamp(16px, 6.77vw, 130px);
}

.f_132 {
  font-size: clamp(16px, 6.87vw, 132px);
}

.f_134 {
  font-size: clamp(16px, 6.98vw, 134px);
}

.f_136 {
  font-size: clamp(16px, 7.08vw, 136px);
}

.f_138 {
  font-size: clamp(16px, 7.18vw, 138px);
}

.f_140 {
  font-size: clamp(16px, 7.23vw, 140px);
}

.f_142 {
  font-size: clamp(16px, 7.34vw, 142px);
}

.f_144 {
  font-size: clamp(16px, 7.5vw, 144px);
}

.f_146 {
  font-size: clamp(16px, 7.6vw, 146px);
}

.f_148 {
  font-size: clamp(16px, 7.7vw, 148px);
}

.f_150 {
  font-size: clamp(16px, 7.8vw, 150px);
}

.f_152 {
  font-size: clamp(16px, 7.9vw, 152px);
}

.f_154 {
  font-size: clamp(16px, 8.02vw, 154px);
}

.f_156 {
  font-size: clamp(16px, 8.125vw, 156px);
}

.f_158 {
  font-size: clamp(16px, 8.23vw, 158px);
}

.f_160 {
  font-size: clamp(16px, 8.33vw, 160px);
}

.f_162 {
  font-size: clamp(16px, 8.4375vw, 162px);
}

.f_164 {
  font-size: clamp(16px, 8.54vw, 164px);
}

/*----------------------------------------------------------------

角丸

----------------------------------------------------------------*/
.radius10 {
  border-radius: 10px !important;
  overflow: hidden;
}

.radius20 {
  border-radius: 20px !important;
  overflow: hidden;
}

.radius30 {
  border-radius: 30px !important;
  overflow: hidden;
}

.radius40 {
  border-radius: 40px !important;
  overflow: hidden;
}

.radius50 {
  border-radius: 50px !important;
  overflow: hidden;
}

.radius60 {
  border-radius: 60px !important;
  overflow: hidden;
}

.radius70 {
  border-radius: 70px !important;
  overflow: hidden;
}

.radius80 {
  border-radius: 80px !important;
  overflow: hidden;
}

.radius90 {
  border-radius: 90px !important;
  overflow: hidden;
}

.radius100 {
  border-radius: 100px !important;
  overflow: hidden;
}

/*----------------------------------------------------------------

文字の横の間隔(letter-spacing)と
文字の縦の間隔(line-height)

----------------------------------------------------------------*/
[ls] {
  letter-spacing: calc(var(--ls) * 1px / var(--f) * 1em);
}

.ls_0 {
  letter-spacing: 0em;
}

.ls_20 {
  letter-spacing: 0.02em;
}

.ls_40 {
  letter-spacing: 0.04em;
}

.ls_60 {
  letter-spacing: 0.06em;
}

.ls_80 {
  letter-spacing: 0.08em;
}

.ls_100 {
  letter-spacing: 0.1em;
}

.ls_120 {
  letter-spacing: 0.12em;
}

.ls_140 {
  letter-spacing: 0.14em;
}

.ls_160 {
  letter-spacing: 0.16em;
}

.ls_180 {
  letter-spacing: 0.18em;
}

.ls_200 {
  letter-spacing: 0.2em;
}

.ls_220 {
  letter-spacing: 0.22em;
}

.ls_240 {
  letter-spacing: 0.24em;
}

.ls_260 {
  letter-spacing: 0.26em;
}

.ls_280 {
  letter-spacing: 0.28em;
}

.ls_300 {
  letter-spacing: 0.3em;
}

.ls_320 {
  letter-spacing: 0.32em;
}

.ls_340 {
  letter-spacing: 0.34em;
}

.ls_360 {
  letter-spacing: 0.36em;
}

.ls_380 {
  letter-spacing: 0.38em;
}

.ls_400 {
  letter-spacing: 0.4em;
}

.ls_420 {
  letter-spacing: 0.42em;
}

.ls_440 {
  letter-spacing: 0.44em;
}

.ls_460 {
  letter-spacing: 0.46em;
}

.ls_480 {
  letter-spacing: 0.48em;
}

.ls_500 {
  letter-spacing: 0.5em;
}

.ls_520 {
  letter-spacing: 0.52em;
}

.ls_540 {
  letter-spacing: 0.54em;
}

.ls_560 {
  letter-spacing: 0.56em;
}

.ls_580 {
  letter-spacing: 0.58em;
}

.ls_600 {
  letter-spacing: 0.6em;
}

.ls_620 {
  letter-spacing: 0.62em;
}

.ls_640 {
  letter-spacing: 0.64em;
}

.ls_660 {
  letter-spacing: 0.66em;
}

.ls_680 {
  letter-spacing: 0.68em;
}

.lh_0 {
  line-height: 0;
}

.lh_2 {
  line-height: 0.2;
}

.lh_4 {
  line-height: 0.4;
}

.lh_6 {
  line-height: 0.6;
}

.lh_8 {
  line-height: 0.8;
}

.lh_10 {
  line-height: 1;
}

.lh_11 {
  line-height: 1.1;
}

.lh_12 {
  line-height: 1.2;
}

.lh_13 {
  line-height: 1.3;
}

.lh_14 {
  line-height: 1.4;
}

.lh_15 {
  line-height: 1.5;
}

.lh_155 {
  line-height: 1.55;
}

.lh_16 {
  line-height: 1.6;
}

.lh_17 {
  line-height: 1.7;
}

.lh_18 {
  line-height: 1.8;
}

.lh_19 {
  line-height: 1.9;
}

.lh_20 {
  line-height: 2;
}

.lh_22 {
  line-height: 2.2;
}

.lh_24 {
  line-height: 2.4;
}

.lh_26 {
  line-height: 2.6;
}

.lh_28 {
  line-height: 2.8;
}

.lh_30 {
  line-height: 3;
}

.lh_32 {
  line-height: 3.2;
}

.lh_34 {
  line-height: 3.4;
}

.lh_36 {
  line-height: 3.6;
}

.lh_38 {
  line-height: 3.8;
}

.lh_40 {
  line-height: 4;
}

.lh_42 {
  line-height: 4.2;
}

.lh_44 {
  line-height: 4.4;
}

.lh_46 {
  line-height: 4.6;
}

.lh_48 {
  line-height: 4.8;
}

.lh_50 {
  line-height: 5;
}

.lh_52 {
  line-height: 5.2;
}

.lh_54 {
  line-height: 5.4;
}

.lh_56 {
  line-height: 5.6;
}

.lh_58 {
  line-height: 5.8;
}

.lh_154 {
  line-height: 1.54;
}

.lh_128 {
  line-height: 1.28;
}

.lh_175 {
  line-height: 1.75;
}

/*----------------------------------------------------------------

ルール

----------------------------------------------------------------*/

::-moz-placeholder {
  font-size: 16px;
  letter-spacing: 0.12em;
  color: #cccccc;
}

::placeholder {
  font-size: 16px;
  letter-spacing: 0.12em;
  color: #cccccc;
}

::-moz-selection {
  background-color: #025C9A;
  color: #FFFFFF;
}

::selection {
  background-color: #025C9A;
  color: #FFFFFF;
}

.max_100 {
  max-width: 100%;
}

.fit {
  width: -moz-fit-content;
  width: fit-content;
}

.ml_auto {
  margin-left: auto;
}

.mr_auto {
  margin-right: auto;
}

.material-symbols-outlined.thin {
  font-weight: 200;
}

.material-symbols-outlined.fill {
  font-variation-settings: "FILL" 1;
}

.section_title {
  background-color: #FFFFFF;
  border-radius: 0.781vw;
  border: 1px solid #025C9A;
  padding: 0.781vw 1.25vw;
  text-align: center;
  font-weight: 700;
  margin-left: auto;
  margin-right: auto;
  max-width: 740px;
  width: 38.54vw;
  position: relative;
  z-index: 1;
  letter-spacing: 2px;
  color: #025C9A;
}

.section_title span {
  color: #025C9A;
}

.section_title span.black {
  color: #1F2A33;
}

.section_title.section_title_gray03 {
  border-color: #9EAAB3;
}

.section_title.section_title_gray03::after {
  border-top-color: #9EAAB3;
}

.section_title.mb20 {
  margin-bottom: 1.602vw;
}

.section_title::before,
.section_title::after {
  content: "";
  position: absolute;
}

.section_title::before {
  bottom: -28px;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 14px solid #FFFFFF;
  z-index: 2;
}

.section_title::after {
  bottom: -30px;
  left: 50%;
  margin-left: -16px;
  border: 16px solid transparent;
  border-top: 15px solid #525863;
  z-index: -1;
}

a {
  text-decoration: none;
  color: #1F2A33;
  transition: 0.3s;
}

a * {
  transition: 0.3s;
}

a.opacity:hover {
  opacity: 0.6;
}

/***************************color****************************/
.black {
  color: #1F2A33;
}

.black02 {
  color: #484F55;
}

.main {
  color: #032437;
}

.blue {
  color: #2CA6E0;
}

.blue02 {
  color: #EDFAFF;
}

.gray01 {
  color: #525863;
}

.gray02 {
  color: #F7F7F7;
}

.gray03 {
  color: #9EAAB3;
}

.yl {
  color: #F5AA00;
}

.yl02 {
  color: #FFD643;
}

.white {
  color: white;
}

.color_032437 {
  color: #032437;
}

.color_133b73 {
  color: #133b73;
}

.color_34C4E7 {
  color: #34C4E7;
}

.color_0E7ABC {
  color: #0E7ABC;
}

.color_000 {
  color: #000;
}

.color_007931 {
  color: #007931;
}

.color_333 {
  color: #333;
}

.color_143371 {
  color: #143371;
}

.color_001e58 {
  color: #001e58;
}

.color_02a11c {
  color: #02a11c;
}

.color_ff5a00 {
  color: #ff5a00;
}

.color_263b63 {
  color: #263b63;
}

.color_000 {
  color: #000;
}

.color_f4f6f8 {
  color: #f4f6f8;
}

.color_080e5e {
  color: #080e5e;
  
}




.color_gl1 {
  color: transparent;
  background: linear-gradient(90deg, #34C4E7 0%, #0E7ABC 100%);
  -webkit-background-clip: text;
}

/***************************bg****************************/
.bg_black {
  background-color: #1F2A33;
}

.bg_black02 {
  background-color: #484F55;
}

.bg_main {
  background-color: #025C9A;
}

.bg_blue {
  background-color: #2CA6E0;
}

.bg_blue02 {
  background-color: #EDFAFF;
}

.bg_blue03 {
  background-color: #DFEFF4;
}

.bg_blue04 {
  background-color: #DDF7FF;
}

.bg_blue05 {
  background-color: #005B9A;
}

.bg_gray01 {
  background-color: #525863;
}

.bg_gray02 {
  background-color: #F7F7F7;
}

.bg_yl {
  background-color: #F5AA00;
}

.bg_yl02 {
  background-color: #FFD643;
}

.bg_yl03 {
  background-color: #FFF0B4;
}

.bg_white {
  background-color: white;
}

.bg_0e7abc {
  background-color: #0e7abc;
}

.bg_61e0ff {
  background-color: #61e0ff;
}

.bg_34C4E7 {
  background-color: #34C4E7;
}

.bg_F4F4F4 {
  background-color: #F4F4F4;
}

.bg_06c755 {
  background-color: #06c755;
}

.bg_D9F8FF {
  background-color: #D9F8FF;
}

.bg_133b73 {
  background-color: #133b73;
}

.bg_C1F3FF {
  background-color: #C1F3FF;
}

.bg_ffeb11 {
  background-color: #ffeb11;
}

.bg_00a0e9 {
  background-color: #00a0e9;
}

.bg_ff5a00 {
  background-color: #ff5a00;
}

.bg_02a11c {
  background-color: #02a11c;
}

.bg_f4f6f8 {
  background-color: #f4f6f8;
}

.bg_001e58 {
  background-color: #001e58;
}

.shadow01 {
  box-shadow: 6px 6px 6px 0 rgba(204, 213, 216, 0.8);
}

/***************************cmn_btn****************************/
.cmn_btn {
  padding: 0.78125vw 1.3vw 0.78125vw 0.52vw;
  max-width: 380px;
  width: 23.19vw;
  min-width: 220px;
  border: 1px solid #025C9A;
  display: grid !important;
  grid-template-columns: 1fr auto;
}

.cmn_btn span {
  letter-spacing: 1px;
}

.cmn_btn span.mr30 {
  text-align: center;
  margin-right: 0;
}

.cmn_btn.fit {
  width: -moz-fit-content;
  width: fit-content;
  max-width: unset;
}

.cmn_btn.large {
  max-width: 500px;
  width: 26.04vw;
}

.cmn_btn.bg_main:hover {
  background-color: #FFFFFF;
  color: #025C9A;
}

.cmn_btn.bg_main:hover span {
  color: #025C9A;
}

.cmn_btn.bg_yl02 {
  border: 2px solid #F5AA00;
}

.cmn_btn.bg_yl02 .material-symbols-outlined {
  position: relative;
  z-index: 1;
}

.cmn_btn.bg_yl02 .material-symbols-outlined::after {
  content: "";
  display: block;
  width: 30%;
  height: 30%;
  background-color: #1F2A33;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
  transition: 0.3s;
}

.cmn_btn.bg_yl02:hover {
  background-color: #FFFFFF;
  color: #1F2A33;
}

.cmn_btn.bg_yl02:hover span {
  color: #1F2A33;
}

.cmn_btn.bg_yl02:hover span.material-symbols-outlined {
  color: #F5AA00;
}

.cmn_btn.bg_yl02:hover span::after {
  background-color: #FFFFFF;
}

.cmn_btn.bg_white:hover {
  background-color: #025C9A;
  color: #FFFFFF;
}

.cmn_btn.bg_white:hover span {
  color: #FFFFFF;
}

@media (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
/*----------------------------------------------------------------

フォント読み込み

----------------------------------------------------------------*/
.fnsan_regular {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

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

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

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

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

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

.fnserif_semibold {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

.fnserif_black {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
}

.fo_medium {
  font-family: "Oswald", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

.fo_semibold {
  font-family: "Oswald", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
}

/*----------------------------------------------------------------

Pagetop ボタン

----------------------------------------------------------------*/
.wrap_btn {
  /* position: fixed;
  bottom: 10%;
  right: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  opacity: 1;
  width: 4.166vw;
  height: 4.166vw;
  z-index: 20;
  -webkit-transition: none;
  transition: none;
  border-radius: 100%; */
}

.wrap_btn_img {
  transition: 0.4s ease;
}

.wrap_btn_img:hover {
  opacity: 0.5;
}

/*----------------------------------------------------------------

animation

----------------------------------------------------------------*/
.inviewanimation {
  transform: translateY(20px);
  opacity: 0;
  transition: 1.3s cubic-bezier(0.23, 1, 0.32, 1);
}
.inviewanimation.view {
  transform: translateY(0);
  opacity: 1;
}

/*----------------------------------------------------------------

side

----------------------------------------------------------------*/
.side {
  position: fixed;
  right: 0;
  bottom: 10%;
  row-gap: 20px;
  z-index: 2;
}
.side a[href*="/contact"] {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  row-gap: 10px;
  width: clamp(35px, 3.125vw, 60px);
  min-height: clamp(100px, 11.4583333333vw, 220px);
  min-width: 100%;
  border: 3px solid #2eac42;
  border-right: unset;
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
}
.side a[href*="/contact"]:hover {
  opacity: 0.5;
}
.side a[href*="/contact"]:hover.white {
  color: #fff;
}
.side a[href*="/contact"] img {
  width: 40%;
}
.side a[href*="/contact"] .tx {
  writing-mode: vertical-rl;
}
.side {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.side #pagetop {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  row-gap: 10px;
  padding-top: calc(clamp(15px, 1.0416666667vw, 20px) * 0.9 + 0px);
}
.side #pagetop::before {
  content: "";
  position: absolute;
  top: 0;
  width: clamp(15px, 1.0416666667vw, 20px);
  aspect-ratio: 30/18;
  background: url(../img/common/pagetop-arow.webp) no-repeat center/cover;
}
.side #pagetop .tx {
  writing-mode: vertical-rl;
}
.side #pagetop .wrap_btn_img {
  width: clamp(25px, 2.6041666667vw, 50px);
}

/*----------------------------------------------------------------

header

----------------------------------------------------------------*/
header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 2;
}
header .header_row {
  height: 100px;
}
header .header_row:has(nav.pc_only) .logo {
  width: clamp(200px, 16.40625vw, 315px);
}

header nav.pc_only > ul {
  -moz-column-gap: clamp(10px, 0.9895833333vw, 19px);
       column-gap: clamp(10px, 0.9895833333vw, 19px);
}
header nav.pc_only > ul.color_333 li a:hover {
  color: #333;
}
header nav.pc_only > ul > li {
  position: relative;
}
header nav.pc_only > ul > li:not(.tel) > a {
  position: relative;
}
header nav.pc_only > ul > li:not(.tel) > a::before {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 0;
  width: 0;
  height: 1px;
  background-color: #02a11c;
  transition: all 0.5s;
}
header nav.pc_only > ul > li a[href]:not([href=""]):hover {
  color: #02a11c !important;
}
header nav.pc_only > ul > li:hover > a::before {
  width: 100%;
}
header nav.pc_only > ul > li:hover > a[href]:not([href=""]) {
  color: #02a11c;
}
header nav.pc_only > ul > li:hover ul {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
header nav.pc_only > ul > li ul {
  clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
  transition: all 0.5s;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  min-width: clamp(150px, 13.5416666667vw, 260px);
  padding-top: var(--ptsize) !important;
  margin-top:5px!important;
}
header nav.pc_only > ul > li ul li {
  text-align: center;
}
header nav.pc_only > ul > li ul li a {
  display: block;
  min-height: clamp(30px, 2.6041666667vw, 50px);
  align-content: center;
}
header nav.pc_only > ul > li ul li:not(:last-child) {
  border-bottom: 1px solid #02a11c;
}
header nav.pc_only > ul > li.tel a {
  width: clamp(120px, 14.84375vw, 285px);
  min-height: clamp(35px, 3.3333333333vw, 64px);
  transform: skewX(-10deg);
  -moz-column-gap: 3.5087719298%;
       column-gap: 3.5087719298%;
  border: 3px solid #ff8441;
  border-radius: 5px;
}
header nav.pc_only > ul > li.tel a > * {
  transform: skewX(10deg);
}
header nav.pc_only > ul > li.tel a img {
  width: 7.8596491228%;
}

main {
  margin-top: 100px;
}

/*----------------------------------------------------------------

main

----------------------------------------------------------------*/
a .arowmask {
  aspect-ratio: 30/20;
  background: url(../img/common/arow.webp);
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-mask: url(../img/common/arow.webp) no-repeat center/cover;
          mask: url(../img/common/arow.webp) no-repeat center/cover;
}
a .arowmask .arow {
  display: block;
  width: 100%;
  height: 100%;
}
a .arowbox {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
a .arowbox .arowmask {
  position: absolute;
  transition: unset;
}
a .arowbox .arowmask:nth-child(1) {
  left: 0;
  transform: translateX(-100%);
}
a .arowbox.bg_white:has(.arow.bg_001e58) {
  border: 2.76px solid #001e58;
}
a:hover .arowbox .arowmask {
  transition: 0.9s cubic-bezier(0.19, 1, 0.22, 1);
}
a:hover .arowbox .arowmask:nth-child(1) {
  left: unset;
  transform: translateX(0);
}
a:hover .arowbox .arowmask:nth-child(2) {
  right: 0;
  transform: translateX(100%);
}

.btntype1 a:has(.arowbox.bg_02a11c):hover {
  color: #02a11c;
}
.btntype1 a:has(.arowbox.bg_ff5a00):hover {
  color: #ff5a00;
}

.btntype2 a:hover.color_001e58 {
  color: #001e58;
}
.btntype2 a:hover .arowbox.bg_001e58 {
  background-color: #fff;
  border: 1px solid #001e58;
}
.btntype2 a:hover .arowbox.bg_001e58 .arow {
  background-color: #001e58;
}
.btntype2 a:hover .arowbox.bg_white:has(.arow.bg_001e58) {
  border: unset;
  background-color: #001e58;
}
.btntype2 a:hover .arowbox.bg_white:has(.arow.bg_001e58) .arow {
  background-color: #fff;
}

.btntype3 a.bg_001e58 {
  color: #fff;
}
.btntype3 a.bg_001e58 .arowbox {
  border: 1px solid #fff;
}
.btntype3 a.bg_001e58 .arowbox .arow {
  background-color: #fff;
}
.btntype3 a:hover.bg_001e58 {
  background-color: #fff;
  border: 1px solid #001e58;
  color: #001e58;
}
.btntype3 a:hover.bg_001e58 .arowbox {
  border: 1px solid #001e58;
}
.btntype3 a:hover.bg_001e58 .arowbox .arow {
  background-color: #001e58;
}

h2 .shape, .h2 .shape {
  width: clamp(10px, 1.5625vw, 30px);
  aspect-ratio: 45/38;
  background: url(../img/common/headingshape1.webp);
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-mask: url(../img/common/headingshape1.webp) no-repeat center/cover;
          mask: url(../img/common/headingshape1.webp) no-repeat center/cover;
}
h2 .shape span, .h2 .shape span {
  display: block;
  width: 100%;
  height: 100%;
}

main .mv {
  position: relative;
  overflow: hidden;
  background: url(../img/top/mvbg.webp) no-repeat center/cover;
}
main .mv::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  aspect-ratio: 1920/300;
  background-color: #fff;
  clip-path: polygon(0 88.6666666667%, 0 100%, 100% 100%, 100% 0);
  transform: translateY(11.3333333333%);
}
main .mv .eg {
  position: absolute;
  bottom: min(7.8125vw, 150px);
  left: 0;
  transform: translateX(-4%);
  width: 128.8020833333%;
  mix-blend-mode: screen;
  opacity: 0.14;
}
main .mv #mvslider {
  position: absolute;
  right: 5.9375%;
  bottom: 0;
  width: 35.15625%;
  -moz-column-gap: 1.1111111111%;
       column-gap: 1.1111111111%;
  opacity: 0.58;
  transform: rotate(15deg);
}
main .mv #mvslider .slide {
  width: 32.5925925926%;
}
main .mv #mvslider .slide:not(:nth-child(2)) .slick-list {
  transform: rotate(180deg);
}
main .mv #mvslider .slide:not(:nth-child(2)) .slick-list .image {
  transform: rotate(-180deg);
}
main .mv #mvslider .slide .slick-list {
  margin: -5px 0;
}
main .mv #mvslider .slide .slick-list .image {
  margin: 5px 0;
}
main .mv .contents {
  position: relative;
  z-index: 1;
}
main .mv .contents .left .catch {
  transform: skewX(-6deg);
}
main .mv .contents .image {
  width: 42.2395833333vw;
}

main .top01 {
  position: relative;
}
main .top01::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 31.7708333333%;
  aspect-ratio: 915/1320;
  background: url(../img/top/aiti.webp) no-repeat center/cover;
  transform: translateY(-29.5454545455%);
  z-index: -1;
}
main .top01 .contents {
  width: clamp(720px, 83.0729166667vw, 1595px);
  margin-left: auto;
  margin-right: auto;
  -moz-column-gap: 5.3918495298%;
       column-gap: 5.3918495298%;
}
main .top01 .contents .charabox {
  width: 16.9278996865%;
}
main .top01 .contents .charabox .box {
  position: relative;
}
main .top01 .contents .charabox .box .chara {
  aspect-ratio: 1/1;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: end;
  overflow: hidden;
}
main .top01 .contents .charabox .box .chara img {
  width: 81.4814814815%;
}
main .top01 .contents .charabox .box .arow {
  position: absolute;
  width: 35.9259259259%;
  aspect-ratio: 97/74;
  background: url(../img/common/comentshape.webp) no-repeat center/cover;
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-mask: url(../img/common/comentshape.webp) no-repeat center/cover;
          mask: url(../img/common/comentshape.webp) no-repeat center/cover;
  right: 0;
  top: 53%;
  transform: translate(28%, -50%);
  z-index: -1;
}
main .top01 .contents .charabox .box .arow::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
main .top01 .contents .charabox .box:has(.bg_02a11c) .arow::before {
  background-color: #02a11c;
}
main .top01 .contents .charabox .name {
  text-align: center;
}
main .top01 .contents .txbox {
  flex: 1;
}
main .top01 .contents .txbox .catch2 {
  transition-delay: 0.2s;
}
main .top01 .contents .txbox .text {
  max-width: 965px;
}

main .top02 {
  background: url(../img/top/problems-bg.webp) no-repeat center/cover;
  position: relative;
}
main .top02::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  aspect-ratio: 1920/300;
  background-color: #fff;
  clip-path: polygon(0 0, 0 100%, 100% 11.3333333333%, 100% 0);
  transform: translateY(-11.3333333333%);
}
main .top02 h2 {
  -moz-column-gap: 0.5208333333%;
       column-gap: 0.5208333333%;
}
main .top02 .catch {
  text-align: center;
}
main .top02 .contents {
  width: clamp(720px, 86.6666666667vw, 1664px);
  margin-left: auto;
  margin-right: auto;
  -moz-column-gap: 3.8461538462%;
       column-gap: 3.8461538462%;
}
main .top02 .contents .item {
  width: 48.0769230769%;
}
main .top02 .contents .item .head {
  position: relative;
  border-radius: 10px;
  display: flex;
  justify-content: center;
}
main .top02 .contents .item .head::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 9.875%;
  aspect-ratio: 119/116;
  background: url(../img/common/headingshape2.webp) no-repeat center/cover;
}
main .top02 .contents .item .head::after {
  content: "";
  position: absolute;
  bottom: -4px;
  left: 50%;
  transform: translate(-50%, 100%);
  width: calc(100% + 10px);
  aspect-ratio: 800/48;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}
main .top02 .contents .item .head ul li {
  display: flex;
  align-items: center;
  border-bottom: 1px dashed #b7b7b7;
}
main .top02 .contents .item .head ul li::before {
  content: "";
  width: clamp(10px, 1.25vw, 24px);
  aspect-ratio: 1/1;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  margin: 0 11px 0 9px;
}
main .top02 .contents .item .image {
  border-radius: 10px;
  overflow: hidden;
  position: relative;
}
main .top02 .contents .item .btnblock a {
  width: 75.125%;
  min-height: clamp(50px, 4.0625vw, 78px);
  transform: skewX(-10deg);
  box-shadow: 6px 6px 0 #001e58;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  -moz-column-gap: clamp(10px, 1.8229166667vw, 35px);
       column-gap: clamp(10px, 1.8229166667vw, 35px);
}
main .top02 .contents .item .btnblock a .tx,
main .top02 .contents .item .btnblock a .arowbox {
  transform: skewX(10deg);
}
main .top02 .contents .item .btnblock a .arowbox {
  width: 13.0293159609%;
  aspect-ratio: 80/32;
  border-radius: 30px;
}
main .top02 .contents .item .btnblock a .arowbox .arowmask {
  width: 25%;
}
main .top02 .contents .item.bgcolor_02a11c .head {
  border: 5px solid #02a11c;
}
main .top02 .contents .item.bgcolor_02a11c .head::after {
  background: linear-gradient(180deg, #02A11C 0%, #00520D 100%);
}
main .top02 .contents .item.bgcolor_02a11c .head ul li::before {
  background-color: #02a11c;
}
main .top02 .contents .item.bgcolor_02a11c .image {
  border: 5px solid #02a11c;
}
main .top02 .contents .item.bgcolor_ff5a00 .head {
  border: 5px solid #ff5a00;
}
main .top02 .contents .item.bgcolor_ff5a00 .head::after {
  background: linear-gradient(180deg, #FF5A00 0%, #AA3C00 100%);
}
main .top02 .contents .item.bgcolor_ff5a00 .head ul li::before {
  background-color: #ff5a00;
}
main .top02 .contents .item.bgcolor_ff5a00 .image {
  border: 5px solid #ff5a00;
}
main .top02 .contents .item:nth-child(1) .inviewanimation {
  transition-delay: 0.4s;
}
main .top02 .contents .item:nth-child(2) .inviewanimation {
  transition-delay: 0.8s;
}
main .top02 .slide {
  container-type: inline-size;
  width: 100%;
  overflow-x: clip;
}
main .top02 .slide .slick-list {
  margin: 0 -17.5cqw 0 -24.5833333333cqw;
}
main .top02 .slide .item {
  -moz-column-gap: min(1.25cqw, 24px);
       column-gap: min(1.25cqw, 24px);
  margin: 0 0.8854166667cqw;
}
main .top02 .slide .icon {
  width: min(5.2083333333cqw, 100px);
}
main .top02 .slide .tx {
  opacity: 0.11;
}

main .top03 .inner {
  -moz-column-gap: 10px;
       column-gap: 10px;
}
main .top03 .inner .left {
  position: sticky;
  top: 100px;
  flex: 1;
}
main .top03 .inner .left h2 {
  -moz-column-gap: clamp(10px, 0.8333333333vw, 16px);
       column-gap: clamp(10px, 0.8333333333vw, 16px);
}
main .top03 .inner .left .text {
  max-width: 491px;
}
main .top03 .inner .contents {
  width: 58.3333333333%;
}
main .top03 .inner .contents .item .head {
  display: flex;
  align-items: center;
  -moz-column-gap: clamp(10px, 1.875vw, 36px);
       column-gap: clamp(10px, 1.875vw, 36px);
}
main .top03 .inner .contents .item .head::after {
  content: "";
  flex: 1;
  border-bottom: 1px dashed #858585;
}
main .top03 .inner .contents .item .btnblock {
  order: 1;
}
main .top03 .inner .contents .item .btnblock a {
  display: flex;
  align-items: center;
  -moz-column-gap: clamp(10px, 0.8333333333vw, 16px);
       column-gap: clamp(10px, 0.8333333333vw, 16px);
}
main .top03 .inner .contents .item .btnblock a .arowbox {
  width: clamp(70px, 5.2083333333vw, 100px);
  aspect-ratio: 100/40;
  border-radius: 36px;
}
main .top03 .inner .contents .item .btnblock a .arowbox .arowmask {
  width: 18%;
}
main .top03 .inner .contents .item:nth-child(1) .top.inviewanimation {
  transition-delay: 0.4s;
}
main .top03 .inner .contents .item:nth-child(1) .image.inviewanimation {
  transition-delay: 0.6s;
}
main .top03 .inner .contents .item:nth-child(2) .top.inviewanimation {
  transition-delay: 1s;
}
main .top03 .inner .contents .item:nth-child(2) .image.inviewanimation {
  transition-delay: 1.2s;
}

main .top04 {
  position: relative;
}
main .top04::before {
  content: "";
  position: absolute;
  height: clamp(120px, 9.8958333333vw, 190px);
  width: 2px;
  background: linear-gradient(180deg, #263B63 0%, #4B85F2 100%);
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 63.1578947368%);
}
main .top04 .inner {
  position: relative;
}
main .top04 .inner::before, main .top04 .inner::after {
  content: "";
  position: absolute;
  z-index: -1;
  clip-path: polygon(0 0, 50% 8%, 100% 0, 100% 88%, 50% 100%, 0 88%);
}
main .top04 .inner::before {
  width: 100%;
  height: calc(100% - clamp(30px, 3.4895833333vw, 67px) - 1.25vw);
  left: 0;
  bottom: calc(min(2.7083333333vw, 52px) * -1);
  background-color: #f4f6f8;
}
main .top04 .inner::after {
  width: clamp(720px, 92.7083333333vw, 1780px);
  margin-left: auto;
  margin-right: auto;
  height: calc(100% - clamp(30px, 3.4895833333vw, 67px));
  top: clamp(30px, 3.4895833333vw, 67px);
  left: 50%;
  transform: translateX(-50%);
  background: radial-gradient(circle at 50% -100%, #1e4591 0%, #001E58 72%);
}
main .top04 .inner .chara {
  width: clamp(150px, 11.71875%, 225px);
}
main .top04 .inner .catch,
main .top04 .inner .contents {
  width: clamp(720px, 92.7083333333vw, 1780px);
  margin-left: auto;
  margin-right: auto;
}
main .top04 .inner .catch {
  text-align: center;
}
main .top04 .inner .contents {
  -moz-column-gap: 0.6179775281%;
       column-gap: 0.6179775281%;
}
main .top04 .inner .contents .item {
  width: 35.5617977528%;
}
main .top04 .inner .contents .item a {
  display: block;
  width: 100%;
  height: 100%;
  align-content: center;
}
main .top04 .inner .contents .item a:hover .title,
main .top04 .inner .contents .item a:hover .content {
  color: #fff;
}
main .top04 .inner .contents .item a:hover .iconbox {
  background-color: #fff;
}
main .top04 .inner .contents .item a:hover:has(.iconbox.bg_02a11c) {
  background-color: #02a11c;
}
main .top04 .inner .contents .item a:hover:has(.iconbox.bg_02a11c) .content .iconbox .icon span {
  background-color: #02a11c;
}
main .top04 .inner .contents .item a:hover:has(.iconbox.bg_ff5a00) {
  background-color: #ff5a00;
}
main .top04 .inner .contents .item a:hover:has(.iconbox.bg_ff5a00) .content .iconbox .icon span {
  background-color: #ff5a00;
}
main .top04 .inner .contents .item .title {
  text-align: center;
}
main .top04 .inner .contents .item .content {
  display: flex;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 1.579778831%;
       column-gap: 1.579778831%;
}
main .top04 .inner .contents .item .content .iconbox {
  width: 8.8467614534%;
  aspect-ratio: 1/1;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
main .top04 .inner .contents .item .content .iconbox .icon span {
  display: block;
  width: 100%;
  height: 100%;
}
main .top04 .inner .contents .item.tel .content .iconbox .icon {
  width: 57.1428571429%;
  aspect-ratio: 1/1;
  background: url(../img/common/tel-icon.webp);
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-mask: url(../img/common/tel-icon.webp) no-repeat center/cover;
          mask: url(../img/common/tel-icon.webp) no-repeat center/cover;
}
main .top04 .inner .contents .item.mail .content .iconbox .icon {
  width: 60.7142857143%;
  aspect-ratio: 36/29;
  background: url(../img/common/mail-icon.webp);
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-mask: url(../img/common/mail-icon.webp) no-repeat center/cover;
          mask: url(../img/common/mail-icon.webp) no-repeat center/cover;
}
main .top04 .inner .contents .item:nth-child(odd) a {
  clip-path: polygon(0 0, 100% 0, 95% 100%, 0 100%);
}
main .top04 .inner .contents .item:nth-child(even) a {
  clip-path: polygon(5% 0, 100% 0, 100% 100%, 0 100%);
}

main .top05 .contents {
  width: clamp(720px, 80.7291666667vw, 1550px);
  margin-left: auto;
  margin-right: auto;
  -moz-column-gap: 3.5483870968%;
       column-gap: 3.5483870968%;
}
main .top05 .contents .item a:hover .image img {
  transform: scale(1.1);
}
main .top05 .contents .item.full {
  width: 100%;
  position: relative;
  /* a{
    &:hover{
      .image{
        img{
          transform: scale(1.1);
        }
      }
    }
  } */
}
main .top05 .contents .item.full .txbox {
  width: 36.7741935484%;
  background-color: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(25px);
  container-type: inline-size;
}
main .top05 .contents .item.full .txbox .txs {
  padding: 0 10px;
}
main .top05 .contents .item.full .txbox .text {
  max-width: 438px;
}
main .top05 .contents .item.full .txbox .arowbox {
  width: 20.1754385965cqw;
  aspect-ratio: 115/58;
  border-radius: 46px;
}
main .top05 .contents .item.full .txbox .arowbox .arowmask {
  width: 17.3913043478%;
}
main .top05 .contents .item.full .image {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  overflow: hidden;
}
main .top05 .contents .item.full .image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
main .top05 .contents .item.full .image::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}
main .top05 .contents .item.full:nth-child(odd) .image::before {
  background: url(../img/top/image1-bg.webp) no-repeat center/cover;
}
main .top05 .contents .item.full:nth-child(even) .image::before {
  background: url(../img/top/image2-bg.webp) no-repeat center/cover;
}
main .top05 .contents .item.col3 {
  width: 30.9677419355%;
}

main .top05 .contents .col4 {
  width: 22%;
}

main .top05 .contents .item.col3 .image,main .top05 .contents .item.col4 .image {
  overflow: hidden;
  position: relative;
}
main .top05 .contents .item.col3 .image::before,main .top05 .contents .item.col4 .image::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  background: url(../img/top/image-bg.webp) no-repeat center/cover;
}
main .top05 .contents .item.col3 .image img,main .top05 .contents .item.col4 .image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
main .top05 .contents .item.col3 .title,main .top05 .contents .item.col4 .title {
  display: flex;
  align-items: center;
}
main .top05 .contents .item.col3 .title .arowbox,main .top05 .contents .item.col4 .title .arowbox {
  width: 18.75%;
  aspect-ratio: 90/40;
  border-radius: 36px;
  margin-left: auto;
}
main .top05 .contents .item.col3 .title .arowbox .arowmask,main .top05 .contents .item.col4 .title .arowbox .arowmask {
  width: 18.8888888889%;
}
main .top05 .contents .item:nth-child(2) .txbox .txs {
  transition-delay: 0.4s;
}

main .top06 .contents {
  background: url(../img/top/bg.webp) no-repeat center/cover;
}
main .top06 .contents .catch {
  text-align: center;
}
main .top06 .contents .btnblock a {
  width: 30.625%;
  min-height: clamp(40px, 3.6458333333vw, 70px);
  -moz-column-gap: 6.6326530612%;
       column-gap: 6.6326530612%;
}
main .top06 .contents .btnblock a .arowbox {
  width: 10.2040816327%;
  aspect-ratio: 60/32;
  border-radius: 27.75px;
}
main .top06 .contents .btnblock a .arowbox .arowmask {
  width: 26.6666666667%;
}

main .top07 {
  clip-path: polygon(0 min(9.375vw, 180px), 100% 0, 100% calc(100% - min(9.375vw, 180px)), 0 100%);
}
main .top07 .head {
  width: clamp(720px, 66.6666666667vw, 1280px);
  margin-left: auto;
  margin-right: auto;
}
main .top07 .head h2 {
  -moz-column-gap: 10px;
       column-gap: 10px;
}
main .top07 .contents {
  width: clamp(720px, 66.6666666667vw, 1280px);
  margin-left: auto;
  margin-right: auto;
  container-type: inline-size;
  /* svg{
    position: absolute;
    opacity: 0;
    z-index: -1;
    #qabtn-open{
      path{
        transform: scale(calc(1/960),calc(1/960));
      }
    }
    #qabtn-close{
      path{
        transform: scale(calc(1/960),calc(1/960));
      }
    }
  } */
}
main .top07 .contents .item .q {
  border-bottom: 1px solid #d2d2d2;
  -moz-column-gap: 2.34375cqw;
       column-gap: 2.34375cqw;
}
main .top07 .contents .item .q::before {
  content: "Q";
  width: 5.46875cqw;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: #001e58;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "Oswald", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  font-size: clamp(14px, 1.3541666667vw, 26px);
  color: #fff;
}
main .top07 .contents .item .q .title {
  flex: 1;
}
main .top07 .contents .item .q .q-a-btn {
  width: 2.5cqw;
  aspect-ratio: 1/1;
  background: url(../img/top/do_not_disturb_on_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg) no-repeat center/cover;
  transition: all 0.5s;
  /* clip-path: url(#qabtn-open); */
  /* display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  border-radius: 50%;
  border: 2px solid #001e58;
  &::before,
  &::after{
    content: "";
    position: absolute;
    width: 80%;
    height: 2px;
    background-color: #001e58;
    transition: all 0.5s;
  }
  &.close{
    &::before{
      transform: rotate(90deg);
    }
  } */
}
main .top07 .contents .item .q .q-a-btn.close {
  /* clip-path: url(#qabtn-close); */
  background-image: url(../img/top/add_circle_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg);
}
main .top07 .contents .item .a .content {
  -moz-column-gap: 2.34375cqw;
       column-gap: 2.34375cqw;
}
main .top07 .contents .item .a .content::before {
  content: "";
  width: 5.46875cqw;
  aspect-ratio: 110/96;
  background: url(../img/top/anserchara.webp) no-repeat center/cover;
}
main .top07 .contents .item .a .content .text {
  max-width: 961px;
  flex: 1;
}
main .top07 .contents .item.close .a {
  display: none;
}
main .top07 .btnblock a {
  width: 20.4166666667%;
  min-height: clamp(40px, 3.6458333333vw, 70px);
  -moz-column-gap: 25%;
       column-gap: 25%;
}
main .top07 .btnblock a .arowbox {
  width: 15.306122449%;
  aspect-ratio: 60/32;
  border-radius: 27.75px;
}
main .top07 .btnblock a .arowbox .arowmask {
  width: 26.6666666667%;
}

main .top08 .head {
  width: clamp(720px, 74.21875vw, 1425px);
  margin-left: auto;
  margin-right: auto;
}
main .top08 .head h2 {
  -moz-column-gap: 10px;
       column-gap: 10px;
}
main .top08 .contents {
  width: clamp(720px, 74.21875vw, 1425px);
  margin-left: auto;
  margin-right: auto;
  justify-content: space-between;
}
main .top08 .contents .item {
  position: relative;
  width: 49.8245614035%;
  display: flex;
  flex-direction: column;
  container-type: inline-size;
}
main .top08 .contents .item .bd {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}
main .top08 .contents .item .bd::before, main .top08 .contents .item .bd::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 5px;
}
main .top08 .contents .item .bd::before {
  width: 100%;
  height: 100%;
  background-color: #001e58;
}
main .top08 .contents .item .bd::after {
  width: calc(100% - 2px);
  height: calc(100% - 2px);
  background-color: #fff;
}
main .top08 .contents .item .top {
  margin: auto 0;
  position: relative;
}
main .top08 .contents .item .top .tx {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  text-align: center;
  z-index: -1;
}
main .top08 .contents .item .top .chara {
  width: 21.1267605634cqw;
}
main .top08 .contents .item .top .chara img {
  width: 100%;
}
main .top08 .contents .item .top .logo {
  width: 73.2394366197cqw;
}
main .top08 .contents .item .top .logo img {
  width: 100%;
}
main .top08 .contents .item .content {
  width: 77.8873239437%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-left: auto;
  margin-right: auto;
}
main .top08 .contents .item .content .title small {
  display: flex;
  align-items: center;
  -moz-column-gap: 10px;
       column-gap: 10px;
}
main .top08 .contents .item .content .title small::before {
  content: "";
  width: max(2.2535211268cqw, 10px);
  height: 1px;
  background-color: #001e58;
}
main .top08 .contents .item .content .arowbox {
  width: 12.676056338cqw;
  aspect-ratio: 90/48;
  border-radius: 60px;
}
main .top08 .contents .item .content .arowbox .arowmask {
  width: 25.5555555556%;
}
main .top08 .contents .item::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: -1;
  border-radius: 5px;
}
main .top08 .contents .item::before {
  top: 4px;
  left: 4px;
  background-color: #001e58;
}
main .top08 .contents .item:nth-child(odd) .bd::before, main .top08 .contents .item:nth-child(odd) .bd::after {
  clip-path: polygon(0 0, 100% 0, 92% 100%, 0 100%);
}
main .top08 .contents .item:nth-child(odd)::before {
  clip-path: polygon(0 0, 100% 0, 92% 100%, 0 100%);
}
main .top08 .contents .item:nth-child(even) .bd::before, main .top08 .contents .item:nth-child(even) .bd::after {
  clip-path: polygon(10% 0, 100% 0, 100% 100%, 0 100%);
}
main .top08 .contents .item:nth-child(even)::before {
  clip-path: polygon(10% 0, 100% 0, 100% 100%, 0 100%);
}
main .top08 .contents .item:nth-child(2) {
  transition-delay: 0.4s;
}

main .top09 .inner {
  width: clamp(720px, 68.8541666667vw, 1322px);
  margin-left: auto;
  margin-right: auto;
  -moz-column-gap: 8.2450832073%;
       column-gap: 8.2450832073%;
}
main .top09 .inner .left h2 {
  -moz-column-gap: 10px;
       column-gap: 10px;
}
main .top09 .inner .btnblock a {
  width: clamp(120px, 11.6666666667vw, 224px);
  min-height: clamp(30px, 2.6041666667vw, 50px);
  -moz-column-gap: 8.0357142857%;
       column-gap: 8.0357142857%;
}
main .top09 .inner .btnblock a .arowbox {
  width: 22.3214285714%;
  aspect-ratio: 50/24;
  border-radius: 30px;
}
main .top09 .inner .btnblock a .arowbox .arowmask {
  width: 26%;
}
main .top09 .inner .contents {
  flex: 1;
  max-width: 960px;
}
main .top09 .inner .contents article {
  border-bottom: 1px dashed #001e58;
}
main .top09 .inner .contents article .txbox {
  flex: 1;
  padding-bottom: 6px;
}
main .top09 .inner .contents article .head {
  display: flex;
  align-items: center;
  -moz-column-gap: clamp(10px, 1.1458333333vw, 22px);
       column-gap: clamp(10px, 1.1458333333vw, 22px);
}
main .top09 .inner .contents article .head .cate {
  min-width: clamp(60px, 6.875vw, 132px);
  min-height: clamp(15px, 1.3541666667vw, 26px);
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
}
main .top09 .inner .contents article .arowbox {
  width: 8.8541666667%;
  aspect-ratio: 85/32;
  border-radius: 30px;
}
main .top09 .inner .contents article .arowbox .arowmask {
  width: 17.6470588235%;
}

main .top10 {
  position: relative;
}
main .top10::before {
  content: "";
  position: absolute;
  top: min(2.2395833333vw, 43px);
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../img/top/recruit-bg.webp) no-repeat center/cover;
  clip-path: polygon(0 min(0.5208333333vw, 10px), 50% min(5.9375vw, 114px), 100% min(0.5208333333vw, 10px), 100% calc(100% - min(8.59375vw, 165px)), 50% calc(100% - min(1.3020833333vw, 25px)), 0 calc(100% - min(8.59375vw, 165px)));
  z-index: -1;
}
main .top10 .contents {
  width: clamp(720px, 86.40625vw, 1659px);
  margin-left: auto;
  margin-right: auto;
  margin-left: 8.2291666667%;
  -moz-column-gap: 4.2194092827%;
       column-gap: 4.2194092827%;
}
main .top10 .contents .left {
  width: 48.2218203737%;
  border-radius: 10px;
  display: flex;
  justify-content: center;
}
main .top10 .contents .left .content {
  max-width: min(100% - 20px, 618px);
}
main .top10 .contents .left .content h2 {
  -moz-column-gap: 10px;
       column-gap: 10px;
}
main .top10 .contents .left .content .btnblock a {
  width: clamp(200px, 68.284789644%, 422px);
  min-height: clamp(40px, 3.6458333333vw, 70px);
  -moz-column-gap: 11.8483412322%;
       column-gap: 11.8483412322%;
}
main .top10 .contents .left .content .btnblock a .arowbox {
  width: 14.2180094787%;
  aspect-ratio: 60/32;
  border-radius: 27.75px;
}
main .top10 .contents .left .content .btnblock a .arowbox .arowmask {
  width: 26.6666666667%;
}
main .top10 .contents .images {
  flex: 1;
  justify-content: space-between;
}
main .top10 .contents .images .image {
  width: 48.1622306717%;
}
main .top10 .contents .images .image img {
  width: 100%;
}

@keyframes charafadein {
  from, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    transform: translate3d(-3000px, 0, 0) scaleX(3);
  }
  60% {
    opacity: 1;
    transform: translate3d(25px, 0, 0) scaleX(1);
  }
  75% {
    transform: translate3d(-10px, 0, 0) scaleX(0.98);
  }
  90% {
    transform: translate3d(5px, 0, 0) scaleX(0.995);
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}
main .contact .chara_animationarea {
  display: flex;
  justify-content: center;
}
main .contact .chara_animationarea .chara {
  width: 11.4583333333%;
}
main .contact .chara_animationarea .chara.view {
  animation: charafadein 2s;
}
main .contact .chara_animationarea .chara img {
  width: 100%;
}
main .contact .inner {
  background: radial-gradient(circle at 50% -100%, #1e4591 0%, #001E58 72%);
}
main .contact .inner h2 {
  -moz-column-gap: 10px;
       column-gap: 10px;
}
main .contact .inner .catch {
  text-align: center;
}
main .contact .inner .contents {
  width: clamp(720px, 57.8125vw, 1110px);
  margin-left: auto;
  margin-right: auto;
  -moz-column-gap: 0.9009009009%;
       column-gap: 0.9009009009%;
}
main .contact .inner .contents .item {
  width: 49.5495495495%;
}
main .contact .inner .contents .item a {
  display: block;
  width: 100%;
  height: 100%;
  align-content: center;
}
main .contact .inner .contents .item a:hover .title,
main .contact .inner .contents .item a:hover .content {
  color: #fff;
}
main .contact .inner .contents .item a:hover .iconbox {
  background-color: #fff;
}
main .contact .inner .contents .item a:hover:has(.iconbox.bg_02a11c) {
  background-color: #02a11c;
}
main .contact .inner .contents .item a:hover:has(.iconbox.bg_02a11c) .content .iconbox .icon span {
  background-color: #02a11c;
}
main .contact .inner .contents .item a:hover:has(.iconbox.bg_ff5a00) {
  background-color: #ff5a00;
}
main .contact .inner .contents .item a:hover:has(.iconbox.bg_ff5a00) .content .iconbox .icon span {
  background-color: #ff5a00;
}
main .contact .inner .contents .item .title {
  text-align: center;
}
main .contact .inner .contents .item .content {
  display: flex;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 1.8181818182%;
       column-gap: 1.8181818182%;
}
main .contact .inner .contents .item .content .iconbox {
  width: 8.5454545455%;
  aspect-ratio: 1/1;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
main .contact .inner .contents .item .content .iconbox .icon span {
  display: block;
  width: 100%;
  height: 100%;
}
main .contact .inner .contents .item.tel .content .iconbox .icon {
  width: 55.3191489362%;
  aspect-ratio: 1/1;
  background: url(../img/common/tel-icon.webp);
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-mask: url(../img/common/tel-icon.webp) no-repeat center/cover;
          mask: url(../img/common/tel-icon.webp) no-repeat center/cover;
}
main .contact .inner .contents .item.mail .content .iconbox .icon {
  width: 59.5744680851%;
  aspect-ratio: 36/29;
  background: url(../img/common/mail-icon.webp);
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-mask: url(../img/common/mail-icon.webp) no-repeat center/cover;
          mask: url(../img/common/mail-icon.webp) no-repeat center/cover;
}
main .contact .inner .contents .item:nth-child(odd) a {
  clip-path: polygon(0 0, 100% 0, 95% 100%, 0 100%);
}
main .contact .inner .contents .item:nth-child(even) a {
  clip-path: polygon(5% 0, 100% 0, 100% 100%, 0 100%);
}

/*----------------------------------------------------------------

footer

----------------------------------------------------------------*/
footer .footer_inner {
  position: relative;
  -moz-column-gap: min(12.5520833333vw, 241px);
       column-gap: min(12.5520833333vw, 241px);
}
footer .footer_inner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #f4f6f8;
  z-index: -1;
}
footer .footer_inner::after {
  content: "";
  position: absolute;
  right: 0;
  width: 18.3854166667%;
  aspect-ratio: 530/554;
  background: url(../img/common/f-shape.webp) no-repeat center/cover;
  z-index: -1;
}
footer .footer_inner .left .logo {
  width: clamp(200px, 16.40625vw, 315px);
}
footer .footer_inner .left .logo img {
  width: 100%;
}
footer .footer_inner nav {
  -moz-column-gap: min(9.9479166667vw, 191px);
       column-gap: min(9.9479166667vw, 191px);
}
footer .footer_inner nav ul li ul {
  margin-top: min(0.4166666667vw, 8px) !important;
}
footer .footer_inner nav ul li a:hover {
  color: #02a11c;
}
footer .footer_inner nav ul {
  /* &.color_333{
    li{
      a{
        &:hover{
          color: #333;
        }
      }
    }
  }
  li{
    a{
      &:hover{
        opacity: 0.5;
        &.color_02a11c{
          color: #02a11c;
        }
      }
    }
  } */
}

footer .copyright {
  text-align: center;
}/*# sourceMappingURL=main.css.map */

.mx_auto{
  margin: auto;
}

.iso_list{
  display: flex;
  flex-wrap: wrap;
}

.iso_list li{
  width: 50%;
}