@charset "UTF-8";
/*
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

	desktop2025

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
*/
/*
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  リセットCSS

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
*/
html, body, div, object, iframe,
h1, h2, h3, h4, h5, h6,
p, blockquote, pre,
abbr, address, cite, code, del, dfn,
img, ins, kbd, q, samp, small, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video, pre,
input, textarea, button, fieldset, form, label, legend {
  font-family: Century Gothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: middle;
  line-height: 1.8;
  box-sizing: border-box;
}

html {
  font-size: 15px;
}

body {
  font-size: 100%;
  background-color: #FFF;
  color: #3E261F;
  -webkit-text-size-adjust: 100%;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

section, main, sub, header, footer,
#main, #sub, #header, #footer {
  overflow: hidden;
  *zoom: 1;
  box-sizing: border-box;
  clear: both;
}

h1, h2, h3, h4, h5, h6,
.h1-style, .h2-style, .h3-style {
  font-weight: normal;
  font-size: 100%;
  font-family: Century Gothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

ul, ol {
  margin-left: 0px;
  padding-left: 0px;
}
ul li, ol li {
  list-style: none;
  line-height: 1.8;
  position: relative;
}

blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none;
}

a {
  color: #9B59B6;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  background: transparent;
  text-decoration: underline;
}
a:hover {
  color: #9B59B6;
  text-decoration: underline;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

i, em {
  font-style: normal;
  font-weight: bold;
}

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

hr {
  display: block;
  height: 1px;
  border-top: #3E261F solid 1px;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
  font-family: Century Gothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  border: #999999 solid 1px;
}

textarea {
  font-family: Century Gothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  border: #999999 solid 1px;
  line-height: 1;
}

input, select, textarea {
  font-size: 15px;
}

button {
  cursor: pointer;
}

pre {
  white-space: pre-wrap;
  word-wrap: break-word;
  overflow: visible;
  max-width: 100%;
}

/*
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

レイアウト2025

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
*/
#content {
  clear: both;
  z-index: 0;
  min-height: 300px;
}

.grid, .grid-d {
  clear: both;
  overflow: hidden;
  *zoom: 1;
  margin: 0 auto;
  padding: 0;
  display: block;
}
.grid, .grid-d {
  width: 1050px;
}

.row {
  width: 100%;
  display: block;
  clear: both;
  overflow: hidden;
  *zoom: 1;
}

.col {
  float: left;
  text-align: left;
  display: block;
}

.col-0, .col-0-d {
  display: none;
}

.col-1, .col-1-d {
  width: 5.71429%;
  margin: 0 2.85714% 0 0;
  float: left;
  text-align: left;
  display: block;
}

.col-2, .col-2-d {
  width: 14.28571%;
  margin: 0 2.85714% 0 0;
  float: left;
  text-align: left;
  display: block;
}

.col-3, .col-3-d {
  width: 22.85714%;
  margin: 0 2.85714% 0 0;
  float: left;
  text-align: left;
  display: block;
}

.col-4, .col-4-d {
  width: 31.42857%;
  margin: 0 2.85714% 0 0;
  float: left;
  text-align: left;
  display: block;
}

.col-5, .col-5-d {
  width: 40%;
  margin: 0 2.85714% 0 0;
  float: left;
  text-align: left;
  display: block;
}

.col-6,
.col-br-2 .col-auto-br,
.col-br-2 .col-auto-br,
.col-6-d,
.col-br-2d-1p .col-auto-br,
.col-br-2d-1p .col-auto-br {
  width: 48.57143%;
  margin: 0 2.85714% 0 0;
  float: left;
  text-align: left;
  display: block;
}

.col-7, .col-7-d {
  width: 57.14286%;
  margin: 0 2.85714% 0 0;
  float: left;
  text-align: left;
  display: block;
}

.col-8, .col-8-d {
  width: 65.71429%;
  margin: 0 2.85714% 0 0;
  float: left;
  text-align: left;
  display: block;
}

.col-9, .col-9-d {
  width: 74.28571%;
  margin: 0 2.85714% 0 0;
  float: left;
  text-align: left;
  display: block;
}

.col-10, .col-10-d {
  width: 82.85714%;
  margin: 0 2.85714% 0 0;
  float: left;
  text-align: left;
  display: block;
}

.col-11, .col-11-d {
  width: 91.42857%;
  margin: 0 2.85714% 0 0;
  float: left;
  text-align: left;
  display: block;
}

.col-12, .col-12-d {
  width: 100%;
  margin: 0;
  float: left;
  text-align: left;
  display: block;
}

.offset-1, .offset-1-d {
  margin-left: 8.57143%;
}

.offset-2, .offset-2-d {
  margin-left: 17.14286%;
}

.offset-3, .offset-3-d {
  margin-left: 25.71429%;
}

.offset-4, .offset-4-d {
  margin-left: 34.28571%;
}

.offset-5, .offset-5-d {
  margin-left: 42.85714%;
}

.offset-6, .offset-6-d {
  margin-left: 51.42857%;
}

.offset-7, .offset-7-d {
  margin-left: 60%;
}

.offset-8, .offset-8-d {
  margin-left: 68.57143%;
}

.offset-9, .offset-9-d {
  margin-left: 77.14286%;
}

.offset-10, .offset-10-d {
  margin-left: 85.71429%;
}

.offset-11, .offset-11-d {
  margin-left: 94.28571%;
}

.offset-12, .offset-12-d {
  margin-left: 102.85714%;
}

.col-last, .col-d-last {
  margin-right: 0;
  float: left;
  text-align: left;
  display: block;
}

.col-br-4 .col:nth-child(4n+4) {
  margin-right: 0;
}

.col-br-3 .col:nth-child(3n+3) {
  margin-right: 0;
}

.col-br-2 .col-auto-br:nth-child(2n+2),
.col-br-2 .col:nth-child(2n+2) {
  margin-right: 0;
}

.col-br-2d-1p .col-auto-br:nth-child(2n+2),
.col-br-2d-1p .col:nth-child(2n+2) {
  margin-right: 0;
}

