@charset "UTF-8";
/* CSS Document */
/*color*/
/*micho*/
.noto {
  font-family: 'Noto Sans JP', sans-serif; }

.mplus {
  font-family: 'M PLUS 1p', sans-serif; }

.josef {
  font-family: 'Josefin Sans', sans-serif;
  font-weight: 500; }

/* -----------------------------------
R E S E T
------------------------------------- */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  max-height: 999999px;
  scroll-behavior: smooth; }

html,
body,
div,
p,
a,
span,
img,
dl,
dt,
dd,
ol,
ul,
li,
form,
h1,
h2,
h3,
h4,
h5,
h6,
table,
tr,
th,
td,
address,
button {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  font-weight: normal;
  text-decoration: none;
  -webkit-padding-start: 0;
  -webkit-overflow-scrolling: touch; }

ol,
ul {
  list-style: none; }

p {
  overflow: hidden;
  text-overflow: ellipsis; }

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

html {
  background: #fff; }

body {
  background: #fff;
  position: relative;
  margin: 0 auto;
  font-size: 16px;
  line-height: 1.3;
  color: #333;
  width: 100%;
  min-width: 960px;
  height: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  font-weight: 500;
  animation: bodyFadeIn 2s ease 0s 1 normal;
  -webkit-animation: bodyFadeIn 2s ease 0s 1 normal; }

main {
  padding-top: 0; }

.lsf {
  -webkit-text-rendering: optimizeLegibility;
  -moz-text-rendering: optimizeLegibility;
  -ms-text-rendering: optimizeLegibility;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  -ms-font-smoothing: antialiased;
  font-smoothing: antialiased;
  -webkit-font-feature-settings: "liga" 1, "dlig" 1;
  -moz-font-feature-settings: "liga=1, dlig=1";
  -ms-font-feature-settings: "liga" 1, "dlig" 1;
  font-feature-settings: "liga" 1, "dlig" 1;
  font-size: 18px; }

@keyframes bodyFadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@-webkit-keyframes bodyFadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
p {
  font-feature-settings: "palt"; }

img {
  vertical-align: bottom; }

.clear:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden; }

a {
  color: #fff;
  text-decoration: none; }

a img:hover {
  opacity: 0.8;
  transition: 1s; }

select {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
  border: 0;
  margin: 0;
  padding: 0;
  background: none transparent;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  box-sizing: content-box; }

input,
textarea {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -webkit-appearance: none;
  appearance: none;
  box-sizing: border-box;
  max-width: 100%;
  border-radius: 0; }

input[type="radio"] {
  border: none;
  display: none; }

input[type="checkbox"] {
  border: none;
  display: none; }

input[type="text"],
input[type="password"] {
  padding: 0;
  border: none;
  border-radius: 0;
  outline: none;
  background: #fff; }

input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer; }

input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none; }

input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px; }

input[type="text"]:focus,
input[type="tel"]:focus,
input[type="mail"]:focus,
textarea:focus {
  box-shadow: 0 0 7px #6b473f;
  border: 1px solid #6b473f; }

input:-webkit-autofill {
  box-shadow: 0 0 0 1000px #F6FCC7 inset; }

.buruburu-hover:hover {
  display: inline-block;
  animation: hurueru .5s infinite; }

@keyframes hurueru {
  0% {
    transform: translate(0px, 0px) rotateZ(0deg); }
  25% {
    transform: translate(1px, 1px) rotateZ(1deg); }
  50% {
    transform: translate(0px, 1px) rotateZ(0deg); }
  75% {
    transform: translate(1px, 0px) rotateZ(-1deg); }
  100% {
    transform: translate(0px, 0px) rotateZ(0deg); } }
summary::-webkit-details-marker {
  display: none; }

*:focus {
  outline: none; }

input[type="range"] {
  -webkit-appearance: none;
  appearance: none;
  cursor: pointer;
  outline: none;
  height: 1px;
  width: 100%;
  background: rgba(0, 0, 0, 0);
  border: none;
  position: relative; }

/* WebKit */
input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none;
  background: #000;
  width: 50px;
  height: 50px;
  border-radius: 30px;
  box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0); }

/* Moz */
input[type="range"]::-moz-range-thumb {
  background: none;
  background: #000;
  width: 50px;
  height: 50px;
  border-radius: 30px;
  box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0);
  border: none; }

input[type="range"]::-moz-focus-outer {
  border: 0; }

/* drug */
.anchor {
  padding-top: 120px;
  margin-top: -120px;
  pointer-events: none;
  display: block; }

.flexBox {
  display: flex; }
  .flexBox .leftBox {
    display: block;
    width: 50%; }
  .flexBox .rightBox {
    display: block;
    width: 50%; }

summary {
  display: block;
  list-style: none; }

summary::-webkit-details-marker {
  display: none; }

.scroll-fade {
  opacity: 0;
  transition: all 2s; }

.scroll-up {
  opacity: 0;
  transform: translateY(100px);
  transition: all 0.5s; }

.scroll-up.done,
.scroll-fade.done {
  opacity: 1;
  transform: translate(0, 0); }

