@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,100..900;1,100..900&display=swap");

.jost {
  font-family: "Jost", serif;
}

@media screen and (min-width: 641px) {
  /* 1440px size */
  :root {
    --pixel01: min(0.06944444444444445vw, 1px);
    --pixel02: min(0.1388888888888889vw, 2px);
    --pixel03: min(0.20833333333333334vw, 3px);
    --pixel04: min(0.2777777777777778vw, 4px);
    --pixel05: min(0.3472222222222222vw, 5px);
    --pixel06: min(0.4166666666666667vw, 6px);
    --pixel07: min(0.4861111111111111vw, 7px);
    --pixel08: min(0.5555555555555556vw, 8px);
    --pixel09: min(0.625vw, 9px);
    --pixel10: min(0.6944444444444444vw, 10px);
    --pixel11: min(0.7638888888888888vw, 11px);
    --pixel12: min(0.8333333333333334vw, 12px);
    --pixel13: min(0.9027777777777777vw, 13px);
    --pixel14: min(0.9722222222222222vw, 14px);
    --pixel15: min(1.0416666666666665vw, 15px);
    --pixel16: min(1.1111111111111112vw, 16px);
    --pixel17: min(1.1805555555555556vw, 17px);
    --pixel18: min(1.25vw, 18px);
    --pixel19: min(1.3194444444444444vw, 19px);
    --pixel20: min(1.3888888888888888vw, 20px);
    --pixel21: min(1.4583333333333333vw, 21px);
    --pixel22: min(1.5277777777777777vw, 22px);
    --pixel23: min(1.597222222222222vw, 23px);
    --pixel24: min(1.6666666666666667vw, 24px);
    --pixel25: min(1.7361111111111112vw, 25px);
    --pixel26: min(1.8055555555555554vw, 26px);
    --pixel27: min(1.875vw, 27px);
    --pixel28: min(1.9444444444444444vw, 28px);
    --pixel29: min(2.013888888888889vw, 29px);
    --pixel30: min(2.083333333333333vw, 30px);
    --pixel31: min(2.1527777777777777vw, 31px);
    --pixel32: min(2.2222222222222223vw, 32px);
    --pixel33: min(2.2916666666666665vw, 33px);
    --pixel34: min(2.361111111111111vw, 34px);
    --pixel35: min(2.430555555555556vw, 35px);
    --pixel36: min(2.5vw, 36px);
    --pixel37: min(2.569444444444444vw, 37px);
    --pixel38: min(2.638888888888889vw, 38px);
    --pixel39: min(2.7083333333333335vw, 39px);
    --pixel40: min(2.7777777777777777vw, 40px);
    --pixel41: min(2.8472222222222223vw, 41px);
    --pixel42: min(2.9166666666666665vw, 42px);
    --pixel43: min(2.986111111111111vw, 43px);
    --pixel44: min(3.0555555555555554vw, 44px);
    --pixel45: min(3.125vw, 45px);
    --pixel46: min(3.194444444444444vw, 46px);
    --pixel47: min(3.2638888888888893vw, 47px);
    --pixel48: min(3.3333333333333335vw, 48px);
    --pixel49: min(3.4027777777777777vw, 49px);
    --pixel50: min(3.4722222222222223vw, 50px);
    --pixel51: min(3.5416666666666665vw, 51px);
    --pixel52: min(3.6111111111111107vw, 52px);
    --pixel53: min(3.680555555555556vw, 53px);
    --pixel54: min(3.75vw, 54px);
    --pixel55: min(3.8194444444444446vw, 55px);
    --pixel56: min(3.888888888888889vw, 56px);
    --pixel57: min(3.958333333333333vw, 57px);
    --pixel58: min(4.027777777777778vw, 58px);
    --pixel59: min(4.097222222222222vw, 59px);
    --pixel60: min(4.166666666666666vw, 60px);
    --pixel61: min(4.236111111111112vw, 61px);
    --pixel62: min(4.305555555555555vw, 62px);
    --pixel63: min(4.375vw, 63px);
    --pixel64: min(4.444444444444445vw, 64px);
    --pixel65: min(4.513888888888888vw, 65px);
    --pixel66: min(4.583333333333333vw, 66px);
    --pixel67: min(4.652777777777778vw, 67px);
    --pixel68: min(4.722222222222222vw, 68px);
    --pixel69: min(4.791666666666667vw, 69px);
    --pixel70: min(4.861111111111112vw, 70px);
    --pixel71: min(4.930555555555555vw, 71px);
    --pixel72: min(5vw, 72px);
    --pixel73: min(5.069444444444445vw, 73px);
    --pixel74: min(5.138888888888888vw, 74px);
    --pixel75: min(5.208333333333334vw, 75px);
    --pixel76: min(5.277777777777778vw, 76px);
    --pixel77: min(5.347222222222222vw, 77px);
    --pixel78: min(5.416666666666667vw, 78px);
    --pixel79: min(5.486111111111111vw, 79px);
    --pixel80: min(5.555555555555555vw, 80px);
    --pixel81: min(5.625vw, 81px);
    --pixel82: min(5.694444444444445vw, 82px);
    --pixel83: min(5.763888888888889vw, 83px);
    --pixel84: min(5.833333333333333vw, 84px);
    --pixel85: min(5.902777777777778vw, 85px);
    --pixel86: min(5.972222222222222vw, 86px);
    --pixel87: min(6.041666666666667vw, 87px);
    --pixel88: min(6.111111111111111vw, 88px);
    --pixel89: min(6.180555555555555vw, 89px);
    --pixel90: min(6.25vw, 90px);
    --pixel91: min(6.319444444444445vw, 91px);
    --pixel92: min(6.388888888888888vw, 92px);
    --pixel93: min(6.458333333333334vw, 93px);
    --pixel94: min(6.527777777777779vw, 94px);
    --pixel95: min(6.597222222222222vw, 95px);
    --pixel96: min(6.666666666666667vw, 96px);
    --pixel97: min(6.736111111111111vw, 97px);
    --pixel98: min(6.805555555555555vw, 98px);
    --pixel99: min(6.875000000000001vw, 99px);
    --pixel100: min(6.944444444444445vw, 100px);
  }
}
@media screen and (max-width: 640px) {
  /* 375px size */
  :root {
    --pixel01: 0.26666666666666666vw;
    --pixel02: 0.5333333333333333vw;
    --pixel03: 0.8vw;
    --pixel04: 1.0666666666666667vw;
    --pixel05: 1.3333333333333335vw;
    --pixel06: 1.6vw;
    --pixel07: 1.866666666666667vw;
    --pixel08: 2.1333333333333333vw;
    --pixel09: 2.4vw;
    --pixel10: 2.666666666666667vw;
    --pixel11: 2.933333333333333vw;
    --pixel12: 3.2vw;
    --pixel13: 3.4666666666666663vw;
    --pixel14: 3.733333333333334vw;
    --pixel15: 4vw;
    --pixel16: 4.266666666666667vw;
    --pixel17: 4.533333333333333vw;
    --pixel18: 4.8vw;
    --pixel19: 5.066666666666666vw;
    --pixel20: 5.333333333333334vw;
    --pixel21: 5.6000000000000005vw;
    --pixel22: 5.866666666666666vw;
    --pixel23: 6.133333333333333vw;
    --pixel24: 6.4vw;
    --pixel25: 6.666666666666667vw;
    --pixel26: 6.933333333333333vw;
    --pixel27: 7.199999999999999vw;
    --pixel28: 7.466666666666668vw;
    --pixel29: 7.733333333333333vw;
    --pixel30: 8vw;
    --pixel31: 8.266666666666666vw;
    --pixel32: 8.533333333333333vw;
    --pixel33: 8.799999999999999vw;
    --pixel34: 9.066666666666666vw;
    --pixel35: 9.333333333333334vw;
    --pixel36: 9.6vw;
    --pixel37: 9.866666666666667vw;
    --pixel38: 10.133333333333333vw;
    --pixel39: 10.4vw;
    --pixel40: 10.666666666666668vw;
    --pixel41: 10.933333333333334vw;
    --pixel42: 11.200000000000001vw;
    --pixel43: 11.466666666666667vw;
    --pixel44: 11.733333333333333vw;
    --pixel45: 12vw;
    --pixel46: 12.266666666666666vw;
    --pixel47: 12.533333333333333vw;
    --pixel48: 12.8vw;
    --pixel49: 13.066666666666665vw;
    --pixel50: 13.333333333333334vw;
    --pixel51: 13.600000000000001vw;
    --pixel52: 13.866666666666665vw;
    --pixel53: 14.133333333333335vw;
    --pixel54: 14.399999999999999vw;
    --pixel55: 14.666666666666666vw;
    --pixel56: 14.933333333333335vw;
    --pixel57: 15.2vw;
    --pixel58: 15.466666666666667vw;
    --pixel59: 15.733333333333333vw;
    --pixel60: 16vw;
    --pixel61: 16.266666666666666vw;
    --pixel62: 16.53333333333333vw;
    --pixel63: 16.8vw;
    --pixel64: 17.066666666666666vw;
    --pixel65: 17.333333333333336vw;
    --pixel66: 17.599999999999998vw;
    --pixel67: 17.866666666666667vw;
    --pixel68: 18.133333333333333vw;
    --pixel69: 18.4vw;
    --pixel70: 18.666666666666668vw;
    --pixel71: 18.933333333333334vw;
    --pixel72: 19.2vw;
    --pixel73: 19.466666666666665vw;
    --pixel74: 19.733333333333334vw;
    --pixel75: 20vw;
    --pixel76: 20.266666666666666vw;
    --pixel77: 20.533333333333335vw;
    --pixel78: 20.8vw;
    --pixel79: 21.066666666666666vw;
    --pixel80: 21.333333333333336vw;
    --pixel81: 21.6vw;
    --pixel82: 21.866666666666667vw;
    --pixel83: 22.133333333333333vw;
    --pixel84: 22.400000000000002vw;
    --pixel85: 22.666666666666664vw;
    --pixel86: 22.933333333333334vw;
    --pixel87: 23.200000000000003vw;
    --pixel88: 23.466666666666665vw;
    --pixel89: 23.733333333333334vw;
    --pixel90: 24vw;
    --pixel91: 24.266666666666666vw;
    --pixel92: 24.53333333333333vw;
    --pixel93: 24.8vw;
    --pixel94: 25.066666666666666vw;
    --pixel95: 25.333333333333336vw;
    --pixel96: 25.6vw;
    --pixel97: 25.866666666666667vw;
    --pixel98: 26.13333333333333vw;
    --pixel99: 26.400000000000002vw;
    --pixel100: 26.666666666666668vw;
  }
}

