@charset "UTF-8";
/*----------このエリアは削除すると正しく動作しない可能性があります----------

Theme Name: salon template
Theme URI: https://xb409058.xbiz.jp/theme/
Description: SalonのWordPressTHEME
Author: GICP
Author URI: https://xb409058.xbiz.jp/about/
Version: 2.0.0
Copyright (C) GICP

----------このエリアは削除すると正しく動作しない可能性があります----------*/


/*---------- 全体共通 ----------*/

.wrapper{
  font-family: serif, "Noto Serif JP";
  font-size: 16px;
  line-height: 1.5;
  color: #686767;
}
.inner{
  position: relative;
  width: 95%;
  max-width: 1140px;
  height: 100%;
  margin: 0 auto;
}
.inner_m{
  position: relative;
  width: 95%;
  max-width: 1080px;
  margin: 0 auto;
}
.inner_s{
  position: relative;
  width: 95%;
  max-width: 1040px;
  margin: 0 auto;  
}
.logo{
  max-width: 240px;
}
.btn{
  position: relative;
  display: block;
  border: solid 1px;
  text-align: center;
  box-sizing: border-box;
  transition: .3s;
}
.phone{
  display: block;
  width: 100%;
  max-width: 225px;
  height: auto;
  padding-top: 10px;
  margin-bottom: 10px;
}
.sp{
  display: none !important;
}

/*--- ヘッダー ---*/
.header{
  width: 100%;
  padding: 10px 0;
  min-height: 150px;
  height: auto;
  box-sizing: border-box;
  background-color: #f7f4ee;
}
.header .inner{
  position: relative;
  justify-content: space-between;
}
.header h1.desc{
  margin-bottom: 20px;
  font-size: 13px;
  font-weight: normal;
}
.button{
  /* display: flex; */
  justify-content: flex-end;
  margin-bottom: 10px;
}
.button .btn_image{
  display: block;
  width: 100%;
  max-width: 215px;
  height: 36px;
  background: url(img/top/pc/btn_reservation_header.png?v=2) no-repeat;
  background-size: contain;
  transition: .3s;
}
.button .btn_image:hover{
  background: url(img/top/pc/btn_reservation_header_hover.png?v=2) no-repeat;
  background-size: contain;

}
.button .btn_image img:hover{
  opacity: 0;
}
.header .address li:first-child{
  /* margin-right: 30px; */
}
.header .address .name{
  font-size: 18px;
  color: #c48c0d;
}
.header .address .number{
  font-size: 34px;
}
.header .address .time{
  font-size: 13px;
}

/*--- グローバルナビゲーション ---*/
.nav{
  position: absolute;
  width: 100%;
  z-index: 9999;
  opacity: 0.9;
}
.nav::after{
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background-color: #f7f4ee;
}
.nav ul{
  justify-content: space-around;
}
.nav ul li a{
  position: relative;
  display: flex;
  align-items: center;
  height: 50px;
  font-size: 14px;
  color: #000000;
  transition: .3s;
}
.nav ul li a::after {
  position: absolute;
  bottom: 10px;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #cfa957;
  transform: scale(0, 1);
  transform-origin: center top;
  transition: .3s;
}
.nav ul li a:hover{
  color: #cfa957;
}
.nav ul li a:hover::after {
  transform: scale(1, 1);
}
@media screen and (max-width: 767px) {
.nav ul li a {
  height: 30px;
  font-size: 18px;
  color: #686767;
}
.nav ul li a::after {
  bottom: 3px;
}
.nav ul li a:hover{
  color: #cfa957;
}
}

/*--- フッター ---*/
.btn_top{
  position: absolute;
  top: -50px;
  width: 100%;
  height: 50px;
  line-height: 50px;
  background-color: #ffffff;
  opacity: 0.5;
}
.btn_top img{
  position: absolute;
  right: 0;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 24px;
  height: auto;
}
.btn_side{
  position: fixed;
  right: 0;
  bottom: 200px;
  z-index: 9999;
}
.btn_side img{
  width: 60px;
  height: auto;
}
.btn_side:hover{
  opacity: 0.9;
}
.btn_side img:hover{ 
  opacity: 0.9;
}
.footer {
  position: relative;
  background-color: #686767 !important; 
  color: #f7f4ee;
}
.footer .inner{
  padding: 50px 0;
}
.footer .section.bnr{
  background-color: #f7f4ee;
}
.footer .logo{
  margin-bottom: 15px;
/*  width: 70px;　*/
}
.footer .address{
  margin-bottom: 60px;
}
.footer .address li{
  margin-right: 80px;
}
.footer .address li:nth-child(2){
  margin-right: 100px;
}
.footer .address li:last-child{
  margin-right: 0;
}
.footer .address p{
  font-size: 14px;
  margin-bottom: 14px;
}
.footer .address .toho{
  font-size: 16px;
}
.footer .address .name{
  margin-bottom: 14px;
  font-size: 24px;
}
.footer .address .time {
  font-size: 16px;
  margin-bottom: 2px;
}
.footer .address .number{
  font-size: 30px;
}
.footer .access{
  margin-bottom: 15px;
}
.footer .nav_footer li a{
  color: #f7f4ee;
  font-size: 14px;
}
.footer .inner ul.address li .pc {
  right: 0px;
}
.policy{
  font-size: 14px;
  justify-content: space-between;
}
.policy ul{
  display: flex;
}
.policy ul li a{
  color: #f7f4ee;
}
.policy ul li:first-child{
  border-right: solid 1px #f7f4ee;
  margin-right: 20px;
  padding-right: 20px;
}

/*---------- コンテンツ共通 ----------*/

/*--- トップ ---*/
.bg{
  background-color: #f7f4ee;
}
.section .inner{
  padding: 50px 0;
}

