@charset "utf-8";

/* ----------------------------------------------------------------------
 * RESET
 * ---------------------------------------------------------------------- */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
input,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video,
:before,
:after {
  margin: 0;
  padding: 0;
  border: 0;
  font-style: normal;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  /*vertical-align: bottom;*/
  box-sizing: border-box;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section {
  display: block;
}
html {
  font-size: 62.5%;
  overflow-y: scroll;
  background: white;
}
.g-body {
  color: #231815;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: 0.1em;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  background: #f7f7f7;
  position: relative;
  cursor: default;
}
.is-home .g-body {
  background: none;
}
input,
textarea {
  /*font-family: 'Noto Sans JP';*/
  margin: 0;
  padding: 0;
}
ol,
ul {
  list-style: none;
}
table {
  border-collapse: separate;
  border-spacing: 0;
}
a,
a:visited,
a:before,
a:after,
a img,
input[type="image"],
input[type="submit"] {
  color: #221814;
  text-decoration: none;
  backface-visibility: hidden;
  /*transition: .2s;*/
  -webkit-transition: all 0.8s cubic-bezier(0.75, 0, 0.35, 1);
  transition: all 0.8s cubic-bezier(0.75, 0, 0.35, 1);
}
a:visited:hover,
a:hover,
a:hover img,
input[type="image"]:hover {
  opacity: 0.8;
}
a.is-hover-none:visited:hover,
a.is-hover-none:hover,
a.is-hover-none:hover img,
input[type="image"].is-hover-none:hover {
  opacity: 1;
}
a:focus {
  outline: none;
}
img {
  max-width: 100%;
  height: auto;
  /*backface-visibility: hidden;*/
  background: transparent;
}
img.fit,
object.fit,
embed.fit,
iframe.fit {
  width: 100%;
  height: auto;
}
button {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}
::selection {
  color: #333;
  background: rgba(0, 0, 0, 0.15);
}
::-moz-selection {
  color: #333;
  background: rgba(0, 0, 0, 0.15);
}
::-webkit-scrollbar {
  width: 8px;
  background: rgba(0, 0, 0, 0.15);
}
::-webkit-scrollbar-thumb {
  background-color: rgba(0, 0, 0, 0.25);
}

/* ------------------------------------------------------------------------------------------------
 * FONT
 * ------------------------------------------------------------------------------------------------ */
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}
body,
input,
button,
textarea,
:before,
:after,
.u-font_gothic,
.u-font_gothicBefore:before,
.u-font_gothicAfter:after,
.u-font_gothic select,
.u-font_gothic input,
.u-font_gothic button,
.u-font_gothic textarea {
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体",
    "YuGothicM", "YuGothicM", "游ゴシック", YuGothic,
    "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", Meiryo, メイリオ,
    "ＭＳ ゴシック", sans-serif;
  /*font-feature-settings: 'pwid';*/
  text-rendering: optimizelegibility;
}
select {
  font-family: "Imprima", sans-serif;
  /*font-feature-settings: 'pwid';*/
  text-rendering: optimizelegibility;
}
.u-font_mincho,
.u-font_minchoBefore:before,
.u-font_minchoAfter:after {
  font-family: "Noto Serif JP", serif, "游明朝", YuMincho,
    "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ 明朝";
  /*font-feature-settings: 'pwid';*/
  text-rendering: optimizelegibility;
}
.u-font_yrsa,
.u-font_yrsaBefore:before,
.u-font_yrsaAfter:after {
  font-family: "Yrsa", serif;
}
.u-font_imprima,
.u-font_imprimaBefore:before,
.u-font_imprimaAfter:after {
  font-family: "Imprima", sans-serif;
}

/* ----------------------------------------------------------------------
 * - UTILITY -
 * ---------------------------------------------------------------------- */
.u-inner {
  display: block;
  width: 100%;
  max-width: 1190px;
  margin: 0 auto;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
}
.u-inner--width_short {
  max-width: 965px;
}
/*.u-inner--width_840 {
 max-width: 870px;
}*/
.u-show_media {
  display: none !important;
}
.u-hide_media {
  display: block !important;
}
.u-cover {
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.65);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  visibility: hidden;
  opacity: 0;
  transition: 0.4s;
  backdrop-filter: blur(2px) contrast(100%);
}
.u-font-normal {
  font-weight: 400 !important;
}
.u-font-light {
  font-weight: 200 !important;
}
.u-font-bold {
  font-weight: 700 !important;
}
.u-fontstyle_italic {
  font-style: italic;
}
.u-text_center {
  text-align: center;
}
.u-text_left {
  text-align: left;
}
.u-text_right {
  text-align: right;
}
.u-vertical-rl {
  text-align: left;
  vertical-align: top;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}
.u-text_sup {
  font-size: 70%;
  vertical-align: top;
  position: relative;
  top: -0.1em;
}
.u-text_sub {
  font-size: 70%;
  vertical-align: bottom;
  position: relative;
  top: 0.1em;
}
.u-text_indent {
  text-indent: 1em;
}
.u-text_block {
  display: inline-block;
}
.u-text_large {
  font-size: 26px;
  font-size: 2.6rem;
}
.u-contents {
  margin-bottom: 10%;
}
.u-align-right {
  text-align: right !important;
}
.u-align-center {
  text-align: center !important;
}
.u-align-left {
  text-align: left !important;
}
.u-float-right {
  float: right !important;
}
.u-float-left {
  float: left !important;
}
.u-color-black {
  color: black;
}
.u-color-red {
  color: #e00000;
}
.u-color-gray {
  color: #888;
}

/* Template text */
.u-text {
  line-height: 1.75;
  letter-spacing: 0.075em;
  margin-bottom: 2.85%;
}
.u-text-indent3 {
  text-indent: -1.25em;
  padding-left: 1.25em;
}
.u-note {
  font-size: 1.3rem;
  line-height: 1.5;
  padding-left: 2em;
  position: relative;
}
.u-note__asterisk {
  position: absolute;
  top: 0;
  left: 0;
}

/* Template link */
.u-link-arrow:after {
  content: "";
  vertical-align: 0;
  width: 8px;
  height: 12px;
  margin: 0 0 0 0.5em;
  display: inline-block;
}
.u-link-window:after {
  content: "";
  vertical-align: 0;
  width: 13px;
  height: 13px;
  margin: 0 0 0 0.5em;
  display: inline-block;
}
.u-link-pdf:after {
  content: "";
  vertical-align: -0.15em;
  width: 14px;
  height: 18px;
  margin: 0 0 0 0.5em;
  display: inline-block;
}
.u-link-anchor:after {
  content: "";
  vertical-align: 0;
  width: 12px;
  height: 8px;
  margin: 0 0 0 0.25em;
  display: inline-block;
  position: relative;
}
.u-flex {
  display: flex;
  flex-wrap: wrap;
}
.u-flex-reverse {
  flex-direction: row-reverse;
}
.u-flex__inner {
  padding-right: 2.15%;
  padding-left: 2.15%;
}

/* Template Btn */
/*linkLine*/
.u-linkLine a {
  color: #231815;
  text-decoration: none;
  display: inline-block;
  position: relative;
  opacity: 1;
}
.u-linkLine a:after {
  background: #999;
  position: absolute;
  bottom: -4px;
  left: 0;
  content: "";
  width: 100%;
  height: 1px;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform 0.3s;
}
.u-linkLine a:hover:after {
  transform-origin: left top;
  transform: scale(1, 1);
}

/*linkLinebottom*/
.u-linkLinebottom {
  text-align: right;
}
.u-linkLinebottom a {
  color: #bfbfbf;
  font-size: 1.3rem;
  letter-spacing: 0.12em;
  line-height: 1;
  text-align: right;
  text-decoration: none;
  display: inline-block;
  padding: 0 0.5em 20px 0;
  position: relative;
  min-width: 200px;
  width: 20%;
  opacity: 1;
}
.u-linkLinebottom a:after {
  background: #bfbfbf;
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
}
.u-linkLinebottom a:hover:after {
  left: auto;
  right: 0;
  width: 0%;
}

/*boxlink_box*/
.u-boxlink_box a {
  -webkit-text-stroke: 0.5px #201715;
  text-stroke: 0.5px #201715;
  color: #201715;
  font-family: "Imprima", sans-serif;
  font-weight: 100;
  font-size: 2.4rem;
  text-align: center;
  border: 1px solid #d4d3d2;
  display: block;
  margin-top: 20px;
  padding: 34px 0;
  -webkit-transition: all 0.8s cubic-bezier(0.75, 0, 0.35, 1);
  transition: all 0.8s cubic-bezier(0.75, 0, 0.35, 1);
}
.u-boxlink_box a:hover {
  color: #fff;
  background: #201715;
  border: 1px solid #888;
  opacity: 1;
  -webkit-text-stroke: 0.5px #fff;
  text-stroke: 0.5px #fff;
}