.col-inverse {
  float: right;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.mt-0,
.mt-0-d {
  margin-top: 0px !important;
}

.mr-0,
.mr-0-d {
  margin-right: 0px !important;
}

.mb-0,
.mb-0-d {
  margin-bottom: 0px !important;
}

.ml-0,
.ml-0-d {
  margin-left: 0px !important;
}

.mv-0,
.mv-0-d {
  margin-top: 0px !important;
  margin-bottom: 0px !important;
}

.mh-0,
.mh-0-d {
  margin-left: 0px !important;
  margin-right: 0px !important;
}

.m-0,
.m-0-d {
  margin: 0px !important;
}

.pt-0,
.pt-0-d {
  padding-top: 0px !important;
}

.pr-0,
.pr-0-d {
  padding-right: 0px !important;
}

.pb-0,
.pb-0-d {
  padding-bottom: 0px !important;
}

.pl-0,
.pl-0-d {
  padding-left: 0px !important;
}

.pv-0,
.pv-0-d {
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}

.ph-0,
.ph-0-d {
  padding-left: 0px !important;
  padding-right: 0px !important;
}

.p-0,
.p-0-d {
  padding: 0px !important;
}

.mt-10,
.mt-10-d {
  margin-top: 10px !important;
}

.mr-10,
.mr-10-d {
  margin-right: 10px !important;
}

.mb-10,
.mb-10-d {
  margin-bottom: 10px !important;
}

.ml-10,
.ml-10-d {
  margin-left: 10px !important;
}

.mv-10,
.mv-10-d {
  margin-top: 10px !important;
  margin-bottom: 10px !important;
}

.mh-10,
.mh-10-d {
  margin-left: 10px !important;
  margin-right: 10px !important;
}

.m-10,
.m-10-d {
  margin: 10px !important;
}

.pt-10,
.pt-10-d {
  padding-top: 10px !important;
}

.pr-10,
.pr-10-d {
  padding-right: 10px !important;
}

.pb-10,
.pb-10-d {
  padding-bottom: 10px !important;
}

.pl-10,
.pl-10-d {
  padding-left: 10px !important;
}

.pv-10,
.pv-10-d {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.ph-10,
.ph-10-d {
  padding-left: 10px !important;
  padding-right: 10px !important;
}

.p-10,
.p-10-d {
  padding: 10px !important;
}

.mt-20,
.mt-20-d {
  margin-top: 20px !important;
}

.mr-20,
.mr-20-d {
  margin-right: 20px !important;
}

.mb-20,
.mb-20-d {
  margin-bottom: 20px !important;
}

.ml-20,
.ml-20-d {
  margin-left: 20px !important;
}

.mv-20,
.mv-20-d {
  margin-top: 20px !important;
  margin-bottom: 20px !important;
}

.mh-20,
.mh-20-d {
  margin-left: 20px !important;
  margin-right: 20px !important;
}

.m-20,
.m-20-d {
  margin: 20px !important;
}

.pt-20,
.pt-20-d {
  padding-top: 20px !important;
}

.pr-20,
.pr-20-d {
  padding-right: 20px !important;
}

.pb-20,
.pb-20-d {
  padding-bottom: 20px !important;
}

.pl-20,
.pl-20-d {
  padding-left: 20px !important;
}

.pv-20,
.pv-20-d {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

.ph-20,
.ph-20-d {
  padding-left: 20px !important;
  padding-right: 20px !important;
}

.p-20,
.p-20-d {
  padding: 20px !important;
}

.mt-30,
.mt-30-d {
  margin-top: 30px !important;
}

.mr-30,
.mr-30-d {
  margin-right: 30px !important;
}

.mb-30,
.mb-30-d {
  margin-bottom: 30px !important;
}

.ml-30,
.ml-30-d {
  margin-left: 30px !important;
}

.mv-30,
.mv-30-d {
  margin-top: 30px !important;
  margin-bottom: 30px !important;
}

.mh-30,
.mh-30-d {
  margin-left: 30px !important;
  margin-right: 30px !important;
}

.m-30,
.m-30-d {
  margin: 30px !important;
}

.pt-30,
.pt-30-d {
  padding-top: 30px !important;
}

.pr-30,
.pr-30-d {
  padding-right: 30px !important;
}

.pb-30,
.pb-30-d {
  padding-bottom: 30px !important;
}

.pl-30,
.pl-30-d {
  padding-left: 30px !important;
}

.pv-30,
.pv-30-d {
  padding-top: 30px !important;
  padding-bottom: 30px !important;
}

.ph-30,
.ph-30-d {
  padding-left: 30px !important;
  padding-right: 30px !important;
}

.p-30,
.p-30-d {
  padding: 30px !important;
}

.mt-40,
.mt-40-d {
  margin-top: 40px !important;
}

.mr-40,
.mr-40-d {
  margin-right: 40px !important;
}

.mb-40,
.mb-40-d {
  margin-bottom: 40px !important;
}

.ml-40,
.ml-40-d {
  margin-left: 40px !important;
}

.mv-40,
.mv-40-d {
  margin-top: 40px !important;
  margin-bottom: 40px !important;
}

.mh-40,
.mh-40-d {
  margin-left: 40px !important;
  margin-right: 40px !important;
}

.m-40,
.m-40-d {
  margin: 40px !important;
}

.pt-40,
.pt-40-d {
  padding-top: 40px !important;
}

.pr-40,
.pr-40-d {
  padding-right: 40px !important;
}

.pb-40,
.pb-40-d {
  padding-bottom: 40px !important;
}

.pl-40,
.pl-40-d {
  padding-left: 40px !important;
}

.pv-40,
.pv-40-d {
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}

.ph-40,
.ph-40-d {
  padding-left: 40px !important;
  padding-right: 40px !important;
}

.p-40,
.p-40-d {
  padding: 40px !important;
}

.mt-50,
.mt-50-d {
  margin-top: 50px !important;
}

.mr-50,
.mr-50-d {
  margin-right: 50px !important;
}

.mb-50,
.mb-50-d {
  margin-bottom: 50px !important;
}

.ml-50,
.ml-50-d {
  margin-left: 50px !important;
}

.mv-50,
.mv-50-d {
  margin-top: 50px !important;
  margin-bottom: 50px !important;
}

.mh-50,
.mh-50-d {
  margin-left: 50px !important;
  margin-right: 50px !important;
}

.m-50,
.m-50-d {
  margin: 50px !important;
}

.pt-50,
.pt-50-d {
  padding-top: 50px !important;
}

.pr-50,
.pr-50-d {
  padding-right: 50px !important;
}

.pb-50,
.pb-50-d {
  padding-bottom: 50px !important;
}

.pl-50,
.pl-50-d {
  padding-left: 50px !important;
}

.pv-50,
.pv-50-d {
  padding-top: 50px !important;
  padding-bottom: 50px !important;
}

.ph-50,
.ph-50-d {
  padding-left: 50px !important;
  padding-right: 50px !important;
}

.p-50,
.p-50-d {
  padding: 50px !important;
}

.show,
.block {
  display: block !important;
}

.none {
  display: none !important;
}

.inline {
  display: inline !important;
}

.inline-block {
  display: inline-block !important;
}

.d-t {
  display: table;
}

.d-tc {
  display: table-cell;
}

.is_d,
.show-d {
  display: block !important;
}

.none-d {
  display: none !important;
}

.is_p,
.show-p {
  display: none !important;
}

.none-p {
  display: block !important;
}

.pos-a {
  position: absolute;
}

.pos-r {
  position: relative;
}

.clear,
.cl,
.cl-b {
  clear: both;
}

.clearfix,
.cf {
  overflow: hidden;
  *zoom: 1;
}

.ov-h {
  overflow: hidden;
}

.ov-v {
  overflow: visible;
}

.ov-s {
  overflow: scroll;
}

.ovx-s {
  overflow-x: scroll;
  overflow: hidden;
}

.ovy-s {
  overflow-y: scroll;
}

.flex-c-m {
  /* 縦横中央寄せ */
  display: flex;
  flex-direction: row;
  justify-content: center;
  -webkit-justify-content: center;
  align-items: center;
  align-content: center;
  flex-wrap: nowrap;
}

/*
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  タイポグラフィ

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
*/
.fw-b {
  font-weight: bold;
}

.fw-n {
  font-weight: normal;
}

.td-n {
  text-decoration: none;
}

@font-face {
  font-family: "en";
  src: url("../font/horatio.woff") format("woff");
}
.ff-en,
body#about main .tel pre a,
footer #footer-store .tel a {
  font-family: horatio;
  font-weight: bold;
  letter-spacing: 1px;
}

.ff-large, body.leaf main .frame h3,
body.leaf main h2,
body.leaf main .h2-style,
body.leaf main .frame h3 {
  font-family: Century Gothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.whs-n,
.whs-n-d {
  white-space: normal;
}

.whs-p,
.whs-p-d {
  white-space: pre;
}

.whs-nw,
.whs-nw-d {
  white-space: nowrap;
}

.whs-pw,
.whs-pw-d {
  white-space: pre-wrap;
}

.alignleft,
.ta-l,
.ta-l-d {
  text-align: left !important;
}

.aligncenter,
.ta-c,
.ta-c-d {
  text-align: center !important;
}

.alignright,
.ta-r,
.ta-r-d {
  text-align: right !important;
}

/*
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  図表・画像

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
*/
a:hover img, a:hover button {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
  opacity: 0.8;
}

img.retina {
  width: 100%;
  height: auto;
}
img.full {
  width: 100%;
  height: auto;
}
img.half {
  zoom: 0.5;
}
img.full-d {
  width: 100%;
  height: auto;
}
img.half-d {
  zoom: 0.5;
}

.dtl img {
  visibility: visible;
}

img.va-t {
  vertical-align: top;
}
img.va-m {
  vertical-align: middle;
}
img.va-b {
  vertical-align: bottom;
}

img.alignleft,
.wp-caption.alignleft {
  clear: both;
  display: block;
  margin-left: 0px;
  margin-right: auto;
}

img.aligncenter,
.wp-caption.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

img.alignright,
.wp-caption.alignright {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: 0px;
}

figure {
  position: relative;
  display: inline-block;
}
figure figcaption {
  position: absolute;
  width: 100%;
  bottom: 0px;
  left: 0px;
  color: #fff;
  text-align: center;
  background-color: rgba(0, 0, 0, 0.6);
}

/*
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  色

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
*/
.c-lightbrown {
  color: #B8916C !important;
}

.c-brown {
  color: #6C4C40 !important;
}

.c-purple {
  color: #9B59B6 !important;
}

.c-pink {
  color: #E54659 !important;
}

.c-base {
  color: #3E261F !important;
}

.bgc-beige {
  background-color: #EFEBDB !important;
}

.bgc-base {
  background-color: #FFF !important;
}

.bdc-dark {
  border-color: #666 !important;
}

.bdc-light {
  border-color: #ccc !important;
}

.bdc-base {
  border-color: #999999 !important;
}

/*
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

ヘルパー2025

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
*/
#scroll {
  position: fixed;
  z-index: 10000;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=90);
  opacity: 0.9;
  bottom: 40px !important;
  right: 10px !important;
}

.cur-p {
  cursor: pointer;
}

#cboxTitle {
  /* lightbox代替テキスト */
  display: none !important;
}

