@charset "UTF-8";
/*==========================================
矢印 >
===========================================*/
/*==========================================
矢印 ▶
===========================================*/
/*==========================================
背景ストライプ   ($deg=0 平行)($deg=45deg 斜め)
===========================================*/
/*==========================================
Flexbox
===========================================*/
/*==========================================
上下左右中央揃え
===========================================*/
/*==========================================
上下中央揃え
===========================================*/
/*==========================================
before,after
===========================================*/
/*==========================================
最後の行のmargin-bottomを0にする
===========================================*/
/*==========================================
メインビジュアル(スライダー)
===========================================*/
/*==========================================
タイトル左右のボーダー
===========================================*/
/*==========================================
hover時に中央から外側に向けてのボーダー
===========================================*/
/*==========================================
カーテン
===========================================*/
/*==========================================
グラデーション
===========================================*/
/*-----------------------------
→方向
-----------------------------*/
/*-----------------------------
↓方向
-----------------------------*/
/*-----------------------------
斜め方向
-----------------------------*/
/*==========================================
iframe レスポンシブ　アスペクト比を保ちながら縦横を伸縮
===========================================*/
/*==========================================
画面幅3分割レイアウト
===========================================*/
/*==========================================
PC共通
===========================================*/
html {
  font-size: 62.5%;
}

body {
  width: 100%;
  margin: 0 auto;
  font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  color: #eaeaea;
  line-height: 1.8;
  text-align: center;
  letter-spacing: .08em;
  font-size: 1.5rem;
  word-break: normal;
  background: url(../img/common/body.png);
}

#wrapper {
  min-width: 1200px;
}

/*==========================================
PC表示で電話番号リンクを無効
===========================================*/
a[href^="tel:"] {
  pointer-events: none;
}

/*==========================================
サイトの標準横幅と内部余白
===========================================*/
.inbox {
  width: 1080px;
  margin: 0 auto;
}

.com-pd {
  padding: 115px 0;
}

.com-pt {
  padding-top: 115px;
}

.com-pb {
  padding-bottom: 115px;
}

.com-mb {
  margin-bottom: 115px;
}

/*==========================================
PC非表示
===========================================*/
.pc-none {
  display: none !important;
}

/*==========================================
パンくずリスト
===========================================*/
div .bread {
  font-size: 10px;
  text-align: left;
  position: relative;
  z-index: 1;
}
div .bread .breadcrumbs {
  position: absolute;
  width: 1080px;
  margin: 0 auto;
  left: 0;
  top: 10px;
}
div .bread li {
  display: inline-block;
  color: #7c6637;
}
div .bread li:after {
  content: " > ";
  padding: 0 2px;
  color: #999;
}
div .bread li:last-child:after {
  content: "";
}
div .bread li a {
  color: #999;
}

/*==========================================
float
===========================================*/
.fl-l {
  float: left;
}

.fl-r {
  float: right;
}

/*==========================================
Flexbox
===========================================*/
.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/*折り返し
-----------------------*/
.flx-wrp {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

/*逆順
-----------------------*/
.flx-rr {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

/*水平方向の揃え
=================================================*/
/*初期値
-----------------------*/
.flx-strt {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
}

/*並列で均等配置（左右隙間なし=space-between）
-----------------------*/
.flx-btw {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

/*並列で均等配置（左右隙間あり=space-around）
-----------------------*/
.flx-ard {
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

/*水平揃え　末揃え
-----------------------*/
.flx-end {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

/*水平揃え　中央揃え
-----------------------*/
.flx-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

/*垂直方向の揃え
=================================================*/
/*水平揃え　上揃え
-----------------------*/
.flx-alitem-strt {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

/*水平揃え　高さ揃え
-----------------------*/
.flx-alitem-strch {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

/*水平揃え　縦・横の中央揃え
-----------------------*/
.flx-alitem-c {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

/*水平揃え　下揃え
-----------------------*/
.flx-alitem-end {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

/*水平揃え　ベースライン揃え
-----------------------*/
.flx-alitem-base {
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}

/*複数行にした揃え方
=================================================*/
/*初期値
-----------------------*/
.flx-alcont-strt {
  -ms-flex-line-pack: start;
      align-content: flex-start;
}

/*親要素の開始位置から配置。上揃え
-----------------------*/
.flx-alcont-strch {
  -ms-flex-line-pack: stretch;
      align-content: stretch;
}

/*親要素の終点から配置。下揃え
-----------------------*/
.flx-alcont-end {
  -ms-flex-line-pack: end;
      align-content: flex-end;
}

/*中央揃え
-----------------------*/
.flx-alcont-c {
  -ms-flex-line-pack: center;
      align-content: center;
}

/*最初と最後の子要素を上下の端に配置し、残りの要素は均等に間隔をあけて配置
-----------------------*/
.flx-alcont-s-btw {
  -ms-flex-line-pack: justify;
      align-content: space-between;
}

/*上下端にある子要素も含め、均等に間隔をあけて配置
-----------------------*/
.flx-alcont-s-ard {
  -ms-flex-line-pack: distribute;
      align-content: space-around;
}

.flex-order-1 {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

.flex-order-2 {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}

/*==========================================
スマホ用ドロワー無効
===========================================*/
.drawer_menu {
  display: none;
}

#nav-toggle,
#global-nav {
  display: none;
}

.drawer_menu {
  display: none;
}

/*==========================================
header
===========================================*/
#header {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  z-index: 1001;
  padding: clamp(12px, 1.78vw, 35px) 30px 0 35px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
#header .hd-right {
  /* width: 675px; */
  width: 850px;
  font-weight: 400;
}
#header .hd-right .num-wrp {
  margin-bottom: 15px;
}
#header .hd-right .num-wrp li {
  letter-spacing: .06em;
  margin-right: 17px;
  font-size: 2.7rem;
  line-height: 1.3;
}
#header .hd-right .num-wrp li a {
  color: #fff;
}
#header .hd-right .num-wrp li:first-child a {
  padding-left: 23px;
  background: url(../img/common/hd-sp_icon.png) left center no-repeat;
}
#header .hd-right .num-wrp li:last-child {
  margin-right: 0;
}
#header .hd-right .num-wrp li:last-child a {
  padding-left: 26px;
  background: url(../img/common/hd-tel_icon.png) left center no-repeat;
}

/*==========================================
nav
===========================================*/
#gnav li {
  letter-spacing: .08em;
  font-size: 1.6rem;
}
#gnav li a {
  color: #fff;
  padding-bottom: 3px;
  display: block;
  position: relative;
}
#gnav li a:before {
  content: '';
  width: 0;
  left: 50%;
  bottom: 0;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  border-bottom: 1px solid #fff;
  position: absolute;
  display: block;
}
#gnav li a:after {
  content: '';
  width: 0;
  right: 50%;
  bottom: 0;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  border-bottom: 1px solid #fff;
  position: absolute;
  display: block;
}
#gnav li a:hover {
  color: #fff;
}
#gnav li a:hover:before {
  width: 50%;
  border-bottom: 1px solid #fff;
}
#gnav li a:hover:after {
  width: 50%;
  border-bottom: 1px solid #fff;
}
#gnav .current a {
  border-bottom: 1px solid #fff;
}
#gnav .current a:before, #gnav .current a:after {
  border-bottom: none;
}
#gnav .current a:hover:before, #gnav .current a:hover:after {
  border-bottom: none;
}