/*linkLinebox*/
.u-linkLinebox {
  display: block;
}
.u-linkLinebox_box {
  text-align: center;
  display: block;
  max-width: 724px;
  margin: auto;
  position: relative;
  height: 93px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border: 1px solid rgba(0, 0, 0, 0);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.u-linkLinebox_box:hover {
  border-color: rgba(34, 24, 20, 0.5);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.u-linkLinebox2 .u-linkLinebox_box:hover {
  background-color: #221814;
  color: #fff;
  border-color: #221814;
}
.u-linkLinebox_box:hover:after {
  background: url(../../img/common/bg_triangle_on.png) no-repeat bottom;
  background-size: contain;
}
.u-linkLinebox2 .u-linkLinebox_box:hover:after {
  background: url(../../img/common/bg_triangle2_on.png) no-repeat bottom;
  background-size: contain;
}
.u-linkLinebox_box:after {
  content: "";
  display: block;
  position: absolute;
  background: url(../../img/common/bg_triangle.png) no-repeat bottom;
  background-size: contain;
  width: 715px;
  height: 93px;
  bottom: -8px;
  left: 15px;
}
.u-linkLinebox_name {
  vertical-align: middle;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: bold;
}

/* Template Fontsize */
.u-fontsize10 {
  font-size: 1rem;
}
.u-fontsize11 {
  font-size: 1.1rem;
}
.u-fontsize12 {
  font-size: 1.2rem;
}
.u-fontsize13 {
  font-size: 1.3rem;
}
.u-fontsize14 {
  font-size: 1.4rem;
}
.u-fontsize15 {
  font-size: 1.5rem;
}
.u-fontsize16 {
  font-size: 1.6rem;
}
.u-fontsize17 {
  font-size: 1.7rem;
}
.u-fontsize18 {
  font-size: 1.8rem;
}
.u-fontsize19 {
  font-size: 1.9rem;
}
.u-fontsize20 {
  font-size: 2rem;
}
.u-fontsize21 {
  font-size: 2.1rem;
}
.u-fontsize22 {
  font-size: 2.2rem;
}
.u-fontsize23 {
  font-size: 2.3rem;
}
.u-fontsize24 {
  font-size: 2.4rem;
}
.u-fontsize25 {
  font-size: 2.5rem;
}
.u-fontsize26 {
  font-size: 2.6rem;
}
.u-fontsize27 {
  font-size: 2.7rem;
}
.u-fontsize28 {
  font-size: 2.8rem;
}
.u-fontsize29 {
  font-size: 2.9rem;
}
.u-fontsize30 {
  font-size: 3rem;
}
.u-fontsize31 {
  font-size: 3.1rem;
}
.u-fontsize32 {
  font-size: 3.2rem;
}
.u-fontsize33 {
  font-size: 3.3rem;
}
.u-fontsize34 {
  font-size: 3.4rem;
}
.u-fontsize35 {
  font-size: 3.5rem;
}
.u-fontsize36 {
  font-size: 3.6rem;
}
.u-fontsize37 {
  font-size: 3.7rem;
}
.u-fontsize38 {
  font-size: 3.8rem;
}
.u-fontsize39 {
  font-size: 3.9rem;
}
.u-fontsize40 {
  font-size: 4rem;
}

/* Template Spacer */
.u-mgb5 {
  margin-bottom: 5px;
}
.u-mgb10 {
  margin-bottom: 10px;
}
.u-mgb15 {
  margin-bottom: 15px;
}
.u-mgb20 {
  margin-bottom: 20px;
}
.u-mgb25 {
  margin-bottom: 25px;
}
.u-mgb30 {
  margin-bottom: 30px;
}
.u-mgb35 {
  margin-bottom: 35px;
}
.u-mgb40 {
  margin-bottom: 40px;
}
.u-mgb45 {
  margin-bottom: 45px;
}
.u-mgb50 {
  margin-bottom: 50px;
}
.u-mgb60 {
  margin-bottom: 60px;
}
.u-mgb70 {
  margin-bottom: 70px;
}
.u-mgb80 {
  margin-bottom: 80px;
}
.u-mgb90 {
  margin-bottom: 90px;
}
.u-mgb100 {
  margin-bottom: 100px;
}

.u-mgt5 {
  margin-top: 5px;
}
.u-mgt10 {
  margin-top: 10px;
}
.u-mgt15 {
  margin-top: 15px;
}
.u-mgt20 {
  margin-top: 20px;
}
.u-mgt25 {
  margin-top: 25px;
}
.u-mgt30 {
  margin-top: 30px;
}
.u-mgt35 {
  margin-top: 35px;
}
.u-mgt40 {
  margin-top: 40px;
}
.u-mgt45 {
  margin-top: 45px;
}
.u-mgt50 {
  margin-top: 50px;
}
.u-mgt60 {
  margin-top: 60px;
}
.u-mgt70 {
  margin-top: 70px;
}
.u-mgt80 {
  margin-top: 80px;
}
.u-mgt90 {
  margin-top: 90px;
}
.u-mgt100 {
  margin-top: 100px;
}

.u-mgl5 {
  margin-left: 5px;
}
.u-mgl10 {
  margin-left: 10px;
}
.u-mgl15 {
  margin-left: 15px;
}
.u-mgl20 {
  margin-left: 20px;
}
.u-mgl25 {
  margin-left: 25px;
}
.u-mgl30 {
  margin-left: 30px;
}
.u-mgl35 {
  margin-left: 35px;
}
.u-mgl40 {
  margin-left: 40px;
}
.u-mgl45 {
  margin-left: 45px;
}
.u-mgl50 {
  margin-left: 50px;
}
.u-mgl60 {
  margin-left: 60px;
}
.u-mgl70 {
  margin-left: 70px;
}
.u-mgl80 {
  margin-left: 80px;
}
.u-mgl90 {
  margin-left: 90px;
}
.u-mgl100 {
  margin-left: 100px;
}

.u-pdt5 {
  padding-top: 5px;
}
.u-pdt10 {
  padding-top: 10px;
}
.u-pdt15 {
  padding-top: 15px;
}
.u-pdt20 {
  padding-top: 20px;
}
.u-pdt25 {
  padding-top: 25px;
}
.u-pdt30 {
  padding-top: 30px;
}
.u-pdt35 {
  padding-top: 35px;
}
.u-pdt40 {
  padding-top: 40px;
}
.u-pdt45 {
  padding-top: 45px;
}
.u-pdt50 {
  padding-top: 50px;
}
.u-pdt60 {
  padding-top: 60px;
}
.u-pdt70 {
  padding-top: 70px;
}
.u-pdt80 {
  padding-top: 80px;
}
.u-pdt90 {
  padding-top: 90px;
}
.u-pdt100 {
  padding-top: 100px;
}

.u-pd5 {
  padding: 5px;
}
.u-pd10 {
  padding: 10px;
}
.u-pd15 {
  padding: 15px;
}
.u-pd20 {
  padding: 20px;
}
.u-pd25 {
  padding: 25px;
}
.u-pd30 {
  padding: 30px;
}
.u-pd35 {
  padding: 35px;
}
.u-pd40 {
  padding: 40px;
}
.u-pd45 {
  padding: 45px;
}
.u-pd50 {
  padding: 50px;
}
.u-pd60 {
  padding: 60px;
}
.u-pd70 {
  padding: 70px;
}
.u-pd80 {
  padding: 80px;
}
.u-pd90 {
  padding: 90px;
}
.u-pd100 {
  padding: 100px;
}

.u-width5 {
  width: 5% !important;
}
.u-width10 {
  width: 10% !important;
}
.u-width15 {
  width: 15% !important;
}
.u-width20 {
  width: 20% !important;
}
.u-width25 {
  width: 25% !important;
}
.u-width30 {
  width: 30% !important;
}
.u-width35 {
  width: 35% !important;
}
.u-width40 {
  width: 40% !important;
}
.u-width45 {
  width: 45% !important;
}
.u-width50 {
  width: 50% !important;
}
.u-width55 {
  width: 55% !important;
}
.u-width60 {
  width: 60% !important;
}
.u-width65 {
  width: 65% !important;
}
.u-width70 {
  width: 70% !important;
}
.u-width75 {
  width: 75% !important;
}
.u-width80 {
  width: 80% !important;
}
.u-width85 {
  width: 85% !important;
}
.u-width90 {
  width: 90% !important;
}
.u-width95 {
  width: 95% !important;
}
.u-width100 {
  width: 100% !important;
}

/* ----------------------------------------------------------------------
 * - GLOBAL -
 * ---------------------------------------------------------------------- */
.g-body:before {
  background: #231815;
  content: "";
  display: block;
  width: 100%;
  height: 3px;
  position: absolute;
  top: 0;
  z-index: 9999;
}
.g-wrapper {
  overflow: hidden;
  position: relative;
  display: block;
  -webkit-animation-name: wrapperbg;
  animation-name: wrapperbg;
  -webkit-animation-duration: 3s;
  animation-duration: 3s;
  opacity: 1;
}
@keyframes wrapperbg {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes wrapperbg {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* .g-body.bath,.g-body.breakfast,.g-body.service,.g-body.stay,.g-body.topics,
.g-body.access {
	background: url(../../img/common/bg.png) no-repeat right bottom;
 background-size: 620px auto;
} */

.g-footerWrap {
  background-image: url(../../img/common/bg.png);
  background-repeat: no-repeat;
  background-position: right bottom;
  background-size: 400px auto;
  background-color: #ffffff;
}

@media screen and (max-width: 480px) {
  .g-footerWrap {
    background-size: contain;
  }
}
.g-container {
  /*background: url(../../img/common/bg.png) no-repeat right bottom;
 background-size: 620px auto;*/
  width: 100%;
  position: relative;
  margin: 0;
  padding: 0 0 60px 0;
  z-index: 0;
}
.g-content {
  margin-top: 80px;
}
.is-topicsHome .g-content {
  margin-top: 35px;
}
.is-topicsArticle .g-content {
  margin-top: 0;
}
.g-content-inner {
  padding-left: 246px;
}
.is-topicsArticle .g-content-inner {
  padding-left: 0;
}

/* ------------------------------------------------------------------------------------------------
 * Breadcrumb
 * ------------------------------------------------------------------------------------------------ */
.g-breadcrumb {
  width: 100%;
  min-width: 1000px;
  padding: 0 60px;
  justify-content: flex-end;
  position: absolute;
  top: 120px;
  left: 0;
}
.g-breadcrumb__item {
  font-size: 1.2rem;
  padding-right: 0.25em;
}
.g-breadcrumb__item:after {
  content: "＞";
  color: #999;
  font-weight: 700;
  display: inline-block;
  transform: scaleX(0.5);
}
.g-breadcrumb__item:last-of-type:after {
  display: none;
}
.g-breadcrumb__item a:visited {
  color: #999;
}

/* ----------------------------------------------------------------------
 * HEADER
 * ---------------------------------------------------------------------- */
.g-header {
  color: #fff;
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  /*height: 100vh;*/
  z-index: 100;
}
@media screen and (max-width: 768px){
  .g-header{
    top: auto;
    bottom: 0;
  }
  .g-header::before{
    background: #231815;
    content: "";
    display: block;
    width: 100%;
    height: 3px;
    position: absolute;
    top: 0;
    z-index: 1;
  }
}
.g-header_inner {
  display: table;
  table-layout: fixed;
  width: 100%;
}
@media screen and (max-width: 768px){
  .g-header_inner{
    position: relative;
    bottom: 100vh;
  }
}
.g-header_book {
  display: block;
  position: absolute;
  top: 30px;
  left: 0;
  bottom: 0;
}
.g-header_book-item {
  display: block;
}
.g-header_book-btn a {
  color: #ffffff;
  font-size: 1.1vw; /*14px*/
  letter-spacing: 0.27em;
  background: #221814;
  display: block;
  padding: 1.2em 2.5em;
  box-sizing: border-box;
}
.g-header_book-txt {
  color: #221814;
  font-size: 0.8vw; /*10px*/
  letter-spacing: 0.075em;
  text-align: center;
  display: block;
  margin-top: 1em;
}
.g-header_nav,
.g-header_aside {
  position: absolute;
  top: 0;
}
.g-header_nav {
  font-size: 0.95vw; /*12px*/
  right: 0;
  min-width: 400px;
  width: 31vw;
  -webkit-transition: all 0.8s cubic-bezier(0.75, 0, 0.35, 1);
  transition: all 0.8s cubic-bezier(0.75, 0, 0.35, 1);
  visibility: hidden;
  opacity: 0;
  z-index: -1;
}
.is-menu_open .g-header_nav {
  color: #231815;
  background: #fff;
  height: 100vh;
  visibility: visible;
  opacity: 1;
  z-index: 999;
}
.g-header_trigger {
  background: #221814;
  position: absolute;
  top: 0;
  right: 0;
  width: 60px;
  height: 60px;
  cursor: pointer;
  z-index: 9999;
}
.g-header.is-menu_open .g-header_trigger {
  border-color: transparent;
}
.g-header[data-reversal="white"] .g-header_trigger {
  border-color: #ccc;
}
.g-header[data-reversal="white"].is-menu_open .g-header_trigger {
  border-color: transparent;
}
.g-header_trigger-line_wrap {
  width: 100%;
  height: 100%;
  -webkit-transition: all 0.8s cubic-bezier(0.75, 0, 0.35, 1);
  transition: all 0.8s cubic-bezier(0.75, 0, 0.35, 1);
  transform: rotate(-90deg);
}
.g-header_trigger-line {
  animation: liner 5000ms infinite;
  position: absolute;
  background-color: #fff;
  overflow: hidden;
  width: 20px;
  height: 1px;
  left: 0;
  transition: all 400ms ease-out 0ms;
}


.g-header_trigger-line--type_top {
  bottom: 38px;
  left: 25px;
  animation-delay: 0.33s;
}
/* @media screen and (min-width: 1px) and (max-width: 1023px){
  .g-header_trigger-line--type_top{
    bottom: 33px;
    left: 28px;
  }
} */
.g-header.is-menu_open .g-header_trigger-line--type_top {
  top: 28px;
  transform: rotate(-45deg);
  animation: none;
  left: 25px;
}
/* @media screen and (min-width: 1px) and (max-width: 1023px){
  .g-header.is-menu_open .g-header_trigger-line--type_top{
    top: 25px;
  }
} */

.g-header_trigger-line--type_middle {
  bottom: 30px;
  left: 25px;
  animation-delay: 0s;
}
/* @media screen and (min-width: 1px) and (max-width: 1023px){
  .g-header_trigger-line--type_middle{
    bottom: 25px;
    left: 28px;
  }
} */
.g-header.is-menu_open .g-header_trigger-line--type_middle {
  opacity: 0;
  animation: none;
}

.g-header_trigger-line--type_bottom {
  bottom: 22px;
  left: 25px;
  animation-delay: 0.66s;
}
/* @media screen and (min-width: 1px) and (max-width: 1023px){
  .g-header_trigger-line--type_bottom{
    bottom: 17px;
    left: 28px;
  }
} */
.g-header.is-menu_open .g-header_trigger-line--type_bottom {
  top: 28px;
  left: 25px;
  transform: rotate(-135deg);
  animation: none;
}
/* @media screen and (min-width: 1px) and (max-width: 1023px){
  .g-header.is-menu_open .g-header_trigger-line--type_bottom {
    top: 25px;
  }
} */
.g-header_cover {
  display: none;
  visibility: hidden;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: #ffffff;
  opacity: 0;
  z-index: 1;
  -webkit-transition: all 0.8s cubic-bezier(0.75, 0, 0.35, 1);
  transition: all 0.8s cubic-bezier(0.75, 0, 0.35, 1);
}
.g-header_trigger:after {
  content: "MENU";
  font-family: "Imprima", sans-serif;
  font-size: 8px;
  line-height: 1;
  text-align: center;
  display: block;
  width: 100%;
  position: absolute;
  bottom: 1em;
}
.g-header_trigger.is-menu_ready.is-menu_open:after {
  content: "CLOSE";
}
.g-header.is-menu_open .g-header_cover {
  visibility: visible;
  opacity: 1;
}

.g-headerNav_frame {
  height: 100vh;
  padding: 0;
  position: relative;
  display: flex;
  /*justify-content: center;*/
  align-items: center;
  flex-wrap: wrap;
}
.g-headerNav_items_wrap {
  width: 60%;
  margin: 0 auto;
}
.g-headerNav_item {
  vertical-align: middle;
  position: relative;
  margin: 2em 0 0;
}
.g-headerNav_item:first-child a {
  margin-top: 0;
}
.g-headerNav_item:nth-child(1) .g-headerNav_box {
  width: 5em;
}
.g-headerNav_item:nth-child(2) .g-headerNav_box {
  width: 6em;
}
.g-headerNav_item:nth-child(3) .g-headerNav_box {
  width: 7em;
}
.g-headerNav_item:nth-child(4) .g-headerNav_box {
  width: 13em;
}
.g-headerNav_item:nth-child(5) .g-headerNav_box {
  width: 9em;
}
.g-headerNav_item:nth-child(6) .g-headerNav_box {
  width: 4em;
}
.g-headerNav_item:nth-child(7) .g-headerNav_box {
  width: 11em;
}
.g-headerNav_item > a {
  text-decoration: none;
  transition: none;
}
.g-headerNav_address {
  margin-top: 1.8em;
}
.g-headerNav_address .e-text {
  letter-spacing: 0.05em;
  line-height: 2;
}
.g-headerNav_address .e-text small {
  font-size: 90%;
}
.g-headerNav_address .e-text .u-linkLine a {
  font-size: 0.85em;
}
.g-headerNav_address .e-text .u-linkLine a:after {
  bottom: 0;
}
.g-headerNav_links {
  margin-top: 1.8em;
}
.g-headerNav_links .g-headerNav_link > a {
  font-size: 0.95vw;
  margin-top: -1px;
  padding: 1.2em 0;
}
.g-headerNav_box {
  display: inline-block;
  position: relative;
}
@media screen and (min-width: 1px) and (max-width: 1024px) {
  .g-headerNav_box {
    display: block;
  }
}
.g-headerNav_box:before {
  content: "";
  display: none;
  position: absolute;
  top: -15px;
  left: 0;
  right: 0;
  width: 10px;
  height: 10px;
  margin: auto;
}
.g-headerNav_item.is-focus_active .g-headerNav_box:before {
  display: block;
}
.g-headerNav_name {
  display: block;
  font-weight: bold;
  letter-spacing: 0.32em;
  -webkit-transition: all 0.3s cubic-bezier(0.75, 0, 0.35, 1);
  transition: all 0.3s cubic-bezier(0.75, 0, 0.35, 1);
}
.g-headerNav_box .e-nohover {
  font-size: 1.3vw; /*16px*/
  line-height: 30px;
}
.g-headerNav_box .e-hover {
  font-size: 1.1vw; /*14px*/
  line-height: 30px;
}
.g-headerNav_box .e-hover {
  display: none;
}
.g-headerNav_box:hover .e-nohover {
  display: none;
}
.g-headerNav_box:hover .e-hover {
  display: inline;
}
.g-headerNav_child {
  visibility: hidden;
  display: block;
  position: absolute;
  top: 55px;
  left: 15px;
  width: 140px;
  opacity: 0;
  z-index: 2;
  -webkit-transition: all 0.8s cubic-bezier(0.75, 0, 0.35, 1);
  transition: all 0.8s cubic-bezier(0.75, 0, 0.35, 1);
}
.g-headerNav_item:hover .g-headerNav_child {
  visibility: visible;
  opacity: 1;
}
.g-headerNav_child-items {
  display: block;
}
.g-headerNav_child-item {
  display: block;
  border-top: solid 1px #dadada;
}
.g-headerNav_child-item:first-child {
  border-top: none;
}
.g-headerNav_child-item a {
  text-decoration: none;
}
.g-headerNav_child-box {
  display: table;
  width: 100%;
  padding: 10px 15px;
  background: #fff;
  color: #221814;
}
.g-headerNav_child-box:hover,
.g-headerNav_child-item.is-focus_active .g-headerNav_child-box {
  background-color: #231815;
  color: #fff;
}
.g-headerNav_child-box:before {
  content: "";
  display: none;
  position: absolute;
  top: 0.45em;
  left: 0;
  width: 5px;
  height: 1px;
  background: #fff;
}
.g-headerNav_child-name {
  display: block;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 0em;
  line-height: 1.4;
}
.g-headerNav2 {
  display: block;
  position: relative;
}
.g-headerNav2_items {
  letter-spacing: -0.5em;
}
.g-headerNav2_items_wrap {
  position: absolute;
  right: 25px;
  bottom: 15px;
}
.g-headerNav2_item {
  display: inline-block;
  letter-spacing: 0;
  margin-left: 20px;
}
.g-headerNav2_item:first-child {
  margin-left: 0;
}
.g-headerNav2_parent-name {
  display: block;
  color: #888;
  letter-spacing: 0.12em;
  line-height: 2;
  -webkit-transition: all 1.2s cubic-bezier(0.75, 0, 0.35, 1);
  transition: all 1.2s cubic-bezier(0.75, 0, 0.35, 1);
}
.g-headerNav2_parent-name:hover {
  color: #cbcbcb;
}
.g-headerNav2_child {
  visibility: hidden;
  display: block;
  min-width: 100px;
  position: absolute;
  right: 0;
  bottom: 2em;
  margin: 0 0 10px;
  opacity: 0;
  -webkit-transition: all 0.8s cubic-bezier(0.75, 0, 0.35, 1);
  transition: all 0.8s cubic-bezier(0.75, 0, 0.35, 1);
}
.g-headerNav2_child-items {
  background: #ffffff;
  border: 1px solid #d4d3d2;
  white-space: nowrap;
}
.g-headerNav2_child-item > a {
  color: #888;
  border-top: 1px solid #d4d3d2;
  display: block;
  padding: 10px 20px;
}
.g-headerNav2_child-item > a:hover {
  background: #f7f7f7;
}
.g-headerNav2_child-item:first-child > a {
  border-top: none;
}
.g-headerNav2_child-name {
  font-size: 0.8vw; /*10px*/
  font-weight: 100;
}
.g-headerNav2_box {
  display: block;
  position: relative;
  cursor: pointer;
}
.g-headerNav2_box:hover .g-headerNav2_child {
  visibility: visible;
  opacity: 1;
}
@keyframes liner {
  0% {
    width: 25%;
  }
  10% {
    width: 20%;
  }
  20% {
    width: 30%;
  }
  30% {
    width: 10%;
  }
  40% {
    width: 20%;
  }
  50% {
    width: 12%;
  }
  60% {
    width: 20%;
  }
  70% {
    width: 10%;
  }
  80% {
    width: 30%;
  }
  90% {
    width: 15%;
  }
  100% {
    width: 25%;
  }
}

/* ----------------------------------------------------------------------
 * GLOBAL NAVI
 * ---------------------------------------------------------------------- */

/* ----------------------------------------------------------------------
 * FOOTER
 * ---------------------------------------------------------------------- */
.g-footer {
}
.g-footer_logo {
  line-height: 0;
}
.g-footer_nav {
  padding: 240px 55px 0;
}
.g-footer_menu {
  text-align: right;
  margin-top: 40px;
}
.g-footer_menu ul {
  letter-spacing: -0.5em;
}
.g-footer_menu ul li {
  letter-spacing: 0;
  display: inline-block;
  margin-left: 20px;
}
.g-footer_menu ul li:first-child {
  margin-left: 0;
}
.g-footer_menu ul li a {
  font-size: 1.2rem;
  letter-spacing: 0.18em;
  display: inline-block;
}
.g-footer_copyright {
  color: #fff;
  font-size: 0.9rem;
  background: #231815;
  padding: 20px 0;
}

/* ----------------------------------------------------------------------
 * MODAL
 * ---------------------------------------------------------------------- */
.is-modal_active body {
  height: 100vh !important;
  overflow: hidden !important;
}
.is-modal_active .fullpage {
  transform: none !important;
}
.g-modal {
  background: rgba(255, 255, 255, 0.98);
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  padding: 70px 0 90px;
  transition: 0.4s;
  -webkit-transition: all 1.2s cubic-bezier(0.75, 0, 0.35, 1);
  transition: all 1.2s cubic-bezier(0.75, 0, 0.35, 1);
  -webkit-transition-duration: 0.75s;
  transition-duration: 0.75s;
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
  opacity: 0;
  visibility: hidden;
  z-index: 1000;
}
.g-modal.g-modal--cover_black {
  background-color: rgba(0, 0, 0, 0.75);
}
.g-modal.is-modal_active {
  opacity: 1;
  visibility: visible;
  z-index: 10000;
  -webkit-transform: scale(1);
  transform: scale(1);
}
.g-modal_inner {
  overflow-y: auto;
  height: calc(100vh - 70px - 90px);
}
.g-modal_contents .g-modal_content {
  left: 15px;
  right: 15px;
  height: calc(100vh - (70px * 2));
  padding: 90px;
  background-color: #fff;
}
.g-modal_contents {
  display: block;
  position: relative;
  height: 100%;
  z-index: 2;
}
.g-modal_content {
  overflow-y: auto;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  max-height: calc(100vh - (70px * 2));
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.g-modal_head {
  display: block;
  text-align: center;
}
.g-modal_title {
  display: block;
  font-size: 30px;
  font-size: 3rem;
  font-weight: 400;
  letter-spacing: 0.15em;
  line-height: 1.5;
}
.g-modal_lead {
  display: block;
  margin: 20px 0 0;
  font-size: 14px;
  font-size: 1.4rem;
  /*font-weight: 400;*/
  letter-spacing: 0.15em;
  line-height: 1.8;
}
.g-modal_button {
  position: absolute;
  top: 0;
  right: 0;
  background: #f5f5f5;
  background-color: #222;
  width: 54px;
  height: 54px;
  cursor: pointer;
  -webkit-transition: all 0.8s cubic-bezier(0.75, 0, 0.35, 1);
  transition: all 0.8s cubic-bezier(0.75, 0, 0.35, 1);
  z-index: 3;
}
.g-modal_button:hover {
  background-color: #f5f5f5;
}
.g-modal_button:hover:before,
.g-modal_button:hover:after {
  background-color: rgba(34, 34, 34, 0.5);
}
.g-modal_button:before,
.g-modal_button:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 50%;
  height: 1px;
  background: #fff;
  -webkit-transition: all 0.8s cubic-bezier(0.75, 0, 0.35, 1);
  transition: all 0.8s cubic-bezier(0.75, 0, 0.35, 1);
}
.g-modal_button:before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.g-modal_button:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.g-modal--cover_black .g-modal_button {
  background-color: #fff;
}
.g-modal--cover_black .g-modal_button:before,
.g-modal--cover_black .g-modal_button:after {
  background-color: rgba(44, 44, 44, 0.5);
}
.g-modal--cover_black .g-modal_button:hover {
  background-color: #2c2c2c;
}
.g-modal--cover_black .g-modal_button:hover:before,
.g-modal--cover_black .g-modal_button:hover:after {
  background-color: #fff;
}
.g-modal_cover {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  /*cursor: pointer;*/
  z-index: 0;
}
.g-modal_child {
  display: block;
}

/* kids */

/* gridModal */
.c-gridModal.g-modal {
  background: none;
}
.c-gridModal .g-modal_content {
  width: 80%;
  max-width: 1080px !important;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: 0 auto;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.c-gridModal .g-modal_child_inner {
  background: #fff;
  border-radius: 5px;
  -webkit-box-shadow: 12px 12px 54px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 12px 12px 54px rgba(0, 0, 0, 0.1);
  box-shadow: 12px 12px 54px rgba(0, 0, 0, 0.1);
  padding: 75px 95px 55px;
}
.c-gridModal .g-modal_pager {
  width: 80%;
  max-width: 1080px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: 0 auto;
  transform: translate(-50%, -50%);
  z-index: 2;
}
.c-gridModal .g-modal_pager-arrow {
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  display: block;
  position: absolute;
  width: 20px;
  height: 20px;
  transition: 0.8s;
}
.c-gridModal .g-modal_pager-arrow:hover {
  opacity: 0.5;
}
.c-gridModal .g-modal_pager-prev {
  background-image: url(../../img/common/arrow_b_left_black.png);
  left: 40px;
}
.c-gridModal .g-modal_pager-next {
  background-image: url(../../img/common/arrow_b_right_black.png);
  right: 40px;
}
.c-gridModal .g-modal_pager-box.is-modal_active {
  display: block;
  visibility: visible;
  position: static;
  opacity: 1;
  width: 20px;
  height: 20px;
}
.c-gridModal_block {
  display: table;
  table-layout: fixed;
  width: 100%;
}
.c-gridModal_img {
  line-height: 0;
  display: table-cell;
  vertical-align: middle;
}
.c-gridModal_text {
  display: table-cell;
  vertical-align: middle;
  padding-left: 60px;
}
.c-gridModal_text .e-category {
  color: #888;
  font-size: 1.1rem;
  font-weight: 200;
  line-height: 27px;
  text-align: center;
  display: inline-block;
  margin-bottom: 15px;
  padding: 0 2.5em;
  position: relative;
}
.c-gridModal_text .e-category:before,
.c-gridModal_text .e-category:after {
  background: #fff;
  border: 1px solid #d4d3d2;
  content: "";
  display: inline-block;
  width: 100%;
  height: 27px;
  position: absolute;
}
.c-gridModal_text .e-category:before {
  left: 2px;
  top: 2px;
}
.c-gridModal_text .e-category:after {
  left: 0;
  top: 0;
}
.c-gridModal_text .e-category span {
  position: relative;
  z-index: 1;
}
.c-gridModal_close {
  font-size: 1.4rem;
  letter-spacing: 0.27em;
  text-align: center;
  display: block;
  width: 100%;
  margin-top: 40px;
}
.c-gridModal_close p {
  display: inline-block;
  padding-left: 2em;
  position: relative;
  cursor: pointer;
}
.c-gridModal_close p:before,
.c-gridModal_close p:after {
  background: #221814;
  content: "";
  display: block;
  height: 1px;
  width: 20px;
  position: absolute;
  bottom: 9px;
  left: 0;
}
.c-gridModal_close p:before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.c-gridModal_close p:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

/* ----------------------------------------------------------------------
 * - COMPONENT -
 * ---------------------------------------------------------------------- */
/* section */
.c-section {
  margin-bottom: 120px;
}
.c-section.__mgb70 {
  margin-bottom: 70px;
}
.c-section:last-child {
  margin-bottom: 0;
}
.c-section_block {
  margin-bottom: 60px;
}
.c-section_block--1 {
  margin-bottom: 30px;
}
.c-section_block--2 {
  margin-bottom: 130px;
}
.c-section_block--0 {
  margin-bottom: 0;
}
.c-section_name {
  text-align: right;
}
.c-section_name span {
  color: #fff;
  font-size: 1.8rem;
  letter-spacing: 0.08em;
  line-height: 2.5em;
  background: #231815;
  display: inline-block;
  margin: 0 -35px 55px 0;
  padding: 0 1.5em;
}
.c-section_img {
  line-height: 0;
  margin-bottom: 30px;
}
.c-section_title {
  font-weight: bold;
  font-size: 1.8rem;
  letter-spacing: 0.16em;
  line-height: 1.8;
  margin-bottom: 15px;
}
.c-section_subTitle {
  font-weight: bold;
  font-size: 1.4rem;
  letter-spacing: 0.18em;
  line-height: 1.8;
  margin-bottom: 10px;
}
.c-section_text {
  font-size: 1.3rem;
  letter-spacing: 0.18em;
  line-height: 2;
  margin-bottom: 20px;
  position: relative;
}
.c-section_note {
  font-size: 1.2rem;
  letter-spacing: 0.18em;
  line-height: 1.9;
  margin-bottom: 20px;
}
.c-section_slide {
  margin-bottom: 40px;
}

/* column */
.c-column {
  letter-spacing: -0.5em;
  margin: 0 -18px;
}
.c-column_block {
  letter-spacing: 0;
  display: inline-block;
  vertical-align: top;
  width: 50%;
  margin-bottom: 50px;
  padding: 0 18px;
}
.c-column_box {
  margin-bottom: 30px;
}

/* thumbColumn */
.c-thumbColumn {
  letter-spacing: -0.5em;
  margin: 0 -18px;
}
.c-thumbColumn_block {
  letter-spacing: 0;
  display: inline-block;
  vertical-align: top;
  width: 50%;
  margin-bottom: 50px;
  padding: 0 18px;
  position: relative;
}
.c-thumbColumn_box {
  margin-bottom: 30px;
}
.c-thumbColumn .c-section_slide {
  position: relative;
  margin-bottom: 25px;
}
.c-thumbColumn_icon {
  font-size: 1.4rem;
  text-align: center;
  line-height: 1.5;
  background: #fff;
  border-radius: 100%;
  display: table;
  width: 95px;
  height: 95px;
  position: absolute;
  right: 15px;
  top: -50px;
}
.c-thumbColumn_icon span {
  display: table-cell;
  vertical-align: middle;
}

/* table */
.c-table {
  line-height: 2.5;
}
.c-table_wrap {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 15px;
}
.c-table_wrap .c-table:first-child {
  margin-right: 75px;
}
.c-table th,
.c-table td {
  text-align: left;
  vertical-align: top;
}
.c-table th {
  font-weight: normal;
  /*white-space: nowrap;*/
  padding-right: 1em;
}

/* grid */
.c-grid_items {
  letter-spacing: -0.5em;
  margin: 0 -17px;
}
.c-grid_item {
  display: inline-block;
  letter-spacing: 0;
  width: 25%;
  padding: 0 17px 34px;
}
.c-grid_item a {
  line-height: 0;
  display: block;
  position: relative;
  background: rgba(35, 24, 21, 1);
  transition: 0.8s;
}
.c-grid_item a .e-text {
  color: #fff;
  font-size: 1.3rem;
  letter-spacing: 0.15em;
  line-height: 1.5;
  text-align: center;
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  opacity: 0;
  transition: 0.8s;
  z-index: 1;
}
.c-grid_item a:hover .e-text {
  opacity: 1;
}
.c-grid_item a:hover img {
  opacity: 0.2;
}
.c-grid_item a:before,
.c-grid_item a:after {
  background: #fff;
  content: "";
  display: block;
  height: 1px;
  width: 13px;
  opacity: 0;
  position: absolute;
  bottom: 15px;
  right: 12px;
}
.c-grid_item a:after {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}
.c-grid_item a:hover:before,
.c-grid_item a:hover:after {
  opacity: 1;
}

/* mv */
.c-mv {
  position: relative;
  line-height: 0;
}
.c-mv_text {
  font-size: 3.15vw; /*40px*/
  letter-spacing: 0.15em;
  line-height: 1;
  position: absolute;
  bottom: 15px;
  right: 15px;
  mix-blend-mode: overlay;
}
_:-ms-input-placeholder,
:root .c-mv_text {
  /*IE*/
  opacity: 0.2;
}
_:-ms-lang(x)::backdrop,
.c-mv_text {
  /*Edge*/
  opacity: 0.2;
}

/* about */
.c-about {
  position: relative;
  height: 370px;
  padding-top: 50px;
}
.is-topicsHome .c-about {
  height: 335px;
}
.c-about_block {
  /*position: relative;*/

  display: flex;
  justify-content: space-between;
  max-width: 1160px;
  margin: auto;

  /*clear: both;
width: 100%;
box-sizing: border-box;*/
}
.is-stay .c-about_block,
.is-access .c-about_block {
  padding: 0 50px 0 40px;
}
.is-service .c-about_block {
  padding: 0 50px 0 0px;
}
.c-about_title {
  text-align: left;
  /*float: left;*/
  position: relative;
  width: 40%;
}
/*.is-topicsHome .c-about_title {
 margin-left: 40px;
}*/
.c-about_inner:before {
  display: block;
  content: "";
  background: rgba(34, 23, 20, 0.4);
  height: 1px;
  width: 300px;
  position: absolute;
  left: 140px;
  top: -30px;
  -webkit-transform: rotate(35deg);
  transform: rotate(35deg);
}
.c-about_title .e-en {
  font-size: 6.1rem;
  font-weight: bold;
  letter-spacing: 0.32em;
  line-height: 1;
  display: block;
}
.c-about_title .e-jp {
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.25em;
  line-height: 3;
  display: block;
}
.c-about_text_wrap {
  /*float: right;*/
  height: 310px;
  width: 50%;
  padding-top: 0.4em;
  width: 80%;
  position: relative;
}
.c-about_text {
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  line-height: 4.4;
  position: absolute;
  z-index: 1;
  right: 0;
  top: 0;
}
.c-about_text .e-title {
  font-size: 4rem;
  letter-spacing: 0.08em;
  line-height: 2;
  display: inline-block;
  padding: 0 30px;
}
.c-about_text > span > span {
  animation: txtfadeAnim 1s ease both;
}
@keyframes txtfadeAnim {
  0% {
    opacity: 0;
    text-shadow: 0 0 1px rgba(255, 255, 255, 0.1);
  }
  30% {
    text-shadow: 0 0 10px rgba(255, 255, 255, 1),
      0 0 20px rgba(255, 255, 255, 1), 0 0 50px rgba(255, 255, 255, 1),
      0 0 100px rgba(255, 255, 255, 1), 0 0 150px rgba(255, 255, 255, 1),
      0 0 200px rgba(255, 255, 255, 1);
  }
  100% {
    opacity: 1;
    text-shadow: 0 0 0 rgba(255, 255, 255, 0);
  }
}
.c-about_text > span > .is-number_0 {
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
}
.c-about_text > span > .is-number_1 {
  -webkit-animation-delay: 1.2s;
  animation-delay: 1.2s;
}
.c-about_text > span > .is-number_2 {
  -webkit-animation-delay: 1.4s;
  animation-delay: 1.4s;
}

/* sideNav */
.c-sideNav {
  font-size: 1.6rem;
  letter-spacing: 0.08em;
  line-height: 2;
  height: 100vh;
  position: absolute;
  top: 140px;
  z-index: 1;
  left: 4.7%;
  left: 1.7%;
  /*left: auto;*/
}
.stay .c-sideNav,
.access .c-sideNav {
  left: 4.7%;
}
.c-sideNav.fixed {
  position: fixed;
  top: 130px;
  z-index: 2;
  left: initial;
}
.stay .c-sideNav.fixed,
.access .c-sideNav.fixed {
  left: initial;
}
_::-webkit-full-page-media,
_:future,
:root .c-sideNav.fixed {
  left: 4.7%;
}
.c-sideNav ul {
  vertical-align: top;
  display: inline-block;
  margin-bottom: 20px;
}
.c-sideNav li a {
  display: inline-block;
  padding-bottom: 1.5em;
  padding-top: 1.75em;
  position: relative;
  margin: 0 10px;
}
.c-sideNav li a:hover,
.c-sideNav.fixed li a.is-current {
  color: #fff;
  background: #231815;
}
.c-sideNav li.is-tab_active a {
  color: #fff;
  background: #231815;
}
.c-sideNav li a:before {
  background: #231815;
  content: "";
  display: inline-block;
  height: 0.5em;
  width: 1px;
  position: absolute;
  top: 0.25em;
  left: 50%;
}
.c-sideNav_anchor {
  margin-top: -130px;
  padding-top: 130px;
}

/* accordion */
.c-accordion {
  min-height: 40px;
  position: relative;
}
.c-accordion_trigger {
  line-height: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.c-accordion_trigger-box {
  border: solid 1px #221814;
  display: inline-block;
  width: 40px;
  height: 40px;
  position: relative;
  z-index: 1;
}
.c-accordion_trigger-box:before,
.c-accordion_trigger-box:after {
  background: #221814;
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 13px;
  width: 13px;
  height: 1px;
}
.c-accordion_trigger-box:after {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}
.is-accordion_open .c-accordion_trigger-box:after {
  display: none;
}
.c-accordion_slide {
  position: relative;
  padding-top: 20px;
}

.c-accordion_slide__art {
  padding-top: 50px;
}

/* thumbOver */
.c-thumbOver {
  display: block;
}
.c-thumbOver_items {
  display: block;
  margin: -7.5px;
  letter-spacing: -0.5em;
}
.c-thumbOver_item {
  display: inline-block;
  vertical-align: top;
  width: 33.3%;
  padding: 7.5px;
  letter-spacing: 0;
}
.c-thumbOver_box {
  display: block;
  position: relative;
  cursor: pointer;
}
.c-thumbOver_over {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(255, 255, 255, 0.9);
  border: solid 1px #ccc;
  opacity: 0;
  z-index: 2;
  -webkit-transition: all 0.8s cubic-bezier(0.75, 0, 0.35, 1);
  transition: all 0.8s cubic-bezier(0.75, 0, 0.35, 1);
}
.c-thumbOver_box:hover .c-thumbOver_over {
  opacity: 1;
}
.c-thumbOver_cells {
  display: table;
  width: 100%;
  height: 100%;
}
.c-thumbOver_cell {
  display: table-cell;
  vertical-align: middle;
  padding: 0 25px;
  -webkit-transition: all 0.8s cubic-bezier(0.75, 0, 0.35, 1);
  transition: all 0.8s cubic-bezier(0.75, 0, 0.35, 1);
  -webkit-transform: translateY(10px);
  transform: translateY(10px);
}
.c-thumbOver_box:hover .c-thumbOver_cell {
  -webkit-transform: translateY(0px);
  transform: translateY(0px);
}
.c-thumbOver_thumb {
  display: block;
  position: relative;
  line-height: 0;
  z-index: 1;
}
.c-thumbOver_thumb img {
  width: 100%;
}
.c-thumbOver_title {
  display: block;
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: 0.15em;
  line-height: 1.5;
  text-align: center;
}
.c-thumbOver_sub {
  display: block;
  margin: 5px 0 0;
  color: #ccc;
  font-size: 1.4rem;
  font-weight: 400;
  letter-spacing: 0.15em;
  line-height: 1.5;
  text-align: center;
}
.c-thumbOver_lead {
  display: block;
  margin: 10px 0 0;
  font-size: 1.4rem;
  font-weight: 200;
  letter-spacing: 0.15em;
  line-height: 1.5;
  text-align: center;
}

/* ----------------------------------------------------------------------
 * FANCYBOX
 * ---------------------------------------------------------------------- */
/*.is-kumamoto .fancybox-slide--html {
 padding: 0;
}
.is-kumamoto .fancybox-content {
 background: #fff;
 border-radius: 5px;
 width: 80%;
 max-width: 1080px !important;
 margin: 0 auto;
 -webkit-box-shadow: 12px 12px 54px rgba(0, 0, 0, 0.1);
 -moz-box-shadow: 12px 12px 54px rgba(0, 0, 0, 0.1);
 box-shadow: 12px 12px 54px rgba(0, 0, 0, 0.1);
 background-color: rgba(0, 0, 0, 0.1);
 padding: 70px 90px 60px;
 z-index: 0;
}
.is-kumamoto .fancybox-stage {
 z-index: 0;
}
.is-kumamoto .fancybox-bg {
 background: none;
}
.is-kumamoto .fancybox-button.fancybox-close-small {
 display: none;
}*/

/* ----------------------------------------------------------------------
 * SLICK
 * ---------------------------------------------------------------------- */
.slick-initialized {
  display: block;
}
.slick-list,
.slick-track,
.slick-slide > div {
  height: 100%;
  line-height: 0;
}

/* Dots */
.slick-dots {
  line-height: 0;
  position: absolute;
  right: 24px;
  top: 50%;
  transform: translateY(-50%);
  display: block;
  width: 7px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: left;
  
}
@media screen and (max-width: 768px){
  .slick-dots{
    width: 100%;
  }
}

.slick-dots li {
  position: relative;
  display: inline-block;
  width: 7px;
  height: 7px;
  margin: 0 0 8px 0;
  padding: 0;
  cursor: pointer;
}
@media screen and (max-width: 768px){
  .slick-dots li{
    margin: 0 8px 0 0;
  }
}
.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 7px;
  height: 7px;
  padding: 0;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
}
.slick-dots li button:hover,
.slick-dots li button:focus {
  outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
  opacity: 1;
}
.slick-dots li button:before {
  border: 1px solid #fff;
  border-radius: 100%;
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 7px;
  height: 7px;
  content: "";
  text-align: left;
  opacity: 1;
  color: black;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before {
  background: #fff;
  opacity: 1;
}

/*is-topics*/
.is-topics .slick-dots li button:before {
  border: 1px solid #231815;
}
.is-topics .slick-dots li.slick-active button:before {
  background: #231815;
}

/* ----------------------------------------------------------------------
 * OTHER
 * ---------------------------------------------------------------------- */
#wovn-translate-widget {
  display: none !important;
}

/* ▼ link-bestrate */
.link-bestrate {
  margin-top: 5px;
}

.link-bestrate.section-btn a {
  font-size: 0.8vw;
}

.link-bestrate.u-linkLinebottom a {
  padding: 0 0.5em 10px 0;
}

/* ▼ 空室検索モーダル */
.g-reservation {
  display: block;
  padding: 70px 0 90px;
}
@media screen and (min-width: 1px) and (max-width: 1015px) {
  .g-reservation {
    padding: 45px 0 0;
  }
}
.g-reservation_title {
  display: block;
  font-size: 40px;
  font-size: 4rem;
  font-weight: 400;
  letter-spacing: 0.1em;
  line-height: 1.4;
  text-align: center;
}
@media screen and (min-width: 1px) and (max-width: 1015px) {
  .g-reservation_title {
    font-size: 28px;
    font-size: 2.8rem;
  }
}
.g-reservation_form {
  display: block;
  margin: 0;
  padding: 40px 60px 30px;
  border: solid 1px #dadada;
}
@media screen and (min-width: 1px) and (max-width: 1015px) {
  .g-reservation_form {
    /*margin-top: 30px;*/
    padding: 0;
    border: none;
  }
}
.g-reservation_form-block {
  display: block;
  margin: 20px -12.5px 0;
}
@media screen and (min-width: 1px) and (max-width: 1015px) {
  .g-reservation_form-block {
    margin: 10px 0 0;
  }
}
.g-reservation_form-block:first-child,
.g-reservation_form-block--type_first {
  margin-top: 0;
}
.g-reservation_form-cells {
  display: table;
  table-layout: fixed;
  width: 100%;
}
.g-reservation_form-cell {
  display: table-cell;
  vertical-align: middle;
  padding: 0 12.5px;
}
@media screen and (min-width: 1px) and (max-width: 1015px) {
  .g-reservation_form-cell {
    display: block;
    margin-top: 10px;
    padding: 0;
  }
}
@media screen and (min-width: 1px) and (max-width: 1015px) {
  .g-reservation_form-cell:first-child {
    margin-top: 0;
  }
}
.g-reservation_form-cell--size_submit {
  width: 300px;
}
@media screen and (min-width: 1px) and (max-width: 1015px) {
  .g-reservation_form-cell--size_submit {
    width: 100%;
  }
}
.g-reservation_form-column {
  display: block;
  margin: -2.5px;
}
@media screen and (min-width: 1px) and (max-width: 1015px) {
  .g-reservation_form-column {
    margin: 0 -5px;
  }
}
.g-reservation_form-grids {
  display: block;
  /*table-layout: fixed;*/
  width: 100%;
  margin-bottom: 20px;
}
.g-reservation_form-grid {
  display: block;
  vertical-align: middle;
  padding: 2.5px;
}
@media screen and (min-width: 1px) and (max-width: 1015px) {
  .g-reservation_form-grid {
    padding: 0 5px;
  }
}
.g-reservation_form-grid--size_head {
  width: 100%;
}
@media screen and (min-width: 1px) and (max-width: 1015px) {
  .g-reservation_form-grid--size_head {
    /*display: none;*/
  }
}
.g-reservation_form-head {
  display: block;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 400;
  letter-spacing: 0.15em;
  line-height: 1.4;
}
.g-reservation_form-text {
  display: block;
  font-size: 13px;
  font-size: 1.3rem;
  font-weight: 400;
  letter-spacing: 0.15em;
  line-height: 1.4;
}
.g-reservation_form-text a {
  position: relative;
  color: rgba(44, 44, 44, 0.8);
  text-decoration: none;
}
.g-reservation_form-text a:after {
  content: "";
  display: block;
  position: absolute;
  bottom: -0.1em;
  left: 0;
  right: 0;
  height: 1px;
  background: rgba(44, 44, 44, 0.8);
}
.g-reservation_form-text a:hover {
  opacity: 0.65;
}
.g-reservation_form-text a:hover:after {
  opacity: 0;
}
.g-reservation_form-label {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  margin: 0 0 0 20px;
  cursor: pointer;
}
@media screen and (min-width: 1px) and (max-width: 1015px) {
  .g-reservation_form-label {
    display: block;
    margin: 10px 0 0;
  }
}
.g-reservation_form-label:first-child {
  margin-left: 0;
}
.g-reservation_form-label_text {
  font-size: 13px;
  font-size: 1.3rem;
  font-weight: 400;
  letter-spacing: 0.15em;
  line-height: 1.4;
}
.g-reservation_form-select {
  display: block;
  position: relative;
  cursor: pointer;
}
.g-reservation_form-select:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 20px;
  width: 10px;
  background: url(../../img/common/arrow_b_down_black.png) no-repeat right
    center;
  background-size: 100% auto;
}
.g-reservation_form-check {
  padding: 0 0 0 27px;
}
.g-reservation_form-check_icon {
  display: block;
  position: absolute;
  top: -0.2em;
  left: 0;
  width: 20px;
  height: 20px;
  background: #f5f5f5;
  line-height: 0;
  border-radius: 20px;
}
.g-reservation_form-check_icon:before {
  content: "";
  display: block;
  position: absolute;
  top: 5px;
  left: 5px;
  width: 10px;
  height: 10px;
  background: #2c2c2c;
  border-radius: 10px;
  opacity: 0;
  -webkit-transition: all 0.8s cubic-bezier(0.75, 0, 0.35, 1);
  transition: all 0.8s cubic-bezier(0.75, 0, 0.35, 1);
}
.g-reservation_form-check input[type="radio"] {
  visibility: hidden;
  position: absolute;
}
.g-reservation_form-check
  input[type="radio"]:checked
  + .g-reservation_form-check_icon:before {
  opacity: 1;
}
.g-reservation_form-date {
  display: table;
  table-layout: fixed;
  width: 100%;
  letter-spacing: -0.5em;
}
.g-reservation_form-date > div {
  display: table-cell;
  vertical-align: middle;
  position: relative;
  width: 40%;
  letter-spacing: 0;
  cursor: pointer;
}
@media screen and (min-width: 1px) and (max-width: 1015px) {
  .g-reservation_form-date > div {
    width: 32%;
  }
}
.g-reservation_form-date > div:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 20px;
  width: 10px;
  background: url(../../img/common/arrow_b_down_black.png) no-repeat right
    center;
  background-size: 100% auto;
}
.g-reservation_form-date > div.dt_yyyymm {
  width: 60%;
  padding-right: 5px;
}
@media screen and (min-width: 1px) and (max-width: 1015px) {
  .g-reservation_form-date > div.dt_yyyymm {
    width: 68%;
    padding-right: 10px;
  }
}
.g-reservation_form-date > div.dt_yyyymm:after {
  right: 20px;
}
.g-reservation_form input[type="radio"],
.g-reservation_form select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.g-reservation_form select {
  display: block;
  position: relative;
  width: 100%;
  height: 50px;
  padding: 0.3em 15px 0.1em;
  background: #f5f5f5;
  font-size: 13px;
  font-size: 1.3rem;
  font-weight: 400;
  letter-spacing: 0.15em;
  line-height: 1.4;
  border-radius: 4px;
  cursor: pointer;
}
.g-reservation_form button {
  display: block;
  width: 100%;
  height: 55px;
  background: #2c2c2c;
  color: #fff;
  text-align: center;
  border-radius: 4px;
}
@media screen and (min-width: 1px) and (max-width: 1015px) {
  .g-reservation_form button {
    width: 100%;
  }
}
.g-reservation_form button:hover {
  background-color: #888;
}
.g-reservation_form button span {
  display: table;
  width: 100%;
  height: 100%;
}
.g-reservation_form button span b {
  display: table-cell;
  vertical-align: middle;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.15em;
  line-height: 1.4;
}
.g-reservation_bottom {
  overflow: hidden;
  display: block;
  margin: 50px 0 0;
}
@media screen and (min-width: 1px) and (max-width: 1015px) {
  .g-reservation_bottom {
    margin: 30px -15px 0;
    padding: 30px 15px;
    background: #f5f5f5;
  }
}
.g-reservation_bottom-cells {
  display: table;
  width: 100%;
  letter-spacing: -0.5em;
}
.g-reservation_bottom-cell {
  /*display: table-cell;*/
  vertical-align: top;
  /*padding: 0 0 0 40px;*/
  letter-spacing: 0;
  /*border-left: solid 1px #dadada;*/
}
@media screen and (min-width: 1px) and (max-width: 1015px) {
  .g-reservation_bottom-cell {
    display: block;
    padding-left: 0;
    border-left: none;
  }
}
.g-reservation_bottom-cell:first-child {
  border-left: none;
  /*padding-right: 40px;*/
  padding-left: 0;
}
.g-reservation_bottom-title {
  display: block;
  font-size: 18px;
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  line-height: 2;
}
.g-reservation_bottom-text {
  display: block;
  /*margin: 10px 0 0;*/
  font-size: 13px;
  font-size: 1.3rem;
  font-weight: 400;
  letter-spacing: 0.15em;
  line-height: 2;
}
.g-reservation_bottom-text a {
  position: relative;
  padding: 0 0 0 15px;
  background: url(../../img/common/arrow_b_right_black.png) no-repeat left
    center;
  background-size: 5px auto;
  color: rgba(44, 44, 44, 0.8);
  text-decoration: none;
}
.g-reservation_bottom-text a:after {
  content: "";
  display: block;
  position: absolute;
  bottom: -0.1em;
  left: 15px;
  right: 0;
  height: 1px;
  background: rgba(44, 44, 44, 0.8);
}
.g-reservation_bottom-text a:hover {
  opacity: 0.65;
}
.g-reservation_bottom-text a:hover:after {
  opacity: 0;
}
.g-reservation_bottom-link {
  display: block;
}
.g-reservation_button {
  display: block;
  margin: 10px 0 20px;
}
.g-reservation_button-items {
  display: block;
  margin: -5px;
  letter-spacing: -0.5em;
}

.g-reservation_button-item {
  display: inline-block;
  vertical-align: top;
  width: 50%;
  padding: 5px;
  letter-spacing: 0;
}
.g-reservation_button-item a {
  text-decoration: none;
}
.g-reservation_button-box {
  overflow: hidden;
  display: table;
  position: relative;
  width: 100%;
  height: 45px;
  background: #fff;
  text-align: center;
  border: solid 1px #dadada;
}
.g-reservation_button-box:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: auto;
  right: 0;
  width: 0%;
  background: #2c2c2c;
  z-index: 1;
}
.g-reservation_button-box:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  width: 5px;
  background: url(../../img/common/arrow_b_right_black.png) no-repeat right
    center;
  background-size: 100% auto;
  z-index: 2;
}
.g-reservation_bottom-cell_serch .g-reservation_button-box:after {
  background: url("../../img/common/arrow_b_right_white.png") no-repeat right
    center;
}
.g-reservation_button-box:hover {
  color: #fff;
}
.g-reservation_button-box:hover:before {
  right: auto;
  left: 0;
  width: 100%;
}
.g-reservation_button-box:hover:after {
  background-image: url(../../img/common/arrow_b_right_white.png);
}

.g-reservation_bottom-cell_serch .g-reservation_button-box {
  background: #222;
  color: #fff;
  border: solid 1px #222;
  padding: 20px 0;
}

.g-reservation_button-name {
  display: table-cell;
  vertical-align: middle;
  position: relative;
  font-size: 13px;
  font-size: 1.3rem;
  font-weight: 400;
  letter-spacing: 0.15em;
  line-height: 1.4;
  z-index: 3;
}
.g-reservation_plan {
  display: block;
  margin: 15px 0 0;
  padding: 15px 30px;
  background: #f5f5f5;
}
@media screen and (min-width: 1px) and (max-width: 1015px) {
  .g-reservation_plan {
    margin-top: 10px;
    padding: 0;
  }
  .g-reservation_bottom-cell_serch .g-reservation_button-box {
    padding: 10px 0;
  }
  .g-reservation_button {
    margin: 0 0 10px;
  }
  .g-reservation_bottom-title {
    padding-top: 10px;
  }
}

@media screen and (min-width: 1px) and (max-width: 414px) {
  .g-reservation_button-item {
    display: block;
    vertical-align: top;
    width: 100%;
    padding: 5px;
    letter-spacing: 0;
  }
}

.g-reservation_plan-cells {
  display: table;
  width: 100%;
}
.g-reservation_plan-title,
.g-reservation_plan-select,
.g-reservation_plan-button {
  display: table-cell;
  vertical-align: middle;
}
.g-reservation_plan-title {
  padding: 0 30px 0 0;
  font-size: 13px;
  font-size: 1.3rem;
  font-weight: 400;
  letter-spacing: 0.15em;
  line-height: 1.4;
  text-align: right;
}
.g-reservation_plan-button {
  width: 275px;
}
.g-reservation_plan-button a {
  text-decoration: none;
}
.g-reservation_plan-button_box {
  display: table;
  width: 100%;
  height: 55px;
  background: #2c2c2c;
  color: #fff;
  text-align: center;
  border-radius: 4px;
}
.g-reservation_plan-button_box:hover {
  background-color: #888;
  color: #fff;
}
.g-reservation_plan-button_name {
  display: table-cell;
  vertical-align: middle;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.15em;
  line-height: 1.4;
}
.g-reservation_plan-select_wrap {
  display: block;
  position: relative;
  background: #fff;
  font-size: 13px;
  font-size: 1.3rem;
  font-weight: 400;
  letter-spacing: 0.15em;
  line-height: 1.4;
  border: solid 1px #dadada;
  border-radius: 4px;
  cursor: pointer;
}
.g-reservation_plan-select_wrap:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  width: 10px;
  background: url(../../img/common/arrow_b_down_black.png) no-repeat right
    center;
  background-size: 100% auto;
}
.g-reservation_plan-select select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 100%;
  padding: 15px 30px;
  background-color: #fff;
  border-radius: 4px;
  cursor: pointer;
}
.g-reservation_mypage {
  display: none;
  position: absolute;
  top: 15px;
  left: 20px;
}
@media screen and (min-width: 1px) and (max-width: 1015px) {
  .g-reservation_mypage {
    display: block;
  }
}
.g-reservation_mypage-items {
  display: block;
  letter-spacing: -0.5em;
}
.g-reservation_mypage-item {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  letter-spacing: 0;
  padding: 0 10px;
  border-left: solid 1px #2c2c2c;
}
.g-reservation_mypage-item:first-child {
  padding-left: 0;
  border-left: 0;
}
.g-reservation_mypage-box {
  display: block;
}
.g-reservation_mypage-name {
  display: block;
  font-size: 10px;
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0.15em;
  line-height: 1.4;
}
/* ▲ 空室検索モーダル */