body {
  color: #000;
  font-weight: 500;
  line-height: 1.4;
}
dt {
  font-weight: 500;
}

p,
span {
  letter-spacing: 0.08em;
}
@media screen and (min-width: 641px) {
  .show-small {
    display: none !important;
  }
}
@media screen and (max-width: 640px) {
  .show-small {
    display: inherit !important;
  }
  .hide-small {
    display: none !important;
  }
}

.row {
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
}
.inner {
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 641px) {
  .row {
    width: min(77.08333333333334vw, 1110px);
    padding-right: 0;
    padding-left: 0;
  }
  .inner {
    width: min(57.638888888888886vw, 830px);
  }
}
@media screen and (max-width: 640px) {
  .row {
    padding-right: var(--pixel24);
    padding-left: var(--pixel24);
  }
}

.notes-list > li {
  text-indent: -1em;
  padding-left: 1em;
}
.notes-list > li:before {
  content: "※";
}

.dot-list > li {
  padding-left: 0.5em;
  text-indent: -0.5em;
}
.dot-list > li:before {
  content: "・";
}

.square-list > li {
  text-indent: -1em;
  padding-left: 1em;
}
.square-list > li:not(:first-child) {
  margin-top: var(--pixel05);
}
.square-list > li:before {
  content: "■";
}