/*==========================================
メインビジュアル
===========================================*/
#mv {
  position: relative;
  height: 49.218vw;
  min-height: 590px;
  max-height: 945px;
  background: #000;
}
#mv .mv-frame {
  position: relative;
  width: 100%;
  height: 100%;
  background: url(../img/top/mv/mv.png) center/cover no-repeat;
  -webkit-animation-name: fadeInAnime;
          animation-name: fadeInAnime;
  -webkit-animation-duration: 2s;
          animation-duration: 2s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  opacity: 0;
  -webkit-animation-delay: .65s;
          animation-delay: .65s;
}
#mv h2 {
  width: 30.46875%;
  margin: 0 auto;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 61%;
  z-index: 10;
  -webkit-animation-name: fadeInAnime;
          animation-name: fadeInAnime;
  -webkit-animation-duration: 4s;
          animation-duration: 4s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  opacity: 0;
  -webkit-animation-delay: 3s;
          animation-delay: 3s;
}
#mv p {
  width: 38.125%;
  margin: 0 auto;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 11%;
  z-index: 10;
  -webkit-animation-name: fadeInAnime;
          animation-name: fadeInAnime;
  -webkit-animation-duration: 4s;
          animation-duration: 4s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  opacity: 0;
  -webkit-animation-delay: 3s;
          animation-delay: 3s;
}
#mv .mv-maria {
  width: 31.9791%;
  height: 72.8042%;
  margin: 0 auto;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  background: url(../img/top/mv/mv-maria.png) center/100% no-repeat;
  -webkit-animation-name: fadeInAnime;
          animation-name: fadeInAnime;
  -webkit-animation-duration: 5s;
          animation-duration: 5s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  opacity: 0;
  -webkit-animation-delay: .9s;
          animation-delay: .9s;
}
#mv .mv-wing {
  position: absolute;
  left: -1%;
  right: 0;
  width: 92.5%;
  margin: 0 auto;
  height: 89.94708%;
  background: url(../img/top/mv/mv-wing.png) center/100% no-repeat;
  -webkit-animation-name: fadeInAnime;
          animation-name: fadeInAnime;
  -webkit-animation-duration: 4.3s;
          animation-duration: 4.3s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  opacity: 0;
  -webkit-animation-delay: 4.3s;
          animation-delay: 4.3s;
}

@-webkit-keyframes fadeInAnime {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes fadeInAnime {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/*==========================================
共通ブロック・要素
===========================================*/
.txt-blc {
  text-align: left;
}
.txt-blc p {
  margin-bottom: 25px;
  line-height: 1.8;
}
.txt-blc p:last-child {
  margin-bottom: 0;
}

#g-map h4 {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 5px;
}
#g-map h4 span {
  padding-left: 20px;
}
#g-map .map {
  height: 400px;
}
#g-map .map iframe {
  width: 100%;
  height: 100%;
}

.more-btn {
  width: 190px;
  margin: 0 auto;
  font-family: "Noto Serif JP", "游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", serif;
  display: block;
  border: 1px solid #7c6637;
  padding: 4px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: center;
  overflow: hidden;
}
.more-btn span {
  display: block;
  font-size: 1.7rem;
  background: url(../img/common/more-btn_white_icon.png) right 13px center no-repeat, url(../img/common/more-btn_bg.png) center no-repeat, #7c6637;
  padding: 10px 0;
}

/*==========================================
テーブルレイアウト
===========================================*/
.com-dl > dl {
  padding: 20px 0;
  border-bottom: 1px solid #eaeaea;
}
.com-dl > dl:first-child {
  border-top: 1px solid #eaeaea;
}
.com-dl > dl > dt, .com-dl > dl > dd {
  display: table-cell;
  vertical-align: middle;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
}
.com-dl > dl > dt {
  padding: 0 10px;
  width: 150px;
  text-align: center;
  vertical-align: top;
}
.com-dl > dl > dd {
  padding: 0 20px 0 60px;
}
.com-dl > dl > dd a[href^="mailto:"] {
  text-decoration: underline;
}

/*==========================================
トップページ
===========================================*/
/*------------------------------
お知らせ
-------------------------------*/
#top-news {
  padding: 42px 0 61px 0;
  background: url(../img/top/news-bg.png) center/cover no-repeat;
}
#top-news .inbox {
  position: relative;
}
#top-news h3 {
  width: 155px;
  font-size: 5rem;
  line-height: 1;
}
#top-news .news-wrp_lists {
  width: 890px;
  padding-top: 15px;
}
#top-news .news-wrp_lists article {
  width: 420px;
  text-align: left;
}
#top-news .news-wrp_lists article time {
  width: 90px;
}
#top-news .news-wrp_lists article .category-label {
  width: 310px;
  color: #7c6637;
}
#top-news .news-wrp_lists article .category-label li {
  padding-left: 22px;
  position: relative;
}
#top-news .news-wrp_lists article .category-label li:before {
  position: absolute;
  content: '';
  width: 1px;
  height: 15px;
  left: 11px;
  top: 0;
  bottom: 0;
  margin: auto 0;
  background: #7c6637;
  -webkit-transform: rotate(20deg);
          transform: rotate(20deg);
}
#top-news .news-wrp_lists article .category-label li:first-child {
  padding-left: 0;
}
#top-news .news-wrp_lists article .category-label li:first-child:before {
  background: none;
}
#top-news .news-wrp_lists article h4 {
  width: 100%;
  margin-top: 10px;
}
#top-news .view-more {
  position: absolute;
  left: 0;
  bottom: -14px;
  letter-spacing: .12em;
  color: #7c6637;
  border-bottom: 1px solid #7c6637;
  padding-right: 21px;
  background: url(../img/common/more-btn_gold_icon.png) right center no-repeat;
}

/*------------------------------
刺青・タトゥーのことでしたらお任せください
-------------------------------*/
#top-greeting {
  border-bottom: 1px solid #777267;
  padding: 17px 0 14.95vw 0;
  background: url(../img/top/greeting-left_top_deco.png) left top/16.927% no-repeat, url(../img/top/greeting-right_bottom_deco.png) right bottom 33vw/27.4479% no-repeat, url(../img/top/greeting-woman.png) right 4.427% top 10vw/39.53125% no-repeat, url(../img/top/greeting-rose.png) left top 685px/49.53125% no-repeat, url(../img/top/greeting-wave.png) right top/81.71875% no-repeat, url(../img/top/greeting-bottom_bg.png) bottom center/100% no-repeat, url(../img/top/greeting-bg.png) center/cover;
}
#top-greeting .txt-blc p {
  margin-bottom: 40px;
  letter-spacing: .1em;
  line-height: 2.4;
  color: #eaeaea;
}
#top-greeting .txt-blc p:last-child {
  margin-bottom: 0;
}
#top-greeting .txt-blc:nth-child(1) {
  width: 650px;
  margin-bottom: 14.85vw;
}
#top-greeting .txt-blc:nth-child(1) h3 {
  position: relative;
  margin-bottom: 35px;
}
#top-greeting .txt-blc:nth-child(1) h3 .en {
  position: absolute;
  left: 0;
  top: 0;
}
#top-greeting .txt-blc:nth-child(1) h3 .jp {
  font-size: 2.8rem;
  letter-spacing: .1em;
  display: block;
  padding-top: 140px;
}
#top-greeting .txt-blc:nth-child(2) {
  width: 512px;
  margin: 0 0 11.45vw auto;
}
#top-greeting .txt-blc:nth-child(3) {
  text-align: center;
}
#top-greeting .txt-blc:nth-child(3) p:nth-child(1) {
  margin-bottom: 75px;
}
/* #top-greeting .txt-blc:nth-child(3) p:nth-child(2), #top-greeting .txt-blc:nth-child(3) p:nth-child(3) {
  font-size: 1.9rem;
  letter-spacing: .16em;
} */
#top-greeting .txt-blc:nth-child(3) p:nth-child(3) {
  margin-bottom: 50px;
}

