@charset "UTF-8";
/* =============================================================================
Reset style
========================================================================== */
/*
YUI 3.18.1 (build f7e7bcb)
Copyright 2014 Yahoo! Inc. All rights reserved.
Licensed under the BSD License.
http://yuilibrary.com/license/
*/
html {
  color: #333;
  background: #fff;
}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
textarea,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0;
}

.wrapper {
  position: relative;
}

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

fieldset,
img {
  border: 0;
}

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
  font-style: normal;
  font-weight: normal;
}

ol,
ul {
  list-style: none;
}

caption,
th {
  text-align: left;
}

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

a,
a:hover,
a:active,
a:visited {
  text-decoration: none;
  outline: none;
}

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

abbr,
acronym {
  border: 0;
  font-variant: normal;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input,
textarea,
select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  font-size: 100%;
}

legend {
  color: #333;
}

#yui3-css-stamp.cssreset {
  display: none;
}

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

/* =============================================================================
Image
========================================================================== */
a,
button {
  display: block;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  cursor: pointer;
}

img {
  width: 100%;
}

/* =============================================================================
Basic style
========================================================================== */
html {
  overflow-x: hidden;
}

body {
  position: relative;
  overflow-x: hidden;
  word-break: break-all;
  color: #333;
  font-family: YuGothic, "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, sans-serif;
}

.minchou {
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "MS Mincho", "HiraMinProN-W3", serif;
}

.arial {
  font-family: "Arial", sans-serif;
  line-height: 1;
}

.din {
  font-family: "din-condensed", sans-serif;
}

.age {
  font-family: agenda, sans-serif;
}

