@charset "UTF-8";
/*!===================================================================

	予約サイト用

====================================================================*/
/*!===========================================
default.css
=============================================*/
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, 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 {
  margin: 0;
  padding: 0;
  border: 0; }

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

html {
  overflow-y: scroll; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

input, textarea {
  margin: 0;
  padding: 0; }

ol, ul {
  list-style: none; }

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

caption, th {
  text-align: left;
  font-weight: normal; }

a:focus {
  outline: none; }

audio,
canvas,
video {
  display: inline-block; }

audio:not([controls]) {
  display: none; }

del {
  color: #333; }

ins {
  background: #fff9c0;
  text-decoration: none; }

hr {
  background-color: #ccc;
  border: 0;
  height: 1px;
  margin: 24px;
  margin-bottom: 1.714285714rem; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -.5em; }

sub {
  bottom: -.25em; }

small {
  font-size: smaller; }

img {
  border: 0;
  -ms-interpolation-mode: bicubic; }

/*!===========================================
 base
=============================================*/
header, footer, nav, #pageTitle {
  /* 表示・非表示設定 */ }
  header a, footer a, nav a, #pageTitle a {
    color: #544F49;
    text-decoration: none;
    transition: all .3s;
    position: relative;
    cursor: pointer; }
    header a:hover, footer a:hover, nav a:hover, #pageTitle a:hover {
      color: #544F49;
      text-decoration: none;
      opacity: .7; }
  header img, footer img, nav img, #pageTitle img {
    max-width: 100%;
    height: auto;
    width: auto;
    /* //画像の透明化　imgにクラスをつける場合
    a:hover &.imgClr {
    	opacity: 0.7;
    	background: transparent;
    }*/ }
    a header img, a footer img, a nav img, a #pageTitle img {
      /*display: block;*/
      position: relative;
      transition: .2s;
      overflow: hidden; }
    a:hover header img, a:hover footer img, a:hover nav img, a:hover #pageTitle img {
      opacity: 0.7;
      background: transparent; }
    a:hover header img.notClr, a:hover footer img.notClr, a:hover nav img.notClr, a:hover #pageTitle img.notClr {
      opacity: 1.0; }
  header .pc_only, footer .pc_only, nav .pc_only, #pageTitle .pc_only {
    display: block; }
    @media screen and (max-width: 959px) {
      header .pc_only, footer .pc_only, nav .pc_only, #pageTitle .pc_only {
        display: none !important; } }
  header .mb_only, footer .mb_only, nav .mb_only, #pageTitle .mb_only {
    display: none; }
    @media screen and (max-width: 959px) {
      header .mb_only, footer .mb_only, nav .mb_only, #pageTitle .mb_only {
        display: block; } }
  header .mbNon, footer .mbNon, nav .mbNon, #pageTitle .mbNon {
    /*display: block;*/ }
    @media screen and (max-width: 599px) {
      header .mbNon, footer .mbNon, nav .mbNon, #pageTitle .mbNon {
        display: none; } }
  header .sp_only, footer .sp_only, nav .sp_only, #pageTitle .sp_only {
    display: none; }
    @media screen and (max-width: 599px) {
      header .sp_only, footer .sp_only, nav .sp_only, #pageTitle .sp_only {
        display: block; } }