.article-sections {
  background: -webkit-linear-gradient(top, rgba(69, 123, 213, 0.2) 0%, rgba(85, 62, 196, 0.2) 100%);
  background: linear-gradient(180deg, rgba(69, 123, 213, 0.2) 0%, rgba(85, 62, 196, 0.2) 100%);
}
@media screen and (min-width: 641px) {
  .article-sections {
    padding-top: var(--pixel70);
    padding-bottom: min(9.722222222222223vw, 140px);
  }
}
@media screen and (max-width: 640px) {
  .article-sections {
    padding-top: var(--pixel48);
    padding-bottom: var(--pixel40);
  }
}

/** ACCORDION
==============================================*/
@media screen and (min-width: 641px) {
  .accordion-head {
    cursor: pointer;
  }
}

/** PAGE BUTTON
==============================================*/
.page-button,
.page-button:hover {
  position: relative;
  color: #fff;
  text-align: center;
  display: block;
  line-height: 1.4;
  font-weight: 700;
}
.page-button--grad,
.page-button--grad:hover {
  background: -webkit-linear-gradient(top, rgba(0, 41, 117, 1) 0%, rgba(0, 15, 62, 1) 100%);
  background: linear-gradient(180deg, rgba(0, 41, 117, 1) 0%, rgba(0, 15, 62, 1) 100%);
}
.page-button--light,
.page-button--light:hover {
  background-color: #066fd0;
}
@media screen and (min-width: 641px) {
  .page-button {
    border-radius: var(--pixel40);
    font-size: var(--pixel22);
    padding-top: var(--pixel25);
    padding-bottom: var(--pixel25);
    margin-right: auto;
    margin-left: auto;
  }
}
@media screen and (max-width: 640px) {
  .page-button {
    border-radius: var(--pixel08);
    font-size: var(--pixel16);
    padding: var(--pixel15);
  }
}

/** SECTION HERO
==============================================*/
.page-kv__title-img {
  display: block;
}
.page-kv__title-img img {
  width: 100%;
}
.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/** SECTION LEAD
==============================================*/
@media screen and (min-width: 641px) {
  .section-lead {
    padding-top: var(--pixel70);
    padding-bottom: var(--pixel70);
  }
}
@media screen and (max-width: 640px) {
  .section-lead {
    padding-top: var(--pixel30);
    padding-bottom: var(--pixel30);
  }
}

.page-lead__txt {
  line-height: 2;
}
@media screen and (min-width: 641px) {
  .page-lead__txt {
    font-size: var(--pixel16);
    text-align: center;
  }
}
@media screen and (max-width: 640px) {
  .page-lead__txt {
    font-size: var(--pixel14);
    padding-right: var(--pixel16);
    padding-left: var(--pixel16);
  }
}

.page-lead__more {
  letter-spacing: 0.1em;
}
@media screen and (min-width: 641px) {
  .page-lead__more {
    margin-top: var(--pixel35);
    margin-bottom: var(--pixel35);
  }
}
@media screen and (max-width: 640px) {
  .page-lead__more {
    margin-top: var(--pixel30);
    margin-bottom: var(--pixel30);
  }
}

.page-lead__sub {
  display: block;
  font-size: var(--pixel10);
  line-height: 1.6;
}
@media screen and (min-width: 641px) {
}
@media screen and (max-width: 640px) {
  .page-lead__sub {
    padding-right: var(--pixel16);
    padding-left: var(--pixel16);
  }
}

