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

article, main, details, aside, footer, header, nav, section, div, h1, h2, h3, h4, h5, h6, p, ul, li, ol, dl, dt, dd, address, article, main, details, aside, footer, header, nav, section, div, h1, h2, h3, h4, h5, h6, p, ul, li, ol, dl, dt, dd, address, small {
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

nav ul {
  list-style: none; }

a, span {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

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

input, select {
  vertical-align: middle; }

* {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-overflow-scrolling: touch; }

html {
  scroll-behavior: smooth; }

body {
  background: #f0f0f0;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  color: #000000; }

.container {
  width: 100vw;
  margin: auto;
  overflow: hidden;
  background: #fff; }
  @media screen and (min-width: 765px) {
    .container {
      width: 780px; } }

.wrap {
  width: 89.74359vw;
  margin: auto;
  position: relative; }
  @media screen and (min-width: 765px) {
    .wrap {
      width: 700px; } }

img {
  display: block;
  width: 100%; }

h1, h2, h3, h4, h5, h6, strong {
  font-weight: 400;
  line-height: 1; }

/*---------------------------------------------------------------- */
.header {
  height: 14.10256vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding-left: 5.76923vw; }
  @media screen and (min-width: 765px) {
    .header {
      height: 110px; } }
  @media screen and (min-width: 765px) {
    .header {
      padding-left: 45px; } }
  .header__logo {
    width: 18.46154vw; }
    @media screen and (min-width: 765px) {
      .header__logo {
        width: 144px; } }

/*---------------------------------------------------------------- frame */
.frame {
  width: 89.74359vw;
  margin: auto;
  background: #fff;
  border-radius: 2.5641vw;
  -webkit-box-shadow: 0vw 0vw 1.28205vw rgba(0, 0, 0, 0.2);
  box-shadow: 0vw 0vw 1.28205vw rgba(0, 0, 0, 0.2); }
  @media screen and (min-width: 765px) {
    .frame {
      width: 700px; } }
  @media screen and (min-width: 765px) {
    .frame {
      border-radius: 20px; } }
  @media screen and (min-width: 765px) {
    .frame {
      -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
      box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2); } }

/*---------------------------------------------------------------- */
.btn {
  border-radius: 999px;
  position: relative;
  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;
  line-height: 1;
  text-decoration: none !important;
  font-size: 6.41026vw;
  height: 17.94872vw;
  -webkit-box-shadow: 0vw 0.76923vw 0vw #000;
  box-shadow: 0vw 0.76923vw 0vw #000;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  background: #B2B2B2;
  color: #000 !important;
  font-family: "Noto Serif JP", serif;
  width: 100%; }
  @media screen and (min-width: 765px) {
    .btn {
      font-size: 50px; } }
  @media screen and (min-width: 765px) {
    .btn {
      height: 140px; } }
  @media screen and (min-width: 765px) {
    .btn {
      -webkit-box-shadow: 0px 6px 0px #000;
      box-shadow: 0px 6px 0px #000; } }
  .btn:active {
    -webkit-transition: all 200ms cubic-bezier(0.04, 0.51, 0.155, 0.985);
    -o-transition: all 200ms cubic-bezier(0.04, 0.51, 0.155, 0.985);
    transition: all 200ms cubic-bezier(0.04, 0.51, 0.155, 0.985);
    -webkit-box-shadow: 0vw 0.12821vw 0vw #000;
    box-shadow: 0vw 0.12821vw 0vw #000; }
    @media screen and (min-width: 765px) {
      .btn:active {
        -webkit-box-shadow: 0px 1px 0px #000;
        box-shadow: 0px 1px 0px #000; } }
  .btn:after {
    content: '';
    width: 2.5641vw;
    height: 2.5641vw;
    border-width: 1px;
    border-style: none solid solid none;
    border-color: #000;
    position: absolute;
    top: 50%;
    right: 0;
    margin: -0.89744vw 8.33333vw 0vw 0vw;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg); }
    @media screen and (min-width: 765px) {
      .btn:after {
        width: 20px; } }
    @media screen and (min-width: 765px) {
      .btn:after {
        height: 20px; } }
    @media screen and (min-width: 765px) {
      .btn:after {
        margin: -7px 65px 0px 0px; } }
  .btn.is-no-shadow {
    -webkit-box-shadow: none !important;
    box-shadow: none !important; }
  .btn.is-down:after {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    margin: -1.92308vw 8.33333vw 0vw 0vw; }
    @media screen and (min-width: 765px) {
      .btn.is-down:after {
        margin: -15px 65px 0px 0px; } }
  .btn.is-active {
    background: url(../img/btn-bg.jpg) no-repeat center center/cover;
    color: #fff !important; }
    .btn.is-active:after {
      border-color: #fff; }
  .btn.is-pd {
    -webkit-box-shadow: none;
    box-shadow: none;
    color: #fff !important;
    font-family: "Noto Sans JP", serif;
    font-size: 5.12821vw;
    width: 84.61538vw;
    height: 17.94872vw;
    margin: 5.12821vw auto 0vw auto; }
    @media screen and (min-width: 765px) {
      .btn.is-pd {
        font-size: 40px; } }
    @media screen and (min-width: 765px) {
      .btn.is-pd {
        width: 660px; } }
    @media screen and (min-width: 765px) {
      .btn.is-pd {
        height: 140px; } }
    @media screen and (min-width: 765px) {
      .btn.is-pd {
        margin: 40px auto 0px auto; } }
    .btn.is-pd:after {
      border-color: #fff; }
    .btn.is-pd:active {
      -webkit-box-shadow: 0 0 20px inset rgba(0, 0, 0, 0.5);
      box-shadow: 0 0 20px inset rgba(0, 0, 0, 0.5); }

/*---------------------------------------------------------------- */
.footer {
  background: #000;
  height: 6.41026vw;
  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; }
  @media screen and (min-width: 765px) {
    .footer {
      height: 50px; } }
  .footer__txt {
    color: #fff;
    font-family: "Noto Sans JP", serif;
    font-size: 2.5641vw; }
    @media screen and (min-width: 765px) {
      .footer__txt {
        font-size: 20px; } }

/*---------------------------------------------------------------- */
.upper {
  display: inline-block;
  font-size: 0.5em;
  -webkit-transform: translate3d(0, -0.7em, 0);
  transform: translate3d(0, -0.7em, 0); }

/*---------------------------------------------------------------- */
/*---------------------------------------------------------------- */
/*---------------------------------------------------------------- */
/*---------------------------------------------------------------- */
/*---------------------------------------------------------------- */
/*---------------------------------------------------------------- */
/*---------------------------------------------------------------- */
/*---------------------------------------------------------------- */
.mv {
  position: relative;
  z-index: 10;
  background: url(../img/mv-bg.jpg) no-repeat center center/cover;
  padding: 7.69231vw 0vw 22.5641vw 0vw; }
  @media screen and (min-width: 765px) {
    .mv {
      padding: 60px 0px 176px 0px; } }
  .mv__frame {
    padding: 8.97436vw 0vw 8.97436vw 0vw; }
    @media screen and (min-width: 765px) {
      .mv__frame {
        padding: 70px 0px 70px 0px; } }
  .mv__wrap {
    padding: 0vw 5.12821vw 0vw 5.12821vw; }
    @media screen and (min-width: 765px) {
      .mv__wrap {
        padding: 0px 40px 0px 40px; } }
  .mv__ttl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 6.66667vw;
    margin-bottom: 3.84615vw; }
    @media screen and (min-width: 765px) {
      .mv__ttl {
        font-size: 52px; } }
    @media screen and (min-width: 765px) {
      .mv__ttl {
        margin-bottom: 30px; } }
    .mv__ttl small {
      font-size: 5.38462vw; }
      @media screen and (min-width: 765px) {
        .mv__ttl small {
          font-size: 42px; } }
  .mv .ttl {
    margin-bottom: 4.48718vw; }
    @media screen and (min-width: 765px) {
      .mv .ttl {
        margin-bottom: 35px; } }
  .mv__desc {
    text-align: center;
    font-size: 3.84615vw;
    line-height: 2;
    margin-bottom: 3.84615vw; }
    @media screen and (min-width: 765px) {
      .mv__desc {
        font-size: 30px; } }
    @media screen and (min-width: 765px) {
      .mv__desc {
        margin-bottom: 30px; } }
  .mv__img {
    margin-bottom: 3.84615vw; }
    @media screen and (min-width: 765px) {
      .mv__img {
        margin-bottom: 30px; } }
  .mv .btn {
    margin-bottom: 3.84615vw; }
    @media screen and (min-width: 765px) {
      .mv .btn {
        margin-bottom: 30px; } }
  .mv__info {
    text-align: justify;
    font-family: "Noto Sans JP", serif;
    font-size: 3.33333vw;
    line-height: 1.92307692; }
    @media screen and (min-width: 765px) {
      .mv__info {
        font-size: 26px; } }

/*---------------------------------------------------------------- */
.ttl {
  height: 12.05128vw;
  background: #2B8CB4;
  margin: 0vw -1.79487vw 0vw -1.79487vw;
  position: relative;
  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;
  color: #fff; }
  @media screen and (min-width: 765px) {
    .ttl {
      height: 94px; } }
  @media screen and (min-width: 765px) {
    .ttl {
      margin: 0px -14px 0px -14px; } }
  .ttl.is-question {
    height: 15.38462vw; }
    @media screen and (min-width: 765px) {
      .ttl.is-question {
        height: 120px; } }
  .ttl:before, .ttl:after {
    content: '';
    position: absolute;
    width: 1.79487vw;
    height: 1.79487vw;
    bottom: 0;
    background: #004664;
    margin-bottom: -1.79487vw; }
    @media screen and (min-width: 765px) {
      .ttl:before, .ttl:after {
        width: 14px; } }
    @media screen and (min-width: 765px) {
      .ttl:before, .ttl:after {
        height: 14px; } }
    @media screen and (min-width: 765px) {
      .ttl:before, .ttl:after {
        margin-bottom: -14px; } }
  .ttl:before {
    left: 0;
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%);
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%); }
  .ttl:after {
    right: 0;
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 0% 100%);
    clip-path: polygon(0% 0%, 100% 0%, 0% 100%); }
  .ttl__info {
    font-family: "Noto Sans JP", serif;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 5.12821vw;
    padding-bottom: 0.64103vw; }
    @media screen and (min-width: 765px) {
      .ttl__info {
        font-size: 40px; } }
    @media screen and (min-width: 765px) {
      .ttl__info {
        padding-bottom: 5px; } }
    .ttl__info small {
      font-size: 3.84615vw; }
      @media screen and (min-width: 765px) {
        .ttl__info small {
          font-size: 30px; } }
    .ttl__info strong {
      font-size: 7.69231vw;
      -webkit-transform: translate3d(0, -0.1em, 0);
      transform: translate3d(0, -0.1em, 0); }
      @media screen and (min-width: 765px) {
        .ttl__info strong {
          font-size: 60px; } }
  .ttl__q {
    font-size: 6.41026vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
    @media screen and (min-width: 765px) {
      .ttl__q {
        font-size: 50px; } }
    .ttl__q strong {
      font-size: 9.87179vw; }
      @media screen and (min-width: 765px) {
        .ttl__q strong {
          font-size: 77px; } }

/*---------------------------------------------------------------- */
.questions {
  position: relative;
  z-index: 15; }

/*---------------------------------------------------------------- */
.question {
  margin: -12.17949vw 0vw 0vw 0vw;
  padding: 23.07692vw 0vw 21.15385vw 0vw;
  -webkit-clip-path: polygon(0 0, 50% 12.17949vw, 100% 0%, 100% 100%, 0 100%);
  clip-path: polygon(0 0, 50% 12.17949vw, 100% 0%, 100% 100%, 0 100%);
  background: #DED1B2; }
  @media screen and (min-width: 765px) {
    .question {
      margin: -95px 0px 0px 0px; } }
  @media screen and (min-width: 765px) {
    .question {
      padding: 180px 0px 165px 0px; } }
  @media screen and (min-width: 765px) {
    .question {
      -webkit-clip-path: polygon(0 0, 50% 95px, 100% 0%, 100% 100%, 0 100%);
      clip-path: polygon(0 0, 50% 95px, 100% 0%, 100% 100%, 0 100%); } }
  .question:nth-child(even) {
    background: #FFFAEB; }
  .question__frame {
    padding-bottom: 6.41026vw; }
    @media screen and (min-width: 765px) {
      .question__frame {
        padding-bottom: 50px; } }
  .question .ttl {
    margin-bottom: 5.12821vw; }
    @media screen and (min-width: 765px) {
      .question .ttl {
        margin-bottom: 40px; } }
  .question__txt {
    font-size: 4.61538vw;
    text-align: center;
    line-height: 1.88888889;
    margin-bottom: 5.12821vw; }
    @media screen and (min-width: 765px) {
      .question__txt {
        font-size: 36px; } }
    @media screen and (min-width: 765px) {
      .question__txt {
        margin-bottom: 40px; } }
    .question__txt strong {
      color: #2B8CB4; }
  .question__info {
    font-family: "Noto Sans JP", serif;
    text-align: center;
    font-size: 3.33333vw;
    margin-bottom: 2.5641vw; }
    @media screen and (min-width: 765px) {
      .question__info {
        font-size: 26px; } }
    @media screen and (min-width: 765px) {
      .question__info {
        margin-bottom: 20px; } }

/*---------------------------------------------------------------- */
.radio {
  padding: 0vw 5.12821vw 0vw 5.12821vw; }
  @media screen and (min-width: 765px) {
    .radio {
      padding: 0px 40px 0px 40px; } }
  .radio__item {
    margin-bottom: 3.84615vw; }
    @media screen and (min-width: 765px) {
      .radio__item {
        margin-bottom: 30px; } }
  .radio label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-family: "Noto Sans JP", serif;
    font-size: 3.84615vw;
    height: 24.35897vw;
    background: #F0F0F0;
    border-radius: 2.5641vw;
    padding-left: 15.38462vw;
    position: relative;
    -webkit-transition: all 100ms cubic-bezier(0.04, 0.51, 0.155, 0.985);
    -o-transition: all 100ms cubic-bezier(0.04, 0.51, 0.155, 0.985);
    transition: all 100ms cubic-bezier(0.04, 0.51, 0.155, 0.985);
    -webkit-box-shadow: 0vw 0.76923vw 0vw #000;
    box-shadow: 0vw 0.76923vw 0vw #000; }
    @media screen and (min-width: 765px) {
      .radio label {
        font-size: 30px; } }
    @media screen and (min-width: 765px) {
      .radio label {
        height: 190px; } }
    @media screen and (min-width: 765px) {
      .radio label {
        border-radius: 20px; } }
    @media screen and (min-width: 765px) {
      .radio label {
        padding-left: 120px; } }
    @media screen and (min-width: 765px) {
      .radio label {
        -webkit-box-shadow: 0px 6px 0px #000;
        box-shadow: 0px 6px 0px #000; } }
    .radio label small {
      font-size: 2.5641vw;
      display: inline; }
      @media screen and (min-width: 765px) {
        .radio label small {
          font-size: 20px; } }
    .radio label:before {
      content: '';
      width: 7.30769vw;
      height: 7.30769vw;
      background: url(../img/icon-check.svg?v=1.1) no-repeat center center/contain;
      position: absolute;
      left: 0;
      top: 50%;
      margin: -3.65385vw 0vw 0vw 5.12821vw; }
      @media screen and (min-width: 765px) {
        .radio label:before {
          width: 57px; } }
      @media screen and (min-width: 765px) {
        .radio label:before {
          height: 57px; } }
      @media screen and (min-width: 765px) {
        .radio label:before {
          margin: -28.5px 0px 0px 40px; } }
  .radio input[type="radio"] {
    display: none; }
  .radio input[type="radio"]:checked + label {
    background: #FFC06A;
    -webkit-box-shadow: 0vw 0.12821vw 0vw #000;
    box-shadow: 0vw 0.12821vw 0vw #000; }
    @media screen and (min-width: 765px) {
      .radio input[type="radio"]:checked + label {
        -webkit-box-shadow: 0px 1px 0px #000;
        box-shadow: 0px 1px 0px #000; } }
    .radio input[type="radio"]:checked + label:before {
      background: url(../img/icon-check-on.svg?v=1.1) no-repeat center center/contain; }

/*---------------------------------------------------------------- */
.cv {
  position: relative;
  z-index: 20;
  margin: -12.17949vw 0vw 0vw 0vw;
  padding: 16.66667vw 0vw 6.41026vw 0vw;
  -webkit-clip-path: polygon(0 0, 50% 12.17949vw, 100% 0%, 100% 100%, 0 100%);
  clip-path: polygon(0 0, 50% 12.17949vw, 100% 0%, 100% 100%, 0 100%);
  background: #fff; }
  @media screen and (min-width: 765px) {
    .cv {
      margin: -95px 0px 0px 0px; } }
  @media screen and (min-width: 765px) {
    .cv {
      padding: 130px 0px 50px 0px; } }
  @media screen and (min-width: 765px) {
    .cv {
      -webkit-clip-path: polygon(0 0, 50% 95px, 100% 0%, 100% 100%, 0 100%);
      clip-path: polygon(0 0, 50% 95px, 100% 0%, 100% 100%, 0 100%); } }
  .cv__mes {
    font-family: "Noto Sans JP", serif;
    text-align: center;
    font-size: 3.58974vw;
    margin-bottom: 1.28205vw; }
    @media screen and (min-width: 765px) {
      .cv__mes {
        font-size: 28px; } }
    @media screen and (min-width: 765px) {
      .cv__mes {
        margin-bottom: 10px; } }
  .cv .btn {
    width: 80.12821vw;
    margin: 0vw auto 2.5641vw auto; }
    @media screen and (min-width: 765px) {
      .cv .btn {
        width: 625px; } }
    @media screen and (min-width: 765px) {
      .cv .btn {
        margin: 0px auto 20px auto; } }
  .cv__info {
    font-family: "Noto Sans JP", serif;
    text-align: center;
    margin-bottom: 1.28205vw;
    font-size: 2.82051vw; }
    @media screen and (min-width: 765px) {
      .cv__info {
        margin-bottom: 10px; } }
    @media screen and (min-width: 765px) {
      .cv__info {
        font-size: 22px; } }

.result {
  display: none; }

body[data-q1-value="1"] .result[data-q1-value="1"],
body[data-q1-value="2"] .result[data-q1-value="2"],
body[data-q1-value="3"] .result[data-q1-value="3"],
body[data-q1-value="4"] .result[data-q1-value="4"] {
  display: block; }

.recoomend {
  display: none; }

body[data-q4-value="1"] .recoomend[data-q4-value="1"],
body[data-q4-value="2"] .recoomend[data-q4-value="2"],
body[data-q4-value="3"] .recoomend[data-q4-value="3"],
body[data-q4-value="4"] .recoomend[data-q4-value="4"] {
  display: block; }

/*---------------------------------------------------------------- */
.result {
  position: relative;
  z-index: 10;
  padding: 6.41026vw 0vw 12.17949vw 0vw;
  background: url(../img/result-bg.jpg) no-repeat center center/cover; }
  @media screen and (min-width: 765px) {
    .result {
      padding: 50px 0px 95px 0px; } }
  .result__frame {
    margin: 0vw 5.12821vw 6.41026vw 5.12821vw;
    padding: 5.12821vw 5.12821vw 5.12821vw 5.12821vw;
    position: relative; }
    @media screen and (min-width: 765px) {
      .result__frame {
        margin: 0px 40px 50px 40px; } }
    @media screen and (min-width: 765px) {
      .result__frame {
        padding: 40px 40px 40px 40px; } }
    .result__frame:after {
      content: '';
      width: 23.71795vw;
      height: 6.41026vw;
      position: absolute;
      left: 50%;
      bottom: 0;
      margin: 0vw 0vw -6.28205vw -11.85897vw;
      -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
      clip-path: polygon(0 0, 100% 0, 50% 100%); }
      @media screen and (min-width: 765px) {
        .result__frame:after {
          width: 185px; } }
      @media screen and (min-width: 765px) {
        .result__frame:after {
          height: 50px; } }
      @media screen and (min-width: 765px) {
        .result__frame:after {
          margin: 0px 0px -49px -92.5px; } }
  .result__hash {
    text-align: center;
    color: #292929;
    font-family: "Noto Sans JP", serif;
    font-size: 5.12821vw;
    margin-bottom: 3.84615vw; }
    @media screen and (min-width: 765px) {
      .result__hash {
        font-size: 40px; } }
    @media screen and (min-width: 765px) {
      .result__hash {
        margin-bottom: 30px; } }
  .result__level {
    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;
    font-size: 19.23077vw;
    height: 19.23077vw;
    color: #292929;
    font-weight: 600;
    margin-bottom: 7.69231vw; }
    @media screen and (min-width: 765px) {
      .result__level {
        font-size: 150px; } }
    @media screen and (min-width: 765px) {
      .result__level {
        height: 150px; } }
    @media screen and (min-width: 765px) {
      .result__level {
        margin-bottom: 60px; } }
    .result__level small {
      font-size: 7.69231vw;
      -webkit-transform: translate3d(0, 0.7em, 0);
      transform: translate3d(0, 0.7em, 0); }
      @media screen and (min-width: 765px) {
        .result__level small {
          font-size: 60px; } }
  .result__mes {
    color: #292929;
    text-align: center;
    font-size: 3.33333vw;
    margin-bottom: 3.84615vw;
    line-height: 1; }
    @media screen and (min-width: 765px) {
      .result__mes {
        font-size: 26px; } }
    @media screen and (min-width: 765px) {
      .result__mes {
        margin-bottom: 30px; } }
  .result__next {
    width: 81.28205vw;
    height: 18.84615vw;
    margin: auto;
    background: url(../img/result-next-bg.svg) no-repeat center center/contain;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end; }
    @media screen and (min-width: 765px) {
      .result__next {
        width: 634px; } }
    @media screen and (min-width: 765px) {
      .result__next {
        height: 147px; } }
    .result__next p {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      font-family: "Noto Sans JP", serif;
      color: #292929; }
      .result__next p small {
        font-size: 4.10256vw;
        display: block;
        margin-bottom: 1.92308vw; }
        @media screen and (min-width: 765px) {
          .result__next p small {
            font-size: 32px; } }
        @media screen and (min-width: 765px) {
          .result__next p small {
            margin-bottom: 15px; } }
      .result__next p strong {
        font-size: 8.97436vw; }
        @media screen and (min-width: 765px) {
          .result__next p strong {
            font-size: 70px; } }

[data-q1-value="4"] .result__frame {
  background: #FFA3A3; }
  [data-q1-value="4"] .result__frame:after {
    background: #FFA3A3; }

[data-q1-value="3"] .result__frame {
  background: #FFC9C9; }
  [data-q1-value="3"] .result__frame:after {
    background: #FFC9C9; }

[data-q1-value="2"] .result__frame {
  background: #FFD3AD; }
  [data-q1-value="2"] .result__frame:after {
    background: #FFD3AD; }

[data-q1-value="1"] .result__frame {
  background: #FFEDCC; }
  [data-q1-value="1"] .result__frame:after {
    background: #FFEDCC; }

/*---------------------------------------------------------------- */
.result-ttl {
  text-align: center;
  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;
  font-size: 8.97436vw;
  margin-bottom: 5.12821vw; }
  @media screen and (min-width: 765px) {
    .result-ttl {
      font-size: 70px; } }
  @media screen and (min-width: 765px) {
    .result-ttl {
      margin-bottom: 40px; } }
  .result-ttl small {
    font-size: 6.41026vw;
    display: inline-block;
    -webkit-transform: translate3d(0, 0.2em, 0);
    transform: translate3d(0, 0.2em, 0); }
    @media screen and (min-width: 765px) {
      .result-ttl small {
        font-size: 50px; } }

/*---------------------------------------------------------------- */
.info {
  background: #fff;
  padding: 5.12821vw 5.12821vw 5.12821vw 5.12821vw; }
  @media screen and (min-width: 765px) {
    .info {
      padding: 40px 40px 40px 40px; } }
  .info__img {
    margin-bottom: 7.69231vw; }
    @media screen and (min-width: 765px) {
      .info__img {
        margin-bottom: 60px; } }
  .info__ttl {
    font-weight: 500;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 4.61538vw;
    margin-bottom: 3.84615vw; }
    @media screen and (min-width: 765px) {
      .info__ttl {
        font-size: 36px; } }
    @media screen and (min-width: 765px) {
      .info__ttl {
        margin-bottom: 30px; } }
    .info__ttl strong {
      font-size: 5.12821vw; }
      @media screen and (min-width: 765px) {
        .info__ttl strong {
          font-size: 40px; } }
  .info__desc {
    font-family: "Noto Sans JP", serif;
    text-align: justify;
    line-height: 2;
    font-size: 3.33333vw;
    margin-bottom: 3.84615vw; }
    @media screen and (min-width: 765px) {
      .info__desc {
        font-size: 26px; } }
    @media screen and (min-width: 765px) {
      .info__desc {
        margin-bottom: 30px; } }
  .info__mes {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
    .info__mes strong {
      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: 43.84615vw;
      height: 7.69231vw;
      background: url(../img/info-label-bg.jpg) no-repeat center center/cover;
      font-size: 5.38462vw;
      color: #fff; }
      @media screen and (min-width: 765px) {
        .info__mes strong {
          width: 342px; } }
      @media screen and (min-width: 765px) {
        .info__mes strong {
          height: 60px; } }
      @media screen and (min-width: 765px) {
        .info__mes strong {
          font-size: 42px; } }
    .info__mes small {
      font-size: 3.33333vw;
      font-family: "Noto Sans JP", serif;
      margin-left: 0.5em; }
      @media screen and (min-width: 765px) {
        .info__mes small {
          font-size: 26px; } }

/*---------------------------------------------------------------- */
.pd {
  position: relative;
  z-index: 20;
  margin: -9.61538vw 0vw 0vw 0vw;
  padding: 101.28205vw 0vw 12.82051vw 0vw;
  -webkit-clip-path: polygon(0 0, 50% 9.61538vw, 100% 0%, 100% 100%, 0 100%);
  clip-path: polygon(0 0, 50% 9.61538vw, 100% 0%, 100% 100%, 0 100%); }
  @media screen and (min-width: 765px) {
    .pd {
      margin: -75px 0px 0px 0px; } }
  @media screen and (min-width: 765px) {
    .pd {
      padding: 790px 0px 100px 0px; } }
  @media screen and (min-width: 765px) {
    .pd {
      -webkit-clip-path: polygon(0 0, 50% 75px, 100% 0%, 100% 100%, 0 100%);
      clip-path: polygon(0 0, 50% 75px, 100% 0%, 100% 100%, 0 100%); } }
  .pd__copy {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    margin: 17.5641vw 0vw 0vw 4.87179vw;
    width: 36.28205vw;
    height: 31.53846vw;
    background: url(../img/pd-label.svg) no-repeat center center/contain;
    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;
    text-align: center;
    line-height: 1.38888889;
    font-size: 4.61538vw; }
    @media screen and (min-width: 765px) {
      .pd__copy {
        margin: 137px 0px 0px 38px; } }
    @media screen and (min-width: 765px) {
      .pd__copy {
        width: 283px; } }
    @media screen and (min-width: 765px) {
      .pd__copy {
        height: 246px; } }
    @media screen and (min-width: 765px) {
      .pd__copy {
        font-size: 36px; } }
    .pd__copy.is-m {
      width: 44.10256vw;
      height: 38.33333vw;
      padding-bottom: 0.5em;
      background: url(../img/pd-label-m.svg) no-repeat center center/contain; }
      @media screen and (min-width: 765px) {
        .pd__copy.is-m {
          width: 344px; } }
      @media screen and (min-width: 765px) {
        .pd__copy.is-m {
          height: 299px; } }
    .pd__copy.is-l {
      width: 63.84615vw;
      height: 55.25641vw;
      margin: 0.64103vw 0vw 0vw -4.48718vw;
      padding-bottom: 1em;
      background: url(../img/pd-label-l.svg) no-repeat center center/contain;
      letter-spacing: -0.05em; }
      @media screen and (min-width: 765px) {
        .pd__copy.is-l {
          width: 498px; } }
      @media screen and (min-width: 765px) {
        .pd__copy.is-l {
          height: 431px; } }
      @media screen and (min-width: 765px) {
        .pd__copy.is-l {
          margin: 5px 0px 0px -35px; } }
  .pd__img {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 2;
    pointer-events: none; }
  .pd__name {
    text-align: center;
    line-height: 1.4 !important;
    font-size: 6.41026vw;
    font-weight: 500; }
    @media screen and (min-width: 765px) {
      .pd__name {
        font-size: 50px; } }
    .pd__name small {
      display: block;
      text-align: center;
      font-family: "Noto Sans JP", serif;
      padding-top: 0.5em;
      font-size: 3.33333vw; }
      @media screen and (min-width: 765px) {
        .pd__name small {
          font-size: 26px; } }
  .pd__info {
    width: 80.76923vw;
    margin: 1.92308vw auto 0vw auto;
    line-height: 1.9;
    font-size: 2.5641vw;
    font-family: "Noto Sans JP", serif; }
    @media screen and (min-width: 765px) {
      .pd__info {
        width: 630px; } }
    @media screen and (min-width: 765px) {
      .pd__info {
        margin: 15px auto 0px auto; } }
    @media screen and (min-width: 765px) {
      .pd__info {
        font-size: 20px; } }

/*---------------------------------------------------------------- */
.points {
  position: relative;
  z-index: 20;
  padding: 12.82051vw 0vw 21.79487vw 0vw;
  background: #F8FAFB; }
  @media screen and (min-width: 765px) {
    .points {
      padding: 100px 0px 170px 0px; } }

/*---------------------------------------------------------------- */
.point {
  margin-bottom: 8.97436vw; }
  @media screen and (min-width: 765px) {
    .point {
      margin-bottom: 70px; } }
  .point:last-child {
    margin-bottom: 0; }
  .point__frame {
    position: relative;
    margin: 0vw 5.12821vw 0vw 5.12821vw;
    padding: 5.12821vw 5.12821vw 10.25641vw 5.12821vw;
    border-radius: 0.76923vw; }
    @media screen and (min-width: 765px) {
      .point__frame {
        margin: 0px 40px 0px 40px; } }
    @media screen and (min-width: 765px) {
      .point__frame {
        padding: 40px 40px 80px 40px; } }
    @media screen and (min-width: 765px) {
      .point__frame {
        border-radius: 6px; } }
  .point__label {
    position: absolute;
    top: 0;
    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: 23.33333vw;
    height: 20.25641vw; }
    @media screen and (min-width: 765px) {
      .point__label {
        width: 182px; } }
    @media screen and (min-width: 765px) {
      .point__label {
        height: 158px; } }
    .point__label.is-main {
      left: 0;
      margin: -4.48718vw 0vw 0vw 3.20513vw;
      color: #fff; }
      @media screen and (min-width: 765px) {
        .point__label.is-main {
          margin: -35px 0px 0px 25px; } }
    .point__label.is-sub-r, .point__label.is-sub-l {
      background: url(../img/label-white.svg) no-repeat center center/contain; }
    .point__label.is-sub-r {
      right: 0;
      margin: 11.53846vw 9.35897vw 0vw 0vw; }
      @media screen and (min-width: 765px) {
        .point__label.is-sub-r {
          margin: 90px 73px 0px 0px; } }
    .point__label.is-sub-l {
      left: 0;
      margin: 11.53846vw 0vw 0vw 20.76923vw; }
      @media screen and (min-width: 765px) {
        .point__label.is-sub-l {
          margin: 90px 0px 0px 162px; } }
  .point__label-ttl {
    text-align: center;
    line-height: 1.2 !important;
    font-size: 3.33333vw; }
    @media screen and (min-width: 765px) {
      .point__label-ttl {
        font-size: 26px; } }
    .point__label-ttl strong {
      display: block;
      margin: auto;
      font-size: 8.97436vw; }
      @media screen and (min-width: 765px) {
        .point__label-ttl strong {
          font-size: 70px; } }
  .point__label-info {
    text-align: center;
    line-height: 1.53846154 !important;
    font-size: 3.33333vw; }
    @media screen and (min-width: 765px) {
      .point__label-info {
        font-size: 26px; } }
  .point__copy {
    position: absolute;
    left: 0;
    top: 0;
    line-height: 1.41666667;
    font-size: 3.07692vw;
    margin: 8.33333vw 0vw 0vw 26.15385vw; }
    @media screen and (min-width: 765px) {
      .point__copy {
        font-size: 24px; } }
    @media screen and (min-width: 765px) {
      .point__copy {
        margin: 65px 0px 0px 204px; } }
  .point__img {
    margin-bottom: 5.12821vw; }
    @media screen and (min-width: 765px) {
      .point__img {
        margin-bottom: 40px; } }
  .point__ttl {
    font-size: 5.38462vw;
    line-height: 1.42857143 !important;
    margin-bottom: 2.5641vw; }
    @media screen and (min-width: 765px) {
      .point__ttl {
        font-size: 42px; } }
    @media screen and (min-width: 765px) {
      .point__ttl {
        margin-bottom: 20px; } }
  .point__desc {
    text-align: justify;
    line-height: 1.61538462;
    font-size: 3.33333vw;
    font-family: "Noto Sans JP", serif; }
    @media screen and (min-width: 765px) {
      .point__desc {
        font-size: 26px; } }
  .point__info {
    text-align: justify;
    line-height: 1.5;
    font-family: "Noto Sans JP", serif;
    font-size: 2.5641vw;
    margin: 1.28205vw 0vw 3.84615vw 0vw; }
    @media screen and (min-width: 765px) {
      .point__info {
        font-size: 20px; } }
    @media screen and (min-width: 765px) {
      .point__info {
        margin: 10px 0px 30px 0px; } }
    .point__info.is-outside {
      margin: 1.28205vw 5.12821vw 0vw 5.12821vw; }
      @media screen and (min-width: 765px) {
        .point__info.is-outside {
          margin: 10px 40px 0px 40px; } }
    .point__info.is-space {
      margin-bottom: 8.97436vw; }
      @media screen and (min-width: 765px) {
        .point__info.is-space {
          margin-bottom: 70px; } }

/*---------------------------------------------------------------- NAME */
.recoomend[data-q4-value="1"] .pd {
  background: url(../img/pd-bg-02.jpg) no-repeat center center/cover; }

.recoomend[data-q4-value="1"] .pd__img {
  margin: 28.46154vw 0vw 0vw 19.61538vw;
  width: 74.48718vw; }
  @media screen and (min-width: 765px) {
    .recoomend[data-q4-value="1"] .pd__img {
      margin: 222px 0px 0px 153px; } }
  @media screen and (min-width: 765px) {
    .recoomend[data-q4-value="1"] .pd__img {
      width: 581px; } }

.recoomend[data-q4-value="1"] .pd__btn {
  background: #674820; }

.recoomend[data-q4-value="1"] .point__label.is-main {
  background: url(../img/label-gold.svg) no-repeat center center/contain; }

.recoomend[data-q4-value="2"] .pd {
  background: url(../img/pd-bg-03.jpg) no-repeat center center/cover; }

.recoomend[data-q4-value="2"] .pd__img {
  margin: 27.94872vw 0vw 0vw 18.58974vw;
  width: 79.23077vw; }
  @media screen and (min-width: 765px) {
    .recoomend[data-q4-value="2"] .pd__img {
      margin: 218px 0px 0px 145px; } }
  @media screen and (min-width: 765px) {
    .recoomend[data-q4-value="2"] .pd__img {
      width: 618px; } }

.recoomend[data-q4-value="2"] .pd__btn {
  background: #7E93A1; }

.recoomend[data-q4-value="2"] .point__label.is-main {
  background: url(../img/label-navy.svg) no-repeat center center/contain; }

.recoomend[data-q4-value="3"] .pd {
  background: url(../img/pd-bg-04.jpg) no-repeat center center/cover; }

.recoomend[data-q4-value="3"] .pd__img {
  margin: 29.10256vw 0vw 0vw 20.12821vw;
  width: 71.02564vw; }
  @media screen and (min-width: 765px) {
    .recoomend[data-q4-value="3"] .pd__img {
      margin: 227px 0px 0px 157px; } }
  @media screen and (min-width: 765px) {
    .recoomend[data-q4-value="3"] .pd__img {
      width: 554px; } }

.recoomend[data-q4-value="3"] .pd__btn {
  background: #752713; }

.recoomend[data-q4-value="3"] .point__label.is-main {
  background: url(../img/label-red.svg) no-repeat center center/contain; }

.recoomend[data-q4-value="4"] .pd {
  background: url(../img/pd-bg-01.jpg) no-repeat center center/cover; }

.recoomend[data-q4-value="4"] .pd__img {
  margin: 29.48718vw 0vw 0vw 19.35897vw;
  width: 78.33333vw; }
  @media screen and (min-width: 765px) {
    .recoomend[data-q4-value="4"] .pd__img {
      margin: 230px 0px 0px 151px; } }
  @media screen and (min-width: 765px) {
    .recoomend[data-q4-value="4"] .pd__img {
      width: 611px; } }

.recoomend[data-q4-value="4"] .pd__btn {
  background: #4B8CA5; }

.recoomend[data-q4-value="4"] .point__label.is-main {
  background: url(../img/label-blue.svg) no-repeat center center/contain; }

/*---------------------------------------------------------------- */
.cp {
  position: relative;
  z-index: 30;
  margin: -19.23077vw 0vw 0vw 0vw;
  padding: 33.97436vw 5.12821vw 12.82051vw 5.12821vw;
  background: url(../img/cp-bg.png) no-repeat center top/cover; }
  @media screen and (min-width: 765px) {
    .cp {
      margin: -150px 0px 0px 0px; } }
  @media screen and (min-width: 765px) {
    .cp {
      padding: 265px 40px 100px 40px; } }
  .cp__img {
    width: 83.33333vw;
    margin: 0vw auto 3.84615vw auto; }
    @media screen and (min-width: 765px) {
      .cp__img {
        width: 650px; } }
    @media screen and (min-width: 765px) {
      .cp__img {
        margin: 0px auto 30px auto; } }
  .cp__copy {
    width: 89.74359vw;
    height: 9.61538vw;
    margin-bottom: 3.84615vw;
    border-radius: 999px;
    background: #CC8E01;
    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;
    color: #fff;
    position: relative;
    line-height: 1;
    font-weight: 600;
    font-size: 4.10256vw; }
    @media screen and (min-width: 765px) {
      .cp__copy {
        width: 700px; } }
    @media screen and (min-width: 765px) {
      .cp__copy {
        height: 75px; } }
    @media screen and (min-width: 765px) {
      .cp__copy {
        margin-bottom: 30px; } }
    @media screen and (min-width: 765px) {
      .cp__copy {
        font-size: 32px; } }
    .cp__copy:after {
      content: '';
      width: 3.46154vw;
      height: 1.53846vw;
      background: #CC8E01;
      position: absolute;
      left: 50%;
      bottom: 0;
      margin: 0vw 0vw -1.53846vw -1.73077vw;
      -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
      clip-path: polygon(0 0, 100% 0, 50% 100%); }
      @media screen and (min-width: 765px) {
        .cp__copy:after {
          width: 27px; } }
      @media screen and (min-width: 765px) {
        .cp__copy:after {
          height: 12px; } }
      @media screen and (min-width: 765px) {
        .cp__copy:after {
          margin: 0px 0px -12px -13.5px; } }
  .cp__ttl {
    text-align: center;
    color: #CC8E01;
    font-size: 6.41026vw;
    font-weight: 600;
    line-height: 1.2;
    margin-bottom: 3.84615vw; }
    @media screen and (min-width: 765px) {
      .cp__ttl {
        font-size: 50px; } }
    @media screen and (min-width: 765px) {
      .cp__ttl {
        margin-bottom: 30px; } }
    .cp__ttl strong {
      display: block;
      font-size: 15.38462vw; }
      @media screen and (min-width: 765px) {
        .cp__ttl strong {
          font-size: 120px; } }

/*---------------------------------------------------------------- */
.period {
  padding-bottom: 3.84615vw;
  margin-bottom: 3.84615vw;
  border-bottom: solid 1px #000000; }
  @media screen and (min-width: 765px) {
    .period {
      padding-bottom: 30px; } }
  @media screen and (min-width: 765px) {
    .period {
      margin-bottom: 30px; } }
  .period__ttl {
    font-size: 3.33333vw;
    height: 7.69231vw;
    text-align: center;
    background: #FFF6EA;
    border-radius: 1.28205vw;
    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;
    margin-bottom: 2.5641vw;
    font-family: "Noto Sans JP", serif; }
    @media screen and (min-width: 765px) {
      .period__ttl {
        font-size: 26px; } }
    @media screen and (min-width: 765px) {
      .period__ttl {
        height: 60px; } }
    @media screen and (min-width: 765px) {
      .period__ttl {
        border-radius: 10px; } }
    @media screen and (min-width: 765px) {
      .period__ttl {
        margin-bottom: 20px; } }
  .period__line {
    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;
    font-size: 3.84615vw;
    font-family: "Noto Sans JP", serif;
    margin-bottom: 1.92308vw; }
    @media screen and (min-width: 765px) {
      .period__line {
        font-size: 30px; } }
    @media screen and (min-width: 765px) {
      .period__line {
        margin-bottom: 15px; } }
    .period__line:last-child {
      margin-bottom: 0; }
    .period__line strong {
      font-size: 5.12821vw;
      display: inline-block;
      -webkit-transform: translate3d(0, -0.1em, 0);
      transform: translate3d(0, -0.1em, 0); }
      @media screen and (min-width: 765px) {
        .period__line strong {
          font-size: 40px; } }

/*---------------------------------------------------------------- */
.flow {
  padding-bottom: 3.84615vw;
  margin-bottom: 7.69231vw;
  border-bottom: solid 1px #000000;
  font-family: "Noto Sans JP", serif; }
  @media screen and (min-width: 765px) {
    .flow {
      padding-bottom: 30px; } }
  @media screen and (min-width: 765px) {
    .flow {
      margin-bottom: 60px; } }
  .flow__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 2.5641vw; }
    @media screen and (min-width: 765px) {
      .flow__item {
        margin-bottom: 20px; } }
    .flow__item:last-child {
      margin-bottom: 0; }
  .flow__label {
    width: 14.10256vw;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    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;
    background: #CC8E01;
    color: #fff;
    font-size: 3.33333vw;
    border-radius: 0.76923vw; }
    @media screen and (min-width: 765px) {
      .flow__label {
        width: 110px; } }
    @media screen and (min-width: 765px) {
      .flow__label {
        font-size: 26px; } }
    @media screen and (min-width: 765px) {
      .flow__label {
        border-radius: 6px; } }
  .flow__body {
    width: 100%;
    padding: 0.25em 0 0.25em 0.5em;
    font-size: 3.20513vw;
    line-height: 1.5; }
    @media screen and (min-width: 765px) {
      .flow__body {
        font-size: 25px; } }
    .flow__body small {
      font-size: 2.30769vw; }
      @media screen and (min-width: 765px) {
        .flow__body small {
          font-size: 18px; } }

/*---------------------------------------------------------------- */
.terms {
  font-family: "Noto Sans JP", serif;
  margin-bottom: 5.12821vw; }
  @media screen and (min-width: 765px) {
    .terms {
      margin-bottom: 40px; } }
  .terms__frame {
    background: #fff;
    height: 51.28205vw;
    border: solid 1px #000;
    padding: 5.12821vw 5.12821vw 5.12821vw 5.12821vw;
    overflow: scroll; }
    @media screen and (min-width: 765px) {
      .terms__frame {
        height: 400px; } }
    @media screen and (min-width: 765px) {
      .terms__frame {
        padding: 40px 40px 40px 40px; } }
  .terms__ttl {
    font-size: 3.33333vw;
    font-weight: 600; }
    @media screen and (min-width: 765px) {
      .terms__ttl {
        font-size: 26px; } }
  .terms__body {
    font-size: 3.33333vw;
    white-space: pre-wrap;
    line-height: 2;
    word-break: break-all; }
    @media screen and (min-width: 765px) {
      .terms__body {
        font-size: 26px; } }

/*---------------------------------------------------------------- */
.entry {
  font-family: "Noto Sans JP", serif; }
  .entry__desc {
    text-align: center;
    line-height: 1.5;
    font-size: 3.33333vw;
    margin-bottom: 2.5641vw; }
    @media screen and (min-width: 765px) {
      .entry__desc {
        font-size: 26px; } }
    @media screen and (min-width: 765px) {
      .entry__desc {
        margin-bottom: 20px; } }
  .entry__info {
    font-size: 2.5641vw;
    line-height: 1.5; }
    @media screen and (min-width: 765px) {
      .entry__info {
        font-size: 20px; } }

/*---------------------------------------------------------------- */
.entry-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-radius: 999px;
  background: url(../img/entry-btn-bg.jpg) no-repeat center center/cover;
  width: 89.74359vw;
  height: 24.35897vw;
  margin: 0vw auto 2.5641vw auto;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #fff !important;
  -webkit-box-shadow: 0vw 0.76923vw 0vw #000;
  box-shadow: 0vw 0.76923vw 0vw #000;
  text-decoration: none !important;
  position: relative;
  -webkit-transition: all 200ms cubic-bezier(0.04, 0.51, 0.155, 0.985);
  -o-transition: all 200ms cubic-bezier(0.04, 0.51, 0.155, 0.985);
  transition: all 200ms cubic-bezier(0.04, 0.51, 0.155, 0.985); }
  @media screen and (min-width: 765px) {
    .entry-btn {
      width: 700px; } }
  @media screen and (min-width: 765px) {
    .entry-btn {
      height: 190px; } }
  @media screen and (min-width: 765px) {
    .entry-btn {
      margin: 0px auto 20px auto; } }
  @media screen and (min-width: 765px) {
    .entry-btn {
      -webkit-box-shadow: 0px 6px 0px #000;
      box-shadow: 0px 6px 0px #000; } }
  .entry-btn:after {
    content: '';
    width: 2.5641vw;
    height: 2.5641vw;
    border-width: 1px;
    border-style: none solid solid none;
    border-color: #fff;
    position: absolute;
    top: 50%;
    right: 0;
    margin: -0.89744vw 8.33333vw 0vw 0vw;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg); }
    @media screen and (min-width: 765px) {
      .entry-btn:after {
        width: 20px; } }
    @media screen and (min-width: 765px) {
      .entry-btn:after {
        height: 20px; } }
    @media screen and (min-width: 765px) {
      .entry-btn:after {
        margin: -7px 65px 0px 0px; } }
  .entry-btn:active {
    -webkit-box-shadow: 0vw 0.12821vw 0vw #000;
    box-shadow: 0vw 0.12821vw 0vw #000; }
    @media screen and (min-width: 765px) {
      .entry-btn:active {
        -webkit-box-shadow: 0px 1px 0px #000;
        box-shadow: 0px 1px 0px #000; } }
  .entry-btn__txt1 {
    font-size: 3.33333vw; }
    @media screen and (min-width: 765px) {
      .entry-btn__txt1 {
        font-size: 26px; } }
  .entry-btn__txt2 {
    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;
    font-size: 7.69231vw; }
    @media screen and (min-width: 765px) {
      .entry-btn__txt2 {
        font-size: 60px; } }
    .entry-btn__txt2 small {
      display: inline-block;
      -webkit-transform: translate3d(0, 0.1em, 0);
      transform: translate3d(0, 0.1em, 0);
      font-size: 5.64103vw; }
      @media screen and (min-width: 765px) {
        .entry-btn__txt2 small {
          font-size: 44px; } }

/*---------------------------------------------------------------- */
.banner {
  background: #DED1B2;
  padding: 12.82051vw 5.12821vw 12.82051vw 5.12821vw; }
  @media screen and (min-width: 765px) {
    .banner {
      padding: 100px 40px 100px 40px; } }
  .banner__item {
    display: block;
    margin-bottom: 3.20513vw; }
    @media screen and (min-width: 765px) {
      .banner__item {
        margin-bottom: 25px; } }
    .banner__item:last-child {
      margin-bottom: 0; }