/*!===========================================
 header
=============================================*/
header {
  width: 100%;
  height: 85px;
  line-height: 1.0;
  padding-right: 15px;
  padding-left: 15px;
  background: #FFF;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  font-size: 18px;
  color: #544F49;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 500;
  font-feature-settings: "palt";
  background: #FFF;
  _display: inline;
  _zoom: 1;
  margin: 0; }
  @media screen and (max-width: 959px) {
    header {
      font-size: 14px; } }
  header h1 {
    margin-right: 30px; }
    header h1 img {
      width: 140px; }
  header .h1sup {
    font-size: 14px;
    padding-top: 25px;
    margin-right: auto; }
  header .snsTop {
    margin-top: 25px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-align-items: center;
    align-items: center; }
    header .snsTop li {
      font-size: 13px;
      line-height: 1.0;
      margin-right: 20px; }
      header .snsTop li a {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-align-items: center;
        -ms-align-items: center;
        align-items: center; }
        header .snsTop li a img {
          width: 18px; }
        header .snsTop li a .eng {
          padding-top: 4px;
          margin-left: 5px; }
  header .inqTel .pc_only {
    font-family: "Kokoro", "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
    font-weight: normal;
    font-size: 26px;
    padding-top: 10px;
    margin-right: auto; }
    header .inqTel .pc_only span {
      font-size: 14px;
      vertical-align: baseline;
      margin-right: 5px; }
  header .bt_reserve {
    display: none; }
  @media screen and (max-width: 959px) {
    header {
      position: fixed;
      z-index: 9999;
      top: 0;
      height: 60px;
      padding-right: 10px;
      padding-left: 10px;
      border-bottom: 1px solid #CBCBCB; }
      header h1 {
        margin: 0;
        width: calc(100% - 100px); }
        header h1 img {
          width: 100px;
          vertical-align: middle; }
      header .h1sup, header .snsTop {
        display: none; }
      header .inqTel .mb_only {
        width: 50px;
        height: 60px;
        font-size: 10px; }
        header .inqTel .mb_only a {
          width: 100%;
          height: 100%;
          color: #544F49;
          text-decoration: none;
          padding-top: 35px;
          position: relative;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-align-items: center;
          -ms-align-items: center;
          align-items: center;
          -webkit-justify-content: center;
          -ms-justify-content: center;
          justify-content: center;
          box-sizing: border-box; }
          header .inqTel .mb_only a:before {
            position: absolute;
            content: "";
            display: block;
            top: 8px;
            width: 30px;
            height: 30px;
            background-image: url(https://storage.489ban.net/storage/customer/2473/reserve/icon-tel.png);
            background-repeat: no-repeat;
            background-size: contain;
            background-position: top left; }
      header .bt_reserve {
        display: block;
        width: 50px;
        height: 60px;
        font-size: 10px; }
        header .bt_reserve a {
          width: 100%;
          height: 100%;
          color: #544F49;
          text-decoration: none;
          padding-top: 35px;
          position: relative;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-align-items: center;
          -ms-align-items: center;
          align-items: center;
          -webkit-justify-content: center;
          -ms-justify-content: center;
          justify-content: center;
          box-sizing: border-box; }
          header .bt_reserve a:before {
            position: absolute;
            content: "";
            display: block;
            top: 8px;
            width: 30px;
            height: 30px;
            background-image: url(https://storage.489ban.net/storage/customer/2473/reserve/icon-cal.png);
            background-repeat: no-repeat;
            background-size: contain;
            background-position: top left; } }
  @media screen and (max-width: 599px) {
    header .wrap #head h1 {
      margin-top: 10px; }
      header .wrap #head h1 img {
        height: 34px; } }

/*---------------------------------------------------------------
　Header MB Only ( 960以下 )
---------------------------------------------------------------*/
/* 三　メニュー */
#toggle {
  position: absolute;
  top: 0;
  left: 5px;
  width: 50px;
  height: 55px;
  font-size: 10px;
  color: #999;
  cursor: pointer;
  padding-top: 5px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  z-index: 1000;
  /* #oggle 切り替えアニメ */ }
  @media screen and (min-width: 960px) {
    #toggle {
      display: none; } }
  #toggle div {
    width: 30px;
    height: 20px;
    margin-bottom: 5px;
    position: relative; }
    #toggle div span {
      display: block;
      position: absolute;
      left: o;
      width: 30px;
      height: 2px;
      border-radius: 5px;
      background: #666;
      transition: .35s ease-in-out; }
      #toggle div span:nth-child(1) {
        top: 0; }
      #toggle div span:nth-child(2) {
        top: 7px; }
      #toggle div span:nth-child(3) {
        top: 15px; }
  #toggle.open div span:nth-child(1) {
    top: 8px !important;
    transform: rotate(315deg); }
  #toggle.open div span:nth-child(2) {
    display: none; }
  #toggle.open div span:nth-child(3) {
    top: 8px !important;
    transform: rotate(-315deg); }

