@charset "UTF-8";
/* ==========================================================================
  page-<slug>.scss
  - このページ固有のスタイルを記述（<slug> を置換）
  - 事前に _base.scss をビルドへ読み込んでおくこと（@use or @import）
  ========================================================================== */
@media screen and (min-width: 768px) {
  .main-contents {
    margin-top: 75px;
    position: relative;
    background: linear-gradient(259deg, #061D42 0%, #000 100%);
    overflow: hidden;
  }
  .main-contents * {
    box-sizing: border-box;
    color: #fff;
    font-family: "Noto Sans JP", sans-serif;
  }
  .main-contents br.tab, .main-contents br.sp {
    display: none;
  }
  .main-contents .section-inner {
    margin-inline: auto;
    width: 95%;
    max-width: 1024px;
  }
  .main-contents .section-ttl {
    position: relative;
    text-align: center;
  }
  .main-contents .section-ttl::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    translate: -50% 0;
    width: 13px;
    height: 13px;
    border-radius: 50%;
    background-color: #3243CF;
  }
  .main-contents .section-ttl__sub {
    padding-top: 24px;
    font-family: "Outfit", sans-serif;
    font-weight: 600;
    font-size: 12px;
    line-height: 1;
    letter-spacing: 0.1em;
  }
  .main-contents .section-ttl__main {
    margin-top: 12px;
    font-weight: 600;
    font-size: 18px;
    line-height: 1.5;
    letter-spacing: 0.1em;
  }
  .main-contents .disp-item {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.7s cubic-bezier(0.4, 0, 0.2, 1), transform 0.7s cubic-bezier(0.4, 0, 0.2, 1);
  }
  .main-contents .disp-item.is-fadein {
    opacity: 1;
    transform: translateY(0);
  }
  .main-contents .bg-glass {
    border-radius: 16px;
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.25);
    backdrop-filter: blur(12.5px);
  }
  .main-contents .btnbox {
    display: grid;
    row-gap: 20px;
  }
  .main-contents .btnbox__text {
    font-weight: 500;
    font-size: 18px;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center;
  }
  .main-contents .btnbox__btn {
    display: inline-block;
    margin-inline: auto;
    padding-block: 22px;
    width: 425px;
    border-radius: 100px;
    background-color: #3243CF;
    font-weight: 500;
    font-size: 18px;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center;
    transition: opacity 0.3s ease;
  }
  .main-contents .btnbox__btn:hover {
    opacity: 0.7;
  }
  .main-contents .cards {
    display: grid;
    column-gap: 14px;
    grid-template-columns: repeat(3, 1fr);
  }
  .main-contents .card {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 2;
    position: relative;
    padding: 24px;
    background: rgba(29, 54, 255, 0.55);
  }
  .main-contents .card__num {
    position: absolute;
    top: -26px;
    right: 6.02%;
    width: 42px;
    height: 55px;
  }
  .main-contents .card__num img {
    width: auto;
    height: 100%;
  }
  .main-contents .card__imgbox {
    width: 100%;
  }
  .main-contents .card__imgbox img {
    width: 100%;
    height: auto;
  }
  .main-contents .card__ttl {
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid #2858A6;
    font-weight: 500;
    font-size: 18px;
    line-height: 1.5;
    letter-spacing: 0;
  }
  .main-contents .card__list {
    display: grid;
    align-items: flex-start;
    row-gap: 22px;
  }
  .main-contents .card__item {
    position: relative;
    padding-left: 21px;
    font-weight: 400;
    font-size: 15px;
    line-height: 1.5;
    letter-spacing: 0;
  }
  .main-contents .card__item::before {
    content: "";
    position: absolute;
    top: 0.3em;
    left: 0;
    width: 15px;
    height: 15px;
    border-radius: 50%;
    border: 1px solid #fff;
  }
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .main-contents {
    position: relative;
  }
  .main-contents br.tab {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .main-contents {
    position: relative;
    background: linear-gradient(259deg, #061D42 0%, #000 100%);
    margin-top: 50px;
  }
  .main-contents * {
    box-sizing: border-box;
    color: #fff;
    font-family: "Noto Sans JP", sans-serif;
  }
  .main-contents br.tab, .main-contents br.pc {
    display: none;
  }
  .main-contents img {
    width: 100%;
    height: auto;
  }
  .main-contents .disp-item {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.7s cubic-bezier(0.4, 0, 0.2, 1), transform 0.7s cubic-bezier(0.4, 0, 0.2, 1);
  }
  .main-contents .disp-item.is-fadein {
    opacity: 1;
    transform: translateY(0);
  }
  .main-contents .section-inner {
    margin-inline: auto;
    width: 87.6923076923vw;
  }
  .main-contents .section-ttl {
    position: relative;
    text-align: center;
  }
  .main-contents .section-ttl::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    translate: -50% 0;
    width: 3.3333333333vw;
    height: 3.3333333333vw;
    border-radius: 50%;
    background-color: #3243CF;
  }
  .main-contents .section-ttl__sub {
    padding-top: 6.1538461538vw;
    font-family: "Outfit", sans-serif;
    font-weight: 600;
    font-size: 3.0769230769vw;
    line-height: 1;
    letter-spacing: 0.1em;
  }
  .main-contents .section-ttl__main {
    margin-top: 3.0769230769vw;
    font-weight: 600;
    font-size: 4.6153846154vw;
    line-height: 1.5;
    letter-spacing: 0.1em;
  }
  .main-contents .bg-glass {
    border-radius: 4.1025641026vw;
    box-shadow: 0 0 5.1282051282vw 0 rgba(0, 0, 0, 0.25);
    backdrop-filter: blur(3.2051282051vw);
  }
  .main-contents .btnbox {
    display: grid;
    row-gap: 5.1282051282vw;
  }
  .main-contents .btnbox__text {
    font-weight: 500;
    font-size: 4.6153846154vw;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center;
  }
  .main-contents .btnbox__btn {
    display: inline-block;
    margin-inline: auto;
    padding-block: 5.641025641vw;
    width: 87.6923076923vw;
    border-radius: 25.641025641vw;
    background-color: #3243CF;
    font-weight: 500;
    font-size: 4.6153846154vw;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center;
  }
  .main-contents .cards {
    display: grid;
    row-gap: 11.2820512821vw;
  }
  .main-contents .card {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 2;
    row-gap: 0;
    position: relative;
    padding: 6.1538461538vw;
    background: rgba(29, 54, 255, 0.55);
  }
  .main-contents .card__num {
    position: absolute;
    top: calc(-1 * 6.6666666667vw);
    right: 5.1282051282vw;
    width: 10.7692307692vw;
    height: 14.1025641026vw;
  }
  .main-contents .card__num img {
    width: auto;
    height: 100%;
  }
  .main-contents .card__imgbox {
    width: 100%;
  }
  .main-contents .card__imgbox img {
    width: 100%;
    height: auto;
  }
  .main-contents .card__ttl {
    padding-bottom: 5.1282051282vw;
    margin-bottom: 5.1282051282vw;
    border-bottom: 0.2564102564vw solid #2858A6;
    font-weight: 500;
    font-size: 4.6153846154vw;
    line-height: 1.5;
    letter-spacing: 0;
  }
  .main-contents .card__list {
    display: grid;
    align-items: flex-start;
    row-gap: 5.1282051282vw;
  }
  .main-contents .card__item {
    position: relative;
    padding-left: 5.3846153846vw;
    font-weight: 400;
    font-size: 3.8461538462vw;
    line-height: 1.5;
    letter-spacing: 0;
    text-align: justify;
  }
  .main-contents .card__item::before {
    content: "";
    position: absolute;
    top: 0.3em;
    left: 0;
    width: 3.8461538462vw;
    height: 3.8461538462vw;
    border-radius: 50%;
    border: 0.2564102564vw solid #fff;
  }
}
/* ==========================================================================
  page-<slug>.scss
  - このページ固有のスタイルを記述（<slug> を置換）
  - 事前に _base.scss をビルドへ読み込んでおくこと（@use or @import）
  ========================================================================== */
.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 15;
  -webkit-box-shadow: 0 10px 10px -3px rgba(0, 0, 0, 0.04);
  box-shadow: 0 10px 10px -3px rgba(0, 0, 0, 0.04);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  /* OMヘッダー */
}

.header .hdT {
  background-color: #3143cf;
  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;
  padding: 0 2vw;
  height: 75px;
}

.header .hdT .headLogo {
  padding-left: 10px;
}

.header .hdT .headLogo img,
.header .hdT .headLogo svg {
  height: 24px;
  width: auto;
}

@media (max-width: 1300px) {
  .header .hdT .headLogo img,
  .header .hdT .headLogo svg {
    height: 1.8461538462vw;
  }
}
.header .hdT .headLogo span {
  font-size: 15px;
  font-weight: 600;
}

.header .hdT .hdTC {
  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;
  padding: 0 10px;
}

@media (max-width: 1440px) {
  .header .hdT .hdTC {
    padding: 0 0.6944444444vw;
  }
}
.header .hdT .hdTC dt {
  color: #FFF;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 500;
}

@media (max-width: 1440px) {
  .header .hdT .hdTC dt {
    font-size: 1.0416666667vw;
  }
}
.header .hdT .hdTC dt h1 {
  font-weight: 500;
}

.header .hdT .hdTC dd {
  padding-left: 20px;
}