/* ▼ modalコンテンツ 画像下テキスト追加 */
.sp_show {
  right: 4px;
  width: 10px;
  display: none;
}

.c-grid_item a .under-text {
  color: #221814;
  font-size: 1.2rem;
  letter-spacing: 0.15em;
  line-height: 1.5;
  text-align: center;
  width: 100%;
}

.c-grid_item a.under-link {
  background: none;
  padding-top: 10px;
  text-align: center;
}

@media screen and (max-width: 414px) {
  .sp_show {
    display: block;
  }
}
/* ▲ modalコンテンツ 画像下テキスト追加 */

/* 2022/7/12追加 */
* {
  box-sizing: border-box;
  /*font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium",
    "游ゴシック", "Yu Gothic", sans-serif;*/
}

/*tabの形状*/
.tab {
  display: flex;
  flex-wrap: wrap;
}

.tab li {
  width: 50%;
}

.tab li a {
  display: block;
  background: #868686;
  line-height: 1;
  text-decoration: none;
  color: #ffffff;
  font-size: 16px;
  text-align: center;
  font-weight: bold;
  padding: 24px 0;
}
@media screen and (max-width: 768px) {
  .tab li a {
    padding: 18.5px 0;
    font-size: 13px;
  }
}

/*liにactiveクラスがついた時の形状*/
.tab li.active a {
  background: #efefef;
  color: #000000;
}

