* {
  margin: 0;
  padding: 0;
}

html {
  font-size: 62.5%;
}

.adlp-wrap img {
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
}

li {
  list-style: none;
}

.in-right {
  text-align: right;
}

.in-left {
  text-align: left;
}

.in-center {
  text-align: center;
}

.pc-none {
  display: none;
}

.sp-none {
  display: block;
}

.disc li {
  list-style: disc inside;
}

.f-12 {
  font-size: min( 1.1111111111vw, 12px );
}

.f-15 {
  font-size: min( 1.3888888889vw, 15px );
}

.f-16 {
  font-size: min( 1.4814814815vw, 16px );
}

.f-18 {
  font-size: min( 1.6666666667vw, 18px );
}

.f-20 {
  font-size: min( 1.8518518519vw, 20px );
}

.f-21 {
  font-size: min( 1.9444444444vw, 21px );
}

.f-22 {
  font-size: min( 2.037037037vw, 22px );
}

.f-24 {
  font-size: min( 2.2222222222vw, 24px );
}

.f-26 {
  font-size: min( 2.4074074074vw, 26px );
}

.f-28 {
  font-size: min( 2.5925925926vw, 28px );
}

.f-30 {
  font-size: min( 2.7777777778vw, 30px );
}

.f-32 {
  font-size: min( 2.962962963vw, 32px );
}

.f-34 {
  font-size: min( 3.1481481481vw, 34px );
}

.f-36 {
  font-size: min( 3.3333333333vw, 36px );
}

.f-38 {
  font-size: min( 3.5185185185vw, 38px );
}

.f-40 {
  font-size: min( 3.7037037037vw, 40px );
}

.f-42 {
  font-size: min( 3.8888888889vw, 42px );
}

.f-44 {
  font-size: min( 4.0740740741vw, 44px );
}

.f-46 {
  font-size: min( 4.2592592593vw, 46px );
}

.f-48 {
  font-size: min( 4.4444444444vw, 48px );
}

.f-50 {
  font-size: min( 4.6296296296vw, 50px );
}

.f-54 {
  font-size: min( 5vw, 54px );
}

.f-56 {
  font-size: min( 5.1851851852vw, 56px );
}

.f-58 {
  font-size: min( 5.3703703704vw, 58px );
}

.f-60 {
  font-size: min( 5.5555555556vw, 60px );
}

.f-64 {
  font-size: min( 5.9259259259vw, 64px );
}

.f-66 {
  font-size: min( 6.1111111111vw, 66px );
}

.f-72 {
  font-size: min( 6.6666666667vw, 72px );
}

.f-90 {
  font-size: min( 8.3333333333vw, 90px );
}

.f-96 {
  font-size: min( 8.8888888889vw, 96px );
}

.f-80 {
  font-size: min( 7.4074074074vw, 80px );
}

.f-82 {
  font-size: min( 7.5925925926vw, 82px );
}

.f-84 {
  font-size: min( 7.7777777778vw, 84px );
}

.f-104 {
  font-size: min( 9.6296296296vw, 104px );
}

.f-144 {
  font-size: min( 13.3333333333vw, 144px );
}

.f-162 {
  font-size: min( 15vw, 162px );
}

.f-164 {
  font-size: min( 15.1851851852vw, 164px );
}

.f-212 {
  font-size: min( 19.6296296296vw, 212px );
}

.f-220 {
  font-size: min( 20.3703703704vw, 220px );
}

.lh-08 {
  line-height: 0.8;
}

.lh-09 {
  line-height: 0.9;
}

.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-16 {
  line-height: 1.6;
}

.lh-17 {
  line-height: 1.7;
}

.lh-18 {
  line-height: 1.8;
}

.lh-20 {
  line-height: 2;
}

.ls-none {
  letter-spacing: 0;
}

.ls-04 {
  letter-spacing: 0.04em;
}

.ls-05 {
  letter-spacing: 0.05em;
}

.ls-06 {
  letter-spacing: 0.06em;
}

.ls-08 {
  letter-spacing: 0.08em;
}

.ls-10 {
  letter-spacing: 0.1em;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min( 1.4814814815vw, 16px );
  font-feature-settings: "palt";
  line-height: 1.6;
  letter-spacing: 0.04em;
  color: #050505;
}

@media all and (min-width: 0px) and (max-width: 767.9px) {
  body {
    font-size: 3.4666666667vw;
  }
}
h1, h2, h3, h4, h5 {
  font-weight: 700;
}

.sans {
  font-family: "Noto Sans JP", sans-serif;
}

.en {
  font-family: "Roboto Condensed", sans-serif;
}

.w-regular {
  font-weight: 400;
}

.w-medium {
  font-weight: 500;
}

.w-semibold {
  font-weight: 600;
}

.w-bold {
  font-weight: 700;
}

.flex {
  display: flex;
  justify-content: space-between;
}

.table {
  display: table;
}

.inner {
  width: min( 100vw, 1080px );
  position: relative;
  margin: 0 auto;
}

@media all and (min-width: 0px) and (max-width: 767.9px) {
  .inner {
    width: min( 100vw, 750px );
  }
}
body {
  overflow-x: hidden;
}

body > div {
  max-width: min( 177.7777777778vw, 1920px );
  margin: 0 auto;
  overflow: hidden;
}

a {
  text-decoration: none;
  transition: all 0.2s;
}

a:hover {
  filter: brightness(120%);
  opacity: 0.92;
}

body {
  color: #333333;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  margin: 0;
  font-feature-settings: "palt" on;
  text-align: justify;
}

.adlp-btn {
  transition: filter 0.3s;
}

.adlp-btn:hover {
  filter: brightness(110%);
  transition: filter 0.3s;
}

@media screen and (min-width: 768px) {
  .sp:not(:root) {
    display: none !important;
  }
}

@media screen and (max-width: 767px) {
  .pc:not(:root) {
    display: none !important;
  }
}

.block {
  display: block;
}

.inline-block {
  display: inline-block;
}

@media screen and (min-width: 768px) {
  .adlp-outer {
    overflow-x: hidden;
    display: flex;
    justify-content: center;
    align-items: flex-start;
  }
}

.green {
  color: #03AF7A;
}

.orange {
  color: #FB9333;
}

figure {
  margin: 0;
}

@media screen and (max-width: 767px) {
  .adlp-wrap img {
    width: 100%;
  }
}

@media screen and (min-width: 768px) {
  .adlp-wrapper {
    min-width: 1920px;
    margin: 0 auto;
  }
}

