@charset "utf-8";
/* CSS Document */
/*----------------------------------------
PC用レイアウト（768px以上のスクリーン）
----------------------------------------*/
/*----------------------------------------
共通設定（PC）
----------------------------------------*/
/*body全体の初期スタイル設定）*/
body {
  font-size: 62.5%; /*emの計算がしやすくなる為の定番設定*/
  font-family: "Noto Sans JP", sans-serif;
  font-weight: normal;
  color: #333333;
  max-width: 1400px;
  margin: 0 auto;
  border-left: 1px solid #cad4b1;
  border-right: 1px solid #cad4b1;
  background-color: #e8f0d5;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
main {
  flex: 1;
  overflow: hidden;
}
img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

/*リンク文字の設定*/
a {
  text-decoration: underline;
}
a:link,
a:visited {
  color: #333333;
}
a:hover,
a:active {
  color: #cccccc;
}
/*ブラウザのCSSをリセット*/
p {
  margin: 0 !important;
  padding: 0 !important;
}
/*セクションエリアの共通設定*/
.section {
  clear: both;
  overflow: auto;
}
/*見出しタグ設定（PC）*/
h2 {
  margin: 0.5em 0em;
  font-size: 2em;
  font-weight: bold;
  text-align: center;
  color: #333333;
}
h3 {
  margin: 0.5em 0em;
  padding: 0.3em 0.6em;
  font-size: 1.6em;
  font-weight: bold;
  border-left: 8px solid #e8f0d5;
  border-bottom: 1px dotted #e8f0d5;
}
h4 {
  margin: 0.5em 0em;
  padding: 0.3em 0.6em;
  font-size: 1.4em;
  border: 1px solid #ccc;
  font-weight: bold;
}
h5 {
  margin: 0.5em 0em;
  padding: 0.1em;
  font-size: 2em;
  font-weight: bold;
  border-bottom: 1px dotted #ccc;
}
/*----------------------------------------
全体レイアウト/背景設定（PC）
----------------------------------------*/
/*全体エリア（全体背景を設定するにはここ）*/

/*カラム全体の幅と文字を変更する*/
.section_wrapper {
  font-size: 1.8em; /*例1.6em=16px*/
  max-width: 1400px;
  margin: 0 auto; /*真ん中に背景を置きたい時に使う*/
}
/*カラム全体の行間*/
.section_wrapper p {
  line-height: 1.6;
}

.top_img_inr,
.wrapper_inr {
  max-width: 950px;
  margin: 0 auto; /*真ん中に背景を置きたい時に使う*/
}
.wrapper_inr {
  padding: 0 50px;
}
@media only screen and (max-width: 768px) {
  .wrapper_inr {
    padding: 0 20px;
  }
}
/*----------------------------------------
上部固定ヘッダー設定
----------------------------------------*/
/*上部固定ヘッダー全体*/
.header {
  position: sticky;
  position: -webkit-sticky;
  top: 0;
  z-index: 5000;
  background-image: url("../images/bg_header.jpg");
  overflow: auto;
  height: auto;
  background-color: #ffffff;
  border-bottom: 1px solid #f5f5f5;
}
/*ヘッダー内部をカラム幅にする*/
.header_inr {
  max-width: 950px;
  margin: 0 auto;
  overflow: hidden;
}
/*ヘッダーのロゴの設定*/
.header_logo {
  float: left;
  width: 24%;
  padding: 10px 0 10px 20px;
}
/*ヘッダーのLINEボタンの設定*/
.header_line {
  float: right;
  width: 9%;
}
/*ヘッダーの予約ボタンの設定*/
.header_rsv {
  float: right;
  width: 9%;
}

@media only screen and (max-width: 768px) {
  .header_logo {
    float: left;
    width: 51%;
    padding: 10px 0 10px 20px;
  }
  /*ヘッダーのLINEボタンの設定*/
  .header_line {
    float: right;
    width: 19%;
  }
  /*ヘッダーの予約ボタンの設定*/
  .header_rsv {
    float: right;
    width: 19%;
  }
}
/*----------------------------------------
ファーストビュー設定）
----------------------------------------*/
.top_image {
  background-image: url("../images/bg_fv_pc.jpg");
  background-repeat: no-repeat;
  background-position: center;
}

/*----------------------------------------
各種セクションの設定
----------------------------------------*/
/*--------------------
セクション（悩み）
---------------------*/
.section_nayami {
  background-color: #e8f0d5;
  padding-top: 5rem;
  padding-bottom: 4rem;
}
.title_nayami {
  margin: 0 auto;
  width: 62%;
  margin-bottom: 2rem;
}
.checklist_nayami {
  background-color: #ffffff;
  border-radius: 20px;
  padding: 2rem;
  list-style-type: none;
}
.checklist_nayami li {
  margin-bottom: 1rem;
  background-image: url("../images/thick@2x.png");
  background-repeat: no-repeat;
  background-size: 30px;
  background-position: left top 5px;
  padding-left: 40px;
  font-size: 1.25em;
}

.checklist_nayami li:last-child {
  margin-bottom: 0;
}
.section_nayami p {
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .section_nayami {
    padding-top: 3rem;
    padding-bottom: 2rem;
  }
  .title_nayami {
    width: auto;
    margin-bottom: 1.5rem;
  }
  .checklist_nayami {
    padding: 1rem;
    list-style-type: none;
  }
  .checklist_nayami li {
    margin-bottom: 0.7rem;
    background-size: 25px;
    background-position: left top 7px;
    padding-left: 30px;
    font-size: 1.15em;
  }
  .section_nayami p {
    text-align: left;
  }
}
/*--------------------
セクション（忙しく）
---------------------*/
.section_busy {
  background-color: #ffffff;
  padding-top: 0;
  padding-bottom: 4rem;
}
.title_busy {
  background-image: url("../images/bg_title_busy.jpg");
  background-repeat: no-repeat;
  background-position: center top;
  text-align: center;
  padding: 2.5rem 0 2rem;
  margin-bottom: 3rem;
}
.title_busy img {
  max-width: 950px;
}
.box_txt01busy {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 3rem;
}
.txt01_busy {
  width: 45%;
  height: 300px;
  writing-mode: vertical-rl;
  vertical-align: middle;
}
.img01_busy {
  width: 40%;
  box-shadow: -10px 10px #cad4b1;
  margin-bottom: 10px;
}
.box_txt02busy {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  flex-direction: row-reverse;
}
.txt02_busy {
  width: 55%;
  writing-mode: vertical-rl;
  height: 300px;
  vertical-align: middle;
}
.img02_busy {
  width: 40%;
  box-shadow: -10px 10px #cad4b1;
  margin-bottom: 10px;
}
@media only screen and (max-width: 768px) {
  .section_busy {
    padding-bottom: 2rem;
  }
  .title_busy {
    background-image: none;
    padding: 0rem 0 0rem;
    margin-bottom: 0rem;
  }

  .box_txt01busy {
    display: block;
    margin-bottom: 0rem;
  }
  .txt01_busy {
    width: auto;
    margin-bottom: 1rem;
    padding: 0 1rem;
    display: block;
    height: auto;
    writing-mode: horizontal-tb;
  }

  .img01_busy {
    width: 80%;
    margin: 0 -10px 1.6rem auto;
    box-shadow: -10px 10px #cad4b1;
  }
  .box_txt02busy {
    display: block;
  }
  .txt02_busy {
    width: auto;
    margin-bottom: 1rem;
    padding: 0 1rem;
    display: block;
    writing-mode: horizontal-tb;
    height: auto;
  }

  .img02_busy {
    width: 80%;
    margin: 0 auto 1.6rem -10px;
    box-shadow: -10px 10px #cad4b1;
  }
}
/*--------------------
セクション（私の母も）
---------------------*/
.section_mom {
  background-color: #ffffff;
  padding-top: 0;
  padding-bottom: 1rem;
}
.title_mom {
  background-color: #e8f0d5;
  text-align: center;
  padding: 2.5rem 0 2rem;
  margin-bottom: 3rem;
  border-bottom: 10px solid #cad4b1;
}
.title_mom img {
  max-width: 950px;
}
.photo_ota {
  float: right;
  width: 45%;
  margin: 0 0 0.5rem 2rem;
}
@media only screen and (max-width: 768px) {
  .section_mom {
    background-color: #ffffff;
    padding-top: 0;
    padding-bottom: 0rem;
  }
  .title_mom {
    background-color: inherit;
    padding: 0em 0 0em;
    margin-bottom: 1.5rem;
    border-bottom: none;
  }

  .photo_ota {
    float: none;
    width: 80%;
    margin: 0 auto;
    margin-bottom: 1rem;
  }
  .txt_mom {
    padding: 0 1rem;
  }
}
/*--------------------
セクション（プロフィール）
---------------------*/
.section_profile {
  background-color: #ffffff;
  background-image: url("../images/bg_mom_pc.jpg");
  background-repeat: no-repeat;
  background-position: center top;
  padding-top: 4rem;
  padding-bottom: 4rem;
}
.box_profile {
  width: 50%;
  background-color: #ffffff;
  box-shadow: 10px 10px 13px rgba(000, 000, 000, 0.1);
  margin: 0 0 0 auto;
  padding: 2rem;
}
.title_profile {
  width: 35%;
  margin: 0 auto;
  margin-bottom: 1.5rem;
  position: relative;
}
.title_profile::before {
  position: absolute;
  content: "";
  width: 500px;
  height: 500px;
  background-image: url("../images/logo_profile@2x.png");
  background-repeat: no-repeat;
  background-size: 300px;
  top: -90px;
  left: -230px;
}
.name_profile {
  font-weight: bold;
  display: block;
  margin-bottom: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #cccccc;
}
.txt_profile p {
  font-size: 0.9em;
}
@media only screen and (max-width: 768px) {
  .section_profile {
    background-image: url("../images/bg_mom_sp.jpg");
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 100%;
    padding-top: 35rem;
    padding-bottom: 2rem;
  }
  .box_profile {
    width: auto;
    background-color: #ffffff;
    box-shadow: 10px 10px 13px rgba(000, 000, 000, 0.1);
    margin: 0 auto;
    padding: 2rem 1.5rem 1.5rem;
  }
  .title_profile {
    width: auto;
    text-align: center;
    margin-bottom: 1.5rem;
    position: relative;
  }
  .title_profile img {
    width: 35%;
  }
  .title_profile::before {
    position: absolute;
    content: "";
    width: 500px;
    height: 500px;
    background-image: url("../images/logo_profile@2x.png");
    background-repeat: no-repeat;
    background-size: 250px;
    top: -90px;
    left: -60px;
  }
}
/*--------------------
セクション（ストレス）
---------------------*/
.section_stress {
  background-color: #ffffff;
  background-image: url("../images/bg_stress.jpg");
  background-repeat: no-repeat;
  background-position: center bottom;
  padding-top: 0;
  padding-bottom: 10rem;
}
.title_stress {
  background-color: #e8f0d5;
  text-align: center;
  padding: 2.5rem 0 2rem;
  margin-bottom: 3rem;
  border-bottom: 10px solid #cad4b1;
}
.title_stress img {
  max-width: 950px;
}
.box_txt01stress {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: row-reverse;
  margin-bottom: 3rem;
}
.txt01_stress {
  width: 50%;
  height: 300px;
  writing-mode: vertical-rl;
  vertical-align: middle;
}

.img01_stress {
  width: 45%;
}

.txt02_stress {
  width: 58%;
  writing-mode: vertical-rl;
  height: 350px;
  vertical-align: middle;
}

@media only screen and (max-width: 768px) {
  .section_stress {
    background-color: #ffffff;
    background-image: url("../images/bg_stress.jpg");
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: 150%;
    padding-top: 0;
    padding-bottom: 15rem;
  }
  .title_stress {
    background-color: none;
    padding: 0em 0 0em;
    margin-bottom: 1.5rem;
    border-bottom: none;
  }

  .box_txt01stress {
    display: block;
    margin-bottom: 0em;
  }
  .txt01_stress {
    width: auto;
    margin-bottom: 1rem;
    padding: 0 1rem;
    display: block;
    height: auto;
    writing-mode: horizontal-tb;
  }
  .img01_stress {
    width: 80%;
    margin: 0 auto 1.5rem auto;
    box-shadow: none;
  }

  .txt02_stress {
    width: auto;
    padding: 0 1rem;
    display: block;
    writing-mode: horizontal-tb;
    height: auto;
  }
}
/*--------------------
セクション（ステップ）
---------------------*/
.section_step {
  background-color: #ffffff;
  background-image: url("../images/bg_step_pc.jpg");
  background-repeat: no-repeat;
  background-position: center bottom;
  padding-top: 0;
  padding-bottom: 10rem;
}
.title_step {
  background-image: url("../images/bg_title_step.jpg");
  background-position: center top;
  background-repeat: no-repeat;
  text-align: center;
  padding: 8rem 0 7rem;
}
.title_step img {
  max-width: 950px;
}

.txt_step {
  width: 50%;
  margin: -4.5rem auto 0rem auto;
}
.sub_step {
  margin-bottom: 1.5rem;
}
.box01_step01 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2rem;
}
.img01_step01 {
  width: 65%;
}
.txt01_step01 {
  width: 35%;
}
.txt01_step01 p {
  display: flex;
  writing-mode: vertical-rl;
  align-items: center;
  width: 100%;
  height: 300px;
}
.box02_step01 {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  margin-bottom: 2rem;
}
.txt02_step01 {
  width: 25%;
  margin: 0 2rem;
}
.img02_step01 {
  width: 35%;
  margin: 0 2rem;
  box-shadow: 10px 10px 0 #cad4b1;
}
.box01_step02 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 3rem;
}
.box01_step02_img {
  width: 65%;
  position: relative;
}
.logo_hari {
  position: absolute;
  width: 30%;
  bottom: -30px;
  right: -30px;
}
.txt01_step02 {
  width: 35%;
  display: flex;
  writing-mode: vertical-rl;
  align-items: center;
  height: 300px;
}

