@charset "UTF-8";
/*!
 * ress.css • v4.0.0
 * MIT License
 * github.com/filipelinhares/ress
 */
@import url("https://fonts.googleapis.com/css2?family=BIZ+UDPGothic:wght@400;700&family=Noto+Sans+JP:wght@200..900&&family=Noto+Serif+JP:wght@200..900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap");
html {
  box-sizing: border-box;
  -webkit-text-size-adjust: 100%;
  word-break: normal;
  -moz-tab-size: 4;
  tab-size: 4;
}

*, :after, :before {
  background-repeat: no-repeat;
  box-sizing: inherit;
}

:after, :before {
  text-decoration: inherit;
  vertical-align: inherit;
}

* {
  padding: 0;
  margin: 0;
}

hr {
  overflow: visible;
  height: 0;
  color: inherit;
}

details, main {
  display: block;
}

summary {
  display: list-item;
}

small {
  font-size: 80%;
}

[hidden] {
  display: none;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

a {
  background-color: transparent;
}

a:active, a:hover {
  outline-width: 0;
}

code, kbd, pre, samp {
  font-family: monospace, monospace;
}

pre {
  font-size: 1em;
}

b, strong {
  font-weight: bolder;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

table {
  border-color: inherit;
  text-indent: 0;
}

input {
  border-radius: 0;
}

[disabled] {
  cursor: default;
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

textarea {
  overflow: auto;
  resize: vertical;
}

button, input, optgroup, select, textarea {
  font: inherit;
}

optgroup {
  font-weight: 700;
}

button {
  overflow: visible;
}

button, select {
  text-transform: none;
}

[role=button], [type=button], [type=reset], [type=submit], button {
  cursor: pointer;
  color: inherit;
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button:-moz-focusring {
  outline: 1px dotted ButtonText;
}

[type=reset], [type=submit], button, html [type=button] {
  -webkit-appearance: button;
}

button, input, select, textarea {
  background-color: transparent;
  border-style: none;
}

a:focus, button:focus, input:focus, select:focus, textarea:focus {
  outline-width: 0;
}

select {
  -moz-appearance: none;
  -webkit-appearance: none;
}

select::-ms-expand {
  display: none;
}

select::-ms-value {
  color: currentColor;
}

legend {
  border: 0;
  color: inherit;
  display: table;
  white-space: normal;
  max-width: 100%;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  color: inherit;
  font: inherit;
}

img {
  border-style: none;
}

progress {
  vertical-align: baseline;
}

[aria-busy=true] {
  cursor: progress;
}

[aria-controls] {
  cursor: pointer;
}

[aria-disabled=true] {
  cursor: default;
}

* {
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

body {
  background: #000;
  line-height: 1.8em;
  font-family: "BIZ UDPGothic", sans-serif;
  -webkit-text-size-adjust: 100%;
  line-height: 1;
  font-feature-settings: "palt";
}

img {
  width: 100%;
  max-width: 100%;
  height: auto;
}

a {
  color: #000;
  text-decoration: none;
  transition: 0.3s;
}
a:hover {
  transition: 0.3s;
  text-decoration: none;
}
a img {
  transition: 0.3s;
}
a img:hover {
  opacity: 0.7;
  transition: 0.3s;
}

li {
  list-style: none;
}

@media screen and (max-width: 835px) {
  p .line {
    display: block;
  }
}

@media screen and (max-width: 835px) {
  td .line {
    display: block;
  }
}

.flb_sb, .sec8 .inner, .sec7 ul, .sec6 ul, .sec5 .flow .box .txt ul, .sec5 .flow .box, .sec4 .point, .sec4 .list, .sec3 .reduce .inner, .sec3 .problems .list, .sec2 table tbody td dl, .sec2 .point, .sec2 .list, footer .inner {
  display: flex;
  justify-content: space-between;
}

.flb_ct, .sec5 .faq dl dd::before, .sec5 .faq dl dt::before, .sec5 table tbody span, .sub, .btn {
  display: flex;
  justify-content: center;
}

.flb_st, .sec6 ul li a, .sec5 .flow .box .step, .sec5 .faq dl dd, .sec5 .faq dl dt, .sec4 .point h3 span, .sec3 .problems .list li, header .page-name, header .inner {
  display: flex;
  justify-content: flex-start;
}

.flb_ed {
  display: flex;
  justify-content: flex-end;
}

.fadeIn {
  opacity: 0;
  transition: 3s;
}
.fadeIn.is-show {
  opacity: 1;
}

.fadeIn_up {
  opacity: 0;
  transform: translate(0, 50px);
  transition: 2s;
}
.fadeIn_up.is-show {
  transform: translate(0, 0);
  opacity: 1;
}

.fadeIn_left {
  opacity: 0;
  transform: translate(-50px, 0);
  transition: 2s;
}
.fadeIn_left.is-show {
  transform: translate(0, 0);
  opacity: 1;
}

.fadeIn_right {
  opacity: 0;
  transform: translate(50px, 0);
  transition: 2s;
}
.fadeIn_right.is-show {
  transform: translate(0, 0);
  opacity: 1;
}

.pc {
  display: block;
}
@media screen and (max-width: 835px) {
  .pc {
    display: none;
  }
}

.sp {
  display: none;
}
@media screen and (max-width: 835px) {
  .sp {
    display: block;
  }
}

/* ヘッダー */
header {
  position: relative;
  z-index: 1;
  background: url("../images/slide1.webp");
  background-size: cover;
}
header .slick-slider {
  display: none;
}
header .inner {
  align-items: flex-start;
  flex-direction: column;
  padding: 1.5277777778vw 0 5.1388888889vw 9.0277777778vw;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 835px) {
  header .inner {
    padding: 5vw 8.3333333333vw 5vw 8.3333333333vw;
  }
}
header h1,
header h2,
header p,
header dt {
  color: #fff;
  font-family: "Noto Serif JP", serif;
}
header .company-logo {
  display: block;
  width: 7.6388888889vw;
  padding-bottom: 5.1388888889vw;
  margin-left: 0.3472222222vw;
}
@media screen and (max-width: 835px) {
  header .company-logo {
    width: 19.7916666667vw;
    padding-bottom: 7.0833333333vw;
    margin-left: 0.625vw;
  }
}
header .company-logo img {
  display: block;
  width: 100%;
}
header .lead {
  font-size: 58px;
  font-size: 4.0277777778vw;
  font-weight: 900;
  line-height: 1.42em;
  letter-spacing: 0.1em;
  padding-bottom: 1.4583333333vw;
}
@media screen and (max-width: 835px) {
  header .lead {
    font-size: 38px;
    font-size: 7.3076923077vw;
    line-height: 1.35em;
    letter-spacing: 0.05em;
    padding-bottom: 4.1666666667vw;
  }
}
header .lead span {
  font-size: 76px;
  font-size: 5.2777777778vw;
  font-weight: 900;
}
@media screen and (max-width: 835px) {
  header .lead span {
    font-size: 52px;
    font-size: 10vw;
    line-height: 1.35em;
  }
}
header .sub-lead {
  font-size: 32px;
  font-size: 2.2222222222vw;
  font-weight: 700;
  line-height: 1.5em;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 835px) {
  header .sub-lead {
    font-size: 24.5px;
    font-size: 4.7115384615vw;
    line-height: 1.75;
  }
}
header .page-name {
  align-items: flex-end;
  margin-top: auto;
}
@media screen and (max-width: 835px) {
  header .page-name {
    display: block;
    padding-bottom: 3vw;
    margin: auto 0 0 0;
  }
}
header .page-name h1 {
  font-size: 24px;
  font-size: 1.6666666667vw;
  width: 28vw;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1em;
  margin-right: 4.0277777778vw;
}
@media screen and (max-width: 835px) {
  header .page-name h1 {
    font-size: 18px;
    font-size: 3.4615384615vw;
    width: auto;
    margin-right: 0;
  }
}
header .page-name h1 img {
  display: block;
  width: 27.0833333333vw;
  margin-top: 1.3888888889vw;
}
@media screen and (max-width: 835px) {
  header .page-name h1 img {
    width: 54.5833333333vw;
    margin-top: 3.5416666667vw;
    margin-bottom: 5.2083333333vw;
  }
}
header .page-name .emblems {
  display: flex;
}
header .page-name .emblems .emblem {
  width: 15vw;
  height: 7vw;
  margin-right: 1.8055555556vw;
  margin-bottom: 0.7638888889vw;
  color: #fff;
  padding: 0.3472222222vw 0;
  background: url("../images/emblem_base.svg") center center no-repeat;
  background-size: contain;
}
@media screen and (max-width: 835px) {
  header .page-name .emblems .emblem {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 27.4541666667vw;
    height: 12.76875vw;
    padding: 0;
    margin-right: 3.3333333333vw;
    margin-bottom: 0;
  }
}
header .page-name .emblems .emblem .txt {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 600;
  font-size: 1.3888888889vw;
  padding-top: 0.3472222222vw;
}
@media screen and (max-width: 835px) {
  header .page-name .emblems .emblem .txt {
    font-size: 2.5541666667vw;
    padding-top: 0;
  }
}
header .page-name .emblems .emblem .txt .num-txt {
  display: block;
  padding: 0.3472222222vw 0;
  line-height: 1;
}
@media screen and (max-width: 835px) {
  header .page-name .emblems .emblem .txt .num-txt {
    padding: 0.2083333333vw 0;
  }
}
header .page-name .emblems .emblem .txt .num-txt .num {
  font-size: 3.4722222222vw;
}
@media screen and (max-width: 835px) {
  header .page-name .emblems .emblem .txt .num-txt .num {
    font-size: 6.4583333333vw;
  }
}
header .page-name .emblems .emblem .txt .num-txt .percent {
  font-size: 2.2222222222vw;
}
@media screen and (max-width: 835px) {
  header .page-name .emblems .emblem .txt .num-txt .percent {
    font-size: 4.1666666667vw;
  }
}
header .slick-slide img {
  width: 100%;
  height: auto;
}
header .slick-slide img.sp {
  display: none;
}
@media screen and (max-width: 835px) {
  header .slick-slide img.sp {
    display: block;
  }
}
header .slick-slide img.pc {
  display: block;
}
@media screen and (max-width: 835px) {
  header .slick-slide img.pc {
    display: none;
  }
}

/* グローバルナビ */
.gnav {
  position: fixed;
  top: 0;
  right: 0;
  width: 27.0833333333vw;
  height: 100vh;
  background: #fff;
  z-index: 9999;
  transform: translateX(100%);
  transition: 0.5s;
}
@media screen and (max-width: 835px) {
  .gnav {
    width: 72.9166666667vw;
  }
}
.gnav.active {
  transform: translateX(0);
  transition: 0.5s;
}
.gnav .gnav-inner {
  overflow-y: auto;
  height: 100vh;
  padding: 1.9444444444vw 1.3888888889vw 0;
}
@media screen and (max-width: 835px) {
  .gnav .gnav-inner {
    padding: 5.8333333333vw 4.1666666667vw 0;
  }
}
.gnav .menubtn {
  cursor: pointer;
  display: block;
  width: 9.0277777778vw;
  height: 6.9444444444vw;
  border-radius: 3.4722222222vw 0 0 3.4722222222vw;
  position: absolute;
  right: 100%;
  top: 1.1111111111vw;
  background: #ffffff;
  box-shadow: -0.2vw 0 0.4vw rgba(0, 0, 0, 0.1), inset 0.1vw 0.1vw 0.2vw rgba(255, 255, 255, 0.5), inset 0 -0.2vw 0.3vw rgba(0, 0, 0, 0.4);
  padding: 0.6944444444vw 0.4166666667vw 0.4166666667vw 1.7361111111vw;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media screen and (max-width: 835px) {
  .gnav .menubtn {
    width: 22.9166666667vw;
    height: 17.5vw;
    border-radius: 10.4166666667vw 0 0 10.4166666667vw;
    top: 4.5833333333vw;
    padding: 1.25vw 0.8333333333vw 1.4583333333vw 3.75vw;
  }
}
.gnav .menubtn figure {
  width: 90%;
  margin: 0 auto;
}
@media screen and (max-width: 835px) {
  .gnav .menubtn figure {
    width: 16vw;
  }
}
.gnav .menubtn .txt {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 700;
  font-size: 0.9722222222vw;
  line-height: 100%;
  text-align: center;
  letter-spacing: 0.4em;
  display: block;
}
@media screen and (max-width: 835px) {
  .gnav .menubtn .txt {
    font-size: 2.7083333333vw;
    padding-top: 0.625vw;
  }
}
.gnav .menubtn:hover {
  width: 9.7222222222vw;
  padding-right: 1.1111111111vw;
}
@media screen and (max-width: 835px) {
  .gnav .menubtn:hover {
    width: 25.8333333333vw;
    padding-right: 2.9166666667vw;
  }
}
.gnav .logo {
  width: 15.5555555556vw;
  margin-bottom: 2.4305555556vw;
}
@media screen and (max-width: 835px) {
  .gnav .logo {
    width: 46.6666666667vw;
    margin-bottom: 7.2916666667vw;
  }
}
.gnav .logo img {
  display: block;
}
.gnav ul {
  border-top: #ccc 0.0694444444vw solid;
}
@media screen and (max-width: 835px) {
  .gnav ul {
    border-top: #ccc 0.2083333333vw solid;
  }
}
.gnav ul li {
  border-bottom: #ccc 0.0694444444vw solid;
  font-size: 20px;
  font-size: 1.3888888889vw;
}
@media screen and (max-width: 835px) {
  .gnav ul li {
    border-bottom: #ccc 0.2083333333vw solid;
    font-size: 22px;
    font-size: 4.2307692308vw;
  }
}
.gnav ul li a {
  display: block;
  width: 100%;
  padding: 1.7361111111vw 0.6944444444vw;
  font-weight: 700;
}
@media screen and (max-width: 835px) {
  .gnav ul li a {
    padding: 6.6666666667vw 2.0833333333vw;
  }
}
.gnav ul li a:hover {
  background: #ffd263;
}
.gnav .menu-btn {
  padding-top: 3vw;
}
@media screen and (max-width: 835px) {
  .gnav .menu-btn {
    padding-top: 6vw;
  }
}

/* フッター */
footer {
  padding-top: 9.4444444444vw;
  padding-bottom: 7.4305555556vw;
}
@media screen and (max-width: 835px) {
  footer {
    padding: 16.6666666667vw 0;
  }
}
footer .inner {
  width: 81.9444444444vw;
  margin: auto;
}
@media screen and (max-width: 835px) {
  footer .inner {
    width: 83.3333333333vw;
    display: block;
    text-align: center;
  }
}
footer .kdis-logo {
  width: 17.8472222222vw;
}
@media screen and (max-width: 835px) {
  footer .kdis-logo {
    width: 53.5416666667vw;
    padding-bottom: 8.3333333333vw;
    margin: 0 auto;
  }
}
footer p,
footer li,
footer a {
  color: #fff;
}
footer .txt {
  width: 56.1805555556vw;
}
@media screen and (max-width: 835px) {
  footer .txt {
    width: 100%;
  }
}
@media screen and (max-width: 835px) {
  footer .txt ul {
    padding-bottom: 20.8333333333vw;
  }
}
footer .txt ul li {
  display: block;
  font-size: 20px;
  font-size: 1.3888888889vw;
  letter-spacing: 0;
  line-height: 1em;
  margin-bottom: 2.7777777778vw;
}
@media screen and (max-width: 835px) {
  footer .txt ul li {
    font-size: 20px;
    font-size: 3.8461538462vw;
    margin-bottom: 0;
    line-height: 2.3em;
  }
}
footer .txt ul li a {
  font-weight: bold;
}
footer .txt ul li a:hover {
  color: #ffd263;
}
footer .logo {
  display: block;
  width: 12.0138888889vw;
  margin-left: auto;
}
@media screen and (max-width: 835px) {
  footer .logo {
    width: 29.1666666667vw;
    margin: 0 auto 9.1666666667vw;
  }
}
footer .logo img {
  display: block;
  width: 100%;
}
footer .copy {
  font-size: 16px;
  font-size: 1.1111111111vw;
  font-weight: 500;
  text-align: right;
}
@media screen and (max-width: 835px) {
  footer .copy {
    font-size: 12px;
    font-size: 2.3076923077vw;
    text-align: center;
  }
}

/* コンテンツ */
.fontS, .sec8 .txt p, .sec6 p, .sec5 .flow .box .txt p, .sec5 .faq dl dd, .sec5 .lead, .sec4 .point .txt p, .sec4 .list li figure figcaption, .cta p, .sec3 .comparison table tbody td, .sec3 .reduce .inner dl dd, .sec2 table tbody td dl dt, .sec2 table tbody td, .sec2 .point p {
  font-family: "BIZ UDPGothic", sans-serif;
  font-size: 18px;
  font-size: 1.25vw;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2em;
}
@media screen and (max-width: 835px) {
  .fontS, .sec8 .txt p, .sec6 p, .sec5 .flow .box .txt p, .sec5 .faq dl dd, .sec5 .lead, .sec4 .point .txt p, .sec4 .list li figure figcaption, .cta p, .sec3 .comparison table tbody td, .sec3 .reduce .inner dl dd, .sec2 table tbody td dl dt, .sec2 table tbody td, .sec2 .point p {
    font-size: 18px;
    font-size: 3.4615384615vw;
  }
}

.fontM, .sec5 .faq dl dt, .sec5 table thead th, .sec4 p, .sec3 .comparison table tbody tr:nth-of-type(1) td:nth-of-type(1),
.sec3 .comparison table tbody tr:nth-of-type(2) td:nth-of-type(1), .sec3 .comparison table tbody td .color, .sec3 .comparison table tbody th, .sec3 .problems .list li, .sec2 table tbody th, .sec2 .point .check p, .btn {
  font-family: "BIZ UDPGothic", sans-serif;
  font-size: 20px;
  font-size: 1.3888888889vw;
  letter-spacing: 0;
  line-height: 1.75em;
}
@media screen and (max-width: 835px) {
  .fontM, .sec5 .faq dl dt, .sec5 table thead th, .sec4 p, .sec3 .comparison table tbody tr:nth-of-type(1) td:nth-of-type(1),
  .sec3 .comparison table tbody tr:nth-of-type(2) td:nth-of-type(1), .sec3 .comparison table tbody td .color, .sec3 .comparison table tbody th, .sec3 .problems .list li, .sec2 table tbody th, .sec2 .point .check p, .btn {
    font-size: 20px;
    font-size: 3.8461538462vw;
  }
}

.btn {
  background: #edb019;
  align-items: center;
  width: 31.9444444444vw;
  height: 4.7222222222vw;
  padding-left: 2.0833333333vw;
  position: relative;
  box-shadow: 0 0 0.8333333333vw rgba(0, 0, 0, 0.25);
  font-weight: bold;
  border: #edb019 0.1388888889vw solid;
}
@media screen and (max-width: 835px) {
  .btn {
    width: 83.3333333333vw;
    height: 14.1666666667vw;
    padding-left: 6.25vw;
    box-shadow: 0 0 2.5vw rgba(0, 0, 0, 0.25);
    border: #edb019 0.4166666667vw solid;
  }
}
.btn.btn__s {
  width: 100%;
  padding-left: 4.1666666667vw;
}
.btn::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}
.btn.mail::before {
  width: 2.4305555556vw;
  aspect-ratio: 35/26;
  background: url("../images/mail.svg") center center no-repeat;
  background-size: 100% auto;
  left: 2.0833333333vw;
}
@media screen and (max-width: 835px) {
  .btn.mail::before {
    width: 7.0833333333vw;
    left: 3.125vw;
  }
}
.btn.mail.btn__s::before {
  left: 4.1666666667vw;
}
.btn.mail-kdis::before {
  width: 3.8194444444vw;
  aspect-ratio: 12/10;
  background: url("../images/kdis-mail.svg") center center no-repeat;
  background-size: 100% auto;
  left: 2.0833333333vw;
}
@media screen and (max-width: 835px) {
  .btn.mail-kdis::before {
    width: 11.25vw;
    left: 3.3333333333vw;
  }
}
.btn.mail-kdis.btn__s::before {
  left: 1.6666666667vw;
}
@media screen and (max-width: 835px) {
  .btn.mail-kdis.btn__s::before {
    width: 9.1666666667vw;
    left: 2.5vw;
  }
}
.btn.base::before {
  width: 1.8055555556vw;
  aspect-ratio: 13/19;
  background: url("../images/base.svg") center center no-repeat;
  background-size: 100% auto;
  left: 2.3611111111vw;
}
@media screen and (max-width: 835px) {
  .btn.base::before {
    width: 5.4166666667vw;
    left: 4.1666666667vw;
  }
}
.btn:hover {
  background: #fff;
}

.ttl {
  text-align: center;
  color: #fff;
  font-family: "Noto Serif JP", serif;
  font-size: 3.3333333333vw;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.5em;
}
@media screen and (max-width: 835px) {
  .ttl {
    font-size: 7.7083333333vw;
  }
}

.sub {
  color: #fff;
  align-items: center;
  font-size: 32px;
  font-size: 2.2222222222vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1em;
  position: relative;
}
@media screen and (max-width: 835px) {
  .sub {
    font-size: 5.8333333333vw;
    line-height: 1.5em;
    text-align: center;
  }
}
.sub::before, .sub::after {
  content: "";
  display: block;
  width: 5.5555555556vw;
  height: 0.2777777778vw;
  background: #edb019;
  transform: skewX(-15deg);
}
@media screen and (max-width: 835px) {
  .sub::before, .sub::after {
    position: absolute;
    width: 12.5vw;
    height: 0.625vw;
    transform: skewX(-15deg);
    left: 50%;
    top: -5vw;
    margin-left: -6.25vw;
  }
}
.sub::before {
  margin-right: 1.1111111111vw;
}
@media screen and (max-width: 835px) {
  .sub::before {
    margin-right: 3.3333333333vw;
  }
}
.sub::after {
  margin-left: 1.1111111111vw;
}
@media screen and (max-width: 835px) {
  .sub::after {
    display: none;
  }
}

.sec1 {
  position: relative;
  z-index: 1;
}
.sec1::before {
  content: "";
  display: block;
  width: 100%;
  aspect-ratio: 48/25;
  background: url("../images/bg1.webp") center center no-repeat;
  background-size: 100% auto;
  z-index: -1;
}
@media screen and (max-width: 835px) {
  .sec1::before {
    aspect-ratio: 480/767;
    background: url("../images/bg1-sp.webp") center center no-repeat;
    background-size: 100% auto;
  }
}
.sec1 .inner {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  padding-top: 11.1111111111vw;
  padding-left: 52.0833333333vw;
}
@media screen and (max-width: 835px) {
  .sec1 .inner {
    padding: 14.5833333333vw 8.5416666667vw 0;
  }
}
.sec1 h2 {
  color: #000;
  font-family: "Noto Serif JP", serif;
  font-size: 38px;
  font-size: 2.6388888889vw;
  font-weight: 900;
  letter-spacing: 0.05em;
  line-height: 1.85em;
  padding-bottom: 1.0416666667vw;
}
@media screen and (max-width: 835px) {
  .sec1 h2 {
    font-size: 26px;
    font-size: 5vw;
    padding-bottom: 3.125vw;
    text-align: center;
  }
}
.sec1 h2 span {
  font-size: 48px;
  font-size: 3.3333333333vw;
  font-weight: 900;
}
@media screen and (max-width: 835px) {
  .sec1 h2 span {
    font-size: 36px;
    font-size: 6.9230769231vw;
    line-height: 1.85em;
  }
}
.sec1 p {
  color: #000;
  font-family: "Noto Serif JP", serif;
  font-size: 24px;
  font-size: 1.6666666667vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 2em;
}
@media screen and (max-width: 835px) {
  .sec1 p {
    font-size: 20px;
    font-size: 3.8461538462vw;
    text-align: center;
  }
}
.sec1 .btn {
  margin-top: 3.4027777778vw;
}
@media screen and (max-width: 835px) {
  .sec1 .btn {
    margin-top: 10vw;
  }
}

.sec2 {
  background: url("../images/bg2-1.webp") center top no-repeat, url("../images/bg2-2.webp") center bottom no-repeat;
  background-size: 100% auto, 100% auto;
  padding-top: 11.1111111111vw;
  padding-bottom: 23.125vw;
}
@media screen and (max-width: 835px) {
  .sec2 {
    background: url("../images/bg2-1-sp.webp") center top no-repeat, url("../images/bg2-2-sp.webp") center bottom no-repeat;
    background-size: 100% auto, 100% auto;
    padding-top: 25vw;
    padding-bottom: 52.9166666667vw;
  }
}
.sec2 .inner {
  width: 81.9444444444vw;
  margin: auto;
}
@media screen and (max-width: 835px) {
  .sec2 .inner {
    width: 100%;
  }
}
.sec2 .ttl {
  padding-bottom: 8.8888888889vw;
}
@media screen and (max-width: 835px) {
  .sec2 .ttl {
    padding-bottom: 14.5833333333vw;
  }
}
.sec2 .sub {
  margin-bottom: 4.1666666667vw;
}
@media screen and (max-width: 835px) {
  .sec2 .sub {
    margin-bottom: 8.3333333333vw;
  }
}
.sec2 .list {
  flex-wrap: wrap;
  padding-bottom: 3.1944444444vw;
}
@media screen and (max-width: 835px) {
  .sec2 .list {
    width: 83.3333333333vw;
    margin: auto;
  }
}
.sec2 .list li {
  display: block;
  width: 38.8888888889vw;
  margin-bottom: 4.3055555556vw;
}
@media screen and (max-width: 835px) {
  .sec2 .list li {
    width: 100%;
    margin-bottom: 12.5vw;
  }
}
.sec2 .list li iframe {
  display: block;
  border: 0;
  width: 100%;
  aspect-ratio: 560/313;
  object-fit: cover;
}
@media screen and (max-width: 835px) {
  .sec2 .list li iframe {
    aspect-ratio: 25/14;
  }
}
.sec2 .point {
  padding-bottom: 2.7777777778vw;
}
@media screen and (max-width: 835px) {
  .sec2 .point {
    display: block;
    width: 83.3333333333vw;
    margin: auto;
    padding-bottom: 0;
  }
}
.sec2 .point .box {
  width: 25vw;
  padding: 2.7777777778vw 1.6666666667vw;
  text-align: center;
  background: rgba(46, 46, 46, 0.8);
}
@media screen and (max-width: 835px) {
  .sec2 .point .box {
    width: 100%;
    padding: 4.5833333333vw 4.5833333333vw;
    margin-bottom: 6.6666666667vw;
  }
}
.sec2 .point h4,
.sec2 .point p {
  color: #fff;
}
.sec2 .point h4 {
  font-family: "Noto Serif JP", serif;
  font-size: 48px;
  font-size: 3.3333333333vw;
  font-weight: 700;
  letter-spacing: 0.01em;
  line-height: 1.5em;
  padding-bottom: 1.6666666667vw;
}
@media screen and (max-width: 835px) {
  .sec2 .point h4 {
    font-size: 48px;
    font-size: 9.2307692308vw;
    padding-bottom: 2.5vw;
    list-style: 1.4;
  }
}
.sec2 .point .check {
  background: #171717;
  padding-top: 1.4583333333vw;
  padding-bottom: 2.4305555556vw;
}
@media screen and (max-width: 835px) {
  .sec2 .point .check {
    padding-top: 4.375vw;
    padding-bottom: 7.2916666667vw;
  }
}
.sec2 .point .check::before {
  content: "";
  display: block;
  width: 1.9444444444vw;
  aspect-ratio: 7/6;
  background: url("../images/check.svg") center center no-repeat;
  background-size: contain;
  margin: 0 auto 0.6944444444vw;
}
@media screen and (max-width: 835px) {
  .sec2 .point .check::before {
    width: 5.8333333333vw;
    margin-bottom: 2.0833333333vw;
  }
}
.sec2 .remark {
  margin-bottom: 8.3333333333vw;
}
@media screen and (max-width: 835px) {
  .sec2 .remark {
    margin-bottom: 20.8333333333vw;
  }
}
.sec2 .remark p {
  font-size: 28px;
  font-size: 1.9444444444vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.75em;
  text-align: center;
  color: #ffffff;
}
@media screen and (max-width: 835px) {
  .sec2 .remark p {
    font-size: 20px;
    font-size: 3.8461538462vw;
  }
}
@media screen and (max-width: 835px) {
  .sec2 .js-scrollable {
    padding: 0 8.3333333333vw;
  }
}
.sec2 table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 1.3194444444vw;
}
@media screen and (max-width: 835px) {
  .sec2 table {
    width: 187.5vw;
  }
}
.sec2 table thead th {
  text-align: center;
  background: #1a1a1a;
  color: #fff;
  font-size: 28px;
  font-size: 1.9444444444vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.75em;
  padding: 1.5972222222vw 0;
}
@media screen and (max-width: 835px) {
  .sec2 table thead th {
    font-size: 24px;
    font-size: 4.6153846154vw;
    padding: 4.7916666667vw 0;
  }
}
.sec2 table thead th:nth-child(1) {
  background: #000;
}
.sec2 table thead th:nth-child(2), .sec2 table thead th:nth-child(3) {
  border-right: #666 1px solid;
}
.sec2 table thead th:nth-child(2), .sec2 table thead th:nth-child(3), .sec2 table thead th:nth-child(4) {
  width: 21.875vw;
}
@media screen and (max-width: 835px) {
  .sec2 table thead th:nth-child(2), .sec2 table thead th:nth-child(3), .sec2 table thead th:nth-child(4) {
    width: 27%;
  }
}
.sec2 table tbody th,
.sec2 table tbody td {
  color: #fff;
  text-align: left;
  border-bottom: #666 1px solid;
  vertical-align: middle;
}
.sec2 table tbody th {
  background: rgba(32, 32, 32, 0.8);
  padding: 1.6666666667vw 0 1.6666666667vw 1.6666666667vw;
}
@media screen and (max-width: 835px) {
  .sec2 table tbody th {
    padding: 5vw 0 5vw 2.5vw;
    width: 15%;
  }
}
.sec2 table tbody td {
  background: rgba(46, 46, 46, 0.8);
  padding: 1.6666666667vw 0 1.6666666667vw 1.6666666667vw;
}
@media screen and (max-width: 835px) {
  .sec2 table tbody td {
    padding: 2.5vw 2.5vw;
  }
}
.sec2 table tbody td:nth-child(2), .sec2 table tbody td:nth-child(3) {
  border-right: #666 1px solid;
}
.sec2 table tbody td ul li {
  list-style: none;
  text-indent: -1em;
  margin-left: 1em;
}
.sec2 table tbody td ul li::before {
  content: "・";
  margin-right: 0.5em;
}
.sec2 table tbody td ul li span {
  font-size: 16px;
  font-size: 1.1111111111vw;
}
@media screen and (max-width: 835px) {
  .sec2 table tbody td ul li span {
    font-size: 16px;
    font-size: 3.0769230769vw;
  }
}
.sec2 table tbody td dl {
  flex-wrap: wrap;
  text-align: center;
  margin-left: 5.0694444444vw;
  width: 51.3888888889vw;
  margin-top: -0.625vw;
}
@media screen and (max-width: 835px) {
  .sec2 table tbody td dl {
    margin-left: 15.2083333333vw;
    width: 90%;
    margin: 0 auto;
    margin-top: -1.875vw;
  }
}
.sec2 table tbody td dl dt {
  width: 100%;
  padding-bottom: 1.1805555556vw;
}
@media screen and (max-width: 835px) {
  .sec2 table tbody td dl dt {
    padding-bottom: 3.5416666667vw;
  }
}
.sec2 table tbody td dl dd {
  margin-left: 0;
  width: 16.3194444444vw;
}
@media screen and (max-width: 835px) {
  .sec2 table tbody td dl dd {
    width: 32%;
  }
}
.sec2 table tbody td dl dd img {
  display: block;
  width: 15.2777777778vw;
  margin: 0 auto 0.9027777778vw;
}
@media screen and (max-width: 835px) {
  .sec2 table tbody td dl dd img {
    width: 90%;
    margin-bottom: 2.7083333333vw;
  }
}
.sec2 table tbody td dl dd span {
  display: block;
  font-size: 16px;
  font-size: 1.1111111111vw;
}
@media screen and (max-width: 835px) {
  .sec2 table tbody td dl dd span {
    font-size: 14px;
    font-size: 2.6923076923vw;
  }
}
.sec2 table tbody tr:last-of-type th,
.sec2 table tbody tr:last-of-type td {
  border: 0;
}
.sec2 table th.simple-plan {
  background: #3c5562;
}
.sec2 table th.light-plan {
  background: #3c4162;
}
.sec2 table th.normal-plan {
  background: #785d28;
}
.sec2 table td.simple-plan {
  background: #2a404c;
}
.sec2 table td.light-plan {
  background: #2f3247;
}
.sec2 table td.normal-plan {
  background: #4e3c18;
}
.sec2 .att {
  color: #fff;
  text-align: right;
  font-size: 12px;
  font-size: 0.8333333333vw;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.75em;
}
@media screen and (max-width: 835px) {
  .sec2 .att {
    width: 187.5vw;
    font-size: 12px;
    font-size: 2.3076923077vw;
  }
}

.sec3 {
  padding-top: 14.0972222222vw;
}
@media screen and (max-width: 835px) {
  .sec3 {
    padding-top: 25vw;
  }
}
.sec3 .ttl {
  padding-bottom: 5.9027777778vw;
}
@media screen and (max-width: 835px) {
  .sec3 .ttl {
    padding-bottom: 16.6666666667vw;
  }
}
.sec3 .sub {
  margin-bottom: 3.6111111111vw;
}
@media screen and (max-width: 835px) {
  .sec3 .sub {
    margin-bottom: 8.9583333333vw;
  }
}
.sec3 .problems {
  position: relative;
  z-index: 1;
}
.sec3 .problems::before {
  content: "";
  display: block;
  width: 100%;
  aspect-ratio: 1440/707;
  background: url("../images/bg3.webp") center center no-repeat;
  background-size: 100% auto;
}
@media screen and (max-width: 835px) {
  .sec3 .problems::before {
    aspect-ratio: 240/539;
    background: url("../images/bg3-sp.webp") center center no-repeat;
    background-size: 100% auto;
  }
}
@media screen and (max-width: 835px) {
  .sec3 .problems .sub::before {
    display: none;
  }
}
.sec3 .problems .inner {
  width: 81.9444444444vw;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  padding-top: 5.9722222222vw;
}
@media screen and (max-width: 835px) {
  .sec3 .problems .inner {
    width: 83.3333333333vw;
    padding-top: 17.0833333333vw;
  }
}
.sec3 .problems .list {
  flex-wrap: wrap;
}
@media screen and (max-width: 835px) {
  .sec3 .problems .list {
    display: block;
  }
}
.sec3 .problems .list li {
  width: 38.8888888889vw;
  align-items: center;
  padding: 1.7361111111vw 1.6666666667vw;
  background: #2e2e2e;
  color: #fff;
  margin-bottom: 1.3888888889vw;
}
@media screen and (max-width: 835px) {
  .sec3 .problems .list li {
    position: relative;
    width: 100%;
    min-height: 12.5vw;
    padding: 2.5vw 1.6666666667vw 2.5vw 10vw;
    margin-bottom: 4.1666666667vw;
  }
}
.sec3 .problems .list li::before {
  content: "";
  display: block;
  width: 2.2222222222vw;
  aspect-ratio: 1/1;
  background: url("../images/check-sq.svg") center center no-repeat;
  background-size: 100% auto;
  margin-right: 1.1111111111vw;
}
@media screen and (max-width: 835px) {
  .sec3 .problems .list li::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 2.9166666667vw;
    margin: auto;
    width: 5vw;
  }
}
.sec3 .problems .list li b {
  color: #ffd263;
}
.sec3 .reduce {
  padding-top: 6.8055555556vw;
}
.sec3 .reduce .inner {
  width: 81.9444444444vw;
  margin: auto;
}
.sec3 .reduce .inner dl {
  width: 25vw;
  position: relative;
  padding: 0 0 2.2916666667vw 5.9722222222vw;
}
.sec3 .reduce .inner dl dt,
.sec3 .reduce .inner dl dd {
  color: #fff;
}
.sec3 .reduce .inner dl dt {
  font-family: "Noto Serif JP", serif;
  font-size: 48px;
  font-size: 3.3333333333vw;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 2em;
}
.sec3 .reduce .inner dl::before, .sec3 .reduce .inner dl::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
}
.sec3 .reduce .inner dl::before {
  width: 0.2777777778vw;
  height: 100%;
  background: #666;
  top: 0;
  transform: skewX(-15deg);
  transform-origin: bottom left;
}
.sec3 .reduce .inner dl::after {
  width: 100%;
  height: 0.0694444444vw;
  background: #666;
  bottom: 0;
}
.sec3 .comparison {
  padding-top: 7.4305555556vw;
  padding-bottom: 5.5555555556vw;
}
@media screen and (max-width: 835px) {
  .sec3 .comparison {
    padding-top: 12.5vw;
    padding-bottom: 3.1944444444vw;
  }
}
.sec3 .comparison .inner {
  width: 81.9444444444vw;
  margin: auto;
}
@media screen and (max-width: 835px) {
  .sec3 .comparison .js-scrollable {
    padding: 0 8.3333333333vw;
  }
}
@media screen and (max-width: 835px) {
  .sec3 .comparison .js-scrollable .inner {
    width: 125vw;
    padding-bottom: 11.1111111111vw;
  }
}
.sec3 .comparison .js-scrollable .scroll-hint-icon {
  z-index: 99;
}
.sec3 .comparison table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 0.9027777778vw;
}
@media screen and (max-width: 835px) {
  .sec3 .comparison table {
    margin-bottom: 2.7083333333vw;
    width: 125vw;
  }
}
.sec3 .comparison table thead th {
  background: #202020;
  text-align: center;
  height: 11.1111111111vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.75em;
}
@media screen and (max-width: 835px) {
  .sec3 .comparison table thead th {
    height: 20.8333333333vw;
  }
}
.sec3 .comparison table thead th:nth-of-type(1) {
  background: #000;
}
.sec3 .comparison table thead th:nth-of-type(2) {
  width: 32.9861111111vw;
  color: #ffd263;
  font-size: 28px;
  font-size: 1.9444444444vw;
  border-top: #ffd263 0.5555555556vw solid;
  border-left: #ffd263 0.5555555556vw solid;
  border-right: #ffd263 0.5555555556vw solid;
}
@media screen and (max-width: 835px) {
  .sec3 .comparison table thead th:nth-of-type(2) {
    width: 35%;
    font-size: 24px;
    font-size: 4.6153846154vw;
    border-top: #ffd263 1.6666666667vw solid;
    border-left: #ffd263 1.6666666667vw solid;
    border-right: #ffd263 1.6666666667vw solid;
  }
}
.sec3 .comparison table thead th:nth-of-type(3) {
  width: 28.4722222222vw;
  color: #fff;
  font-size: 24px;
  font-size: 1.6666666667vw;
}
@media screen and (max-width: 835px) {
  .sec3 .comparison table thead th:nth-of-type(3) {
    width: 35%;
    font-size: 24px;
    font-size: 4.6153846154vw;
  }
}
.sec3 .comparison table tbody th,
.sec3 .comparison table tbody td {
  color: #fff;
  background: #2e2e2e;
  border-bottom: #666 0.0694444444vw solid;
  height: 7.6388888889vw;
  vertical-align: middle;
}
@media screen and (max-width: 835px) {
  .sec3 .comparison table tbody th,
  .sec3 .comparison table tbody td {
    border-bottom: #666 0.2083333333vw solid;
    height: 22.9166666667vw;
  }
}
.sec3 .comparison table tbody th {
  text-align: left;
  padding-left: 2.2916666667vw;
}
@media screen and (max-width: 835px) {
  .sec3 .comparison table tbody th {
    padding-left: 2.5vw;
    width: 22%;
  }
}
.sec3 .comparison table tbody td {
  text-align: center;
}
.sec3 .comparison table tbody td:nth-of-type(1) {
  border-left: #ffd263 0.5555555556vw solid;
  border-right: #ffd263 0.5555555556vw solid;
}
@media screen and (max-width: 835px) {
  .sec3 .comparison table tbody td:nth-of-type(1) {
    border-left: #ffd263 1.6666666667vw solid;
    border-right: #ffd263 1.6666666667vw solid;
  }
}
.sec3 .comparison table tbody td b {
  color: #ffd263;
  font-size: 40px;
  font-size: 2.7777777778vw;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.5em;
}
@media screen and (max-width: 835px) {
  .sec3 .comparison table tbody td b {
    font-size: 40px;
    font-size: 7.6923076923vw;
  }
}
.sec3 .comparison table tbody td .color {
  color: #ffd263;
}
.sec3 .comparison table tbody tr:last-of-type th,
.sec3 .comparison table tbody tr:last-of-type td {
  border-bottom: 0;
}
.sec3 .comparison table tbody tr:last-of-type td:nth-of-type(1) {
  border-bottom: #ffd263 0.5555555556vw solid;
}
@media screen and (max-width: 835px) {
  .sec3 .comparison table tbody tr:last-of-type td:nth-of-type(1) {
    border-bottom: #ffd263 1.6666666667vw solid;
  }
}
.sec3 .comparison .att {
  text-align: right;
  font-size: 12px;
  font-size: 0.8333333333vw;
  color: #fff;
  letter-spacing: 0;
  line-height: 1.75em;
}
@media screen and (max-width: 835px) {
  .sec3 .comparison .att {
    font-size: 12px;
    font-size: 2.3076923077vw;
    width: 125vw;
  }
}

.cta {
  position: relative;
  z-index: 1;
}
.cta::before {
  content: "";
  display: block;
  width: 100%;
  aspect-ratio: 720/281;
  background: url("../images/cta.webp") center center no-repeat;
  background-size: 100% auto;
  z-index: -1;
}
@media screen and (max-width: 835px) {
  .cta::before {
    aspect-ratio: 6/7;
    background-size: cover;
  }
}
.cta .inner {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  text-align: center;
  padding-top: 9.7916666667vw;
}
@media screen and (max-width: 835px) {
  .cta .inner {
    padding-top: 30.4166666667vw;
  }
}
.cta h2,
.cta h3,
.cta p {
  color: #fff;
}
.cta h2,
.cta h3 {
  font-size: 28px;
  font-size: 1.9444444444vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.75em;
  padding-bottom: 2.7777777778vw;
}
@media screen and (max-width: 835px) {
  .cta h2,
  .cta h3 {
    font-size: 5.8333333333vw;
    padding-bottom: 8.3333333333vw;
  }
}
.cta p {
  padding-bottom: 1.6666666667vw;
}
@media screen and (max-width: 835px) {
  .cta p {
    padding-bottom: 5vw;
  }
}
.cta .btn {
  margin: auto;
}

.sec4 {
  position: relative;
  z-index: 1;
  padding-top: 23.6111111111vw;
}
@media screen and (max-width: 835px) {
  .sec4 {
    padding-top: 25vw;
  }
}
.sec4::before, .sec4::after {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  z-index: -1;
}
.sec4::before {
  width: 89.1666666667vw;
  aspect-ratio: 321/221;
  background: url("../images/bg4-1.webp") center center no-repeat;
  background-size: 100% auto;
  top: 0;
}
@media screen and (max-width: 835px) {
  .sec4::before {
    width: 100%;
    aspect-ratio: 80/117;
    background: url("../images/bg4-1-sp.webp") center center no-repeat;
    background-size: 100% auto;
    top: 25vw;
  }
}
.sec4 h2,
.sec4 h3,
.sec4 p,
.sec4 li {
  color: #fff;
}
.sec4 h2 {
  font-family: "Noto Serif JP", serif;
  font-size: 48px;
  font-size: 3.3333333333vw;
  font-weight: 900;
  letter-spacing: 0.05em;
  line-height: 1.85em;
  padding-left: 9.0277777778vw;
  padding-bottom: 15.9722222222vw;
}
@media screen and (max-width: 835px) {
  .sec4 h2 {
    width: 83.3333333333vw;
    margin: auto;
    font-size: 35px;
    font-size: 6.7307692308vw;
    padding-left: 0;
    padding-bottom: 105.8333333333vw;
    text-align: center;
  }
}
.sec4 h2 span {
  font-size: 38px;
  font-size: 2.6388888889vw;
  font-weight: 900;
  letter-spacing: 0.05em;
  line-height: 1.85em;
}
@media screen and (max-width: 835px) {
  .sec4 h2 span {
    font-size: 26px;
    font-size: 5vw;
  }
}
.sec4 .sub {
  margin-bottom: 3.6111111111vw;
}
@media screen and (max-width: 835px) {
  .sec4 .sub {
    margin-bottom: 8.3333333333vw;
  }
}
.sec4 p {
  text-align: center;
}
@media screen and (max-width: 835px) {
  .sec4 p {
    text-align: left;
    width: 83.3333333333vw;
    margin: auto;
  }
  .sec4 p span {
    display: inline-block;
    min-width: 8em;
  }
}
.sec4 .list {
  padding-top: 2.2222222222vw;
  margin-bottom: 5.4166666667vw;
}
@media screen and (max-width: 835px) {
  .sec4 .list {
    flex-wrap: wrap;
    padding-top: 6.6666666667vw;
    margin-bottom: 10.8333333333vw;
  }
}
.sec4 .list li {
  width: 25%;
}
@media screen and (max-width: 835px) {
  .sec4 .list li {
    width: 50%;
  }
}
.sec4 .list li figure {
  display: block;
  width: 100%;
  position: relative;
}
.sec4 .list li figure img {
  display: block;
  width: 100%;
}
.sec4 .list li figure figcaption {
  color: #fff;
  display: block;
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  text-align: center;
  padding-bottom: 0.2083333333vw;
}
@media screen and (max-width: 835px) {
  .sec4 .list li figure figcaption {
    padding-bottom: 0.8333333333vw;
  }
}
.sec4 .point-wrap {
  padding-bottom: 15.4166666667vw;
  position: relative;
}
@media screen and (max-width: 835px) {
  .sec4 .point-wrap {
    padding-bottom: 43.3333333333vw;
  }
}
.sec4 .point-wrap::before, .sec4 .point-wrap::after {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  z-index: -1;
}
.sec4 .point-wrap::after {
  width: 58.8888888889vw;
  aspect-ratio: 848/427;
  background: url("../images/bg4-2.webp") center center no-repeat;
  background-size: 100% auto;
  bottom: 0;
}
@media screen and (max-width: 835px) {
  .sec4 .point-wrap::after {
    width: 100%;
    aspect-ratio: 320/183;
    background: url("../images/bg4-2-sp.webp") center center no-repeat;
    background-size: 100% auto;
  }
}
.sec4 .point {
  width: 81.25vw;
  margin: auto;
  align-items: flex-start;
  margin-bottom: 2.7777777778vw;
}
@media screen and (max-width: 835px) {
  .sec4 .point {
    width: 83.3333333333vw;
    flex-wrap: wrap;
    flex-direction: column-reverse;
    margin-bottom: 19.1666666667vw;
  }
}
.sec4 .point:nth-of-type(even) {
  flex-direction: row-reverse;
}
@media screen and (max-width: 835px) {
  .sec4 .point:nth-of-type(even) {
    flex-direction: column-reverse;
  }
}
.sec4 .point figure {
  display: block;
  width: 38.8888888889vw;
}
@media screen and (max-width: 835px) {
  .sec4 .point figure {
    width: 100%;
  }
}
.sec4 .point figure img {
  display: block;
  width: 100%;
}
.sec4 .point .txt {
  width: 38.1944444444vw;
  padding-top: 1.8055555556vw;
  text-align: left;
}
@media screen and (max-width: 835px) {
  .sec4 .point .txt {
    width: 100%;
    padding-top: 0;
    padding-bottom: 8.3333333333vw;
  }
}
.sec4 .point .txt p {
  text-align: left;
}
.sec4 .point h3,
.sec4 .point p {
  color: #fff;
}
.sec4 .point h3 {
  font-size: 32px;
  font-size: 2.2222222222vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1em;
  padding-bottom: 3.0555555556vw;
}
@media screen and (max-width: 835px) {
  .sec4 .point h3 {
    font-size: 5.8333333333vw;
    padding-bottom: 5vw;
  }
}
.sec4 .point h3 span {
  align-items: center;
  font-family: "Noto Serif JP", serif;
  font-size: 20px;
  font-size: 1.3888888889vw;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1em;
  margin-bottom: 1.8055555556vw;
}
@media screen and (max-width: 835px) {
  .sec4 .point h3 span {
    font-size: 20px;
    font-size: 3.8461538462vw;
    margin-bottom: 5.4166666667vw;
  }
}
.sec4 .point h3 span b {
  font-size: 26px;
  font-size: 1.8055555556vw;
  font-weight: 500;
  margin-left: 0.3472222222vw;
}
@media screen and (max-width: 835px) {
  .sec4 .point h3 span b {
    font-size: 26px;
    font-size: 5vw;
    margin-left: 1.0416666667vw;
  }
}
.sec4 .point h3 span::before {
  content: "";
  display: block;
  width: 4.8611111111vw;
  height: 0.2777777778vw;
  background: #edb019;
  margin-right: 1.0416666667vw;
  transform: skewX(-15deg);
}
@media screen and (max-width: 835px) {
  .sec4 .point h3 span::before {
    width: 14.5833333333vw;
    height: 0.8333333333vw;
    margin-right: 2.9166666667vw;
  }
}

.sec5 {
  padding-top: 11.1111111111vw;
  padding-bottom: 3.3333333333vw;
  text-align: center;
}
@media screen and (max-width: 835px) {
  .sec5 {
    padding-top: 25vw;
    padding-bottom: 25vw;
  }
}
.sec5 .inner {
  width: 81.9444444444vw;
  margin: auto;
}
@media screen and (max-width: 835px) {
  .sec5 .inner {
    width: 83.3333333333vw;
  }
}
.sec5 .ttl {
  padding-bottom: 7.9861111111vw;
}
@media screen and (max-width: 835px) {
  .sec5 .ttl {
    padding-bottom: 14.5833333333vw;
  }
}
.sec5 .sub {
  margin-bottom: 3.6111111111vw;
}
@media screen and (max-width: 835px) {
  .sec5 .sub {
    margin-bottom: 8.3333333333vw;
  }
}
.sec5 p,
.sec5 th,
.sec5 td {
  color: #fff;
}
.sec5 .lead {
  padding-bottom: 2.0833333333vw;
}
@media screen and (max-width: 835px) {
  .sec5 .lead {
    padding-bottom: 6.25vw;
  }
}
.sec5 table {
  width: 100%;
  border-collapse: collapse;
}
.sec5 table th,
.sec5 table td {
  vertical-align: middle;
}
.sec5 table thead th {
  height: 4.4444444444vw;
  text-align: center;
  background: #202020;
}
@media screen and (max-width: 835px) {
  .sec5 table thead th {
    height: 13.3333333333vw;
  }
}
.sec5 table thead th:nth-of-type(1) {
  border-right: #4d4d4d 0.0694444444vw solid;
}
@media screen and (max-width: 835px) {
  .sec5 table thead th:nth-of-type(1) {
    border-right: #4d4d4d 1px solid;
  }
}
.sec5 table thead th:nth-of-type(1) {
  width: 62.0138888889vw;
}
@media screen and (max-width: 835px) {
  .sec5 table thead th:nth-of-type(1) {
    width: 58.125vw;
  }
}
.sec5 table tbody th,
.sec5 table tbody td {
  height: 5.1388888889vw;
  background: #2e2e2e;
  border-bottom: #4d4d4d 0.0694444444vw solid;
}
@media screen and (max-width: 835px) {
  .sec5 table tbody th,
  .sec5 table tbody td {
    height: auto;
    border-bottom: #4d4d4d 0.2083333333vw solid;
  }
}
.sec5 table tbody span {
  align-items: center;
  width: 9.7222222222vw;
  height: 2.3611111111vw;
  margin: auto 1.1111111111vw auto 0;
}
@media screen and (max-width: 835px) {
  .sec5 table tbody span {
    font-size: 16px;
    font-size: 3.0769230769vw;
    width: 16.875vw;
    height: 5.2083333333vw;
    margin: 0 0 2.0833333333vw 0;
  }
}
.sec5 table tbody span.public {
  background: #515990;
}
.sec5 table tbody span.private {
  background: #785d28;
}
.sec5 table tbody th {
  font-size: 16px;
  font-size: 1.1111111111vw;
  letter-spacing: 0.02em;
  border-right: #4d4d4d 0.0694444444vw solid;
}
@media screen and (max-width: 835px) {
  .sec5 table tbody th {
    display: none;
    border-right: #4d4d4d 1px solid;
  }
}
.sec5 table tbody td {
  font-size: 18px;
  font-size: 1.25vw;
  letter-spacing: 0.05em;
  text-align: left;
}
@media screen and (max-width: 835px) {
  .sec5 table tbody td {
    font-size: 18px;
    font-size: 3.4615384615vw;
    line-height: 1.5em;
  }
}
.sec5 table tbody td:nth-of-type(1) {
  border-right: #4d4d4d 0.0694444444vw solid;
  padding-left: 1.8055555556vw;
}
@media screen and (max-width: 835px) {
  .sec5 table tbody td:nth-of-type(1) {
    padding: 4.1666666667vw 3.75vw;
    border-right: #4d4d4d 1px solid;
  }
}
.sec5 table tbody td:nth-of-type(2) {
  padding-left: 1.6666666667vw;
}
@media screen and (max-width: 835px) {
  .sec5 table tbody td:nth-of-type(2) {
    padding: 0.8333333333vw 0.8333333333vw;
    text-align: center;
  }
}
@media screen and (max-width: 835px) {
  .sec5 table tbody td span {
    display: flex;
  }
}
.sec5 table tbody td div {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
@media screen and (max-width: 835px) {
  .sec5 table tbody td div {
    flex-direction: column;
    align-items: flex-start;
  }
}
.sec5 table tbody tr:last-of-type th,
.sec5 table tbody tr:last-of-type td {
  border-bottom: 0;
}
.sec5 .faq {
  padding-top: 7.1527777778vw;
}
@media screen and (max-width: 835px) {
  .sec5 .faq {
    padding-top: 20.8333333333vw;
  }
}
.sec5 .faq dl {
  text-align: left;
}
.sec5 .faq dl dt,
.sec5 .faq dl dd {
  color: #fff;
}
.sec5 .faq dl dt {
  align-items: center;
  width: 100%;
  height: 6.1111111111vw;
  padding-left: 2.0833333333vw;
  background: #2e2e2e;
  margin-bottom: 1.3888888889vw;
  cursor: pointer;
}
@media screen and (max-width: 835px) {
  .sec5 .faq dl dt {
    height: auto;
    padding: 2.5vw 0 2.5vw 4.1666666667vw;
    margin-bottom: 3.3333333333vw;
  }
}
.sec5 .faq dl dt::before {
  content: "Q";
  font-size: 28px;
  font-size: 1.9444444444vw;
  font-weight: 700;
  align-items: center;
  width: 3.6111111111vw;
  height: 3.75vw;
  color: #000;
  background: #eeb018;
  margin-right: 1.3888888889vw;
  flex-shrink: 0;
}
@media screen and (max-width: 835px) {
  .sec5 .faq dl dt::before {
    font-size: 28px;
    font-size: 5.3846153846vw;
    width: 10.8333333333vw;
    height: 11.25vw;
    margin-right: 4.1666666667vw;
  }
}
.sec5 .faq dl dt::after {
  content: "";
  display: block;
  width: 6.1111111111vw;
  aspect-ratio: 1/1;
  background: url("../images/arrow.svg") center center no-repeat;
  background-size: 100% auto;
  margin-left: auto;
  transition: max-height 0.3s ease;
  flex-shrink: 0;
}
@media screen and (max-width: 835px) {
  .sec5 .faq dl dt::after {
    width: 10vw;
  }
}
.sec5 .faq dl dt:hover {
  background: #1a1a1a;
}
.sec5 .faq dl dt.active::after {
  transform: rotate(180deg);
}
.sec5 .faq dl dd {
  align-items: center;
  width: 100%;
  padding-left: 2.0833333333vw;
  height: 0;
  overflow: hidden;
  transition: all 0.3s ease;
}
@media screen and (max-width: 835px) {
  .sec5 .faq dl dd {
    padding-left: 4.1666666667vw;
    align-items: flex-start;
  }
}
.sec5 .faq dl dd.active {
  height: auto;
  margin-bottom: 2.5694444444vw;
}
@media screen and (max-width: 835px) {
  .sec5 .faq dl dd.active {
    height: auto;
    margin-bottom: 5.5555555556vw;
  }
}
.sec5 .faq dl dd::before {
  content: "A";
  font-size: 28px;
  font-size: 1.9444444444vw;
  font-weight: 700;
  align-items: center;
  width: 3.6111111111vw;
  height: 3.75vw;
  color: #000;
  background: #fff;
  margin-right: 1.3888888889vw;
  flex-shrink: 0;
}
@media screen and (max-width: 835px) {
  .sec5 .faq dl dd::before {
    font-size: 28px;
    font-size: 5.3846153846vw;
    width: 10.8333333333vw;
    height: 11.25vw;
    margin-right: 4.1666666667vw;
  }
}
.sec5 .flow {
  padding-top: 5.5555555556vw;
}
@media screen and (max-width: 835px) {
  .sec5 .flow {
    padding-top: 20.8333333333vw;
  }
}
@media screen and (max-width: 835px) {
  .sec5 .flow .sub::before, .sec5 .flow .sub::after {
    width: 8.3333333333vw;
  }
}
.sec5 .flow .box {
  background: #2e2e2e;
  align-items: flex-start;
  padding: 1.6666666667vw 2.7777777778vw 2.3611111111vw 1.9444444444vw;
  margin-bottom: 2.2222222222vw;
}
@media screen and (max-width: 835px) {
  .sec5 .flow .box {
    display: block;
    padding: 5vw 5vw 6.6666666667vw;
    margin-bottom: 6.6666666667vw;
  }
}
.sec5 .flow .box .step {
  font-family: Times, "Times New Roman", "serif";
  font-size: 20px;
  font-size: 1.3888888889vw;
  font-weight: 400;
  letter-spacing: 0;
  color: #dca725;
  padding-top: 0.9722222222vw;
  align-items: center;
}
@media screen and (max-width: 835px) {
  .sec5 .flow .box .step {
    justify-content: center;
    align-items: center;
    font-size: 20px;
    font-size: 3.8461538462vw;
    padding-top: 0;
    margin-bottom: 5.2083333333vw;
  }
}
.sec5 .flow .box .step b {
  font-size: 64px;
  font-size: 4.4444444444vw;
  font-weight: 400;
  margin-left: 0.9722222222vw;
}
@media screen and (max-width: 835px) {
  .sec5 .flow .box .step b {
    font-size: 64px;
    font-size: 12.3076923077vw;
    margin-left: 1.25vw;
  }
}
.sec5 .flow .box .txt {
  width: 65.9722222222vw;
  text-align: left;
}
@media screen and (max-width: 835px) {
  .sec5 .flow .box .txt {
    width: 100%;
  }
}
.sec5 .flow .box .txt h4,
.sec5 .flow .box .txt p {
  color: #fff;
}
.sec5 .flow .box .txt h4 {
  font-size: 28px;
  font-size: 1.9444444444vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.75em;
  padding-bottom: 0.5555555556vw;
}
@media screen and (max-width: 835px) {
  .sec5 .flow .box .txt h4 {
    text-align: center;
    font-size: 24px;
    font-size: 4.6153846154vw;
    padding-bottom: 1.6666666667vw;
  }
}
.sec5 .flow .box .txt ul {
  padding-top: 1.8055555556vw;
}
@media screen and (max-width: 835px) {
  .sec5 .flow .box .txt ul {
    display: block;
    padding-top: 5vw;
  }
}
@media screen and (max-width: 835px) {
  .sec5 .flow .box .txt ul li:first-child {
    margin-bottom: 5vw;
  }
}
@media screen and (max-width: 835px) {
  .sec5 .flow .box .txt .btn {
    width: 100%;
  }
}

.sec6 {
  position: relative;
  z-index: 1;
  text-align: center;
}
.sec6::before {
  content: "";
  display: block;
  width: 100%;
  aspect-ratio: 720/649;
  background: url("../images/bg6.webp") center center no-repeat;
  background-size: 100% auto;
  position: relative;
  z-index: -1;
}
@media screen and (max-width: 835px) {
  .sec6::before {
    aspect-ratio: 120/347;
    background: url("../images/bg6-sp.webp") center center no-repeat;
    background-size: 100% auto;
  }
}
.sec6 .inner {
  width: 81.9444444444vw;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  padding-top: 6.9444444444vw;
}
@media screen and (max-width: 835px) {
  .sec6 .inner {
    width: 83.3333333333vw;
    padding-top: 20.8333333333vw;
  }
}
.sec6 h3 {
  font-size: 28px;
  font-size: 1.9444444444vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.75em;
  padding-bottom: 2.9166666667vw;
}
@media screen and (max-width: 835px) {
  .sec6 h3 {
    font-size: 28px;
    font-size: 5.3846153846vw;
    padding-bottom: 12.5vw;
  }
}
.sec6 figure {
  display: block;
  width: 45.8333333333vw;
  margin: 0 auto 2.9861111111vw;
}
@media screen and (max-width: 835px) {
  .sec6 figure {
    width: 100%;
    margin-bottom: 8.3333333333vw;
  }
}
.sec6 figure img {
  display: block;
}
.sec6 h3 {
  font-size: 32px;
  font-size: 2.2222222222vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.75em;
  padding-bottom: 1.6666666667vw;
}
@media screen and (max-width: 835px) {
  .sec6 h3 {
    font-size: 5.8333333333vw;
    padding-bottom: 8.3333333333vw;
  }
}
@media screen and (max-width: 835px) {
  .sec6 h3.contact-form {
    padding-bottom: 5vw;
  }
}
.sec6 h4 {
  font-size: 28px;
  font-size: 1.9444444444vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.75em;
  padding-bottom: 0.5555555556vw;
}
@media screen and (max-width: 835px) {
  .sec6 h4 {
    text-align: center;
    font-size: 24px;
    font-size: 4.6153846154vw;
    padding-bottom: 1.6666666667vw;
  }
}
.sec6 .btn {
  margin: 1.4583333333vw auto 5.7638888889vw;
}
@media screen and (max-width: 835px) {
  .sec6 .btn {
    margin: 7.2916666667vw auto 16.6666666667vw;
    width: 100%;
  }
}
@media screen and (max-width: 835px) {
  .sec6 ul {
    display: block;
  }
}
.sec6 ul li {
  display: block;
  width: 24.7222222222vw;
  font-size: 20px;
  font-size: 1.3888888889vw;
}
@media screen and (max-width: 835px) {
  .sec6 ul li {
    width: 100%;
    font-size: 20px;
    font-size: 3.8461538462vw;
    margin-bottom: 3.75vw;
  }
}
@media screen and (max-width: 835px) {
  .sec6 ul li:last-child {
    margin-bottom: 0;
  }
}
.sec6 ul li a {
  align-items: center;
  width: 100%;
  height: 4.7222222222vw;
  background: #000;
  border: #666 1px solid;
  color: #fff;
  box-shadow: 0 0.1388888889vw 0.5555555556vw rgba(0, 0, 0, 0.25);
}
@media screen and (max-width: 835px) {
  .sec6 ul li a {
    height: 14.1666666667vw;
  }
}
.sec6 ul li a::before {
  content: "";
  display: block;
  flex-shrink: 0;
  transition: 0.3s;
}
.sec6 ul li a span {
  display: block;
  flex: 1;
}
.sec6 ul li a:hover {
  background: #fff;
  color: #000;
}
.sec6 ul li a:hover::before {
  filter: brightness(1) invert(1);
}
.sec6 ul li:nth-child(1) a {
  padding-left: 1.5972222222vw;
  padding-right: 1.7361111111vw;
}
@media screen and (max-width: 835px) {
  .sec6 ul li:nth-child(1) a {
    padding-left: 4.7916666667vw;
    padding-right: 5.2083333333vw;
  }
}
.sec6 ul li:nth-child(1) a::before {
  width: 2.5vw;
  aspect-ratio: 37/28;
  background: url("../images/youtube.svg") center center no-repeat;
  background-size: contain;
}
@media screen and (max-width: 835px) {
  .sec6 ul li:nth-child(1) a::before {
    width: 7.5vw;
  }
}
.sec6 ul li:nth-child(2) a {
  padding-left: 1.5277777778vw;
  padding-right: 1.3888888889vw;
}
@media screen and (max-width: 835px) {
  .sec6 ul li:nth-child(2) a {
    padding-left: 4.5833333333vw;
    padding-right: 4.1666666667vw;
  }
}
.sec6 ul li:nth-child(2) a::before {
  width: 2.0138888889vw;
  aspect-ratio: 1/1;
  background: url("../images/instagram.svg") center center no-repeat;
  background-size: contain;
}
@media screen and (max-width: 835px) {
  .sec6 ul li:nth-child(2) a::before {
    width: 6.0416666667vw;
  }
}
.sec6 ul li:nth-child(3) a {
  padding-left: 1.9444444444vw;
  padding-right: 1.5972222222vw;
}
@media screen and (max-width: 835px) {
  .sec6 ul li:nth-child(3) a {
    padding-left: 5.8333333333vw;
    padding-right: 4.7916666667vw;
  }
}
.sec6 ul li:nth-child(3) a::before {
  width: 1.9444444444vw;
  aspect-ratio: 29/30;
  background: url("../images/x.svg") center center no-repeat;
  background-size: contain;
}
@media screen and (max-width: 835px) {
  .sec6 ul li:nth-child(3) a::before {
    width: 5.8333333333vw;
  }
}

.sec7 {
  padding-top: 7.3611111111vw;
  padding-bottom: 6.875vw;
}
@media screen and (max-width: 835px) {
  .sec7 {
    padding-top: 20.8333333333vw;
    padding-bottom: 29.1666666667vw;
  }
}
.sec7 .sub {
  margin-bottom: 3.6111111111vw;
}
@media screen and (max-width: 835px) {
  .sec7 .sub {
    margin-bottom: 8.3333333333vw;
  }
}
.sec7 ul {
  flex-wrap: wrap;
}
.sec7 ul li {
  display: block;
  width: 24.56%;
  margin-bottom: 0.5555555556vw;
}
@media screen and (max-width: 835px) {
  .sec7 ul li {
    width: 50%;
    margin-bottom: 0;
  }
}

.sec8 {
  background: url("../images/bg8.webp") center bottom no-repeat;
  background-size: cover;
  padding-top: 9.7222222222vw;
  text-align: center;
}
@media screen and (max-width: 835px) {
  .sec8 {
    background: url("../images/bg8-sp.webp") center bottom no-repeat;
    background-size: cover;
    padding-top: 25vw;
  }
}
.sec8 .ttl {
  color: #293855;
  padding-bottom: 4.0277777778vw;
}
@media screen and (max-width: 835px) {
  .sec8 .ttl {
    padding-bottom: 10.4166666667vw;
    padding-top: 0;
  }
}
.sec8 .ttl img {
  display: block;
  width: 16.25vw;
  margin: 3.4722222222vw auto 0;
}
@media screen and (max-width: 835px) {
  .sec8 .ttl img {
    width: 37.5vw;
    margin-top: 10.4166666667vw;
  }
}
.sec8 h3 {
  color: #293855;
  font-size: 32px;
  font-size: 2.2222222222vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.75em;
  padding-bottom: 4.5138888889vw;
}
@media screen and (max-width: 835px) {
  .sec8 h3 {
    font-size: 5.8333333333vw;
    padding-bottom: 7.9166666667vw;
  }
}
.sec8 .inner {
  width: 81.9444444444vw;
  margin: auto;
  padding-bottom: 5.4166666667vw;
}
@media screen and (max-width: 835px) {
  .sec8 .inner {
    width: 83.3333333333vw;
    display: block;
    padding-bottom: 16.6666666667vw;
  }
}
.sec8 .txt {
  width: 38.8888888889vw;
  text-align: left;
}
@media screen and (max-width: 835px) {
  .sec8 .txt {
    width: 100%;
    padding-bottom: 14.1666666667vw;
  }
}
.sec8 .txt p {
  color: #293855;
}
.sec8 figure {
  width: 38.8888888889vw;
}
@media screen and (max-width: 835px) {
  .sec8 figure {
    width: 100%;
  }
}
.sec8 figure img {
  display: block;
  width: 100%;
}
.sec8 .contact {
  background: rgba(0, 0, 0, 0.05);
  padding-top: 8.3333333333vw;
}
@media screen and (max-width: 835px) {
  .sec8 .contact {
    padding-top: 16.6666666667vw;
  }
}
.sec8 .contact .sub {
  color: #000;
  margin-bottom: 3.3333333333vw;
}
@media screen and (max-width: 835px) {
  .sec8 .contact .sub {
    margin-bottom: 0vw;
  }
}
.sec8 .box {
  width: 38.8888888889vw;
  background: rgba(255, 255, 255, 0.8);
  padding: 2.7777777778vw 3.4722222222vw 4.1666666667vw;
  margin-bottom: 0.5555555556vw;
}
@media screen and (max-width: 835px) {
  .sec8 .box {
    width: 100%;
    padding: 8.3333333333vw 5vw;
    margin-bottom: 8.3333333333vw;
  }
}
.sec8 .box h4 {
  font-size: 24px;
  font-size: 1.6666666667vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.75em;
  padding-bottom: 0.6944444444vw;
  border-bottom: #000 0.1388888889vw solid;
  margin-bottom: 1.1111111111vw;
}
@media screen and (max-width: 835px) {
  .sec8 .box h4 {
    font-size: 20px;
    font-size: 3.8461538462vw;
    padding-bottom: 3.5416666667vw;
    border-bottom: #000 0.4166666667vw solid;
    margin-bottom: 3.3333333333vw;
  }
}
.sec8 .box h4::before {
  content: "";
  display: block;
  margin: 0 auto 0.9027777778vw;
}
@media screen and (max-width: 835px) {
  .sec8 .box h4::before {
    margin-bottom: 2.7083333333vw;
  }
}
.sec8 .box p {
  font-size: 16px;
  font-size: 1.1111111111vw;
  letter-spacing: 0.05em;
  line-height: 1.75em;
}
@media screen and (max-width: 835px) {
  .sec8 .box p {
    font-size: 16px;
    font-size: 3.0769230769vw;
  }
}
.sec8 .box .btn {
  margin-top: 3.125vw;
}
@media screen and (max-width: 835px) {
  .sec8 .box .btn {
    margin-top: 2.7777777778vw;
    width: 100%;
  }
}
.sec8 .box:nth-of-type(1) h4::before {
  width: 3.6805555556vw;
  aspect-ratio: 35/26;
  background: url("../images/mail.svg") center center no-repeat;
  background-size: 100% auto;
}
@media screen and (max-width: 835px) {
  .sec8 .box:nth-of-type(1) h4::before {
    width: 11.0416666667vw;
  }
}
.sec8 .box:nth-of-type(2) h4::before {
  width: 2.5694444444vw;
  aspect-ratio: 37/41;
  background: url("../images/tel.svg") center center no-repeat;
  background-size: 100% auto;
}
@media screen and (max-width: 835px) {
  .sec8 .box:nth-of-type(2) h4::before {
    width: 7.7083333333vw;
  }
}/*# sourceMappingURL=style.css.map */