/*------------------------------
業務内容
-------------------------------*/
#top-service {
  padding: 58px 0 100px 0;
  border-bottom: 1px solid #777267;
  background: url(../img/top/service-ttl-left_wing.png) left 3.125% top/32.2916% no-repeat, url(../img/top/service-ttl-right_wing.png) right 3.125% top/32.34375% no-repeat, url(../img/top/service-left_wing.png) left bottom 193px/21.302% no-repeat, url(../img/top/service-right_wing.png) right top 473px/17.8645% no-repeat, url(../img/top/service-bg.png) center/cover no-repeat;
}
#top-service h3 {
  margin-bottom: 57px;
  padding-top: 131px;
  position: relative;
  z-index: 1;
  background: url(../img/top/service-ttl_bdr.png) center bottom 20px no-repeat;
}
#top-service h3 .en {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  z-index: -1;
}
#top-service h3 .jp {
  width: 171px;
  margin: 0 auto;
  background: #000;
  color: #fff;
  font-size: 2.8rem;
  display: block;
  letter-spacing: .12em;
  padding: 2.5px 0;
  border: 1px solid #777267;
}
#top-service .service-wrp li {
  width: 500px;
  margin-bottom: 87px;
}
#top-service .service-wrp li:nth-child(2n+1):nth-last-child(-n+2), #top-service .service-wrp li:nth-child(2n+1):nth-last-child(-n+2) ~ li {
  margin-bottom: 0;
}
#top-service .service-wrp li dt {
  padding: 50px 0;
  position: relative;
  background: url(../img/top/service-item_ttl_deco.png) top center no-repeat;
}
#top-service .service-wrp li dt:before {
  width: 1px;
  height: 25px;
  position: absolute;
  content: '';
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0 auto;
  background: #70613f;
}
#top-service .service-wrp li dt .en {
  display: block;
  position: relative;
}
#top-service .service-wrp li dt .en:before, #top-service .service-wrp li dt .en:after {
  width: 54px;
  height: 73px;
  background: url(../img/top/service-item_ttl_frame.png) center/100%;
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  margin: auto 0;
}
#top-service .service-wrp li dt .en:before {
  left: 0;
}
#top-service .service-wrp li dt .en:after {
  right: 0;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
#top-service .service-wrp li dt .jp {
  display: block;
  color: #70613f;
  font-size: 2.2rem;
  letter-spacing: .08em;
  margin-top: 10px;
}
#top-service .service-wrp li dd .img-blc {
  width: 100%;
  height: 400px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 63px 0;
  margin-bottom: 20px;
  background: url(../img/top/service-img_frame.png) center no-repeat;
}
#top-service .service-wrp li dd p {
  line-height: 2.4;
}
#top-service .service-wrp li dd p span {
  display: block;
  font-size: 1.2rem;
  margin-top: 10px;
}
#top-service .more-btn {
  margin-top: 90px;
}

/*------------------------------
初めての方へ
-------------------------------*/
#top-for-beginner {
  padding: 97px 0 100px 0;
  background: url(../img/top/for-brginner.png) right 18.59375% top/8.802% no-repeat, url(../img/top/for-beginner-bg.png) bottom -5px center no-repeat, #000;
  border-bottom: 1px solid #777267;
}
#top-for-beginner h3 {
  width: 392px;
  margin: 0 auto 40px auto;
  position: relative;
  letter-spacing: .1em;
  font-size: 3.7rem;
  padding: 25px 3px 5px 3px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: url(../img/top/for-beginner-ttl_top_deco.png) top center no-repeat;
}
#top-for-beginner h3:before, #top-for-beginner h3:after {
  position: absolute;
  content: '';
  width: 100%;
  height: 42px;
  left: 0;
  right: 0;
  z-index: 1;
  background: url(../img/top/for-beginner-ttl_frame.png) center/100% no-repeat;
}
#top-for-beginner h3:before {
  top: 22px;
}
#top-for-beginner h3:after {
  bottom: 0;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
#top-for-beginner h3 span {
  display: block;
  padding: 16.5px 0;
  background: rgba(16, 16, 16, 0.75);
  position: relative;
}
#top-for-beginner h3 span:before, #top-for-beginner h3 span:after {
  width: 260px;
  margin: 0 auto;
  position: absolute;
  content: '';
  left: 0;
  right: 0;
  border-bottom: 4px double #70613f;
}
#top-for-beginner h3 span:before {
  top: 0;
}
#top-for-beginner h3 span:after {
  bottom: 0;
}
#top-for-beginner p {
  margin-bottom: 40px;
  line-height: 2.4;
}
#top-for-beginner p a {
  font-size: 2rem;
  padding-bottom: 10px;
  color: #7c6637;
  border-bottom: 1px solid #7c6637;
}
#top-for-beginner .more-btn {
  margin-top: 45px;
}

/*------------------------------
ギャラリー
-------------------------------*/
#top-gallery {
  padding: 54px 0 95px 0;
  border-bottom: 1px solid #777267;
  background: url(../img/top/tattoo-gallery-right_img.png) right bottom -3vw/25.3125% no-repeat, url(../img/top/tattoo-gallery-left_top_deco.png) left 2.70833% top/32.2916% no-repeat, url(../img/top/tattoo-gallery-right_top_deco.png) right 2.70833% top/32.2916% no-repeat;
}
#top-gallery .inbox {
  width: 96.3541%;
  max-width: 1850px;
  min-width: 1180px;
}
#top-gallery h3 {
  padding-top: 265px;
  position: relative;
  margin-bottom: 57px;
  background: url(../img/top/tattoo-gallery-ttl_bdr.png) bottom 20px center no-repeat;
}
#top-gallery h3 .en {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
}
#top-gallery h3 .jp {
  width: 190px;
  margin: 0 auto;
  display: block;
  background: #000;
  border: 1px solid #777267;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 2.8rem;
  padding: 2.5px 0;
}
#top-gallery .gallery-wrp li {
  width: 18.6486%;
  height: 14.062vw;
  max-height: 270px;
  min-height: 170px;
  background: url(../img/top/gallery-frame.png) center/100% no-repeat;
  margin: 0 1.6216% 30px 0;
  position: relative;
  -webkit-box-shadow: 0 5px 5px #000;
          box-shadow: 0 5px 5px #000;
}
#top-gallery .gallery-wrp li:nth-child(5n+1):nth-last-child(-n+5), #top-gallery .gallery-wrp li:nth-child(5n+1):nth-last-child(-n+5) ~ li {
  margin-bottom: 0;
}
#top-gallery .gallery-wrp li:nth-child(5n), #top-gallery .gallery-wrp li:last-child {
  margin-right: 0;
}
#top-gallery .gallery-wrp li .com-img {
  width: 78.8405%;
  height: 10.5725vw;
  min-height: 127px;
  max-height: 203px;
  margin: auto;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -3%;
  top: 0;
  border: 1px solid #878276;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
#top-gallery .gallery-btn_wrp {
  margin-top: 55px;
}
#top-gallery .gallery-btn_wrp li {
  width: 240px;
  margin-right: 50px;
}
#top-gallery .gallery-btn_wrp li:last-child {
  margin-right: 0;
}
#top-gallery .gallery-btn_wrp li .more-btn {
  width: 100%;
}

/*------------------------------
よくあるご質問 / 店舗概要
-------------------------------*/
#faq-info {
  padding: 83px 0 125px 0;
  background: url(../img/top/faq-info-right_deco.png) right bottom 40px/32.65625% no-repeat, url(../img/top/faq-info-left_deco.png) left bottom 40px/32.65625% no-repeat, #000;
}
#faq-info .faq-info_wrp li {
  width: 520px;
  position: relative;
}
#faq-info .faq-info_wrp li h3 {
  padding-bottom: 86px;
  background: url(../img/top/faq-info-ttl_deco.png) bottom center no-repeat;
}
#faq-info .faq-info_wrp li a {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -25px;
  width: 320px;
  margin: 0 auto;
  background: url(../img/common/more-btn_gold_icon.png) right 20px center no-repeat, #000;
  border: 1px solid #70613f;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 2.8rem;
  letter-spacing: .12em;
  padding: 4px 0;
}

/*------------------------------
共通お問い合わせ
-------------------------------*/
#com-contact {
  position: relative;
}
#com-contact .inbox {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
#com-contact .contact-info {
  width: 680px;
  margin: 0 auto 45px auto;
}
#com-contact .contact-info .work-time {
  width: 342px;
}
#com-contact .contact-info .work-time li {
  margin-bottom: 18px;
}
#com-contact .contact-info .work-time li:last-child {
  margin-bottom: 0;
}
#com-contact .contact-info .work-time dt {
  width: 145px;
  position: relative;
  text-align: center;
  font-size: 1.8rem;
}
#com-contact .contact-info .work-time dt:before, #com-contact .contact-info .work-time dt:after {
  width: 26px;
  height: 36px;
  background: url(../img/top/contact-dt_frame.png) center/100% no-repeat;
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  margin: auto 0;
}
#com-contact .contact-info .work-time dt:before {
  left: 0;
}
#com-contact .contact-info .work-time dt:after {
  right: 0;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