.section .inner_m,
.section .inner_s{
  padding: 50px 0;
}
.main_area{
  margin-bottom: 50px;
  overflow: hidden;
}
.flx{
  display: flex;
}
.flx_w{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.flx_c{
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
}
.ttl_c{
  text-align: center;
}
h2.ttl{
  margin-bottom: 50px;
  font-size: 28px;
  color: #686767;
}
h2.ttl span.ml {
  font-size: 26px;
}
h2.intro_ttl{
  margin-bottom: 50px;
  padding-top: 30px;
  font-size: 38px;
  font-weight: 400;
}
h2.intro_ttl span.ml {
  font-size: 26px;
}
.voice h2.ttl{
  color: #686767
}
h3.ttl{
  margin-bottom: 20px;
  font-size: 22px;
}
.txt_c{
  text-align: center;
  line-height: 1.8;
}
.btn_basic{
  position: relative;
  display: block;
  width: 100%;
  max-width: 300px;
  height: 50px;
  margin: 0 auto;
  color: #888888;
  background: url(img/top/pc/bg_btn.png?v=2) no-repeat;
  background-size: contain;
  transition: .3s;
}
.btn_basic:hover{
  background: url(img/top/pc/bg_btn_hb.png?v=2) no-repeat;
  background-size: contain;
  color: #ffffff;
}
.btn_basic_v{
  position: relative;
  display: block;
  width: 100%;
  max-width: 300px;
  height: 50px;
  margin: 0 auto;
  color: #c48c0d;
  background: url(img/top/pc/bg_btn.png?v=2) no-repeat;
  background-size: contain;
  transition: .3s;
}
.btn_basic_v:hover{
  background: url(img/top/pc/bg_btn_hover.jpg?v=2) no-repeat;
  background-size: contain;
  color: #ffffff;
}
.btn_basic_w{
  position: relative;
  display: block;
  width: 100%;
  max-width: 300px;
  height: 50px;
  margin: 0 auto;
  color: #444444;;
  background: url(img/top/pc/bg_btn_w.png?v=2);
  background-size: contain;
  transition: .3s;
}
.btn_basic_w:hover{
  background: url(img/top/pc/bg_btn_w_hover.jpg?v=2);
  background-size: contain;
  color: #c48c0d;
}
.btn_basic span,
.btn_basic_w span{
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  margin: auto;
  bottom: 0;
  color: #9e3523;
}
.btn_basic span:hover,
.btn_basic_w span:hover{
  color: #fff;
}
.btn_basic_v span{
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  margin: auto;
  bottom: 0;
}
.btn_small{
  width: 200px;
  height: 34px;
  line-height: 34px;
  color: #444444;
}
.btn_small:hover{
  background-color: #444444;
  color: #ffffff;
  border-color: #444444;
}
.btn_map{
  display: block;
  width: 100%;
  max-width: 180px;
  height: 34px;
  line-height: 34px;
  margin: 0 auto;
  background: url(img/top/pc/btn_map.png?v=2) no-repeat;
  background-size: contain;
  transition: .3s;
}
.btn_map:hover{
  background: url(img/top/pc/btn_map_hover.jpg?v=2) no-repeat;
  background-size: contain;
}
.btn_reservation{
  display: block;
  width: 100%;
  max-width: 800px;
  height: 100px;
  box-sizing: border-box;
  margin: 0 auto;
}
.btn_reservation img{
  width: 100%;
  height: auto;
}
.btn_reservation img:hover{
  opacity: 0;
}
.btn_entry{
  width: 100%;
  max-width: 800px;
  height: 100px;
  transition: .3s;
  box-sizing: border-box;
  border: solid 1px #c48c0d;
  background-color: #ffffff;
  opacity: 0.7;
  margin: 0 auto;
}
.btn_entry img{
  max-width: 444px;
  height: auto;
  width: 100%;
  padding: 0 20px;
  box-sizing: border-box;
}
.btn_entry:hover{
  opacity: 0.5;
}
.img_wrap:hover img{
  opacity: 0.6;
  transition-duration: 0.3s;
}


/*--- ボタン ---*/
.btnWrap {
  margin: 40px 0; }

.btn {
  clear: both;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 50px;
  margin: 30px 0 30px;
  font-size: 16px;
  line-height: 1.5;
  font-weight: 400;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  text-decoration: none;
  transition: .3s ease-in;
  user-select: none;
  position: relative;
  border: 1px solid #686767;
  color: #686767;
  /*---background: #f7f4ee;---*/
  max-width: 300px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none; }
  .btn:hover, .btn:focus {
    opacity: 0.6;}
  .btn.arrow:after {
    content: "";
    width: 42px;
    height: 10px;
    display: block;
    background: url(img/top/pc/arrow.svg) no-repeat;
    position: absolute;
    top: 21px;
    right: 20px; }
  .btn.arrow:hover:after, .btn.arrow:focus:after {
    background: url(img/top/pc/arrow.svg) no-repeat; 
    opacity: 0.6;}
  .btn.arrowReverse:after {
    position: absolute;
    align-items: center;
    border: none;
    content: "\f105";
    font-family: FontAwesome;
    transform: none;
    color: #000;
    right: 15px;
    font-size: 20px;
    border-radius: 0;
    top: 50%;
    margin-top: -15px;
    transition: .3s ease-in; }
  .btn.arrowReverse:hover:after, .btn.arrowReverse:focus:after {
    color: #fff; }
  .btn.reverse {
    text-decoration: none;
    color: #000;
    background: #fff;
    border-color: #000; }
    .btn.reverse:hover, .btn.reverse:focus {
      background: #000;
      color: #fff; }
  .btn.btnLeft {
    margin: 0; }
  .btn.btnRight {
    margin: 0 auto 0 0; }
  .btn.btnCenter {
    margin-left: auto;
    margin-right: auto;
    color: #686767; 
  }
  .btn.btnFull {
    max-width: none; }
  .btn.type2 {
    background: #fff; }
    .btn.type2:hover {
      opacity: 0.6;}
      .btn.type2:hover:after {
        color: #fff; }
  .btn.type3 {
    background: #f7f4ee; }
  .btn.type4 {
    background: #686767;
    max-width: 180px;
    font-size: 16px;
    color: #f7f4ee;
    border-color: #f7f4ee;
    height: 40px;}
  .btn.type4.arrow2:after {
    content: "";
    width: 21px;
    height: 5px;
    display: block;
    background: url(img/top/pc/arrow_hb.png) no-repeat;
    position: absolute;
    top: 14px;
    right: 14px; }
  .btn.type4.arrow2:hover:after, .btn.type4.arrow2:focus:after {
    opacity: 0.6;}
  /*---.btn.op8{
    opacity: 0.8;}---*/
    .btn.op8:hover{
      opacity: 0.6;}

/*--- 下層 ---*/
.mv_sub img{
  display: block;
  width: 100%;
  height: auto;
}
.gi-breadcrumbs{
  background-color: #ffffff;
  margin-bottom: 0;
}
.main_area img,
.main_area_btm img{
  display: block;
  width: 100%;
  height: auto;
}
.main_area_btm{
  margin-bottom: 0;
}
.sub.contents{
  width: 100%;
  height: auto;
}
.sub.contents.bg{
  background-color: #f7f4ee;
}
.sub.contents .txt_c{
  margin-bottom: 60px;
}
.sub.contents .desc img{
  min-width: 540px;
  width: 49%;
  /* margin-left: 30px; */
}
.sub.contents .desc p{
  /* min-width: 540px; */
  width: 49%;
  margin-left: 30px;
}
.sub.contents .desc.end{
  margin-bottom: 0;
}
.sub.contents .salon .inner{
  padding-bottom: 100px;
}
.cmn_btn.btn_reservation{
  margin-bottom: 50px;
}
.cmn_btn.btn_reservation:hover{
  background: url(img/sub/cmn/pc/btn_reservation_hover.jpg?v=2) no-repeat;
  background-size: contain;
}
.caution{
  max-width: 1040px;
  width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
}
.caution li{
  margin-bottom: 15px;
}
.caution li:last-child{
  margin-bottom: 0;
}
.caution.bdr{
  border: solid 1px #cecece;
  padding: 15px;
}
.recommend{
  max-width: 1040px;
  width: 100%;
  margin: 0 auto;
}
.recommend img{
  display: block;
  width: 100%;
  height: auto;
}
.tbl_002{
  width: 100%;
  margin: 0 auto;
}
.tbl_002 th {
  width: 50%;
  background: #ceb7a7;
  color: #fff;
  padding: 25px;
  text-align: left;
  box-sizing: border-box;
}
.tbl_002 td {
  width: 50%;
  background-color: #ffffff;
  padding: 25px;
  text-align: right;
  box-sizing: border-box;
}
.trial .tbl_002{
  /* height: 130px; */
  background-color: #ffffff;
  border: solid 1px #e7dfd8;
  margin-bottom: 20px;
}
.trial .tbl_002 tr{
  align-items: center;
  /* height: 100%; */
}
.trial .tbl_002 th{
  border-right: solid 1px #e7dfd8;
  /* display: flex; 
  justify-content: flex-start;
  align-items: center;
  height: 100%; */
}
/* .trial .tbl_002 td{
  display: flex;
  justify-content: flex-end;
  align-items: center;
  height: 100%;
} */
.wp-pagenavi{
  display: flex;
  justify-content: center;
  align-items: center;
}
.wp-pagenavi a{
  display: block;
  width: 25px;
  line-height: 25px;
  margin-right: 10px;
  text-align: center;
  border: solid 1px #9e3523;
  color: #9e3523;
}
.wp-pagenavi a:hover{
  border :none;
  background-color: #9e3523;
  color: #ffffff;
  border: solid 1px #9e3523;
}
.wp-pagenavi .current{
  width: 25px;
  line-height: 25px;
  text-align: center;
  background-color: #9e3523;
  color: #ffffff;
  border-color: #9e3523 !important;
}
.wp-pagenavi a, .wp-pagenavi span{
  padding: 0;
}

/*---------- フロントページ ----------*/

.bnr img{
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto;
}
.menu h3.ttl,
.flow h3.ttl,
.salon h3.ttl{
  color: #cfa957;
/*  text-align: center; */
}
.menu h3.ttl p{
  text-align: center;
}

/*--- メインビジュアル ---*/
@keyframes zoomOut {
  0% {
    transform: scale(1.15);
  }
  100% {
    transform: scale(1);
  }
}
.swiper-slide-active .slide-img,
.swiper-slide-duplicate-active .slide-img,
.swiper-slide-prev .slide-img{
  animation: zoomOut 10s linear 0s 1 normal both;
}
.slide-img img{
  display: block;
  width: 100%;
  height: auto;
}
.mv{
  position: relative;
  width: 100%;
  height: auto;
  z-index: -9999;
}
.mv .ttl{
  position: absolute;
  top: 36%;
  right: 20%;
  z-index: 1;
  writing-mode: vertical-rl;
}
.mv p:first-child{
  color: #f7f4ee;
  font-size: 34px;
}
.mv p:nth-child(2n){
  font-size: 20px;
  color: #696551;
}

/*--- 3つの理由 ---*/
.reason{
  /*--- background: url(img/top/pc/bg_reason.jpg) ;---*/
  background-size: cover;
  background-repeat: no-repeat;
  background-position: right 20% bottom 60%;
  padding-bottom: 30px;
  background-color: #ffffff;
}
.reason h2.ttl{
  font-size: 28px;
}
.reason h2.ttl span{
  font-size: 22px;
}
.reason .order{
  position: absolute;
  width: 50px;
  line-height: 50px;
  border-radius: 50%;
  top: -5%;
  right: 0;
  left: 0;
  margin: auto;
  background-color: #7b6e62;
  color: #686767;
  font-size: 30px;
  text-align: center;
}
.reasons li{
  position: relative;
  width: 33.2%;
}

/* .reasons li.bdr { 
  border-right: solid 1px;
  border-color: #f7f4ee
}
.reasons li.bdl {
  border-left: solid 1px;
  border-color: #f7f4ee
}
*/
.reasons li img{
  display: block;
  width: 100%;
  min-height: 216px;
  height: auto;
  background-color: #ffffff;
}
.reasons li .dtl{
  padding: 20px;
  background-color: #ffffff;
  /* border: solid 1px #cecece; */
  border-top: none;
}
.reasons li h3.ttl{
  font-size: 22px;
  color: #cfa957;
}

/*--- メニュー ---*/
.summary article{
  width: 50%;
  height: auto;
  box-sizing: border-box;
}
.summary article .img{
  display: block;
  width: 100%;
  height: auto;
}
.summary article .dtl{
  width: 90%;
  max-width: 510px;
  padding: 25px;
  background-color: #ffffff;
  position: relative;
  top: -50px;
  right: 0;
  left: 0;
  margin: 0 auto;
  box-sizing: border-box;
}
.summary article .txt{
  margin-bottom: 20px;
}
.summary article .price{
  position: relative;
  margin-bottom: 20px;
  text-align: right;
}
/* .summary article .price::after{
  content: "";
  display: block;
  width: 200px;
  height: 1px;
  background-color:#cecece;
  text-align: right;
  position: absolute;
  right: 0;
} */
.summary article .price span{
  font-size: 24px;
}
.summary article .btn_small{
  margin: 0 auto;
}

/*--- 施術の流れ ---*/
.flow{
  /* background: url(img/top/pc/bg_flow.jpg?v=2) no-repeat; */
  background-size: cover;
  background-position: center;
}
.slider{
  position: relative;
}
.slider .dtl{
  width: 100%;
  max-width: 570px;
  padding: 30px 30px 15px 30px;
  background-color: #ffffff;
  box-sizing: border-box;
}
.slider .dtl h3.ttl{
  margin-bottom: 10px;
}
.slider .figure{
  width: 100%;
  max-width: 570px;
  max-height: 306px;
}
.slider img{
  display: block;
  width: 100%;
  height: 100%;
}
.slider .txt{
  margin-bottom: 30px;
}
.flow .btn_basic{
  color: #ffffff;
}
.flow .btn_basic:hover{
  background-color: #ffffff;
  border: solid 1px #ffffff;
  color: #c48c0d;
}
.panel{
  display: none;
}
.inner_p{
  height: 306px;
  border: solid 1px;
  border-color: #8888;
}
.tab.active{
  background-color: #cfa953;
  color: #ffffff;
  transition: all .2s ease-out;
}
.panel.show{
  display:block;
}
.tab_group{
	position: absolute;
	right: 35%;
	bottom: 20px;
}
.tab{
  width: 25px;
  height: 25px;
  line-height: 25px;
  margin-right: 10px;
  text-align: center;
  cursor: pointer;
  color: #cfa953;
  border: solid 1px #cfa953;
}
.tab:last-child{
  margin-right: 0;
}
.panel_{
  display: none;
}
.inner_p{
  height: 306px;
}
.tab_.active{
  background-color: #c48c0d;
  color: #ffffff;
  transition: all .2s ease-out;
}
.panel_.show_{
  display:block;
}
.tab_group{
	position: absolute;
	right: 32%;
	bottom: 20px;
}
.tab_{
  width: 25px;
  height: 25px;
  line-height: 25px;
  margin-right: 10px;
  text-align: center;
  cursor: pointer;
  color: #c48c0d;
  border: solid 1px #c48c0d;
}
.tab_:last-child{
  margin-right: 0;
}

/*--- お客様の声 ---*/
.front .voice{
  /*--- background: url(img/top/pc/bg_voice.jpg?v=2) no-repeat; ---*/
  background-size: cover;
  background-position: center; 
  background-color: #ffffff;
}
.front .voice ul li{
  margin-right: 30px;
  margin-bottom: 30px;
}
.front .voice ul li:last-child{
  margin-right: 0;
}
.front .voice .inner{
  /*--- padding-bottom: 200px;---*/
  background: none;
}
.front .voice .size-resize{
  width: 200px;
  height: 200px;
  border-radius: 0%;
}

/*--- 新着情報とブログ ---*/
.information h2.ttl{
  margin-bottom: 0;
}
.information h3.ttl{
  font-size: 16px;
}
.information p{
  color: #888888;
}
.information .main_area{
  width: 50%;
  margin-right: 60px;
}
.information .main_area:last-child{
  margin-right: 0;
  margin-bottom: 0;
}
.information .button{
  margin-bottom: 50px;
  justify-content: space-between;
  align-items: center;
}
.front .news ul li p{
  margin-bottom: 10px;
}
.front .news ul li h3.ttl{
  padding-bottom: 15px;
  border-bottom: solid 1px #cecece;
  margin-bottom: 30px;
  color: #9e3523;
  font-weight: 500;
}
.front .blog ul li{
  width: 45%;
  max-width: 240px;
  margin-right: 5%;
}
.front .blog ul li:nth-child(even){
  margin-right: 0;
}
.blog ul li h3.ttl{
  color: #9e3523;
  font-weight: 500;
}
.blog ul li img{
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto 10px;  
}

/*--- Q&A ---*/
.accordion dt{
  position: relative;
}
.accordion dd{
  display: none;
}
.bg-w{
  background-color: #ffffff;
  padding: 20px;
  margin-bottom: 20px;
}
.bg-w:last-child{
  margin-bottom: 0;
}

.bg-w .link {
  color:#cfa957;  
}

.plus{
  position: absolute;
  right: 0;
  top: 0;
  width: 30px;
  height: 30px;
}
.plus span::before{
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  content: "";
  width: 20px;
  height: 2px;
  background-color: #838181;
}
.plus span::after{
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  content: "";
  width: 2px;
  height: 20px;
  background-color: #838181;
}
.active span::after{
  display: none;
}
.qa .plus span::before,
.qa .plus span::after{
  background-color: #9e3523;
}
span.q{
  color: #9e3523;
  display: flex;
  align-items: center;
}
span.a{
  display: flex;
  align-items: center;
  padding-top: 20px;
}
span.q::before{
  content: "Q";
  display: block;
  min-width: 40px;
  line-height: 40px;
  margin-right: 25px;
  text-align: center;
  border: solid 5px #B83E28;
  background-color: #9e3523;
  color: #f7f4ee;
}
span.a::before{
  content: "A";
  display: block;
  min-width: 40px;
  line-height: 40px;
  margin-right: 25px;
  text-align: center;
  border: solid 5px #e7dfd8;
  background-color: #ceb7a7;
  color: #ffffff;
}

/*--- サロン情報 ---*/
#page_salon .section{
  background-color: #f7f7f7;
}
#page_salon h2.ttl {
  color: #8888888;
  font-size: 30px;
  margin-bottom: 50px;
}
.salon .catch{
  color: #c48c0d;
}
.salon h3.ttl{
  margin-bottom: 0;
}
.salon .phone{
  padding-top: 0;
  margin-bottom: 20px;
}
.salon .btn_reservation:hover{
  background: url(img/top/pc/btn_reservation_hover.jpg?v=2) no-repeat;
  background-size: contain;
}
#page_salon h4{
  color:#888888;
  font-size: 20px;
  margin-bottom: 10px;
}
#page_salon p.att{
  color:#888888;
  font-size: 18px;
  margin-top: 20px;
  margin-bottom:20px;
  text-align: center;
}

/*--- LINE登録 ---*/
.ttl_line{
  margin-bottom:30px;
}
h3.ttl_line{
  font-size: 22px;
  color: #cfa957;
  margin-bottom: 30px;
}

/*--- 代表あいさつ ---*/
/* .greeting.bg{
  background: url(img/top/pc/bg_greeting.jpg?v=2) no-repeat; 
  background-size: cover;
  background-position: 72% 38%;
} */
.greeting .inner{
  padding-bottom: 100px;
}
.greeting .main_area{
  overflow: hidden;
}
.greeting .txt{
  width:  80%;
  margin: 0 auto;
}
  /* float: right; }*/

.greeting .txt p{
  margin-bottom: 17px;
}
.greeting .txt div:first-child{
  font-size: 20px;
}
/* @media screen and (max-width: 767px) {
  .greeting.bg{
    background: url(img/top/pc/bg_greeting.jpg?v=2) no-repeat; 
    background-size: cover;
    background-position: 22% 10%;
  }
} */

/*---------- はじめての方へ ----------*/

#page_first .reasons li{
  margin-bottom: 80px
}
#page_first .reasons li:last-child{
  margin-bottom: 0;
}

/*---------- メニュー ----------*/

#page_menu .price_r{
  text-align: right;
  margin-bottom: 20px;
  color: #444;
}