/* -----------------------------------
C O M M O N
------------------------------------- */
html {
  background: #fff; }

body {
  overflow-x: hidden;
  /*common*/
  /*header*/
  /*mainBlock*/
  /*loginBlock*/
  /*aboutBlock*/
  /*surviceBlock*/
  /*pointBlock*/
  /*startBlock*/
  /*reasonsBlock*/
  /*faqBlock*/
  /*exampleBlock*/
  /*enterBlock*/
  /*thirdBlock*/
  /*priceBlock*/
  /*contactBlock*/
  /*fixedContent*/
  /*footer*/
  /*sendMessage*/ }
  body section {
    display: block; }
    body section .innerBlock {
      width: 90%;
      margin: 0 auto;
      max-width: 1160px; }
      body section .innerBlock h2.ttl {
        font-size: 150px;
        text-align: center; }
      body section .innerBlock h3.ttl {
        text-align: center;
        font-size: 2.2em;
        margin-bottom: 30px; }
  body .sky {
    background: #6b473f;
    color: #fff;
    display: block; }
  body header.headerBlock {
    position: fixed;
    top: 0;
    background: #fff;
    width: 100%;
    z-index: 999;
    transition: 1s;
    min-width: 768px;
    box-shadow: 5px 5px 100px 1px rgba(0, 0, 0, 0.2); }
    body header.headerBlock .innerBlock a.topLink {
      width: 100%;
      height: 100%;
      padding: 40px 0;
      display: block;
      transition: 0.5s; }
      body header.headerBlock .innerBlock a.topLink .topLogo {
        display: block;
        margin: 0 auto; }
    body header.headerBlock .muryo {
      color: #fff;
      background: #6b473f;
      width: 210px;
      height: 210px;
      border-radius: 200px;
      text-align: center;
      position: fixed;
      right: calc(50% - 430px);
      top: 40px;
      box-sizing: border-box;
      padding-top: 30px;
      box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.2);
      z-index: 1000;
      transition: 0.5s; }
      body header.headerBlock .muryo .small {
        font-size: 1.5em;
        display: block;
        font-weight: 700; }
      body header.headerBlock .muryo .big {
        font-size: 5em;
        margin-top: -15px;
        display: block;
        font-weight: 700; }
    body header.headerBlock div.login {
      height: 0;
      top: 0;
      right: 0;
      width: 60px;
      position: absolute; }
    body header.headerBlock a.loginLink {
      background: #2b2117;
      display: block;
      padding: 20px;
      width: 45%;
      position: relative;
      opacity: 0;
      height: 0;
      right: 0;
      width: 0;
      cursor: pointer;
      transition: 0.2s; }
      body header.headerBlock a.loginLink img {
        display: inline-block;
        vertical-align: middle; }
      body header.headerBlock a.loginLink img:last-of-type {
        position: absolute;
        right: 10px;
        top: 22px;
        width: 15px; }
      body header.headerBlock a.loginLink p.ttl {
        display: inline-block;
        vertical-align: middle;
        padding: 0 40px 0 10px;
        font-size: 1.7em;
        font-weight: 700; }
    body header.headerBlock a.loginLink:last-of-type {
      background: #a07821; }
    body header.headerBlock a.loginLink:first-of-type:hover {
      background: #6b473f; }
    body header.headerBlock a.loginLink:last-of-type:hover {
      background: #c9961b; }
  body header.headerBlock.fixed .innerBlock a.topLink {
    padding: 15px 0; }
    body header.headerBlock.fixed .innerBlock a.topLink .topLogo {
      width: 280px;
      margin-left: 100px; }
  body header.headerBlock.fixed .innerBlock .muryo {
    opacity: 0;
    pointer-events: none; }
  body header.headerBlock.fixed .innerBlock div.login {
    height: auto;
    position: absolute;
    top: 20px;
    right: 20px;
    width: auto; }
    body header.headerBlock.fixed .innerBlock div.login .logSvg {
      width: 60px; }
  body header.headerBlock.fixed .innerBlock a.loginLink {
    opacity: 1;
    width: auto;
    height: auto;
    font-size: 0.6em;
    padding: 10px;
    display: inline-block; }
  body .mainBlock {
    background: url("../../imgHtml/pro/mainImgase.jpg");
    width: 100%;
    padding: 320px 30px 120px;
    background-size: cover;
    position: relative; }
    body .mainBlock .innerBlock {
      width: 100%;
      color: #fff;
      text-align: center; }
      body .mainBlock .innerBlock h1.mainTtl {
        font-size: 2.2em;
        margin: 0 auto;
        margin-bottom: 30px;
        font-weight: 700;
        line-height: 1.5em;
        letter-spacing: 0.05em;
        max-width: 830px;
        width: 100%;
        font-feature-settings: 'palt';
        text-align: left; }
        body .mainBlock .innerBlock h1.mainTtl br.sp {
          display: none; }
      body .mainBlock .innerBlock h2.mainTxt {
        font-size: 1.3em;
        margin: 0 auto 120px;
        max-width: 830px;
        width: 100%;
        line-height: 1.5em;
        text-align: left; }
        body .mainBlock .innerBlock h2.mainTxt br.sp {
          display: none; }
      body .mainBlock .innerBlock .threeContent {
        background: #fff;
        width: 768px;
        margin: 0 auto;
        padding: 40px;
        display: flex;
        color: #474747;
        position: absolute;
        left: 50%;
        bottom: -70px;
        transform: translateX(-50%); }
        body .mainBlock .innerBlock .threeContent .box {
          display: block;
          width: 33%;
          position: relative; }
          body .mainBlock .innerBlock .threeContent .box span.big {
            font-size: 5em;
            display: block;
            font-weight: 700; }
          body .mainBlock .innerBlock .threeContent .box span.time {
            position: absolute;
            right: 51px;
            width: 10px;
            font-size: 3em;
            bottom: 66px;
            font-weight: 700; }
          body .mainBlock .innerBlock .threeContent .box span.small {
            font-size: 1.8em;
            letter-spacing: 0.2em;
            display: block;
            font-weight: 700; }
          body .mainBlock .innerBlock .threeContent .box span.big.josef {
            font-size: 7.5em;
            margin-left: -40px;
            line-height: 0.8em; }
        body .mainBlock .innerBlock .threeContent .box:nth-child(2) {
          border-left: 1px solid #474747;
          border-right: 1px solid #474747; }
  body .loginBlock {
    background: url("../../imgHtml/pro/triple.jpg");
    background-size: cover;
    background-position: top center;
    width: 100%;
    padding: 200px 20px 140px;
    display: block; }
    body .loginBlock .innerBlock {
      max-width: 960px;
      margin: 0 auto; }
      body .loginBlock .innerBlock .flexBox {
        display: flex;
        justify-content: space-between; }
      body .loginBlock .innerBlock a.loginLink {
        background: #a07821;
        display: block;
        padding: 20px;
        width: 45%;
        position: relative;
        transition: 1s; }
        body .loginBlock .innerBlock a.loginLink img {
          display: inline-block;
          vertical-align: middle; }
        body .loginBlock .innerBlock a.loginLink img:last-of-type {
          position: absolute;
          right: 20px;
          top: 35px; }
        body .loginBlock .innerBlock a.loginLink p.ttl {
          display: inline-block;
          vertical-align: middle;
          padding: 0 30px;
          font-size: 1.7em;
          font-weight: 700; }
      body .loginBlock .innerBlock a.loginLink:last-of-type {
        background: #2b2117; }
      body .loginBlock .innerBlock a.loginLink:nth-last-child(2):hover {
        background: #c9961b; }
      body .loginBlock .innerBlock a.loginLink:last-of-type:hover {
        background: #6b473f; }
  body .aboutBlock {
    background: url("../../imgHtml/pro/targetback.jpg");
    adding-bottom: 60px;
    background-size: cover;
    position: relative; }
    body .aboutBlock .innerBlock {
      padding: 20px;
      /*confuseBox*/ }
      body .aboutBlock .innerBlock h2.ttl {
        text-align: center;
        font-size: 10em;
        opacity: 0.1; }
      body .aboutBlock .innerBlock h3.ttl {
        text-align: center;
        margin-bottom: 50px;
        font-size: 3.5em;
        font-weight: 900; }
        body .aboutBlock .innerBlock h3.ttl span {
          font-weight: 900;
          border-bottom: 6px solid #fff;
          border-radius: 5px; }
      body .aboutBlock .innerBlock h4 {
        max-width: 700px;
        margin: 0 auto;
        margin-bottom: 60px;
        text-align: center;
        line-height: 1.4em; }
      body .aboutBlock .innerBlock h5 {
        text-align: center;
        margin-bottom: 20px;
        font-size: 1.5em; }
      body .aboutBlock .innerBlock .caseBox {
        justify-content: space-between;
        max-width: 1000px;
        margin: 0 auto; }
        body .aboutBlock .innerBlock .caseBox .box {
          background: #fff;
          padding: 20px;
          border-radius: 10px;
          width: 30%;
          position: relative;
          max-height: 500px;
          line-height: 1.5em; }
          body .aboutBlock .innerBlock .caseBox .box .casettl {
            text-align: center;
            font-size: 2em;
            color: #fff;
            position: absolute;
            top: -50px;
            left: 50%;
            transform: translateX(-50%); }
            body .aboutBlock .innerBlock .caseBox .box .casettl span {
              font-size: 1.5em; }
          body .aboutBlock .innerBlock .caseBox .box .subttl {
            color: #2b2117;
            font-size: 1.9em;
            text-align: center;
            font-weight: 700;
            margin-bottom: 0px;
            position: absolute;
            left: 50%;
            transform: translateX(-50%);
            width: 100%;
            bottom: 32%; }
          body .aboutBlock .innerBlock .caseBox .box .txt {
            color: #474747;
            position: absolute;
            left: 50%;
            transform: translateX(-50%);
            width: 85%;
            bottom: 10%;
            line-height: 1.8em;
            text-align: justify; }
          body .aboutBlock .innerBlock .caseBox .box img {
            width: 80%;
            margin-left: -10%; }
      body .aboutBlock .innerBlock .caseBox2 {
        justify-content: center;
        max-width: 1000px;
        margin: 0 auto;
        margin-top: 100px; }
        body .aboutBlock .innerBlock .caseBox2 .box {
          background: #fff;
          padding: 20px;
          border-radius: 10px;
          width: 30%;
          position: relative;
          max-height: 500px; }
          body .aboutBlock .innerBlock .caseBox2 .box .casettl {
            text-align: center;
            font-size: 2em;
            color: #fff;
            position: absolute;
            top: -50px;
            left: 50%;
            transform: translateX(-50%); }
            body .aboutBlock .innerBlock .caseBox2 .box .casettl span {
              font-size: 1.5em; }
          body .aboutBlock .innerBlock .caseBox2 .box .subttl {
            color: #2b2117;
            font-size: 2em;
            text-align: center;
            font-weight: 700;
            margin-bottom: 0px;
            position: absolute;
            left: 50%;
            transform: translateX(-50%);
            width: 100%;
            bottom: 35%;
            line-height: 1.5em; }
          body .aboutBlock .innerBlock .caseBox2 .box .txt {
            color: #474747;
            position: absolute;
            left: 50%;
            transform: translateX(-50%);
            width: 85%;
            bottom: 10%;
            line-height: 1.8em;
            text-align: justify; }
          body .aboutBlock .innerBlock .caseBox2 .box img {
            width: 80%;
            margin-left: -10%; }
      body .aboutBlock .innerBlock .confuseBox {
        position: relative;
        padding: 60px 0 0; }
        body .aboutBlock .innerBlock .confuseBox h2.ttl {
          position: absolute;
          transform: rotate(-15deg);
          opacity: 1;
          font-size: 1.7em;
          font-weight: 700;
          top: 120px;
          left: calc(50% - 450px); }
        body .aboutBlock .innerBlock .confuseBox h5.exsample {
          padding: 40px;
          width: 100%;
          max-width: 880px;
          background: #edd9cd;
          color: #000;
          font-size: 1.5em;
          font-weight: 700;
          line-height: 1.5em;
          margin: 0 auto; }
        body .aboutBlock .innerBlock .confuseBox h5.exsample:first-of-type {
          margin-bottom: 30px; }
        body .aboutBlock .innerBlock .confuseBox .confuseImg {
          position: absolute;
          z-index: 222;
          right: calc(50% - 325px);
          top: 40px; }
        body .aboutBlock .innerBlock .confuseBox .guruguru {
          position: absolute;
          z-index: 222;
          right: calc(50% - 390px);
          top: 10px;
          width: 135px; }
    body .aboutBlock .sankaku {
      position: relative;
      width: 100%;
      overflow-x: clip; }
    body .aboutBlock .sankaku::after {
      content: "";
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 25vw 100vw 0 100vw;
      border-color: #6b473f transparent transparent transparent;
      position: absolute;
      left: 50%;
      transform: translateX(-50%); }
  body .surviceBlock {
    background: #edd9cd;
    width: 100%;
    height: 100%;
    display: block;
    padding-bottom: 60px; }
    body .surviceBlock .innerBlock {
      width: 80%;
      margin: 0 auto;
      padding-top: 1%; }
      body .surviceBlock .innerBlock h2.special {
        width: 100vw;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        text-align: center;
        font-size: 1.2em;
        font-weight: 700;
        padding: 20px;
        color: #fff;
        background: #fa4848;
        margin-bottom: 60px; }
      body .surviceBlock .innerBlock h2.ttl {
        text-align: center;
        margin-top: 39px;
        font-size: 10em;
        opacity: 0.1; }
      body .surviceBlock .innerBlock h3.ttl {
        text-align: center;
        font-size: 3em;
        font-weight: 900;
        color: #000; }
      body .surviceBlock .innerBlock h4.blueLine {
        padding: 10px;
        text-align: center;
        background: #2b2117;
        color: #fff;
        width: 40%;
        position: relative;
        margin: 30px auto;
        font-weight: 700;
        font-size: 1.4em; }
      body .surviceBlock .innerBlock h4.blueLine::before {
        content: "";
        width: 30px;
        background: #6b473f;
        height: 100%;
        top: 0;
        display: block;
        position: absolute;
        left: 0; }
      body .surviceBlock .innerBlock h4.blueLine::after {
        content: "";
        width: 30px;
        background: #6b473f;
        height: 100%;
        top: 0;
        display: block;
        position: absolute;
        right: 0; }
      body .surviceBlock .innerBlock .exmapleBox {
        position: relative; }
        body .surviceBlock .innerBlock .exmapleBox .expleTxt {
          position: absolute;
          left: 50%;
          transform: translate(-50%);
          background: #2b2117;
          color: #fff;
          padding: 10px 40px;
          color: #fff;
          z-index: 111;
          font-weight: 700;
          font-size: 1.5em; }
        body .surviceBlock .innerBlock .exmapleBox h5.txt {
          margin-top: 50px;
          font-size: 1.5em;
          line-height: 2em;
          text-align: left;
          font-weight: 700; }
      body .surviceBlock .innerBlock .chancel {
        background: url("../../imgHtml/pro/gizagiza.png");
        color: #fff;
        height: 150px;
        margin-bottom: 30px;
        background-size: contain;
        width: 100%;
        background-position: center;
        background-repeat: no-repeat;
        margin-bottom: 70px;
        font-weight: 700;
        padding: 55px;
        font-size: 2em;
        text-align: center; }
        body .surviceBlock .innerBlock .chancel .chancelTxt {
          font-weight: 700; }
      body .surviceBlock .innerBlock .flexBox {
        background: #fff;
        border: 8px solid #2b2117;
        margin: 0 auto;
        border-radius: 5px;
        margin-bottom: 50px;
        text-align: center;
        padding: 50px 20px 20px;
        position: relative;
        justify-content: space-between;
        max-width: 800px; }
        body .surviceBlock .innerBlock .flexBox .leftBox .step {
          width: 100%; }
        body .surviceBlock .innerBlock .flexBox .rightBox {
          padding: 20px;
          padding-right: 0; }
          body .surviceBlock .innerBlock .flexBox .rightBox .ttl {
            font-weight: 700;
            font-size: 1.6em;
            line-height: 1.5em;
            margin-bottom: 15px;
            text-align: left; }
          body .surviceBlock .innerBlock .flexBox .rightBox .txt {
            text-align: justify;
            line-height: 1.8em;
            font-size: 1em; }
        body .surviceBlock .innerBlock .flexBox .stepNum {
          position: absolute;
          background: #6b473f;
          color: #fff;
          text-align: center;
          top: -40px;
          text-align: center;
          left: 50%;
          transform: translateX(-50%);
          padding: 12px 60px 0px;
          font-size: 3em;
          border-radius: 60px; }
      body .surviceBlock .innerBlock .flexBox2 {
        margin-bottom: 0px; }
      body .surviceBlock .innerBlock .shasen {
        padding: 20px;
        background-size: auto auto;
        background-color: #917e7b;
        background-image: repeating-linear-gradient(135deg, transparent, transparent 3px, #030204 3px, #030204 6px); }
      body .surviceBlock .innerBlock .onlySenmon {
        text-align: right;
        margin-top: 5px;
        margin-bottom: 20px;
        font-size: 1.5em; }
      body .surviceBlock .innerBlock .sankaku {
        content: "";
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 50px 100px 0 100px;
        border-color: #2b2117 transparent transparent transparent;
        position: absolute;
        left: 50%;
        transform: translateX(-50%); }
      body .surviceBlock .innerBlock h6.ttl {
        margin-top: 100px;
        max-width: 668px;
        display: block;
        margin: 160px auto 30px;
        font-size: 2.5em;
        font-weight: 700;
        line-height: 70px; }
        body .surviceBlock .innerBlock h6.ttl .sky {
          background: none;
          display: inline-block;
          font-size: 4em;
          color: #6b473f;
          padding: 0 10px;
          vertical-align: middle; }
      body .surviceBlock .innerBlock .bikou {
        width: 80%;
        margin: 0 auto 60px;
        display: block;
        padding-bottom: 90px;
        text-align: left;
        font-size: 1em;
        line-height: 1.8em; }
  body .pointBlock .innerBlock {
    position: relative;
    width: 100%;
    margin: 0 auto;
    min-height: 390px; }
    body .pointBlock .innerBlock h2.ttl {
      position: absolute;
      top: -20px;
      left: 10%;
      font-size: 7em; }
    body .pointBlock .innerBlock h3.ttl {
      font-size: 1.7em;
      font-weight: 700;
      margin-bottom: 30px;
      margin-left: 10%; }
    body .pointBlock .innerBlock .pointTxt {
      margin-left: 10%;
      padding-bottom: 60px; }
      body .pointBlock .innerBlock .pointTxt li {
        position: relative;
        padding-left: 30px;
        margin-bottom: 30px;
        line-height: 1.5em; }
      body .pointBlock .innerBlock .pointTxt li::before {
        content: "";
        width: 20px;
        height: 100%;
        background: #fff;
        position: absolute;
        left: 0;
        display: block; }
    body .pointBlock .innerBlock .smileGirls {
      background-color: #fff;
      position: absolute;
      overflow: hidden;
      top: 0px;
      right: 0px;
      height: 100%; }
  body .startBlock {
    background: url("../../imgHtml/pro/triple.jpg");
    height: 100%;
    background-size: cover;
    display: block;
    margin-top: 0px;
    position: relative;
    z-index: 100; }
    body .startBlock .innerBlock {
      padding-top: 80px;
      padding-bottom: 80px; }
      body .startBlock .innerBlock a.linkStart {
        width: 80%;
        max-width: 768px;
        margin: 0 auto;
        padding: 20px;
        background: #fa4848;
        color: #fff;
        text-align: center;
        position: relative;
        display: block;
        transition: 1s; }
        body .startBlock .innerBlock a.linkStart p {
          font-size: 1.5em;
          font-weight: 700; }
        body .startBlock .innerBlock a.linkStart img {
          position: absolute;
          right: 20px;
          top: 50%;
          top: 15px;
          width: 20px; }
      body .startBlock .innerBlock a.linkStart:hover {
        background: #bf0505; }
  body .reasonsBlock {
    background: #edd9cd;
    padding-bottom: 200px;
    display: block; }
    body .reasonsBlock .innerBlock {
      position: relative; }
      body .reasonsBlock .innerBlock h2.ttl {
        text-align: center;
        font-size: 7em;
        opacity: 0.5;
        color: #6b473f;
        margin-top: 20px; }
      body .reasonsBlock .innerBlock h3.ttl {
        text-align: center;
        margin-bottom: 30px;
        font-size: 3.2em;
        color: #000;
        font-weight: 900; }
      body .reasonsBlock .innerBlock h4.blueLine {
        padding: 10px;
        text-align: center;
        background: #2b2117;
        color: #fff;
        width: 50%;
        position: relative;
        margin: 30px auto;
        font-weight: 700;
        font-size: 1.4em; }
      body .reasonsBlock .innerBlock h4.blueLine::before {
        content: "";
        width: 30px;
        background: #6b473f;
        height: 100%;
        top: 0;
        display: block;
        position: absolute;
        left: 0; }
      body .reasonsBlock .innerBlock h4.blueLine::after {
        content: "";
        width: 30px;
        background: #6b473f;
        height: 100%;
        top: 0;
        display: block;
        position: absolute;
        right: 0; }
      body .reasonsBlock .innerBlock .reasonBox {
        width: 80%;
        max-width: 960px;
        margin: 20px auto;
        background: #fff;
        position: relative;
        border-radius: 10px;
        padding: 20px; }
        body .reasonsBlock .innerBlock .reasonBox .leftBox img {
          width: 100%; }
        body .reasonsBlock .innerBlock .reasonBox .rightBox {
          padding-left: 20px; }
          body .reasonsBlock .innerBlock .reasonBox .rightBox .ttl {
            width: 100%;
            font-weight: 700;
            margin-bottom: 30px;
            font-size: 2.4em;
            margin-top: 40px; }
          body .reasonsBlock .innerBlock .reasonBox .rightBox .txt {
            width: 100%;
            text-align: justify;
            line-height: 1.8em; }
        body .reasonsBlock .innerBlock .reasonBox h6.josef {
          position: absolute;
          color: #6b473f;
          top: -20px;
          font-size: 3.5em;
          opacity: 0.5;
          text-align: right;
          right: 10px; }
      body .reasonsBlock .innerBlock h2.lastttl {
        text-align: center;
        font-size: 1.7em;
        font-weight: 700;
        margin-top: 20px; }
      body .reasonsBlock .innerBlock .roundIconBlock {
        background-color: #6b473f;
        width: 100%;
        padding: 1px;
        display: flex;
        align-items: center;
        margin-top: 10px; }
      body .reasonsBlock .innerBlock .inner {
        height: 3.8em;
        display: flex;
        align-items: center;
        overflow: hidden; }
      body .reasonsBlock .innerBlock .icon {
        margin-top: 1px;
        margin-bottom: 1px;
        display: flex;
        justify-content: center;
        align-items: center;
        max-height: 98%; }
      body .reasonsBlock .innerBlock .money {
        max-width: 100%;
        margin: 0 auto; }
      body .reasonsBlock .innerBlock .text {
        padding: 5%;
        font-size: 0.9em;
        color: white; }
  body .faqBlock {
    background: url("../../imgHtml/pro/faqback.jpg");
    background-size: cover;
    padding-bottom: 130px; }
    body .faqBlock .innerBlock {
      position: relative;
      padding-bottom: 60px; }
      body .faqBlock .innerBlock h2.ttl {
        text-align: center;
        font-size: 7em;
        opacity: 0.2;
        margin-top: -65px;
        color: #fff; }
      body .faqBlock .innerBlock h3.ttl {
        text-align: center;
        margin-bottom: 30px;
        font-size: 2.5em;
        color: #fff;
        font-weight: 900; }
      body .faqBlock .innerBlock .qaBlock {
        width: 80%;
        border-radius: 5px;
        background: #fff;
        padding: 20px;
        margin: 20px auto;
        position: relative;
        transition: 1s; }
        body .faqBlock .innerBlock .qaBlock .sumTtl {
          color: #2b2117;
          font-size: 1.5em;
          font-weight: 700;
          cursor: pointer;
          width: 80%;
          margin: 0 auto 10px;
          transition: 1s; }
          body .faqBlock .innerBlock .qaBlock .sumTtl .underLine {
            text-decoration: underline;
            font-weight: 700; }
          body .faqBlock .innerBlock .qaBlock .sumTtl .blueSankaku {
            width: 30px;
            position: absolute;
            right: 30px; }
        body .faqBlock .innerBlock .qaBlock .sumTtl::before {
          content: "Q.";
          font-family: "Josefin Sans", sans-serif;
          position: absolute;
          left: 30px;
          font-size: 2em; }
        body .faqBlock .innerBlock .qaBlock .sumTtl:hover {
          color: #6b473f; }
        body .faqBlock .innerBlock .qaBlock summary.sumTtl::-webkit-details-marker {
          display: none; }
        body .faqBlock .innerBlock .qaBlock .detailcontainer {
          padding-top: 20px;
          position: relative;
          transition: 1s;
          border-top: 3px solid #2b2117;
          margin-top: 20px; }
          body .faqBlock .innerBlock .qaBlock .detailcontainer .ttl {
            color: #fa4848;
            font-size: 1.5em;
            font-weight: 700;
            margin-bottom: 10px;
            padding-right: 30px;
            width: 80%;
            margin: 0 auto;
            margin-bottom: 10px; }
          body .faqBlock .innerBlock .qaBlock .detailcontainer .ttl::before {
            content: "A.";
            font-family: "Josefin Sans", sans-serif;
            position: absolute;
            left: 10px;
            font-size: 2em; }
          body .faqBlock .innerBlock .qaBlock .detailcontainer .txt {
            color: #474747;
            text-align: justify;
            line-height: 1.5em;
            width: 80%;
            margin: 0 auto; }
      body .faqBlock .innerBlock details[open] .detailcontainer {
        animation: fadeIn 0.5s ease; }
@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(-10px); }
  100% {
    opacity: 1;
    transform: none; } }
      body .faqBlock .innerBlock .linkA {
        position: absolute;
        right: 10%; }
        body .faqBlock .innerBlock .linkA .outlink {
          color: #2b2117;
          text-align: right;
          margin-bottom: 10px;
          display: block;
          transition: 1s; }
          body .faqBlock .innerBlock .linkA .outlink p {
            display: inline-block;
            vertical-align: middle;
            transition: 1s;
            color: #fff; }
          body .faqBlock .innerBlock .linkA .outlink .linkCircle {
            background: #6b473f;
            transition: 1s;
            cursor: pointer;
            border-radius: 50px;
            width: 50px;
            height: 50px;
            display: inline-block;
            padding: 10px 13px 10px 10px;
            vertical-align: middle;
            margin-left: 10px; }
            body .faqBlock .innerBlock .linkA .outlink .linkCircle img {
              display: inline-block;
              width: 18px; }
        body .faqBlock .innerBlock .linkA .outlink:hover .linkCircle {
          background: #2b2117; }
  body .exampleBlock {
    background: #6b473f;
    display: block;
    color: #fff;
    position: relative; }
    body .exampleBlock .innerBlock {
      padding-bottom: 90px; }
      body .exampleBlock .innerBlock h2.ttl {
        text-align: center;
        font-size: 7em;
        opacity: 0.5;
        color: #fff;
        margin-top: 30px; }
      body .exampleBlock .innerBlock h3.ttl {
        text-align: center;
        margin-bottom: 30px;
        font-size: 2.5em;
        color: #fff;
        font-weight: 700; }
      body .exampleBlock .innerBlock .genreName {
        display: flex;
        flex-wrap: wrap;
        margin: 20px auto; }
        body .exampleBlock .innerBlock .genreName li {
          display: block;
          width: 32%;
          text-align: center;
          background: #2b2117;
          color: #fff;
          border-radius: 40px;
          padding: 15px;
          margin: 0.5%;
          font-size: 1.5em; }
      body .exampleBlock .innerBlock p.txt {
        text-align: center;
        color: #fff;
        margin-bottom: 30px;
        font-size: 1.3em;
        line-height: 1.4em; }
      body .exampleBlock .innerBlock p.addTxt {
        padding-top: 10px;
        text-align: right; }
      body .exampleBlock .innerBlock .shops {
        width: 80%;
        margin: 0 auto; }
        body .exampleBlock .innerBlock .shops .shopList {
          display: flex;
          flex-wrap: wrap;
          justify-content: space-between; }
          body .exampleBlock .innerBlock .shops .shopList li {
            width: 32.5%;
            position: relative;
            background: #000; }
            body .exampleBlock .innerBlock .shops .shopList li img {
              width: 100%;
              transition: 1s; }
            body .exampleBlock .innerBlock .shops .shopList li .whiteTtl {
              position: absolute;
              bottom: 0;
              text-align: center;
              left: 50%;
              top: 60%;
              transform: translate(-50%, -50%);
              z-index: 222;
              color: #fff;
              width: 100%;
              transition: 1s;
              opacity: 0;
              font-size: 2em; }
            body .exampleBlock .innerBlock .shops .shopList li .whiteEn {
              position: absolute;
              bottom: 0;
              text-align: right;
              right: 10px;
              z-index: 222;
              color: #fff;
              font-family: "Josefin Sans", sans-serif;
              font-size: 1.2em;
              transition: 1s;
              opacity: 0; }
      body .exampleBlock .innerBlock .atarimae {
        text-align: center;
        background-color: #2b2117;
        font-size: 1.5em;
        margin-top: 20px;
        padding-top: 15px;
        padding-bottom: 15px; }
    body .exampleBlock .sankaku {
      position: relative;
      width: 100%;
      overflow-x: clip; }
    body .exampleBlock .sankaku::after {
      content: "";
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 25vw 100vw 0 100vw;
      border-color: #6b473f transparent transparent transparent;
      position: absolute;
      left: 50%;
      transform: translateX(-50%);
      z-index: 333; }
  body .enterBlock {
    background: #edd9cd;
    padding-top: 25%;
    padding-bottom: 90px;
    display: block; }
    body .enterBlock .innerBlock {
      width: 80%;
      margin: 0 auto; }
      body .enterBlock .innerBlock h2.ttl {
        text-align: center;
        font-size: 7em;
        opacity: 0.5;
        color: #6b473f; }
      body .enterBlock .innerBlock h3.ttl {
        text-align: center;
        margin-bottom: 10px;
        font-size: 2.5em;
        color: #6b473f;
        font-weight: 700; }
        body .enterBlock .innerBlock h3.ttl span {
          font-size: 2em; }
      body .enterBlock .innerBlock .stepBox {
        background: #fff;
        border-radius: 10px;
        padding: 30px;
        position: relative; }
        body .enterBlock .innerBlock .stepBox .muryo {
          color: #fff;
          background: #6b473f;
          width: 180px;
          height: 180px;
          border-radius: 200px;
          text-align: center;
          position: absolute;
          left: calc(50% - 400px);
          top: -90px;
          box-sizing: border-box;
          padding-top: 30px; }
          body .enterBlock .innerBlock .stepBox .muryo .small {
            font-size: 1.3em;
            display: block; }
          body .enterBlock .innerBlock .stepBox .muryo .big {
            font-size: 3.5em;
            font-weight: 700; }
        body .enterBlock .innerBlock .stepBox .ttl {
          margin-bottom: 10px;
          text-align: center;
          font-size: 2.2em;
          font-weight: 700; }
        body .enterBlock .innerBlock .stepBox .txt {
          margin-bottom: 30px;
          text-align: center; }
        body .enterBlock .innerBlock .stepBox .addTxt {
          background: #2b2117;
          color: #fff;
          padding: 20px;
          font-size: 1.1em; }
        body .enterBlock .innerBlock .stepBox .linkStart {
          background: #fa4848;
          width: 100%;
          max-width: 768px;
          margin: 0 auto;
          display: block;
          padding: 20px;
          position: relative;
          text-align: center;
          transition: 1s; }
          body .enterBlock .innerBlock .stepBox .linkStart img.arrowRightIcon_w {
            width: 20px;
            position: absolute;
            right: 20px;
            top: 13px; }
          body .enterBlock .innerBlock .stepBox .linkStart p {
            font-size: 1.5em;
            font-weight: 700; }
        body .enterBlock .innerBlock .stepBox a.linkStart:hover {
          background: #bf0505; }
      body .enterBlock .innerBlock .stepBox + .stepBox {
        margin-top: 90px; }
  body .startBlock.thirdBlock {
    background-position: bottom; }
  body .priceBlock {
    display: block;
    background-color: #2b2117;
    margin-top: 60px; }
    body .priceBlock .innerBlock {
      width: 80%;
      margin: 0 auto;
      padding-bottom: 90px; }
      body .priceBlock .innerBlock h2.ttl {
        text-align: center;
        font-size: 7em;
        opacity: 0.5;
        color: #fff; }
      body .priceBlock .innerBlock h3.ttl {
        text-align: center;
        margin-bottom: 10px;
        font-size: 3.2em;
        color: #fff;
        font-weight: 900; }
        body .priceBlock .innerBlock h3.ttl span {
          font-size: 2em; }
      body .priceBlock .innerBlock .priceList {
        background: #2b2117;
        padding: 30px 30px 60px;
        position: relative;
        margin-bottom: 10px; }
        body .priceBlock .innerBlock .priceList .pricettl {
          font-size: 3em; }
          body .priceBlock .innerBlock .priceList .pricettl .mini {
            display: inline-block;
            font-size: 0.6em;
            width: 30%;
            font-weight: 700; }
          body .priceBlock .innerBlock .priceList .pricettl .centerLine {
            text-decoration: line-through; }
          body .priceBlock .innerBlock .priceList .pricettl .josef {
            font-size: 2em; }
        body .priceBlock .innerBlock .priceList .muryo {
          color: #fff;
          background: #6b473f;
          width: 180px;
          height: 180px;
          border-radius: 200px;
          text-align: center;
          position: absolute;
          right: 40px;
          top: -20px;
          box-sizing: border-box;
          padding-top: 30px;
          box-shadow: 10px 3px 10px rgba(0, 0, 0, 0.2); }
          body .priceBlock .innerBlock .priceList .muryo .small {
            font-size: 1.3em;
            display: block; }
          body .priceBlock .innerBlock .priceList .muryo .big {
            font-size: 3.5em;
            font-weight: 700; }
        body .priceBlock .innerBlock .priceList .champain {
          position: absolute;
          width: 100%;
          padding: 10px;
          color: #fa4848;
          background: #fff;
          text-align: center;
          bottom: 0;
          left: 0;
          font-size: 1.5em;
          font-weight: 700; }
          body .priceBlock .innerBlock .priceList .champain p {
            font-weight: 700; }
      body .priceBlock .innerBlock .addTxt {
        text-align: center;
        font-size: 1.2em;
        margin-top: 20px;
        line-height: 1.5em; }
      body .priceBlock .innerBlock .kouzaBlock {
        display: flex;
        align-items: center;
        padding-top: 40px;
        padding-left: 10%;
        padding-right: 10%; }
      body .priceBlock .innerBlock .inner {
        background-color: #fff;
        display: flex;
        align-items: center; }
      body .priceBlock .innerBlock .icon {
        width: 50%; }
      body .priceBlock .innerBlock .kouzaImage {
        width: 100%; }
      body .priceBlock .innerBlock .kouzaText {
        text-align: center;
        background-color: #fff;
        color: #000;
        width: 50%; }
        body .priceBlock .innerBlock .kouzaText h4 {
          font-size: 2em;
          font-weight: bold; }
        body .priceBlock .innerBlock .kouzaText p {
          padding-left: 5%;
          padding-right: 5%;
          margin-top: 1.5em;
          margin-bottom: 1.5em;
          font-size: 1.1em;
          line-height: 1.5em; }
        body .priceBlock .innerBlock .kouzaText .entryBox {
          background-color: #fa4848;
          height: 3em;
          font-size: 1.3em;
          margin: 0 auto;
          width: 80%;
          display: flex;
          align-items: center;
          justify-content: center;
          position: relative;
          font-weight: bold; }
          body .priceBlock .innerBlock .kouzaText .entryBox img.arrowRightIcon_w {
            width: 20px;
            position: absolute;
            right: 20px; }
  body .contactBlock .innerBlock {
    width: 80%;
    margin: 0 auto 90px; }
    body .contactBlock .innerBlock h2.ttl {
      opacity: 0.3;
      color: #aaa; }
    body .contactBlock .innerBlock h3.ttl {
      font-size: 3em;
      font-weight: bolder;
      margin-bottom: 30px; }
    body .contactBlock .innerBlock .switchBtn {
      display: flex;
      text-align: center;
      color: #fff;
      margin-bottom: 30px;
      font-size: 1.5em;
      font-weight: 700; }
      body .contactBlock .innerBlock .switchBtn .contactBtn {
        width: 50%;
        background: #aaa;
        padding: 20px;
        position: relative;
        transition: 1s;
        cursor: pointer; }
      body .contactBlock .innerBlock .switchBtn .contactBtn:hover {
        background: #2b2117;
        opacity: 0.5; }
      body .contactBlock .innerBlock .switchBtn .contactBtn.on {
        background: #6b473f; }
      body .contactBlock .innerBlock .switchBtn .contactBtn.on::after {
        content: "";
        transition: 1s;
        position: absolute;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 20px 20px 0 20px;
        left: 50%;
        bottom: -20px;
        transform: translateX(-50%);
        border-style: solid;
        border-color: #6b473f transparent transparent transparent; }
    body .contactBlock .innerBlock .mailBox {
      display: none; }
      body .contactBlock .innerBlock .mailBox p.txt {
        text-align: center; }
      body .contactBlock .innerBlock .mailBox .button {
        display: block;
        margin: 30px auto 30px;
        background: #6b473f;
        color: #fff;
        text-align: center;
        padding: 20px;
        width: 60%;
        font-size: 1.2em;
        transition: 1s;
        cursor: pointer; }
      body .contactBlock .innerBlock .mailBox .button.on {
        background: #2b2117; }
      body .contactBlock .innerBlock .mailBox .button:hover {
        background: #2b2117;
        opacity: 0.3; }
    body .contactBlock .innerBlock .mailBox.on {
      display: block; }
    body .contactBlock .innerBlock form {
      display: none; }
      body .contactBlock .innerBlock form .categoryList {
        margin-bottom: 20px;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between; }
        body .contactBlock .innerBlock form .categoryList input {
          display: none; }
        body .contactBlock .innerBlock form .categoryList label.category {
          padding: 20px;
          border-radius: 30px;
          text-align: center;
          color: #fff;
          background: #ccc;
          display: inline-block;
          margin-bottom: 10px;
          color: #fff;
          text-align: center;
          font-weight: 700;
          font-size: 1.2em;
          transition: 1s;
          cursor: pointer; }
        body .contactBlock .innerBlock form .categoryList input[type="radio"]:checked + label.category {
          background: #6b473f; }
      body .contactBlock .innerBlock form .txtLabelBox {
        display: flex;
        font-size: 1.2em;
        margin-bottom: 10px; }
        body .contactBlock .innerBlock form .txtLabelBox label {
          display: inline-block;
          width: 40%;
          vertical-align: top; }
          body .contactBlock .innerBlock form .txtLabelBox label span.red {
            color: #bf0505;
            font-size: 0.7em; }
        body .contactBlock .innerBlock form .txtLabelBox input {
          display: inline-block;
          background: #e6e6e6;
          border: none;
          width: 60%;
          padding: 15px; }
        body .contactBlock .innerBlock form .txtLabelBox .message {
          display: inline-block;
          background: #e6e6e6;
          width: 60%;
          padding: 15px;
          height: 120px;
          border: none; }
      body .contactBlock .innerBlock form .privcheckbox span {
        color: #2b2117;
        text-decoration: underline;
        cursor: pointer;
        transition: 1s; }
      body .contactBlock .innerBlock form .privcheckbox span:hover {
        color: #bf0505; }
      body .contactBlock .innerBlock form .privcheckbox::before {
        content: "";
        width: 20px;
        height: 20px;
        border: 1px solid #474747;
        display: inline-block;
        vertical-align: text-bottom;
        margin-right: 5px;
        cursor: pointer;
        transition: 1s; }
      body .contactBlock .innerBlock form input[type="checkbox"]:checked + .privcheckbox::before {
        content: url("../../imgHtml/pro/check.svg");
        transition: 1s; }
      body .contactBlock .innerBlock form .button {
        display: block;
        margin: 30px auto 30px;
        background: #e6e6e6;
        color: #fff;
        text-align: center;
        padding: 20px;
        width: 60%;
        font-size: 1.2em;
        transition: 1s;
        cursor: not-allowed; }
      body .contactBlock .innerBlock form .button.on {
        background: #6b473f;
        cursor: pointer; }
      body .contactBlock .innerBlock form .button:hover {
        background: #6b473f;
        opacity: 0.3; }
      body .contactBlock .innerBlock form .infobox {
        border: 2px solid #bf0505;
        padding: 10px 30px;
        width: 80%;
        margin: 30px auto 0;
        opacity: 0; }
        body .contactBlock .innerBlock form .infobox p.red {
          color: #bf0505; }
        body .contactBlock .innerBlock form .infobox .japaneseError {
          height: 0px;
          opacity: 0; }
        body .contactBlock .innerBlock form .infobox .emptyError {
          height: 0px;
          opacity: 0; }
        body .contactBlock .innerBlock form .infobox .phpError {
          height: 0px;
          opacity: 0; }
        body .contactBlock .innerBlock form .infobox .on {
          height: auto;
          opacity: 100; }
      body .contactBlock .innerBlock form .on {
        opacity: 100; }
    body .contactBlock .innerBlock form.on {
      display: block; }
  body .fixedContent {
    opacity: 0;
    pointer-events: none;
    transition: 1s;
    position: fixed;
    right: -210px;
    bottom: 160px;
    z-index: 1000; }
    body .fixedContent a {
      background: #fa4848;
      color: #fff;
      position: relative;
      display: block;
      width: 210px;
      padding: 30px 20px;
      height: 100%;
      border-top-left-radius: 10px;
      border-bottom-left-radius: 10px;
      box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.4); }
      body .fixedContent a h2 {
        position: relative;
        z-index: 1000;
        font-size: 1em; }
        body .fixedContent a h2 span.normal {
          font-size: 1.1em;
          display: block;
          font-weight: 700; }
        body .fixedContent a h2 span.big {
          font-size: 3em;
          display: block;
          font-weight: 700;
          margin-bottom: 5px; }
        body .fixedContent a h2 span.small {
          font-size: 0.7em;
          display: block;
          font-weight: 700; }
      body .fixedContent a .arrowRightIcon_w {
        z-index: 1000;
        position: absolute;
        left: 80px;
        top: 130px; }
      body .fixedContent a .smartphone_man {
        position: absolute;
        bottom: -1px;
        right: 0; }
  body .fixedContent.fixed {
    opacity: 1;
    right: 0;
    pointer-events: all; }
  body footer {
    background: #edd9cd; }
    body footer .innerBlock {
      width: 960px;
      margin: 0 auto;
      position: relative; }
      body footer .innerBlock a.topLink {
        display: block;
        margin: 0 auto;
        padding: 20px;
        text-align: center;
        cursor: pointer; }
        body footer .innerBlock a.topLink img {
          width: 300px; }
      body footer .innerBlock ul.footLinks {
        padding: 20px 0 60px;
        display: flex;
        width: 60%;
        margin: 0 auto;
        text-align: center;
        flex-wrap: wrap;
        justify-content: center;
        cursor: pointer; }
        body footer .innerBlock ul.footLinks li {
          display: block; }
          body footer .innerBlock ul.footLinks li a {
            color: #000;
            padding: 15px;
            display: block;
            transition: 1s; }
        body footer .innerBlock ul.footLinks li:hover {
          cursor: pointer; }
          body footer .innerBlock ul.footLinks li:hover a {
            background: #6b473f; }
      body footer .innerBlock .outLink {
        color: #2b2117;
        text-align: right;
        position: absolute;
        bottom: 10px;
        right: 20px;
        transition: 1s; }
        body footer .innerBlock .outLink .linkCircle {
          background: #2b2117;
          border-radius: 50px;
          width: 50px;
          height: 50px;
          display: inline-block;
          padding: 10px 13px 10px 10px;
          vertical-align: middle;
          margin-left: 10px; }
          body footer .innerBlock .outLink .linkCircle img {
            display: inline-block;
            width: 18px; }
      body footer .innerBlock .outLink:hover {
        color: #a07821; }
    body footer h6.copy {
      width: 100%;
      padding: 20px;
      color: #fff;
      text-align: center;
      background: #2b2117; }
  body .sendMessage {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1030;
    display: none;
    opacity: 0; }
    body .sendMessage .skyBack {
      background: rgba(86, 193, 225, 0.7);
      width: 100%;
      height: 100%;
      position: fixed;
      z-index: 10001;
      top: 0;
      left: 0;
      cursor: pointer; }
    body .sendMessage .innerBlock {
      width: 80%;
      height: auto;
      background: #fff;
      padding: 30px;
      z-index: 10040;
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);
      padding: 30px;
      text-align: center; }
      body .sendMessage .innerBlock .paper-plane-solid {
        width: 80px;
        margin-bottom: 20px; }
      body .sendMessage .innerBlock h2.ttl {
        font-size: 2em;
        margin-bottom: 30px; }
      body .sendMessage .innerBlock .button {
        display: block;
        margin: 30px auto 0;
        background: #6b473f;
        color: #fff;
        text-align: center;
        padding: 20px;
        width: 60%;
        font-size: 1.2em;
        transition: 1s;
        cursor: pointer; }
      body .sendMessage .innerBlock .button:hover {
        background: #2b2117;
        opacity: 0.3; }
  body .sendMessage.on {
    display: block;
    opacity: 100; }

/*modal*/
body.mainPage.fixed {
  overflow: hidden; }

.js-modal-open {
  cursor: pointer; }

.modal {
  display: none;
  height: 100vh;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1000; }

.modal__bg {
  background: rgba(0, 0, 0, 0.8);
  height: 100vh;
  position: absolute;
  width: 100%;
  cursor: pointer; }

.modal__content {
  background: #fff;
  left: 50%;
  padding: 40px;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 60%;
  height: 90%;
  overflow: scroll; }
  .modal__content h2 {
    text-align: center;
    margin-bottom: 30px;
    font-size: 1.5em; }
  .modal__content h3 {
    font-weight: bold;
    margin-top: 30px;
    font-size: 1.2em; }
  .modal__content p {
    text-align: justify;
    line-height: 1.5em; }
  .modal__content ol {
    list-style: auto; }
    .modal__content ol li {
      margin-left: 20px; }
  .modal__content ul {
    list-style: unset; }
    .modal__content ul li {
      margin-left: 20px; }
  .modal__content .mailBtn {
    color: #6b473f;
    text-decoration: underline; }
  .modal__content .js-modal-close {
    display: block;
    margin: 30px auto 0;
    background: #6b473f;
    color: #fff;
    text-align: center;
    padding: 20px;
    width: 60%;
    font-size: 1.2em;
    transition: 1s;
    cursor: pointer; }

@media screen and (max-width: 960px) {
  body {
    /*mainBlock*/
    /*loginBlock*/
    /*aboutBlock*/
    /*surviceBlock*/
    /*pointBlock*/
    /*startBlock*/
    /*reasonsBlock*/
    /*faqBlock*/
    /*exampleBlock*/
    /*enterBlock*/
    /*priceBlock*/
    /*contactBlock*/
    /*footer*/
    /*modal*/ }
    body header.headerBlock.fixed .innerBlock a.loginLink {
      display: block; }
      body header.headerBlock.fixed .innerBlock a.loginLink .logSvg {
        width: 30px; }
      body header.headerBlock.fixed .innerBlock a.loginLink .arrowRightIcon_w {
        width: 10px;
        top: 14px; }
    body .mainBlock .innerBlock h1.mainTtl {
      font-size: 2.8em; }
      body .mainBlock .innerBlock h1.mainTtl br.pc {
        display: none; }
      body .mainBlock .innerBlock h1.mainTtl br.sp {
        display: block; }
    body .mainBlock .innerBlock h2.mainTxt {
      font-size: 1.7em;
      line-height: 1.8em; }
      body .mainBlock .innerBlock h2.mainTxt br.pc {
        display: none; }
      body .mainBlock .innerBlock h2.mainTxt br.sp {
        display: block; }
    body .loginBlock .innerBlock .flexBox {
      display: block; }
      body .loginBlock .innerBlock .flexBox a.loginLink {
        width: 70%;
        margin: 0 auto 10px; }
        body .loginBlock .innerBlock .flexBox a.loginLink p.ttl {
          padding: 0 70px;
          font-size: 2.3em; }
    body .aboutBlock .sankaku::after {
      border-width: 140px 100% 0 100%; }
    body .aboutBlock .innerBlock h4 {
      line-height: 2em;
      font-size: 1.7em; }
    body .aboutBlock .innerBlock .caseBox {
      display: block; }
      body .aboutBlock .innerBlock .caseBox .box {
        width: 80%;
        min-height: 900px;
        max-height: none;
        margin: 0 auto 100px;
        padding-bottom: 100px; }
        body .aboutBlock .innerBlock .caseBox .box .casettl {
          font-size: 4em;
          top: -100px; }
        body .aboutBlock .innerBlock .caseBox .box .subttl {
          font-size: 3em;
          margin-bottom: 0;
          line-height: 1.5em; }
        body .aboutBlock .innerBlock .caseBox .box .txt {
          font-size: 1.8em; }
        body .aboutBlock .innerBlock .caseBox .box img {
          position: absolute; }
      body .aboutBlock .innerBlock .caseBox .hasami .subttl {
        bottom: 44%; }
    body .aboutBlock .innerBlock .caseBox2 {
      display: block; }
      body .aboutBlock .innerBlock .caseBox2 .box {
        width: 80%;
        min-height: 830px;
        max-height: none;
        margin: 0 auto 100px;
        padding-bottom: 0; }
        body .aboutBlock .innerBlock .caseBox2 .box img {
          position: absolute; }
        body .aboutBlock .innerBlock .caseBox2 .box .casettl {
          font-size: 4em;
          top: -100px; }
        body .aboutBlock .innerBlock .caseBox2 .box .subttl {
          font-size: 3em;
          margin-bottom: 0;
          bottom: auto;
          top: 470px;
          line-height: 1.5em; }
        body .aboutBlock .innerBlock .caseBox2 .box .txt {
          font-size: 1.8em; }
      body .aboutBlock .innerBlock .caseBox2 .box.one {
        height: 870px;
        overflow: hidden;
        min-height: auto; }
      body .aboutBlock .innerBlock .caseBox2 .box.four {
        height: 900px;
        overflow: hidden;
        min-height: auto; }
        body .aboutBlock .innerBlock .caseBox2 .box.four .subttl {
          top: 530px; }
      body .aboutBlock .innerBlock .caseBox2 .box.five {
        height: 900px;
        overflow: hidden;
        min-height: auto; }
    body .aboutBlock .innerBlock .confuseBox h2.ttl {
      font-size: 5em;
      top: 30px; }
    body .aboutBlock .innerBlock .confuseBox h5 {
      font-size: 2em; }
    body .aboutBlock .innerBlock .confuseBox .confuseImg {
      right: calc(50% - 415px); }
    body .aboutBlock .innerBlock .confuseBox .guruguru {
      right: calc(50% - 460px);
      top: -20px; }
    body .surviceBlock .innerBlock h2.special {
      width: 100%;
      font-size: 2em; }
    body .surviceBlock .innerBlock h2.ttl {
      margin-top: 57px; }
    body .surviceBlock .innerBlock h3.ttl {
      font-size: 4em; }
    body .surviceBlock .innerBlock h4.blueLine {
      width: 60%;
      font-size: 2em; }
    body .surviceBlock .innerBlock .bikou {
      width: 90%;
      font-size: 1.7em; }
    body .surviceBlock .innerBlock > .flexBox {
      display: block; }
      body .surviceBlock .innerBlock > .flexBox .leftBox {
        width: 80%;
        margin: 0 auto; }
      body .surviceBlock .innerBlock > .flexBox .rightBox {
        width: 100%; }
        body .surviceBlock .innerBlock > .flexBox .rightBox .ttl {
          font-size: 2.5em;
          background: #6b473f;
          padding: 16px;
          color: #fff;
          text-align: center; }
        body .surviceBlock .innerBlock > .flexBox .rightBox .txt {
          font-size: 1.8em; }
    body .surviceBlock .innerBlock > .shasen .flexBox {
      display: block; }
      body .surviceBlock .innerBlock > .shasen .flexBox .leftBox {
        width: 80%;
        margin: 0 auto; }
      body .surviceBlock .innerBlock > .shasen .flexBox .rightBox {
        width: 100%; }
        body .surviceBlock .innerBlock > .shasen .flexBox .rightBox .ttl {
          font-size: 2.5em;
          background: #6b473f;
          padding: 16px;
          color: #fff;
          text-align: center; }
        body .surviceBlock .innerBlock > .shasen .flexBox .rightBox .txt {
          font-size: 1.8em; }
    body .pointBlock .innerBlock h2.ttl {
      font-size: 10em;
      text-align: center;
      top: 3%;
      left: 21%; }
    body .pointBlock .innerBlock h3.ttl {
      margin-bottom: 80px;
      font-size: 2.5em;
      margin-top: 90px; }
      body .pointBlock .innerBlock h3.ttl span {
        font-size: 2em;
        font-weight: bold; }
    body .pointBlock .innerBlock .smileGirls {
      position: relative;
      width: 100%;
      height: auto; }
    body .pointBlock .innerBlock .pointTxt li {
      font-size: 2em; }
    body .pointBlock .innerBlock .imgBox {
      background: #fff;
      width: 100%;
      height: auto;
      position: relative; }
    body .startBlock .innerBlock a.linkStart p {
      font-size: 2.2em; }
    body .startBlock .innerBlock a.linkStart img {
      top: 25px; }
    body .reasonsBlock .innerBlock h3.ttl {
      font-size: 4em; }
    body .reasonsBlock .innerBlock h4.blueLine {
      width: 70%;
      font-size: 2em; }
    body .reasonsBlock .innerBlock .reasonBox {
      display: block;
      margin-top: 100px; }
      body .reasonsBlock .innerBlock .reasonBox h6.josef {
        top: -70px;
        font-size: 7em;
        opacity: 0.7;
        left: 50%;
        transform: translateX(-50%);
        width: auto;
        right: auto; }
      body .reasonsBlock .innerBlock .reasonBox .leftBox {
        width: 100%; }
      body .reasonsBlock .innerBlock .reasonBox .rightBox {
        width: 90%;
        margin: -20px auto 30px;
        padding: 0; }
        body .reasonsBlock .innerBlock .reasonBox .rightBox .ttl {
          font-size: 3em;
          text-align: center;
          margin-top: 60px; }
        body .reasonsBlock .innerBlock .reasonBox .rightBox .txt {
          font-size: 1.7em; }
        body .reasonsBlock .innerBlock .reasonBox .rightBox .roundIconBlock .inner {
          height: auto; }
          body .reasonsBlock .innerBlock .reasonBox .rightBox .roundIconBlock .inner .icon {
            height: 120px;
            width: 100%;
            left: 0;
            top: 0; }
          body .reasonsBlock .innerBlock .reasonBox .rightBox .roundIconBlock .inner .money {
            margin-left: 0px; }
          body .reasonsBlock .innerBlock .reasonBox .rightBox .roundIconBlock .inner .text {
            font-size: 1.5em;
            margin-left: -15%; }
    body .faqBlock .innerBlock h3.ttl {
      font-size: 4em; }
    body .faqBlock .innerBlock .qaBlock .sumTtl {
      font-size: 2em;
      line-height: 1.7em; }
    body .faqBlock .innerBlock .qaBlock .sumTtl::before {
      left: 20px; }
    body .faqBlock .innerBlock .qaBlock .detailcontainer .ttl {
      font-size: 2em; }
    body .faqBlock .innerBlock .qaBlock .detailcontainer .txt {
      font-size: 1.5em; }
    body .faqBlock .innerBlock .linkA .outlink p {
      font-size: 1.5em; }
    body .exampleBlock .sankaku::after {
      border-width: 140px 100% 0 100%; }
    body .exampleBlock .innerBlock h3.ttl {
      font-size: 3.5em; }
    body .exampleBlock .innerBlock p.txt {
      font-size: 2em;
      line-height: 1.5em; }
    body .exampleBlock .innerBlock p.addTxt {
      font-size: 1em; }
    body .exampleBlock .innerBlock .genreName li {
      width: 49%; }
    body .enterBlock .innerBlock .stepBox .ttl {
      font-size: 2.7em;
      margin-left: 80px; }
    body .enterBlock .innerBlock .stepBox .txt {
      font-size: 1.7em; }
    body .enterBlock .innerBlock .stepBox .linkStart {
      font-size: 1.7em; }
      body .enterBlock .innerBlock .stepBox .linkStart img.arrowRightIcon_w {
        top: 20px; }
    body .priceBlock .innerBlock .addTxt {
      font-size: 1.8em;
      line-height: 1.8em;
      margin-top: 40px;
      margin-bottom: 30px; }
    body .priceBlock .innerBlock .kouzaBlock {
      display: flex;
      align-items: center;
      padding-top: 40px;
      padding-left: 0px;
      padding-right: 0px; }
      body .priceBlock .innerBlock .kouzaBlock .kouzaText {
        text-align: center;
        background-color: #fff;
        color: #000;
        width: 50%; }
        body .priceBlock .innerBlock .kouzaBlock .kouzaText h4 {
          font-size: 2em; }
        body .priceBlock .innerBlock .kouzaBlock .kouzaText p {
          padding-left: 5%;
          padding-right: 5%;
          margin-top: 1.5em;
          margin-bottom: 1.5em;
          font-size: 1.3em;
          line-height: 1.5em; }
        body .priceBlock .innerBlock .kouzaBlock .kouzaText .entryBox {
          background-color: #fa4848;
          height: 3em;
          font-size: 1.6em;
          margin: 0 auto;
          width: 80%;
          display: flex;
          align-items: center;
          justify-content: center;
          position: relative; }
          body .priceBlock .innerBlock .kouzaBlock .kouzaText .entryBox img.arrowRightIcon_w {
            width: 20px;
            position: absolute;
            right: 20px; }
    body .contactBlock .innerBlock form .categoryList label.category {
      width: 49%; }
    body .contactBlock .innerBlock form .txtLabelBox {
      display: block; }
      body .contactBlock .innerBlock form .txtLabelBox label {
        width: 100%;
        font-size: 1.5em;
        padding-bottom: 10px; }
      body .contactBlock .innerBlock form .txtLabelBox input {
        width: 100%;
        font-size: 1.8em;
        margin-bottom: 20px; }
      body .contactBlock .innerBlock form .txtLabelBox .message {
        width: 100%;
        font-size: 1.5em;
        height: 200px; }
    body .contactBlock .innerBlock form .privcheckbox {
      font-size: 2em; }
    body .contactBlock .innerBlock form .privcheckbox::before {
      width: 40px;
      height: 40px;
      margin-right: 10px; }
    body .contactBlock .innerBlock form .infobox {
      font-size: 1.5em; }
    body footer .innerBlock a.topLink img {
      width: 600px;
      padding: 50px 50px 20px; }
    body footer .innerBlock ul.footLinks {
      display: block;
      margin: 0 auto 40px; }
      body footer .innerBlock ul.footLinks li {
        margin-bottom: 20px; }
        body footer .innerBlock ul.footLinks li a {
          font-size: 1.5em;
          background: #6b473f;
          color: #fff;
          border-radius: 30px;
          padding: 20px; }
    body footer .innerBlock .outLink {
      font-size: 1.5em;
      bottom: -10px; }
    body footer h6.copy {
      font-size: 1.5em; }
    body .modal {
      height: 100%;
      font-size: 1.5em; }
      body .modal .modal__bg {
        height: 100%; }
      body .modal .modal__content {
        width: 80%; } }
@media screen and (max-width: 768px) {
  body {
    /*aboutBlock*/ }
    body .scroll-fade {
      opacity: 1;
      transform: translate(0, 0); }
    body .scroll-up {
      opacity: 1;
      transform: translate(0, 0); }
    body .scroll-fade-row > div {
      opacity: 1;
      transform: translate(0, 0); }
    body .scroll-fade-row > li {
      opacity: 1;
      transform: translate(0, 0); }
    body .aboutBlock .innerBlock .caseBox.scroll-fade-row {
      opacity: 1;
      transform: translate(0, 0); }
      body .aboutBlock .innerBlock .caseBox.scroll-fade-row .box {
        opacity: 1;
        transform: translate(0, 0); }
    body .aboutBlock .innerBlock .caseBox2.scroll-fade-row {
      opacity: 1;
      transform: translate(0, 0); }
      body .aboutBlock .innerBlock .caseBox2.scroll-fade-row .box {
        opacity: 1;
        transform: translate(0, 0); } }