/*==============================================================================
Media
============================================================================= */
/*==============================================================================
Responsive
============================================================================= */
@media screen and (max-width: 768px) {
  html {
    font-size: 13.3333vw;
  }
  .inner {
    width: 6.7rem;
    margin: 0 auto;
    position: relative;
    font-size: 0.26rem;
    letter-spacing: 0.04em;
  }
  .pc-only {
    display: none;
  }
  .sp-only {
    display: block;
  }
  p {
    font-size: 0.3rem;
    line-height: 1.55;
    letter-spacing: 0.04em;
  }
}
@media screen and (min-width: 769px) {
  .inner {
    width: 1000px;
    margin: 0 auto;
    position: relative;
    letter-spacing: 0.04em;
  }
  .pc-only {
    display: block;
  }
  .sp-only {
    display: none;
  }
  p {
    font-size: 18px;
    line-height: 1.55;
    letter-spacing: 0.04em;
  }
  a,
  button {
    cursor: pointer;
  }
  a:hover,
  button:hover {
    opacity: 0.8;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
}
.blue {
  color: #031264;
}

.yellow {
  color: #ffef38;
}

.bold {
  font-weight: bold;
}

img {
  display: block;
  vertical-align: bottom;
  max-width: 100%;
}

a {
  color: #333;
}

h2,
h3,
h4 {
  letter-spacing: 0.04em;
  line-height: 1.55;
}

*:focus {
  outline: none;
}

.orange {
  color: #f39e2f;
}

.red {
  color: #ff0000;
}

.water {
  color: #39b3d1;
}

.water02 {
  color: #0f91b1;
}

.white {
  color: #fff;
}

.ta-c {
  text-align: center;
}

.movie {
  position: relative;
  background: #fff;
}

.youtube {
  position: absolute;
  width: 100%;
  height: 100%;
}
.youtube:hover {
  opacity: 0.8;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.play {
  cursor: pointer;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
  width: 100%;
  padding-bottom: 56.5%;
}

.player {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.thumb {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}

iframe {
  position: absolute;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 768px) {
  /*==============================================================================
  swiper
  ============================================================================= */
  .swiper__slider {
    position: relative;
  }
  .swiper-container {
    overflow: hidden;
  }
  .swiper-button-prev:after,
  .swiper-container-rtl .swiper-button-next:after {
    content: "prev";
    display: none;
  }
  .swiper-button-next:after,
  .swiper-container-rtl .swiper-button-prev:after {
    content: "next";
    display: none;
  }
  .swiper-button-prev,
  .swiper-button-next {
    width: 0.7rem;
    height: 0.7rem;
    top: inherit;
    bottom: -1rem;
    z-index: 11;
  }
  .swiper-button-prev:hover,
  .swiper-button-next:hover {
    opacity: 0.8;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .swiper-button-prev {
    left: 1.25rem;
    background: url(../images/dai_arrow01_sp.webp) top center/contain no-repeat;
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
  }
  .swiper-button-next {
    right: 1.25rem;
    background: url(../images/dai_arrow01_sp.webp) top center/contain no-repeat;
  }
  .swiper__pagination {
    position: absolute;
    right: 0;
    left: 0;
    bottom: -0.75rem;
    margin: 0 auto;
  }
  .swiper__pagination .swiper-pagination {
    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;
    width: 100%;
    bottom: 0;
  }
  .swiper__pagination .swiper-pagination-bullet {
    display: block;
    width: 0.21rem;
    height: 0.21rem;
    margin: 0 0.15rem;
    border: 0.03rem solid #b6b6b6;
    background-color: #ffffff;
    opacity: 1;
    vertical-align: middle;
  }
  .swiper__pagination .swiper-pagination-bullet-active {
    background-color: #428fae;
    border: none;
  }
  /*==============================================================================
  btn
  ============================================================================= */
  .ac__btn02 {
    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;
    width: 4rem;
    height: 0.6rem;
    margin: 0 auto;
    border-radius: 0.3rem;
    background-color: #7faaf8;
    font-size: 0.3rem;
    letter-spacing: 0.08em;
    color: #fff;
    font-weight: bold;
    background-image: -webkit-gradient(linear, left bottom, left top, from(#397f9d), color-stop(99%, #428fae), to(#428fae));
    background-image: linear-gradient(to top, #397f9d 0%, #428fae 99%, #428fae 100%);
  }
  .ac__btn02::after {
    content: "";
    display: block;
    width: 0.27rem;
    height: 0.31rem;
    margin-left: 0.2rem;
    background: url(../images/eye_arrow01.webp) top center/contain no-repeat;
  }
  .ac__btn02--close {
    background-image: -webkit-gradient(linear, left bottom, left top, from(#808080), color-stop(99%, #9a9a9a), to(#9a9a9a));
    background-image: linear-gradient(to top, #808080 0%, #9a9a9a 99%, #9a9a9a 100%);
  }
  .ac__btn02--close::after {
    margin-left: 0.4rem;
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
  }
  .ac__btn02.open {
    background-image: -webkit-gradient(linear, left bottom, left top, from(#808080), color-stop(99%, #9a9a9a), to(#9a9a9a));
    background-image: linear-gradient(to top, #808080 0%, #9a9a9a 99%, #9a9a9a 100%);
  }
  .ac__btn02.open::after {
    margin-left: 0.4rem;
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
  }
  .youtube:hover {
    opacity: 1;
    -webkit-transition: none;
    transition: none;
  }
}
@media screen and (min-width: 769px) {
  /*==============================================================================
  swiper
  ============================================================================= */
  .swiper__slider {
    position: relative;
  }
  .swiper-container {
    overflow: hidden;
  }
  .swiper-button-prev:after,
  .swiper-container-rtl .swiper-button-next:after {
    content: "prev";
    display: none;
  }
  .swiper-button-next:after,
  .swiper-container-rtl .swiper-button-prev:after {
    content: "next";
    display: none;
  }
  .swiper-button-prev,
  .swiper-button-next {
    width: 40px;
    height: 40px;
    top: inherit;
    bottom: -65px;
    z-index: 11;
  }
  .swiper-button-prev:hover,
  .swiper-button-next:hover {
    opacity: 0.8;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .swiper-button-prev {
    left: 400px;
    background: url(../images/dai_arrow01.webp) top center/contain no-repeat;
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
  }
  .swiper-button-next {
    right: 400px;
    background: url(../images/dai_arrow01.webp) top center/contain no-repeat;
  }
  .swiper__pagination {
    position: absolute;
    right: 0;
    left: 0;
    bottom: -60px;
    margin: 0 auto;
  }
  .swiper__pagination .swiper-pagination {
    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;
    width: 100%;
  }
  .swiper__pagination .swiper-pagination-bullet {
    display: block;
    width: 12px;
    height: 12px;
    margin: 0 8px;
    border: 3px solid #b6b6b6;
    background-color: #ffffff;
    opacity: 1;
    vertical-align: middle;
  }
  .swiper__pagination .swiper-pagination-bullet-active {
    background-color: #428fae;
    border: none;
  }
  /*==============================================================================
  btn
  ============================================================================= */
  .ac__btn02 {
    cursor: pointer;
    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;
    width: 340px;
    height: 60px;
    margin: 0 auto;
    border-radius: 30px;
    background-color: #7faaf8;
    font-size: 28px;
    letter-spacing: 0.08em;
    color: #fff;
    font-weight: bold;
    background-image: -webkit-gradient(linear, left bottom, left top, from(#397f9d), color-stop(99%, #428fae), to(#428fae));
    background-image: linear-gradient(to top, #397f9d 0%, #428fae 99%, #428fae 100%);
  }
  .ac__btn02:hover {
    opacity: 0.8;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .ac__btn02::after {
    content: "";
    display: block;
    width: 17px;
    height: 21px;
    margin-left: 20px;
    background: url(../images/eye_arrow01.webp) top center/contain no-repeat;
  }
  .ac__btn02--close {
    background-image: -webkit-gradient(linear, left bottom, left top, from(#808080), color-stop(99%, #9a9a9a), to(#9a9a9a));
    background-image: linear-gradient(to top, #808080 0%, #9a9a9a 99%, #9a9a9a 100%);
  }
  .ac__btn02--close::after {
    margin-left: 40px;
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
  }
  .ac__btn02.open {
    background-image: -webkit-gradient(linear, left bottom, left top, from(#808080), color-stop(99%, #9a9a9a), to(#9a9a9a));
    background-image: linear-gradient(to top, #808080 0%, #9a9a9a 99%, #9a9a9a 100%);
  }
  .ac__btn02.open::after {
    margin-left: 0.4rem;
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
  }
}
/*==============================================================================
Header
============================================================================= */
@media screen and (min-width: 769px) {
  .header__txt01 {
    padding: 10px 0;
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    letter-spacing: 0.07em;
  }
}
@media screen and (max-width: 768px) {
  .header__txt01 {
    padding: 0.15rem 0;
    text-align: center;
    line-height: 1.4;
    font-size: 0.34rem;
    font-weight: bold;
    color: #fff;
    background-color: #f39e2f;
  }
}
/*==============================================================================
fv
============================================================================= */
@media screen and (max-width: 768px) {
  .fv__bg01 {
    padding: 0.3rem 0 0;
  }
  .fv__inner {
    position: relative;
    width: 100%;
  }
  .fv__ttl01 {
    width: 6.53rem;
    margin: 0 auto;
  }
  .fv__ttl02 {
    width: 7.23rem;
    margin: 0.3rem 0rem 0 auto;
  }
  .fv__medal {
    width: 3.8rem;
    margin-top: -3rem;
  }
  .fv__bg02 {
    position: relative;
    z-index: 3;
    margin-top: 0.2rem;
  }
  .fv__ttl03 {
    position: relative;
  }
}
/*==============================================================================
fv
============================================================================= */
@media screen and (min-width: 769px) {
  .fv__bg01 {
    padding: 35px 0 0;
    background: url(../images/fv_bg01.webp) top left;
  }
  .fv__inner {
    position: relative;
  }
  .fv__ttl01 {
    width: 958px;
    margin: 0 auto;
  }
  .fv__ttl02 {
    width: 896px;
    margin: 25px -60px 0 auto;
  }
  .fv__medal {
    position: absolute;
    left: -50px;
    bottom: 150px;
    width: 286px;
  }
  .fv__bg02 {
    position: relative;
    z-index: 2;
    margin-top: -150px;
  }
  .fv__ttl03 {
    position: relative;
    width: 2000px;
    -webkit-transform: translateX(-500px);
            transform: translateX(-500px);
  }
}
/*==============================================================================
cta
============================================================================= */
@media screen and (max-width: 768px) {
  .cta--bg {
    position: relative;
    z-index: 2;
    padding: 0.7rem 0 0.5rem;
    background: url(../images/cta_bg01_sp.webp) top center/cover no-repeat, #edf1f7;
  }
  .cta--bg01 {
    margin-top: -0.7rem;
    padding: 1.1rem 0 0.5rem;
    background: url(../images/cta_bg03_sp.webp) top center/cover no-repeat, #edf1f7;
  }
  .cta__ttl01 {
    width: 5.07rem;
  }
  .cta__ttl01--num01 {
    width: 100%;
  }
  .cta__btn01 {
    height: 1.8rem;
    margin: 0.4rem auto 0;
    padding: 0.3rem 0 0 0.6rem;
    background: url(../images/cta_bg02_sp.webp) top center/cover no-repeat;
    color: #fff;
    font-weight: bold;
    line-height: 1.2;
    font-size: 0.34rem;
    text-shadow: 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219;
  }
  .cta__btn01 .txt {
    font-size: 0.3rem;
  }
  .cta__btn01 .num {
    font-size: 0.62rem;
  }
  .cta__btn01 .yellow {
    font-size: 0.4rem;
  }
}
@media screen and (min-width: 769px) {
  .cta--bg {
    position: relative;
    z-index: 2;
    padding: 60px 0;
    background: url(../images/cta_bg01.webp) top center/2000px no-repeat, #edf1f7;
  }
  .cta--bg01 {
    margin-top: -46px;
    padding: 60px 0;
  }
  .cta__ttl01 {
    margin: 0 auto;
    width: 572px;
  }
  .cta__ttl01--num01 {
    width: 546px;
  }
  .cta__btn01 {
    width: 700px;
    height: 130px;
    margin: 30px auto 0;
    padding-top: 20px;
    background: url(../images/cta_bg02.webp) top center/100% 100% no-repeat;
    color: #fff;
    text-align: center;
    font-weight: bold;
    line-height: 1.2;
    font-size: 29px;
    text-shadow: 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219;
  }
  .cta__btn01 .num {
    font-size: 54px;
  }
  .cta__btn01 .yellow {
    font-size: 34px;
  }
}
/*==============================================================================
check
============================================================================= */
@media screen and (max-width: 768px) {
  .check--bg {
    padding: 0.8rem 0 1rem;
    background: url(../images/check_bg01_sp.webp) top center/100% no-repeat, #e0eef1;
  }
  .check__inner {
    position: relative;
    z-index: 1;
  }
  .check__ttl01 {
    width: 6.5rem;
    margin: 0 auto;
  }
  .check__box {
    position: relative;
    margin-top: 0.55rem;
    padding: 0.55rem 0.4rem;
    -webkit-box-shadow: 0.02rem 0.12rem 0.3rem rgba(128, 108, 86, 0.2);
            box-shadow: 0.02rem 0.12rem 0.3rem rgba(128, 108, 86, 0.2);
    border-radius: 0.1rem;
    background: url(../images/dai_bg01_sp.webp) top left/50%;
  }
  .check__box__ttl {
    position: relative;
    font-size: 0.34rem;
    color: #428fae;
    line-height: 1.4;
    font-weight: 500;
  }
  .check__box__ttl .big {
    font-size: 0.74rem;
  }
  .check__box__ttl::after {
    content: "";
    display: block;
    position: absolute;
    width: 2rem;
    height: 1.66rem;
    top: -0.85rem;
    right: -0.66rem;
    background: url(../images/check_comment01.webp) top center/contain no-repeat;
  }
  .check__list {
    margin-top: 0.4rem;
  }
  .check__item {
    position: relative;
    margin-top: 0.2rem;
    padding: 0.4rem 0.15rem 0.4rem 1.3rem;
    border-radius: 0.15rem;
    background-color: #e3eef1;
    font-size: 0.38rem;
    text-align: center;
    line-height: 1.3;
  }
  .check__item .age {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 0.3rem;
    color: #5fb1ce;
    font-size: 0.5rem;
    line-height: 1;
  }
  .check__ac {
    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;
    width: 3rem;
    height: 0.6rem;
    margin: 0.35rem auto 0;
    border-radius: 0.3rem;
    background-color: #7faaf8;
    background-image: -webkit-gradient(linear, left bottom, left top, from(#397f9d), color-stop(99%, #428fae), to(#428fae));
    background-image: linear-gradient(to top, #397f9d 0%, #428fae 99%, #428fae 100%);
    font-size: 0.28rem;
    color: #fff;
    font-weight: bold;
  }
  .check__ac.open {
    background-image: -webkit-gradient(linear, left bottom, left top, from(#808080), color-stop(99%, #9a9a9a), to(#9a9a9a));
    background-image: linear-gradient(to top, #808080 0%, #9a9a9a 99%, #9a9a9a 100%);
  }
  .check__content {
    margin-top: 0.4rem;
  }
  .check__ttl02 {
    position: relative;
    font-size: 0.4rem;
    color: #fff;
    font-weight: bold;
    line-height: 1.4;
  }
  .check__ttl02 .bg {
    display: inline-block;
    margin: 0 0.1rem 0.2rem 0;
    padding: 0.07rem 0.2rem;
    border-radius: 0.03rem;
    background-color: #ffffff;
    color: #3d87a6;
    line-height: 1;
    font-size: 0.5rem;
  }
  .check__ttl02 .line {
    border-bottom: 0.01rem solid #fff;
  }
  .check__ttl02::before {
    content: "";
    position: absolute;
    bottom: -0.9rem;
    right: -0.22rem;
    display: block;
    width: 1.64rem;
    height: 2.72rem;
    background: url(../images/check_woman01.webp) top center/contain no-repeat;
  }
  .check__ttl02::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -1.3rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 4.86rem;
    height: 0.7rem;
    background: url(../images/check_triangle01.webp) top center/contain no-repeat;
  }
  .check__ttl03 {
    margin-top: 1.9rem;
    font-size: 0.39rem;
    text-align: center;
    font-weight: bold;
    line-height: 1.4;
  }
  .check__ttl03 .bg {
    display: inline-block;
    margin: 0 0.05rem 0.1rem 0;
    padding: 0.08rem 0.05rem;
    border-radius: 0.03rem;
    background-color: #428fae;
    color: #fff;
    line-height: 1;
    font-size: 0.43rem;
  }
  .check__img03 {
    margin-top: 0.9rem;
  }
  .check__txt01 {
    margin-top: 0.5rem;
  }
  .check__lead {
    margin-top: 0.4rem;
    border-radius: 0.2rem;
    padding: 0.4rem 0.2rem 0.2rem;
    background-color: #428fae;
    font-size: 0.38rem;
    color: #fff;
    font-weight: bold;
    line-height: 1.4;
  }
  .check__flex03 {
    position: relative;
  }
  .check__img04 {
    width: 6.8rem;
    margin: -0.2rem 0 0 -0.15rem;
  }
  .check__txt02 {
    margin-top: 0.4rem;
    text-align: center;
  }
  .check__txt02 .big {
    font-size: 0.4rem;
    letter-spacing: 0;
  }
  .check__txt02--num02 {
    position: relative;
    z-index: 1;
    margin-top: 0.45rem;
    text-align: left;
  }
  .check__txt02--num02::after {
    content: "";
    z-index: -1;
    display: block;
    position: absolute;
    bottom: -1.7rem;
    right: -0.4rem;
    width: 4.34rem;
    height: 4rem;
    background: url(../images/check_bg02_sp.webp) top center/contain no-repeat;
  }
  .check__img05 {
    width: 7.3rem;
    margin: 0.4rem 0 0 -0.4rem;
  }
  .check__orange {
    margin: 0.5rem auto 0;
    color: #e7a249;
    font-weight: 500;
  }
  .check__list02 {
    position: relative;
    z-index: 2;
  }
  .check__item02 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 0.8rem;
    margin-top: 0.13rem;
    padding-left: 0.28rem;
    border-radius: 0.15rem;
    background-color: #fcf1de;
  }
  .check__item02 .age {
    margin-right: 0.3rem;
    color: #e7a249;
    font-size: 0.42rem;
  }
  .check__txt01--num02 {
    margin-top: 0.2rem;
    text-align: center;
    font-size: 0.28rem;
  }
  .check__close {
    cursor: pointer;
    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;
    width: 3rem;
    height: 0.6rem;
    margin: 0.65rem auto 0;
    border-radius: 0.3rem;
    background-image: -webkit-gradient(linear, left bottom, left top, from(#808080), color-stop(99%, #9a9a9a), to(#9a9a9a));
    background-image: linear-gradient(to top, #808080 0%, #9a9a9a 99%, #9a9a9a 100%);
    font-size: 0.28rem;
    color: #fff;
    font-weight: bold;
  }
  .check__close:hover {
    opacity: 0.8;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .check__content {
    display: none;
  }
}
/*==============================================================================
check
============================================================================= */
@media screen and (min-width: 769px) {
  .check--bg {
    padding: 65px 0 0;
    background: url(../images/check_bg01.webp) top center/2000px no-repeat, #e2edf0;
  }
  .check__inner {
    position: relative;
    z-index: 1;
    padding-bottom: 80px;
  }
  .check__inner::after {
    content: "";
    z-index: -1;
    display: block;
    position: absolute;
    bottom: 0;
    left: -500px;
    width: 693px;
    height: 462px;
    background: url(../images/check_bg02.webp) top center/contain no-repeat;
  }
  .check__ttl01 {
    width: 662px;
    margin: 0 auto;
  }
  .check__box {
    position: relative;
    margin-top: 60px;
    padding: 60px 35px;
    -webkit-box-shadow: 0 12px 30px rgba(125, 108, 89, 0.2);
            box-shadow: 0 12px 30px rgba(125, 108, 89, 0.2);
    border-radius: 10px;
    background-color: #ffffff;
  }
  .check__box__ttl {
    position: relative;
    font-size: 32px;
    color: #428fae;
    line-height: 1.4;
    font-weight: 500;
  }
  .check__box__ttl .big {
    font-size: 70px;
  }
  .check__box__ttl::after {
    content: "";
    display: block;
    position: absolute;
    width: 198px;
    height: 166px;
    top: -80px;
    right: 70px;
    background: url(../images/check_comment01.webp) top center/contain no-repeat;
  }
  .check__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 30px;
  }
  .check__item {
    position: relative;
    width: 300px;
    height: 160px;
    padding: 22px 0 0 90px;
    border-radius: 15px;
    background-color: #e3eef1;
    font-size: 30px;
    line-height: 1.3;
  }
  .check__item .age {
    position: absolute;
    top: 22px;
    left: 20px;
    color: #5fb1ce;
    font-size: 42px;
    line-height: 1;
  }
  .check__ac {
    cursor: pointer;
    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;
    width: 300px;
    height: 60px;
    margin: 50px auto 0;
    border-radius: 30px;
    background-color: #7faaf8;
    background-image: -webkit-gradient(linear, left bottom, left top, from(#397f9d), color-stop(99%, #428fae), to(#428fae));
    background-image: linear-gradient(to top, #397f9d 0%, #428fae 99%, #428fae 100%);
    color: #fff;
    font-weight: bold;
    font-size: 28px;
  }
  .check__ac:hover {
    opacity: 0.8;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .check__ac.open {
    background-image: -webkit-gradient(linear, left bottom, left top, from(#808080), color-stop(99%, #9a9a9a), to(#9a9a9a));
    background-image: linear-gradient(to top, #808080 0%, #9a9a9a 99%, #9a9a9a 100%);
  }
  .check__content {
    margin-top: 70px;
  }
  .check__ttl02 {
    position: relative;
    font-size: 40px;
    color: #fff;
    font-weight: bold;
    line-height: 1.4;
  }
  .check__ttl02 .bg {
    display: inline-block;
    margin: 0 10px 20px 0;
    padding: 10px 25px;
    border-radius: 3px;
    background-color: #ffffff;
    color: #3d87a6;
    line-height: 1;
    font-size: 50px;
  }
  .check__ttl02 .line {
    display: inline-block;
    border-bottom: 1px solid #fff;
  }
  .check__ttl02::before {
    content: "";
    position: absolute;
    top: -30px;
    right: 0;
    display: block;
    width: 192px;
    height: 316px;
    background: url(../images/check_woman01.webp) top center/contain no-repeat;
  }
  .check__ttl02::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -130px;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 486px;
    height: 70px;
    background-color: #e2c948;
    background: url(../images/check_triangle01.webp) top center/contain no-repeat;
  }
  .check__ttl03 {
    margin-top: 170px;
    font-size: 36px;
    text-align: center;
    font-weight: bold;
    line-height: 1.4;
  }
  .check__ttl03 .bg {
    display: inline-block;
    margin: 0 10px 20px 0;
    padding: 10px 15px;
    border-radius: 3px;
    background-color: #428fae;
    color: #fff;
    line-height: 1;
    font-size: 48px;
  }
  .check__flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 100px;
  }
  .check__img03 {
    width: 350px;
    -webkit-transform: translateY(-20px);
            transform: translateY(-20px);
  }
  .check__txt01 {
    width: 578px;
  }
  .check__lead {
    margin-top: 65px;
    border-radius: 21px;
    padding: 25px;
    background-color: #428fae;
    font-size: 36px;
    color: #fff;
    font-weight: bold;
    line-height: 1.4;
  }
  .check__flex03 {
    position: relative;
  }
  .check__img04 {
    position: absolute;
    top: -70px;
    right: 0;
    width: 350px;
  }
  .check__txt02 {
    width: 584px;
    margin-top: 60px;
  }
  .check__txt02 .big {
    font-size: 22px;
    letter-spacing: 0;
  }
  .check__txt02--num02 {
    margin-top: 20px;
  }
  .check__img05 {
    position: absolute;
    top: 50px;
    right: 0;
    width: 418px;
  }
  .check__orange {
    width: 437px;
    margin-top: 20px;
    color: #e7a249;
    font-weight: 500;
  }
  .check__item02 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 437px;
    height: 54px;
    margin-top: 8px;
    padding-left: 15px;
    border-radius: 15px;
    background-color: #fcf1de;
    font-size: 20px;
  }
  .check__item02 .age {
    margin-right: 17px;
    color: #e7a249;
    font-size: 28px;
  }
  .check__txt01--num02 {
    width: 437px;
    margin: 10px 0 0;
  }
  .check__close {
    cursor: pointer;
    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;
    width: 300px;
    height: 60px;
    margin: 50px auto 0;
    border-radius: 30px;
    background-color: #7faaf8;
    background-image: -webkit-gradient(linear, left bottom, left top, from(#808080), color-stop(99%, #9a9a9a), to(#9a9a9a));
    background-image: linear-gradient(to top, #808080 0%, #9a9a9a 99%, #9a9a9a 100%);
    font-size: 28px;
    color: #fff;
    font-weight: bold;
  }
  .check__close:hover {
    opacity: 0.8;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .check__content {
    display: none;
  }
}
/*==============================================================================
why
============================================================================= */
@media screen and (max-width: 768px) {
  .why--bg {
    overflow: hidden;
    padding: 0 0 1rem;
  }
  .why__inner {
    position: relative;
    z-index: 1;
    padding-top: 1.4rem;
  }
  .why__inner::after {
    content: "";
    z-index: -1;
    display: block;
    position: absolute;
    top: -0.2rem;
    right: -2.7rem;
    width: 7.5rem;
    height: 5rem;
    background: url(../images/why_woman01_sp.webp) top center/contain no-repeat;
  }
  .why__ttl01 .img {
    display: block;
    width: 2.77rem;
    margin: 0 auto 0.3rem;
  }
  .why__ttl01 .small {
    font-size: 0.27rem;
  }
  .why__ttl01 .big {
    font-size: 0.5rem;
  }
  .why__ttl01 .line {
    display: inline-block;
    position: relative;
    z-index: 1;
  }
  .why__ttl01 .line::after {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    bottom: -0.2rem;
    left: -0.2rem;
    width: 5.65rem;
    height: 0.6rem;
    background: url(../images/why_line01.webp) top center/contain no-repeat;
  }
  .why__box {
    position: relative;
    margin-top: 0.86rem;
    padding: 0.6rem 0 1.8rem;
    border-radius: 0.15rem;
    background: url(../images/why_bg01_sp.webp) top center/cover;
  }
  .why__box__ttl {
    font-size: 0.4rem;
    line-height: 1.8;
  }
  .why__box__ttl .img {
    display: block;
    width: 4.61rem;
    margin: 0 auto 0.15rem;
  }
  .why__box__ttl .small {
    font-size: 0.32rem;
  }
  .why__box__ttl .bg {
    display: inline-block;
    margin-right: 0.1rem;
    border-radius: 0.03rem;
    font-size: 0.6rem;
    background-color: #000;
    letter-spacing: 0;
    line-height: 1.2;
  }
  .why__box__ttl .yellow {
    color: #fcf05f;
  }
  .why__box__txt {
    margin: 0.45rem auto 0;
    font-size: 0.28rem;
    text-align: center;
    font-weight: 500;
    line-height: 1.7;
  }
  .why__box__txt .big {
    display: block;
    margin-top: 0.05rem;
    font-size: 0.42rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .why__box__txt .img {
    display: block;
    position: absolute;
    bottom: -0.4rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 2.6rem;
  }
  .why__box02__body {
    margin-top: 0.4rem;
    padding: 0.55rem 0.4rem 0.4rem;
    border-radius: 0.1rem;
    background-color: #f4f4f4;
  }
  .why__ttl02 {
    width: 6.6rem;
    margin: 0.8rem 0 0 auto;
  }
  .why__item {
    position: relative;
    margin-top: 0.9rem;
  }
  .why__item:first-child {
    margin-top: 0;
  }
  .why__item__ttl {
    width: 4.32rem;
    -webkit-transform: translateX(-0.6rem);
            transform: translateX(-0.6rem);
  }
  .why__item__txt {
    margin-top: 0.08rem;
    padding-left: 0.4rem;
    text-align: left;
  }
  .why__item__img {
    margin-top: 0.2rem;
  }
  .why__item__img--num01 {
    width: 2.84rem;
    margin-left: 0.3rem;
  }
  .why__item__img--num02 {
    width: 5rem;
  }
  .why__item__img--num03 {
    width: 4.7rem;
  }
  .why__item__low {
    position: absolute;
    top: 0.12rem;
    right: -0.1rem;
    width: 2.6rem;
    padding: 0.45rem 0 0.18rem;
    border-radius: 0.2rem;
    background-color: #ffffff;
  }
  .why__item__bai {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 2.2rem;
  }
  .why__item__txt02 {
    font-size: 0.26rem;
    line-height: 1.5;
    letter-spacing: 0;
  }
  .why__item__icon {
    width: 1.8rem;
    margin: 0.15rem auto 0;
  }
  .why__txt01 {
    margin-top: 0.5rem;
  }
  .why__box02__low {
    position: relative;
    padding: 0.65rem 0.3rem 0.5rem;
    border-radius: 0 0 0.1rem 0.1rem;
    font-size: 0.33rem;
    background-color: #428fae;
  }
  .why__box02__low::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 3.6rem;
    height: 0.3rem;
    background-color: #f4f4f4;
    background: url(../images/why_triangle01.webp) top center/contain no-repeat;
  }
}
/*==============================================================================
why
============================================================================= */
@media screen and (min-width: 769px) {
  .why--bg {
    padding: 0 0 100px;
  }
  .why__inner {
    position: relative;
    z-index: 1;
    padding-top: 100px;
  }
  .why__inner::after {
    content: "";
    z-index: -1;
    display: block;
    position: absolute;
    top: 0;
    right: -500px;
    width: 729px;
    height: 525px;
    background: url(../images/why_woman01.webp) top center/contain no-repeat;
  }
  .why__ttl01 .img {
    display: block;
    width: 173px;
    margin: 0 auto 40px;
  }
  .why__ttl01 .small {
    font-size: 24px;
  }
  .why__ttl01 .big {
    font-size: 60px;
  }
  .why__ttl01 .line {
    display: inline-block;
    position: relative;
    z-index: 1;
  }
  .why__ttl01 .line::after {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    bottom: -10px;
    left: -10px;
    width: 689px;
    height: 59px;
    background: url(../images/why_line01.webp) top center/contain no-repeat;
  }
  .why__box {
    margin-top: 80px;
    padding: 70px 0;
    border-radius: 10px;
    background: url(../images/why_bg01.webp) top center/cover no-repeat;
  }
  .why__box__ttl {
    font-size: 36px;
  }
  .why__box__ttl .img {
    display: block;
    width: 289px;
    margin: 0 auto;
  }
  .why__box__ttl .bg {
    display: inline-block;
    margin-right: 10px;
    border-radius: 10px;
    font-size: 57px;
    background-color: #000;
    letter-spacing: 0;
  }
  .why__box__ttl .yellow {
    color: #fcf05f;
  }
  .why__box__txt {
    position: relative;
    width: 783px;
    margin: 30px auto 0;
    font-size: 26px;
  }
  .why__box__txt .big {
    font-size: 36px;
  }
  .why__box__txt .img {
    position: relative;
    display: block;
    position: absolute;
    top: 30px;
    right: 0;
    width: 227px;
  }
  .why__box02__body {
    padding: 30px 65px 35px;
    border-radius: 10px;
    background-color: #f4f4f4;
  }
  .why__ttl02 {
    width: 998px;
    margin: 70px auto 30px;
  }
  .why__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .why__item {
    position: relative;
    width: 252px;
  }
  .why__item::after {
    content: "";
    display: block;
    position: absolute;
    top: 126px;
    -webkit-transform: translate(100%, 0);
            transform: translate(100%, 0);
    right: 0;
    width: 53px;
    height: 8px;
    background-color: #e2c948;
    background: url(../images/eye_line01.webp) top center/contain no-repeat;
  }
  .why__item:last-child::after {
    content: none;
  }
  .why__item__txt {
    margin-top: 5px;
  }
  .why__item__img {
    height: 130px;
    margin: 15px auto 0;
  }
  .why__item__img--num01 {
    width: 158px;
  }
  .why__item__img--num02 {
    width: 260px;
    margin-left: 0;
    padding-top: 25px;
  }
  .why__item__img--num03 {
    width: 228px;
  }
  .why__item__low {
    position: relative;
    width: 250px;
    margin-top: 40px;
    padding: 30px 0 10px;
    border-radius: 20px;
    background-color: #ffffff;
  }
  .why__item__bai {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 158px;
  }
  .why__item__icon {
    width: 130px;
    height: 119px;
    margin: 20px auto 0;
  }
  .why__txt01 {
    margin-top: 40px;
  }
  .why__box02__low {
    position: relative;
    padding: 45px 0 40px;
    border-radius: 0 0 10px 10px;
    font-size: 24px;
    background-color: #428fae;
  }
  .why__box02__low::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 360px;
    height: 20px;
    background-color: #f4f4f4;
    background: url(../images/why_triangle01.webp) top center/contain no-repeat;
  }
}
/*==============================================================================
cv
============================================================================= */
@media screen and (max-width: 768px) {
  .cv {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 100;
    width: 100%;
    background-color: #f4f6fb;
  }
  .cv__inner {
    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;
    height: 1.5rem;
  }
  .cv__btn02 {
    position: relative;
    width: 6.7rem;
    height: 1.2rem;
    margin: 0.04rem auto 0;
    font-weight: bold;
    color: #fff;
    font-size: 0.24rem;
  }
  .cv__btn02 .txt {
    display: block;
    position: absolute;
    top: 0.12rem;
    left: 0.45rem;
    line-height: 1.1;
    text-shadow: 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219, 0 0 0.05rem #e65219;
  }
  .cv__btn02 .num {
    font-size: 0.4rem;
  }
}
@media screen and (min-width: 769px) {
  .cv {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 100;
    width: 100%;
    background-color: #f4f6fb;
  }
  .cv__inner {
    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;
    height: 100px;
  }
  .cv__btn02 {
    position: relative;
    width: 670px;
    height: 70px;
    margin: 0 auto;
    font-weight: bold;
    color: #fff;
    font-size: 20px;
  }
  .cv__btn02 .txt {
    display: block;
    position: absolute;
    top: 5px;
    left: 50px;
    line-height: 1.1;
    text-shadow: 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219, 0 0 5px #e65219;
  }
  .cv__btn02 .num {
    font-size: 30px;
  }
  .cv__btn02 .yellow {
    font-size: 24px;
  }
}
/*==============================================================================
dai
============================================================================= */
@media screen and (max-width: 768px) {
  .dai__bg01 {
    padding: 0.5rem 0 0rem;
    background: url(../images/dai_bg01_sp.webp) top center/cover no-repeat;
  }
  .dai__ttl01 {
    position: relative;
    width: 7.01rem;
    -webkit-transform: translateX(-0.4rem);
            transform: translateX(-0.4rem);
  }
  .dai__bg02 {
    position: relative;
    z-index: 2;
    margin-top: -1.6rem;
    padding: 0 0 0.8rem;
    background: url(../images/dai_bg02_sp.webp) top center/cover no-repeat;
  }
  .dai__flex {
    position: relative;
  }
  .dai__ttl02 {
    width: 6.95rem;
    margin-left: -0.3rem;
    -webkit-transform: translateY(-0.15rem);
            transform: translateY(-0.15rem);
  }
  .dai__movie {
    height: 3.77rem;
    margin-top: 0.2rem;
  }
  .dai__txt01 {
    margin-top: 0.3rem;
  }
  .dai__slider {
    position: relative;
    margin-top: 0.45rem;
    -webkit-box-shadow: 0.02rem 0.12rem 0.3rem rgba(128, 108, 86, 0.2);
            box-shadow: 0.02rem 0.12rem 0.3rem rgba(128, 108, 86, 0.2);
    border-radius: 0.1rem;
  }
  .dai__slide {
    position: relative;
    padding: 0.3rem 0.4rem;
    border-radius: 0.1rem;
    background: url(../images/dai_bg03.webp) top left/3%;
  }
  .dai__name {
    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;
    height: 0.6rem;
    border-radius: 0.3rem;
    border: 0.01rem solid #7faaf8;
    background-color: #ffffff;
    font-weight: 700;
    font-size: 0.28rem;
  }
  .dai__voice {
    margin-top: 0.4rem;
    font-size: 0.38rem;
    letter-spacing: 0;
    font-weight: bold;
  }
  .dai__icon01 {
    position: absolute;
    top: 1.2rem;
    right: 0.27rem;
  }
  .dai__icon01--num01 {
    width: 1.4rem;
  }
  .dai__icon01--num02 {
    width: 1.5rem;
  }
  .dai__icon01--num03 {
    width: 1.5rem;
  }
  .dai__open {
    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;
    width: 3rem;
    height: 0.6rem;
    margin: 0.35rem auto 0;
    border-radius: 0.3rem;
    background-color: #7faaf8;
    background-image: -webkit-gradient(linear, left bottom, left top, from(#397f9d), color-stop(99%, #428fae), to(#428fae));
    background-image: linear-gradient(to top, #397f9d 0%, #428fae 99%, #428fae 100%);
    font-size: 0.28rem;
    color: #fff;
    font-weight: bold;
  }
  .dai__ttl03 {
    margin-top: 1.7rem;
  }
}
/*==============================================================================
dai
============================================================================= */
@media screen and (min-width: 769px) {
  .dai__ttl01 {
    position: relative;
    margin-top: -20px;
    width: 2000px;
    -webkit-transform: translateX(-500px);
            transform: translateX(-500px);
  }
  .dai__bg02 {
    margin-top: -140px;
    padding: 0 0 70px;
    background: url(../images/dai_bg04.webp) top left;
  }
  .dai__flex {
    position: relative;
  }
  .dai__flex .dai__movie {
    position: absolute;
    width: 357px;
    height: 201px;
    bottom: -20px;
    right: 0;
  }
  .dai__ttl02 {
    width: 635px;
    margin-left: -30px;
  }
  .dai__txt01 {
    width: 607px;
    margin-top: 15px;
  }
  .dai__slider {
    position: relative;
    margin-top: 40px;
    -webkit-box-shadow: 0 12px 30px rgba(125, 108, 89, 0.2);
            box-shadow: 0 12px 30px rgba(125, 108, 89, 0.2);
    border-radius: 10px;
  }
  .dai__slide {
    position: relative;
    padding: 50px 75px;
    border-radius: 10px;
    background: url(../images/dai_bg03.webp) top left;
  }
  .dai__name {
    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;
    width: 390px;
    height: 40px;
    border-radius: 20px;
    border: 1px solid #7faaf8;
    background-color: #ffffff;
    font-weight: 700;
  }
  .dai__voice {
    margin-top: 10px;
    font-size: 40px;
    font-weight: bold;
  }
  .dai__icon01 {
    position: absolute;
    top: 45px;
    right: 55px;
  }
  .dai__icon01--num01 {
    width: 115px;
  }
  .dai__icon01--num02 {
    width: 123px;
  }
  .dai__icon01--num03 {
    width: 129px;
  }
  .dai__open {
    cursor: pointer;
    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;
    width: 180px;
    height: 48px;
    margin: 15px auto 0;
    border-radius: 24px;
    background-color: #7faaf8;
    background-image: -webkit-gradient(linear, left bottom, left top, from(#397f9d), color-stop(99%, #428fae), to(#428fae));
    background-image: linear-gradient(to top, #397f9d 0%, #428fae 99%, #428fae 100%);
    font-size: 19px;
    color: #fff;
    font-weight: bold;
  }
  .dai__open:hover {
    opacity: 0.8;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .dai__ttl03 {
    width: 998px;
    margin-top: 150px;
  }
}
/*==============================================================================
modal
============================================================================= */
@media screen and (min-width: 769px) {
  .modal {
    display: none; /* 最初は非表示 */
    position: fixed; /* 固定位置に配置 */
    z-index: 150; /* 表示する要素のZ軸の順序 */
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    padding: 100px 0 100px;
    background-color: rgba(66, 143, 174, 0.8);
  }
  .modal__scroll {
    position: relative;
    width: 1000px;
    height: 100%;
    margin: 0 auto;
  }
  .modal-content {
    position: relative;
    overflow-y: auto;
    overscroll-behavior-y: none;
    top: 0;
    background-color: #fefefe;
    margin: 0 auto; /* 画面中央に表示 */
    border: 1px solid #888;
    height: 100%;
    padding: 50px 70px 40px;
    -webkit-box-shadow: 0 12px 30px rgba(125, 108, 89, 0.2);
            box-shadow: 0 12px 30px rgba(125, 108, 89, 0.2);
    border-radius: 10px;
    background: url(../images/dai_bg03.webp) top left;
  }
  .modal-content::-webkit-scrollbar {
    position: fixed;
    top: 0;
    right: 10px;
    width: 10px;
  }
  .modal-content::-webkit-scrollbar-track {
    background-color: #fff;
    border-radius: 100px;
  }
  .modal-content::-webkit-scrollbar-thumb {
    background-color: #ccc;
    border-radius: 100px;
  }
  .modal-content__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 28px;
  }
  /* 閉じるボタンのスタイル */
  .close {
    position: absolute;
    top: -80px;
    right: 0;
    left: inherit;
    /* Style for "×" */
    width: 53px;
    height: 53px;
    cursor: pointer;
  }
  .close:hover {
    opacity: 0.8;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .close-pc:hover,
  .close-pc:focus {
    color: #aaa;
    text-decoration: none;
    cursor: pointer;
  }
  .modal__txt01 {
    margin-top: 20px;
    font-size: 16px;
    line-height: 1.8;
  }
  .modal-close {
    cursor: pointer;
    position: absolute;
    bottom: -70px;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    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;
    width: 220px;
    height: 50px;
    border-radius: 30px;
    background-color: #73abff;
    color: #0987a6;
    font-weight: bold;
    font-size: 22px;
    background-image: -webkit-gradient(linear, left bottom, left top, from(#dadada), to(#ffffff));
    background-image: linear-gradient(to top, #dadada 0%, #ffffff 100%);
  }
  .modal-close:hover {
    opacity: 0.8;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
}
@media screen and (max-width: 768px) {
  .modal {
    display: none; /* 最初は非表示 */
    position: fixed; /* 固定位置に配置 */
    z-index: 150; /* 表示する要素のZ軸の順序 */
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    padding: 1.2rem 0 1.2rem;
    background-color: rgba(66, 143, 174, 0.8);
  }
  .modal__scroll {
    position: relative;
    width: 6.9rem;
    height: 100%;
    margin: 0 auto;
  }
  /* モーダルのコンテンツ */
  .modal-content {
    position: relative;
    overflow-y: auto;
    overscroll-behavior-y: none;
    margin: 0 auto;
    padding: 0.4rem 0.4rem 0.6rem;
    width: 6.9rem;
    height: 100%;
    background: url(../images/dai_bg03.webp) top left/3%;
  }
  .modal-content::-webkit-scrollbar {
    position: fixed;
    top: 0;
    right: 0.1rem;
    width: 0.1rem;
  }
  .modal-content::-webkit-scrollbar-track {
    background-color: #fff;
    border-radius: 1rem;
  }
  .modal-content::-webkit-scrollbar-thumb {
    background-color: #ccc;
    border-radius: 1rem;
  }
  .modal-content__list {
    margin-top: 0.6rem;
  }
  /* 閉じるボタンのスタイル */
  .close {
    position: absolute;
    top: -0.8rem;
    right: 0rem;
    left: inherit;
    width: 0.53rem;
    height: 0.53rem;
  }
  .modal-close {
    position: absolute;
    bottom: -0.8rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    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;
    width: 3rem;
    height: 0.6rem;
    border-radius: 0.3rem;
    background-color: #73abff;
    color: #0987a6;
    font-weight: bold;
    font-size: 0.28rem;
    background-image: -webkit-gradient(linear, left bottom, left top, from(#dadada), to(#ffffff));
    background-image: linear-gradient(to top, #dadada 0%, #ffffff 100%);
  }
  .modal__txt01 {
    margin-top: 0.4rem;
    font-size: 0.26rem;
    line-height: 1.8;
  }
}
/*==============================================================================
dake
============================================================================= */
@media screen and (max-width: 768px) {
  .dake--bg {
    margin-top: -0.65rem;
    padding: 1.35rem 0 1rem;
    background: url(../images/dake_bg01_sp.webp) top center/cover no-repeat;
  }
  .dake__ttl01 {
    font-size: 0.4rem;
  }
  .dake__ttl01 .bg {
    font-size: 0.44rem;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #fff));
    background: linear-gradient(to bottom, transparent 50%, #fff 50%);
  }
  .dake__ttl02 {
    position: relative;
    height: 2.9rem;
    margin: 0.35rem auto 0;
    padding: 0.4rem 0;
    text-align: center;
    font-size: 0.3rem;
    font-weight: bold;
    background-color: #ffffff;
    background: url(../images/dake_bg03_sp.webp) top center/cover no-repeat;
  }
  .dake__ttl02 .orange {
    font-size: 0.34rem;
  }
  .dake__ttl02::after {
    content: "";
    position: absolute;
    top: 1.9rem;
    right: -0.6rem;
    display: block;
    width: 2.42rem;
    height: 5.4rem;
    background: url(../images/dake_icon01.webp) top center/contain no-repeat;
  }
  .dake__txt02 {
    padding-right: 1.7rem;
    color: #0d0d0d;
    text-align: center;
    font-weight: 700;
    font-size: 0.36rem;
  }
  .dake__txt02 .bg {
    display: inline-block;
    padding: 0.05rem;
    border-radius: 0.03rem;
    color: #ffffff;
    font-size: 0.46rem;
    line-height: 1.3;
    background-color: #e7a249;
  }
  .dake__box {
    position: relative;
    margin-top: 1.4rem;
    padding: 0.75rem 0.4rem 0.6rem;
    background-color: #ffffff;
  }
  .dake__ribon {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    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;
    width: 4.6rem;
    height: 0.8rem;
    font-size: 0.42rem;
    font-weight: bold;
    color: #fff;
    background: url(../images/dake_bg02.webp) top center/cover no-repeat;
  }
  .dake__txt03 {
    text-align: center;
    font-size: 0.4rem;
    font-weight: bold;
  }
  .dake__txt01 {
    text-align: left;
    margin-top: 0.3rem;
  }
  .dake__btn01 {
    height: 1.6rem;
    padding: 0.25rem 0 0 0.45rem;
    font-size: 0.32rem;
  }
  .dake__btn01 .num {
    font-size: 0.55rem;
  }
  .dake__middle {
    width: 6.7rem;
    -webkit-transform: translateX(-0.4rem);
            transform: translateX(-0.4rem);
    margin-top: 0.6rem;
    padding: 0.3rem 0.5rem;
    background-color: #f6f6f6;
  }
  .dake__middle__txt {
    text-align: left;
    font-size: 0.29rem;
  }
  .dake__middle__txt .dot {
    display: block;
  }
  .dake__henkin {
    margin-top: 0.32rem;
  }
  .dake__henkin .blue {
    color: #4a5891;
    font-weight: bold;
    font-size: 0.34rem;
  }
}
/*==============================================================================
dake
============================================================================= */
@media screen and (min-width: 769px) {
  .dake--bg {
    margin-top: -80px;
    padding: 160px 0 110px;
    background: url(../images/dake_bg01.webp) top center/cover no-repeat;
  }
  .dake__ttl01 {
    font-size: 36px;
  }
  .dake__ttl01 .bg {
    font-size: 46px;
    letter-spacing: -0.03em;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #fff));
    background: linear-gradient(to bottom, transparent 60%, #fff 60%);
  }
  .dake__ttl02 {
    position: relative;
    width: 875px;
    height: 163px;
    margin: 50px auto 0;
    padding: 30px 0;
    text-align: center;
    border-radius: 30px;
    font-size: 24px;
    font-weight: bold;
    background-color: #ffffff;
    background: url(../images/dake_bg03.webp) top center/cover no-repeat;
  }
  .dake__ttl02 .orange {
    font-size: 30px;
  }
  .dake__ttl02::after {
    content: "";
    position: absolute;
    top: 0;
    right: -210px;
    display: block;
    width: 227px;
    height: 509px;
    background: url(../images/dake_icon01.webp) top center/contain no-repeat;
  }
  .dake__txt02 {
    margin-top: 30px;
    color: #0d0d0d;
    text-align: center;
    font-size: 40px;
  }
  .dake__txt02 .bg {
    display: inline-block;
    padding: 3px;
    border-radius: 3px;
    color: #ffffff;
    font-size: 50px;
    background-color: #e7a249;
  }
  .dake__box {
    position: relative;
    margin-top: 120px;
    padding: 65px 0 50px;
    background-color: #ffffff;
  }
  .dake__ribon {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    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;
    width: 417px;
    height: 72px;
    font-size: 40px;
    font-weight: bold;
    color: #fff;
    background: url(../images/dake_bg02.webp) top center/cover no-repeat;
  }
  .dake__txt03 {
    text-align: center;
    font-size: 40px;
    font-weight: bold;
  }
  .dake__txt01 {
    margin-top: 15px;
  }
  .dake__middle {
    margin-top: 38px;
    padding: 20px;
    background-color: #f6f6f6;
  }
  .dake__middle__txt {
    text-align: center;
  }
  .dake__middle__txt .dot {
    display: inline-block;
    margin-right: 20px;
  }
  .dake__henkin {
    margin-top: 30px;
    text-align: center;
  }
  .dake__henkin .blue {
    color: #4a5891;
    font-weight: bold;
    font-size: 22px;
  }
}
/*==============================================================================
eye
============================================================================= */
@media screen and (max-width: 768px) {
  .eye--bg {
    padding-bottom: 3.2rem;
    background: url(../images/eye_woman01_sp.webp) bottom center/contain no-repeat, #e0eef1;
  }
  .eye__ttl01 {
    width: 7.5rem;
    -webkit-transform: translateX(-0.4rem);
            transform: translateX(-0.4rem);
  }
  .eye__inner {
    position: relative;
    z-index: 1;
  }
  .eye__list {
    margin-top: -1.7rem;
  }
  .eye__item {
    margin-top: 0.85rem;
  }
  .eye__item:first-child {
    margin-top: 0;
  }
  .eye__head {
    position: relative;
    -webkit-box-shadow: 0.02rem 0.12rem 0.3rem rgba(128, 108, 86, 0.2);
            box-shadow: 0.02rem 0.12rem 0.3rem rgba(128, 108, 86, 0.2);
    border-radius: 0.1rem;
    border: 0.03rem solid #000000;
    background-color: #ffffff;
  }
  .eye__head__body {
    padding: 0.35rem 0 0.3rem;
  }
  .eye__head__txt {
    position: relative;
    font-size: 0.44rem;
    line-height: 1.4;
  }
  .eye__head__txt .en {
    display: inline-block;
    position: relative;
    z-index: 1;
  }
  .eye__head__txt .en::after {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    top: -0.2rem;
    left: -0.1rem;
    width: 1.5rem;
    height: 0.9rem;
    background: url(../images/eye_so01.webp) top center/contain no-repeat;
  }
  .eye__head__txt .line {
    display: inline-block;
    position: relative;
    z-index: 1;
  }
  .eye__head__txt .line::after {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    bottom: -0.2rem;
    left: -0.05rem;
    width: 4.6rem;
    height: 0.42rem;
    background: url(../images/eye_so02.webp) top center/contain no-repeat;
  }
  .eye__head__btn {
    margin-top: 0.25rem;
  }
  .eye__flex {
    margin-top: 0.55rem;
  }
  .eye__flex__img01 {
    margin-top: 0.5rem;
  }
  .eye__ttl02 {
    width: 5.9rem;
    margin: 0.35rem auto 0;
  }
  .eye__ttl02--num02 {
    width: 6.23rem;
    margin: 0.7rem 0 0;
  }
  .eye__ttl02--num03 {
    width: 6.3rem;
    margin: 0.3rem 0 0;
  }
  .eye__close {
    margin-top: 0.55rem;
  }
  .eye__box01 {
    position: relative;
    height: 3.7rem;
    margin-top: 0.5rem;
    padding: 0.4rem 0.3rem 0.2rem 0.3rem;
    background: url(../images/eye_bg01_sp.webp) top center/100% 100% no-repeat;
    font-size: 0.32rem;
  }
  .eye__box01 .big {
    font-size: 0.38rem;
    font-weight: bold;
  }
  .eye__box01::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -1.25rem;
    right: -1.2rem;
    width: 2.6rem;
    height: 3.5rem;
    background: url(../images/eye_icon01.webp) top center/contain no-repeat;
  }
  .eye__box01--num02 {
    height: 3.7rem;
    padding-left: 0.5rem;
    padding-top: 0.33rem;
    background: url(../images/eye_bg02_sp.webp) top center/100% 100% no-repeat;
  }
  .eye__box01--num02::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -0.75rem;
    right: -0.5rem;
    width: 2.6rem;
    height: 3.5rem;
    background: url(../images/eye_icon02.webp) top center/contain no-repeat;
  }
  .eye__box01 .tat {
    display: block;
    width: 1.6rem;
    margin-bottom: 0.1rem;
  }
  .eye__txt01--wide {
    margin-top: 0.4rem;
  }
  .eye__box02 {
    margin-top: 0.75rem;
    border-radius: 0.1rem;
    background-color: #ffffff;
  }
  .eye__box02__head {
    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;
    height: 2.16rem;
    border-radius: 0.1rem 0.1rem 0 0;
    background-color: #428fae;
  }
  .eye__box02__ttl {
    width: 5.9rem;
  }
  .eye__list02 {
    padding: 0rem 0 0.4rem 0rem;
  }
  .eye__item02 {
    position: relative;
    margin: 0.45rem 0 0;
  }
  .eye__item02::after {
    content: "";
    display: block;
    position: absolute;
    left: -1rem;
    top: 1.4rem;
    -webkit-transform: translate(100%, -50%) rotate(90deg);
            transform: translate(100%, -50%) rotate(90deg);
    right: 0;
    width: 0.9rem;
    height: 0.13rem;
    background: url(../images/eye_line01.webp) top center/contain no-repeat;
  }
  .eye__item02:last-child::after {
    content: none;
  }
  .eye__item02__ttl {
    width: 5rem;
    margin-left: -0.1rem;
  }
  .eye__item02__img {
    position: absolute;
    width: 2.4rem;
    top: 0.3rem;
    right: -0.15rem;
  }
  .eye__item02__txt02 {
    padding-left: 1.15rem;
    font-size: 0.32rem;
    line-height: 1.5;
  }
  .eye__item02__txt02 .bold {
    color: #428fae;
  }
  .eye__content {
    display: none;
  }
}
/*==============================================================================
eye
============================================================================= */
@media screen and (min-width: 769px) {
  .eye--bg {
    background-color: #e0eef1;
  }
  .eye__ttl01 {
    width: 2000px;
    -webkit-transform: translateX(-500px);
            transform: translateX(-500px);
  }
  .eye__inner {
    position: relative;
    z-index: 1;
    padding-bottom: 260px;
  }
  .eye__inner::after {
    content: "";
    z-index: -1;
    display: block;
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 1137px;
    height: 385px;
    background: url(../images/eye_woman01.webp) top center/contain no-repeat;
  }
  .eye__list {
    margin-top: -50px;
  }
  .eye__item {
    margin-top: 120px;
  }
  .eye__head {
    position: relative;
    -webkit-box-shadow: 0 12px 30px rgba(125, 125, 125, 0.2);
            box-shadow: 0 12px 30px rgba(125, 125, 125, 0.2);
    border-radius: 10px;
    border: 3px solid #000000;
    background-color: #ffffff;
  }
  .eye__head__ttl {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 400px;
  }
  .eye__head__body {
    padding: 55px 0 30px;
  }
  .eye__head__txt {
    position: relative;
    font-size: 50px;
    line-height: 1.5;
  }
  .eye__head__txt .en {
    display: inline-block;
    position: relative;
    z-index: 1;
  }
  .eye__head__txt .en::after {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    top: -10px;
    left: -10px;
    width: 143px;
    height: 87px;
    background: url(../images/eye_so01.webp) top center/contain no-repeat;
  }
  .eye__head__txt .line {
    display: inline-block;
    position: relative;
    z-index: 1;
  }
  .eye__head__txt .line::after {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    bottom: 0px;
    left: -5px;
    width: 556px;
    height: 28px;
    background: url(../images/eye_so02.webp) top center/contain no-repeat;
  }
  .eye__head__btn {
    margin-top: 20px;
  }
  .eye__flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 55px;
  }
  .eye__flex .eye__txt01 {
    width: 553px;
  }
  .eye__flex__img01 {
    width: 400px;
  }
  .eye__ttl02 {
    position: relative;
    z-index: 2;
    width: 814px;
    margin: 35px auto 0;
  }
  .eye__ttl02--num02 {
    width: 920px;
    margin: 5px 0 0;
  }
  .eye__ttl02--num03 {
    width: 845px;
    margin: -5px 0 0 30px;
  }
  .eye__close {
    margin-top: 40px;
  }
  .eye__box01 {
    position: relative;
    width: 829px;
    height: 258px;
    margin-top: 55px;
    padding: 45px 0px 45px 45px;
    background: url(../images/eye_bg01.webp) top center/cover no-repeat;
    font-size: 30px;
  }
  .eye__box01 .big {
    font-size: 36px;
    font-weight: bold;
  }
  .eye__box01::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -40px;
    right: -170px;
    width: 200px;
    height: 270px;
    background: url(../images/eye_icon01.webp) top center/contain no-repeat;
  }
  .eye__box01--num02 {
    width: 830px;
    height: 237px;
    background: url(../images/eye_bg02.webp) top center/cover no-repeat;
  }
  .eye__box01--num02::after {
    content: "";
    display: block;
    position: absolute;
    top: -30px;
    right: -230px;
    width: 279px;
    height: 339px;
    background: url(../images/eye_icon02.webp) top center/contain no-repeat;
  }
  .eye__box01 .tat {
    display: block;
    width: 125px;
    margin-bottom: 10px;
  }
  .eye__txt01--wide {
    margin-top: 50px;
  }
  .eye__box02 {
    margin-top: 40px;
    border-radius: 10px;
    background-color: #ffffff;
  }
  .eye__box02__head {
    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;
    height: 110px;
    border-radius: 3px 3px 0 0;
    background-color: #428fae;
  }
  .eye__box02__ttl {
    width: 464px;
  }
  .eye__list02 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 20px 0 30px 60px;
  }
  .eye__item02 {
    position: relative;
    width: 292px;
    margin-right: 60px;
  }
  .eye__item02::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(100%, -50%);
            transform: translate(100%, -50%);
    right: 0;
    width: 53px;
    height: 8px;
    background-color: #e2c948;
    background: url(../images/eye_line01.webp) top center/contain no-repeat;
  }
  .eye__item02:last-child::after {
    content: none;
  }
  .eye__item02__img {
    width: 141px;
    margin: 15px auto 0;
  }
  .eye__item02__txt02 {
    text-align: center;
    margin-top: 10px;
    font-size: 17px;
  }
  .eye__item02__txt02 .bold {
    color: #428fae;
  }
  .eye__content {
    display: none;
  }
}
/*==============================================================================
faq
============================================================================= */
@media screen and (max-width: 768px) {
  .faq--bg {
    padding: 0.9rem 0 1rem;
    background: url(../images/faq_bg01_sp.webp) top center/50%;
  }
  .faq__ttl01 {
    font-weight: bold;
    text-align: center;
    font-size: 0.5rem;
    line-height: 1.4;
  }
  .faq__list {
    margin-top: 0.5rem;
  }
  .faq__item {
    margin-top: 0.3rem;
    padding: 0.3rem 0.35rem 0.35rem;
    -webkit-box-shadow: 0.02rem em(12) em(30) rgba(125, 125, 125, 0.2);
            box-shadow: 0.02rem em(12) em(30) rgba(125, 125, 125, 0.2);
    border-radius: 0.1rem;
    border: 0.03rem solid #000000;
    background-color: #ffffff;
  }
  .faq__dt {
    position: relative;
    padding: 0 0.5rem 0rem 0.6rem;
  }
  .faq__dt .img {
    position: absolute;
    top: 40%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 0;
    display: block;
    width: 0.39rem;
  }
  .faq__dt::before, .faq__dt::after {
    content: "";
    display: block;
    position: absolute;
    top: 40%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    right: 0;
    width: 0.26rem;
    height: 0.06rem;
    background-color: #5fb1ce;
  }
  .faq__dt::after {
    -webkit-transform: translateY(-50%) rotate(90deg);
            transform: translateY(-50%) rotate(90deg);
  }
  .faq__dt .txt {
    font-size: 0.28rem;
    font-weight: bold;
    line-height: 1.3;
  }
  .faq__dt.open::after {
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .faq__dd {
    display: none;
    font-size: 0.26rem;
    margin-top: 0.2rem;
    padding: 0.2rem 0.08rem 0;
    border-top: 0.04rem dotted #cccccc;
    line-height: 1.4;
    letter-spacing: 0.04em;
  }
}
@media screen and (min-width: 769px) {
  .faq--bg {
    padding: 90px 0;
    background: url(../images/faq_bg01.webp) top left;
  }
  .faq__ttl01 {
    font-weight: bold;
    text-align: center;
    font-size: 50px;
  }
  .faq__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .faq__item {
    width: 480px;
    margin-top: 40px;
    padding: 35px 25px 40px;
    -webkit-box-shadow: 0 12px 30px rgba(125, 125, 125, 0.2);
            box-shadow: 0 12px 30px rgba(125, 125, 125, 0.2);
    border-radius: 10px;
    border: 3px solid #000000;
    background-color: #ffffff;
  }
  .faq__dt {
    cursor: pointer;
    position: relative;
    padding: 0 29px 0 50px;
  }
  .faq__dt .img {
    position: absolute;
    top: 40%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 0;
    display: block;
    width: 37px;
  }
  .faq__dt::before, .faq__dt::after {
    content: "";
    display: block;
    position: absolute;
    top: 40%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    right: 0;
    width: 26px;
    height: 6px;
    background-color: #5fb1ce;
  }
  .faq__dt::after {
    -webkit-transform: translateY(-50%) rotate(90deg);
            transform: translateY(-50%) rotate(90deg);
  }
  .faq__dt .txt {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.3;
  }
  .faq__dt.open::after {
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .faq__dd {
    display: none;
    margin-top: 20px;
    border-top: 4px dotted #cccccc;
    font-size: 18px;
    padding: 25px 10px 0;
    line-height: 1.4;
    letter-spacing: 0.04em;
  }
}
/*==============================================================================
info
============================================================================= */
@media screen and (max-width: 768px) {
  .info--bg {
    padding: 0.7rem 0 1.5rem;
    background-color: #f9ebd6;
    color: #000000;
  }
  .info__ttl01 {
    font-size: 0.44rem;
    line-height: 1.4;
  }
  .info__flex {
    margin-top: 0.55rem;
  }
  .info__box {
    position: relative;
    padding: 0.35rem 0.5rem 0.45rem 1.75rem;
    border-radius: 0.15rem;
    background-color: #e7a249;
  }
  .info__ttl02 {
    padding-bottom: 0.25rem;
    font-size: 0.36rem;
    line-height: 1.8;
    letter-spacing: 0.02em;
    border-bottom: 0.04rem dotted #fff;
  }
  .info__name {
    margin-top: 0.45rem;
    width: 3rem;
  }
  .info__img {
    position: absolute;
    bottom: 0;
    left: -0.13rem;
    width: 1.67rem;
  }
  .info__ac {
    display: none;
  }
  .info__txt01 {
    margin-top: 0.3rem;
    font-size: 0.28rem;
    line-height: 1.5;
    font-weight: 500;
    letter-spacing: 0;
  }
  .info__txt01 .content {
    display: none;
  }
  .info__txt01 .btn {
    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;
    width: 3rem;
    height: 0.6rem;
    margin: 0.3rem auto 0;
    border-radius: 0.3rem;
    background-color: #73abff;
    color: #fff;
    font-weight: bold;
    font-size: 0.28rem;
    background-image: -webkit-gradient(linear, left bottom, left top, from(#f19824), to(#ea8603));
    background-image: linear-gradient(to top, #f19824 0%, #ea8603 100%);
  }
}
/*==============================================================================
info
============================================================================= */
@media screen and (min-width: 769px) {
  .info--bg {
    padding: 80px 0 90px;
    background-color: #f9ebd6;
    color: #000000;
  }
  .info__ttl01 {
    font-size: 46px;
    line-height: 1.4;
  }
  .info__flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 40px;
  }
  .info__box {
    position: relative;
    width: 469px;
    height: 309px;
    padding: 45px 35px 0 133px;
    border-radius: 10px;
    background-color: #e7a249;
  }
  .info__ttl02 {
    padding-bottom: 20px;
    font-size: 24px;
    line-height: 2;
    letter-spacing: 0.02em;
    border-bottom: 2px dotted #fff;
  }
  .info__name {
    margin-top: 35px;
    width: 232px;
  }
  .info__img {
    position: absolute;
    bottom: 0;
    left: -10px;
    width: 130px;
  }
  .info__ac {
    display: none;
  }
  .info__txt01 {
    width: 497px;
    font-size: 16px;
    line-height: 1.5;
    font-weight: 500;
  }
  .info__txt01 .btn {
    display: none;
  }
}
/*==============================================================================
price
============================================================================= */
@media screen and (max-width: 768px) {
  .price--bg {
    position: relative;
    z-index: 2;
    padding: 1rem 0;
    background-color: #5fb1ce;
  }
  .price__lead {
    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;
    height: 0.8rem;
    margin: 0 auto;
    border-radius: 0.4rem;
    border: 0.05rem solid #448da9;
    color: #428fae;
    font-size: 0.5rem;
    background-color: #ffffff;
  }
  .price__ttl01 {
    margin-top: 0.5rem;
    font-size: 0.4rem;
    line-height: 1.2;
  }
  .price__ttl01 .bold {
    font-size: 0.54rem;
  }
  .price__ttl01 .big {
    font-size: 0.7rem;
  }
  .price__box {
    position: relative;
    margin-top: 0.5rem;
    padding: 0.4rem 0.4rem 0.9rem;
    border-radius: 0.1rem;
    background-color: #ffffff;
  }
  .price__box::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -0.33rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 4.85rem;
    height: 0.7rem;
    background: url(../images/check_triangle01.webp) top center/contain no-repeat;
  }
  .price__item {
    margin-top: 0.3rem;
  }
  .price__txt01 {
    padding: 0.15rem 0;
    border-radius: 0.03rem;
    background-color: #595959;
    font-size: 0.36rem;
    line-height: 1.4;
    text-align: center;
  }
  .price__txt01 .en {
    display: block;
    font-size: 0.3rem;
  }
  .price__txt02 {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 0.2rem;
    font-size: 0.36rem;
    padding-left: 1rem;
  }
  .price__txt02::before {
    content: "";
    display: block;
    margin-right: 0.2rem;
    width: 0.6rem;
    height: 0.6rem;
  }
  .price__txt02.num02 {
    margin-top: 0.7rem;
  }
  .price__txt02.tube::before {
    background: url(../images/price_icon01.webp) top center/contain no-repeat;
  }
  .price__txt02.book::before {
    background: url(../images/price_icon02.webp) top center/contain no-repeat;
  }
  .price__txt02.phone {
    padding-left: 0.45rem;
    text-align: center;
    margin-left: 0rem;
  }
  .price__txt02.phone::before {
    background: url(../images/price_icon03.webp) top center/contain no-repeat;
  }
  .price__txt02 .red {
    color: #ea3323;
    font-size: 0.4rem;
    font-weight: bold;
  }
  .price__txt02 .ue {
    position: absolute;
    top: -0.6rem;
    display: block;
    padding-left: 0.55rem;
    font-size: 0.32rem;
  }
  .price__ttl02 {
    text-align: center;
    color: #fff;
    font-weight: bold;
    margin-top: 0.75rem;
  }
  .price__ttl02 .txt {
    display: block;
    width: 5.8rem;
    margin: 0 auto -0.15rem;
  }
  .price__ttl02 .en {
    display: inline-block;
    width: 0.7rem;
    -webkit-transform: translateY(0.1rem);
            transform: translateY(0.1rem);
  }
  .price__ttl02 .num {
    display: inline-block;
    color: #fcf05f;
    font-size: 1.65rem;
    line-height: 1;
    text-shadow: 0rem 0rem 0.2rem #378db3;
  }
  .price__ribon {
    width: 7.5rem;
    height: 2.07rem;
    margin: -0.3rem 0 0 -0.4rem;
    padding-top: 0.6rem;
    color: #0f91b1;
    font-size: 0.38rem;
    font-weight: bold;
    text-align: center;
    background: url(../images/price_bg01_sp.webp) top center/cover no-repeat;
  }
  .price__ribon .num {
    font-size: 0.7rem;
  }
  .price__ribon .orange {
    font-size: 0.45rem;
  }
}
/*==============================================================================
price
============================================================================= */
@media screen and (min-width: 769px) {
  .price--bg {
    padding: 90px 0;
    background-color: #5fb1ce;
  }
  .price__lead {
    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;
    width: 600px;
    height: 65px;
    margin: 0 auto;
    border-radius: 33px;
    border: 5px solid #448da9;
    color: #428fae;
    font-size: 36px;
    background-color: #ffffff;
  }
  .price__ttl01 {
    margin-top: 20px;
    font-size: 38px;
    line-height: 1.2;
  }
  .price__ttl01 .bold {
    font-size: 51px;
  }
  .price__ttl01 .big {
    font-size: 66px;
  }
  .price__box {
    position: relative;
    margin-top: 40px;
    padding: 35px 50px 65px;
    border-radius: 10px;
    background-color: #ffffff;
  }
  .price__box::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -30px;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 437px;
    height: 63px;
    background: url(../images/check_triangle01.webp) top center/contain no-repeat;
  }
  .price__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .price__item {
    width: 270px;
  }
  .price__txt01 {
    margin-bottom: 40px;
    padding: 13px 0;
    border-radius: 3px;
    background-color: #595959;
    font-size: 26px;
    line-height: 1.4;
  }
  .price__txt01 .en {
    display: block;
    font-size: 20px;
  }
  .price__txt02 {
    position: relative;
    margin-top: 10px;
    padding-left: 50px;
    font-size: 22px;
  }
  .price__txt02::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 5px;
    width: 39px;
    height: 39px;
  }
  .price__txt02.tube::before {
    background: url(../images/price_icon01.webp) top center/contain no-repeat;
  }
  .price__txt02.book::before {
    background: url(../images/price_icon02.webp) top center/contain no-repeat;
  }
  .price__txt02.phone {
    margin-top: -13px;
    text-align: center;
  }
  .price__txt02.phone::before {
    background: url(../images/price_icon03.webp) top center/contain no-repeat;
  }
  .price__txt02 .red {
    color: #ea3323;
    font-size: 29px;
    font-weight: bold;
  }
  .price__txt02 .ue {
    position: absolute;
    top: -30px;
    left: 50%;
    width: 100%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    padding-left: 50px;
    font-size: 20px;
  }
  .price__ttl02 {
    text-align: center;
    color: #fff;
    font-weight: bold;
    margin-top: 50px;
  }
  .price__ttl02 .txt {
    display: block;
    width: 514px;
    margin: 0 auto -10px;
  }
  .price__ttl02 .en {
    display: inline-block;
    width: 111px;
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
  }
  .price__ttl02 .num {
    display: inline-block;
    color: #fcf05f;
    font-size: 142px;
    line-height: 1;
    text-shadow: 0px 0px 20px #378db3;
  }
  .price__ribon {
    width: 743px;
    height: 78px;
    margin: 20px auto 0;
    padding-top: 30px;
    color: #0f91b1;
    font-size: 21px;
    font-weight: bold;
    text-align: center;
    background: url(../images/price_bg01.webp) top center/cover no-repeat;
  }
  .price__ribon .num {
    font-size: 38px;
  }
  .price__ribon .orange {
    font-size: 25px;
  }
}
/*==============================================================================
step
============================================================================= */
@media screen and (max-width: 768px) {
  .step__ttl01 {
    width: 7.5rem;
    -webkit-transform: translateX(-0.4rem);
            transform: translateX(-0.4rem);
  }
  .step__list {
    margin-top: 0.8rem;
  }
  .step__item {
    padding-bottom: 1.1rem;
  }
  .step__item:nth-child(2) {
    background-color: #e7f7fb;
  }
  .step__item__ttl {
    position: relative;
    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;
    height: 1.6rem;
    padding-top: 0.15rem;
    -webkit-box-shadow: 0.02rem 0.12rem 0.3rem rgba(128, 108, 86, 0.2);
            box-shadow: 0.02rem 0.12rem 0.3rem rgba(128, 108, 86, 0.2);
    border-top: 0.05rem solid #000000;
    border-bottom: 0.05rem solid #000000;
    background-color: #428fae;
  }
  .step__item__ttl .img {
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 4rem;
  }
  .step__item__ttl .txt {
    font-size: 0.42rem;
  }
  .step__flex {
    margin-top: 0.5rem;
  }
  .step__item__lead {
    font-size: 0.4rem;
    text-align: center;
  }
  .step__item__lead .bg {
    display: inline-block;
    padding: 0.05rem;
    border-radius: 0.03rem;
    background-color: #f09636;
    color: #fff;
    line-height: 1.2;
  }
  .step__img01 {
    margin-top: 0.45rem;
  }
  .step__txt01--num01 {
    margin-top: 0.45rem;
  }
  .step__ac {
    margin-top: 0.6rem;
  }
  .step__content {
    display: none;
  }
  .step__content {
    display: none;
  }
  .step__box {
    margin: 0.75rem auto 0.6rem;
    padding: 0.4rem 0.4rem 0.5rem;
    -webkit-box-shadow: 0.02rem 0.12rem 0.3rem rgba(128, 108, 86, 0.2);
            box-shadow: 0.02rem 0.12rem 0.3rem rgba(128, 108, 86, 0.2);
    border-radius: 0.1rem;
    border: 0.03rem solid #000000;
    background: url(../images/step_bg02.webp) top left/50%;
  }
  .step__box__txt02 {
    margin: 0.4rem auto 0;
  }
  .step__btn01 {
    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;
    width: 3rem;
    height: 0.8rem;
    margin: 0.3rem auto 0.5rem;
    border-radius: 0.4rem;
    background-color: #7faaf8;
    background-image: -webkit-gradient(linear, left bottom, left top, from(#397f9d), color-stop(99%, #428fae), to(#428fae));
    background-image: linear-gradient(to top, #397f9d 0%, #428fae 99%, #428fae 100%);
    font-size: 0.32rem;
  }
  .step__btn01.open {
    background-image: -webkit-gradient(linear, left bottom, left top, from(#808080), color-stop(99%, #9a9a9a), to(#9a9a9a));
    background-image: linear-gradient(to top, #808080 0%, #9a9a9a 99%, #9a9a9a 100%);
  }
  .step__box__flex {
    position: relative;
  }
  .step__movie {
    margin-top: 0.3rem;
    padding-bottom: 56.5%;
  }
  .step__movie + .step__txt01 {
    margin-top: 0.3rem;
  }
  .step__box__low {
    margin-top: 0.4rem;
    font-size: 0.4rem;
    line-height: 1.5;
    text-align: center;
  }
  .step__box__txt03 {
    width: 7.4rem;
    margin-top: -0.3rem;
    margin-left: -0.65rem;
  }
  .step__box__img01 {
    margin: -1rem auto 0;
  }
  .step__kouza {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 0.2rem;
    font-size: 0.18rem;
    letter-spacing: 0;
    line-height: 1.8;
  }
  .step__kouza .col {
    width: 51%;
  }
  .step__kouza .big {
    color: #428fae;
    font-size: 0.21rem;
    font-weight: 700;
    letter-spacing: 0;
  }
  .step__kouza.pc {
    display: none;
  }
  .step__box__dot {
    display: table;
    margin: 0.55rem auto 0;
    padding-bottom: 0rem;
    border-bottom: 0.04rem dotted #cccccc;
    font-size: 0.46rem;
    line-height: 1.4;
  }
  .step__box__check {
    margin-top: 0.4rem;
  }
  .step__box__check .txt {
    display: block;
    position: relative;
    margin-top: 0.2rem;
    font-size: 0.3rem;
    padding-left: 0.8rem;
  }
  .step__box__check .txt::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 0.16rem;
    width: 0.44rem;
    height: 0.44rem;
    background: url(../images/step_check01.webp) top center/contain no-repeat;
  }
  .step__box__more {
    width: 6.3rem;
    margin: 0.6rem 0 0 -0.6rem;
  }
  .step__box__pdf {
    margin-top: 0.3rem;
  }
  .step__bg02 {
    margin-top: 0.6rem;
    padding: 0.8rem 0;
    background-color: #eaf6fa;
  }
  .step__bg02__ttl {
    font-size: 0.31rem;
    line-height: 1.4;
  }
  .step__bg02__ttl .medium {
    font-size: 0.44rem;
  }
  .step__bg02__ttl .big {
    font-size: 0.6rem;
  }
  .step__list02 {
    margin-top: 0.8rem;
  }
  .step__item02 {
    position: relative;
    margin-top: 0.5rem;
    padding: 0.4rem 0 0.3rem 0;
    border-radius: 0.1rem;
    background-color: #ffffff;
  }
  .step__item02:nth-child(1)::after {
    content: "";
    display: block;
    position: absolute;
    top: -0.75rem;
    right: -0.14rem;
    width: 1.25rem;
    height: 0.97rem;
    background: url(../images/step_icon01.webp) top center/contain no-repeat;
  }
  .step__item02:nth-child(2)::after {
    content: "";
    display: block;
    position: absolute;
    top: -0.35rem;
    left: -0.35rem;
    width: 1.04rem;
    height: 0.98rem;
    background: url(../images/step_icon02.webp) top center/contain no-repeat;
  }
  .step__item02__lead {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    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;
    width: 2.2rem;
    height: 0.5rem;
    border-radius: 0.25rem;
    background-color: #428fae;
    font-size: 0.3rem;
  }
  .step__item02__txt {
    font-size: 0.3rem;
  }
  .step__bg02__ttl02 {
    margin: 0.8rem 0.4rem 0;
    padding: 0.35rem 0;
    border-radius: 0.1rem;
    background-color: #428fae;
    font-size: 0.5rem;
    line-height: 1.4;
  }
  .step__bg02__ttl02 .small {
    display: block;
    margin-bottom: 0.15rem;
    font-size: 0.4rem;
  }
  .step__bg02__txt01 {
    margin-top: 0.5rem;
    text-align: center;
    line-height: 1.7;
  }
  .step__bg02__txt01 .bg {
    display: inline-block;
    line-height: 1.2;
    padding: 0.05rem;
    border-radius: 0.03rem;
    background-color: #428fae;
  }
  .step__bg02__txt01 .small {
    font-size: 0.26rem;
  }
  .step__bg02__txt02 {
    width: 5.7rem;
    margin: 0.6rem auto 0;
  }
  .step__box03 {
    margin-top: 0.4rem;
    -webkit-box-shadow: 0.02rem 0.12rem 0.3rem rgba(128, 108, 86, 0.2);
            box-shadow: 0.02rem 0.12rem 0.3rem rgba(128, 108, 86, 0.2);
    border-radius: 0.1rem;
    border: 0.03rem solid #000000;
    background: url(../images/step_bg02.webp) top left/50%;
  }
  .step__box03 + .step__txt01 {
    margin-top: 0.3rem;
    text-align: left;
  }
  .step__box03--num02 {
    padding-bottom: 0;
  }
  .step__box03__head {
    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;
    height: 0.6rem;
    border-radius: 0.1rem 0.1rem 0 0;
    background-color: #333333;
    font-size: 0.32rem;
  }
  .step__box03__body {
    padding: 0.2rem 0 0.25rem;
  }
  .step__box03__body--num02 {
    padding-bottom: 0;
  }
  .step__box03__txt01 {
    font-size: 0.36rem;
  }
  .step__box03__txt02 {
    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;
    width: 1.65rem;
    height: 0.55rem;
    font-size: 0.32rem;
    margin: 0.2rem auto 0;
    background: url(../images/step_bg03.webp) top center/cover no-repeat;
  }
  .step__box03__txt02.tuika {
    margin: 0 1.05rem 0 0;
  }
  .step__box03__txt02.tuika02 {
    margin: 0 0.5rem 0 0;
  }
  .step__tuika {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .step__item__bg {
    background: #fff;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
  .step__item__bg .step__flex {
    margin-top: 0;
  }
  .step__bg02--num02 {
    padding: 0px 0 0.5rem;
  }
  .step__box03__txt03 {
    margin-top: 0.15rem;
    font-size: 0.42rem;
    line-height: 1.4;
  }
  .step__box03__txt03 .small {
    display: block;
    margin-bottom: 0.2rem;
    font-size: 0.32rem;
  }
  .step__box03__txt03.en {
    font-size: 0.38rem;
    letter-spacing: -0.02em;
  }
  .step__box03__low {
    padding: 0.25rem 0 0.25rem 0.6rem;
    border-radius: 0 0 0.08rem 0.08rem;
    text-align: left;
    background-color: #fffdea;
    font-size: 0.38rem;
  }
  .step__txt03 {
    border-radius: 0.1rem;
    background-color: #0f91b1;
    margin-top: 1rem;
    padding: 0.3rem 0rem;
    text-align: center;
    font-size: 0.4rem;
    font-weight: bold;
    color: #fff;
  }
  .step__txt03 + .step__txt01 {
    margin-top: 0.3rem;
  }
  .step__txt03 + .step__movie {
    margin-top: 0.6rem;
  }
  .step__box04 {
    margin-top: 0.55rem;
    -webkit-box-shadow: 0.02rem 0.12rem 0.3rem rgba(128, 108, 86, 0.2);
            box-shadow: 0.02rem 0.12rem 0.3rem rgba(128, 108, 86, 0.2);
    border-radius: 0.1rem;
    border: 0.03rem solid #000000;
    background: url(../images/step_bg02.webp) top left/50%;
  }
  .step__box04__head {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 1rem;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 0.4rem;
    background-color: #333333;
  }
  .step__box04__head::after {
    content: "";
    display: block;
    position: absolute;
    top: -0.33rem;
    right: 0.15rem;
    width: 1.59rem;
    height: 1.53rem;
    background: url(../images/step_icon03.webp) top center/contain no-repeat;
  }
  .step__box04__body {
    padding: 0.1rem 0rem 0.5rem;
  }
  .step__box04__up {
    width: 5.9rem;
    margin: 0 auto;
    padding-bottom: 0.25rem;
    border-bottom: 0.06rem dotted #e2c948;
  }
  .step__box04__arrow {
    position: relative;
    margin-top: 0.3rem;
    padding-left: 0.65rem;
    font-size: 0.31rem;
  }
  .step__box04__arrow::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 0.45rem;
    height: 0.88rem;
    background: url(../images/step_arrow01.webp) top center/contain no-repeat;
  }
  .step__box04__arrow .water02 {
    font-weight: bold;
  }
  .step__box04__txt01 {
    position: relative;
    margin: 0.4rem 0 0.75rem;
    font-size: 0.3rem;
  }
  .step__box04__txt01 .water02 {
    display: block;
    font-size: 0.4rem;
  }
  .step__box04__txt01::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -1.9rem;
    right: 0.4rem;
    width: 1.9rem;
    height: 1.6rem;
    background: url(../images/step_hand01.webp) top center/contain no-repeat;
  }
  .step__box04__middle {
    padding: 0.75rem 0.35rem 0.6rem;
    background-color: #f3f3f3;
  }
  .step__box04__big {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 0.3rem 0;
    padding: 0.15rem 0;
    background-color: #ffffff;
    font-size: 0.4rem;
  }
  .step__txt01 {
    font-size: 0.28rem;
  }
  .step__txt01 .line {
    font-weight: bold;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #a0deef));
    background: linear-gradient(to bottom, transparent 60%, #a0deef 60%);
  }
  .step__txt01 + .step__txt01 {
    margin-top: 0.2rem;
  }
  .step__huto {
    margin-top: 0.5rem;
    font-size: 0.36rem;
  }
  .step__box04__ttl {
    width: 6.9rem;
    -webkit-transform: translateX(-0.22rem);
            transform: translateX(-0.22rem);
    margin-top: -0.1rem;
  }
  .step__box04__rei {
    position: relative;
    margin-top: 0.5rem;
    padding-left: 1.15rem;
    white-space: nowrap;
    font-size: 0.3rem;
  }
  .step__box04__rei .rei {
    display: block;
    position: absolute;
    top: 0;
    left: -0.15rem;
    width: 1.15rem;
    height: 0.5rem;
    padding-top: 0.06rem;
    padding-left: 0.3rem;
    color: #fff;
    background-color: #428fae;
    background: url(../images/step_rei01.webp) top center/cover no-repeat;
  }
  .step__box04__rei .arrow {
    display: block;
    margin-top: 0.15rem;
    font-size: 0.24rem;
    -webkit-transform: translateX(-0.8rem);
            transform: translateX(-0.8rem);
  }
  .step .dot {
    width: 5.9rem;
    margin: 0.15rem auto 0;
    font-size: 0.37rem;
    letter-spacing: 0;
    border-bottom: 0.02rem dotted #a6a6a6;
  }
  .step__box04__low {
    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-top: 0.25rem;
    font-size: 0.5rem;
  }
  .step__box04__low .txt {
    line-height: 1.1;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #a0deef));
    background: linear-gradient(to bottom, transparent 70%, #a0deef 70%);
  }
  .step__box04__low .img {
    width: 1.16rem;
    margin-left: 0.35rem;
  }
  .step__box__txt03--num02 {
    width: 7.3rem;
    margin-left: -0.6rem;
    margin-top: 0;
  }
  .step__box__img01--num02 {
    margin: -0.8rem auto 0;
  }
  .step__husen {
    margin-top: 0.4rem;
  }
  .step__husen .txt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: -0.1rem auto 0;
    width: 5.75rem;
    height: 1.6rem;
    padding-left: 0.34rem;
    font-size: 0.32rem;
    line-height: 1.4;
    background: url(../images/step_husen01.webp) top center/cover no-repeat;
  }
  .step__man {
    position: relative;
    margin-top: 0.4rem;
    padding: 0.32rem 0.2rem;
    padding-left: 1.1rem;
    border-radius: 10px;
    background-color: #f39e2f;
    color: #fff;
  }
  .step__man::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: -0.05rem;
    width: 0.93rem;
    height: 1.7rem;
    background: url(../images/info_img01.webp) top center/contain no-repeat;
  }
  .step__content {
    display: none;
  }
}
/*==============================================================================
step
============================================================================= */
@media screen and (min-width: 769px) {
  .step__ttl01 {
    width: 2000px;
    -webkit-transform: translateX(-500px);
            transform: translateX(-500px);
  }
  .step__list {
    margin-top: 80px;
  }
  .step__item {
    padding-bottom: 80px;
  }
  .step__item:nth-child(2) {
    background-color: #e7f7fb;
  }
  .step__item__ttl {
    position: relative;
    height: 181px;
    padding-top: 55px;
    -webkit-box-shadow: 0 12px 30px rgba(125, 125, 125, 0.2);
            box-shadow: 0 12px 30px rgba(125, 125, 125, 0.2);
    border-top: 5px solid #000000;
    border-bottom: 5px solid #000000;
    background-color: #428fae;
  }
  .step__item__ttl .img {
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 400px;
  }
  .step__item__ttl .txt {
    font-size: 60px;
  }
  .step__flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 50px;
  }
  .step__item__lead {
    width: 590px;
    font-size: 35px;
  }
  .step__item__lead .bg {
    display: inline-block;
    padding: 0 5px;
    border-radius: 3px;
    background-color: #f09636;
    color: #fff;
    line-height: 1.2;
  }
  .step__img01 {
    width: 383px;
  }
  .step__txt01--num01 {
    margin-top: 35px;
  }
  .step__ac {
    margin-top: 50px;
  }
  .step__content {
    display: none;
  }
  .step__box {
    margin: 65px auto;
    padding: 40px 50px 50px;
    -webkit-box-shadow: 0 12px 30px rgba(125, 125, 125, 0.2);
            box-shadow: 0 12px 30px rgba(125, 125, 125, 0.2);
    border-radius: 10px;
    border: 3px solid #000000;
    background: url(../images/step_bg02.webp) top left;
  }
  .step__box__txt {
    width: 615px;
    margin: 0 auto;
  }
  .step__box__txt02 {
    width: 869px;
    margin: 30px auto 0;
  }
  .step__btn01 {
    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;
    width: 178px;
    height: 48px;
    margin: 27px auto 0;
    border-radius: 24px;
    background-color: #7faaf8;
    background-image: -webkit-gradient(linear, left bottom, left top, from(#397f9d), color-stop(99%, #428fae), to(#428fae));
    background-image: linear-gradient(to top, #397f9d 0%, #428fae 99%, #428fae 100%);
    font-size: 19px;
    cursor: pointer;
  }
  .step__btn01:hover {
    opacity: 0.8;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .step__btn01.open {
    background-image: -webkit-gradient(linear, left bottom, left top, from(#808080), color-stop(99%, #9a9a9a), to(#9a9a9a));
    background-image: linear-gradient(to top, #808080 0%, #9a9a9a 99%, #9a9a9a 100%);
  }
  .step__box__flex {
    position: relative;
    min-height: 181px;
    margin-top: 30px;
  }
  .step__box__flex .step__txt01 {
    width: 540px;
  }
  .step__movie {
    position: absolute;
    top: 0;
    right: 0;
    width: 321px;
    height: 181px;
  }
  .step__movie .step__txt01 {
    width: 525px;
  }
  .step__movie + .step__txt01 {
    text-align: center;
    margin-top: 40px;
  }
  .step__movie--num03 {
    position: relative;
    top: inherit;
    width: 684px;
    height: 378px;
    margin: 40px auto 0;
  }
  .step__box__low {
    margin-top: 30px;
    font-size: 26px;
  }
  .step__box__txt03 {
    width: 820px;
    margin-left: 80px;
  }
  .step__box__img01 {
    width: 596px;
    margin: -150px auto 0;
  }
  .step__kouza {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 20px;
    font-size: 16px;
    line-height: 1.8;
  }
  .step__kouza .col {
    width: 33%;
  }
  .step__kouza .big {
    color: #428fae;
    font-size: 20px;
    font-weight: 700;
  }
  .step__kouza.sp {
    display: none;
  }
  .step__box__dot {
    display: table;
    margin: 60px auto 0;
    padding-bottom: 10px;
    border-bottom: 4px dotted #cccccc;
    font-size: 40px;
  }
  .step__box__check {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 30px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .step__box__check .txt {
    position: relative;
    white-space: nowrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 20px;
    font-size: 22px;
    width: 429px;
    padding-left: 40px;
  }
  .step__box__check .txt::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 0;
    width: 30px;
    height: 30px;
    margin-right: 15px;
    background: url(../images/step_check01.webp) top center/contain no-repeat;
  }
  .step__box__more {
    width: 502px;
    margin: 30px 0 0 160px;
  }
  .step__box__more--num01 {
    width: 546px;
  }
  .step__box__pdf {
    width: 901px;
    margin: 20px 0 0 0px;
  }
  .step__bg02 {
    margin-top: 50px;
    padding: 50px 0;
    background-color: #eaf6fa;
  }
  .step__bg02__ttl {
    font-size: 36px;
  }
  .step__bg02__ttl .medium {
    font-size: 44px;
  }
  .step__bg02__ttl .big {
    font-size: 58px;
  }
  .step__list02 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 70px;
  }
  .step__item02 {
    position: relative;
    width: 480px;
    padding: 50px 0 30px;
    border-radius: 25px;
    background-color: #ffffff;
  }
  .step__item02:nth-child(1)::after {
    content: "";
    display: block;
    position: absolute;
    top: -27px;
    right: -7px;
    width: 95px;
    height: 71px;
    background: url(../images/step_icon01.webp) top center/contain no-repeat;
  }
  .step__item02:nth-child(2)::after {
    content: "";
    display: block;
    position: absolute;
    top: -39px;
    right: -4px;
    width: 87px;
    height: 82px;
    background: url(../images/step_icon02.webp) top center/contain no-repeat;
  }
  .step__item02__lead {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    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;
    width: 220px;
    height: 50px;
    border-radius: 25px;
    background-color: #428fae;
    font-size: 28px;
  }
  .step__item02__txt {
    font-size: 28px;
  }
  .step__bg02__ttl02 {
    margin-top: 100px;
    padding: 20px 0;
    background-color: #428fae;
    font-size: 40px;
  }
  .step__bg02__ttl02 .small {
    display: block;
    font-size: 30px;
  }
  .step__bg02__txt01 {
    margin-top: 30px;
    line-height: 1.8;
  }
  .step__bg02__txt01 .bg {
    display: inline-block;
    line-height: 1;
    padding: 3px;
    border-radius: 3px;
    background-color: #428fae;
  }
  .step__bg02__txt02 {
    width: 803px;
    margin: 30px 0 0 40px;
  }
  .step__bg02__txt02.num02 {
    width: 644px;
    margin-left: 120px;
  }
  .step__box03 {
    margin-top: 40px;
    -webkit-box-shadow: 0 12px 30px rgba(125, 125, 125, 0.2);
            box-shadow: 0 12px 30px rgba(125, 125, 125, 0.2);
    border-radius: 10px;
    border: 3px solid #000000;
    background: url(../images/step_bg02.webp) top left;
  }
  .step__box03 + .step__txt01 {
    margin-top: 40px;
  }
  .step__box03__head {
    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;
    height: 60px;
    border-radius: 10px 10px 0 0;
    background-color: #333333;
    font-size: 24px;
  }
  .step__box03__body {
    padding: 30px 0 40px;
  }
  .step__box03__body--num02 {
    padding-bottom: 0;
  }
  .step__box03__txt01 {
    font-size: 26px;
  }
  .step__box03__txt02 {
    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;
    width: 164px;
    height: 55px;
    font-size: 28px;
    margin: 20px auto 0;
    background: url(../images/step_bg03.webp) top center/cover no-repeat;
  }
  .step__box03__txt02.tuika {
    margin: 0 100px 0 0;
  }
  .step__box03__txt02.tuika02 {
    margin: 0 210px 0 0;
  }
  .step__tuika {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    margin-top: 20px;
  }
  .step__item__bg {
    background: #fff;
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .step__item__bg .step__flex {
    margin-top: 0;
  }
  .step__bg02--num02 {
    padding: 0px 0 50px;
  }
  .step__box03__txt03 {
    margin-top: 20px;
    font-size: 34px;
  }
  .step__box03__txt03 .small {
    font-size: 26px;
  }
  .step__box03__low {
    margin-top: 30px;
    padding: 30px 0 30px 260px;
    border-radius: 0 0 7px 7px;
    text-align: left;
    background-color: #fffdea;
    font-size: 34px;
  }
  .step__txt03 {
    margin-top: 80px;
    padding: 30px;
    text-align: center;
    font-size: 34px;
    font-weight: bold;
    color: #fff;
    border-radius: 10px;
    background-color: #0f91b1;
  }
  .step__txt03 + .step__txt01 {
    margin-top: 40px;
  }
  .step__box04 {
    margin-top: 40px;
    -webkit-box-shadow: 0 12px 30px rgba(125, 125, 125, 0.2);
            box-shadow: 0 12px 30px rgba(125, 125, 125, 0.2);
    border-radius: 10px;
    border: 3px solid #000000;
    background: url(../images/step_bg02.webp) top left;
  }
  .step__box04__head {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 100px;
    margin-bottom: -50px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 38px;
    background-color: #333333;
  }
  .step__box04__head::after {
    content: "";
    display: block;
    position: absolute;
    top: -35px;
    right: 150px;
    width: 144px;
    height: 144px;
    background: url(../images/step_icon03.webp) top center/contain no-repeat;
  }
  .step__box04__body {
    padding: 30px 55px 40px;
  }
  .step__box04__up {
    width: 562px;
    margin: 0 auto;
    padding-bottom: 50px;
    border-bottom: 6px dotted #e2c948;
  }
  .step__box04__arrow {
    position: relative;
    margin-top: 50px;
    padding-left: 70px;
    font-size: 24px;
  }
  .step__box04__arrow::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 43px;
    height: 84px;
    background: url(../images/step_arrow01.webp) top center/contain no-repeat;
  }
  .step__box04__txt01 {
    position: relative;
    margin: 30px 0;
    font-size: 24px;
  }
  .step__box04__txt01 .water02 {
    display: block;
    font-size: 38px;
  }
  .step__box04__txt01::after {
    content: "";
    display: block;
    position: absolute;
    z-index: 2;
    bottom: -120px;
    right: 80px;
    width: 171px;
    height: 147px;
    background: url(../images/step_hand01.webp) top center/contain no-repeat;
  }
  .step__box04__middle {
    width: 994px;
    -webkit-transform: translateX(-55px);
            transform: translateX(-55px);
    padding: 40px 40px;
    background-color: #f3f3f3;
  }
  .step__box04__big {
    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;
    height: 74px;
    margin: 40px 0 30px;
    background-color: #ffffff;
    font-size: 37px;
  }
  .step__txt01 .line {
    font-weight: bold;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #a0deef));
    background: linear-gradient(to bottom, transparent 60%, #a0deef 60%);
  }
  .step__txt01 + .step__txt01 {
    margin-top: 20px;
  }
  .step__huto {
    margin-top: 45px;
    font-size: 30px;
  }
  .step__box04__ttl {
    width: 994px;
    -webkit-transform: translateX(-55px);
            transform: translateX(-55px);
    margin-top: 20px;
  }
  .step__box04__rei {
    position: relative;
    font-size: 22px;
    margin-top: 50px;
    padding-left: 80px;
    white-space: nowrap;
  }
  .step__box04__rei .rei {
    display: block;
    position: absolute;
    top: 0;
    left: -20px;
    width: 90px;
    height: 39px;
    padding-top: 5px;
    padding-left: 22px;
    color: #fff;
    background-color: #428fae;
    background: url(../images/step_rei01.webp) top center/cover no-repeat;
  }
  .step__box04__rei .arrow {
    font-size: 18px;
  }
  .step .dot {
    display: table;
    margin-top: 20px;
    margin-left: 80px;
    font-size: 30px;
    border-bottom: 2px dotted #a6a6a6;
  }
  .step__box04__low {
    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-top: 30px;
    font-size: 50px;
  }
  .step__box04__low .txt {
    line-height: 1.1;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #a0deef));
    background: linear-gradient(to bottom, transparent 70%, #a0deef 70%);
  }
  .step__box04__low .img {
    width: 109px;
    margin-left: 25px;
  }
  .step__box__txt03--num02 {
    width: 860px;
  }
  .step__box__img01--num02 {
    margin: -220px auto 0;
  }
  .step__husen {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 40px;
  }
  .step__husen .txt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 0 7px;
    width: 414px;
    height: 116px;
    padding-left: 35px;
    font-size: 23px;
    line-height: 1.4;
    background: url(../images/step_husen01.webp) top center/cover no-repeat;
  }
  .step__man {
    position: relative;
    margin-top: 50px;
    padding: 25px;
    padding-left: 150px;
    border-radius: 10px;
    background-color: #f39e2f;
    color: #fff;
    font-size: 22px;
  }
  .step__man::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 30px;
    width: 60px;
    height: 120px;
    background: url(../images/info_img01.webp) top center/contain no-repeat;
  }
  .step__content {
    display: none;
  }
}
/*==============================================================================
tai
============================================================================= */
@media screen and (max-width: 768px) {
  .tai--bg {
    padding: 0.5rem 0 1.5rem;
  }
  .tai__ttl01 {
    width: 7.1rem;
    margin-left: -0.4rem;
  }
  .tai__flex .tai__txt01 {
    text-align: center;
    font-size: 0.32rem;
    margin-top: 0.2rem;
  }
  .tai__img01 {
    width: 6.65rem;
    margin: 0.5rem 0 0 0.15rem;
  }
  .tai__ttl02 {
    position: relative;
    z-index: 1;
    margin-top: 0.3rem;
    font-size: 0.4rem;
  }
  .tai__ttl02 .small {
    display: block;
    margin-bottom: 0.2rem;
    font-size: 0.32rem;
    text-align: center;
  }
  .tai__ttl02 .bg {
    display: inline-block;
    margin-left: 1.15rem;
    padding: 0.08rem 0.08rem;
    border-radius: 0.03rem;
    background-color: #428fae;
    color: #fff;
    line-height: 1;
    font-size: 0.46rem;
  }
  .tai__ttl02 .comment {
    position: absolute;
    z-index: -1;
    display: block;
    top: 0.5rem;
    left: -0.3rem;
    width: 1.66rem;
  }
  .tai__ttl02 .txt {
    display: block;
    text-align: center;
  }
  .tai__ttl02 .sp {
    padding-left: 0.5rem;
  }
  .tai__box {
    position: relative;
    margin-top: 0.8rem;
    padding: 0.8rem 0 0.9rem;
    border-radius: 0.15rem;
    border: 0.1rem solid #e7a249;
    background-color: #fcf0de;
  }
  .tai__box::before {
    content: "";
    position: absolute;
    bottom: -1.9rem;
    right: -1.34rem;
    display: block;
    width: 2.7rem;
    height: 3.5rem;
    background: url(../images/tai_woman01.webp) top center/contain no-repeat;
  }
  .tai__box::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -0.15rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 4.85rem;
    height: 0.7rem;
    background: url(../images/check_triangle01.webp) top center/contain no-repeat;
  }
  .tai__box__head {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    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;
    width: 5.9rem;
    height: 0.7rem;
    border-radius: 0.35rem;
    background-color: #e7a249;
    font-size: 0.34rem;
  }
  .tai__ttl03 {
    font-size: 0.4rem;
    line-height: 1.5;
  }
  .tai__ttl03 .line {
    font-size: 0.5rem;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #fff));
    background: linear-gradient(to bottom, transparent 60%, #fff 60%);
  }
  .tai__lead {
    text-align: center;
    margin-top: 0.65rem;
    font-size: 0.34rem;
  }
  .tai__lead .big {
    font-size: 0.5rem;
  }
  .tai__ttl04 {
    margin-top: 0.4rem;
    padding: 0.25rem 0;
    background-color: #428fae;
    font-size: 0.46rem;
    border-radius: 0.15rem;
    letter-spacing: 0.02em;
  }
  .tai__ttl04 .line {
    line-height: 1.1;
    border-bottom: 0.02rem solid #fff;
  }
  .tai__flex02 {
    margin-top: 0.4rem;
  }
  .tai__flex02 .tai__txt01 {
    margin-top: 0.3rem;
  }
  .tai__flex02__img {
    width: 6.95rem;
    margin-left: -0.25rem;
  }
  .tai__ttl05 {
    margin-top: 0.7rem;
  }
  .tai__slider {
    position: relative;
    width: 7.5rem;
    margin: 0.6rem 0 0 -0.4rem;
  }
  .tai__slider::after {
    content: "";
    display: block;
    position: absolute;
    z-index: 10;
    top: -0.2rem;
    left: 0.2rem;
    width: 0.58rem;
    height: 0.58rem;
    background: url(../images/tai_check01.webp) top center/contain no-repeat;
  }
  .tai__slide {
    position: relative;
    padding: 0rem 0.4rem 0.2rem;
  }
  .tai__slide__inner {
    padding: 0.55rem 0.45rem;
    border-radius: 0.1rem;
    border: 0.01rem dashed #428fae;
    background-color: #f0f7f9;
  }
  .tai__slide__inner .tai__txt01 {
    margin-top: 0.2rem;
    font-size: 0.28rem;
    letter-spacing: 0;
  }
  .tai__slide__ttl {
    font-size: 0.36rem;
    line-height: 1.3;
  }
  .tai__icon01 {
    position: absolute;
    top: 0.2rem;
    right: 0rem;
  }
  .tai__icon01--num01 {
    width: 1.75rem;
    top: 0.3rem;
    right: 0.56rem;
  }
  .tai__icon01--num02 {
    width: 1.8rem;
    top: 0.3rem;
    right: 0.3rem;
  }
  .tai__icon01--num03 {
    width: 2rem;
  }
  .tai .swiper__pagination {
    bottom: -0.55rem;
  }
  .tai .swiper-button-prev,
  .tai .swiper-button-next {
    bottom: -0.8rem;
  }
}
/*==============================================================================
tai
============================================================================= */
@media screen and (min-width: 769px) {
  .tai--bg {
    padding: 60px 0 100px;
  }
  .tai__ttl01 {
    width: 736px;
    margin: 0 auto;
  }
  .tai__flex {
    position: relative;
    margin-top: 40px;
  }
  .tai__flex__txt01 {
    width: 624px;
  }
  .tai__img01 {
    position: absolute;
    top: -50px;
    right: -60px;
    width: 400px;
  }
  .tai__ttl02 {
    position: relative;
    margin-top: 65px;
    padding-left: 180px;
    font-size: 36px;
  }
  .tai__ttl02 .small {
    font-size: 24px;
  }
  .tai__ttl02 .bg {
    display: inline-block;
    padding: 10px 15px;
    border-radius: 3px;
    background-color: #428fae;
    color: #fff;
    line-height: 1;
    font-size: 40px;
  }
  .tai__ttl02 .comment {
    position: absolute;
    display: block;
    top: -20px;
    left: 0;
    width: 166px;
  }
  .tai__box {
    position: relative;
    margin-top: 100px;
    padding: 80px 0;
    border-radius: 15px;
    border: 10px solid #e7a249;
    background-color: #fcf0de;
  }
  .tai__box::before {
    content: "";
    position: absolute;
    bottom: -220px;
    right: -155px;
    display: block;
    width: 270px;
    height: 349px;
    background: url(../images/tai_woman01.webp) top center/contain no-repeat;
  }
  .tai__box::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -20px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 486px;
    height: 70px;
    background: url(../images/check_triangle01.webp) top center/contain no-repeat;
  }
  .tai__box__head {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    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;
    width: 590px;
    height: 70px;
    border-radius: 35px;
    background-color: #e7a249;
    font-size: 32px;
  }
  .tai__ttl03 {
    font-size: 36px;
  }
  .tai__ttl03 .line {
    font-size: 40px;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #fff));
    background: linear-gradient(to bottom, transparent 60%, #fff 60%);
  }
  .tai__lead {
    margin-top: 60px;
    font-size: 36px;
  }
  .tai__lead .big {
    font-size: 50px;
  }
  .tai__ttl04 {
    margin-top: 100px;
    padding: 35px 0;
    background-color: #428fae;
    font-size: 36px;
    border-radius: 10px;
    letter-spacing: 0.02em;
  }
  .tai__ttl04 .line {
    line-height: 1.1;
    border-bottom: 2px solid #fff;
  }
  .tai__flex02 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    margin-top: 19px;
  }
  .tai__flex02 .tai__txt01 {
    width: 558px;
    padding-top: 40px;
  }
  .tai__flex02__img {
    width: 401px;
  }
  .tai__ttl05 {
    margin-top: 30px;
  }
  .tai__slider {
    position: relative;
    margin-top: 20px;
  }
  .tai__slider::after {
    content: "";
    display: block;
    position: absolute;
    z-index: 10;
    top: -12px;
    left: -18px;
    width: 42px;
    height: 42px;
    background: url(../images/tai_check01.webp) top center/contain no-repeat;
  }
  .tai__slide {
    position: relative;
    min-height: 300px;
    padding: 50px 60px;
    border-radius: 10px;
    border: 1px dashed #428fae;
    background-color: #f0f7f9;
  }
  .tai__slide .tai__txt01 {
    width: 595px;
    margin-top: 20px;
  }
  .tai__slide__ttl {
    font-size: 36px;
    line-height: 1.3;
  }
  .tai__icon01 {
    position: absolute;
    top: 40px;
    right: 60px;
  }
  .tai__icon01--num01 {
    width: 205px;
  }
  .tai__icon01--num02 {
    width: 183px;
  }
  .tai__icon01--num03 {
    width: 218px;
  }
}
/*==============================================================================
toku
============================================================================= */
@media screen and (max-width: 768px) {
  .toku--bg {
    padding: 1rem 0 1.6rem;
    background: url(../images/toku_bg01_sp.webp) top left/50%;
  }
  .toku__ttl01 {
    width: 7.34rem;
  }
  .toku__item {
    margin-top: 0.75rem;
  }
  .toku__head {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 7.5rem;
    height: 2.4rem;
    -webkit-transform: translateX(-0.4rem);
            transform: translateX(-0.4rem);
    padding-left: 1.7rem;
    background-image: -webkit-gradient(linear, left bottom, left top, from(#0081a1), color-stop(1%, #0081a1), to(#0f91b1));
    background-image: linear-gradient(to top, #0081a1 0%, #0081a1 1%, #0f91b1 100%);
  }
  .toku__head .orange {
    color: #fcd043;
  }
  .toku__head.open .toku__btn::after {
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .toku__num {
    position: absolute;
    left: 0.2rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 1.2rem;
  }
  .toku__head__ttl {
    font-size: 0.38rem;
    line-height: 1.3;
  }
  .toku__head__ttl .orange {
    color: #fcd043;
  }
  .toku__btn {
    position: absolute;
    top: 0;
    right: 0rem;
    width: 0.8rem;
    height: 2.4rem;
    padding-top: 0.85rem;
    background-color: #367c9a;
    font-size: 0.3rem;
  }
  .toku__btn::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0.7rem;
    -webkit-transform: translateX(-50%) rotate(180deg);
            transform: translateX(-50%) rotate(180deg);
    display: block;
    width: 0.42rem;
    height: 0.27rem;
    background: url(../images/toku_arrow01.webp) top center/contain no-repeat;
  }
  .toku__btn.open::after {
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .toku__content {
    display: none;
    position: relative;
    padding: 0.65rem 0rem 0;
  }
  .toku__ttl02 {
    position: relative;
    z-index: 1;
    font-size: 0.4rem;
    line-height: 1.4;
  }
  .toku__ttl02--num01::after {
    content: "";
    display: block;
    position: absolute;
    top: -0.1rem;
    right: -0.55rem;
    width: 1.92rem;
    height: 3.44rem;
    background: url(../images/toku_icon01.webp) top center/contain no-repeat;
  }
  .toku__ttl02--num02::after {
    content: "";
    display: block;
    position: absolute;
    top: -0.05rem;
    right: -1.1rem;
    width: 3.72rem;
    height: 2.83rem;
    background: url(../images/toku_icon02.webp) top center/contain no-repeat;
  }
  .toku__ttl02--num03::after {
    content: "";
    display: block;
    position: absolute;
    top: -0.5rem;
    right: -0.3rem;
    width: 2.68rem;
    height: 3.8rem;
    background: url(../images/toku_icon03.webp) top center/contain no-repeat;
  }
  .toku__ttl02--num04::after {
    content: "";
    display: block;
    position: absolute;
    top: -0.3rem;
    right: -0.75rem;
    width: 2.14rem;
    height: 4.1rem;
    background: url(../images/toku_icon04.webp) top center/contain no-repeat;
  }
  .toku__list02 {
    position: relative;
    z-index: 2;
    margin-top: 0.5rem;
    padding: 0.3rem 0.1rem 0.3rem 1rem;
    border-radius: 0.1rem;
    background-color: #5fb1ce;
  }
  .toku__item02 {
    position: relative;
    z-index: 2;
    margin-top: 0.2rem;
    font-size: 0.32rem;
    letter-spacing: 0;
  }
  .toku__item02:nth-child(1) {
    margin-top: 0;
  }
  .toku__item02::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    left: -0.6rem;
    width: 0.44rem;
    height: 0.44rem;
    background: url(../images/toku_check01.webp) top center/contain no-repeat;
  }
  .toku__txt01 {
    margin-top: 0.3rem;
  }
  .toku__img01 {
    margin: 0.55rem auto 0;
  }
  .toku__note {
    margin-top: 0.25rem;
  }
  .toku__box02 {
    margin-top: 0.9rem;
    padding: 0.7rem 0.4rem 0.5rem;
    background-color: #ffffff;
  }
  .toku__box02__ttl {
    font-size: 0.5rem;
    line-height: 1.3;
  }
  .toku__list03 {
    margin-top: -0.1rem;
  }
  .toku__item03 {
    margin-top: 0.5rem;
  }
  .toku__item03__head {
    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;
    width: 6.7rem;
    height: 0.8rem;
    margin-bottom: 0.4rem;
    -webkit-transform: translateX(-0.4rem);
            transform: translateX(-0.4rem);
    font-size: 0.4rem;
    background: url(../images/toku_bg02.webp) top center/cover no-repeat;
  }
  .toku__item03_txt {
    position: relative;
    margin-top: 0.25rem;
    padding-left: 0.65rem;
    font-size: 0.29rem;
    letter-spacing: 0;
  }
  .toku__item03_txt::before {
    content: "";
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 0;
    display: block;
    width: 0.45rem;
    height: 0.6rem;
    background: url(../images/faq_txt01.webp) top center/contain no-repeat;
  }
  .toku__etc {
    text-align: right;
    font-size: 0.5rem;
  }
  .toku__item03__low {
    margin-top: 0.3rem;
    font-size: 0.4rem;
  }
  .toku__content {
    display: none;
  }
}
/*==============================================================================
toku
============================================================================= */
@media screen and (min-width: 769px) {
  .toku--bg {
    padding: 90px 0 120px;
    background: url(../images/toku_bg01.webp) top left;
  }
  .toku__ttl01 {
    width: 1043px;
    margin-left: 40px;
  }
  .toku__list {
    margin-top: -50px;
  }
  .toku__item {
    margin-top: 50px;
  }
  .toku__head {
    cursor: pointer;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 150px;
    padding-left: 190px;
    border-radius: 3px;
    background-color: #428fae;
    background-image: -webkit-gradient(linear, left bottom, left top, from(#387f9e), color-stop(1%, #387f9e), to(#428fae));
    background-image: linear-gradient(to top, #387f9e 0%, #387f9e 1%, #428fae 100%);
  }
  .toku__head:hover {
    opacity: 0.8;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .toku__head.open .toku__btn::after {
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .toku__num {
    position: absolute;
    left: 35px;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 114px;
  }
  .toku__head__ttl {
    font-size: 35px;
    line-height: 1.3;
  }
  .toku__head__ttl .orange {
    color: #fcd043;
  }
  .toku__btn {
    position: absolute;
    top: 0;
    right: 25px;
    width: 80px;
    height: 150px;
    padding-top: 25px;
    background-color: #367c9a;
    font-size: 28px;
  }
  .toku__btn::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 44px;
    -webkit-transform: translateX(-50%) rotate(180deg);
            transform: translateX(-50%) rotate(180deg);
    display: block;
    width: 40px;
    height: 26px;
    background: url(../images/toku_arrow01.webp) top center/contain no-repeat;
  }
  .toku__content {
    display: none;
    position: relative;
    padding: 40px 70px;
  }
  .toku__ttl02 {
    position: relative;
    z-index: 1;
    font-size: 30px;
  }
  .toku__ttl02--num01::after {
    content: "";
    display: block;
    position: absolute;
    top: -50px;
    right: -120px;
    width: 153px;
    height: 275px;
    background: url(../images/toku_icon01.webp) top center/contain no-repeat;
  }
  .toku__ttl02--num02::after {
    content: "";
    display: block;
    position: absolute;
    top: -25px;
    right: -140px;
    width: 282px;
    height: 208px;
    background: url(../images/toku_icon02.webp) top center/contain no-repeat;
  }
  .toku__ttl02--num03::after {
    content: "";
    display: block;
    position: absolute;
    top: -20px;
    right: -140px;
    width: 201px;
    height: 284px;
    background: url(../images/toku_icon03.webp) top center/contain no-repeat;
  }
  .toku__ttl02--num04::after {
    content: "";
    display: block;
    position: absolute;
    top: -30px;
    right: -150px;
    width: 174px;
    height: 333px;
    background: url(../images/toku_icon04.webp) top center/contain no-repeat;
  }
  .toku__list02 {
    position: relative;
    z-index: 2;
    margin-top: 40px;
    padding: 20px;
    padding-left: 140px;
    border-radius: 10px;
    background-color: #5fb1ce;
  }
  .toku__item02 {
    position: relative;
    z-index: 2;
    margin-top: 5px;
    font-size: 26px;
  }
  .toku__item02::after {
    content: "";
    display: block;
    position: absolute;
    top: 2px;
    left: -50px;
    width: 30px;
    height: 30px;
    background: url(../images/toku_check01.webp) top center/contain no-repeat;
  }
  .toku__txt01 {
    margin-top: 25px;
  }
  .toku__img01 {
    width: 565px;
    margin: 30px auto 0;
  }
  .toku__note {
    margin-top: 30px;
    font-size: 18px;
  }
  .toku__box02 {
    margin-top: 100px;
    padding: 50px 0;
    background-color: #ffffff;
  }
  .toku__box02__ttl {
    font-size: 40px;
  }
  .toku__item03 {
    margin-top: 30px;
  }
  .toku__item03__head {
    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;
    height: 80px;
    font-size: 32px;
    background: url(../images/toku_bg02.webp) top center/cover no-repeat;
  }
  .toku__item03_body {
    padding: 20px 70px 0;
  }
  .toku__item03_txt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 23px;
    font-size: 22px;
  }
  .toku__item03_txt::before {
    content: "";
    display: block;
    width: 34px;
    height: 44px;
    margin-right: 10px;
    background: url(../images/faq_txt01.webp) top center/contain no-repeat;
  }
  .toku__etc {
    text-align: right;
    font-size: 40px;
  }
  .toku__item03__low {
    margin-top: 50px;
    font-size: 36px;
  }
  .toku__content {
    display: none;
  }
}
/*==============================================================================
voice
============================================================================= */
@media screen and (max-width: 768px) {
  .voice--bg {
    padding: 0.8rem 0 1rem;
    background-color: #5fb1ce;
  }
  .voice__img01 {
    width: 6.25rem;
    margin: 0 auto;
  }
  .voice__box {
    position: relative;
    margin-top: 0.75rem;
    padding: 0.7rem 0.4rem 1.5rem;
    border-radius: 0.1rem;
    background-color: #ffffff;
  }
  .voice__box__lead {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 6rem;
  }
  .voice__ttl01 {
    position: relative;
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    padding-bottom: 0.2rem;
    border-bottom: 0.05rem dotted #5fb1ce;
    font-size: 0.3rem;
    line-height: 1.4;
  }
  .voice__ttl01::after {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    top: 0.4rem;
    right: -0.2rem;
    width: 2.1rem;
    height: 1.7rem;
    background: url(../images/voice_en01.webp) top center/contain no-repeat;
  }
  .voice__ttl01--num02 {
    border-bottom: 0.05rem dotted #e2c948;
  }
  .voice__ttl01--num02::after {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    top: 0.5rem;
    right: -0.2rem;
    width: 2.23rem;
    height: 1.9rem;
    background: url(../images/voice_en02.webp) top center/contain no-repeat;
  }
  .voice__ttl01 .en {
    display: inline-block;
    width: 0.56rem;
    margin-right: 0.2rem;
  }
  .voice__comment {
    position: relative;
    margin-top: 0.35rem;
    padding: 0.25rem 0.3rem;
    border-radius: 0.15rem;
    background-color: #dcedf2;
    font-size: 0.28rem;
  }
  .voice__comment::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -0.2rem;
    right: 0.5rem;
    width: 0.3rem;
    height: 0.2rem;
    background: url(../images/voice_triangle01.webp) top center/contain no-repeat;
  }
  .voice__comment--num02 {
    background-color: #fbf4cd;
  }
  .voice__comment--num02::after {
    background: url(../images/voice_triangle02.webp) top center/contain no-repeat;
  }
  .voice .swiper-button-prev {
    left: 0.9rem;
  }
  .voice .swiper-button-next {
    right: 0.9rem;
  }
  .voice__slider--num02 .swiper-pagination-bullet-active {
    background-color: #e2c948;
  }
  .voice__slider--num02 .swiper-button-prev {
    background: url(../images/voice_arrow02.webp) top center/cover no-repeat;
  }
  .voice__slider--num02 .swiper-button-next {
    background: url(../images/voice_arrow02.webp) top center/cover no-repeat;
  }
  .voice__slide {
    padding: 0.1rem 0 0.3rem;
  }
}
/*==============================================================================
voice
============================================================================= */
@media screen and (min-width: 769px) {
  .voice--bg {
    padding: 100px 0 100px;
    background-color: #5fb1ce;
  }
  .voice__img01 {
    width: 636px;
    margin: 0 auto;
  }
  .voice__box {
    position: relative;
    margin-top: 75px;
    padding: 70px 70px 120px;
    border-radius: 10px;
    background-color: #ffffff;
  }
  .voice__box__lead {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 426px;
  }
  .voice .swiper-wrapper {
    padding-bottom: 20px;
  }
  .voice__ttl01 {
    position: relative;
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    padding-bottom: 15px;
    border-bottom: 5px dotted #5fb1ce;
    font-size: 31px;
    line-height: 1.2;
  }
  .voice__ttl01::after {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    top: -60px;
    right: -70px;
    width: 197px;
    height: 159px;
    background: url(../images/voice_en01.webp) top center/contain no-repeat;
  }
  .voice__ttl01--num02 {
    border-bottom: 5px dotted #e2c948;
  }
  .voice__ttl01--num02::after {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    top: -60px;
    right: -70px;
    width: 224px;
    height: 197px;
    background: url(../images/voice_en02.webp) top center/contain no-repeat;
  }
  .voice__ttl01 .en {
    display: inline-block;
    width: 48px;
    margin-right: 15px;
  }
  .voice__comment {
    position: relative;
    margin-top: 30px;
    padding: 25px 30px;
    border-radius: 10px;
    background-color: #dcedf2;
    font-size: 20px;
  }
  .voice__comment::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -21px;
    right: 140px;
    width: 26px;
    height: 21px;
    background: url(../images/voice_triangle01.webp) top center/contain no-repeat;
  }
  .voice__comment--num02 {
    background-color: #fbf4cd;
  }
  .voice__comment--num02::after {
    background: url(../images/voice_triangle02.webp) top center/contain no-repeat;
  }
  .voice .swiper-button-prev {
    left: 340px;
  }
  .voice .swiper-button-next {
    right: 340px;
  }
  .voice__slider--num02 .swiper-pagination-bullet-active {
    background-color: #e2c948;
  }
  .voice__slider--num02 .swiper-button-prev {
    background: url(../images/voice_arrow02.webp) top center/cover no-repeat;
  }
  .voice__slider--num02 .swiper-button-next {
    background: url(../images/voice_arrow02.webp) top center/cover no-repeat;
    right: 340px;
  }
  .voice .swiper-button-prev,
  .voice .swiper-button-next {
    bottom: -75px;
  }
  .voice__pagination {
    bottom: -70px;
  }
}
/*==============================================================================
Footer
============================================================================= */
@media screen and (max-width: 768px) {
  .footer--bg {
    background-color: #6a777a;
    margin-bottom: 1.5rem;
  }
  .footer__inner {
    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;
    height: 1rem;
    font-size: 0.26rem;
    color: #fff;
  }
}
@media screen and (min-width: 769px) {
  .footer--bg {
    background-color: #6a777a;
    margin-bottom: 100px;
  }
  .footer__inner {
    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;
    height: 70px;
    font-size: 16px;
    color: #fff;
  }
}
/*==============================================================================
fv
============================================================================= */
@media screen and (max-width: 768px) {
  _::-webkit-full-page-media,
  _:future,
  :root .info__ttl02 {
    font-size: 0.35rem;
  }
  _::-webkit-full-page-media,
  _:future,
  :root .why__box02__low {
    font-size: 0.31rem;
  }
  _::-webkit-full-page-media,
  _:future,
  :root .step__box04__big {
    font-size: 0.36rem;
  }
  _::-webkit-full-page-media,
  _:future,
  :root .dake__middle__txt {
    letter-spacing: 0;
  }
  _::-webkit-full-page-media,
  _:future,
  :root .step__box04__arrow {
    font-size: 0.29rem;
  }
  _::-webkit-full-page-media,
  _:future,
  :root .step__box__check .txt {
    letter-spacing: 0;
  }
  _::-webkit-full-page-media,
  _:future,
  :root .step__box03__txt03.en {
    font-size: 0.37rem;
  }
  _::-webkit-full-page-media,
  _:future,
  :root .step .dot {
    font-size: 0.35rem;
  }
}