#com-contact .contact-info .work-time dd {
  width: 175px;
  text-align: left;
  font-size: 1.8rem;
}
#com-contact .contact-info .num-wrp {
  width: 305px;
  border-left: 1px solid #7c6637;
  padding-left: 50px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
}
#com-contact .contact-info .num-wrp li {
  font-size: 3rem;
  margin-bottom: 10px;
}
#com-contact .contact-info .num-wrp li:first-child a {
  padding-left: 35px;
  background: url(../img/top/contact-sp_icon.png) left center no-repeat;
}
#com-contact .contact-info .num-wrp li:last-child {
  margin-bottom: 0;
}
#com-contact .contact-info .num-wrp li:last-child a {
  padding-left: 35px;
  background: url(../img/top/contact-tel_icon.png) left center no-repeat;
}
#com-contact .web-reserve {
  width: 680px;
  margin: 0 auto 27px auto;
  border: 1px solid #7c6637;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 5px;
  background: #000;
}
#com-contact .web-reserve .web-reserve_inner {
  border: 1px solid #7c6637;
  height: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 30px 0 18px;
  background: url(../img/top/contact-reserve_bg.png) center/cover no-repeat;
}
#com-contact .web-reserve .web-reserve_inner h4 {
  width: 172px;
  padding: 40px 0;
  font-size: 2.9rem;
  letter-spacing: .12em;
  line-height: 1.3;
  background: url(../img/top/contact-reserve_24bg.png) center no-repeat;
}
#com-contact .web-reserve .web-reserve_inner h4 span {
  font-size: 5rem;
  font-weight: 700;
  color: #7c6637;
}
#com-contact .web-reserve .web-reserve_inner .web-reserve_inner__btn {
  width: 414px;
  padding-bottom: 22px;
}
#com-contact .web-reserve .web-reserve_inner .web-reserve_inner__btn p {
  font-size: 3.5rem;
  font-weight: 500;
  letter-spacing: .1em;
}
#com-contact .web-reserve .web-reserve_inner .web-reserve_inner__btn .more-btn {
  width: 100%;
}
#com-contact .reserve-24times {
  width: 450px;
  margin: 0 auto;
  background: #000;
}
#com-contact .reserve-24times span {
  padding: 20px 0;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: .16em;
  border: 1px solid #7c6637;
  background: url(../img/common/more-btn_gold_icon.png) right 26px center no-repeat;
}
/* #com-contact .reserve-24times span:first-line {
  font-size: 2.2rem;
  letter-spacing: .12em;
} */
#com-contact .reserve-24times span em {
  color: #7c6637;
}

.top-contact {
  padding: 91px 0 0 0;
  background: url(../img/top/contact-bg.png) center/cover no-repeat;
}
.top-contact:before {
  width: 26.302%;
  height: 34.739vw;
  max-height: 667px;
  max-width: 505px;
  position: absolute;
  content: '';
  background: url(../img/top/contact-left_wing.png) center/100% no-repeat;
  left: 0;
  top: 143px;
  z-index: 1;
}
.top-contact:after {
  width: 20.46875%;
  height: 39.843vw;
  max-width: 393px;
  max-height: 765px;
  position: absolute;
  content: '';
  background: url(../img/top/contact-right_wing.png) center/100% no-repeat;
  right: calc(50% - 750px);
  bottom: 64px;
}
.top-contact .inbox {
  height: 928px;
  background: url(../img/top/contact-frame_bg.png) top 156px center no-repeat, url(../img/top/top-contact_frame.png) center bottom -1px no-repeat;
}
.top-contact h3 {
  padding: 120px 0 56px 0;
  background: url(../img/top/contact-ttl_deco.png) bottom center no-repeat;
  position: relative;
  margin-bottom: 48px;
}
.top-contact h3 .en {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
}
.top-contact h3 .jp {
  display: block;
  letter-spacing: .12em;
  font-size: 2.8rem;
}

/*==========================================
footer
===========================================*/
#footer {
  border-top: 1px solid #777267;
  background: url(../img/common/ft-bg.png) center/cover no-repeat;
  position: relative;
}
#footer:before {
  width: 100%;
  height: 1px;
  position: absolute;
  content: '';
  background: #777267;
  top: 5px;
  left: 0;
  right: 0;
}
#footer .side-fixed {
  width: 7.2916%;
  position: fixed;
  right: 0;
  bottom: 150px;
  z-index: 1001;
}
#footer .side-fixed li {
  margin-bottom: 18px;
}
#footer .side-fixed li:last-child {
  margin-bottom: 0;
}
#footer .inbox {
  padding: 105px 0 93px 0;
}
#footer .ft-logo {
  margin-bottom: 45px;
}
#footer .ft-wrp_left {
  width: 455px;
  text-align: left;
}
#footer .ft-wrp_left p {
  margin-bottom: 25px;
  letter-spacing: .1em;
}
#footer .ft-wrp_left p span {
  color: #7c6637;
}
#footer .ft-wrp_left .ft-addr span {
  display: block;
}
#footer .ft-wrp_left .sp-num,
#footer .ft-wrp_left .tel-num {
  font-size: 1.8rem;
  padding-left: 30px;
}
#footer .ft-wrp_left .sp-num {
  background: url(../img/common/hd-sp_icon.png) left 3px center no-repeat;
}
#footer .ft-wrp_left .tel-num {
  background: url(../img/common/hd-tel_icon.png) left center no-repeat;
}
#footer .ft-nav {
  width: 540px;
  padding: 30px 40px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: rgba(0, 0, 0, 0.6);
  text-align: left;
}
#footer .ft-nav ul {
  width: 250px;
}
#footer .ft-nav li {
  margin-bottom: 7px;
  font-weight: 500;
}
#footer .ft-nav li:last-child {
  margin-bottom: 0;
}
#footer .ft-nav li a {
  color: #7c6637;
  padding-left: 22px;
  background: url(../img/common/more-btn_gold_icon.png) left center no-repeat;
}
#footer .ft-nav li a:hover span {
  border-bottom: 1px solid #7c6637;
}

#copyright {
  font-size: 12px;
  word-break: normal;
  background: #7c6637;
  padding: 5px 0;
}

/*==========================================
ページトップ
===========================================*/
.pagetop {
  width: 6.0416%;
  position: fixed;
  bottom: 40px;
  right: 10px;
  z-index: 999;
}

/*==========================================
サブビジュアル
===========================================*/
.lower-sv {
  position: relative;
  height: 500px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.lower-sv h2 span {
  display: block;
}
.lower-sv h2 .jp {
  font-family: "Noto Serif JP", "游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", serif;
  font-size: 3.5rem;
  letter-spacing: .1em;
  color: #fff;
  margin-top: 15px;
}

#thought-sv {
  background: url(../img/sv/thought-sv.png) center/cover no-repeat;
}

#about-sv {
  background: url(../img/sv/about-sv.png) center/cover no-repeat;
}

#qa-sv {
  background: url(../img/sv/qa-sv.png) center/cover no-repeat;
}

#company-sv {
  background: url(../img/sv/company-sv.png) center/cover no-repeat;
}

#news-sv {
  background: url(../img/sv/news-sv.png) center/cover no-repeat;
}

#contact-sv {
  background: url(../img/sv/contact-sv.png) center/cover no-repeat;
}

#complete-sv {
  background: url(../img/sv/complete-sv.png) center/cover no-repeat;
}

#privacy-sv {
  background: url(../img/sv/privacy-sv.png) center/cover no-repeat;
}

#site-sv {
  background: url(../img/sv/site-sv.png) center/cover no-repeat;
}

#e404-sv {
  background: url(../img/sv/e404-sv.png) center/cover no-repeat;
}