.page-lead__notes {
  margin-top: var(--pixel10);
}
.page-lead__notes > li {
  font-size: var(--pixel10);
  line-height: 1.6;
}
@media screen and (min-width: 641px) {
  .page-lead__notes > li:not(:first-child) {
    margin-top: var(--pixel05);
  }
}
@media screen and (max-width: 640px) {
  .page-lead__notes {
    padding-right: var(--pixel16);
    padding-left: var(--pixel16);
  }
}

.page-lead__link {
  color: #066fd0;
}
.page-lead__link .intext-link {
  color: inherit;
  text-decoration: underline;
}
@media screen and (min-width: 641px) {
  .page-lead__link {
    margin-top: var(--pixel35);
    text-align: center;
  }
  .page-lead__link > li {
    font-size: var(--pixel16);
  }
}
@media screen and (max-width: 640px) {
  .page-lead__link {
    margin-top: var(--pixel15);
    padding-right: var(--pixel16);
    padding-left: var(--pixel16);
  }
  .page-lead__link > li {
    font-size: var(--pixel14);
  }
}

/** SECTION LINEUP
==============================================*/
@media screen and (min-width: 641px) {
  .service-lineup {
    margin-bottom: var(--pixel70);
  }
}
@media screen and (max-width: 640px) {
  .service-lineup {
    margin-bottom: var(--pixel30);
  }
}

.service-lineup__list {
  display: -webkit-box;
  display: flex;
  background-color: #fff;
}
@media screen and (min-width: 641px) {
  .service-lineup__list {
    border-radius: var(--pixel40);
  }
}
@media screen and (max-width: 640px) {
  .service-lineup__list {
    border-radius: var(--pixel20);
  }
}

.service-lineup__item {
  width: calc(100% / 3);
  text-align: center;
  position: relative;
  z-index: 0;
  background: transparent;
  -webkit-filter: drop-shadow(var(--pixel03) var(--pixel06) var(--pixel04) rgba(0, 0, 0, 0));
  filter: drop-shadow(var(--pixel03) var(--pixel06) var(--pixel04) rgba(0, 0, 0, 0));
  -webkit-transition: z-index 0.3s ease, color 0.3s ease, background 0.3s ease, -webkit-filter 0.3s ease;
  transition: z-index 0.3s ease, color 0.3s ease, background 0.3s ease, -webkit-filter 0.3s ease;
  transition: z-index 0.3s ease, color 0.3s ease, background 0.3s ease, filter 0.3s ease;
  transition: z-index 0.3s ease, color 0.3s ease, background 0.3s ease, filter 0.3s ease, -webkit-filter 0.3s ease;
  font-weight: 700;
}
.service-lineup__item.is-active {
  -webkit-filter: drop-shadow(var(--pixel03) var(--pixel06) var(--pixel04) rgba(0, 0, 0, 0.1));
  filter: drop-shadow(var(--pixel03) var(--pixel06) var(--pixel04) rgba(0, 0, 0, 0.1));
  background: -webkit-linear-gradient(top, rgba(0, 41, 117, 1) 0%, rgba(0, 15, 62, 1) 100%);
  background: linear-gradient(180deg, rgba(0, 41, 117, 1) 0%, rgba(0, 15, 62, 1) 100%);
  color: #fff;
  z-index: 1;
}
@media screen and (min-width: 641px) {
  .service-lineup__item {
    border-radius: var(--pixel40);
    padding-top: var(--pixel25);
    padding-bottom: var(--pixel25);
    font-size: var(--pixel22);
    cursor: pointer;
  }
}
@media screen and (max-width: 640px) {
  .service-lineup__item {
    border-radius: var(--pixel20);
    padding-top: var(--pixel10);
    padding-bottom: var(--pixel10);
    font-size: var(--pixel14);
  }
}

/** TAB CONTENTS
==============================================*/
.switch-tab-contents {
  position: relative;
  overflow: hidden;
}

.switch-tab-item {
  position: absolute;
  left: 100%;
  top: 0;
  opacity: 0;
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
}
.switch-tab-item.is-active {
  position: relative;
  left: 0;
  opacity: 1;
}

.information-item {
  background: -webkit-linear-gradient(left, rgba(0, 28, 90, 1) 0%, rgba(0, 41, 117, 1) 50%, rgba(0, 28, 90, 1) 100%);
  background: linear-gradient(90deg, rgba(0, 28, 90, 1) 0%, rgba(0, 41, 117, 1) 50%, rgba(0, 28, 90, 1) 100%);
}
@media screen and (min-width: 641px) {
  .information-item {
    padding: var(--pixel35);
    border-radius: var(--pixel30);
  }
}
@media screen and (max-width: 640px) {
  .information-item {
    padding: var(--pixel15);
    border-radius: var(--pixel17);
  }
}

.information-item__box {
  background-color: #fff;
}
@media screen and (min-width: 641px) {
  .information-item__box {
    padding-top: var(--pixel100);
    padding-bottom: var(--pixel70);
    border-radius: var(--pixel20);
  }
  .information-item__box:not(:first-child) {
    margin-top: var(--pixel35);
  }
}
@media screen and (max-width: 640px) {
  .information-item__box {
    padding: var(--pixel40) var(--pixel20);
    border-radius: var(--pixel10);
  }
  .information-item__box:not(:first-child) {
    margin-top: var(--pixel15);
  }
}