#cboxCurrent {
  /* lightbox次のページ */
  display: none !important;
}

table.tablepress {
  border-top: solid 2px #ddd;
  border-bottom: solid 2px #ddd;
}
table.tablepress.td-c th, table.tablepress.td-c td {
  text-align: center;
}
table.tablepress.whs-n-1 td:first-child {
  white-space: nowrap;
}

table.tcol-4 { /* 同幅4列 */ }
table.tcol-4 th, table.tcol-4 td {
  width: 25%;
  border-right: solid 1px #ddd;
  text-align: center;
}
table.tcol-4 th:last-child, table.tcol-4 td:last-child {
  border-right: none;
}

#wp_page_numbers {
  clear: both;
  padding: 30px 0;
}
#wp_page_numbers ul {
  border-top: none !important;
}
#wp_page_numbers ul li {
  background-image: none !important;
  padding: 0 0 5px 5px !important;
  margin-right: 5px;
}
#wp_page_numbers ul li a {
  padding: 15px !important;
  color: #9B59B6;
  font-size: 15;
  font-weight: bold;
  background-image: none !important;
  border: solid 2px #9B59B6;
  text-decoration: none;
}
#wp_page_numbers ul li a:hover {
  background-color: #9B59B6;
  border-color: #9B59B6;
  color: #fff;
}
#wp_page_numbers ul li.page_info {
  padding: 15px 10px !important;
  border-width: 0px !important;
  display: block;
}
#wp_page_numbers ul li.active_page a {
  color: #fff !important;
  background-color: #3E261F;
  border-color: #3E261F;
  pointer-events: none;
}
#wp_page_numbers ul li.space {
  border: none;
  font-weight: bold;
  padding: 15px 0;
}

.acd-ttl:hover {
  cursor: pointer;
}

.youtube {
  width: 100%;
  aspect-ratio: 16/9;
}

.youtube iframe {
  width: 100%;
  height: 100%;
}

.wpcf7 #contactform {
  background-color: #f5f5f5;
  padding: 50px;
}
.wpcf7 table {
  width: 100%;
}
.wpcf7 table tr {
  border-bottom: dotted 1px #ccc;
}
.wpcf7 table td {
  padding: 10px;
  vertical-align: top;
}
.wpcf7 table td p {
  margin: 0 !important;
}
.wpcf7 table td:nth-of-type(1) {
  white-space: nowrap;
}
.wpcf7 span.hissu,
.wpcf7 span.nini { /* 必須＆任意 */
  margin-left: 10px !important;
  margin-bottom: 5px !important;
  color: #FFF;
  font-size: 11px;
  white-space: nowrap;
  padding: 3px 5px;
}
.wpcf7 .hissu { /* 必須 */
  background-color: #e60033;
}
.wpcf7 .nini { /*　任意 */
  background-color: #666;
}
.wpcf7 input[type=text], .wpcf7 input[type=email], .wpcf7 select, .wpcf7 textarea {
  background-color: #fff;
  border: solid 2px #ccc;
  font-size: 15px;
  padding: 3px 5px;
  border-radius: 2px;
}
.wpcf7 input[type=checkbox] {
  width: 20px;
  height: 20px;
}
.wpcf7 input[type=radio] {
  width: 20px;
  height: 20px;
}
.wpcf7 input[type=button],
.wpcf7 input[type=submit] {
  padding: 10px 20px;
  border-radius: 5px;
  cursor: pointer;
  font-size: 18px;
}
.wpcf7 .wpcf7-confirm, .wpcf7 .wpcf7-submit, .wpcf7 .mm-submit { /* ボタン確認、ボタン送信 */
  color: #fff;
  background-color: #9B59B6;
  padding: 10px;
  margin-bottom: 3px;
  border: solid 1px rgb(98.2887029289, 51.6192468619, 117.3807531381);
  border-bottom: solid 3px rgb(98.2887029289, 51.6192468619, 117.3807531381);
}
.wpcf7 .wpcf7-confirm:hover, .wpcf7 .wpcf7-submit:hover, .wpcf7 .mm-submit:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=90);
  opacity: 0.9;
  border-bottom: solid 1px rgb(98.2887029289, 51.6192468619, 117.3807531381);
  margin-top: 4px;
  margin-bottom: 1px;
}
.wpcf7 .wpcf7-back { /* ボタン修正 */
  color: #fff;
  background-color: rgb(197.6778242678, 159.8451882845, 213.1548117155);
  margin-right: 10px;
  border: solid 1px #9b59b6;
  border-bottom: solid 3px #9b59b6;
  padding: 10px;
  margin-bottom: 3px;
}
.wpcf7 .wpcf7-back:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=90);
  opacity: 0.9;
  border-bottom: solid 1px #9b59b6;
  margin-top: 4px;
  margin-bottom: 1px;
}
.wpcf7 .wpcf7-not-valid-tip, .wpcf7 .wpcf7-validation-errors { /* エラー */
  color: #e60033 !important;
  font-weight: bold;
}
.wpcf7 .wpcf7-mail-sent-ok { /* 送信完了 */
  font-weight: bold;
}
.wpcf7 .wpcf7c-conf { /* 確認画面の背景色 */
  border: none !important;
  background-color: #fff;
}
.wpcf7 .wpcf7-list-item { /* 確認チェックボックス */ }
.wpcf7 input[readonly=readonly],
.wpcf7 textarea[readonly=readonly],
.wpcf7 select[readonly=readonly] { /* 読み取り専用 */
  background-color: #f5f5f5;
}
.wpcf7 #zip { /* 郵便番号 */
  margin-bottom: 5px;
}