/*---------- コンセプト（選ばれる理由） ----------*/
#page_reason .section {
  background-color: #f7f4ee;
}
#page_reason .section .h2.ttl {
  color: #888888;
  font-size: 30px;
}
/* #page_reason .section li.bdr {
  border-right: solid 1px;
  border-color: #f7f7f7;
}
#page_reason .section li.bdl {
  border-left: solid 1px;
  border-color: #f7f7f7;
} */
#page_reason .concept .txt_c{
  font-size: 24px;
  margin-bottom: 0;
}
#page_reason .reasons li {
  margin-bottom: 80px;
}

/*---------- 施術の流れ ----------*/

span.step{
  display: block;
  width: 40px;
  line-height: 40px;
  margin-right: 25px;
  text-align: center;
  border: solid 5px #E0c890;
  background-color: #cfa953;
  color: #ffffff;
}
.detail{
  padding: 0 20px;
}
.detail .ttls{
  align-items: center;
  margin-bottom: 20px;
}
.detail .ttls h3.ttl{
  margin-bottom: 0;
}
.detail h4.ttl{
  margin-bottom: 10px;
  color: #c48c0d;
}
.icon_arrow{
  max-width: 200px;
  width: 100%;
  height: auto;
  margin: 0 auto 50px !important;
}
.steps li{
   width: 50%; 
  margin-bottom: 50px;
}
.set span.step{
  margin: 0 auto 20px;
}
#page_flow .flow{
  background: none;
}
#page_flow .img{
  margin-bottom: 20px;
}
#page_flow .caution{
  margin-bottom: 50px;
}
#page_flow h4{
  font-size:20px;
  margin-bottom: 20px;
}
/*---------- キャンペーン ----------*/

.box{
  margin-bottom: 50px;
}
.box:last-child{
  margin-bottom: 0;
}
.course{
  margin-bottom: 15px;
  background-color: #ffffff;
  border: solid 1px #e7dfd8;
}
.course .tbl_002{
  width: 50%;
}
.course .img{
  width: 540px;
  height: 370px;
  border-right: solid 1px #e7dfd8;
}
.course .tbl_002 th,
.course .tbl_002 td{
  display: block;
  width: 100%;
}
.course .tbl_002 th{
  border-top: none;
  border-bottom: solid 1px #e7dfd8;
}
.course .tbl_002 h3.ttl{
  margin-bottom: 0;
}
.course .tbl_002 td{
  /* padding: 40px; */
  background-color: transparent;
  border: none;
  text-align: left;
}
span.price_r{
  display: block;
  font-size: 23px;
  color: #d05230;
}
span.price_r:first-of-type{
  margin-top:10px;
}
@media screen and (max-width: 767px) {
  .course .img{
    width: 100px;
    height: auto;
  }
}

/*---------- キャンセルポリシー/プライバシーポリシー ----------*/

.item dt{
  display: flex;
  align-items: center;
  font-size: 20px;
}
.item dd{
  padding-top: 20px;
}
span.case{
  display: block;
  min-width: 40px;
  line-height: 40px;
  margin-right: 25px;
  text-align: center;
  border: solid 5px #d1d1d1;
  background-color: #838181;
  color: #ffffff;
}