/** USE STEP
==============================================*/
.usage-step {
  counter-reset: number;
}

.usage-step__head .head-step {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  font-family: "Jost", serif;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1;
}
.usage-step__head .head-step:after {
  counter-increment: number;
  content: counter(number);
  font-weight: 400;
  line-height: 1;
}
.usage-step__head .head-txt {
}
@media screen and (min-width: 641px) {
  .usage-step__head {
    display: -webkit-box;
    display: flex;
    margin-bottom: var(--pixel60);
  }
  .usage-step__head .head-step {
    width: 21%;
    border-right: 1px solid;
    font-size: var(--pixel24);
    -webkit-box-pack: start;
    justify-content: flex-start;
  }
  .usage-step__head .head-step:after {
    font-size: var(--pixel77);
    margin-left: var(--pixel20);
  }
  .usage-step__head .head-txt {
    width: 79%;
    padding-left: var(--pixel35);
    font-size: var(--pixel32);
  }
}
@media screen and (max-width: 640px) {
  .usage-step__head {
    margin-bottom: var(--pixel35);
  }
  .usage-step__head .head-step {
    -webkit-box-pack: center;
    justify-content: center;
    font-size: var(--pixel13);
  }
  .usage-step__head .head-step:after {
    font-size: var(--pixel42);
    margin-left: var(--pixel10);
  }
  .usage-step__head .head-txt {
    display: block;
    margin-top: var(--pixel15);
    font-size: var(--pixel16);
    text-align: center;
  }
}

@media screen and (min-width: 641px) {
  .usage-step__info:not(:first-child) {
    margin-top: var(--pixel60);
  }
  .usage-step__info > *:not(:first-child) {
    margin-top: var(--pixel30);
  }
}
@media screen and (max-width: 640px) {
  .usage-step__info:not(:first-child) {
    margin-top: var(--pixel40);
  }
  .usage-step__info > *:not(:first-child) {
    margin-top: var(--pixel15);
  }
}

.usage-step__txt {
  line-height: 2;
}
@media screen and (min-width: 641px) {
  .usage-step__txt {
    font-size: var(--pixel16);
  }
}
@media screen and (max-width: 640px) {
  .usage-step__txt {
    font-size: var(--pixel12);
  }
}

.usage-step__figure {
  display: block;
}
.usage-step__figure img {
  width: 100%;
}

.usage-step__notes > li {
  font-size: var(--pixel10);
}

@media screen and (min-width: 641px) {
  .usage-step__more {
    width: min(47.91666666666667vw, 690px);
  }
}

/** FAQ INFO
==============================================*/
.faq-info__dl > dt {
  position: relative;
  line-height: 2;
  border-top: 2px solid #066fd0;
  padding-top: var(--pixel10);
  padding-bottom: var(--pixel10);
}
.faq-info__dl > dt:after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20id%3D%22text%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2018%2010.39%22%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill%3Anone%3Bstroke%3A%23000%3Bstroke-linecap%3Around%3Bstroke-linejoin%3Around%3Bstroke-width%3A2px%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cpolyline%20class%3D%22cls-1%22%20points%3D%221%201%209%209.39%2017%201%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: center center;
  height: 100%;
}
.faq-info__dl > dt.is-active:after {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}
@media screen and (min-width: 641px) {
  .faq-info__dl > dt {
    font-size: var(--pixel16);
    padding-right: var(--pixel60);
  }
  .faq-info__dl > dt:after {
    background-size: var(--pixel16) auto;
    width: var(--pixel60);
  }
  .faq-info__dl > dt:not(:first-child) {
    margin-top: var(--pixel40);
  }
}
@media screen and (max-width: 640px) {
  .faq-info__dl > dt {
    padding-right: var(--pixel25);
    font-size: var(--pixel12);
  }
  .faq-info__dl > dt:after {
    background-size: var(--pixel12) auto;
    width: var(--pixel25);
  }
  .faq-info__dl > dt:not(:first-child) {
    margin-top: var(--pixel15);
  }
}

@media screen and (min-width: 641px) {
  .faq-info__dl > dd {
    padding-top: var(--pixel30);
    padding-right: var(--pixel25);
    padding-left: var(--pixel25);
  }
}
@media screen and (max-width: 640px) {
  .faq-info__dl > dd {
    padding-top: var(--pixel10);
    padding-bottom: var(--pixel20);
  }
}

.faq-info__box * {
  line-height: 2;
}
@media screen and (min-width: 641px) {
  .faq-info__box:not(:first-child) {
    margin-top: var(--pixel20);
  }
}
@media screen and (max-width: 640px) {
  .faq-info__box:not(:first-child) {
    margin-top: var(--pixel10);
  }
}

.faq-info__txt,
.faq-info__dot > li,
.faq-info__notes > li {
  letter-spacing: 0;
}
@media screen and (min-width: 641px) {
  .faq-info__txt,
  .faq-info__dot > li,
  .faq-info__notes > li {
    font-size: var(--pixel16);
  }
}
@media screen and (max-width: 640px) {
  .faq-info__txt,
  .faq-info__dot > li,
  .faq-info__notes > li {
    font-size: var(--pixel12);
  }
}