/*エリアの表示非表示と形状*/
.area {
  display: none; /*はじめは非表示*/
  opacity: 0; /*透過0*/
  background: #fff;
}

/*areaにis-activeというクラスがついた時の形状*/
.area.is-active {
  display: block; /*表示*/
  -webkit-animation-name: displayAnime;
  animation-name: displayAnime; /*ふわっと表示させるためのアニメーション*/
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

@-webkit-keyframes displayAnime {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes displayAnime {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
#vacancy {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100%;
  background-color: #fff;
  padding-top: 93px;
  z-index: 102;
  overflow-y: scroll;
  /* display: none; */
}
@media screen and (max-width: 768px) {
  #vacancy {
    padding-top: 35px;
    overflow-y: scroll;
  }
}

ul {
  list-style-type: none;
}

.c-search__title {
  text-align: center;
  font-size: 34px;
  font-family: "Noto Serif JP", serif;
  font-weight: 300;
}
@media screen and (max-width: 768px) {
  .c-search__title {
    font-size: 26px;
  }
}
.c-search__vacancy {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 5%;
}
.c-search__vacancyInner {
  width: 100%;
  max-width: 1090px;
  letter-spacing: 0.1em;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium",
    "游ゴシック", "Yu Gothic", sans-serif;
}
.c-search__main {
  margin-top: 55px;
  width: 100%;
  border: 2px solid #868686;
  background: #efefef;
}
@media screen and (max-width: 768px) {
  .c-search__main {
    margin-top: 24px;
  }
}

.c-search__accordion{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  max-width: 1090px;
  margin: 18px auto 0;
  cursor: pointer;
  border: 2px solid #C4002B;
  border-radius: 2px;
  font-size: 16px;
  letter-spacing: 0;
  width: 90%;
  + .c-form__bottomNav {
    margin-top: 18px;
  }
  @media screen and (max-width: 768px) {
    
    font-size: 13px;
  }
}
.c-search__accordion__header{
  color: #C4002B;
  font-weight: bold;
  width: 100%;
  padding: 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  @media screen and (max-width: 768px) {
    padding: 10px 14px;
  }
}
.c-search__accordion__icon{
  color: #FFF;
  width: 24px;
  height: 24px;
  display: inline-flex;
  background-color: #C4002B;
  border-radius: 50%;
  align-items: center;
  justify-content: center;
  position: relative;
  &::before,&::after{
    content: "";
    position: absolute;
    background-color: #FFF;
    width: 12px;
    height: 1px;
  }
  &::before{
    transform: rotate(90deg);
  }
}
.c-search__accordion.is-accordion_open .c-search__accordion__icon::before {
  transform: rotate(0deg);
}
.c-search__accordion__content{
  display: none;
  line-height: calc(48 / 28);
  text-align: left;
  padding: 0px 30px 20px ;
  color: #020202;
  @media screen and (max-width: 768px) {
    padding: 0px 18px 20px ;
  }
  a{
    text-decoration: underline;
  }
}

.c-form__wrapper {
  width: 100%;
  max-width: 945px;
  margin: 0 auto;
}
.c-form__validation {
  display: none;
  width: 100%;
  border-radius: 5px;
  padding: 16.5px 25px;
  border: 2px solid #d34b49;
  background: #fceced;
  margin-bottom: 29px;
}
@media screen and (max-width: 768px) {
  .c-form__validation {
    padding: 10px 15px 10px 15px;
  }
}
.c-form__validationText {
  font-size: 14px;
  font-weight: bold;
  color: #d34b49;
  letter-spacing: 0.1em;
  line-height: 1;
  position: relative;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .c-form__validationText {
    font-size: 13px;
  }
}
.c-form__validationText:nth-child(2) {
  margin-top: 8.5px;
}
.c-form__validationText::before {
  content: "";
  display: inline-block;
  width: 19px;
  height: 19px;
  background: url(../../img/modal/icon_caution.png) no-repeat;
  background-size: contain;
  position: relative;
  top: -1px;
  margin-right: 6px;
}
.c-form__common {
  display: flex;
}
@media screen and (max-width: 768px) {
  .c-form__common {
    flex-wrap: wrap;
  }
}
.c-form__common:nth-child(2) {
  margin-top: 17.15px;
}
@media screen and (max-width: 768px) {
  .c-form__common:nth-child(2) {
    margin-top: 14.2px;
  }
}
.c-form__item {
  width: 40%;
  display: flex;
  flex-direction: column;
  cursor: pointer;
}
.c-form__title {
  font-size: 13px;
  margin-bottom: 11.85px;
}
.c-form__checkin {
  width: 100%;
  max-width: 380px;
}
@media screen and (max-width: 768px) {
  .c-form__checkin {
    max-width: 100%;
    margin-bottom: 14.2px;
  }
}
.c-form__checkin input {
  border-radius: 5px;
  height: 48px;
  border: 0;
}
@media screen and (max-width: 768px) {
  .c-form__checkin input {
    height: 45px;
  }
}
.c-form__checkin2 {
  width: 100%;
  max-width: 285px;
  margin-left: auto;
}
@media screen and (max-width: 768px) {
  .c-form__checkin2 {
    max-width: 100%;
    margin-bottom: 14.2px;
    margin-top: 14.2px;
  }
}
.c-form__checkin2 input {
  border-radius: 5px;
  height: 48px;
  border: 0;
}
@media screen and (max-width: 768px) {
  .c-form__checkin2 input {
    height: 45px;
  }
}
.c-form__select1 {
  width: 100%;
  max-width: 272px;
  margin-left: 10.5px;
}
@media screen and (max-width: 768px) {
  .c-form__select1 {
    margin: 0;
    max-width: calc(50% - 5px);
  }
}
.c-form__select1 select {
  width: 100%;
  border: none;
  height: 48px;
  padding-left: 20.4px;
  border-radius: 5px;
  border: 0;
}
@media screen and (max-width: 768px) {
  .c-form__select1 select {
    height: 45px;
  }
}
.c-form__select2 {
  width: 100%;
  max-width: 200px;
}
.c-form__select2:nth-child(n + 2) {
  margin-left: 10.5px;
}
@media screen and (max-width: 768px) {
  .c-form__select2 {
    margin: 0;
    max-width: calc(50% - 5px);
  }
  .c-form__select2:nth-child(n + 2) {
    margin-left: 0;
  }
}
.c-form__select2 select {
  width: 100%;
  border: none;
  height: 48px;
  padding-left: 20.4px;
  border-radius: 5px;
  border: 0;
}
@media screen and (max-width: 768px) {
  .c-form__select2 select {
    height: 45px;
  }
}
.c-form__select3 {
  width: 100%;
  max-width: 120px;
}
.c-form__select3:nth-child(n + 2) {
  margin-left: 10.5px;
}
@media screen and (max-width: 768px) {
  .c-form__select3 {
    margin: 0;
    max-width: calc(50% - 5px);
  }
  .c-form__select3:nth-child(n + 2) {
    margin-left: 0;
  }
  .c-form__select3:nth-child(n + 3) {
    margin-top: 14.2px;
  }
}
.c-form__select3 select {
  width: 100%;
  border: none;
  height: 48px;
  padding-left: 20.4px;
  border-radius: 5px;
  border: 0;
}
@media screen and (max-width: 768px) {
  .c-form__select3 select {
    height: 45px;
  }
}
.c-form__select4 {
  width: 100%;
  max-width: 320px;
}
.c-form__select4:nth-child(n + 2) {
  margin-left: 10.5px;
}
@media screen and (max-width: 768px) {
  .c-form__select4 {
    margin: 0;
    max-width: 100%;
  }
  .c-form__select4:nth-child(n + 2) {
    margin-left: 0;
    margin-top: 14.2px;
  }
}
.c-form__select4 select {
  width: 100%;
  border: none;
  height: 48px;
  padding-left: 20.4px;
  border-radius: 5px;
  border: 0;
}
@media screen and (max-width: 768px) {
  .c-form__select4 select {
    height: 45px;
  }
}
.c-form__inputWrapper {
  position: relative;
}
.c-form__inputWrapper::after {
  content: "";
  pointer-events: none;
  display: inline-block;
  background: url(../../img/modal/icon_calender.png) no-repeat;
  background-size: contain;
  width: 13px;
  height: 13px;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
}
.c-form__selctWrapper {
  position: relative;
}
.c-form__selctWrapper::after {
  content: "";
  pointer-events: none;
  display: inline-block;
  background: url(../../img/modal/icon_triangle.png) no-repeat;
  background-size: contain;
  width: 10px;
  height: 5px;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
}
.c-form__submit {
  width: 100%;
  max-width: 270px;
  height: 48px;
  align-self: flex-end;
  margin-left: auto;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .c-form__submit {
    margin-left: auto;
    margin-top: 25.5px;
    max-width: 100%;
  }
}
.c-form__bottomNav {
  width: 100%;
  max-width: 1090px;
  margin: 35px auto 0;
  display: flex;
}
@media screen and (max-width: 768px) {
  .c-form__bottomNav {
    flex-wrap: wrap;
  }
}
.c-form__bottomNavFirst {
  width: 100%;
  max-width: 320px;
  background-color: #868686;
  transition: opacity 0.3s;
}
@media screen and (max-width: 768px) {
  .c-form__bottomNavFirst {
    max-width: 100%;
    height: 80px;
  }
}
.c-form__bottomNavItem {
  width: 100%;
  max-width: 190px;
  border: 1px solid #888888;
  border-right: none;
  height: 120px;
}
@media screen and (max-width: 768px) {
  .c-form__bottomNavItem {
    max-width: 33.333%;
    height: 80px;
    padding-bottom: 18.3px;
    border-top: none;
  }
}
@media screen and (max-width: 768px) {
  .c-form__bottomNavItem:nth-child(2) {
    border-left: none;
  }
}
.c-form__bottomNavItem:nth-child(4) {
  border-right: 1px solid #888888;
}
@media screen and (max-width: 768px) {
  .c-form__bottomNavItem:nth-child(4) {
    padding-bottom: 8.3px;
    border-right: none;
  }
}
.c-form__bottomNavItem:last-child {
  border-right: 1px solid #888888;
  margin-left: 11px;
}
@media screen and (max-width: 768px) {
  .c-form__bottomNavItem:last-child {
    margin-left: 0;
    max-width: 100%;
    border-top: none;
    padding-bottom: 0;
    height: 48.5px;
    border-left: none;
    border-right: none;
    border-bottom: none;
  }
}
@media screen and (max-width: 768px) {
  .c-form__bottomNavItem:last-child a {
    align-items: center;
  }
}
.c-form__bottomNavItem a {
  position: relative;
  display: flex;
  width: 100%;
  height: 100%;
  text-align: center;
  text-decoration: none;
  letter-spacing: 0.1em;
  font-size: 13px;
  color: #000000;
  justify-content: center;
  align-items: flex-end;
  transition: background 0.3s;
}
.c-form__bottomNavItem a span {
  padding-bottom: 34px;
}
@media screen and (max-width: 768px) {
  .c-form__bottomNavItem a span {
    padding-bottom: 0;
  }
}
.c-form__bottomHead {
  text-align: center;
  color: #fff;
  font-size: 18px;
  line-height: 1.55;
  font-family: "Noto Serif JP", serif;
  margin-top: 17px;
}
@media screen and (max-width: 768px) {
  .c-form__bottomHead {
    margin-top: 13.2px;
  }
}
.c-form__bottomLink {
  display: flex;
  justify-content: center;
  height: auto !important;
  font-size: 12px;
  text-align: center;
  color: #ffffff;
  margin-top: 5px;
  padding-left: 5px;
  position: relative;
}
.c-form__bottomLink span {
  transition: opacity 0.3s;
}
.c-form__bottomLink span:hover {
  opacity: 0.5;
}
@media screen and (max-width: 768px) {
  .c-form__bottomLink {
    margin-top: 7px;
  }
}
.c-form__bottomLink::before {
  content: "";
  display: inline-block;
  background: url(../../img/modal/icon_question.png) no-repeat;
  background-size: contain;
  width: 20px;
  height: 20px;
  position: relative;
  left: -7px;
  bottom: 3px;
}
.c-form__subWrapper {
  padding: 50px 0 35px;
  background: #efefef;
}
@media screen and (max-width: 768px) {
  .c-form__subWrapper {
    padding: 28.5px 0 27.7px;
  }
}
.c-form__travelItems {
  width: 100%;
  max-width: 940px;
  margin: 0 auto;
  display: flex;
}
@media screen and (max-width: 768px) {
  .c-form__travelItems {
    flex-direction: column;
  }
}
.c-form__travelItem {
  width: 100%;
  padding-bottom: 40px;
  position: relative;
}
@media screen and (max-width: 1060px) {
  .c-form__travelItem {
    padding: 0 25px;
  }
}
.c-form__travelItem:first-child {
  border-right: 1px solid #888888;
}
@media screen and (max-width: 768px) {
  .c-form__travelItem:first-child {
    border-right: none;
    padding-bottom: 26px;
    border-bottom: 1px solid #868686;
  }
}
.c-form__travelItem:last-child {
  position: relative;
  transform: translateX(50px);
}
@media screen and (max-width: 1060px) {
  .c-form__travelItem:last-child {
    transform: none;
  }
}
@media screen and (max-width: 768px) {
  .c-form__travelItem:last-child {
    padding-bottom: 0;
    margin-top: 22.5px;
  }
}
.c-form__travelTitle {
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 22.3px;
  position: relative;
}
.c-form__travelButton {
  width: 100%;
  max-width: 420px;
  height: 54px;
}
.c-form__travelButton a {
  display: inline-block;
  background-color: #000000;
  border-radius: 5px;
  width: 100%;
  height: 100%;
  font-size: 13px;
  color: #fff;
  text-align: center;
  line-height: 54px;
  text-decoration: none;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .c-form__travelCaptionInner {
    padding: 0 40px;
  }
}
.c-form__travelCaption {
  display: block;
  font-size: 13px;
  text-align: right;
  padding-right: 36.5px;
  margin-top: 30px;
  line-height: 1.61;
}
@media screen and (max-width: 768px) {
  .c-form__travelCaption {
    padding-right: 0;
    text-align: left;
    padding-left: -1em;
    text-indent: -1em;
  }
}
.c-form__close {
  width: 61px;
  height: 61px;
  background: #efefef;
  position: absolute;
  cursor: pointer;
  top: 0;
  right: 0;
}
@media screen and (max-width: 768px) {
  .c-form__close {
    width: 54px;
    height: 54px;
  }
}
.c-form__closeWrapper {
  width: 100%;
  height: 100%;
}
.c-form__closeWrapper::before {
  content: "";
  display: inline-block;
  background: url(../../img/modal/icon_close.png) no-repeat;
  background-size: contain;
  width: 32px;
  height: 32px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}

.icon_member::before {
  content: "";
  display: inline-block;
  width: 18.865px;
  height: 20px;
  background: url(../../img/modal/icon_member.png) no-repeat;
  background-size: contain;
  position: absolute;
  top: 25%;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 768px) {
  .icon_member::before {
    top: 20%;
  }
}

.icon_login::before {
  content: "";
  display: inline-block;
  width: 25px;
  height: 25px;
  background: url(../../img/modal/icon_login.png) no-repeat;
  background-size: contain;
  position: absolute;
  top: 24%;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 768px) {
  .icon_login::before {
    top: 20%;
  }
}

.icon_reservation::before {
  content: "";
  display: inline-block;
  width: 23.385px;
  height: 19.405px;
  background: url(../../img/modal/icon_reservation.png) no-repeat;
  background-size: contain;
  position: absolute;
  top: 27%;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 768px) {
  .icon_reservation::before {
    top: 20%;
  }
}

@media screen and (max-width: 768px) {
  .icon_company {
    display: flex;
    line-height: 2em;
  }
}

.icon_company::before {
  content: "";
  display: inline-block;
  width: 21px;
  height: 21px;
  background: url(../../img/modal/icon_company.png) no-repeat;
  background-size: contain;
  position: absolute;
  top: 25%;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 768px) {
  .icon_company::before {
    position: relative;
    top: 1px;
    left: 0;
  }
}

.form-area {
  background: #efefef;
  padding: 30px 3% 50px;
}
@media screen and (max-width: 768px) {
  .form-area {
    padding: 22.2px 25px 25px;
  }
}

select {
  -webkit-appearance: none; /* ベンダープレフィックス(Google Chrome、Safari用) */
  -moz-appearance: none; /* ベンダープレフィックス(Firefox用) */
  appearance: none; /* 標準のスタイルを無効にする */
  position: relative;
}

input[type="text"] {
  padding: 0;
  width: 100%;
  box-sizing: border-box;
  padding-left: 20.4px;
}

.airplane {
  position: relative;
}
.airplane::before {
  content: "";
  display: inline-block;
  width: 23.73px;
  height: 23.73px;
  background: url(../../img/modal/icon_airplane.png) no-repeat;
  background-size: contain;
  margin-right: 15px;
  position: relative;
  top: 5px;
}

.train {
  position: relative;
}
.train::before {
  content: "";
  display: inline-block;
  width: 23.73px;
  height: 23.73px;
  background: url(../../img/modal/icon_train.png) no-repeat;
  background-size: contain;
  margin-right: 15px;
  position: relative;
  top: 5px;
}

@media screen and (max-width: 768px) {
  .u-mgt__right10 {
    margin-right: 10px;
  }
  .u-mgt__top10 {
    margin-top: 14.2px;
  }
}
.pc {
  display: block;
}
@media screen and (max-width: 768px) {
  .pc {
    display: none;
  }
}

.sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .sp {
    display: block;
  }
}