.bold {
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  .dot-text {
    padding-top: 0.4em;
    background-position: top left -2px;
    background-repeat: repeat-x;
    background-size: 1.3em 0.6em;
    background-image: radial-gradient(0.1em 0.1em at center center, #EB5505, #EB5505 100%, transparent);
  }
}

.f-white {
  color: #fff;
}

.f-main {
  color: #C80012;
}

.f-sub-01 {
  color: #2B3467;
}

.f-sub-02 {
  color: #F9D949;
}

.f-sub-03 {
  color: #4EB9E4;
}

.f-gray-01 {
  color: #050505;
}

.f-gray-02 {
  color: #F2F2F2;
}

.f-gray-03 {
  color: #F0F0F0;
}

.adlp-wrap h2.hgroup {
  font-size: min( 2.962962963vw, 32px );
  text-align: center;
  line-height: 1.4;
  letter-spacing: 0.08em;
}

.adlp-wrap h2.hgroup .h201 {
  color: #F87984;
}

.adlp-wrap h2.hgroup .h202 {
  font-size: min( 4.4444444444vw, 48px );
}

@media all and (min-width: 0px) and (max-width: 767.9px) {
  .adlp-wrap h2.hgroup {
    font-size: min( 5.3333333333vw, 40px );
  }
  .adlp-wrap h2.hgroup .h202 {
    font-size: min( 8vw, 60px );
  }
}
body > iframe + img {
  display: block;
  height: 0;
}

.cv01 {
  padding: min( 5vw, 54px ) 0 min( 5.5555555556vw, 60px );
  background: #F2F2F2;
}

.cv01 .list01 {
  display: flex;
  justify-content: center;
  gap: min( 4.6296296296vw, 50px );
}

.cv01 .t01 {
  text-align: center;
  font-size: min( 2.037037037vw, 22px );
  font-weight: 500;
  margin-bottom: min( 0.9259259259vw, 10px );
}

.cv01-ex {
  padding-top: 0;
}

.cv01-ex h2 {
  font-size: min( 2.5925925926vw, 28px );
  letter-spacing: 0.08em;
  color: #fff;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: min( 2.2222222222vw, 24px );
  margin-bottom: min( 4.4444444444vw, 48px );
  padding: min( 1.2037037037vw, 13px );
  background: #C80012;
}

.cv01-ex h2 img {
  width: min( 15.462962963vw, 167px );
}

.cv-btn {
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: min( 1.4814814815vw, 16px );
  width: min( 39.8148148148vw, 430px );
  height: min( 7.4074074074vw, 80px );
  position: relative;
  margin: 0 auto;
  font-size: min( 2.4074074074vw, 26px );
  font-weight: 700;
  letter-spacing: 0.08em;
  text-align: center;
  line-height: 1.4;
  color: #fff;
  background: url(../img/common/icon-arrow-01.png) min( 36.2962962963vw, 392px ) 50% no-repeat #C80012;
  background-size: min( 1.4814814815vw, 16px );
  box-shadow: 0px min( 0.5555555556vw, 6px ) min( 0.5555555556vw, 6px ) rgba(0, 0, 0, 0.25);
  border-radius: min( 9.2592592593vw, 100px );
}

.cv-btn01 {
  gap: min( 0.8333333333vw, 9px );
  width: min( 27.7777777778vw, 300px );
  height: min( 5.1851851852vw, 56px );
  padding-right: min( 0.9259259259vw, 10px );
  font-size: min( 1.8518518519vw, 20px );
  background-position: min( 25vw, 270px ) 50%;
}

.cv-btn01 .cvt01 {
  display: flex;
  justify-content: center;
  align-items: center;
  width: min( 5.2777777778vw, 57px );
  height: min( 3.2407407407vw, 35px );
  font-size: min( 1.8518518519vw, 20px );
  font-weight: 500;
  color: #C80012;
  line-height: 1;
  background: #F9D949;
  border-radius: min( 0.3703703704vw, 4px );
}

.cv-btn02 .cvt01 {
  display: flex;
  justify-content: center;
  align-items: center;
  width: min( 7.5925925926vw, 82px );
  height: min( 4.6296296296vw, 50px );
  font-size: min( 2.4074074074vw, 26px );
  font-weight: 500;
  color: #C80012;
  line-height: 1;
  background: #F9D949;
  border-radius: min( 0.3703703704vw, 4px );
}

.cv-btn03 {
  background-color: #2B3467;
}

.cv-btn03 .cvt02 {
  display: flex;
  justify-content: center;
  align-items: center;
  width: min( 8.9814814815vw, 97px );
  height: min( 5.5555555556vw, 60px );
  font-size: min( 1.6666666667vw, 18px );
  font-weight: 700;
  color: #2B3467;
  line-height: 1.1;
  text-align: center;
  background: #fff;
  border-radius: min( 0.3703703704vw, 4px );
}

.cv-btn03 .en {
  font-size: min( 2.5925925926vw, 28px );
}

@media all and (min-width: 0px) and (max-width: 767.9px) {
  .cv01 {
    padding: min( 6.6666666667vw, 50px ) 0 min( 8vw, 60px );
  }
  .cv01 .list01 {
    flex-direction: column;
    gap: min( 4vw, 30px );
  }
  .cv01 .t01 {
    font-size: min( 3.4666666667vw, 26px );
    margin-bottom: min( 1.2vw, 9px );
  }
  .cv01-ex {
    padding-top: 0;
  }
  .cv01-ex h2 {
    font-size: min( 3.7333333333vw, 28px );
    gap: min( 3.2vw, 24px );
    margin-bottom: min( 6.6666666667vw, 50px );
    padding: min( 3.0666666667vw, 23px );
  }
  .cv01-ex h2 img {
    width: min( 22.2666666667vw, 167px );
  }
  .cv-btn {
    gap: min( 4vw, 30px );
    width: min( 84vw, 630px );
    height: min( 16vw, 120px );
    font-size: min( 4.2666666667vw, 32px );
    background: url(../img/common/icon-arrow-01.png) min( 75.7333333333vw, 568px ) 50% no-repeat #C80012;
    background-size: min( 3.7333333333vw, 28px );
    box-shadow: 0px min( 0.8vw, 6px ) min( 0.8vw, 6px ) rgba(0, 0, 0, 0.25);
    border-radius: min( 13.3333333333vw, 100px );
  }
  .cv-btn01 {
    gap: min( 2vw, 15px );
    width: min( 50.6666666667vw, 380px );
    height: min( 13.3333333333vw, 100px );
    padding-right: min( 0.9333333333vw, 7px );
    font-size: min( 3.2vw, 24px );
    background-position: min( 45.6vw, 342px ) 50%;
    background-size: min( 3.2vw, 24px ) min( 4vw, 30px );
  }
  .cv-btn01 .cvt01 {
    width: min( 9.3333333333vw, 70px );
    height: min( 5.8666666667vw, 44px );
    font-size: min( 3.2vw, 24px );
    border-radius: min( 0.6666666667vw, 5px );
  }
  .cv-btn02 .cvt01 {
    width: min( 16vw, 120px );
    height: min( 8vw, 60px );
    font-size: min( 4.2666666667vw, 32px );
    border-radius: min( 0.5333333333vw, 4px );
  }
  .cv-btn03 {
    background-color: #2B3467;
  }
  .cv-btn03 .cvt02 {
    width: min( 13.3333333333vw, 100px );
    height: min( 8vw, 60px );
    font-size: min( 2.4vw, 18px );
    border-radius: min( 0.5333333333vw, 4px );
  }
  .cv-btn03 .en {
    font-size: min( 3.7333333333vw, 28px );
    line-height: 1;
  }
}
.adlp-header {
  width: 100%;
  max-width: 1920px;
  background: #fff;
}

.adlp-header ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: min( 92.5925925926vw, 1000px );
  height: min( 7.4074074074vw, 80px );
  margin: 0 auto;
  font-size: min( 1.8518518519vw, 20px );
  font-weight: 700;
}

.adlp-header li {
  display: flex;
  align-items: center;
  gap: min( 1.9444444444vw, 21px );
}

.adlp-header img {
  width: min( 15.2777777778vw, 165px );
}

@media all and (min-width: 0px) and (max-width: 767.9px) {
  .adlp-header {
    width: min( 100vw, 750px );
    max-width: none;
  }
  .adlp-header ul {
    width: min( 92vw, 690px );
    height: min( 18.6666666667vw, 140px );
    font-size: min( 3.2vw, 24px );
  }
  .adlp-header li {
    flex-direction: column;
    gap: min( 0.1333333333vw, 1px );
  }
  .adlp-header img {
    width: min( 27.4666666667vw, 206px );
  }
}
.adlp-fv {
  box-sizing: border-box;
  height: min( 59.4074074074vw, 680px );
  position: relative;
  padding-top: min( 5.2777777778vw, 57px );
  background: #f5fafe url(../img/pc/fv-bg-01.jpg) 50% 0 no-repeat;
  background-size: min( 177.7777777778vw, 2110px );
}

.adlp-fv .inner {
  width: min( 96.2962962963vw, 1040px );
  height: 100%;
}

.adlp-fv h1 {
  font-size: min( 3.8888888889vw, 42px );
  line-height: 1.3;
  letter-spacing: 0.07em;
  color: #2B3467;
}

.adlp-fv h1 .h101 {
  font-size: min( 5.9259259259vw, 64px );
}
.adlp-fv h1 .h102 {
  font-size: min(1.2962962963vw, 14px);
}

.adlp-fv h1 img {
  width: min( 32.4074074074vw, 350px );
  margin: 0 min( 0.8333333333vw, 9px ) min( 0.6481481481vw, 7px ) 0;
}

.adlp-fv .list01 {
  display: flex;
  align-items: center;
  gap: min( 1.2962962963vw, 14px );
  margin-top: min( 4.8148148148vw, 52px );
  font-size: min( 2.037037037vw, 22px );
  font-weight: 700;
  color: #2B3467;
  line-height: 1.4;
  text-align: center;
}

.adlp-fv .list01 li {
  display: flex;
  justify-content: center;
  align-items: center;
  width: min( 15.2777777778vw, 165px );
  height: min( 15.2777777778vw, 165px );
  background: url(../img/common/fv-list.svg) no-repeat;
  background-size: min( 15.2777777778vw, 165px );
}

.adlp-fv .t01 {
  font-size: min( 3.7037037037vw, 40px );
  line-height: 1;
}

.adlp-fv h2 {
  display: flex;
  align-items: flex;
  gap: min( 1.3888888889vw, 15px );
  position: absolute;
  top: max( -0.7407407407vw, -8px );
  left: min( 48.5185185185vw, 524px );
  font-size: min( 2.4074074074vw, 26px );
  line-height: 1.2;
  text-align: center;
  transform: skewX(-10deg) rotate(-10deg);
}

.adlp-fv .h201 {
  font-size: min( 3.5185185185vw, 38px );
  color: #2B3467;
  line-height: 1.2;
}

.adlp-fv .h202 {
  color: #2B3467;
}

.adlp-fv .h203 {
  font-size: min( 5.5555555556vw, 60px );
  color: #C80012;
  line-height: 0.85;
  letter-spacing: 0.08em;
}

.adlp-fv .h204 {
  font-size: min( 9.0740740741vw, 98px );
  color: #C80012;
  line-height: 0.85;
  letter-spacing: -0.32em;
  position: relative;
  left: max( -1.8518518519vw, -20px );
}

.adlp-fv .h205 {
  font-size: min( 1.2962962963vw, 14px );
  font-weight: 400;
}

.adlp-fv .t02 {
  font-size: min( 1.2962962963vw, 14px );
  position: absolute;
  bottom: min( 3.7962962963vw, 41px );
  right: min( 1.4814814815vw, 16px );
}

@media all and (min-width: 0px) and (max-width: 767.9px) {
  .adlp-fv {
    height: min( 150.8vw, 1154px );
    padding-top: min( 2.962962963vw, 32px );
    background: #f5fafe url(../img/sp/fv-bg-01.jpg) 50% 0 no-repeat;
    background-size: 103%;
  }
  .adlp-fv .inner {
    width: min( 100vw, 750px );
  }
  .adlp-fv h1 {
    font-size: min( 5.3333333333vw, 40px );
    margin-left: min( 6.4vw, 48px );
  }
  .adlp-fv h1::first-line {
    font-size: min( 6.9333333333vw, 52px );
  }
  .adlp-fv h1 .h101 {
    font-size: min( 8.5333333333vw, 64px );
  }
  .adlp-fv h1 .h102 {
    font-size: min( 2.6666666667vw, 20px );
  }
  .adlp-fv h1 img {
    width: min( 57.4666666667vw, 431px );
    margin: 0 min( 2.5333333333vw, 19px ) 0 min( 1.8666666667vw, 14px );
  }
  .adlp-fv .list01 {
    gap: min( 2.2666666667vw, 17px );
    width: fit-content;
    margin: min( 2.2666666667vw, 17px ) auto 0;
    font-size: min( 3.7333333333vw, 28px );
  }
  .adlp-fv .list01 li {
    width: min( 28vw, 210px );
    height: min( 28vw, 210px );
    background-size: min( 28vw, 210px );
  }
  .adlp-fv .t01 {
    font-size: min( 6.6666666667vw, 50px );
  }
  .adlp-fv h2 {
    gap: min( 2.4vw, 18px );
    top: min( 78vw, 590px );
    left: min( 24.5333333333vw, 184px );
    font-size: min( 4.2666666667vw, 32px );
  }
  .adlp-fv .h201 {
    font-size: min( 6.4vw, 48px );
  }
  .adlp-fv .h203 {
    font-size: min( 10vw, 75px );
  }
  .adlp-fv .h204 {
    font-size: min( 16.2666666667vw, 122px );
    left: max( -3.2vw, -24px );
  }
  .adlp-fv .h205 {
    font-size: min( 2.6666666667vw, 20px );
  }
  .adlp-fv .t02 {
    font-size: min( 2.6666666667vw, 20px );
    width: min( 100vw, 750px );
    bottom: min( 1.666667vw, 16px );
    right: 0;
    text-align: center;
  }
}
.s01 .wrap01 {
  box-sizing: border-box;
  height: min( 54.2592592593vw, 586px );
  padding: min( 6.2037037037vw, 67px ) 0 min( 3.3333333333vw, 36px );
  background: url(../img/pc/s01-bg-01.jpg) 50% 0 no-repeat;
  background-size: min( 177.7777777778vw, 1920px );
  color: #fff;
}

