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

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

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

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

a {
  -webkit-text-decoration: normal;
          text-decoration: normal;
  cursor: pointer;
}

blockquote, q {
  quotes: none;
}

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

input, select {
  vertical-align: middle;
}

.txt-orange {
  color: #ea5404;
}

.txt-pink {
  color: #e43b86;
}

.txt-white {
  color: #ffffff;
}

.bold {
  font-weight: 700;
}

.f-130 {
  font-size: 130%;
}

.ttl-box {
  position: relative;
}

.frame {
  position: absolute;
}

.baloon {
  position: relative;
  display: inline-block;
  border: 0.2666666667vw solid #ffffff;
  border-radius: 100px;
  background-color: #f29600;
  font-size: 2.1333333333vw;
  font-weight: 400;
  line-height: 1.5;
}
@media screen and (min-width: 1200px) {
  .baloon {
    border: 1.3333333333px solid #ffffff;
    font-size: 11.52px;
  }
}

.baloon::after {
  content: "";
  position: absolute;
  bottom: 0.4vw;
  left: 50%;
  border-style: solid;
  border-width: 2vw 1.8666666667vw 0 1.8666666667vw;
  border-color: #f29600 transparent transparent;
  translate: -50% 100%;
}
@media screen and (min-width: 1200px) {
  .baloon::after {
    bottom: 2.16px;
    border-width: 10.8px 10.08px 0 10.08px;
  }
}

.baloon::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  border-style: solid;
  border-width: 2vw 1.8666666667vw 0 1.8666666667vw;
  border-color: #ffffff transparent transparent;
  translate: -50% 100%;
}
@media screen and (min-width: 1200px) {
  .baloon::before {
    border-width: 10.8px 10.08px 0 10.08px;
  }
}

.swing {
  -webkit-animation-name: decoSwing;
          animation-name: decoSwing;
  -webkit-animation-duration: 2400ms;
          animation-duration: 2400ms;
  -webkit-animation-timing-function: steps(2, end);
          animation-timing-function: steps(2, end);
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
}

@-webkit-keyframes decoSwing {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(25deg);
            transform: rotate(25deg);
  }
}

@keyframes decoSwing {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(25deg);
            transform: rotate(25deg);
  }
}
/* 横のふわふわ指定 */
.fuwafuwa {
  -webkit-animation: fuwafuwa 2s infinite ease-in-out;
          animation: fuwafuwa 2s infinite ease-in-out;
}

/* 横のふわふわの動き */
@-webkit-keyframes fuwafuwa {
  0%, 100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  50% {
    -webkit-transform: translateX(1.0666666667vw);
            transform: translateX(1.0666666667vw);
  }
}
@keyframes fuwafuwa {
  0%, 100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  50% {
    -webkit-transform: translateX(1.0666666667vw);
            transform: translateX(1.0666666667vw);
  }
}
@media screen and (min-width: 769px) {
  @-webkit-keyframes fuwafuwa {
    0%, 100% {
      -webkit-transform: translateX(0);
              transform: translateX(0);
    }
    50% {
      -webkit-transform: translateX(5.76px);
              transform: translateX(5.76px);
    }
  }
  @keyframes fuwafuwa {
    0%, 100% {
      -webkit-transform: translateX(0);
              transform: translateX(0);
    }
    50% {
      -webkit-transform: translateX(5.76px);
              transform: translateX(5.76px);
    }
  }
}
section {
  padding: 13.3333333333vw 0;
  text-align: center;
  text-align: center;
}
@media screen and (min-width: 1200px) {
  section {
    padding: 72px 0;
  }
}

.sttl {
  font-size: 4vw;
  font-weight: 500;
  letter-spacing: 0.08em;
  margin-bottom: 3.2vw;
  line-height: 1em;
}
@media screen and (min-width: 1200px) {
  .sttl {
    font-size: 21.6px;
    margin-bottom: 17.28px;
  }
}

.ttl {
  font-size: 6.6666666667vw;
  font-weight: 700;
  letter-spacing: 0.008em;
  margin-bottom: 6.4vw;
  line-height: 1em;
}
@media screen and (min-width: 1200px) {
  .ttl {
    font-size: 21.6px;
    margin-bottom: 17.28px;
  }
}

sup {
  font-size: 60%;
  vertical-align: top;
  position: relative;
  top: 0.9em;
  color: #333333;
}

.notes {
  font-size: 2.6666666667vw;
  color: #585857;
  text-indent: -1em;
  padding-left: 1em;
  text-align: left;
  line-height: 1.5em;
  margin-bottom: 2.1333333333vw;
  width: 89.3333333333vw;
  margin: 0 auto;
}
@media screen and (min-width: 1200px) {
  .notes {
    font-size: 14.4px;
    margin-bottom: 11.52px;
    width: 482.4px;
  }
}

.stroke {
  font-weight: 800;
  color: transparent;
  text-stroke: 1px #e43b86;
  -webkit-text-stroke: 1px #e43b86;
}

@media screen and (max-width: 767px) {
  .stroke {
    text-stroke: 0.2666666667vw #e43b86;
    -webkit-text-stroke: 0.2666666667vw #e43b86;
  }
}
.cta-area {
  padding: 6.4vw 0;
}
@media screen and (min-width: 1200px) {
  .cta-area {
    padding: 34.56px 0;
  }
}
.cta-area .cta-link {
  width: 87.0666666667vw;
  height: 17.0666666667vw;
  background-color: #6ad138;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  justify-items: center;
  border-radius: 2.6666666667vw;
  margin: 0 auto;
  font-weight: 700;
  -webkit-box-shadow: 0px 1.0666666667vw 0px 0px rgb(54, 148, 7);
          box-shadow: 0px 1.0666666667vw 0px 0px rgb(54, 148, 7);
}
@media screen and (min-width: 1200px) {
  .cta-area .cta-link {
    width: 470.16px;
    height: 92.16px;
    border-radius: 14.4px;
    -webkit-box-shadow: 0px 5.76px 0px 0px rgb(54, 148, 7);
            box-shadow: 0px 5.76px 0px 0px rgb(54, 148, 7);
  }
}
.cta-area .cta-txt {
  letter-spacing: 0em;
  font-size: 5.3333333333vw;
  color: #ffffff;
}
@media screen and (min-width: 1200px) {
  .cta-area .cta-txt {
    font-size: 28.8px;
  }
}
.cta-area .cta-icon {
  width: 5.3333333333vw;
  height: auto;
  margin-right: 2.1333333333vw;
}
@media screen and (min-width: 1200px) {
  .cta-area .cta-icon {
    width: 28.8px;
    margin-right: 11.52px;
  }
}
.cta-area .cta-arrow {
  width: 4.8vw;
  margin-left: 1.6vw;
}
@media screen and (min-width: 1200px) {
  .cta-area .cta-arrow {
    width: 25.92px;
    margin-left: 8.64px;
  }
}
.cta-area .cta-circle {
  font-size: 3.2vw;
  background-color: #ffff24;
  width: 12.8vw;
  height: 12.8vw;
  border-radius: 100px;
  padding: 2.4vw 1.6vw 1.8666666667vw 1.6vw;
  text-align: center;
  line-height: 1.2em;
  margin-right: 2.4vw;
  margin-left: 4vw;
  font-size: 3.2vw;
}
@media screen and (min-width: 1200px) {
  .cta-area .cta-circle {
    font-size: 17.28px;
    width: 69.12px;
    height: 69.12px;
    padding: 12.96px 8.64px 10.08px 8.64px;
    margin-right: 12.96px;
    margin-left: 21.6px;
  }
}
.cta-area .font-os {
  font-size: 5.0666666667vw;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 1200px) {
  .cta-area .font-os {
    font-size: 27.36px;
  }
}

/* fade in
-------------------------------------------------- */
.feed-in {
  opacity: 0;
  -webkit-transform: translateY(50px);
          transform: translateY(50px);
}

.feed-in.on {
  -webkit-animation: ef-fadeup 1s cubic-bezier(0.1, 0.75, 0.1, 1) forwards;
          animation: ef-fadeup 1s cubic-bezier(0.1, 0.75, 0.1, 1) forwards;
}

@-webkit-keyframes ef-fadeup {
  0% {
    opacity: 0;
    -webkit-transform: translateY(40px);
            transform: translateY(40px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0%);
            transform: translateY(0%);
  }
}

@keyframes ef-fadeup {
  0% {
    opacity: 0;
    -webkit-transform: translateY(40px);
            transform: translateY(40px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0%);
            transform: translateY(0%);
  }
}
/* スクロールダウンの位置 */
.scroll {
  position: absolute;
  right: -32px;
  top: 79%;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  font-size: 14px;
  font-weight: 500;
  color: #e43b86;
}
@media screen and (max-width: 1199px) {
  .scroll {
    display: none;
  }
}

/* 線のアニメーション部分 */
.scroll::before {
  -webkit-animation: scroll 2s infinite;
          animation: scroll 2s infinite;
  background-color: #e43b86;
  bottom: -97px;
  content: "";
  height: 80px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  width: 1px;
}

/* 線のアニメーション */
@-webkit-keyframes scroll {
  0% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  50% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  51% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
  100% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
}
@keyframes scroll {
  0% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  50% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  51% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
  100% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
}
.sup {
  font-size: 0.5em;
  vertical-align: top;
  position: relative;
  top: -2.88px;
}
@media screen and (max-width: 1199px) {
  .sup {
    top: -0.5333333333vw;
  }
}

/* =========================================================
Web fonts
========================================================= */
.font-os {
  font-family: "Oswald", sans-serif;
}

.font-round {
  font-family: "M PLUS Rounded 1c", sans-serif;
}

.font-pop {
  font-family: "Poppins", serif;
}

/* =========================================================
base
========================================================= */
html, body {
  width: 100%;
  min-width: 1300px;
  height: auto;
}
@media screen and (max-width: 1199px) {
  html, body {
    min-width: 100%;
  }
}

body {
  letter-spacing: 0;
  background: #fff;
  font-family: "Noto Sans JP", sans-serif, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  color: #333333;
  font-weight: 400;
  font-size: 20.16px;
  line-height: 1.3em;
  color: #333333;
}
@media screen and (max-width: 1199px) {
  body {
    font-size: 3.7333333333vw;
    line-height: 1.7;
    padding-bottom: 16vw;
  }
}

img {
  max-width: 100%;
  height: auto;
  font-size: 0;
  vertical-align: middle;
}