/*---------------------------------------------------------------
　Global Navi
---------------------------------------------------------------*/
nav {
  font-family: "Kokoro", "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
  font-weight: normal;
  font-size: 16px;
  line-height: 1.0;
  background: #FFF; }
  @media screen and (max-width: 959px) {
    nav {
      width: 100%;
      height: calc(100vh - 60px);
      overflow-x: scroll;
      position: fixed;
      top: 60px;
      left: 0;
      z-index: 9999;
      display: none; } }

nav ul {
  height: 75px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto; }
  nav ul li {
    width: calc(100% / 7);
    height: 75px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-justify-content: center;
    justify-content: center;
    position: relative; }
    nav ul li:before {
      content: "";
      position: absolute;
      top: 15px;
      left: 0;
      width: 1px;
      height: 45px;
      background: #CBCBCB; }
    nav ul li a {
      width: 100%;
      height: 100%;
      font-weight: 600;
      padding: 5px;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
      -ms-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      -ms-justify-content: center;
      justify-content: center;
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column; }
      nav ul li a .eng {
        font-size: 12px;
        margin-top: 5px; }
    nav ul li:first-child:before {
      display: none; }
  @media screen and (max-width: 959px) {
    nav ul {
      height: auto;
      background: #FFF;
      border-bottom: 1px solid #CBCBCB;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      nav ul li {
        width: 50%;
        height: 75px;
        border-bottom: 1px solid #CBCBCB;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-align-items: center;
        -ms-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        -ms-justify-content: center;
        justify-content: center; }
        nav ul li:before {
          display: none; }
        nav ul li:nth-last-child(1), nav ul li:nth-last-of-type(2) {
          border-bottom: none; }
        nav ul li:nth-last-of-type(2):nth-child(even) {
          border-bottom: 1px solid #CBCBCB; }
        nav ul li:nth-child(odd) {
          border-right: 1px solid #CBCBCB; } }

/* ナビ折り返し設定 */
nav ul li a br {
  display: none; }
  @media screen and (max-width: 1199px) {
    nav ul li a br {
      display: block; } }
  @media screen and (max-width: 959px) {
    nav ul li a br {
      display: none; } }

nav .snsArea {
  margin-top: 30px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center; }
  @media screen and (min-width: 960px) {
    nav .snsArea {
      display: none; } }
  nav .snsArea p {
    margin: 0 5px; }
    nav .snsArea p a {
      width: 100%;
      font-size: 12px;
      color: #544F49;
      text-decoration: none;
      padding-top: 40px;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: center;
      -ms-justify-content: center;
      justify-content: center;
      position: relative; }
      nav .snsArea p a:before {
        font-family: 'icomoon';
        content: "";
        position: absolute;
        top: 0;
        left: calc(50% - .5em);
        font-weight: normal;
        font-style: normal;
        font-size: 36px;
        font-size: 3.6rem;
        line-height: 1.0;
        color: #CBCBCB; }
    nav .snsArea p.ig a:before {
      content: "\e904"; }

#pageTitle {
  width: 100%;
  height: 300px;
  color: #FFF;
  line-height: 1.0;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  #pageTitle .h2Area {
    width: 35%;
    height: 300px;
    background: url("https://echizen-araki.biz/images/common/h2_bg.jpg") no-repeat;
    background-size: cover;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-justify-content: center;
    justify-content: center; }
    #pageTitle .h2Area div {
      text-align: center;
      padding-top: 10px;
      position: relative; }
      #pageTitle .h2Area div .eng {
        font-size: 15px;
        font-size: 1.5rem;
        letter-spacing: .1em;
        margin-bottom: 5px; }
      #pageTitle .h2Area div h2 {
        font-family: "Kokoro", "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
        font-weight: normal;
        font-size: 24px;
        font-size: 2.4rem;
        letter-spacing: .1em; }
  #pageTitle .ttlImg {
    width: 65%;
    height: 300px; }
    #pageTitle .ttlImg img {
      width: 100%;
      height: 300px;
      object-fit: cover; }