@media (max-width: 1440px) {
  .header .hdT .hdTC dd {
    padding-left: 1.0416666667vw;
  }
}
.header .hdT .hdTC dd a {
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.header .hdT .hdTC dd a:hover {
  opacity: 0.8;
}

.header .hdT .hdTC dd a img {
  width: auto;
}

.header .hdT .hdTC dd a img.logo01 {
  height: 53px;
}

@media (max-width: 1440px) {
  .header .hdT .hdTC dd a img.logo01 {
    height: 3.6805555556vw;
  }
}
.header .hdT .hdTC dd a img.logo02 {
  height: 18px;
}

@media (max-width: 1440px) {
  .header .hdT .hdTC dd a img.logo02 {
    height: 1.25vw;
  }
}
.header .hdT .hdTC dd a img.logo03 {
  height: 18px;
}

@media (max-width: 1440px) {
  .header .hdT .hdTC dd a img.logo03 {
    height: 1.25vw;
  }
}
.header .hdT .hdTC dd a img.logo04 {
  height: 23px;
}

@media (max-width: 1440px) {
  .header .hdT .hdTC dd a img.logo04 {
    height: 1.5972222222vw;
  }
}
.header .hdT .hdTC dd a img.logo05 {
  height: 28px;
}

@media (max-width: 1440px) {
  .header .hdT .hdTC dd a img.logo05 {
    height: 1.9444444444vw;
  }
}
.header .hdT .hdTR {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.header .hdT .hdTR .contact {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 600;
}

@media (max-width: 1300px) {
  .header .hdT .hdTR .contact {
    font-size: 1.0769230769vw;
  }
}
.header .hdT .hdTR .contact a {
  border: 1px solid #FFF;
  border-radius: 30px;
  color: #FFF;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 42px;
  min-width: 150px;
  text-decoration: none;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  font-size: 14px;
}

@media (max-width: 1300px) {
  .header .hdT .hdTR .contact a {
    height: 3.2307692308vw;
    min-width: 11.5384615385vw;
  }
}
.header .hdT .hdTR .contact a:hover {
  opacity: 0.8;
}

.header .hdT .hdTR .contact a img {
  margin-right: 10px;
}

@media (max-width: 1300px) {
  .header .hdT .hdTR .contact a img {
    width: 2.3076923077vw;
  }
}
.header .hdT .hdTR .tel {
  color: #FFF;
  font-size: 22px;
  font-weight: 600;
  letter-spacing: 0.06em;
  padding-left: 20px;
  white-space: nowrap;
}

@media (max-width: 1300px) {
  .header .hdT .hdTR .tel {
    padding-left: 1.5384615385vw;
    font-size: 1.6923076923vw;
  }
}
.header .hdT .hdTR .tel span {
  display: block;
  font-size: 12px;
  padding-top: 5px;
}

.header .hdT .contactSp {
  display: none;
}

.header .hdT .serviceTop {
  display: none;
}

.header .hdB {
  background-color: #FFF;
  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;
  position: relative;
  padding: 0 2vw;
  height: 97px;
}

.header .hdB .hdBTitle {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 600;
  padding-left: 10px;
}

@media (max-width: 1440px) {
  .header .hdB .hdBTitle {
    font-size: min(1.25vw, 18rem);
  }
}
.header .hdB .hdBTitle a {
  color: #333;
  text-decoration: none;
}

.header .hdB .hdBC {
  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-left: auto;
}

.header .hdB .hdBC > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.header .hdB .hdBC > ul > li {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1;
  padding: 0 15px;
  width: auto !important;
}

@media (max-width: 1440px) {
  .header .hdB .hdBC > ul > li {
    font-size: min(1.0416666667vw, 12rem);
  }
}
.header .hdB .hdBC > ul > li.current-item {
  font-weight: bold;
}

.header .hdB .hdBC > ul > li.current-item a,
.header .hdB .hdBC > ul > li.current-item .notA {
  color: #3143cf;
}

.header .hdB .hdBC > ul > li.more {
  padding-right: 0;
}

.header .hdB .hdBC > ul > li.more .notA {
  position: relative;
  padding-right: 20px;
}

.header .hdB .hdBC > ul > li.more .notA:after {
  position: absolute;
  top: -3px;
  bottom: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  right: 0;
  width: 10px;
  height: 10px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.header .hdB .hdBC > ul > li.more:hover .notA {
  color: #3143cf !important;
}

.header .hdB .hdBC > ul > li.more:hover:after {
  border-top: 1px solid #3143cf;
  border-right: 1px solid #3143cf;
}

.header .hdB .hdBC > ul > li.more .notA {
  margin-right: 15px;
}

.header .hdB .hdBC > ul > li > a,
.header .hdB .hdBC > ul > li .notA {
  color: #333;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 97px;
  text-decoration: none;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  z-index: 1;
  width: auto !important;
}

.header .hdB .hdBC > ul > li .moreUl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  position: absolute;
  top: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  opacity: 0;
  visibility: hidden;
  padding: 0;
  width: 970px;
  background: #3143cf;
}

.header .hdB .hdBC > ul > li .moreUl li {
  width: 33.3333333333%;
  background: #fff;
  border-top: 1px solid #616FDD;
  border-right: 1px solid #616FDD;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.header .hdB .hdBC > ul > li .moreUl li:nth-child(1),
.header .hdB .hdBC > ul > li .moreUl li:nth-child(2) {
  width: 50%;
  border-top: none;
}

.header .hdB .hdBC > ul > li .moreUl li:nth-child(2),
.header .hdB .hdBC > ul > li .moreUl li:nth-child(5) {
  border-right: none;
}

.header .hdB .hdBC > ul > li .moreUl li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 30px 20px 20px;
  background: #3143cf;
  color: #fff;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.header .hdB .hdBC > ul > li .moreUl li a:hover {
  opacity: 0.8;
}

.header .hdB .hdBC > ul > li .moreUl li .logo {
  font-size: 0;
  text-align: center;
}

.header .hdB .hdBC > ul > li .moreUl li .logo small {
  display: inline-block;
  padding: 1px 10px;
  background: #fff;
  border-radius: 44px;
  color: #3143cf;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 700;
  text-align: center;
}

.header .hdB .hdBC > ul > li .moreUl li .logo span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  min-height: 84px;
  margin-top: 13px;
}

.header .hdB .hdBC > ul > li .moreUl li .logo img {
  display: block;
  margin: 0 auto;
}

.header .hdB .hdBC > ul > li .moreUl li:nth-child(1) .logo img {
  width: auto;
  height: 22px;
}

.header .hdB .hdBC > ul > li .moreUl li:nth-child(2) .logo img {
  width: auto;
  height: 22px;
}

.header .hdB .hdBC > ul > li .moreUl li:nth-child(3) .logo img {
  width: auto;
  height: 22px;
}

.header .hdB .hdBC > ul > li .moreUl li:nth-child(4) .logo img {
  width: 113px;
}

.header .hdB .hdBC > ul > li .moreUl li:nth-child(5) .logo img {
  width: 175px;
}

.header .hdB .hdBC > ul > li .moreUl li:nth-child(6) .logo img {
  width: 127px;
}

.header .hdB .hdBC > ul > li:hover .moreUl {
  opacity: 1;
  visibility: visible;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  z-index: 10;
  width: 970px;
}

.header .hdB .hdBC #slide-line {
  position: absolute;
  bottom: 0;
  height: 5px;
  background-color: #3143cf;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

.header .hdB .hdBR {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  z-index: 2;
  margin-left: 40px;
}

.header .hdB .hdBR .contact {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
}

.header .hdB .hdBR .contact a {
  background-color: #EED84A;
  border: 1px solid #FFF;
  border-radius: 30px;
  color: #333;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 50px;
  min-width: 134px;
  text-decoration: none;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.header .hdB .hdBR .contact a:hover {
  background-color: #3143cf;
  color: #fff;
}

.header .hdB .hdBR .contact.type2 {
  display: none;
}

@media (max-width: 1300px) {
  .header .hdT {
    padding: 0 25px;
  }
  .header .hdT .headLogo {
    padding-left: 10px;
  }
  .header .hdB {
    padding: 0 25px;
  }
  .header .hdB .hdBC > ul > li {
    padding: 0 15px;
  }
}
.header.headerOM {
  -webkit-box-shadow: none;
  box-shadow: none;
}

.header.headerOM .hdB {
  height: 75px;
}

.header.headerOM .hdBR .tel {
  display: none;
  margin-right: 20px;
  color: #3143cf;
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: 700;
  text-align: center;
  letter-spacing: 1px;
  white-space: nowrap;
}

.header.headerOM .hdBR .tel span {
  display: block;
  margin-top: 5px;
  font-size: 12px;
  font-size: 1.2rem;
}

.header.headerOM .hdBR .contact + .contact {
  margin-left: 10px;
}

.header.headerOM .hdBR .contact.type2 {
  display: none;
}

.header.headerOM .hdBR .contact.type2 a {
  background-color: #3143cf;
  border: 2px solid #3143cf;
  color: #fff;
}

@media (hover: hover) and (pointer: fine) {
  .header.headerOM .hdBR .contact.type2 a:hover {
    background-color: #fff;
    color: #3143cf;
  }
}
.headerOP .hdB {
  height: 97px;
}

.headerOP .hdB .hdBTitle {
  padding-left: 10px;
  width: 15%;
}

.headerOP .hdB .hdBTitle a {
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.headerOP .hdB .hdBTitle a:hover {
  opacity: 0.8;
}

.headerOP .hdB .hdBTitle img,
.headerOP .hdB .hdBTitle svg {
  height: 26px;
  width: 149px;
  max-width: auto;
  max-width: none;
}

.headerOP .hdB .hdBC {
  position: relative;
}

.headerOP .hdB .hdBC > ul > li {
  padding: 0 15px;
}

@media (max-width: 1460px) {
  .headerOP .hdB .hdBC > ul > li {
    padding: 0 12px;
  }
}
.headerOP .hdB .hdBR {
  margin-left: 25px;
}

.headerOP .hdB .hdBR .contact {
  font-weight: bold;
}

.headerOP .hdB .hdBR .contact a {
  background-color: #EED84A;
}

.headerOP .hdB .hdBR .contact.type2 {
  display: block;
}

@media (max-width: 1340px) {
  .headerOP .hdT {
    padding: 0 25px;
  }
  .headerOP .hdT .headLogo {
    padding-left: 10px;
    width: 23%;
  }
  .headerOP .hdT .hdTCNav > ul > li {
    font-size: 13px;
    font-size: 1.3rem;
    padding: 0 10px;
  }
  .headerOP .hdT .hdTR {
    margin-left: 2.9850746269vw;
  }
  .headerOP .hdT .hdTR .tel {
    font-size: 18px;
    font-size: 1.8rem;
    padding-left: 15px;
  }
  .headerOP .hdB {
    padding: 0 25px;
  }
  .headerOP .hdB .hdBTitle {
    width: 15%;
  }
  .headerOP .hdB .hdBC > ul > li {
    padding: 0 10px;
  }
}
.headerOM .hdB .hdBTitle img,
.headerOM .hdB .hdBTitle svg {
  height: 50px;
  width: 214px;
}

.headerOP .hdB .hdBR .contact {
  margin-left: 10px;
}

#header.scroll {
  top: -75px;
}

#header.scroll.headerOM {
  top: 0;
}

/*
font-family: $font-gothic;
300 400 600 700
*/
/*
font-family: $font-yugothic;
300 400 600 700
*/
/*
font-family: $font-en;
400 500 600 700
*/
/* font-family: $font-en; */
/*@include font-gothic();*/
/*@include font-min();*/
/*@include font-en();*/
/*@include incImg100();*/
/*@include incSmooth();*/
/*@include dropshadow;*/
/*@include boxshadow;*/
/*@include fs();*/
/*@include btm();*/
/* サービス共通ヘッダー */
.headerServiceCommon .hdT {
  position: relative;
}

.headerServiceCommon .hdT .headLogo a {
  color: #FFF;
  display: block;
  font-size: 15px;
  font-weight: 500;
  line-height: 1;
  text-decoration: none;
  text-align: left;
}

.headerServiceCommon .hdT .headLogo img,
.headerServiceCommon .hdT .headLogo svg {
  margin-right: 20px;
  vertical-align: -6px;
}

.headerServiceCommon .hdT .hdTCNav {
  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-left: auto;
}

.headerServiceCommon .hdT .hdTCNav > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.headerServiceCommon .hdT .hdTCNav > ul > li {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1;
  padding: 0 12px;
  width: auto !important;
}

.headerServiceCommon .hdT .hdTCNav > ul > li.current-item2 {
  font-weight: bold;
}

.headerServiceCommon .hdT .hdTCNav > ul > li.current-item2 a {
  color: #FFF;
}

.headerServiceCommon .hdT .hdTCNav > ul > li.more {
  padding: 0 16px 0 12px;
}

.headerServiceCommon .hdT .hdTCNav > ul > li.more:hover .notA {
  color: #FFF !important;
}

.headerServiceCommon .hdT .hdTCNav > ul > li.more .notA {
  position: relative;
  padding-right: 15px;
}

.headerServiceCommon .hdT .hdTCNav > ul > li.more .notA:after {
  position: absolute;
  top: -3px;
  bottom: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  right: 0;
  width: 10px;
  height: 10px;
  border-top: 1px solid #FFF;
  border-right: 1px solid #FFF;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.headerServiceCommon .hdT .hdTCNav > ul > li > a,
.headerServiceCommon .hdT .hdTCNav > ul > li .notA {
  color: #FFF;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 75px;
  text-decoration: none;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  position: relative;
  z-index: 1;
  width: auto !important;
}

.headerServiceCommon .hdT .hdTCNav > ul > li > a:hover,
.headerServiceCommon .hdT .hdTCNav > ul > li .notA:hover {
  color: #FFF;
}

.headerServiceCommon .hdT .hdTCNav > ul > li .moreUl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  position: absolute;
  top: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  opacity: 0;
  visibility: hidden;
  padding: 0;
  width: 970px;
  background: #3143cf;
}

.headerServiceCommon .hdT .hdTCNav > ul > li .moreUl li {
  width: 33.3333333333%;
  background: #fff;
  border-top: 1px solid #616FDD;
  border-right: 1px solid #616FDD;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.headerServiceCommon .hdT .hdTCNav > ul > li .moreUl li:nth-child(1),
.headerServiceCommon .hdT .hdTCNav > ul > li .moreUl li:nth-child(2) {
  border-top: none;
}

.headerServiceCommon .hdT .hdTCNav > ul > li .moreUl li:nth-child(2),
.headerServiceCommon .hdT .hdTCNav > ul > li .moreUl li:nth-child(5) {
  border-right: none;
}

.headerServiceCommon .hdT .hdTCNav > ul > li .moreUl li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 30px 20px 20px;
  background: #3143cf;
  color: #fff;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.headerServiceCommon .hdT .hdTCNav > ul > li .moreUl li a:hover {
  opacity: 0.8;
}

.headerServiceCommon .hdT .hdTCNav > ul > li .moreUl li .logo {
  font-size: 0;
  text-align: center;
}

.headerServiceCommon .hdT .hdTCNav > ul > li .moreUl li .logo small {
  display: inline-block;
  padding: 1px 10px;
  background: #fff;
  border-radius: 44px;
  color: #3143cf;
  font-size: 12px;
  font-weight: 700;
  text-align: center;
}

.headerServiceCommon .hdT .hdTCNav > ul > li .moreUl li .logo span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  min-height: 84px;
  margin-top: 13px;
}

.headerServiceCommon .hdT .hdTCNav > ul > li .moreUl li .logo img {
  display: block;
  margin: 0 auto;
}

.headerServiceCommon .hdT .hdTCNav > ul > li .moreUl li:nth-child(1) {
  width: 50%;
}

.headerServiceCommon .hdT .hdTCNav > ul > li .moreUl li:nth-child(1) .logo img {
  width: auto;
  height: 22px;
}

.headerServiceCommon .hdT .hdTCNav > ul > li .moreUl li:nth-child(2) {
  width: 50%;
}

.headerServiceCommon .hdT .hdTCNav > ul > li .moreUl li:nth-child(2) .logo img {
  width: auto;
  height: 22px;
}

.headerServiceCommon .hdT .hdTCNav > ul > li .moreUl li:nth-child(3) .logo img {
  width: auto;
  height: 22px;
}

.headerServiceCommon .hdT .hdTCNav > ul > li .moreUl li:nth-child(4) .logo img {
  width: 113px;
}

.headerServiceCommon .hdT .hdTCNav > ul > li .moreUl li:nth-child(5) .logo img {
  width: 175px;
}

.headerServiceCommon .hdT .hdTCNav > ul > li .moreUl li:nth-child(6) .logo img {
  width: 127px;
}

.headerServiceCommon .hdT .hdTCNav > ul > li:hover .moreUl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  opacity: 1;
  visibility: visible;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  z-index: 10;
}

.headerServiceCommon .hdT .hdTCNav #slide-line2 {
  position: absolute;
  bottom: 0;
  height: 5px;
  background-color: #FFF;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

.headerServiceCommon .hdT .hdTCNav .spLogo {
  display: none;
}

.headerServiceCommon .hdT .hdTR {
  margin-left: 40px;
}