p {
  line-height: 1em;
}

a {
  color: #333;
  display: block;
  text-decoration: none;
}

figure {
  line-height: 0;
}

@media screen and (min-width: 768px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
  }
}
.pc-in {
  display: inline;
}
@media screen and (max-width: 1199px) {
  .pc-in {
    display: none;
  }
}

.sp-in {
  display: none;
}
@media screen and (max-width: 1199px) {
  .sp-in {
    display: inline;
  }
}

/* clearfix
--------------------------------------------------------- */
.clearfix {
  *zoom: 1;
}
.clearfix:after {
  content: "";
  display: table;
  clear: both;
}

/* border-box
--------------------------------------------------------- */
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.main {
  background-size: cover;
  height: 100vh;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}
@media screen and (max-width: 1199px) {
  .main {
    height: auto;
  }
}

.main-bg {
  background-size: cover;
  height: 100vh;
  width: 100vw;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: fixed;
  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;
}
@media screen and (max-width: 1199px) {
  .main-bg {
    display: none;
  }
}

.floating-pc {
  position: fixed;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 1199px) {
  .floating-pc {
    display: none;
  }
}

.pc_center {
  background-color: #ffffff;
}
@media screen and (min-width: 1200px) {
  .pc_center {
    width: 540px;
    height: 100vh;
    margin: 0 auto;
    padding-top: 80px;
    -ms-overflow-style: none;
    scrollbar-width: none;
    -ms-overflow-style: none;
    position: relative;
  }
}

.sp-wrap {
  background-color: #ffffff;
  position: relative;
  -webkit-box-shadow: 0px 0px 8px 0px rgba(72, 72, 72, 0.2);
  box-shadow: 0px 0px 8px 0px rgba(72, 72, 72, 0.2);
}

.pc_center::-webkit-scrollbar {
  display: none;
}

.pc_right {
  position: absolute;
  right: 0;
  left: 0;
  margin: 0 auto;
  top: 40%;
  width: 50%;
}
@media screen and (max-width: 1199px) {
  .pc_right {
    display: none;
  }
}

.floating-bnr {
  width: 160px;
  margin-left: auto;
}

.pc_right .pc-cta-area {
  position: relative;
}

.pc_right .pc-cta-area .pc-cta-woman {
  position: absolute;
  top: -5.5729166667vw;
  z-index: 9;
  left: 1.40625vw;
  width: 15.0520833333vw;
}

.pc_right .pc-cta-area .cta-area {
  margin-bottom: 9%;
  position: relative;
  z-index: 10;
}

.pc_right .pc-cta-phone {
  width: 40%;
  text-align: center;
  margin: 0 auto;
}

.pc_left {
  width: 50vw;
  position: absolute;
  top: 50%;
  left: 0;
}
@media screen and (max-width: 1199px) {
  .pc_left {
    display: none;
  }
}

.pc_left-inner {
  position: relative;
}

.pc_left-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 500px;
  position: absolute;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
}

.pc-left-logo {
  width: 210px;
  font-size: 0;
}

.pc-left-nav-wrap {
  background: url(../img/pc_nav_line.png) top left/19px auto no-repeat;
  padding-left: 40px;
}

.pc-nav-list {
  margin-top: -10px;
}

.pc-nav-list .pc-nav-list-item a {
  font-size: 14px;
  color: #b5b5b5;
  line-height: 2;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.pc-nav-list .pc-nav-list-item a:hover, .pc-nav-list .pc-nav-list-item a:active {
  color: #333;
  font-weight: 600;
}

.pc-nav-list .pc-nav-list-item a.is-active {
  color: #333;
  font-weight: 600;
}

.pc-nav-list-item-in {
  padding-left: 15px;
}

.header {
  position: relative;
  border-bottom: solid 1px #bfbfbf;
}
.header .header-culm {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 4.6666666667vw;
  padding-top: 3.0666666667vw;
  padding-bottom: 3.3333333333vw;
}
@media screen and (min-width: 1200px) {
  .header .header-culm {
    padding-left: 25.2px;
    padding-top: 16.56px;
    padding-bottom: 18px;
    height: 70px;
  }
}
.header .header-culm .header-img {
  width: 30.2666666667vw;
  height: auto;
}
@media screen and (min-width: 1200px) {
  .header .header-culm .header-img {
    width: 163.44px;
  }
}
.header .header-culm .header-txt {
  font-size: 2.4vw;
  padding-left: 4.5333333333vw;
  text-align: left;
}
@media screen and (min-width: 1200px) {
  .header .header-culm .header-txt {
    font-size: 18px;
    padding-left: 34px;
  }
}
.header .header-culm .header-txt p {
  line-height: 1.5em;
}
.header .header-orange {
  height: 1.3333333333vw;
  width: 100vw;
  background-color: #ec5506;
}
@media screen and (min-width: 1200px) {
  .header .header-orange {
    height: 10px;
    width: 100%;
  }
}

.pc-in header {
  -webkit-box-shadow: 0px -1px 15px -5px #c7c7c7;
          box-shadow: 0px -1px 15px -5px #c7c7c7;
  position: fixed;
  top: 0;
  z-index: 2;
  width: 100%;
  background-color: #ffffff;
}
.pc-in .header .header-orange {
  width: 100%;
}
.pc-in .header .header-culm {
  width: 95.3125vw;
  margin: 0 auto;
  padding-left: 0;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.pc-in .header .header-culm .header-txt {
  font-size: 18px;
}

.mv {
  width: 100%;
  height: 110.6666666667vw;
  padding-top: 5.3333333333vw;
  background: url(../img/mv.png) top center/100% auto no-repeat;
}
@media screen and (min-width: 1200px) {
  .mv {
    background: url(../img/mv.png) top center/540px auto no-repeat;
    position: relative;
    height: 597.6px;
    padding-top: 28.8px;
  }
}
.mv .mv-ttl {
  font-weight: 600;
  font-size: 34.56px;
  letter-spacing: 0.03em;
  line-height: 1.3em;
  margin-bottom: 57.6px;
}
@media screen and (max-width: 1199px) {
  .mv .mv-ttl {
    margin-bottom: 10.6666666667vw;
    font-size: 6.4vw;
  }
}
.mv .mv-ttl .mv-big-txt {
  font-size: 130%;
}
.mv .mv-clum {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 auto;
  width: 511.2px;
}
@media screen and (max-width: 1199px) {
  .mv .mv-clum {
    width: 99.666667vw;
  }
}
.mv .mv-clum .mv-clum-item {
  width: 241.2px;
  margin: 0 auto;
}
@media screen and (max-width: 1199px) {
  .mv .mv-clum .mv-clum-item {
    width: 44.6666666667vw;
  }
}

.mv h1 {
  font-size: 0;
}

.mv-bottom {
  background-color: #585857;
  padding: 8.64px 0;
  font-size: 18.72px;
  text-align: center;
  margin-bottom: 34.56px;
}
@media screen and (max-width: 1199px) {
  .mv-bottom {
    margin-bottom: 6.4vw;
    padding: 1.6vw 0;
    font-size: 3.4666666667vw;
  }
}

.form {
  background: url(../img/form_bg.png) top center/100vw auto no-repeat;
  text-align: center;
  padding: 0 5.3333333333vw;
  padding-top: 17.3333333333vw;
  padding-bottom: 8.5333333333vw;
  margin-top: 8.5333333333vw;
}
@media screen and (min-width: 1200px) {
  .form {
    background: url(../img/form_bg.png) top center/540px auto no-repeat;
    padding: 0 28.8px;
    padding-top: 93.6px;
    padding-bottom: 46.08px;
    margin-top: 46.08px;
  }
}
.form .form-sttl {
  color: #585857;
  font-size: 4vw;
}
@media screen and (min-width: 1200px) {
  .form .form-sttl {
    font-size: 21.6px;
  }
}
.form .form-ttl {
  margin-top: 2.1333333333vw;
  color: #e43b86;
  font-size: 6.4vw;
  font-weight: 600;
}
@media screen and (min-width: 1200px) {
  .form .form-ttl {
    margin-top: 11.52px;
    font-size: 34.56px;
  }
}
.form .form-ttl .font-os {
  font-size: 8.5333333333vw;
}
@media screen and (min-width: 1200px) {
  .form .form-ttl .font-os {
    font-size: 46.08px;
  }
}
.form legend {
  padding: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 4vw;
  margin-left: 2.8vw;
  margin-right: auto;
  -webkit-box-pack: left;
      -ms-flex-pack: left;
          justify-content: left;
  text-align: left;
  position: relative;
  width: 100%;
  padding-top: 4.5333333333vw;
  padding-bottom: 1.0666666667vw;
}
@media screen and (min-width: 1200px) {
  .form legend {
    font-size: 21.6px;
    padding-top: 24.48px;
    padding-bottom: 5.76px;
    margin-left: 15.12px;
  }
}
.form legend .form-day-big-txt {
  font-size: 5.2vw;
  margin-left: 1.8666666667vw;
  font-weight: 500;
}
@media screen and (min-width: 1200px) {
  .form legend .form-day-big-txt {
    font-size: 28.08px;
    margin-left: 10.08px;
  }
}
.form legend .form-day-txt {
  position: absolute;
  top: 25.92px;
  left: 24.48px;
}
@media screen and (max-width: 1199px) {
  .form legend .form-day-txt {
    top: 4.8vw;
    left: 4.5333333333vw;
  }
}
.form .form-day-icon {
  width: 5.3333333333vw;
  height: auto;
}
@media screen and (min-width: 1200px) {
  .form .form-day-icon {
    width: 28.8px;
  }
}
.form .dob {
  display: inline-block;
  margin: 0.6666666667vw;
}
@media screen and (min-width: 1200px) {
  .form .dob {
    margin: 3.6px;
  }
}
.form .dob select {
  padding: 1.3333333333vw;
}
@media screen and (min-width: 1200px) {
  .form .dob select {
    padding: 7.2px;
  }
}
.form #gender {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 84.6666666667vw;
  margin: 0 auto;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (min-width: 1200px) {
  .form #gender {
    width: 457.2px;
  }
}
.form .gender {
  -webkit-box-pack: left;
      -ms-flex-pack: left;
          justify-content: left;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 1.8666666667vw;
  width: 40.2666666667vw;
  height: 10.4vw;
  border: solid 0.1333333333vw #999;
  border-radius: 0.6666666667vw;
  text-align: center;
  font-size: 4vw;
}
@media screen and (min-width: 1200px) {
  .form .gender {
    padding-left: 10.08px;
    width: 217.44px;
    height: 56.16px;
    border: solid 0.72px #999;
    border-radius: 3.6px;
    font-size: 21.6px;
  }
}
.form #start-plan {
  position: relative;
  margin: 2.6666666667vw;
  padding: 3.2vw 0 3.2vw 3.2vw;
  width: 66.6666666667vw;
  color: #fff;
  background-color: #6ad138;
  border-radius: 2.6666666667vw;
  text-align: center;
  font-size: 4.8vw;
  border: inherit;
  -webkit-box-shadow: 0px 1.3333333333vw 0px 0px rgb(54, 148, 7);
          box-shadow: 0px 1.3333333333vw 0px 0px rgb(54, 148, 7);
  font-weight: 600;
}
@media screen and (min-width: 1200px) {
  .form #start-plan {
    margin: 14.4px;
    padding: 17.28px 0 17.28px 17.28px;
    width: 360px;
    border-radius: 14.4px;
    font-size: 25.92px;
    -webkit-box-shadow: 0px 7.2px 0px 0px rgb(54, 148, 7);
            box-shadow: 0px 7.2px 0px 0px rgb(54, 148, 7);
  }
}
.form .estimate-icon {
  position: absolute;
  width: 4.4vw;
  height: auto;
  left: 10.6666666667vw;
  top: 4.1333333333vw;
}
@media screen and (min-width: 1200px) {
  .form .estimate-icon {
    width: 23.76px;
    left: 57.6px;
    top: 22.32px;
  }
}
.form .estimate-arrow {
  position: absolute;
  width: 4.8vw;
  height: auto;
  right: 3.0666666667vw;
  top: 4.1333333333vw;
}
@media screen and (min-width: 1200px) {
  .form .estimate-arrow {
    width: 25.92px;
    right: 16.56px;
    top: 22.32px;
  }
}
.form table {
  margin: 1.3333333333vw;
  border-collapse: collapse;
}
@media screen and (min-width: 1200px) {
  .form table {
    margin: 7.2px;
  }
}
.form td {
  border: 0.1333333333vw solid #aaa;
  padding: 0.6666666667vw;
}
@media screen and (min-width: 1200px) {
  .form td {
    border: 0.72px solid #aaa;
    padding: 3.6px;
  }
}
.form .uap-start--enabled {
  background-color: coral;
  cursor: pointer;
}
.form .uap-start--disabled {
  background-color: #ccc;
  cursor: default;
}