.faq-info__entry-txt {
  display: block;
  text-indent: -1em;
  padding-left: 1em;
}
.faq-info__entry-txt:before {
  content: "●";
}
@media screen and (min-width: 641px) {
  .faq-info__entry > li:not(:first-child) {
    margin-top: var(--pixel20);
  }
  .faq-info__entry-txt {
    font-size: var(--pixel16);
  }
}
@media screen and (max-width: 640px) {
  .faq-info__entry > li:not(:first-child) {
    margin-top: var(--pixel10);
  }
  .faq-info__entry-txt {
    font-size: var(--pixel12);
  }
}

.faq-info__buttons {
  padding-left: 1em;
  margin-top: var(--pixel10);
}
@media screen and (min-width: 641px) {
  .faq-info__buttons {
    display: -webkit-box;
    display: flex;
  }
}

.faq-info__button,
.faq-info__button:hover {
  background-color: #066fd0;
  color: #fff;
  text-align: center;
}
@media screen and (min-width: 641px) {
  .faq-info__button {
    font-size: var(--pixel12);
    min-width: min(16.666666666666664vw, 240px);
    border-radius: var(--pixel12);
  }
  .faq-info__button:not(:last-child) {
    margin-right: var(--pixel25);
  }
}
@media screen and (max-width: 640px) {
  .faq-info__button {
    font-size: var(--pixel10);
    display: block;
    margin-right: auto;
    margin-left: auto;
    width: min(48vw, 180px);
    padding: var(--pixel05);
    border-radius: var(--pixel24);
  }
  .faq-info__button:not(:first-child) {
    margin-top: var(--pixel04);
  }
}

/** TARGET ITEM
==============================================*/
.target-item__title {
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 641px) {
  .target-item__title {
    font-size: var(--pixel22);
    margin-bottom: var(--pixel100);
  }
}
@media screen and (max-width: 640px) {
  .target-item__title {
    font-size: var(--pixel16);
    margin-bottom: var(--pixel45);
  }
}

@media screen and (min-width: 641px) {
  .target-item__list {
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap;
  }
  .target-item__list > li {
    width: calc((100% - var(--pixel100) * 2) / 3);
  }
  .target-item__list > li:not(:nth-child(3n)) {
    margin-right: var(--pixel100);
  }
  .target-item__list > li:not(:nth-child(-n + 3)) {
    margin-top: var(--pixel55);
  }
}
@media screen and (max-width: 640px) {
  .target-item__list > li:not(:first-child) {
    margin-top: var(--pixel40);
  }
}

.target-item__card {
  display: block;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 641px) {
  .target-item__card {
    margin-bottom: var(--pixel20);
    width: 100%;
  }
}
@media screen and (max-width: 640px) {
  .target-item__card {
    margin-bottom: var(--pixel15);
    width: min(37.333333333333336vw, 140px);
  }
}

@media screen and (min-width: 641px) {
  .target-item__info {
    padding-right: var(--pixel15);
    padding-left: var(--pixel15);
  }
}

.target-item__label {
  display: block;
  text-align: center;
  line-height: 1;
  border: 1px solid;
  letter-spacing: 0;
  border-radius: var(--pixel16);
  font-size: var(--pixel10);
  width: var(--pixel80);
  padding: var(--pixel03);
}
@media screen and (min-width: 641px) {
  .target-item__label {
    margin-bottom: var(--pixel10);
  }
}
@media screen and (max-width: 640px) {
  .target-item__label {
    margin-bottom: var(--pixel05);
  }
}

.target-item__name {
  display: block;
  letter-spacing: 0;
  font-size: var(--pixel14);
}
@media screen and (min-width: 641px) {
  .target-item__name {
    margin-bottom: var(--pixel15);
  }
}
@media screen and (max-width: 640px) {
  .target-item__name {
    margin-bottom: var(--pixel10);
  }
}

.target-item__sub {
  display: block;
}
.target-item__sub:not(:first-child) {
  margin-top: var(--pixel05);
}
@media screen and (min-width: 641px) {
  .target-item__sub {
    font-size: var(--pixel11);
  }
}
@media screen and (max-width: 640px) {
  .target-item__sub {
    font-size: var(--pixel12);
  }
}

.target-item__button,
.target-item__button:hover {
  position: relative;
  display: block;
  color: #fff;
  background: -webkit-linear-gradient(top, rgba(0, 41, 117, 1) 0%, rgba(0, 15, 62, 1) 100%);
  background: linear-gradient(180deg, rgba(0, 41, 117, 1) 0%, rgba(0, 15, 62, 1) 100%);
  text-align: center;
}
.target-item__button:after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20id%3D%22button%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%205.63%209.32%22%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill%3Anone%3Bstroke%3A%23f7f8f8%3Bstroke-miterlimit%3A10%3Bstroke-width%3A1.07px%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cpolyline%20class%3D%22cls-1%22%20points%3D%22.37%208.94%204.85%204.66%20.37%20.39%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: var(--pixel06) auto;
}
@media screen and (min-width: 641px) {
  .target-item__button {
    margin-top: var(--pixel15);
    border-radius: var(--pixel20);
    font-size: var(--pixel14);
    padding: var(--pixel10) var(--pixel25);
  }
  .target-item__button:after {
    width: var(--pixel25);
  }
}
@media screen and (max-width: 640px) {
  .target-item__button {
    margin-top: var(--pixel10);
    border-radius: var(--pixel30);
    font-size: var(--pixel12);
    padding: var(--pixel10) var(--pixel30);
  }
  .target-item__button:after {
    width: var(--pixel30);
  }
}

