@charset "UTF-8";
html,
body,
p,
ol,
ul,
li,
dl,
dt,
dd,
blockquote,
figure,
fieldset,
legend,
textarea,
pre,
iframe,
hr,
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: normal;
}

ul {
  list-style: none;
}

button,
input,
select {
  margin: 0;
}

html {
  box-sizing: border-box;
}

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

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

iframe {
  border: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  width: 100%;
  min-height: 100vh;
  font-size: 62.5%;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}
@font-face {
  font-family: "Helvetica Neue";
  src: local("Helvetica Neue Regular");
  font-weight: 100;
}
@font-face {
  font-family: "Helvetica Neue";
  src: local("Helvetica Neue Regular");
  font-weight: 200;
}
body {
  min-height: 100%;
  overflow-x: hidden;
  line-height: 1.7;
  word-break: break-all;
  font-family: "Noto Sans JP", sans-serif;
  font-feature-settings: "palt";
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  color: #454545;
  background: #f5f5f7;
}

img {
  height: auto;
  max-width: 100%;
  transition: 0.3s;
  vertical-align: top;
}

svg {
  height: 100%;
  width: 100%;
}

img[srcset] {
  width: 100%;
  transition: 0.3s;
}

a {
  transition: 0.3s;
}

.mincho {
  font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
}

.st-Width {
  margin: 0 auto;
}
@media screen and (min-width: 750px) {
  .st-Width {
    max-width: min(var(--vw, 1vw) * 860 / 860 * 100, 1075px);
    padding: 0 min(var(--vw, 1vw) * 10 / 860 * 100, 12.5px);
  }
}

br.pc {
  display: none;
}
@media screen and (min-width: 750px) {
  br.pc {
    display: block;
  }
  br.sp {
    display: none;
  }
}

.header {
  width: 100%;
  background: #fff;
}
.header .inner {
  text-align: center;
  height: calc(var(--vw, 1vw) * 160 / 750 * 100);
  display: grid;
  place-content: center;
}
@media screen and (min-width: 750px) {
  .header .inner {
    height: min(var(--vw, 1vw) * 80 / 860 * 100, 100px);
  }
}
.header .logo {
  width: calc(var(--vw, 1vw) * 532 / 750 * 100);
  text-align: center;
}
@media screen and (min-width: 750px) {
  .header .logo {
    width: min(var(--vw, 1vw) * 266 / 860 * 100, 332.5px);
  }
}
.header .logo img {
  width: 100%;
}

.fix-btn {
  position: fixed;
  bottom: 0;
  width: 100%;
  left: 0;
  padding: calc(var(--vw, 1vw) * 40 / 750 * 100) 0;
  z-index: 999;
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(calc(var(--vw, 1vw) * 20 / 750 * 100));
  -webkit-backdrop-filter: blur(calc(var(--vw, 1vw) * 20 / 750 * 100));
  border: 1px solid rgba(255, 120, 120, 0.5);
  box-shadow: 0 4px 20px rgba(255, 0, 0, 0.08);
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
  z-index: 1000;
}
@media screen and (min-width: 750px) {
  .fix-btn {
    width: min(var(--vw, 1vw) * 320 / 860 * 100, 400px);
    left: auto;
    right: 0;
    bottom: min(var(--vw, 1vw) * 50 / 860 * 100, 62.5px);
    background: none;
    padding: 0;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    border: none;
    box-shadow: 0 0 0 transparent;
    transition: 0.3s;
  }
  .fix-btn:hover .st-Btn a {
    background: #fff;
    color: #E50012;
    border: 1px solid #E50012;
  }
}
.fix-btn.active {
  opacity: 1;
  visibility: visible;
}
.fix-btn::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(135deg, rgba(255, 120, 120, 0.25), rgba(255, 0, 0, 0.05));
  pointer-events: none;
}
@media screen and (min-width: 750px) {
  .fix-btn::before {
    background: transparent;
  }
}

.fv {
  position: relative;
}
.fv .inner {
  position: relative;
}
@media screen and (min-width: 750px) {
  .fv .inner {
    height: min(var(--vw, 1vw) * 413 / 860 * 100, 516.25px);
  }
}
.fv .txt {
  position: absolute;
  top: calc(var(--vw, 1vw) * 30 / 750 * 100);
  width: 100%;
}
@media screen and (min-width: 750px) {
  .fv .txt {
    width: min(var(--vw, 1vw) * 443 / 860 * 100, 553.75px);
    top: min(var(--vw, 1vw) * 90 / 860 * 100, 112.5px);
    right: 0;
  }
}
.fv .bg {
  width: 100%;
}
@media screen and (min-width: 750px) {
  .fv .bg {
    width: min(var(--vw, 1vw) * 1444 / 860 * 100, 1805px);
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
  }
}
.fv .bg img {
  width: 100%;
}
.fv .ttl {
  background: #E50012;
  text-align: center;
  font-size: calc(var(--vw, 1vw) * 64 / 750 * 100);
  color: #fff;
  font-weight: 700;
  line-height: 1.2;
  padding: calc(var(--vw, 1vw) * 40 / 750 * 100) 0;
  margin-bottom: calc(var(--vw, 1vw) * 250 / 750 * 100);
  position: relative;
}
@media screen and (min-width: 750px) {
  .fv .ttl {
    font-size: clamp(32px, min(var(--vw, 1vw) * 48 / 860 * 100, 60px), min(var(--vw, 1vw) * 48 / 860 * 100, 60px));
    padding: min(var(--vw, 1vw) * 20 / 860 * 100, 25px) 0;
    margin-bottom: min(var(--vw, 1vw) * 220 / 860 * 100, 275px);
  }
}
.fv .ttl::before {
  content: "";
  position: absolute;
  bottom: calc(var(--vw, 1vw) * -79 / 750 * 100);
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: calc(var(--vw, 1vw) * 375 / 750 * 100) solid transparent;
  border-left: calc(var(--vw, 1vw) * 375 / 750 * 100) solid transparent;
  border-top: calc(var(--vw, 1vw) * 80 / 750 * 100) solid #E50012;
  border-bottom: 0;
}
@media screen and (min-width: 750px) {
  .fv .ttl::before {
    left: 50%;
    transform: translateX(-50%);
    bottom: calc(min(var(--vw, 1vw) * 62 / 860 * 100, 77.5px) * -1);
    border-right: min(var(--vw, 1vw) * 720 / 860 * 100, 900px) solid transparent;
    border-left: min(var(--vw, 1vw) * 720 / 860 * 100, 900px) solid transparent;
    border-top: min(var(--vw, 1vw) * 63 / 860 * 100, 78.75px) solid #E50012;
  }
}
.fv .ttl::after {
  content: "";
  background: url(../images/fv_img1.jpg) no-repeat;
  background-size: contain;
  width: calc(var(--vw, 1vw) * 300 / 750 * 100);
  height: calc(var(--vw, 1vw) * 288 / 750 * 100);
  position: absolute;
  top: calc(var(--vw, 1vw) * 200 / 750 * 100);
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 750px) {
  .fv .ttl::after {
    width: min(var(--vw, 1vw) * 240 / 860 * 100, 300px);
    height: min(var(--vw, 1vw) * 230 / 860 * 100, 287.5px);
    position: absolute;
    top: min(var(--vw, 1vw) * 120 / 860 * 100, 150px);
  }
}
.fv .ttl span {
  font-size: calc(var(--vw, 1vw) * 48 / 750 * 100);
  display: block;
}
@media screen and (min-width: 750px) {
  .fv .ttl span {
    font-size: clamp(20px, min(var(--vw, 1vw) * 24 / 860 * 100, 30px), min(var(--vw, 1vw) * 24 / 860 * 100, 30px));
  }
}
.fv .list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: calc(var(--vw, 1vw) * 48 / 750 * 100);
  padding: calc(var(--vw, 1vw) * 48 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .fv .list {
    grid-template-columns: repeat(4, min(var(--vw, 1vw) * 144 / 860 * 100, 180px));
    gap: min(var(--vw, 1vw) * 23 / 860 * 100, 28.75px);
    padding: min(var(--vw, 1vw) * 30 / 860 * 100, 37.5px) 0;
    justify-content: center;
  }
}

.bg-red {
  background: #E50012;
  padding: calc(var(--vw, 1vw) * 180 / 750 * 100) 0 calc(var(--vw, 1vw) * 95 / 750 * 100);
  position: relative;
}
@media screen and (min-width: 750px) {
  .bg-red {
    display: none;
  }
}
.bg-red::before {
  content: "";
  position: absolute;
  top: calc(var(--vw, 1vw) * -1 / 750 * 100);
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: calc(var(--vw, 1vw) * 375 / 750 * 100) solid transparent;
  border-left: calc(var(--vw, 1vw) * 375 / 750 * 100) solid transparent;
  border-top: calc(var(--vw, 1vw) * 80 / 750 * 100) solid #f5f5f7;
  border-bottom: 0;
}