@media only screen and (max-width: 768px) {
  .headerServiceCommon .hdT {
    position: relative;
  }
  .headerServiceCommon .hdT .headLogo {
    width: 160px;
  }
  .headerServiceCommon .hdT .headLogo span {
    font-size: 10px;
    letter-spacing: 0;
    margin-left: 10px;
  }
  .headerServiceCommon .hdT .headLogo img,
  .headerServiceCommon .hdT .headLogo svg {
    vertical-align: -1px;
    margin-right: 0;
  }
  .headerServiceCommon .hdT .hdTCNav {
    display: none;
  }
}
/* Responsive Start */
@media only screen and (max-width: 768px) {
  .header {
    height: 50px;
    z-index: 15;
    width: 100%;
    -webkit-box-shadow: 0 6px 10px -3px rgba(0, 0, 0, 0.05);
    box-shadow: 0 6px 10px -3px rgba(0, 0, 0, 0.05);
    min-width: auto;
    /* OMヘッダー */
  }
  .header .hdT {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 15px;
    height: 50px;
  }
  .header .hdT .headLogo {
    position: absolute;
    top: 50%;
    left: 15px;
    margin-top: -8px;
    line-height: 1;
    padding-left: 4px;
    width: 160px;
  }
  .header .hdT .headLogo img, .header .hdT .headLogo svg {
    height: 12px;
    width: 51px;
  }
  .header .hdT .hdTC {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-line-pack: center;
    align-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0 0 0 60px;
    height: 50px;
    text-align: center;
    width: calc(100% - 90px);
  }
  .header .hdT .hdTC dt {
    font-size: min(2.5vw, 10px);
    font-weight: 500;
    padding-bottom: 0;
    width: 100%;
  }
  .header .hdT .hdTC dd {
    line-height: 0;
    padding: 0;
  }
  .header .hdT .hdTC dd + dd {
    padding-left: min(2.5vw, 10px);
  }
  .header .hdT .hdTC dd a img {
    width: auto;
  }
  .header .hdT .hdTC dd a img.logo01 {
    height: min(5.75vw, 23px);
  }
  .header .hdT .hdTC dd a img.logo02 {
    height: min(2.25vw, 9px);
  }
  .header .hdT .hdTC dd a img.logo03 {
    height: min(2.25vw, 9px);
  }
  .header .hdT .hdTC dd a img.logo04 {
    height: min(2.5vw, 10px);
  }
  .header .hdT .hdTC dd a img.logo05 {
    height: min(3.25vw, 13px);
  }
  .header .hdT .hdTR {
    display: none;
  }
  .header .hdT .contactSp {
    display: block;
    margin: 0 30px 0 auto;
  }
  .header .hdT .contactSp a {
    padding: 5px 15px;
    border: 1px solid #fff;
    border-radius: 30px;
    color: #fff;
    font-size: 13px;
    font-size: 1.3rem;
    font-weight: 700;
    text-decoration: none;
  }
  .header .hdT .serviceTop {
    display: block;
    font-size: 9px;
    font-weight: 500;
    letter-spacing: -0.05em;
    position: absolute;
    top: 50%;
    right: 15px;
    margin-top: -8px;
  }
  .header .hdT .serviceTop a {
    background: url("../images/icon_arrow_circle.png") right top no-repeat;
    background-size: 16px auto;
    color: #FFF;
    display: inline-block;
    padding: 5px 23px 5px 0;
    text-decoration: none;
  }
  .header .hdB {
    display: none;
  }
  .header.headerOM {
    height: 53px;
  }
  .header.headerOM .hdB {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 53px;
    padding: 0 15px;
  }
  .header.headerOM .hdB .hdBTitle {
    padding: 0;
  }
  .header.headerOM .hdBR {
    width: 100%;
  }
  .header.headerOM .hdBR .tel {
    display: block;
    margin-right: 10px;
    font-size: 13px;
    font-size: 1.3rem;
    letter-spacing: 0;
  }
  .header.headerOM .hdBR .tel span {
    font-size: 10px;
    font-size: 1rem;
  }
  .header.headerOM .hdBR .contact {
    display: none;
  }
  .header.headerOM .hdBR .contact.type2 {
    display: block;
  }
  .header.headerOM .hdBR .contact.type2 a {
    min-width: 80px;
    height: 27px;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .headerOP {
    height: 104px;
  }
  .headerOP .hdT {
    position: relative;
  }
  .headerOP .hdT .headLogo {
    width: 160px;
  }
  .headerOP .hdT .headLogo span {
    font-size: 10px;
    font-size: 1rem;
    letter-spacing: 0;
    margin-left: 10px;
  }
  .headerOP .hdT .headLogo img, .headerOP .hdT .headLogo svg {
    vertical-align: -1px;
    margin-right: 0;
  }
  .headerOP .hdT .hdTCNav {
    display: none;
  }
  .headerOP .hdB {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 0 15px;
    height: 54px;
    position: relative;
  }
  .headerOP .hdB .hdBTitle {
    line-height: 0;
    padding-left: 3px;
    width: 25%;
  }
  .headerOP .hdB .hdBTitle img, .headerOP .hdB .hdBTitle svg {
    max-height: 13px;
    width: 75px;
  }
  .headerOP .hdB .hdBC {
    display: none;
  }
  .headerOP .hdB .hdBR {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }
  .headerOP .hdB .hdBR .contact {
    font-size: 11px;
    font-size: 1.1rem;
    font-weight: bold;
    padding: 0 3px;
  }
  .headerOP .hdB .hdBR .contact a {
    background-color: #EED84A;
    border: 1px solid #EED84A;
    border-radius: 30px;
    color: #333;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 26px;
    min-width: none;
    min-width: auto;
    padding: 0 12px;
  }
  .headerOP .hdB .hdBR .contact a:hover {
    background-color: #3143cf;
    color: #fff;
  }
  .headerOP .hdB .hdBR .contact.type2 {
    display: inline-block;
  }
  .headerOP .hdB .spMenuSet #nav-toggle {
    top: 19px;
  }
  .headerOP .hdB .spMenuSet #nav-toggle span {
    background: #3143cf;
  }
  .headerOP .hdB .spMenuSet #nav-toggle div:before {
    color: #3143cf;
  }
  .headerOP .hdB .spMenuSet #nav-toggle div:after {
    color: #3143cf;
  }
  .headerOP .hdB .spMenuSet #global-nav {
    top: 104px;
    height: calc(100vh - 104px);
  }
  .headerOM .hdB .hdBTitle img,
  .headerOM .hdB .hdBTitle svg {
    width: 137px;
    height: 31px;
  }
  .headerOP .hdB .hdBR .contact {
    margin-left: 0;
  }
  #header.scroll {
    top: 0;
  }
  #header.headerOP.scroll {
    top: -50px;
  }
  #header.headerOM.scroll {
    top: 0;
  }
  #header.headerOP.scroll .hdB .spMenuSet #global-nav {
    top: 54px;
    height: calc(100vh - 54px);
  }
  .spMenuSet {
    display: block;
    margin-left: 15px;
  }
  .riskBtn {
    display: none;
  }
}
/* ==========================================================================
  page-<slug>.scss
  - このページ固有のスタイルを記述（<slug> を置換）
  - 事前に _base.scss をビルドへ読み込んでおくこと（@use or @import）
  ========================================================================== */