.sent #contactform,
.sent .btns,
.sent .submitchk,
.sent .submitbtn { /* 送信後 */
  display: none !important;
}

/*
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  ボタン

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
*/
p.btn a,
li.btn a,
main #page-link ul li a {
  box-sizing: border-box;
  text-decoration: none;
  border-radius: 25px;
  line-height: 1;
  background-color: #9B59B6;
  color: #fff;
  font-weight: normal;
  display: inline-block;
  padding: 12px 24px;
}
p.btn a i,
li.btn a i,
main #page-link ul li a i {
  background: transparent url(../img/common/ico-arrow-w.png) left no-repeat;
  padding-left: 24px;
}
p.btn a:hover,
li.btn a:hover,
main #page-link ul li a:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
  opacity: 0.8;
}
p.btn a.btn-w100,
li.btn a.btn-w100,
main #page-link ul li a.btn-w100 {
  display: block;
  width: 100%;
}

p.btn.acd-ttl a {
  background-color: #fff;
  border: solid 2px #A1887F;
  color: #A1887F;
}

.btn-inverse, main #page-link ul li.otherpage { /* 反転 */ }
.btn-inverse a, main #page-link ul li.otherpage a {
  background-color: #fff;
  border: solid 2px #9B59B6;
  color: #9B59B6;
  padding: 10px 24px;
}
.btn-inverse a i, main #page-link ul li.otherpage a i {
  background: transparent url("../img/common/ico-arrow-b.png") left no-repeat;
  background-size: 14px 14px;
  padding-left: 24px;
}

p.btn-w-b a i {
  background: transparent url(../img/common/ico-arrow-w-b.png) left no-repeat;
  background-size: 14px 14px;
}

p.btn-w-t a i {
  background: transparent url(../img/common/ico-arrow-w-t.png) left no-repeat;
  background-size: 14px 14px;
}

a.btn {
  box-sizing: border-box;
  border-radius: 14px;
  text-decoration: none;
  line-height: 1;
  font-size: 12px;
  font-weight: normal;
  display: inline;
  padding: 5px 10px;
  background-color: #9B59B6;
  color: #fff;
}
a.btn i {
  background: transparent url(../img/common/ico-arrow-w.png) left no-repeat;
  background-size: 12px 12px;
  padding-left: 18px;
}
a.btn:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
  opacity: 0.8;
}

/*
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  アイコン・リスト

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
*/
.ico-01 {
  background: transparent url("../img/common/ico-01.png") left 10px no-repeat;
  background-size: 5px 5px;
  padding-left: 20px;
}

.ico-02, body.leaf main .frame ul li {
  background: transparent url("../img/common/ico-02.png") left no-repeat;
  background-size: 30px 30px;
  padding: 0 0 0 40px;
}

.ico-arrow, main #page-link ul li.otherpage a i {
  background: transparent url("../img/common/ico-arrow.png") left no-repeat;
  background-size: 14px 14px;
  padding-left: 24px;
}

.ico-arrow-b {
  background: transparent url("../img/common/ico-arrow-b.png") left no-repeat;
  background-size: 14px 14px;
  padding-left: 24px;
}

.ico-arrow-w {
  background: transparent url("../img/common/ico-arrow-w.png") left no-repeat;
  background-size: 14px 14px;
  padding-left: 24px;
}

.ico-arrow-w-b, main #page-link ul li a i {
  background: transparent url("../img/common/ico-arrow-w-b.png") left no-repeat;
  background-size: 14px 14px;
  padding-left: 24px;
}

.noico { /* アイコン無し */
  background: none !important;
  padding-left: 0 !important;
}

.list-i, main #page-link ul {
  display: block;
}
.list-i:after, main #page-link ul:after {
  content: "";
  display: table;
  clear: both;
}
.list-i li, main #page-link ul li {
  float: left;
  display: inline-block;
  border-bottom: none;
  margin-right: 10px;
}
.list-i li:last-child, main #page-link ul li:last-child {
  margin-right: 0 !important;
}

.list-i-d {
  display: block;
}
.list-i-d:after {
  content: "";
  display: table;
  clear: both;
}
.list-i-d li {
  float: left;
  display: inline-block;
  border-bottom: none;
  margin-right: 10px;
}
.list-i-d li:last-child {
  margin-right: 0 !important;
}

.list-i-r {
  display: block;
}
.list-i-r li {
  float: right;
  display: inline-block;
  border-bottom: none;
  margin-left: 5px;
}

.list-tbc li,
.list-tbc-d li {
  display: table-cell;
  margin: 0;
  padding: 0;
}

ol {
  counter-reset: number; /* 名前を付けたカウンターをリセット */
  list-style: none; /* olが数字を付けることをキャンセル */
  margin: 0 0 20px 0;
  padding: 0;
}
ol li {
  padding: 8px 10px;
  border-bottom: solid 1px #ccc;
}
ol li:before { /* カウンタ（数字になる部分） */
  counter-increment: number; /* 任意の名前を付けて！ */
  content: counter(number) "."; /* 名前を付けたカウンターを呼び出し */
  font-weight: bold;
  padding: 0 5px;
  color: #3E261F;
  border-radius: 3px;
  display: inline-block;
  margin-right: 10px;
}
ol li:nth-child(2n+1) {
  background-color: #fafafa;
}
ol li:first-child {
  border-top: solid 2px #ccc;
}
ol li:last-child {
  border-bottom: solid 2px #ccc;
}

.ico-check {
  background-image: url(../img/common/ico-02x2.png);
  background-repeat: no-repeat;
  background-position: left;
  background-size: 30px 30px;
  padding-left: 40px;
  display: inline-block;
}

/*
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  ヘッダ2025

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
*/
header #breadcrumbs {
  text-align: right;
  padding: 10px 0;
  font-size: 10px;
}
header #breadcrumbs a {
  text-decoration: none;
  color: #3E261F;
}
header #page-ttl {
  background: transparent url(../img/common/ttl-bg.png) top no-repeat;
  text-align: center;
  margin-top: 60px;
}
header #page-ttl h1 {
  font-size: 40px;
  padding: 85px 0 50px 0;
}