/*---------- 採用情報 ----------*/

.bg_tbl{
  background-color: #ffffff;
  padding-bottom: 50px;
  margin-bottom: 50px;
}
.bg_tbl:last-child{
  margin-bottom: 0;
}
.bg_tbl .img{
  margin-bottom: 20px;
}
.tbl_003{
  max-width: 1040px;
  width: 95%;
  margin: 0 auto 20px;
  border: solid 1px #cecece;
  box-sizing: border-box;
}
.tbl_003 tr{
  border-bottom: solid 1px #cecece;
}
.tbl_003 th {
  width: 180px;
  background-color: #f0f4f5;
  text-align: left;
  padding-left: 20px;
  vertical-align: middle;
  box-sizing: border-box;
}
.tbl_003 td {
  width: calc(100% - 240px);
  padding: 60px;
  box-sizing: border-box;
}
.tbl_003.part th{
  background-color: #f9ede6;
}
.tbl_003 td span{
  display: block;
  color: #c48c0d;
  font-weight: bold;
}
span.point{
  font-size: 18px;
  margin-bottom: 15px;
}
span.point_s{
  margin-bottom: 10px;
}


/*---------- サロン情報（アクセス） ----------*/

.salons .summary article{
  width: 100%;
}
.salons .summary article img{
  width: 50%;
  /* max-width: 570px; */
}
.salons .summary article .dtl{
  width: 50%;
  max-width: inherit;
  position: static;
}
.salons .salon_001{
  margin-bottom: 100px;
}
.map_slider{
  max-width: 570px;
  width: 100%;
}
.map_slider img{
  height: auto;
  width: 100%;
}
#maps .slick-dots{
  bottom: 10px;
}
#maps .slick-dotted.slick-slider{
  touch-action: pan-y;
  margin-bottom: 0;
}
#maps .slick-dots li button:before{
  font-size: 20px;
}
#maps .slick-dots li.slick-active button:before{
  color: #c48c0d;
}
@media screen and (max-width: 767px) {
  .salons .summary article img{
    width: 100%;
  }
}

/*---------- ご予約・お問い合わせ ----------*/

#page_reservation h3.ttl{
  color: #888888;
}
.attention p,
.attention ul{
  margin-bottom: 30px
}
.attention .lists li{
  margin-bottom: 10px;
}
.attention p.end{
  margin-bottom: 0;
}
.attention span{
  color: #c48c0d;
}
.calender h4.ttl span{
  display: block;
}
.calender .month{
  border: solid 1px #cecece;
  width: 100px;
  margin: 0 auto 20px !important;
}
.calender ul li{
  margin-right: 60px;
}
.calender ul li:last-child{
  margin-right: 0;
  margin-bottom: 0;
}
.order li{
  position: relative;
  width: 20%;
  margin-right: 2%;
  padding: 10px;
  max-width: 200px;
  background-color: #ffffff;
  border: solid 1px #ceb7a7;
  box-sizing: border-box;
}
.order li span{
  display: block;
  color: #ceb7a7;
}
.order li::after{
  content: "";
  position: absolute;
  right: -10px;
  top: 0;
  bottom: 0;
  height: 0;
  margin: auto;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 10px solid #ceb7a7;
}
.order li:last-child::after{
  display: none;
}

.cform th {
	font-size: 14px;
	width: 20%; 
	border-bottom: solid 1px #d6d6d6;
	padding: 10px 0 10px 15px;
  font-weight: normal;
  text-align: left;
}
.cform td {
	font-size: 14px;
	line-height: 150%;
	border-bottom: solid 1px #d6d6d6;
  padding: 10px 5px;
}
.cform td:nth-child(3){
  display: flex;
}
.cform {
	width: 100%;
	margin: 0 auto 50px;
}
.cform [type=submit] {
	display: inline-block;
	font-size: 20px;
	padding: 10px 30px;
	text-decoration: none;
	background: #ff8f00;
	color: #FFF;
	border-bottom: solid 4px #B17C00;
	border-radius: 3px;
}
.cform option,
.cform textarea,
.cform input[type=text],
.cform input[type=email],
.cform input[type=search],
.cform input[type=url] {
  width: 100%;
}
.cform input,
.cform select{
  height: 40px;
}
.submit-btn input{
  position: relative;
  display: block;
  width: 100%;
  max-width: 300px;
  height: 50px;
  margin: 0 auto;
  color: #9e3523;
  background: url(img/top/pc/bg_btn.png?v=2) no-repeat;
  border: none;
  background-size: contain;
  cursor: pointer;
  transition: .3s;
}
.submit-btn input:hover{
  background: url(img/top/pc/bg_btn_hb.png?v=2) no-repeat;
  background-size: contain;
  color: #f7f4ee;
  background-color: #f7f4ee;
}
.checkbox{
  width: 100%;
  margin: 0 auto 30px;
  text-align: center;
}
.errors{
  display: flex;
}
.required-srt {
	font-size: 8pt;
	padding: 5px;
	color: #ce0000;
	border-radius: 3px;
	margin-left: 10px;
	vertical-align: middle;
}

#page_reservation .section.attention .inner_s{
  padding: 50px 0;
}

/*---------- 顔頭筋ストレッチリフト ----------*/

#page_f_a_head .flow .tab_group {
  position: absolute;
  right: 12%;
  bottom: 30px;
}
#page_f_a_head .scroll{
  overflow-y: scroll;
  height: 150px;
}
#page_f_a_head .part .tab_group{
  position: absolute;
  right: 28%;
  bottom: 30px;
}
.part{
  background: none;
}
.appeal{
  background: url(img/sub/f-a-head/pc/bg_appeal.jpg?v=2) no-repeat;
  background-size: cover;
  background-position: center;
}
.merits li{
  width: 150px;
  height: 150px;
  margin-right: 30px;
  margin-bottom: 30px;
}
.merits li span{
  width: 100%;
  height: 100%;
  font-size: 20px;
  background-color: #ffffff;
  color: #c48c0d;
  border: solid 1px #c48c0d;
  border-radius: 50%;
}
.example ul{
  width: 100%;
  margin: 0 auto 20px;
}
.example ul li:nth-child(2){
  padding: 0 100px;
}
.example ul li:nth-child(2) .img{
  width: 100%;
  max-width: 60px;
  height: auto;
}
.example ul li:first-child .img,
.example ul li:nth-child(3) .img{
  width: 100%;
  max-width: 313px;
  height: auto;
}
.example p{
  font-size: 24px;
  margin-bottom: 0 !important;
}
.example p.txt_c span{
  font-size: 30px;
  color: #c48c0d;
}
.method{
  background: url(img/sub/f-a-head/pc/bg_method.jpg?v=2) no-repeat;
  background-size: cover;
}
.method h2.ttl{
  color: #c48c0d;
}
.method p.txt_c{
  font-size: 30px;
  margin-bottom: 0 !important;
}
.method p.txt_c span{
  font-size: 18px;
}


/*---------- ネイル ----------*/

.nail h2.ttl{
  margin-bottom: 40px;
}
.nail .desc{
  margin-bottom: 70px;
}
.type h2.ttl{
  margin-bottom: 10px;
  color: #c48c0d;
}
.type .txt_c{
  margin-bottom: 40px;
}
.tbl_001{
  width: 100%;
  margin: 0 auto;
}
.tbl_001 tr{
  line-height: 50px;
}
.tbl_001 th {
  width: 240px;
  border-bottom: solid 1px #c48c0d;
  color: #c48c0d;
  text-align: left;
  padding: 0 10px;
  box-sizing: border-box;
}
.tbl_001 td {
  width: calc(100% - 270px);
  padding: 0 30px;
  border-bottom: solid 1px #cecece;
  box-sizing: border-box;
}
#page_nail .tab_group{
	position: absolute;
	right: 25%;
	bottom: 20px;
}

/*---------- サーモ・シェイプ ----------*/

.merit{
  background: url(img/sub/b-s-m2/pc/bg_merit.jpg?v=2) no-repeat;
  background-size: 100% 360px;
  background-position: top;
}
.merit .inner{
  padding-bottom: 0;
}
.merit h2.ttl{
  color: #c48c0d;
}

/*---------- 美BODYコルギ ----------*/

#page_b_korugi .tab_group{
	position: absolute;
	right: 32%;
	bottom: 20px;
}

/*---------- お知らせ一覧 ----------*/

#category_news ul li{
  margin-bottom: 20px;
}
#category_news ul li a{
  display: flex;
  color: #444444;
  background-color: #ffffff;
}
#category_news .txt_box{
  display: flex;
  align-items: center;
  padding: 0 20px;
  box-sizing: border-box;
  background-color: #ffffff;
}
#category_news .ttl_box{
  padding: 20px;
}
#category_news .txt_box p{
  font-size: 14px;
  color:#888888;
}
#category_news .ttl_box h3{
  margin-bottom: 0;
  font-size: 16px;
  color: #9e3523;
  font-weight: 500;
}

/*---------- ブログ/お客様の声一覧 ----------*/

.tile.flx_w{
  justify-content: flex-start;
}
.tile li{
  width: 44%;
  margin-right: 4%;
  margin-bottom: 40px;
}
.tile li:nth-child(4n){
  margin-right: 0;
}
.tile li a{
  color: #444444;
}
.tile li p{
  font-size: 16px
}
.tile li h3.ttl{
  font-size: 16px;
  color: #9e3523;
  font-weight: 500
}
.tile li img{
  margin-bottom: 10px;
}
h2.post_ttl{
  margin-bottom: 50px;
  font-size: 28px;
  color: #686767;
}

/*---------- シングル ----------*/

.sub.single{
  width: 100%;
}

.single .section .inner{
  padding: 50px 0 80px;
}