.submit_btn {
  height: 100%;
  border: none;
  background: #000000;
  border-radius: 5px;
  position: relative;
  z-index: 10;
  outline: none;
  /*アニメーションの指定*/
  transition: ease 0.1s;
  overflow: hidden;
}
.submit_btn span {
  color: #fff;
  position: relative;
  border-radius: 5px;
  z-index: 6;
}
.submit_btn::before {
  content: "";
  display: inline-block;
  background: #dd9738;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  color: #fff;
  border-radius: 5px;
  transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform: scale(0, 1);
  transform-origin: right top;
}

.submit_btn:hover:before {
  transform-origin: left top;
  transform: scale(1, 1);
}

.commonItem::after {
  content: "";
  display: inline-block;
  background: #f8f8f8;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  color: #fff;
  transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform: scale(0, 1);
  transform-origin: right top;
  z-index: -1;
}

.commonItem:hover::after {
  transform-origin: left top;
  transform: scale(1, 1);
}

@media screen and (max-width: 768px) {
  .ml-auto {
    margin-left: auto !important;
  }
}

@media screen and (max-width: 768px) {
  .portal-form.c-form__common {
    margin-top: 0 !important;
  }
}

.c-hotel__link {
  width: 100%;
  max-width: 420px;
  height: 54px;
  border-radius: 5px;
  border: none;
  position: relative;
}
.c-hotel__link::after {
  content: "";
  pointer-events: none;
  display: inline-block;
  background: url(../../img/modal/icon_triangle.png) no-repeat;
  background-size: contain;
  width: 10px;
  height: 5px;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
}
.c-hotel__link select {
  border: none;
  width: 100%;
  height: 100%;
  border-radius: 5px;
  padding-left: 29.5px;
}