#year-picker {
  width: 37.0666666667vw;
  height: 10.4vw;
  border-radius: 1.0666666667vw;
  border: solid 0.2666666667vw #bebebe;
}
@media screen and (min-width: 1200px) {
  #year-picker {
    width: 200.16px;
    height: 56.16px;
    border-radius: 5.76px;
    border: solid 1.44px #bebebe;
  }
}

#month-picker {
  width: 21.3333333333vw;
  height: 10.4vw;
  border-radius: 1.0666666667vw;
  border: solid 0.2666666667vw #bebebe;
}
@media screen and (min-width: 1200px) {
  #month-picker {
    width: 115.2px;
    height: 56.16px;
    border-radius: 5.76px;
    border: solid 1.44px #bebebe;
  }
}

#date-picker {
  width: 21.3333333333vw;
  height: 10.4vw;
  border-radius: 1.0666666667vw;
  border: solid 0.2666666667vw #bebebe;
}
@media screen and (min-width: 1200px) {
  #date-picker {
    width: 115.2px;
    height: 56.16px;
    border-radius: 5.76px;
    border: solid 1.44px #bebebe;
  }
}

.form .dob select {
  font-size: 4vw;
}
@media screen and (min-width: 1200px) {
  .form .dob select {
    font-size: 21.6px;
  }
}

input {
  width: 4vw;
  height: 4vw;
  vertical-align: sub;
}
@media screen and (min-width: 1200px) {
  input {
    width: 21.6px;
    height: 21.6px;
  }
}

.merit {
  position: relative;
  background: url(../img/features_bg.png) top center/540px auto no-repeat;
  margin-top: -41.04px;
}
@media screen and (max-width: 1199px) {
  .merit {
    background: url(../img/features_bg.png) top center/100vw auto no-repeat;
    margin-top: -7.6vw;
  }
}
.merit .merit-right-txt {
  position: absolute;
  color: #fff8d7;
  font-size: 24vw;
  right: 7.6vw;
  line-height: 0em;
  top: 11.8666666667vw;
  font-weight: 700;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
          writing-mode: vertical-rl;
}
@media screen and (min-width: 1200px) {
  .merit .merit-right-txt {
    font-size: 129.6px;
    right: 41.04px;
    top: 64.08px;
  }
}
.merit .merit-ttl {
  z-index: 1;
  position: relative;
  line-height: 1.5em;
  font-size: 6.6666666667vw;
  margin-bottom: 24vw;
}
@media screen and (min-width: 1200px) {
  .merit .merit-ttl {
    font-size: 36px;
    margin-bottom: 129.6px;
  }
}
.merit .merit-ttl .merit-ttl-big-txt {
  font-size: 8.5333333333vw;
}
@media screen and (min-width: 1200px) {
  .merit .merit-ttl .merit-ttl-big-txt {
    font-size: 46.08px;
  }
}
.merit .merit-ttl .merit-ttl-big-txt .font-os {
  font-size: 10.6666666667vw;
}
@media screen and (min-width: 1200px) {
  .merit .merit-ttl .merit-ttl-big-txt .font-os {
    font-size: 57.6px;
  }
}
.merit .mert-frame {
  width: 184.32px;
  right: 15.84px;
  top: 94.32px;
  z-index: 0;
}
@media screen and (max-width: 1199px) {
  .merit .mert-frame {
    width: 34.1333333333vw;
    right: 2.9333333333vw;
    top: 17.4666666667vw;
  }
}
.merit .merit-point {
  position: relative;
  padding: 46.1333333333vw 0 0 0;
  margin-bottom: 25.3333333333vw;
}
@media screen and (min-width: 1200px) {
  .merit .merit-point {
    padding: 249.12px 0 0 0;
    margin-bottom: 136.8px;
  }
}
.merit .merit-point .merit-point-img {
  position: absolute;
  width: 27.2vw;
  height: auto;
  right: 4vw;
  top: 21.7333333333vw;
}
@media screen and (min-width: 1200px) {
  .merit .merit-point .merit-point-img {
    width: 146.88px;
    right: 21.6px;
    top: 117.36px;
  }
}
.merit .merit-point .merit-number {
  position: absolute;
  top: -52.56px;
  z-index: 0;
  left: 0;
  width: 104.4px;
}
@media screen and (max-width: 1199px) {
  .merit .merit-point .merit-number {
    width: 19.3333333333vw;
    top: -9.7333333333vw;
  }
}
.merit .merit-point .merit-point-ttl-box {
  display: -ms-inline-grid;
  display: inline-grid;
  position: absolute;
  left: 5.3333333333vw;
  top: 6.6666666667vw;
  z-index: 1;
}
@media screen and (min-width: 1200px) {
  .merit .merit-point .merit-point-ttl-box {
    left: 28.8px;
    top: 36px;
  }
}
.merit .merit-point .merit-point-sttl {
  display: inline-block;
  background-color: #e43b86;
  font-size: 4vw;
  padding: 1.4666666667vw 2.6666666667vw;
  margin-bottom: 2.1333333333vw;
}
@media screen and (min-width: 1200px) {
  .merit .merit-point .merit-point-sttl {
    font-size: 21.6px;
    padding: 7.92px 14.4px;
    margin-bottom: 11.52px;
  }
}
.merit .merit-point .merit-point-ttl {
  font-weight: 700;
  display: inline-block;
  background-color: #e43b86;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 51.84px;
  padding-left: 14.4px;
  font-size: 36px;
  margin-bottom: 11.52px;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 1199px) {
  .merit .merit-point .merit-point-ttl {
    height: 9.6vw;
    padding-left: 2.6666666667vw;
    font-size: 6.6666666667vw;
    margin-bottom: 2.1333333333vw;
  }
}
.merit .merit-point .merit-point-ttl-02 {
  width: 144px;
}
@media screen and (max-width: 1199px) {
  .merit .merit-point .merit-point-ttl-02 {
    width: 26.6666666667vw;
  }
}
.merit .merit-point .merit-point-txt {
  width: 230.4px;
  text-align: left;
  font-size: 21.6px;
  margin-bottom: 48.24px;
  margin-left: 28.8px;
  line-height: 1.7em;
}
@media screen and (max-width: 1199px) {
  .merit .merit-point .merit-point-txt {
    width: 42.6666666667vw;
    font-size: 4vw;
    margin-bottom: 8.9333333333vw;
    margin-left: 5.3333333333vw;
  }
}
.merit .merit-point .merit-img {
  width: 252px;
  position: absolute;
  right: 0;
  top: 46.08px;
  z-index: 0;
}
@media screen and (max-width: 1199px) {
  .merit .merit-point .merit-img {
    width: 46.6666666667vw;
    top: 8.5333333333vw;
  }
}
.merit .merit-point-01 {
  padding-top: 172.8px;
}
@media screen and (max-width: 1199px) {
  .merit .merit-point-01 {
    padding-top: 32vw;
  }
}
.merit .merit-point-01 .merit-point-ttl {
  width: 312.48px;
}
@media screen and (max-width: 1199px) {
  .merit .merit-point-01 .merit-point-ttl {
    width: 57.8666666667vw;
  }
}
.merit .merit-point-01 .merit-point-ttl-02 {
  width: 144px;
}
@media screen and (max-width: 1199px) {
  .merit .merit-point-01 .merit-point-ttl-02 {
    width: 26.6666666667vw;
  }
}
.merit .merit-point-01 .Accumulate-img {
  position: absolute;
  right: 14.4px;
  top: -14.4px;
  width: 152.64px;
}
@media screen and (max-width: 1199px) {
  .merit .merit-point-01 .Accumulate-img {
    right: 2.6666666667vw;
    top: -2.6666666667vw;
    width: 28.2666666667vw;
  }
}
.merit .merit-point-01 .merit-bottom-content-day-box {
  text-align: left;
  padding: 41.76px 28.8px 23.04px 28.8px !important;
  margin-bottom: 0 !important;
}
@media screen and (max-width: 1199px) {
  .merit .merit-point-01 .merit-bottom-content-day-box {
    padding: 7.7333333333vw 5.3333333333vw 4.2666666667vw 5.3333333333vw !important;
  }
}
.merit .merit-point-01 .baloon {
  margin-left: 0px !important;
}
.merit .merit-point-01 .merit-bottom-content-day-box-txt {
  font-weight: 500;
  font-size: 21.6px !important;
  line-height: 1.5em !important;
  margin-bottom: 0 !important;
}
@media screen and (max-width: 1199px) {
  .merit .merit-point-01 .merit-bottom-content-day-box-txt {
    font-size: 4vw !important;
  }
}
.merit .merit-point-01 .merit-link {
  margin-left: 252px !important;
  width: 224.64px !important;
}
@media screen and (max-width: 1199px) {
  .merit .merit-point-01 .merit-link {
    margin-left: 46.6666666667vw !important;
    width: 41.6vw !important;
  }
}
.merit .merit-point-02 {
  padding-top: 172.8px;
}
@media screen and (max-width: 1199px) {
  .merit .merit-point-02 {
    padding-top: 32vw;
  }
}
.merit .merit-point-02 .merit-point-ttl {
  width: 462.24px;
}
@media screen and (max-width: 1199px) {
  .merit .merit-point-02 .merit-point-ttl {
    width: 85.6vw;
  }
}
.merit .merit-point-02 .merit-point-ttl-02 {
  width: 208.8px;
}
@media screen and (max-width: 1199px) {
  .merit .merit-point-02 .merit-point-ttl-02 {
    width: 38.6666666667vw;
  }
}
.merit .merit-point-02 .notes {
  display: block;
  width: 230.4px;
  text-align: left;
  line-height: 1.6em;
  margin-top: 17.28px;
}
@media screen and (max-width: 1199px) {
  .merit .merit-point-02 .notes {
    width: 42.6666666667vw;
    margin-top: 3.2vw;
  }
}
.merit .merit-point-02 .merit-number {
  position: absolute;
  top: -52.56px;
  z-index: 0;
  left: 0;
  width: 140.4px;
}
@media screen and (max-width: 1199px) {
  .merit .merit-point-02 .merit-number {
    top: -9.7333333333vw;
    width: 26vw;
  }
}
.merit .merit-point-03 {
  padding-bottom: 0;
  margin-bottom: 0;
  padding-top: 172.8px;
}
@media screen and (max-width: 1199px) {
  .merit .merit-point-03 {
    padding-top: 32vw;
  }
}
.merit .merit-point-03 .merit-point-img-03 {
  top: 86.4px;
}
@media screen and (max-width: 1199px) {
  .merit .merit-point-03 .merit-point-img-03 {
    top: 16vw;
  }
}
.merit .merit-point-03 .merit-point-ttl {
  width: 275.04px;
}
@media screen and (max-width: 1199px) {
  .merit .merit-point-03 .merit-point-ttl {
    width: 50.9333333333vw;
  }
}
.merit .merit-point-03 .merit-point-ttl-02 {
  width: 420.48px;
}
@media screen and (max-width: 1199px) {
  .merit .merit-point-03 .merit-point-ttl-02 {
    width: 77.8666666667vw;
  }
}
.merit .merit-point-03 .merit-img-03 {
  top: 55.44px;
}
@media screen and (max-width: 1199px) {
  .merit .merit-point-03 .merit-img-03 {
    top: 10.2666666667vw;
  }
}
.merit .merit-point-03 .merit-number {
  position: absolute;
  top: -52.56px;
  z-index: 0;
  left: 0;
  width: 140.4px;
}
@media screen and (max-width: 1199px) {
  .merit .merit-point-03 .merit-number {
    top: -9.7333333333vw;
    width: 26vw;
  }
}
.merit .merit-bottom-content-03::after {
  display: none;
}
.merit .corce-culm {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 auto;
  width: 158.4px;
  position: absolute;
  top: -29.52px;
  left: 149.04px;
}
@media screen and (max-width: 1199px) {
  .merit .corce-culm {
    width: 29.3333333333vw;
    top: -5.4666666667vw;
    left: 27.6vw;
  }
}
.merit .corce-culm .corce-item {
  width: 72px;
}
@media screen and (max-width: 1199px) {
  .merit .corce-culm .corce-item {
    width: 13.3333333333vw;
  }
}
.merit .merit-notes-link {
  color: #0066aa;
  font-size: 14.4px;
  border-bottom: solid 1px;
  font-weight: 500;
  display: inline-block;
}
@media screen and (max-width: 1199px) {
  .merit .merit-notes-link {
    font-size: 2.6666666667vw;
  }
}