@media screen and (max-width: 1024px){

  .header{
    min-height: inherit;
    box-shadow: 0px 1px 1px 1px rgba(0,0,0,0.1)
  }
  .header h1.desc{
    margin-bottom: 10px;
  }
  .mv p:nth-child(2n){
    font-size: 15px;
  }
  .mv p:first-child{
    font-size: 25px;
  }
  .btn_image:hover{
    display: block;
  }
  .button, .header .address{
    display: none;
  }
  .nav{
    display: none;
  }
  .nav .nav_global{
    display: none !important;
  }
  .nav .nav_mobile{
    display: block !important;
  }
  .reasons li{
    width: 50%;
    margin-bottom: 40px !important;
  }
  /* .reasons li:nth-child(2) .dtl{
    border-right: solid 1px #cecece;
  }
  */
  .inner_p{
    height: auto;
  }
  .flow .slider .figure{
    max-width: inherit;
    max-height: inherit;
  }
  .flow .slider .dtl{
    max-width: inherit;
    padding: 30px;
  }
  .flow .dtl p:last-child{
    padding-bottom: 60px;
  }
  .flow .slider .tab_group{
    right: 0 !important;
    left: 0;
    margin: auto;
  }
  .flow_l .tab_group{
    padding: 0 50px;
    flex-wrap: wrap;
  }
  .flow_l .tab{
    margin-bottom: 10px;
  }
  .flow .flx,
  .information .flx{
    display: block;
  }
  .information .btn_small.pc{
    display: none;
  }
  .information .btn_small.sp{
    display: block !important;
  }
  .information .main_area{
    width: 100%;
    margin-right: auto;
  }
  .information .ul{
    margin-bottom: 50px;
  }
  .information .btn_small{
    margin: 0 auto;
  }
  .insta_sp_width{
	max-width: 50px;
  }
  .front .blog ul li{
    width: 100%;
    max-width: inherit;
    margin-right: 0;
  }
  .front .blog ul li:nth-child(even){
    margin-right: 0;
  }
  .front .blog .slick-dots li{
    width: auto;
 }
  .summary article .dtl{
    max-width: 650px;
  }
  .sub.contents .desc img{
    /* min-width: inherit; */
    width: 100%;
    margin-left: 0;
    margin-bottom: 30px;
  }
  .sub.contents .desc .txt{
    margin-bottom: 50px;
  }
  .map_slider{
    max-width: inherit;
  }
  .salons .summary article img{
    max-width: inherit;
  }
  .salons .summary article .dtl{
    width: 100%;
    max-width: inherit;
  }
  .salon .flx,
  .f_a_head .flx,
  .endermologie_a .flx,
  .b_s_m2 .flx,
  .b_korugi .flx{
    display: block;
  }
  #page_f_a_head .scroll{
    height: auto;
    overflow-y: auto;
  }
  .example ul li:nth-child(2){
    padding: 0 50px;
  }
  .endermologie_a .txt{
    margin-bottom: 40px;
  }
  .endermologie_a .desc img{
    width: 100%;
    margin-left: auto;
  }
  .tbl_001 th,
  .tbl_001 td,
  .tbl_002 th,
  .tbl_002 td,
  .tbl_003 th,
  .tbl_003 td {
    display: block;
    width: 100%;
  }
  .tbl_001 th {
    width: 100%;
  }
  .tbl_001 td {
    width: 100%;
    padding: 0 10px;
    margin-bottom: 40px;
  }
  .tbl_001 td:last-child{
    margin-bottom: 0;
  }
  .tbl_002 th {
    border-bottom: none;
  }
  .tbl_003{
    border: none;
  }
  .tbl_003 tr{
    border-bottom: none;
  }
  .tbl_003 th{
    height: 70px;
    line-height: 70px;
    text-align: center;
  }
  .tbl_003 td {
    padding: 30px 0 30px 0;
  }
  .span.step{
    margin-bottom: 20px;
  }
  .recruit .btn_entry{
    width: 95%;
  }
  .recruit .btn_entry:hover{
    width: 95%;
  }
  .course .tbl_002{
    width: 100%;
  }

  .btn_burger{
    display: block !important;
    position: absolute;
    right: 0;
    top: 40%;
    width: 60px;
    height: 60px;
  }
  .btn_burger p{
    text-align: center;
    font-size: 12px;
  }
  #burger{
    width: 40px;
    height: 40px;
    display: block;
    margin: 0 auto;
    cursor: pointer;
    position: relative;
  }
  #burger li{
    width: 100%;
    height: 2px;
    background-color: #686767;
    margin: 0 auto;
    position: absolute;
    right: 0;
    left: 0;
    top: 50%;
    transition: .2s;
  }
  #burger:before{
    content: "";
    background-color: #686767;
    width: 100%;
    height: 2px;
    position: absolute;
    margin: 0 auto;
    right: 0;
    left: 0;
    top: 10px;
    transition: .2s;
  }
  #burger:after{
    content: "";
    background-color: #686767;
    width: 100%;
    height: 2px;
    position: absolute;
    right: 0;
    left: 0;
    margin: 0 auto;
    top: 30px;
    transition: .2s;
  }
  #burger.open li{
    display: none;
  }
  #burger.open:before{
    transform: rotateZ(30deg);
    top: 20px;
  }
  #burger.open:after{
    transform: rotateZ(-30deg);
    top: 20px;
  }
  

}


@media screen and (max-width: 767px) {
  .wrapper{
    width:100%;
    overflow: hidden;
  }
  .pc{
    display: none !important;
  }
  .sp{
    display: block !important;
  }
  .btn_side{
    display: none;
  }
  .footer .address{
    margin-bottom: 75px;
  }
  .footer .address li{
    margin-right: 0;
    margin-bottom: 45px;
   }
  .footer .address li:nth-child(2){
    margin-right: 0;
    margin-bottom: 0;
  }
  .footer .btn_map{
    margin: 0 auto;
  }
  .policy{
    text-align: center;
    margin-bottom: 80px;
  }
  .policy ul{
    justify-content: center;
  }
  .policy ul li:first-child{
    margin-bottom: 20px;
  }
  .btn_footer{
    display: flex !important;
    position: fixed;
    margin : 0;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 50px;
    z-index: 9999;
    opacity : 1 !important;
    background-color: #9e3523;
  }
  .btn_footer .img{
    margin : 0;
    width: 100%;
  }
  .btn_basic{
    max-width: 240px;
    height: 40px;
  }
  .btn_basic img{
    width: 240px;
  }
  .btn_basic_v{
    max-width: 240px;
    height: 40px;
    margin-top:250px;
  }
  .btn_basic_w{
    max-width: 240px;
    height: 40px;   
  }
  .btn_basic_w img{
    width: 240px;
  }
  .btn_reservation{
    height: auto;
  }
  .btn_entry{
    background-color: transparent;
    border: none;
  }
  .btn_entry img{
    max-width: inherit;
    padding: 0;
  }
  .recruit .btn_entry:hover{
    background: url(img/top/sp/btn_entry.png?v=2) no-repeat;
    background-size: contain;
  }
  .greeting .btn_reservation:hover{
    background: url(img/top/sp/btn_recruit.png?v=2) no-repeat;
    background-size: contain;
  }
  .btn_reservation_sp{
    display: flex;
    align-items: center;
    justify-content: center;
    width: calc(100% - 60px);
    height: 50px;
    font-size: 16px;
    color: #ffffff;
    /*background-color: #c981a4;*/
    background:rbga(201,129,164,1);
  }
  .btn_reservation_sp:hover{
  }
  /* .btn_reservation_sp::before{
    content: "";
    display: block;
    background: url(img/top/sp/btn_icon.png?v=2) no-repeat;
    width: 21px;
    height: 15px;
    background-size: contain;
    margin-right: 10px;
  } */
  .btn_top_sp{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    background-color: #ffffff;
  }
  .btn_top_sp .img{
    width: 100%;
  }
  .flx{
    display: block;
  }
  .section .inner{
    padding: 40px 0;
  }
  .single .section .inner{
    padding: 40px 0;
  }
  h2.ttl{
    font-size: 24px !important;
    margin-bottom: 20px !important;
    text-align: center;
    color: #888888;
  }
  h2.intro_ttl span.ml {
    margin-top: 20px;
  }
  h3.ttl{
    font-size: 18px !important;
    margin-bottom: 15px !important;
  }
  .menu h3.ttl{
    text-align: center;
  }
  span.ml{
    font-size: 16px;
    display: block;
  }
  .reasons li h3.ttl{
    font-size: 18px;
  }
  .trial .tbl_002{
    height: auto;
  }
  .trial .tbl_002 th{
    border-right: none;
    /* border-bottom: solid 1px #c48c0d; */
  }
  .mv .ttl{
    top: 10%;
    right: 5%;
    display: flex;
    align-items: center;
  }
  .reason{
    /* background: url(img/top/pc/bg_reason.jpg) no-repeat;
    background-size: 100% 510px; */
    background-position: bottom;
  }
  .reasons li{
    width: 100%;
  }
  .reasons li:last-child{
    margin-bottom: 0 !important;
  }
  /* .reasons li:first-child .dtl{
    border-right: solid 1px #cecece;
  } */
  .summary article{
    width: 100%;
    max-width: inherit;
  }
  /* .flow{
    background: url(img/top/sp/bg_flow.jpg?v=2) no-repeat;
    background-size: cover;
    background-position: center;
  } */
  .slider img{
    width: 100%;
  }
  .slider .dtl{
    width: 100%;
  }
  .information .button{
    margin-bottom: 0;
  }
  .information h3.ttl{
    font-size: 15px !important;
  }
  .front .voice{
    /* background: url(img/top/pc/bg_voice.jpg) no-repeat; 
    background-size: cover;
    background-position: 60% 30%;*/
    padding-bottom: 40px;
  }
  .front .voice .size-resize{
    margin-bottom: 10px;
  }
  .sub.contents .salon .inner{
    padding-bottom: 40px;
  }
  .sub.contents .txt_c{
    margin-bottom: 40px;
  }
  .sub.contents .desc .txt{
    margin-bottom: 20px;
    margin-left: 0;
  }
  .sub.contents .desc p{
    width: 100%;
  }
  .salon .btn_reservation:hover{
    background: url(img/top/sp/btn_reservation.jpg?v=2) no-repeat;
    background-size: contain;
  }
  .cmn_btn.btn_reservation{
    margin-bottom: 0;
  }
  .cmn_btn.btn_reservation:hover{
    background: url(img/sub/cmn/sp/btn_reservation_hover.jpg?v=2) no-repeat;
    background-size: contain;
  }
  .salons .salon_001{
    margin-bottom: 50px;
  }
  .bg-w{
    padding: 10px;
  }
  .item dt,
  span.q,span.a{
    font-size: 14px;
  }
  .item dd{
    padding-top: 10px;
    font-size: 14px;
  }
  span.case,
  span.q::before,
  span.a::before{
    min-width: 25px;
    line-height: 25px;
    margin-right: 10px;
  }
  span.q::before{
    border: solid 2px #AE675B;
  }
  span.case,
  span.a::before{
    border: solid 2px #d1d1d1;
  }
  .plus span::before{
    width: 10px;
  }
  .plus span::after{
    height: 10px;
  }
  .front .blog ul li{
    flex-wrap: nowrap;
  }
  .greeting .txt{
    width: 100%;
    float: none;
  }
  .greeting .txt div:first-child{
    text-align: center;
  }
  .greeting .txt div:nth-child(2){
    font-size: 16px;
    width: 95%;
    margin: 0 auto;
  }
  .greeting .btn_small{
    margin: 0 auto;
    clear: both;
  }
  /* .greeting{
    /* background: url(img/top/sp/bg_greeting.jpg?v=2) no-repeat;
    background-size: 200%;
    background-position: 22% 10% */
  }
  #category_news .txt_box{
    margin: 10px;
  }
  #category_news .ttl_box {
    padding: 20px 10px;
  }
  /* .tile li{
    width: 48%;
    margin-right: 4%;
  } */
  /* .tile li:nth-child(even){
    margin-right: 0;
  } */
  .promise .btn_reservation img {
    margin-bottom: 50px;
  }
  #page_reason .concept .txt_c{
    font-size: 18px;;
  }
  .endermologie_a .desc{
    margin-bottom: 40px;
  }
  .example ul li:nth-child(2){
    padding: 0 10px;
  }
  .example p,
  .example p.txt_c span,
  .method p.txt_c{
    font-size: 18px;
  }
  .merit .inner{
    padding-bottom: 0;
  }
  .merits li{
    margin-right: 10px;
  }
  span.step{
    margin: 0 auto 20px;
  }
  .detail .ttls{
    text-align: center;
  }
  @media screen and (max-width: 767px) {
   .steps li{
    width: 100%;
  } 
}

  .set .txt_c{
    margin-bottom: 20px !important;
  }
  /* .course .img{
    width: 100%;
  } */
  #page_reservation .section .inner{
    padding-bottom: 0;
  }
  #page_reservation .salon .inner{
    padding-bottom: 50px;
  }
  #page_reservation .calender .txt_c{
    margin-bottom: 10px;
  }
  .calender ul li{
    margin-right: 0;
    margin-bottom: 40px;
  }
  @media screen and (max-width: 767px){
  .order li{
    width: 100%;
    max-width: inherit;
    margin-right: 0;
    margin-bottom: 15px;
  }
}
  .order li:last-child{
    margin-bottom: 0;
  }
  @media screen and (max-width: 767px){
  .order li::after{
    content: "";
    width: 0;
    height: auto;
    left: 0;
    right: 0;
    top: 90px;
    border-top: 10px solid #ceb7a7;
    border-right: 10px solid transparent;
    border-left: 10px solid transparent;
  }
}
  .cform th,
	.cform td {
		width: 100%;
		display: block;
    border-top: none;
    box-sizing: border-box;
  }
  .cform th {
    border-bottom: none;
  }
  .submit-btn input {
    width: 240px;
    height: 40px;
  }
  .submit-btn input img{
    width: 240px
  }
}