/*==========================================
共通タイトル
===========================================*/
.ttl01 {
  font-family: "Noto Serif JP", "游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", serif;
  position: relative;
  font-weight: 500;
  margin-bottom: 40px;
  z-index: 1;
}
.ttl01 .jp {
  display: block;
  font-size: 4rem;
  letter-spacing: .12em;
  line-height: 1.5;
}
.ttl01 .en {
  position: absolute;
  left: 0;
  right: 0;
  top: -58px;
  line-height: 1;
  font-size: 10rem;
  background: #423f3c;
  /* fallback for old browsers */
  background: -webkit-gradient(linear, left bottom, left top, color-stop(15%, rgba(12, 12, 12, 0.01)), color-stop(20%, rgba(14, 14, 13, 0.7)), to(rgba(44, 42, 40, 0.9)));
  background: linear-gradient(to top, rgba(12, 12, 12, 0.01) 15%, rgba(14, 14, 13, 0.7) 20%, rgba(44, 42, 40, 0.9) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  z-index: -1;
}

.ttl02 {
  text-align: left;
  font-size: 2.4rem;
  color: #70613f;
  border-bottom: 1px solid #70613f;
  font-family: "Noto Serif JP", "游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", serif;
  letter-spacing: .08em;
  margin-bottom: 15px;
  padding-bottom: 7px;
}

.lower-contact {
  padding: 140px 0 0 0;
}
.lower-contact .inbox {
  height: 906px;
  background: url(../img/common/com_contact_bg.png) center bottom -1px no-repeat;
}
.lower-contact .inbox:before {
  position: absolute;
  content: '';
  background: url('../img/common/com-contact_left_wing.png?1691569332');
  width: 223px;
  height: 407px;
  background-size: 100%;
  top: 0;
  right: auto;
  bottom: 0;
  left: -100px;
  background-repeat: no-repeat;
  -webkit-transition: all .3s;
  transition: all .3s;
  margin: auto 0;
}
.lower-contact .inbox:after {
  position: absolute;
  content: '';
  background: url('../img/common/com-contact_right_wing.png?1691569332');
  width: 219px;
  height: 647px;
  background-size: 100%;
  top: auto;
  right: -134px;
  bottom: 80px;
  left: auto;
  background-repeat: no-repeat;
  -webkit-transition: all .3s;
  transition: all .3s;
}
.lower-contact .lead-txt {
  width: 530px;
  margin: 0 auto;
  border-top: 1px solid #eaeaea;
  border-bottom: 1px solid #eaeaea;
  padding: 15px 0;
  line-height: 2.4;
  margin-bottom: 38px;
  letter-spacing: .1em;
}

/*==========================================
刺青やの想い
===========================================*/
/*---------------------------------
あなたの想いそして覚悟を刺青・タトゥーに込めて
---------------------------------*/
#concept {
  padding-bottom: 87px;
  background: url(../img/thought/concept-bg.png) bottom center/cover no-repeat;
}
#concept .ttl01 {
  margin-bottom: 25px;
}
#concept p {
  margin-bottom: 40px;
  line-height: 2.4;
}
#concept p:last-child {
  margin-bottom: 0;
}

/*---------------------------------
主な業務内容
---------------------------------*/
#service {
  padding: 141px 0 95px 0;
  background: url(../img/thought/service-left_wing.png) left center/16.25% no-repeat, url(../img/thought/service-right_wing.png) right top 187px/18.9583% no-repeat, url(../img/thought/service-bg.png) center/cover no-repeat;
}
#service .service-wrp li {
  width: 500px;
  margin-bottom: 40px;
  padding-top: 131px;
  background: url(../img/thought/service-box_deco.png) top center no-repeat;
}
#service .service-wrp li:nth-child(2n+1):nth-last-child(-n+2), #service .service-wrp li:nth-child(2n+1):nth-last-child(-n+2) ~ li {
  margin-bottom: 0;
}
#service .service-wrp li .img-blc {
  position: relative;
  margin-bottom: 26px;
}
#service .service-wrp li .img-blc:before {
  position: absolute;
  content: '';
  background: url('../img/thought/service-box_frame.png?1691569329');
  width: 109px;
  height: 15px;
  background-size: 100%;
  top: -15px;
  right: 0;
  bottom: auto;
  left: 0;
  background-repeat: no-repeat;
  -webkit-transition: all .3s;
  transition: all .3s;
  margin: 0 auto;
}
#service .service-wrp li dt {
  letter-spacing: .08em;
  color: #70613f;
  line-height: 1.5;
  padding-top: 45px;
  margin-bottom: 20px;
  background: url(../img/thought/service-subttl_deco.png) top center no-repeat;
}
#service .service-wrp li dt span {
  display: block;
}
#service .service-wrp li dt .en {
  font-size: 5rem;
  font-weight: 500;
}
#service .service-wrp li dt .jp {
  font-size: 2rem;
}
#service .service-wrp li dd {
  line-height: 2.4;
}

/*---------------------------------
代表紹介
---------------------------------*/
#artist {
  padding: 141px 0 95px 0;
  background: url(../img/thought/artist-bg.png) right top/60.36458% no-repeat, #000;
}
#artist .ttl01 {
  margin-bottom: 35px;
}
#artist .owner-wrp {
  background: url(../img/thought/message-deco.png) right 41px bottom -23px no-repeat;
}
#artist .owner-wrp .txt-blc {
  width: 500px;
}
#artist .owner-wrp .txt-blc p {
  line-height: 2.4;
  margin-bottom: 48px;
}
#artist .owner-wrp .txt-blc p:last-child {
  margin-bottom: 0;
  font-size: 1.8rem;
}
#artist .staff {
  margin-top: 87px;
}
#artist .staff h4 {
  font-size: 3rem;
  letter-spacing: .12em;
  padding-top: 43px;
  margin-bottom: 40px;
  background: url(../img/thought/staff-ttl_deco.png) top center no-repeat;
}
#artist .staff .staff-wrp > li {
  margin-bottom: 45px;
}
#artist .staff .staff-wrp > li:last-child {
  margin-bottom: 0;
}
#artist .staff .staff-wrp > li .txt-blc {
  width: 540px;
}
#artist .staff .staff-wrp > li .img-blc {
  width: 460px;
  padding: 3px;
  border: 4px double #70613f;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
#artist .staff .staff-wrp > li .img-blc .com-img {
  width: 100%;
  height: 660px;
}
#artist .staff .staff-wrp > li:nth-child(odd) .img-blc {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
#artist .staff .staff-wrp > li:nth-child(odd) .txt-blc {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

/*==========================================
施術について
===========================================*/
/*---------------------------------
施術へのこだわり
---------------------------------*/
#feature {
  padding: 138px 0 90px 0;
}
#feature .ttl01 {
  margin-bottom: 48px;
}
#feature .feature-wrp li {
  position: relative;
  margin-bottom: 36px;
  padding-bottom: 72px;
}
#feature .feature-wrp li:last-child {
  margin-bottom: 0;
}
#feature .feature-wrp li .feature-wrp_inner {
  width: 595px;
}
#feature .feature-wrp li:nth-child(even) .feature-wrp_inner {
  margin-left: auto;
}
#feature .feature-wrp li h4 {
  font-size: 3rem;
  position: relative;
  letter-spacing: .12em;
  margin-bottom: 28px;
}
#feature .feature-wrp li h4:before, #feature .feature-wrp li h4:after {
  width: 54px;
  height: 73px;
  position: absolute;
  content: '';
  background: url(../img/about/feature-subttl_deco.png) center/100% no-repeat;
  top: 0;
  bottom: 0;
  margin: auto 0;
}
#feature .feature-wrp li h4:before {
  left: 0;
}
#feature .feature-wrp li h4:after {
  right: 0;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
#feature .feature-wrp li h4 span {
  color: #70613f;
  font-size: 3rem;
  margin-right: 10px;
}
#feature .feature-wrp li p {
  line-height: 2.4;
  letter-spacing: .1em;
}
#feature .feature-wrp .feature-counseling {
  background: url(../img/about/feature-wrp01_deco.png) right bottom/57% no-repeat;
}
#feature .feature-wrp .feature-original {
  background: url(../img/about/feature-wrp02_deco.png) left bottom/41% no-repeat;
}
#feature .feature-wrp .feature-preparation {
  background: url(../img/about/feature-wrp03_deco.png) right bottom/46% no-repeat;
}

