@charset "UTF-8";
/* Scss Document */
/* ---カラー指定
-------------------------------------------*/
/* --- アイコンフォント
-------------------------------------------*/
.icon-arrow:after {
  position: absolute;
  right: 1vw;
  top: 50%;
  transform: translateY(-50%) translateX(0);
  content: '\f054';
  /*display: block;*/
  font-family: "font Awesome 5 Free";
  font-weight: 900; }

/* --- PC/SP　メディアクエリ
-------------------------------------------*/
/* ---スマホ用フォントサイズ
-------------------------------------------*/
body, h2, h3, h4 a {
  font-size: 11px;
  font-size: 3.4375vw;
  line-height: 160%;
  color: #2f2725; }
  @media screen and (min-width: 751px) {
    body, h2, h3, h4 a {
      font-size: 1.6rem;
      line-height: 180%; } }

body a {
  font-size: 11px;
  font-size: 3.4375vw;
  color: #2f2725;
  z-index: 100; }
  @media screen and (min-width: 751px) {
    body a {
      font-size: 1.6rem; } }

/* --- @mixin Flex
-------------------------------------------*/
.flex-wrap {
  display: flex;
  justify-content: space-between; }

/* --- @mixin kado
-------------------------------------------*/
/* --- @mixin box-center
-------------------------------------------*/
/* ---wrapper
-------------------------------------------*/
body {
  background: #fffdf4; }

p {
  letter-spacing: 0.25rem;
  line-height: 2; }
  @media screen and (max-width: 750px) {
    p {
      letter-spacing: 0;
      line-height: 1.8; } }

.wrapper {
  max-width: 1360px;
  margin-left: auto;
  margin-right: auto; }
  @media screen and (max-width: 750px) {
    .wrapper {
      padding-left: 6.4%;
      padding-right: 6.4%; } }

.t_orange {
  color: #ff5326; }

/* ---fv
-------------------------------------------*/
.fv {
  max-width: 1536px;
  margin-left: auto;
  margin-right: auto; }
  .fv__main {
    background: url("../_img/fv_pic.jpg") no-repeat center top;
    background-size: cover; }
    @media screen and (min-width: 751px) {
      .fv__main {
        padding: 250px 0 100px; } }
    @media screen and (max-width: 750px) {
      .fv__main {
        position: relative;
        width: 100%;
        height: 85vh;
        background: url("../_img/fv_pic-sp.jpg") no-repeat 95% top;
        background-size: cover;
        padding: 0; } }
  @media screen and (min-width: 751px) {
    .fv__main__tl {
      max-width: 1140px;
      margin-left: auto;
      margin-right: auto; } }
  @media screen and (max-width: 750px) {
    .fv__main__tl {
      position: absolute;
      width: 86%;
      max-width: 654px;
      top: 40.5vw;
      left: 50%;
      transform: translateX(-50%);
      z-index: 3; } }
  @media screen and (max-width: 375px) {
    .fv__main__tl {
      top: 24.5vw; } }
  .fv__lead {
    position: relative;
    width: 100%;
    z-index: 2; }
    @media screen and (min-width: 751px) {
      .fv__lead {
        height: 348px;
        height: 24vw;
        margin-top: -100px; } }
    @media screen and (max-width: 750px) {
      .fv__lead {
        position: relative;
        height: 16vh;
        padding-bottom: 2vw;
        background: #ff5326; } }
  .fv__lead-txt {
    position: absolute;
    z-index: 10; }
    @media screen and (min-width: 751px) {
      .fv__lead-txt {
        width: 65%;
        max-width: 780px;
        left: calc(50% - 300px);
        bottom: 4.56vw; } }
    @media screen and (max-width: 750px) {
      .fv__lead-txt {
        width: 80%;
        top: -10vh;
        left: 50%;
        transform: translateX(-50%); } }
  .fv__lead-base {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3; }
    @media screen and (max-width: 750px) {
      .fv__lead-base {
        top: -10vh; } }

/* ---intro
-------------------------------------------*/
.intro {
  position: relative;
  padding: 70px 0 60px;
  max-width: 950px;
  margin-left: auto;
  margin-right: auto; }
  @media screen and (max-width: 750px) {
    .intro {
      padding: 15vw 0 7vw; } }
  .intro__txt {
    margin-bottom: 2rem;
    text-align: center;
    font-size: 2.5rem; }
    @media screen and (max-width: 750px) {
      .intro__txt {
        font-size: 12px;
        font-size: 3.75vw;
        margin-bottom: 1.5rem; } }
  .intro__img01 {
    position: absolute;
    width: 100%;
    max-width: 949px;
    top: -50px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2; }
  .intro__img02 {
    max-width: 347px; }
    @media screen and (min-width: 751px) {
      .intro__img02 {
        position: absolute;
        max-width: 347px;
        right: 0;
        bottom: 0; } }
    @media screen and (min-width: 1360px) {
      .intro__img02 {
        right: -80px; } }
    @media screen and (max-width: 750px) {
      .intro__img02 {
        display: block;
        margin-left: 8vw;
        width: 92%; } }
  .intro__img-ill img {
    position: absolute; }
  .intro__img-ill img:nth-of-type(1) {
    width: 40%;
    top: -7vw;
    left: 1vw;
    z-index: 10; }
  .intro__img-ill img:nth-of-type(2) {
    width: 13.33%;
    top: 74vw;
    right: 1.5vw;
    z-index: 10; }
  .intro__img-ill img:nth-of-type(3) {
    width: 26%;
    bottom: 14vw;
    left: 1vw;
    z-index: 10; }

@media screen and (min-width: 751px) {
  .intro .normal-btn {
    margin-top: 60px;
    margin-bottom: 160px; } }
@media screen and (max-width: 750px) {
  .intro .normal-btn {
    margin-top: 10vw;
    margin-bottom: 8vw; } }

/* ---normal-btn
-------------------------------------------*/
.normal-btn {
  text-align: center; }
  .normal-btn__inner {
    position: relative;
    display: inline-block;
    padding: 20px 80px;
    background: #2f2725;
    color: #fff;
    line-height: 1;
    border-radius: 50px; }
    @media screen and (max-width: 750px) {
      .normal-btn__inner {
        width: 78%;
        padding: 20px;
        box-sizing: border-box; } }
  .normal-btn__inner::after {
    content: url("../_img/icon_link.png");
    width: 20px;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%); }

.normal-btn a {
  font-size: 1.6rem;
  letter-spacing: .25rem; }
  @media screen and (max-width: 750px) {
    .normal-btn a {
      font-size: 11px;
      font-size: 3.4375vw; } }

/* ---sauna-menu
-------------------------------------------*/
.sauna-menu {
  max-width: 1153px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 70px; }
  @media screen and (max-width: 750px) {
    .sauna-menu {
      position: relative;
      margin-top: -26vw;
      padding-top: 10vw;
      background: #fff; } }
  .sauna-menu__base {
    position: relative;
    margin-left: auto;
    margin-right: auto; }
    @media screen and (max-width: 750px) {
      .sauna-menu__base {
        width: 90%; } }
  .sauna-menu__btn {
    position: absolute;
    display: block;
    max-width: 126px; }
    @media screen and (min-width: 751px) {
      .sauna-menu__btn {
        width: 10.93%; } }
    @media screen and (max-width: 750px) {
      .sauna-menu__btn {
        width: 20%;
        left: 50%;
        transform: translateX(-50%); } }
  @media screen and (min-width: 751px) {
    .sauna-menu__btn:nth-of-type(1) {
      bottom: 24.28vw;
      right: 16.48vw; }
    .sauna-menu__btn:nth-of-type(2) {
      bottom: 10.41vw;
      right: 43.37vw; }
    .sauna-menu__btn:nth-of-type(3) {
      bottom: 27.75vw;
      left: 19.08vw; } }
  @media screen and (min-width: 1153px) {
    .sauna-menu__btn:nth-of-type(1) {
      bottom: 280px;
      right: 190px; }
    .sauna-menu__btn:nth-of-type(2) {
      bottom: 120px;
      right: 500px; }
    .sauna-menu__btn:nth-of-type(3) {
      bottom: 320px;
      left: 220px; } }
  @media screen and (max-width: 750px) {
    .sauna-menu__btn:nth-of-type(1) {
      top: 54.4vw; }
    .sauna-menu__btn:nth-of-type(2) {
      top: 118vw; }
    .sauna-menu__btn:nth-of-type(3) {
      bottom: 26vw; } }

/* --- amami
-------------------------------------------*/
.amami {
  padding: 85px 0 70px;
  background: url("../_img/amami_bg.jpg") no-repeat center bottom;
  background-size: cover; }
  @media screen and (max-width: 750px) {
    .amami {
      padding: 7.7vw 0 10vw;
      padding-left: 6.4%;
      padding-right: 6.4%; } }
  .amami__inner {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto; }
  .amami__tl {
    max-width: 785px;
    margin-bottom: 60px;
    text-align: center; }
    @media screen and (min-width: 751px) {
      .amami__tl {
        margin-left: 18vw; } }
    @media screen and (max-width: 750px) {
      .amami__tl {
        margin-bottom: 4vw; } }
  .amami__pic {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 30px; }
    .amami__pic li {
      width: 49.5%;
      margin-bottom: .4vw; }
      @media screen and (max-width: 750px) {
        .amami__pic li {
          width: 100%;
          margin-bottom: 3vw; } }
  .amami__name {
    font-size: 2.6rem;
    text-align: center; }
    @media screen and (max-width: 750px) {
      .amami__name {
        font-size: 14px;
        font-size: 4.375vw; } }
  .amami__address {
    margin-bottom: 50px;
    font-size: 1.5rem;
    text-align: center;
    font-weight: 500; }
    @media screen and (max-width: 750px) {
      .amami__address {
        margin-bottom: 10vw;
        font-size: 12px;
        font-size: 3.75vw; } }

/* ---business
-------------------------------------------*/
.business {
  padding-top: 56px;
  background: #ff5326; }
  @media screen and (max-width: 750px) {
    .business {
      padding-top: 10vw; } }
  .business__inner {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto; }
  .business__tl {
    color: #fff;
    text-align: center;
    margin-bottom: 50px;
    font-size: 4.2rem;
    letter-spacing: .5rem; }
    @media screen and (max-width: 750px) {
      .business__tl {
        margin-bottom: 8vw;
        font-size: 18px;
        font-size: 5.625vw; } }
  @media screen and (min-width: 751px) {
    .business__box {
      display: flex; } }
  .business__box__txt {
    flex: 1;
    padding-bottom: 60px;
    font-size: 2.6rem; }
    @media screen and (max-width: 750px) {
      .business__box__txt {
        padding-bottom: 7vw;
        font-size: 14px;
        font-size: 4.375vw;
        text-align: center; } }
  .business__box__ill {
    position: relative; }
    @media screen and (min-width: 751px) {
      .business__box__ill {
        width: 64%; } }
    @media screen and (min-width: 751px) {
      .business__box__ill img {
        position: absolute;
        right: 0;
        bottom: -50px;
        z-index: 5; } }
    @media screen and (max-width: 750px) {
      .business__box__ill img {
        position: relative;
        bottom: -7vw; } }
  .business__box__profile {
    text-align: center;
    font-size: 13px;
    font-size: 4.0625vw; }
  .business__box__profile-com {
    display: block;
    text-align: center;
    font-size: 10px;
    font-size: 3.125vw; }

/* ---test
-------------------------------------------*/
.test {
  padding-top: 80px;
  padding-bottom: 100px; }
  @media screen and (max-width: 750px) {
    .test {
      padding: 14vw 0; } }
  .test__tl {
    text-align: center;
    margin-bottom: 50px;
    font-size: 4.2rem;
    letter-spacing: .5rem; }
    @media screen and (max-width: 750px) {
      .test__tl {
        margin-bottom: 8vw;
        font-size: 16px;
        font-size: 5vw; } }
  .test__contents {
    max-width: 1100px;
    margin-left: auto;
    margin-right: auto; }
    .test__contents img {
      position: relative;
      z-index: 20; }
      @media screen and (min-width: 751px) {
        .test__contents img {
          margin-left: -30px; } }
  .test__contents-sp {
    position: relative;
    width: 100%;
    height: 400vw;
    margin-left: auto;
    margin-right: auto; }
  .test__contents-sp__wrapp {
    position: absolute;
    width: 94%;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1; }
  .test__contents-sp__pen {
    position: absolute;
    width: 71.6%;
    bottom: -10vw;
    left: 0;
    z-index: 4; }
  .test__contents-sp__inner {
    position: absolute;
    width: 86%;
    top: 9vw;
    left: 7%;
    margin-left: auto;
    margin-right: auto;
    overflow: scroll;
    z-index: 2;
    height: 360vw; }
    @media screen and (max-width: 375px) {
      .test__contents-sp__inner {
        height: 360vw; } }
  .test__contents-sp__inner img {
    width: auto; }

/* ---sns
-------------------------------------------*/
.sns {
  padding-top: 100px;
  padding-bottom: 55px; }
  @media screen and (max-width: 750px) {
    .sns {
      padding-top: 6vw;
      padding-bottom: 10vw; } }
  .sns__inner {
    max-width: 833px;
    margin-left: auto;
    margin-right: auto; }
    @media screen and (max-width: 750px) {
      .sns__inner {
        width: 86%; } }
  .sns__tl {
    margin-bottom: 40px;
    font-size: 5.6rem;
    color: #ff5326;
    text-align: center;
    letter-spacing: .25rem; }
    @media screen and (max-width: 750px) {
      .sns__tl {
        margin-bottom: 8vw;
        font-size: 28px;
        font-size: 8.75vw; } }
  @media screen and (max-width: 750px) {
    .sns__yuge {
      margin-bottom: 7vw; } }
  @media screen and (min-width: 751px) {
    .sns__yuge {
      background: url("../_img/sns_yuge.png") no-repeat; } }
  .sns__txt {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    margin-bottom: 60px; }
    @media screen and (max-width: 750px) {
      .sns__txt {
        flex-wrap: wrap; } }
  .sns__txtbig {
    font-size: 4.8rem;
    line-height: 1;
    letter-spacing: .25rem; }
    @media screen and (max-width: 750px) {
      .sns__txtbig {
        font-size: 24px;
        font-size: 7.5vw; } }
  .sns__txtbig-num {
    font-size: 19rem;
    color: #ff5326;
    line-height: 1;
    letter-spacing: .25rem; }
    @media screen and (max-width: 750px) {
      .sns__txtbig-num {
        font-size: 70px;
        font-size: 21.875vw; } }
  .sns__comment {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 664px;
    margin-left: auto;
    margin-right: auto; }
    @media screen and (max-width: 750px) {
      .sns__comment {
        width: 100%; } }
  .sns__comment-icon {
    padding: 70px 0 60px 0;
    background: url("../_img/sns_fukidashi.png") no-repeat right center; }
    @media screen and (max-width: 750px) {
      .sns__comment-icon {
        width: 67%;
        padding: 9vw 0;
        background-size: contain; } }
    @media screen and (min-width: 751px) {
      .sns__comment-icon {
        width: 55%; } }
  @media screen and (max-width: 750px) {
    .sns__comment-ill {
      width: 33%; } }
  @media screen and (min-width: 751px) {
    .sns__comment-ill {
      width: 39%; } }
  .sns__comment-icon__list {
    display: flex;
    justify-content: space-between;
    max-width: 160px;
    margin-top: 20px;
    margin-left: 60px; }
    @media screen and (max-width: 750px) {
      .sns__comment-icon__list {
        width: 45%;
        margin-top: 10px;
        margin-left: 10.67vw; } }
    .sns__comment-icon__list li {
      width: 44%;
      max-width: 70px; }

.sns .txt-normal {
  font-size: 2.5rem;
  line-height: 2;
  text-align: center;
  letter-spacing: .25rem; }
  @media screen and (max-width: 750px) {
    .sns .txt-normal {
      font-size: 12px;
      font-size: 3.75vw;
      line-height: 1.8; } }

@media screen and (max-width: 750px) {
  .sns__txtbig:nth-last-of-type(1) {
    width: 100%;
    display: block;
    padding-top: 6.67vw;
    text-align: center; } }

.sns__comment-icon .txt-normal {
  white-space: nowrap; }

/* ---taidan
-------------------------------------------*/
.taidan {
  padding: 46px 0;
  background: #ff5326; }
  @media screen and (max-width: 750px) {
    .taidan {
      padding: 9vw 0; } }
  .taidan__tl {
    max-width: 323px;
    margin-bottom: 20px;
    margin-left: auto;
    margin-right: auto; }
    @media screen and (max-width: 750px) {
      .taidan__tl {
        width: 64%;
        margin-bottom: 7vw; } }
  .taidan__box {
    position: relative; }
    @media screen and (min-width: 751px) {
      .taidan__box {
        max-width: 1010px;
        min-height: 270px;
        margin-left: auto;
        margin-right: auto;
        background: url("../_img/taidan_base.png") no-repeat; } }
    @media screen and (max-width: 750px) {
      .taidan__box {
        width: 88%;
        margin-left: auto;
        margin-right: auto;
        padding: 7vw 5vw;
        background: #fff;
        border-radius: 2px;
        box-sizing: border-box; } }
  .taidan__inner {
    display: flex;
    padding: 40px 45px; }
    @media screen and (min-width: 751px) {
      .taidan__inner {
        width: 75%;
        justify-content: flex-start; } }
    @media screen and (max-width: 750px) {
      .taidan__inner {
        flex-direction: column-reverse;
        padding: 0;
        width: 100%; } }
  .taidan__pic {
    display: flex;
    justify-content: space-between; }
    @media screen and (min-width: 751px) {
      .taidan__pic {
        width: 48%; } }
    .taidan__pic li {
      width: 49%; }
  .taidan__name {
    text-align: center; }
    @media screen and (min-width: 751px) {
      .taidan__name {
        width: 50%;
        font-size: 2.4rem; } }
    @media screen and (max-width: 750px) {
      .taidan__name {
        margin-bottom: 2vw;
        font-size: 16px;
        font-size: 5vw; } }
  .taidan__icon {
    display: block;
    padding: 5px 0;
    font-size: 4.8rem;
    line-height: 1; }
    @media screen and (max-width: 750px) {
      .taidan__icon {
        font-size: 24px;
        font-size: 7.5vw;
        padding: 0; } }
  @media screen and (min-width: 751px) {
    .taidan__link {
      position: absolute;
      bottom: 35px;
      right: 40px;
      max-width: 116px; } }
  @media screen and (max-width: 750px) {
    .taidan__link {
      display: flex;
      justify-content: flex-end;
      width: 100%;
      padding-top: 5vw; } }
  @media screen and (max-width: 750px) {
    .taidan__link-btn {
      width: 34%; } }

/* --- inqury
-------------------------------------------*/
.inqury {
  padding: 60px 0 40px 0;
  border-bottom: 2px solid #2f2725; }
  @media screen and (max-width: 750px) {
    .inqury {
      padding: 9vw 0 0 0; } }
  .inqury__inner {
    position: relative;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto; }
  .inqury__tl {
    margin-bottom: 35px;
    font-size: 4.2rem;
    letter-spacing: .5rem;
    text-align: center; }
    @media screen and (max-width: 750px) {
      .inqury__tl {
        margin-bottom: 6vw;
        font-size: 16px;
        font-size: 5vw; } }
  .inqury__ill {
    display: block; }
    @media screen and (min-width: 751px) {
      .inqury__ill {
        max-width: 180px;
        position: absolute;
        bottom: -60px;
        right: 50px; } }
    @media screen and (max-width: 750px) {
      .inqury__ill {
        width: 42.67%;
        margin-top: 7vw;
        margin-bottom: -4vw;
        margin-left: auto;
        margin-right: auto; } }

.inqury .normal-btn__inner {
  line-height: 1.8;
  padding: 10px 100px; }
  @media screen and (max-width: 750px) {
    .inqury .normal-btn__inner {
      padding: 10px 20px;
      width: 88%;
      line-height: 1.6; } }

@media screen and (max-width: 750px) {
  .inqury .normal-btn__inner::after {
    right: 8vw; } }

/* --- footer
-------------------------------------------*/
.footer {
  padding: 40px 0;
  background: #fff; }
  @media screen and (max-width: 750px) {
    .footer {
      padding: 9vw 0 4vw 0; } }
  .footer__inner {
    display: flex;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 2%;
    box-sizing: border-box; }
    @media screen and (min-width: 751px) {
      .footer__inner {
        justify-content: space-between;
        align-items: center; } }
    @media screen and (max-width: 750px) {
      .footer__inner {
        flex-direction: column; } }
  @media screen and (min-width: 751px) {
    .footer__company {
      flex: 1; } }
  .footer__bnr {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; }
    @media screen and (min-width: 751px) {
      .footer__bnr {
        width: 34%;
        max-width: 300px; } }
    @media screen and (max-width: 750px) {
      .footer__bnr {
        width: 88%;
        margin-left: auto;
        margin-right: auto;
        margin-top: 4vw; } }
  .footer__bnr li {
    width: 49%;
    margin-bottom: 2%; }
  .footer__company-txt {
    font-size: 1.5rem;
    font-weight: 500; }
    @media screen and (max-width: 750px) {
      .footer__company-txt {
        font-size: 10px;
        font-size: 3.125vw;
        text-align: center; } }
  .footer__company-tel a {
    color: #ff5326;
    letter-spacing: .5rem;
    font-weight: 700; }
    @media screen and (min-width: 751px) {
      .footer__company-tel a {
        padding-right: 20px;
        font-size: 3.6rem; } }
    @media screen and (max-width: 750px) {
      .footer__company-tel a {
        display: block;
        font-size: 20px;
        font-size: 6.25vw; } }

.copyright {
  padding: 1.5vw 2% 0;
  text-align: center;
  font-size: 1.5rem;
  font-weight: 500; }
  @media screen and (max-width: 750px) {
    .copyright {
      padding-top: 4vw;
      font-size: 9px;
      font-size: 2.8125vw; } }