@media screen and (min-width: 768px) {
  .main-contents .bg {
    position: fixed;
    top: 0;
    left: 0;
    padding-top: 75px;
    width: 100%;
    height: 100vh;
    background: linear-gradient(259deg, #061D42 0%, #000 100%);
  }
  .main-contents .bg__main {
    width: 100%;
    height: 100%;
    opacity: 0.5;
  }
  .main-contents .bg__main video {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .main-contents .bg__tex {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("/fusei-checker/assets/images/img_bg_tex.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
  }
}
@media screen and (max-width: 767px) {
  .main-contents .bg {
    position: fixed;
    top: 0;
    left: 0;
    padding-top: 50px;
    width: 100%;
    height: 100vh;
    background: linear-gradient(259deg, #061D42 0%, #000 100%);
  }
  .main-contents .bg__main {
    width: 100%;
    height: 100%;
    opacity: 0.5;
  }
  .main-contents .bg__main video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }
  .main-contents .bg__tex {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("/fusei-checker/assets/images/img_bg_tex.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
  }
}
/* ==========================================================================
  page-<slug>.scss
  - このページ固有のスタイルを記述（<slug> を置換）
  - 事前に _base.scss をビルドへ読み込んでおくこと（@use or @import）
  ========================================================================== */
@media screen and (min-width: 768px) {
  .main-contents .nav {
    position: fixed;
    top: 95px;
    left: 50%;
    translate: -50% 0;
    width: 98vw;
    z-index: 11;
  }
  .main-contents .nav__inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-inline: auto;
    padding: 19px 1.9%;
    width: 97.35%;
    border-radius: 66px;
    border: 1px solid rgba(51, 92, 255, 0.3);
    background: linear-gradient(105deg, rgba(51, 92, 255, 0.3) 0%, rgba(51, 92, 255, 0.05) 100%);
  }
  .main-contents .nav__logo {
    width: clamp(125px, 12.43%, 183px);
  }
  .main-contents .nav__logo img {
    width: 100%;
  }
  .main-contents .nav__list {
    display: flex;
    column-gap: 18px;
  }
  .main-contents .nav__list--sp {
    display: none;
  }
  .main-contents .nav__link {
    display: inline-block;
    position: relative;
    padding-left: 22px;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.5;
    letter-spacing: 0.06em;
    transition: opacity 0.3s ease;
  }
  .main-contents .nav__link:hover {
    opacity: 0.7;
  }
  .main-contents .nav__link::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    translate: 0 -50%;
    width: 12px;
    height: 12px;
    background-color: #3243CF;
    border-radius: 50%;
  }
  .main-contents .nav__btn {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .main-contents .nav {
    position: fixed;
    top: calc(50px + 2.8205128205vw);
    left: 50%;
    translate: -50% 0;
    z-index: 11;
  }
  .main-contents .nav__inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    margin-inline: auto;
    padding: 4.358974359vw 5.641025641vw;
    width: 94.8717948718vw;
    border-radius: 16.9230769231vw;
    border: 1px solid rgba(51, 92, 255, 0.3);
    background: linear-gradient(105deg, rgba(51, 92, 255, 0.3) 0%, rgba(51, 92, 255, 0.05) 100%);
    z-index: 1;
  }
  .main-contents .nav__logo {
    width: 46.9230769231vw;
  }
  .main-contents .nav__logo img {
    width: 100%;
  }
  .main-contents .nav__list {
    display: none;
    row-gap: 5.8974358974vw;
  }
  .main-contents .nav__list--pc {
    display: none;
  }
  .main-contents .nav__link {
    display: inline-block;
    position: relative;
    padding-left: 7.6923076923vw;
    font-weight: 400;
    font-size: 5.1282051282vw;
    line-height: 1.5;
    letter-spacing: 0.06em;
  }
  .main-contents .nav__link::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    translate: 0 -50%;
    width: 4.1025641026vw;
    height: 4.1025641026vw;
    background-color: #3243CF;
    border-radius: 50%;
  }
  .main-contents .nav__btn {
    display: block;
    position: relative;
    width: 6.6666666667vw;
    height: 5.641025641vw;
    cursor: pointer;
  }
  .main-contents .nav__btn span {
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 0.5128205128vw;
    background-color: #fff;
    border-radius: 1.0256410256vw;
  }
  .main-contents .nav__btn span:nth-child(1) {
    top: 0;
  }
  .main-contents .nav__btn span:nth-child(2) {
    top: 50%;
    translate: 0 -50%;
  }
  .main-contents .nav__btn span:nth-child(3) {
    bottom: 0;
  }
  .main-contents .nav.is-opened .nav__list--sp {
    display: grid;
    position: absolute;
    top: -2.8205128205vw;
    left: calc(50% - 50vw);
    padding: 25.641025641vw 9.2307692308vw 14.358974359vw;
    width: 100vw;
    border-bottom-left-radius: 10.2564102564vw;
    border-bottom-right-radius: 10.2564102564vw;
    background: rgba(6, 28, 63, 0.98);
  }
  .main-contents .nav.is-opened .nav__btn span:nth-child(1) {
    top: 50%;
    translate: 0 -50%;
    rotate: 45deg;
  }
  .main-contents .nav.is-opened .nav__btn span:nth-child(2) {
    opacity: 0;
  }
  .main-contents .nav.is-opened .nav__btn span:nth-child(3) {
    bottom: 50%;
    translate: 0 50%;
    rotate: -45deg;
  }
}
/* ==========================================================================
  page-<slug>.scss
  - このページ固有のスタイルを記述（<slug> を置換）
  - 事前に _base.scss をビルドへ読み込んでおくこと（@use or @import）
  ========================================================================== */
@media screen and (min-width: 768px) {
  .main-contents .float {
    display: grid;
    row-gap: 8px;
    position: fixed;
    top: 178px;
    right: 20px;
    z-index: 11;
  }
  .main-contents .float__link {
    display: grid;
    place-content: center;
    position: relative;
    padding: 6px 6px 6px 29px;
    width: 205px;
    border-radius: 56px;
    background-color: #3243CF;
    cursor: pointer;
    transition: opacity 0.3s ease;
  }
  .main-contents .float__link:hover {
    opacity: 0.7;
  }
  .main-contents .float__link .small {
    display: inline-block;
    font-weight: 600;
    font-size: 12px;
    line-height: 1.5;
    letter-spacing: 0.1em;
    text-align: center;
  }
  .main-contents .float__link .large {
    display: inline-block;
    font-weight: 600;
    font-size: 14px;
    line-height: 1.5;
    letter-spacing: 0.1em;
    text-align: center;
  }
  .main-contents .float__btn--download .float__link::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 14px;
    translate: 0 -50%;
    width: 27px;
    height: 27px;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjciIGhlaWdodD0iMjciIHZpZXdCb3g9IjAgMCAyNyAyNyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4gPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0zLjM3NSA1LjYyNUMzLjM3NSA0LjcyOTg5IDMuNzMwNTggMy44NzE0NSA0LjM2MzUxIDMuMjM4NTFDNC45OTY0NSAyLjYwNTU4IDUuODU0ODkgMi4yNSA2Ljc1IDIuMjVIMTUuNzVDMTcuODM4NiAyLjI1IDE5Ljg0MTYgMy4wNzk2OCAyMS4zMTg1IDQuNTU2NTNDMjIuNzk1MyA2LjAzMzM4IDIzLjYyNSA4LjAzNjQyIDIzLjYyNSAxMC4xMjVWMjEuMzc1QzIzLjYyNSAyMi4yNzAxIDIzLjI2OTQgMjMuMTI4NSAyMi42MzY1IDIzLjc2MTVDMjIuMDAzNiAyNC4zOTQ0IDIxLjE0NTEgMjQuNzUgMjAuMjUgMjQuNzVINi43NUM1Ljg1NDg5IDI0Ljc1IDQuOTk2NDUgMjQuMzk0NCA0LjM2MzUxIDIzLjc2MTVDMy43MzA1OCAyMy4xMjg1IDMuMzc1IDIyLjI3MDEgMy4zNzUgMjEuMzc1VjUuNjI1Wk0xNC42MjUgNC41SDYuNzVDNi40NTE2MyA0LjUgNi4xNjU0OCA0LjYxODUzIDUuOTU0NSA0LjgyOTVDNS43NDM1MyA1LjA0MDQ4IDUuNjI1IDUuMzI2NjMgNS42MjUgNS42MjVWMjEuMzc1QzUuNjI1IDIxLjY3MzQgNS43NDM1MyAyMS45NTk1IDUuOTU0NSAyMi4xNzA1QzYuMTY1NDggMjIuMzgxNSA2LjQ1MTYzIDIyLjUgNi43NSAyMi41SDIwLjI1QzIwLjU0ODQgMjIuNSAyMC44MzQ1IDIyLjM4MTUgMjEuMDQ1NSAyMi4xNzA1QzIxLjI1NjUgMjEuOTU5NSAyMS4zNzUgMjEuNjczNCAyMS4zNzUgMjEuMzc1VjEwLjEyNUgxNC42MjVWNC41Wk0yMC45MDcgNy44NzVDMjAuNTQ1MyA3LjA0ODA5IDE5Ljk5MDIgNi4zMjAxNSAxOS4yODg2IDUuNzUyNDFDMTguNTg2OSA1LjE4NDY3IDE3Ljc1OTIgNC43OTM3NCAxNi44NzUgNC42MTI1VjcuODc1SDIwLjkwN1oiIGZpbGw9IndoaXRlIi8+IDwvc3ZnPg==");
    background-repeat: no-repeat;
    background-size: contain;
  }
  .main-contents .float__btn--contact .float__link::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 14px;
    translate: 0 -50%;
    width: 27px;
    height: 27px;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjciIGhlaWdodD0iMjciIHZpZXdCb3g9IjAgMCAyNyAyNyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4gPHBhdGggZD0iTTMuMzc1IDcuODc1QzMuMzc1IDcuMjc4MjYgMy42MTIwNSA2LjcwNTk3IDQuMDM0MDEgNi4yODQwMUM0LjQ1NTk3IDUuODYyMDUgNS4wMjgyNiA1LjYyNSA1LjYyNSA1LjYyNUgyMS4zNzVDMjEuOTcxNyA1LjYyNSAyMi41NDQgNS44NjIwNSAyMi45NjYgNi4yODQwMUMyMy4zODc5IDYuNzA1OTcgMjMuNjI1IDcuMjc4MjYgMjMuNjI1IDcuODc1VjE5LjEyNUMyMy42MjUgMTkuNzIxNyAyMy4zODc5IDIwLjI5NCAyMi45NjYgMjAuNzE2QzIyLjU0NCAyMS4xMzc5IDIxLjk3MTcgMjEuMzc1IDIxLjM3NSAyMS4zNzVINS42MjVDNS4wMjgyNiAyMS4zNzUgNC40NTU5NyAyMS4xMzc5IDQuMDM0MDEgMjAuNzE2QzMuNjEyMDUgMjAuMjk0IDMuMzc1IDE5LjcyMTcgMy4zNzUgMTkuMTI1VjcuODc1WiIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4gPHBhdGggZD0iTTMuMzc1IDcuODc1TDEzLjUgMTQuNjI1TDIzLjYyNSA3Ljg3NSIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4gPC9zdmc+");
    background-repeat: no-repeat;
    background-size: contain;
  }
}
@media screen and (max-width: 767px) {
  .main-contents .float {
    display: flex;
    justify-content: center;
    column-gap: 1.7948717949vw;
    position: absolute;
    bottom: 4.358974359vw;
    left: 50%;
    translate: -50% 0;
    z-index: 11;
  }
  .main-contents .float.is-fixed {
    position: fixed;
  }
  .main-contents .float__link {
    display: grid;
    place-content: center;
    position: relative;
    padding: 1.5384615385vw 1.5384615385vw 1.5384615385vw 7.4358974359vw;
    width: 46.1538461538vw;
    border-radius: 14.358974359vw;
    background-color: #3243CF;
    cursor: pointer;
  }
  .main-contents .float__link .small {
    display: inline-block;
    font-weight: 600;
    font-size: 2.7179487179vw;
    line-height: 1.5;
    letter-spacing: 0.1em;
    text-align: center;
  }
  .main-contents .float__link .large {
    display: inline-block;
    font-weight: 600;
    font-size: 3.1538461538vw;
    line-height: 1.5;
    letter-spacing: 0.1em;
    text-align: center;
  }
  .main-contents .float__btn--download .float__link::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 3.0769230769vw;
    translate: 0 -50%;
    width: 6.1128205128vw;
    height: 6.1128205128vw;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjciIGhlaWdodD0iMjciIHZpZXdCb3g9IjAgMCAyNyAyNyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4gPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0zLjM3NSA1LjYyNUMzLjM3NSA0LjcyOTg5IDMuNzMwNTggMy44NzE0NSA0LjM2MzUxIDMuMjM4NTFDNC45OTY0NSAyLjYwNTU4IDUuODU0ODkgMi4yNSA2Ljc1IDIuMjVIMTUuNzVDMTcuODM4NiAyLjI1IDE5Ljg0MTYgMy4wNzk2OCAyMS4zMTg1IDQuNTU2NTNDMjIuNzk1MyA2LjAzMzM4IDIzLjYyNSA4LjAzNjQyIDIzLjYyNSAxMC4xMjVWMjEuMzc1QzIzLjYyNSAyMi4yNzAxIDIzLjI2OTQgMjMuMTI4NSAyMi42MzY1IDIzLjc2MTVDMjIuMDAzNiAyNC4zOTQ0IDIxLjE0NTEgMjQuNzUgMjAuMjUgMjQuNzVINi43NUM1Ljg1NDg5IDI0Ljc1IDQuOTk2NDUgMjQuMzk0NCA0LjM2MzUxIDIzLjc2MTVDMy43MzA1OCAyMy4xMjg1IDMuMzc1IDIyLjI3MDEgMy4zNzUgMjEuMzc1VjUuNjI1Wk0xNC42MjUgNC41SDYuNzVDNi40NTE2MyA0LjUgNi4xNjU0OCA0LjYxODUzIDUuOTU0NSA0LjgyOTVDNS43NDM1MyA1LjA0MDQ4IDUuNjI1IDUuMzI2NjMgNS42MjUgNS42MjVWMjEuMzc1QzUuNjI1IDIxLjY3MzQgNS43NDM1MyAyMS45NTk1IDUuOTU0NSAyMi4xNzA1QzYuMTY1NDggMjIuMzgxNSA2LjQ1MTYzIDIyLjUgNi43NSAyMi41SDIwLjI1QzIwLjU0ODQgMjIuNSAyMC44MzQ1IDIyLjM4MTUgMjEuMDQ1NSAyMi4xNzA1QzIxLjI1NjUgMjEuOTU5NSAyMS4zNzUgMjEuNjczNCAyMS4zNzUgMjEuMzc1VjEwLjEyNUgxNC42MjVWNC41Wk0yMC45MDcgNy44NzVDMjAuNTQ1MyA3LjA0ODA5IDE5Ljk5MDIgNi4zMjAxNSAxOS4yODg2IDUuNzUyNDFDMTguNTg2OSA1LjE4NDY3IDE3Ljc1OTIgNC43OTM3NCAxNi44NzUgNC42MTI1VjcuODc1SDIwLjkwN1oiIGZpbGw9IndoaXRlIi8+IDwvc3ZnPg==");
    background-repeat: no-repeat;
    background-size: contain;
  }
  .main-contents .float__btn--contact .float__link::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 3.0769230769vw;
    translate: 0 -50%;
    width: 6.1128205128vw;
    height: 6.1128205128vw;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjciIGhlaWdodD0iMjciIHZpZXdCb3g9IjAgMCAyNyAyNyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4gPHBhdGggZD0iTTMuMzc1IDcuODc1QzMuMzc1IDcuMjc4MjYgMy42MTIwNSA2LjcwNTk3IDQuMDM0MDEgNi4yODQwMUM0LjQ1NTk3IDUuODYyMDUgNS4wMjgyNiA1LjYyNSA1LjYyNSA1LjYyNUgyMS4zNzVDMjEuOTcxNyA1LjYyNSAyMi41NDQgNS44NjIwNSAyMi45NjYgNi4yODQwMUMyMy4zODc5IDYuNzA1OTcgMjMuNjI1IDcuMjc4MjYgMjMuNjI1IDcuODc1VjE5LjEyNUMyMy42MjUgMTkuNzIxNyAyMy4zODc5IDIwLjI5NCAyMi45NjYgMjAuNzE2QzIyLjU0NCAyMS4xMzc5IDIxLjk3MTcgMjEuMzc1IDIxLjM3NSAyMS4zNzVINS42MjVDNS4wMjgyNiAyMS4zNzUgNC40NTU5NyAyMS4xMzc5IDQuMDM0MDEgMjAuNzE2QzMuNjEyMDUgMjAuMjk0IDMuMzc1IDE5LjcyMTcgMy4zNzUgMTkuMTI1VjcuODc1WiIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4gPHBhdGggZD0iTTMuMzc1IDcuODc1TDEzLjUgMTQuNjI1TDIzLjYyNSA3Ljg3NSIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4gPC9zdmc+");
    background-repeat: no-repeat;
    background-size: contain;
  }
}
@media screen and (min-width: 768px) {
  .main-contents .mv__copy {
    padding-top: 127px;
    text-align: center;
  }
  .main-contents .mv__text {
    display: inline-block;
  }
  .main-contents .mv__text--n01 {
    padding-block: 18px;
    width: 724px;
    background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, #3243CF 20%, #3243CF 80.29%, rgba(0, 0, 0, 0) 100%);
    font-weight: 500;
    font-size: 37px;
    line-height: 1;
    letter-spacing: 0.06em;
  }
  .main-contents .mv__text--n02 {
    margin-top: 18px;
    font-weight: 500;
    font-size: 48px;
    line-height: 1.5;
    letter-spacing: 0.06em;
  }
  .main-contents .mv__text--n03 {
    margin-top: 18px;
    padding-inline: 36px;
    border: 1px solid #fff;
    font-weight: 500;
    font-size: 48px;
    line-height: 1.54;
    letter-spacing: 0.06em;
  }
  .main-contents .mv__text--n04 {
    margin-top: 26px;
    width: 387px;
  }
  .main-contents .mv__text--n04 img {
    width: 100%;
  }
  .main-contents .mv__box {
    margin-top: 48px;
    margin-inline: auto;
    width: 95%;
    max-width: 1044px;
  }
  .main-contents .mv__list {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    column-gap: 1.53%;
  }
  .main-contents .mv__item {
    flex: 1;
    display: grid;
    place-content: center;
    padding-block: 27px;
    border-radius: 16px;
    border: 1px solid rgba(51, 92, 255, 0.3);
    background: linear-gradient(105deg, rgba(51, 92, 255, 0.3) 0%, rgba(51, 92, 255, 0.05) 100%);
    font-weight: 500;
    font-size: 20px;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center;
  }
  .main-contents .mv__note {
    margin-top: 17px;
    font-weight: 400;
    font-size: 12px;
    line-height: 1.5;
    letter-spacing: 0;
    text-align: center;
  }
  .main-contents .mv .intro {
    margin-top: 100px;
  }
  .main-contents .mv .intro__lead {
    font-weight: 500;
    font-size: 30px;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center;
  }
  .main-contents .mv .band {
    margin-block: 36px;
  }
  .main-contents .mv .band__wrapper {
    display: flex;
    column-gap: 14px;
    overflow: hidden;
  }
  .main-contents .mv .band__list {
    display: flex;
    column-gap: 14px;
    animation: infinity-scroll 15s linear infinite;
    /* width: fit-content; 必要に応じて */
  }
  @keyframes infinity-scroll {
    from {
      transform: translateX(0%);
    }
    to {
      transform: translateX(-50%);
    }
  }
  .main-contents .mv .band__item {
    height: 60px;
  }
  .main-contents .mv .band__item img {
    width: auto;
    height: 100%;
  }
  .main-contents .mv .btnbox {
    margin-top: 36px;
    row-gap: 36px;
  }
  .main-contents .mv .btnbox__text {
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  .main-contents .mv__copy {
    padding-top: 23.8461538462vw;
    text-align: center;
  }
  .main-contents .mv__text {
    display: inline-block;
  }
  .main-contents .mv__text--n01 {
    padding-block: 3.0769230769vw;
    width: 100vw;
    background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, #3243CF 20%, #3243CF 80.29%, rgba(0, 0, 0, 0) 100%);
    font-weight: 500;
    font-size: 5.641025641vw;
    line-height: 1;
    letter-spacing: 0.06em;
  }
  .main-contents .mv__text--n02 {
    margin-top: 3.3333333333vw;
    font-weight: 500;
    font-size: 6.6666666667vw;
    line-height: 1.5;
    letter-spacing: 0.06em;
  }
  .main-contents .mv__text--n03 {
    margin-top: 3.3333333333vw;
    padding-inline: 9.2307692308vw;
    border: 1px solid #fff;
    font-weight: 500;
    font-size: 8.7179487179vw;
    line-height: 1.54;
    letter-spacing: 0.06em;
  }
  .main-contents .mv__text--n04 {
    margin-top: 6.6666666667vw;
    width: 89.7435897436vw;
  }
  .main-contents .mv__text--n04 img {
    width: 100%;
  }
  .main-contents .mv__box {
    margin-top: 7.6923076923vw;
    margin-inline: auto;
    width: 89.7435897436vw;
  }
  .main-contents .mv__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 3.5897435897vw;
  }
  .main-contents .mv__item {
    display: grid;
    place-content: center;
    height: 43.8461538462vw;
    border: 1px solid rgba(51, 92, 255, 0.3);
    background: linear-gradient(105deg, rgba(51, 92, 255, 0.3) 0%, rgba(51, 92, 255, 0.05) 100%);
    font-weight: 500;
    font-size: 4.6153846154vw;
    line-height: 1.5;
    letter-spacing: 0;
    text-align: center;
  }
  .main-contents .mv__note {
    margin-top: 4.358974359vw;
    font-weight: 400;
    font-size: 3.0769230769vw;
    line-height: 1.5;
    letter-spacing: 0;
    text-align: center;
  }
  .main-contents .mv .intro {
    margin-top: 16.4102564103vw;
  }
  .main-contents .mv .intro__lead {
    font-weight: 500;
    font-size: 7.6923076923vw;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center;
  }
  .main-contents .mv .band {
    margin-block: 6.6666666667vw;
  }
  .main-contents .mv .band__wrapper {
    display: flex;
    column-gap: 3.5897435897vw;
    overflow: hidden;
  }
  .main-contents .mv .band__list {
    display: flex;
    column-gap: 3.5897435897vw;
    animation: infinity-scroll 15s linear infinite;
  }
  @keyframes infinity-scroll {
    from {
      transform: translateX(0%);
    }
    to {
      transform: translateX(-50%);
    }
  }
  .main-contents .mv .band__item {
    height: 15.3846153846vw;
  }
  .main-contents .mv .band__item img {
    width: auto;
    height: 100%;
  }
  .main-contents .mv .btnbox {
    row-gap: 6.6666666667vw;
  }
  .main-contents .mv .btnbox__text {
    font-size: 4.6153846154vw;
  }
}
/* ==========================================================================
  page-<slug>.scss
  - このページ固有のスタイルを記述（<slug> を置換）
  - 事前に _base.scss をビルドへ読み込んでおくこと（@use or @import）
  ========================================================================== */
