@charset "UTF-8";
@font-face {
  font-family: "Noto Sans JP";
  src: url(../fonts/noto-jp/NotoSansJP-Regular.otf);
}
@font-face {
  font-family: "Noto Sans JP Black";
  src: url(../fonts/noto-jp/NotoSansJP-Black.otf);
}
@font-face {
  font-family: "Noto Sans JP Bold";
  src: url(../fonts/noto-jp/NotoSansJP-Bold.otf);
}
@font-face {
  font-family: "Noto Sans JP Medium";
  src: url(../fonts/noto-jp/NotoSansJP-Medium.otf);
}
@font-face {
  font-family: "Noto Sans JP Light";
  src: url(../fonts/noto-jp/NotoSansJP-Light.otf);
}
@font-face {
  font-family: "Noto Sans JP Thin";
  src: url(../fonts/noto-jp/NotoSansJP-Thin.otf);
}
* {
  font-family: "Noto Sans JP", sans-serif;
  margin: 0;
  padding: 0;
  color: #3B4E61;
}

body {
  overflow-x: hidden;
}

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

.pc {
  display: block !important;
}

.sp {
  display: none !important;
}

img {
  display: block;
}

.fw_thin {
  font-weight: 100;
}

.fw_extralight {
  font-weight: 200;
}

.fw_medium {
  font-weight: 500;
}

.fw_semibold {
  font-weight: 600;
}

.fw_extrabold {
  font-weight: 800;
}

.fw_black {
  font-weight: 900;
}

.fw_extrablack {
  font-weight: 950;
}

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

.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;
}

.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;
}

.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_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(16px, 0.9375vw, 18px);
}

