@charset "UTF-8";
/*! --------------------------------------------------------------
　　このCSSファイルは .scssファイルからコンパイルされたものです。
　　修正する際はscssファイルを編集するように注意してください。
--------------------------------------------------------------- */
/* Theme Name: res */
/* 外部ファイル／フォントの読み込み　
============================================================================ */
/* 基本的なクラスや要素の設定　
============================================================================ */
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

li {
  list-style: none;
}

img {
  max-width: 100%;
  height: auto;
}

a {
  color: inherit;
  text-decoration: none;
}

.min {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: 500;
}

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

td input {
  max-width: 100%;
}

i,
em {
  font-style: normal;
}

/* SCSS メディアクエリ */
/* フォントサイズをremに変換するmixin */
.inner {
  width: 100%;
  position: relative;
}
@media (min-width: 1200px) {
  .inner {
    max-width: 1240px;
    padding: 0 20px;
    margin: 0 auto;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .inner {
    padding: 0 4vw;
  }
}
@media (max-width: 767px) {
  .inner {
    padding: 0 8%;
  }
}

/* フレックスボックス */
/* 横幅の計算 */
/* ディレクター用コーディング
==================================================================================================== */
.pc-only {
  display: inherit;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .pc-only {
    display: none;
  }
}
@media (max-width: 767px) {
  .pc-only {
    display: none;
  }
}

.tab-only {
  display: none;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .tab-only {
    display: inherit;
  }
}
@media (max-width: 767px) {
  .tab-only {
    display: none;
  }
}

.sp-only {
  display: none;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .sp-only {
    display: none;
  }
}
@media (max-width: 767px) {
  .sp-only {
    display: inherit;
  }
}

.pctab-only {
  display: inherit;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .pctab-only {
    display: inherit;
  }
}
@media (max-width: 767px) {
  .pctab-only {
    display: none;
  }
}

a.tellink {
  pointer-events: none;
}
@media (max-width: 767px) {
  a.tellink {
    pointer-events: inherit;
  }
}

/* サイト全体に関係するもの（基本のフォントサイズ、文字色、行間、Webフォントなど）　サイトごとに変更する
==================================================================================================== */
/* ルートのフォントサイズを変更したい場合ここから変更する */
:root {
  /*font-size: 14px !important;*/
}
@media (max-width: 767px) {
  :root {
    font-size: 4.26666vw !important;
  }
}

html,
body {
  font-size: 1rem;
  color: #333;
  line-height: 2;
  font-family: "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}
@media (max-width: 767px) {
  html,
  body {
    font-size: 0.875rem;
  }
}

html {
  overflow: auto;
}

body {
  overflow: hidden;
}

/* WebフォントGoogle　NotoSans JP　Regular:fw400／Bold:fw700 */
/*.noto {
	font-family: 'Noto Sans JP', sans-serif;
}*/
/* WebフォントGoogle　Zen Old Mincho　Bold:fw700／Black:fw900 */
.zen {
  font-family: "Zen Old Mincho", serif;
}

/* WebフォントGoogle　Jost　Medium:fw500 */
.jost {
  font-family: "Jost", sans-serif;
}

/* header部分　
============================================================================== */
header {
  width: 100%;
  height: 100px;
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 11;
}
@media (max-width: 767px) {
  header {
    height: 16vw;
    position: static;
  }
}
header.fixed {
  height: 80px;
  transition: 0.5s ease;
}
@media (max-width: 767px) {
  header.fixed {
    height: 16vw;
  }
}
header .head_logo {
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
@media (min-width: 768px) and (max-width: 1199px) {
  header .head_logo {
    padding-right: 248px;
  }
}
@media (max-width: 767px) {
  header .head_logo img {
    width: 49.0666666667vw;
  }
}
header .right {
  width: 248px;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
}
@media (max-width: 767px) {
  header .right {
    display: none;
  }
}
header .right .btn_tel {
  width: 100%;
  height: 100%;
}
header .right .btn_tel a {
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  background-color: #A89E7D;
  color: #fff;
}
header .right .btn_tel a p {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}
header .right .btn_tel a p em {
  display: block;
  font-size: 1.875rem;
  font-weight: 500;
  letter-spacing: 0.05em;
}
header .right .btn_tel a p span {
  display: block;
  font-size: 0.75rem;
}

/* .main　メインビジュアル
======================================================================================== */
.main_home {
  height: calc(100vh - 100px);
  background: url(../img/lp/index/main01.jpg) center center/cover no-repeat;
  margin-top: 100px;
  position: relative;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .main_home {
    height: calc(120vh - 100px);
    background: url(../img/lp/index/main01_sp@2x.jpg) center center/cover no-repeat;
  }
}
@media (max-width: 767px) {
  .main_home {
    height: calc(100vh - 16vw);
    background: url(../img/lp/index/main01_sp@2x.jpg) center center/cover no-repeat;
    margin-top: 0;
  }
}
.main_home .inner {
  height: 100%;
}
.main_home .inner .txt {
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: stretch;
  align-items: flex-end;
}
.main_home .inner .txt .under {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 767px) {
  .main_home .inner .txt .under {
    margin: 0 calc(50% - 50vw);
  }
}
.main_home .inner .txt .under .person_main {
  width: 31.3333333333%;
  margin-right: -5.9166666667%;
  position: relative;
  z-index: 1;
}
@media (max-width: 767px) {
  .main_home .inner .txt .under .person_main {
    width: 44vw;
    margin-right: -7.3333333333vw;
  }
}
.main_home .inner .txt .under .message {
  width: 74.5833333333%;
  background: url(../img/lp/index/txtbg_main.svg) center center/100% auto no-repeat;
  font-size: 1.625rem;
  color: #E37575;
  font-weight: 900;
  line-height: 1.6;
  padding: 2rem 2.5%;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .main_home .inner .txt .under .message {
    font-size: 1rem;
    padding: 1.2rem 2%;
  }
}
@media (max-width: 767px) {
  .main_home .inner .txt .under .message {
    width: 63.3333333333vw;
    background: url(../img/lp/index/txtbg_main_sp.svg) center center/100% auto no-repeat;
    font-size: 0.6875rem;
    padding: 1.4rem 4%;
  }
}
.main_home .copyright {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 1vw;
}
.main_home .copyright small {
  font-size: 0.6875rem;
  color: #fff;
  font-weight: 500;
  writing-mode: vertical-rl;
}
.main_home .fix_right {
  width: 248px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  background-color: #A89E7D;
  color: #fff;
  padding: 1rem 1.4rem 0.8rem;
  position: absolute;
  bottom: 0;
  right: 0;
}
@media (max-width: 767px) {
  .main_home .fix_right {
    display: none;
  }
}
.main_home .fix_right > p {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  margin-bottom: 0.5rem;
}
.main_home .fix_right > p em {
  display: block;
  font-size: 1.75rem;
  font-weight: 500;
  letter-spacing: 0.05em;
}
.main_home .fix_right > p span {
  display: block;
  font-size: 0.75rem;
}

.fix_bottom {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: 6;
  opacity: 0.8;
}
@media (min-width: 1200px) {
  .fix_bottom {
    display: none;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .fix_bottom {
    display: none;
  }
}
.fix_bottom .btn {
  width: 50%;
}
.fix_bottom .btn a {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  padding: 0.5rem 3%;
}
.fix_bottom .btn a p {
  color: #fff;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
}
.fix_bottom .btn a p i {
  font-size: 0.625rem;
  margin-right: 0.5em;
}
.fix_bottom .btn a p em {
  font-size: 0.875rem;
}
.fix_bottom .btn a p span {
  display: block;
  font-size: 0.625rem;
}
.fix_bottom .btn.tel a {
  background-color: #A89E7D;
}
.fix_bottom .btn.mail a {
  background-color: #333;
}

/* 共通パーツ
============================================================================== */
.section_cmn {
  padding: 5rem 0;
}
@media (max-width: 767px) {
  .section_cmn {
    padding: 3rem 0;
  }
}
.section_cmn.t_narrow {
  padding-top: 3.5rem;
}
@media (max-width: 767px) {
  .section_cmn.t_narrow {
    padding-top: 2rem;
  }
}
.section_cmn.b_narrow {
  padding-bottom: 3.5rem;
}
@media (max-width: 767px) {
  .section_cmn.b_narrow {
    padding-bottom: 2rem;
  }
}
.section_cmn.t_wide {
  padding-top: 7.5rem;
}
@media (max-width: 767px) {
  .section_cmn.t_wide {
    padding-top: 4rem;
  }
}
.section_cmn.b_wide {
  padding-bottom: 7.5rem;
}
@media (max-width: 767px) {
  .section_cmn.b_wide {
    padding-bottom: 4rem;
  }
}

.ttl_cmn {
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  margin-bottom: 0.8em;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .ttl_cmn {
    font-size: 1.25rem;
  }
}
@media (max-width: 767px) {
  .ttl_cmn {
    font-size: 1.25rem;
  }
}
.ttl_cmn span {
  display: block;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.11em;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .ttl_cmn span {
    font-size: 0.625rem;
  }
}
@media (max-width: 767px) {
  .ttl_cmn span {
    font-size: 0.625rem;
  }
}
.ttl_cmn span.color_rg {
  color: #A89E7D;
}
.ttl_cmn em {
  font-size: 4rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .ttl_cmn em {
    font-size: 1.75rem;
  }
}
@media (max-width: 767px) {
  .ttl_cmn em {
    font-size: 1.75rem;
  }
}
.ttl_cmn b {
  font-size: 3rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .ttl_cmn b {
    font-size: 1.4375rem;
  }
}
@media (max-width: 767px) {
  .ttl_cmn b {
    font-size: 1.4375rem;
  }
}
.ttl_cmn.winged {
  width: fit-content;
  padding: 0 60px;
  margin: 0 auto 0.8em;
  position: relative;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .ttl_cmn.winged {
    padding: 0 1.5rem;
  }
}
@media (max-width: 767px) {
  .ttl_cmn.winged {
    padding: 0 1.5rem;
  }
}
.ttl_cmn.winged::before, .ttl_cmn.winged::after {
  content: "";
  width: 196px;
  height: 58px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
@media (max-width: 767px) {
  .ttl_cmn.winged::before, .ttl_cmn.winged::after {
    width: 20vw;
    height: 6vw;
  }
}
.ttl_cmn.winged::before {
  background: url(../img/lp/index/ttlbg_wind_l.svg) center center/100% auto no-repeat;
  right: 100%;
}
.ttl_cmn.winged::after {
  background: url(../img/lp/index/ttlbg_wind_r.svg) center center/100% auto no-repeat;
  left: 100%;
}
.ttl_cmn.tac {
  text-align: center;
}
.ttl_cmn.color_w {
  color: #fff;
}

.ttl_pointcmn {
  font-size: 1.875rem;
  color: #A89E7D;
  font-weight: 500;
  line-height: 1.8rem;
  letter-spacing: 0.05em;
  margin-bottom: 0.5em;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .ttl_pointcmn {
    font-size: 1.5rem;
  }
}
@media (max-width: 767px) {
  .ttl_pointcmn {
    font-size: 1.5rem;
  }
}
.ttl_pointcmn em {
  font-size: 4rem;
  line-height: 1;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .ttl_pointcmn em {
    font-size: 3rem;
  }
}
@media (max-width: 767px) {
  .ttl_pointcmn em {
    font-size: 3rem;
  }
}
.ttl_pointcmn.small {
  font-size: 1rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .ttl_pointcmn.small {
    font-size: 0.9375rem;
  }
}
@media (max-width: 767px) {
  .ttl_pointcmn.small {
    font-size: 0.9375rem;
  }
}
.ttl_pointcmn.small em {
  font-size: 2.625rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .ttl_pointcmn.small em {
    font-size: 2.25rem;
  }
}
@media (max-width: 767px) {
  .ttl_pointcmn.small em {
    font-size: 2.25rem;
  }
}
.ttl_pointcmn.tac {
  text-align: center;
}

.ttl_minchocmn {
  font-size: 1.5rem;
  font-weight: 900;
  line-height: 1.7;
  letter-spacing: 0.05em;
  margin-bottom: 0.5em;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .ttl_minchocmn {
    font-size: 1.25rem;
  }
}
@media (max-width: 767px) {
  .ttl_minchocmn {
    font-size: 1.25rem;
  }
}
.ttl_minchocmn.small {
  font-size: 1rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .ttl_minchocmn.small {
    font-size: 0.8125rem;
  }
}
@media (max-width: 767px) {
  .ttl_minchocmn.small {
    font-size: 0.8125rem;
  }
}
.ttl_minchocmn.mdl {
  font-size: 1.25rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .ttl_minchocmn.mdl {
    font-size: 1rem;
  }
}
@media (max-width: 767px) {
  .ttl_minchocmn.mdl {
    font-size: 1rem;
  }
}
.ttl_minchocmn.large {
  font-size: 2.25rem;
  line-height: 1.5;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .ttl_minchocmn.large {
    font-size: 1.5rem;
  }
}
@media (max-width: 767px) {
  .ttl_minchocmn.large {
    font-size: 1.5rem;
  }
}
.ttl_minchocmn.bd_gold {
  padding-bottom: 0.5em;
  background: url(../img/lp/index/bg_gold02.png) left bottom repeat-x;
}
.ttl_minchocmn.bd_gold2 {
  padding-bottom: 0.5em;
  position: relative;
}
.ttl_minchocmn.bd_gold2::after {
  content: "";
  width: 240px;
  height: 3px;
  background: url(../img/lp/index/bg_gold03.png) left bottom repeat-x;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.ttl_minchocmn.tac {
  text-align: center;
}
.ttl_minchocmn.color_w {
  color: #fff;
}
.ttl_minchocmn.color_dpy {
  color: #E37575;
}

.txt_cmn {
  font-size: 1rem;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.05em;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .txt_cmn {
    font-size: 0.875rem;
  }
}
@media (max-width: 767px) {
  .txt_cmn {
    font-size: 0.875rem;
  }
}
.txt_cmn.tac {
  text-align: center;
}
.txt_cmn.color_w {
  color: #fff;
}

.txt_cmn2 {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 2;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .txt_cmn2 {
    font-size: 0.75rem;
  }
}
@media (max-width: 767px) {
  .txt_cmn2 {
    font-size: 0.75rem;
  }
}
.txt_cmn2.tac {
  text-align: center;
}
.txt_cmn2.color_w {
  color: #fff;
}

.btn_cmn {
  width: fit-content;
  max-width: 100%;
}
.btn_cmn a {
  width: 300px;
  height: 68px;
  max-width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  align-content: unset;
  position: relative;
}
@media (max-width: 767px) {
  .btn_cmn a {
    width: 84vw;
    height: 3rem;
  }
}
.btn_cmn a p {
  font-size: 1.125rem;
  line-height: 1.3;
  font-weight: 700;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .btn_cmn a p {
    font-size: 1rem;
  }
}
@media (max-width: 767px) {
  .btn_cmn a p {
    font-size: 1rem;
  }
}
.btn_cmn a i {
  font-size: 0.625rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 5%;
}
.btn_cmn.small a {
  width: 190px;
  height: 38px;
}
@media (max-width: 767px) {
  .btn_cmn.small a {
    width: 50vw;
    height: 2.5rem;
  }
}
.btn_cmn.small a p {
  font-size: 0.8125rem;
}
@media (max-width: 767px) {
  .btn_cmn.small a p {
    font-size: 0.625rem;
  }
}
.btn_cmn.bar a::after {
  content: "";
  width: 0.6em;
  height: 1px;
  background-color: currentColor;
  position: absolute;
  top: 50%;
  right: 5%;
}
.btn_cmn.center {
  margin: 0 auto;
}
.btn_cmn.bg_rg a {
  background-color: #A89E7D;
  color: #fff;
}
.btn_cmn.bg_rg a:hover {
  background-color: #fff;
  color: #A89E7D;
  transition: 0.3s ease;
}
.btn_cmn.bd_w a {
  border: 1px solid #fff;
  color: #fff;
}
.btn_cmn.bd_w a:hover {
  background-color: #fff;
  color: #A89E7D;
  transition: 0.3s ease;
}

.side_cmn {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  align-content: unset;
}
.side_cmn figure {
  width: 50%;
  text-align: center;
}
@media (max-width: 767px) {
  .side_cmn figure {
    width: 100%;
    margin-bottom: 1rem;
  }
}
.side_cmn .txt {
  width: 45%;
}
@media (max-width: 767px) {
  .side_cmn .txt {
    width: 100%;
  }
}
.side_cmn.reverse {
  flex-direction: row-reverse;
}
.side_cmn.counseling {
  align-items: center;
}
.side_cmn.counseling figure {
  width: 43.3333333333%;
}
@media (max-width: 767px) {
  .side_cmn.counseling figure {
    width: 100%;
  }
}
.side_cmn.counseling .txt {
  width: 50%;
}
@media (max-width: 767px) {
  .side_cmn.counseling .txt {
    width: 100%;
  }
}

.over_cmn {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  align-content: unset;
  padding: 0rem calc(50vw - 50%) 0rem 0;
  margin: 0 calc(50% - 50vw);
  position: relative;
}
@media (max-width: 767px) {
  .over_cmn {
    padding: 0;
  }
}
.over_cmn figure {
  width: calc(100% - 600px);
  text-align: right;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .over_cmn figure {
    width: 50%;
  }
}
@media (max-width: 767px) {
  .over_cmn figure {
    width: 100%;
    margin-bottom: 1rem;
  }
}
.over_cmn .txt {
  width: 600px;
  padding: 0 4%;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .over_cmn .txt {
    width: 50%;
  }
}
@media (max-width: 767px) {
  .over_cmn .txt {
    width: 100%;
    padding: 0 8%;
  }
}
@media (max-width: 767px) {
  .over_cmn:not(.reverse) figure {
    padding-right: 8%;
  }
}
.over_cmn.reverse {
  flex-direction: row-reverse;
  padding: 0rem 0 0rem calc(50vw - 50%);
}
@media (max-width: 767px) {
  .over_cmn.reverse {
    padding: 0;
  }
}
.over_cmn.reverse figure {
  text-align: left;
}
@media (max-width: 767px) {
  .over_cmn.reverse figure {
    padding-left: 8%;
  }
}

/* 本体
============================================================================== */
.home_point {
  background: url(../img/lp/index/bg_point01.jpg) center center/cover no-repeat;
}
.home_point ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
}
.home_point ul li {
  width: 30%;
  background-color: #fff;
  border: 1px solid currentColor;
  border-radius: 50%;
  position: relative;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .home_point ul li {
    width: 47%;
  }
}
@media (max-width: 767px) {
  .home_point ul li {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .home_point ul li:not(:last-child) {
    margin-bottom: 1.5rem;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .home_point ul li:nth-child(n+3) {
    margin-top: 3rem;
  }
}
.home_point ul li::before {
  content: "";
  display: block;
  padding-top: 100%;
}
.home_point ul li > span {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  align-content: unset;
  flex-direction: column;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 0 4%;
}
.home_point .ttl_minchocmn {
  padding-bottom: 0.5rem;
  border-bottom: 1px solid currentColor;
}
.home_point p.txt01 {
  max-width: 260px;
}
@media (max-width: 767px) {
  .home_point p.txt01 {
    max-width: 50vw;
  }
}

.txtbox_cmn {
  max-width: 860px;
  background-color: #fff;
  border: 1px solid #000;
  padding: 1.5rem 4% 1rem;
  margin: 0 auto 3.5rem;
}
@media (max-width: 767px) {
  .txtbox_cmn {
    padding: 0.8rem 4% 0.6rem;
    margin-bottom: 1.5rem;
  }
}
.txtbox_cmn .ttl01 {
  width: fit-content;
  font-size: 2.25rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .txtbox_cmn .ttl01 {
    font-size: 1.125rem;
  }
}
.txtbox_cmn .ttl01 img {
  display: block;
}

.home_whats {
  background: url(../img/lp/index/bg_whats01.jpg) center center/cover no-repeat;
}
.home_whats ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
}
.home_whats ul li {
  width: 18.6666666667%;
  padding: 10px;
  border: 1px solid #DEC983;
}
@media (max-width: 767px) {
  .home_whats ul li {
    width: 100%;
    padding: 7px;
  }
}
@media (max-width: 767px) {
  .home_whats ul li:not(:last-child) {
    margin-bottom: 1.25rem;
  }
}
@media (max-width: 767px) {
  .home_whats ul li > a {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch;
    flex-direction: row-reverse;
  }
}
.home_whats ul li > a figure {
  text-align: center;
}
@media (max-width: 767px) {
  .home_whats ul li > a figure {
    width: 50%;
  }
}
.home_whats ul li > a .txt {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: center;
  flex-direction: column;
  min-height: 142px;
  background-color: #fff;
  padding: 0.8rem 6%;
}
@media (max-width: 767px) {
  .home_whats ul li > a .txt {
    width: 50%;
    min-height: unset;
  }
}
.home_whats ul li > a .txt .circle {
  width: 2rem;
  height: 2rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  border: 1px solid currentColor;
  border-radius: 50%;
}
@media (max-width: 767px) {
  .home_whats ul li > a .txt .circle {
    width: 1.4rem;
    height: 1.4rem;
  }
}
.home_whats ul li > a .txt .circle i {
  font-size: 0.625rem;
}

.luxbox_cmn {
  max-width: 675px;
  background: url(../img/lp/index/txtbg_whats01.png) center center/100% 100% no-repeat;
  padding: 1.2rem 4% 1rem;
  margin: 0 auto 3rem;
}
@media (max-width: 767px) {
  .luxbox_cmn {
    padding: 0.8rem 4% 0.6rem;
    margin-bottom: 1.5rem;
  }
}
.luxbox_cmn .ttl_cmn {
  margin-bottom: 0;
}

.home_problem {
  background: url(../img/lp/index/bg_problem01.jpg) center center/cover no-repeat;
  position: relative;
}
.home_problem::before, .home_problem::after {
  content: "";
  width: 100%;
  height: 3px;
  background: url(../img/lp/index/bg_gold01.png) center center repeat-x;
  position: absolute;
  left: 0;
}
.home_problem::before {
  top: 0;
}
.home_problem::after {
  bottom: 0;
}
.home_problem .inner {
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: stretch;
}
.home_problem .inner .txt {
  max-width: 740px;
}
.home_problem .inner .txt ul li {
  padding-bottom: 1.8rem;
  border-bottom: 1px solid #A89E7D;
}
@media (max-width: 767px) {
  .home_problem .inner .txt ul li {
    padding-bottom: 0.8rem;
  }
}
.home_problem .inner .txt ul li::before {
  content: "";
  display: inline-block;
  width: 40px;
  height: 41px;
  background: url(../img/lp/index/icn_checked.svg) center center/100% auto no-repeat;
  margin-right: 0.6rem;
  position: relative;
  top: 10px;
}
@media (max-width: 767px) {
  .home_problem .inner .txt ul li::before {
    width: 21px;
    height: 21px;
    top: 4px;
    margin-right: 0.4rem;
  }
}
.home_problem .inner .txt ul li:not(:last-child) {
  margin-bottom: 1.8rem;
}
@media (max-width: 767px) {
  .home_problem .inner .txt ul li:not(:last-child) {
    margin-bottom: 0.8rem;
  }
}

.home_strength {
  background: url(../img/lp/index/bg_strength01.jpg) center center/cover no-repeat;
}
.home_strength .txtbox_cmn {
  margin-bottom: 7rem;
}
@media (max-width: 767px) {
  .home_strength .txtbox_cmn {
    margin-bottom: 2.5rem;
  }
}
.home_strength .txtbox_cmn .ttl_cmn {
  margin-top: 0.8rem;
  margin-bottom: 0;
}
.home_strength .over_cmn:not(:last-child) {
  margin-bottom: 5rem;
}
@media (max-width: 767px) {
  .home_strength .over_cmn:not(:last-child) {
    margin-bottom: 2.5rem;
  }
}

.home_contact {
  background: url(../img/lp/index/bg_contact01.jpg) center center/cover no-repeat;
  padding: 2rem 0;
}
.home_contact .inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
}
@media (max-width: 767px) {
  .home_contact .inner {
    flex-direction: column-reverse;
  }
}
.home_contact .inner .left {
  width: 50%;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .home_contact .inner .left {
    width: 46%;
  }
}
@media (max-width: 767px) {
  .home_contact .inner .left {
    width: 100%;
  }
}
.home_contact .inner .left .person_contact {
  text-align: center;
  margin-bottom: -5px;
}
.home_contact .inner .left .message {
  background: url(../img/lp/index/txtbg_contact01.svg) center center/100% auto no-repeat;
  position: relative;
}
.home_contact .inner .left .message::before {
  content: "";
  display: block;
  padding-top: 25%;
}
.home_contact .inner .left .message p {
  width: 92%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media (min-width: 1200px) and (max-width: 1399px) {
  .home_contact .inner .left .message p {
    width: 96%;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .home_contact .inner .left .message p {
    width: 90%;
    font-size: 1.0625rem;
    line-height: 1.6;
  }
}
@media (max-width: 767px) {
  .home_contact .inner .left .message p {
    font-size: 0.75rem;
  }
}
.home_contact .inner .right {
  width: 48%;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .home_contact .inner .right {
    width: 52%;
  }
}
@media (max-width: 767px) {
  .home_contact .inner .right {
    width: 100%;
    margin-bottom: 1.5rem;
  }
}
.home_contact .inner .right p.txt01,
.home_contact .inner .right p.txt02,
.home_contact .inner .right p.txt03 {
  color: #fff;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.05em;
  text-align: center;
}
.home_contact .inner .right p.txt01 {
  font-size: 1.5rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .home_contact .inner .right p.txt01 {
    font-size: 1.25rem;
  }
}
@media (max-width: 767px) {
  .home_contact .inner .right p.txt01 {
    font-size: 1.125rem;
    margin-bottom: 0.5rem;
  }
}
.home_contact .inner .right p.txt02 {
  font-size: 1.125rem;
  margin-bottom: 1rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .home_contact .inner .right p.txt02 {
    font-size: 0.9375rem;
  }
}
@media (max-width: 767px) {
  .home_contact .inner .right p.txt02 {
    font-size: 0.625rem;
  }
}
.home_contact .inner .right p.txt02 b {
  color: #FFF500;
}
.home_contact .inner .right .tel {
  width: fit-content;
  margin: 0 auto 2.5rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .home_contact .inner .right .tel {
    margin-bottom: 1.2rem;
  }
}
@media (max-width: 767px) {
  .home_contact .inner .right .tel {
    margin-bottom: 1.2rem;
  }
}
.home_contact .inner .right .tel a {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
.home_contact .inner .right .tel a p {
  color: #fff;
  text-align: center;
}
.home_contact .inner .right .tel a p em {
  font-size: 5.25rem;
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .home_contact .inner .right .tel a p em {
    font-size: 3rem;
  }
}
@media (max-width: 767px) {
  .home_contact .inner .right .tel a p em {
    font-size: 2.625rem;
  }
}
.home_contact .inner .right .tel a p span {
  display: block;
  font-size: 1.25rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .home_contact .inner .right .tel a p span {
    font-size: 1rem;
  }
}
@media (max-width: 767px) {
  .home_contact .inner .right .tel a p span {
    font-size: 0.75rem;
  }
}
.home_contact .inner .right p.txt03 {
  font-size: 1.25rem;
  margin-bottom: 0.3rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .home_contact .inner .right p.txt03 {
    font-size: 1.0625rem;
  }
}
@media (max-width: 767px) {
  .home_contact .inner .right p.txt03 {
    font-size: 0.875rem;
  }
}
.home_contact .inner .right p.txt04 {
  margin-top: 0.8rem;
}
@media (max-width: 767px) {
  .home_contact .inner .right p.txt04 {
    margin-top: 0.4rem;
  }
}

.home_case {
  background-color: #F7F7F0;
}
.home_case ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
  padding-top: 105px;
  margin-bottom: 5rem;
}
@media (max-width: 767px) {
  .home_case ul {
    padding-top: 15vw;
    margin-bottom: 2.5rem;
  }
}
.home_case ul li {
  width: 50%;
  padding: 0 5%;
  position: relative;
}
@media (max-width: 767px) {
  .home_case ul li {
    width: 100%;
    padding: 0;
  }
}
.home_case ul li:first-child {
  width: 100%;
}
.home_case ul li:first-child .circle {
  width: 203px;
  height: 203px;
  left: 5%;
}
@media (max-width: 767px) {
  .home_case ul li:first-child .circle {
    width: 30vw;
    height: 30vw;
  }
}
.home_case ul li:first-child .topline {
  margin-bottom: 3rem;
}
@media (max-width: 767px) {
  .home_case ul li:first-child .topline {
    margin-bottom: 1.5rem;
  }
}
.home_case ul li:first-child .topline .col:not(:last-child)::after {
  border: 17px solid transparent;
  border-left: 23px solid #A89E7D;
  left: calc(100% + 2rem);
}
@media (max-width: 767px) {
  .home_case ul li:first-child .topline .col:not(:last-child)::after {
    border: 10px solid transparent;
    border-left: 13px solid #A89E7D;
    left: calc(100% + 0.5rem);
  }
}
.home_case ul li:first-child .topline .col p {
  height: 70px;
}
@media (max-width: 767px) {
  .home_case ul li:first-child .topline .col p {
    height: 3rem;
  }
}
.home_case ul li:first-child .box {
  padding: 1.8rem 4%;
}
@media (max-width: 767px) {
  .home_case ul li:first-child .box {
    padding: 0.6rem 4%;
  }
}
.home_case ul li:not(:first-child) {
  margin-top: 7.5rem;
}
@media (max-width: 767px) {
  .home_case ul li:not(:first-child) {
    margin-top: 4.5rem;
  }
}
.home_case ul li .circle {
  width: 130px;
  height: 130px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  background-color: #fff;
  border: 1px solid #333;
  border-radius: 50%;
  padding-top: 3%;
  position: absolute;
  top: 0;
  left: 10%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
@media (max-width: 767px) {
  .home_case ul li .circle {
    width: 30vw;
    height: 30vw;
    left: 5%;
  }
}
@media (max-width: 767px) {
  .home_case ul li .circle .ttl_pointcmn {
    font-size: 0.9375rem;
  }
}
@media (max-width: 767px) {
  .home_case ul li .circle .ttl_pointcmn em {
    font-size: 2.25rem;
  }
}
.home_case ul li .topline {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
  margin-bottom: 2rem;
}
@media (max-width: 767px) {
  .home_case ul li .topline {
    margin-bottom: 1.5rem;
  }
}
.home_case ul li .topline .col {
  width: 46%;
  border: 1px solid #DEC983;
  padding: 10px;
}
.home_case ul li .topline .col:not(:last-child) {
  position: relative;
}
.home_case ul li .topline .col:not(:last-child)::after {
  content: "";
  border: 10px solid transparent;
  border-left: 13px solid #A89E7D;
  position: absolute;
  top: 50%;
  left: calc(100% + 1rem);
  transform: translateY(-50%);
}
@media (max-width: 767px) {
  .home_case ul li .topline .col:not(:last-child)::after {
    left: calc(100% + 0.5rem);
  }
}
.home_case ul li .topline .col figure {
  text-align: center;
}
.home_case ul li .topline .col p {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  height: 48px;
  background-color: #fff;
}
@media (max-width: 767px) {
  .home_case ul li .topline .col p {
    height: 3rem;
  }
}
.home_case ul li .box {
  background-color: #fff;
  border: 1px solid #DEC983;
  padding: 1rem 4%;
  margin-bottom: 1.8rem;
}
@media (max-width: 767px) {
  .home_case ul li .box {
    padding: 0.6rem 4%;
    margin-bottom: 1rem;
  }
}
.home_case ul li .box .ttl_minchocmn {
  width: fit-content;
  min-width: 240px;
  margin: 0 auto 1rem;
}
@media (max-width: 767px) {
  .home_case ul li .box .ttl_minchocmn {
    margin-bottom: 0.5rem;
  }
}
.home_case .bnr {
  text-align: center;
}

.megattl_cmn {
  background: url(../img/lp/index/bg_megattl01.jpg) center center/cover no-repeat;
  padding: 2rem 0;
}
@media (max-width: 767px) {
  .megattl_cmn {
    padding: 1rem 0;
  }
}
.megattl_cmn .ttl_cmn {
  margin-bottom: 0;
}

.home_menu .inner > .side_cmn:not(:last-child) {
  margin-bottom: 5rem;
}
@media (max-width: 767px) {
  .home_menu .inner > .side_cmn:not(:last-child) {
    margin-bottom: 2rem;
  }
}
.home_menu .inner > .ttl_minchocmn {
  width: fit-content;
  max-width: 240px;
  margin: 0 auto 1.8rem;
}
@media (max-width: 767px) {
  .home_menu .inner > .ttl_minchocmn {
    margin-bottom: 1rem;
  }
}
.home_menu .area {
  background-color: #F7F7F0;
  padding: 2.4rem 4%;
}
@media (max-width: 767px) {
  .home_menu .area {
    padding: 1.2rem 5%;
  }
}
.home_menu .area:not(:last-child) {
  margin-bottom: 2.5rem;
}
@media (max-width: 767px) {
  .home_menu .area:not(:last-child) {
    margin-bottom: 1.8rem;
  }
}

.home_step {
  background: url(../img/lp/index/bg_step01.jpg) center center/cover no-repeat;
}
.home_step ul {
  padding-top: 64px;
}
@media (max-width: 767px) {
  .home_step ul {
    padding-top: 12vw;
  }
}
.home_step ul li {
  padding: 0 5%;
  position: relative;
}
@media (max-width: 767px) {
  .home_step ul li {
    width: 100%;
    padding: 0;
  }
}
.home_step ul li:not(:last-child) {
  margin-bottom: 7.5rem;
  position: relative;
}
@media (max-width: 767px) {
  .home_step ul li:not(:last-child) {
    margin-bottom: 4.5rem;
  }
}
.home_step ul li:not(:last-child)::after {
  content: "";
  border: 17px solid transparent;
  border-top: 23px solid #A89E7D;
  position: absolute;
  top: calc(100% + 1.5rem);
  left: 50%;
  transform: translateX(-50%);
}
@media (max-width: 767px) {
  .home_step ul li:not(:last-child)::after {
    top: calc(100% + 1rem);
  }
}
.home_step ul li .circle {
  width: 128px;
  height: 128px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  background-color: #fff;
  border: 1px solid #333;
  border-radius: 50%;
  position: absolute;
  top: 0;
  left: 5%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
@media (max-width: 767px) {
  .home_step ul li .circle {
    width: 24vw;
    height: 24vw;
  }
}
.home_step ul li .circle .ttl_pointcmn {
  margin-bottom: 0;
}
.home_step ul li .box {
  background-color: #fff;
  border: 1px solid #333;
  padding: 1.8rem 4%;
  /*.ttl_minchocmn {
  	width: fit-content;
  	min-width: 240px;
  	margin: 0 auto 1rem;
  	@include mq_sp {
  		margin-bottom: 0.5rem;
  	}
  }*/
}
@media (max-width: 767px) {
  .home_step ul li .box {
    padding: 1.5rem 4% 1rem;
  }
}

.home_aftercare {
  background: url(../img/lp/index/bg_aftercare01.jpg) center center/cover no-repeat;
}
.home_aftercare .over_cmn:not(:last-child) {
  margin-bottom: 5rem;
}
@media (max-width: 767px) {
  .home_aftercare .over_cmn:not(:last-child) {
    margin-bottom: 2.5rem;
  }
}

.home_counseling {
  background-color: #F7F7F0;
}
.home_counseling .inner > .ttl_cmn {
  margin-bottom: 4rem;
}
@media (max-width: 767px) {
  .home_counseling .inner > .ttl_cmn {
    margin-bottom: 2rem;
  }
}
.home_counseling .side_cmn:not(:last-child) {
  margin-bottom: 7rem;
}
@media (max-width: 767px) {
  .home_counseling .side_cmn:not(:last-child) {
    margin-bottom: 2.5rem;
  }
}
.home_counseling .side_cmn p.txt01 {
  margin-bottom: 1.5rem;
}
@media (max-width: 767px) {
  .home_counseling .side_cmn p.txt01 {
    margin-bottom: 0.8rem;
  }
}
.home_counseling .side_cmn .name {
  text-align: right;
}
.home_counseling .side_cmn .name em {
  font-size: 2.25rem;
}
@media (max-width: 767px) {
  .home_counseling .side_cmn .name em {
    font-size: 1.5rem;
  }
}

.home_price {
  background-color: #333;
}
.home_price .inner > .ttl_cmn {
  margin-bottom: 5rem;
}
@media (max-width: 767px) {
  .home_price .inner > .ttl_cmn {
    margin-bottom: 2.5rem;
  }
}
@media (max-width: 767px) {
  .home_price .unit {
    margin: 0 -4vw;
  }
}
.home_price .unit .ttl01 {
  background-color: #A89E7D;
  padding: 0.5rem 3%;
  font-size: 1.625rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.5;
}
@media (max-width: 767px) {
  .home_price .unit .ttl01 {
    font-size: 1rem;
  }
}
.home_price .unit dl {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  padding: 2rem 0;
  border-bottom: 1px solid #707070;
}
@media (max-width: 767px) {
  .home_price .unit dl {
    padding: 1rem 0;
  }
}
.home_price .unit dl dt, .home_price .unit dl dd {
  color: #fff;
  font-weight: 700;
  line-height: 2rem;
}
@media (max-width: 767px) {
  .home_price .unit dl dt, .home_price .unit dl dd {
    line-height: 1.5rem;
  }
}
.home_price .unit dl dt {
  width: 60%;
  font-size: 1.25rem;
}
@media (max-width: 767px) {
  .home_price .unit dl dt {
    width: 67%;
    font-size: 0.75rem;
  }
}
.home_price .unit dl dt span {
  display: block;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  margin-top: 0.5rem;
}
@media (max-width: 767px) {
  .home_price .unit dl dt span {
    font-size: 0.625rem;
  }
}
.home_price .unit dl dd {
  width: 40%;
  font-size: 1rem;
  text-align: right;
}
@media (max-width: 767px) {
  .home_price .unit dl dd {
    width: 33%;
    font-size: 0.625rem;
  }
}
.home_price .unit dl dd em {
  font-size: 2rem;
}
@media (max-width: 767px) {
  .home_price .unit dl dd em {
    font-size: 1.125rem;
  }
}
@media (max-width: 767px) {
  .home_price .caution {
    margin: 0 -4vw;
  }
}
.home_price .caution a {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  border: 1px solid #A89E7D;
  padding: 1rem 2%;
  color: #fff;
}
@media (max-width: 767px) {
  .home_price .caution a {
    padding: 0.5rem 4%;
  }
}
.home_price .caution a p {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
}
@media (max-width: 767px) {
  .home_price .caution a p {
    font-size: 0.8125rem;
  }
}
.home_price .caution a i {
  font-size: 0.625rem;
}
.home_price p.txt11 {
  font-size: 1rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.5;
  text-align: right;
  margin-top: 0.8rem;
}
@media (max-width: 767px) {
  .home_price p.txt11 {
    font-size: 0.75rem;
  }
}

/* フッター 
============================================================================================================ */
@media (max-width: 767px) {
  footer {
    padding-bottom: 13vw;
  }
}
footer .fmain .logo_foot {
  text-align: center;
  margin-bottom: 1.2rem;
}
footer .fmain p.txt01 {
  line-height: 1.5;
}
footer .map {
  position: relative;
  width: 100%;
  padding-top: 500px;
  overflow: hidden;
}
@media (max-width: 767px) {
  footer .map {
    padding-top: 100%;
  }
}
footer .map iframe {
  position: absolute;
  top: -200px;
  left: 0;
  width: 100%;
  height: calc(100% + 200px + 200px);
  pointer-events: none;
}
@media (max-width: 767px) {
  footer .map iframe {
    top: -30vw;
    height: calc(100% + 30vw + 30vw);
  }
}/*# sourceMappingURL=style.css.map */