.s01 h2 {
  display: flex;
  align-items: center;
  gap: min( 2.3148148148vw, 25px );
  font-size: min( 3.7037037037vw, 40px );
  line-height: 1.4;
  letter-spacing: 0.08em;
}

.s01 h2 img {
  width: min( 36.6666666667vw, 396px );
}

.s01 .h201 {
  padding-top: min( 2.3148148148vw, 25px );
}

.s01 .box01 {
  width: min( 53.2407407407vw, 575px );
}

.s01 .t01 {
  font-size: min( 2.037037037vw, 22px );
  line-height: 1.8;
  letter-spacing: 0.08em;
  margin: min( 3.5185185185vw, 38px ) 0 min( 2.7777777778vw, 30px );
  padding-top: min( 2.2222222222vw, 24px );
  border-top: min( 0.3703703704vw, 4px ) solid #fff;
}

.s01 .t02 {
  font-size: min( 2.4074074074vw, 26px );
  font-weight: 700;
  letter-spacing: 0.08em;
  color: #C80012;
  display: flex;
  justify-content: center;
  align-items: center;
  height: min( 6.8518518519vw, 74px );
  position: relative;
  background: #fff;
  border-radius: min( 0.9259259259vw, 10px );
  box-shadow: 0 min( 0.3703703704vw, 4px ) min( 1.2962962963vw, 14px ) rgba(0, 0, 0, 0.2);
}

.s01 .t02::after {
  content: "";
  display: block;
  width: min( 2.5vw, 27px );
  height: min( 2.037037037vw, 22px );
  position: absolute;
  top: min( 2.1296296296vw, 23px );
  right: max( -2.4074074074vw, -26px );
  background: #fff;
  clip-path: polygon(100% 0, 0 0, 0 100%);
}

.s01 .t03 {
  font-size: min( 2.962962963vw, 32px );
}

.s01 .wrap02 {
  padding: min( 2.5vw, 27px ) 0 min( 3.3333333333vw, 36px );
  color: #fff;
  background: #C80012;
}

.s01 .wrap02 h3 {
  font-size: min( 2.962962963vw, 32px );
  line-height: 1.4;
  letter-spacing: 0.08em;
  margin-bottom: min( 1.9444444444vw, 21px );
}

.s01 .list01 {
  display: flex;
  justify-content: center;
  gap: min( 4.9074074074vw, 53px );
  text-align: center;
}

.s01 .list01 p {
  margin-top: min( 0.7407407407vw, 8px );
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.08em;
}

.s01 .list01 li {
  position: relative;
}

.s01 .list01 li:nth-child(-n+3):after {
  content: "";
  display: block;
  width: min( 1.2962962963vw, 14px );
  height: min( 2.4074074074vw, 26px );
  position: absolute;
  top: min( 6.2962962963vw, 68px );
  right: max( -3.1481481481vw, -34px );
  background: url(../img/common/s01-arrow-01.svg) no-repeat;
  background-size: min( 1.2962962963vw, 14px );
}

.s01 .list01 img {
  width: min( 21.2962962963vw, 230px );
}

@media all and (min-width: 0px) and (max-width: 767.9px) {
  .s01 .wrap01 {
    height: min( 166.8vw, 1251px );
    padding: min( 10.6666666667vw, 80px ) 0 0;
    background: url(../img/sp/s01-bg-01.jpg) 50% 0 no-repeat;
    background-size: 100%;
  }
  .s01 h2 {
    justify-content: center;
    gap: min( 4.4vw, 33px );
    font-size: min( 6.4vw, 48px );
  }
  .s01 h2 img {
    width: min( 65.7333333333vw, 493px );
  }
  .s01 .h201 {
    padding-top: min( 4.2666666667vw, 32px );
  }
  .s01 .box01 {
    width: min( 92vw, 690px );
    margin: 0 auto;
  }
  .s01 .t01 {
    font-size: min( 3.4666666667vw, 26px );
    margin: min( 5.0666666667vw, 38px ) 0 min( 3.7333333333vw, 28px );
    padding-top: min( 3.2vw, 24px );
    border-top: min( 0.6666666667vw, 5px ) solid #fff;
  }
  .s01 .t02 {
    display: flex;
    font-size: min( 4.2666666667vw, 32px );
    height: min( 12.2666666667vw, 92px );
    border-radius: min( 1.6vw, 12px );
    box-shadow: 0 min( 0.6666666667vw, 5px ) min( 2.4vw, 18px ) rgba(0, 0, 0, 0.2);
  }
  .s01 .t02::after {
    width: min( 4.6666666667vw, 35px );
    height: min( 5.8666666667vw, 44px );
    top: auto;
    bottom: max( -5.7333333333vw, -43px );
    right: 50%;
    transform: translate(50%);
    clip-path: polygon(100% 0, 0 0, 100% 100%);
  }
  .s01 .t03 {
    font-size: min( 5.3333333333vw, 40px );
  }
  .s01 .wrap02 {
    padding: min( 5.8666666667vw, 44px ) 0 min( 9.7333333333vw, 73px );
  }
  .s01 .wrap02 h3 {
    font-size: min( 5.3333333333vw, 40px );
    text-align: center;
    margin-bottom: min( 3.8666666667vw, 29px );
  }
  .s01 .list01 {
    flex-direction: column;
    gap: min( 6.2666666667vw, 47px );
  }
  .s01 .list01 p {
    margin-top: min( 1.4666666667vw, 11px );
  }
  .s01 .list01 li:nth-child(-n+3):after {
    width: min( 2.1333333333vw, 16px );
    height: min( 4.4vw, 33px );
    top: auto;
    bottom: max( -5.0666666667vw, -38px );
    right: 50%;
    transform: translate(50%) rotate(90deg);
    background-size: min( 2.1333333333vw, 16px );
  }
  .s01 .list01 img {
    width: min( 66.6666666667vw, 500px );
  }
}
.s02 {
  padding: min( 25.2777777778vw, 273px ) 0 min( 4.9074074074vw, 53px );
  background: url(../img/common/s02-bg-01.jpg) 50% min( 4.9074074074vw, 53px ) no-repeat #FFF0F0;
  background-size: min( 53.5185185185vw, 578px );
}

.s02 .box01 {
  display: flex;
  justify-content: center;
  align-items: top;
  gap: min( 3.7962962963vw, 41px );
  margin: min( 1.8518518519vw, 20px ) 0 0;
}

.s02 h2 {
  font-size: min( 4.4444444444vw, 48px );
  line-height: 1;
}

.s02 .h201 {
  color: #C80012;
}

.s02 h2 .en {
  font-size: min( 7.2222222222vw, 78px );
  line-height: 0.9;
}

.s02 .t01 {
  font-size: min( 2.4074074074vw, 26px );
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.4;
  display: flex;
  justify-content: center;
  align-items: center;
  width: min( 39.0740740741vw, 422px );
  height: min( 5.9259259259vw, 64px );
  position: relative;
  background: #fff;
  border-radius: min( 0.9259259259vw, 10px );
  box-shadow: 0 min( 0.5555555556vw, 6px ) min( 1.6666666667vw, 18px ) rgba(0, 0, 0, 0.2);
}

.s02 .t01:after {
  content: "";
  display: block;
  width: min( 1.6666666667vw, 18px );
  height: min( 2.2222222222vw, 24px );
  position: absolute;
  bottom: max( -2.1296296296vw, -23px );
  left: 50%;
  transform: translate(-50%);
  background: #fff;
  clip-path: polygon(100% 0, 0 0, 0 100%);
}

.s02 .box02 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  margin-top: min( 2.7777777778vw, 30px );
  padding: min( 2.4074074074vw, 26px ) min( 1.6666666667vw, 18px );
  background: #fff;
}

.s02 .box02 li img {
  display: block;
  width: min( 11.8518518519vw, 128px );
  max-width: none;
  position: relative;
  left: 50%;
  transform: translate(-50%);
}

.s02 .box02 li:nth-child(3) {
  width: min( 8.1481481481vw, 88px );
  overflow: hidden;
}

.s02 .box02 li:nth-child(9) {
  width: min( 6.4814814815vw, 70px );
  overflow: hidden;
}

.s02 .box02 li:nth-child(9) img,
.s02 .box02 li:nth-child(13) img {
  width: min( 14.4444444444vw, 156px );
}

.s02 .box02 li:nth-child(7) {
  width: min( 12.962962963vw, 140px );
  overflow: hidden;
}

.s02 .box02 li:nth-child(2) img,
.s02 .box02 li:nth-child(7) img {
  width: min( 15.1851851852vw, 164px );
}