.checkbox p a {
  color: #b882c4;
  border-bottom: solid 1px #b882c4
}
.checkbox p a:hover {
  color: #cfa957;
  border-bottom: solid 1px #cfa957;
}
.reservation__calendar-list {
    display: flex;
    margin-left: -30px;
    margin-bottom: 60px
}

@media screen and (max-width: 767px) {
.reservation__calendar-list {
    flex-wrap: wrap
}

.reservation__calendar-item {
    width: 100%
}

.reservation__calendar-item:not(:last-child) {
    margin-bottom: 20px
}
}

.reservation__calendar-item {
    width: 100%;
    padding-left: 30px
}

.calendar__title {
  margin-bottom: 20px;
  text-align: center;
  font-size: 20px;
  line-height: 1.4em
}

.calendar__controller-wrap {
    display: flex;
    justify-content: center;
    margin-bottom: 20px
}

.calendar__controller-prev {
    padding: 10px 14px;
    border-top: 1px solid #d8d8d8;
    border-left: 1px solid #d8d8d8;
    border-bottom: 1px solid #d8d8d8;
    color: #444;
    background-color: #fff;
    transition: background-color 0.3s
}

.calendar__controller-prev:hover {
    background-color: #d8d8d8
}

.calendar__controller-prev.is-disabled {
    color: #b3b3b3;
    background-color: #f4f4f4;
    cursor: auto
}

.calendar__controller-center {
    padding: 10px 14px;
    border: 1px solid #d8d8d8;
    background-color: #fff;
    color: #444
}

.calendar__controller-next {
    padding: 10px 14px;
    border-top: 1px solid #d8d8d8;
    border-right: 1px solid #d8d8d8;
    border-bottom: 1px solid #d8d8d8;
    background-color: #fff;
    color: #444;
    transition: background-color 0.3s
}

.calendar__controller-next:hover {
    background-color: #d8d8d8
}

.calendar__controller-next.is-disabled {
    color: #b3b3b3;
    background-color: #f4f4f4;
    cursor: auto
}

.calendar__table {
    width: 100%;
    text-align: center;
    border-top: 1px solid #d8d8d8;
    border-left: 1px solid #d8d8d8
}

.calendar__table th,.calendar__table td {
    width: 14.2857%;
    padding: 14px 10px;
    border-bottom: 1px solid #d8d8d8;
    border-right: 1px solid #d8d8d8
}

.calendar__table th {
    color: #3a4b5f;
    background-color: #f4f4f4
}

.calendar__table td {
    background-color: #fff;
    line-height: 1.4em
}

.calendar__table-wrap>.calendar__table:not(:first-child) {
    display: none
}

.calendar__table td.calendar__today {
    background-color: #fffecc
}

.calendar__table td.calendar__old-day {
    background-color: #b3b3b3
}

.calendar__table td.calendar__holiday {
    background-color: #ffdde8
}

.calendar__day {
    font-size: 16px
}

.calendar__holiday-text {
    margin-top: 18px
}

.calendar__am-text {
    padding-bottom: 4px;
    margin-top: 8px;
    margin-bottom: 4px;
    border-bottom: 1px dashed #d8d8d8
}

@media screen and (max-width: 767px) {
    .calendar__table th,.calendar__table td {
        width:14.2857%;
        padding: 10px 6px
    }
}

@media screen and (max-width: 500px) {
  .front .voice ul li{
    margin-right: 0;
  }

}

.single-article {
  background: #fff;
  padding: 15px;
}

.single-title {
  text-align: center;
  margin-bottom: 50px;
  font-size: 30px;
}

.single-article > * {
  margin-bottom: 30px;
}

.single-article__date {
  display: block;
  margin-bottom: 15px;
  text-align: right;
  color: #888888;
  font-size: 14px;
}

.single-article__title {
  display: block;
  margin-bottom: 50px;
  text-align: center;
  color: #c28804;
  font-size: 18px;
}

.single-article__button-wrap {
  margin-top: 40px;
  margin-bottom: 20px;
}

.single-article p {
  font-size: 16px;
  line-height: 1.6em;
}

.single-article h2 {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.6em;
  color: #9e3523;
}

.single-article h3 {
  font-size: 20px;
  line-height: 1.6em;
  color: #c28804;
  padding: 8px 15px;
  background-color: #fcf8f3;
}

.single-article h4 {
  font-size: 18px;
  line-height: 1.6em;
  color: #444444;
  border-bottom: 1px solid #b3b3b3;
  padding-bottom: 8px;
}

.single-article h5 {
  font-size: 18px;
  line-height: 1.6em;
  color: #d05230;
  border-bottom: 1px dotted #d05230;
  padding-bottom: 8px;
}

.single-article h6 {
  font-size: 16px;
  line-height: 1.6em;
  color: #c28804;
}

.single-article ul > li {
  position: relative;
  padding-left: 20px;
  margin-bottom: 10px;
  line-height: 1.4em;
}

.single-article ul >li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  width: 6px;
  height: 6px;
  background-color: #c28804;
  border-radius: 50%;
}

.single-article ul > li:not(:last-child) {
  margin-bottom: 10px;
}

.single-article ol {
  margin-left: 30px;
}

.single-article ol > li {
  padding-left: 30px;
  line-height: 1.4em;
  list-style: decimal;
}

.single-article ol > li:not(:last-child) {
  margin-bottom: 10px;
}
.single-article a {
  color: #9e3523;
}

.single-article__button-wrap a span.flx_c {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 16px;
}

.form__link {
  color: #d05230;
}

.blog-img-wrap {
  position: relative;
  width: 100%;
  height: 160px;
  margin-bottom: 10px;
  overflow: hidden;
}

