@charset "UTF-8";
/*  reset
-------------------------------------------------------*/
* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

*,
::before,
::after {
  background-repeat: no-repeat;
  zoom: 1;
}

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

html,
body {
  font-size: 62.5%;
  -webkit-overflow-scrolling: touch;
}

html {
  overflow-y: scroll;
  cursor: default;
}

body {
  line-height: 1em;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 1em;
  font-weight: 700;
  line-height: 1em;
}

ol,
ul,
li {
  list-style: none;
  zoom: normal;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block;
}

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

th {
  font-weight: normal;
}

td,
th {
  padding: 0;
}

blockquote {
  quotes: none;
}

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

a {
  color: inherit;
  background-color: transparent;
  text-decoration: none;
  -webkit-text-decoration-skip: objects;
  cursor: pointer;
}

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

a:focus,
*:focus {
  outline: none;
}

img {
  border-style: none;
  vertical-align: bottom;
}

[type=text],
[type=tel],
[type=email],
[type=date],
[type=number],
[type=submit],
[type=button],
button,
textarea,
select {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input,
select {
  vertical-align: middle;
}

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

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

button,
select {
  text-transform: none;
}

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

/*  html / body
-------------------------------------------------------------------------------*/
html {
  font-size: 62.5%;
}

body {
  width: 100%;
  height: 100%;
  background-color: #FFFFFF;
  color: #505254;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 3.5897435897vw;
  font-weight: 400;
  font-style: normal;
  font-optical-sizing: auto;
  line-height: 1em;
  letter-spacing: 0;
  word-wrap: break-word;
  overflow-wrap: break-word;
  overflow-x: hidden;
}
@media screen and (min-width: 751px) {
  body {
    font-size: 1.25vw;
  }
}
@media screen and (min-width: 1281px) {
  body {
    font-size: 1.6em;
  }
}

body.is-noscroll {
  overflow: hidden;
}

a.on-opa {
  display: inline-block;
}
@media screen and (min-width: 751px) {
  a.on-opa {
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  a.on-opa:hover {
    opacity: 0.8;
  }
}

/* utils
-------------------------------------------------------------------------------*/
.img-fit {
  width: 100%;
  max-width: 100%;
  height: auto;
}

.text p:nth-child(n+2) {
  margin-top: 1.7em;
}

@media screen and (max-width: 750px) {
  .none--sp {
    display: none !important;
  }
  .br--pc {
    display: none;
  }
  .br--sp {
    display: block;
  }
}
@media screen and (min-width: 751px) {
  .none--pc {
    display: none !important;
  }
  .br--pc {
    display: block;
  }
  .br--sp {
    display: none;
  }
}
/*  #header
-------------------------------------------------------------------------------*/
.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 8888;
}
@media screen and (min-width: 751px) {
  .header {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0 10.9375vw;
    height: 6.40625vw;
    background-color: #FFFFFF;
  }
}
@media screen and (min-width: 1281px) {
  .header {
    padding: 0 140px;
    height: 82px;
  }
}

.header__top {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 750px) {
  .header__top {
    padding: 0 17.9487179487vw 0 2.5641025641vw;
    width: 100%;
    height: 12.8205128205vw;
    background-color: #FFFFFF;
    z-index: 2;
  }
}

.header__logo {
  position: relative;
  width: 39.7435897436vw;
}
@media screen and (min-width: 751px) {
  .header__logo {
    width: 19.53125vw;
  }
}
@media screen and (min-width: 1281px) {
  .header__logo {
    width: 250px;
  }
}

.header__logo a {
  display: block;
}

@media screen and (max-width: 750px) {
  .header.is-open {
    top: 0 !important;
  }
  .header.is-open .header__top {
    position: fixed;
  }
}
/*  #contents
-------------------------------------------------------------------------------*/
.main {
  position: relative;
  padding-top: 12.8205128205vw;
}
@media screen and (min-width: 751px) {
  .main {
    padding-top: 6.40625vw;
  }
}
@media screen and (min-width: 1281px) {
  .main {
    padding-top: 82px;
  }
}

.container {
  position: relative;
  margin: 0 auto;
  width: 89.7435897436vw;
}
@media screen and (min-width: 751px) {
  .container {
    width: 90.625vw;
  }
}
@media screen and (min-width: 1281px) {
  .container {
    width: 1160px;
  }
}

/*  #footer
-------------------------------------------------------------------------------*/
.footer {
  position: relative;
  margin-top: 15.3846153846vw;
  padding: 12.8205128205vw 0 7.6923076923vw 0;
  background-color: #edeeee;
}
@media screen and (min-width: 751px) {
  .footer {
    margin-top: 7.8125vw;
    padding: 3.90625vw 0 2.34375vw 0;
  }
}
@media screen and (min-width: 1281px) {
  .footer {
    margin-top: 100px;
    padding: 50px 0 30px 0;
  }
}

.footer__inner {
  margin: 0 auto;
  width: 89.7435897436vw;
}
@media screen and (min-width: 751px) {
  .footer__inner {
    width: 78.125vw;
  }
}
@media screen and (min-width: 1281px) {
  .footer__inner {
    width: 1000px;
  }
}

@media screen and (min-width: 751px) {
  .footer__main {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

@media screen and (min-width: 751px) {
  .footer__info {
    width: 27.34375vw;
  }
}
@media screen and (min-width: 1281px) {
  .footer__info {
    width: 350px;
  }
}

.footer__logo {
  margin: 0 auto;
  width: 46.1538461538vw;
}
@media screen and (min-width: 751px) {
  .footer__logo {
    margin: 0;
    width: 19.53125vw;
  }
}
@media screen and (min-width: 1281px) {
  .footer__logo {
    width: 250px;
  }
}

.footer__logo a {
  position: relative;
  display: block;
}

.footer__add {
  margin-top: 3.8461538462vw;
  color: #8f9192;
  font-size: 3.5897435897vw;
  text-align: center;
  line-height: 1.7em;
}
@media screen and (min-width: 751px) {
  .footer__add {
    margin-top: 0.78125vw;
    font-size: 1.09375vw;
    text-align: left;
  }
}
@media screen and (min-width: 1281px) {
  .footer__add {
    margin-top: 10px;
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 750px) {
  .footer__navi {
    display: none;
  }
}
@media screen and (min-width: 751px) {
  .footer__navi {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    width: 41.40625vw;
  }
}
@media screen and (min-width: 1281px) {
  .footer__navi {
    width: 530px;
  }
}

.footer__navi-label a {
  display: inline-block;
  color: #8f9192;
  font-size: 1.40625vw;
  font-weight: 700;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}
@media screen and (min-width: 1281px) {
  .footer__navi-label a {
    font-size: 1.8rem;
  }
}
.footer__navi-label a:hover {
  color: #F97F68;
}

.footer__menu {
  margin: 1.171875vw 0 0 0.703125vw;
}
@media screen and (min-width: 1281px) {
  .footer__menu {
    margin: 15px 0 0 9px;
  }
}

.footer__menu > li:nth-child(n+2) {
  margin-top: 0.2em;
}

.footer__menu li a {
  display: inline-block;
  padding: 0.2em 0;
  color: #8f9192;
  font-size: 1.09375vw;
  font-weight: 500;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}
@media screen and (min-width: 1281px) {
  .footer__menu li a {
    font-size: 1.4rem;
  }
}
.footer__menu li a:hover {
  color: #F97F68;
}

.footer__copy {
  margin-top: 10.2564102564vw;
  color: #8f9192;
  font-size: 2.5641025641vw;
  text-align: center;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 751px) {
  .footer__copy {
    margin-top: 3.90625vw;
    font-size: 0.9375vw;
  }
}
@media screen and (min-width: 1281px) {
  .footer__copy {
    margin-top: 50px;
    font-size: 1.2rem;
  }
}

/*  drawer
-------------------------------------------------------------------------------*/
@media screen and (max-width: 750px) {
  .drawer {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background-color: #edeeee;
    opacity: 0;
    overflow: hidden;
    visibility: hidden;
    -webkit-transition: opacity 0.2s, visibility 0.2s;
    transition: opacity 0.2s, visibility 0.2s;
    z-index: 1;
  }
}

@media screen and (max-width: 750px) {
  .drawer.is-open {
    height: 100%;
    min-height: 100vh;
    min-height: 100svh;
    opacity: 1;
    visibility: visible;
  }
}

@media screen and (max-width: 750px) {
  .drawer__scroll {
    position: relative;
    padding: 12.8205128205vw 0 15.3846153846vw 0;
    height: 100%;
    overflow-x: scroll;
  }
}

@media screen and (min-width: 751px) {
  .drawer__in {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

/*  gnavi
-------------------------------------------------------------------------------*/
.gnavi {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
@media screen and (min-width: 751px) {
  .gnavi {
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    gap: 3.125vw;
  }
}
@media screen and (min-width: 1281px) {
  .gnavi {
    gap: 40px;
  }
}

@media screen and (max-width: 750px) {
  .gnavi > li {
    width: 100%;
  }
}

.gnavi__menu a {
  position: relative;
}
@media screen and (max-width: 750px) {
  .gnavi__menu a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0 17.9487179487vw 0 7.6923076923vw;
    width: 100%;
    height: 11.7948717949vw;
    background-color: #F59F8F;
    color: #FFFFFF;
    font-size: 4.358974359vw;
    font-weight: 700;
  }
}
@media screen and (min-width: 751px) {
  .gnavi__menu a {
    display: block;
    color: #8f9192;
    font-weight: 500;
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
  }
}
.gnavi__menu a:after {
  content: "";
  position: absolute;
}
@media screen and (max-width: 750px) {
  .gnavi__menu a:after {
    top: 50%;
    right: 7.6923076923vw;
    display: inline-block;
    width: 2.5641025641vw;
    height: 4.1025641026vw;
    background-image: url(../img/common/arrow-wh.svg);
    background-size: contain;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}
@media screen and (min-width: 751px) {
  .gnavi__menu a:after {
    left: 50%;
    bottom: -0.4em;
    width: 0%;
    height: 0.15625vw;
    background-color: #F97F68;
    -webkit-transition: width 0.3s;
    transition: width 0.3s;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
@media screen and (min-width: 1281px) {
  .gnavi__menu a:after {
    height: 2px;
  }
}
@media screen and (min-width: 751px) {
  .gnavi__menu a:hover {
    color: #F97F68;
  }
}
@media screen and (min-width: 751px) {
  .gnavi__menu a:hover:after {
    width: 100%;
  }
}

@media screen and (min-width: 751px) {
  .gnavi__submenu {
    display: none;
  }
}

.gnavi__submenu > li {
  width: 100%;
  border-bottom: 1px solid #FFFFFF;
}

.gnavi__submenu > li:last-child {
  border-bottom: none;
}

.gnavi__submenu > li a {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 7.6923076923vw;
  height: 11.7948717949vw;
  color: #8f9192;
  font-size: 4.358974359vw;
  font-weight: 700;
}
.gnavi__submenu > li a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 7.6923076923vw;
  display: inline-block;
  width: 2.5641025641vw;
  height: 4.1025641026vw;
  background-image: url(../img/common/arrow-gy.svg);
  background-size: contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

/*  heading
-------------------------------------------------------------------------------*/
.heading {
  position: relative;
}

.heading__en {
  font-family: "Montserrat", sans-serif;
  font-size: 9.2307692308vw;
  font-weight: 600;
  text-align: center;
  line-height: 1em;
}
@media screen and (min-width: 751px) {
  .heading__en {
    font-size: 4.6875vw;
  }
}
@media screen and (min-width: 1281px) {
  .heading__en {
    font-size: 6rem;
  }
}

.heading__ja {
  margin-top: 0.5em;
  color: #F97F68;
  font-size: 3.5897435897vw;
  font-weight: 700;
  text-align: center;
  line-height: 1.4em;
}
@media screen and (min-width: 751px) {
  .heading__ja {
    font-size: 1.71875vw;
  }
}
@media screen and (min-width: 1281px) {
  .heading__ja {
    font-size: 2.2rem;
  }
}

/*  toggle
-------------------------------------------------------------------------------*/
.toggle {
  position: absolute;
  top: 0;
  right: 0;
  width: 12.8205128205vw;
  height: 12.8205128205vw;
  z-index: 8888;
  cursor: pointer;
}
@media screen and (min-width: 751px) {
  .toggle {
    display: none;
  }
}

.header.is-open .toggle {
  position: fixed;
}

.toggle span {
  position: absolute;
  left: 50%;
  width: 7.6923076923vw;
  height: 0.7692307692vw;
  background-color: #8F9192;
  border-radius: 0.3846153846vw;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.toggle span:nth-of-type(1) {
  top: 3.5897435897vw;
}

.toggle span:nth-of-type(2) {
  top: 6.1538461538vw;
}

.toggle span:nth-of-type(3) {
  top: 8.7179487179vw;
}

.toggle.is-active span:nth-of-type(1) {
  top: 6.1538461538vw;
  -webkit-transform: translateX(-50%) rotate(45deg);
          transform: translateX(-50%) rotate(45deg);
}

.toggle.is-active span:nth-of-type(2) {
  display: none;
}

.toggle.is-active span:nth-of-type(3) {
  top: 6.1538461538vw;
  -webkit-transform: translateX(-50%) rotate(-45deg);
          transform: translateX(-50%) rotate(-45deg);
}

/*  #fv
-------------------------------------------------------------------------------*/
.fv {
  position: relative;
  background: -webkit-gradient(linear, left top, right bottom, from(#F59F8F), to(#F8696D));
  background: -webkit-linear-gradient(top left, #F59F8F, #F8696D);
  background: linear-gradient(to bottom right, #F59F8F, #F8696D);
}

.fv__in {
  position: relative;
  margin: 0 auto;
  padding-top: 7.6923076923vw;
  width: 89.7435897436vw;
  height: 203.8461538462vw;
}
@media screen and (min-width: 751px) {
  .fv__in {
    padding-top: 6.640625vw;
    width: 90.625vw;
    height: 56.25vw;
  }
}
@media screen and (min-width: 1281px) {
  .fv__in {
    padding-top: 85px;
    width: 1160px;
    height: 720px;
  }
}
.fv__in:before {
  content: "";
  position: absolute;
  left: -5.1282051282vw;
  bottom: 20.5128205128vw;
  display: inline-block;
  width: 100vw;
  height: 118.9743589744vw;
  background-image: url(../img/fv/image_sp.png);
  background-size: contain;
}
@media screen and (min-width: 751px) {
  .fv__in:before {
    left: auto;
    right: -4.6875vw;
    bottom: 0;
    width: 72.96875vw;
    height: 56.09375vw;
    background-image: url(../img/fv/image.png);
  }
}
@media screen and (min-width: 1281px) {
  .fv__in:before {
    right: -60px;
    width: 934px;
    height: 718px;
  }
}

.fv__en {
  color: #FFFFFF;
  font-family: "Montserrat", sans-serif;
  font-size: 4.6153846154vw;
  font-weight: 600;
  line-height: 2.63em;
}
@media screen and (min-width: 751px) {
  .fv__en {
    font-size: 1.71875vw;
  }
}
@media screen and (min-width: 1281px) {
  .fv__en {
    font-size: 2.2rem;
  }
}

.fv__ja {
  color: #FFFFFF;
  font-size: 10.2564102564vw;
  font-weight: 700;
  line-height: 1.5em;
}
@media screen and (min-width: 751px) {
  .fv__ja {
    margin-top: 1.171875vw;
    font-size: 3.90625vw;
  }
}
@media screen and (min-width: 1281px) {
  .fv__ja {
    margin-top: 15px;
    font-size: 5rem;
  }
}
.fv__ja span {
  font-size: 11.5384615385vw;
}
@media screen and (min-width: 751px) {
  .fv__ja span {
    font-size: 4.296875vw;
  }
}
@media screen and (min-width: 1281px) {
  .fv__ja span {
    font-size: 5.5rem;
  }
}

.fv__text {
  margin-top: 3.0769230769vw;
  color: rgba(255, 255, 255, 0.8);
  font-family: "Montserrat", sans-serif;
  font-size: 2.8205128205vw;
  font-weight: 500;
  line-height: 1.36em;
}
@media screen and (min-width: 751px) {
  .fv__text {
    margin-top: 1.171875vw;
    font-size: 1.015625vw;
    line-height: 1.46em;
  }
}
@media screen and (min-width: 1281px) {
  .fv__text {
    margin-top: 15px;
    font-size: 1.3rem;
  }
}

.fv__catch {
  position: absolute;
  left: 50%;
  bottom: 1.5384615385vw;
  width: 100%;
  color: #FDE7E3;
  font-family: "Montserrat", sans-serif;
  font-size: 17.1794871795vw;
  font-weight: 700;
  text-align: center;
  text-transform: uppercase;
  line-height: 1.1em;
  letter-spacing: -0.02em;
  white-space: nowrap;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 751px) {
  .fv__catch {
    bottom: 0;
    font-size: 10.3125vw;
    line-height: 1em;
  }
}
@media screen and (min-width: 1281px) {
  .fv__catch {
    font-size: 13.2rem;
  }
}

/*  #introduction
-------------------------------------------------------------------------------*/
.intro {
  margin-top: 10.2564102564vw;
}
@media screen and (min-width: 751px) {
  .intro {
    margin-top: 6.25vw;
  }
}
@media screen and (min-width: 1281px) {
  .intro {
    margin-top: 80px;
  }
}

.intro__box {
  padding: 12.8205128205vw 5.1282051282vw;
  background-color: rgba(254, 231, 227, 0.4);
  border-radius: 5.1282051282vw;
}
@media screen and (min-width: 751px) {
  .intro__box {
    padding: 5.46875vw 2.34375vw;
    border-radius: 1.5625vw;
  }
}
@media screen and (min-width: 1281px) {
  .intro__box {
    padding: 70px 30px;
    border-radius: 20px;
  }
}

.intro__text {
  margin-top: 7.6923076923vw;
}
@media screen and (min-width: 751px) {
  .intro__text {
    margin-top: 3.90625vw;
  }
}
@media screen and (min-width: 1281px) {
  .intro__text {
    margin-top: 50px;
  }
}
.intro__text p {
  font-size: 3.5897435897vw;
  font-weight: 500;
  line-height: 1.5em;
}
@media screen and (min-width: 751px) {
  .intro__text p {
    font-size: 1.40625vw;
    text-align: center;
  }
}
@media screen and (min-width: 1281px) {
  .intro__text p {
    font-size: 1.8rem;
  }
}

/*  #message
-------------------------------------------------------------------------------*/
.message {
  margin-top: 17.9487179487vw;
}
@media screen and (min-width: 751px) {
  .message {
    margin-top: 7.03125vw;
  }
}
@media screen and (min-width: 1281px) {
  .message {
    margin-top: 90px;
  }
}

.message__inner {
  position: relative;
}
@media screen and (min-width: 751px) {
  .message__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-top: 6.25vw;
    padding-left: 45.3125vw;
  }
}
@media screen and (min-width: 1281px) {
  .message__inner {
    margin-top: 80px;
    padding-left: 580px;
  }
}

.message__subttl {
  position: relative;
  margin-top: 10.2564102564vw;
  font-size: 5.1282051282vw;
  font-weight: 700;
  text-align: center;
  line-height: 1.5em;
}
@media screen and (min-width: 751px) {
  .message__subttl {
    position: absolute;
    top: 0;
    left: 0;
    margin: 0;
    font-size: 2.5vw;
    text-align: left;
  }
}
@media screen and (min-width: 1281px) {
  .message__subttl {
    font-size: 3.2rem;
  }
}

@media screen and (max-width: 750px) {
  .message__text {
    margin-top: 10.2564102564vw;
  }
}
.message__text p {
  line-height: 2em;
}

.message__member {
  margin-top: 10.2564102564vw;
}
@media screen and (min-width: 751px) {
  .message__member {
    position: absolute;
    top: 11.71875vw;
    left: 0;
    margin: 0;
    width: 36.328125vw;
  }
}
@media screen and (min-width: 1281px) {
  .message__member {
    top: 150px;
    width: 465px;
  }
}

.message__member > li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.message__member > li:nth-child(n+2) {
  margin-top: 5.1282051282vw;
}
@media screen and (min-width: 751px) {
  .message__member > li:nth-child(n+2) {
    margin-top: 1.953125vw;
  }
}
@media screen and (min-width: 1281px) {
  .message__member > li:nth-child(n+2) {
    margin-top: 25px;
  }
}

.message__member-image {
  width: 28.2051282051vw;
  border-radius: 5.1282051282vw;
  overflow: hidden;
}
@media screen and (min-width: 751px) {
  .message__member-image {
    width: 12.109375vw;
    border-radius: 1.5625vw;
  }
}
@media screen and (min-width: 1281px) {
  .message__member-image {
    width: 155px;
    border-radius: 20px;
  }
}

.message__member-content {
  width: calc(100% - 33.3333333333vw);
}
@media screen and (min-width: 751px) {
  .message__member-content {
    width: calc(100% - 14.453125vw);
  }
}
@media screen and (min-width: 1281px) {
  .message__member-content {
    width: calc(100% - 185px);
  }
}
.message__member-content p {
  font-weight: 500;
  line-height: 1.875em;
}
@media screen and (max-width: 750px) {
  .message__member-content p {
    font-size: 3.3333333333vw;
  }
}

/*  #values
-------------------------------------------------------------------------------*/
.values {
  margin-top: 15.3846153846vw;
}
@media screen and (min-width: 751px) {
  .values {
    margin-top: 7.8125vw;
  }
}
@media screen and (min-width: 1281px) {
  .values {
    margin-top: 100px;
  }
}

.values__box {
  padding: 12.8205128205vw 5.1282051282vw 5.1282051282vw 5.1282051282vw;
  background: -webkit-gradient(linear, left top, right bottom, from(#F59F8F), to(#F8696D));
  background: -webkit-linear-gradient(top left, #F59F8F, #F8696D);
  background: linear-gradient(to bottom right, #F59F8F, #F8696D);
  border-radius: 5.1282051282vw;
}
@media screen and (min-width: 751px) {
  .values__box {
    padding: 5.46875vw 3.125vw 3.125vw 3.125vw;
    border-radius: 1.5625vw;
  }
}
@media screen and (min-width: 1281px) {
  .values__box {
    padding: 70px 40px 40px 40px;
    border-radius: 20px;
  }
}

.values__en {
  color: #FFFFFF;
}

.values__ja {
  color: rgba(255, 255, 255, 0.6);
}

.values__text {
  margin-top: 7.6923076923vw;
}
@media screen and (min-width: 751px) {
  .values__text {
    margin-top: 3.90625vw;
  }
}
@media screen and (min-width: 1281px) {
  .values__text {
    margin-top: 50px;
  }
}
.values__text p {
  color: #FFFFFF;
  font-weight: 500;
  text-align: center;
  line-height: 1.5em;
}
@media screen and (min-width: 751px) {
  .values__text p {
    line-height: 2em;
  }
}

.values__point {
  margin-top: 7.6923076923vw;
}
@media screen and (min-width: 751px) {
  .values__point {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-top: 3.90625vw;
  }
}
@media screen and (min-width: 1281px) {
  .values__point {
    margin-top: 50px;
  }
}

.values__point > li {
  padding: 7.6923076923vw 5.1282051282vw;
  background-color: #FFFFFF;
  border-radius: 2.5641025641vw;
}
@media screen and (min-width: 751px) {
  .values__point > li {
    padding: 2.34375vw 1.875vw 3.125vw 1.875vw;
    width: 26.5625vw;
    border-radius: 0.78125vw;
  }
}
@media screen and (min-width: 1281px) {
  .values__point > li {
    padding: 30px 24px 40px 24px;
    width: 340px;
    border-radius: 10px;
  }
}

@media screen and (max-width: 750px) {
  .values__point > li:nth-child(n+2) {
    margin-top: 3.5897435897vw;
  }
}

.values__point-text {
  margin-top: 5.1282051282vw;
}
@media screen and (min-width: 751px) {
  .values__point-text {
    margin-top: 1.875vw;
  }
}
@media screen and (min-width: 1281px) {
  .values__point-text {
    margin-top: 24px;
  }
}
.values__point-text p {
  font-size: 3.3333333333vw;
  font-weight: 500;
  line-height: 2em;
}
@media screen and (min-width: 751px) {
  .values__point-text p {
    font-size: 1.171875vw;
  }
}
@media screen and (min-width: 1281px) {
  .values__point-text p {
    font-size: 1.5rem;
  }
}

@media screen and (max-width: 750px) {
  .values__point-head {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.values__point-icon {
  width: 20.5128205128vw;
}
@media screen and (min-width: 751px) {
  .values__point-icon {
    margin: 0 auto 1.875vw auto;
    width: 9.6875vw;
  }
}
@media screen and (min-width: 1281px) {
  .values__point-icon {
    margin: 0 auto 24px auto;
    width: 124px;
  }
}

@media screen and (max-width: 750px) {
  .values__point-heading {
    width: calc(100% - 23.0769230769vw);
  }
}

.values__point-ja {
  font-size: 5.1282051282vw;
  font-weight: 700;
  line-height: 1.4em;
}
@media screen and (min-width: 751px) {
  .values__point-ja {
    font-size: 1.875vw;
    text-align: center;
  }
}
@media screen and (min-width: 1281px) {
  .values__point-ja {
    font-size: 2.4rem;
  }
}

.values__point-en {
  margin-top: 0.4em;
  color: #F8696D;
  font-family: "Montserrat", sans-serif;
  font-size: 2.8205128205vw;
  font-weight: 500;
  line-height: 1.07em;
}
@media screen and (min-width: 751px) {
  .values__point-en {
    font-size: 1.015625vw;
    text-align: center;
  }
}
@media screen and (min-width: 1281px) {
  .values__point-en {
    font-size: 1.3rem;
  }
}

/*  #challenge
-------------------------------------------------------------------------------*/
.challenge {
  position: relative;
  margin-top: 15.3846153846vw;
}
@media screen and (min-width: 751px) {
  .challenge {
    margin-top: 6.25vw;
  }
}
@media screen and (min-width: 1281px) {
  .challenge {
    margin-top: 80px;
  }
}

.challenge-inner {
  padding: 60.2564102564vw 0 62.8205128205vw 0;
}
@media screen and (min-width: 751px) {
  .challenge-inner {
    padding: 12.890625vw 0 10.546875vw 0;
  }
}
@media screen and (min-width: 1281px) {
  .challenge-inner {
    padding: 165px 0 135px 0;
  }
}

.challenge__catch {
  margin-top: 7.6923076923vw;
  font-size: 5.641025641vw;
  font-weight: 700;
  text-align: center;
  line-height: 2em;
}
@media screen and (min-width: 751px) {
  .challenge__catch {
    margin-top: 5.46875vw;
    font-size: 3.125vw;
    line-height: 1.2em;
  }
}
@media screen and (min-width: 1281px) {
  .challenge__catch {
    margin-top: 70px;
    font-size: 4rem;
  }
}

.challenge__text {
  margin-top: 6.4102564103vw;
}
@media screen and (min-width: 751px) {
  .challenge__text {
    margin-top: 3.515625vw;
  }
}
@media screen and (min-width: 1281px) {
  .challenge__text {
    margin-top: 45px;
  }
}
.challenge__text p {
  font-size: 3.5897435897vw;
  font-weight: 500;
  text-align: center;
  line-height: 1.5em;
}
@media screen and (min-width: 751px) {
  .challenge__text p {
    font-size: 1.40625vw;
  }
}
@media screen and (min-width: 1281px) {
  .challenge__text p {
    font-size: 1.8rem;
  }
}

.challenge__image {
  position: absolute;
}

.challenge__image--1 {
  top: 0;
  left: -16.1538461538vw;
  width: 59.4871794872vw;
}
@media screen and (min-width: 751px) {
  .challenge__image--1 {
    top: 0;
    left: 0;
    width: 26.171875vw;
  }
}
@media screen and (min-width: 1281px) {
  .challenge__image--1 {
    width: 335px;
  }
}

.challenge__image--2 {
  top: 23.0769230769vw;
  right: 0;
  width: 38.2051282051vw;
}
@media screen and (min-width: 751px) {
  .challenge__image--2 {
    top: 12.109375vw;
    right: 0;
    width: 20.546875vw;
  }
}
@media screen and (min-width: 1281px) {
  .challenge__image--2 {
    top: 155px;
    width: 263px;
  }
}

.challenge__image--3 {
  left: 0;
  bottom: 25.641025641vw;
  width: 35.641025641vw;
}
@media screen and (min-width: 751px) {
  .challenge__image--3 {
    left: 0;
    bottom: 15.625vw;
    width: 22.8125vw;
  }
}
@media screen and (min-width: 1281px) {
  .challenge__image--3 {
    bottom: 200px;
    width: 292px;
  }
}

.challenge__image--4 {
  right: -12.8205128205vw;
  bottom: 0;
  width: 58.2051282051vw;
}
@media screen and (min-width: 751px) {
  .challenge__image--4 {
    right: -8.59375vw;
    bottom: 0;
    width: 32.96875vw;
  }
}
@media screen and (min-width: 1281px) {
  .challenge__image--4 {
    right: -110px;
    width: 422px;
  }
}

/*  #character
-------------------------------------------------------------------------------*/
.character {
  position: relative;
  margin-top: 15.3846153846vw;
  padding: 17.9487179487vw 0 20.5128205128vw 0;
}
@media screen and (min-width: 751px) {
  .character {
    margin-top: 2.34375vw;
    padding: 7.8125vw 0;
  }
}
@media screen and (min-width: 1281px) {
  .character {
    margin-top: 30px;
    padding: 100px 0;
  }
}
.character:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 253.8461538462vw;
  height: 253.8461538462vw;
  background-color: #FDE7E3;
  border-radius: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: -1;
}
@media screen and (min-width: 751px) {
  .character:before {
    width: 76.5625vw;
    height: 68.359375vw;
  }
}
@media screen and (min-width: 1281px) {
  .character:before {
    width: 980px;
    height: 875px;
  }
}

.character__text {
  margin-top: 7.6923076923vw;
}
@media screen and (min-width: 751px) {
  .character__text {
    margin-top: 3.90625vw;
  }
}
@media screen and (min-width: 1281px) {
  .character__text {
    margin-top: 50px;
  }
}
.character__text p {
  font-weight: 500;
  text-align: center;
  line-height: 2em;
}

.character__target {
  margin-top: 10.2564102564vw;
}
@media screen and (min-width: 751px) {
  .character__target {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    margin-top: 3.90625vw;
  }
}
@media screen and (min-width: 1281px) {
  .character__target {
    margin-top: 50px;
  }
}

.character__target-item {
  width: 100%;
  background-color: #FFFFFF;
  border-color: #F97F68;
  border-style: solid;
  border-width: 0.5128205128vw;
  border-radius: 5.1282051282vw;
  overflow: hidden;
}
@media screen and (min-width: 751px) {
  .character__target-item {
    width: 43.75vw;
    border-width: 0.15625vw;
    border-radius: 1.5625vw;
  }
}
@media screen and (min-width: 1281px) {
  .character__target-item {
    width: 560px;
    border-width: 2px;
    border-radius: 20px;
  }
}
.character__target-item dt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 13.5897435897vw;
}
@media screen and (min-width: 751px) {
  .character__target-item dt {
    height: 5.46875vw;
  }
}
@media screen and (min-width: 1281px) {
  .character__target-item dt {
    height: 70px;
  }
}
.character__target-item dt span {
  position: relative;
  padding-left: 10.2564102564vw;
  color: #FFFFFF;
  font-size: 5.1282051282vw;
  font-weight: 700;
}
@media screen and (min-width: 751px) {
  .character__target-item dt span {
    padding-left: 5.15625vw;
    font-size: 1.875vw;
  }
}
@media screen and (min-width: 1281px) {
  .character__target-item dt span {
    padding-left: 66px;
    font-size: 2.4rem;
  }
}
.character__target-item dt span:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-block;
  width: 7.6923076923vw;
  height: 7.6923076923vw;
  background-size: contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 751px) {
  .character__target-item dt span:before {
    width: 4.21875vw;
    height: 4.21875vw;
  }
}
@media screen and (min-width: 1281px) {
  .character__target-item dt span:before {
    width: 54px;
    height: 54px;
  }
}
.character__target-item dd {
  padding: 5.1282051282vw;
}
@media screen and (min-width: 751px) {
  .character__target-item dd {
    padding: 2.34375vw 3.125vw;
  }
}
@media screen and (min-width: 1281px) {
  .character__target-item dd {
    padding: 30px 40px;
  }
}

@media screen and (max-width: 750px) {
  .character__target .character__target-item:nth-child(n+2) {
    margin-top: 5.1282051282vw;
  }
}

.character__target-point > li {
  position: relative;
  padding-left: 5.641025641vw;
  color: #F97F68;
  font-size: 3.5897435897vw;
  font-weight: 700;
  line-height: 1.5em;
}
@media screen and (min-width: 751px) {
  .character__target-point > li {
    padding-left: 1.71875vw;
    font-size: 1.40625vw;
    line-height: 1.66em;
  }
}
@media screen and (min-width: 1281px) {
  .character__target-point > li {
    padding-left: 22px;
    font-size: 1.8rem;
  }
}
.character__target-point > li:before {
  content: "";
  position: absolute;
  top: 0.55em;
  left: 0;
  width: 2.0512820513vw;
  height: 2.0512820513vw;
  background-color: #F97F68;
  border-radius: 50%;
}
@media screen and (min-width: 751px) {
  .character__target-point > li:before {
    top: 0.55em;
    width: 0.78125vw;
    height: 0.78125vw;
  }
}
@media screen and (min-width: 1281px) {
  .character__target-point > li:before {
    width: 10px;
    height: 10px;
  }
}

.character__target-point > li:nth-child(n+2) {
  margin-top: 3.8461538462vw;
}
@media screen and (min-width: 751px) {
  .character__target-point > li:nth-child(n+2) {
    margin-top: 1.171875vw;
  }
}
@media screen and (min-width: 1281px) {
  .character__target-point > li:nth-child(n+2) {
    margin-top: 15px;
  }
}

.character__target-item--match {
  border-color: #F97F68;
}
.character__target-item--match dt {
  background-color: #F97F68;
}
.character__target-item--match dt span:before {
  background-image: url(../img/character/match.svg);
}
.character__target-item--match .character__target-point > li {
  color: #F97F68;
}
.character__target-item--match .character__target-point > li:before {
  background-color: #F97F68;
}

.character__target-item--mismatch {
  border-color: #5E7AAD;
}
.character__target-item--mismatch dt {
  background-color: #5E7AAD;
}
.character__target-item--mismatch dt span:before {
  background-image: url(../img/character/mismatch.svg);
}
.character__target-item--mismatch .character__target-point > li {
  color: #5E7AAD;
}
.character__target-item--mismatch .character__target-point > li:before {
  background-color: #5E7AAD;
}

.character__notes {
  margin-top: 6.4102564103vw;
}
@media screen and (min-width: 751px) {
  .character__notes {
    margin-top: 2.734375vw;
  }
}
@media screen and (min-width: 1281px) {
  .character__notes {
    margin-top: 35px;
  }
}
.character__notes p {
  font-weight: 500;
  text-align: center;
  line-height: 1.625em;
}
/*  #data
-------------------------------------------------------------------------------*/
.data {
  position: relative;
  margin-top: 12.8205128205vw;
  padding: 12.8205128205vw 0 15.3846153846vw 0;
  background: -webkit-gradient(linear, left top, right bottom, from(#F59F8F), to(#F8696D));
  background: -webkit-linear-gradient(top left, #F59F8F, #F8696D);
  background: linear-gradient(to bottom right, #F59F8F, #F8696D);
}
@media screen and (min-width: 751px) {
  .data {
    margin-top: 9.375vw;
    padding: 5.46875vw 0 7.03125vw 0;
  }
}
@media screen and (min-width: 1281px) {
  .data {
    margin-top: 120px;
    padding: 70px 0 90px 0;
  }
}

.data__en {
  color: #FFFFFF;
}

.data__ja {
  color: rgba(255, 255, 255, 0.6);
}

.data__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-top: 7.6923076923vw;
  gap: 3.0769230769vw 0;
}
@media screen and (min-width: 751px) {
  .data__list {
    margin-top: 3.90625vw;
    gap: 1.953125vw;
  }
}
@media screen and (min-width: 1281px) {
  .data__list {
    margin-top: 50px;
    gap: 25px;
  }
}

.data__list > li {
  width: 100%;
}
@media screen and (min-width: 751px) {
  .data__list > li {
    width: 28.90625vw;
    height: 14.84375vw;
  }
}
@media screen and (min-width: 1281px) {
  .data__list > li {
    width: 370px;
    height: 190px;
  }
}

.data__list-box {
  padding: 5.1282051282vw;
  height: 39.4871794872vw;
  background-color: rgba(255, 255, 255, 0.2);
  border-color: #FFFFFF;
  border-style: solid;
  border-width: 1px;
  border-radius: 5.1282051282vw;
}
@media screen and (min-width: 751px) {
  .data__list-box {
    padding: 1.5625vw 2.34375vw;
    height: 100%;
    border-width: 0.078125vw;
    border-radius: 1.5625vw;
  }
}
@media screen and (min-width: 1281px) {
  .data__list-box {
    padding: 20px 30px;
    border-width: 1px;
    border-radius: 20px;
  }
}

.data__list-label {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 1em 0.1em 1em;
  height: 7.9487179487vw;
  background-color: #F8696D;
  border-radius: 2.5641025641vw;
  color: #FFFFFF;
  font-size: 4.1025641026vw;
  font-weight: 500;
}
@media screen and (min-width: 751px) {
  .data__list-label {
    height: 2.578125vw;
    border-radius: 0.78125vw;
    font-size: 1.40625vw;
  }
}
@media screen and (min-width: 1281px) {
  .data__list-label {
    height: 33px;
    border-radius: 10px;
    font-size: 1.8rem;
  }
}

.data__list-inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 4.358974359vw;
}
@media screen and (min-width: 751px) {
  .data__list-inner {
    margin-top: 1.5625vw;
  }
}
@media screen and (min-width: 1281px) {
  .data__list-inner {
    margin-top: 20px;
  }
}

.data__list-icon {
  width: 15.3846153846vw;
}
@media screen and (min-width: 751px) {
  .data__list-icon {
    width: 6.25vw;
  }
}
@media screen and (min-width: 1281px) {
  .data__list-icon {
    width: 80px;
  }
}

.data__list-content {
  width: 53.8461538462vw;
  text-align: right;
}
@media screen and (min-width: 751px) {
  .data__list-content {
    width: 16.40625vw;
  }
}
@media screen and (min-width: 1281px) {
  .data__list-content {
    width: 210px;
  }
}

.data__list-num {
  display: inline-block;
  color: #FFFFFF;
  font-size: 5.1282051282vw;
  font-weight: 700;
  line-height: 1.46em;
}
@media screen and (min-width: 751px) {
  .data__list-num {
    font-size: 2.34375vw;
  }
}
@media screen and (min-width: 1281px) {
  .data__list-num {
    font-size: 3rem;
  }
}
.data__list-num span {
  display: inline-block;
  margin-right: 0.1em;
  font-family: "Montserrat", sans-serif;
  font-size: 15.3846153846vw;
  font-weight: 600;
  line-height: 1em;
}
@media screen and (min-width: 751px) {
  .data__list-num span {
    font-size: 5.46875vw;
  }
}
@media screen and (min-width: 1281px) {
  .data__list-num span {
    font-size: 7rem;
  }
}

.data__list-ratio {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.data__list-ratio span.num {
  position: relative;
  color: #FFFFFF;
  font-family: "Montserrat", sans-serif;
  font-size: 15.3846153846vw;
  font-weight: 600;
  line-height: 1em;
}
@media screen and (min-width: 751px) {
  .data__list-ratio span.num {
    font-size: 5.46875vw;
  }
}
@media screen and (min-width: 1281px) {
  .data__list-ratio span.num {
    font-size: 7rem;
  }
}
.data__list-ratio span.num:before {
  position: absolute;
  top: -11.5384615385vw;
  left: 50%;
  color: #FFFFFF;
  font-size: 3.3333333333vw;
  font-weight: 600;
  white-space: nowrap;
  letter-spacing: 0.1em;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 751px) {
  .data__list-ratio span.num:before {
    top: -3.515625vw;
    font-size: 1.09375vw;
  }
}
@media screen and (min-width: 1281px) {
  .data__list-ratio span.num:before {
    top: -45px;
    font-size: 1.4rem;
  }
}
.data__list-ratio span.num:nth-of-type(1):before {
  content: "男性";
}
.data__list-ratio span.num:nth-of-type(3):before {
  content: "女性";
}
.data__list-ratio .colon {
  margin: 0 2.8205128205vw;
  width: 2.8205128205vw;
}
@media screen and (min-width: 751px) {
  .data__list-ratio .colon {
    margin: 0 1.015625vw;
    width: 1.015625vw;
  }
}
@media screen and (min-width: 1281px) {
  .data__list-ratio .colon {
    margin: 0 13px;
    width: 13px;
  }
}

.data__list > li:last-child {
  color: #FFFFFF;
}
@media screen and (max-width: 750px) {
  .data__list > li:last-child {
    margin-top: 2.5641025641vw;
    font-size: 3.5897435897vw;
    text-align: center;
    line-height: 1.5em;
  }
}
@media screen and (min-width: 751px) {
  .data__list > li:last-child {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    line-height: 2.75em;
  }
}
/*  #faq
-------------------------------------------------------------------------------*/
.faq {
  padding: 12.8205128205vw 0;
}
@media screen and (min-width: 751px) {
  .faq {
    padding: 7.8125vw 0;
  }
}
@media screen and (min-width: 1281px) {
  .faq {
    padding: 100px 0;
  }
}

@media screen and (min-width: 751px) {
  .faq__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.faq__heading {
  margin-bottom: 7.6923076923vw;
}
@media screen and (min-width: 751px) {
  .faq__heading {
    margin: 0;
    max-width: 14.84375vw;
  }
}
@media screen and (min-width: 1281px) {
  .faq__heading {
    max-width: 190px;
  }
}

@media screen and (min-width: 751px) {
  .faq__content {
    width: 65.625vw;
  }
}
@media screen and (min-width: 1281px) {
  .faq__content {
    width: 840px;
  }
}

.faq__item {
  position: relative;
}
.faq__item:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  width: 100%;
  height: 0.5128205128vw;
  background-image: url(../img/faq/line.svg);
  background-size: auto 0.5128205128vw;
  background-repeat: repeat-x;
}
@media screen and (min-width: 751px) {
  .faq__item:before {
    height: 0.15625vw;
    background-size: auto 0.15625vw;
  }
}
@media screen and (min-width: 1281px) {
  .faq__item:before {
    height: 2px;
    background-size: auto 2px;
  }
}

.faq__item:last-child {
  position: relative;
}
.faq__item:last-child:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  display: inline-block;
  width: 100%;
  height: 0.5128205128vw;
  background-image: url(../img/faq/line.svg);
  background-size: auto 0.5128205128vw;
  background-repeat: repeat-x;
}
@media screen and (min-width: 751px) {
  .faq__item:last-child:after {
    height: 0.15625vw;
    background-size: auto 0.15625vw;
  }
}
@media screen and (min-width: 1281px) {
  .faq__item:last-child:after {
    height: 2px;
    background-size: auto 2px;
  }
}

.faq__item dt {
  position: relative;
  padding: 5.1282051282vw 9.2307692308vw 5.1282051282vw 9.7435897436vw;
  font-size: 4.1025641026vw;
  font-weight: 600;
  line-height: 1.5em;
  overflow: hidden;
  cursor: pointer;
}
@media screen and (min-width: 751px) {
  .faq__item dt {
    padding: 2.34375vw 7.03125vw 2.34375vw 4.296875vw;
    font-size: 1.5625vw;
  }
}
@media screen and (min-width: 1281px) {
  .faq__item dt {
    padding: 30px 90px 30px 55px;
    font-size: 2rem;
  }
}
.faq__item dt:before {
  content: "Q.";
  position: absolute;
  top: 5.1282051282vw;
  left: 0;
  color: #F59F8F;
  font-family: "Montserrat", sans-serif;
  font-size: 6.6666666667vw;
  font-weight: 600;
}
@media screen and (min-width: 751px) {
  .faq__item dt:before {
    top: 2.34375vw;
    font-size: 2.34375vw;
  }
}
@media screen and (min-width: 1281px) {
  .faq__item dt:before {
    top: 30px;
    font-size: 3rem;
  }
}
.faq__item dt:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  display: inline-block;
  width: 4.1025641026vw;
  height: 4.1025641026vw;
  background-image: url(../img/faq/plus.svg);
  background-size: 100%;
  background-position: center;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 751px) {
  .faq__item dt:after {
    right: 1.5625vw;
    width: 1.5625vw;
    height: 1.5625vw;
  }
}
@media screen and (min-width: 1281px) {
  .faq__item dt:after {
    right: 20px;
    width: 20px;
    height: 20px;
  }
}

.faq__item dt.is-open:after {
  background-image: url(../img/faq/minus.svg);
}

.faq__item dd {
  display: none;
  padding: 0 9.2307692308vw 5.1282051282vw 9.7435897436vw;
  line-height: 1.5em;
}
@media screen and (min-width: 751px) {
  .faq__item dd {
    padding: 0 7.03125vw 1.953125vw 4.296875vw;
  }
}
@media screen and (min-width: 1281px) {
  .faq__item dd {
    padding: 0 90px 25px 55px;
  }
}

/*  #lastly
-------------------------------------------------------------------------------*/
.lastly__box {
  padding: 12.8205128205vw 5.1282051282vw;
  background-color: #FEE7E3;
  border-radius: 5.1282051282vw;
}
@media screen and (min-width: 751px) {
  .lastly__box {
    padding: 5.46875vw 2.34375vw;
    border-radius: 1.5625vw;
  }
}
@media screen and (min-width: 1281px) {
  .lastly__box {
    padding: 70px 30px;
    border-radius: 20px;
  }
}

.lastly__text {
  margin-top: 7.6923076923vw;
}
@media screen and (min-width: 751px) {
  .lastly__text {
    margin-top: 3.90625vw;
  }
}
@media screen and (min-width: 1281px) {
  .lastly__text {
    margin-top: 50px;
  }
}
.lastly__text p {
  font-size: 3.5897435897vw;
  font-weight: 500;
  line-height: 1.5em;
}
@media screen and (min-width: 751px) {
  .lastly__text p {
    font-size: 1.40625vw;
    text-align: center;
  }
}
@media screen and (min-width: 1281px) {
  .lastly__text p {
    font-size: 1.8rem;
  }
}/*# sourceMappingURL=style.css.map */