.target-item__more,
.target-item__more:hover {
  display: block;
  color: #fff;
  text-align: center;
  background: -webkit-linear-gradient(top, rgba(0, 41, 117, 1) 0%, rgba(0, 15, 62, 1) 100%);
  background: linear-gradient(180deg, rgba(0, 41, 117, 1) 0%, rgba(0, 15, 62, 1) 100%);
}
@media screen and (min-width: 641px) {
  .target-item__more {
    font-size: var(--pixel14);
    border-radius: var(--pixel20);
    padding: var(--pixel10);
    margin-top: min(8.61111111111111vw, 124px);
  }
}
@media screen and (max-width: 640px) {
  .target-item__more {
    font-size: var(--pixel12);
    border-radius: var(--pixel07);
    padding: var(--pixel15);
    margin-top: var(--pixel30);
  }
}

.target-item__notes {
  margin-top: var(--pixel40);
}
.target-item__notes > li {
  font-size: var(--pixel10);
}
@media screen and (min-width: 641px) {
  .target-item__notes > li {
    line-height: 2;
  }
}
@media screen and (max-width: 640px) {
  .target-item__notes > li {
    line-height: 1.6;
  }
}

/** SIDE LABEL
==============================================*/
.side-label,
.side-label:hover {
  position: fixed;
  top: 20%;
  background-color: #066fd0;
  color: #fff;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  font-weight: 700;
  z-index: 10;
  opacity: 1;
}
.side-label__txt {
  letter-spacing: 0;
  line-height: 1;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}
@media screen and (min-width: 641px) {
  .side-label {
    width: min(9.027777777777777vw, 130px);
    border-top-left-radius: var(--pixel30);
    border-bottom-left-radius: var(--pixel30);
    padding: var(--pixel35);
    -webkit-box-pack: start;
    justify-content: flex-start;
    right: calc(0px - var(--pixel40));
    -webkit-transition: right 0.3s ease;
    transition: right 0.3s ease;
  }
  .side-label:hover {
    right: 0;
  }
  .side-label__txt {
    font-size: var(--pixel22);
  }
}
@media screen and (max-width: 640px) {
  .side-label {
    width: var(--pixel30);
    border-top-left-radius: var(--pixel05);
    border-bottom-left-radius: var(--pixel05);
    padding: var(--pixel13);
    -webkit-box-pack: center;
    justify-content: center;
    right: 0;
  }
  .side-label__txt {
    font-size: var(--pixel11);
  }
}

/** MODAL OPEN
==============================================*/
[data-micromodal-transition] {
  -webkit-transition: opacity 0.5s ease-in-out;
  transition: opacity 0.5s ease-in-out;
  opacity: 0;
}

[data-micromodal-transition].is-open {
  opacity: 1;
}

@media screen and (min-width: 641px) {
  .modal-open {
    cursor: pointer;
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
  }
  .modal-open:hover {
    opacity: 0.8;
  }
}

/** MODAL MICROMODAL
==============================================*/
.modal-micromodal {
  display: none;
}

.modal-micromodal.is-open {
  display: block;
}

@-webkit-keyframes modalfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes modalfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@-webkit-keyframes modalfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

@keyframes modalfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

.modal-micromodal[aria-hidden="false"] .modal-overlay {
  -webkit-animation: modalfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
  animation: modalfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}
.modal-micromodal[aria-hidden="true"] .modal-overlay {
  -webkit-animation: modalfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
  animation: modalfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}

/** MODAL OVERLAY
==============================================*/
.modal-overlay {
  background: rgba(0, 0, 0, 0.8);
  bottom: 0;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 100;
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 641px) {
  .modal-overlay {
    padding: var(--pixel20);
  }
}
@media screen and (max-width: 640px) {
  .modal-overlay {
    padding: 0 var(--pixel10);
  }
}

/** MODAL CONTAINER
==============================================*/
/* close button */
.modal-close__button {
  display: block;
  border: var(--pixel02) solid #333;
  width: 100%;
  font-weight: 700;
  font-size: var(--pixel21);
  padding: var(--pixel10);
  text-align: center;
  position: relative;
  background-color: #fff;
}
.modal-close__button:before {
  content: "";
  position: absolute;
  width: var(--pixel24);
  height: var(--pixel24);
  background-color: #f2f2f2;
  border-radius: 50%;
  right: var(--pixel20);
  top: calc(50% - var(--pixel12));
}
.modal-close__button:after {
  content: "";
  position: absolute;
  width: var(--pixel09);
  height: var(--pixel10);
  background-color: #333;
  -webkit-clip-path: polygon(var(--pixel09) 50%, 0% 0%, 0% var(--pixel10));
  clip-path: polygon(var(--pixel09) 50%, 0% 0%, 0% var(--pixel10));
  right: var(--pixel26);
  top: calc(50% - var(--pixel05));
}