@media screen and (min-width: 768px) {
  .main-contents .service .section-ttl {
    margin-top: 120px;
  }
  .main-contents .service__ttl {
    margin-top: 60px;
    font-weight: 500;
    font-size: 30px;
    line-height: 1.5em;
    letter-spacing: 0.06em;
    text-align: center;
  }
  .main-contents .service__ttl .small {
    display: block;
    font-weight: 500;
    font-size: 22px;
    line-height: 1.5em;
    letter-spacing: 0.06em;
  }
  .main-contents .service__lead {
    margin-top: 20px;
    font-weight: 500;
    font-size: 22px;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center;
  }
  .main-contents .service__lead-small {
    margin-top: 40px;
    font-weight: 400;
    font-size: 15px;
    line-height: 1.5;
    letter-spacing: 0;
    text-align: center;
  }
  .main-contents .service__lead .border {
    display: inline-block;
    margin-top: 16px;
    padding: 12px 20px;
    border: 1px solid #fff;
    font-weight: 500;
    font-size: 22px;
    line-height: 1.5;
    letter-spacing: 0.06em;
  }
  .main-contents .service .cards {
    margin-block: 71px 100px;
  }
  .main-contents .service .card {
    padding-top: 48px;
  }
  .main-contents .service .card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    translate: -50% -50%;
    width: 68px;
    height: 68px;
    background-image: url("../images/icon_service_check.svg");
    background-repeat: no-repeat;
    background-size: contain;
  }
  .main-contents .service__list {
    display: grid;
    row-gap: 12px;
    margin-top: 40px;
  }
  .main-contents .service__item {
    padding: 22px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.8);
  }
  .main-contents .service__item-ttl {
    position: relative;
    padding-left: 24px;
    font-weight: 500;
    font-size: 18px;
    line-height: 1.5;
    letter-spacing: 0;
    color: #111A68;
  }
  .main-contents .service__item-ttl::before {
    content: "";
    position: absolute;
    top: 0.3em;
    left: 0;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background-color: #3243D0;
  }
  .main-contents .service__item-text {
    margin-top: 10px;
    font-weight: 400;
    font-size: 15px;
    line-height: 1.5;
    letter-spacing: 0;
    color: #111A68;
  }
  .main-contents .service .movie {
    margin-top: 40px;
  }
  .main-contents .service .movie__text {
    font-weight: 500;
    font-size: 18px;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center;
  }
  .main-contents .service .movie__box {
    margin-top: 22px;
    margin-inline: auto;
    width: 615px;
    height: 337px;
  }
  .main-contents .service .movie__box iframe {
    width: 100%;
    height: 100%;
  }
  .main-contents .service .graph {
    display: flex;
    justify-content: space-between;
    column-gap: 7.63%;
    margin-top: 100px;
    margin-left: max(-1 * (94.44vw - 100%) / 2, -1 * (1428px - 100%) / 2);
    padding: 76px 14.14%;
    width: 94.44vw;
    max-width: 1428px;
    border-radius: 48px;
    background: rgba(12, 25, 131, 0.55);
  }
  .main-contents .service .graph__textbox {
    flex: 1;
  }
  .main-contents .service .graph__text {
    font-weight: 500;
    font-size: 30px;
    line-height: 1.86;
    letter-spacing: 0.14em;
    text-decoration: underline;
  }
  .main-contents .service .graph__list {
    margin-top: 35px;
    font-weight: 400;
    font-size: 12px;
    line-height: 1.5;
    letter-spacing: 0;
  }
  .main-contents .service .graph__item {
    font-weight: 400;
    font-size: 12px;
    line-height: 1.5;
    letter-spacing: 0;
  }
  .main-contents .service .graph__imgbox {
    width: 50.48%;
  }
  .main-contents .service .graph__imgbox img {
    width: 100%;
  }
  .main-contents .service .o-plux {
    margin-top: 100px;
  }
  .main-contents .service .o-plux__subttl {
    font-weight: 500;
    font-size: 24px;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center;
  }
  .main-contents .service .o-plux__mainttl {
    margin-top: 20px;
    margin-inline: auto;
    width: 177px;
  }
  .main-contents .service .o-plux__mainttl img {
    width: 100%;
  }
  .main-contents .service .o-plux__list {
    display: flex;
    justify-content: center;
    align-items: stretch;
    column-gap: 14px;
    margin-top: 28px;
  }
  .main-contents .service .o-plux__item {
    padding: 24px 2.34%;
    width: 33.33%;
    max-width: 250px;
    background-color: #526A8F;
    border-radius: 20px;
  }
  .main-contents .service .o-plux__item--n01 .o-plux__imgbox {
    width: 107px;
  }
  .main-contents .service .o-plux__item--n02 .o-plux__imgbox {
    width: 124px;
  }
  .main-contents .service .o-plux__item--n03 .o-plux__imgbox {
    width: 118px;
  }
  .main-contents .service .o-plux__imgbox {
    margin-inline: auto;
  }
  .main-contents .service .o-plux__imgbox img {
    width: 100%;
  }
  .main-contents .service .o-plux__text {
    margin-top: 24px;
    font-weight: 500;
    font-size: 18px;
    line-height: 1.5;
    letter-spacing: 0;
    text-align: center;
  }
  .main-contents .service .btnbox--o-plux {
    margin-block: 22px 28px;
    padding-bottom: 28px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.4);
    text-align: center;
  }
  .main-contents .service .btnbox--o-plux__text {
    font-weight: 500;
    font-size: 20px;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center;
  }
  .main-contents .service .btnbox--o-plux__btn {
    display: inline-block;
    margin-top: 20px;
    margin-inline: auto;
    padding-block: 15px;
    width: 290px;
    border-radius: 100px;
    background-color: #fff;
    font-weight: 500;
    font-size: 18px;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center;
    color: #3243D0;
    transition: opacity 0.3s ease;
  }
  .main-contents .service .btnbox--o-plux__btn:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  .main-contents .service .section-ttl {
    margin-top: 30.7692307692vw;
  }
  .main-contents .service__ttl {
    margin-top: 10.2564102564vw;
    font-weight: 500;
    font-size: 7.6923076923vw;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center;
  }
  .main-contents .service__ttl .small {
    display: block;
    margin-bottom: 1.2820512821vw;
    font-weight: 500;
    font-size: 5.641025641vw;
    line-height: 1.5;
    letter-spacing: 0.06em;
  }
  .main-contents .service__lead {
    margin-top: 7.6923076923vw;
    font-weight: 500;
    font-size: 5.641025641vw;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center;
  }
  .main-contents .service__lead-small {
    margin-top: 7.6923076923vw;
    font-weight: 400;
    font-size: 3.8461538462vw;
    line-height: 1.5;
    letter-spacing: 0;
    text-align: left;
  }
  .main-contents .service__lead .border {
    display: inline-block;
    margin-top: 4.1025641026vw;
    padding: 3.0769230769vw 5.1282051282vw;
    border: 1px solid #fff;
    font-weight: 500;
    font-size: 5.641025641vw;
    line-height: 1.5;
    letter-spacing: 0.06em;
  }
  .main-contents .service .cards {
    margin-block: 18.2051282051vw 15.3846153846vw;
    column-gap: 13.3333333333vw;
  }
  .main-contents .service .card {
    padding-top: 12.3076923077vw;
  }
  .main-contents .service .card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    translate: -50% -50%;
    width: 17.4358974359vw;
    height: 17.4358974359vw;
    background-image: url("../images/icon_service_check.svg");
    background-repeat: no-repeat;
    background-size: contain;
  }
  .main-contents .service__list {
    display: grid;
    row-gap: 3.0769230769vw;
    margin-top: 7.6923076923vw;
  }
  .main-contents .service__item {
    padding: 5.641025641vw;
    border-radius: 2.5641025641vw;
    background: rgba(255, 255, 255, 0.8);
  }
  .main-contents .service__item-ttl {
    position: relative;
    padding-left: 6.1538461538vw;
    font-weight: 500;
    font-size: 4.6153846154vw;
    line-height: 1.5;
    letter-spacing: 0;
    color: #111A68;
  }
  .main-contents .service__item-ttl::before {
    content: "";
    position: absolute;
    top: 0.3em;
    left: 0;
    width: 4.1025641026vw;
    height: 4.1025641026vw;
    border-radius: 50%;
    background-color: #3243D0;
  }
  .main-contents .service__item-text {
    margin-top: 2.5641025641vw;
    font-weight: 400;
    font-size: 3.8461538462vw;
    line-height: 1.5;
    letter-spacing: 0;
    color: #111A68;
  }
  .main-contents .service .movie {
    margin-top: 7.6923076923vw;
  }
  .main-contents .service .movie__text {
    font-weight: 500;
    font-size: 4.6153846154vw;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center;
  }
  .main-contents .service .movie__box {
    margin-top: 5.641025641vw;
    margin-inline: auto;
    width: 87.6923076923vw;
    height: 47.9487179487vw;
  }
  .main-contents .service .movie__box iframe {
    width: 100%;
    height: 100%;
  }
  .main-contents .service .graph {
    display: grid;
    row-gap: 10.2564102564vw;
    margin-top: 15.3846153846vw;
    padding: 7.6923076923vw 5.1282051282vw;
    width: 100%;
    border-radius: 7.1794871795vw;
    background: rgba(12, 25, 131, 0.55);
  }
  .main-contents .service .graph__textbox {
    display: contents;
  }
  .main-contents .service .graph__text {
    grid-row: 1/2;
    font-weight: 500;
    font-size: 7.1794871795vw;
    line-height: 1.86;
    letter-spacing: 0.14em;
    text-decoration: underline;
  }
  .main-contents .service .graph__note {
    grid-row: 3/4;
    font-weight: 400;
    font-size: 3.0769230769vw;
    line-height: 1.5;
    letter-spacing: 0;
  }
  .main-contents .service .graph__list {
    font-weight: 400;
    font-size: 3.0769230769vw;
    line-height: 1.5;
    letter-spacing: 0;
  }
  .main-contents .service .graph__item {
    font-weight: 400;
    font-size: 3.0769230769vw;
    line-height: 1.5;
    letter-spacing: 0;
  }
  .main-contents .service .graph__imgbox {
    grid-row: 2/3;
    width: 100%;
  }
  .main-contents .service .graph__imgbox img {
    width: 100%;
  }
  .main-contents .service .o-plux {
    margin-top: 15.3846153846vw;
  }
  .main-contents .service .o-plux__subttl {
    font-weight: 500;
    font-size: 6.1538461538vw;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center;
  }
  .main-contents .service .o-plux__mainttl {
    margin-top: 5.1282051282vw;
    margin-inline: auto;
    width: 45.3846153846vw;
  }
  .main-contents .service .o-plux__mainttl img {
    width: 100%;
  }
  .main-contents .service .o-plux__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 3.5897435897vw;
    margin-top: 5.8974358974vw;
  }
  .main-contents .service .o-plux__item {
    padding: 4.1025641026vw;
    width: 41.7948717949vw;
    height: 28.2051282051vw;
    background-color: #526A8F;
    border-radius: 3.3333333333vw;
  }
  .main-contents .service .o-plux__item--n01 .o-plux__imgbox {
    width: 17.9487179487vw;
  }
  .main-contents .service .o-plux__item--n02 .o-plux__imgbox {
    width: 20.7692307692vw;
  }
  .main-contents .service .o-plux__item--n03 .o-plux__imgbox {
    width: 19.7435897436vw;
  }
  .main-contents .service .o-plux__imgbox {
    margin-inline: auto;
  }
  .main-contents .service .o-plux__imgbox img {
    width: 100%;
  }
  .main-contents .service .o-plux__text {
    margin-top: 3.8461538462vw;
    font-weight: 500;
    font-size: 2.8205128205vw;
    line-height: 1.5;
    letter-spacing: 0;
    text-align: center;
  }
  .main-contents .service .btnbox--o-plux {
    margin-block: 4.6153846154vw 5.8974358974vw;
    padding-bottom: 5.8974358974vw;
    border-bottom: 1px solid rgba(255, 255, 255, 0.4);
    text-align: center;
  }
  .main-contents .service .btnbox--o-plux__text {
    font-weight: 500;
    font-size: 4.6153846154vw;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center;
  }
  .main-contents .service .btnbox--o-plux__btn {
    display: inline-block;
    margin-top: 5.1282051282vw;
    margin-inline: auto;
    padding-block: 3.8461538462vw;
    width: 74.358974359vw;
    border-radius: 25.641025641vw;
    background-color: #fff;
    font-weight: 500;
    font-size: 4.6153846154vw;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center;
    color: #3243D0;
  }
}
/* ==========================================================================
  page-<slug>.scss
  - このページ固有のスタイルを記述（<slug> を置換）
  - 事前に _base.scss をビルドへ読み込んでおくこと（@use or @import）
  ========================================================================== */