.corce {
  padding-top: 0;
  padding-bottom: 0;
  position: relative;
}
.corce .corce-bigttl {
  font-size: 46.08px;
  margin-bottom: 23.04px;
  line-height: 1em;
}
@media screen and (max-width: 1199px) {
  .corce .corce-bigttl {
    font-size: 8.5333333333vw;
    margin-bottom: 4.2666666667vw;
  }
}
.corce .corce-ttl {
  font-size: 25.92px;
  margin-bottom: 34.56px;
}
@media screen and (max-width: 1199px) {
  .corce .corce-ttl {
    font-size: 4.8vw;
    margin-bottom: 6.4vw;
  }
}
.corce .corce-bottom-img {
  width: 103.68px;
  position: absolute;
  right: 0;
  left: -17.28px;
  margin: 0 auto;
  bottom: 0;
}
@media screen and (max-width: 1199px) {
  .corce .corce-bottom-img {
    width: 19.2vw;
    left: -3.2vw;
  }
}
.corce .corce-culm-contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.corce .corce-culm-item {
  width: 270px;
  background-color: #ffe6de;
  padding: 46.08px 17.28px 28.8px 17.28px;
}
@media screen and (max-width: 1199px) {
  .corce .corce-culm-item {
    padding: 8.5333333333vw 3.2vw 5.3333333333vw 3.2vw;
    width: 50vw;
  }
}
.corce .corce-culm-item .corce-item-img {
  width: 95.04px;
  margin: 0 auto;
  margin-bottom: 17.28px;
}
@media screen and (max-width: 1199px) {
  .corce .corce-culm-item .corce-item-img {
    width: 17.6vw;
    margin-bottom: 3.2vw;
  }
}
.corce .corce-culm-item .corce-item-img img {
  width: 100%;
}
.corce .corce-culm-item .corce-item-ttl {
  font-size: 25.92px;
  color: #ff632e;
  font-weight: 600;
  margin-bottom: 14.4px;
}
@media screen and (max-width: 1199px) {
  .corce .corce-culm-item .corce-item-ttl {
    font-size: 4.8vw;
    margin-bottom: 2.6666666667vw;
  }
}
.corce .corce-culm-item .corce-item-sttl {
  font-weight: 500;
  font-size: 18.72px;
  line-height: 1.4em;
  margin-bottom: 23.04px;
}
@media screen and (max-width: 1199px) {
  .corce .corce-culm-item .corce-item-sttl {
    font-size: 3.4666666667vw;
    margin-bottom: 4.2666666667vw;
  }
}
.corce .corce-culm-item .corce-list {
  margin-left: -21.6px;
}
@media screen and (max-width: 1199px) {
  .corce .corce-culm-item .corce-list {
    margin-left: -4vw;
  }
}
.corce .corce-culm-item .corce-list-item {
  width: 235.44px;
  height: 60.48px;
  border-radius: 5.76px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 auto;
  background-color: #ff632e;
  color: #ffffff;
  font-size: 18.72px;
  margin-bottom: 5.76px;
}
@media screen and (max-width: 1199px) {
  .corce .corce-culm-item .corce-list-item {
    width: 43.6vw;
    height: 11.2vw;
    border-radius: 1.0666666667vw;
    font-size: 3.4666666667vw;
    margin-bottom: 1.0666666667vw;
  }
}
.corce .corce-culm-item .corce-list-item-stxt {
  font-size: 15.84px;
  line-height: 1.3em;
}
@media screen and (max-width: 1199px) {
  .corce .corce-culm-item .corce-list-item-stxt {
    font-size: 2.9333333333vw;
  }
}
.corce .eco-item .corce-culm-item {
  background-color: #d9f3f8;
}
.corce .eco-item .corce-culm-item .corce-item-ttl {
  color: #3bc0d8;
}
.corce .eco-item .corce-culm-item .corce-list-item {
  background-color: #3bc0d8;
}
.corce .eco-item .corce-culm-item .bg-gray {
  background-color: #bfbfbf;
}

.two-item {
  background: url(../img/two_bg.png) top center/540px auto no-repeat;
}
@media screen and (min-width: 1200px) {
  .two-item {
    padding-bottom: 46.08px;
    margin-top: -2.16px;
  }
}
@media screen and (max-width: 1199px) {
  .two-item {
    background: url(../img/two_bg.png) top center/100vw auto no-repeat;
    margin-top: -0.4vw;
  }
}
.two-item .two-ttl {
  font-size: 36px;
  line-height: 1.7em;
  margin-bottom: 34.56px;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1199px) {
  .two-item .two-ttl {
    font-size: 6.6666666667vw;
    margin-bottom: 6.4vw;
  }
}
.two-item .two-ttl .font-pop {
  font-size: 160%;
  font-weight: 500;
}
.two-item .two-frame {
  width: 322.56px;
  position: absolute;
  right: 0;
  left: 0;
  margin: 0 auto;
  bottom: -12.96px;
}
@media screen and (max-width: 1199px) {
  .two-item .two-frame {
    width: 59.7333333333vw;
    bottom: -2.4vw;
  }
}
.two-item .two-ttl-txt {
  font-size: 25.92px;
  line-height: 1.5em;
  margin-bottom: 23.04px;
}
@media screen and (max-width: 1199px) {
  .two-item .two-ttl-txt {
    font-size: 4.8vw;
    margin-bottom: 4.2666666667vw;
  }
}
.two-item .two-acco-top {
  width: 72.72px;
  margin: 0 auto;
  margin-bottom: 17.28px;
}
@media screen and (max-width: 1199px) {
  .two-item .two-acco-top {
    width: 13.4666666667vw;
    margin-bottom: 3.2vw;
  }
}
.two-item .two-acco-top-txt {
  font-size: 21.6px;
  font-weight: 600;
  margin-bottom: 12.24px;
}
@media screen and (max-width: 1199px) {
  .two-item .two-acco-top-txt {
    font-size: 4vw;
    margin-bottom: 2.2666666667vw;
  }
}
.two-item .two-acco-top-bigtxt {
  font-size: 25.92px;
  font-weight: 700;
  position: relative;
  margin-bottom: 23.04px;
}
@media screen and (max-width: 1199px) {
  .two-item .two-acco-top-bigtxt {
    font-size: 4.8vw;
    margin-bottom: 4.2666666667vw;
  }
}
.two-item .two-acco-top-bigtxt:before {
  position: absolute;
  left: 50.4px;
  top: 0;
  content: "";
  width: 1.44px;
  height: 100%;
  background: #e43b86;
  border-radius: 2.16px;
  -webkit-transform: rotate(-25deg);
          transform: rotate(-25deg);
}
@media screen and (max-width: 1199px) {
  .two-item .two-acco-top-bigtxt:before {
    left: 9.3333333333vw;
    width: 0.2666666667vw;
    border-radius: 0.4vw;
  }
}
.two-item .two-acco-top-bigtxt:after {
  position: absolute;
  content: "";
  right: 50.4px;
  top: 0;
  width: 1.44px;
  height: 100%;
  background: #e43b86;
  border-radius: 2.16px;
  -webkit-transform: rotate(25deg);
          transform: rotate(25deg);
}
@media screen and (max-width: 1199px) {
  .two-item .two-acco-top-bigtxt:after {
    right: 9.3333333333vw;
    width: 0.2666666667vw;
    border-radius: 0.4vw;
  }
}