.st-Btn {
  width: calc(var(--vw, 1vw) * 654 / 750 * 100);
  margin: 0 auto;
  position: relative;
}
@media screen and (min-width: 750px) {
  .st-Btn {
    width: 100%;
  }
}
.st-Btn a {
  display: grid;
  place-content: center;
  height: calc(var(--vw, 1vw) * 100 / 750 * 100);
  background: #fff;
  border-radius: calc(var(--vw, 1vw) * 50 / 750 * 100);
  font-size: calc(var(--vw, 1vw) * 44 / 750 * 100);
  color: #E50012;
  text-decoration: none;
  box-shadow: 0px calc(var(--vw, 1vw) * 5 / 750 * 100) calc(var(--vw, 1vw) * 5 / 750 * 100) 0px rgba(0, 0, 0, 0.5);
}
@media screen and (min-width: 750px) {
  .st-Btn a {
    height: min(var(--vw, 1vw) * 50 / 860 * 100, 62.5px);
    font-size: clamp(16px, min(var(--vw, 1vw) * 22 / 860 * 100, 27.5px), min(var(--vw, 1vw) * 22 / 860 * 100, 27.5px));
    border-top-left-radius: min(var(--vw, 1vw) * 50 / 860 * 100, 62.5px);
    border-bottom-left-radius: min(var(--vw, 1vw) * 50 / 860 * 100, 62.5px);
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    color: #fff;
    background: #E50012;
    border: 1px solid #fff;
    box-shadow: 0px min(var(--vw, 1vw) * 4 / 860 * 100, 5px) min(var(--vw, 1vw) * 4 / 860 * 100, 5px) 0px rgba(0, 0, 0, 0.3);
  }
}