@media screen and (min-width: 768px) {
  .main-contents .reason {
    padding-block: 100px 120px;
    background: linear-gradient(transparent 25%, rgba(12, 25, 131, 0.55) 25%);
  }
  .main-contents .reason .cards {
    margin-top: 60px;
  }
  .main-contents .reason .card {
    grid-row: span 3;
    padding: 0;
  }
  .main-contents .reason .card__ttl {
    padding-top: 20px;
    margin-inline: 24px;
  }
  .main-contents .reason .card__list {
    margin-inline: 24px;
    padding-bottom: 24px;
  }
  .main-contents .reason .why {
    display: flex;
    justify-content: space-between;
    column-gap: 18px;
    margin-top: 120px;
  }
  .main-contents .reason .why__textbox {
    flex: 1;
  }
  .main-contents .reason .why__ttl {
    margin-top: -12.9px;
    font-weight: 500;
    font-size: 30px;
    line-height: 1.86;
    letter-spacing: 0.14em;
  }
  .main-contents .reason .why__text {
    margin-top: 11px;
    font-weight: 400;
    font-size: 15px;
    line-height: 2;
    letter-spacing: 0;
  }
  .main-contents .reason .why__imgbox {
    width: 50.48%;
  }
  .main-contents .reason .why__imgbox img {
    width: 100%;
  }
  .main-contents .reason .ds {
    margin-top: 60px;
    font-weight: 500;
    font-size: 22px;
    letter-spacing: 0.14em;
    text-align: center;
  }
  .main-contents .reason .ds__list {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    column-gap: 14px;
    margin-top: 32px;
  }
  .main-contents .reason .ds__item {
    flex: 1;
  }
  .main-contents .reason .ds__imgbox {
    display: grid;
    place-content: center;
    padding: 24px 1%;
    border-radius: 10px;
    background-color: #526A8F;
    aspect-ratio: 245/140;
  }
  .main-contents .reason .ds__textbox {
    display: grid;
    place-content: center;
    margin-top: 10px;
    min-height: 46px;
    border-radius: 70px;
    background: rgba(255, 255, 255, 0.2);
  }
  .main-contents .reason .ds__text {
    font-weight: 500;
    font-size: 13px;
    letter-spacing: 0;
    text-align: center;
  }
  .main-contents .reason .ds__note {
    margin-top: 32px;
    font-weight: 400;
    font-size: 13px;
    letter-spacing: 0;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .main-contents .reason {
    padding-block: 15.3846153846vw;
    background: linear-gradient(transparent 44%, rgba(12, 25, 131, 0.55) 44%);
  }
  .main-contents .reason .cards {
    margin-top: 15.3846153846vw;
  }
  .main-contents .reason .card {
    grid-row: span 3;
    padding: 0;
  }
  .main-contents .reason .card__ttl {
    padding-top: 5.1282051282vw;
    margin-inline: 6.1538461538vw;
  }
  .main-contents .reason .card__list {
    margin-inline: 6.1538461538vw;
    padding-bottom: 6.1538461538vw;
  }
  .main-contents .reason .why {
    display: flex;
    flex-direction: column-reverse;
    row-gap: 10.2564102564vw;
    margin-top: 15.3846153846vw;
  }
  .main-contents .reason .why__ttl {
    font-weight: 500;
    font-size: 7.6923076923vw;
    line-height: 1.86;
    letter-spacing: 0.14em;
  }
  .main-contents .reason .why__text {
    margin-top: 7.6923076923vw;
    font-weight: 400;
    font-size: 3.8461538462vw;
    line-height: 2;
    letter-spacing: 0;
  }
  .main-contents .reason .why__imgbox {
    margin-left: calc(50% - 50vw);
    width: 100vw;
  }
  .main-contents .reason .why__imgbox img {
    width: 100%;
  }
  .main-contents .reason .ds {
    margin-top: 15.3846153846vw;
    font-weight: 500;
    font-size: 5.641025641vw;
    letter-spacing: 0.14em;
    text-align: center;
  }
  .main-contents .reason .ds__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    align-items: stretch;
    gap: 3.5897435897vw;
    margin-top: 8.2051282051vw;
  }
  .main-contents .reason .ds__imgbox {
    display: grid;
    place-content: center;
    padding: 6.1538461538vw 1%;
    width: 41.7948717949vw;
    height: 35.8974358974vw;
    border-radius: 2.5641025641vw;
    background-color: #526A8F;
  }
  .main-contents .reason .ds__textbox {
    display: grid;
    place-content: center;
    margin-top: 2.5641025641vw;
    height: 11.7948717949vw;
    border-radius: 17.9487179487vw;
    background: rgba(255, 255, 255, 0.2);
  }
  .main-contents .reason .ds__text {
    font-weight: 500;
    font-size: 3.3333333333vw;
    letter-spacing: 0;
    text-align: center;
  }
  .main-contents .reason .ds__note {
    margin-top: 8.2051282051vw;
    font-weight: 400;
    font-size: 3.3333333333vw;
    letter-spacing: 0;
    text-align: center;
  }
}
/* ==========================================================================
  page-<slug>.scss
  - このページ固有のスタイルを記述（<slug> を置換）
  - 事前に _base.scss をビルドへ読み込んでおくこと（@use or @import）
  ========================================================================== */