input,
select {
  background-color: #fff;
}

.c-form__bottomLink {
  color: #fff !important;
}

@media screen and (max-width: 768px) {
  #vacancy select {
    font-size: 13px;
    color: #000;
  }

  #checkin_date {
    font-size: 13px;
  }
}

/* 2022/7/12追加ここまで */

/* 2023/6/27追加 */

/* 空室検索バナー */
.c-vacantBanner{
  background-color: #EFF2F3;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  position: fixed;
  top: 20px;
  left: 20px;
  z-index: 102;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  width: 400px;
  height: 70px;
  border-radius: 2.5px;
  cursor: pointer;
}
.c-vacantBanner:hover{

}
.c-vacantBanner__text{
  color: #666666;
  font-size: 14px;
  font-weight: bold;
  letter-spacing: .05em;
  border-bottom:double 3px #666666; 
  padding-bottom: 5px;
}
.c-vacantBanner__date{
  background-color: #FFFFFF;
  color: #000000;
  font-size: 14px;
  font-weight: bold;
  letter-spacing: .05em;
  margin-left: 16px;
  height: 40px;
  width: 175px;
  border: 1px solid #DFDFDF;
  border-right: none;
  border-radius: 2.5px 0 0 2.5px;
  display: flex;
  align-items: center;
  padding-left: 40px;
  position: relative;
}
.c-vacantBanner__date::before{
  content: "";
	background-repeat:no-repeat;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13.001' height='13' viewBox='0 0 13.001 13'%3E%3Cpath id='シェイプ_1' data-name='シェイプ 1' d='M994.027,753A1.028,1.028,0,0,1,993,751.973v-9.579a1.027,1.027,0,0,1,1.027-1.026h2.395v-1.027a.342.342,0,0,1,.684,0v2.738a.342.342,0,1,1-.684,0v-1.027h-2.395a.342.342,0,0,0-.342.342v2.737h9.237a.342.342,0,0,1,0,.684h-9.237v6.158a.342.342,0,0,0,.342.342h10.947a.343.343,0,0,0,.343-.342v-9.579a.343.343,0,0,0-.343-.342h-.684a.342.342,0,0,1,0-.684h.684a1.027,1.027,0,0,1,1.027,1.026v9.579a1.028,1.028,0,0,1-1.027,1.027Zm7.868-9.921v-1.027h-3.079a.342.342,0,1,1,0-.684h3.079v-1.027a.342.342,0,0,1,.685,0v2.738a.342.342,0,0,1-.685,0Z' transform='translate(-993 -740)' fill='%23888'/%3E%3C/svg%3E%0A");
  height: 14px;
  width: 13px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 15px;

}
.c-vacantBanner__btn{
  background-color: #888888;
  color: #FFFFFF;
  font-size: 14px;
  font-weight: bold;
  letter-spacing: .05em;
  height: 40px;
  width: 100px;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #DFDFDF;
  border-radius: 0 2.5px 2.5px 0;

}
@media screen and (max-width: 1024px) {
  .c-vacantBanner{
    display: none;
  }
}
/* SPグロナビ */