.s02 .box02 li:nth-child(6) {
  width: min( 16.6666666667vw, 180px );
  overflow: hidden;
}

.s02 .box02 li:nth-child(6) img {
  width: min( 18.5185185185vw, 200px );
}

.s02 .box02 li:nth-child(13) img {
  width: min( 15.9259259259vw, 172px );
}

@media all and (min-width: 0px) and (max-width: 767px) {
  .s02 {
    padding: min( 46.9333333333vw, 352px ) 0 min( 7.4074074074vw, 80px );
    background: url(../img/common/s02-bg-01.jpg) 50% min( 10.6666666667vw, 80px ) no-repeat #FFF0F0;
    background-size: min( 93.3333333333vw, 700px );
  }
  .s02 .box01 {
    flex-direction: column;
    align-items: center;
    gap: min( 0.6666666667vw, 5px );
    margin: 0;
  }
  .s02 h2 {
    font-size: min( 8vw, 60px );
  }
  .s02 h2 .en {
    font-size: min( 13.0666666667vw, 98px );
  }
  .s02 .t01 {
    font-size: min( 4.2666666667vw, 32px );
    width: min( 70.4vw, 528px );
    height: min( 10.6666666667vw, 80px );
    margin-top: min( 2.6666666667vw, 20px );
    border-radius: min( 1.6vw, 12px );
    box-shadow: 0 min( 0.6666666667vw, 5px ) min( 2.4vw, 18px ) rgba(0, 0, 0, 0.2);
  }
  .s02 .t01:after {
    width: min( 4vw, 30px );
    height: min( 5.3333333333vw, 40px );
    bottom: max( -4vw, -30px );
  }
  .s02 .box02 {
    width: min( 84vw, 630px );
    margin: min( 9.3333333333vw, 70px ) auto 0;
    padding: min( 3.7333333333vw, 28px ) min( 3.2vw, 24px );
  }
  .s02 .box02 li {
    height: min( 11.2vw, 84px );
    display: flex;
    align-items: center;
    overflow: hidden;
  }
  .s02 .box02 li img {
    width: min( 14vw, 105px );
  }
  .s02 .box02 li:nth-child(3),
  .s02 .box02 li:nth-child(14) {
    width: min( 10.6666666667vw, 80px );
  }
  .s02 .box02 li:nth-child(10) {
    /* width: min( 8vw, 60px ); */
  }
  .s02 .box02 li:nth-child(10) img,
  .s02 .box02 li:nth-child(14) img {
    width: min( 19.7333333333vw, 148px );
  }
  .s02 .box02 li:nth-child(7) {
    width: min( 18.6666666667vw, 140px );
  }
  .s02 .box02 li:nth-child(2) img,
  .s02 .box02 li:nth-child(7) img {
    width: min( 21.3333333333vw, 160px );
  }
  .s02 .box02 li:nth-child(6) {
    width: min( 18.6666666667vw, 140px );
  }
  .s02 .box02 li:nth-child(6) img {
    width: min( 26.6666666667vw, 200px );
  }
  .s02 .box02 li:nth-child(15) img {
    width: min( 21.3333333333vw, 160px );
  }
}
.s03 {
  padding: min( 7.4074074074vw, 80px ) 0 min( 4.8148148148vw, 52px );
  background: url(../img/pc/s03-bg-01.png) 50% 0 no-repeat, url(../img/pc/s03-bg-02.png) 50% 100% no-repeat;
  background-size: min( 177.7777777778vw, 1920px ), min( 177.7777777778vw, 1920px );
}

.s03 h2.hgroup {
  padding-bottom: min( 1.4814814815vw, 16px );
  background: url(../img/common/s03-bg-03.png) 50% 100% no-repeat;
  background-size: min( 25.5555555556vw, 276px );
}

.s03 .h203 {
  color: #C80012;
}

.s03 .box01 {
  display: flex;
  flex-direction: column;
  gap: min( 7.4074074074vw, 80px );
  width: min( 92.5925925926vw, 1000px );
  margin: min( 6.2962962963vw, 68px ) auto 0;
}

.s03 .box01 > li {
  display: flex;
  gap: min( 3.7037037037vw, 40px );
}

.s03 .box01 > li:nth-child(even) {
  flex-direction: row-reverse;
  margin-top: max( -2.7777777778vw, -30px );
}

.s03 .box01 > li > div {
  width: min( 46.2962962963vw, 500px );
  position: relative;
}

.s03 .box01 > li > div:first-child {
  width: min( 42.5925925926vw, 460px );
}

.s03 .box01 .no {
  width: min( 11.1111111111vw, 120px );
  position: absolute;
  top: max( -5.5555555556vw, -60px );
  left: min( 1.8518518519vw, 20px );
}

.s03 .box01 .pic {
  width: min( 42.5925925926vw, 460px );
}

.s03 .t02 {
  width: min( 21.6666666667vw, 234px );
  margin-top: min( 0.7407407407vw, 8px );
  font-size: min( 1.2962962963vw, 14px );
  line-height: 1.4;
}

.s03 .box01 h3 {
  font-size: min( 2.962962963vw, 32px );
  line-height: 1.4;
  letter-spacing: 0.08em;
  color: #C80012;
  text-align: center;
  margin-bottom: min( 2.8703703704vw, 31px );
  padding: min( 1.3888888889vw, 15px ) 0 min( 1.8518518519vw, 20px );
  background: #fff;
  border: 1px solid #C80012;
  border-width: min( 0.1851851852vw, 2px ) 0;
}

.s03 .box01 div + div p {
  line-height: 1.8;
  letter-spacing: 0.08em;
}