/*==============================================================================
　　Footer
==============================================================================*/
footer {
  font-size: 16px;
  color: #FFF;
  line-height: 1.0;
  background: url("https://echizen-araki.biz/images/skin/bg_foot.jpg") no-repeat center top;
  background-size: cover; }
  footer a {
    color: #FFF; }
    footer a:hover {
      color: #FFF; }
  footer p#copyright {
    height: 45px;
    font-size: 12px;
    background: #191919;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-justify-content: center;
    justify-content: center; }
  @media screen and (max-width: 959px) {
    footer {
      font-size: 14px; }
      footer p#copyright {
        height: 40px;
        font-size: 10px; } }

footer .wrap {
  padding-top: 80px;
  padding-bottom: 50px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column; }
  footer .wrap #footLogo {
    width: 200px;
    margin-bottom: 20px; }
  footer .wrap .add {
    text-align: center;
    line-height: 1.6;
    margin-bottom: 5px; }
  footer .wrap .tel a {
    color: #FFF; }
  footer .wrap ul.sns {
    margin: 50px 0;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-justify-content: center;
    justify-content: center; }
    footer .wrap ul.sns li + li {
      margin-left: 20px; }
    footer .wrap ul.sns li a {
      width: 70px;
      font-size: 14px;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
      -ms-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      -ms-justify-content: center;
      justify-content: center;
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column; }
      footer .wrap ul.sns li a span + span {
        margin-top: 5px; }
      footer .wrap ul.sns li a span img {
        width: 50px; }
  footer .wrap ul.footNav {
    margin-bottom: 50px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-justify-content: center;
    justify-content: center; }
    footer .wrap ul.footNav li {
      padding: 5px 20px;
      border-right: 1px solid #FFF; }
      footer .wrap ul.footNav li:first-of-type {
        border-left: 1px solid #FFF; }
  footer .wrap .privacy {
    font-size: 80%; }
  @media screen and (max-width: 959px) {
    footer .wrap {
      padding-top: 40px;
      padding-bottom: 30px; }
      footer .wrap #footLogo {
        width: 160px; }
      footer .wrap ul.sns {
        margin: 25px 0; }
        footer .wrap ul.sns li + li {
          margin-left: 15px; }
        footer .wrap ul.sns li a {
          width: 50px;
          font-size: 12px; }
          footer .wrap ul.sns li a p img {
            width: 30px; }
      footer .wrap ul.footNav {
        display: none; } }

/*==============================================================================
　　other
==============================================================================*/
.frame {
  max-width: 900px;
  margin-right: auto;
  margin-left: auto; }

.flex {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }

.km {
  font-family: "Kokoro", "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
  font-weight: normal; }

.eng {
  font-family: 'Cinzel', serif;
  font-weight: 400;
  text-transform: uppercase; }

/* 補足 */
.sup {
  font-size: 80%;
  color: #666;
  font-weight: normal;
  line-height: 1.3;
  vertical-align: middle; }

@media screen and (max-width: 959px) {
  span.sup {
    display: block; } }

/* 文字の前に「・」がつく */
.dot {
  position: relative;
  padding-left: 10px; }
  .dot:before {
    content: "";
    position: absolute;
    top: 0.55em;
    left: 0;
    width: 3px;
    height: 3px;
    background: #544F49; }
  @media screen and (max-width: 959px) {
    .dot {
      padding-left: 8px; }
      .dot:before {
        top: 0.6em; } }