@media screen and (min-width: 1px) and (max-width: 1023px) {
  .g-header-nav_sp_warpper {
    /* display: table-cell; */
    vertical-align: middle;
    width: 100%;
    height: 60px;
  }
}
.header-sp_nav {
  display: none;
}
@media screen and (min-width: 1px) and (max-width: 1023px) {
  .header-sp_nav {
    display: table;
    position: relative;
    margin: 0 0 0 auto;
    float: right;
    width: 100%;
    height: 100%;
  }
  .header-sp_nav .list_item {
    display: table-cell;
    position: relative;
    min-width: 60px;
    background: #628496;
    text-align: center;
    vertical-align: middle;
  }
  .header-sp_nav .list_item:first-child {
    background: #EFF2F3;
    /* background: #628496 url(../../img/common/icon_access.png) no-repeat top 15px
      center; */
    background-size: 20%;
    /* font-family: "Roboto Slab"; */
    font-weight: 100;
    width: calc((100% - 60px) / 2);
    
  }
  .header-sp_nav .list_item:first-child .list_item_name::before{
    content: "";
    background: url(../../img/common/icon_access01.svg) no-repeat;
    position: absolute;
    height: 18px;
    width: 14px;
    left: 30px;
    top: 50%;
    transform: translateY(-50%);
    background-size: contain;
  }
  .header-sp_nav .list_item:first-child .list_item_name{
    color: #000;
  }
  .header-sp_nav .list_item:nth-child(2) {
    background: #8F8A89;
    /* background: #696969 url(../../img/common/icon_search.png) no-repeat top 15px
      center; */
    background-size: 23%;
    width: calc((100% - 60px) / 2);
  }
  .header-sp_nav .list_item:nth-child(2) .list_item_name::before{
    content: "";
    background: url(../../img/common/icon_search.png) no-repeat;
    position: absolute;
    height: 15px;
    width: 15px;
    left: 30px;
    top: 50%;
    transform: translateY(-50%);
    background-size: cover;
  }
  .header-sp_nav .list_item:last-child {
    background: #628496;
    font-family: "Roboto Slab";
    font-weight: 100;
    width: 60px;
  }
  .header-sp_nav .list_item p {
    padding: 0 5px 0px 20px;
    color: #fff;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
  }
  .header-sp_nav .list_item .list_item_name {
    position: relative;
    line-height: 60px;
    /* display: block;
    position: absolute;
    bottom: 24%;
    left: 7.5%; */
  }
  .header-sp_nav .list_item .g-header_trigger{
    height: 60px;
  }
}
@media screen and (min-width: 1px) and (max-width: 1023px){
  .header-pc_nav{
    display: none;
  }
}