.s03 .badge01 {
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-size: min( 1.2962962963vw, 14px );
  letter-spacing: 0.08em;
  width: min( 16.1111111111vw, 174px );
  height: min( 16.1111111111vw, 174px );
  position: absolute;
  top: min( 16.1111111111vw, 174px );
  left: min( 25.462962963vw, 275px );
  padding-top: min( 2.2222222222vw, 24px );
  background: linear-gradient(135deg, #F9D949 50.44%, #EDCE41 50.45%);
  border-radius: 50%;
}

.s03 .badge01-t01 {
  font-size: min( 1.2962962963vw, 14px );
  color: #2B3467;
  letter-spacing: 0;
  line-height: 1.4;
}

.s03 .badge01-t02 {
  font-size: min( 2.2222222222vw, 24px );
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.08em;
}

.s03 .badge01-t03 {
  font-size: min( 4.0740740741vw, 44px );
  font-weight: 700;
}

.s03 .badge01-t04 {
  font-size: min( 5.9259259259vw, 64px );
  line-height: 0.9;
  letter-spacing: -0.15em;
}

@media all and (min-width: 0px) and (max-width: 767px) {
  .s03 {
    padding: min( 11.4666666667vw, 86px ) 0 min( 11.7333333333vw, 88px );
    background: url(../img/sp/s03-bg-01.png) 50% 0 no-repeat, url(../img/sp/s03-bg-02.png) 50% 100% no-repeat;
    background-size: 100%, 100%;
  }
  .s03 h2.hgroup {
    padding-bottom: min( 1.6vw, 12px );
    background-size: min( 36.8vw, 276px );
  }
  .s03 .box01 {
    gap: min( 11.7333333333vw, 88px );
    width: min( 83.3333333333vw, 625px );
    margin: min( 9.6vw, 72px ) auto 0;
  }
  .s03 .box01 > li {
    flex-direction: column;
    gap: min( 6.6666666667vw, 50px );
  }
  .s03 .box01 > li:nth-child(even) {
    flex-direction: column;
    margin-top: 0;
  }
  .s03 .box01 > li > div {
    width: min( 83.3333333333vw, 625px );
  }
  .s03 .box01 > li > div:first-child {
    width: min( 83.3333333333vw, 625px );
  }
  .s03 .box01 .no {
    width: min( 20vw, 150px );
    top: max( -10vw, -75px );
    left: min( 6vw, 45px );
  }
  .s03 .box01 .pic {
    display: block;
    width: min( 76.6666666667vw, 575px );
    margin: 0 auto;
  }
  .s03 .t02 {
    width: min( 45.7333333333vw, 343px );
    margin: min( 1.0666666667vw, 8px ) 0 max( -5.0666666667vw, -38px ) min( 3.2vw, 24px );
    font-size: min( 2.6666666667vw, 20px );
  }
  .s03 .box01 h3 {
    font-size: min( 5.3333333333vw, 40px );
    margin-bottom: min( 4.5333333333vw, 34px );
    padding: min( 2.4vw, 18px ) 0 min( 2.6666666667vw, 20px );
    border-width: min( 0.3333333333vw, 2.5px ) 0;
  }
  .s03 .badge01 {
    font-size: min( 2.6666666667vw, 20px );
    width: min( 30.6666666667vw, 230px );
    height: min( 30.6666666667vw, 230px );
    top: min( 27.4666666667vw, 206px );
    left: min( 48vw, 360px );
    padding-top: min( 4.2666666667vw, 32px );
  }
  .s03 .badge01-t01 {
    font-size: min( 2.6666666667vw, 20px );
    color: #2B3467;
    letter-spacing: 0;
    line-height: 1.3;
  }
  .s03 .badge01-t02 {
    font-size: min( 4vw, 30px );
  }
  .s03 .badge01-t03 {
    font-size: min( 7.3333333333vw, 55px );
  }
  .s03 .badge01-t04 {
    font-size: min( 10.6666666667vw, 80px );
    line-height: 0.8;
  }
  .s03 .badge01-t05 {
    font-size: min( 2.6666666667vw, 20px );
  }
}
.s04 {
  position: relative;
  padding: min( 8.3333333333vw, 90px ) 0 min( 8.8888888889vw, 96px );
  background: #F5FAFF;
}

.s04::after {
  content: "";
  display: block;
  width: min( 17.1296296296vw, 185px );
  height: min( 30.1851851852vw, 326px );
  position: absolute;
  top: max( -7.2222222222vw, -78px );
  left: calc(50% + min( 36.7592592593vw, 397px ));
  background: url(../img/pc/s04-illust.png) no-repeat;
  background-size: min( 17.1296296296vw, 185px );
}

.s04 .inner .hgroup .h201 {
  color: #9CA3CB;
}

.s04 h2 {
  color: #2B3467;
}

.s04 h3 {
  font-size: min( 2.962962963vw, 32px );
  color: #9CA3CB;
  display: flex;
  align-items: center;
  gap: min( 1.1111111111vw, 12px );
  width: fit-content;
  margin: min( 4.0740740741vw, 44px ) auto min( 5.5555555556vw, 60px );
}

.s04 h3::before, .s04 h3::after {
  content: "";
  display: block;
  width: min( 4.4444444444vw, 48px );
  height: min( 0.5555555556vw, 6px );
  background: #9CA3CB;
}

.s04 .list01 {
  display: flex;
  justify-content: center;
  gap: min( 4.1666666667vw, 45px );
}

.s04 .list01 li {
  width: min( 30.5555555556vw, 330px );
  position: relative;
}

.s04 .list01 img {
  width: min( 30.5555555556vw, 330px );
}

.s04 .list01 .badge {
  display: block;
  width: min( 18.2407407407vw, 197px );
  position: absolute;
  top: max( -4.0740740741vw, -44px );
  left: max( -4.4444444444vw, -48px );
}

.s04 .list01 h4 {
  font-size: min( 2.4074074074vw, 26px );
  letter-spacing: 0.08em;
  line-height: 1.4;
  text-align: center;
  color: #fff;
  position: relative;
  margin-bottom: min( 1.8518518519vw, 20px );
  padding: min( 0.9259259259vw, 10px );
  background: #2B3467;
}

.s04 .list01 h4:after {
  content: "";
  display: block;
  width: min( 2.4074074074vw, 26px );
  height: min( 2.4074074074vw, 26px );
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(255, 255, 255, 0.6);
  clip-path: polygon(100% 0, 0 0, 0 100%);
}

.s04 .list01 p {
  line-height: 1.8;
  letter-spacing: 0.08em;
}

.s04 .list01 .t01 {
  font-size: min( 1.2962962963vw, 14px );
}

.s04 .t02 {
  font-size: min( 1.2962962963vw, 14px );
  line-height: 1.4;
  letter-spacing: 0.08em;
  text-align: right;
  margin-top: min( 2.4074074074vw, 26px );
}

@media all and (min-width: 0px) and (max-width: 767px) {
  .s04 {
    padding: min( 11.4666666667vw, 86px ) 0 min( 12.8vw, 96px );
  }
  .s04::after {
    content: "";
    display: none;
    background: none;
  }
  .s04 h3 {
    font-size: min( 5.3333333333vw, 40px );
    gap: min( 1.6vw, 12px );
    margin: min( 5.0666666667vw, 38px ) auto min( 7.7333333333vw, 58px );
  }
  .s04 h3::before, .s04 h3::after {
    width: min( 6.4vw, 48px );
    height: min( 0.8vw, 6px );
  }
  .s04 .list01 {
    flex-direction: column;
    gap: min( 5.0666666667vw, 38px );
    width: min( 69.3333333333vw, 520px );
    margin: 0 auto;
  }
  .s04 .list01 li {
    width: min( 69.3333333333vw, 520px );
  }
  .s04 .list01 img {
    width: min( 69.3333333333vw, 520px );
  }
  .s04 .list01 .badge {
    width: min( 26.6666666667vw, 200px );
    top: max( -2.6666666667vw, -20px );
    left: min( 2.6666666667vw, 20px );
  }
  .s04 .list01 h4 {
    font-size: min( 4.2666666667vw, 32px );
    margin-bottom: min( 1.7333333333vw, 13px );
    padding: min( 0.8vw, 6px );
  }
  .s04 .list01 h4:after {
    top: -1px;
    width: min( 3.4666666667vw, 26px );
    height: min( 3.4666666667vw, 26px );
  }
  .s04 .list01 .t01 {
    font-size: min( 2.6666666667vw, 20px );
  }
  .s04 .t02 {
    font-size: min( 2.6666666667vw, 20px );
    margin-top: min( 5.3333333333vw, 40px );
    text-align: center;
  }
}
.s05 {
  padding: min( 9.2592592593vw, 100px ) 0 min( 12.6851851852vw, 137px );
  background: url(../img/pc/s05-bg-01.jpg) 50% 100% no-repeat;
  background-size: min( 177.7777777778vw, 1920px );
}

.s05 h2 {
  font-size: min( 3.5185185185vw, 38px );
  letter-spacing: 0.08em;
  line-height: 1.8;
  text-align: center;
  margin-bottom: min( 4.6296296296vw, 50px );
  background: url(../img/pc/s05-h2-bg.svg) 50% 0 no-repeat;
  background-size: min( 98.7037037037vw, 1066px );
}

.s05 .h201 {
  line-height: 1;
  color: #fff;
  display: inline-block;
  margin-right: min( 1.8518518519vw, 20px );
  padding: min( 1.0185185185vw, 11px ) min( 1.9444444444vw, 21px );
  background: #C80012;
}

.s05 .list01 {
  display: flex;
  justify-content: center;
  gap: min( 5.5555555556vw, 60px ) min( 7.7777777778vw, 84px );
  flex-wrap: wrap;
  margin-bottom: min( 20.1851851852vw, 218px );
}

.s05 .list01 .header {
  width: min( 38.7037037037vw, 418px );
  height: min( 15.5555555556vw, 168px );
  position: relative;
  z-index: 1;
  bottom: max( -0.7407407407vw, -8px );
  background: url(../img/pc/s05-item-bg.svg) no-repeat;
  background-size: min( 38.7037037037vw, 418px );
  filter: drop-shadow(0 min( 0.3703703704vw, 4px ) min( 1.2962962963vw, 14px ) rgba(0, 0, 0, 0.2));
  transform: translateZ(0);
}

.s05 .list01 .header > div {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: min( 1.4814814815vw, 16px );
  padding: min( 1.9444444444vw, 21px ) min( 1.8518518519vw, 20px ) min( 1.1111111111vw, 12px ) min( 1.5740740741vw, 17px );
}

.s05 .list01 .header img {
  width: min( 7.962962963vw, 86px );
}

.s05 .t01 {
  font-size: min( 1.6666666667vw, 18px );
  letter-spacing: 0.075em;
}

.s05 .t02 {
  font-weight: 700;
  color: #fff;
  line-height: 1.4;
  letter-spacing: 0.08em;
  display: flex;
  justify-content: center;
  align-items: center;
  width: min( 14.8148148148vw, 160px );
  height: min( 2.4074074074vw, 26px );
  margin: 0 auto;
  background: #4EB9E4;
}

.s05 .list01 .content {
  position: relative;
  box-shadow: 0 min( 0.3703703704vw, 4px ) min( 1.2962962963vw, 14px ) rgba(0, 0, 0, 0.2);
}

.s05 .content h3 {
  display: flex;
  justify-content: center;
  align-items: center;
  height: min( 5.5555555556vw, 60px );
  font-size: min( 2.4074074074vw, 26px );
  letter-spacing: 0.08em;
  color: #fff;
  background: #C80012;
}

.s05 .content img {
  width: min( 38.7037037037vw, 418px );
}

.s05 .modal-trigger {
  display: flex;
  justify-content: center;
  align-items: center;
  width: min( 33.1481481481vw, 358px );
  height: min( 4.1666666667vw, 45px );
  position: absolute;
  bottom: min( 1.3888888889vw, 15px );
  left: 50%;
  transform: translate(-50%);
  background: url(../img/pc/s05-arrow-01.svg) min( 27.2222222222vw, 294px ) 50% no-repeat rgba(5, 5, 5, 0.6);
  box-shadow: 0 min( 0.3703703704vw, 4px ) min( 1.2962962963vw, 14px ) rgba(0, 0, 0, 0.2);
  border-radius: min( 9.2592592593vw, 100px );
  font-size: min( 1.6666666667vw, 18px );
  font-weight: 500;
  letter-spacing: 0.08em;
  color: #fff;
  text-align: center;
  cursor: pointer;
  transition: background-color 0.2s;
}

.s05 .modal-trigger:hover {
  background-color: rgba(5, 5, 5, 0.4);
}

.s05 .box01 {
  width: fit-content;
  margin-left: min( 7.4074074074vw, 80px );
  text-align: center;
}

.s05 .t03 {
  font-size: min( 1.8518518519vw, 20px );
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.08em;
}

.s05 .t04 {
  font-size: min( 1.8518518519vw, 20px );
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.08em;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  width: min( 9.9074074074vw, 107px );
  height: min( 2.962962963vw, 32px );
  margin: min( 1.3888888889vw, 15px ) auto min( 1.1111111111vw, 12px );
  position: relative;
  background: #4EB9E4;
}

.s05 .t04::after {
  content: "";
  display: block;
  width: min( 1.4814814815vw, 16px );
  height: min( 0.5555555556vw, 6px );
  position: absolute;
  bottom: max( -0.462962963vw, -5px );
  left: 50%;
  transform: translate(-50%);
  background: #4EB9E4;
  clip-path: polygon(50% 100%, 0 0, 100% 0);
}

.s05 .t05 {
  font-size: min( 2.962962963vw, 32px );
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.08em;
}

.s05 .t06 {
  color: #C80012;
}

.adlp-modal {
  display: none;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
}

.adlp-modal .box01 {
  box-sizing: border-box;
  width: 80vw;
  height: 80vh;
  position: absolute;
  top: 50%;
  left: 50%;
  padding: min( 2.962962963vw, 32px );
  transform: translate(-50%, -50%);
  background: #fff;
  border-radius: min( 0.9259259259vw, 10px );
  box-shadow: 0 min( 0.3703703704vw, 4px ) min( 1.2962962963vw, 14px ) rgba(0, 0, 0, 0.2);
}

.adlp-modal .inner {
  width: 100%;
  height: 100%;
  overflow: auto;
}

.adlp-modal .inner img {
  width: 100%;
  display: none;
}

.adlp-modal .close {
  display: flex;
  justify-content: center;
  align-items: center;
  width: min( 4.4444444444vw, 48px );
  height: min( 4.4444444444vw, 48px );
  position: absolute;
  top: max( -1.4814814815vw, -16px );
  right: max( -1.4814814815vw, -16px );
  background: #C80012;
  border-radius: 50%;
  cursor: pointer;
  transition: filter 0.2s;
}

.adlp-modal .close img {
  width: min( 2.5925925926vw, 28px );
}

.adlp-modal .close:hover {
  filter: brightness(120%);
}

@media all and (min-width: 0px) and (max-width: 767px) {
  .s05 {
    padding: min( 2.6666666667vw, 20px ) 0 min( 6.6666666667vw, 50px );
    background: url(../img/sp/s05-bg-01.jpg) 50% 100% no-repeat;
    background-size: 100%;
  }
  .s05 h2 {
    font-size: min( 5.3333333333vw, 40px );
    line-height: 1.4;
    margin-bottom: min( 6.6666666667vw, 50px );
    padding-top: min( 7.4666666667vw, 56px );
    background: url(../img/sp/s05-h2-bg.svg) 50% 0 no-repeat;
    background-size: min( 96vw, 720px );
  }
  .s05 .h201 {
    margin-right: 0;
    padding: min( 1.6vw, 12px ) min( 2.6666666667vw, 20px );
  }
  .s05 .list01 {
    flex-direction: column;
    gap: min( 8vw, 60px );
    width: min( 69.3333333333vw, 520px );
    margin: 0 auto min( 77.6vw, 582px );
  }
  .s05 .list01 .header {
    width: min( 69.3333333333vw, 520px );
    height: min( 30.6666666667vw, 230px );
    bottom: max( -1.3333333333vw, -10px );
    background: url(../img/sp/s05-item-bg.svg) no-repeat;
    background-size: min( 69.3333333333vw, 520px );
    filter: drop-shadow(0 min( 0.6666666667vw, 5px ) min( 2.4vw, 18px ) rgba(0, 0, 0, 0.2));
  }
  .s05 .list01 .header > div {
    gap: min( 2.6666666667vw, 20px );
    padding: min( 3.3333333333vw, 25px ) min( 3.3333333333vw, 25px ) min( 2.1333333333vw, 16px ) min( 2.9333333333vw, 22px );
  }
  .s05 .list01 .header img {
    width: min( 14.4vw, 108px );
  }
  .s05 .t01 {
    font-size: min( 3.4666666667vw, 26px );
    letter-spacing: 0.08em;
    margin: max( -0.9259259259vw, -10px ) 0;
  }
  .s05 .t02 {
    width: min( 31.3333333333vw, 235px );
    height: min( 5.2vw, 39px );
  }
  .s05 .list01 .content {
    box-shadow: 0 min( 0.5333333333vw, 4px ) min( 1.8666666667vw, 14px ) rgba(0, 0, 0, 0.2);
  }
  .s05 .content h3 {
    height: min( 10vw, 75px );
    font-size: min( 4.2666666667vw, 32px );
  }
  .s05 .content img {
    width: min( 69.3333333333vw, 520px );
  }
  .s05 .modal-trigger {
    width: min( 62.4vw, 468px );
    height: min( 16vw, 120px );
    bottom: min( 2.6666666667vw, 20px );
    background: url(../img/sp/s05-arrow-01.png) min( 56vw, 420px ) 50% no-repeat rgba(5, 5, 5, 0.6);
    background-size: min( 2.9333333333vw, 22px );
    box-shadow: 0 min( 0.3703703704vw, 4px ) min( 1.8666666667vw, 14px ) rgba(0, 0, 0, 0.2);
    border-radius: min( 13.3333333333vw, 100px );
    font-size: min( 4.2666666667vw, 32px );
  }
  .s05 .modal-trigger:hover {
    background-color: rgba(5, 5, 5, 0.6);
  }
  .s05 .box01 {
    margin: 0 auto;
  }
  .s05 .t03 {
    font-size: min( 3.4666666667vw, 26px );
  }
  .s05 .t04 {
    font-size: min( 3.4666666667vw, 26px );
    width: min( 17.8666666667vw, 134px );
    height: min( 5.3333333333vw, 40px );
    margin: min( 2.4vw, 18px ) auto min( 2vw, 15px );
  }
  .s05 .t04::after {
    width: min( 2.6666666667vw, 20px );
    height: min( 1.2vw, 9px );
    bottom: max( -1.0666666667vw, -8px );
  }
  .s05 .t05 {
    font-size: min( 5.3333333333vw, 40px );
  }
  .adlp-modal .box01 {
    padding: min( 3.2vw, 24px );
    border-radius: min( 2.1333333333vw, 16px );
    box-shadow: 0 min( 0.5333333333vw, 4px ) min( 1.8666666667vw, 14px ) rgba(0, 0, 0, 0.2);
  }
  .adlp-modal .close {
    width: min( 8vw, 60px );
    height: min( 8vw, 60px );
    top: max( -4.2666666667vw, -32px );
    right: max( -4.2666666667vw, -32px );
  }
  .adlp-modal .close img {
    width: min( 4.2666666667vw, 32px );
  }
  .adlp-modal .close:hover {
    filter: none;
  }
}
.s06 {
  padding: min( 5.5555555556vw, 60px ) 0 min( 8.8888888889vw, 96px );
  background: #FFF0F0;
}

.s06 .t01 {
  font-size: min( 2.962962963vw, 32px );
  font-weight: 700;
  letter-spacing: 0.08em;
  text-align: center;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  width: min( 12.7777777778vw, 138px );
  height: min( 12.7777777778vw, 138px );
  position: relative;
  margin: 0 auto min( 4.2592592593vw, 46px );
  background: #C80012;
  border-radius: 50%;
}

.s06 .t01::before,
.s06 .t01::after {
  content: "";
  display: block;
  width: min( 0.3703703704vw, 4px );
  height: min( 1.6666666667vw, 18px );
  position: absolute;
  left: 50%;
  transform: translate(-50%);
}

.s06 .t01::before {
  bottom: 0;
  background: #fff;
  border-radius: min( 9.2592592593vw, 100px ) min( 9.2592592593vw, 100px ) 0 0;
}

.s06 .t01::after {
  bottom: max( -1.6666666667vw, -18px );
  background: #C80012;
  border-radius: 0 0 min( 9.2592592593vw, 100px ) min( 9.2592592593vw, 100px );
}

.s06 h2 {
  font-size: min( 4.4444444444vw, 48px );
  letter-spacing: 0.08em;
  line-height: 1.4;
  text-align: center;
}

.s06 .h201 {
  color: #C80012;
}

.s06 .t02 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: min( 46.2962962963vw, 500px );
  height: min( 6.2962962963vw, 68px );
  margin: min( 3.4259259259vw, 37px ) auto min( 4.6296296296vw, 50px );
  position: relative;
  font-size: min( 2.962962963vw, 32px );
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.08em;
  background: #C80012;
}