/*---------------------------------
料金案内
---------------------------------*/
#price {
  padding: 142px 0 90px 0;
  background: url(../img/about/price-img.png) left center no-repeat, #000;
}
#price .price-wrp {
  width: 540px;
  margin-left: auto;
  font-size: 1.6rem;
}
#price .price-wrp .price-wrp_graph {
  margin-bottom: 25px;
}
#price .price-wrp .price-wrp_graph li {
  border-bottom: 1px solid #fff;
  padding: 13px 20px;
}
#price .price-wrp .price-wrp_graph li:first-child {
  border-top: 1px solid #fff;
}
#price .price-wrp .attention {
  text-align: left;
  font-size: 1.4rem;
  position: relative;
  padding-left: 20px;
  margin-bottom: 25px;
}
#price .price-wrp .attention span {
  color: #70613f;
  position: absolute;
  left: 0;
  top: 0;
}

/*---------------------------------
諸注意・衛生管理
---------------------------------*/
#precaution-sanitation {
  padding: 142px 0 90px 0;
}
#precaution-sanitation .inbox {
  width: 1200px;
}
#precaution-sanitation .ttl01 {
  margin-bottom: 48px;
}
#precaution-sanitation .ttl01 .en {
  width: 100%;
}
#precaution-sanitation .precaution-sanitation-wrp {
  width: 1080px;
  margin: 0 auto;
  border-left: 1px solid #70613f;
  border-right: 1px solid #70613f;
  border-bottom: 1px solid #70613f;
  padding: 25px 0 30px 0;
  position: relative;
  background: url(../img/about/caution-deco.png) center no-repeat;
}
#precaution-sanitation .precaution-sanitation-wrp:before, #precaution-sanitation .precaution-sanitation-wrp:after {
  position: absolute;
  content: '';
  width: 440px;
  height: 1px;
  background: #70613f;
  top: 0;
}
#precaution-sanitation .precaution-sanitation-wrp:before {
  left: 0;
}
#precaution-sanitation .precaution-sanitation-wrp:after {
  right: 0;
}
#precaution-sanitation .precaution-sanitation-wrp h4 {
  font-size: 3rem;
  font-weight: 500;
  margin-bottom: 25px;
  letter-spacing: .12em;
  position: relative;
}
#precaution-sanitation .precaution-sanitation-wrp h4:before {
  position: absolute;
  content: '';
  background: url('../img/thought/staff-ttl_deco.png?1691569332');
  width: 90px;
  height: 27px;
  background-size: 100%;
  top: -40px;
  right: 0;
  bottom: auto;
  left: 0;
  background-repeat: no-repeat;
  -webkit-transition: all .3s;
  transition: all .3s;
  margin: 0 auto;
}
#precaution-sanitation .precaution-sanitation-wrp p {
  line-height: 2.4;
  margin-bottom: 30px;
}

/*---------------------------------
ご予約から施術までの流れ
---------------------------------*/
#flow {
  background: url(../img/about/flow-right_deco.png) right top/60.78125% no-repeat, url(../img/about/flow-left_deco.png) left bottom/45.1041% no-repeat, #000;
}
#flow .ttl01 {
  margin-bottom: 35px;
}
#flow .flow-wrp .flow-wrp_item {
  padding-bottom: 45px;
  border-bottom: 1px solid #70613f;
  position: relative;
  margin-bottom: 45px;
}
#flow .flow-wrp .flow-wrp_item:after {
  position: absolute;
  content: '';
  background: url('../img/about/flow-li_deco.png?1691569328');
  width: 29px;
  height: 20px;
  background-size: 100%;
  top: auto;
  right: 0;
  bottom: -20px;
  left: 0;
  background-repeat: no-repeat;
  -webkit-transition: all .3s;
  transition: all .3s;
  margin: 0 auto;
}
#flow .flow-wrp .flow-wrp_item:last-child {
  margin-bottom: 0;
}
#flow .flow-wrp .flow-wrp_item:last-child:after {
  background: none;
}
#flow .flow-wrp .flow-wrp_item .flow-wrp_item__title {
  color: #70613f;
  font-size: 3rem;
  padding-top: 80px;
  margin-bottom: 25px;
  letter-spacing: .12em;
  background: url(../img/thought/service-subttl_deco.png) top center no-repeat;
  position: relative;
}
#flow .flow-wrp .flow-wrp_item .flow-wrp_item__title:before {
  position: absolute;
  left: 0;
  right: 0;
  top: 21px;
  font-size: 4rem;
  color: #70613f;
}
#flow .flow-wrp .flow-wrp_item:nth-child(1) .flow-wrp_item__title:before {
  content: "01";
}
#flow .flow-wrp .flow-wrp_item:nth-child(2) .flow-wrp_item__title:before {
  content: "02";
}
#flow .flow-wrp .flow-wrp_item:nth-child(3) .flow-wrp_item__title:before {
  content: "03";
}
#flow .flow-wrp .flow-wrp_item:nth-child(4) .flow-wrp_item__title:before {
  content: "04";
}
#flow .flow-wrp .flow-wrp_item .flow-wrp_item__body p {
  margin-bottom: 25px;
  line-height: 2.5;
}
#flow .flow-wrp .flow-wrp_item .flow-wrp_item__body .attention {
  font-size: 1.4rem;
}
#flow .flow-wrp .flow-wrp_item .flow-wrp_item__body .attention span {
  color: #70613f;
  margin-right: 5px;
}
#flow .flow-wrp .flow-wrp_item:nth-child(3) .check-wrp {
  margin-bottom: 52px;
}
#flow .flow-wrp .flow-wrp_item:nth-child(3) .check-wrp li {
  font-size: 2.5rem;
  color: #70613f;
  border-bottom: 1px solid #70613f;
  margin-right: 27px;
}
#flow .flow-wrp .flow-wrp_item:nth-child(3) .check-wrp li:last-child {
  margin-right: 0;
}
#flow .flow-wrp .flow-wrp_item:nth-child(3) .payment {
  position: relative;
  background: rgba(16, 16, 16, 0.5);
  padding: 32px 30px 33px 30px;
}
#flow .flow-wrp .flow-wrp_item:nth-child(3) .payment .payment-title {
  position: absolute;
  left: 0;
  right: 0;
  top: -22px;
  font-size: 2.5rem;
}
#flow .flow-wrp .flow-wrp_item:nth-child(3) .payment .payment-title span {
  position: relative;
}
#flow .flow-wrp .flow-wrp_item:nth-child(3) .payment .payment-title span:before, #flow .flow-wrp .flow-wrp_item:nth-child(3) .payment .payment-title span:after {
  position: absolute;
  content: '';
  width: 50px;
  height: 1px;
  background: #fff;
  top: 0;
  bottom: 0;
  margin: auto 0;
}
#flow .flow-wrp .flow-wrp_item:nth-child(3) .payment .payment-title span:before {
  left: -75px;
}
#flow .flow-wrp .flow-wrp_item:nth-child(3) .payment .payment-title span:after {
  right: -75px;
}
#flow .flow-wrp .flow-wrp_item:nth-child(3) .payment .payment-body_lists li dt {
  font-size: 2rem;
  font-weight: 500;
  color: #70613f;
  padding-bottom: 15px;
  margin-bottom: 5px;
  position: relative;
}
#flow .flow-wrp .flow-wrp_item:nth-child(3) .payment .payment-body_lists li dt:before {
  width: 1px;
  height: 10px;
  position: absolute;
  content: '';
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0 auto;
  background: #70613f;
}
#flow .flow-wrp .flow-wrp_item:nth-child(3) .payment .payment-body_lists li dd {
  font-size: 1.3rem;
  line-height: 2.4;
}
#flow .flow-wrp .flow-wrp_item:nth-child(3) .attention {
  font-size: 2rem;
  color: #7c6637;
  margin-top: 10px;
}
#flow .flow-wrp .flow-wrp_item:nth-child(4) .drink-service {
  margin-top: 48px;
  position: relative;
  background: rgba(16, 16, 16, 0.5);
  padding: 32px 30px 33px 30px;
}
#flow .flow-wrp .flow-wrp_item:nth-child(4) .drink-service dt {
  position: absolute;
  left: 0;
  right: 0;
  top: -22px;
  font-size: 2.5rem;
}
#flow .flow-wrp .flow-wrp_item:nth-child(4) .drink-service dt span {
  position: relative;
}
#flow .flow-wrp .flow-wrp_item:nth-child(4) .drink-service dt span:before, #flow .flow-wrp .flow-wrp_item:nth-child(4) .drink-service dt span:after {
  position: absolute;
  content: '';
  width: 50px;
  height: 1px;
  background: #fff;
  top: 0;
  bottom: 0;
  margin: auto 0;
}
#flow .flow-wrp .flow-wrp_item:nth-child(4) .drink-service dt span:before {
  left: -75px;
}
#flow .flow-wrp .flow-wrp_item:nth-child(4) .drink-service dt span:after {
  right: -75px;
}
#flow .flow-wrp .flow-wrp_item:nth-child(4) .drink-service dd {
  line-height: 2.5;
}