.qa {
  background: url(../img/qa_bg.png) top center/540px auto no-repeat;
}
@media screen and (max-width: 1199px) {
  .qa {
    background: url(../img/qa_bg.png) top center/100vw auto no-repeat;
  }
}
.qa .sttl {
  font-size: 21.6px;
  margin-bottom: 12.96px;
  font-weight: 700;
  letter-spacing: 0.01em;
}
@media screen and (max-width: 1199px) {
  .qa .sttl {
    font-size: 4vw;
    margin-bottom: 2.4vw;
  }
}
.qa .qa-ttl {
  font-size: 46.08px;
}
@media screen and (max-width: 1199px) {
  .qa .qa-ttl {
    font-size: 8.5333333333vw;
  }
}
.qa .qa-list-q-p {
  height: 108.72px;
  line-height: 1.3em;
}
@media screen and (max-width: 1199px) {
  .qa .qa-list-q-p {
    height: 20.1333333333vw;
  }
}

.qa .qa-list-item {
  width: 482.4px;
  margin: 0 auto;
  margin-bottom: 23.04px;
  -webkit-box-shadow: 0px 0px 10.8px -3.6px #f7e9cf;
          box-shadow: 0px 0px 10.8px -3.6px #f7e9cf;
}
@media screen and (max-width: 1199px) {
  .qa .qa-list-item {
    width: 89.3333333333vw;
    margin-bottom: 4.2666666667vw;
    -webkit-box-shadow: 0px 0px 2vw -0.6666666667vw #f7e9cf;
            box-shadow: 0px 0px 2vw -0.6666666667vw #f7e9cf;
  }
}

.qa .qa-list-q {
  background-color: #ffffff;
  position: relative;
  border-radius: 11.52px;
}
@media screen and (max-width: 1199px) {
  .qa .qa-list-q {
    border-radius: 2.1333333333vw;
  }
}

.qa .qa-list-q span {
  font-weight: bold;
  width: 46.8px;
  height: 46.8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 100px;
  border: solid 1.44px #e43b86;
  font-size: 28.8px;
  padding-bottom: 4.32px;
  margin-right: 18.72px;
}
@media screen and (max-width: 1199px) {
  .qa .qa-list-q span {
    width: 8.6666666667vw;
    height: 8.6666666667vw;
    border: solid 0.2666666667vw #e43b86;
    font-size: 5.3333333333vw;
    padding-bottom: 0.8vw;
    margin-right: 3.4666666667vw;
  }
}

.qa .qa-list-a-p span {
  font-weight: bold;
  width: 46.8px;
  height: 46.8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 100px;
  border: solid 1.44px #e43b86;
  font-size: 28.8px;
  padding-bottom: 4.32px;
  margin-right: 18.72px;
  background-color: #e43b86;
  color: #ffffff;
}
@media screen and (max-width: 1199px) {
  .qa .qa-list-a-p span {
    width: 8.6666666667vw;
    height: 8.6666666667vw;
    border: solid 0.2666666667vw #e43b86;
    font-size: 5.3333333333vw;
    padding-bottom: 0.8vw;
    margin-right: 3.4666666667vw;
  }
}

.qa-list-q-p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-weight: bold;
  height: 101.52px;
  line-height: 1.5em;
  padding-left: 23.04px;
  font-size: 21.6px;
  text-align: left;
}
@media screen and (max-width: 1199px) {
  .qa-list-q-p {
    height: 18.8vw;
    padding-left: 4.2666666667vw;
    font-size: 4vw;
  }
}

.qa-list-q-p::before {
  background-image: none;
  content: "";
  background-color: #e43b86;
  width: 17.28px;
  height: 2.16px;
  position: absolute;
  top: 50%;
  right: 21.6px;
}
@media screen and (max-width: 1199px) {
  .qa-list-q-p::before {
    width: 3.2vw;
    height: 0.4vw;
    right: 4vw;
  }
}