.s06 .t02::before,
.s06 .t02::after {
  content: "";
  display: block;
  width: min( 1.8518518519vw, 20px );
  height: min( 6.2962962963vw, 68px );
  position: relative;
  background: #C80012;
  clip-path: polygon(100% 0, 100% 100%, 0% 100%, 100% 50%, 0% 0%);
}

.s06 .t02::before {
  left: max( -1.7592592593vw, -19px );
}

.s06 .t02::after {
  right: max( -1.7592592593vw, -19px );
  transform: scale(-1, 1);
}

.s06 .list01 {
  display: flex;
  flex-wrap: wrap;
  gap: 1px;
  width: calc(min( 99.7222222222vw, 1077px ) + 2px);
  margin: 0 auto min( 2.2222222222vw, 24px );
  background: #D6D6D6;
  box-shadow: 0 min( 0.3703703704vw, 4px ) min( 1.2962962963vw, 14px ) rgba(0, 0, 0, 0.2);
}

.s06 .list01 li {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min( 1.2962962963vw, 14px );
  width: min( 33.2407407407vw, 359px );
  padding: min( 2.7777777778vw, 30px );
  background: #fff;
}

.s06 .list01 img {
  width: min( 8.1481481481vw, 88px );
}

.s06 .list01 h3 {
  font-size: min( 2.4074074074vw, 26px );
  letter-spacing: 0.08em;
  line-height: 1.4;
  color: #C80012;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  height: min( 6.6666666667vw, 72px );
}

.s06 .list01 p {
  letter-spacing: 0.08em;
  line-height: 1.8;
}

.s06 .list01 .t03 {
  font-size: min( 1.2962962963vw, 14px );
}

.s06 .t04 {
  font-size: min( 1.2962962963vw, 14px );
  letter-spacing: 0.08em;
  line-height: 1.4;
  text-align: right;
}