@media screen and (min-width: 768px) {
  .main-contents .case-study {
    padding-block: 100px 140px;
  }
  .main-contents .case-study__slider-wrapper {
    position: relative;
    margin-left: calc(50% - 50vw);
    width: 100vw;
  }
  .main-contents .case-study__slider-wrapper .swiper-pagination {
    bottom: -46px;
  }
  .main-contents .case-study__slider-wrapper .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    background-color: #fff;
    opacity: 0.5;
  }
  .main-contents .case-study__slider-wrapper .swiper-pagination-bullet-active {
    opacity: 1;
  }
  .main-contents .case-study__slider-wrapper .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet, .main-contents .case-study__slider-wrapper .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 12px;
  }
  .main-contents .case-study__slider-wrapper .swiper-button-next, .main-contents .case-study__slider-wrapper .swiper-button-prev {
    top: auto;
    bottom: -57px;
    width: 37px;
    height: 37px;
    border-radius: 50%;
    background-color: #fff;
    transition: opacity 0.3s ease;
  }
  .main-contents .case-study__slider-wrapper .swiper-button-next:hover, .main-contents .case-study__slider-wrapper .swiper-button-prev:hover {
    opacity: 0.7;
  }
  .main-contents .case-study__slider-wrapper .swiper-button-next:after, .main-contents .case-study__slider-wrapper .swiper-button-prev:after {
    font-size: 15px;
    font-weight: 600;
    color: #3243CF;
  }
  .main-contents .case-study__slider-wrapper .swiper-button-next {
    right: calc(50% - 222px);
  }
  .main-contents .case-study__slider-wrapper .swiper-button-prev {
    left: calc(50% - 222px);
  }
  .main-contents .case-study__slider {
    margin-top: 60px;
    margin-left: calc(50% - 50vw);
    width: 100vw;
  }
  .main-contents .case-study__slide {
    padding: 14px 18px 18px;
    background: rgba(29, 54, 255, 0.55);
    transition: opacity 0.3s ease;
  }
  .main-contents .case-study__slide:hover {
    opacity: 0.7;
  }
  .main-contents .case-study__slide-logobox {
    margin-inline: auto;
    width: 162px;
  }
  .main-contents .case-study__slide-logobox img {
    width: 100%;
  }
  .main-contents .case-study__slide-imgbox {
    margin-top: 10px;
    width: 100%;
  }
  .main-contents .case-study__slide-imgbox img {
    width: 100%;
  }
  .main-contents .case-study__slide-ttl {
    margin-top: 14px;
    margin-bottom: 10px;
    padding-bottom: 14px;
    border-bottom: 1px solid #2858A6;
    font-weight: 500;
    font-size: 18px;
    line-height: 1.5;
    letter-spacing: 0;
  }
  .main-contents .case-study__slide-btn {
    display: block;
    position: relative;
    margin-inline: auto 0;
    padding-right: 16px;
    font-weight: 400;
    font-size: 15px;
    letter-spacing: 0;
    cursor: pointer;
  }
  .main-contents .case-study__slide-btn::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 2px;
    translate: 0 -50%;
    rotate: 45deg;
    width: 8px;
    height: 8px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
  }
  .main-contents .case-study .industry {
    margin-top: 159px;
  }
  .main-contents .case-study .industry__lead {
    font-weight: 500;
    font-size: 22px;
    letter-spacing: 0.14em;
    text-align: center;
  }
  .main-contents .case-study .industry__list {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 40px 1.36%;
    margin-top: 40px;
  }
  .main-contents .case-study .industry__item {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 2;
    row-gap: 10px;
  }
  .main-contents .case-study .industry__imgbox {
    display: grid;
    place-content: center;
    padding: 25px 1%;
    border-radius: 10px;
    background-color: #526A8F;
  }
  .main-contents .case-study .industry__text {
    font-weight: 500;
    font-size: 13px;
    line-height: 1.4;
    letter-spacing: 0;
    text-align: center;
  }
  .main-contents .case-study .btnbox {
    margin-top: 40px;
  }
}
@media screen and (max-width: 767px) {
  .main-contents .case-study {
    padding-block: 15.3846153846vw;
  }
  .main-contents .case-study__slider-wrapper {
    position: relative;
    margin-left: calc(50% - 50vw);
    width: 100vw;
  }
  .main-contents .case-study__slider-wrapper .swiper-pagination {
    bottom: -11.7948717949vw;
  }
  .main-contents .case-study__slider-wrapper .swiper-pagination-bullet {
    width: 3.0769230769vw;
    height: 3.0769230769vw;
    background-color: #fff;
    opacity: 0.5;
  }
  .main-contents .case-study__slider-wrapper .swiper-pagination-bullet-active {
    opacity: 1;
  }
  .main-contents .case-study__slider-wrapper .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet, .main-contents .case-study__slider-wrapper .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 2.3076923077vw;
  }
  .main-contents .case-study__slider-wrapper .swiper-button-next, .main-contents .case-study__slider-wrapper .swiper-button-prev {
    top: auto;
    bottom: -14.6153846154vw;
    width: 9.4871794872vw;
    height: 37px;
    border-radius: 50%;
    background-color: #fff;
  }
  .main-contents .case-study__slider-wrapper .swiper-button-next:after, .main-contents .case-study__slider-wrapper .swiper-button-prev:after {
    font-size: 3.8461538462vw;
    font-weight: 600;
    color: #3243CF;
  }
  .main-contents .case-study__slider-wrapper .swiper-button-next {
    right: 6.1538461538vw;
  }
  .main-contents .case-study__slider-wrapper .swiper-button-prev {
    left: 6.1538461538vw;
  }
  .main-contents .case-study__slider {
    margin-top: 10.2564102564vw;
    margin-left: calc(50% - 50vw);
    width: 100vw;
  }
  .main-contents .case-study__slide {
    padding: 3.5897435897vw 4.6153846154vw 4.6153846154vw;
    background: rgba(29, 54, 255, 0.55);
  }
  .main-contents .case-study__slide-logobox {
    margin-inline: auto;
    width: 41.5384615385vw;
  }
  .main-contents .case-study__slide-logobox img {
    width: 100%;
  }
  .main-contents .case-study__slide-imgbox {
    margin-top: 2.5641025641vw;
    width: 100%;
  }
  .main-contents .case-study__slide-imgbox img {
    width: 100%;
  }
  .main-contents .case-study__slide-ttl {
    margin-top: 3.5897435897vw;
    margin-bottom: 2.5641025641vw;
    padding-bottom: 3.5897435897vw;
    border-bottom: 0.2564102564vw solid #2858A6;
    font-weight: 500;
    font-size: 4.6153846154vw;
    line-height: 1.5;
    letter-spacing: 0;
  }
  .main-contents .case-study__slide-btn {
    display: block;
    position: relative;
    margin-inline: auto 0;
    padding-right: 4.1025641026vw;
    font-weight: 400;
    font-size: 3.8461538462vw;
    letter-spacing: 0;
    cursor: pointer;
  }
  .main-contents .case-study__slide-btn::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 0.5128205128vw;
    translate: 0 -50%;
    rotate: 45deg;
    width: 2.0512820513vw;
    height: 2.0512820513vw;
    border-top: 0.2564102564vw solid #fff;
    border-right: 0.2564102564vw solid #fff;
  }
  .main-contents .case-study .industry {
    margin-top: 30.5128205128vw;
  }
  .main-contents .case-study .industry__lead {
    font-weight: 500;
    font-size: 5.641025641vw;
    letter-spacing: 0.14em;
    text-align: center;
  }
  .main-contents .case-study .industry__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 6.9230769231vw 4.1025641026vw;
    margin-top: 10.2564102564vw;
  }
  .main-contents .case-study .industry__item {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 2;
    row-gap: 2.5641025641vw;
  }
  .main-contents .case-study .industry__imgbox {
    display: grid;
    place-content: center;
    padding: 6.4102564103vw 1%;
    border-radius: 2.5641025641vw;
    background-color: #526A8F;
  }
  .main-contents .case-study .industry__text {
    font-weight: 500;
    font-size: 3.3333333333vw;
    line-height: 1.4;
    letter-spacing: 0;
    text-align: center;
  }
  .main-contents .case-study .btnbox {
    margin-top: 10.2564102564vw;
  }
}
@media screen and (min-width: 768px) {
  .main-contents .price {
    padding-block: 80px;
    background: rgba(12, 25, 131, 0.55);
  }
  .main-contents .price__boxes {
    display: flex;
    column-gap: 20px;
    margin-top: 50px;
  }
  .main-contents .price__box {
    flex: 1;
    padding: 32px 6.57%;
    border: 1px solid rgba(255, 255, 255, 0.3);
    background: linear-gradient(105deg, rgba(255, 255, 255, 0.3) 0%, rgba(255, 255, 255, 0.05) 100%);
  }
  .main-contents .price .box__ttl {
    display: inline-block;
    padding: 10px;
    border: 1px solid #fff;
    font-weight: 700;
    font-size: 13px;
    line-height: 1;
    letter-spacing: 0;
  }
  .main-contents .price__list {
    margin-top: 28px;
    display: grid;
    row-gap: 20px;
  }
  .main-contents .price__ttl {
    font-weight: 500;
    font-size: 20px;
    letter-spacing: 0;
  }
  .main-contents .price__text {
    margin-top: 8px;
    font-weight: 500;
    font-size: 20px;
    vertical-align: bottom;
  }
  .main-contents .price__text .num {
    margin-right: 5px;
    font-family: "Outfit", sans-serif;
    font-weight: 600;
    font-size: 54px;
    line-height: 1;
    letter-spacing: 0;
    color: #138DFF;
  }
  .main-contents .price__text sub {
    bottom: 0;
  }
  .main-contents .price__note {
    margin-top: 30px;
    font-weight: 400;
    font-size: 13px;
    line-height: 1.5;
    letter-spacing: 0;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .main-contents .price {
    padding-block: 15.3846153846vw;
    background: rgba(12, 25, 131, 0.55);
  }
  .main-contents .price__boxes {
    display: grid;
    row-gap: 5.1282051282vw;
    margin-top: 10.2564102564vw;
  }
  .main-contents .price__box {
    padding: 2.8205128205vw;
    border: 1px solid rgba(255, 255, 255, 0.3);
    background: linear-gradient(105deg, rgba(255, 255, 255, 0.3) 0%, rgba(255, 255, 255, 0.05) 100%);
  }
  .main-contents .price .box__ttl {
    display: inline-block;
    padding: 2.5641025641vw;
    border: 1px solid #fff;
    font-weight: 700;
    font-size: 3.3333333333vw;
    line-height: 1;
    letter-spacing: 0;
  }
  .main-contents .price__list {
    margin-top: 7.1794871795vw;
    display: grid;
    row-gap: 5.1282051282vw;
  }
  .main-contents .price__ttl {
    font-weight: 500;
    font-size: 5.1282051282vw;
    letter-spacing: 0;
  }
  .main-contents .price__text {
    margin-top: 2.0512820513vw;
    font-weight: 500;
    font-size: 5.1282051282vw;
    vertical-align: bottom;
  }
  .main-contents .price__text .num {
    margin-right: 1.2820512821vw;
    font-family: "Outfit", sans-serif;
    font-weight: 600;
    font-size: 13.8461538462vw;
    line-height: 1;
    letter-spacing: 0;
    color: #138DFF;
  }
  .main-contents .price__text sub {
    bottom: 0;
  }
  .main-contents .price__note {
    margin-top: 7.6923076923vw;
    font-weight: 400;
    font-size: 3.3333333333vw;
    line-height: 1.5;
    letter-spacing: 0;
    text-align: center;
  }
}
@media screen and (min-width: 768px) {
  .main-contents .cooperation {
    padding-block: 100px;
  }
  .main-contents .cooperation__ttl {
    font-weight: 500;
    font-size: 30px;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center;
  }
  .main-contents .cooperation__list {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 14px;
    margin-top: 32px;
  }
  .main-contents .cooperation__item img {
    width: 100%;
  }
  .main-contents .cooperation__textbox {
    margin-top: 32px;
  }
  .main-contents .cooperation__maintext {
    font-weight: 500;
    font-size: 24px;
    line-height: 1.5;
    letter-spacing: 0.06em;
  }
  .main-contents .cooperation__subtext {
    margin-top: 10px;
    font-weight: 500;
    font-size: 20px;
    line-height: 1.5;
    letter-spacing: 0.06em;
  }
  .main-contents .cooperation__note {
    margin-top: 22px;
  }
  .main-contents .cooperation__note-item {
    font-weight: 400;
    font-size: 13px;
    line-height: 1.6;
    letter-spacing: 0;
  }
}
@media screen and (max-width: 767px) {
  .main-contents .cooperation {
    padding-block: 15.3846153846vw;
  }
  .main-contents .cooperation__ttl {
    font-weight: 500;
    font-size: 7.6923076923vw;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center;
  }
  .main-contents .cooperation__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2.5641025641vw 3.0769230769vw;
    margin-top: 8.2051282051vw;
  }
  .main-contents .cooperation__item img {
    width: 100%;
  }
  .main-contents .cooperation__textbox {
    margin-top: 8.2051282051vw;
  }
  .main-contents .cooperation__maintext {
    font-weight: 500;
    font-size: 6.1538461538vw;
    line-height: 1.5;
    letter-spacing: 0.06em;
  }
  .main-contents .cooperation__subtext {
    margin-top: 2.5641025641vw;
    font-weight: 500;
    font-size: 5.1282051282vw;
    line-height: 1.5;
    letter-spacing: 0.06em;
  }
  .main-contents .cooperation__note {
    margin-top: 5.641025641vw;
  }
  .main-contents .cooperation__note-item {
    font-weight: 400;
    font-size: 3.3333333333vw;
    line-height: 1.6;
    letter-spacing: 0;
  }
}
/* ==========================================================================
  page-<slug>.scss
  - このページ固有のスタイルを記述（<slug> を置換）
  - 事前に _base.scss をビルドへ読み込んでおくこと（@use or @import）
  ========================================================================== */
@media screen and (min-width: 768px) {
  .main-contents .flow {
    padding-block: 100px;
    background: rgba(12, 25, 131, 0.55);
  }
  .main-contents .flow__contents {
    display: grid;
    grid-template-columns: 1fr 25.56%;
    margin-top: 60px;
    margin-inline: auto;
    width: 98%;
    max-width: 575px;
  }
  .main-contents .flow__step {
    display: flex;
    align-items: stretch;
    column-gap: 26px;
  }
  .main-contents .flow__numbox {
    display: grid;
    align-items: start;
    position: relative;
  }
  .main-contents .flow__num {
    display: grid;
    place-content: center;
    margin-top: 12px;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    border: 1px solid #fff;
    font-family: "Outfit", sans-serif;
    font-weight: 600;
    font-size: 28px;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
  }
  .main-contents .flow__line {
    flex: 1;
    display: flex;
    align-items: center;
    column-gap: 14px;
    margin-bottom: 24px;
    padding-bottom: 24px;
  }
  .main-contents .flow__ttl {
    font-weight: 500;
    font-size: 20px;
    line-height: 1;
    letter-spacing: 0.06em;
  }
  .main-contents .flow__text {
    margin-top: 6px;
    font-weight: 500;
    font-size: 15px;
    line-height: 1.5;
    letter-spacing: 0.06em;
  }
  .main-contents .flow__period {
    grid-column: 2/3;
    grid-row: 2/7;
    display: grid;
    place-content: center;
    background-image: url("../images/arrow_flow.svg");
    background-repeat: no-repeat;
    background-size: contain;
    writing-mode: vertical-rl;
    text-orientation: upright;
    font-feature-settings: initial;
    font-weight: 500;
    font-size: 20px;
    line-height: 1.26;
    letter-spacing: 0.06em;
    text-align: center;
  }
  .main-contents .flow__step--n02 .flow__num, .main-contents .flow__step--n06 .flow__num {
    background-color: #3243CF;
    border-color: #3243CF;
  }
  .main-contents .flow__step--n02 .flow__numbox::before, .main-contents .flow__step--n03 .flow__numbox::before, .main-contents .flow__step--n04 .flow__numbox::before, .main-contents .flow__step--n05 .flow__numbox::before, .main-contents .flow__step--n06 .flow__numbox::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    translate: -50% 0;
    width: 1px;
    height: 12px;
    background-color: #fff;
  }
  .main-contents .flow__step--n01 .flow__numbox::after, .main-contents .flow__step--n02 .flow__numbox::after, .main-contents .flow__step--n03 .flow__numbox::after, .main-contents .flow__step--n04 .flow__numbox::after, .main-contents .flow__step--n05 .flow__numbox::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    translate: -50% 0;
    width: 1px;
    height: calc(100% - 12px - 50px);
    background-color: #fff;
  }
  .main-contents .flow__step--n01 {
    grid-column: 1/3;
  }
  .main-contents .flow__step--n01 .flow__line {
    border-bottom: 1px dashed rgba(255, 255, 255, 0.5);
  }
  .main-contents .flow__step--n02 {
    grid-column: 1/2;
  }
  .main-contents .flow__step--n03 {
    grid-column: 1/2;
  }
  .main-contents .flow__step--n04 {
    grid-column: 1/2;
  }
  .main-contents .flow__step--n05 {
    grid-column: 1/2;
  }
  .main-contents .flow__step--n06 {
    grid-column: 1/2;
  }
  .main-contents .flow__step--n06 .flow__line {
    margin-bottom: 0;
    padding-bottom: 0;
  }
}
@media screen and (max-width: 767px) {
  .main-contents .flow {
    padding-block: 15.3846153846vw;
    background: rgba(12, 25, 131, 0.55);
  }
  .main-contents .flow__contents {
    display: grid;
    grid-template-columns: 1fr 17.1794871795vw;
    margin-top: 17.9487179487vw;
    margin-inline: auto;
  }
  .main-contents .flow__step {
    display: flex;
    align-items: stretch;
    column-gap: 6.6666666667vw;
  }
  .main-contents .flow__numbox {
    display: grid;
    align-items: start;
    position: relative;
  }
  .main-contents .flow__num {
    display: grid;
    place-content: center;
    margin-top: 3.0769230769vw;
    width: 12.8205128205vw;
    height: 12.8205128205vw;
    border-radius: 50%;
    border: 1px solid #fff;
    font-family: "Outfit", sans-serif;
    font-weight: 600;
    font-size: 7.1794871795vw;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
  }
  .main-contents .flow__line {
    flex: 1;
    display: grid;
    row-gap: 2.5641025641vw;
    margin-bottom: 5.8974358974vw;
    padding-bottom: 5.8974358974vw;
  }
  .main-contents .flow__imgbox {
    width: 70px;
  }
  .main-contents .flow__imgbox img {
    width: 100%;
    height: auto;
  }
  .main-contents .flow__ttl {
    font-weight: 500;
    font-size: 5.1282051282vw;
    line-height: 1.5;
    letter-spacing: 0.06em;
  }
  .main-contents .flow__text {
    font-weight: 500;
    font-size: 3.8461538462vw;
    line-height: 1.5;
    letter-spacing: 0.06em;
  }
  .main-contents .flow__period {
    grid-column: 2/3;
    grid-row: 2/7;
    display: grid;
    place-content: center;
    background-image: url("../images/arrow_flow_sp.svg");
    background-repeat: no-repeat;
    background-size: contain;
    writing-mode: vertical-rl;
    text-orientation: upright;
    font-feature-settings: initial;
    font-weight: 500;
    font-size: 5.1282051282vw;
    line-height: 1.26;
    letter-spacing: 0.06em;
    text-align: center;
  }
  .main-contents .flow__step--n02 .flow__num, .main-contents .flow__step--n06 .flow__num {
    background-color: #3243CF;
    border-color: #3243CF;
  }
  .main-contents .flow__step--n02 .flow__numbox::before, .main-contents .flow__step--n03 .flow__numbox::before, .main-contents .flow__step--n04 .flow__numbox::before, .main-contents .flow__step--n05 .flow__numbox::before, .main-contents .flow__step--n06 .flow__numbox::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    translate: -50% 0;
    width: 1px;
    height: 3.0769230769vw;
    background-color: #fff;
  }
  .main-contents .flow__step--n01 .flow__numbox::after, .main-contents .flow__step--n02 .flow__numbox::after, .main-contents .flow__step--n03 .flow__numbox::after, .main-contents .flow__step--n04 .flow__numbox::after, .main-contents .flow__step--n05 .flow__numbox::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    translate: -50% 0;
    width: 1px;
    height: calc(100% - 3.0769230769vw - 12.8205128205vw);
    background-color: #fff;
  }
  .main-contents .flow__step--n01 {
    grid-column: 1/3;
  }
  .main-contents .flow__step--n01 .flow__line {
    border-bottom: 1px dashed rgba(255, 255, 255, 0.5);
  }
  .main-contents .flow__step--n02 {
    grid-column: 1/2;
  }
  .main-contents .flow__step--n03 {
    grid-column: 1/2;
  }
  .main-contents .flow__step--n04 {
    grid-column: 1/2;
  }
  .main-contents .flow__step--n05 {
    grid-column: 1/2;
  }
  .main-contents .flow__step--n06 {
    grid-column: 1/2;
  }
  .main-contents .flow__step--n06 .flow__line {
    margin-bottom: 0;
    padding-bottom: 0;
  }
}
/* ==========================================================================
  page-<slug>.scss
  - このページ固有のスタイルを記述（<slug> を置換）
  - 事前に _base.scss をビルドへ読み込んでおくこと（@use or @import）
  ========================================================================== */