.f_20 {
  font-size: clamp(16px, 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_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_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_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_12 {
  line-height: 1.2;
}

.lh_14 {
  line-height: 1.4;
}

.lh_16 {
  line-height: 1.6;
}

.lh_18 {
  line-height: 1.8;
}

.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;
}

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

ルール

----------------------------------------------------------------*/
::-webkit-input-placeholder {
  font-size: 16px;
  letter-spacing: 0.12em;
  color: #cccccc;
}
::-moz-placeholder {
  font-size: 16px;
  letter-spacing: 0.12em;
  color: #cccccc;
}
:-ms-input-placeholder {
  font-size: 16px;
  letter-spacing: 0.12em;
  color: #cccccc;
}
::-ms-input-placeholder {
  font-size: 16px;
  letter-spacing: 0.12em;
  color: #cccccc;
}
::placeholder {
  font-size: 16px;
  letter-spacing: 0.12em;
  color: #cccccc;
}

.contents_line {
  padding-right: clamp(255px, 15.6vw, 300px);
}

.contents_line02 {
  width: calc(100% - clamp(155px, 10.41vw, 200px));
}

.shadow01 {
  -webkit-filter: drop-shadow(0px 4px 10px rgba(29, 228, 250, 0.5));
          filter: drop-shadow(0px 4px 10px rgba(29, 228, 250, 0.5));
}

.z_1 {
  position: relative;
  z-index: 1;
}

.section_title01::before {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-radius: 100%;
  background-color: #FFFFFF;
  margin-right: 10px;
}
.section_title01.section_title01_2::before {
  background-color: #7BF6FF;
  width: clamp(15px, 1.04vw, 20px);
  height: clamp(15px, 1.04vw, 20px);
}

.section_title02 img {
  width: clamp(15px, 1.14vw, 22px);
}

.section_title03::before {
  content: "";
  display: block;
  width: clamp(15px, 1.14vw, 22px);
  height: clamp(13px, 1.04vw, 20px);
  background-image: url("../img/common/arrow-sub.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  margin-right: 1.04vw;
}
.section_title03.section_title03_2::before {
  background-image: url("../img/common/arrow-main02.svg");
}
.section_title03.section_title03_3::before {
  background-image: url("../img/common/arrow-white.svg");
}

.max_100 {
  max-width: 100%;
}

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

.ml_auto {
  margin-left: auto;
}

.mr_auto {
  margin-right: auto;
}

a {
  text-decoration: none;
  color: #3B4E61;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
a * {
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
a:hover {
  color: #7BF6FF;
}
a.opacity:hover {
  opacity: 0.6;
}

/***************************color****************************/
.red {
  color: #ed1c24;
}

.white {
  color: white;
}

.main {
  color: #7BF6FF;
}

.main02 {
  color: #EDFCFF;
}

.sub {
  color: #93C6CF;
}

.gray01 {
  color: #9CA6AF;
}

.gray02 {
  color: #F5F5F5;
}

/***************************bg****************************/
.bg_white {
  background-color: white;
}

.bg_main {
  background-color: #7BF6FF;
}

.bg_main02 {
  background-color: #EDFCFF;
}

.bg_sub {
  background-color: #93C6CF;
}

.bg_black02 {
  background-color: #3B4E61;
}

.bg_gray01 {
  background-color: #9CA6AF;
}

.bg_gray02 {
  background-color: #F5F5F5;
}

/***************************cmn_btn****************************/
.cmn_btn:hover {
  background-color: #3B4E61;
  color: #FFFFFF;
}
.cmn_btn:hover span.bg_black02 {
  background-color: #FFFFFF;
  color: #3B4E61;
}
.cmn_btn.bg_black02 {
  border: 1px solid #3B4E61;
}
.cmn_btn.bg_black02:hover {
  background-color: #FFFFFF;
  color: #3B4E61;
}
.cmn_btn.bg_black02:hover .bg_white {
  background-color: #3B4E61;
  color: #FFFFFF;
}
.cmn_btn.bg_black02:hover .white {
  color: #3B4E61;
}
.cmn_btn.btn01 {
  padding: 0.78vw 2vw;
  width: clamp(300px, 23vw, 440px);
  border-radius: 100px;
  border: 1px solid #3B4E61;
}
.cmn_btn.btn02 {
  border-radius: 10px;
}
.cmn_btn.btn02 .material-symbols-outlined {
  font-weight: 300;
}

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

フォント読み込み

----------------------------------------------------------------*/
.fw_normal {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
}
.fw_medium {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
}
.fw_semibold {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 600;
}
.fw_bold {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
}
.fw_zen {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
}
.fw_ener {
  font-family: "Roboto", sans-serif;
  font-weight: 200;
}
.fw_enr {
  font-family: "Roboto", sans-serif;
  font-weight: 300;
}
.fw_enn {
  font-family: "Roboto", sans-serif;
  font-weight: 400;
}
.fw_enb {
  font-family: "Roboto", sans-serif;
  font-weight: 700;
}

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

Pagetop ボタン

----------------------------------------------------------------*/
.wrap_btn {
  position: fixed;
  bottom: 10px;
  right: clamp(165px, 11vw, 210px);
  opacity: 1;
  z-index: 100;
  -webkit-transition: none;
  transition: none;
  mix-blend-mode: difference;
}

.wrap_btn_img {
  -webkit-transition: 0.4s ease;
  transition: 0.4s ease;
}

.wrap_btn_img:hover {
  opacity: 0.5;
}

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

header

----------------------------------------------------------------*/
header {
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
}
header ul.nav li {
  width: 100%;
}
header ul.nav li:nth-child(-n+3) a::before {
  content: "";
  display: block;
  background-image: url("../img/common/arrow-main.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: clamp(10px, 1.04vw, 20px);
  height: clamp(10px, 1.04vw, 20px);
  margin-right: 10px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
header ul.nav li:nth-child(-n+3) a:hover {
  color: #9CA6AF;
}
header ul.nav li:nth-child(-n+3) a:hover::before {
  opacity: 0.5;
}
header ul.nav li:nth-last-child(-n+2) a {
  border: 1px solid #93C6CF;
}
header ul.nav li:nth-last-child(-n+2) a .material-symbols-outlined {
  width: clamp(20px, 1.35vw, 26px);
  height: clamp(20px, 1.35vw, 26px);
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
header .header_inner .nav_wrap {
  width: clamp(155px, 10.41vw, 200px);
  backdrop-filter: blur(10px);
  right: 0;
  top: 0;
  height: 100vh;
}
header .header_inner .nav_wrap .nav_inner {
  height: 100%;
}
header .header_inner .nav_wrap .nav_inner .nav_logo img {
  width: clamp(100px, 6.77vw, 130px);
}

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

main

----------------------------------------------------------------*/
@-webkit-keyframes mv_show {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes mv_show {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
main .mv_show {
  opacity: 0;
  -webkit-animation: mv_show 1.2s 3.4s ease forwards;
          animation: mv_show 1.2s 3.4s ease forwards;
}
main .mv .mv_inner {
  width: 100%;
  height: auto;
  max-height: 100vh;
  aspect-ratio: 16/9;
  position: relative;
  overflow: hidden;
}
main .mv .mv_inner .para_parent {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
}
main .mv .mv_inner .para_parent .simpleParallax {
  overflow: visible !important;
}
main .mv .mv_inner .para_parent .simpleParallax img {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
main .mv .mv_inner .contents_line02 {
  height: 100%;
}
main .mv .mv_inner .contents_line02 .mv_img {
  top: 1.56vw;
  right: -2vw;
  width: clamp(250px, 32vw, 620px);
  z-index: 10;
}
main .mv .mv_inner .contents_line02 .mv_maincontents {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
main .mv .mv_inner .contents_line02 .mv_maincontents .circle_wrap .circle {
  width: clamp(500px, 54vw, 1045px);
}
main .mv .mv_inner .contents_line02 .mv_maincontents .circle_wrap .maru_wrap {
  top: 0;
  left: 0;
  width: clamp(500px, 54vw, 1045px);
  height: auto;
}
main .mv .mv_inner .contents_line02 .mv_maincontents .circle_wrap .maru_wrap svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  overflow: visible;
}
main .mv .mv_inner .contents_line02 .mv_maincontents .circle_wrap .maru_wrap .maru {
  offset-path: url(#my-ellipse-path);
  -webkit-animation: moveAround 15s linear infinite;
          animation: moveAround 15s linear infinite;
}
main .mv .mv_inner .contents_line02 .mv_maincontents .circle_wrap .maru_wrap .maru02 {
  offset-path: url(#my-ellipse-path02);
  -webkit-animation: moveAround02 10s linear infinite;
          animation: moveAround02 10s linear infinite;
}
main .mv .mv_inner .contents_line02 .mv_maincontents .circle_wrap .maru_wrap .maru03 {
  offset-path: url(#my-ellipse-path03);
  -webkit-animation: moveAround03 15s linear infinite;
          animation: moveAround03 15s linear infinite;
}
@-webkit-keyframes moveAround {
  0% {
    offset-distance: 0%;
  }
  100% {
    offset-distance: 100%;
  }
}
@keyframes moveAround {
  0% {
    offset-distance: 0%;
  }
  100% {
    offset-distance: 100%;
  }
}
@-webkit-keyframes moveAround02 {
  0% {
    offset-distance: 50%;
  }
  100% {
    offset-distance: 150%;
  }
}
@keyframes moveAround02 {
  0% {
    offset-distance: 50%;
  }
  100% {
    offset-distance: 150%;
  }
}
@-webkit-keyframes moveAround03 {
  0% {
    offset-distance: 30%;
  }
  100% {
    offset-distance: 130%;
  }
}
@keyframes moveAround03 {
  0% {
    offset-distance: 30%;
  }
  100% {
    offset-distance: 130%;
  }
}
main .mv .mv_inner .contents_line02 .mv_maincontents .anniversary {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
main .mv .mv_inner .contents_line02 .mv_maincontents .anniversary .wrap {
  -webkit-animation: number_hidden 2.8s 2.4s ease forwards;
          animation: number_hidden 2.8s 2.4s ease forwards;
}
@-webkit-keyframes number_hidden {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
    opacity: 0;
  }
}
@keyframes number_hidden {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
    opacity: 0;
  }
}
main .mv .mv_inner .contents_line02 .mv_maincontents .mv_main {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
main .mv .mv_inner .contents_line02 .mv_maincontents .mv_main .img {
  width: clamp(180px, 21vw, 420px);
  -webkit-filter: drop-shadow(0px 10px 30px rgba(29, 228, 250, 0.5));
          filter: drop-shadow(0px 10px 30px rgba(29, 228, 250, 0.5));
}
main .mv .mv_inner .contents_line02 .text_wrap {
  height: 100%;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
main .mv .mv_inner .contents_line02 .text_wrap h1 {
  margin-top: clamp(50px, 3.125vw, 60px);
}
main .mv .mv_inner .contents_line02 .text_wrap .catch_wrap {
  margin-bottom: clamp(40px, 4.5vw, 90px);
}
main .mv .mv_inner .contents_line02 .scrolldown {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  bottom: 0;
}
main .mv .mv_inner .contents_line02 .scrolldown::after {
  content: "";
  display: block;
  width: 1px;
  height: clamp(15px, 1.56vw, 30px);
  background-color: #3B4E61;
  margin: 3px auto 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
main .mv .mv_inner .contents_line02 .scrolldown:hover::after {
  background-color: #7BF6FF;
}
main .top01 .centerline {
  top: 0;
  left: 0;
  height: 100%;
  z-index: 1;
}
main .top01 .centerline .col-10 {
  top: 0;
  left: calc(50% - 2px);
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  height: 100%;
}
main .top01 .centerline .col-10::before {
  content: "";
  display: block;
  width: 1px;
  height: 0%;
  background-color: #FFFFFF;
  margin-left: auto;
  margin-right: auto;
  -webkit-transition: 2s;
  transition: 2s;
}
main .top01 .centerline .col-10.scrollin::before {
  height: 100%;
}
main .top01 .top01_inner .top01_item01 {
  background-image: url("../img/top/about_bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  z-index: -1;
}
main .top01 .top01_inner .top01_item01 .contents_line02 .col-10 {
  z-index: 1;
}
main .top01 .top01_inner .top01_item01 .contents_line02 .col-10 p.position-absolute {
  font-size: clamp(180px, 17.5vw, 336px);
  opacity: 0.4;
  color: rgba(255, 255, 255, 0.4);
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  bottom: 0;
  z-index: 0;
  line-height: 1;
}
main .top01 .top01_inner .top01_item01 .contents_line02 .col-10 .text_wrap {
  width: 45%;
}
main .top01 .top01_inner .top01_item02 {
  background-image: url("../img/top/about_bg02.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
main .top01 .top01_inner .top01_item02 .contents_line02 .col-10 .position-relative .top01_item02_content .wrap {
  z-index: 0;
}
main .top01 .top01_inner .top01_item02 .contents_line02 .col-10 .position-relative .top01_item02_content .wrap .img {
  z-index: -1;
  width: 95.9vw;
  height: 100%;
  left: -8.3vw;
}
main .top01 .top01_inner .top01_item02 .contents_line02 .col-10 .position-relative .top01_item02_content .wrap .img img {
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}
main .top01 .top01_inner .top01_item02 .contents_line02 .col-10 .position-relative .top01_item02_content .wrap .text_wrap .item {
  background: #EDFCFF;
  background: -webkit-gradient(linear, left top, left bottom, from(rgb(237, 252, 255)), to(rgb(255, 255, 255)));
  background: linear-gradient(180deg, rgb(237, 252, 255) 0%, rgb(255, 255, 255) 100%);
  width: 42%;
  -webkit-filter: drop-shadow(0px 4px 10px rgba(29, 228, 250, 0.5));
          filter: drop-shadow(0px 4px 10px rgba(29, 228, 250, 0.5));
}
main .top01 .top01_inner .top01_item02 .contents_line02 .col-10 .position-relative .top01_item02_content .wrap .text_wrap .item:nth-of-type(2) {
  margin-top: 12.4vw;
}
main .top01 .top01_inner .top01_item02 .contents_line02 .col-10 .position-relative .top01_item02_content .wrap .text_wrap .item:nth-of-type(3) {
  margin-top: -4vw;
}
main .top01 .top01_inner .top01_item02 .contents_line02 .col-10 .position-relative .top01_item02_content .wrap .text_wrap .item p.pb20 {
  border-bottom: 1px solid #7BF6FF;
}
main .info_wrap .line_wrap {
  top: 0;
  left: 0;
  z-index: -1;
}
main .info_wrap .line_wrap .line {
  -webkit-transition-property: clip-path;
  transition-property: clip-path;
  -webkit-transition: 1.4s cubic-bezier(0.37, 0, 0.63, 1);
  transition: 1.4s cubic-bezier(0.37, 0, 0.63, 1);
  clip-path: inset(0 0 100% 0);
}
main .info_wrap .line_wrap .line.scrollin {
  clip-path: inset(0) !important;
}
main .info_wrap .bg {
  top: 5.2vw;
  left: 0;
  width: 100%;
  z-index: -1;
}
main .info_wrap .top02 .top02_inner .col-10 .top02_row .item {
  width: 45%;
}
main .info_wrap .top03 .top03_inner .top03_row .left {
  width: 40%;
}
main .info_wrap .top03 .top03_inner .top03_row .right {
  width: 50%;
}
main .info_wrap .top03 .top03_inner .top03_row .right ul li {
  border-bottom: 1px solid #93C6CF;
}
main .info_wrap .top03 .top03_inner .top03_row .right ul li:first-child {
  border-top: 1px solid #93C6CF;
}
main .info_wrap .top03 .top03_inner .top03_row .right ul li a p {
  width: 45%;
}
main .info_wrap .top03 .top03_inner .top03_row .right ul li a .right {
  width: 45%;
}
main .info_wrap .top03 .top03_inner .top03_row .right ul li a .right img {
  width: calc(100% - clamp(18px, 1.56vw, 30px) - 2.6vw);
}
main .info_wrap .top03 .top03_inner .top03_row .right ul li a .right .material-symbols-outlined {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: clamp(18px, 1.56vw, 30px);
  height: clamp(18px, 1.56vw, 30px);
}
main .info_wrap .top03 .top03_inner .top03_row .right ul li a:hover {
  background-color: #EDFCFF;
}
main .top04 {
  position: relative;
  z-index: 10;
}
main .top04::after {
  content: "";
  display: block;
  background-color: #F5F5F5;
  width: 100%;
  height: 95%;
  position: absolute;
  z-index: -1;
  bottom: 0;
  left: 0;
  border-radius: 0 0 0 5.2vw;
}
main .top04 h2 {
  gap: 2.6vw;
}
main .top04 h2 span.d-block {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
main .top04 h2::before, main .top04 h2::after {
  content: "";
  display: block;
  height: 1px;
  background-color: #7BF6FF;
}
main .top04 h2::before {
  width: 20%;
}
main .top04 h2::after {
  width: 80%;
}
main .top04 .top04_inner .col-10 .top04_row .item {
  width: 45%;
}
main .top04 .top04_inner .col-10 .top04_row .item .wrap {
  aspect-ratio: 16/9;
}
main .top04 .top04_inner .col-10 .top04_row .item .wrap iframe {
  width: 100%;
  height: 100%;
}
main .top05 {
  background-image: url("../img/top/top07.jpg");
  background-size: cover;
  background-position: left top;
  width: 100%;
  height: 41.5vw;
  margin-top: -3.6vw;
  position: relative;
  z-index: 0;
}
main .top05 .cmn_btn {
  -webkit-transform: translateY(30vw);
          transform: translateY(30vw);
}
main .top06 {
  border-radius: 5.2vw 0 0 5.2vw;
  margin-top: -3vw;
  position: relative;
  z-index: 100;
  overflow: hidden;
}
main .top06 p.position-absolute {
  top: 50%;
  left: 50%;
  line-height: 1;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: -1;
  opacity: 0.7;
  -webkit-filter: blur(5px);
          filter: blur(5px);
  white-space: nowrap;
}
main .top06 .top06_inner .col-10 .top06_row h2 {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
main .top06 .top06_inner .col-10 .top06_row .right01 {
  border-left: 1px solid #333333;
  width: 100%;
}
main .top06 .top06_inner .col-10 .top06_row .right01 .item:first-of-type {
  border-bottom: 1px solid #3B4E61;
}
main .top06 .top06_inner .col-10 .top06_row .right01 .item h3 {
  width: 35%;
}
main .top06 .top06_inner .col-10 .top06_row .right01 .item .right {
  width: 62%;
}
main .top06 .top06_inner .col-10 .top06_row .right01 .item .right a p {
  border: 1px solid #3B4E61;
}

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

footer

----------------------------------------------------------------*/
footer {
  background-image: url("../img/common/footer-bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  margin-top: -4.2vw;
}
footer .contents_line .footer_row {
  gap: 4vw;
}
footer .contents_line .footer_row .right .nav_wrap {
  border-bottom: 1px solid #FFFFFF;
}
footer .contents_line .footer_row .right .nav_wrap ul {
  gap: 1.2vw 2.6vw;
}
footer .contents_line .footer_row .right .nav_wrap ul li a:hover {
  color: #3B4E61;
}
footer .contents_line .footer_row .right .nav_wrap ul li a:hover svg path {
  fill: #3B4E61;
}