@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap");
/* ===============================================================================
Reset
=============================================================================== */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a,
abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike,
strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure,
figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none;
}

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

button {
  border: none;
}

input, textarea, button, select {
  font-family: inherit;
}

/* ===============================================================================
Body Setting
=============================================================================== */
html, body {
  font-family: "Noto Sans JP", "メイリオ", Meiryo, "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  font-size: 16px;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
      text-size-adjust: 100%;
  line-height: 1.5;
  color: #211D1D;
}

@media screen and (max-width: 1040px) {
  body.is-menuOpen {
    overflow: hidden;
  }
}

a {
  color: inherit;
  text-decoration: none;
}

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

.clear-fix::after {
  content: "";
  display: block;
  clear: both;
}

@media screen and (max-width: 1279px) {
  .fvonly {
    display: none !important;
  }
}
@media screen and (min-width: 769px) {
  .sponly {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  .pconly {
    display: none !important;
  }
}
@-webkit-keyframes shine {
  0% {
    left: -200%;
  }
  87% {
    left: -200%;
  }
  100% {
    left: 170%;
  }
}
@keyframes shine {
  0% {
    left: -200%;
  }
  87% {
    left: -200%;
  }
  100% {
    left: 170%;
  }
}
@-webkit-keyframes scroll {
  0% {
    bottom: 8px;
  }
  50% {
    bottom: 4px;
  }
  100% {
    bottom: 8px;
  }
}
@keyframes scroll {
  0% {
    bottom: 8px;
  }
  50% {
    bottom: 4px;
  }
  100% {
    bottom: 8px;
  }
}
@-webkit-keyframes pon {
  0% {
    opacity: 0;
    -webkit-transform: scale(50%);
            transform: scale(50%);
  }
  50% {
    -webkit-transform: scale(110%);
            transform: scale(110%);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(100%);
            transform: scale(100%);
  }
}
@keyframes pon {
  0% {
    opacity: 0;
    -webkit-transform: scale(50%);
            transform: scale(50%);
  }
  50% {
    -webkit-transform: scale(110%);
            transform: scale(110%);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(100%);
            transform: scale(100%);
  }
}
@-webkit-keyframes updown {
  0% {
    top: 0;
  }
  25% {
    top: 5px;
  }
  50% {
    top: 0;
  }
  75% {
    top: -5px;
  }
  100% {
    top: 0;
  }
}
@keyframes updown {
  0% {
    top: 0;
  }
  25% {
    top: 5px;
  }
  50% {
    top: 0;
  }
  75% {
    top: -5px;
  }
  100% {
    top: 0;
  }
}
/* ===============================================================================
Header
=============================================================================== */
.headerArea {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999;
  background-color: #fff;
}
.headerArea.is-bgShow::before {
  opacity: 1;
}
.headerArea::before {
  position: absolute;
  z-index: -1;
  content: "";
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  box-shadow: 0 3px rgba(0, 0, 0, 0.16);
  opacity: 0;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}
.headerArea__inr {
  min-height: 96px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 12px 40px;
  box-sizing: border-box;
}
.headerArea .blks-1 {
  margin-right: 32px;
}
.headerArea .blks-1 .logo {
  cursor: pointer;
}
.headerArea .blks-1 .logo:hover {
  opacity: 0.8;
}
.headerArea .blks-1 .logo img {
  width: 100%;
  display: block;
}
.headerArea .blks-1 .logo__inr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.headerArea .blks-1 .logo__txt {
  width: 264px;
  margin-right: 10px;
}
.headerArea .blks-1 .logo__txt-2 {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
  margin-right: 9px;
}
.headerArea .blks-1 .logo__txt-3 {
  width: 59px;
}
.headerArea .blks-2 {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.headerArea .blks-2__inr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.headerArea .blks-2 .llist {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin: -4px 16px -4px -16px;
}
.headerArea .blks-2 .llist__item {
  margin: 4px 16px;
  font-size: 1rem;
  line-height: 1.25;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .headerArea .blks-2 .llist__item a:hover {
    color: #D82C2A;
  }
}
.headerArea .blks-2 .btn__inr {
  display: block;
  font-size: 1rem;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: 0.08em;
  position: relative;
  z-index: 1;
  overflow: hidden;
  border-radius: 40px;
  box-shadow: 3px 3px rgba(0, 0, 0, 0.16);
  color: #fff;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.headerArea .blks-2 .btn__inr::before {
  position: absolute;
  z-index: -1;
  content: "";
  display: block;
  top: 0;
  left: 0;
  width: 300%;
  height: 100%;
  background: -webkit-linear-gradient(left, #D82C2A, #EF6800, #EF6800, #EF6800, #EF6800);
  background: linear-gradient(90deg, #D82C2A, #EF6800, #EF6800, #EF6800, #EF6800);
  -webkit-transition: 0.25s;
  transition: 0.25s;
}
.headerArea .blks-2 .btn__inr::after {
  position: absolute;
  top: 0;
  left: -200%;
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  -webkit-transform: skewX(-25deg);
      -ms-transform: skewX(-25deg);
          transform: skewX(-25deg);
  z-index: 1;
  -webkit-animation: shine 5s linear 0s infinite;
          animation: shine 5s linear 0s infinite;
}
.headerArea .blks-2 .btn__inr-2 {
  min-width: 200px;
  min-height: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  box-sizing: border-box;
  padding: 4px 48px 4px 24px;
  position: relative;
}
.headerArea .blks-2 .btn__inr-2::before {
  position: absolute;
  content: "";
  display: block;
  top: 0;
  right: 18px;
  bottom: 0;
  margin: auto 0;
  width: 8px;
  height: 13px;
  background: #fff;
  -webkit-transition: 0.25s;
  transition: 0.25s;
  -webkit-mask: url("../img/arr01.svg") no-repeat 0 0/contain;
          mask: url("../img/arr01.svg") no-repeat 0 0/contain;
}
@media screen and (min-width: 769px) {
  .headerArea .blks-2 .btn .btn__inr:hover {
    -webkit-transform: translateY(2px);
        -ms-transform: translateY(2px);
            transform: translateY(2px);
    box-shadow: none;
  }
  .headerArea .blks-2 .btn .btn__inr:hover::before {
    left: -200%;
  }
  .headerArea .blks-2 .btn .btn__inr:hover .btn__inr-2::before {
    right: 16px;
  }
}
@media screen and (max-width: 1040px) {
  .headerArea {
    height: 80px;
  }
  .headerArea__inr {
    min-height: 1px;
    display: block;
    padding: 0;
  }
  .headerArea .blks-1 {
    margin-right: 0;
  }
  .headerArea .blks-1 .logo {
    position: absolute;
    top: 20px;
    left: 32px;
  }
  .headerArea .blks-1 .menuBtn {
    background: #D82C2A;
    width: 48px;
    height: 48px;
    position: absolute;
    top: 16px;
    right: 32px;
    border-radius: 100%;
    cursor: pointer;
  }
  .headerArea .blks-1 .menuBtn__bar {
    position: absolute;
    width: 50%;
    height: 80%;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
  .headerArea .blks-1 .menuBtn__bar::before, .headerArea .blks-1 .menuBtn__bar::after {
    position: absolute;
    content: "";
    display: block;
    background: #fff;
    height: 2px;
    width: 100%;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  .headerArea .blks-1 .menuBtn__bar::before {
    -webkit-transform: translateY(-400%);
        -ms-transform: translateY(-400%);
            transform: translateY(-400%);
  }
  .headerArea .blks-1 .menuBtn__bar::after {
    -webkit-transform: translateY(400%);
        -ms-transform: translateY(400%);
            transform: translateY(400%);
  }
  .headerArea .blks-1 .menuBtn__bar span {
    position: absolute;
    display: block;
    background: #fff;
    height: 2px;
    width: 100%;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  .headerArea .blks-2 {
    position: fixed;
    top: 80px;
    bottom: 0;
    left: 0;
    width: 100%;
    overflow: auto;
    background: rgba(255, 255, 255, 0.95);
    pointer-events: none;
    opacity: 0;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  .headerArea .blks-2__inr {
    display: block;
    padding: 64px 40px;
  }
  .headerArea .blks-2 .llist {
    display: block;
    margin: 0 0 40px;
  }
  .headerArea .blks-2 .llist__item {
    margin: 0;
    font-size: 1rem;
    text-align: center;
  }
  .headerArea .blks-2 .llist__item:not(:last-child) {
    margin-bottom: 32px;
  }
  .headerArea .blks-2 .btn {
    width: 280px;
    margin: 0 auto;
  }
  .headerArea.is-active .blks-1 .menuBtn__bar::before {
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .headerArea.is-active .blks-1 .menuBtn__bar::after {
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  .headerArea.is-active .blks-1 .menuBtn__bar span {
    opacity: 0;
  }
  .headerArea.is-active .blks-2 {
    pointer-events: auto;
    opacity: 1;
  }
}
@media screen and (max-width: 768px) {
  .headerArea {
    height: 14.93vw;
  }
  .headerArea .blks-1 .logo {
    top: 4.27vw;
    left: 3.2vw;
  }
  .headerArea .blks-1 .logo__txt {
    width: 42.24vw;
    margin-right: 1.33vw;
  }
  .headerArea .blks-1 .logo__txt-2 {
    font-size: 2.67vw;
    margin-right: 1.33vw;
  }
  .headerArea .blks-1 .logo__txt-3 {
    width: 11.01vw;
  }
  .headerArea .blks-1 .menuBtn {
    width: 10.67vw;
    height: 10.67vw;
    top: 2.13vw;
    right: 3.2vw;
  }
  .headerArea .blks-1 .menuBtn__bar::before, .headerArea .blks-1 .menuBtn__bar::after {
    height: 0.4vw;
  }
  .headerArea .blks-1 .menuBtn__bar span {
    height: 0.4vw;
  }
  .headerArea .blks-2 {
    top: 14.93vw;
  }
  .headerArea .blks-2__inr {
    padding: 17.07vw 8.53vw;
  }
  .headerArea .blks-2 .llist {
    margin: 0 0 8.53vw;
  }
  .headerArea .blks-2 .llist__item {
    font-size: 4vw;
  }
  .headerArea .blks-2 .llist__item:not(:last-child) {
    margin-bottom: 6.4vw;
  }
  .headerArea .blks-2 .btn__inr {
    font-size: calc(100vw*(38/860));;
    border-radius: 12.8vw;
  }
  .headerArea .blks-2 .btn{
    width: calc(100vw*(640/860));
  }
  .headerArea .blks-2 .btn__inr-2 {
    min-width: 1px;
    min-height: 12.8vw;
    padding: 1.6vw 10.67vw 1.6vw 6.4vw;
    position: relative;
  }
  .headerArea .blks-2 .btn__inr-2::before {
    right: 5.33vw;
    width: calc(100vw*(25/860));
    height: 4.27vw;
  }
}

/* ===============================================================================
Footer
=============================================================================== */
.footerArea {
  background: #211D1D;
  padding: 64px 0 80px;
}
.footerArea__inr {
  padding: 0 40px;
}
.footerArea .blks-1 {
  margin-bottom: 112px;
}
.footerArea .blks-1 .logo img {
  width: 100%;
  display: block;
}
.footerArea .blks-1 .logo__inr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.footerArea .blks-1 .logo__txt {
  width: 264px;
  margin-right: 10px;
}
.footerArea .blks-1 .logo__txt-2 {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  margin-right: 9px;
}
.footerArea .blks-1 .logo__txt-3 {
  width: 59px;
}
.footerArea .copyright {
  text-align: center;
  color: #fff;
  font-weight: 700;
  font-size: 0.75rem;
}
@media screen and (max-width: 768px) {
  .footerArea {
    padding: 12.8vw 0 40vw;
  }
  .footerArea__inr {
    padding: 0 6.4vw;
  }
  .footerArea .blks-1 {
    margin-bottom: 21.33vw;
  }
  .footerArea .blks-1 .logo {
    top: 4.27vw;
    left: 3.2vw;
  }
  .footerArea .blks-1 .logo__txt {
    width: 42.24vw;
    margin-right: 1.33vw;
  }
  .footerArea .blks-1 .logo__txt-2 {
    font-size: 2.67vw;
    margin-right: 1.33vw;
  }
  .footerArea .blks-1 .logo__txt-3 {
    width: 11.01vw;
  }
  .footerArea .copyright {
    font-size: 2.67vw;
  }
}

/* ===============================================================================
Contents
=============================================================================== */
.contentsArea {
  position: relative;
  margin-top: 96px;
}
.contentsArea .anchor {
  padding-top: 96px;
  margin-top: -96px;
}
.contentsArea .pagetop {
  position: sticky;
  z-index: 998;
  right: 40px;
  bottom: 28px;
  width: 64px;
  height: 64px;
  background: #D82C2A;
  margin: -28px 40px 28px auto;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 100%;
  box-shadow: 3px 3px rgba(0, 0, 0, 0.16);
  cursor: pointer;
  opacity: 0;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  -webkit-transform: scale(1.5);
      -ms-transform: scale(1.5);
          transform: scale(1.5);
  pointer-events: none;
}
.contentsArea .pagetop.is-active {
  opacity: 1;
  pointer-events: auto;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
}
.contentsArea .pagetop__inr {
  font-weight: 500;
  font-size: 0.9375rem;
  line-height: 1.4;
  padding: 15px 0 6px;
  position: relative;
}
.contentsArea .pagetop__inr::before {
  position: absolute;
  content: "";
  display: block;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 20px;
  height: 13px;
  background: url("../img/arr01.svg") no-repeat 0 0/100% 100%;
  -webkit-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
          transform: rotate(-90deg);
}
.contentsArea .pagetop__inr span {
  font-size: 0.75rem;
}
.contentsArea .cv {
  display: none;
}
@media screen and (max-width: 1040px) {
  .contentsArea .anchor {
    padding-top: 80px;
    margin-top: -80px;
  }
}
@media screen and (max-width: 768px) {
  .contentsArea{
    margin-top: calc(100vw*(136/860));
  }
  .contentsArea .anchor {
    padding-top: 14.93vw;
    margin-top: -14.93vw;
  }
  .contentsArea .pagetop {
    display: none;
  }
  .contentsArea .cv {
    position: fixed;
    bottom: 3.2vw;
    left: 3.2vw;
    right: 3.2vw;
    z-index: 998;
    display: block;
  }
  .contentsArea .cv__btn {
    border-radius: 0;
  }
}

/* ===============================================================================
Module
=============================================================================== */
/* heading module 
========================= */
/* m-h-1 */
.m-h-1__sub {
  width: 120px;
  margin: 0 auto 6px;
}
.m-h-1__sub img {
  width: 100%;
  display: block;
}
.m-h-1__main {
  font-size: 2.125rem;
  line-height: 1.24;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .m-h-1__sub {
    width: 29.87vw;
    margin: 0 auto 1.6vw;
  }
  .m-h-1__main {
    font-size: 6.93vw;
  }
  .m-h-1__main span {
    font-size: 1.25rem;
  }
}

/* button module 
========================= */
/* m-btn-1 */
.m-btn-1 {
  display: inline-block;
  position: relative;
  z-index: 1;
  overflow: hidden;
  border-radius: 60px;
  box-shadow: 4px 4px rgba(0, 0, 0, 0.16);
  -webkit-transition: 0.25s;
  transition: 0.25s;
  color: #fff;
  font-size: calc(1rem*(30/16));
  line-height: 1.2;
  font-weight: 700;
  font-feature-settings: "palt";
  letter-spacing: 0.025em;
}
.m-btn-1::before {
  position: absolute;
  z-index: -1;
  content: "";
  display: block;
  top: 0;
  left: 0;
  width: 300%;
  height: 100%;
  background: -webkit-linear-gradient(left, #D82C2A, #EF6800, #EF6800, #EF6800, #EF6800);
  background: linear-gradient(90deg, #D82C2A, #EF6800, #EF6800, #EF6800, #EF6800);
  -webkit-transition: 0.25s;
  transition: 0.25s;
}
.m-btn-1::after {
  position: absolute;
  top: 0;
  left: -200%;
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  -webkit-transform: skewX(-25deg);
      -ms-transform: skewX(-25deg);
          transform: skewX(-25deg);
  z-index: 1;
  -webkit-animation: shine 5s linear 0s infinite;
          animation: shine 5s linear 0s infinite;
}
.m-btn-1__inr {
  min-width: 356px;
  min-height: 100px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  box-sizing: border-box;
  padding: 8px 50px 12px 30px;
  position: relative;
}
.m-btn-1__inr::before {
  position: absolute;
  content: "";
  display: block;
  top: 0;
  right: 26px;
  bottom: 0;
  margin: auto 0;
  width: 20px;
  height: 32px;
  background: #fff;
  -webkit-transition: 0.25s;
  transition: 0.25s;
  -webkit-mask: url("../img/arr01.svg") no-repeat 0 0/contain;
          mask: url("../img/arr01.svg") no-repeat 0 0/contain;
}
.m-btn-wrap{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  column-gap: 54px;
  row-gap: 32px;
  width: max-content;
  margin: auto;
}
.m-btn-wrap .btn:last-child .m-btn-1::before{
  background: -webkit-linear-gradient(left, #ff6700, #ffaa00, #ffaa00, #ffaa00, #ffaa00);
  background: linear-gradient(90deg, #ff6700, #ffaa00, #ffaa00, #ffaa00, #ffaa00);
}
@media screen and (min-width: 769px) {
  .m-btn-1:hover {
    -webkit-transform: translateY(3px);
        -ms-transform: translateY(3px);
            transform: translateY(3px);
    box-shadow: none;
  }
  .m-btn-1:hover::before {
    left: -200%;
  }
  .m-btn-1:hover .m-btn-1__inr::before {
    right: 22px;
  }
  .m-btn-wrap .m-btn-1:hover .m-btn-1__inr::before {
    right: 44px;
  }
  .m-btn-wrap .btn{
    width: 548px;
  }
  .m-btn-wrap .m-btn-1{
    width: 100%;
    font-size: 2.125rem;
  }
  .m-btn-wrap .m-btn-1__inr{
    min-height: 120px;
    padding: 8px 72px 8px 48px;
  }
  .m-btn-wrap .m-btn-1__inr::before{
    right: 48px;
    width: 24px;
    height: 40px;
  }
}
@media screen and (max-width: 1150px) {
  .m-btn-wrap{
    flex-direction: column;
    width: max-content;
  }
}
@media screen and (max-width: 768px) {
  .m-btn-1 {
    width: 100%;
    font-size: calc(100vw*(42/860));
    border-radius: calc(100vw*(164/860));
    box-shadow: 0.8vw 0.8vw rgba(0, 0, 0, 0.16);
  }
  .m-btn-1__inr {
    min-width: 1px;
    min-height: calc(100vw*(128/860));
    padding: 1.6vw 10.67vw 1.6vw 6.4vw;
    position: relative;
  }
  .m-btn-1__inr::before {
    right: 5.33vw;
    width: calc(100vw*(25/860));
    height: calc(100vw*(41/860));
  }
  .m-btn-wrap{
    column-gap: 0;
    row-gap: calc(100vw*(60/860));
  }
  .m-btn-wrap .btn{
    width: 100%;
  }
  .m-btn-wrap .m-btn-1,
  .float .m-btn-1 {
    width: calc(100vw * (746 / 860));
    font-size: calc(100vw*(48/860));
  }
  .m-btn-wrap .m-btn-1__inr,
  .float .m-btn-1__inr {
    min-height: calc(100vw*(164/860));
  }
  .m-btn-wrap .m-btn-1__inr::before,
  .float .m-btn-1__inr::before {
    width: calc(100vw*(33/860));
    height: calc(100vw*(53/860));
  }
}
/* m-btn-2 */
.m-btn-2 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: #d92c2a;
  border-radius: 38px;
  box-sizing: border-box;
  width: 100%;
  max-width: 495px;
  height: 76px;
  padding: 8px 32px 8px 40px;
  transition: 0.6s ease;
}
.m-btn-2__inr{
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding-bottom: 0.2em;
  color: #fff;
  font-size: calc(1rem*(22/16));
  font-weight: 700;
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
}
.m-btn-2__inr:after{
  content: "";
  display: inline-block;
  background: url("../img/arr01.svg") no-repeat center/contain;
  width: 16px;
  height: 27px;
  transition: 0.3s ease;
}
.m-btn-2:hover .m-btn-2__inr:after{
  transform: translateX(4px);
}
.btn-text{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  margin-bottom: 10px;
  font-size: 22px;
  font-weight: bold;
}
.btn-text::before,
.btn-text::after{
  content: "／";
}
.btn-text::before{
  transform: scale(1,-1);
}
@media screen and (max-width: 768px) {
  .m-btn-2 {
    max-width: calc(100vw*(746/860));
    height: calc(100vw*(110/860));
    padding: 1.6vw 4vw;
    border-radius: calc(100vw*(110/860));
  }
  .m-btn-2__inr{
    font-size: calc(100vw*(36/860));
  }
  .m-btn-2__inr:after{
    width: calc(100vw*(23/860));
    height: calc(100vw*(35/860));
  }
  .btn-text{
    font-size: calc(100vw*(30/860));
  }
}

/* general module 
========================= */
.txtL {
  text-align: left !important;
}

.txtC {
  text-align: center !important;
}

.txtR {
  text-align: right !important;
}

.mid {
  font-weight: 500 !important;
}

.bold {
  font-weight: 700 !important;
}

/* scroll animation
========================= */
.a-toTop {
  opacity: 0;
  pointer-events: none;
  -webkit-transform: translateY(30px);
      -ms-transform: translateY(30px);
          transform: translateY(30px);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition-duration: 0.5s;
          transition-duration: 0.5s;
}
.a-toTop.is-anim {
  opacity: 1;
  pointer-events: auto;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}

.a-toLeft {
  opacity: 0;
  pointer-events: none;
  -webkit-transform: translateX(60px);
      -ms-transform: translateX(60px);
          transform: translateX(60px);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition-duration: 0.5s;
          transition-duration: 0.5s;
}
.a-toLeft.is-anim {
  opacity: 1;
  pointer-events: auto;
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
}

.a-toRight {
  opacity: 0;
  pointer-events: none;
  -webkit-transform: translateX(-60px);
      -ms-transform: translateX(-60px);
          transform: translateX(-60px);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition-duration: 0.5s;
          transition-duration: 0.5s;
}
.a-toRight.is-anim {
  opacity: 1;
  pointer-events: auto;
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
}

.a-scaleDown {
  opacity: 0;
  pointer-events: none;
  -webkit-transform: scale(1.5);
      -ms-transform: scale(1.5);
          transform: scale(1.5);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition-duration: 0.5s;
          transition-duration: 0.5s;
}
.a-scaleDown.is-anim {
  opacity: 1;
  pointer-events: auto;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
}

/* ===============================================================================
Top
=============================================================================== */
/* top-section
========================= */
/* top-sec-1 */
.top-sec-1 {
  position: relative;
  z-index: 1;
  overflow: hidden;
  background: url("../img/mv01_pc.jpg") no-repeat center/cover;
}
.top-sec-1::after {
    position: absolute;
    content: "";
    display: block;
    bottom: 0;
    left: 50%;
    right: 0;
    transform: rotate(180deg);
    height: 80px;
    background: #D82C2A;
    -webkit-clip-path: polygon(0 98%, 0 0, 100% 0);
    clip-path: polygon(0 98%, 0 0, 100% 0);
}
.top-sec-1__inr {
  max-width: 1560px;
  padding: 96px 40px 74px;
  width: 100%;
  box-sizing: border-box;
  margin: 0 auto;
}
.top-sec-1 .blks-1,
.top-sec-1 .blks-2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.top-sec-1 .blks-3{
  display: none;
}
.top-sec-1 .blks-1 .grp,
.top-sec-1 .blks-2 .grp {
  -webkit-box-ordinal-group: 1;
      -ms-flex-order: 0;
          order: 0;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  text-align: center;
  max-width: 449px;
  position: relative;
  top: -100px;
  opacity: 0;
  -webkit-transition: 1s;
  transition: 1s;
}
.top-sec-1 .blks-1 .h {
  margin-bottom: 72px;
}
.top-sec-1 .blks-1 .h img {
  display: block;
  width: 100%;
}
.top-sec-1 .blks-1 .h .txt{
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #c53d34;
  height: 40px;
  margin-bottom: 30px;
  padding-bottom: 0.2em;
  color: #fff;
  font-size: 1.125rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  font-feature-settings: "palt";
}
.top-sec-1 .blks-2 .recruit,
.top-sec-1 .blks-3 .recruit{
  margin-bottom: 30px;
  text-align: center;
}
.top-sec-1 .blks-2 .recruit__txt,
.top-sec-1 .blks-3 .recruit__txt {
  margin-bottom: 20px;
  font-size: 1.125rem;
  font-weight: 700;
  text-align: center;
  font-feature-settings: "palt";
}
.top-sec-1 .blks-2 .recruit__logo img,
.top-sec-1 .blks-3 .recruit__logo img{
  width: 313px;
  max-width: inherit;
}
.top-sec-1 .blks-2 .m-btn-1,
.top-sec-1 .blks-3 .m-btn-1 {
  width: 100%;
}
.top-sec-1.is-anim .blks-1 .grp,
.top-sec-1.is-anim .blks-2 .grp {
  top: 0;
  opacity: 1;
}
.top-sec-1.is-anim .blks-1 .img,
.top-sec-1.is-anim .blks-2 .img {
  bottom: 0;
  opacity: 1;
}
@media screen and (max-width: 1040px) {
  .top-sec-1 .blks-1 {
    display: block;
  }
  .top-sec-1 .blks-1 .grp,
  .top-sec-1 .blks-2 .grp {
    margin: 0 auto;
  }
  .top-sec-1 .blks-1 .img {
    max-width: 640px;
    margin: 0 auto 40px;
  }
}
@media screen and (max-width: 768px) {
  .top-sec-1 {
    background: none;
  }
  .top-sec-1::before {
    width: 30%;
  }
  .top-sec-1::after {
    display: none;
  }
  .top-sec-1__inr {
    position: relative;
    aspect-ratio: 860/688;
    padding: 0;
    background: url(../img/mv01_sp.jpg) no-repeat center / cover;
  }
  .top-sec-1__inr:after{
    position: absolute;
    content: "";
    display: block;
    bottom: 0;
    right: 0;
    transform: rotate(180deg);
    width: calc(100vw * (462 / 860));
    height: calc(100vw * (90 / 860));
    background: #D82C2A;
    -webkit-clip-path: polygon(0 98%, 0 0, 100% 0);
    clip-path: polygon(0 98%, 0 0, 100% 0);
  }
  .top-sec-1 .blks-1 {
    display: block;
  }
  .top-sec-1 .blks-1 .grp {
    top: calc(100vw * (170 / 860));
    left: -50%;
    margin-left: 0;
    width: calc(100vw*(374/860))
  }
  .top-sec-1 .blks-1 .h img {
    display: block;
    width: 100%;
  }
  .top-sec-1 .blks-2 {
    display: none;
  }
  .top-sec-1 .blks-3 {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .top-sec-1.is-anim .blks-1 .grp {
    top: calc(100vw * (170 / 860));
    left: calc(100vw*(57/860));
  }
  .top-sec-1 .blks-1 .h .txt{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 0.1em;
    background: none;
    height: auto;
    padding-bottom: 0;
  }
  .top-sec-1 .blks-1 .h .txt span{
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #c53d34;
    width: max-content;
    height: calc(100vw*(46/860));
    padding-bottom: 0.2em;
    padding-inline: 0.5em;
  }
  .top-sec-1 .blks-3 .grp{
    padding-top: calc(100vw*(80/860));
  }
  .top-sec-1 .blks-3 .m-btn-1 {
    width: calc(100vw*(746/860));
    font-size: calc(100vw * (48 / 860));
  }
  .top-sec-1 .blks-3 .m-btn-1__inr{
    min-height: calc(100vw * (164 / 860));
  }
  .top-sec-1 .blks-3 .recruit{
    margin-bottom: calc(100vw*(60/860));
  }
  .top-sec-1 .blks-2 .recruit__txt,
  .top-sec-1 .blks-3 .recruit__txt{
    font-size: calc(100vw*(34/860));
  }
  .top-sec-1 .blks-2 .recruit__logo img,
  .top-sec-1 .blks-3 .recruit__logo img{
    width: calc(100vw*(582/860));
  }
}

/* top-sec-2 */
.top-sec-2 {
  background: #FFEBEB;
  position: relative;
  padding: 88px 0 48px;
}
.top-sec-2__inr {
  max-width: 1440px;
  width: 100%;
  box-sizing: border-box;
  padding: 0 40px;
  margin: 0 auto;
}
.top-sec-2::before {
  position: absolute;
  content: "";
  display: block;
  top: -20px;
  right: 50%;
  left: 0;
  height: 80px;
  background: #D82C2A;
  -webkit-clip-path: polygon(0 98%, 0 0, 100% 0);
          clip-path: polygon(0 98%, 0 0, 100% 0);
}
.top-sec-2 .blks-1 {
  text-align: center;
  margin-bottom: 48px;
}
.top-sec-2 .blks-1 .h,
.top-sec-2 .blks-1 .txt {
  font-size: 2.125rem;
  line-height: 1.8;
  font-weight: 700;
}
.top-sec-2 .blks-1 .h strong {
  color: #D82C2A;
  background-color: #fff;
}
.top-sec-2 .blks-1 .h img{
  display: inline-block;
  margin-inline: 10px;
  vertical-align: baseline;
  transform: translateY(1px);
}
.top-sec-2 .blks-1 .txt strong{
  color: #D82C2A;
  font-size: 3.0rem;
}
.top-sec-2 .blks-2 picture{
  display: block;
  max-width: max-content;
  margin: auto;
}
@media screen and (max-width: 768px) {
  .top-sec-2 {
    padding-block: calc(100vw*(90/860));
    padding-inline: 0;
  }
  .top-sec-2__inr {
    padding: 0 6.4vw;
  }
  .top-sec-2::before {
    display: none;
  }
  .top-sec-2 .blks-1 {
    text-align: center;
    margin-bottom: calc(100vw*(48/860));
  }
  .top-sec-2 .blks-1 .h {
    font-size: calc(100vw*(36/860));
    line-height: 2.0;
    white-space: nowrap;
  }
  .top-sec-2 .blks-1 .h img{
    width: calc(100vw*(318/860));
    vertical-align: baseline;
    transform: translateY(0.05em);
  }
  .top-sec-2 .blks-1 .txt {
    font-size: calc(100vw*(36/860));
  }
  .top-sec-2 .blks-1 .txt strong{
    font-size: calc(100vw*(56/860));
  }
  .top-sec-2 .blks-2 .h {
    display: block;
    margin-bottom: 6.4vw;
  }
  .top-sec-2 .blks-2 .h__inr {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-bottom: 3.2vw;
  }
  .top-sec-2 .blks-2 .h__txt {
    width: 34.56vw;
    margin-right: 1.6vw;
  }
  .top-sec-2 .blks-2 .h__txt-2 {
    font-size: 4.8vw;
    margin-right: 0;
  }
  .top-sec-2 .blks-2 .h__txt-3 {
    width: auto;
  }
  .top-sec-2 .blks-2 .grp__txt {
    font-size: 6.4vw;
    margin-bottom: 2.13vw;
  }
  .top-sec-2 .blks-2 .grp__txt em {
    line-height: 1.75;
  }
  .top-sec-2 .blks-2 .grp__txt-2 {
    font-size: 4.27vw;
  }
}

/* top-sec-3 */
.top-sec-3 {
  background: #fff;
}
.top-sec-3__inr {
  padding: 60px 0 72px;
  width: 100%;
  box-sizing: border-box;
  margin: 0 auto;
  background: #fff;
  overflow: hidden;
}
.top-sec-3 .partners img{
  max-width: 140px;
  max-height: 100px;
  margin: auto;
}
.top-sec-3 .swiper{
  width: 1200px;
  overflow: visible;
}
.top-sec-3 .swiper-wrapper{
  display: flex;
  align-items: center;
  transition-timing-function: linear;
}
@media screen and (max-width: 768px) {
  .top-sec-3 {
    background: #fff;
  }
  .top-sec-3__inr {
    padding: 10.67vw 0;
  }
  .top-sec-3 .partners img{
    max-width: calc(100vw*(240/860));
  }
  .top-sec-3 .swiper{
    width: 90%;
  }
}

/* top-sec-4 */
.top-sec-4 {
  background: #FFEBEB;
  padding: 48px 0 48px;
}
.top-sec-4__inr {
  max-width: 1040px;
  box-sizing: border-box;
  width: 100%;
  padding: 0 40px;
  margin: 0 auto;
}
.top-sec-4 .blks-1 {
  margin-bottom: 48px;
}
.top-sec-4 .blks-1 .h {
  margin-bottom: 24px;
}
.top-sec-4 .blks-1 .txt {
  text-align: center;
  font-size: 1rem;
  line-height: 2;
  font-weight: 500;
}
.top-sec-4 .blks-1 .txt em {
  color: #D82C2A;
  font-weight: 700;
}
.top-sec-4 .blks-2 {
  margin-bottom: 40px;
}
.top-sec-4 .blks-2 .card {
  background: #fff;
  border-radius: 10px;
  min-height: 176px;
  box-sizing: border-box;
  padding: 16px 32px 16px 176px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}
.top-sec-4 .blks-2 .card + .card {
  margin-top: 28px;
}
.top-sec-4 .blks-2 .card__num {
  position: absolute;
  width: 120px;
  top: -8px;
  right: 0;
}
.top-sec-4 .blks-2 .card__num img {
  width: 100%;
  display: block;
}
.top-sec-4 .blks-2 .card__ico {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
}
.top-sec-4 .blks-2 .card__ico._ico-1 {
  width: 92px;
  height: 96px;
  left: 43px;
}
.top-sec-4 .blks-2 .card__ico._ico-2 {
  width: 98px;
  height: 85px;
  left: 40px;
}
.top-sec-4 .blks-2 .card__ico._ico-3 {
  width: 79px;
  height: 82px;
  left: 49px;
}
.top-sec-4 .blks-2 .card__inr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.top-sec-4 .blks-2 .card__h {
  font-size: 1.5rem;
  line-height: 1.46;
  font-weight: 700;
  width: 266px;
  padding-right: 1em;
  box-sizing: border-box;
}
.top-sec-4 .blks-2 .card__txt {
  font-size: 1.125rem;
  line-height: 1.5;
  font-weight: 500;
}
.top-sec-4 .blks-2 .card__txt em {
  color: #D82C2A;
  font-weight: 700;
}
.top-sec-4 .blks-3 .btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 768px) {
  .top-sec-4 {
    padding-block: calc(100vw * (90 / 860));
    padding-inline: 0;
  }
  .top-sec-4__inr {
    padding: 0 6.4vw;
  }
  .top-sec-4 .blks-1 {
    margin-bottom: 8.53vw;
  }
  .top-sec-4 .blks-1 .h {
    margin-bottom: 4.27vw;
  }
  .top-sec-4 .blks-1 .txt {
    text-align: left;
    font-size: 4vw;
  }
  .top-sec-4 .blks-2 {
    margin-bottom: 0;
  }
  .top-sec-4 .blks-2 .card {
    border-radius: 1.87vw;
    min-height: 1px;
    padding: 6.4vw;
    display: block;
  }
  .top-sec-4 .blks-2 .card + .card {
    margin-top: 8.53vw;
  }
  .top-sec-4 .blks-2 .card__num {
    width: 25.6vw;
    top: -2.13vw;
  }
  .top-sec-4 .blks-2 .card__ico {
    position: static;
    width: 80%;
    margin: 0 auto 3.2vw;
  }
  .top-sec-4 .blks-2 .card__ico._ico-1 {
    width: 31.89vw;
    height: 33.28vw;
  }
  .top-sec-4 .blks-2 .card__ico._ico-2 {
    width: 33.97vw;
    height: 29.47vw;
  }
  .top-sec-4 .blks-2 .card__ico._ico-3 {
    width: 27.39vw;
    height: 28.43vw;
  }
  .top-sec-4 .blks-2 .card__inr {
    display: block;
  }
  .top-sec-4 .blks-2 .card__h {
    font-size: 5.33vw;
    width: auto;
    padding-right: 0;
    text-align: center;
    margin-bottom: 3.2vw;
  }
  .top-sec-4 .blks-2 .card__txt {
    font-size: 4vw;
    text-align: center;
  }
  .top-sec-4 .blks-3 .btn {
    display: block;
    margin: 0 4.27vw;
  }
}

/* top-sec-5 */
.top-sec-5 {
  padding-top: 104px;
  position: relative;
  overflow: hidden;
}
.top-sec-5::before {
  position: absolute;
  content: "";
  display: block;
  top: 0;
  left: 0;
  height: 80px;
  width: 100%;
  background: #FFEBEB;
  -webkit-clip-path: polygon(0 0, 0% 100%, 100% 0);
          clip-path: polygon(0 0, 0% 100%, 100% 0);
}
.top-sec-5__inr {
  padding: 0 40px;
}
.top-sec-5 .blks-1 {
  margin-bottom: 40px;
}
.top-sec-5 .blks-1 .h {
  margin-bottom: 24px;
}
.top-sec-5 .blks-1 .txt {
  text-align: center;
  font-size: 1rem;
  line-height: 2;
  font-weight: 500;
}
.top-sec-5 .blks-2 .slider {
  position: relative;
}
.top-sec-5 .blks-2 .slider__inr {
  max-width: 1200px;
  margin: 0 auto;
}
.top-sec-5 .blks-2 .slider__inr-2 {
  max-width: 1344px;
  margin: 0 auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  pointer-events: none;
}
.top-sec-5 .blks-2 .slider .swiper-container, .top-sec-5 .blks-2 .slider .swiper-wrapper {
  overflow: visible;
}
.top-sec-5 .blks-2 .slider .swiper-slide {
  height: auto;
}
.top-sec-5 .blks-2 .slider__arr {
  width: 38px;
  height: 63px;
  background: #008FD8;
  top: 0;
  bottom: 0;
  margin: auto 0;
  position: absolute;
  -webkit-mask: url("../img/arr01.svg") no-repeat center center/contain;
          mask: url("../img/arr01.svg") no-repeat center center/contain;
  pointer-events: auto;
  z-index: 2;
  cursor: pointer;
}
.top-sec-5 .blks-2 .slider__arr:hover {
  opacity: 0.8;
}
.top-sec-5 .blks-2 .slider__arr._prev {
  left: 16px;
  -webkit-transform: scale(-1, 1);
      -ms-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
.top-sec-5 .blks-2 .slider__arr._next {
  right: 16px;
}
.top-sec-5 .blks-2 .pagination {
  position: static;
  margin: 20px 0 -4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.top-sec-5 .blks-2 .pagination .swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  margin: 4px 6px;
}
.top-sec-5 .blks-2 .pagination .swiper-pagination-bullet-active {
  background: #008FD8;
}
.top-sec-5 .blks-2 .box {
  background: #F5F5F5;
  padding: 56px 72px 52px;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: grid;
  grid-template-columns: max-content 1fr;
  box-shadow: 6px 6px rgba(0, 0, 0, 0.16);
  position: relative;
}
.top-sec-5 .blks-2 .box .h{
  grid-column: span 2;
  border-bottom: 2px solid #008fd8;
  margin-bottom: 50px;
  padding-bottom: 16px;
  font-size: calc(1rem*(28/16));
  font-weight: 700;
}
.top-sec-5 .blks-2 .box__num {
  position: absolute;
  width: 112px;
  top: 12px;
  right: 12px;
}
.top-sec-5 .blks-2 .box__num img {
  width: 100%;
  display: block;
}
.top-sec-5 .blks-2 .box__job{
  border-top: 1px solid #999999;
  margin-top: 1.0em;
  padding-top: 1.0em;
  font-size: 1.0rem;
  font-weight: 500;
  font-feature-settings: "palt";
}
.top-sec-5 .blks-2 .box__lt {
  width: 240px;
  margin-right: 64px;
}
.top-sec-5 .blks-2 .box__rt {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.top-sec-5 .blks-2 .box__img {
  margin-bottom: 10px;
}
.top-sec-5 .blks-2 .box__img img {
  width: 100%;
  display: block;
}
.top-sec-5 .blks-2 .box__name {
  text-align: center;
  font-size: 1.125rem;
  line-height: 1.46;
  font-weight: 700;
}
.top-sec-5 .blks-2 .box__grp + .box__grp {
  margin-top: 40px;
}
.top-sec-5 .blks-2 .box__h {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-bottom: 6px;
  border-bottom: dashed #9B9B9B 1px;
  margin-bottom: 15px;
}
.top-sec-5 .blks-2 .box__h__num {
  width: 31px;
  margin-right: 10px;
}
.top-sec-5 .blks-2 .box__h__num img {
  width: 100%;
  display: block;
}
.top-sec-5 .blks-2 .box__h__txt {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 1.3125rem;
  line-height: 1.43;
  font-weight: 700;
}
.top-sec-5 .blks-2 .box__h__txt span {
  background: -webkit-linear-gradient(top, transparent 78.99%, rgba(0, 143, 216, 0.3) 79%);
  background: linear-gradient(180deg, transparent 78.99%, rgba(0, 143, 216, 0.3) 79%);
}
.top-sec-5 .blks-2 .box__txt {
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.86;
}
.top-sec-5 .blks-2 .box__txt ul li {
  padding-left: 1em;
  text-indent: -1em;
}
.top-sec-5 .blks-2 .box__txt em {
  color: #D82C2A;
  font-weight: 700;
}
.top-sec-5 .blks-2 .btn{
  margin-top: 48px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .top-sec-5 {
    padding-top: 17.07vw;
  }
  .top-sec-5::before {
    height: 8.53vw;
  }
  .top-sec-5__inr {
    padding: 0 6.4vw;
  }
  .top-sec-5 .blks-1 {
    margin-bottom: 6.4vw;
  }
  .top-sec-5 .blks-1 .h {
    margin-bottom: 4.27vw;
  }
  .top-sec-5 .blks-1 .txt {
    font-size: 4vw;
  }
  .top-sec-5 .blks-2 .slider__arr {
    width: 6.08vw;
    height: 10.08vw;
    bottom: auto;
    top: 25.6vw;
  }
  .top-sec-5 .blks-2 .slider__arr._prev {
    left: -4.27vw;
  }
  .top-sec-5 .blks-2 .slider__arr._next {
    right: -4.27vw;
  }
  .top-sec-5 .blks-2 .pagination {
    margin: 5.33vw 0 -0.8vw;
  }
  .top-sec-5 .blks-2 .pagination .swiper-pagination-bullet {
    width: 2.67vw;
    height: 2.67vw;
    margin: 0.8vw 1.33vw;
  }
  .top-sec-5 .blks-2 .box {
    padding: 12.8vw 6.4vw 8.53vw;
    display: block;
    box-shadow: 1.33vw 1.33vw rgba(0, 0, 0, 0.16);
  }
  .top-sec-5 .blks-2 .box__num {
    width: 23.47vw;
    top: 2.67vw;
    right: 2.67vw;
  }
  .top-sec-5 .blks-2 .box__job{
    font-size: calc(100vw*(32/860));
    text-align: center;
  }
  .top-sec-5 .blks-2 .box .h{
    margin-bottom: 1.0em;
    padding-bottom: 1.0em;
    font-size: calc(100vw*(56/860));
  }
  .top-sec-5 .blks-2 .box__lt {
    width: auto;
    margin: 0 0 8.53vw;
  }
  .top-sec-5 .blks-2 .box__img {
    width: 50%;
    margin: 0 auto 2.13vw;
  }
  .top-sec-5 .blks-2 .box__name {
    font-size: 4.8vw;
  }
  .top-sec-5 .blks-2 .box__grp + .box__grp {
    margin-top: 8.53vw;
  }
  .top-sec-5 .blks-2 .box__h {
    padding-bottom: 2.13vw;
    margin-bottom: 3.2vw;
  }
  .top-sec-5 .blks-2 .box__h__num {
    width: 7.47vw;
    margin-right: 2.13vw;
  }
  .top-sec-5 .blks-2 .box__h__txt {
    font-size: 4.8vw;
  }
  .top-sec-5 .blks-2 .box__txt {
    font-size: 4vw;
  }
  .top-sec-5 .blks-2 .btn{
    margin-top: calc(100vw*(72/860));
  }
}

/* top-sec-6 */
.top-sec-6 {
  padding: 88px 0;
}
.top-sec-6__inr {
  max-width: 1060px;
  box-sizing: border-box;
  width: 100%;
  padding: 0 40px;
  margin: 0 auto;
}
.top-sec-6 .blks-1 {
  margin-bottom: 56px;
}
.top-sec-6 .blks-1 .h {
  margin-bottom: 24px;
}
.top-sec-6 .blks-1 .txt {
  font-size: 1rem;
  line-height: 2;
  text-align: center;
  font-weight: 500;
}
.top-sec-6 .blks-1 .txt-2 {
  font-size: 0.875rem;
  line-height: 1.43;
  font-weight: 700;
  text-align: center;
}
.top-sec-6 .blks-1 .txt-2 em {
  color: #D82C2A;
}
.top-sec-6 .blks-2 .step + .step {
  position: relative;
  margin-top: 20px;
  padding-top: 60px;
}
.top-sec-6 .blks-2 .step + .step:before{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 188px;
  height: 41px;
  background-color: #d82c2a;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.top-sec-6 .blks-2 .step__inr {
  max-width: 868px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-radius: 12px;
  background-color: #fbecec;
  margin: 0 auto;
  padding: 40px 60px;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.top-sec-6 .blks-2 .step:last-child .step__inr{
  align-items: center;
  background-color: #fff;
  border: 4px solid #D82C2A;
}
.top-sec-6 .blks-2 .step__ico {
  width: 112px;
  margin-right: 44px;
}
.top-sec-6 .blks-2 .step__ico img {
  width: 100%;
  display: block;
}
.top-sec-6 .blks-2 .step__dtl {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.top-sec-6 .blks-2 .step__dtl > *:last-child {
  margin-bottom: 0 !important;
}
.top-sec-6 .blks-2 .step__num {
  width: 96px;
  margin-bottom: 10px;
}
.top-sec-6 .blks-2 .step__num img {
  width: 100%;
  display: block;
}
.top-sec-6 .blks-2 .step__h {
  font-size: 1.375rem;
  line-height: 1.37;
  font-weight: 700;
  position: relative;
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 1px dotted #d82c2a;
}
.top-sec-6 .blks-2 .step__txt {
  font-size: 1rem;
  line-height: 1.75;
  margin-bottom: 14px;
}
.top-sec-6 .blks-2 .step__caution {
  font-size: 0.875rem;
  line-height: 1.43;
}
.top-sec-6 .blks-2 .step__caution li {
  padding-left: 1em;
  text-indent: -1em;
}
@media screen and (max-width: 768px) {
  .top-sec-6 {
    padding: 17.07vw 0 14.93vw;
  }
  .top-sec-6__inr {
    padding: 0 6.4vw;
  }
  .top-sec-6 .blks-1 {
    margin-bottom: 10.67vw;
  }
  .top-sec-6 .blks-1 .h {
    margin-bottom: 4.27vw;
  }
  .top-sec-6 .blks-1 .txt {
    font-size: 4vw;
    margin-bottom: 3.2vw;
  }
  .top-sec-6 .blks-1 .txt-2 {
    font-size: 3.73vw;
  }
  .top-sec-6 .blks-2 .step {
    margin: 0 4.27vw;
  }
  .top-sec-6 .blks-2 .step + .step {
    margin-top: calc(100vw*(40/860))
    padding-top: calc(100vw*(100/860));
  }
  .top-sec-6 .blks-2 .step + .step:before{
    width: calc(100vw*(340/860));
    height: calc(100vw*(74/860));
  }
  .top-sec-6 .blks-2 .step__inr {
    display: block;
  }
  .top-sec-6 .blks-2 .step__ico {
    width: 32vw;
    margin: 0 auto 4.27vw;
  }
  .top-sec-6 .blks-2 .step__ico img {
    width: 100%;
    display: block;
  }
  .top-sec-6 .blks-2 .step:last-child .step__ico{
    width: calc(100vw*(222/860));
  }
  .top-sec-6 .blks-2 .step__dtl {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
  .top-sec-6 .blks-2 .step__dtl > *:last-child {
    margin-bottom: 0 !important;
  }
  .top-sec-6 .blks-2 .step__num {
    width: 21.33vw;
    margin-bottom: 3.2vw;
  }
  .top-sec-6 .blks-2 .step__h {
    font-size: 4.8vw;
    margin-bottom: 4.27vw;
  }
  .top-sec-6 .blks-2 .step__h::before {
    width: 1.07vw;
    border-radius: 0.53vw;
  }
  .top-sec-6 .blks-2 .step__txt {
    font-size: 4vw;
    margin-bottom: 3.2vw;
  }
  .top-sec-6 .blks-2 .step__caution {
    font-size: 3.73vw;
  }
}

/* top-sec-7 */
.top-sec-7 {
  background: #f4f4f4;
  padding: 88px 0;
}
.top-sec-7__inr {
  max-width: 1280px;
  padding: 0 40px;
  width: 100%;
  box-sizing: border-box;
  margin: 0 auto;
}
.top-sec-7 .blks-1 {
  margin-bottom: 64px;
}
.top-sec-7 .blks-1 .h {
  margin-bottom: 24px;
}
.top-sec-7 .blks-2{
  margin-bottom: 72px;
}
.top-sec-7 .cwl{
  background-color: #fff;
  border-radius: 12px;
  box-sizing: border-box;
  width: 100%;
  max-width: 1060px;
  margin-inline: auto;
  padding: 60px;
  font-size: 1.125rem;
  line-height: 2.0;
}
.top-sec-7 .cwl .h{
  margin-bottom: 60px;
  text-align: center;
}
.top-sec-7 .cwl__report{
  display: grid;
  grid-template-columns: 1fr calc(100%*(418/940));
  gap: calc(100%*(60/1060));
  background-color: #fbecec;
  border-radius: 12px;
  margin: 38px auto;
  padding: 40px 48px;
  font-size: 1.0rem;
}
.top-sec-7 .cwl__link{
  text-align: right;
}
.top-sec-7 .cwl__link a{
  display: inline-flex;
  align-items: center;
  gap: 0.5em;
  font-size: 1.125rem;
  font-weight: 700;
  text-decoration-line: underline;
  text-underline-offset: 0.4em;
}
.top-sec-7 .cwl__link a:before{
  content: "";
  display: inline-block;
  width: 30px;
  height: 30px;
  background: url("../img/ico14.png") no-repeat center/contain;
}
.cwl__report_h{
  margin-bottom: 30px;
  color: #D82C2A;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
}
.top-sec-7 .txt {
  margin-bottom: 40px;
  font-size: calc(1rem*(28/16));
  font-weight: 700;
  text-align: center;
  line-height: calc(48/28);
}
.top-sec-7 .txt strong{
  color: #D82C2A;
  background-color: #f5dad9;
}
.top-sec-7 .event__wrapper{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  justify-content: center;
  width: 100%;
  max-width: 1060px;
  margin-top: 90px;
  margin-inline: auto;
  font-size: 1.125rem;
  line-height: 1.45;
}
.top-sec-7 .event__item{
  position: relative;
  background-color: #fff;
  box-sizing: border-box;
  border-radius: 12px;
  max-width: 525px;
  padding: 50px;
}
.top-sec-7 .event__h{
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #f5dad9;
  border-radius: 12px;
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  max-width: 460px;
  padding: 12px;
  color: #d82c2a;
  font-size: calc(1rem*(20/16));
  font-weight: 700;
  text-align: center;
  list-style: calc(28/20);
}
.top-sec-7 .event__h:after{
  content: "";
  display: block;
  background-color: #f5dad9;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 100%);
  width: 24px;
  height: 20px;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.top-sec-7 .event__item .h{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 0.2em;
  height: 70px;
  margin-top: 40px;
  font-size: calc(1rem*(42/16));
  font-weight: 700;
  font-feature-settings: "palt";
  line-height: 1;
  text-align: center;
}
.top-sec-7 .event__item .h small{
  display: inline-block;
  font-size: 1.125rem;
}
.top-sec-7 .event__item figure{
  display: flex;
  align-items: center;
  margin-inline: auto;
  height: 188px;
}
.top-sec-7 .event__logo06{
  width: 158px;
}
.top-sec-7 .event__logo07{
  width: 102px;
}
.top-sec-7 .event__list{
  border-top: 2px dotted #d82c2a;
  margin-top: 20px;
  padding-top: 30px;
}
.top-sec-7 .event__list li{
  display: flex;
  align-items: center;
  gap: 0.75em;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: calc(44 / 18);
}
.top-sec-7 .event__list li:before{
  content: "";
  width: 24px;
  height: 24px;
  background: url("../img/ico13.png") no-repeat center/contain;
}
.top-sec-7 .blks-4 {
  margin-top: 60px;
}
.top-sec-7 .btn{
  text-align: center;
}
@media screen and (min-width: 769px) {
  .top-sec-7 .m-btn-1{
    width: 494px;
  }
}
@media screen and (max-width: 768px) {
  .top-sec-7 {
    padding: 14.93vw 0 8.53vw;
  }
  .top-sec-7__inr {
    padding: 0 6.4vw;
  }
  .top-sec-7 .blks-1 {
    margin-bottom: 10.67vw;
  }
  .top-sec-7 .blks-1 .h {
    display: block;
  }
  .top-sec-7 .blks-1 .h__txt {
    margin: 0 0 4.27vw;
    font-size: 5.87vw;
  }
  .top-sec-7 .blks-1 .h__img {
    width: 38.19vw;
    margin: 0 auto;
  }
  .top-sec-7 .blks-2 .h {
    height: auto;
    margin-top: calc(100vw*(140/860));
    font-size: calc(100vw*(68/860));
  }
  .top-sec-7 .blks-2 .h small{
    font-size: calc(100vw*(32/860));
  }
  .top-sec-7 .txt{
    font-size: calc(100vw*(34/860));
  }
  .top-sec-7 .event__wrapper{
    grid-template-columns: 1fr;
    gap: calc(100vw*(70/860));
    margin-top: calc(100vw*(70/860));
    font-size: calc(100vw*(32/860));
  }
  .top-sec-7 .event__item{
    border-radius: calc(100vw*(12/860));
    width: 100%;
    max-width: inherit;
    padding: calc(100vw*(60/860));
  }
  .top-sec-7 .event__item figure{
    height: auto;
    padding-block: calc(100vw*(20/860));
  }
  .top-sec-7 .event__logo06{
    width: calc(100vw*(208/860));
  }
  .top-sec-7 .event__logo07{
    width: calc(100vw*(170/860));
    padding-block-start: calc(100vw*(60/860));
  }
  .top-sec-7 .event__h{
    transform: translate(-50%, -20%);
    border-radius: calc(100vw*(12/860));
    width: calc(100vw*(650/860));
    max-width: inherit;
    padding-block: calc(100vw*(30/860));
    padding-inline: calc(100vw*(12/860));
    font-size: calc(100vw*(42/860));
  }
  .top-sec-7 .event__h:after{
    width: calc(100vw*(36/860));
    height: calc(100vw*(28/860));
  }
  .top-sec-7 .event__list li{
    font-size: calc(100vw*(28/860));
    white-space: nowrap;
  }
  .top-sec-7 .event__list li:before{
    width: calc(100vw*(30/860));
    height: calc(100vw*(30/860));
    transform: translateY(0.1em);
  }
  .top-sec-7 .cwl{
    padding: calc(100vw*(60/860));
    font-size: calc(100vw*(32/860));
  }
  .top-sec-7 .cwl .h{
    margin-bottom: calc(100vw*(60/860));
  }
  .top-sec-7 .cwl .h img{
    width: calc(100vw*(492/860));
  }
  .top-sec-7 .cwl__link a{
    font-size: calc(100vw*(32/860));
  }
  .top-sec-7 .cwl__link a:before{
    width: calc(100vw*(30/860));
    height: calc(100vw*(30/860));
  }
  .top-sec-7 .cwl__report_h{
    font-size: calc(100vw*(36/860));
  }
  .top-sec-7 .cwl__report{
    grid-template-columns: 1fr;
    gap: 0;
    border-radius: calc(100vw*(12/860));
    margin: calc(100vw*(30/860)) auto;
    padding-block: calc(100vw*(60/860));
    padding-inline: calc(100vw*(40/860));
    font-size: calc(100vw*(32/860));
  }
  .top-sec-7 .cwl__report_rt{
    margin-top: calc(100vw*(30/860));
  }
}

/* top-sec-8 */
.top-sec-8 {
  background: #FFEBEB;
  padding: 0 32px 88px;
}
.top-sec-8__inr {
  padding: 72px 40px;
  max-width: 1376px;
  width: 100%;
  box-sizing: border-box;
  margin-inline: auto;
  margin-bottom: 80px;
  background: #fff;
}
.top-sec-8__inr-2 {
  max-width: 1060px;
  width: 100%;
  margin: 0 auto;
}
.top-sec-8__inr-3{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 54px;
  width: max-content;
  margin: auto;
}
.top-sec-8 .blks-1 {
  margin-bottom: 40px;
}
.top-sec-8 .blks-1 .h {
  text-align: center;
  font-size: 2.125rem;
  line-height: 1.24;
  font-weight: 700;
  padding-bottom: 12px;
  position: relative;
}
.top-sec-8 .blks-1 .h::after {
  position: absolute;
  content: "";
  display: block;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 32px;
  height: 6px;
  background: #D82C2A;
}
.top-sec-8 .blks-2 .grp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 40px;
  margin-bottom: 40px;
}
.top-sec-8 .blks-2 .grp__lt, .top-sec-8 .blks-2 .grp__rt {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.top-sec-8 .blks-2 .grp-2 {
  margin-bottom: 40px;
}
.top-sec-8 .blks-2 .box {
  border: solid 1px #9B9B9B;
  padding: 14px 14px 10px;
}
.top-sec-8 .blks-2 .box img {
  width: 100%;
  display: block;
}
.top-sec-8 .blks-2 .box._t2 {
  padding-bottom: 32px;
}
.top-sec-8 .blks-2 .box._t2 .box__body__inr {
  max-width: 721px;
  margin: 0 auto;
}
.top-sec-8 .blks-2 .box._t3 {
  padding-bottom: 40px;
  position: relative;
}
.top-sec-8 .blks-2 .box__h {
  background: rgba(216, 44, 42, 0.16);
  color: #D82C2A;
  font-size: 1.625rem;
  line-height: 1.62;
  padding: 3px 24px;
  font-weight: 700;
  margin-bottom: 24px;
}
.top-sec-8 .blks-2 .list {
  max-width: 936px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 40px;
}
.top-sec-8 .blks-2 .list__grp {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.top-sec-8 .blks-2 .list__item {
  min-height: 64px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: dashed 1px #9B9B9B;
  font-weight: 700;
  line-height: 1.7;
  line-height: 1.3;
}
.top-sec-8 .blks-2 .list__item__num {
  width: 50px;
  height: 52px;
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #fff;
  top: -8px;
  margin: 0 16px 0 3px;
}
.top-sec-8 .blks-2 .list__item__num::before {
  position: absolute;
  z-index: -1;
  content: "";
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #D82C2A;
  -webkit-mask: url("../img/ico12.svg") no-repeat center center/contain;
          mask: url("../img/ico12.svg") no-repeat center center/contain;
}
.top-sec-8 .blks-2 .list__item__num__txt {
  font-size: 1.375rem;
}
.top-sec-8 .blks-2 .list__item__num__txt-2 {
  font-size: 0.6875rem;
}
.top-sec-8 .blks-2 .list__item__num-2 {
  width: 40px;
  height: 40px;
  background: #DFDFDF;
  border-radius: 100%;
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 21px 0 8px;
}
.top-sec-8 .blks-2 .list__item__num-2__txt {
  font-size: 1.375rem;
}
.top-sec-8 .blks-2 .list__item__num-2__txt-2 {
  font-size: 0.6875rem;
}
.top-sec-8 .blks-2 .list__item__txt {
  font-size: 1.625rem;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.top-sec-8 .blks-2 .list__item__txt-2 {
  font-size: 1.375rem;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.top-sec-8 .blks-2 .list__item__txt-2 span {
  display: inline-block;
}
.top-sec-8 .blks-2 .list__item__txt-2._t2 {
  padding-right: 70px;
}
.top-sec-8 .blks-3__inr{
  background-color: #f5f5f5;
  width: max-content;
  padding: 36px 60px 60px;
}
.top-sec-8 .blks-3__inr .h{
  margin-bottom: 50px;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 2.0;
  text-align: center;
}
.top-sec-8 .blks-3__inr .h strong{
  color: #008fd8;
  font-size: 2.125rem;
}
.top-sec-8 .blks-3__inr .data__img{
  max-width: 839px;
}
.top-sec-8 .blks-3{
  display: flex;
  flex-direction: column;
  align-items: center;
  border-bottom: 2px solid #d82c2a;
  margin-bottom: 60px;
  padding-bottom: 60px;
}
.top-sec-8 .blks-3 .txt{
  margin-top: 30px;
  font-size: 2.125rem;
  line-height: 2.3;
  font-weight: 700;
  text-align: center;
  white-space: nowrap;
}
.top-sec-8 .blks-3 .txt:before{
  content: "";
  display: block;
  width: 215px;
  height: 61px;
  margin-bottom: 10px;
  margin-inline: auto;
  background: url("../img/img07.png") no-repeat center/contain;
}
.top-sec-8 .blks-3 .txt img{
  width: 294px;
  vertical-align: baseline;
  transform: translate(-4px,2px);
}
.top-sec-8 .blks-3 .txt strong{
  display: inline-block;
  background-color: #f5dad9;
  color: #D82C2A;
  font-size: 3.0rem;
  line-height: 1.2;
}
@media screen and (max-width: 1280px) {
  .top-sec-8 .blks-3 .txt .sponly{
    display: block !important;
  }
}
@media screen and (max-width: 768px) {
  .top-sec-8 {
    padding: 0 2.13vw 17.07vw;
  }
  .top-sec-8__inr {
    margin-bottom: calc(100vw*(80/860));
    padding: 8.53vw 4.27vw;
  }
  .top-sec-8 .blks-1 {
    margin-bottom: 7.47vw;
  }
  .top-sec-8 .blks-1 .h {
    font-size: 6.93vw;
    padding-bottom: 3.73vw;
  }
  .top-sec-8 .blks-1 .h::after {
    width: 7.47vw;
    height: 1.07vw;
  }
  .top-sec-8 .blks-2 .grp {
    display: block;
    margin-bottom: 6.4vw;
  }
  .top-sec-8 .blks-2 .grp__lt {
    margin-bottom: 6.4vw;
  }
  .top-sec-8 .blks-2 .grp-2 {
    margin-bottom: 6.4vw;
  }
  .top-sec-8 .blks-2 .box {
    padding: 2.67vw;
  }
  .top-sec-8 .blks-2 .box._t2 {
    padding-bottom: 4.27vw;
  }
  .top-sec-8 .blks-2 .box._t3 {
    padding-bottom: 4.27vw;
  }
  .top-sec-8 .blks-2 .box._t3::after {
    right: -5.33vw;
    bottom: -3.2vw;
    width: 35.8vw;
    height: 35.8vw;
  }
  .top-sec-8 .blks-2 .box__h {
    font-size: 5.33vw;
    padding: 1.07vw 4.27vw;
    margin-bottom: 4.27vw;
  }
  .top-sec-8 .blks-2 .list {
    display: block;
  }
  .top-sec-8 .blks-2 .list__item {
    min-height: 12.8vw;
  }
  .top-sec-8 .blks-2 .list__item__num {
    width: 10.67vw;
    height: 11.09vw;
    top: -1.71vw;
    margin: 0 3.41vw 0 0.64vw;
  }
  .top-sec-8 .blks-2 .list__item__num__txt {
    font-size: 4.69vw;
  }
  .top-sec-8 .blks-2 .list__item__num__txt-2 {
    font-size: 2.35vw;
  }
  .top-sec-8 .blks-2 .list__item__num-2 {
    width: 8.53vw;
    height: 8.53vw;
    margin: 0 4.48vw 0 1.71vw;
  }
  .top-sec-8 .blks-2 .list__item__num-2__txt {
    font-size: 4.69vw;
  }
  .top-sec-8 .blks-2 .list__item__num-2__txt-2 {
    font-size: 2.35vw;
  }
  .top-sec-8 .blks-2 .list__item__txt {
    font-size: 5.33vw;
  }
  .top-sec-8 .blks-2 .list__item__txt-2 {
    font-size: 4.27vw;
  }
  .top-sec-8 .blks-2 .list__item__txt-2._t2 {
    padding-right: 21.33vw;
  }
  .top-sec-8 .blks-3{
    margin-bottom: calc(100vw*(70/860));
    padding-bottom: calc(100vw*(70/860));
  }
  .top-sec-8 .blks-3__inr{
    width: max-content;
    padding-block: calc(100vw*(70/860));
    padding-inline: calc(100vw*(45/860));
  }
  .top-sec-8 .blks-3__inr .h{
    margin-bottom: calc(100vw*(86/860));
    font-size: calc(100vw*(36/860));
    font-weight: 700;
    line-height: calc(62/36);
    text-align: center;
  }
  .top-sec-8 .blks-3__inr .h strong{
    font-size: calc(100vw*(42/860));
  }
  .top-sec-8 .blks-3__inr .data__img{
    width: calc(100vw*(650/860));
  }
  .top-sec-8 .blks-3 .txt:before{
    width: calc(100vw*(344/860));
    height: calc(100vw*(104/860));
    margin-bottom: calc(100vw*(20/860)); 
  }
  .top-sec-8 .blks-3 .txt{
    margin-top: calc(100vw*(40/860)); 
    font-size: calc(100vw*(36/860));
    line-height: calc(62/36);
  }
  .top-sec-8 .blks-3 .txt strong{
    font-size: calc(100vw*(56/860));
  }
  .top-sec-8 .blks-3 .txt img{
    width: calc(100vw*(318/860));
  }
}

/* top-sec-9 */
.top-sec-9 {
  padding: 88px 0;
}
.top-sec-9__inr {
  max-width: 1040px;
  padding: 0 40px;
  box-sizing: border-box;
  width: 100%;
  margin: 0 auto;
}
.top-sec-9 .blks-1 {
  margin-bottom: 48px;
}
.top-sec-9 .blks-2 .qa + .qa {
  margin-top: 24px;
}
.top-sec-9 .blks-2 .qa__q {
  background: #B91816;
  color: #fff;
  font-size: 1.125rem;
  line-height: 1.45;
  font-weight: 500;
  padding: 15px 64px 15px 61px;
  position: relative;
  cursor: pointer;
}
.top-sec-9 .blks-2 .qa__q.is-active .qa__q__arr {
  -webkit-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
          transform: rotate(-90deg);
}
.top-sec-9 .blks-2 .qa__q::before {
  position: absolute;
  content: "";
  display: block;
  top: 16px;
  left: 27px;
  width: 23px;
  height: 28px;
  background: url("../img/qa01.png") no-repeat 0 0/100% 100%;
}
.top-sec-9 .blks-2 .qa__q__arr {
  width: 24px;
  height: 24px;
  background: #fff;
  border-radius: 100%;
  position: absolute;
  right: 24px;
  top: 0;
  bottom: 0;
  margin: auto 0;
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg);
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.top-sec-9 .blks-2 .qa__q__arr::after {
  position: absolute;
  content: "";
  display: block;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  background: #B91816;
  width: 10px;
  height: 16px;
  -webkit-mask: url("../img/arr01.svg") no-repeat center center/contain;
          mask: url("../img/arr01.svg") no-repeat center center/contain;
}
.top-sec-9 .blks-2 .qa__a {
  margin: 16px 0 32px;
  font-size: 1rem;
  line-height: 2;
  font-weight: 500;
  display: none;
}
.top-sec-9 .blks-2 .qa__a__inr {
  background: #F9F8F8;
  padding: 24px 24px 28px 61px;
  position: relative;
}
.top-sec-9 .blks-2 .qa__a__inr::before, .top-sec-9 .blks-2 .qa__a__inr::after {
  position: absolute;
  content: "";
  display: block;
}
.top-sec-9 .blks-2 .qa__a__inr::before {
  top: 23px;
  left: 24px;
  width: 23px;
  height: 28px;
  background: url("../img/qa02.png") no-repeat 0 0/100% 100%;
}
.top-sec-9 .blks-2 .qa__a__inr::after {
  right: 8px;
  bottom: 8px;
  width: 18px;
  height: 18px;
  background: url("../img/deco04.svg") no-repeat 0 0/100% 100%;
}
.top-sec-9 .blks-2 .qa__a__inr a{
  text-decoration-line: underline;
  text-underline-offset: 0.4em;
}
@media screen and (max-width: 768px) {
  .top-sec-9 {
    padding: 17.07vw 0;
  }
  .top-sec-9__inr {
    padding: 0 6.93vw;
  }
  .top-sec-9 .blks-1 {
    margin-bottom: 6.4vw;
  }
  .top-sec-9 .blks-2 .qa + .qa {
    margin-top: 4.27vw;
  }
  .top-sec-9 .blks-2 .qa__q {
    font-size: 4vw;
    padding: 3.2vw 10.67vw 3.2vw 10.67vw;
  }
  .top-sec-9 .blks-2 .qa__q::before {
    top: 3.41vw;
    left: 4.27vw;
    width: 4.91vw;
    height: 4.91vw;
  }
  .top-sec-9 .blks-2 .qa__q__arr {
    width: 4.27vw;
    height: 4.27vw;
    right: 4.27vw;
  }
  .top-sec-9 .blks-2 .qa__q__arr::after {
    width: 2.13vw;
    height: 3.2vw;
  }
  .top-sec-9 .blks-2 .qa__a {
    margin: 3.2vw 0 6.4vw;
    font-size: 4vw;
    line-height: 1.5;
  }
  .top-sec-9 .blks-2 .qa__a__inr {
    padding: 4.27vw 4.27vw 5.33vw 10.67vw;
  }
  .top-sec-9 .blks-2 .qa__a__inr::before {
    top: 3.73vw;
    left: 3.73vw;
    width: 4.91vw;
    height: 5.97vw;
  }
  .top-sec-9 .blks-2 .qa__a__inr::after {
    right: 1.6vw;
    bottom: 1.6vw;
    width: 4.27vw;
    height: 4.27vw;
  }
}

/* top-sec-10 */
.top-sec-10 {
  background: #FFEBEB;
  position: relative;
  padding: 80px 0 88px;
}
.top-sec-10__inr {
  max-width: 1440px;
  width: 100%;
  box-sizing: border-box;
  padding: 0 40px;
  margin: 0 auto;
}
.top-sec-10::before {
  position: absolute;
  content: "";
  display: block;
  top: -20px;
  right: 50%;
  left: 0;
  height: 80px;
  background: #D82C2A;
  -webkit-clip-path: polygon(0 98%, 0 0, 100% 0);
          clip-path: polygon(0 98%, 0 0, 100% 0);
}
.top-sec-10 .blks-1 .h {
  text-align: center;
  font-size: 2.125rem;
  line-height: 1.42;
  font-weight: 700;
  margin-bottom: 16px;
}
.top-sec-10 .blks-1 .h em {
  color: #D82C2A;
}
.top-sec-10 .blks-1 .h em span {
  position: relative;
}
.top-sec-10 .blks-1 .h em span::before {
  position: absolute;
  content: "";
  display: block;
  top: -2px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 5px;
  height: 5px;
  background: #D82C2A;
  border-radius: 100%;
}
.top-sec-10 .blks-1 .img {
  width: 152px;
  margin: 0 auto 24px;
}
.top-sec-10 .blks-1 .img img {
  width: 100%;
  display: block;
}
.top-sec-10 .blks-1 .txt {
  text-align: center;
  font-size: 1rem;
  line-height: 2;
  margin-bottom: 32px;
}
@media screen and (max-width: 768px) {
  .top-sec-10 {
    padding: 14.93vw 0 17.07vw;
  }
  .top-sec-10__inr {
    padding: 0 6.4vw;
  }
  .top-sec-10::before {
    top: -5.33vw;
    right: 40%;
    height: 10.67vw;
  }
  .top-sec-10 .blks-1 .h {
    font-size: 6.4vw;
    line-height: 1.75;
    margin-bottom: 6.4vw;
  }
  .top-sec-10 .blks-1 .h em span::before {
    top: -0.53vw;
    width: 1.33vw;
    height: 1.33vw;
  }
  .top-sec-10 .blks-1 .img {
    width: 32.43vw;
    margin: 0 auto 5.33vw;
  }
  .top-sec-10 .blks-1 .txt {
    font-size: 4vw;
    margin-bottom: 6.4vw;
  }
  .top-sec-10 .blks-1 .btn {
    display: block;
    margin: 0 4.27vw;
  }
}

.float{
  display: none;
}
@media screen and (max-width: 768px) {
  .float{
    display: flex;
    justify-content: center;
    position: fixed;
    bottom: 10vw;
    left: 0;
    z-index: 100;
    width: 100%;
    transform: translateY(150%);
    transition: 0.6s ease;
  }
  .float.active{
    transform: translateY(0%);
  }
}