@media screen and (min-width: 800px) {
  body.home header {
    height: 600px;
  }
}
@media screen and (min-width: 1900px) {
  body.home header {
    height: 800px !important;
  }
}
body.home header #header-bg {
  overflow: hidden;
  width: 100%;
  position: fixed;
  left: 0;
  top: 0;
  z-index: -100;
}
@media screen and (min-width: 800px) {
  body.home header #header-bg {
    height: 600px;
  }
}
@media screen and (min-width: 1900px) {
  body.home header #header-bg {
    height: 800px !important;
  }
}
body.home header #header-bg img {
  position: absolute;
  top: 0;
  left: 50%;
}
@media screen and (min-width: 800px) {
  body.home header #header-bg img {
    width: 1500px !important;
    height: 600px !important;
    margin-left: -750px;
  }
}
@media screen and (min-width: 1900px) {
  body.home header #header-bg img {
    width: 2000px !important;
    height: 800px !important;
    margin-left: -1000px;
  }
}
body.home header .grid, body.home header .grid-d {
  border-bottom: solid 1px #fff;
  padding-bottom: 30px;
}
body.home header #logo {
  margin-top: 36px;
}
body.home header #header-contact {
  padding: 20px 0 26px 0;
}
body.home header #header-contact:after {
  content: "";
  display: table;
  clear: both;
}
body.home header #header-contact li {
  margin-left: 20px;
}
body.home header nav {
  padding-left: 30px;
}
body.home header nav ul {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: flex-start;
  align-content: flex-end;
  flex-wrap: nowrap;
}

body#trimming header,
body.page-template-page-service header {
  height: 630px;
}
body#trimming header #service-header-bg,
body.page-template-page-service header #service-header-bg {
  height: 630px;
  background: transparent url(../img/common/service-header-bg.png) center 77px no-repeat;
}
body#trimming header #page-ttl,
body.page-template-page-service header #page-ttl {
  margin-top: 400px;
}

body#trimming header {
  background: transparent url(../img/trimming/head-bg.jpg) center 77px no-repeat;
}

body#esthetic header {
  background: transparent url(../img/esthetic/head-bg.jpg) center 77px no-repeat;
}

body#hotel header {
  background: transparent url(../img/hotel/head-bg.jpg) center 77px no-repeat;
}

body.single-post header #page-ttl,
body.archive-post header #page-ttl,
body.category header #page-ttl {
  text-align: center;
  margin-top: 60px;
}
body.single-post header #page-ttl h1,
body.archive-post header #page-ttl h1,
body.category header #page-ttl h1 {
  font-size: 40px;
  padding: 85px 0 50px 0;
}
body.single-post header #page-ttl h1 span,
body.archive-post header #page-ttl h1 span,
body.category header #page-ttl h1 span {
  font-size: 12px;
}

@media print {
  body#coupon header,
  body#coupon #breadcrumbs {
    display: none;
  }
}
/*
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  ナビゲーション

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
*/
.nav-fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  padding: 0 !important;
}

body.admin-bar .nav-fixed {
  margin-top: 32px;
}

#gnav {
  background-color: #fff;
  display: block;
  border-bottom: solid 5px #E1BEE7;
}
#gnav .grid {
  overflow: visible;
}
#gnav ul {
  padding: 5px 0;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: baseline;
  align-content: center;
  flex-wrap: nowrap;
}
#gnav ul li.has-sub ul.sub-nav {
  position: absolute;
  top: 40px;
  left: -20px;
  padding: 0;
  border-top: solid 1px rgb(176.3389121339, 124.4225941423, 197.5774058577);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: center;
  align-content: center;
  flex-wrap: nowrap;
}
#gnav ul li.has-sub ul.sub-nav li:hover {
  cursor: pointer;
}
#gnav ul li.has-sub ul.sub-nav li a {
  display: block;
  box-sizing: border-box;
  width: 100px;
  padding: 5px;
  border-bottom: solid 1px rgb(176.3389121339, 124.4225941423, 197.5774058577);
  border-left: solid 1px rgb(176.3389121339, 124.4225941423, 197.5774058577);
  border-right: solid 1px rgb(176.3389121339, 124.4225941423, 197.5774058577);
  font-size: 14px;
  line-height: 1.5;
  text-align: center;
  background-color: #9B59B6;
  color: #fff !important;
  text-decoration: none;
}
#gnav ul li.has-sub ul.sub-nav li a:hover {
  background-color: rgb(176.3389121339, 124.4225941423, 197.5774058577);
}

#nav-fixed_p {
  position: fixed;
  z-index: 10000;
  bottom: 0;
  left: 0;
  width: 100%;
}
#nav-fixed_p * {
  box-sizing: border-box;
}
#nav-fixed_p .uk-child-width-1-4 .col,
#nav-fixed_p .uk-child-width-1-3 .col {
  background-color: #333;
  flex-basis: 33%;
  padding: 2px;
}
#nav-fixed_p .uk-child-width-1-4 .col a,
#nav-fixed_p .uk-child-width-1-3 .col a {
  text-decoration: none;
}
#nav-fixed_p .uk-child-width-1-4 .col a p,
#nav-fixed_p .uk-child-width-1-3 .col a p {
  border: solid 1px #fff;
  padding: 15px 3px;
  font-size: 1.1rem;
  color: #fff;
  border-radius: 3px;
}
#nav-fixed_p .uk-child-width-1-4 .col {
  flex-basis: 25%;
}

/*
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  メインエリア

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
*/
main img {
  max-width: 100%;
  height: auto;
}
main .tablepress.price th, main .tablepress.price td {
  text-align: center;
}
main #wp_page_numbers {
  background: #efebdb url(../img/common/bg-beige.jpg) 0 0 repeat !important;
}
main #wp_page_numbers ul li {
  background: #efebdb url(../img/common/bg-beige.jpg) 0 0 repeat !important;
}
main .entry-cat.pos-a {
  position: absolute;
  padding: 1px 0;
  top: 0;
  right: 0;
}
main .entry-cat a {
  font-size: 12px;
  padding: 3px 10px;
  color: #fff !important;
  text-decoration: none;
  line-height: 1;
  font-weight: bold;
  white-space: 1px;
}
main #page-link {
  display: flex;
  flex-direction: row;
  justify-content: center;
  -webkit-justify-content: center;
  align-items: center;
  align-content: center;
  flex-wrap: nowrap;
  display: flex;
  justify-content: center;
  margin: 30px 0 20px 0;
}
main #page-link ul li {
  margin-bottom: 10px;
}
body.home main #news { /* 最新 */
  background-color: #fff;
  padding: 30px 0;
}
@media screen and (min-width: 800px) {
  body.home main #news .grid-wid {
    width: 90%;
    margin: 0 auto;
    padding: 0;
    display: block;
    padding: 30px 0 0 0;
  }
}
@media screen and (min-width: 1900px) {
  body.home main #news .grid-wid {
    width: 1800px;
    margin: 0 auto;
    padding: 0;
    display: block;
    padding: 30px 0 0 0;
  }
}
body.home main #news #slick .unit {
  position: relative;
  margin: 0 10px;
}
body.home main #news #slick .unit .entry-ttl a {
  font-size: 12px;
  font-weight: bold;
  text-decoration: none;
  color: #3E261F;
}
body.home main #news #slick .slick-prev:before,
body.home main #news #slick .slick-next:before {
  opacity: 1;
  color: #ccc;
}
body.home main #service { /* サービス内容 */
  padding: 50px 0 30px 0;
}
body.home main #service h2 {
  text-align: center;
  margin-bottom: 30px;
}
body.home main #service h3 {
  margin-top: 20px;
  text-align: center;
  color: #6C4C40;
  font-size: 28px;
}
body.home main #service h3 small {
  font-size: 16px;
}
body.home main #service img.photo {
  width: 330px;
  height: 220px;
  -o-object-fit: cover;
     object-fit: cover;
}
body.home main #service p {
  text-align: center;
  margin-bottom: 40px;
}
body.home main #service p.en {
  margin-bottom: 10px;
  color: #B8916C;
}
body.home main #service .grid-wid {
  padding: 30px 0 0 0;
  width: 1200px;
  margin: 0 auto;
  padding: 0;
  display: block;
}
body.home main #service #service-img-l,
body.home main #service #service-img-r {
  position: absolute;
}
body.home main #service #service-img-l img,
body.home main #service #service-img-r img {
  height: auto;
  max-width: 220px;
}
body.home main #service #service-img-l {
  left: 0px;
  top: 0px;
}
body.home main #service #service-img-r {
  right: 0px;
  top: 0px;
}