/*==========================================
よくあるご質問
===========================================*/
#faq {
  padding: 120px 0 77px 0;
}
#faq .faq-wrp > li {
  text-align: left;
  margin-bottom: 35px;
}
#faq .faq-wrp > li:last-child {
  margin-bottom: 0;
}
#faq .faq-wrp > li dt {
  font-size: 2.4rem;
  padding: 9px 0 9px 87px;
  background: url(../img/qa/question_icon.png) left center no-repeat;
  border-top: 1px solid #70613f;
  border-bottom: 1px solid #70613f;
  margin-bottom: 22px;
}
#faq .faq-wrp > li dd {
  padding: 5px 0 5px 87px;
  background: url(../img/qa/answer_icon.png) left center no-repeat;
}

/*==========================================
店舗概要
===========================================*/
/*----------------------------
開業したきっかけ
-----------------------------*/
#chance {
  padding: 135px 0 90px 0;
  background: url(../img/company/chance-bg.png) right top/50% no-repeat;
}
#chance p {
  text-align: left;
  line-height: 2.5;
  letter-spacing: .1em;
  margin-bottom: 45px;
}
#chance p:last-child {
  margin-bottom: 0;
}

/*----------------------------
店舗情報
-----------------------------*/
#company {
  padding-top: 165px;
  background: url(../img/company/company-left_deco.png) left top 190px/27.6041% no-repeat, url(../img/company/company-right_deco.png) right top 66px/27.6041% no-repeat, #000;
}
#company .com-dl {
  margin-bottom: 92px;
}
#company h4 {
  font-size: 3rem;
  font-weight: 500;
  padding-top: 40px;
  letter-spacing: .12em;
  margin-bottom: 40px;
  background: url(../img/thought/staff-ttl_deco.png) top center no-repeat;
}
#company .access-wrp {
  margin-bottom: 100px;
}
#company .access-wrp li {
  border-bottom: 1px solid #70613f;
  position: relative;
  padding-bottom: 47px;
  margin-bottom: 47px;
}
#company .access-wrp li:before {
  position: absolute;
  content: '';
  background: url('../img/about/flow-li_deco.png?1691569328');
  width: 29px;
  height: 20px;
  background-size: 100%;
  top: auto;
  right: 0;
  bottom: -20px;
  left: 0;
  background-repeat: no-repeat;
  -webkit-transition: all .3s;
  transition: all .3s;
  margin: 0 auto;
}
#company .access-wrp li:last-child {
  margin-bottom: 0;
}
#company .access-wrp li:last-child:before {
  background: none;
}
#company .access-wrp li .txt-blc {
  width: 595px;
  padding-left: 95px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 1.7rem;
  background: url(../img/company/access-subttl_deco.png) left center no-repeat;
  position: relative;
}
#company .access-wrp li .txt-blc:before {
  position: absolute;
  left: 33px;
  bottom: 0;
  top: 0;
  margin: auto 0;
  font-size: 3.5rem;
  font-weight: 500;
  color: #70613f;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#company .access-wrp li .txt-blc p {
  line-height: 2.4;
}
#company .access-wrp li:nth-child(1) .txt-blc:before {
  content: "01";
}
#company .access-wrp li:nth-child(2) .txt-blc:before {
  content: "02";
}
#company .access-wrp li:nth-child(3) .txt-blc:before {
  content: "03";
}
#company .access-wrp li:nth-child(4) .txt-blc:before {
  content: "04";
}
#company .access-wrp li:nth-child(5) .txt-blc:before {
  content: "05";
}