.box02_step02 {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 3rem;
}
.box02_step02_inr01,
.box02_step02_inr02,
.box02_step02_inr03,
.box02_step02_inr04 {
  width: 22%;
  position: relative;
}
.logo_suidama,
.logo_yoga,
.logo_kyuu,
.logo_kanpo {
  position: absolute;
  width: 46%;
  top: -20px;
  left: -20px;
}

.img02_step02,
.img03_step02,
.img04_step02,
.img05_step02 {
  box-shadow: 10px 10px 0 #cad4b1;
  margin-bottom: 1rem;
}
.txt_suidama,
.txt_yoga,
.txt_kyuu {
  padding-left: 0.5rem;
}
.txt_soreniyotte {
  width: 75%;
  margin: 0 auto;
  margin-bottom: 20rem;
}
.txt01_mata {
  width: 20%;
  margin: 0 auto;
}
.txt02_mata {
  background-color: #ffffff;
  width: 80%;
  padding: 2rem;
  margin: 0 auto;
}
@media only screen and (max-width: 768px) {
  .section_step {
    background-color: #ffffff;
    background-image: url("../images/bg_step_sp.jpg");
    background-size: 150%;
    background-repeat: no-repeat;
    background-position: center bottom;
    padding-top: 0;
    padding-bottom: 2rem;
  }
  .title_step {
    background-image: none;
    padding: 0rem 0 0rem;
  }

  .txt_step {
    width: 80%;
    margin: -2.5rem auto 0rem auto;
  }
  .sub_step {
    margin-bottom: 0rem;
  }
  .box01_step01 {
    display: block;
    margin-bottom: 0rem;
  }
  .img01_step01 {
    width: auto;
    margin-bottom: 1rem;
  }
  .txt01_step01 {
    width: auto;
    padding: 0 1rem;
  }
  .txt01_step01 p {
    display: block;
    writing-mode: horizontal-tb;
    width: auto;
    height: auto;
  }
  .box02_step01 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.5rem;
    flex-direction: row-reverse;
  }
  .txt02_step01 {
    width: 45%;
    margin: 0 0rem;
  }
  .img02_step01 {
    width: 50%;
    margin: 0 0rem;
    box-shadow: 10px 10px 0 #cad4b1;
  }
  .box01_step02 {
    display: block;
    margin-bottom: 1.5rem;
  }
  .box01_step02_img {
    width: auto;
    position: relative;
    margin-bottom: 1rem;
  }
  .logo_hari {
    position: absolute;
    width: 30%;
    bottom: -80px;
    left: -20px;
  }
  .txt01_step02 {
    width: auto;
    padding: 0 1rem;
  }
  .txt01_step02 {
    display: block;
    writing-mode: horizontal-tb;
    width: auto;
    height: auto;
  }
  .txt01_step02 span {
    display: block;
    padding-left: 30%;
  }
  .box02_step02 {
    display: block;
    margin-bottom: 1rem;
  }
  .box02_step02_inr01,
  .box02_step02_inr02,
  .box02_step02_inr03,
  .box02_step02_inr04 {
    width: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem;
  }
  .box02_step02_inr02,
  .box02_step02_inr04 {
    flex-direction: row-reverse;
  }
  .logo_suidama {
    position: absolute;
    width: 40%;
    top: -20px;
    left: 80%;
  }
  .logo_yoga {
    position: absolute;
    width: 40%;
    top: -30px;
    left: 65%;
  }
  .logo_kyuu {
    position: absolute;
    width: 40%;
    top: -30px;
    left: -20px;
  }
  .logo_kanpo {
    position: absolute;
    width: 40%;
    top: -30px;
    left: 65%;
  }
  .imgs_step02 {
    width: 55%;
    margin-bottom: 0.5rem;
    position: relative;
  }
  .txt_suidama,
  .txt_yoga,
  .txt_kyuu {
    width: 45%;
    padding-left: 0.5rem;
  }

  .txt_suidama p,
  .txt_yoga p,
  .txt_kyuu p {
    display: flex;
    writing-mode: vertical-rl;
    align-items: center;
    width: 100%;
    height: 200px;
  }

  .txt_soreniyotte {
    width: auto;
    margin-bottom: 15rem;
  }
  .txt01_mata {
    width: 35%;
  }
  .txt02_mata {
    width: 90%;
    padding: 1.5rem;
  }
}
/*--------------------
セクション（特徴パート１）
---------------------*/
.section_tokucho1 {
  background-color: #ffffff;
  padding-bottom: 3rem;
}
.title_tokucho {
  background-color: #e8f0d5;
  text-align: center;
  padding: 2.5rem 0 2rem;
  margin-bottom: 3rem;
  border-bottom: 10px solid #cad4b1;
}
.title_tokucho img {
  max-width: 950px;
}

