@charset "UTF-8";
/* rem */
html {
  font-size: 62.5%; }

/* ============================================
header
=============================================*/
.nios #introduction {
  opacity: 0; }

/* PC
================================================== */
.headerInner {
  width: 100%;
  margin: 0 auto;
  background-color: white;
  background: #fff\9; }

.headerInner_logo {
  width: 110px;
  margin: 0 auto;
  padding: 20px 0;
  -webkit-transition: all .3s ease-out;
  -moz-transition: all .3s ease-out;
  transition: all .3s ease-out;
  box-sizing: border-box; }

.min .headerInner_logo {
  width: 100px;
  padding: 10px; }

.headerInner_logo img {
  width: 100%;
  height: auto; }

.headerInner:after {
  content: "";
  clear: both;
  display: block; }

/* お電話でのお問い合わせ(PC) */
.headerInner_tel-pc {
  width: 100%;
  padding: 8px 0 10px;
  border-top: 6px solid #000;
  background-color: #f0f0f0;
  color: #000;
  overflow: hidden;
  text-align: center; }
  .headerInner_tel-pc p {
    display: inline-block; }

.headerInner_tel span {
  display: inline-block; }

.headerInner_reserve {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 5px 20px 0 0;
  border-right: 1px solid #444;
  padding-right: 20px;
  display: inline-block;
  float: left; }
  .headerInner_reserve a {
    color: #444 !important; }

.headerInner_tel-head {
  font-size: 14px;
  font-size: 1.4rem;
  float: left;
  margin: 5px 7px 0 7px; }

.headerInner_tel-number {
  font-size: 20px;
  font-size: 2rem;
  float: left; }

.icon-tel-freedial:before {
  content: "\e909";
}

  .headerInner_tel-number .icon {
    font-size: 17px;
    font-size: 1.7rem;
    color: #444;
}

.headerInner_tel-number a {
  color: #fff !important; }

/* header */
.headerWrapper {
  top: -100px;
  position: fixed;
  width: 100%;
  margin: 100px auto 0;
  line-height: 1;
  z-index: 100000;
  font-family: "UD Reimin Light" , 'Libre Baskerville' ,  "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif; }

.headerWrapper,
.headerWrapper a {
  color: #000;
  text-decoration: none;
  backface-visibility: hidden; }

.headerInner {
  position: relative; }

.headerInner_mobile {
  position: relative; }

.gNavList_pcOnly {
  display: none !important; }

.gNavWrapper {
  position: absolute;
  top: 0;
  /* ナビ部分をスクロール可能に */
  overflow-y: scroll;
  /* 開いてないときは画面外に配置 */
  right: -420px;
  width: 300px;
  background-color: #fff;
  -webkit-transition: .5s ease-in-out;
  -moz-transition: .5s ease-in-out;
  transition: .5s ease-in-out;
  border-top: 95px solid #fff; }

.gNavList {
  font-family: "UD Reimin Regular" , 'Libre Baskerville' ,  "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
  list-style: none;
  position: static;
  margin: 0 0 20px; }

.gNavList_afterLine {
  border-bottom: 1px solid #444;
  background-size: 4px;
  margin-bottom: 20px;
  padding-bottom: 20px; }

/* お電話でのお問い合わせ */
.gNavList_tel {
  display: none; }

.gNavList_tel span {
  display: inline-block; }

.gNavList_tel-head {
  font-size: 11px;
  font-size: 1.1rem;
  margin: 10px 0; }

.gNavList_tel-head-time {
  font-size: 8px;
  font-size: 0.8rem; }

span.gNavList_tel-number {
  display: block;
  font-size: 28px;
  font-size: 2.8rem; }

.gNavList_smallTxt {
  font-size: 12px;
  font-size: 1.2rem;
  display: block;
  margin-bottom: 5px; }

/* 1階層目 */
.gNavList_hierarchy1 {
  float: none;
  position: static;
  cursor: pointer; }

.gNavList_hierarchy1 > span {
  position: relative;
  z-index: 99999;
  width: 100%;
  height: 40px;
  display: block;
  color: #444;
  padding: 12px 25px;
  background-color: #fff;
  font-size: 14px;
  font-size: 1.4rem;
  box-sizing: border-box; }

.gNavList_hierarchy1 > span a,
.gNavList_hierarchy2 > span a {
  display: block;
  padding: 0 25px;
  width: 100%;
  height: 100%;
  box-sizing: border-box; }

.gNavList_hierarchy1 > span a {
  position: absolute;
  top: 0;
  left: 0;
  padding: 12px 25px;
  color: #444; }

.gNavList_line2 > span a {
  padding: 5px 25px; }

.iPhone .gNavList li.gNavList_hierarchy1:last-child {
  display: block;
  padding-bottom: 100px; }

/* 2階層目 */
.gNavList_accordion {
  display: none;
  background-color: #f0f0f0; }

.gNavList_hierarchy2 > span {
  position: relative;
  width: 100%;
  min-height: 40px;
  display: block;
  color: #444;
  padding: 12px 3%;
  border-bottom: 1px solid #fff;
  font-size: 14px;
  font-size: 1.4rem;
  box-sizing: border-box; }

.gNavList_hierarchy2.line2 > span {
  height: 50px; }

.gNavList_subHead {
  background-color: #9fa0a0;
  text-align: center; }

.gNavList_subHead > span {
  color: #fff;
  padding: 8px 3%;
  height: 32px; }

.gNavList_line2 > span {
  padding: 5px 3%; }

/* .headerInner_reserveBtn*/
.headerInner_reserveBtn {
  display: none; }

/* .headerInner_gNavBtn*/
.min.scroll .headerInner_gNavBtn {
  visibility: visible; }

.headerInner_gNavBtn {
  visibility: hidden;
  position: absolute;
  right: 15px;
  top: 19px;
  width: 26px;
  height: 23px;
  cursor: pointer;
  z-index: 101;
  background-color: #fff; }

.headerInner_gNavBtn div {
  position: relative; }

.headerInner_gNavBtn span {
  display: block;
  position: absolute;
  height: 2px;
  width: 25px;
  background: #000;
  left: 0;
  -webkit-transition: .35s ease-in-out;
  -moz-transition: .35s ease-in-out;
  transition: .35s ease-in-out; }

.headerInner_gNavBtn_line1 {
  top: 0; }

.headerInner_gNavBtn_line2 {
  top: 10px; }

.headerInner_gNavBtn_line3 {
  top: 20px; }

/* .headerInner_gNavBtn スクロールで表示 */
.headerInner_gNavBtn_line1,
.headerInner_gNavBtn_line2,
.headerInner_gNavBtn_line3 {
  left: 100px;
  opacity: 0;
  filter: alpha(opacity=100);
  -ms-filter: "alpha(opacity=100)"; }

.min.scroll .headerInner_gNavBtn_line1,
.min.scroll .headerInner_gNavBtn_line2,
.min.scroll .headerInner_gNavBtn_line3 {
  left: 0;
  opacity: 1;
  filter: alpha(opacity=100);
  -ms-filter: "alpha(opacity=100)"; }

/* .headerInner_gNavBtn 切り替えアニメーション */
.open .headerInner_gNavBtn_line1 {
  top: 11px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  transform: rotate(45deg); }

.open .headerInner_gNavBtn_line2 {
  width: 0;
  left: 50%; }

.open .headerInner_gNavBtn_line3 {
  top: 11px;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  transform: rotate(-45deg); }

/* .gNavWrapper スライドアニメーション */
.open .gNavWrapper {
  /* .gNavWrapper top + headerInner_mobile height */
  height: 1000px\9;
  height: 100vh;
  right: -20px; }

/* グローバルナビオープン時に背景固定 */
body.gNav-open {
  overflow: hidden; }

.header-fixed {
  position: fixed;
  opacity: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  overflow: auto;
  display: none;
  background-color: #000;
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)"; }

.gNav-open .header-fixed {
  display: block; }

/* gnav Icon */
.gNavList_hierarchy1 > span:after,
.gNavList_hierarchy2 > span:after {
  font-family: 'icon';
  font-weight: normal;
  position: absolute;
  right: 25px;
  top: 50%;
  margin-top: -7px; }

.gNavList_icon-arrow > span:after {
  content: "\e900"; }

.gNavList_icon-close > span:after {
  content: "\e901"; }

.gNavList_icon-link > span:after {
  content: "\e902"; }

.gNavList_icon-plus > span:after {
  content: "\e903"; }

.gNavList_icon-plus > span.gNav-open:after {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  transform: rotate(45deg); }

.nav-horizontal {
  overflow: hidden;
  width: 100%;
  height: 58px;
  /* 可視領域の高さ */
  font-family: "UD Reimin Light" , 'Libre Baskerville' ,  "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
  font-size: 15px;
  font-size: 1.5rem;
  word-wrap: normal;
  word-break: keep-all;
  white-space: nowrap;
  z-index: 999;
  color: #444;
  background-color: #fff;
  position: absolute;
  top: 138px;
  -webkit-transition: all .3s ease-out;
  -moz-transition: all .3s ease-out;
  transition: all .3s ease-out; }

.min .nav-horizontal {
  position: fixed;
  top: 102px;
  opacity: 1; }

.min.scroll .nav-horizontal {
  top: 102px;
  opacity: 0; }

.nav-horizontal a {
  text-decoration: none;
  color: #444; }

.nav-horizontal .mask {
  height: 5em;
  /* 横スクロールする理屈上の高さ */
  width: 100%;
  text-align: center;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  /* 慣性スクロール */
  -webkit-transform: translateZ(0px); }

/* スクロール中 */
.min .nav-horizontal{
  height: 46px;
}

.min .subNav_hierarchy1 a{
  padding-top: 14px;
  padding-bottom: 14px;
}

.nav-horizontal .list {
  display: inline-table;
  max-width: 100%; }

.nav-horizontal .list li {
  display: table-cell;
  cursor: default; }

.subNav_hierarchy1 {
  text-align: center;
  margin: 0;
  padding: 0 17px;
  line-height: 1;
  display: inline-block;
  background-color: #fff; }

.subNav_hierarchy1 a {
  text-align: center;
  padding: 20px 0;
  display: block;
  border-bottom: 3px solid #fff;
  -webkit-transition: all .3s ease-out;
  -moz-transition: all .3s ease-out;
  transition: all .3s ease-out; }
  .subNav_hierarchy1 a:hover {
    text-decoration: none; }

.subNav_hierarchy1 > a:hover,
.subNav_hierarchy1.current a {
  border-bottom: 3px solid #a29369; }

/* subnav
================================================== */
.accordionWrapper {
  position: relative;
  width: 1068px;
  margin: 0 auto;
  height: 0; }

.min .accordionWrapper {
  position: fixed;
  z-index: 500;
  top: 98px;
  left: 50%;
  transform: translateX(-50%); }

.subNav_accordion {
  position: absolute;
  z-index: 100;
  top: 0;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity .3s ease-out, visibility .3s ease-out;
  -moz-transition: opacity .3s ease-out, visibility .3s ease-out;
  transition: opacity .3s ease-out, visibility .3s ease-out;
  font-size: 12px;
  font-size: 1.2rem;
  font-family: 'Libre Baskerville' , "UD Reimin Light" ,  "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
  border: 2px solid #a29369;
  background-color: #fff;
  display: inline-block; }

.subNav_accordion a {
  text-decoration: none;
  color: #444; }

.min .subNav_accordion {
  top: 50px; }

.subNav_beginnerList {
  left: 0px;
  width: 265px; }

.subNav_trialList {
  left: 639px;
  width: 235px; }

.subNav_campaignList {
  left: 272px;
  width: 265px; }

.subNav_courseList {
  left: 485px;
  width: 235px; }

.subNav_shopList {
  left: 523px;
  width: 415px; }

.subNav_spaList {
  left: 615px;
  width: 235px; }

.subNav_bridalList {
  left: 297px;
  width: 235px; }

.subNav_nailList {
  left: 406px;
  width: 235px; }

.subNav_contactsList {
  left: 805px;
  width: 280px;
  line-height: 1.5;}

.subNav_accordion.subNav-open {
  visibility: visible;
  opacity: 1; }

.subNav_hierarchy2 {
  width: 100%; }

.subNav_hierarchy2 > span {
  display: block;
  position: relative; }

.subNav_hierarchy2 > span:hover {
  text-decoration: underline;
  cursor: pointer; }

.subNav_hierarchy2 > span:hover a {
  color: #a29369; }

.subNav_hierarchy2.subNav_icon-arrow > span:hover:after {
  color: #a29369; }

.subNav_smallTxt {
  font-size: 10px;
  font-size: 1rem;
  display: block; }

.subNav_hierarchy2 > span:after {
  font-family: 'icon';
  font-weight: normal;
  position: absolute;
  right: 10px;
  top: 50%;
  margin-top: -7px; }

.subNav_hierarchy2 > span > a {
  padding: 10px 14px;
  display: block; }

.subNav_subHead {
  display: none; }

.subNav_forTop > span {
  color: #fff;
  background-color: #a29369; }

.subNav_forTop > span a {
  color: #fff; }

.subNav_forTop > span:hover a {
  color: #fff; }

.subNav_forTop.subNav_icon-arrow > span:hover:after {
  color: #fff; }

.subNav_hierarchy2.subNav_icon-arrow > span:after {
  content: "\e900"; }

.subNav_hierarchy2.subNav_icon-close > span:after {
  content: "\e901"; }

.subNav_hierarchy2.subNav_icon-link > span:after {
  content: "\e902"; }

.subNav_hierarchy2.subNav_icon-plus > span:after {
  content: "\e903"; }

/* shop　サロン検索
================================================== */
.subNav_shopList .hierarchy2_shop01 {
  /*float: left;*/
  /*width:190px;*/ }
  .subNav_shopList .hierarchy2_shop01 .subNav_hierarchy2 {
    width: 200px;
    display: inline-block;
    vertical-align: middle; }
  .subNav_shopList .hierarchy2_shop01 .subNav_subHead {
    width: auto;
    display: block;
    border-bottom: 1px solid #a29369;
    padding: 14px 0 10px 0;
    margin: 0 14px 0px 14px; }
    .subNav_shopList .hierarchy2_shop01 .subNav_subHead span:hover {
      text-decoration: none;
      cursor: default; }

.subNav_shopList .hierarchy2_shop02 {
  float: right;
  width: 240px; }

.header-height {
  width: 100%;
  height: 196px;
  -webkit-transition: all .3s ease-out;
  -moz-transition: all .3s ease-out;
  transition: all .3s ease-out;
}

/* スクロール時 */
.min .header-height{
  height: 148px;
}

/* 店舗一覧 */
  #gNav .header_picup_shop .shoplist_etc{
    display: none;
  }
  
  #gNav .header_picup_shop li{
    position: relative;
    width: 100%;
    height: auto;
    display: block;
    color: #fff;
    background-color: #9fa0a0;
    border-bottom: 1px solid #fff;
    line-height: 1.2;
  }
  
  #gNav .header_picup_shop li a{
    color: #fff;
    display: block;
    padding: 12px 16% 12px 3%;
  }
  
  #gNav .header_picup_shop li a::after{
    content: "\e900";
    font-family: 'icon';
    font-weight: normal;
    position: absolute;
    right: 25px;
    top: 50%;
    margin-top: -7px;
  }
  
  #gNav .header_picup_shop li a span{
    display: block;
    font-size: 90%;
  }

/* 旧ページ用
================================================== */
#introduction {
  height: 0 !important; }


/* --------------------------------------------- */
/*  全ページ共通、コールセンターの短縮時間注釈
--------------------------------------------- */
.call_att{
  font-style: normal;
  font-size: 12px;
  color: #ff0000;
  line-height: 1.4;
}
.call_att.call_att_txt{
  font-size: 100%;
}
.call_att::after{
  content: "※しばらくの間、受付終了時間は19：00で変更しています。ご了承下さい。";
}

/* 途中改行 */
.call_att.call_att_br::after{
  white-space: pre;
  content: "※しばらくの間、受付終了時間は19：00で変更しています。\Aご了承下さい。";
}

.freeDial .call_att,
.price_freeDial .call_att{
  position: relative;
  color: #fff;
}

@media screen and (min-width: 600px){
  #header .call_att{
    margin-top: 5px;
    display: inline-block;
  }
  .freeDial .call_att{
    bottom: 20px;
  }
  .freeDial.freeDial_trial .call_att,
  .price_freeDial .call_att{
    bottom: 28px;
  }
}

@media screen and (max-width: 599px){
  .freeDial .call_att,
  .price_freeDial .call_att{
    bottom: auto;
    margin-top: 10px;
  }
}