body.leaf main {
  margin-bottom: 50px;
}
body.leaf main strong {
  color: #E54659;
}
body.leaf main h2, body.leaf main .h2-style {
  color: #9B59B6;
  margin-bottom: 10px;
  font-size: 24px;
}
body.leaf main blockquote {
  padding: 20px 20px 5px 20px;
  font-size: 14px;
  background-color: #FFEBEE;
  margin-bottom: 15px;
}
body.leaf main .frame { /* 白枠 */ }
body.leaf main .frame ul li {
  margin-bottom: 10px;
}
body.leaf main .frame p, body.leaf main .frame ul, body.leaf main .frame h3, body.leaf main .frame h4 {
  margin-bottom: 20px;
}
body.leaf main .frame h2, body.leaf main .frame .h2-style {
  text-align: center;
  color: #3E261F;
  font-size: 30px;
  margin-bottom: 30px;
}
body.leaf main .frame h3 {
  background-color: #A1887F;
  color: #fff;
  text-align: center;
  padding: 10px;
  font-size: 18px;
}
body.leaf main .frame h4 {
  font-size: 20px;
  color: #E54659;
  font-weight: bold;
}
body.leaf main .frame h4 img {
  vertical-align: top;
}
body.leaf main .frame p.en {
  color: #B8916C;
  text-align: center;
}
body.leaf main .frame h2 + p.en {
  margin-top: -30px;
  margin-bottom: 30px;
}
body.leaf main .frame ul.wcs-tabs-nav { /* shortcodeのタブ */ }
body.leaf main .frame ul.wcs-tabs-nav li {
  background-image: none;
  padding-left: 0;
  margin-bottom: 0;
}
body.leaf main .frame ul.wcs-tabs-nav li a {
  background-color: rgb(197.6778242678, 159.8451882845, 213.1548117155);
  color: #fff;
  text-decoration: none;
}
body.leaf main .frame ul.wcs-tabs-nav li.wcs-state-active a {
  background-color: #9B59B6;
}
body.leaf main .frame.new { /* new */
  padding-top: 0;
}
body.leaf main .frame.new h2 {
  padding-top: 50px;
  margin-top: -3px;
  background: transparent url(../img/common/new.png) 0 0 no-repeat;
}

body#about main ul li {
  padding-left: 0;
  background-image: none;
}
body#about main h2.hx span {
  font-size: 30px;
  background-color: #EFEBDB;
}
body#about main .tel {
  border-top: solid 1px #ccc;
  border-bottom: solid 1px #ccc;
  text-align: center;
  padding: 10px 20px 0 20px;
}
body#about main .tel pre a {
  font-size: 36px;
  color: #E54659;
  text-decoration: none;
}
body#about main .info {
  padding: 20px 30px;
  border-bottom: solid 1px #ccc;
}
body#about main .link {
  padding: 0 30px;
  border-bottom: solid 1px #ccc;
}
body#about main ul.sns {
  margin: 20px 0;
}
body#about main ul.sns img {
  width: 40px;
  height: auto;
}
body#about main .map {
  padding: 20px 0;
}
body#about main .map iframe {
  width: 100% !important;
  height: 450px !important;
}
body#about main ul.photos li {
  margin-bottom: 10px;
}
body#about main ul.photos li img {
  width: 100%;
  height: height;
}
body#about main .photos-slider-main {
  margin-bottom: 10px;
}
body#about main .photos-slider-main img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 460px;
  height: 310px;
}
body#about main .photos-slider-nav {
  margin: 0 -5px;
}
body#about main .photos-slider-nav .slide-thumb {
  padding: 0 5px;
  cursor: pointer;
  opacity: 0.6;
  transition: opacity 0.3s;
}
body#about main .photos-slider-nav .slide-thumb img {
  width: 100%;
  max-height: 80px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}
body#about main .photos-slider-nav .slick-current .slide-thumb {
  opacity: 1;
}
body#about main .photos-slider-nav .slick-current img {
  border-color: #333;
}
body#about main .photos-slider-nav img {
  width: 100%;
  height: auto;
  border: 2px solid transparent;
}
body#about main .btn, body#about main #page-link ul li {
  font-size: 0.95em;
}

body#trimming main #to-2 .unit img {
  aspect-ratio: 16/9;
  max-width: 100% !important;
  -o-object-fit: cover;
     object-fit: cover;
}
body#trimming main #to-3 .unit:last-child .arrow {
  display: none;
}

/* ブログ
---------------------------------------- */
body#blog main .frame {
  padding: 30px !important;
}
body#blog main .frame .entry-ttl {
  margin-top: 10px;
  font-size: 18px !important;
  font-weight: bold;
  margin-bottom: 5px !important;
}
body#blog main .frame .entry-meta {
  font-size: 13px;
  margin-bottom: 0px !important;
  padding-bottom: 0 !important;
}

body.category main .unit,
body.tag main .unit {
  border-bottom: dotted 1px #999999;
}
body.category main .unit img,
body.tag main .unit img {
  width: 30px;
  height: auto;
  display: inline-block;
  margin-right: 15px;
  border-radius: 20px;
}
body.category main .unit p,
body.tag main .unit p {
  margin: 10px 0;
}
body.category main .unit time,
body.tag main .unit time {
  margin-right: 20px;
}
body.category main .unit a,
body.tag main .unit a {
  font-weight: bold;
}
body.category main .unit .entry-cat,
body.tag main .unit .entry-cat {
  padding-bottom: 3px;
}
body.category main .unit:last-child,
body.tag main .unit:last-child {
  border-bottom: none;
}

body.single-post .frame h4 {
  border-bottom: dotted 1px #999999;
  padding-bottom: 5px;
}
body.single-post .frame img {
  max-width: 100%;
}
body.single-post .frame .ytsl-wrapper {
  margin-bottom: 20px;
}
body.single-post .frame #entry-foot {
  margin: 30px 0;
}
body.single-post #entry-link {
  margin-bottom: 50px;
}
body.single-post #entry-link li.btn, body.single-post #entry-link main #page-link ul li, main #page-link ul body.single-post #entry-link li {
  margin: 0 10px !important;
}
body.single-post #entry-link li.btn:first-child a, body.single-post #entry-link main #page-link ul li:first-child a, main #page-link ul body.single-post #entry-link li:first-child a, body.single-post #entry-link li.btn:last-child a, body.single-post #entry-link main #page-link ul li:last-child a, main #page-link ul body.single-post #entry-link li:last-child a {
  background-color: #fff;
  border: solid 2px #9B59B6;
  color: #9B59B6;
}
body.single-post #entry-link li.btn:first-child i, body.single-post #entry-link main #page-link ul li:first-child i, main #page-link ul body.single-post #entry-link li:first-child i {
  background: transparent url(../img/common/ico-arrow-l.png) left no-repeat;
  background-size: 14px 14px;
}
body.single-post #entry-link li.btn:last-child i, body.single-post #entry-link main #page-link ul li:last-child i, main #page-link ul body.single-post #entry-link li:last-child i {
  background: transparent url(../img/common/ico-arrow.png) right no-repeat;
  background-size: 14px 14px;
  padding: 0 24px 0 0;
}
body.single-post #entry-link li.btn:nth-child(2) i, body.single-post #entry-link main #page-link ul li:nth-child(2) i, main #page-link ul body.single-post #entry-link li:nth-child(2) i {
  background: transparent url(../img/common/ico-arrow-w-t.png) left no-repeat;
  background-size: 14px 14px;
}