@media all and (min-width: 0px) and (max-width: 767px) {
  .s06 {
    padding: min( 10vw, 75px ) 0 min( 12.6666666667vw, 95px );
  }
  .s06 .t01 {
    font-size: min( 5.3333333333vw, 40px );
    width: min( 22.9333333333vw, 172px );
    height: min( 22.9333333333vw, 172px );
    margin: 0 auto min( 7.7333333333vw, 58px );
  }
  .s06 .t01::before,
  .s06 .t01::after {
    width: min( 0.5333333333vw, 4px );
    height: min( 2.9333333333vw, 22px );
  }
  .s06 .t01::before {
    border-radius: min( 13.3333333333vw, 100px ) min( 13.3333333333vw, 100px ) 0 0;
  }
  .s06 .t01::after {
    bottom: max( -2.9333333333vw, -22px );
    border-radius: 0 0 min( 13.3333333333vw, 100px ) min( 13.3333333333vw, 100px );
  }
  .s06 h2 {
    font-size: min( 7.2vw, 54px );
  }
  .s06 .t02 {
    width: min( 83.2vw, 624px );
    height: min( 11.4666666667vw, 86px );
    margin: min( 6.1333333333vw, 46px ) auto min( 8vw, 60px );
    font-size: min( 5.3333333333vw, 40px );
  }
  .s06 .t02::before,
  .s06 .t02::after {
    width: min( 3.4666666667vw, 26px );
    height: min( 11.4666666667vw, 86px );
  }
  .s06 .t02::before {
    left: max( -3.3333333333vw, -25px );
  }
  .s06 .t02::after {
    right: max( -3.3333333333vw, -25px );
  }
  .s06 .list01 {
    flex-direction: column;
    gap: 0;
    width: min( 92vw, 690px );
    margin: 0 auto min( 6.9333333333vw, 52px );
    box-shadow: none;
  }
  .s06 .list01 li {
    gap: min( 2.1333333333vw, 16px );
    width: min( 92vw, 690px );
    padding: min( 3.7333333333vw, 28px ) min( 5.3333333333vw, 40px ) min( 5.0666666667vw, 38px );
    position: relative;
  }
  .s06 .list01 li:nth-child(n+2):before {
    content: "";
    display: block;
    width: min( 84vw, 630px );
    height: 1px;
    position: absolute;
    top: 0;
    left: min( 4vw, 30px );
    background: #D6D6D6;
  }
  .s06 .list01 img {
    width: min( 14.6666666667vw, 110px );
  }
  .s06 .list01 h3 {
    font-size: min( 4.2666666667vw, 32px );
    height: auto;
  }
  .s06 .list01 .t03 {
    font-size: min( 2.6666666667vw, 20px );
  }
  .s06 .t04 {
    font-size: min( 2.6666666667vw, 20px );
    text-align: left;
    width: min( 92vw, 690px );
    margin: 0 auto;
  }
}
.s07 {
  padding: min( 6.4814814815vw, 70px ) 0 min( 7.037037037vw, 76px );
}

.s07 h2.hgroup .h201 {
  color: #F2A6AC;
}

.s07 .slider {
  width: min( 95.1851851852vw, 1028px );
  margin: min( 5.2777777778vw, 57px ) auto min( 0.9259259259vw, 10px );
}

.s07 .slick-arrow {
  width: min( 1.6666666667vw, 18px );
  z-index: 1;
}

.s07 .slick-prev {
  left: max( -2.3148148148vw, -25px );
}

.s07 .slick-next {
  right: max( -2.3148148148vw, -25px );
}

.s07 .slick-list {
  padding: min( 1.2037037037vw, 13px ) 0 min( 1.6666666667vw, 18px );
}

.s07 .slick-slide {
  box-sizing: border-box;
  width: min( 44.4444444444vw, 480px );
  height: min( 35.9259259259vw, 388px );
  position: relative;
  margin: 0 min( 1.8518518519vw, 20px );
  padding: min( 2.7777777778vw, 30px );
  border-radius: min( 1.8518518519vw, 20px );
  box-shadow: 0 min( 0.3703703704vw, 4px ) min( 1.2962962963vw, 14px ) rgba(0, 0, 0, 0.2);
}

.s07 dl {
  display: flex;
  gap: min( 0.9259259259vw, 10px );
  letter-spacing: 0.08rem;
}

.s07 dt {
  font-weight: 700;
  line-height: 1.8;
  color: #4EB9E4;
}

.s07 dd {
  font-weight: 500;
}

.s07 .rate {
  width: min( 16.1111111111vw, 174px );
  margin: min( 1.1111111111vw, 12px ) 0;
}

.s07 .user {
  width: min( 13.8888888889vw, 150px );
  position: absolute;
  top: max( -1.2037037037vw, -13px );
  right: min( 2.7777777778vw, 30px );
}

.s07 .slick-slide p {
  letter-spacing: 0.08em;
  line-height: 1.8;
}

.s07 .t01 {
  width: min( 92.5925925926vw, 1000px );
  margin: 0 auto;
  font-size: min( 1.2962962963vw, 14px );
  letter-spacing: 0.08em;
  line-height: 1.4;
  text-align: right;
}

@media all and (min-width: 0px) and (max-width: 767px) {
  .s07 {
    padding: min( 11.4666666667vw, 86px ) 0 min( 7.2vw, 54px );
  }
  .s07 .slider {
    width: min( 100vw, 750px );
    margin: min( 8.5333333333vw, 64px ) auto min( 4vw, 30px );
  }
  .s07 .slick-arrow {
    width: min( 3.2vw, 24px );
    height: min( 4vw, 30px );
  }
  .s07 .slick-prev {
    left: min( 3.7333333333vw, 28px );
  }
  .s07 .slick-next {
    right: min( 3.7333333333vw, 28px );
  }
  .s07 .slick-list {
    padding: min( 2.6666666667vw, 20px ) 0 min( 3.0666666667vw, 23px );
  }
  .s07 .slick-slide {
    width: min( 80vw, 600px );
    height: min( 92.2666666667vw, 692px );
    margin: 0 min( 10vw, 75px );
    padding: min( 4vw, 30px ) min( 5.3333333333vw, 40px );
    border-radius: min( 3.3333333333vw, 25px );
    box-shadow: 0 min( 0.6666666667vw, 5px ) min( 2.4vw, 18px ) rgba(0, 0, 0, 0.2);
  }
  .s07 dl {
    gap: min( 2.6666666667vw, 20px );
  }
  .s07 dt {
    font-size: min( 3.2vw, 24px );
  }
  .s07 dd {
    font-size: min( 3.2vw, 24px );
  }
  .s07 .rate {
    width: min( 29.3333333333vw, 220px );
    margin: min( 4.2666666667vw, 32px ) 0 min( 3.2vw, 24px );
  }
  .s07 .user {
    width: min( 25.3333333333vw, 190px );
    top: max( -2.6666666667vw, -20px );
    right: min( 4.8vw, 36px );
  }
  .s07 .t01 {
    width: auto;
    font-size: min( 2.6666666667vw, 20px );
    text-align: center;
  }
}
.s08 {
  padding: min( 8.3333333333vw, 90px ) 0 min( 9.2592592593vw, 100px );
  background: #F5FAFF;
}

.s08 h2.hgroup .h201 {
  color: #739BC3;
}

.s08 .accordion {
  display: flex;
  flex-direction: column;
  gap: min( 2.7777777778vw, 30px );
  width: min( 85.1851851852vw, 920px );
  margin: min( 5.2777777778vw, 57px ) auto 0;
}

.s08 li {
  background: #fff;
  border-radius: min( 1.8518518519vw, 20px );
  overflow: hidden;
}

.s08 h3 {
  font-size: min( 2.4074074074vw, 26px );
  letter-spacing: 0.08em;
  line-height: 1.4;
  color: #fff;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: min( 1.3888888889vw, 15px ) min( 2.7777777778vw, 30px );
  background: #739BC3;
  cursor: pointer;
  transition: all 0.2s;
}

.s08 .accordion h3:after {
  content: "";
  display: block;
  width: min( 1.8518518519vw, 20px );
  height: min( 1.2962962963vw, 14px );
  background: url(../img/common/faq-toggle.svg) no-repeat;
  background-size: min( 1.8518518519vw, 20px );
  transition: all 0.5s;
}

.s08 h3.open {
  border-radius: min( 1.8518518519vw, 20px ) min( 1.8518518519vw, 20px ) 0 0;
}

.s08 h3.open:after {
  transform: rotate(180deg);
}

.s08 h3:hover {
  opacity: 0.9;
}

.s08 h3 .en {
  font-size: min( 3.8888888889vw, 42px );
  font-weight: 400;
  line-height: 0.8;
  margin-right: min( 1.4814814815vw, 16px );
  padding-right: min( 1.4814814815vw, 16px );
  border-right: 2px solid #fff;
}

.s08 h3 > span {
  display: flex;
}

.s08 h3 + div {
  box-sizing: border-box;
  display: none;
  width: min( 85.1851851852vw, 920px );
  margin: 0 auto;
  padding: min( 2.037037037vw, 22px ) min( 2.7777777778vw, 30px );
  background: #fff;
}

.s08 p {
  line-height: 1.8;
  letter-spacing: 0.08em;
}

.s08 .t01 {
  margin-top: min( 0.7407407407vw, 8px );
  font-size: min( 1.2962962963vw, 14px );
}

@media all and (min-width: 0px) and (max-width: 767px) {
  .s08 {
    padding: min( 11.4666666667vw, 86px ) 0 min( 13.3333333333vw, 100px );
  }
  .s08 .accordion {
    gap: min( 5.3333333333vw, 40px );
    width: min( 92vw, 690px );
    margin: min( 8.5333333333vw, 64px ) auto 0;
  }
  .s08 li {
    border-radius: min( 3.4666666667vw, 26px );
    overflow: hidden;
  }
  .s08 h3 {
    font-size: min( 4.2666666667vw, 32px );
    padding: 0 min( 5.3333333333vw, 40px );
    box-sizing: border-box;
    height: min( 14.4vw, 108px );
    gap: min( 4.8vw, 36px );
  }
  .s08 .accordion h3:after {
    width: min( 2.9333333333vw, 22px );
    height: min( 2vw, 15px );
    background-size: min( 2.9333333333vw, 22px );
  }
  .s08 h3.open {
    border-radius: min( 3.4666666667vw, 26px ) min( 3.4666666667vw, 26px ) 0 0;
  }
  .s08 h3:hover {
    opacity: 1;
  }
  .s08 h3 .en {
    font-size: min( 6.9333333333vw, 52px );
    line-height: 0.9;
    margin-right: min( 2.6666666667vw, 20px );
    padding-right: min( 2.6666666667vw, 20px );
    border-right: min( 0.2666666667vw, 2px ) solid #fff;
  }
  .s08 h3 > span {
    align-items: center;
    flex: 1;
  }
  .s08 h3 + div {
    width: min( 92vw, 690px );
    padding: min( 2.1333333333vw, 16px ) min( 4vw, 30px );
  }
  .s08 .t01 {
    margin-top: min( 0.8vw, 6px );
    font-size: min( 2.6666666667vw, 20px );
  }
}
.s09 {
  height: min( 56.4814814815vw, 610px );
  background: url(../img/pc/s09-bg-01.jpg) 50% 0 no-repeat;
  background-size: min( 177.7777777778vw, 1920px );
}