.blog-img-wrap > img {
  position: absolute;
  top: 50%;
  left: 50%;
  max-width: unset;
 /* min-width: 100%;
  min-height: 100%;*/
  transform: translate(-50%, -50%);
}

.wp-pagenavi span {
  margin: 0;
  margin-right: 10px;
  border: none;
}

.mw_wp_form.mw_wp_form_confirm .checkbox {
  display: none;
}

.mw_wp_form.mw_wp_form_confirm .submit-btn {
  margin-bottom: 20px;
}

.js-not-active {
  display: none!important;
}

img {
	width:auto;
	height:auto;
}


.salon {
  width: 100%;
  background-color: #f7f4ee;
}
.salon h2.ttl.pg{
  color: #888888;
  margin-bottom: 50px;
  font-size: 30px;
}
.salon__link {
  position: relative;
  display: block;
  height: 450px;
  background-image: url(img/top/pc/bg_salon.jpg);
  background-repeat: no-repeat;
  background-position: center center;
  background-attachment: fixed;
  background-size: 100%;
} 
.salon__link img {
  position: absolute;
  top: 50%;
  left: 50%;
  max-width: 260px;
  margin: 0 auto;
  transform: translate(-50%, -50%);
  text-align: center;
  opacity: 0.7;
}
.salon__link img:hover {
  opacity: 0.8;
}
.campaign-banner__banner-title {
  position: absolute;
  top: 184px;
  left: 0;
  width: 100%;
  text-align: center;
  font-size: 2rem;
  color: #fffff8;
}
.campaign-banner__banner-text {
  position: absolute;
  top: 236px;
  left: 0;
  width: 100%;
  text-align: center;
  font-size: 2rem;
  color: #fffff8;
}
.campaign-banner__link-wrap {
  position: absolute;
  top: 280px;
  left: 0;
  width: 100%;
  text-align: center;
}
.campaign-banner__mote-link {
  display: inline-block;
  padding: 10px 60px 12px;
  border-bottom: 1px solid #fffff8;
  font-size: 1.2rem;
  color: #fffff8;
}
@media screen and (max-width: 1024px) {
.salon__link {
  /* background-size: auto 100%; */
  background-size: cover;
  background-attachment: scroll;
}
.campaign-banner__banner-title {
  top: 94px;
}
.campaign-banner__banner-text {
  top: 140px;
  padding: 0 20px;
  line-height: 1.4em;
}
.campaign-banner__link-wrap {
  top: 216px;
}
}
@media screen and (max-width: 767px) {
.reasons li.bdr {
  border-right: none;
}
.reasons li.bdl {
  border-left: none;
}
.summary article .price {
  text-align: center;
}
.summary article .price::after{
  display: none;
}
.menu p{
  /* text-align: center; */
}
.voice h2.ttl{
  /* color: #fff */
}
}

/*---------- ページヘッダー ----------*/
#pageHeader {
  background-size: cover;
  overflow: hidden;
  background-color: #f7f7f7;}
#pageHeader .pageHeaderWrap {
  display: flex;
  align-items: center;
  padding: 80px 0;
  height: 140px;
  background-size: cover;
  background-image: url(img/sub/header_pc.jpg); 
  background-position-y: -33px;
}
#pageHeader .pageHeaderBox {
  margin: 0 0 0 40px; }
#pageHeader p, #pageHeader h2 { 
  color: #f7f4ee; }
#pageHeader p {
  margin: 0 auto;
  line-height: 1;
  font-size: 20px;
  font-weight: normal;
  color: #f7f4ee}
#pageHeader h2 {
  font-size: 24px;
  margin: 0;
  padding: 0;
  line-height: 1.2;
  font-weight: bold; }
#pageHeader h2 span {
  margin-bottom: 10px;
  font-weight: 100;
  font-size: 14px;
  display: block; }
@media screen and (max-width: 767px) {
  #pageHeader .pageHeaderWrap {
    background-image: url(img/sub/header_sp.jpg); 
    height: 0 ;
    background-repeat: no-repeat;
    background-position: center;}
  }

/* ----------------カラム------------------- */
.column2Wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 40px; }
  .column2Wrap .columnBox {
    flex-basis: 100%;
    margin-top: 0; }
    .column2Wrap .columnBox:nth-of-type(n + 2) {
      margin-top: 20px; }
  .column2Wrap.sp140 .columnBox {
    flex-basis: 100%;
    max-width: 100%; }
    .column2Wrap.sp140 .columnBox:nth-of-type(n + 2) {
      margin-top: 20px; }

.column3Wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 40px; }
  .column3Wrap .columnBox {
    flex-basis: 100%;
    max-width: 100%;
    margin-bottom: 30px; }
    .column3Wrap .columnBox img {
      width: 100%;
      max-width: 100%; }
    .column3Wrap .columnBox p:last-child {
      margin-bottom: 0; }
    .column3Wrap .columnBox:nth-of-type(n + 2) {
      margin-top: 20px; }

.column4Wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 40px; }
  .column4Wrap .columnBox {
    flex-basis: 100%; }
    .column4Wrap .columnBox:nth-of-type(n + 2) {
      margin-top: 20px; }
    .column4Wrap .columnBox img {
      width: 100%; }

.column6Wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  .column6Wrap .columnBox {
    flex-basis: calc( 50% - 5px );
    max-width: calc( 50% - 5px ); }
    .column6Wrap .columnBox:nth-of-type(n + 3) {
      margin-top: 20px; }

.column2_3_3 .columnBox {
  flex-basis: calc( ( 100% - ( 30px * ( 2 - 1) ) ) / 2 );
  max-width: calc( ( 100% - ( 30px * ( 2 - 1) ) ) / 2 ); }
  .column2_3_3 .columnBox:nth-of-type(2) {
    margin-top: 0; }
  .column2_3_3 .columnBox:nth-of-type(n + 3) {
    margin-top: 20px; }

.column2_4_4 .columnBox {
  flex-basis: calc( ( 100% - ( 30px * ( 2 - 1) ) ) / 2 );
  max-width: calc( ( 100% - ( 30px * ( 2 - 1) ) ) / 2 ); }
  .column2_4_4 .columnBox:nth-of-type(-n+2) {
    margin-top: 0; }

.columnBox {
  overflow: hidden; }
  .columnBox img {
    align-self: baseline;
    max-width: 100%; }
  .columnBox p:last-of-type {
    margin: 0; }

.borderBox .columnBox {
  padding: 15px 20px;
  border: 1px solid #eee;
  overflow: visible; }
  .borderBox .columnBox + .borderNone {
    border: none; }

@media print, screen and (min-width: 768px) {
  .column2Wrap .columnBox {
    flex-basis: calc( ( 100% - ( 30px * ( 2 - 1) ) ) / 2 );
    max-width: calc( ( 100% - ( 30px * ( 2 - 1) ) ) / 2 ); }
    .column2Wrap .columnBox p:last-of-type {
      margin-bottom: 0; }
    .column2Wrap .columnBox:nth-of-type(n + 2) {
      margin-top: 0; }
    .column2Wrap .columnBox:nth-of-type(n + 3) {
      margin-top: 20px; }
  .column2Wrap.sp3_7 .columnBox:nth-of-type(odd) {
    flex-basis: 300px;
    max-width: 300px; }
  .column2Wrap.sp3_7 .columnBox:nth-of-type(even) {
    flex-basis: calc( 100% - 320px );
    max-width: calc( 100% - 320px ); }
  .column2Wrap.sp7_3 .columnBox:nth-of-type(odd) {
    flex-basis: calc( 100% - 320px );
    max-width: calc( 100% - 320px ); }
  .column2Wrap.sp7_3 .columnBox:nth-of-type(even) {
    flex-basis: 300px;
    max-width: 300px; }
  .column2Wrap.sp140 .columnBox:nth-of-type(-n + 2) {
    margin-top: 0; }
  .column2Wrap.sp140 .columnBox:nth-of-type(n + 3) {
    margin-top: 20px; }
  .column2Wrap.sp140 .columnBox:nth-of-type(odd) {
    flex-basis: 140px;
    max-width: 140px; }
  .column2Wrap.sp140 .columnBox:nth-of-type(even) {
    flex-basis: calc( 100% - 160px );
    max-width: calc( 100% - 160px ); }
  .column2Wrap.sp250 .columnBox:nth-of-type(odd) {
    flex-basis: 250px;
    max-width: 250px; }
  .column2Wrap.sp250 .columnBox:nth-of-type(even) {
    flex-basis: calc( 100% - 270px );
    max-width: calc( 100% - 270px ); }
  .column2Wrap.sp250 .columnBox:nth-of-type(n + 2) {
    margin-top: 0; }
  .column2Wrap.sp250 .columnBox:nth-of-type(n + 3) {
    margin-top: 0; }
  .column2Wrap .column2Wrap .columnBox {
    flex-basis: calc( ( 100% - ( 30px * ( 2 - 1) ) ) / 2 );
    max-width: calc( ( 100% - ( 30px * ( 2 - 1) ) ) / 2 ); }

  .column3Wrap .columnBox {
    flex-basis: calc( ( 100% - ( 30px * ( 2 - 1) ) ) / 2 );
    max-width: calc( ( 100% - ( 30px * ( 2 - 1) ) ) / 2 ); }
    .column3Wrap .columnBox:nth-of-type(n + 2) {
      margin-top: 0; }
    .column3Wrap .columnBox:nth-of-type(n + 3) {
      margin-top: 20px; }

  .column4Wrap {
    position: relative; }
    .column4Wrap .columnBox {
      flex-basis: calc( ( 100% - ( 30px * ( 2 - 1) ) ) / 2 );
      max-width: calc( ( 100% - ( 30px * ( 2 - 1) ) ) / 2 ); }
      .column4Wrap .columnBox p:last-child {
        margin-bottom: 0; }
      .column4Wrap .columnBox:nth-of-type(n + 2) {
        margin-top: 0; }
      .column4Wrap .columnBox:nth-of-type(n + 3) {
        margin-top: 20px; }

  .column6Wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start; }
    .column6Wrap .columnBox {
      flex-basis: calc( (100% - 50px) / 6);
      max-width: calc( (100% - 50px) / 6);
      margin-right: 10px; }
      .column6Wrap .columnBox:last-of-type {
        margin-right: 0; }
      .column6Wrap .columnBox:nth-of-type(n + 3) {
        margin-top: 0; }
      .column6Wrap .columnBox:nth-of-type(n + 4) {
        margin-top: 0; }

  .column1_1_2 .columnBox {
    flex-basis: 100%;
    max-width: 100%; }
    .column1_1_2 .columnBox:nth-of-type(n + 2) {
      margin-top: 20px; }

  .column1_2_3 .columnBox {
    flex-basis: calc( ( 100% - ( 30px * ( 2 - 1) ) ) / 2 );
    max-width: calc( ( 100% - ( 30px * ( 2 - 1) ) ) / 2 ); }

  .column1_3_3:after {
    content: "";
    display: block;
    width: calc( ( 100% - ( 30px * ( 4 - 1) ) ) / 4 ); }
  .column1_3_3 .columnBox {
    flex-basis: calc( ( 100% - ( 30px * ( 3 - 1) ) ) / 3 );
    max-width: calc( ( 100% - ( 30px * ( 3 - 1) ) ) / 3 ); }
    .column1_3_3 .columnBox:nth-of-type(n + 2) {
      margin-top: 0; }
    .column1_3_3 .columnBox:nth-of-type(n + 4) {
      margin-top: 20px; }

  .column2_3_3:after {
    content: "";
    display: block;
    width: calc( ( 100% - ( 30px * ( 3 - 1) ) ) / 3 ); }
  .column2_3_3 .columnBox {
    flex-basis: calc( ( 100% - ( 30px * ( 3 - 1) ) ) / 3 );
    max-width: calc( ( 100% - ( 30px * ( 3 - 1) ) ) / 3 ); }
    .column2_3_3 .columnBox:nth-of-type(n + 3) {
      margin-top: 0; }
    .column2_3_3 .columnBox:nth-of-type(n + 4) {
      margin-top: 20px; }

  .column2_4_4:after {
    width: calc( ( 100% - ( 30px * ( 4 - 1) ) ) / 4 );
    content: "";
    display: block; }
  .column2_4_4:before {
    width: calc( ( 100% - ( 30px * ( 4 - 1) ) ) / 4 );
    content: "";
    display: block;
    order: 1; }
  .column2_4_4 .columnBox {
    flex-basis: calc( ( 100% - ( 30px * ( 4 - 1) ) ) / 4 );
    max-width: calc( ( 100% - ( 30px * ( 4 - 1) ) ) / 4 ); }
    .column2_4_4 .columnBox:nth-of-type(-n+4) {
      margin-top: 0; } }