@media screen and (min-width: 768px) {
  .main-contents .s-contact {
    padding-block: 100px;
  }
  .main-contents .s-contact__box {
    margin-top: 60px;
    margin-inline: auto;
    padding: 80px 6.25%;
    width: 95%;
    max-width: 800px;
    max-height: 2223px;
    border-radius: 40px;
    background: #E4E4E4;
    overflow: hidden;
  }
  .main-contents .s-contact__box [id*=embbed] {
    width: 100% !important;
    height: auto !important;
    overflow: visible !important;
  }
}
@media screen and (max-width: 767px) {
  .main-contents .s-contact {
    padding-block: 15.3846153846vw 20vw;
  }
  .main-contents .s-contact__box {
    margin-top: 10.2564102564vw;
    margin-inline: auto;
    padding: 7.6923076923vw 2.5641025641vw;
    border-radius: 5.1282051282vw;
    background: #E4E4E4;
    overflow: hidden;
  }
  .main-contents .s-contact__box [id*=embbed] {
    width: 100% !important;
    height: auto !important;
    overflow: visible !important;
  }
  .main-contents .s-contact__box .form-area iframe {
    width: 100%;
    height: 2100px;
  }
}
/* ==========================================================================
  page-<slug>.scss
  - このページ固有のスタイルを記述（<slug> を置換）
  - 事前に _base.scss をビルドへ読み込んでおくこと（@use or @import）
  ========================================================================== */
@media screen and (min-width: 768px) {
  .footer {
    position: relative;
    background: rgba(4, 20, 46, 0.9);
    padding-block: 60px;
    color: #fff;
    z-index: 1;
  }
  .footer__list {
    display: flex;
    justify-content: center;
    column-gap: 23px;
  }
  .footer__link {
    font-weight: 400;
    font-size: 14px;
    line-height: 1.5;
    letter-spacing: 0.06em;
    transition: opacity 0.3s ease;
  }
  .footer__link:hover {
    opacity: 0.7;
  }
  .footer__copy {
    margin-top: 17px;
    font-weight: 400;
    font-size: 12px;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .footer {
    position: relative;
    background: rgba(4, 20, 46, 0.9);
    padding-block: 10.2564102564vw;
    color: #fff;
    z-index: 1;
  }
  .footer__list {
    display: grid;
    place-content: center;
    row-gap: 3.0769230769vw;
  }
  .footer__link {
    font-weight: 400;
    font-size: 3.5897435897vw;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center;
    text-decoration: underline;
  }
  .footer__copy {
    margin-top: 6.1538461538vw;
    font-weight: 400;
    font-size: 2.8205128205vw;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center;
  }
}
/* ==========================================================================
  page-<slug>.scss
  - このページ固有のスタイルを記述（<slug> を置換）
  - 事前に _base.scss をビルドへ読み込んでおくこと（@use or @import）
  ========================================================================== */
@media screen and (min-width: 768px) {
  .modal__overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(7, 14, 72, 0.85);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 20;
  }
  .modal__container {
    display: grid;
    place-content: center;
    width: 100%;
    height: 100%;
  }
  .modal__close {
    position: absolute;
    top: 24px;
    right: 24px;
    background: transparent;
    border: 0;
  }
  .modal__close::before {
    content: "✕";
    font-size: 37px;
    color: #fff;
  }
  .modal--case-study .modal__content {
    background-color: #fff;
    padding: 16px 24px;
    max-width: 547px;
    max-height: 100vh;
    border-radius: 20px;
    overflow-y: auto;
    box-sizing: border-box;
    background: rgba(29, 54, 255, 0.55);
  }
  .modal--case-study .modal__logobox {
    margin-inline: auto;
    width: 162px;
  }
  .modal--case-study .modal__logobox img {
    width: 100%;
  }
  .modal--case-study .modal__imgbox {
    margin-top: 10px;
    width: 100%;
  }
  .modal--case-study .modal__imgbox img {
    width: 100%;
  }
  .modal--case-study .modal__ttl {
    margin-top: 12px;
    font-weight: 500;
    font-size: 18px;
    line-height: 1.5;
    letter-spacing: 0;
    color: #fff;
  }
  .modal--case-study .modal__text {
    margin-block: 18px 12px;
    padding-bottom: 20px;
    border-bottom: 1px solid #2858A6;
    font-weight: 400;
    font-size: 15px;
    line-height: 1.5;
    letter-spacing: 0;
    color: #fff;
  }
  .modal--case-study .modal__btn {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding-right: 16px;
    font-weight: 400;
    font-size: 15px;
    line-height: 1.5;
    letter-spacing: 0;
    color: #fff;
    position: relative;
    cursor: pointer;
    -webkit-appearance: button;
    text-transform: none;
    overflow: visible;
    will-change: transform;
    -moz-osx-font-smoothing: grayscale;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    transition: -webkit-transform 0.25s ease-out;
    transition: transform 0.25s ease-out;
    transition: transform 0.25s ease-out, -webkit-transform 0.25s ease-out;
  }
  .modal--case-study .modal__btn::after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 0;
    translate: 0 -50%;
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    rotate: 45deg;
  }
  .modal--contact [id*=embbed] {
    width: 100% !important;
    height: auto !important;
    overflow: visible !important;
  }
  .modal--contact .form-area iframe {
    width: 100%;
    height: 1000px;
  }
  .modal--contact .modal__content {
    margin-inline: auto;
    padding: 80px 50px;
    width: clamp(700px, 585.714px + 238.095vw, 800px);
    height: 90vh;
    max-height: 730px;
    border-radius: 40px;
    background: #E4E4E4;
    overflow-y: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .modal--contact .modal__content::-webkit-scrollbar {
    display: none;
  }
  @keyframes mmfadeIn {
    from {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  @keyframes mmfadeOut {
    from {
      opacity: 1;
    }
    to {
      opacity: 0;
    }
  }
  @keyframes mmslideIn {
    from {
      transform: translateY(15%);
    }
    to {
      transform: translateY(0);
    }
  }
  @keyframes mmslideOut {
    from {
      transform: translateY(0);
    }
    to {
      transform: translateY(-10%);
    }
  }
  .micromodal-slide {
    display: none;
  }
  .micromodal-slide.is-open {
    display: block;
  }
  .micromodal-slide[aria-hidden=false] .modal__overlay {
    animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
  }
  .micromodal-slide[aria-hidden=false] .modal__container {
    animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
  }
  .micromodal-slide[aria-hidden=true] .modal__overlay {
    animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
  }
  .micromodal-slide[aria-hidden=true] .modal__container {
    animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
  }
  .micromodal-slide .modal__container,
  .micromodal-slide .modal__overlay {
    will-change: transform;
  }
}
@media screen and (max-width: 767px) {
  .modal__overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(7, 14, 72, 0.85);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 20;
  }
  .modal__container {
    display: grid;
    place-content: center;
    width: 100%;
    height: 100%;
  }
  .modal__close {
    position: absolute;
    top: 6.1538461538vw;
    right: 4.358974359vw;
    background: transparent;
    border: 0;
  }
  .modal__close::before {
    content: "✕";
    font-size: 9.4871794872vw;
    color: #fff;
  }
  .modal--case-study .modal__content {
    background-color: #fff;
    padding: 3.5897435897vw 4.6153846154vw;
    width: 87.6923076923vw;
    border-radius: 4.1025641026vw;
    overflow-y: auto;
    box-sizing: border-box;
    background: rgba(29, 54, 255, 0.55);
  }
  .modal--case-study .modal__logobox {
    margin-inline: auto;
    width: 41.5384615385vw;
  }
  .modal--case-study .modal__logobox img {
    width: 100%;
  }
  .modal--case-study .modal__imgbox {
    margin-top: 2.5641025641vw;
    width: 100%;
  }
  .modal--case-study .modal__imgbox img {
    width: 100%;
  }
  .modal--case-study .modal__ttl {
    margin-top: 3.0769230769vw;
    font-weight: 500;
    font-size: 4.6153846154vw;
    line-height: 1.5;
    letter-spacing: 0;
    color: #fff;
  }
  .modal--case-study .modal__text {
    margin-block: 4.6153846154vw 3.0769230769vw;
    padding-bottom: 5.1282051282vw;
    border-bottom: 1px solid #2858A6;
    font-weight: 400;
    font-size: 3.8461538462vw;
    line-height: 1.5;
    letter-spacing: 0;
    color: #fff;
  }
  .modal--case-study .modal__btn {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding-right: 4.1025641026vw;
    font-weight: 400;
    font-size: 3.8461538462vw;
    line-height: 1.5;
    letter-spacing: 0;
    color: #fff;
    position: relative;
    cursor: pointer;
    -webkit-appearance: button;
    text-transform: none;
    overflow: visible;
    will-change: transform;
    -moz-osx-font-smoothing: grayscale;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    transition: -webkit-transform 0.25s ease-out;
    transition: transform 0.25s ease-out;
    transition: transform 0.25s ease-out, -webkit-transform 0.25s ease-out;
  }
  .modal--case-study .modal__btn::after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 0;
    translate: 0 -50%;
    width: 2.5641025641vw;
    height: 2.5641025641vw;
    border-top: 0.5128205128vw solid #fff;
    border-right: 0.5128205128vw solid #fff;
    rotate: 45deg;
  }
  .modal--contact [id*=embbed] {
    width: 100% !important;
    height: auto !important;
    overflow: visible !important;
  }
  .modal--contact .form-area iframe {
    width: 100%;
    height: 1000px;
  }
  .modal--contact .modal__content {
    margin-inline: auto;
    padding: 7.6923076923vw 2.5641025641vw;
    width: 92.8205128205vw;
    height: 84vh;
    border-radius: 5.1282051282vw;
    background: #E4E4E4;
    overflow-y: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .modal--contact .modal__content::-webkit-scrollbar {
    display: none;
  }
  @keyframes mmfadeIn {
    from {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  @keyframes mmfadeOut {
    from {
      opacity: 1;
    }
    to {
      opacity: 0;
    }
  }
  @keyframes mmslideIn {
    from {
      transform: translateY(15%);
    }
    to {
      transform: translateY(0);
    }
  }
  @keyframes mmslideOut {
    from {
      transform: translateY(0);
    }
    to {
      transform: translateY(-10%);
    }
  }
  .micromodal-slide {
    display: none;
  }
  .micromodal-slide.is-open {
    display: block;
  }
  .micromodal-slide[aria-hidden=false] .modal__overlay {
    animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
  }
  .micromodal-slide[aria-hidden=false] .modal__container {
    animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
  }
  .micromodal-slide[aria-hidden=true] .modal__overlay {
    animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
  }
  .micromodal-slide[aria-hidden=true] .modal__container {
    animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
  }
  .micromodal-slide .modal__container,
  .micromodal-slide .modal__overlay {
    will-change: transform;
  }
}/*# sourceMappingURL=style.css.map */