.sec1 {
  border-radius: calc(var(--vw, 1vw) * 375 / 750 * 100);
  background: #fff;
  box-shadow: 0px calc(var(--vw, 1vw) * 5 / 750 * 100) calc(var(--vw, 1vw) * 5 / 750 * 100) 0px rgba(0, 0, 0, 0.5);
  width: calc(var(--vw, 1vw) * 670 / 750 * 100);
  margin: calc(var(--vw, 1vw) * 100 / 750 * 100) auto;
}
@media screen and (min-width: 750px) {
  .sec1 {
    border-radius: min(var(--vw, 1vw) * 160 / 860 * 100, 200px);
    box-shadow: 0px calc(var(--vw, 1vw) * 5 / 750 * 100) calc(var(--vw, 1vw) * 5 / 750 * 100) 0px rgba(0, 0, 0, 0.2);
    width: calc(100% - min(var(--vw, 1vw) * 20 / 860 * 100, 25px));
    margin: min(var(--vw, 1vw) * 40 / 860 * 100, 50px) auto;
  }
}
.sec1 .inner {
  padding: calc(var(--vw, 1vw) * 80 / 750 * 100) calc(var(--vw, 1vw) * 50 / 750 * 100) calc(var(--vw, 1vw) * 190 / 750 * 100);
  text-align: center;
}
@media screen and (min-width: 750px) {
  .sec1 .inner {
    padding: min(var(--vw, 1vw) * 50 / 860 * 100, 62.5px) 0 min(var(--vw, 1vw) * 100 / 860 * 100, 125px);
  }
}
.sec1 .ttl {
  font-size: calc(var(--vw, 1vw) * 48 / 750 * 100);
  font-weight: 700;
  line-height: 1.5;
  color: #E60012;
  position: relative;
  padding-top: calc(var(--vw, 1vw) * 150 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec1 .ttl {
    font-size: clamp(18px, min(var(--vw, 1vw) * 24 / 860 * 100, 30px), min(var(--vw, 1vw) * 24 / 860 * 100, 30px));
    padding-top: min(var(--vw, 1vw) * 115 / 860 * 100, 143.75px);
  }
}
.sec1 .ttl::before {
  content: "";
  position: absolute;
  background: url(../images/s1_ttl.png) no-repeat;
  background-size: contain;
  width: calc(var(--vw, 1vw) * 102 / 750 * 100);
  height: calc(var(--vw, 1vw) * 148 / 750 * 100);
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 750px) {
  .sec1 .ttl::before {
    width: min(var(--vw, 1vw) * 76 / 860 * 100, 95px);
    height: min(var(--vw, 1vw) * 100 / 860 * 100, 125px);
  }
}
.sec1 .red-list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: calc(var(--vw, 1vw) * 18 / 750 * 100);
  margin-top: calc(var(--vw, 1vw) * 40 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec1 .red-list {
    justify-content: center;
    grid-template-columns: repeat(3, min(var(--vw, 1vw) * 96 / 860 * 100, 120px));
    gap: min(var(--vw, 1vw) * 10 / 860 * 100, 12.5px);
    margin-top: min(var(--vw, 1vw) * 30 / 860 * 100, 37.5px);
  }
}
.sec1 .red-list li {
  background: #E50011;
  color: #fff;
  border-radius: calc(var(--vw, 1vw) * 50 / 750 * 100);
  font-size: calc(var(--vw, 1vw) * 32 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec1 .red-list li {
    border-radius: min(var(--vw, 1vw) * 30 / 860 * 100, 37.5px);
    font-size: clamp(14px, min(var(--vw, 1vw) * 16 / 860 * 100, 20px), min(var(--vw, 1vw) * 16 / 860 * 100, 20px));
  }
}
.sec1 .heading {
  font-size: calc(var(--vw, 1vw) * 32 / 750 * 100);
  margin-top: calc(var(--vw, 1vw) * 40 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec1 .heading {
    margin-top: min(var(--vw, 1vw) * 33 / 860 * 100, 41.25px);
    font-size: clamp(14px, min(var(--vw, 1vw) * 16 / 860 * 100, 20px), min(var(--vw, 1vw) * 16 / 860 * 100, 20px));
  }
}
.sec1 .txt {
  font-size: calc(var(--vw, 1vw) * 32 / 750 * 100);
  margin-top: calc(var(--vw, 1vw) * 40 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec1 .txt {
    font-size: clamp(14px, min(var(--vw, 1vw) * 16 / 860 * 100, 20px), min(var(--vw, 1vw) * 16 / 860 * 100, 20px));
    margin-top: min(var(--vw, 1vw) * 30 / 860 * 100, 37.5px);
  }
}
@media screen and (min-width: 750px) {
  .sec1 .unit-wap {
    position: relative;
    height: min(var(--vw, 1vw) * 200 / 860 * 100, 250px);
    margin-top: min(var(--vw, 1vw) * 40 / 860 * 100, 50px);
  }
}
.sec1 .unit {
  display: grid;
  gap: calc(var(--vw, 1vw) * 10 / 750 * 100);
  align-items: start;
  margin-top: calc(var(--vw, 1vw) * 40 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec1 .unit {
    display: grid;
    justify-content: center;
    gap: 0;
    margin-top: 0;
  }
}
.sec1 .unit .fukidashi {
  font-size: calc(var(--vw, 1vw) * 32 / 750 * 100);
  border: 1px solid #454545;
  border-radius: calc(var(--vw, 1vw) * 50 / 750 * 100);
  padding: calc(var(--vw, 1vw) * 25 / 750 * 100);
  position: relative;
}
@media screen and (min-width: 750px) {
  .sec1 .unit .fukidashi {
    font-size: clamp(14px, min(var(--vw, 1vw) * 16 / 860 * 100, 20px), min(var(--vw, 1vw) * 16 / 860 * 100, 20px));
    border-radius: min(var(--vw, 1vw) * 20 / 860 * 100, 25px);
    padding: min(var(--vw, 1vw) * 10 / 860 * 100, 12.5px) min(var(--vw, 1vw) * 15 / 860 * 100, 18.75px);
  }
}
.sec1 .unit .fukidashi::before {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
.sec1 .unit.s1 {
  grid-template-columns: calc(var(--vw, 1vw) * 160 / 750 * 100) 1fr;
}
@media screen and (min-width: 750px) {
  .sec1 .unit.s1 {
    grid-template-columns: min(var(--vw, 1vw) * 160 / 860 * 100, 200px) min(var(--vw, 1vw) * 240 / 860 * 100, 300px);
    position: absolute;
    left: min(var(--vw, 1vw) * 80 / 860 * 100, 100px);
    top: 0;
  }
}
.sec1 .unit.s1 .fukidashi::before {
  content: "";
  position: absolute;
  background: url(../images/fukidashi.svg) no-repeat;
  background-size: contain;
  width: calc(var(--vw, 1vw) * 40 / 750 * 100);
  height: calc(var(--vw, 1vw) * 52 / 750 * 100);
  bottom: calc(var(--vw, 1vw) * -50 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec1 .unit.s1 .fukidashi::before {
    width: min(var(--vw, 1vw) * 30 / 860 * 100, 37.5px);
    height: min(var(--vw, 1vw) * 15 / 860 * 100, 18.75px);
    bottom: calc(min(var(--vw, 1vw) * 15 / 860 * 100, 18.75px) * -1);
  }
}
.sec1 .unit.s2 {
  grid-template-columns: 1fr calc(var(--vw, 1vw) * 160 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec1 .unit.s2 {
    grid-template-columns: min(var(--vw, 1vw) * 207 / 860 * 100, 258.75px) min(var(--vw, 1vw) * 160 / 860 * 100, 200px);
    position: absolute;
    right: min(var(--vw, 1vw) * 80 / 860 * 100, 100px);
    top: 0;
    align-items: end;
  }
}
@media screen and (min-width: 750px) {
  .sec1 .unit.s2 .fukidashi {
    margin-bottom: min(var(--vw, 1vw) * 20 / 860 * 100, 25px);
  }
}
.sec1 .unit.s2 .fukidashi::before {
  content: "";
  position: absolute;
  background: url(../images/fukidashi.svg) no-repeat;
  background-size: contain;
  width: calc(var(--vw, 1vw) * 40 / 750 * 100);
  height: calc(var(--vw, 1vw) * 52 / 750 * 100);
  bottom: calc(var(--vw, 1vw) * -50 / 750 * 100);
  transform: translateX(-50%) scaleX(-1);
}
@media screen and (min-width: 750px) {
  .sec1 .unit.s2 .fukidashi::before {
    width: min(var(--vw, 1vw) * 30 / 860 * 100, 37.5px);
    height: min(var(--vw, 1vw) * 15 / 860 * 100, 18.75px);
    bottom: calc(min(var(--vw, 1vw) * 15 / 860 * 100, 18.75px) * -1);
  }
}
.sec1 .bottom-mark {
  position: relative;
  padding-bottom: calc(var(--vw, 1vw) * 90 / 750 * 100);
  margin-bottom: calc(var(--vw, 1vw) * 50 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec1 .bottom-mark {
    padding-bottom: min(var(--vw, 1vw) * 50 / 860 * 100, 62.5px);
    margin-bottom: min(var(--vw, 1vw) * 30 / 860 * 100, 37.5px);
  }
}
.sec1 .bottom-mark::before {
  content: "";
  position: absolute;
  background: url(../images/ico_bottom.svg) no-repeat;
  background-size: contain;
  width: calc(var(--vw, 1vw) * 64 / 750 * 100);
  height: calc(var(--vw, 1vw) * 32 / 750 * 100);
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 750px) {
  .sec1 .bottom-mark::before {
    width: min(var(--vw, 1vw) * 32 / 860 * 100, 40px);
    height: min(var(--vw, 1vw) * 16 / 860 * 100, 20px);
  }
}
.sec1 .list {
  border: #454545 1px solid;
  border-radius: calc(var(--vw, 1vw) * 20 / 750 * 100);
  padding: calc(var(--vw, 1vw) * 24 / 750 * 100) calc(var(--vw, 1vw) * 48 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec1 .list {
    border-radius: min(var(--vw, 1vw) * 24 / 860 * 100, 30px);
    padding: min(var(--vw, 1vw) * 48 / 860 * 100, 60px);
    width: min(var(--vw, 1vw) * 640 / 860 * 100, 800px);
    margin: 0 auto;
  }
}
.sec1 .list li {
  text-align: left;
  font-size: calc(var(--vw, 1vw) * 32 / 750 * 100);
  line-height: 1.4;
  position: relative;
  padding: calc(var(--vw, 1vw) * 24 / 750 * 100) 0 calc(var(--vw, 1vw) * 24 / 750 * 100) calc(var(--vw, 1vw) * 43 / 750 * 100);
  border-bottom: 1px solid rgba(69, 69, 69, 0.3);
}
@media screen and (min-width: 750px) {
  .sec1 .list li {
    font-size: clamp(14px, min(var(--vw, 1vw) * 16 / 860 * 100, 20px), min(var(--vw, 1vw) * 16 / 860 * 100, 20px));
    padding: min(var(--vw, 1vw) * 11 / 860 * 100, 13.75px) min(var(--vw, 1vw) * 25 / 860 * 100, 31.25px);
  }
}
.sec1 .list li:last-of-type {
  border-bottom: none;
}
.sec1 .list li::before {
  content: "";
  position: absolute;
  background: url(../images/ico_check.svg) no-repeat;
  background-size: contain;
  width: calc(var(--vw, 1vw) * 32 / 750 * 100);
  height: calc(var(--vw, 1vw) * 32 / 750 * 100);
  top: calc(var(--vw, 1vw) * 28 / 750 * 100);
  left: 0;
}
@media screen and (min-width: 750px) {
  .sec1 .list li::before {
    width: min(var(--vw, 1vw) * 16 / 860 * 100, 20px);
    height: min(var(--vw, 1vw) * 16 / 860 * 100, 20px);
    top: min(var(--vw, 1vw) * 16 / 860 * 100, 20px);
  }
}
.sec1 .img {
  margin-top: calc(var(--vw, 1vw) * 50 / 750 * 100);
  margin-left: calc(50% - 44.75vw);
  margin-right: calc(50% - 44.75vw);
}
@media screen and (min-width: 750px) {
  .sec1 .img {
    margin: min(var(--vw, 1vw) * 30 / 860 * 100, 37.5px) auto;
    width: min(var(--vw, 1vw) * 640 / 860 * 100, 800px);
  }
}

.sec2 .inner {
  padding: calc(var(--vw, 1vw) * 80 / 750 * 100) calc(var(--vw, 1vw) * 50 / 750 * 100);
  text-align: center;
}
@media screen and (min-width: 750px) {
  .sec2 .inner {
    padding: min(var(--vw, 1vw) * 50 / 860 * 100, 62.5px) 0 min(var(--vw, 1vw) * 90 / 860 * 100, 112.5px);
  }
}
.sec2 .ttl {
  font-size: calc(var(--vw, 1vw) * 48 / 750 * 100);
  font-weight: 700;
  line-height: 1.5;
  color: #E60012;
  position: relative;
  padding-top: calc(var(--vw, 1vw) * 150 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec2 .ttl {
    font-size: clamp(18px, min(var(--vw, 1vw) * 24 / 860 * 100, 30px), min(var(--vw, 1vw) * 24 / 860 * 100, 30px));
    padding-top: min(var(--vw, 1vw) * 115 / 860 * 100, 143.75px);
  }
}
.sec2 .ttl::before {
  content: "";
  position: absolute;
  background: url(../images/s2_ttl.png) no-repeat;
  background-size: contain;
  width: calc(var(--vw, 1vw) * 160 / 750 * 100);
  height: calc(var(--vw, 1vw) * 148 / 750 * 100);
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 750px) {
  .sec2 .ttl::before {
    width: min(var(--vw, 1vw) * 120 / 860 * 100, 150px);
    height: min(var(--vw, 1vw) * 111 / 860 * 100, 138.75px);
  }
}
.sec2 .txt {
  font-size: calc(var(--vw, 1vw) * 32 / 750 * 100);
  margin-top: calc(var(--vw, 1vw) * 40 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec2 .txt {
    font-size: clamp(14px, min(var(--vw, 1vw) * 16 / 860 * 100, 20px), min(var(--vw, 1vw) * 16 / 860 * 100, 20px));
    margin-top: min(var(--vw, 1vw) * 30 / 860 * 100, 37.5px);
  }
}
@media screen and (min-width: 750px) {
  .sec2 .wap {
    display: grid;
    grid-template-columns: min(var(--vw, 1vw) * 320 / 860 * 100, 400px) min(var(--vw, 1vw) * 320 / 860 * 100, 400px);
    gap: min(var(--vw, 1vw) * 17 / 860 * 100, 21.25px);
    justify-content: center;
    margin-top: min(var(--vw, 1vw) * 40 / 860 * 100, 50px);
  }
}
.sec2 .unit {
  display: grid;
  grid-template-columns: calc(var(--vw, 1vw) * 160 / 750 * 100) 1fr;
  gap: calc(var(--vw, 1vw) * 20 / 750 * 100);
  margin-top: calc(var(--vw, 1vw) * 20 / 750 * 100);
  align-items: center;
  background: #fff;
  border: 1px solid #454545;
  border-radius: calc(var(--vw, 1vw) * 40 / 750 * 100);
  padding: calc(var(--vw, 1vw) * 16 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec2 .unit {
    grid-template-columns: min(var(--vw, 1vw) * 120 / 860 * 100, 150px) 1fr;
    gap: min(var(--vw, 1vw) * 10 / 860 * 100, 12.5px);
    margin-top: 0;
    border-radius: min(var(--vw, 1vw) * 20 / 860 * 100, 25px);
    padding: min(var(--vw, 1vw) * 15 / 860 * 100, 18.75px);
  }
}
.sec2 .unit:first-of-type {
  margin-top: calc(var(--vw, 1vw) * 40 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec2 .unit:first-of-type {
    margin-top: 0;
  }
}
.sec2 .heading {
  font-size: calc(var(--vw, 1vw) * 40 / 750 * 100);
  font-weight: 700;
  margin-top: calc(var(--vw, 1vw) * 60 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec2 .heading {
    font-size: clamp(16px, min(var(--vw, 1vw) * 20 / 860 * 100, 25px), min(var(--vw, 1vw) * 20 / 860 * 100, 25px));
    margin-top: min(var(--vw, 1vw) * 40 / 860 * 100, 50px);
  }
}
.sec2 .heading span {
  position: relative;
  background-color: #AA9884;
  padding: calc(var(--vw, 1vw) * 1 / 750 * 100) calc(var(--vw, 1vw) * 10 / 750 * 100);
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  color: #fff;
}
@media screen and (min-width: 750px) {
  .sec2 .heading span {
    padding: min(var(--vw, 1vw) * 1 / 860 * 100, 1.25px) min(var(--vw, 1vw) * 10 / 860 * 100, 12.5px);
  }
}
.sec2 .unit-ttl {
  font-size: calc(var(--vw, 1vw) * 32 / 750 * 100);
  text-align: left;
  line-height: 1.4;
}
@media screen and (min-width: 750px) {
  .sec2 .unit-ttl {
    font-size: clamp(14px, min(var(--vw, 1vw) * 16 / 860 * 100, 20px), min(var(--vw, 1vw) * 16 / 860 * 100, 20px));
  }
}
.sec2 .list {
  font-size: calc(var(--vw, 1vw) * 36 / 750 * 100);
  font-weight: 700;
  text-align: left;
  margin-left: calc(var(--vw, 1vw) * 50 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec2 .list {
    font-size: clamp(14px, min(var(--vw, 1vw) * 24 / 860 * 100, 30px), min(var(--vw, 1vw) * 24 / 860 * 100, 30px));
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    width: min(var(--vw, 1vw) * 1200 / 860 * 100, 1500px);
    margin: 0 auto;
  }
}
.sec2 .list li {
  position: relative;
  margin-top: calc(var(--vw, 1vw) * 20 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec2 .list li {
    margin-top: min(var(--vw, 1vw) * 10 / 860 * 100, 12.5px);
  }
}
.sec2 .list li::before {
  content: "・";
}
.sec2 .img {
  margin-top: calc(var(--vw, 1vw) * 40 / 750 * 100);
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}
@media screen and (min-width: 750px) {
  .sec2 .img {
    margin: min(var(--vw, 1vw) * 40 / 860 * 100, 50px) auto;
    width: min(var(--vw, 1vw) * 574 / 860 * 100, 717.5px);
  }
}
.sec2 .img img {
  width: 100%;
}

.sec3 {
  border-radius: calc(var(--vw, 1vw) * 375 / 750 * 100);
  background: #fff;
  box-shadow: 0px calc(var(--vw, 1vw) * 5 / 750 * 100) calc(var(--vw, 1vw) * 5 / 750 * 100) 0px rgba(0, 0, 0, 0.5);
  width: calc(var(--vw, 1vw) * 670 / 750 * 100);
  margin: calc(var(--vw, 1vw) * 100 / 750 * 100) auto;
}
@media screen and (min-width: 750px) {
  .sec3 {
    border-radius: min(var(--vw, 1vw) * 160 / 860 * 100, 200px);
    box-shadow: 0px calc(var(--vw, 1vw) * 5 / 750 * 100) calc(var(--vw, 1vw) * 5 / 750 * 100) 0px rgba(0, 0, 0, 0.2);
    width: calc(100% - min(var(--vw, 1vw) * 20 / 860 * 100, 25px));
    margin: min(var(--vw, 1vw) * 40 / 860 * 100, 50px) auto;
  }
}
.sec3 .inner {
  padding: calc(var(--vw, 1vw) * 80 / 750 * 100) calc(var(--vw, 1vw) * 50 / 750 * 100) calc(var(--vw, 1vw) * 190 / 750 * 100);
  text-align: center;
}
@media screen and (min-width: 750px) {
  .sec3 .inner {
    padding: min(var(--vw, 1vw) * 50 / 860 * 100, 62.5px) 0 min(var(--vw, 1vw) * 100 / 860 * 100, 125px);
  }
}
.sec3 .ttl {
  font-size: calc(var(--vw, 1vw) * 48 / 750 * 100);
  font-weight: 700;
  line-height: 1.5;
  color: #E60012;
  position: relative;
  padding-top: calc(var(--vw, 1vw) * 150 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec3 .ttl {
    font-size: clamp(18px, min(var(--vw, 1vw) * 24 / 860 * 100, 30px), min(var(--vw, 1vw) * 24 / 860 * 100, 30px));
    padding-top: min(var(--vw, 1vw) * 115 / 860 * 100, 143.75px);
  }
}
.sec3 .ttl::before {
  content: "";
  position: absolute;
  background: url(../images/s3_ttl.png) no-repeat;
  background-size: contain;
  width: calc(var(--vw, 1vw) * 160 / 750 * 100);
  height: calc(var(--vw, 1vw) * 148 / 750 * 100);
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 750px) {
  .sec3 .ttl::before {
    width: min(var(--vw, 1vw) * 100 / 860 * 100, 125px);
    height: min(var(--vw, 1vw) * 92 / 860 * 100, 115px);
  }
}
.sec3 .unit {
  margin-top: calc(var(--vw, 1vw) * 50 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec3 .unit {
    width: min(var(--vw, 1vw) * 640 / 860 * 100, 800px);
    margin: min(var(--vw, 1vw) * 40 / 860 * 100, 50px) auto 0;
  }
}
.sec3 .unit-ttl {
  font-size: calc(var(--vw, 1vw) * 40 / 750 * 100);
  font-weight: 700;
  text-align: left;
  display: grid;
  grid-template-columns: calc(var(--vw, 1vw) * 48 / 750 * 100) 1fr;
  gap: calc(var(--vw, 1vw) * 10 / 750 * 100);
  align-items: start;
  line-height: 1.2;
}
@media screen and (min-width: 750px) {
  .sec3 .unit-ttl {
    font-size: clamp(18px, min(var(--vw, 1vw) * 24 / 860 * 100, 30px), min(var(--vw, 1vw) * 24 / 860 * 100, 30px));
    grid-template-columns: min(var(--vw, 1vw) * 24 / 860 * 100, 30px) 1fr;
    gap: min(var(--vw, 1vw) * 10 / 860 * 100, 12.5px);
  }
}
.sec3 .unit-ttl span {
  background: #AA9884;
  border-radius: 50%;
  height: calc(var(--vw, 1vw) * 48 / 750 * 100);
  display: grid;
  place-content: center;
  color: #fff;
}
@media screen and (min-width: 750px) {
  .sec3 .unit-ttl span {
    height: min(var(--vw, 1vw) * 24 / 860 * 100, 30px);
    font-size: min(var(--vw, 1vw) * 16 / 860 * 100, 20px);
    margin-top: min(var(--vw, 1vw) * 5 / 860 * 100, 6.25px);
  }
}
.sec3 .unit-txt {
  font-size: calc(var(--vw, 1vw) * 32 / 750 * 100);
  text-align: left;
  font-weight: 400;
  line-height: 1.7;
  margin-top: calc(var(--vw, 1vw) * 20 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec3 .unit-txt {
    font-size: clamp(14px, min(var(--vw, 1vw) * 16 / 860 * 100, 20px), min(var(--vw, 1vw) * 16 / 860 * 100, 20px));
    margin-top: min(var(--vw, 1vw) * 20 / 860 * 100, 25px);
  }
}

.sec4 .inner {
  padding: calc(var(--vw, 1vw) * 80 / 750 * 100) calc(var(--vw, 1vw) * 50 / 750 * 100);
  text-align: center;
}
@media screen and (min-width: 750px) {
  .sec4 .inner {
    padding: min(var(--vw, 1vw) * 50 / 860 * 100, 62.5px) 0 min(var(--vw, 1vw) * 90 / 860 * 100, 112.5px);
  }
}
.sec4 .ttl {
  font-size: calc(var(--vw, 1vw) * 48 / 750 * 100);
  font-weight: 700;
  line-height: 1.5;
  color: #E60012;
  position: relative;
  padding-top: calc(var(--vw, 1vw) * 150 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec4 .ttl {
    font-size: clamp(18px, min(var(--vw, 1vw) * 24 / 860 * 100, 30px), min(var(--vw, 1vw) * 24 / 860 * 100, 30px));
    padding-top: min(var(--vw, 1vw) * 115 / 860 * 100, 143.75px);
  }
}
.sec4 .ttl::before {
  content: "";
  position: absolute;
  background: url(../images/s4_ttl.png) no-repeat;
  background-size: contain;
  width: calc(var(--vw, 1vw) * 112 / 750 * 100);
  height: calc(var(--vw, 1vw) * 148 / 750 * 100);
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 750px) {
  .sec4 .ttl::before {
    width: min(var(--vw, 1vw) * 76 / 860 * 100, 95px);
    height: min(var(--vw, 1vw) * 100 / 860 * 100, 125px);
  }
}
.sec4 .unit {
  margin-top: calc(var(--vw, 1vw) * 60 / 750 * 100);
  margin-bottom: calc(var(--vw, 1vw) * 110 / 750 * 100);
  position: relative;
}
@media screen and (min-width: 750px) {
  .sec4 .unit {
    font-size: clamp(18px, min(var(--vw, 1vw) * 24 / 860 * 100, 30px), min(var(--vw, 1vw) * 24 / 860 * 100, 30px));
    margin-top: min(var(--vw, 1vw) * 32 / 860 * 100, 40px);
    margin-bottom: min(var(--vw, 1vw) * 70 / 860 * 100, 87.5px);
  }
}
.sec4 .unit::before {
  content: "";
  position: absolute;
  background: url(../images/ico_bottom.svg) no-repeat;
  background-size: contain;
  width: calc(var(--vw, 1vw) * 64 / 750 * 100);
  height: calc(var(--vw, 1vw) * 32 / 750 * 100);
  bottom: calc(var(--vw, 1vw) * -70 / 750 * 100);
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 750px) {
  .sec4 .unit::before {
    width: min(var(--vw, 1vw) * 33 / 860 * 100, 41.25px);
    height: min(var(--vw, 1vw) * 16 / 860 * 100, 20px);
    bottom: calc(min(var(--vw, 1vw) * 50 / 860 * 100, 62.5px) * -1);
  }
}
.sec4 .unit:last-of-type {
  margin-bottom: 0;
}
.sec4 .unit:last-of-type::before {
  background: none;
}
.sec4 .step {
  font-size: calc(var(--vw, 1vw) * 32 / 750 * 100);
  color: #AA9884;
  font-weight: 700;
}
@media screen and (min-width: 750px) {
  .sec4 .step {
    font-size: clamp(14px, min(var(--vw, 1vw) * 16 / 860 * 100, 20px), min(var(--vw, 1vw) * 16 / 860 * 100, 20px));
  }
}
.sec4 .unit-ttl {
  font-size: calc(var(--vw, 1vw) * 40 / 750 * 100);
  font-weight: 700;
}
@media screen and (min-width: 750px) {
  .sec4 .unit-ttl {
    font-size: clamp(16px, min(var(--vw, 1vw) * 20 / 860 * 100, 25px), min(var(--vw, 1vw) * 20 / 860 * 100, 25px));
  }
}
.sec4 .unit-txt {
  font-size: calc(var(--vw, 1vw) * 32 / 750 * 100);
  text-align: left;
  font-weight: 400;
  margin-top: calc(var(--vw, 1vw) * 20 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec4 .unit-txt {
    font-size: clamp(14px, min(var(--vw, 1vw) * 16 / 860 * 100, 20px), min(var(--vw, 1vw) * 16 / 860 * 100, 20px));
    margin-top: min(var(--vw, 1vw) * 23 / 860 * 100, 28.75px);
    text-align: center;
  }
}
.sec4 .unit-img {
  margin-top: calc(var(--vw, 1vw) * 20 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec4 .unit-img {
    width: min(var(--vw, 1vw) * 440 / 860 * 100, 550px);
    margin: min(var(--vw, 1vw) * 25 / 860 * 100, 31.25px) auto;
  }
}

.sec5 {
  border-radius: calc(var(--vw, 1vw) * 375 / 750 * 100);
  background: #fff;
  box-shadow: 0px calc(var(--vw, 1vw) * 5 / 750 * 100) calc(var(--vw, 1vw) * 5 / 750 * 100) 0px rgba(0, 0, 0, 0.5);
  width: calc(var(--vw, 1vw) * 670 / 750 * 100);
  margin: calc(var(--vw, 1vw) * 100 / 750 * 100) auto;
}
@media screen and (min-width: 750px) {
  .sec5 {
    border-radius: min(var(--vw, 1vw) * 160 / 860 * 100, 200px);
    box-shadow: 0px calc(var(--vw, 1vw) * 5 / 750 * 100) calc(var(--vw, 1vw) * 5 / 750 * 100) 0px rgba(0, 0, 0, 0.2);
    width: calc(100% - min(var(--vw, 1vw) * 20 / 860 * 100, 25px));
    margin: min(var(--vw, 1vw) * 40 / 860 * 100, 50px) auto;
  }
}
.sec5 .inner {
  padding: calc(var(--vw, 1vw) * 80 / 750 * 100) calc(var(--vw, 1vw) * 50 / 750 * 100) calc(var(--vw, 1vw) * 190 / 750 * 100);
  text-align: center;
}
@media screen and (min-width: 750px) {
  .sec5 .inner {
    padding: min(var(--vw, 1vw) * 50 / 860 * 100, 62.5px) min(var(--vw, 1vw) * 10 / 860 * 100, 12.5px) min(var(--vw, 1vw) * 100 / 860 * 100, 125px);
  }
}
.sec5 .ttl {
  font-size: calc(var(--vw, 1vw) * 48 / 750 * 100);
  font-weight: 700;
  line-height: 1.5;
  color: #E60012;
  position: relative;
  padding-top: calc(var(--vw, 1vw) * 150 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec5 .ttl {
    font-size: clamp(18px, min(var(--vw, 1vw) * 24 / 860 * 100, 30px), min(var(--vw, 1vw) * 24 / 860 * 100, 30px));
    padding-top: min(var(--vw, 1vw) * 100 / 860 * 100, 125px);
  }
}
.sec5 .ttl::before {
  content: "";
  position: absolute;
  background: url(../images/s5_ttl.png) no-repeat;
  background-size: contain;
  width: calc(var(--vw, 1vw) * 112 / 750 * 100);
  height: calc(var(--vw, 1vw) * 148 / 750 * 100);
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 750px) {
  .sec5 .ttl::before {
    width: min(var(--vw, 1vw) * 70 / 860 * 100, 87.5px);
    height: min(var(--vw, 1vw) * 107 / 860 * 100, 133.75px);
  }
}
.sec5 .unit {
  border: 1px solid #E60012;
  border-radius: calc(var(--vw, 1vw) * 20 / 750 * 100);
  margin-top: calc(var(--vw, 1vw) * 15 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec5 .unit {
    border-radius: min(var(--vw, 1vw) * 8 / 860 * 100, 10px);
    margin-top: min(var(--vw, 1vw) * 10 / 860 * 100, 12.5px);
  }
}
.sec5 .unit:first-of-type {
  margin-top: calc(var(--vw, 1vw) * 45 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec5 .unit:first-of-type {
    margin-top: min(var(--vw, 1vw) * 10 / 860 * 100, 12.5px);
  }
}
@media screen and (min-width: 750px) {
  .sec5 .unit.s4 .img {
    margin-top: min(var(--vw, 1vw) * 35 / 860 * 100, 43.75px);
  }
}
.sec5 .unit-ttl {
  background: #E60012;
  color: #fff;
  font-weight: 700;
  font-size: calc(var(--vw, 1vw) * 32 / 750 * 100);
  line-height: 1.3;
  padding: calc(var(--vw, 1vw) * 15 / 750 * 100) 0;
  border-top-left-radius: calc(var(--vw, 1vw) * 20 / 750 * 100);
  border-top-right-radius: calc(var(--vw, 1vw) * 20 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec5 .unit-ttl {
    font-size: clamp(18px, min(var(--vw, 1vw) * 24 / 860 * 100, 30px), min(var(--vw, 1vw) * 24 / 860 * 100, 30px));
    padding: min(var(--vw, 1vw) * 10 / 860 * 100, 12.5px) 0;
    border-top-left-radius: min(var(--vw, 1vw) * 8 / 860 * 100, 10px);
    border-top-right-radius: min(var(--vw, 1vw) * 8 / 860 * 100, 10px);
  }
}
.sec5 .img {
  width: calc(100% - var(--vw, 1vw) * 60 / 750 * 100);
  margin: calc(var(--vw, 1vw) * 30 / 750 * 100) auto;
}
@media screen and (min-width: 750px) {
  .sec5 .img {
    margin: min(var(--vw, 1vw) * 15 / 860 * 100, 18.75px) auto;
    width: min(var(--vw, 1vw) * 255 / 860 * 100, 318.75px);
  }
}
.sec5 .img img {
  width: 100%;
}
.sec5 .img1 {
  width: calc(var(--vw, 1vw) * 350 / 750 * 100);
  margin: calc(var(--vw, 1vw) * 25 / 750 * 100) auto;
}
@media screen and (min-width: 750px) {
  .sec5 .img1 {
    margin: min(var(--vw, 1vw) * 15 / 860 * 100, 18.75px) auto;
    width: min(var(--vw, 1vw) * 171 / 860 * 100, 213.75px);
    display: grid;
    place-content: center;
  }
}
.sec5 .img1 img {
  width: 100%;
}
.sec5 .img2 {
  width: calc(var(--vw, 1vw) * 210 / 750 * 100);
  margin: calc(var(--vw, 1vw) * 30 / 750 * 100) auto;
}
@media screen and (min-width: 750px) {
  .sec5 .img2 {
    margin: min(var(--vw, 1vw) * 30 / 860 * 100, 37.5px) auto 0;
    width: min(var(--vw, 1vw) * 104 / 860 * 100, 130px);
    display: grid;
    place-content: center;
  }
}
.sec5 .img2 img {
  width: 100%;
}
@media screen and (min-width: 750px) {
  .sec5 .wap1 {
    display: grid;
    grid-template-columns: min(var(--vw, 1vw) * 240 / 860 * 100, 300px) 1fr;
    gap: min(var(--vw, 1vw) * 10 / 860 * 100, 12.5px);
  }
}
@media screen and (min-width: 750px) {
  .sec5 .wap2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: min(var(--vw, 1vw) * 10 / 860 * 100, 12.5px);
  }
}
.sec5 .heading-wap {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: calc(var(--vw, 1vw) * 20 / 750 * 100);
  margin-top: calc(var(--vw, 1vw) * 20 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec5 .heading-wap {
    margin-top: min(var(--vw, 1vw) * 10 / 860 * 100, 12.5px);
    gap: min(var(--vw, 1vw) * 10 / 860 * 100, 12.5px);
  }
}
.sec5 .heading {
  font-size: calc(var(--vw, 1vw) * 32 / 750 * 100);
  font-weight: 700;
  color: #E50011;
  line-height: 1.3;
  border: 1px solid #E50011;
  border-radius: calc(var(--vw, 1vw) * 20 / 750 * 100);
  height: calc(var(--vw, 1vw) * 210 / 750 * 100);
  position: relative;
  padding-top: calc(var(--vw, 1vw) * 95 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec5 .heading {
    font-size: clamp(16px, min(var(--vw, 1vw) * 16 / 860 * 100, 20px), min(var(--vw, 1vw) * 16 / 860 * 100, 20px));
    border-radius: min(var(--vw, 1vw) * 10 / 860 * 100, 12.5px);
    height: min(var(--vw, 1vw) * 105 / 860 * 100, 131.25px);
    padding-top: min(var(--vw, 1vw) * 50 / 860 * 100, 62.5px);
  }
}
.sec5 .heading::before {
  content: "";
  position: absolute;
  background: url(../images/ico_light.svg) no-repeat;
  background-size: contain;
  width: calc(var(--vw, 1vw) * 48 / 750 * 100);
  height: calc(var(--vw, 1vw) * 58 / 750 * 100);
  top: calc(var(--vw, 1vw) * 30 / 750 * 100);
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 750px) {
  .sec5 .heading::before {
    width: min(var(--vw, 1vw) * 24 / 860 * 100, 30px);
    height: min(var(--vw, 1vw) * 29 / 860 * 100, 36.25px);
    top: min(var(--vw, 1vw) * 13 / 860 * 100, 16.25px);
  }
}
.sec5 .txt {
  font-size: calc(var(--vw, 1vw) * 32 / 750 * 100);
  text-align: left;
  font-weight: 400;
  margin-top: calc(var(--vw, 1vw) * 20 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec5 .txt {
    font-size: clamp(16px, min(var(--vw, 1vw) * 16 / 860 * 100, 20px), min(var(--vw, 1vw) * 16 / 860 * 100, 20px));
    margin-top: min(var(--vw, 1vw) * 10 / 860 * 100, 12.5px);
  }
}

.sec6 .inner {
  padding: calc(var(--vw, 1vw) * 80 / 750 * 100) calc(var(--vw, 1vw) * 50 / 750 * 100);
  text-align: center;
}
@media screen and (min-width: 750px) {
  .sec6 .inner {
    padding: min(var(--vw, 1vw) * 50 / 860 * 100, 62.5px) 0 min(var(--vw, 1vw) * 90 / 860 * 100, 112.5px);
  }
}
.sec6 .ttl {
  font-size: calc(var(--vw, 1vw) * 48 / 750 * 100);
  font-weight: 700;
  line-height: 1.5;
  color: #E60012;
  position: relative;
  padding-top: calc(var(--vw, 1vw) * 150 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec6 .ttl {
    font-size: clamp(18px, min(var(--vw, 1vw) * 24 / 860 * 100, 30px), min(var(--vw, 1vw) * 24 / 860 * 100, 30px));
    padding-top: min(var(--vw, 1vw) * 115 / 860 * 100, 143.75px);
  }
}
.sec6 .ttl::before {
  content: "";
  position: absolute;
  background: url(../images/s6_ttl.png) no-repeat;
  background-size: contain;
  width: calc(var(--vw, 1vw) * 112 / 750 * 100);
  height: calc(var(--vw, 1vw) * 148 / 750 * 100);
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 750px) {
  .sec6 .ttl::before {
    width: min(var(--vw, 1vw) * 86 / 860 * 100, 107.5px);
    height: min(var(--vw, 1vw) * 90 / 860 * 100, 112.5px);
  }
}
@media screen and (min-width: 750px) {
  .sec6 .wap {
    display: grid;
    grid-template-columns: min(var(--vw, 1vw) * 420 / 860 * 100, 525px) min(var(--vw, 1vw) * 420 / 860 * 100, 525px);
    gap: min(var(--vw, 1vw) * 30 / 860 * 100, 37.5px);
  }
}
.sec6 .unit {
  display: grid;
  grid-template-columns: calc(var(--vw, 1vw) * 205 / 750 * 100) 1fr;
  gap: calc(var(--vw, 1vw) * 28 / 750 * 100);
  padding: calc(var(--vw, 1vw) * 60 / 750 * 100) calc(var(--vw, 1vw) * 30 / 750 * 100);
  border-bottom: #AA9884 dotted 1px;
  position: relative;
}
@media screen and (min-width: 750px) {
  .sec6 .unit {
    grid-template-columns: min(var(--vw, 1vw) * 104 / 860 * 100, 130px) 1fr;
    gap: min(var(--vw, 1vw) * 15 / 860 * 100, 18.75px);
    padding: min(var(--vw, 1vw) * 40 / 860 * 100, 50px);
    border-bottom: none;
  }
}
.sec6 .unit:first-of-type {
  border-top: #AA9884 dotted 1px;
  margin-top: calc(var(--vw, 1vw) * 50 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec6 .unit:first-of-type {
    border-top: none;
    margin-top: 0;
  }
  .sec6 .unit:first-of-type::before {
    content: "";
    position: absolute;
    border-left: 1px solid #AA9884;
    right: calc(min(var(--vw, 1vw) * 10 / 860 * 100, 12.5px) * -1);
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: min(var(--vw, 1vw) * 40 / 860 * 100, 50px);
  }
}
.sec6 .unit-ttl {
  grid-column: span 2;
  font-size: calc(var(--vw, 1vw) * 40 / 750 * 100);
  font-weight: 700;
  text-align: left;
}
@media screen and (min-width: 750px) {
  .sec6 .unit-ttl {
    font-size: clamp(16px, min(var(--vw, 1vw) * 16 / 860 * 100, 20px), min(var(--vw, 1vw) * 16 / 860 * 100, 20px));
  }
}
.sec6 .unit-txt {
  font-size: calc(var(--vw, 1vw) * 32 / 750 * 100);
  text-align: left;
}
@media screen and (min-width: 750px) {
  .sec6 .unit-txt {
    font-size: clamp(16px, min(var(--vw, 1vw) * 16 / 860 * 100, 20px), min(var(--vw, 1vw) * 16 / 860 * 100, 20px));
  }
}
@media screen and (min-width: 750px) {
  .sec6 .unit-img img {
    width: min(var(--vw, 1vw) * 64 / 860 * 100, 80px);
  }
}
.sec6 .unit-img p {
  background: #AA9884;
  color: #fff;
  font-size: calc(var(--vw, 1vw) * 32 / 750 * 100);
  border-radius: calc(var(--vw, 1vw) * 10 / 750 * 100);
  margin-top: calc(var(--vw, 1vw) * 13 / 750 * 100);
  line-height: 1.3;
}
@media screen and (min-width: 750px) {
  .sec6 .unit-img p {
    border-radius: min(var(--vw, 1vw) * 10 / 860 * 100, 12.5px);
    margin-top: min(var(--vw, 1vw) * 7 / 860 * 100, 8.75px);
    font-size: clamp(16px, min(var(--vw, 1vw) * 16 / 860 * 100, 20px), min(var(--vw, 1vw) * 16 / 860 * 100, 20px));
  }
}

.sec7 {
  border-radius: calc(var(--vw, 1vw) * 375 / 750 * 100);
  background: #fff;
  box-shadow: 0px calc(var(--vw, 1vw) * 5 / 750 * 100) calc(var(--vw, 1vw) * 5 / 750 * 100) 0px rgba(0, 0, 0, 0.5);
  width: calc(var(--vw, 1vw) * 670 / 750 * 100);
  margin: calc(var(--vw, 1vw) * 100 / 750 * 100) auto;
}
@media screen and (min-width: 750px) {
  .sec7 {
    border-radius: min(var(--vw, 1vw) * 160 / 860 * 100, 200px);
    box-shadow: 0px calc(var(--vw, 1vw) * 5 / 750 * 100) calc(var(--vw, 1vw) * 5 / 750 * 100) 0px rgba(0, 0, 0, 0.2);
    width: calc(100% - min(var(--vw, 1vw) * 20 / 860 * 100, 25px));
    margin: min(var(--vw, 1vw) * 40 / 860 * 100, 50px) auto;
  }
}
.sec7 .inner {
  padding: calc(var(--vw, 1vw) * 80 / 750 * 100) calc(var(--vw, 1vw) * 50 / 750 * 100) calc(var(--vw, 1vw) * 190 / 750 * 100);
  text-align: center;
}
@media screen and (min-width: 750px) {
  .sec7 .inner {
    padding: min(var(--vw, 1vw) * 50 / 860 * 100, 62.5px) min(var(--vw, 1vw) * 10 / 860 * 100, 12.5px) min(var(--vw, 1vw) * 100 / 860 * 100, 125px);
  }
}
.sec7 .ttl {
  font-size: calc(var(--vw, 1vw) * 48 / 750 * 100);
  font-weight: 700;
  line-height: 1.5;
  color: #E60012;
  position: relative;
  padding-top: calc(var(--vw, 1vw) * 150 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec7 .ttl {
    font-size: clamp(18px, min(var(--vw, 1vw) * 24 / 860 * 100, 30px), min(var(--vw, 1vw) * 24 / 860 * 100, 30px));
    padding-top: min(var(--vw, 1vw) * 100 / 860 * 100, 125px);
  }
}
.sec7 .ttl::before {
  content: "";
  position: absolute;
  background: url(../images/s7_ttl.png) no-repeat;
  background-size: contain;
  width: calc(var(--vw, 1vw) * 90 / 750 * 100);
  height: calc(var(--vw, 1vw) * 148 / 750 * 100);
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 750px) {
  .sec7 .ttl::before {
    width: min(var(--vw, 1vw) * 70 / 860 * 100, 87.5px);
    height: min(var(--vw, 1vw) * 107 / 860 * 100, 133.75px);
  }
}
.sec7 .list {
  text-align: left;
  padding: calc(var(--vw, 1vw) * 40 / 750 * 100) 0;
  border-bottom: calc(var(--vw, 1vw) * 2 / 750 * 100) dotted #AA9884;
}
@media screen and (min-width: 750px) {
  .sec7 .list {
    padding: min(var(--vw, 1vw) * 31 / 860 * 100, 38.75px) 0;
    border-bottom: min(var(--vw, 1vw) * 2 / 860 * 100, 2.5px) dotted #AA9884;
    width: min(var(--vw, 1vw) * 640 / 860 * 100, 800px);
    margin: 0 auto;
  }
}
.sec7 .list:last-of-type {
  border-bottom: none;
}
.sec7 .list dt {
  position: relative;
  font-size: calc(var(--vw, 1vw) * 40 / 750 * 100);
  padding-left: calc(var(--vw, 1vw) * 50 / 750 * 100);
  margin-bottom: calc(var(--vw, 1vw) * 5 / 750 * 100);
  line-height: 1.4;
}
@media screen and (min-width: 750px) {
  .sec7 .list dt {
    font-size: clamp(16px, min(var(--vw, 1vw) * 20 / 860 * 100, 25px), min(var(--vw, 1vw) * 20 / 860 * 100, 25px));
    padding-left: min(var(--vw, 1vw) * 30 / 860 * 100, 37.5px);
    margin-bottom: min(var(--vw, 1vw) * 5 / 860 * 100, 6.25px);
  }
}
.sec7 .list dt::before {
  content: "Q";
  left: 0;
  top: calc(var(--vw, 1vw) * 10 / 750 * 100);
  position: absolute;
  color: #AA9884;
  display: grid;
  place-content: center;
  font-size: calc(var(--vw, 1vw) * 40 / 750 * 100);
  line-height: 1;
}
@media screen and (min-width: 750px) {
  .sec7 .list dt::before {
    top: min(var(--vw, 1vw) * 5 / 860 * 100, 6.25px);
    font-size: min(var(--vw, 1vw) * 16 / 860 * 100, 20px);
  }
}
.sec7 .list dd {
  position: relative;
  font-size: calc(var(--vw, 1vw) * 32 / 750 * 100);
  padding-left: calc(var(--vw, 1vw) * 50 / 750 * 100);
  line-height: 1.4;
  font-weight: 400;
}
@media screen and (min-width: 750px) {
  .sec7 .list dd {
    font-size: clamp(14px, min(var(--vw, 1vw) * 16 / 860 * 100, 20px), min(var(--vw, 1vw) * 16 / 860 * 100, 20px));
    padding-left: min(var(--vw, 1vw) * 30 / 860 * 100, 37.5px);
  }
}
.sec7 .list dd::before {
  font-weight: 700;
  content: "A";
  left: 0;
  top: calc(var(--vw, 1vw) * 10 / 750 * 100);
  position: absolute;
  font-size: calc(var(--vw, 1vw) * 32 / 750 * 100);
  line-height: 1;
}
@media screen and (min-width: 750px) {
  .sec7 .list dd::before {
    top: min(var(--vw, 1vw) * 2 / 860 * 100, 2.5px);
    font-size: min(var(--vw, 1vw) * 16 / 860 * 100, 20px);
  }
}

.sec8 .inner {
  padding: calc(var(--vw, 1vw) * 80 / 750 * 100) calc(var(--vw, 1vw) * 50 / 750 * 100);
  text-align: center;
}
@media screen and (min-width: 750px) {
  .sec8 .inner {
    padding: min(var(--vw, 1vw) * 50 / 860 * 100, 62.5px) 0 min(var(--vw, 1vw) * 90 / 860 * 100, 112.5px);
  }
}
.sec8 .ttl {
  font-size: calc(var(--vw, 1vw) * 48 / 750 * 100);
  font-weight: 700;
  line-height: 1.5;
  color: #E60012;
  position: relative;
  padding-top: calc(var(--vw, 1vw) * 150 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec8 .ttl {
    font-size: clamp(18px, min(var(--vw, 1vw) * 24 / 860 * 100, 30px), min(var(--vw, 1vw) * 24 / 860 * 100, 30px));
    padding-top: min(var(--vw, 1vw) * 115 / 860 * 100, 143.75px);
  }
}
.sec8 .ttl::before {
  content: "";
  position: absolute;
  background: url(../images/s8_ttl.png) no-repeat;
  background-size: contain;
  width: calc(var(--vw, 1vw) * 112 / 750 * 100);
  height: calc(var(--vw, 1vw) * 164 / 750 * 100);
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 750px) {
  .sec8 .ttl::before {
    width: min(var(--vw, 1vw) * 68 / 860 * 100, 85px);
    height: min(var(--vw, 1vw) * 100 / 860 * 100, 125px);
  }
}
.sec8 .wap {
  counter-reset: number;
  position: relative;
}
@media screen and (min-width: 750px) {
  .sec8 .wap {
    width: min(var(--vw, 1vw) * 640 / 860 * 100, 800px);
    margin: 0 auto;
  }
}
.sec8 .wap::before {
  content: "";
  position: absolute;
  border-left: calc(var(--vw, 1vw) * 32 / 750 * 100) solid rgba(170, 152, 132, 0.3);
  width: calc(var(--vw, 1vw) * 5 / 750 * 100);
  height: calc(100% - var(--vw, 1vw) * 230 / 750 * 100);
  left: calc(var(--vw, 1vw) * 26 / 750 * 100);
  top: calc(var(--vw, 1vw) * 10 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec8 .wap::before {
    border-left: min(var(--vw, 1vw) * 16 / 860 * 100, 20px) solid rgba(170, 152, 132, 0.3);
    width: min(var(--vw, 1vw) * 16 / 860 * 100, 20px);
    height: calc(100% - min(var(--vw, 1vw) * 100 / 860 * 100, 125px));
    left: min(var(--vw, 1vw) * 6.75 / 860 * 100, 8.4375px);
    top: min(var(--vw, 1vw) * 20 / 860 * 100, 25px);
  }
}
.sec8 .unit {
  margin-top: calc(var(--vw, 1vw) * 40 / 750 * 100);
  text-align: left;
  position: relative;
  padding-left: calc(var(--vw, 1vw) * 110 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec8 .unit {
    margin-top: min(var(--vw, 1vw) * 20 / 860 * 100, 25px);
    padding-left: min(var(--vw, 1vw) * 50 / 860 * 100, 62.5px);
  }
}
.sec8 .unit::before {
  counter-increment: number;
  content: counter(number);
  width: calc(var(--vw, 1vw) * 64 / 750 * 100);
  height: calc(var(--vw, 1vw) * 64 / 750 * 100);
  left: calc(var(--vw, 1vw) * 10 / 750 * 100);
  top: calc(var(--vw, 1vw) * 4 / 750 * 100);
  border-radius: 50%;
  background: #AA9884;
  position: absolute;
  color: #fff;
  display: grid;
  place-content: center;
  font-size: calc(var(--vw, 1vw) * 32 / 750 * 100);
  line-height: 1;
}
@media screen and (min-width: 750px) {
  .sec8 .unit::before {
    width: min(var(--vw, 1vw) * 30 / 860 * 100, 37.5px);
    height: min(var(--vw, 1vw) * 30 / 860 * 100, 37.5px);
    left: 0;
    top: min(var(--vw, 1vw) * 5 / 860 * 100, 6.25px);
    font-size: min(var(--vw, 1vw) * 16 / 860 * 100, 20px);
  }
}
.sec8 .unit-ttl {
  font-size: calc(var(--vw, 1vw) * 40 / 750 * 100);
  font-weight: 700;
  margin-bottom: calc(var(--vw, 1vw) * 10 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec8 .unit-ttl {
    font-size: clamp(16px, min(var(--vw, 1vw) * 20 / 860 * 100, 25px), min(var(--vw, 1vw) * 20 / 860 * 100, 25px));
    margin-bottom: min(var(--vw, 1vw) * 5 / 860 * 100, 6.25px);
  }
}
.sec8 .unit-txt {
  font-size: calc(var(--vw, 1vw) * 32 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec8 .unit-txt {
    font-size: clamp(14px, min(var(--vw, 1vw) * 16 / 860 * 100, 20px), min(var(--vw, 1vw) * 16 / 860 * 100, 20px));
  }
}

.sec9 {
  border-radius: calc(var(--vw, 1vw) * 375 / 750 * 100);
  background: #fff;
  border: #E60012 solid calc(var(--vw, 1vw) * 8 / 750 * 100);
  box-shadow: 0px calc(var(--vw, 1vw) * 5 / 750 * 100) calc(var(--vw, 1vw) * 5 / 750 * 100) 0px rgba(0, 0, 0, 0.5);
  width: calc(var(--vw, 1vw) * 670 / 750 * 100);
  margin: calc(var(--vw, 1vw) * 100 / 750 * 100) auto;
}
@media screen and (min-width: 750px) {
  .sec9 {
    border-radius: min(var(--vw, 1vw) * 160 / 860 * 100, 200px);
    border: #E60012 solid min(var(--vw, 1vw) * 4 / 860 * 100, 5px);
    box-shadow: 0px min(var(--vw, 1vw) * 4 / 860 * 100, 5px) min(var(--vw, 1vw) * 4 / 860 * 100, 5px) 0px rgba(0, 0, 0, 0.2);
    width: min(var(--vw, 1vw) * 640 / 860 * 100, 800px);
    margin: min(var(--vw, 1vw) * 40 / 860 * 100, 50px) auto;
  }
}
.sec9 .inner {
  padding: calc(var(--vw, 1vw) * 80 / 750 * 100) calc(var(--vw, 1vw) * 50 / 750 * 100) calc(var(--vw, 1vw) * 190 / 750 * 100);
  text-align: center;
}
@media screen and (min-width: 750px) {
  .sec9 .inner {
    padding: min(var(--vw, 1vw) * 50 / 860 * 100, 62.5px) min(var(--vw, 1vw) * 10 / 860 * 100, 12.5px) min(var(--vw, 1vw) * 100 / 860 * 100, 125px);
  }
}
.sec9 .ttl {
  font-size: calc(var(--vw, 1vw) * 48 / 750 * 100);
  font-weight: 700;
  line-height: 1.5;
  color: #E60012;
  position: relative;
  padding-top: calc(var(--vw, 1vw) * 150 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec9 .ttl {
    font-size: clamp(18px, min(var(--vw, 1vw) * 24 / 860 * 100, 30px), min(var(--vw, 1vw) * 24 / 860 * 100, 30px));
    padding-top: min(var(--vw, 1vw) * 100 / 860 * 100, 125px);
  }
}
.sec9 .ttl::before {
  content: "";
  position: absolute;
  background: url(../images/s9_ttl.png) no-repeat;
  background-size: contain;
  width: calc(var(--vw, 1vw) * 160 / 750 * 100);
  height: calc(var(--vw, 1vw) * 148 / 750 * 100);
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 750px) {
  .sec9 .ttl::before {
    width: min(var(--vw, 1vw) * 100 / 860 * 100, 125px);
    height: min(var(--vw, 1vw) * 92 / 860 * 100, 115px);
  }
}
.sec9 .txt {
  font-size: calc(var(--vw, 1vw) * 32 / 750 * 100);
  margin-top: calc(var(--vw, 1vw) * 40 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .sec9 .txt {
    font-size: clamp(14px, min(var(--vw, 1vw) * 16 / 860 * 100, 20px), min(var(--vw, 1vw) * 16 / 860 * 100, 20px));
    margin-top: min(var(--vw, 1vw) * 32 / 860 * 100, 40px);
  }
}

.footer {
  text-align: center;
  background: #fff;
}
.footer .inner {
  padding: calc(var(--vw, 1vw) * 60 / 750 * 100) 0 calc(var(--vw, 1vw) * 220 / 750 * 100);
}
@media screen and (min-width: 750px) {
  .footer .inner {
    padding: min(var(--vw, 1vw) * 30 / 860 * 100, 37.5px) 0;
  }
}
.footer .copy {
  font-size: calc(var(--vw, 1vw) * 24 / 750 * 100);
  line-height: 1.8;
  text-align: center;
}
@media screen and (min-width: 750px) {
  .footer .copy {
    font-size: clamp(12px, min(var(--vw, 1vw) * 12 / 860 * 100, 15px), min(var(--vw, 1vw) * 12 / 860 * 100, 15px));
  }
}

body {
  animation: fade-in 1.25s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.1s both;
}

/**
 * ----------------------------------------
 * animation fade-in
 * ----------------------------------------
 */
@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}/*# sourceMappingURL=style.css.map */