.qa-list-q-p::after {
  content: "";
  background-color: #e43b86;
  width: 17.28px;
  height: 2.16px;
  position: absolute;
  top: 50%;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
  right: 21.6px;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
@media screen and (max-width: 1199px) {
  .qa-list-q-p::after {
    width: 3.2vw;
    height: 0.4vw;
    right: 4vw;
  }
}

.qa .qa-list-q:hover {
  cursor: pointer;
}

.is-open.qa-list-q {
  border-radius: 11.52px 11.52px 0 0;
}
@media screen and (max-width: 1199px) {
  .is-open.qa-list-q {
    border-radius: 2.1333333333vw 2.1333333333vw 0 0;
  }
}

.is-open .qa-list-q-p::after {
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.qa .qa-list-a {
  display: none;
  background-color: #fff;
  padding: 23.76px 28.8px 34.56px 23.04px;
  font-size: 18.72px;
  border-radius: 0 0 11.52px 11.52px;
  position: relative;
}
@media screen and (max-width: 1199px) {
  .qa .qa-list-a {
    padding: 4.4vw 5.3333333333vw 6.4vw 4.2666666667vw;
    font-size: 3.4666666667vw;
    border-radius: 0 0 2.1333333333vw 2.1333333333vw;
  }
}
.qa .qa-list-a .qa-list-a-p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: left;
  line-height: 1.5em;
  font-weight: 500;
}
.qa .qa-list-a span {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.qa .qa-list-a::before {
  background: url(../img/dot_gray.png) bottom left/14.4px auto repeat-x;
  content: "";
  position: absolute;
  height: 5.76px;
  top: 0px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 426.96px;
}
@media screen and (max-width: 1199px) {
  .qa .qa-list-a::before {
    background: url(../img/dot_gray.png) bottom left/2.6666666667vw auto repeat-x;
    height: 1.0666666667vw;
    top: 0vw;
    width: 79.0666666667vw;
  }
}

.point-acco {
  margin-bottom: 34.56px;
}
@media screen and (max-width: 1199px) {
  .point-acco {
    margin-bottom: 6.4vw;
  }
}
.point-acco .qa-list-q {
  position: relative;
  width: 482.4px;
  height: 80.64px;
  margin: 0 auto;
  background-color: #fff8d7;
  border: solid 1.44px #ea5404;
  border-radius: 11.52px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 118.08px;
}
@media screen and (max-width: 1199px) {
  .point-acco .qa-list-q {
    height: 14.9333333333vw;
    border: solid 0.2666666667vw #ea5404;
    border-radius: 2.1333333333vw;
    width: 89.3333333333vw;
    padding-left: 21.8666666667vw;
  }
}
.point-acco .qa-ponta {
  position: absolute;
  left: 0;
  width: 103.68px;
  top: -17.28px;
}
@media screen and (max-width: 1199px) {
  .point-acco .qa-ponta {
    width: 19.2vw;
    top: -3.2vw;
  }
}
.point-acco .qa-ponta-ttl {
  line-height: 1.2em;
  font-size: 21.6px;
  text-align: center;
  font-weight: 700;
}
@media screen and (max-width: 1199px) {
  .point-acco .qa-ponta-ttl {
    font-size: 4vw;
  }
}
.point-acco .qa-ponta-ttl .qa-ponta-ttl-bigtxt {
  font-size: 130%;
  font-weight: 800;
}
.point-acco .qa-pont-ttl-culm::before {
  background-image: none;
  content: "";
  background-color: #ffffff;
  width: 3.2vw;
  height: 0.4vw;
  position: absolute;
  top: 50%;
  z-index: 1;
  right: 4vw;
}
@media screen and (min-width: 1200px) {
  .point-acco .qa-pont-ttl-culm::before {
    width: 17.28px;
    height: 2.16px;
    right: 21.6px;
  }
}
.point-acco .qa-pont-ttl-culm::after {
  content: "";
  z-index: 1;
  background-color: #ffffff;
  width: 3.2vw;
  height: 0.4vw;
  position: absolute;
  top: 50%;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
  right: 4vw;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
@media screen and (min-width: 1200px) {
  .point-acco .qa-pont-ttl-culm::after {
    width: 17.28px;
    height: 2.16px;
    right: 21.6px;
    -webkit-transform: rotate(-64.8px);
            transform: rotate(-64.8px);
  }
}
.point-acco .is-open .qa-pont-ttl-culm::after {
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
.point-acco .qa-list-q::after {
  content: "";
  position: absolute;
  right: 0;
  background-color: #ea5404;
  width: 11.2vw;
  height: 14.9333333333vw;
  border-radius: 0 2.1333333333vw 2.1333333333vw 0;
  z-index: 0;
}
@media screen and (min-width: 1200px) {
  .point-acco .qa-list-q::after {
    width: 60.48px;
    height: 80.64px;
    border-radius: 0 11.52px 11.52px 0;
  }
}
.point-acco .Accumulate-baloon {
  font-size: 25.92px;
  width: 248.4px;
  height: 43.2px;
  margin: 0 auto;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  padding-bottom: 4.32px;
  margin-bottom: 18px;
}
@media screen and (max-width: 1199px) {
  .point-acco .Accumulate-baloon {
    font-size: 4.8vw;
    width: 46vw;
    height: 8vw;
    padding-bottom: 0.8vw;
    margin-bottom: 3.3333333333vw;
  }
}
.point-acco .Accumulate-baloon .Accumulate-baloon-stxt {
  font-size: 80%;
}
.point-acco .qa-list-a {
  padding-top: 46.08px;
  text-align: center;
  display: none;
}
@media screen and (max-width: 1199px) {
  .point-acco .qa-list-a {
    padding-top: 8.5333333333vw;
  }
}
.point-acco .point-acco-a-ttl {
  font-size: 31.68px;
  font-weight: 700;
  margin-bottom: 17.28px;
}
@media screen and (max-width: 1199px) {
  .point-acco .point-acco-a-ttl {
    font-size: 5.8666666667vw;
    margin-bottom: 3.2vw;
  }
}
.point-acco .point-acco-a-ttl .txt-orange {
  font-size: 130%;
  font-weight: 800;
}
.point-acco .point-acco-a-txt {
  letter-spacing: 0.05em;
  font-size: 21.6px;
  line-height: 1.5em;
  margin-bottom: 17.28px;
}
@media screen and (max-width: 1199px) {
  .point-acco .point-acco-a-txt {
    font-size: 4vw;
    margin-bottom: 3.2vw;
  }
}
.point-acco .Accumulate-link {
  color: #0066aa;
  font-size: 14.4px;
  border-bottom: solid 1px;
  width: 40%;
  font-weight: 500;
  margin: 0 auto;
}
@media screen and (max-width: 1199px) {
  .point-acco .Accumulate-link {
    font-size: 2.6666666667vw;
    border-bottom: solid 1px;
    width: 41.4666666667vw;
  }
}
.point-acco .ponta-aco-img {
  width: 288.72px;
  margin-left: 129.6px;
  margin-top: 17.28px;
  margin-bottom: 23.04px;
}
@media screen and (max-width: 1199px) {
  .point-acco .ponta-aco-img {
    width: 53.4666666667vw;
    margin-left: 24vw;
    margin-top: 3.2vw;
    margin-bottom: 4.2666666667vw;
  }
}
.point-acco .ponta-aco-notes {
  font-size: 18.72px;
  text-align: left;
  width: 485.28px;
  line-height: 1.3em;
  margin-bottom: 8.64px;
  margin: 0 auto;
  text-indent: -1em;
  padding-left: 1em;
  letter-spacing: -0.03em;
}
@media screen and (max-width: 1199px) {
  .point-acco .ponta-aco-notes {
    font-size: 3.4666666667vw;
    width: 89.8666666667vw;
    margin-bottom: 1.6vw;
  }
}
.point-acco .ponta-aco-notes .txt-orange {
  font-size: 60%;
  padding-right: 2.88px;
}
@media screen and (max-width: 1199px) {
  .point-acco .ponta-aco-notes .txt-orange {
    padding-right: 0.5333333333vw;
  }
}

.point-acco .qa-list-q.is-open {
  border-radius: 11.52px !important;
}
@media screen and (max-width: 1199px) {
  .point-acco .qa-list-q.is-open {
    border-radius: 2.1333333333vw !important;
  }
}

.Accumulate-baloon {
  color: #ffffff;
  font-size: 3.7333333333vw;
  font-weight: 500;
  width: 46vw;
  height: 6.4vw;
  border-radius: 3.7333333333vw;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 3.7333333333vw;
}
@media screen and (min-width: 1200px) {
  .Accumulate-baloon {
    font-size: 20.16px;
    width: 248.4px;
    height: 34.56px;
    border-radius: 20.16px;
    margin-bottom: 20.16px;
  }
}

.qa-bottom-num {
  width: 89.3333333333vw;
  margin: 0 auto;
  text-align: right;
  font-size: 2.6666666667vw;
}
@media screen and (min-width: 1200px) {
  .qa-bottom-num {
    width: 482.4px;
    font-size: 14.4px;
  }
}

.two-item-list {
  width: 482.4px;
  margin: 0 auto;
}
@media screen and (max-width: 1199px) {
  .two-item-list {
    width: 89.3333333333vw;
  }
}
.two-item-list .qa-list-q {
  background-color: #e43b86;
  border-radius: 11.52px;
  padding: 17.28px 11.52px;
}
@media screen and (max-width: 1199px) {
  .two-item-list .qa-list-q {
    border-radius: 2.1333333333vw;
    padding: 3.2vw 2.1333333333vw;
  }
}
.two-item-list .qa-list-q .two-item-list-sttl {
  font-size: 21.6px;
}
@media screen and (max-width: 1199px) {
  .two-item-list .qa-list-q .two-item-list-sttl {
    font-size: 4vw;
  }
}
.two-item-list .qa-list-q .two-item-list-ttl {
  position: relative;
  color: #fff799;
  font-size: 34.56px;
  margin-top: 8.64px;
  font-weight: 600;
}
@media screen and (max-width: 1199px) {
  .two-item-list .qa-list-q .two-item-list-ttl {
    font-size: 6.4vw;
    margin-top: 1.6vw;
  }
}
.two-item-list .qa-list-q .two-item-list-img {
  width: 424.8px;
  margin: 0 auto;
  margin-top: 11.52px;
}
@media screen and (max-width: 1199px) {
  .two-item-list .qa-list-q .two-item-list-img {
    width: 78.6666666667vw;
    margin-top: 2.1333333333vw;
  }
}
.two-item-list .qa-list-item {
  margin-bottom: 34.56px;
}
@media screen and (max-width: 1199px) {
  .two-item-list .qa-list-item {
    margin-bottom: 6.4vw;
  }
}
.two-item-list .two-item-list-ttl::before {
  background-image: none;
  content: "";
  background-color: #ffffff;
  width: 3.2vw;
  height: 0.4vw;
  position: absolute;
  top: 0%;
  z-index: 1;
  right: 4vw;
}
@media screen and (min-width: 1200px) {
  .two-item-list .two-item-list-ttl::before {
    width: 17.28px;
    height: 2.16px;
    right: 21.6px;
  }
}
.two-item-list .two-item-list-ttl::after {
  content: "";
  z-index: 1;
  background-color: #ffffff;
  width: 3.2vw;
  height: 0.4vw;
  position: absolute;
  top: 0%;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
  right: 4vw;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
@media screen and (min-width: 1200px) {
  .two-item-list .two-item-list-ttl::after {
    width: 17.28px;
    height: 2.16px;
    right: 21.6px;
    -webkit-transform: rotate(-64.8px);
            transform: rotate(-64.8px);
  }
}
.two-item-list .is-open .two-item-list-ttl::after {
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
.two-item-list .qa-list-a {
  background-color: #ffffff;
  display: none;
}
.two-item-list .qa-list-a .two-list-a-ttl {
  font-size: 25.92px;
  padding-top: 23.04px;
  margin-bottom: 17.28px;
  line-height: 1.3em;
}
@media screen and (max-width: 1199px) {
  .two-item-list .qa-list-a .two-list-a-ttl {
    font-size: 4.8vw;
    padding-top: 4.2666666667vw;
    margin-bottom: 3.2vw;
  }
}
.two-item-list .qa-list-a .two-list-a-txt {
  line-height: 1.6em;
  letter-spacing: 0.01em;
  font-size: 18.72px;
  margin-bottom: 23.04px;
}
@media screen and (max-width: 1199px) {
  .two-item-list .qa-list-a .two-list-a-txt {
    font-size: 3.4666666667vw;
    margin-bottom: 4.2666666667vw;
  }
}
.two-item-list .two-list-item-txt {
  letter-spacing: 0.03em;
  font-size: 21.6px;
  color: #585857;
  text-align: left;
  width: 273.6px;
  margin: 0 auto;
  margin-bottom: 23.04px;
}
@media screen and (max-width: 1199px) {
  .two-item-list .two-list-item-txt {
    font-size: 4vw;
    width: 50.6666666667vw;
    margin-bottom: 4.2666666667vw;
  }
}
.two-item-list .two-list-item-txt .font-pop {
  font-size: 150%;
  font-weight: 500;
}
.two-item-list .two-list-item-txt .txt-dot {
  letter-spacing: -0.4em;
  margin-left: 7.2px;
  margin-right: 10.08px;
}
@media screen and (max-width: 1199px) {
  .two-item-list .two-list-item-txt .txt-dot {
    margin-left: 1.3333333333vw;
    margin-right: 1.8666666667vw;
  }
}
.two-item-list .two-list-item-txt .txt-pink {
  margin-right: 2.16px;
}
@media screen and (max-width: 1199px) {
  .two-item-list .two-list-item-txt .txt-pink {
    margin-right: 0.4vw;
  }
}
.two-item-list .two-list-item-txt:nth-child(6) {
  margin-bottom: 0;
}
.two-item-list .qa-ineer-btn .cta-link {
  position: relative;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 424.8px;
  height: 77.76px;
}
@media screen and (max-width: 1199px) {
  .two-item-list .qa-ineer-btn .cta-link {
    width: 78.6666666667vw;
    height: 14.4vw;
  }
}
.two-item-list .qa-ineer-btn .cta-txt {
  font-size: 25.92px;
  margin-top: -10.08px;
}
@media screen and (max-width: 1199px) {
  .two-item-list .qa-ineer-btn .cta-txt {
    font-size: 4.8vw;
    margin-top: -1.8666666667vw;
  }
}
.two-item-list .qa-ineer-btn .cta-stxt {
  font-size: 18.72px;
}
@media screen and (max-width: 1199px) {
  .two-item-list .qa-ineer-btn .cta-stxt {
    font-size: 3.4666666667vw;
  }
}
.two-item-list .qa-ineer-btn .cta-arrow {
  position: absolute;
  right: 28.8px;
}
@media screen and (max-width: 1199px) {
  .two-item-list .qa-ineer-btn .cta-arrow {
    right: 5.3333333333vw;
  }
}
.two-item-list .notes {
  width: 424.8px;
  margin: 0 auto;
  margin-top: 17.28px;
}
@media screen and (max-width: 1199px) {
  .two-item-list .notes {
    width: 78.6666666667vw;
    margin-top: 3.2vw;
  }
}
.two-item-list .qa-list-a {
  padding-bottom: 23.04px;
}
@media screen and (max-width: 1199px) {
  .two-item-list .qa-list-a {
    padding-bottom: 4.2666666667vw;
  }
}
.two-item-list .cta-area {
  padding-bottom: 0;
  padding-top: 23.04px;
}
@media screen and (max-width: 1199px) {
  .two-item-list .cta-area {
    padding-top: 4.2666666667vw;
  }
}

.qa-list-q.is-open {
  border-radius: 11.52px 11.52px 0 0 !important;
}
@media screen and (max-width: 1199px) {
  .qa-list-q.is-open {
    border-radius: 2.1333333333vw 2.1333333333vw 0 0 !important;
  }
}

.copy {
  background-color: #585857;
  font-size: 2.6666666667vw;
  padding: 4.5333333333vw 0;
  text-align: center;
  letter-spacing: 0.006em;
}
@media screen and (min-width: 1200px) {
  .copy {
    font-size: 14.4px;
    padding: 24.48px 0;
  }
}

button:hover {
  cursor: pointer;
}

ul {
  list-style-type: none !important;
  -webkit-margin-after: auto !important;
          margin-block-end: auto !important;
  -webkit-margin-before: auto !important;
          margin-block-start: auto !important;
  -webkit-margin-end: 0;
          margin-inline-end: 0;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
  -webkit-padding-start: inherit !important;
          padding-inline-start: inherit !important;
}

.floating {
  background-color: #6ad138;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  z-index: 1;
}
@media screen and (min-width: 1200px) {
  .floating {
    display: none;
  }
}
.floating .cta-area {
  padding: 0;
}
.floating .cta-area .cta-link {
  -webkit-box-shadow: none;
          box-shadow: none;
}

.floating a {
  position: relative;
  width: 810px;
  height: auto;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .floating a {
    width: 84vw;
  }
}
.floating .flame {
  position: absolute;
  left: -49px;
  top: -31px;
  z-index: 3;
}

@media screen and (max-width: 767px) {
  .floating .flame {
    width: 28.8vw;
    left: -6.5333333333vw;
    top: -4.1333333333vw;
  }
}
.floating.show {
  opacity: 1;
}

.intro {
  background: url(../img/intro_bg.png) top center/100% auto no-repeat;
}
@media screen and (max-width: 1199px) {
  .intro {
    background: url(../img/intro_bg.png) top center/100vw auto no-repeat;
  }
}
.intro .intro-ttl-box {
  margin-bottom: 23.04px;
}
@media screen and (max-width: 1199px) {
  .intro .intro-ttl-box {
    margin-bottom: 2.1333333333vw;
  }
}
.intro .intro-ttl {
  font-size: 36px;
  line-height: 1.6em;
  letter-spacing: 0.05em;
  z-index: 1;
  position: relative;
}
@media screen and (max-width: 1199px) {
  .intro .intro-ttl {
    font-size: 6.6666666667vw;
  }
}
.intro .intro-ttl .txt-pink {
  margin-right: -22.32px;
}
@media screen and (max-width: 1199px) {
  .intro .intro-ttl .txt-pink {
    margin-right: -4.1333333333vw;
  }
}
.intro .intro-frame {
  z-index: 0;
  top: 45.36px;
  width: 383.76px;
  left: 50.4px;
}
@media screen and (max-width: 1199px) {
  .intro .intro-frame {
    top: 8.4vw;
    width: 71.0666666667vw;
    left: 9.3333333333vw;
  }
}
.intro .intro-ttl-stxt {
  font-size: 21.6px;
  line-height: 1.7em;
  margin-bottom: 28.8px;
}
@media screen and (max-width: 1199px) {
  .intro .intro-ttl-stxt {
    font-size: 4vw;
  }
}
.intro .intro-contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 auto;
  width: 482.4px;
}
@media screen and (max-width: 1199px) {
  .intro .intro-contents {
    width: 89.3333333333vw;
  }
}
.intro .intro-item {
  width: 232.56px;
  margin-bottom: 17.28px;
}
@media screen and (max-width: 1199px) {
  .intro .intro-item {
    width: 43.0666666667vw;
    margin-bottom: 3.2vw;
  }
}
.intro .intro-item .intro-item-top {
  background-color: #e43b86;
  font-size: 21.6px;
  border-radius: 11.52px 11.52px 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  line-height: 1.3em;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 79.2px;
  font-weight: 500;
}
@media screen and (max-width: 1199px) {
  .intro .intro-item .intro-item-top {
    font-size: 4vw;
    border-radius: 2.1333333333vw 2.1333333333vw 0 0;
    height: 14.6666666667vw;
  }
}
.intro .intro-item .intro-item-bottom {
  line-height: 1.5em;
  background-color: #ffffff;
  border-radius: 0 0 11.52px 11.52px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 95.76px;
  font-weight: 400;
  letter-spacing: -0.01em;
  font-size: 18px;
}
@media screen and (max-width: 1199px) {
  .intro .intro-item .intro-item-bottom {
    font-size: 3.3333333333vw;
    border-radius: 0 0 2.1333333333vw 2.1333333333vw;
    height: 17.7333333333vw;
  }
}

.intro-data {
  padding: 57.6px 0 0 0;
}
@media screen and (max-width: 1199px) {
  .intro-data {
    padding: 10.6666666667vw 0 0 0;
  }
}
.intro-data .intro-data-ttl {
  font-size: 20.16px;
  line-height: 1.7em;
  letter-spacing: 0.03em;
  width: 468px;
  margin: 0 auto;
  margin-bottom: 34.56px;
}
@media screen and (max-width: 1199px) {
  .intro-data .intro-data-ttl {
    font-size: 3.7333333333vw;
    width: 86.6666666667vw;
    margin-bottom: 6.4vw;
  }
}
.intro-data .intro-img {
  width: 482.4px;
  margin: 0 auto;
  margin-bottom: 23.04px;
}
@media screen and (max-width: 1199px) {
  .intro-data .intro-img {
    width: 89.3333333333vw;
    margin-bottom: 4.2666666667vw;
  }
}

.risk {
  background: url(../img/risk_bg_top.png) top center/100% auto no-repeat,url(../img/risk_bg_btm.png) bottom -1px center/100% auto no-repeat,#ffeff4;
  margin-top: 57.6px;
  padding-bottom: 93.6px;
}
@media screen and (max-width: 1199px) {
  .risk {
    background: url(../img/risk_bg_top.png) top center/100% auto no-repeat,url(../img/risk_bg_btm.png) bottom -1px center/100% auto no-repeat,#ffeff4;
    margin-top: 10.6666666667vw;
    padding-bottom: 17.3333333333vw;
  }
}
.risk .risk-ttl {
  z-index: 1;
  position: relative;
  font-size: 31.68px;
  line-height: 1.7em;
  letter-spacing: 0.03em;
  margin-bottom: 28.8px;
}
@media screen and (max-width: 1199px) {
  .risk .risk-ttl {
    font-size: 5.8666666667vw;
    margin-bottom: 5.3333333333vw;
  }
}
.risk .risk-frame {
  width: 303.84px;
  position: absolute;
  right: 0;
  left: 0;
  margin: 0 auto;
  bottom: -3.6px;
  z-index: 0;
}
@media screen and (max-width: 1199px) {
  .risk .risk-frame {
    width: 56.2666666667vw;
    bottom: -0.6666666667vw;
  }
}
.risk .risk-img {
  width: 482.4px;
  margin: 0 auto;
  margin-bottom: 23.04px;
}
@media screen and (max-width: 1199px) {
  .risk .risk-img {
    width: 89.3333333333vw;
    margin-bottom: 4.2666666667vw;
  }
}
.risk .risk-txt {
  width: 482.4px;
  margin: 0 auto;
  font-size: 21.6px;
  text-align: left;
  line-height: 1.7em;
  margin-top: 23.04px;
}
@media screen and (max-width: 1199px) {
  .risk .risk-txt {
    width: 89.3333333333vw;
    font-size: 4vw;
    margin-top: 4.2666666667vw;
  }
}

.preparation {
  padding-top: 18px;
  background: url(../img/preparation_bg.png) bottom center/540px auto no-repeat;
}
@media screen and (max-width: 1199px) {
  .preparation {
    padding-top: 3.3333333333vw;
    background: url(../img/preparation_bg.png) bottom center/100vw auto no-repeat;
  }
}
.preparation .preparation-sttl {
  font-size: 21.6px;
  font-weight: 600;
}
@media screen and (max-width: 1199px) {
  .preparation .preparation-sttl {
    font-size: 4vw;
  }
}
.preparation .preparation-ttl {
  font-size: 36px;
  line-height: 1.6em;
  margin-top: 17.28px;
  margin-bottom: 23.04px;
  letter-spacing: 0.01em;
  z-index: 1;
  position: relative;
}
@media screen and (max-width: 1199px) {
  .preparation .preparation-ttl {
    font-size: 6.6666666667vw;
    margin-top: 3.2vw;
    margin-bottom: 4.2666666667vw;
  }
}
.preparation .preparation-frame {
  width: 408.96px;
  position: absolute;
  left: 48.24px;
  top: 37.44px;
  z-index: 0;
}
@media screen and (max-width: 1199px) {
  .preparation .preparation-frame {
    width: 75.7333333333vw;
    left: 8.9333333333vw;
    top: 6.9333333333vw;
  }
}
.preparation .risk-baloon-img {
  width: 151.2px;
  margin: 0 auto;
  margin-bottom: 11.52px;
}
@media screen and (max-width: 1199px) {
  .preparation .risk-baloon-img {
    width: 28vw;
    margin-bottom: 2.1333333333vw;
  }
}
.preparation .preparation-txt {
  line-height: 1.5em;
  letter-spacing: 0.06em;
  font-size: 25.92px;
  font-weight: 700;
  margin-bottom: 46.08px;
}
@media screen and (max-width: 1199px) {
  .preparation .preparation-txt {
    font-size: 4.8vw;
    margin-bottom: 8.5333333333vw;
  }
}

.case {
  background: url(../img/case_bg.png) top center/540px auto no-repeat;
  padding-bottom: 72px;
}
@media screen and (max-width: 1199px) {
  .case {
    background: url(../img/case_bg.png) top center/100vw auto no-repeat;
    padding-bottom: 13.3333333333vw;
  }
}
.case .case-ttl {
  font-size: 46.08px;
  margin-bottom: 100.8px;
  line-height: 1em;
}
@media screen and (max-width: 1199px) {
  .case .case-ttl {
    font-size: 8.5333333333vw;
    margin-bottom: 18.6666666667vw;
  }
}
.case .case-item {
  position: relative;
  background-color: #ffffff;
  padding: 34.56px 28.8px;
  border-radius: 11.52px;
  width: 482.4px;
  margin: 0 auto;
  margin-bottom: 99.36px;
}
@media screen and (max-width: 1199px) {
  .case .case-item {
    padding: 6.4vw 5.3333333333vw;
    border-radius: 2.1333333333vw;
    width: 89.3333333333vw;
    margin-bottom: 18.4vw;
  }
}
.case .case-item .case-sttl {
  font-size: 25.92px;
  line-height: 1.3em;
  margin-bottom: 14.4px;
}
@media screen and (max-width: 1199px) {
  .case .case-item .case-sttl {
    font-size: 4.8vw;
    margin-bottom: 2.6666666667vw;
  }
}
.case .case-item .case-ttl-img {
  width: 144px;
  top: -64.8px;
  right: 0;
  left: 0;
  margin: 0 auto;
  z-index: 0;
}
@media screen and (max-width: 1199px) {
  .case .case-item .case-ttl-img {
    width: 26.6666666667vw;
    top: -12vw;
  }
}
.case .case-item .case-item-txt {
  font-size: 18px;
  line-height: 1.3em;
  margin-bottom: 34.56px;
}
@media screen and (max-width: 1199px) {
  .case .case-item .case-item-txt {
    font-size: 3.3333333333vw;
    margin-bottom: 6.4vw;
  }
}
.case .case-item .case-img {
  width: 403.2px;
  margin: 0 auto;
  margin-bottom: 14.4px;
}
@media screen and (max-width: 1199px) {
  .case .case-item .case-img {
    width: 74.6666666667vw;
    margin-bottom: 2.6666666667vw;
  }
}
.case .case-item .case-stxt {
  font-size: 18.72px;
  margin-bottom: 17.28px;
}
@media screen and (max-width: 1199px) {
  .case .case-item .case-stxt {
    font-size: 3.4666666667vw;
    margin-bottom: 3.2vw;
  }
}
.case .case-list-item {
  padding: 20.16px 0;
}
@media screen and (max-width: 1199px) {
  .case .case-list-item {
    padding: 3.7333333333vw 0;
  }
}
.case .case-list {
  width: 424.8px;
  margin: 0 auto;
  margin-left: -17.28px;
}
@media screen and (max-width: 1199px) {
  .case .case-list {
    width: 78.6666666667vw;
    margin-left: -3.2vw;
  }
}
.case .case-list-item-ttl-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 11.52px;
}
@media screen and (max-width: 1199px) {
  .case .case-list-item-ttl-box {
    margin-bottom: 2.1333333333vw;
  }
}
.case .case-list-item-ttl-box .case-list-item-ttl {
  font-size: 21.6px;
  font-weight: 600;
}
@media screen and (max-width: 1199px) {
  .case .case-list-item-ttl-box .case-list-item-ttl {
    font-size: 4vw;
  }
}
.case .case-list-item-ttl-box .price-big-txt {
  font-size: 120%;
  font-weight: 500;
}
.case .case-list-notes {
  font-size: 14.4px;
  text-align: left;
  line-height: 1.3em;
}
@media screen and (max-width: 1199px) {
  .case .case-list-notes {
    font-size: 2.6666666667vw;
  }
}
.case .case-list-item {
  position: relative;
}
.case .case-list-item::after {
  content: "";
  bottom: 0;
  width: 74vw;
  height: 1.4666666667vw;
  background: url(../img/dot.png) bottom left/2.6666666667vw auto repeat-x;
  position: absolute;
  right: 0;
  left: 0;
  margin: 0 auto;
}
@media screen and (min-width: 1200px) {
  .case .case-list-item::after {
    bottom: 0px;
    width: 399.6px;
    height: 7.92px;
    background: url(../img/dot.png) bottom left/14.4px auto repeat-x;
  }
}
.case .total-price {
  font-size: 21.6px;
  text-align: right;
  font-weight: 500;
  margin-top: 17.28px;
  margin-bottom: 23.04px;
  padding-right: 17.28px;
}
@media screen and (max-width: 1199px) {
  .case .total-price {
    font-size: 4vw;
    margin-top: 3.2vw;
    margin-bottom: 4.2666666667vw;
    padding-right: 3.2vw;
  }
}
.case .total-price .font-pop {
  font-size: 150%;
}
.case .case-point-band {
  width: 424.8px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-size: 25.92px;
  background-color: #e43b86;
  border-radius: 100px;
  height: 36px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 28.8px;
  margin-bottom: 14.4px;
  font-weight: 600;
}
@media screen and (max-width: 1199px) {
  .case .case-point-band {
    width: 78.6666666667vw;
    font-size: 4.8vw;
    height: 6.6666666667vw;
    margin-top: 5.3333333333vw;
    margin-bottom: 2.6666666667vw;
  }
}
.case .case-point-txt {
  font-size: 20.16px;
  text-align: left;
  line-height: 1.6em;
  font-weight: 500;
  margin-bottom: 17.28px;
}
@media screen and (max-width: 1199px) {
  .case .case-point-txt {
    margin-bottom: 3.2vw;
    font-size: 3.7333333333vw;
  }
}
.case .case-point-txt .txt-pink {
  font-weight: 600;
}
.case .notes {
  width: 428.4px;
  margin-left: 0;
  margin-bottom: 4.32px;
}
@media screen and (max-width: 1199px) {
  .case .notes {
    width: 79.3333333333vw;
    margin-bottom: 0.8vw;
  }
}

.case-list-item:last-child.case-list-item:after {
  display: none;
}

.case-list-item:last-child {
  padding-bottom: 0;
}

.case-item:last-child {
  margin-bottom: 0;
}

@media screen and (min-width: 1200px) {
  .floating-sp {
    display: none;
  }
}
@media screen and (max-width: 1199px) {
  .floating-sp {
    position: fixed;
    bottom: 0;
    right: 1.0666666667vw;
    width: 24vw;
    height: auto;
    opacity: 1;
    z-index: 999;
    -webkit-transition: 0.4s;
    transition: 0.4s;
  }
}

@media screen and (min-width: 1200px) {
  .floating-sp.show {
    display: none;
  }
}
@media screen and (max-width: 1199px) {
  .floating-sp.show {
    height: auto;
    opacity: 1;
    -webkit-transition: 0.4s;
    transition: 0.4s;
  }
}

@media screen and (min-width: 1200px) and (max-width: 1300px) {
  .pc_right {
    right: 2.6041666667vw;
    left: inherit;
  }
}
.floating-pc-left {
  background: url(../img/pc_left_bg.png) top center/35.9375vw auto no-repeat;
  background-size: cover;
  width: 35.9375vw;
}

.floating-pc-right {
  background: url(../img/pc_right_bg.png) top center/35.9375vw auto no-repeat;
  background-size: cover;
  width: 35.9375vw;
  right: 0;
  left: inherit;
}

.pc-left-ab-bpx {
  position: absolute;
  width: 29.21875vw;
  height: 100vh;
  right: 0;
  left: 0;
  margin: 0 auto;
}

.pc-left-parts {
  position: absolute;
}

.pc-left-parts-01 {
  width: 12.5vw;
  top: 6.7708333333vw;
  left: 0vw;
}

.pc-left-parts-02 {
  width: 14.5833333333vw;
  top: 14.0625vw;
  right: 0vw;
}

.pc-left-parts-03 {
  width: 14.0625vw;
  top: 19.7916666667vw;
  left: 0vw;
}

.pc-left-parts-04 {
  width: 19.8958333333vw;
  bottom: 0;
  position: absolute;
  right: 0;
  left: 0;
  margin: 0 auto;
}

@media screen and (min-width: 1200px) and (max-width: 1500px) {
  .pc-left-parts-01 {
    top: 13.0208333333vw;
    left: -1.4666666667vw;
  }
  .pc-left-parts-02 {
    right: 1.8666666667vw;
    top: 20.3125vw;
  }
  .pc-left-parts-03 {
    top: 26.0416666667vw;
    left: -1.4666666667vw;
  }
}
/* 初期状態: 非表示 */
.photo {
  opacity: 0;
  -webkit-transition: opacity 0.6s ease-out, -webkit-transform 0.6s ease-out;
  transition: opacity 0.6s ease-out, -webkit-transform 0.6s ease-out;
  transition: opacity 0.6s ease-out, transform 0.6s ease-out;
  transition: opacity 0.6s ease-out, transform 0.6s ease-out, -webkit-transform 0.6s ease-out; /* スムーズに遷移 */
}

/* show クラスが付与されるとアニメーションが実行される */
.photo.show {
  opacity: 1;
}

/* zoom アニメーション */
.photo.zoom.show {
  -webkit-animation: zoomIn 0.6s cubic-bezier(0.25, 1, 0.5, 1) forwards;
          animation: zoomIn 0.6s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}

@-webkit-keyframes zoomIn {
  0% {
    -webkit-transform: scale(0.8);
            transform: scale(0.8);
    opacity: 0;
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes zoomIn {
  0% {
    -webkit-transform: scale(0.8);
            transform: scale(0.8);
    opacity: 0;
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
/* スライドアニメーション */
.photo.slide.show {
  -webkit-animation: slideIn 0.6s ease-out forwards;
          animation: slideIn 0.6s ease-out forwards;
}

@-webkit-keyframes slideIn {
  0% {
    -webkit-transform: translateY(30px);
            transform: translateY(30px);
    opacity: 0;
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes slideIn {
  0% {
    -webkit-transform: translateY(30px);
            transform: translateY(30px);
    opacity: 0;
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.dokidoki {
  -webkit-animation-name: dokidoki;
          animation-name: dokidoki; /* アニメーション名の指定 */
  -webkit-animation-delay: 0s;
          animation-delay: 0s; /* アニメーションの開始時間指定 */
  -webkit-animation-duration: 3s;
          animation-duration: 3s; /* アニメーション動作時間の指定 */
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
  /* アニメーションの動き（徐々に早く徐々に遅く）*/
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite; /* アニメーションをループさせる */
}

@-webkit-keyframes dokidoki {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  40% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  60% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes dokidoki {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  40% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  60% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
.point-acco:hover, .qa-list-item:hover {
  cursor: pointer;
}
