@charset "utf-8";
/********************************
    ベース（基本設定）
*******************************/
.color01 {
  color: #181818;
}
.color02 {
  color: #cdad9e;
}
.color03 {
  color: #f0fbfb;
}
.color04 {
  color: #cdad9e;
}
.color05 {
  color: #574731;
}
.bgcolor01 {
  background-color: #181818;
}
.bgcolor02 {
  background-color: #cdad9e;
}
.bgcolor03 {
  background-color: #f0fbfb;
}
.bgcolor04 {
  background-color: #cdad9e;
}
.bgcolor05 {
  background-color: #574731;
}
/*===================================
 汎用クラス
==================================*/
/**
エリア
*/
.area {
  padding: 80px 0;
}
.area80 {
  padding: 80px 0;
}
.area60 {
  padding: 60px 0;
}
.area40 {
  padding: 40px 0;
}
.area20 {
  padding: 20px 0;
}
.areab {
  padding-bottom: 80px;
}
.area80b {
  padding-bottom: 80px;
}
.area60b {
  padding-bottom: 60px;
}
.area40b {
  padding-bottom: 40px;
}
.area20b {
  padding-bottom: 20px;
}
.areat {
  padding-top: 80px;
}
.area80t {
  padding-top: 80px;
}
.area60t {
  padding-top: 60px;
}
.area40t {
  padding-top: 40px;
}
.area20t {
  padding-top: 20px;
}
@media only screen and (max-width: 1024px) {
  .area {
    padding: 40px 0;
  }
  .area80 {
    padding: 60px 0;
  }
  .area60 {
    padding: 40px 0;
  }
  .area40 {
    padding: 20px 0;
  }
  .areab {
    padding-bottom: 40px;
  }
  .area80b {
    padding-bottom: 60px;
  }
  .area60b {
    padding-bottom: 40px;
  }
  .area40b {
    padding-bottom: 20px;
  }
  .areat {
    padding-top: 40px;
  }
  .area80t {
    padding-top: 60px;
  }
  .area60t {
    padding-top: 40px;
  }
  .area40t {
    padding-top: 20px;
  }
}
/**
マージン
*/
.mt10 {
  margin-top: 10px;
}
.mb50 {
  margin-bottom: 50px;
}
.mb100 {
  margin-bottom: 100px;
}
@media only screen and (max-width: 599px) {
  .mb100 {
    margin-bottom: 50px;
  }
}
/**
幅
*/
/*タブレット時に幅１００％*/
.w40tb,
.w55tb {
  margin-right: auto;
  margin-left: auto;
}
.w40tb {
  width: 40%;
}
.w45tb {
  width: 50%;
}
@media only screen and (max-width: 1024px) {
  .w40tb,
  .w55tb {
    margin-bottom: 5%;
    width: 100%;
  }
}
/*中央寄せ*/
.w80c {
  margin: 0 auto;
  width: 80%;
}
.w70c {
  margin: 0 auto;
  width: 70%;
}
@media only screen and (max-width: 599px) {
  .w80c {
    margin: 0 auto 2%;
    width: 100%;
  }
  .w70c {
    margin: 0 auto 2%;
    width: 100%;
  }
}
/*sp時に幅を小さめ*/
@media only screen and (max-width: 599px) {
  .spsmall {
    margin-right: auto;
    margin-left: auto;
    max-width: 300px;
  }
}
/**
テキスト
*/
/*文字寄せ*/
.tac {
  text-align: center;
}
.tar {
  text-align: right;
}
/*文字をまとめて落とす*/
.group {
  display: inline-block;
}
/*打消し線*/
.strike {
  text-decoration: line-through;
}
/*下線*/
.underline {
  text-decoration: underline;
}
/**
heightLine
*/
[class*='heightLine'] {
  display: block;
}
@media only screen and (max-width: 1024px) {
  [class*='heightLine-tb'] {
    height: auto !important;
  }
}
@media only screen and (max-width: 599px) {
  [class*='heightLine-sp'] {
    height: auto !important;
  }
}
/**
その他
*/
/*モバイル時に順序を並べ替え*/
@media only screen and (max-width: 599px) {
  .change_sp {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
/*PC時のみ非表示*/
@media only screen and (min-width: 1025px) {
  .no_pc {
    display: none;
  }
}
[data-element-id] .no_pc {
  display: block;
}
/*TB以下非表示*/
@media only screen and (max-width: 1024px) {
  .no_tb {
    display: none;
  }
}
[data-element-id] .no_tb {
  display: block;
}
/*sp時のみ非表示*/
@media only screen and (max-width: 599px) {
  .no_sp {
    display: none;
  }
}
[data-element-id] .no_sp {
  display: block;
}
/*********************************************
    汎用レイアウト（全ページ共通）
*********************************************/
/*汎用レイアウト1（全ページ共通）*/
.layout_cmn01 .ttl {
  margin-bottom: 40px;
}
.layout_cmn01 .cap {
  margin-bottom: 10px;
}
.layout_cmn01 .fig {
  margin-bottom: 5px;
}
@media only screen and (max-width: 599px) {
  .layout_cmn01 .ttl {
    margin-bottom: 20px;
  }
}
/*汎用レイアウト2（全ページ共通）*/
.layout_cmn02 .ttl {
  margin-bottom: 20px;
}
.layout_cmn02 .cap {
  margin-bottom: 10px;
}
.layout_cmn02 .fig {
  margin-bottom: 5px;
}
@media only screen and (max-width: 599px) {
  .layout_cmn02 .ttl {
    margin-bottom: 20px;
  }
}
/*2カラムコンテンツ
（サイドメニューとメインコンテンツ）*/
.column2 .inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.column2 .side {
  width: 200px;
}
.column2 .main {
  width: calc(100% - 250px);
}
@media only screen and (max-width: 1024px) {
  .column2 .inner {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .column2 .side {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
    margin-bottom: 5%;
    width: 100%;
  }
  .column2 .main {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
    margin-bottom: 5%;
    width: 100%;
  }
}
/*左右の要素を入れ替え*/
.change {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
/*左右の要素を順に入れ替え*/
.alternate .flexb:nth-of-type(even) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
/*********************************************
    汎用画像クラス　img
*********************************************/
.img {
  text-align: center;
}
/*正円画像*/
.img.-circle {
  overflow: hidden;
  border-radius: 50%;
}
/*角丸画像*/
.img.-round {
  overflow: hidden;
  border-radius: 20px;
}
/*モバイル時に小さめに表示*/
@media only screen and (max-width: 599px) {
  .img.-smallsp {
    margin-right: auto;
    margin-left: auto;
    width: 80%;
  }
}
/*モバイル時により小さめに表示*/
.img.-smallersp {
  display: block;
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (max-width: 599px) {
  .img.-smallersp {
    width: 50%;
  }
}
/*背景画像*/
.bgimg {
  position: relative;
}
.img.-bgimg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
}
.img.-bgimg img {
  width: 100%;
  height: 100%;
/*IE対策*/
  font-family: 'object-fit: cover; object-position: 50% 50%;';
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
}
/*IE対策*/
/*フィルター*/
.img.-filter:before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: #fff;
  content: '';
  opacity: 0.8;
}
/**
object-fit
*/
/*object-fit(cover)IE対応*/
.img.-cover img {
  width: 100%;
  height: 100%;
/*IE対策*/
  font-family: 'object-fit: cover; object-position: 50% 50%;';
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
}
/*IE対策*/
/*object-fit(contain)IE対応*/
.img.-contain img {
  width: 100%;
  height: 100%;
/*IE対策*/
  font-family: 'object-fit: contain; object-position: 50% 50%;';
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
}
/*IE対策*/
/*object-fit画像右寄せ*/
.img.-right img {
  font-family: 'object-fit: cover; object-position: center right;';
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center right;
     object-position: center right;
}
/*object-fit画像上寄せ*/
.img.-top img {
  font-family: 'object-fit: cover; object-position: top center;';
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top center;
     object-position: top center;
}
/**
アスペクト比固定
*/
/*基本アスペクト
（下に続く比率クラスと合わせて使用）*/
.aspect {
  position: relative;
  display: block;
}
.aspect:before {
  display: block;
  content: '';
}
.aspect img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
/*IE対策*/
  font-family: 'object-fit: cover; object-position: 50% 50%;';
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
}
/*IE対策*/
/*比率*/
.aspect.-ratio20:before {
  padding-top: 20%;
}
.aspect.-ratio30:before {
  padding-top: 30%;
}
.aspect.-ratio40:before {
  padding-top: 40%;
}
.aspect.-ratio45:before {
  padding-top: 45%;
}
.aspect.-ratio50:before {
  padding-top: 50%;
}
.aspect.-ratio55:before {
  padding-top: 55%;
}
.aspect.-ratio60:before {
  padding-top: 60%;
}
.aspect.-ratio65:before {
  padding-top: 65%;
}
.aspect.-ratio70:before {
  padding-top: 70%;
}
.aspect.-ratio75:before {
  padding-top: 75%;
}
.aspect.-ratio80:before {
  padding-top: 80%;
}
.aspect.-ratio90:before {
  padding-top: 90%;
}
.aspect.-ratio100:before {
  padding-top: 100%;
}
.aspect.-ratio110:before {
  padding-top: 110%;
}
.aspect.-ratio130:before {
  padding-top: 130%;
}
/*********************************************
    fead系
*********************************************/
.fead-right {
  opacity: 0;
  -webkit-transition: 1s;
  transition: 1s;
  -webkit-transform: translate3d(-100vw, 0, 0);
          transform: translate3d(-100vw, 0, 0);
}
.fead-right.mv {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}
.fead-left {
  opacity: 0;
  -webkit-transition: 1s;
  transition: 1s;
  -webkit-transform: translate3d(100vw, 0, 0);
          transform: translate3d(100vw, 0, 0);
}
.fead-left.mv {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}
/*********************************************
    コメント
*********************************************/
[class*='load_'] {
  position: relative;
  min-height: 50px;
  border: 3px solid #00bcd4;
}
[class*='load_']:before {
  position: absolute;
  z-index: 100;
  display: block;
  background: #00bcd4;
  color: #ff0;
  content: '共通要素';
  text-align: center;
  font-weight: bold;
}
/*********************************************
    共通ボックス　box-cmn
*********************************************/
.box_cmn01 .img01 {
  margin-left: auto;
  width: 60%;
}
.box_cmn01 .imgin {
  max-height: 500px;
}
@media only screen and (max-width: 599px) {
  .box_cmn01 .img01 {
    width: 100%;
  }
}
.box_cmn02 .boxin {
  position: relative;
}
.box_cmn02 .head {
  margin-bottom: 10px;
  font-weight: bold;
  font-size: 18px;
}
.box_cmn02 .img {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
}
.box_cmn02 .block_txt {
  margin-left: auto;
  min-height: 500px;
}
.box_cmn02.-change .img {
  right: 0;
  left: inherit;
}
.box_cmn02.-change .block_txt {
  margin-left: 0;
}
@media only screen and (max-width: 599px) {
  .box_cmn02 .block_txt {
    min-height: inherit;
  }
  .box_cmn02 .img {
    position: relative;
    margin-bottom: 10px;
    height: 200px;
  }
}
/*********************************************
    共通ブロック　block-cmn
*********************************************/
/*********************************************
    共通タイトル　ttl_cmn
*********************************************/
/*共通タイトル1*/
.ttl_cmn01 {
  margin-bottom: 40px;
  text-align: center;
  font-size: 26px;
}
.ttl_cmn01:after {
  display: block;
  margin: 20px auto 10px;
  width: 20px;
  height: 1px;
  background: #323232;
  content: '';
}
.ttl_cmn01 .ttlin01 {
  display: block;
  line-height: 130%;
}
.ttl_cmn01 .ttlin02 {
  display: block;
  font-size: 14px;
  line-height: 150%;
}
.ttl_cmn01.-middle {
  font-size: 30px;
}
.ttl_cmn01.-left {
  text-align: left;
}
.ttl_cmn01.-left:after {
  margin-left: inherit;
}
.ttl_cmn01.-white:after {
  background: #fff;
}
.ttl_cmn01.-mint .ttlin01 {
  color: #181818;
}
.ttl_cmn01.-mint:after {
  background: #181818;
}
.ttl_cmn01.-pink .ttlin01 {
  color: #ff7cad;
}
.ttl_cmn01.-pink:after {
  background: #ff7cad;
}
@media only screen and (max-width: 599px) {
  .ttl_cmn01 {
    font-size: 22px;
  }
  .ttl_cmn01:after {
    margin: 10px auto;
  }
  .ttl_cmn01.-middle {
    font-size: 22px;
  }
}
/*共通タイトル２*/
.ttl_cmn02 {
  margin-bottom: 0px;
  font-size: 24px;
}
.ttl_cmn02 .ttlin {
  display: block;
  font-size: 16px;
}
@media only screen and (max-width: 599px) {
  .ttl_cmn02 {
    font-size: 20px;
  }
}
/*********************************************
    共通リスト　list-cmn
*********************************************/
/*共通リスト1*/
.list_cmn01 .item {
  margin-bottom: 50px;
}
.list_cmn01 .head {
  position: relative;
  margin-bottom: 30px;
  padding-bottom: 10px;
  padding-left: 30px;
  color: #181818;
  font-weight: normal;
  font-size: 24px;
  line-height: 130%;
}
.list_cmn01 .head:after {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100px;
  height: 2px;
  background: #181818;
  content: '';
}
.list_cmn01 .headin {
  position: absolute;
  left: 0;
}
.list_cmn01 .headin:after {
  content: '.';
}
@media only screen and (max-width: 1024px) {
  .list_cmn01 .head {
    font-size: 20px;
  }
}
@media only screen and (max-width: 599px) {
  .list_cmn01 .img {
    margin-right: auto;
    margin-left: auto;
    max-width: 300px;
  }
}
/*共通リスト２*/
.list_cmn02 .item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 20px 10px;
  border-bottom: 1px solid #999;
}
.list_cmn02 .datattl {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  margin-right: 30px;
  width: 250px;
  font-weight: bold;
}
@media only screen and (max-width: 1024px) {
  .list_cmn02 .item {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .list_cmn02 .datattl {
    margin-bottom: 5px;
    width: 100%;
    font-size: 18px;
  }
  .list_cmn02 .data {
    width: 100%;
  }
}
/*********************************************
    共通ボタン　btn-cmn
*********************************************/
/*ボタン１*/
.btn_cmn01 a {
  position: relative;
  display: block;
  padding: 20px;
  max-width: 280px;
  background: #181818;
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 26px;
}
.btn_cmn01 a:after {
  position: absolute;
  top: 50%;
  right: 10px;
  content: '\f054';
  font-weight: 600;
  font-family: 'Font Awesome 5 Free';
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
.btn_cmn01.-center a {
  margin: 0 auto;
}
/*!********************************************
    他共通エレメント　txt-cmn img-cmn
*********************************************/
/*********************************************
    モジュール（共通機能群）
*********************************************/
/*フォーム*/
.form .item {
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  padding: 20px 0;
  border-bottom: 2px solid #181818;
}
.form .datattl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 200px;
  color: #181818;
  font-weight: bold;
}
.form .require {
  display: inline-block;
  margin-left: 10px;
  padding: 0 4px;
  background: #f0fbfb;
  color: #fff;
  font-size: 14px;
  line-height: 1.6em;
}
.form .data {
  padding-left: 50px;
  width: 100%;
}
.form .data input {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 5px;
  margin-bottom: 5px;
  padding: 5px;
  width: 100%;
  border: none;
}
.form .data input[type='radio'] {
  display: none;
}
.form .data input[type='radio'] + label {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-right: 20px;
  padding-left: 20px;
  line-height: 200%;
}
.form .data input[type='radio'] + label::before {
  position: absolute;
  top: 4px;
  left: 0;
  display: block;
  width: 10px;
  height: 10px;
  border: 1px solid #303841;
  border-radius: 50%;
  background: #fff;
  -webkit-box-shadow: inset 1px 1px 0 1px #999;
          box-shadow: inset 1px 1px 0 1px #999;
  content: '';
}
.form .data input[type='radio']:checked + label::after {
  position: absolute;
  top: 7px;
  left: 3px;
  display: block;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #303841;
  content: '';
}
.form .data input[type='radio']:checked + label {
  -webkit-transition: 0.6s;
  transition: 0.6s;
}
.form .data input[type='number'] {
  margin-right: 10px;
  width: 70px;
}
.form .data select {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 5px;
  color: inherit;
}
.form .data textarea {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 5px;
  width: 100%;
  height: 170px;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
}
.form .data01 div {
  display: inline-block;
}
.form .btn {
  margin-top: 30px;
}
.form .btn button {
  margin: 10px 20px;
  padding: 0.2em;
  width: 200px;
  border: none;
  border-radius: 2em;
  background: #f0fbfb;
  color: #fff;
  text-align: center;
  -webkit-transition: 0.3s all ease;
  transition: 0.3s all ease;
}
.form .btn button:hover {
  opacity: 0.6;
  cursor: pointer;
}
@media only screen and (max-width: 1024px) {
  .form .item {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .form .datattl {
    display: block;
    margin-bottom: 10px;
  }
  .form .data {
    padding-left: 0;
  }
}
/*メインビジュアル*/
.mainimg {
  position: relative;
  overflow: hidden;
}
.mainimg:after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: #cdad9e;
  opacity: 0.3;
}
.mainimg img {
  width: 100%;
}
.mainimg .uk-slidenav-position {
  position: relative;
  overflow: hidden;
  height: 700px;
}
.mainimg .uk-slidenav-position:before {
/*   display: block;
  padding-top: 45%;
  content: ''; */
}
.mainimg .uk-slideshow {
  position: absolute;
  top: 0;
  height: 100% !important;
}
.mainimg .uk-slideshow li {
  height: 100% !important;
}
.mainimg .uk-slideshow .uk-flex {
  height: 100%;
}
.mainimg .uk-slideshow img {
  width: 100%;
  height: 100%;
/*IE対策*/
  font-family: 'object-fit: cover; object-position: 50% 50%;';
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
}
@media only screen and (max-width: 1024px) {
  .mainimg .uk-slidenav-position {
    height: 500px;
  }
}
@media only screen and (max-width: 599px) {
  .mainimg .uk-slidenav-position {
    height: 400px;
  }
}
/*IE対策*/
.homevisual {
  position: relative;
}
.homevisual .img {
  position: relative;
  min-height: 500px;
}
.homevisual .img:before {
  display: block;
  padding-top: 45%;
  content: '';
}
.homevisual .img:after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: #cdad9e;
  opacity: 0.3;
}
.homevisual .img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
/*IE対策*/
  font-family: 'object-fit: cover; object-position: 50% 50%;';
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
}
/*IE対策*/
.homevisual .logo {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: '游ゴシック', YuGothic, Hiragino Sans, 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic Pro', Hiragino Kaku Gothic ProN, 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
      -ms-flex-flow: '游ゴシック', YuGothic, Hiragino Sans, 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic Pro', Hiragino Kaku Gothic ProN, 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
          flex-flow: '游ゴシック', YuGothic, Hiragino Sans, 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic Pro', Hiragino Kaku Gothic ProN, 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
  font-weight: bold;
  font-size: 40px;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media only screen and (max-width: 599px) {
  .homevisual .head {
    font-size: 28px;
  }
}
/*fead*/
.fead-mv {
  opacity: 0;
  transition: 0.8s;
  transform: translate(0, 60px);
  -ms-transform: translate(0, 60px);
  -webkit-transform: translate(0, 60px);
  -webkit-transition: 0.8s;
}
[data-element-id] .fead-mv {
  opacity: 1;
  transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
}
.mv {
  opacity: 1;
  transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
}
/*map*/
.map {
  position: relative;
  overflow: hidden;
  min-height: 300px;
}
.map:after {
  display: block;
  padding-top: 35%;
  content: '';
}
.map iframe {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  margin: auto;
  max-width: initial;
  width: 100%;
  height: 100%;
}
.hmap {
  position: relative;
  overflow: hidden;
}
/*
.hmap:after {
    display: block;
    content: "";
    padding-top: 50%;
}
*/
#map {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.hmapinfo {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  padding: 40px;
  height: 100%;
  background: rgba(255,255,255,0.8);
}
.hmapinfo dt {
  padding-bottom: 5px;
  color: #181818;
}
.hmapinfo dl {
  padding-bottom: 20px;
}
.hmapinfo dd {
  font-size: 15px;
}
.hmapinfo dd li {
  padding-bottom: 5px;
  font-size: 15px;
}
@media only screen and (max-width: 1024px) {
  .map:after {
    padding-top: 40%;
  }
  .hmapinfo {
    top: 100%;
    padding: 20px 0;
    width: 100%;
    height: auto;
  }
  .hmap {
    overflow: visible;
    margin-bottom: 300px;
  }
  .hmapinfo dl {
    padding-bottom: 10px;
  }
}
@media only screen and (max-width: 599px) {
  .map:after {
    padding-top: 50%;
  }
}
/*wrap*/
#wrapper {
  overflow: hidden;
  margin: 0 auto;
  min-width: 320px;
}
[data-element-id] #wrapper {
  padding-top: 0 !important;
}
.pagettl {
  display: none;
}
[data-element-id] .pagettl {
  display: block;
}
/*common*/
.w100 {
  display: block;
  width: 100%;
}
.w20 {
  width: 20%;
}
.w26 {
  width: 26%;
}
.w30 {
  width: 30%;
}
.w40 {
  width: 40%;
}
.w46 {
  width: 46%;
}
.w48 {
  width: 48%;
}
.w50 {
  width: 50%;
}
.w80r {
  margin: 0 4% 0 0;
  width: 76%;
}
.w80l {
  margin: 0 0 0 4%;
  width: 76%;
}
.w70r {
  margin: 0 4% 0 0;
  width: 66%;
}
.w70l {
  margin: 0 0 0 4%;
  width: 66%;
}
.w60r {
  margin: 0 4% 0 0;
  width: 56%;
}
.w60l {
  margin: 0 0 0 4%;
  width: 56%;
}
.m900 {
  margin: auto;
  max-width: 900px;
}
.m960 {
  margin: auto;
  max-width: 960px;
}
.m500 {
  margin: auto;
  max-width: 500px;
}
.m1000 {
  margin: auto;
  max-width: 1000px;
}
.m1200 {
  margin: auto;
  max-width: 1250px;
  width: 96%;
}
.harea {
  padding: 80px 0;
}
.area {
  padding: 80px 0;
}
.pt80 {
  padding-top: 80px;
}
.area60 {
  padding: 60px 0;
}
.area40 {
  padding: 40px 0;
}
.area20 {
  padding: 20px 0;
}
.mainImg {
  position: relative;
  overflow: hidden;
}
.mainImg .tit {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  margin: auto;
  width: 90%;
  color: #fff;
  text-align: center;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
.mainImg .tit span {
  display: block;
  text-align: center;
  line-height: 200%;
}
.mainImg .pic {
  position: relative;
  overflow: hidden;
  min-width: 700px;
  width: 100%;
}
.mainImg .pic img {
  position: absolute;
  top: 0;
  left: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  font-family: 'object-fit: cover; object-position: 50% 50%;';
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
}
.mainImg .pic:before {
  display: block;
  padding-top: 18%;
  content: '';
}
@media only screen and (max-width: 1024px) {
  .m500 {
    width: 96%;
  }
  .m900 {
    width: 96%;
  }
  .m960 {
    width: 96%;
  }
  .m1000 {
    width: 96%;
  }
  .harea {
    padding: 60px 0;
  }
  .area {
    padding: 60px 0;
  }
  .area60 {
    padding: 50px 0;
  }
  .area40 {
    padding: 30px 0;
  }
  .pt80 {
    padding-top: 70px;
  }
}
@media only screen and (max-width: 599px) {
  .w20 {
    margin: 2% auto;
    width: 100%;
  }
  .pic.w20 {
    max-width: 400px;
  }
  .w26 {
    margin: 2% auto;
    width: 100%;
  }
  .pic.w26 {
    max-width: 400px;
  }
  .w30 {
    margin: 2% auto;
    width: 100%;
  }
  .pic.w30 {
    max-width: 400px;
  }
  .w40 {
    margin: 2% auto;
    width: 100%;
  }
  .pic.w40 {
    max-width: 400px;
  }
  .w46 {
    margin: 2% auto;
    width: 100%;
  }
  .w48 {
    margin: 2% auto;
    width: 100%;
  }
  .w50 {
    width: 100%;
  }
  .w60r {
    margin: 2% auto;
    width: 100%;
  }
  .w60l {
    margin: 2% auto;
    width: 100%;
  }
  .w70r {
    margin: 2% auto;
    width: 100%;
  }
  .w70l {
    margin: 2% auto;
    width: 100%;
  }
  .w80r {
    margin: 2% auto;
    width: 100%;
  }
  .w80l {
    margin: 2% auto;
    width: 100%;
  }
  .m500 {
    width: 94%;
  }
  .m900 {
    width: 94%;
  }
  .m960 {
    width: 94%;
  }
  .m1000 {
    width: 94%;
  }
  .m1200 {
    width: 94%;
  }
  .harea {
    padding: 40px 0;
  }
  .area {
    padding: 40px 0;
  }
  .area60 {
    padding: 40px 0;
  }
  .area40 {
    padding: 20px 0;
  }
  .area20 {
    padding: 10px 0;
  }
  .pt80 {
    padding-top: 60px;
  }
  .mainImg .tit span.icon {
    margin: auto;
    max-width: 45px;
  }
}
/*header*/
.header {
  position: relative;
  z-index: 250;
  /* background: #cdad9e; */
}
.header .upper {
  background: #cdad9e;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0px 3%;
  /* width: 95%; */
}
.header .sitettl {
  font-size: 12px;
  color: #fff;
}
.header .sns .item {
    color: #fff;
    font-size: 26px;
    line-height: 130%;
    float: left;
    padding: 0 0 0 10px;
}
.header .info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  background: #fff;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 10px 10px;
  min-height: 70px;
}
.header .info.fixed {
  position: fixed;
  width: 100%;
  top: 0;
  -webkit-box-shadow: 0 0 3px 0 #999;
          box-shadow: 0 0 3px 0 #999;
}
[data-element-id] .header .info.fixed {
  position: relative;
}
.header .right {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-content: flex-start;
      -ms-flex-line-pack: start;
          align-content: flex-start;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
.header .logo {
  display: none;
}
.header .logo img {
  max-height: 70px;
}
.header .htel {
  margin-left: auto;
}
.header .htel li {
  margin: 0;
  margin-left: auto;
  text-align: center;
}
.header .htel .tel {
  font-size: 16px;
  text-align: left;
  padding: 2px 0;
}
.header .htel .res {
  padding-left: 10px;
}
.header .htel .res a {
  position: relative;
  padding: 2px 5px;
  background: #000;
  color: #fff;
  letter-spacing: 2px;
  display: block;
  font-size: 14px;
}
.header .htel .res a:first-child {
  margin-bottom: 1px;
}
.header .htel .res.-typeb a {
  background: #544128;
  height: 50px;
  padding-top: 13px;
}
.header .htel .res a:before {
  display: inline-block;
  margin-right: 5px;
  content: '\f108';
  font-weight: 600;
  font-family: 'Font Awesome 5 Free';
}
.header .tel a {
  position: relative;
  letter-spacing: 2px;
  font-weight: bold;
}
.header .tel a:before {
  display: inline-block;
  margin-right: 5px;
  color: #fff;
  background: #000;
  content: '\f879';
  font-weight: 600;
  font-family: 'Font Awesome 5 Free';
  border-radius: 50%;
  width: 25px;
  height: 25px;
  line-height: 27px;
  text-align: center;
  font-size: 14px;
}
.header .menu {
  position: fixed;
  z-index: 2;
  margin: 2px;
  width: 38px;
  height: 38px;
  opacity: 0.8;
  cursor: pointer;
  display: none;
  right: 10px;
  top: 30px;
}
.header .menu .n {
  position: absolute;
  top: 50%;
  left: 6px;
  display: block;
  margin-top: -1px;
  padding: 0;
  width: 26px;
  height: 2px;
  background: #323232;
  text-indent: 9999px;
}
.header .menu .n:before {
  position: absolute;
  top: -8px;
  left: 0;
  display: block;
  width: 26px;
  height: 2px;
  background: #323232;
  content: '';
}
.header .menu .n:after {
  position: absolute;
  top: 8px;
  left: 0;
  display: block;
  width: 26px;
  height: 2px;
  background: #323232;
  content: '';
}
.header .menu.action .n {
  transition: ease 0.1s;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -webkit-transition: ease 0.1s;
}
.header .menu.action .n:after,
.header .menu.action .n:before {
  top: 0;
  left: 0;
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
}
@media only screen and (max-width: 1024px) {
  .header .logo {
    display: block;
  }
  .header .logo img {
    max-height: 50px;
  }
  .header .info {
    min-height: inherit;
  }
  .header .htel {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    border-top: 1px solid #fff;
  }
  .header .htel > div {
    width: 40%;
    min-width: 140px;
  }
  .header .htel > div > div {
    min-height: auto !important;
  }
  .header .htel li {
    background: #cdad9e;
  }
  .header .htel .telephone {
    width: 60%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .header .htel .tel {
    padding: 2px;
    line-height: 130%;
    font-size: 14px;
  }
  .header .htel .tel a {
    color: #ffffff;
    padding: 0;
    display: block;
  }
  .header .htel .tel a:before {
    /* background: none; */
    /* color: #181818; */
    /* width: auto; */
    /* height: auto; */
    content: none;
  }
  .header .htel .res {
    /* width: 40%; */
    /* min-width: 140px; */
    padding-left: 0;
  }
  .header .htel .res a {
    padding: 0;
    
  }
  .header .menu {
    display: block;
  }
  
  .header .htel .res.-typeb a {
    height: 50px;
    padding-top: 13px;
  }
}
@media only screen and (max-width: 599px) {
  .header .logo img {
    max-height: 30px;
  }
  .header .upper {
    display: none;
  }
  .header .menu {
    top: 5px;
    right: 10px;
  }
  .header .htel .tel {
    font-size: 12px;
  }
  .header .htel .res a {
    font-size: 12px;
  }
}
[data-element-id] .header .logo {
  display: block;
}
.index .header .logo {
  display: none;
}
.index .header .info {
  padding: 0 2%;
  margin: 0 auto;
}
[data-element-id] .index .header .logo {
  display: block;
}
/*totop*/
#totop {
  position: fixed;
  right: 10px;
  bottom: 10px;
  z-index: 99;
  text-align: center;
  transform: translate3d(0, 0, 0) !important;
  -webkit-transform: translate3d(0, 0, 0) !important;
}
#totop a:before {
  display: block;
  content: '\f106';
  font-weight: 600;
  font-size: 20px;
  font-family: 'Font Awesome 5 Free';
}
#totop a {
  display: block;
  padding: 10px 16px;
  background: #cdad9e;
  color: #fff;
}
#totop img {
  width: 80px;
}
@media only screen and (max-width: 1024px) {
  #totop {
    bottom: 55px;
  }
}
@media only screen and (max-width: 599px) {
  #totop a {
    padding: 7.5px 13.5px;
  }
}
/*gnav*/
#gnav li {
  padding: 0 20px;
  position: relative;
}
#gnav li:not(:first-child):before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  height: 15px;
  width: 1px;
  background: #000;
}
@media only screen and (max-width: 1024px) {
  #gnav {
    position: relative;
    z-index: 1;
    box-sizing: border-box;
    width: 100%;
    -webkit-box-sizing: border-box;
  }
  #gnav li {
    width: 48%;
  }
  #gnav li:not(:first-child):before {
    content: none;
  }
  #gnav li a {
    display: block;
    width: 100%;
    font-weight: 700;
    font-size: 14px;
    padding: 10px 0;
  }
  #gnav .gnavinn {
    position: fixed;
    top: 0;
    left: 0;
    z-index: -10;
    overflow-y: auto;
    padding: 0;
    padding-bottom: 0;
    width: 100%;
    height: 0;
    border: none;
    background: rgba(255,255,255,0.8);
    opacity: 0;
    transition: height ease 0.1s, opacity ease 0.4s;
    transform: translate3d(0, 0, 0) !important;
    -webkit-transition: height ease 0.1s, opacity ease 0.4s;
    -webkit-overflow-scrolling: touch;
    -webkit-transform: translate3d(0, 0, 0) !important;
  }
  #gnav.action .gnavinn {
    z-index: 250;
    height: 100vh;
    opacity: 1;
  }
  #gnav .gnavinn > ul {
    padding: 60px 3% 80px;
    width: 100%;
  }
  #gnav .gnavinn > ul a {
    display: block;
    padding: 10px 10px 10px 20px;
    height: auto;
    border: none !important;
    text-align: left;
  }
  .overlay:after {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    width: 100%;
    height: 100%;
    background: #000;
    content: '';
    opacity: 0.3;
  }
}
/*footer*/
.footer .info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.footer .right {
  text-align: center;
  width: 70%;
  max-width: 500px;
  min-width: 250px;
}
.footer .right iframe {
  width: 100%;
}
.footer .right .txt {
  text-align: left;
  font-size: 14px;
}
.footer .right .txtin {
  display: inline-block;
  width: 20px;
  height: 20px;
  border-radius: 4px;
  background: #f0e7e3;
  position:relative;
  top: 4px;
  margin-right: 5px;
}
.footer .copy {
  background: #cdad9e;
  color: #fff;
  text-align: center;
  font-size: 16px;
  padding: 2px 0;
}
.footer .logo {
  text-align: center;
  margin-bottom: 50px;
}
.footer .logo a {
  display: block;
}
.footer .logo img {
  max-height: 80px;
}
@media only screen and (max-width: 1024px) {
  .footer .copy {
    padding-bottom: 55px;
  }
}
@media only screen and (max-width: 599px) {
  .footer .info {
    display: block;
  }
  .footer .left {
    margin-bottom: 20px;
  }
  .footer .right {
    margin: 0 auto;
    width: 90%;
  }
}
.list_fsns {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 30px;
}
.list_fsns .item {
  background: #574731;
  border-radius: 50%;
  width: 30px;
  height: 30px;
  text-align: center;
  line-height: 30px;
  color: #fff;
  font-size: 20px;
  margin: 0 5px;
}
.list_fsns a {
  display: block;
}
.list_fcontact {
  margin-left: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.list_fcontact .item {
  margin: 0 10px 10px;
}
.list_fcontact .res a {
  display: block;
  position: relative;
  padding: 5px 20px;
  background: #000;
  color: #fff;
  letter-spacing: 2px;
}
.list_fcontact .res a:before {
  display: inline-block;
  margin-right: 5px;
  content: '\f108';
  font-weight: 600;
  font-family: 'Font Awesome 5 Free';
}
.list_fcontact .tel {
  font-size: 18px;
  text-align: center;
}
.list_fcontact .tel a {
  position: relative;
  letter-spacing: 2px;
  font-weight: bold;
}
.list_fcontact .tel a:before {
  display: inline-block;
  margin-right: 5px;
  color: #fff;
  background: #000;
  content: '\f879';
  font-weight: 600;
  font-family: 'Font Awesome 5 Free';
  border-radius: 50%;
  width: 25px;
  height: 25px;
  line-height: 27px;
  font-size: 14px;
}
.list_fnav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 50px 0;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.list_fnav .item {
  padding: 0 20px;
  position: relative;
  text-align: center;
  margin-bottom: 10px;
  min-width: 120px;
}
.list_fnav .item:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  height: 15px;
  width: 1px;
  background: #000;
}
.list_fnav .item:after {
  content: "";
  display: block;
  position: absolute;
  right: -1px;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  height: 15px;
  width: 1px;
  background: #000;
}
/*home*/
.index .ttl {
  margin-bottom: 40px;
}
.txt {
  line-height: 200%;
}
.lb200 {
  line-height: 200%;
}
.hconcept .tbox dt {
  padding-bottom: 10px;
}
.tw48 {
  margin: 0 2% 0 auto;
  max-width: 576px;
  width: 48%;
}
.rayg .ttl {
  color: #fff;
}
.rayg li {
  color: #fff;
}
.rayg div {
  color: #fff;
}
.rayg dt {
  color: #fff;
}
.rayg dd {
  color: #fff;
}
.rayg p {
  color: #fff;
}
.rayg .ttlin01:after {
  background: #fff;
}
.rayg {
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.rayg .img {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
}
.rayg .img:after {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background: rgba(205,173,158,0.5);
  content: '';
}
.rayg .img img {
  width: 100%;
  height: 100%;
  font-family: 'object-fit: cover; object-position: 50% 50%;';
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
}
.rayp {
  position: relative;
  overflow: hidden;
}
.rayp:after {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background: rgba(255,124,173,0.8);
  content: '';
}
.raym {
  position: relative;
  overflow: hidden;
}
.raym:after {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background: rgba(138, 100, 82, 0.8);
  content: '';
}
.rayw {
  position: relative;
  overflow: hidden;
}
.rayw:after {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background: rgba(255,255,255,0.8);
  content: '';
}
.hsalon li a {
  display: block;
  margin: auto;
  padding: 10px;
  max-width: 250px;
  border: 1px solid;
  text-align: center;
  font-family: 'EB Garamond', serif;
}
.hnail li a {
  display: block;
  margin: auto;
  padding: 10px;
  max-width: 250px;
  border: 1px solid;
  text-align: center;
  font-family: 'EB Garamond', serif;
}
.list_hgallery a {
  display: block;
  overflow: hidden;
}
.list_hgallery img {
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.list_hgallery a:hover img {
  -webkit-transform: scale(1.2);
      -ms-transform: scale(1.2);
          transform: scale(1.2);
}
.hstafflist li {
  width: 23%;
  box-shadow: 1px 1px 15px #ccc;
  -webkit-box-shadow: 1px 1px 15px #ccc;
}
.hstafflist li a {
  display: block;
  width: 100%;
  height: 100%;
}
.hstafflist li dl {
  box-sizing: content-box;
  padding: 10px;
  background: #fff;
  -webkit-box-sizing: content-box;
}
.hstafflist li dt {
  color: #181818;
}
.hstafflist li dd span {
  display: block;
}
.f550 {
  background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(50%, #fff), color-stop(50%, #f5f5f5), to(#f5f5f5));
  background: -webkit-linear-gradient(top, #fff 0%, #fff 50%, #f5f5f5 50%, #f5f5f5 100%);
  background: linear-gradient(180deg, #fff 0%, #fff 50%, #f5f5f5 50%, #f5f5f5 100%);
}
.fb {
  overflow: hidden;
  margin: auto;
  max-width: 500px;
  max-height: 350px;
  width: 100%;
}
.hnewslist {
  margin: auto;
  max-width: 450px;
}
.hnewsitem {
  padding-bottom: 10px;
}
.hnewsitem li.w30 dd {
  color: #181818;
}
.hnewsitem li.w70l a {
  border-bottom: 1px solid;
}
.bmore a {
  display: block;
  margin: 60px auto;
  padding: 10px;
  max-width: 250px;
  width: 100%;
  border: 1px solid;
  text-align: center;
  font-family: 'EB Garamond', serif;
}
.bmore.-left a {
  margin-left: 0;
}
.gmore a {
  display: block;
  margin: 60px auto;
  padding: 10px;
  max-width: 250px;
  width: 100%;
  background: #181818;
  color: #fff;
  text-align: center;
  font-family: 'EB Garamond', serif;
}
.hrec {
  position: relative;
  z-index: 10;
  padding: 250px 0;
}
.hrec .img {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
}
.hrec img {
  width: 100%;
  height: 100%;
  font-family: 'object-fit: cover; object-position: 50% 50%;';
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
}
.hrec .tbox dt {
  padding-bottom: 10px;
}
.hrec .tbox {
  z-index: 1;
  max-width: 300px;
  width: 100%;
}
.hbnr li a {
  position: relative;
  display: block;
}
.hbnr li a::before {
  display: block;
  padding-top: 60%;
  content: '';
}
.hbnr li dl {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  width: 100%;
  height: 100%;
}
.hbnr li dt {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  color: #fff;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
.hbnr li dt .ttl {
  margin-bottom: 0;
  color: #fff;
}
.hbnr li dt .ttlin01:after {
  background: #fff;
}
.hbnr li .img {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100%;
}
.hbnr li .img:before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background: rgba(24,24,24,0.8);
  content: '';
}
.hbnr li .img img {
  width: 100%;
  height: 100%;
  font-family: 'object-fit: cover; object-position: 50% 50%;';
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
}
.hbnr h2 {
  margin-bottom: 0;
}
.sc {
  transition: all 0.8s ease;
  -webkit-transition: all 0.8s ease;
}
.sc:hover:after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.4);
  content: '';
}
.sc:hover {
  transform: scale(1.2);
  -webkit-transform: scale(1.2);
  -ms-transform: scale(1.2);
}
.hconcept {
  padding: 150px 0;
}
@media only screen and (max-width: 599px) {
  .hconcept {
    padding: 80px 0;
  }
}
.hgallery .m1200 {
  overflow: hidden;
}
.hgallery .wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition: 1s;
  transition: 1s;
  -webkit-transform: translateX(0%);
      -ms-transform: translateX(0%);
          transform: translateX(0%);
}
.hgallery .wrap.js-change {
  -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
          transform: translateX(-100%);
}
.hgallery .box {
  position: relative;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 100%;
}
.hgallery .boxin {
  position: relative;
}
.hgallery .boxin:after {
  content: "";
  display: block;
  padding-top: 67%;
}
.hgallery .block_txt {
  position: absolute;
  /* width: 80%; */
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.hgallery .head {
  font-size: 28px;
  margin-bottom: 20px;
  text-align: center;
}
.hgallery .bmore a {
  margin: 0 auto;
}
.hgallery .btn {
  -webkit-writing-mode: tb-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: tb-rl;
  border: 1px solid #999;
  padding: 20px 3px;
  top: 50%;
  position: absolute;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  cursor: pointer;
  text-align: center;
  white-space: nowrap;
}
.hgallery .btn:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
.hgallery .box01 .boxin {
  margin-right: 70px;
}
.hgallery .box01 .btn {
  right: 0;
  margin-right: 20px;
}
.hgallery .box01 .btn:after {
  content: "\f054";
  left: 100%;
}
.hgallery .box02 .boxin {
  margin-left: 70px;
}
.hgallery .box02 .btn {
  left: 0;
  margin-left: 20px;
}
.hgallery .box02 .btn:after {
  content: "\f053";
  right: 100%;
}
@media only screen and (max-width: 1024px) {
   .hgallery .boxin {
      min-height: 380px;
    }
}
@media only screen and (max-width: 599px) {
  .hgallery .wrap {
    display: block;
  }
  .hgallery .head {
    font-size: 20px;
    margin-bottom: 10px;
  }
  .hgallery .block_txt {
    width: 100%;
  }
  .hgallery .btn {
    display: none;
  }
  .hgallery .boxin {
    min-height: 240px;
  }
  .hgallery .box01 {
    margin-bottom: 50px;
  }
  .hgallery .box01 .boxin {
    margin-right: 0;
  }
  .hgallery .box02 .boxin {
    margin-left: 0;
  }
  .hgallery .head {
    margin-bottom: 5px;
  }
  .hgallery .bmore a {
    padding: 5px;
    max-width: 150px;
  }
}
.list_hgallery {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.list_hgallery .item {
  width: 31.333%;
  margin: 1%;
}
.list_hgallery .item:nth-child(2) {
  -webkit-align-self: flex-start;
  -ms-flex-item-align: start;
  align-self: flex-start;
}
.list_hgallery .item:nth-child(5) {
  -webkit-align-self: flex-end;
  -ms-flex-item-align: end;
  align-self: flex-end;
}
@media only screen and (max-width: 1024px) {
  .list_hgallery {
  }
  .list_hgallery .item:nth-child(1),
  .list_hgallery .item:nth-child(2),
  .list_hgallery .item:nth-child(3) {
    -webkit-align-self: flex-start;
        -ms-flex-item-align: start;
  }
  .list_hgallery .item:nth-child(4),
  .list_hgallery .item:nth-child(5),
  .list_hgallery .item:nth-child(6) {
    -webkit-align-self: flex-end;
        -ms-flex-item-align: end;
            align-self: flex-end;
  }
}
.list_hstaff {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.list_hstaff .item {
  width: 48%;
  margin: 0 1%;
}
.list_hstaff .img {
  margin-bottom: 10px;
}
.list_hstaff .img a {
  display: block;
}
.list_hstaff .position {
  color: #999;
  border-bottom: 1px solid #999;
  padding-bottom: 10px;
  margin-bottom: 10px;
}
.list_hstaff .head {
  text-align: right;
  font-size: 20px;
}
@media only screen and (max-width: 599px) {
  .list_hstaff .head {
    font-size: 18px;
  }
}
.list_hblog {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.list_hblog .item {
  width: 48%;
  margin: 0 1%;
}
.list_hblog .img {
  margin-bottom: 10px;
}
.list_hblog .img a {
  display: block;
}
.list_hblog .time {
  color: #999;
  margin-bottom: 5px;
  display: block;
}
.list_hblog .cate {
  border-bottom: 1px solid #999;
  padding-bottom: 10px;
  margin-bottom: 10px;
}
.list_hblog .head {
  font-size: 18px;
}
@media only screen and (max-width: 1024px) {
  .list_hblog .head {
    font-size: 16px;
  }
}
.list_hconceptmenu {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.list_hconceptmenu .item {
  width: 100%;
  min-width: 250px;
  max-width: 500px;
  margin: 0 20px 30px;
}
.list_hconceptmenu a {
  display: block;
  position: relative;
}
.list_hconceptmenu .head {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  color: #fff;
  padding: 10px;
  border: 1px solid #fff;
  text-align: center;
  width: 80%;
  max-width: 300px;
  font-size: 18px;
  letter-spacing: 0.1em;
}
.list_hconceptmenu .img {
  position: relative;
  height: 150px;
}
.list_hconceptmenu .img:after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  background: #cdad9e;
  opacity: 0.5;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.list_hconceptmenu img {
  height: 100%;
  width: 100%;
  font-family: 'object-fit: cover; object-position: 50% 50%;';
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
}
.hinfo .boxin {
  position: relative;
}
.hinfo .map {
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.hinfo .block_txt {
  margin-left: auto;
  padding: 30px 0;
}
@media only screen and (max-width: 599px) {
  .hinfo .block_txt {
    min-height: inherit;
  }
  .hinfo .map {
    position: relative;
    height: 200px;
    margin-bottom: 10px;
  }
}
.list_hinfo .item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.list_hinfo .datattl {
  padding-right: 20px;
  width: 110px;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  font-weight: bold;
}
.list_hinfo .data {
  border-left: 1px solid #000;
  padding: 10px 0 10px 30px;
}
.list_hinfo .item:last-child .data {
  padding-bottom: 0;
}
@media only screen and (max-width: 1024px) {
  .list_hinfo .datattl {
    padding-right: 10px;
    width: 100px;
  }
  .list_hinfo .data {
    padding-left: 20px;
  }
}
@media only screen and (max-width: 1250px) {
  .tw48 {
    margin: 0 2%;
    width: 46%;
  }
}
@media only screen and (max-width: 1024px) {
  .index h2 {
    margin-bottom: 30px;
  }
  .hnewsitem li {
    margin: 1% 0;
    width: 100%;
  }
  .hrec .tbox {
    position: static;
    max-width: none;
    transform: none;
    -webkit-transform: none;
    -ms-transform: none;
  }
}
@media only screen and (max-width: 599px) {
  .tw48 {
    margin: 2% 3%;
    max-width: none;
    width: 94%;
  }
  .index h2 {
    margin-bottom: 20px;
  }
  .hstafflist li {
    width: 48%;
  }
  .hstaff .f550 {
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(30%, #fff), color-stop(70%, #f5f5f5), to(#f5f5f5));
    background: -webkit-linear-gradient(top, #fff 0%, #fff 30%, #f5f5f5 70%, #f5f5f5 100%);
    background: linear-gradient(180deg, #fff 0%, #fff 30%, #f5f5f5 70%, #f5f5f5 100%);
  }
}
.rayb {
  position: relative;
}
.rayb:after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.4);
  content: '';
}
.aic {
  align-items: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
}
.asc {
  align-self: center;
  -webkit-align-self: center;
  -ms-flex-item-align: center;
}
.ase {
  align-self: flex-end;
  -webkit-align-self: flex-end;
  -ms-flex-item-align: end;
}
/*===================================
   下層ページ共通
==================================*/
/*トップタイトル*/
.topttl {
  margin-top: 50px;
}
.topttl .ttl {
  text-align: center;
  font-size: 46px;
  margin-bottom: 0;
}
@media only screen and (max-width: 1024px) {
  .topttl {
    margin-top: 20px;
  }
  .topttl .ttl {
    font-size: 32px;
  }
}
/*blog*/
.catarclist dt {
  padding: 5px;
  width: 100%;
  text-align: center;
}
.catarclist li {
  margin: 1%;
  padding: 10px 0;
  background: #c9c9c9;
  color: #fff;
  text-align: center;
  font-family: 'EB Garamond', serif;
}
.catarclist li a {
  display: block;
}
.catarclist li.st {
  background: #181818;
}
.catarclist ul {
  padding: 10px;
}
.catarclist .catlist {
  margin-bottom: 40px;
}
.catarclist .arclist {
  margin-bottom: 40px;
}
.pagenav ul {
  margin: 80px auto;
  max-width: 300px;
}
.pagenav li {
  width: 14%;
  text-align: center;
  font-weight: 700;
}
.pagenav li a {
  color: #898989;
  font-family: 'EB Garamond', serif;
}
.pagenav li.now a {
  display: inline-block !important;
  border-bottom: 1px solid;
  color: #323232;
}
.bbox a {
  display: block;
  height: 100%;
}
.bbox a:hover .img img {
  -webkit-transform: scale(1.2);
      -ms-transform: scale(1.2);
          transform: scale(1.2);
}
/*
.bbox dl {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
}
*/
.bbox .img {
  border: 1px solid #000;
  overflow: hidden;
}
.bbox .img img {
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.bbox dd.f1 {
  box-sizing: content-box;
  -webkit-box-sizing: content-box;
}
.bbox dd.f1 span {
  line-height: 160%;
}
.bbox dd.f1 span.cat {
  padding: 2px 10px;
  background: #898989;
  color: #fff;
}
.bbox dd {
  padding: 10px 0;
}
.bbox dd.alt {
  padding: 0;
  font-weight: 600;
}
.blist li {
  padding: 40px 0;
}
.blist li:nth-of-type(-n + 3) {
  padding-top: 0;
}
.bdbox dt {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid;
}
.bdbox .date {
  margin-right: 10px;
}
.bdbox .cat {
  padding: 2px;
  background: #898989;
  color: #fff;
}
.breco .blist li {
  width: 48%;
}
@media only screen and (max-width: 1024px) {
  .blist li {
    padding: 30px 0;
  }
  .bdbox .back {
    margin: 40px auto;
  }
}
@media only screen and (max-width: 599px) {
  .blist li {
    padding: 20px 0;
  }
  .blist li:nth-of-type(3) {
    padding-top: 20px;
  }
  .bdbox .back {
    margin: 20px auto;
  }
}

.single img {
  height: auto !important;
}


/* ##### contact ##### */
.contact #scroll {
  padding: 50px 0;
}
.contact-item {
  margin-bottom: 50px;
}
.contact-item dt {
  width: 25%;
  font-size: 18px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  align-content: flex-start;
  -webkit-align-content: flex-start;
  -ms-flex-line-pack: start;
}
.contact-item .must {
  color: red;
  margin-left: 10px;
  margin-right: 10px;
  display: inline-block;
}
.contact-item dd {
  width: 10%;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  -webkit-flex-grow: 1;
          flex-grow: 1;
}
.contact-item dd input,
.contact-item dd textarea {
  width: 100%;
  padding: 5px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #999;
}
.contact-item dd textarea {
  height: 200px;
}
.contact-item .radiobtn input {
  width: auto;
}
.contact-item dd.radiobtn label {
  position: relative;
  margin: 0 15px 0 0;
  padding-left: 22px;
}
.contact-item dd.radiobtn input {
  display: none;
}
.contact-item dd.radiobtn label:hover {
  cursor: pointer;
  text-decoration: underline;
}
.contact-item dd.radiobtn label:before {
  content: "";
  display: block;
  position: absolute;
  top: 0px;
  left: 0;
  width: 15px;
  height: 15px;
  border: 1px solid #000;
  border-radius: 50%;
  background-color: #fff;
}
.contact-item dd.radiobtn input:checked+label {
  text-decoration: underline;
  color: #000;
}
.contact-item dd.radiobtn input:checked+label:after {
  content: "";
  display: block;
  position: absolute;
  top: 3px;
  left: 3px;
  width: 11px;
  height: 11px;
  background: #000;
  border-radius: 50%;
}
.contact-btns li {
  width: 200px;
  margin: 30px;
}
@media (max-width: 1024px) {
  .contact-item dt {
    width: 30%;
  }
}
@media (max-width: 599px) {
  .contact-item {
    margin-bottom: 30px;
  }
  .contact-item dt,
  .contact-item dd {
    width: 100%;
    font-size: 16px;
  }
  .contact-item dd.radiobtn label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-flex-direction: column;
            flex-direction: column;
    margin-bottom: 5px;
  }
  .contact-item dd.radiobtn label:before {
    top: 4px;
  }
  .contact-item dd.radiobtn input:checked+label:after {
    top: 7px;
  }
  .contact-btns li {
    margin: 10px;
  }
}
/* ボタン */
.more-btn {
  width: 450px;
  max-width: 80%;
  margin: auto;
}
.back-btn {
  width: 220px;
  margin: 50px auto 0 0;
}
.more-btn a,
.more-btn button {
  width: 100%;
  font-size: 16px;
  letter-spacing: 2px;
  display: block;
  padding: 10px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center;
  background-color: #fff;
  border: 1px solid #000;
  -webkit-transition: 0.3s linear;
  transition: 0.3s linear;
}
.more-btn a:hover,
.more-btn button:hover {
  cursor: pointer;
  opacity: 1;
  background-color: #000;
  color: #fff;
}
.m50 {
  margin: 50px auto;
}
@media (max-width: 599px) {
  .back-btn {
    margin: 30px auto 0 0;
  }
}
/* ##### contact end ##### */
/*voice*/
.vlist li {
  padding: 60px 0;
  border-bottom: 1px solid #ccc;
}
.vlist .tbox dl {
  padding: 10px 0;
  border-bottom: 1px solid;
}
.vlist .tbox dt {
  font-weight: 600;
}
.vlist .pix {
  padding: 60px 0;
}
.vlist .tbox dl:not(.flexsb) dt {
  padding-bottom: 10px;
}
@media only screen and (max-width: 1024px) {
  .vlist .tbox dt {
    padding-bottom: 10px;
    width: 100%;
  }
  .vlist .tbox dd {
    margin: 0;
    width: 100%;
  }
  .vlist .pix {
    padding: 40px 0;
  }
  .vlist li {
    padding: 40px 0;
  }
}
@media only screen and (max-width: 599px) {
  .vlist .pix {
    padding: 20px 0;
  }
  .vlist li {
    padding: 20px 0;
  }
}
/*style*/
.stnav {
  padding: 0 0 10px;
}
.stnav li {
  margin: 1%;
}
.stnav li a {
  padding: 5px;
  color: #898989;
  font-family: 'EB Garamond', serif;
}
.stnav li.st a {
  border-bottom: 1px solid;
  color: #323232;
}
.stpglist {
  margin-right: 4%;
  width: 70%;
}
.stlist a {
  display: block;
  overflow: hidden;
}
.stlist img {
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.stlist a:hover img {
  -webkit-transform: scale(1.2);
      -ms-transform: scale(1.2);
          transform: scale(1.2);
}
.bpglist {
  margin-right: 4%;
  width: 70%;
}
.catarclist {
  width: 26%;
}
.std {
  padding: 20px 0;
}
.std dt {
  margin: auto;
  width: 80%;
  max-width: 500px;
}
.std ul {
  margin: 30px auto;
  max-width: 350px;
}
.std ul li {
  width: 31.333%;
}
.back {
  margin: 60px auto;
  text-align: center;
}
.back a {
  max-width: 350px;
  width: 100%;
}
.back a:before {
  display: inline-block;
  margin-right: 10px;
  content: '\f104';
  font-weight: 600;
  font-family: 'Font Awesome 5 Free';
}
.stdf {
  padding: 30px 0;
  border-top: 1px solid #898989;
  border-bottom: 1px solid #898989;
}
.stdf .picbox a {
  display: block;
}
.stdf .picbox dt {
  margin: auto;
  padding-bottom: 10px;
  max-width: 300px;
}
.stdf .picbox dd {
  padding: 2px 0;
  text-align: center;
  font-weight: 600;
}
.stdf .tbox .tit {
  padding-bottom: 20px;
  font-weight: 700;
}
.stdf .tbox dl {
  padding: 10px 0;
}
.stdf .tbox .flex dd {
  padding-left: 1em;
  max-width: 300px;
  width: 100%;
}
.stdf .tbox dd li {
  margin: 0 1%;
  padding: 5px;
  width: 31.333%;
  background: #c9c9c9;
  color: #fff;
  text-align: center;
  font-size: 14px;
}
.stdf .tbox dd li[class] {
  background: #323232;
}
.stdf .tbox dl:not(.flex) dt {
  padding-bottom: 10px;
  font-weight: 600;
}
.streco .tit {
  padding-bottom: 10px;
  font-weight: 700;
}
.streco ul {
  padding: 30px 0;
}
.streco li {
  width: 23%;
}
.streco li a {
  display: block;
}
.streco li dd {
  padding: 10px;
  font-weight: 700;
}
.list_gallery01 a {
  display: block;
}
.list_gallery01 .img {
  overflow: hidden;
}
.list_gallery01 img {
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.list_gallery01 a:hover img {
  -webkit-transform: scale(1.2);
      -ms-transform: scale(1.2);
          transform: scale(1.2);
}
@media only screen and (max-width: 1024px) {
  .stpglist {
    margin: 1%;
    width: 100%;
  }
  .bpglist {
    margin: 1%;
    width: 100%;
  }
  .catarclist {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 1%;
    width: 100%;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
  }
  .catarclist .catlist {
    margin-bottom: 0;
    width: 48%;
  }
  .catarclist .arclist {
    margin-bottom: 0;
    width: 48%;
  }
}
@media only screen and (max-width: 599px) {
  .catarclist .catlist {
    margin: auto;
    max-width: 450px;
    width: 100%;
  }
  .catarclist .ttl_cmn01 {
    margin-bottom: 0px;
  }
  .catarclist .arclist {
    margin: auto;
    max-width: 450px;
    width: 100%;
  }
  
  .stdf .tbox dl.flex dt {
    padding-bottom: 10px;
    width: 100%;
  }
  .stdf .tbox .flex dd {
    padding-left: 0;
  }
  .stdf .tbox .tit {
    padding-bottom: 0;
  }
  .streco li {
    width: 48%;
  }
  .streco ul {
    padding: 10px 0;
  }
  .bbox dd.f1 span.cat {
    padding: 2px;
  }
}
/*nail*/
.hatt dt {
  padding-bottom: 10px;
  color: #ff7cad;
  text-align: center;
  font-weight: 600;
}
.hatt ul {
  margin: auto;
  padding: 20px 0;
  max-width: 700px;
}
.hatt li {
  padding: 5px 0;
}
.hatt li:first-letter {
  margin-right: 5px;
  color: #ff7cad;
}
.mTit {
  position: relative;
  overflow: hidden;
  margin-bottom: 20px;
}
.mTit h2 {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  margin: auto;
  width: 90%;
  text-align: center;
  font-weight: 500;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
.mTit .pic {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 150px;
}
.mTit .pic img {
  position: absolute;
  top: 0;
  left: 0;
  /* top: 50%; */
  /* left: 50%; */
  width: 100%;
  height: 100%;
  font-family: 'object-fit: cover; object-position: 50% 50%;';
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
  /* transform: translate(-50%, -50%); */
}
.mTit .pic:before {
/*   display: block;
  padding-top: 9%;
  content: ''; */
}
@media only screen and (max-width: 599px) {
  .mTit .pic {
    height: 100px;
  }
}
.mTxt {
  padding: 20px 0;
}
.mList ul {
  padding: 20px 0;
}
.mAtt dt {
  padding-bottom: 10px;
}
.mList li {
  margin: 0 0 30px;
  padding: 10px 20px;
  border-left: 1px solid;
}
.mList li dt span {
  display: block;
}
.mList li dd {
  text-align: right;
  letter-spacing: 2px;
}
.mList li dt span.tit {
  padding-bottom: 10px;
  font-weight: 600;
}
.mrBox {
  margin: 60px 0;
  padding: 30px;
  border: 2px solid #181818;
}
.mrBox .mrTit {
  position: relative;
  margin: -52px auto 20px;
  padding: 10px;
  max-width: 370px;
  max-height: 40px;
  background: #181818;
  background: url(/import/tenant_1/160.16.202.134/html/images/marrow.png) center center/contain no-repeat;
  color: #fff;
  text-align: center;
  line-height: 100%;
}
.mrBox .ttl .ttlin02 {
  line-height: 160%;
}
.mList .mrBox ul {
  padding: 0;
}
@media only screen and (max-width: 1024px) {
  .mList li dt {
    margin: 1% 0;
    width: 100%;
  }
  .mList li dd {
    margin: 1% 0;
    width: 100%;
  }
  .mList li {
    padding: 0px 10px;
    border-bottom: 1px solid;
    border-left: 0;
  }
  .mrBox {
    margin: 50px 0;
    padding: 20px;
  }
  .mrBox .mrTit {
    margin-top: -40px;
  }
}
@media only screen and (max-width: 599px) {
  .mList li {
    margin: 0 0 20px;
    padding: 0 5px;
  }
  .mrBox {
    margin: 40px 0;
    padding: 10px;
  }
  .mrBox .mrTit {
    margin-top: -30px;
  }
}
/*staff*/
.stflist .altlist {
  position: relative;
  padding-bottom: 90px;
}
.stflist .altlist .bmore {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}
.stflist .altlist dt {
  margin: 20px 0;
  text-align: center;
  font-family: 'EB Garamond', serif;
}
.stflist .altlist dd span {
  display: block;
  text-align: center;
  line-height: 160%;
}
.stflist .altlist dd span.alt {
  font-weight: 700;
}
.stflist .bmore a {
  margin: 20px auto;
}
.stflist .img a {
  display: block;
  overflow: hidden;
}
.stflist .img img {
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.stflist .img a:hover img {
  -webkit-transform: scale(1.2);
      -ms-transform: scale(1.2);
          transform: scale(1.2);
}
.stfdbox {
  margin: auto;
  max-width: 700px;
}
.stfdbox .img {
  max-width: 500px;
  margin: 0 auto;
}
.stfdbox .tbox dt {
  padding: 20px 0;
  font-family: 'EB Garamond', serif;
}
.stfdbox .tbox dt span {
  margin-right: 5px;
}
.stfdbox .tbox dt span.cat {
  padding: 0 5px;
  background: #181818;
  color: #fff;
}
.stfdbox .tbox dd span {
  display: block;
  line-height: 160%;
}
.stfdbox .tbox dd span.alt {
  font-weight: 700;
}
.stflist .bmore a {
  margin: 20px auto;
}
.stfdlist dl.flexsb {
  padding: 10px 0;
  border-bottom: 1px solid #898989;
}
.stfdlist dl dt {
  font-weight: 700;
}
.stfdlist dl.flexsb dt {
  width: 20%;
}
.stfdlist dl.flexsb dd {
  padding-left: 1em;
  width: 80%;
}
.stfdlist dl:not(.flexsb) dt {
  padding: 10px 0;
}
@media only screen and (max-width: 599px) {
  .stflist .bmore a {
    padding: 5px;
  }
  .stflist .altlist dt {
    padding: 10px 0;
  }
  .stfdlist dl.flexsb dd {
    padding-left: 0;
    width: 100%;
  }
  .stfdlist dl.flexsb dt {
    padding-bottom: 5px;
    width: 100%;
  }
  .stflist .altlist {
    padding-bottom: 80px;
  }
}
/*access*/
.accbox .tbox .tit {
  padding-bottom: 30px;
  font-weight: 600;
}
.accbox .tbox dl {
  padding: 10px 0;
  border-bottom: 1px solid #898989;
}
.accbox .tbox dt {
  width: 30%;
  font-weight: 600;
}
.accbox .tbox dd {
  padding-left: 1em;
  width: 70%;
}
.accbox .tbox dd.tel a {
  font-family: 'NotoSansCJKjp-DemiLight', 'EB Garamond', serif, '游ゴシック', YuGothic, Hiragino Sans, 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic Pro', Hiragino Kaku Gothic ProN, 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
}
.accbox .tbox dd.tel a:before {
  display: none;
}
@media only screen and (max-width: 1024px) {
  .accbox .tbox .tit {
    padding-bottom: 20px;
  }
  .accbox {
    margin: auto;
    max-width: 700px;
  }
  .accbox .w48 {
    margin: 2% auto;
    width: 100%;
  }
  .access .hmap {
    overflow: hidden;
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 599px) {
  .accbox .tbox .tit {
    padding-bottom: 10px;
  }
  .accbox .tbox dt {
    padding-bottom: 5px;
    width: 100%;
  }
  .accbox .tbox dd {
    padding-left: 0;
    width: 100%;
  }
}
/*coupon*/
.couplist h2 span.fs16 {
  color: #323232;
  font-weight: 600;
}
.couplist li {
  position: relative;
  padding: 15px;
  border: 1px dashed #acacac;
}
.couplist li .cat {
  display: block;
  margin: -32px 0 10px;
  max-width: 150px;
}
.couplist li dt {
  box-sizing: content-box;
  padding-bottom: 20px;
  font-weight: 600;
  -webkit-box-sizing: content-box;
}
.couplist li dd {
  padding: 5px 0;
}
.couplist li dd.pixr {
  letter-spacing: 2px;
  font-weight: 600;
}
.couplist li dd.pixr img {
  height: 30px !important;
}
.ribonm {
  padding: 5px;
  background: url(/import/tenant_1/160.16.202.134/html/images/ribonm.png) center center/contain no-repeat;
  color: #fff;
  text-align: center;
}
.ribonp {
  padding: 5px;
  background: url(/import/tenant_1/160.16.202.134/html/images/ribonp.png) center center/contain no-repeat;
  color: #fff;
  text-align: center;
}
@media only screen and (max-width: 1024px) {
  .couplist li {
    margin: 3% 1%;
    width: 48%;
  }
}
@media only screen and (max-width: 599px) {
  .couplist li {
    width: 98%;
  }
  .couplist li dt {
    box-sizing: border-box;
    height: auto;
    -webkit-box-sizing: border-box;
  }
}
/*concept*/
.wall {
  background: url(/import/tenant_1/160.16.202.134/html/images/wall.png) center no-repeat;
  background-size: cover;
}
.con01box .tbox .block_txt {
  padding: 10px 0;
}
.con01box .tbox dt {
  text-align: right;
}
.con01box .tbox dd {
  text-align: right;
}
.concept03 .tbox {
  position: relative;
}
.concept03 .img {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 100%;
  height: 80%;
}
.concept03 .raym {
  position: relative;
}
.concept03 .raym:after {
  width: 67%;
}
.concept03 h2 {
  color: #fff;
}
.concept03 .ttlin01:after {
  background: #fff;
}
.concept03 .block_txt {
  padding: 60px 0px 120px;
  min-height: 500px;
  width: 66%;
  color: #fff;
  font-size: 15px;
  line-height: 160%;
  position: relative;
  z-index: 2;
}
.concept03 .ttl {
  margin-bottom: 30px;
}
.concept03 .txt {
  color: #fff;
}
.concept03 .txtin {
  margin: 20px 0 0;
  display: block;
}
@media only screen and (max-width: 1024px) {
  .concept03 .raym {
    position: relative;
  }
  .concept03 .tbox {
    position: static;
  }
  .concept03 .img {
    height: 100%;
  }
  .concept03 .block_txt {
    padding: 40px;
    width: 100%;
    min-height: 400px;
  }
  .concept03 .raym:after {
    width: 100%;
  }
  .concept03 .tfmp.area {
    padding: 0;
  }
}
@media only screen and (max-width: 599px) {
  .concept03 .block_txt {
    padding: 40px 0px 60px;
    width: 100%;
  }
}
/*HEAD SPA*/
.headspa .mrBox {
  margin: 0;
  padding: 60px 0;
  border: none;
}
.mFlow h2 .fs14 {
  color: #323232;
  line-height: 160%;
}
.mFlowlist li {
  position: relative;
  margin-top: 60px;
  padding: 30px;
  border: 2px solid #181818;
}
.mFlowlist li .tbox dt {
  position: relative;
  padding-bottom: 10px;
  padding-left: 40px;
  font-weight: 700;
}
.mFlowlist li .tbox dt .num {
  position: absolute;
  top: 0;
  left: 0;
  margin-right: 0.5em;
  padding: 1.5px 10px;
  background: #181818;
  color: #fff;
  text-align: center;
}
.mFlowlist li ~ li:after {
  position: absolute;
  top: -50px;
  left: 50%;
  display: block;
  width: 75px;
  height: 35px;
  background: url(/import/tenant_1/160.16.202.134/html/images/ab.png) center center/contain no-repeat;
  content: '';
  text-align: center;
  font-family: FontAwesome;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}
@media only screen and (max-width: 599px) {
  .mFlowlist li {
    padding: 20px;
  }
}
/*product*/
.probox li {
  width: 31.333%;
}
.probox dd {
  padding: 20px;
  text-align: center;
}
.probox dd span {
  display: block;
  padding: 5px 0;
}
.probox dd span.fs18 {
  box-sizing: content-box;
  font-weight: 600;
  -webkit-box-sizing: content-box;
}
@media only screen and (max-width: 1024px) {
  .probox dd {
    padding: 10px;
  }
}
@media only screen and (max-width: 1024px) {
  .probox dd {
    padding: 5px;
  }
}
/*nail_list*/
.npglist {
  margin-right: 4%;
  width: 70%;
}
.nlist li a {
  display: block;
  height: 100%;
}
.nlist li dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  height: 100%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
}
.nlist li dd {
  padding: 10px 0;
}
.nlist li dd.alt {
  flex-grow: 1;
  font-weight: 600;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
}
.nd dt.trimming80 {
  margin: auto;
  max-width: 80%;
}
.nd .tit {
  padding: 40px 0;
}
.nd .tit .w30 {
  text-align: right;
}
.nd .typelist {
  padding: 20px 0;
  border-top: 1px solid #898989;
  border-bottom: 1px solid #898989;
}
.nd .typelist dd {
  background: #323232;
  color: #fff;
  text-align: center;
}
.nd .typelist dt {
  font-weight: 600;
}
.ndb {
  padding: 20px 0;
}
@media only screen and (max-width: 1024px) {
  .npglist {
    margin: 1%;
    width: 100%;
  }
  .nd .typelist dt {
    margin: 1%;
    width: 100%;
  }
  .nd .typelist dd {
    margin: 1%;
    padding: 5px;
    width: 100%;
  }
  .nd .typelist {
    padding: 10px 0;
  }
  .nd .tit {
    padding: 30px 0;
  }
}
@media only screen and (max-width: 599px) {
  .nd .typelist li {
    margin: 0;
    width: 100%;
  }
  .nd .typelist dd {
    margin: 1% auto;
    max-width: 450px;
  }
}
/*qanda*/
.qalist dl {
  padding: 20px 0;
}
.qalist dt {
  position: relative;
  padding-bottom: 30px;
  padding-left: 60px;
}
.qalist dd {
  position: relative;
  padding-left: 60px;
}
.qalist .icon {
  position: absolute;
  top: 0;
  left: 0;
  padding: 7.5px 10px;
  font-size: 30px;
}
.qalist dd .icon {
  background: #181818;
  color: #fff;
}
.qalist .txt {
  display: block;
  padding-top: 5px;
}
.qalist .iconp {
  position: absolute;
  top: 0;
  left: 0;
  padding: 7.5px 10px;
  font-size: 30px;
}
.qalist dd .iconp {
  background: #ff7cad;
  color: #fff;
}
@media only screen and (max-width: 599px) {
  .qalist dt {
    padding-bottom: 20px;
    padding-left: 50px;
  }
  .qalist dd {
    padding-left: 50px;
  }
}
/*リクルート*/
.list_recruit01 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.list_recruit01 .item {
  width: 100%;
  max-width: 300px;
  min-width: 250px;
  margin: 0 20px 30px;
  padding-left: 50px;
  position: relative;
}
.list_recruit01 .item:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  position: absolute;
  left: 0;
  top: 10px;
  font-size: 30px;
  color: #cdad9e;
}
.list_recruit01 .item.salary:before {
  content: '\f157';
}
.list_recruit01 .item.time:before {
  content: "\f017";
}
.list_recruit01 .item.place:before {
  content: "\f5a0";
}
.list_recruit01 .head {
  color: #cdad9e;
}
.list_recruit01 .txt {
  line-height: 150%;
}
.recruit02 {
  position: relative;
}
.recruit02 .block_txt {
  width: 45%;
  min-height: 300px;
  padding: 50px 0;
}
.recruit02 .img {
  position: absolute;
  top: 0;
  right: 0;
  width: 50%;
  height: 100%;
}
.recruit02 .head {
  margin-bottom: 5px;
}
.recruit02 .txt {
  margin-bottom: 30px;
  line-height: 150%;
}
@media only screen and (max-width: 599px) {
  .recruit02 .block_txt {
    min-height: inherit;
    width: 100%;
  }
  .recruit02 .img {
    width: 100%;
    position: relative;
    height: 200px;
  }
}
.list_recruit03 .item {
  background: #fff;
}
.list_recruit03 .head {
  padding: 10px;
  font-weight: bold;
  font-size: 20px;
}
.list_recruit03 .headin01 {
  margin-right: 20px;
}
@media only screen and (max-width: 599px) {
  .list_recruit03 .head {
    font-size: 16px;
  }
  .list_recruit03 .headin01 {
    display: block;
  }
}
.recruit04 {
  position: relative;
}
.recruit04 .block_txt {
  width: 45%;
  min-height: 500px;
  padding: 50px 0;
  margin-left: auto;
}
.recruit04 .img {
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
  height: 100%;
}
.recruit04 .head {
  margin-bottom: 5px;
}
.recruit04 .txt {
  margin-bottom: 30px;
  line-height: 150%;
}
@media only screen and (max-width: 599px) {
  .recruit04 .block_txt {
    min-height: inherit;
    width: 100%;
  }
  .recruit04 .img {
    width: 100%;
    position: relative;
    min-height: inherit;
  }
}
.recruit06 .telephone {
  margin-bottom: 10px;
}
.recruit06 .telephone .txt {
  text-align: center;
}
.recruit06 .telephone .tel {
  text-align: center;
  font-size: 30px;
}
/*eyelash*/
.eyelash03 .box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 50px;
}
.eyelash03 .block {
  padding: 0 50px;
  width: 50%;
  position: relative;
}
.eyelash03 .block:first-child:after {
  content: "";
  display: block;
  border: 30px solid transparent;
  border-left: 30px solid #cdad9e;
  position: absolute;
  right: -15px;
  top: 50%;
  -webkit-transform: translate(50%, -50%);
      -ms-transform: translate(50%, -50%);
          transform: translate(50%, -50%);
}
@media only screen and (max-width: 599px) {
  .eyelash03 .block {
    padding: 0 20px;
  }
  .eyelash03 .block:first-child:after {
    border: 14px solid transparent;
    border-left: 14px solid #cdad9e;
    right: -7px;
  }
}



/* カレンダー */
.fc-unthemed th {
  padding-bottom: 20px;
}

.fc-scroller {
  height: auto !important;
}

.fc-toolbar.fc-header-toolbar {
  display: none;
}

.fc-basic-view .fc-body .fc-row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  height: 60px !important;
  min-height: auto;
}

.fc-unthemed th,
.fc-unthemed td,
.fc-unthemed thead,
.fc-unthemed tbody,
.fc-unthemed .fc-divider,
.fc-unthemed .fc-row,
.fc-unthemed .fc-content,
.fc-unthemed .fc-popover,
.fc-unthemed .fc-list-view,
.fc-unthemed .fc-list-heading td {
  border: none;
}

.fc .fc-row .fc-content-skeleton table,
.fc .fc-row .fc-content-skeleton td,
.fc .fc-row .fc-helper-skeleton td {
  text-align: center;
}

.fc-ltr .fc-basic-view .fc-day-top .fc-day-number {
  float: none;
}

.fc-row .fc-bgevent-skeleton td,
.fc-unthemed td.fc-today {
  padding: 2px;
  border-radius: 20px;
  background-clip: content-box;
}

.fc-unthemed td.fc-today {
  border: none;
}

@media only screen and (max-width: 1024px) {
  .fc-basic-view .fc-body .fc-row {
    height: 50px !important;
  }
}
@media only screen and (max-width: 599px) {
  .fc-unthemed th {
    letter-spacing: -.1em;
    font-size: 14px;
  }
  .fc-basic-view .fc-body .fc-row {
    height: 40px !important;
  }
}





/*# sourceMappingURL=common.css.map */