.txt01_tokucho1,
.txt03_tokucho1 {
  text-align: center;
}
.txt02_tokucho1 {
  width: 68%;
  margin: 0 auto;
}

@media only screen and (max-width: 768px) {
  .section_tokucho1 {
    padding-bottom: 1.5rem;
  }
  .title_tokucho {
    background-color: inherit;
    padding: 0em 0 0em;
    margin-bottom: 1.5rem;
    border-bottom: none;
  }
  .txt02_tokucho1 {
    width: auto;
  }
}
/*--------------------
セクション（特徴パート2）
---------------------*/
.section_tokucho2 {
  background-color: #e8f0d5;
  background-repeat: no-repeat;
  background-image: url("../images/bg_tokucho.jpg");
  background-size: 100%;
  background-position: center bottom;
  padding-top: 3rem;
  padding-bottom: 3rem;
  position: relative;
}

.txt01_tokucho2 {
  width: 80%;
  margin: 0 auto;
  background-color: #ffffff;
  padding: 2rem;
  margin-bottom: 3rem;
}
.txt02_tokucho2 {
  width: 80%;
  margin: 0 auto;
  background-color: #ffffff;
  padding: 2rem;
}

@media only screen and (max-width: 768px) {
  .section_tokucho2 {
    background-position: top center;
    background-size: 100%;
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }

  .txt01_tokucho2 {
    width: 90%;
    padding: 1.5rem;
    margin-bottom: 1.5rem;
  }
  .txt02_tokucho2 {
    width: 90%;
    padding: 1.5rem;
  }
}
/*--------------------
セクション（特徴パート3）
---------------------*/
.section_tokucho3 {
  background-color: #ffffff;
  padding-top: 5rem;
  padding-bottom: 0em;
}
.txt_sokode {
  width: 40%;
  margin: 0 auto;
  margin-bottom: 1rem;
}
.box_tokucho3 {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.txt_tokucho3 {
  width: 45%;
}
.img_tokucho3 {
  width: 50%;
}

@media only screen and (max-width: 768px) {
  .section_tokucho3 {
    background-color: #ffffff;
    padding-top: 3rem;
    padding-bottom: 0em;
  }
  .txt_sokode {
    width: 55%;
    margin-bottom: 1rem;
  }
  .box_tokucho3 {
    display: block;
  }
  .txt_tokucho3 {
    width: auto;
    margin-bottom: 1.5rem;
    padding: 0 1rem;
  }
  .img_tokucho3 {
    width: auto;
  }
}
/*--------------------
セクション（特徴パート4）
---------------------*/
.section_tokucho4 {
  background-color: #ffffff;
  background-image: url("../images/bg_tokucho02_pc.jpg"), url("../images/bg_tokucho03.png");
  background-repeat: no-repeat;
  background-position:
    left top 140px,
    left top;
  background-size: 70%, cover;
  padding-top: 4rem;
  padding-bottom: 4rem;
}
.txt_watashimo {
  width: 61%;
  margin: 0 auto;
  margin-bottom: 18rem;
}
.fukidashi01 {
  width: 28%;
}
.fukidashi02 {
  width: 32%;
  margin: 0 auto;
}
.fukidashi03 {
  width: 28%;
  margin: 0 0 0 auto;
}
@media only screen and (max-width: 768px) {
  .section_tokucho4 {
    background-color: #ffffff;
    background-image: url("../images/bg_tokucho02_sp.jpg"), url("../images/bg_tokucho03.png");
    background-repeat: no-repeat, repeat;
    background-position:
      left top 100px,
      left top;
    background-size: 100%, 100%;
    padding-top: 3rem;
    padding-bottom: 2rem;
  }
  .txt_watashimo {
    width: auto;
    margin: 0 auto;
    margin-bottom: 3rem;
  }
  .fukidashi01 {
    width: 60%;
  }
  .fukidashi02 {
    width: 70%;
    margin: 0 0 0 auto;
  }
  .fukidashi03 {
    width: 60%;
    margin: 0 auto 0 0;
  }
}
/*--------------------
セクション（施術例パート1）
---------------------*/
.section_ig1 {
  background-color: #ffffff;
  background-image: url("../images/img_shijyutu01@2x.jpg");
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: bottom center;
  padding-bottom: 0rem;
  position: relative;
}
.title_ig {
  background-color: #e8f0d5;
  text-align: center;
  padding: 2.5rem 0 2rem;
  margin-bottom: 3rem;
  border-bottom: 10px solid #cad4b1;
}
.title_ig img {
  max-width: 950px;
}

.box_ig {
  margin-bottom: 3rem;
  background-color: #ffffff;
  position: relative;
  z-index: 1;
}
.box_ig:last-child {
  margin-bottom: 0;
}

.box_ig_inr {
  display: flex;
  flex-direction: column-reverse;
  border-left: 1px solid #cad4b1;
  border-right: 1px solid #cad4b1;
  border-bottom: 1px solid #cad4b1;
}

.txt_ig {
  padding: 2rem;
}

@media only screen and (max-width: 768px) {
  .section_ig1 {
    background-size: 120%;
    padding-bottom: 0rem;
  }
  .title_ig {
    background-color: inherit;
    padding: 0rem 0 0rem;
    margin-bottom: 1.5rem;
    border-bottom: none;
  }

  .box_ig {
    margin-bottom: 1.5rem;
  }
  .box_ig:last-child {
    margin-bottom: 0;
  }

  .txt_ig {
    padding: 1rem;
  }
}
/*--------------------
セクション（施術例パート3）
---------------------*/
.section_ig3 {
  background-color: #ffffff;
  background-image: url("../images/img_shijyutu02@2x.jpg");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100%;
  padding-top: 10rem;
  padding-bottom: 1rem;
  position: relative;
}

.txt_sonokekka {
  width: 10%;
  margin: 0 auto;
  margin-bottom: 3rem;
}
.txt_ookuno {
  width: 50%;
  margin: 0 auto;
}

@media only screen and (max-width: 768px) {
  .section_ig3 {
    background-size: 120%;
    padding-top: 3rem;
    padding-bottom: 1rem;
  }

  .txt_sonokekka {
    width: 14%;
    margin-bottom: 1.5rem;
  }
  .txt_ookuno {
    width: 71%;
    margin: 0 auto;
  }
}
/*--------------------
セクション（施術例パート4）
---------------------*/
.section_ig4 {
  background-color: #ffffff;
  background-image: url("../images/bg_ig.jpg");
  background-repeat: no-repeat;
  background-position: center top;
  padding-top: 0rem;
  padding-bottom: 4rem;
  position: relative;
}

@media only screen and (max-width: 768px) {
  .section_ig4 {
    background-image: none;
    padding-top: 0rem;
    padding-bottom: 2rem;
    position: relative;
  }
  .txt_ig4 {
    margin: 0 -20px;
  }
}
/*--------------------
セクション（声）
---------------------*/
.section_voice {
  background-color: #ffffff;
  padding-bottom: 4rem;
  position: relative;
}
.title_voice {
  background-color: #e8f0d5;
  text-align: center;
  padding: 5rem 0 2rem;
}
.title_voice img {
  max-width: 950px;
}
.box_intro_voice {
  background-image: url("../images/img_voice@.jpg");
  background-repeat: no-repeat;
  background-position: top center;
  padding: 12rem 0 9rem;
}

.intro_voice {
  width: 500px;
  margin: 0 auto;
  background-color: #ffffff;
  border: 1px solid #333333;
  text-align: center;
  font-size: 1.125em;
  padding: 2rem 0 2rem;
}

.box_voice {
  padding-bottom: 2rem;
  border-bottom: 1px solid #cad4b1;
  margin-bottom: 2rem;
}
.sub_voice {
  margin-bottom: 1.5rem;
}
.txt_voice {
  padding: 0 2rem;
}

.txt_hokanimo {
  width: 46%;
  margin: 0 auto;
  margin-bottom: 1rem;
}
a.btn_voice {
  width: 80%;
  display: block;
  margin: 0 auto;
}

@media only screen and (max-width: 768px) {
  .section_voice {
    padding-bottom: 2rem;
  }
  .title_voice {
    background-color: inherit;
    padding: 0rem 0 0rem;
  }
  .box_intro_voice {
    background-image: none;
    padding: 0rem 0 0rem;
  }

  .intro_voice {
    width: 70%;
    background-color: #ffffff;
    border: 1px solid #333333;
    padding: 1rem 0 1rem;
    margin-top: -8rem;
    position: relative;
    z-index: 1;
    margin-bottom: 1.5rem;
  }

  .box_voice {
    padding-bottom: 1.5rem;
    border-bottom: 1px solid #cad4b1;
    margin-bottom: 1.5rem;
  }
  .sub_voice {
    margin-bottom: 1rem;
  }
  .txt_voice {
    padding: 0 1rem;
  }
  .txt_hokanimo {
    width: 90%;
    margin: 0 auto;
    margin-bottom: 0.5rem;
  }
  a.btn_voice {
    width: 90%;
    display: block;
    margin: 0 auto;
  }
}
/*--------------------
セクション（そうはいっても）
---------------------*/
.section_fear {
  background-color: #ffffff;
  background-image: url("../images/bg_fear_pc.jpg");
  background-repeat: no-repeat;
  background-position: top 10.5rem center;
  padding-bottom: 1rem;
  position: relative;
}
.title_fear {
  background-color: #e8f0d5;
  text-align: center;
  padding: 2.5rem 0 2rem;
  margin-bottom: 3rem;
  border-bottom: 10px solid #cad4b1;
}
.title_fear img {
  max-width: 950px;
}

.txt01_fear {
  width: 40%;
  writing-mode: vertical-rl;
  height: 200px;
  margin-bottom: 3rem;
}
.txt_sonokoimochi {
  width: 17%;
  margin: 0 auto;
  margin-bottom: 2rem;
}
.txt02_fear {
  width: 80%;
  margin: 0 auto;
  background-color: #ffffff;
  border: 1px solid #cad4b1;
  padding: 2rem;
  margin-bottom: 2rem;
}
.dot {
  width: 20px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
.custom-shape-divider-bottom-1656143439 {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
  transform: rotate(180deg);
}

.custom-shape-divider-bottom-1656143439 svg {
  position: relative;
  display: block;
  width: calc(100% + 1.3px);
  height: 120px;
  transform: rotateY(180deg);
}

.custom-shape-divider-bottom-1656143439 .shape-fill {
  fill: #e8f0d5;
}

@media only screen and (max-width: 768px) {
  .section_fear {
    background-image: url("../images/bg_fear_sp.jpg");
    background-position: top 7rem center;
    background-size: 100%;
    padding-bottom: 0rem;
  }
  .title_fear {
    background-color: inherit;
    padding: 0rem 0 0rem;
    margin-bottom: 1.5rem;
    border-bottom: none;
  }
  .txt01_fear {
    width: 40%;
    writing-mode: vertical-rl;
    height: 170px;
    margin-bottom: 1.5rem;
  }
  .txt_sonokoimochi {
    width: 28%;
    margin-bottom: 1.5rem;
  }
  .txt02_fear {
    width: auto;
    background-color: inherit;
    border: none;
    padding: 0 1rem;
    margin-bottom: 1.5rem;
  }
  .dot {
    width: 15px;
  }
  .custom-shape-divider-bottom-1656143439 svg {
    height: 70px;
  }
}
/*--------------------
セクション（CTA01）
---------------------*/
.section_cta01 {
  background-color: #e8f0d5;
  padding-top: 1rem;
  padding-bottom: 0rem;
}
.txt01_cta01 {
  margin: 0 auto;
}
.txt02_cta01 {
  margin-bottom: 2rem;
}
.txt02_cta01-2 {
  width: 80%;
  margin-bottom: 2rem;
}
.box_cta01 {
  background-color: #fdfcf0;
  border: 1px solid #993300;
  padding: 2rem;
  margin: 0 2rem;
}
.box_cta_inr {
  width: 94%;
  margin: 0 auto;
}
.sub_line {
  margin: 0 -3.6rem;
  margin-top: -7rem;
  margin-bottom: 1rem;
}
.btn_line {
  display: inline-block;
  margin-bottom: 1rem;
}
.remark {
  font-size: 13px;
}

@media only screen and (max-width: 768px) {
  .section_cta01 {
    padding-top: 1rem;
    padding-bottom: 0rem;
  }
  .txt01_cta01 {
    padding: 0 1rem;
  }
  .txt02_cta01 {
    width: auto;
    padding: 0 1rem;
    margin-bottom: 1.5rem;
  }
  .txt02_cta01-2 {
    width: auto;
    padding: 0 1rem;
    margin-bottom: 1.5rem;
  }
  .box_cta01 {
    padding: 0 1.5rem;
    margin: 0 auto;
  }
  .box_cta_inr {
    width: auto;
  }
  .sub_line {
    margin: 0 -38px;
    margin-top: -2rem;
    margin-bottom: 1rem;
  }
  .btn_line {
    display: inline-block;
    margin-bottom: 1rem;
  }
  .remark {
    margin-top: auto;
  }
}
/*--------------------
セクション（質問パート1）
---------------------*/
.section_qa1 {
  background-color: #ffffff;
  padding-top: 8rem;
  padding-bottom: 3rem;
  position: relative;
}
.custom-shape-divider-top-1656144183 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
}

.custom-shape-divider-top-1656144183 svg {
  position: relative;
  display: block;
  width: calc(100% + 1.3px);
  height: 120px;
  transform: rotateY(180deg);
}

.custom-shape-divider-top-1656144183 .shape-fill {
  fill: #e8f0d5;
}
.txt_qa1 {
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .section_qa1 {
    background-color: #ffffff;
    padding-top: 5rem;
    padding-bottom: 2rem;
  }
  .custom-shape-divider-top-1656144183 svg {
    height: 70px;
  }
  .txt_qa1 {
    text-align: center;
    padding: 0 0rem;
  }
}
/*--------------------
セクション（質問パート2）
---------------------*/
.section_qa2 {
  background-color: #ffffff;
  background-image: url("../images/bg_qa_pc.jpg");
  background-repeat: no-repeat;
  background-position: center bottom;
  padding-bottom: 1rem;
  position: relative;
}
.title_qa {
  background-color: #e8f0d5;
  text-align: center;
  padding: 2.5rem 0 2rem;
  margin-bottom: 3rem;
  border-bottom: 10px solid #cad4b1;
}
.title_qa img {
  max-width: 950px;
}

.box_qa {
  margin-bottom: 2rem;
  position: relative;
  z-index: 1;
}

.txt_q {
  padding: 2rem 2rem 2rem 4rem;
  border-radius: 20px 20px 0 0;
  background-color: #e8f0d5;
  font-size: 1.25em;
  background-image: url("../images/icon_q@2x.png");
  background-repeat: no-repeat;
  background-size: 30px;
  background-position: top 2rem left 1rem;
}
.txt_a {
  padding: 2rem 2rem 2rem 4rem;
  border-radius: 0 0 20px 20px;
  background-color: #ffffff;
  background-image: url("../images/icon_a@2x.png");
  background-repeat: no-repeat;
  background-size: 30px;
  background-position: top 2rem left 1rem;
  border-left: 1px solid #e8f0d5;
  border-right: 1px solid #e8f0d5;
  border-bottom: 1px solid #e8f0d5;
}
.section_qa2 .dot {
  margin-top: 22rem;
}

@media only screen and (max-width: 768px) {
  .section_qa2 {
    background-image: url("../images/bg_qa_sp.jpg");
    background-position: center bottom;
    background-size: 100%;
    padding-bottom: 0rem;
  }
  .title_qa {
    background-color: inherit;
    padding: 0rem 0 0rem;
    margin-bottom: 1.5rem;
    border-bottom: none;
  }

  .box_qa {
    margin-bottom: 1.5rem;
  }

  .txt_q {
    padding: 1rem 1rem 1rem 3rem;
    border-radius: 20px 20px 0 0;
    background-size: 25px;
    background-position: top 1.3rem left 0.7rem;
    font-size: 1.15em;
  }
  .txt_a {
    padding: 1rem 1rem 1rem 3rem;
    border-radius: 0 0 20px 20px;
    background-size: 25px;
    background-position: top 1rem left 0.7rem;
  }
  .section_qa2 .dot {
    margin-top: 10rem;
  }
}

/*--------------------
セクション（メッセージ）
---------------------*/
.section_msg {
  padding-top: 8rem;
  padding-bottom: 4rem;
  position: relative;
}

.section_msg::before {
  content: "";
  background: url("../images/bg_tokucho.jpg") no-repeat center center;
  background-size: cover;
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: -1;
  transform: translateZ(0);
}

.txt_moshi {
  width: 24%;
  margin: 0 auto;
}
.bg_green {
  background-color: #e8f0d5;
  margin-bottom: 2rem;
}

.txt_msg {
  background-color: #ffffff;
  padding: 2rem 3rem;
  position: relative;
}
.txt_msg p {
  background-image:
    linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 50%, #ffffff 0%, #ffffff 100%),
    linear-gradient(180deg, rgba(100, 100, 100, 0) 0%, rgba(100, 100, 100, 0) 95%, #9b9b9b 100%);
  background-size:
    8px 100%,
    100% 3em;
  line-height: 3;
  line-break: strict;
  word-break: break-word;
  overflow-wrap: break-word;
  word-wrap: break-word;
  text-indent: 0em;
}
.signature {
  width: 30%;
  margin: 0 0 0 auto;
  margin-top: 2rem;
}

@media only screen and (max-width: 768px) {
  .section_msg {
    padding-top: 5rem;
    padding-bottom: 2rem;
  }
  .section_msg::before {
    background-image: url("../images/bg_tokucho.jpg");
  }
  .txt_moshi {
    width: 37%;
    margin-bottom: -1rem;
  }
  .bg_green {
    margin-bottom: 1.5rem;
  }

  .txt_msg {
    padding: 1.5rem 2rem;
  }
  .txt_msg p {
    background-image:
      linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 50%, #ffffff 0%, #ffffff 100%),
      linear-gradient(180deg, rgba(100, 100, 100, 0) 0%, rgba(100, 100, 100, 0) 95%, #9b9b9b 100%);
    background-size:
      8px 100%,
      100% 2em;
    line-height: 2;
    line-break: strict;
    word-break: break-word;
    overflow-wrap: break-word;
    word-wrap: break-word;
    text-indent: 0em;
    margin-bottom: 1.5em;
  }
  .signature {
    width: 50%;
    margin-top: 1.5rem;
  }
}
/*--------------------
セクション（CTA02）
---------------------*/
.section_cta02 {
  background-color: #e8f0d5;
  padding-top: 5rem;
  padding-bottom: 4rem;
}
.section_cta02-1 {
  padding-top: 3rem;
  padding-bottom: 0rem;
}
.title_cta02 {
  margin-bottom: 2rem;
}

.box_cta02 {
  background-color: #ffffff;
  border: 1px solid #333333;
  padding: 2rem;
  margin: 0 2rem;
  margin-bottom: 5rem;
}
.box_cta02-1 {
  background-color: #ffffff;
  border: 1px solid #333333;
  padding: 2rem;
  margin: 0 2rem;
  margin-bottom: 5rem;
}
.box_cta01 {
  background-color: #fdfcf0;
  border: 1px solid #993300;
  padding: 2rem;
  margin: 0 2rem;
}
.box_cta_inr {
  width: 94%;
  margin: 0 auto;
}
.sub_rsv {
  margin: 0 -3.5rem;
  margin-top: -1.3rem;
  margin-bottom: 0rem;
}
.price {
  margin-bottom: 1rem;
}
.btn_rsv {
  display: inline-block;
}
.sub_line {
  margin: 0 -3.5rem;
  margin-top: -7rem;
  margin-bottom: 1rem;
}
.btn_line {
  display: inline-block;
  margin-bottom: 1rem;
}
@media only screen and (max-width: 768px) {
  .section_cta02 {
    padding-top: 3rem;
    padding-bottom: 2rem;
  }
  .section_cta02-1 {
    padding-top: 1rem;
    padding-bottom: 0rem;
  }
  .title_cta02 {
    margin-bottom: 1rem;
  }

  .box_cta02 {
    padding: 1.5rem;
    margin: 0 auto;
    margin-bottom: 1.5rem;
  }
  .box_cta02-1 {
    padding: 1.5rem;
    margin: 0 auto;
    margin-bottom: 1.5rem;
  }

  .box_cta01 {
    padding: 0 1.5rem;
    margin: 0 auto;
  }
  .box_cta_inr {
    width: auto;
  }
  .sub_rsv {
    margin: 0 -35px;
    margin-top: -2.3rem;
    margin-bottom: 1rem;
  }

  .sub_line {
    margin: 0 -35px;
    margin-top: -1.6rem;
    margin-bottom: 1rem;
  }

  .btn_line {
    display: inline-block;
    margin-bottom: 1rem;
  }
}
/*--------------------
セクション（店舗情報）
---------------------*/
.section_salon {
  background-color: #ffffff;
  padding-top: 5rem;
  padding-bottom: 4rem;
}

.title_salon {
  margin-bottom: 3rem;
}

.logo_salon {
  width: 300px;
  margin: 0 auto;
  margin-bottom: 2rem;
}
table {
  border-top: 1px solid #e8f0d5;
  border-left: 1px solid #e8f0d5;
  margin-bottom: 2rem;
}
th,
td {
  padding: 2rem 2rem;
  border-bottom: 1px solid #e8f0d5;
  border-right: 1px solid #e8f0d5;
}
th {
  background-color: #e8f0d5;
  width: 25%;
  font-size: 1.25rem;
  font-weight: normal;
  color: #333333;
  vertical-align: baseline;
  text-align: center;
}

.list_access::before {
  content: "●";
  padding-right: 5px;
}

.map {
  width: 100%;
  box-sizing: border-box;
  height: 300px;
  margin-bottom: 2rem;
}

@media only screen and (max-width: 768px) {
  .section_salon {
    padding-top: 3rem;
    padding-bottom: 2rem;
  }
  .title_salon {
    margin-bottom: 1.5rem;
  }
  .logo_salon {
    width: 60%;
    margin-bottom: 1.5rem;
  }

  table {
    margin-bottom: 0rem;
  }
  th {
    font-size: 1.15rem;
  }

  th,
  td {
    padding: 1rem 1rem;
  }

  /*テーブルタグをブロック表示*/
  table.table_style01,
  table.table_style01 tr,
  table.table_style01 th,
  table.table_style01 td {
    display: block;
    border: none;
  }
  table.table_style01 tbody,
  table.table_style01 th,
  table.table_style01 td {
    float: left;
    width: 100%;
    box-sizing: border-box;
    -moz-box-sizing: padding-box;
  }
  table.table_style01 {
    zoom: 1;
  }
  table.table_style01:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
  }

  .map {
    height: 300px;
    margin-bottom: 1.5rem;
  }
}

/*--------------------
セクション（プライバシー）
---------------------*/
.section_privacy {
  background-color: #ffffff;
  padding-top: 2rem;
  padding-bottom: 4rem;
}
.indent01 {
  margin-left: 1.5rem;
}
.indent02 {
  margin-left: 3rem;
}
@media only screen and (max-width: 768px) {
  .section_privacy {
    background-color: #ffffff;
    padding-top: 1.5rem;
    padding-bottom: 2rem;
  }
  .section_privacy h2 {
    font-size: 1.5em;
  }
  .section_privacy h3 {
    font-size: 1.3em;
  }
  .indent01 {
    margin-left: 1rem;
  }
  .indent02 {
    margin-left: 1.5rem;
  }
}
/*----------------------------------------
フッター部分
----------------------------------------*/
.footer {
  background-color: #ffffff;
  padding: 2em 0em;
  text-align: center;
  font-size: 14px;
  color: #333333;
}
.footer a {
  color: #333333;
  transition: 0.3s;
}
.footer a:hover {
  color: #cccccc;
}

@media only screen and (max-width: 768px) {
}