@media print, screen and (min-width: 992px) {
  .column2Wrap.lp3_7 .columnBox:first-of-type {
    flex-basis: 300px;
    max-width: 300px; }
  .column2Wrap.lp3_7 .columnBox:last-of-type {
    flex-basis: calc( 100% - 320px );
    max-width: calc( 100% - 320px ); }
  .column2Wrap.lp7_3 .columnBox:first-of-type {
    flex-basis: calc( 100% - 320px );
    max-width: calc( 100% - 320px ); }
  .column2Wrap.lp7_3 .columnBox:last-of-type {
    flex-basis: 300px;
    max-width: 300px; }
  .column2Wrap.lp4_6 .columnBox:first-of-type {
    flex-basis: 400px;
    max-width: 400px; }
  .column2Wrap.lp4_6 .columnBox:last-of-type {
    flex-basis: calc( 100% - 420px );
    max-width: calc( 100% - 420px ); }
  .column2Wrap.lp6_4 .columnBox:first-of-type {
    flex-basis: calc( 100% - 420px );
    max-width: calc( 100% - 420px ); }
  .column2Wrap.lp6_4 .columnBox:last-of-type {
    flex-basis: 400px;
    max-width: 400px; }

  .column3Wrap:after {
    content: "";
    display: block;
    width: calc( ( 100% - ( 30px * ( 3 - 1) ) ) / 3 ); }
  .column3Wrap .columnBox {
    flex-basis: calc( ( 100% - ( 30px * ( 3 - 1) ) ) / 3 );
    max-width: calc( ( 100% - ( 30px * ( 3 - 1) ) ) / 3 ); }
    .column3Wrap .columnBox:nth-of-type(-n + 3) {
      margin-top: 0;
      margin-bottom: 30px; }
    .column3Wrap .columnBox:nth-of-type(n + 4) {
      margin-top: 20px;
      margin-bottom: 20px }

  .column4Wrap {
    position: relative; }
    .column4Wrap:after {
      width: calc( ( 100% - ( 30px * ( 4 - 1) ) ) / 4 );
      content: "";
      display: block; }
    .column4Wrap:before {
      width: calc( ( 100% - ( 30px * ( 4 - 1) ) ) / 4 );
      content: "";
      display: block;
      order: 1; }
    .column4Wrap .columnBox {
      flex-basis: calc( ( 100% - ( 30px * ( 4 - 1) ) ) / 4 );
      max-width: calc( ( 100% - ( 30px * ( 4 - 1) ) ) / 4 ); }
      .column4Wrap .columnBox:nth-of-type(n + 3) {
        margin-top: inherit; }
      .column4Wrap .columnBox:nth-of-type(n + 5) {
        margin-top: 20px; }

  .column1_1_2 .columnBox {
    flex-basis: calc( ( 100% - ( 30px * ( 2 - 1) ) ) / 2 );
    max-width: calc( ( 100% - ( 30px * ( 2 - 1) ) ) / 2 ); }
    .column1_1_2 .columnBox:nth-of-type(-n + 2) {
      margin-top: 0; }

  .column1_2_3 .columnBox {
    flex-basis: calc( ( 100% - ( 30px * ( 3 - 1) ) ) / 3 );
    max-width: calc( ( 100% - ( 30px * ( 3 - 1) ) ) / 3 ); } }

@media screen and (max-width: 767px) {
  .main_area.voice {
    padding-top: 50px;
}
.front .voice .inner {
 padding-bottom: 0;
}
.section .inner_m .main_area.news .btn.type3.btnCenter.arrow.sp {
  display: flex !important;
}
.section .inner_m .main_area.blog .btn.type3.btnCenter.arrow.sp {
  display: flex !important;
}
}

#page_salon .set span.step {
  margin-top: 20px;
}
.cancel-policy {
  color: #cfa957;
}
.cancel-policy:hover {
  color: #cfa957;
}

.main_area_btm .checkbox span.error {
  font-size: 93%;
  color: #B70000;
	display: inline !important;
}

.gi-breadcrumbs__link:hover{color:#b882c4}

/* ----------------投稿ページ　画像------------------- */
@media screen and (max-width: 767px) {
  .singleopacity: 1;-article img {
    width: 100%;
    height: auto;
  }
}

.linktxt {
    color: #b882c4;
    border-bottom: solid 1px #b882c4;
}
.linktxt:hover {
  color: #c981a4;
  border-bottom: solid 1px #c981a4;
}

/* ----------------追加　CSS------------------- */
.contents.front {
background-color: #f7f4ee;
}
.main_area img.line-img{
  width: 300px;
  padding: 20px 20px 30px;
  margin: 0 auto;
}
.line-title{
  text-align:center;
}
.line-step{
  text-align: left;
}
.bridal-trial{
  font-size:14px;
  margin: 10px 0 10px;
  display: inline-block;
}
.main_area img.first-img{
  width: 40%;
}
@media screen and (max-width: 767px) {
  .main_area img.first-img {
    width: 100%;
  }
  span.price_r {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  .flx{
    display: block;
  }
  .course .img {
    height: auto;
    width: 100%;
  }
}
#page_reason .dtl.no-bdr p{
  min-height: 240px;
}
#page_reason .bdl .dtl p{
  min-height: 240px;
}
.height-adjust{
  min-height:96px;
}
@media screen and (max-width: 768px) {
.height-adjust{
  min-height:120px;
}
}

/* ---------------- サイドバー ------------------- */
#side {
    background-color: #fff;
    padding: 10px 5px;
}
#side h2 {
    background: #9e3523;
    color: #fff;
    font-size: 18px;
    border-bottom: none;
    padding: 6px 0 6px 10px;
}
#categories-3, #wpp-2, #pages-2 {
    margin-bottom: 40px;
}
#categories-3 ul, #pages-2 ul {
    margin-top: 10px;
    margin-bottom: 10px;
    padding-left: 10px;
}
#categories-3 ul li, #pages-2 ul li {
    list-style: none;
    display: block;
    position: relative;
    padding-left: 0;
    border-bottom: 1px solid #e9e9e9;
}
#categories-3 ul li:last-of-type, #pages-2 ul li:last-of-type {
    border-bottom: none;
}
#categories-3 ul li a, #pages-2 ul li a {
    padding: 10px 5px 10px 10px;
    display: block;
    font-size: 16px;
    color: #686767;
    text-decoration: none;
    transition: all ease-in-out 0.3s;
}
#categories-3 ul li a:after, #pages-2 ul li a:after {
    border-right: 2px solid #686767;
    border-top: 2px solid #686767;
    content: "";
    height: 6px;
    right: 10px;
    width: 6px;
    position: absolute;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    top: 18px;
    transition: all ease-in-out 0.3s;
}
#categories-3 ul li a:hover, #pages-2 ul li a:hover {
  color: #fff;
  background: #9e3523;
}
.wpp-cards li .wpp-post-title {
  color: #9e3523;
}