.s09 h2 {
  font-size: min( 3.7037037037vw, 40px );
  letter-spacing: 0.08em;
  padding-top: min( 2.4074074074vw, 26px );
}

.s09 h2 img {
  width: min( 29.7222222222vw, 321px );
  margin: 0 min( 1.8518518519vw, 20px ) 0 min( 2.7777777778vw, 30px );
}

.s09 h2 .box01 {
  display: block;
  margin-top: min( 1.2962962963vw, 14px );
}

.s09 .h201 {
  line-height: 2;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  padding: min( 0.462962963vw, 5px ) min( 2.7777777778vw, 30px );
  color: #fff;
  background: #2B3467;
}

.s09 .badge01 {
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-size: min( 1.2962962963vw, 14px );
  letter-spacing: 0.08em;
  width: min( 22.7777777778vw, 246px );
  height: min( 22.7777777778vw, 246px );
  position: absolute;
  top: min( 30.462962963vw, 329px );
  left: min( 3.7962962963vw, 41px );
  padding-top: min( 2.2222222222vw, 24px );
  background: linear-gradient(135deg, #F9D949 50.44%, #EDCE41 50.45%);
  border-radius: 50%;
  box-shadow: 0 min( 0.3703703704vw, 4px ) min( 1.2962962963vw, 14px ) rgba(0, 0, 0, 0.2);
}

.s09 .badge01-t01 {
  font-size: min( 1.6666666667vw, 18px );
  color: #2B3467;
  letter-spacing: 0;
  line-height: 1.4;
}

.s09 .badge01-t02 {
  font-size: min( 2.962962963vw, 32px );
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.08em;
}

.s09 .badge01-t03 {
  font-size: min( 5.7407407407vw, 62px );
  font-weight: 700;
}

.s09 .badge01-t04 {
  font-size: min( 8.3333333333vw, 90px );
  line-height: 0.9;
  letter-spacing: -0.15em;
}

.s09 .badge01-t05 {
  font-size: min( 1.2962962963vw, 14px );
}

.s09 .t01 {
  font-size: min( 1.2962962963vw, 14px );
  text-shadow: rgb(255, 255, 255) 2px 0px 0px, rgb(255, 255, 255) 1.75517px 0.958851px 0px, rgb(255, 255, 255) 1.0806px 1.68294px 0px, rgb(255, 255, 255) 0.141474px 1.99499px 0px, rgb(255, 255, 255) -0.832294px 1.81859px 0px, rgb(255, 255, 255) -1.60229px 1.19694px 0px, rgb(255, 255, 255) -1.97998px 0.28224px 0px, rgb(255, 255, 255) -1.87291px -0.701566px 0px, rgb(255, 255, 255) -1.30729px -1.5136px 0px, rgb(255, 255, 255) -0.421592px -1.95506px 0px, rgb(255, 255, 255) 0.567324px -1.91785px 0px, rgb(255, 255, 255) 1.41734px -1.41108px 0px, rgb(255, 255, 255) 1.92034px -0.558831px 0px;
  position: absolute;
  top: min( 51.7592592593vw, 559px );
  left: min( 25.9259259259vw, 280px );
}

@media all and (min-width: 0px) and (max-width: 767px) {
  .s09 {
    height: min( 144.2666666667vw, 1082px );
    background: url(../img/sp/s09-bg-01.jpg) 50% 0 no-repeat;
    background-size: 100%;
  }
  .s09 .inner {
    height: 100%;
  }
  .s09 h2 {
    font-size: min( 5.3333333333vw, 40px );
    margin-left: min( 4vw, 30px );
    padding-top: min( 10.1333333333vw, 76px );
  }
  .s09 h2 img {
    width: min( 42.6666666667vw, 320px );
    margin: 0 min( 2.6666666667vw, 20px ) 0 0;
  }
  .s09 h2 .box01 {
    margin-top: min( 2.6666666667vw, 20px );
  }
  .s09 .h201 {
    line-height: 1.7;
    padding: min( 0.1333333333vw, 1px ) min( 4vw, 30px );
    font-size: min( 6.4vw, 48px );
  }
  .s09 .badge01 {
    font-size: min( 2.9333333333vw, 22px );
    width: min( 40vw, 300px );
    height: min( 40vw, 300px );
    top: min( 50vw, 375px );
    left: min( 4vw, 30px );
    padding-top: min( 4.2666666667vw, 32px );
    box-shadow: 0 min( 0.6666666667vw, 5px ) min( 2.4vw, 18px ) rgba(0, 0, 0, 0.2);
  }
  .s09 .badge01-t01 {
    font-size: min( 2.9333333333vw, 22px );
  }
  .s09 .badge01-t02 {
    font-size: min( 5.0666666667vw, 38px );
  }
  .s09 .badge01-t03 {
    font-size: min( 10.1333333333vw, 76px );
  }
  .s09 .badge01-t04 {
    font-size: min( 14.6666666667vw, 110px );
  }
  .s09 .badge01-t05 {
    font-size: min( 2.6666666667vw, 20px );
  }
  .s09 .t01 {
    font-size: min( 2.6666666667vw, 20px );
    text-shadow: rgb(255, 255, 255) 1px 0px 0px, rgb(255, 255, 255) 0.540302px 0.841471px 0px, rgb(255, 255, 255) -0.416147px 0.909297px 0px, rgb(255, 255, 255) -0.989992px 0.14112px 0px, rgb(255, 255, 255) -0.653644px -0.756802px 0px, rgb(255, 255, 255) 0.283662px -0.958924px 0px, rgb(255, 255, 255) 0.96017px -0.279415px 0px;
    width: 100%;
    top: auto;
    bottom: min( 4.8vw, 36px );
    left: 0;
    text-align: center;
  }
}
.adlp-footer {
  padding: min( 7.4074074074vw, 80px ) 0 min( 3.3333333333vw, 36px );
  background: #505050;
  color: #fff;
  letter-spacing: 0.08em;
}

.adlp-footer .list01 {
  display: flex;
  justify-content: center;
  margin-bottom: min( 6.8518518519vw, 74px );
  line-height: 1;
}

.adlp-footer .list01 li:first-child {
  margin-right: min( 2.7777777778vw, 30px );
  padding-right: min( 2.7777777778vw, 30px );
  border-right: 1px solid #fff;
}

.adlp-footer a {
  color: #fff;
}

.adlp-footer a:hover {
  opacity: 0.65;
}

.adlp-footer .t01 {
  font-size: min( 1.2962962963vw, 14px );
  line-height: 1.4;
  text-align: center;
}

@media all and (min-width: 0px) and (max-width: 767px) {
  .adlp-footer {
    padding: min( 8.5333333333vw, 64px ) 0 min( 4.8vw, 36px );
  }
  .adlp-footer .list01 {
    flex-direction: column;
    align-items: center;
    gap: min( 1.6vw, 12px );
    margin-bottom: min( 6.6666666667vw, 50px );
    line-height: 1.8;
  }
  .adlp-footer .list01 li:first-child {
    margin-right: 0;
    padding-right: 0;
    border-right: 0;
  }
  .adlp-footer a:hover {
    opacity: 1;
  }
  .adlp-footer .t01 {
    font-size: min( 2.6666666667vw, 20px );
  }
}
.adlp-floating {
  display: none;
  width: 100%;
  max-width: 1920px;
  height: min( 10.9259259259vw, 118px );
  position: fixed;
  bottom: 0;
  z-index: 10;
  background: #fff;
}

.adlp-floating_inner {
  display: flex;
  justify-content: center;
  align-items: center;
  width: min( 100vw, 1080px );
  height: 100%;
  margin: 0 auto;
}

.adlp-floating .list01 {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: min( 3.3333333333vw, 36px );
}

.adlp-floating .list01 li:first-child {
  display: flex;
  align-items: center;
  gap: min( 1.2962962963vw, 14px );
  font-size: min( 2.4074074074vw, 26px );
  font-weight: 700;
  letter-spacing: 0.08em;
}

.adlp-floating .list01 img {
  width: min( 14.537037037vw, 157px );
}

.adlp-floating .cv-btn {
  width: min( 42.5925925926vw, 460px );
  height: min( 7.037037037vw, 76px );
  background-position: min( 39.2592592593vw, 424px ) 50%;
}

@media all and (min-width: 0px) and (max-width: 767px) {
  .adlp-floating {
    width: 100%;
    max-width: none;
    height: min( 26.6666666667vw, 200px );
  }
  .adlp-floating_inner {
    width: min( 100vw, 750px );
  }
  .adlp-floating .list01 {
    flex-direction: column;
    gap: min( 1.0666666667vw, 8px );
  }
  .adlp-floating .list01 li:first-child {
    gap: min( 2.6666666667vw, 20px );
    font-size: min( 4.2666666667vw, 32px );
  }
  .adlp-floating .list01 img {
    width: min( 20.2666666667vw, 152px );
  }
  .adlp-floating .cv-btn {
    width: min( 84vw, 630px );
    height: min( 16vw, 120px );
    background-position: min( 76.5333333333vw, 574px ) 50%;
  }
}/*# sourceMappingURL=style.css.map */