/* サービス
---------------------------------------- */
body#hotel main .room-for,
body.page-template-page-service main .room-for { /* 部屋紹介 */
  padding: 0 20px;
}
body#hotel main #service-faq,
body.page-template-page-service main #service-faq { /* 質問 */ }
body#hotel main #service-faq h2,
body.page-template-page-service main #service-faq h2 {
  text-align: center;
  margin-bottom: 20px;
  color: #3E261F !important;
  font-size: 30px;
  background: transparent url(../img/common/ttl-bg-02.png) top center no-repeat;
  height: 74px;
  padding: 10px 0;
}
body#hotel main #service-faq .unit,
body.page-template-page-service main #service-faq .unit {
  margin-bottom: 20px;
}
body#hotel main #service-faq .unit .q,
body.page-template-page-service main #service-faq .unit .q {
  font-size: 18px;
  margin-bottom: 15px;
  color: #9B59B6;
  text-decoration: underline;
  cursor: pointer;
  background: url(../img/common/ico-q.png) left no-repeat;
  padding-left: 40px;
}
body#hotel main #service-faq .unit .a,
body.page-template-page-service main #service-faq .unit .a {
  background-color: #FACFDB;
  padding: 20px;
}
body#hotel main #service-faq .unit .a i,
body.page-template-page-service main #service-faq .unit .a i {
  display: block;
  background: url(../img/common/ico-a.png) left 5px no-repeat;
}
body#hotel main #service-faq .unit .q,
body#hotel main #service-faq .unit .a i,
body.page-template-page-service main #service-faq .unit .q,
body.page-template-page-service main #service-faq .unit .a i {
  font-weight: normal;
  padding-left: 40px;
}

/* スタッフ
---------------------------------------- */
body.single-staff main .wp_social_bookmarking_light {
  display: none !important;
}
body.single-staff main .frame img {
  margin-bottom: 20px;
}
body.single-staff main .frame h2, body.single-staff main .frame p {
  margin-bottom: 0 !important;
  text-align: left !important;
}
body.single-staff main .frame .en {
  font-size: 20px;
  font-weight: bold;
}
body.single-staff main .frame table {
  width: 100%;
  border-top: solid 1px #999999;
  margin-top: 30px;
}
body.single-staff main .frame tr {
  border-bottom: solid 1px #999999;
}
body.single-staff main .frame th, body.single-staff main .frame td {
  padding: 25px 10px;
}
body.single-staff main .frame th {
  color: #9B59B6;
  width: 30%;
}

body.post-type-archive-staff main .frame,
body.tax-staffcat main .frame {
  text-align: left;
}
body.post-type-archive-staff main .frame .entry-meta a,
body.tax-staffcat main .frame .entry-meta a {
  margin-top: 15px;
  display: block;
  text-decoration: none;
  color: #3E261F;
  background: transparent url(../img/common/ico-arrow.png) right bottom no-repeat;
  background-size: 20px 20px;
}
body.post-type-archive-staff main .frame p,
body.tax-staffcat main .frame p {
  text-align: left !important;
  margin-bottom: 0;
}
body.post-type-archive-staff main .frame .entry-exc,
body.tax-staffcat main .frame .entry-exc {
  font-size: 12px;
}
body.post-type-archive-staff main .frame .entry-ttl,
body.tax-staffcat main .frame .entry-ttl {
  line-height: 1;
  font-size: 20px;
  margin-top: 5px;
}

/* 料金表
---------------------------------------- */
body#hotel main .tablepress th, body#hotel main .tablepress td,
body#price main .tablepress th,
body#price main .tablepress td {
  border-right: solid 1px #ddd;
  word-break: keep-all;
}
body#hotel main .tablepress th:last-child, body#hotel main .tablepress td:last-child,
body#price main .tablepress th:last-child,
body#price main .tablepress td:last-child {
  border-right: none;
}
body#hotel main .tablepress th,
body#price main .tablepress th {
  background-color: #EFEBDB;
  text-align: center;
}
body#hotel main .tablepress tfoot th,
body#price main .tablepress tfoot th {
  text-align: left;
}
body#hotel main .tablepress.row-2-th tr.row-2 td,
body#price main .tablepress.row-2-th tr.row-2 td {
  text-align: center;
  background-color: rgb(246.8461538462, 244.8076923077, 236.6538461538);
  font-weight: bold;
}
body#hotel main .tablepress.pricetbl-col-1-l td,
body#price main .tablepress.pricetbl-col-1-l td {
  text-align: right;
}
body#hotel main .tablepress.pricetbl-col-1-l td.column-1,
body#price main .tablepress.pricetbl-col-1-l td.column-1 {
  text-align: left;
}
body#hotel main .tablepress.pricetbl-c td,
body#price main .tablepress.pricetbl-c td {
  text-align: center;
}
body#hotel main .tablepress.pricetbl-3col td,
body#price main .tablepress.pricetbl-3col td {
  text-align: center;
}
body#hotel main .tablepress.pricetbl-3col td:first-child,
body#price main .tablepress.pricetbl-3col td:first-child {
  text-align: left;
}
body#hotel main .tablepress.pricetbl-trimming td.column-2,
body#hotel main .tablepress.pricetbl-trimming td.column-4,
body#price main .tablepress.pricetbl-trimming td.column-2,
body#price main .tablepress.pricetbl-trimming td.column-4 {
  background-color: #E6E6E6 !important;
}
body#hotel main .tablepress.pricetbl-trimming td.column-3,
body#hotel main .tablepress.pricetbl-trimming td.column-5,
body#price main .tablepress.pricetbl-trimming td.column-3,
body#price main .tablepress.pricetbl-trimming td.column-5 {
  background-color: #FCE68D !important;
}
/*
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  サイドエリア

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
*/
aside {
  padding-bottom: 50px;
}
aside .widget {
  background-color: #fff;
  margin: 0 0 20px 0;
}
aside .widget:nth-child(2), aside .widget:nth-child(4) {
  background: url(../img/blog/aside-ttl-bg-01.png) top right no-repeat;
}
aside .widget:nth-child(3), aside .widget:nth-child(5) {
  background: url(../img/blog/aside-ttl-bg-02.png) top right no-repeat;
}
aside .widget .aside-ttl {
  height: 80px;
  padding: 42px 10px 0 10px;
  color: #B8916C;
  border-bottom: solid 1px #B8916C;
}
aside .widget ul li {
  display: block;
  background-color: #fff;
  padding: 10px;
  border-bottom: dotted 1px #B8916C;
}
aside .widget ul li:last-child {
  border-bottom: solid 1px #B8916C;
}
aside .widget ul li a {
  text-decoration: none;
}
aside .widget ul li ul.children li {
  border-bottom: none;
  padding-bottom: 0 !important;
}
aside .widget .tagcloud { /* タグクラウド */
  padding: 10px;
  background-color: #fff;
  border-bottom: solid 1px #B8916C;
}
aside #widget_sp_image-2 { /* バナー */
  background: none;
  text-align: center;
}
aside #widget_sp_image-2 .aside-ttl {
  display: none;
}
aside #widget_sp_image-2 .widget_sp_image-description {
  margin-top: 5px;
}