/* バナー */
/* .c-pickUp {
  position: absolute;
  bottom: -177px;
  left: 0; */
	/* bottom: 50px;
	height: 163px; */
	/* background-color: #F7F7F7; */
	/* width: 100%;
	padding-top: 30px;
	display: flex;
	flex-direction: column;
  margin-top: 13px;
  background-color: #fff;
  height: 177px;
} */
.c-pickUp__flex{
  position: absolute;
  bottom: -177px;
  left: 0;
	/* bottom: 50px;
	height: 163px; */
	/* background-color: #F7F7F7; */
	width: 100%;
	padding-top: 30px;
	display: flex;
	flex-direction: column;
  margin-top: 13px;
  /* background-color: #fff; */
  height: 177px;
}
.c-pickUp__flex::before{
  position: absolute;
  content: "";
  background-color: #fff;
  top: 0;
  left: 0;
  width: 100%;
  height: 115%;
  z-index: 1;
}
@media screen and (min-width: 768px) {
	.c-pickUp__top {
		position: relative;
		height: 80%;
	}
}
@media screen and (min-width: 768px) {
	.c-pickUp {
    position: absolute;
    bottom: 0;
    left: 0;
    background-color:rgba(255,255,255,0.63);
		height: 130px;
		width: 100%;
    z-index: 99;
    /* max-width: 1030px; */
		margin-left: auto;
		margin-right: auto;
		/* bottom: 55px; */
		flex-direction: row;
		align-items: center;
		padding-top: 0px;
		padding-right: 60px;
    padding-left: 38px;
    margin-top: 45px;
	}
  .c-pickUp__flex::before{
    content: none;
  }
  .c-pickUp__flex{
    display: flex;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    height: 130px;
    width: 100%;
    z-index: 99;
    max-width: 1022px;
    /* bottom: 55px; */
    flex-direction: row;
    align-items: center;
    padding-top: 0px;
    padding-left: 38px;
    padding-right: 60px;
  }
}

.c-pickUp__textArea {
	display: flex;
	flex-direction: row;
	align-items: center;
	padding-left: 16px;
	-moz-column-gap: 16px;
	column-gap: 16px;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  z-index: 1;
}
@media screen and (min-width: 768px) {
	.c-pickUp__textArea {
		flex-direction: column;
		align-items: flex-start;
    padding-right: 28px;
		row-gap: 5px;
		flex-shrink: 0;
    padding-left: 0px;
	}
}
.c-pickUp__textArea__title {
	position: relative;
}

/* .c-pickUp__textArea__title::before {
	content: "";
	background-color: #000000;
	height: 1px;
	width: 60px;
	position: absolute;
	top: 50%;
	left: -70px;
} */
.c-pickUp__textArea__title img {
  width: 123px;
}
@media screen and (min-width: 768px) {
	/* .c-pickUp__textArea__title::before {
		left: -80px;
	} */
	.c-pickUp__textArea__title img {
		width: 123px;
	}
}
.c-pickUp__textArea__title__sub {
	font-size: 14px;
	font-weight: bold;
	letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
	.c-pickUp__textArea__title__sub {
		font-size: 14px;
	}
}
.c-pickUp__imageList {
	margin-top: 12px;
	/* overflow: hidden; */
  z-index: 1;
  max-width: 764px;
}
.c-pickUp__imageList .slick-slide {
	margin-left: 10px;
	margin-right: 10px;
}
@media screen and (min-width: 768px){
  .c-pickUp__imageList .slick-slide{
    margin-left: 8px;
	  margin-right: 8px;
  }
}
@media screen and (min-width: 768px) {
	.c-pickUp__imageList {
		display: flex;
		flex-direction: row;
		margin-top: 0;
    margin-left: auto;
    margin-right: auto;
		-moz-column-gap: 20px;
		column-gap: 20px;
		width: 100%;
		justify-content: center;
    
	}
}
@media screen and (min-width: 768px) {
	.c-pickUp__image {
		width: 220px;
    max-width: 243px;
    aspect-ratio: 243 / 76;
    /* border: 0.5px solid #F2F3F4; */
	}
}
@media screen and (min-width: 768px) {
	.c-picbannerkUp__image {
		width: 220px;
    max-width: 243px;
    aspect-ratio: 243 / 76;
    /* border: 0.5px solid #F2F3F4; */
	}
}



/* 2023/6/27追加ここまで */