/* container */
.modal-container {
  max-height: calc(100vh - var(--pixel40));
}
.modal-container:focus {
  outline: none;
}
.modal-container:before {
  content: "";
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20id%3D%22popup%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2012.79%2012.79%22%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill%3Anone%3Bstroke%3A%23fff%3Bstroke-linecap%3Around%3Bstroke-linejoin%3Around%3Bstroke-width%3A1.5px%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cline%20class%3D%22cls-1%22%20x1%3D%22.75%22%20y1%3D%22.75%22%20x2%3D%2212.04%22%20y2%3D%2212.04%22%2F%3E%3Cline%20class%3D%22cls-1%22%20x1%3D%2212.04%22%20y1%3D%22.75%22%20x2%3D%22.75%22%20y2%3D%2212.04%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100%;
  position: absolute;
  right: 0;
  width: var(--pixel30);
  height: var(--pixel30);
  cursor: pointer;
}
@media screen and (min-width: 641px) {
  .modal-container {
    width: min(64.02777777777777vw, 922px);
  }
  .modal-container:before {
    top: var(--pixel40);
    right: var(--pixel40);
  }
}
@media screen and (max-width: 640px) {
  .modal-container {
    width: 100%;
  }
  .modal-container:before {
    top: var(--pixel30);
    right: var(--pixel25);
  }
}

/** MODAL CONTENT
==============================================*/
.modal-content {
  line-height: 1.5;
  width: 100%;
  height: 100%;
  overflow-y: scroll;
  max-height: calc(100vh - var(--pixel40) - min(32vw, 160px));
}
.modal-content::-webkit-scrollbar {
  width: var(--pixel03);
}
.modal-content::-webkit-scrollbar-thumb {
  background-color: #d2d2d2;
}
@media screen and (min-width: 641px) {
  .modal-content {
    padding: 0 var(--pixel20);
  }
}
@media screen and (max-width: 640px) {
  .modal-content {
    padding: 0 var(--pixel10);
  }
}

/** MODAL INNER
==============================================*/
.modal-inner {
  background-color: #fff;
}
@media screen and (min-width: 641px) {
  .modal-inner {
    padding: var(--pixel40);
  }
}
@media screen and (max-width: 640px) {
  .modal-inner {
    padding: var(--pixel40) var(--pixel15);
  }
}

/** MODAL INFORMATION
==============================================*/
.modal-information__title {
  text-align: center;
  font-weight: 500;
  color: #80685a;
}
@media screen and (min-width: 641px) {
  .modal-information__title {
    font-size: var(--pixel18);
    margin-bottom: var(--pixel35);
  }
}
@media screen and (max-width: 640px) {
  .modal-information__title {
    font-size: var(--pixel16);
    margin-bottom: var(--pixel20);
  }
}

.modal-information__box:not(:first-child) {
  margin-top: var(--pixel30);
}

.modal-information__sub-ttl {
  font-family: "Noto Serif JP", serif;
  text-align: center;
  font-weight: 600;
  border-top: var(--pixel01) solid #333;
  border-bottom: var(--pixel01) solid #333;
}
.modal-information__info > *:not(:first-child) {
  margin-top: var(--pixel15);
}
@media screen and (min-width: 641px) {
  .modal-information__sub-ttl {
    font-size: var(--pixel20);
    padding-top: var(--pixel10);
    padding-bottom: var(--pixel10);
    margin-bottom: var(--pixel25);
  }
  .modal-information__square > li {
    font-size: var(--pixel16);
  }
  .modal-information__notes > li {
    font-size: var(--pixel14);
  }
}
@media screen and (max-width: 640px) {
  .modal-information__sub-ttl {
    font-size: var(--pixel14);
    padding-top: var(--pixel05);
    padding-bottom: var(--pixel05);
    margin-bottom: var(--pixel20);
  }
  .modal-information__square > li {
    font-size: var(--pixel12);
  }
  .modal-information__notes > li {
    font-size: var(--pixel10);
  }
}

.modal-information__table {
  width: 100%;
  border-top: var(--pixel01) solid #bdb1aa;
  border-left: var(--pixel01) solid #bdb1aa;
  border-bottom: var(--pixel01) solid #bdb1aa;
}
.modal-information__table th,
.modal-information__table td {
  text-align: center;
  font-weight: 500;
  padding: var(--pixel10);
  vertical-align: middle;
}
.modal-information__table tr:not(:first-child) th,
.modal-information__table tr:not(:first-child) td {
  border-top: var(--pixel01) solid #bdb1aa;
}
.modal-information__table th,
.modal-information__table td {
  border-right: var(--pixel01) solid #bdb1aa;
}
.modal-information__table th {
  background-color: #000;
  color: #fff;
}
.modal-information__table td {
  background-color: #f4f6f3;
}
@media screen and (min-width: 641px) {
  .modal-information__table th,
  .modal-information__table td {
    font-size: var(--pixel16);
  }
}
@media screen and (max-width: 640px) {
  .modal-information__table th,
  .modal-information__table td {
    font-size: var(--pixel12);
  }
}

.modal-information__table--4col th,
.modal-information__table--4col td {
  width: 25%;
}