/*
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  フッタ

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
*/
footer {
  background: #facfdb url(../img/common/bg-pink.jpg) 0 0 repeat;
  position: relative;
}
footer img {
  max-width: 100%;
  height: auto;
}

#footer-yoyaku {
  position: relative;
  background-image: url(../img/common/footer-yoyaku-ttl-bg.png), url(../img/common/footer-yoyaku-bg.png);
  background-repeat: no-repeat, repeat-x;
  background-position: center 30px, bottom center;
  background-size: 200px 200px, 2330px 216px;
  padding-bottom: 60px;
}
#footer-yoyaku p {
  display: block;
  text-align: center;
}
#footer-yoyaku .frame-pink {
  margin-top: 30px;
}
#footer-yoyaku .frame-pink p {
  margin-bottom: 0;
  color: #E54659;
  background: transparent url(../img/common/footer-kiyaku-ico.png) left no-repeat;
  padding-left: 100px;
}
#footer-yoyaku .frame-pink p strong {
  font-size: 16px;
}
#footer-yoyaku .frame-pink img {
  margin-top: 10px;
}
#footer-yoyaku .grid-wid {
  position: relative;
  width: 1100px;
  margin: 0 auto;
  padding: 0;
  display: block;
  padding: 60px 0 0 0;
}
#footer-yoyaku #footer-img-l {
  position: absolute;
  top: 0px;
  left: 0px;
}
#footer-yoyaku #footer-img-l img {
  max-width: 220px;
  height: auto;
}
#footer-yoyaku #footer-img-r {
  position: absolute;
  top: 0px;
  right: 0px;
}
#footer-yoyaku #footer-img-r img {
  max-width: 220px;
  height: auto;
}

#footer-store img, #footer-store2 img {
  margin-bottom: 20px;
}
#footer-store img.photo, #footer-store2 img.photo {
  width: 100%;
  height: 153px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
#footer-store p, #footer-store2 p {
  text-align: center;
}
#footer-store ul.name, #footer-store2 ul.name {
  margin-bottom: 5px;
}
#footer-store ul.name li, #footer-store2 ul.name li {
  text-align: center;
  line-height: 1.5;
}
#footer-store ul.name li:nth-child(1), #footer-store2 ul.name li:nth-child(1) {
  font-size: 30px;
}
#footer-store ul.name li:nth-child(2), #footer-store2 ul.name li:nth-child(2) {
  color: #B8916C;
}
#footer-store .tel a, #footer-store2 .tel a {
  color: #E54659;
  text-decoration: none;
  font-size: 26px;
}
#footer-store .open, #footer-store2 .open {
  font-size: 12px;
  margin: 5px 0 10px 0;
  letter-spacing: 1px;
}
#footer-store .addr, #footer-store .addr2, #footer-store2 .addr, #footer-store2 .addr2 {
  text-align: left;
}
#footer-store ul.sns, #footer-store2 ul.sns {
  margin: 20px 0;
}
#footer-store ul.sns img, #footer-store2 ul.sns img {
  width: 40px;
  height: auto;
  margin: 0 5px;
}
#footer-store p.btn, #footer-store2 p.btn {
  margin-bottom: 30px;
}

#footer-store2 img.photo {
  height: 200px !important;
}

.footer-cal {
  padding: 0 0 40px 0;
}
.footer-cal .wpsbc-calendars .wpsbc-heading {
  width: 100%;
  display: block;
  border-bottom: dotted 1px #ccc;
}
.footer-cal .wpsbc-calendars .wpsbc-heading span {
  font-size: 15px;
}
.footer-cal .wpsbc-calendars .wpsbc-heading span:after {
  content: "年";
}
.footer-cal .wpsbc-calendars .wpsbc-calendar {
  width: 270px;
  margin-right: 20px;
  border: solid 1px #B8916C;
}
.footer-cal .wpsbc-calendars .wpsbc-calendar ul li {
  width: 13%;
}
.footer-cal .wpsbc-calendars .wpsbc-calendar ul.wpsbc-weekdays li:nth-child(6) {
  color: #5677fc;
}
.footer-cal .wpsbc-calendars .wpsbc-calendar ul.wpsbc-weekdays li:nth-child(7) {
  color: #f44336;
}
.footer-cal .wpsbc-legend {
  border: solid 1px #B8916C;
}
.footer-cal .wpsbc-next,
.footer-cal .wpsbc-prev {
  display: none !important;
}

#footer-link {
  background-color: #fff;
  padding: 20px 0 40px 0;
}
#footer-link p {
  margin: 10px 0;
  color: #B8916C;
}
#footer-link ul li a {
  background: transparent url(../img/common/ico-01.png) left no-repeat;
  padding-left: 20px;
}
#footer-link p a, #footer-link li a {
  text-decoration: none;
}
#footer-link .col-6-d ul {
  float: left;
}
#footer-link .col-6-d ul:last-child {
  margin-left: 100px;
}

#footer-copy {
  background-color: #9B59B6;
  text-align: center;
  line-height: 1 !important;
  padding: 5px 0 30px 0;
  line-height: 1 !important;
}
#footer-copy small {
  color: #fff;
  text-align: center;
  font-size: 10px;
}
#footer-copy small a {
  color: #fff;
  text-decoration: none;
}

@media print {
  body#coupon footer {
    display: none;
  }
}
/*
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  プロジェクト共通

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
*/
.bg-beige,
body.leaf {
  background: #EFEBDB url(../img/common/bg-beige.jpg) 0 0 repeat;
}

.bg-pink {
  background: #FACFDB url(../img/common/bg-pink.jpg) 0 0 repeat;
}

@media print {
  body#coupon,
  body#coupon .bg-beige {
    background-image: none;
    background-color: #fff;
  }
}

@media print {
  body#coupon,
  body#coupon .bg-beige {
    background-image: none;
    background-color: #fff;
  }
}
.frame {
  background-color: #fff;
  box-shadow: 0px 0px 3px #ccc;
  margin: 0px 3px 40px 0;
  padding: 50px;
}
.frame p:empty {
  display: none;
}

.frame-pink {
  background-color: #FACFDB;
  border: solid 2px #FFF;
  box-shadow: 0 0 0 4px #FACFDB;
  margin: 0 4px 30px 4px;
  padding: 20px;
}

.frame-dot {
  background-color: #fff;
  padding: 2px;
  border: dotted #B8916C 1px;
}

.hx {
  text-align: center;
  background-image: url(../img/common/footer-cal-ttl-bg_d.png);
  background-repeat: repeat-x;
  background-position: center;
  background-size: 20px 31px;
  margin-bottom: 1.5em;
}
.hx span {
  font-size: 28px;
  background-color: #FCECEC;
  padding: 0 1em;
  color: #6C4C40;
}