/*==========================================
一覧ぺージ用カテゴリ(セレクトボックス)
===========================================*/
.category-select {
  overflow: hidden;
  width: 300px;
  margin-left: auto;
  text-align: center;
  margin-bottom: 20px;
  position: relative;
  border-radius: 2px;
  border: 2px solid #2e2e2e;
  background: #fff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.category-select:before {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  /* Safari用 */
  transform: translateY(-50%);
  z-index: 10;
  right: .8em;
  width: 0;
  height: 0;
  padding: 0;
  content: '';
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #2e2e2e;
  pointer-events: none;
}
.category-select select {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: 1em;
  cursor: pointer;
  text-indent: .01px;
  text-overflow: ellipsis;
  border: none;
  outline: none;
  background: transparent;
  background-image: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 10px 38px 10px 8px;
  color: #2e2e2e;
  font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.category-select select::-ms-expand {
  display: none;
}

/*==========================================
お知らせ
===========================================*/
.post-wrap .column-lists > li {
  margin-bottom: 25px;
  border-bottom: 1px solid #ccc;
}
.post-wrap .column-lists > li a {
  display: block;
  padding: 10px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.post-wrap .column-lists > li a:hover .more-btn {
  background: #fff;
  color: #7c6637;
}
.post-wrap .column-lists > li:last-child {
  margin-bottom: 0;
  border-bottom: none;
}
.post-wrap .column-lists .post-ttl {
  text-align: left;
  margin-bottom: 15px;
  font-weight: 500;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.post-wrap .column-lists .post-ttl time {
  color: #7c6637;
  text-align: left;
  padding: 4px 0;
  width: 65px;
}
.post-wrap .column-lists .post-ttl time,
.post-wrap .column-lists .post-ttl .category-label {
  font-weight: normal;
  font-size: 10px;
}
.post-wrap .column-lists .post-ttl .category-label {
  width: 970px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.post-wrap .column-lists .post-ttl .category-label li {
  border: 1px solid #7c6637;
  color: #fff;
  background: #7c6637;
  padding: 2px 10px;
  margin-right: 5px;
  margin-bottom: 5px;
}
.post-wrap .column-lists .post-ttl .category-label li:last-child {
  margin-right: 0;
}
.post-wrap .column-lists .post-ttl .column-ttl {
  width: 100%;
  margin-top: 10px;
  font-size: 2.5rem;
  font-weight: 500;
}
.post-wrap .column-lists .post-body {
  text-align: left;
  margin-bottom: 20px;
}
.post-wrap .column-lists .more-btn {
  width: 125px;
  font-size: 14px;
  margin: inherit;
  margin-left: auto;
  font-weight: bold;
  background: #7c6637;
  border: 1px solid #7c6637;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 5px 0;
  display: block;
  color: #fff;
  -webkit-transition: all .3s;
  transition: all .3s;
}
.post-wrap .post-content {
  padding: 0 20px 5px 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
}
.post-wrap .post-content img {
  max-width: 100%;
}

/*----------------------------------
詳細ページのカテゴリー表示(タイトル下部)
----------------------------------*/
.single-meta {
  margin-bottom: 20px;
}
.single-meta time {
  font-size: 11px;
  text-align: left;
  width: 85px;
  padding: 3px 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.single-meta .category-label {
  width: 950px;
  font-size: 10px;
  margin-left: 10px;
}
.single-meta .category-label li {
  margin-right: 10px;
  margin-bottom: 10px;
}
.single-meta .category-label li:last-child {
  margin-right: 0;
}
.single-meta .category-label li a {
  border: 1px solid #7c6637;
  color: #7c6637;
  padding: 3px 10px;
  border-radius: 25px;
  display: block;
}
.single-meta .category-label li a:hover {
  opacity: 1;
  color: #fff;
  background: #7c6637;
}

/*----------------------------------
詳細ページのカテゴリー表示(テキストエリア下部)
----------------------------------*/
.single-category {
  max-width: 250px;
  min-width: 150px;
  margin-top: 10px;
  margin-left: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  font-size: 10px;
}
.single-category dt {
  width: 80px;
}
.single-category dt:after {
  content: ':';
  padding: 0 5px;
}
.single-category dd {
  max-width: 170px;
  line-height: 2;
  min-width: 60px;
}
.single-category ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.single-category ul li {
  margin-right: 5px;
}
.single-category ul li:last-child {
  margin-right: 0;
}
.single-category ul li a {
  display: block;
  padding-left: 8px;
  position: relative;
}
.single-category ul li a:before {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  /* Safari用 */
  transform: translateY(-50%);
  z-index: 10;
  left: 0;
  content: '#';
}
.single-category ul li a:hover {
  background: #ccc;
}

/*==========================================
お問い合わせ
===========================================*/
#contact {
  /* チェックボックス・ラジオボタン
  -------------------------------------------------- */
  /*==================================================
   日付選択フォーム
  ================================================== */
}
#contact .contact-form {
  margin-bottom: 20px;
}
#contact .contact-form dl dt {
  width: 320px !important;
  position: relative;
  vertical-align: top;
}
#contact .contact-form dl dt em {
  position: absolute;
  top: 0;
  right: 10px;
  color: #f00;
  background: #fff;
  font-weight: 500;
  padding: 3px;
  font-size: 1rem;
}
#contact .contact-form dl dd {
  width: 760px;
}
#contact .contact-form dl dd li {
  list-style: none;
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
}
#contact .contact-form dl dd li:last-child {
  margin-right: 0;
}
#contact .contact-form .txtarea {
  width: 100%;
  font-size: 1.6rem;
  border: 1px solid #ccc;
  background: #fff;
  padding: 15px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
}
#contact .contact-form select {
  padding: 5px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 1.6rem;
  font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  color: #eaeaea;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 0;
}
#contact .contact-form #pc01,
#contact .contact-form #pc02 {
  width: 150px;
}
#contact .contact-form #address {
  margin-top: 15px;
}
#contact .contact-form textarea {
  height: 260px;
  line-height: 1.8;
}
#contact .contact-form .error-text {
  color: #ff0000;
  margin-bottom: 5px;
}
#contact .contact-form .upload-item-wrap #file01 {
  margin-bottom: 10px;
}
#contact .contact-form .upload-item-wrap .thumb {
  width: 200px;
  margin-right: 25px;
}
#contact .contact-form .upload-item-wrap .thumb img {
  max-width: 100%;
}
#contact .contact-form .upload-item-wrap .ancion-btn-wrap {
  width: 130px;
}
#contact .contact-form .upload-item-wrap .ancion-btn-wrap .ancion-btn,
#contact .contact-form .upload-item-wrap .ancion-btn-wrap .upload-button {
  width: 100%;
  border-radius: 5px;
  color: #fff;
  font-size: 13px;
  text-align: center;
  padding: 5px;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  cursor: pointer;
  -webkit-transition: all .3s;
  transition: all .3s;
}
#contact .contact-form .upload-item-wrap .ancion-btn-wrap .ancion-btn:hover,
#contact .contact-form .upload-item-wrap .ancion-btn-wrap .upload-button:hover {
  filter: alpha(opacity=60);
  opacity: .6;
}
#contact .contact-form .upload-item-wrap .ancion-btn-wrap .upload-button {
  margin-bottom: 5px;
  background: #7c6637;
}
#contact .contact-form .upload-item-wrap .ancion-btn-wrap p {
  background: #423f3c;
}
#contact .contact-form .upload-item-wrap .ancion-btn-wrap .select-file,
#contact .contact-form .upload-item-wrap .ancion-btn-wrap input {
  display: none !important;
}
#contact .contact-form .upload-item-wrap .ancion-btn-wrap input#file-upload-button {
  background: #423f3c;
}
#contact .g-recaptcha div {
  margin: 0 auto;
  margin-bottom: 25px;
}
#contact input[type='button'][disabled],
#contact input[type='submit'][disabled] {
  opacity: .7;
  pointer-events: none;
}
#contact input[type='button'],
#contact input[type='submit'],
#contact .contact-submits-wrap button {
  font-weight: 500;
  letter-spacing: 2px;
  font-size: 1.6rem;
  color: #fff;
  background: #fff;
  padding: 15px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  -webkit-transition: all .3s;
  transition: all .3s;
  border: 1px solid #7c6637;
  color: #7c6637;
  border-radius: 0;
}
#contact input[type='button']:hover,
#contact input[type='submit']:hover,
#contact .contact-submits-wrap button:hover {
  background: #7c6637;
  cursor: pointer;
  color: #fff;
  filter: alpha(opacity=100);
  opacity: 1;
}
#contact .check-btn {
  width: 260px;
  margin: 0 auto;
  margin-top: 20px;
}
#contact .back-btn {
  width: 270px;
  margin: 0 auto;
  margin-right: 40px;
}
#contact .contact-submits-wrap {
  margin-top: 20px;
}
#contact .send-btn {
  width: 240px;
  margin: 0 auto;
}
#contact .privacy-agree {
  text-decoration: underline;
}
#contact input[type=radio],
#contact input[type=checkbox] {
  display: inline-block;
  margin-right: 6px;
}
#contact input[type=radio] + label,
#contact input[type=checkbox] + label {
  position: relative;
  display: inline-block;
  margin-right: 12px;
  line-height: 30px;
  cursor: pointer;
}
#contact input[type=radio],
#contact input[type=checkbox] {
  display: none;
  margin: 0;
}
#contact input[type=radio] + label,
#contact input[type=checkbox] + label {
  margin-bottom: 5px;
  padding: 0 0 0 24px;
}
#contact input[type=radio] + label::before,
#contact input[type=checkbox] + label::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  width: 18px;
  height: 18px;
  margin-top: -9px;
  background: #FFF;
}
#contact input[type=radio] + label::before {
  border: 2px solid #ccc;
  border-radius: 30px;
}
#contact input[type=checkbox] + label::before {
  border: 2px solid #ccc;
}
#contact input[type=radio]:checked + label::after,
#contact input[type=checkbox]:checked + label::after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
}
#contact input[type=radio]:checked + label::after {
  left: 5px;
  width: 8px;
  height: 8px;
  margin-top: -4px;
  background: #e74c3c;
  border-radius: 8px;
}
#contact input[type=checkbox]:checked + label::after {
  left: 3px;
  width: 16px;
  height: 8px;
  margin-top: -8px;
  border-left: 3px solid #e74c3c;
  border-bottom: 3px solid #e74c3c;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
#contact .date-list {
  padding-left: inherit;
}
#contact .date-list li {
  list-style: none;
  margin-bottom: 15px;
}
#contact .date-list li p {
  margin-bottom: 5px;
}

/*==========================================
プライバシーポリシー
===========================================*/
#privacy .privacy-box {
  margin-bottom: 50px;
  text-align: left;
}
#privacy .privacy-box:last-child {
  margin-bottom: 0;
}
#privacy .privacy-box p {
  margin-bottom: 25px;
}
#privacy .privacy-box p:last-child {
  margin-bottom: 0;
}
#privacy .privacy-box ul {
  margin-top: 25px;
}

/*==========================================
プライバシーポリシー(LPフレーム時)
===========================================*/
/*==========================================
404.php
===========================================*/
#err-cont .txt-blc a {
  text-decoration: underline;
}
.pc_none{
 display: none;
}

/* .amateur{
    font-size: 2rem!important;
    margin-bottom: 20px;
} */

.top_movie{
 padding: 20px 0;
}

/* fixed_btn */
.accordion-menu {
  position: relative;
}
.accordion-trigger {
  cursor: pointer;
}
.accordion-content {
  display: none;
  position: absolute;
  right: 100%;
  top: 0;
}
.accordion-content.active {
  display: block;
}
.side-gallery_btn_link p{
  width: 120px;
  background: #796739;
  padding: 5px;
  border-bottom: solid 1px #c3b796;
}
#footer .side-fixed .side-gallery_btn_link li{
  margin-bottom: 0px;
}
.owner_table{
  margin-bottom: 10px;
}
.owner_table tr{
  margin-bottom: 15px;
  display: block;
}
.owner_table tr th{
  width: 75px;
}