@charset "UTF-8";
/* =============================================================================
   #Foundation
   ========================================================================== */
/* ****************************************************************************************************

  # breakpoint

**************************************************************************************************** */
/**
 * 主なデバイスサイズ
 * iphone 5/se: 320px
 * galaxy s5: 360px
 * iphone 6/7/8/X: 375px
 * iphone 6/7/8 plus: 414px
 * iPad: 768px
 * iPad Pro: 1024px
 */
/*
▼pc
@media print, screen and (min-width: $g-breakpoint-up-l) {
  .hoge {
    margin-bottom: 514px;
  }
}
*/
/* ****************************************************************************************************

  # color

**************************************************************************************************** */
/* ****************************************************************************************************

  # layout

**************************************************************************************************** */
/**
 * 横幅や余白の指定
 */
/* ****************************************************************************************************

  # typography

**************************************************************************************************** */
/**
 * 書体の設定
 */
/* ****************************************************************************************************

  # animation

**************************************************************************************************** */
/**
 *
 */
/* ====================================================================================================

  .row

==================================================================================================== */
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0; }

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent; }

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */ }

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder; }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none; }

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */ }

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible; }

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none; }

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em; }

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */ }

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline; }

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto; }

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */ }

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block; }

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item; }

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none; }

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none; }

/* ======================================================================

  #base

====================================================================== */
/**
 * baseレイヤーにはプロジェクトにおける、基本的なベーススタイルを定義します。
 * 要素セレクタや属性セレクタなど、詳細度はできるかぎり低く保っておきます。
 * 基本的にclass属性は使用しません。
 */
/**
 * `padding`と`border`を`width`に含めます。
 * https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/
 */
html {
  box-sizing: border-box; }

*,
*:before,
*:after {
  box-sizing: inherit; }

*:focus {
  outline: none; }

html {
  font-size: 62.5%;
  line-height: 1.7;
  background-color: #fff; }

body {
  color: #3B2D06;
  font-family: "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 1.4rem;
  font-weight: normal;
  /* アンチエイリアスを指定する */
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: auto;
  /* メトリクスカーニングを指定する */
  font-kerning: normal;
  background-color: #fff; }
  @media print, screen and (min-width: 768px) {
    body {
      font-size: 1.6rem; } }

h1, h2, h3, h4, h5, h6 {
  font-family: inherit;
  font-weight: bold;
  line-height: 1.4;
  color: inherit; }

ul, ol {
  padding-left: 0;
  list-style-type: none; }

/**
 * ネストされたリストのマージンをリセットします。
 */
li > ul, li > ol {
  margin-bottom: 0; }

/**
 * `dt`と`dd`の左端を揃えます。
 */
dd {
  margin-left: 0; }

table {
  width: 100%; }

th {
  text-align: left; }

a {
  text-decoration: none;
  color: #2388AC;
  transition: 0.3s; }
  a:hover {
    opacity: 0.7; }

/**
 * フルードイメージにします。
 */
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom; }

/**
 * IEでSVGがフルードイメージにならない不具合があります。
 * 属性値が`.svg`で終わる要素に適応します。
 */
[src$=".svg"],
[data$=".svg"] {
  width: 100%; }

/**
 * 日本語では斜体を使用しないためリセットします。
 */
i,
cite,
em,
address,
dfn {
  font-style: normal; }

h1, h2, h3, h4, h5, h6,
ul, ol, dl,
blockquote, p, address,
hr,
table,
fieldset, figure,
pre {
  margin-top: 0;
  margin-bottom: 0; }

select {
  outline: none;
  text-indent: 0.01px;
  text-overflow: '';
  background: none transparent;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

select option {
  background-color: #fff;
  color: #333; }

select::-ms-expand {
  display: none; }

select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #828c9a; }

.clearfix::after {
  content: "";
  display: block;
  clear: both; }

textarea {
  resize: none;
  font-size: 16px; }

input {
  font-size: 16px; }
  @media print, screen and (min-width: 1024px) {
    input {
      font-size: 1.6rem; } }

select {
  font-size: 16px; }

@media print, screen and (min-width: 1024px) {
  .only-sp {
    display: none; }

  .only-tablet {
    display: none; } }
@media print, screen and (max-width: 1023px) {
  .only-pc {
    display: none; } }
@media print, screen and (max-width: 767px) {
  .only-pc {
    display: none; }

  .only-tablet {
    display: none; } }
/* =============================================================================
   #Layout
   ========================================================================== */
/* #Header
  -------------------------------------------------------------------------- */
/*doc
---
title: header
name: header
categories: [layout]
---
*/
.l-header {
  z-index: 255;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 70px;
  border-bottom: 2px solid #3B2D06;
  background-color: #fff;
  background-image: linear-gradient(to bottom, rgba(249, 199, 88, 0.5) 0%, white 43%, white 43%);
  background-repeat: repeat;
  background-size: auto; }
  @media print, screen and (min-width: 1024px) {
    .l-header {
      border-bottom-width: 3px;
      height: 120px; } }

.l-header__body {
  display: none; }
  @media print, screen and (min-width: 1024px) {
    .l-header__body {
      display: flex;
      justify-content: flex-end;
      align-items: center; } }

/* ======================================================================

  l-wrapper

====================================================================== */
/*doc
---
title: l-wrapper
name: l-wrapper
categories: [layout]
---

*/
.l-wrapper {
  padding-top: 70px;
  padding-bottom: 56px; }
  @media print, screen and (min-width: 1024px) {
    .l-wrapper {
      padding-top: 120px;
      padding-bottom: 0; } }

/* ======================================================================

  hero

====================================================================== */
/*doc
---
title: hero
name: hero
categories: [layout]
---

*/
/* l-hero
---------------------------------------------------------------------- */
.l-hero {
  width: 100%;
  overflow: hidden; }
  @media print, screen and (min-width: 768px) {
    .l-hero {
      height: auto; } }
  @media print, screen and (min-width: 1024px) {
    .l-hero {
      max-height: 560px;
      border-top: 3px solid #3B2D06; } }

.l-hero.l-hero--type_index {
  opacity: 0;
  transition: .3s; }
  .l-hero.l-hero--type_index.initialized {
    opacity: 1; }

/* l-hero__slide
---------------------------------------------------------------------- */
.l-hero__slide .slick-dots {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  bottom: 12px;
  width: 100%;
  margin: auto; }
  .l-hero__slide .slick-dots li + li {
    margin-left: 10px; }
  .l-hero__slide .slick-dots li button {
    display: block;
    width: 12px;
    height: 12px;
    border-radius: 50% 50%;
    background-color: #FFF0C2;
    overflow: hidden;
    text-indent: 100%;
    padding: 0;
    margin: 0;
    border: none;
    cursor: pointer; }
  .l-hero__slide .slick-dots li.slick-active button {
    background-color: #E59B00; }

/* 矢印
---------------------------------------------------------------------- */
.l-hero-slide__arrow {
  position: absolute;
  z-index: 2;
  display: block;
  top: 50%;
  transform: translateY(-50%);
  width: 50px;
  height: 50px;
  background-color: #DC5B79;
  transition: background-color 0.3s ease;
  cursor: pointer; }
  .l-hero-slide__arrow::after {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 10px;
    height: 10px;
    margin: auto;
    border-width: 0;
    border-color: #fff;
    border-style: solid;
    content: ""; }

.l-hero-slide__arrow:hover {
  background-color: #fff; }
  .l-hero-slide__arrow:hover::after {
    border-color: #DC5B79; }

/* 前
---------------------------------------------------------------------- */
.l-hero-slide__arrow.l-hero-slide__arrow--prev {
  left: 0;
  border-radius: 0 23px 23px 0 / 0 23px 23px 0; }
  .l-hero-slide__arrow.l-hero-slide__arrow--prev::after {
    right: -5px;
    left: 0;
    transform: rotate(-45deg);
    border-top-width: 1px;
    border-left-width: 1px; }

.l-hero-slide__arrow.l-hero-slide__arrow--next {
  right: 0;
  border-radius: 23px 0 0 23px / 23px 0 0 23px; }
  .l-hero-slide__arrow.l-hero-slide__arrow--next::after {
    right: 0;
    left: -5px;
    transform: rotate(45deg);
    border-top-width: 1px;
    border-right-width: 1px; }

/* l-hero__inpage
---------------------------------------------------------------------- */
.l-hero__inpage {
  height: 115px;
  background-image: url(../image/kv/common.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center; }
  @media print, screen and (min-width: 1024px) {
    .l-hero__inpage {
      height: 230px; } }
  .l-hero__inpage h1 {
    text-align: center;
    line-height: 115px; }
    @media print, screen and (min-width: 1024px) {
      .l-hero__inpage h1 {
        line-height: 230px; } }

.l-hero__inpage.facility {
  background-image: url(../image/kv/facility.jpg); }

.l-hero__inpage.access {
  background-image: url(../image/kv/access.jpg); }

.l-hero__inpage.docklist {
  background-image: url(../image/kv/docklist.jpg); }

.l-hero__inpage.charge {
  background-image: url(../image/kv/charge.jpg); }

.l-hero__inpage.question {
  background-image: url(../image/kv/question.jpg); }

/* l-hero__slide
---------------------------------------------------------------------- */
.l-hero__slideItem img {
  width: 100%;
  height: auto; }
.l-hero__slideItem img.forsp {
  display: block !important; }
  @media print, screen and (min-width: 768px) {
    .l-hero__slideItem img.forsp {
      display: none !important; } }
.l-hero__slideItem img.forpc {
  display: none !important; }
  @media print, screen and (min-width: 768px) {
    .l-hero__slideItem img.forpc {
      display: block !important; } }

/* ======================================================================

  section

====================================================================== */
/*doc
---
title: section
name: section
categories: [layout]
---

*/
.l-section {
  position: relative;
  padding: 46px 0; }

@media print, screen and (min-width: 1024px) {
  .l-section {
    padding: 100px 0; } }
.l-section.s-kokuho {
  padding-top: 46px; }

.l-section.l-section--bg-red {
  background: repeating-linear-gradient(-45deg, #fbf1d9, #fbf1d9 10%, transparent 10%, transparent 50%, #fbf1d9 50%, #fbf1d9 60%, transparent 60%, transparent 100%);
  background-size: 13px 13px;
  background-color: #f8ebcb; }

@media print, screen and (min-width: 1024px) {
  .l-section.l-section--bg-red {
    background-size: 15px 15px; } }
.l-section.l-section--bg-beige {
  background: repeating-linear-gradient(-45deg, #F5ECDB, #F5ECDB 12%, transparent 12%, transparent 50%, #F5ECDB 50%, #F5ECDB 62%, transparent 62%, transparent 100%);
  background-size: 10px 10px;
  background-color: #F9F4E9; }

.l-section.l-section--bg-gray {
  background: repeating-linear-gradient(-45deg, #EEEEEE, #EEEEEE 10%, transparent 10%, transparent 50%, #EEEEEE 50%, #EEEEEE 60%, transparent 60%, transparent 100%);
  background-size: 13px 13px;
  background-color: #FAFAFA; }

@media print, screen and (min-width: 1024px) {
  .l-section.l-section--bg-gray {
    background-size: 15px 15px; } }
.l-section.l-section--bg-graycross {
  background-color: #F7F7F7;
  background-image: linear-gradient(45deg, #fafafa 25%, transparent 25%, transparent 75%, #fafafa 75%, #fafafa), linear-gradient(45deg, #f7f7f7 25%, transparent 25%, transparent 75%, #f7f7f7 75%, #f7f7f7);
  background-size: 20px 20px;
  background-position: 0 0, 10px 10px; }

.l-section.l-section--bg-square {
  background-image: url(../image/bg/bg-square-right.png), url(../image/bg/bg-square-left.png);
  background-repeat: no-repeat;
  background-position: top right, bottom left;
  background-size: 315px 342px, 315px 342px; }

@media print, screen and (min-width: 1024px) {
  .l-section.l-section--bg-square {
    background-size: 630px 684px, 630px 684px; } }
.l-section.l-section--border {
  border-bottom: 1px solid #989898; }

.l-section.l-section--near {
  padding-bottom: 0; }

@media print, screen and (min-width: 1024px) {
  body.is-son .p-gnav + .l-section {
    border-top: 3px solid #994c1f; } }
.l-section.l-section--type_last {
  padding-bottom: 90px; }

@media print, screen and (min-width: 1024px) {
  .l-section.l-section--type_last {
    overflow: hidden;
    padding-bottom: 236px; }
    .l-section.l-section--type_last:after {
      display: block;
      position: absolute;
      bottom: -1px;
      left: 50%;
      transform: translateX(-50%);
      width: 105%;
      height: auto;
      margin: 0;
      font-size: 0;
      line-height: 1;
      content: url(../image/other/bg-footer-wave.svg); } }
/* 余白調整
---------------------------------------------------------------------- */
.l-section.l-section--gap_top-0 {
  padding-top: 0; }

/* ======================================================================

  container

====================================================================== */
/*doc
---
title: container
name: container
categories: [layout]
---

l-section > l-container
横幅などの指定

*/
.l-container {
  position: relative;
  width: 86.933%;
  margin: 0 auto;
  max-width: 1200px; }

@media print, screen and (min-width: 1024px) {
  .l-container {
    width: 70.333%; } }
@media print, screen and (min-width: 1024px) {
  .l-container.l-container--large {
    width: 83.333%; } }
.l-container.l-container--full {
  width: 100%;
  max-width: none; }

.l-container.l-container--type_header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: none;
  height: 100%;
  background-image: url(../image/other/header-bg.svg);
  background-repeat: no-repeat;
  background-size: auto 105%;
  background-position: left center; }

@media print, screen and (min-width: 1024px) {
  .l-container.l-container--type_header {
    width: 95%; } }
@media print, screen and (min-width: 1440px) {
  .l-container.l-container--type_header {
    width: 90%; } }
.l-container.l-container--type_calendar {
  max-width: 900px; }

/* #Footer
  -------------------------------------------------------------------------- */
/*doc
---
title: footer
name: footer
categories: [layout]
---
*/
.l-footer {
  margin-top: 0; }

@media print, screen and (min-width: 1024px) {
  .l-section.l-section--type_last + .l-footer {
    margin-top: 0; } }
.l-footer__top {
  z-index: 254;
  position: fixed;
  width: 100%;
  bottom: 0; }
  .l-footer__top .offset {
    padding: 0;
    background-color: #fbf8e6; }
  .l-footer__top .inner {
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap; }

@media print, screen and (min-width: 1024px) {
  .l-footer__top {
    display: block;
    position: relative; }
    .l-footer__top .offset {
      padding: 30px 0; }
    .l-footer__top .inner {
      justify-content: center;
      padding: 0 10px 0 10px; } }
.l-footer__bottom {
  margin-top: 26px;
  padding: 58px 0 26px;
  text-align: center;
  color: #836A4E;
  background-color: #fff;
  background-image: url(../image/other/footer-bg.svg), linear-gradient(to top, rgba(249, 199, 88, 0.4) 0%, white 43%, white 43%);
  background-repeat: no-repeat, repeat;
  background-size: 94% auto, auto;
  background-position: top center, top left; }
  .l-footer__bottom > .title {
    font-size: 1.3rem; }
    .l-footer__bottom > .title > .secondary {
      font-size: 1rem; }
  .l-footer__bottom > .lead {
    font-size: 1.2rem; }

@media print, screen and (min-width: 1024px) {
  .l-footer__bottom {
    margin-top: 54px;
    padding-top: 68px;
    border-bottom: 8px solid #EEB917;
    background-size: 424px auto, auto; }
    .l-footer__bottom > .title {
      font-size: 1.4rem; }
      .l-footer__bottom > .title > .secondary {
        font-size: 1.2rem; }
    .l-footer__bottom > .lead {
      font-size: 1.2rem; } }
/* =============================================================================
   #Object
   ========================================================================== */
/* -----------------------------------------------------------------------------
   #Component
   -------------------------------------------------------------------------- */
/* #Wrapper
  -------------------------------------------------------------------------- */
/*doc
---
title: wrapper
name: wrapper
categories: [component]
---
*/
/* -----------------------------------------------------------------------------
   #Project
   -------------------------------------------------------------------------- */
/* ======================================================================

  #accordion

====================================================================== */
/*doc
---
title: accordion
name: accordion
categories: [project]
---

*/
/* .p-accordion
---------------------------------------------------------------------- */
.p-accordion + .p-accordion {
  margin-top: 14px; }

@media print, screen and (min-width: 1024px) {
  .p-accordion + .p-accordion {
    margin-top: 24px; } }
/* .p-accordion__head
---------------------------------------------------------------------- */
.p-accordion__head {
  display: block;
  position: relative;
  padding: 8px 34px 8px 7px;
  font-size: 1.6rem;
  font-weight: bold;
  background: repeating-linear-gradient(-45deg, #e6cdce, #e6cdce 12%, transparent 12%, transparent 50%, #e6cdce 50%, #e6cdce 62%, transparent 62%, transparent 100%);
  background-size: 10px 10px;
  background-color: #e6d8d6;
  color: #994c1f;
  border-left: 3px solid #994c1f;
  cursor: pointer;
  transition: opacity .3s; }
  .p-accordion__head:hover {
    opacity: 0.7; }
  .p-accordion__head::after {
    display: block;
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%) rotate(90deg);
    width: 20px;
    height: auto;
    margin: 0;
    font-size: 0;
    line-height: 1;
    content: url(../image/common/arrow-circle.svg);
    transition: transform .3s ease; }

.p-accordion.is-active .p-accordion__head::after {
  transform: translateY(-50%) rotate(90deg) rotateY(180deg); }

@media print, screen and (min-width: 1024px) {
  .p-accordion__head {
    padding: 12px 12px 10px 19px;
    border-left-width: 5px;
    font-size: 1.8rem; }
    .p-accordion__head::after {
      right: 22px; } }
/* p-accordion__body
---------------------------------------------------------------------- */
.p-accordion__body {
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
  height: 0;
  padding: 0 10px;
  background-color: #fafafa;
  transition: opacity .3s ease, visibility .3s ease, height .3s ease-in-out, padding .3s ease-in-out; }

@media print, screen and (min-width: 1024px) {
  .p-accordion__body {
    padding: 0 22px; } }
.p-accordion.is-active .p-accordion__body {
  opacity: 1;
  visibility: visible;
  height: 100%;
  padding-top: 24px;
  padding-bottom: 24px; }

@media print, screen and (min-width: 1024px) {
  .p-accordion.is-active .p-accordion__body {
    padding-top: 28px;
    padding-bottom: 28px; } }
/* ****************************************************************************************************

  article-content
  category: project

**************************************************************************************************** */
/* ======================================================================

  大枠

====================================================================== */
/* ======================================================================

  テキスト

====================================================================== */
.p-article-content > p:not([class]) + p:not([class]) {
  margin-top: 1rem; }

@media print, screen and (min-width: 1024px) {
  .p-article-content > p:not([class]) + p:not([class]) {
    margin-top: 1.4rem; } }
/* ======================================================================

  見出し

====================================================================== */
.p-article-content > h2:not([class]) {
  margin: 2.4rem 0 1.6rem;
  font-size: 1.7rem;
  color: #E59B00; }
  .p-article-content > h2:not([class]):first-child {
    margin-top: 0; }

@media print, screen and (min-width: 1024px) {
  .p-article-content > h2:not([class]) {
    margin: 3rem 0 1.6rem;
    font-size: 2.2rem; } }
/* ======================================================================

  リスト

====================================================================== */
.p-article-content ul:not([class]) {
  margin: 1rem 0; }

@media print, screen and (min-width: 1024px) {
  .p-article-content ul:not([class]) {
    margin: 1.4rem 0; } }
.p-article-content ol:not([class]) ul:not([class]),
.p-article-content ul:not([class]) ul:not([class]) {
  margin: 1rem 0;
  padding: 0; }

@media print, screen and (min-width: 1024px) {
  .p-article-content ol:not([class]) ul:not([class]),
  .p-article-content ul:not([class]) ul:not([class]) {
    margin: 1.2rem 0; } }
/* 子要素
---------------------------------------------------------------------- */
.p-article-content ul:not([class]) > li {
  position: relative;
  padding-left: 1.4rem; }
  .p-article-content ul:not([class]) > li::after {
    display: block;
    position: absolute;
    left: 0;
    top: 1rem;
    width: .5rem;
    height: .5rem;
    border-radius: 50% 50%;
    background-color: #E59B00;
    content: ""; }

@media print, screen and (min-width: 1024px) {
  .p-article-content ul:not([class]) > li::after {
    top: 1.1rem; } }
.p-article-content ul:not([class]) > li + li {
  margin-top: .3rem; }

@media print, screen and (min-width: 1024px) {
  .p-article-content ul:not([class]) > li + li {
    margin-top: .4rem; } }
/* ======================================================================

  リストol

====================================================================== */
.p-article-content ol:not([class]) {
  margin: 1.2rem 0;
  counter-reset: item; }

@media print, screen and (min-width: 1024px) {
  .p-article-content ol:not([class]) {
    margin: 2rem 0; } }
.p-article-content ol:not([class]) ol:not([class]),
.p-article-content ul:not([class]) ol:not([class]) {
  margin: 1rem 0; }

@media print, screen and (min-width: 1024px) {
  .p-article-content ol:not([class]) ol:not([class]),
  .p-article-content ul:not([class]) ol:not([class]) {
    margin: 1.2rem 0; } }
/* 子要素
---------------------------------------------------------------------- */
.p-article-content ol:not([class]) > li {
  position: relative;
  padding-left: 1.8rem; }
  .p-article-content ol:not([class]) > li::before {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    color: #E59B00;
    counter-increment: item;
    content: counter(item) "."; }
  .p-article-content ol:not([class]) > li::after {
    content: none; }

@media print, screen and (min-width: 1024px) {
  .p-article-content ol:not([class]) > li {
    padding-left: 2.4rem; } }
.p-article-content ol:not([class]) > li + li {
  margin-top: .3rem; }

@media print, screen and (min-width: 1024px) {
  .p-article-content ol:not([class]) > li + li {
    margin-top: .6rem; } }
/* ======================================================================

  #article

====================================================================== */
/*doc
---
title: article
name: article
categories: [project]
---

記事
トップなどの一覧は.p-article-list

*/
.p-article-list > :first-child {
  padding-top: 16px;
  border-top: 1px dashed #989898; }
  @media print, screen and (min-width: 1024px) {
    .p-article-list > :first-child {
      padding-top: 0; } }

.p-article-list__item {
  padding-bottom: 8px;
  border-bottom: 1px dashed #989898; }
  @media print, screen and (min-width: 1024px) {
    .p-article-list__item {
      padding-bottom: 0; } }
  .p-article-list__item + .p-article-list__item {
    margin-top: 18px; }
    @media print, screen and (min-width: 1024px) {
      .p-article-list__item + .p-article-list__item {
        margin-top: 0; } }
  .p-article-list__item > .inner {
    display: block;
    width: 100%;
    height: 100%; }
    @media print, screen and (min-width: 1024px) {
      .p-article-list__item > .inner {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        padding: 18px 0; } }

/* p-article-list__itemHead
---------------------------------------------------------------------- */
.p-article-list__itemHead {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 6px;
  line-height: 1; }
  @media print, screen and (min-width: 1024px) {
    .p-article-list__itemHead {
      margin-bottom: 0;
      margin-right: 22px; } }
  .p-article-list__itemHead > .date {
    color: #797979;
    margin-right: 10px;
    font-size: 1.2rem; }
    @media print, screen and (min-width: 1024px) {
      .p-article-list__itemHead > .date {
        margin-right: 18px;
        font-size: 1.4rem; } }
  .p-article-list__itemHead > .cate {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 10px;
    color: #fff;
    font-size: 10px; }
    @media print, screen and (min-width: 1024px) {
      .p-article-list__itemHead > .cate {
        width: 120px;
        padding: 11px 10px;
        border-radius: 16px;
        text-align: center;
        font-size: 1.2rem; } }
    .p-article-list__itemHead > .cate.red {
      background-color: #DC5B79; }
    .p-article-list__itemHead > .cate.gray {
      background-color: #797979; }
    .p-article-list__itemHead > .cate.blue {
      background-color: #176885; }
    .p-article-list__itemHead > .cate.green {
      background-color: #23ab3a; }
    .p-article-list__itemHead > .cate.yellow {
      background-color: #E59B00; }

/* p-article-list__itemBody
---------------------------------------------------------------------- */
.p-article-list__itemBody > .title {
  color: #3B2D06; }

/* ======================================================================

  #article

====================================================================== */
/*doc
---
title: article
name: article
categories: [project]
---

記事
トップなどの一覧は.p-article-list

*/
.p-article {
  padding-bottom: 32px;
  border-bottom: 1px dashed #994c1f; }
  @media print, screen and (min-width: 1024px) {
    .p-article {
      padding-bottom: 42px; } }

/* p-article__info
---------------------------------------------------------------------- */
.p-article__info {
  color: #797979;
  margin-bottom: 6px;
  font-size: 1.2rem; }
  @media print, screen and (min-width: 1024px) {
    .p-article__info {
      margin-bottom: 12px;
      font-size: 1.4rem; } }

.p-article__info > .date {
  position: relative;
  display: inline-block; }

.p-article__info > .cate {
  display: inline-block;
  position: relative;
  margin-left: 6px;
  padding-left: 10px; }
  .p-article__info > .cate::before {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 1px;
    height: 12px;
    margin: auto;
    background-color: #797979;
    content: ""; }

/* p-article__image
---------------------------------------------------------------------- */
.p-article__image {
  margin: 24px 0;
  text-align: center; }
  @media print, screen and (min-width: 1024px) {
    .p-article__image {
      margin: 30px 0;
      padding: 0 20px; } }

/* p-article__txt
---------------------------------------------------------------------- */
@media print, screen and (min-width: 1024px) {
  .p-article__txt {
    padding: 0 20px; } }
.p-article__txt > p + p {
  margin-top: 20px; }

/* ======================================================================

  #block

====================================================================== */
/*doc
---
title: block
name: block
categories: [project]
---
*/
.p-block + .p-block {
  margin-top: 26px; }
.p-block + .p-block.p-block--large {
  margin-top: 46px; }
.p-block + .p-block.p-block--small {
  margin-top: 14px; }
.p-block.p-block--type_border-bottom {
  padding-bottom: 20px;
  border-bottom: 1px dashed #989898; }

@media print, screen and (min-width: 1024px) {
  .p-block + .p-block {
    margin-top: 52px; }
  .p-block + .p-block.p-block--large {
    margin-top: 100px; }
  .p-block.p-block--type_border-bottom {
    padding-bottom: 28px; } }
/* ======================================================================

  #bnr

====================================================================== */
/*doc
---
title: bnr
name: bnr
categories: [project]
---
*/
/* p-bnr
---------------------------------------------------------------------- */
.p-bnr {
  position: relative; }

.p-bnr__inner {
  display: block;
  width: 100%;
  height: auto; }

/* ======================================================================

  #box

====================================================================== */
/*doc
---
title: box
name: box
categories: [project]
---
*/
/* p-box
---------------------------------------------------------------------- */
.p-box {
  overflow: hidden;
  position: relative;
  width: 100%;
  padding-top: 62.6728%;
  line-height: 1.4; }
  @media print, screen and (min-width: 1024px) {
    .p-box {
      padding-top: 31.2627%; } }
  .p-box > .inner {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%; }

.p-box__image {
  z-index: 0;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto; }
  .p-box__image > img {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; }
    @media print, screen and (min-width: 1024px) {
      .p-box__image > img {
        font-family: 'object-fit: cover;'; } }

.p-box__content {
  z-index: 1;
  position: absolute;
  bottom: 14px;
  left: 14px;
  padding: 10px 14px;
  background-color: rgba(235, 118, 0, 0.8);
  color: #fff; }
  .p-box__content > .txt {
    font-size: 1.2rem;
    margin-bottom: 8px; }
    @media print, screen and (min-width: 1024px) {
      .p-box__content > .txt {
        font-size: 1.4rem; } }
  .p-box__content > .title {
    font-weight: bold; }

.p-box.p-box--color_pink .p-box__content {
  background-color: rgba(229, 118, 90, 0.82); }

/* ======================================================================

  #btn

====================================================================== */
/*doc
---
title: btn
name: btn
categories: [project]
---
*/
/* p-btn-wrap
---------------------------------------------------------------------- */
.p-btn-wrap.p-btn-wrap--type_double > :last-child {
  margin-top: 14px; }

@media print, screen and (min-width: 768px) {
  .p-btn-wrap.p-btn-wrap--type_double {
    display: flex;
    justify-content: center;
    align-items: stretch; }
    .p-btn-wrap.p-btn-wrap--type_double > :last-child {
      margin-left: 26px;
      margin-top: 0; } }
/* p-btn
---------------------------------------------------------------------- */
.p-btn {
  position: relative;
  width: 100%;
  font-size: 14px;
  height: 56px; }

@media print, screen and (min-width: 768px) {
  .p-btn {
    width: 45%;
    height: 62px; } }
@media print, screen and (min-width: 1024px) {
  .p-btn {
    width: 314px;
    height: 80px;
    font-size: 18px; } }
/* header
---------------------------------------------------------------------- */
@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_header {
    width: auto;
    font-size: 16px; }

  .p-btn.p-btn--type_header + .p-btn.p-btn--type_header {
    margin-left: 26px; } }
/* header3カラム
---------------------------------------------------------------------- */
@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_header-3cols {
    width: auto;
    height: 80px;
    font-size: 14px;
    font-weight: bold; }

  .p-btn.p-btn--type_header-3cols + .p-btn.p-btn--type_header-3cols {
    margin-left: 10px; } }
/* headerかつtel
---------------------------------------------------------------------- */
@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_header.p-btn--type_tel {
    height: 80px; } }
/* headerかつweb
---------------------------------------------------------------------- */
@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_header.p-btn--type_web {
    height: 80px; } }
/* 健診一覧のところにあるボタン
---------------------------------------------------------------------- */
.p-btn.p-btn--type_light {
  width: 100%;
  height: auto;
  border: 1px solid #E59B00;
  font-size: 1.2rem;
  margin-top: 14px; }

@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_light {
    margin-top: 22px; } }
/* フッターfull
---------------------------------------------------------------------- */
.p-btn.p-btn--type_footer_full {
  width: 100%;
  height: 56px; }

@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_footer_full {
    width: 314px;
    height: 80px; }

  .p-btn.p-btn--type_footer_full + .p-btn.p-btn--type_footer_full {
    margin-left: 26px; } }
/* フッター
---------------------------------------------------------------------- */
.p-btn.p-btn--type_footer {
  width: 50%;
  height: 56px;
  text-align: center; }

@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_footer {
    width: 314px;
    height: 80px; }

  .p-btn.p-btn--type_footer + .p-btn.p-btn--type_footer {
    margin-left: 26px; } }
/* footer3カラム
---------------------------------------------------------------------- */
.p-btn.p-btn--type_footer-3cols {
  width: 33.3%;
  height: 56px;
  font-size: 12px;
  font-weight: bold;
  text-align: center; }
  .p-btn.p-btn--type_footer-3cols:nth-child(2n) {
    width: 33.4%; }

@media print, screen and (min-width: 375px) {
  .p-btn.p-btn--type_footer-3cols {
    font-size: 14px; } }
@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_footer-3cols {
    width: 300px;
    height: 80px;
    font-size: 18px; }
    .p-btn.p-btn--type_footer-3cols:nth-child(2n) {
      width: 300px; }

  .p-btn.p-btn--type_footer-3cols + .p-btn.p-btn--type_footer-3cols {
    margin-left: 26px; } }
/* inpage
---------------------------------------------------------------------- */
.p-btn.p-btn--type_inpage {
  width: 100%;
  height: 40px; }

@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_inpage {
    width: auto;
    display: inline-block;
    height: 40px; }

  .p-btn.p-btn--type_inpage + .p-btn.p-btn--type_inpage {
    margin-left: 26px; } }
/* 施設のご案内
---------------------------------------------------------------------- */
.p-btn.p-btn--type_facility {
  width: auto;
  height: 100%; }

@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_facility {
    font-size: 14px; } }
/* ======================================================================

  p-btn__inner

====================================================================== */
.p-btn__inner {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  width: 100%;
  height: 100%;
  padding-right: 10px;
  color: #fff;
  transition: 0.3s; }
  .p-btn__inner::before {
    display: block;
    position: absolute;
    top: 50%;
    right: 8px;
    transform: translateY(-50%);
    width: 7px;
    height: auto;
    margin: auto;
    font-size: 0;
    line-height: 1;
    content: url(../image/common/arrow-white.svg); }
  .p-btn__inner:hover {
    opacity: 0.7; }

@media print, screen and (min-width: 1024px) {
  .p-btn__inner::before {
    right: 12px;
    width: 8px; } }
/* header
---------------------------------------------------------------------- */
@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_header .p-btn__inner {
    padding: 0 14px; }
    .p-btn.p-btn--type_header .p-btn__inner::before {
      display: block;
      position: absolute;
      top: auto;
      right: 4px;
      bottom: 4px;
      width: 0;
      height: 0;
      transform: translate(0, 0);
      padding-right: 0;
      border-left: 12px solid transparent;
      border-bottom: 12px solid #fff;
      content: ""; } }
/* header3カラム
---------------------------------------------------------------------- */
@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_header-3cols .p-btn__inner {
    padding: 0 10px 0; }
    .p-btn.p-btn--type_header-3cols .p-btn__inner::before {
      position: absolute;
      top: auto;
      right: 4px;
      bottom: 4px;
      width: 0;
      height: 0;
      transform: translate(0, 0);
      padding-right: 0;
      border-left: 12px solid transparent;
      border-bottom: 12px solid #fff;
      content: ""; } }
/* footer3カラム
---------------------------------------------------------------------- */
@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_footer-3cols .p-btn__inner::before {
    display: block;
    position: absolute;
    top: auto;
    right: 4px;
    bottom: 4px;
    width: 0;
    height: 0;
    transform: translate(0, 0);
    padding-right: 0;
    border-left: 12px solid transparent;
    border-bottom: 12px solid #fff;
    content: ""; } }
/* footer3カラムかつtel
---------------------------------------------------------------------- */
.p-btn.p-btn--type_footer.p-btn--type_tel .p-btn__inner,
.p-btn.p-btn--type_footer-3cols.p-btn--type_tel .p-btn__inner {
  padding: 0; }
  .p-btn.p-btn--type_footer.p-btn--type_tel .p-btn__inner::before,
  .p-btn.p-btn--type_footer-3cols.p-btn--type_tel .p-btn__inner::before {
    content: none; }

.p-btn.p-btn--type_light .p-btn__inner {
  padding: 5px 0 5px 0;
  color: #E59B00; }
  .p-btn.p-btn--type_light .p-btn__inner::before {
    content: none; }
  .p-btn.p-btn--type_light .p-btn__inner::after {
    display: block;
    position: absolute;
    bottom: 0;
    right: 0;
    border-left: 8px solid transparent;
    border-bottom: 8px solid #E59B00;
    content: ""; }
  .p-btn.p-btn--type_light .p-btn__inner:hover {
    background-color: #E59B00;
    opacity: 1;
    color: #fff; }

.p-btn.p-btn--type_form .p-btn__inner {
  padding-right: 0; }
  .p-btn.p-btn--type_form .p-btn__inner::before {
    content: none; }

/* p-btn--modifiler
---------------------------------------------------------------------- */
.p-btn.p-btn--yellow .p-btn__inner {
  background-color: #EEB917;
  background-image: linear-gradient(162deg, #eeb917 0%, #eeb917 50%, #e59b00 50%, #e59b00 100%); }

.p-btn.p-btn--blue .p-btn__inner {
  background-color: #2388AC;
  background-image: linear-gradient(162deg, #2388ac 0%, #2388ac 50%, #176885 50%, #176885 100%); }

.p-btn.p-btn--red .p-btn__inner {
  background-color: #DC5B79;
  background-image: linear-gradient(162deg, #dc5b79 0%, #dc5b79 50%, #d1385c 50%, #d1385c 100%); }

.p-btn.p-btn--green .p-btn__inner {
  background-color: #23ab3a;
  background-image: linear-gradient(162deg, #a3c366 0%, #a3c366 50%, #82bb22 50%, #82bb22 100%); }

.p-btn.p-btn--brown .p-btn__inner {
  background-color: #994c1f;
  background-image: linear-gradient(162deg, #994c1f 0%, #994c1f 50%, #863c1e 50%, #863c1e 100%); }

.p-btn.p-btn--white .p-btn__inner {
  background-color: #eee3cf;
  background-image: linear-gradient(162deg, #f5ecdb 0%, #f5ecdb 50%, #eee3d0 50%, #eee3d0 100%); }
  .p-btn.p-btn--white .p-btn__inner::before {
    background-image: url(../image/common/arrow-right-brown.svg); }

.p-btn.p-btn--white .p-btn__innerTxt > .btn {
  color: #994c1f; }

/* inpage
---------------------------------------------------------------------- */
.p-btn.p-btn--type_inpage .p-btn__inner {
  padding-left: 20px;
  padding-right: 20px; }

@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_inpage .p-btn__inner {
    padding-right: 40px; } }
/* 施設のごあんない
---------------------------------------------------------------------- */
.p-btn.p-btn--type_facility .p-btn__inner {
  padding: 13px 8px 13px 8px;
  text-align: center; }

@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_facility .p-btn__inner {
    padding: 14px 19px 14px 19px; }
    .p-btn.p-btn--type_facility .p-btn__inner::before {
      right: 10px;
      width: 6px; } }
/* ======================================================================

  p-btn__innerTxt

====================================================================== */
.p-btn__innerTxt {
  line-height: 1.4;
  font-weight: bold; }

.p-btn.p-btn--type_inpage .p-btn__innerTxt {
  font-size: 1.5rem; }

.p-btn.p-btn--type_web .p-btn__innerTxt {
  position: relative; }

.p-btn.p-btn--type_footer-3cols .p-btn__innerTxt {
  line-height: 1.2; }

.p-btn.p-btn--type_footer .p-btn__innerTxt {
  line-height: 1.2; }

/* innterTxt > .secondary
---------------------------------------------------------------------- */
.p-btn__innerTxt > .secondary {
  display: block;
  font-size: 10px;
  font-weight: bold;
  margin-bottom: 4px; }

@media print, screen and (min-width: 1024px) {
  .p-btn__innerTxt > .secondary {
    font-size: 14px; } }
/* innterTxt > .main
---------------------------------------------------------------------- */
.p-btn__innerTxt > .main {
  position: relative;
  display: block; }

/* 電話
---------------------------------------------------------------------- */
.p-btn.p-btn--type_tel .p-btn__innerTxt > .main {
  font-weight: bold; }
  .p-btn.p-btn--type_tel .p-btn__innerTxt > .main::before {
    display: block;
    position: absolute;
    top: 50%;
    left: -6px;
    transform: translateY(-48%);
    width: 22px;
    height: auto;
    font-size: 0;
    content: none; }

@media print, screen and (min-width: 375px) {
  .p-btn.p-btn--type_tel .p-btn__innerTxt > .main {
    padding-left: 12px; }
    .p-btn.p-btn--type_tel .p-btn__innerTxt > .main::before {
      content: url(../image/icon/tel-white.svg); } }
@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_tel .p-btn__innerTxt > .main {
    font-size: 20px;
    padding-left: 20px; }
    .p-btn.p-btn--type_tel .p-btn__innerTxt > .main::before {
      left: -6px;
      transform: translateY(-49%);
      width: 30px; } }
/* web
---------------------------------------------------------------------- */
.p-btn.p-btn--type_web .p-btn__innerTxt > .main::before {
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 20px;
  height: auto;
  margin: auto;
  font-size: 0;
  line-height: 1;
  content: none; }

@media print, screen and (min-width: 375px) {
  .p-btn.p-btn--type_web .p-btn__innerTxt > .main {
    padding-left: 22px; }
    .p-btn.p-btn--type_web .p-btn__innerTxt > .main::before {
      content: url(../image/icon/desktop-white.svg); } }
@media print, screen and (min-width: 375px) {
  .p-btn.p-btn--type_web.p-btn--type_callback .p-btn__innerTxt > .main {
    padding-left: 22px; }
    .p-btn.p-btn--type_web.p-btn--type_callback .p-btn__innerTxt > .main::before {
      content: url(../image/icon/icon-common-callback.svg); } }
@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_web .p-btn__innerTxt > .main {
    position: relative;
    padding-left: 28px; } }
/* headerかつweb
---------------------------------------------------------------------- */
.p-btn.p-btn--type_header.p-btn--type_web .p-btn__innerTxt > .main::before {
  width: 32px;
  height: auto; }

@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_header.p-btn--type_web .p-btn__innerTxt > .main {
    padding-left: 32px; } }
/* header3カラムかつweb
---------------------------------------------------------------------- */
@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_header-3cols.p-btn--type_web .p-btn__innerTxt > .main {
    padding-left: 22px; }
    .p-btn.p-btn--type_header-3cols.p-btn--type_web .p-btn__innerTxt > .main::before {
      left: -3px;
      width: 26px;
      height: auto; } }
/* headerかつtel
---------------------------------------------------------------------- */
.p-btn.p-btn--type_header.p-btn--type_tel .p-btn__innerTxt > .main {
  font-size: 24px; }

@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_header.p-btn--type_tel .p-btn__innerTxt > .main::before {
    width: 30px; } }
/* header3カラムかつtel
---------------------------------------------------------------------- */
@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_header-3cols.p-btn--type_tel .p-btn__innerTxt > .main {
    padding: 0 0 0 20px;
    font-size: 18px; }
    .p-btn.p-btn--type_header-3cols.p-btn--type_tel .p-btn__innerTxt > .main::before {
      position: absolute;
      left: -3px;
      width: 28px;
      height: auto;
      margin-right: 3px; } }
/* footer3カラム
---------------------------------------------------------------------- */
.p-btn.p-btn--type_footer-3cols .p-btn__innerTxt > .main {
  font-size: 12px; }

@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_footer-3cols .p-btn__innerTxt > .main {
    font-size: 18px; } }
/* footer3カラムかつtel
---------------------------------------------------------------------- */
.p-btn.p-btn--type_footer-3cols.p-btn--type_tel .p-btn__innerTxt > .main::before {
  content: none; }

@media print, screen and (min-width: 375px) {
  .p-btn.p-btn--type_footer-3cols.p-btn--type_tel .p-btn__innerTxt > .main {
    padding: 0; }
    .p-btn.p-btn--type_footer-3cols.p-btn--type_tel .p-btn__innerTxt > .main::before {
      content: none; } }
@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_footer-3cols.p-btn--type_tel .p-btn__innerTxt > .main {
    font-size: 18px;
    padding: 0 0 0 24px; }
    .p-btn.p-btn--type_footer-3cols.p-btn--type_tel .p-btn__innerTxt > .main::before {
      position: absolute;
      top: 50%;
      left: -2px;
      transform: translateY(-50%);
      width: 28px;
      content: url(../image/icon/tel-white.svg); } }
/* footer3カラムかつweb
---------------------------------------------------------------------- */
.p-btn.p-btn--type_footer-3cols.p-btn--type_web .p-btn__innerTxt > .main {
  padding: 0; }
  .p-btn.p-btn--type_footer-3cols.p-btn--type_web .p-btn__innerTxt > .main::before {
    content: none; }

@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_footer-3cols.p-btn--type_web .p-btn__innerTxt > .main {
    padding-left: 28px; }
    .p-btn.p-btn--type_footer-3cols.p-btn--type_web .p-btn__innerTxt > .main::before {
      position: absolute;
      left: -2px;
      width: 28px;
      content: url(../image/icon/desktop-white.svg); } }
@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_footer-3cols.p-btn--type_callback .p-btn__innerTxt > .main {
    padding-left: 28px; }
    .p-btn.p-btn--type_footer-3cols.p-btn--type_callback .p-btn__innerTxt > .main::before {
      position: absolute;
      left: -2px;
      width: 28px;
      content: url(../image/icon/icon-common-callback.svg); } }
/* inpage
---------------------------------------------------------------------- */
.p-btn.p-btn--type_inpage .p-btn__innerTxt {
  font-size: 1.5rem; }

/* innterTxt > .btn
---------------------------------------------------------------------- */
.p-btn__innerTxt > .btn {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  cursor: pointer;
  color: #fff;
  font-weight: bold; }

@media print, screen and (min-width: 1024px) {
  .p-btn__innerTxt > .btn {
    font-size: 18px; } }
.p-btn.p-btn--type_footer-2cols {
  width: 50%; }

@media print, screen and (min-width: 1024px) {
  .p-btn.p-btn--type_footer-2cols {
    width: 314px;
    margin: 13px; } }
/* ======================================================================

  #calendar

====================================================================== */
/*doc
---
title: calendar
name: calendar
categories: [project]
---
*/
/* p-calendar-wrap
---------------------------------------------------------------------- */
@media print, screen and (min-width: 768px) {
  .p-calendar-wrap {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: -16px; } }
@media print, screen and (min-width: 1024px) {
  .p-calendar-wrap {
    margin-bottom: -26px; } }

@media print, screen and (min-width: 768px) {
  .p-calendar-wrap.p-calendar-wrap--type_index {
    margin-bottom: 0px; } }

/* p-calendar
---------------------------------------------------------------------- */
.p-calendar-wrap .p-calendar {
  margin-bottom: 26px;
  background-color: #fff; }
  @media print, screen and (min-width: 768px) {
    .p-calendar-wrap .p-calendar {
      width: 46.5%; } }
  @media print, screen and (min-width: 1024px) {
    .p-calendar-wrap .p-calendar {
      width: 30.958%;
      margin-bottom: 36px; } }

.p-calendar-wrap > :last-child {
  margin-bottom: 0; }
  @media print, screen and (min-width: 768px) {
    .p-calendar-wrap > :last-child {
      margin-bottom: 26px; } }
  @media print, screen and (min-width: 1024px) {
    .p-calendar-wrap > :last-child {
      margin-bottom: 36px; } }

@media print, screen and (min-width: 768px) {
  .p-calendar-wrap.p-calendar-wrap--type_index .p-calendar {
    width: 46.5%;
    margin-bottom: 0; } }

/* p-calendar__title
---------------------------------------------------------------------- */
.p-calendar__title {
  margin: 0;
  padding: 8px 0;
  background-color: #994c1f;
  color: #fff;
  font-weight: normal;
  font-size: 1.8rem;
  text-align: center;
  line-height: 1; }

/* p-calendar__list
---------------------------------------------------------------------- */
.p-calendar__list {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  color: #806b56;
  padding: 4px 6px 6px; }

.p-calendar__list > li {
  position: relative;
  width: calc(100% / 7);
  padding-top: calc(100% / 10);
  text-align: center;
  line-height: 1;
  font-size: 14px; }

_:-ms-lang(x), .p-calendar__list > li {
  width: 14.28%; }

.p-calendar__list > li.jc-head {
  font-size: 16px;
  font-weight: bold; }

.p-calendar__list > li.jc-head.jc-sun {
  color: #D1385C; }

.p-calendar__list > li.jc-head.jc-sat {
  color: #2388AC; }

.p-calendar__list > li.holiday {
  color: #fff; }

.p-calendar__list > li.holiday::after {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 90%;
  height: 80%;
  background-color: #797979;
  content: ""; }

.p-calendar__list > li.holiday.holiday-man::after {
  background-color: #2388AC; }

.p-calendar__list > li.holiday.holiday-lady::after {
  background-color: #db5abe; }

.p-calendar__list > li.holiday.holiday-special::after {
  background-color: #eb7d3c; }

.p-calendar__list > li.holiday.disable::after {
  background-color: #797979; }

.p-calendar__list > li > span {
  z-index: 1;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }

/* ======================================================================

  #card

====================================================================== */
/*doc
---
title: card
name: card
categories: [project]
---
*/
/* p-card
---------------------------------------------------------------------- */
.p-card {
  position: relative;
  background-color: #fff;
  line-height: 1.5; }
  .p-card::after {
    display: block;
    position: absolute;
    bottom: 0;
    right: 0;
    border-left: 12px solid transparent;
    border-bottom: 12px solid #E59B00;
    content: ""; }
  .p-card > .inner {
    display: block;
    width: 100%;
    height: 100%; }

.p-card.p-card--type_docklist {
  display: flex;
  justify-content: stretch;
  flex-direction: column;
  align-items: stretch; }

/* p-card__image
---------------------------------------------------------------------- */
.p-card__image {
  overflow: hidden;
  position: relative;
  z-index: 1;
  width: 100%;
  padding-top: 71.7948%; }
  .p-card__image > img {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; }
    @media print, screen and (min-width: 1024px) {
      .p-card__image > img {
        font-family: 'object-fit: cover;'; } }

.p-card.p-card--type_docklist .p-card__image {
  padding-top: 0; }
  .p-card.p-card--type_docklist .p-card__image > .inner {
    display: block;
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 78%; }
  .p-card.p-card--type_docklist .p-card__image > .inner > img {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; }
    @media print, screen and (min-width: 1024px) {
      .p-card.p-card--type_docklist .p-card__image > .inner > img {
        font-family: 'object-fit: cover;'; } }

/* p-card__summary
---------------------------------------------------------------------- */
.p-card__summary {
  position: relative;
  z-index: 2;
  padding: 20px 10px 18px; }
  @media print, screen and (min-width: 1024px) {
    .p-card__summary {
      padding: 26px 14px 20px; } }
  .p-card__summary > .icon {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: -17px;
    right: 0;
    left: 0;
    width: 29px;
    height: 29px;
    margin: auto;
    border-radius: 50% 50%;
    background-color: #E59B00;
    content: ""; }
    .p-card__summary > .icon > img {
      display: block;
      width: 71%;
      height: auto; }
    @media print, screen and (min-width: 1024px) {
      .p-card__summary > .icon {
        top: -28px;
        width: 44px;
        height: 44px; }
        .p-card__summary > .icon > img {
          width: 80%; } }
  .p-card__summary > .icon.small > img {
    display: block;
    width: 49%;
    height: auto; }
  .p-card__summary > .icon.large > img {
    display: block;
    width: 98%;
    height: auto; }
  .p-card__summary > .lead {
    margin-bottom: 6px;
    font-size: 1.2rem; }
    @media print, screen and (min-width: 1024px) {
      .p-card__summary > .lead {
        font-size: 1.4rem;
        margin-bottom: 8px; } }
  .p-card__summary > .title {
    font-size: 1.3rem;
    font-weight: bold; }
    @media print, screen and (min-width: 1024px) {
      .p-card__summary > .title {
        font-size: 1.6rem; } }

.p-card.p-card--type_docklist .p-card__summary {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: stretch;
  flex-grow: 1; }
  .p-card.p-card--type_docklist .p-card__summary > .main > .lead {
    margin-bottom: 6px;
    font-size: 1.2rem; }
    @media print, screen and (min-width: 1024px) {
      .p-card.p-card--type_docklist .p-card__summary > .main > .lead {
        font-size: 1.4rem;
        margin-bottom: 8px; } }
  .p-card.p-card--type_docklist .p-card__summary > .main > .title {
    font-size: 1.2rem;
    font-weight: bold;
    color: #836A4E; }
    @media print, screen and (min-width: 1024px) {
      .p-card.p-card--type_docklist .p-card__summary > .main > .title {
        font-size: 1.6rem; } }

/* p-card--type_nonmarker
---------------------------------------------------------------------- */
.p-card.p-card--type_nonmarker .p-card__summary::after {
  content: none; }

/* p-card--type_reservation
---------------------------------------------------------------------- */
.p-card.p-card--type_reservation {
  background-color: #994c1f;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center; }
  .p-card.p-card--type_reservation::after {
    border-bottom-color: #994c1f; }
  .p-card.p-card--type_reservation > .inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: #fff; }
  .p-card.p-card--type_reservation .p-card__image {
    width: 54.487%;
    padding-top: 54.487%;
    border-radius: 50% 50%;
    background-color: rgba(255, 255, 255, 0.2); }
    .p-card.p-card--type_reservation .p-card__image > img {
      width: 64%;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      height: auto;
      object-fit: fill; }
      @media print, screen and (min-width: 1024px) {
        .p-card.p-card--type_reservation .p-card__image > img {
          width: 84px; } }
  .p-card.p-card--type_reservation .p-card__summary {
    text-align: center;
    padding-top: 12px;
    padding-bottom: 12px; }

/* 背景ベージュ
---------------------------------------------------------------------- */
.p-card.p-card--bg_beige {
  background-color: #F9F4E9; }

/* 背景黄色
---------------------------------------------------------------------- */
.p-card.p-card--bg_yellow {
  background-color: #edeea1; }

/* ======================================================================

  #checklist

====================================================================== */
/*doc
---
title: checklist
name: checklist
categories: [project]
---
*/
.p-checklist li {
  position: relative;
  padding-left: 24px; }
  .p-checklist li + li {
    margin-top: 10px; }
  .p-checklist li::before {
    display: block;
    position: absolute;
    top: 3px;
    left: 0;
    width: 18px;
    height: auto;
    margin: auto;
    font-size: 0;
    line-height: 1;
    content: url(../image/icon/icon-common-marker.svg); }

@media print, screen and (min-width: 1024px) {
  .p-checklist li::before {
    top: 6px; } }
/* ======================================================================

  contact-block

====================================================================== */
/*doc
---
title: contact-block
name: contact-block
categories: [project]
---

*/
/* contact-block
---------------------------------------------------------------------- */
.p-contact-block {
  display: block;
  position: relative;
  background-color: #fff;
  border: 1px solid #989898; }

/* a
---------------------------------------------------------------------- */
.p-contact-block__inner {
  display: block;
  position: relative;
  padding: 1rem;
  color: #3B2D06; }

@media print, screen and (min-width: 1024px) {
  .p-contact-block__inner {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    padding: 2rem 0; } }
/* head
---------------------------------------------------------------------- */
.p-contact-block__head {
  padding: 0 0 .8rem;
  border-bottom: 1px dashed #989898; }

@media print, screen and (min-width: 1024px) {
  .p-contact-block__head {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 38.15%;
    padding: 1rem 1rem;
    border-right: 1px dashed #989898;
    border-bottom: none; } }
/* title
---------------------------------------------------------------------- */
.p-contact-block__title {
  position: relative;
  padding-left: 2.2rem; }

@media print, screen and (min-width: 1024px) {
  .p-contact-block__title {
    padding-left: 2.4rem; } }
.p-contact-block__title > img {
  display: block;
  position: absolute;
  top: 50%;
  left: -.5rem;
  transform: translateY(-50%);
  width: 2.8rem;
  height: auto; }

@media print, screen and (min-width: 1024px) {
  .p-contact-block__title > img {
    width: 3.2rem; } }
.p-contact-block__title > span {
  font-size: 1.6rem;
  font-family: "Shippori Mincho", serif;
  font-weight: normal;
  color: #836A4E; }

@media print, screen and (min-width: 1024px) {
  .p-contact-block__title > span {
    font-size: 2rem; } }
/* main
---------------------------------------------------------------------- */
.p-contact-block__body {
  padding: 1.4rem 0 0; }

@media print, screen and (min-width: 1024px) {
  .p-contact-block__body {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 61.85%;
    padding: 1rem 1rem; } }
/* main
---------------------------------------------------------------------- */
.p-contact-block__main {
  position: relative;
  padding-left: 2.4rem; }

@media print, screen and (min-width: 1024px) {
  .p-contact-block__main {
    padding-left: 3.2rem; } }
/* アイコン
---------------------------------------------------------------------- */
.p-contact-block__main > img {
  display: block;
  position: absolute;
  top: 50%;
  left: -.5rem;
  transform: translateY(-50%);
  width: 3.4rem;
  height: auto; }

@media print, screen and (min-width: 1024px) {
  .p-contact-block__main > img {
    width: 4rem; } }
/* テキスト
---------------------------------------------------------------------- */
.p-contact-block__main > span {
  font-size: 2.2rem;
  font-weight: bold;
  color: #EEB917; }

@media print, screen and (min-width: 1024px) {
  .p-contact-block__main > span {
    font-size: 3rem; } }
/* caption
---------------------------------------------------------------------- */
.p-contact-block__caption {
  margin: .5rem 0 0;
  font-size: 1.2rem; }

@media print, screen and (min-width: 1024px) {
  .p-contact-block__caption {
    margin: .5rem 0 0;
    font-size: 1.4rem; } }
/* ======================================================================

 #contact

====================================================================== */
/*doc
---
title: contact
name: contact
categories: [project]
---

*/
/* ======================================================================

  大枠

====================================================================== */
.p-contact {
  border: 1px solid #989898;
  background-color: #fff; }
  .p-contact + .p-contact {
    border-top: none; }

@media print, screen and (min-width: 1024px) {
  .p-contact.p-contact--type_2row {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    align-items: stretch; } }
@media print, screen and (min-width: 1024px) {
  .p-contact.p-contact--small {
    width: 662px;
    margin-right: auto;
    margin-left: auto; } }
/* ======================================================================

  タイトル部分

====================================================================== */
.p-contact__head {
  padding: 1.7rem 1.4rem;
  line-height: 1.4;
  border-bottom: 1px dashed #989898; }

@media print, screen and (min-width: 1024px) {
  .p-contact__head {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    padding: 2.5rem 2.9rem; } }
.p-contact__head.p-contact__head--border_none {
  border-bottom: none; }

@media print, screen and (min-width: 1024px) {
  .p-contact.p-contact--type_2row .p-contact__head {
    width: 100%; } }
/* メイン
---------------------------------------------------------------------- */
.p-contact__head > .title {
  position: relative;
  padding-left: 2.2rem;
  font-size: 1.6rem;
  font-family: "Shippori Mincho", serif;
  font-weight: normal;
  color: #836A4E; }
  .p-contact__head > .title::before {
    display: block;
    position: absolute;
    top: 50%;
    left: -.5rem;
    transform: translatey(-50%);
    width: 2.8rem;
    height: auto;
    font-size: 0;
    line-height: 1;
    content: url(../image/icon/tel.svg); }

@media print, screen and (min-width: 1024px) {
  .p-contact__head > .title {
    padding-left: 3.2rem;
    font-size: 1.8rem; }
    .p-contact__head > .title::before {
      width: 3.8rem; } }
.p-contact__head > .title.access::before {
  content: url(../image/icon/map.svg); }

.p-contact__head > .title.logo::before {
  content: url(../image/icon/hokenkai.svg); }

/* サブ
---------------------------------------------------------------------- */
.p-contact__head > .lead {
  margin-top: .6rem; }

@media print, screen and (min-width: 1024px) {
  .p-contact__head > .lead {
    margin-top: 0;
    margin-left: 1.8rem; } }
/* ======================================================================

  ボディ

====================================================================== */
.p-contact__body {
  padding: 2.5rem 1.4rem; }
  .p-contact__body + .p-contact__body {
    border-top: 1px dashed #989898; }

@media print, screen and (min-width: 1024px) {
  .p-contact__body {
    padding: 3.2rem 2.9rem; } }
@media print, screen and (min-width: 1024px) {
  .p-contact.p-contact--type_2row .p-contact__body {
    width: 50%; }
    .p-contact.p-contact--type_2row .p-contact__body + .p-contact__body {
      border-top: none;
      border-left: 1px dashed #989898; } }
.p-contact__body > .block + .block {
  margin-top: 1.8rem; }

@media print, screen and (min-width: 1024px) {
  .p-contact__body > .block + .block {
    margin-top: 2.8rem; } }
/* title
---------------------------------------------------------------------- */
.p-contact__body .title {
  margin: 2rem 0 .8rem;
  color: #836A4E;
  font-weight: bold; }

@media print, screen and (min-width: 1024px) {
  .p-contact__body .title {
    margin-top: 2.5rem; } }
/* list
---------------------------------------------------------------------- */
.p-contact__body .list > li {
  position: relative;
  padding-left: 2rem; }
  .p-contact__body .list > li + li {
    margin-top: .3rem; }
  .p-contact__body .list > li::before {
    display: block;
    position: absolute;
    top: 1.2rem;
    left: 0;
    width: 1rem;
    height: 1px;
    background-color: #DC5B79;
    content: ""; }

@media print, screen and (min-width: 1024px) {
  .p-contact__body .list > li + li {
    margin-top: .3rem; } }
/* datalist
---------------------------------------------------------------------- */
.p-contact__body .datalist {
  position: relative;
  padding-left: 2rem; }
  .p-contact__body .datalist + .datalist {
    margin-top: 1rem; }
  .p-contact__body .datalist::before {
    display: block;
    position: absolute;
    top: 1.2rem;
    left: 0;
    width: 1rem;
    height: 1px;
    background-color: #EEB917;
    content: ""; }

@media print, screen and (min-width: 1024px) {
  .p-contact__body .datalist {
    display: flex;
    justify-content: space-between;
    align-items: flex-start; }
    .p-contact__body .datalist + .datalist {
      margin-top: .3rem; } }
.p-contact__body .datalist > dt {
  position: relative; }
  .p-contact__body .datalist > dt::after {
    display: inline-block;
    font-family: "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 1.4rem;
    content: ":"; }

@media print, screen and (min-width: 1024px) {
  .p-contact__body .datalist > dt {
    width: 34%;
    padding-right: .6rem; }
    .p-contact__body .datalist > dt::after {
      display: block;
      position: absolute;
      top: 0;
      right: 0;
      font-size: 1.6rem; } }
@media print, screen and (min-width: 1024px) {
  .p-contact__body .datalist > dd {
    width: 64%; } }
/* デカタイトル
---------------------------------------------------------------------- */
.p-contact__body .large-title {
  font-family: "Shippori Mincho", serif;
  color: #421c00;
  text-align: center; }

.p-contact__body .large-title > .sub {
  font-size: 1.7rem; }

.p-contact__body .large-title > .main {
  font-size: 2.8rem;
  color: #836A4E; }
  .p-contact__body .large-title > .main > a {
    display: inline-block;
    position: relative;
    padding-right: 2.8rem; }
    .p-contact__body .large-title > .main > a::after {
      display: block;
      position: absolute;
      top: 50%;
      right: 0;
      transform: translateY(-50%);
      width: 2rem;
      height: auto;
      font-size: 0;
      line-height: 1;
      content: url(../image/icon/icon-common-link.svg); }

.p-contact__body .large-title > .tel {
  display: inline-block;
  position: relative;
  padding-left: 2.5rem;
  font-size: 2.4rem;
  font-family: "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: bold; }
  .p-contact__body .large-title > .tel > .num {
    color: #EEB917; }
  .p-contact__body .large-title > .tel::before {
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: -6px;
    width: 36px;
    height: auto;
    font-size: 0;
    line-height: 1;
    content: url(../image/icon/tel.svg); }

@media print, screen and (min-width: 1024px) {
  .p-contact__body .large-title > .tel {
    padding-left: 30px;
    font-size: 3.6rem; }
    .p-contact__body .large-title > .tel::before {
      left: -10px;
      transform: translateY(-46%);
      width: 48px; } }
/* ======================================================================

  #copy

====================================================================== */
/*doc
---
title: copy
name: copy
categories: [project]
---

```block
```
*/
/* p-copy
---------------------------------------------------------------------- */
/* ======================================================================

  #desc-block

====================================================================== */
/*doc
---
title: desc-block
name: desc-block
categories: [project]
---

*/
/* ======================================================================

  大枠

====================================================================== */
.p-desc-block + .p-desc-block {
  margin-top: 2rem; }

@media print, screen and (min-width: 1024px) {
  .p-desc-block + .p-desc-block {
    margin-top: 3rem; } }
/* ======================================================================

  タイトル

====================================================================== */
.p-desc-block__title {
  position: relative;
  padding-left: 2.2rem; }

@media print, screen and (min-width: 1024px) {
  .p-desc-block__title {
    padding-left: 3rem; } }
/* アイコン
---------------------------------------------------------------------- */
.p-desc-block__title > img {
  display: block;
  position: absolute;
  top: 50%;
  left: -.5rem;
  transform: translateY(-50%);
  width: 2.8rem;
  height: auto; }

/* テキスト
---------------------------------------------------------------------- */
.p-desc-block__title > span {
  font-size: 1.6rem;
  font-family: "Shippori Mincho", serif;
  font-weight: normal;
  color: #836A4E; }

@media print, screen and (min-width: 1024px) {
  .p-desc-block__title > span {
    font-size: 1.8rem; } }
/* ======================================================================

  heading

====================================================================== */
.p-desc-block__heading {
  margin-bottom: .3rem;
  color: #D1385C;
  font-weight: bold;
  line-height: 1.4; }

/* ======================================================================

  body

====================================================================== */
.p-desc-block__head + .p-desc-block__body {
  margin-top: 1rem; }

/* ======================================================================

  cont

====================================================================== */
.p-desc-block__cont + .p-desc-block__cont {
  margin-top: 1rem; }

@media print, screen and (min-width: 1024px) {
  .p-desc-block__cont + .p-desc-block__cont {
    margin-top: 1.4rem; } }
/* ======================================================================

  list

====================================================================== */
.p-desc-block__list > li {
  position: relative;
  padding-left: 1.8rem; }
  .p-desc-block__list > li + li {
    margin-top: .3rem; }
  .p-desc-block__list > li::before {
    display: block;
    position: absolute;
    top: 1.2rem;
    left: 0;
    width: 1rem;
    height: 1px;
    background-color: #EEB917;
    content: ""; }

@media print, screen and (min-width: 1024px) {
  .p-desc-block__list > li + li {
    margin-top: .3rem; } }
/* ======================================================================

 #footer-nav

====================================================================== */
/*doc
---
title: footer-nav
name: footer-nav
categories: [project]
---

*/
/* p-footer-nav
---------------------------------------------------------------------- */
.p-footer-nav {
  padding: 2rem 0; }

@media print, screen and (min-width: 1024px) {
  .p-footer-nav {
    display: flex;
    justify-content: center;
    padding: 2.8rem 0;
    line-height: 1.4; } }
.p-footer-nav.p-footer-nav--top {
  background-color: #FFF0C2; }

@media print, screen and (min-width: 1024px) {
  .p-footer-nav.p-footer-nav--top {
    align-items: center;
    border-top-color: #f9ebcc; } }
@media print, screen and (min-width: 1024px) {
  .p-footer-nav.p-footer-nav--bottom .p-footer-nav__list:nth-of-type(1) > :last-child {
    border-right: 1px solid #836A4E; } }
/* p-footer-nav__list
---------------------------------------------------------------------- */
.p-footer-nav__list {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap; }
  .p-footer-nav__list > :last-child {
    border-right: none; }

.p-footer-nav__list + .p-footer-nav__list {
  margin-top: 8px; }

@media print, screen and (min-width: 1024px) {
  .p-footer-nav__list + .p-footer-nav__list {
    margin-top: 0px; } }
.p-footer-nav__list li {
  display: flex;
  justify-content: center;
  align-items: center;
  border-right: 1px solid #836A4E; }

.p-footer-nav__list li a {
  padding: 0 8px;
  color: #3B2D06; }

@media print, screen and (min-width: 1024px) {
  .p-footer-nav__list li a {
    padding: 0 12px; } }
.p-footer-nav__list.p-footer-nav__list--type_spfull {
  display: block;
  width: 100%;
  text-align: center;
  border-right: none; }
  .p-footer-nav__list.p-footer-nav__list--type_spfull li {
    border-right: none; }
    .p-footer-nav__list.p-footer-nav__list--type_spfull li + li {
      margin-top: 10px; }

@media print, screen and (min-width: 1024px) {
  .p-footer-nav__list.p-footer-nav__list--type_spfull {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    text-align: left;
    width: auto; }
    .p-footer-nav__list.p-footer-nav__list--type_spfull li {
      border-right: 1px solid #836A4E; }
    .p-footer-nav__list.p-footer-nav__list--type_spfull + li {
      margin-top: 0; } }
/* ======================================================================

 #form

====================================================================== */
/*doc
---
title: form
name: form
categories: [project]
---

*/
/* ****************************************************************************************************

  リセット

**************************************************************************************************** */
.p-form input,
.p-form button,
.p-form textarea,
.p-form select {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

/* ****************************************************************************************************

  リスト

**************************************************************************************************** */
.p-form-list > li + li {
  margin-top: 14px; }
  @media print, screen and (min-width: 1024px) {
    .p-form-list > li + li {
      margin-top: 16px; } }

/* ======================================================================

  リスト 2カラム

====================================================================== */
.p-form-list.p-form-list--type_2cols {
  display: flex;
  justify-content: flex-start;
  align-items: center; }

.p-form-list.p-form-list--type_2cols > li + li {
  margin-top: 0;
  margin-left: 48px; }
  @media print, screen and (min-width: 1024px) {
    .p-form-list.p-form-list--type_2cols > li + li {
      margin-top: 0;
      margin-left: 72px; } }

/* ======================================================================

  リスト 水平に並べる

====================================================================== */
.p-form-list.p-form-list--type_horizontal {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center; }

.p-form-list.p-form-list--type_horizontal > li {
  width: 50%;
  margin-top: 16px; }
  @media print, screen and (min-width: 1024px) {
    .p-form-list.p-form-list--type_horizontal > li {
      width: 33.333%;
      margin-top: 18px; } }

/* ======================================================================

  リスト テキストボックス用

====================================================================== */
.p-form-list.p-form-list--type_text > li {
  display: flex;
  justify-content: space-between;
  align-items: center; }

.p-form-list.p-form-list--type_text > li > .p-form-list__cont {
  flex-grow: 0;
  flex-shrink: 0;
  width: 65%; }
  @media print, screen and (min-width: 1024px) {
    .p-form-list.p-form-list--type_text > li > .p-form-list__cont {
      width: 80%; } }

/* ======================================================================

  リスト ラジオボタン用

====================================================================== */
.p-form-list.p-form-list--type_radio > li + li {
  margin-top: 16px; }
  @media print, screen and (min-width: 1024px) {
    .p-form-list.p-form-list--type_radio > li + li {
      margin-top: 18px; } }

/* ======================================================================

  リスト チェックボックス用

====================================================================== */
.p-form-list.p-form-list--type_check > li + li {
  margin-top: 16px; }
  @media print, screen and (min-width: 1024px) {
    .p-form-list.p-form-list--type_check > li + li {
      margin-top: 18px; } }

/* ======================================================================

  リスト 個人情報 名前用

====================================================================== */
.p-form-list.p-form-list--type_name > li {
  display: flex;
  justify-content: space-between;
  align-items: center; }

.p-form-list.p-form-list--type_name > li > .p-form-list__cont {
  width: 48.5%; }

/* ======================================================================

  リスト 生年月日用

====================================================================== */
.p-form-list.p-form-list--type_birth {
  display: flex;
  justify-content: flex-start;
  align-items: center; }

.p-form-list.p-form-list--type_birth > li + li {
  margin-top: 0;
  margin-left: 14px; }
  @media print, screen and (min-width: 1024px) {
    .p-form-list.p-form-list--type_birth > li + li {
      margin-top: 0;
      margin-left: 22px; } }

/* ****************************************************************************************************

  各パーツ

**************************************************************************************************** */
/* ======================================================================

  各パーツ 大枠（本体）

====================================================================== */
.p-form-item {
  display: flex;
  justify-content: flex-start;
  align-items: center; }
  .p-form-item::before {
    flex-grow: 0;
    flex-shrink: 0; }

/* ======================================================================

  各パーツ テキスト（兼メール）

====================================================================== */
.p-form-item.p-form-item--type_text {
  display: block;
  width: 100%; }

.p-form-item.p-form-item--type_text.p-form-item--type_text--small {
  width: 100%; }
  @media print, screen and (min-width: 1024px) {
    .p-form-item.p-form-item--type_text.p-form-item--type_text--small {
      width: 50%; } }

.p-form-item input[type="email"],
.p-form-item input[type="text"] {
  display: block;
  width: 100%;
  height: 38px;
  padding: 10px;
  border: 1px solid #ccc;
  background-color: #fff; }
  @media print, screen and (min-width: 1024px) {
    .p-form-item input[type="email"],
    .p-form-item input[type="text"] {
      height: 42px; } }

/* ======================================================================

  各パーツ テキストエリア

====================================================================== */
.p-form-item textarea {
  width: 100%;
  height: 200px;
  padding: 10px;
  border: 1px solid #ccc;
  background-color: #fff; }

/* ======================================================================

  各パーツ その他（健診コースのその他の入力欄）

====================================================================== */
.p-form-item.p-form-item--type_other {
  margin-top: 8px; }

/* ======================================================================

  各パーツ ラベル

====================================================================== */
.p-form-label {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  cursor: pointer; }

.p-form-label.p-form-label--type_center {
  justify-content: center; }

/* ======================================================================

  各パーツ ラジオボタン

====================================================================== */
.p-form-label input[type="radio"] {
  display: none; }

/* 表示上のラジオボタン
---------------------------------------------------------------------- */
.p-form-item.p-form-item--type_radio::before {
  display: block;
  width: 18px;
  height: 18px;
  margin-right: 10px;
  border: 1px solid #ccc;
  border-radius: 50% 50%;
  background-color: #fff;
  content: ""; }
  @media print, screen and (min-width: 1024px) {
    .p-form-item.p-form-item--type_radio::before {
      width: 20px;
      height: 20px; } }

.p-form-label input[type="radio"]:checked + .p-form-item.p-form-item--type_radio::before {
  background-color: #3497ff;
  background-image: url(../image/parts/marker-radio.svg);
  background-position: center center;
  background-size: 6px 6px;
  background-repeat: no-repeat; }

/* ======================================================================

  各パーツ チェックボックス

====================================================================== */
.p-form-label input[type="checkbox"] {
  display: none; }

/* 表示上のチェックボックス
---------------------------------------------------------------------- */
.p-form-item.p-form-item--type_check::before {
  display: block;
  width: 18px;
  height: 18px;
  margin-right: 10px;
  border: 1px solid #ccc;
  border-radius: 3px 3px;
  background-color: #fff;
  content: ""; }
  @media print, screen and (min-width: 1024px) {
    .p-form-item.p-form-item--type_check::before {
      width: 20px;
      height: 20px; } }

.p-form-label input[type="checkbox"]:checked + .p-form-item.p-form-item--type_check::before {
  background-color: #3497ff;
  background-image: url(../image/parts/marker-checkb.svg);
  background-position: center center;
  background-size: 11px 9px;
  background-repeat: no-repeat; }

/* ======================================================================

  各パーツ セレクトボックス

====================================================================== */
.p-form-item select {
  display: block;
  width: 100%;
  height: 38px;
  padding: 10px;
  border: 1px solid #ccc;
  background-color: #fff; }
  @media print, screen and (min-width: 1024px) {
    .p-form-item select {
      height: 42px; } }

/* ======================================================================

  各パーツ 誕生日

====================================================================== */
.p-form-item.p-form-item--type_birth-year input[type="text"],
.p-form-item.p-form-item--type_birth-year select {
  width: 90px; }
  @media print, screen and (min-width: 1024px) {
    .p-form-item.p-form-item--type_birth-year input[type="text"],
    .p-form-item.p-form-item--type_birth-year select {
      width: 170px; } }

.p-form-item.p-form-item--type_birth-year span {
  margin-left: 5px; }

.p-form-item.p-form-item--type_birth-month select {
  width: 40px; }
  @media print, screen and (min-width: 1024px) {
    .p-form-item.p-form-item--type_birth-month select {
      width: 80px; } }

.p-form-item.p-form-item--type_birth-month span {
  margin-left: 5px; }

.p-form-item.p-form-item--type_birth-day select {
  width: 40px; }
  @media print, screen and (min-width: 1024px) {
    .p-form-item.p-form-item--type_birth-day select {
      width: 80px; } }

.p-form-item.p-form-item--type_birth-day span {
  margin-left: 5px; }

.p-form-list.p-form-list--has_mt {
  margin-top: 16px; }
  @media print, screen and (min-width: 1024px) {
    .p-form-list.p-form-list--has_mt {
      margin-top: 26px; } }

/* ======================================================================

  各パーツ フォーム項目

====================================================================== */
.p-form-item__cont span {
  display: block; }

.p-form-item__cont.p-form-item__cont--type_privacy span {
  white-space: nowrap;
  margin-right: 8px; }

/* 項目名などのテキスト
---------------------------------------------------------------------- */
.p-form-item__contText.marker-triangle::after {
  display: inline-block;
  margin-left: 5px;
  color: #E8352C;
  content: "▲"; }

.p-form-item__contText.marker-square::after {
  display: inline-block;
  margin-left: 5px;
  color: #5D74E8;
  content: "■"; }

.p-form-item__contCaption {
  font-size: 1.2rem;
  color: #666; }
  @media print, screen and (min-width: 1024px) {
    .p-form-item__contCaption {
      font-size: 1.4rem; } }

/* ****************************************************************************************************

  注釈

**************************************************************************************************** */
.p-form-notice {
  margin-top: 14px;
  font-size: 1.2rem;
  color: #D1385C; }
  @media print, screen and (min-width: 1024px) {
    .p-form-notice {
      margin-top: 18px;
      font-size: 1.4rem; } }

.p-form-notice.p-form-notice--color_gray {
  color: #666; }

/* ****************************************************************************************************

  注釈2

**************************************************************************************************** */
.p-form-caption {
  font-size: 1.2rem;
  color: #666;
  margin-top: 4px;
  padding-left: 28px; }
  @media print, screen and (min-width: 1024px) {
    .p-form-caption {
      padding-left: 30px;
      font-size: 1.4rem; } }

/* ****************************************************************************************************

  必須タグ

**************************************************************************************************** */
.p-form-require-tag {
  display: inline-block;
  margin-left: 10px;
  padding-left: 7px;
  padding-right: 7px;
  background-color: #E8352C;
  color: #FFF;
  white-space: nowrap;
  font-size: 1.2rem;
  font-weight: bold; }
  @media print, screen and (min-width: 1024px) {
    .p-form-require-tag {
      font-size: 1.4rem; } }

/* ======================================================================

 #gallery

====================================================================== */
/*doc
---
title: gallery
name: gallery
categories: [project]
---

*/
/* p-gallery
---------------------------------------------------------------------- */
@media print, screen and (min-width: 1024px) {
  .p-gallery:not(.p-gallery--type_slide) {
    display: flex;
    justify-content: space-between; } }

.p-gallery.p-gallery--type_slide .slick-dots {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  bottom: 12px;
  width: 100%;
  margin: auto; }
  .p-gallery.p-gallery--type_slide .slick-dots li + li {
    margin-left: 10px; }
  .p-gallery.p-gallery--type_slide .slick-dots li button {
    display: block;
    width: 12px;
    height: 12px;
    border-radius: 50% 50%;
    background-color: #B79C7F;
    overflow: hidden;
    text-indent: 100%;
    padding: 0;
    margin: 0;
    border: none;
    cursor: pointer; }
  .p-gallery.p-gallery--type_slide .slick-dots li.slick-active button {
    background-color: #994c1f; }

/* p-gallery__main
---------------------------------------------------------------------- */
.p-gallery__main {
  width: 66.3%; }

/* p-gallery__main
---------------------------------------------------------------------- */
.p-gallery__mainItem {
  position: relative;
  width: 100%;
  padding-top: 66.13%;
  overflow: hidden; }

.p-gallery__mainItem img {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100%;
  height: auto;
  margin: auto; }

/* p-gallery__sub
---------------------------------------------------------------------- */
.p-gallery__sub {
  display: flex;
  justify-content: center;
  align-items: center; }
  @media print, screen and (min-width: 1024px) {
    .p-gallery__sub {
      flex-direction: column;
      justify-content: space-between;
      align-items: flex-start;
      width: 32.6%; } }

/* p-gallery__subItem
---------------------------------------------------------------------- */
.p-gallery__subItem {
  position: relative;
  width: 50%;
  padding-top: 33.065%;
  overflow: hidden; }
  @media print, screen and (min-width: 1024px) {
    .p-gallery__subItem {
      width: 100%;
      padding-top: 65.23%; } }

.p-gallery__subItem img {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100%;
  height: auto;
  margin: auto; }

/* p-gallery__item（SP用）
---------------------------------------------------------------------- */
.p-gallery.p-gallery--type_slide .p-gallery__item {
  overflow: hidden;
  position: relative;
  max-width: 100vw;
  height: 0;
  padding-top: 65vw; }

.p-gallery.p-gallery--type_slide .p-gallery__item img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: auto;
  max-width: none;
  height: 100%;
  margin: auto; }

/* ======================================================================

 #gmap

====================================================================== */
/*doc
---
title: gmap
name: gmap
categories: [project]
---

*/
/* p-gmap
---------------------------------------------------------------------- */
.p-gmap {
  position: relative;
  width: 100%;
  height: 200px; }
  @media print, screen and (min-width: 1024px) {
    .p-gmap {
      height: 353px; } }
  .p-gmap > iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

/* ======================================================================

 #gnav

====================================================================== */
/*doc
---
title: gnav
name: gnav
categories: [project]
---

*/
/* p-gnav
---------------------------------------------------------------------- */
.p-gnav {
  position: fixed;
  width: 100%;
  height: 0;
  top: 0;
  z-index: 254;
  background-color: #fff;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s; }
  @media print, screen and (min-width: 1024px) {
    .p-gnav {
      opacity: 1;
      visibility: visible;
      position: relative;
      top: 0;
      width: 100%;
      height: auto;
      font-size: 1.4rem; } }
  @media print, screen and (min-width: 1200px) {
    .p-gnav {
      font-size: 1.6rem; } }

/* p-gnav__list
---------------------------------------------------------------------- */
.p-gnav__list {
  text-align: center;
  line-height: 1.4; }
  @media print, screen and (min-width: 1024px) {
    .p-gnav__list {
      display: flex;
      justify-content: center;
      align-items: center; } }

/* p-gnav__list > li
---------------------------------------------------------------------- */
.p-gnav__list > li {
  display: block;
  opacity: 0;
  width: 100%;
  border-bottom: 1px solid #F2F2F2;
  transition: 0.3s; }
  @media print, screen and (min-width: 1024px) {
    .p-gnav__list > li {
      opacity: 1;
      width: calc(100% / 6);
      max-width: 200px;
      height: 130px;
      border-bottom: none;
      line-height: 1.2; } }

@media print, screen and (min-width: 1024px) {
  .p-gnav__list > :first-child {
    border-left: 1px solid #3B2D06; } }

/* p-gnav__list > li > a
---------------------------------------------------------------------- */
.p-gnav__list > li > a {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  color: #3B2D06;
  transition: background-color .3s, color 0s; }
  @media print, screen and (min-width: 1024px) {
    .p-gnav__list > li > a {
      display: flex;
      justify-content: center;
      align-items: center;
      flex-direction: column;
      position: relative;
      height: 100%;
      border-right: 1px solid #3B2D06;
      background-color: #fff; } }

@media print, screen and (min-width: 1024px) {
  .p-gnav__list > li.is-current > a {
    background-color: #FFF0C2; } }

.p-gnav__list > li > a:hover {
  opacity: 1; }
  @media print, screen and (min-width: 1024px) {
    .p-gnav__list > li > a:hover {
      background-color: #EEB917;
      color: #fff; } }

@media print, screen and (min-width: 1024px) {
  .p-gnav__list > li > a::before {
    display: block;
    position: relative;
    width: 66px;
    height: auto;
    margin-top: -11px;
    margin-bottom: -3px;
    font-size: 0;
    line-height: 1; } }

/* .p-gnav__list > .option
---------------------------------------------------------------------- */
@media print, screen and (min-width: 1024px) {
  .p-gnav__list > .option > a::before {
    content: url(../image/icon/scope.svg); } }

@media print, screen and (min-width: 1024px) {
  .p-gnav__list > .option:hover > a {
    background-color: #EEB917;
    color: #fff; } }

@media print, screen and (min-width: 1024px) {
  .p-gnav__list > .option:hover > a::before {
    content: url(../image/icon/scope-white.svg); } }

@media print, screen and (min-width: 1024px) {
  .p-gnav__list > .option.is-current > a {
    background-color: #FFF0C2; } }

@media print, screen and (min-width: 1024px) {
  .p-gnav__list > .option.is-current:hover > a {
    background-color: #EEB917; } }

/* .p-gnav__list > .about
---------------------------------------------------------------------- */
@media print, screen and (min-width: 1024px) {
  .p-gnav__list > .about > a::before {
    content: url(../image/icon/build.svg); } }
@media print, screen and (min-width: 1024px) {
  .p-gnav__list > .about > a:hover::before {
    content: url(../image/icon/build-white.svg); } }

/* .p-gnav__list > .price
---------------------------------------------------------------------- */
@media print, screen and (min-width: 1024px) {
  .p-gnav__list > .price > a::before {
    content: url(../image/icon/charge.svg); } }
@media print, screen and (min-width: 1024px) {
  .p-gnav__list > .price > a:hover::before {
    content: url(../image/icon/charge-white.svg); } }

/* .p-gnav__list > .qanda
---------------------------------------------------------------------- */
@media print, screen and (min-width: 1024px) {
  .p-gnav__list > .qanda > a::before {
    content: url(../image/icon/qanda.svg); } }
@media print, screen and (min-width: 1024px) {
  .p-gnav__list > .qanda > a:hover::before {
    content: url(../image/icon/qanda-white.svg); } }

/* .p-gnav__list > .access
---------------------------------------------------------------------- */
@media print, screen and (min-width: 1024px) {
  .p-gnav__list > .access > a::before {
    content: url(../image/icon/map.svg); } }
@media print, screen and (min-width: 1024px) {
  .p-gnav__list > .access > a:hover::before {
    content: url(../image/icon/map-white.svg); } }

/* .p-gnav__list > .contact
---------------------------------------------------------------------- */
@media print, screen and (min-width: 1024px) {
  .p-gnav__list > .contact > a::before {
    content: url(../image/icon/mail.svg); } }
@media print, screen and (min-width: 1024px) {
  .p-gnav__list > .contact > a:hover::before {
    content: url(../image/icon/mail-white.svg); } }

/* p-gnav.is-active ※sp版のみ pc版では常に表示されている
---------------------------------------------------------------------- */
.p-gnav.is-active {
  top: 70px;
  height: calc(100% - 70px);
  overflow-y: scroll;
  opacity: .97;
  visibility: visible;
  -webkit-overflow-scrolling: touch; }

.p-gnav.is-active .p-gnav__list > li {
  opacity: 1; }

.p-gnav.is-active .p-gnav__list > li > a {
  padding: 14px 0 14px 0; }

.p-gnav.is-active .p-gnav__list > li > a::after {
  display: block;
  transform: rotate(-45deg);
  position: absolute;
  top: 0;
  right: 30px;
  bottom: 0;
  width: 8px;
  height: 8px;
  margin: auto;
  border-right: 1px solid #E59B00;
  border-bottom: 1px solid #E59B00;
  content: "";
  transition: 0.3s; }

/* ======================================================================

  #grid

====================================================================== */
/*doc
---
title: grid
name: grid
categories: [project]
---
*/
/* ======================================================================

  大枠

====================================================================== */
.p-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }

.p-grid.p-grid--center {
  justify-content: center; }

.p-grid.p-grid--left {
  justify-content: flex-start; }

.p-grid.p-grid--type_docklist {
  justify-content: space-between; }
  @media print, screen and (min-width: 1024px) {
    .p-grid.p-grid--type_docklist {
      justify-content: flex-start; } }

/* 健診メニュー p-grid--type_check-tile（3to6亜種）
---------------------------------------------------------------------- */
.p-grid.p-grid--type_check-tile {
  justify-content: flex-start; }

/* ======================================================================

  子要素

====================================================================== */
.p-grid__item {
  margin-bottom: 4.296%; }
  @media print, screen and (min-width: 1024px) {
    .p-grid__item {
      margin-bottom: 2%; } }

.p-grid.p-grid--4cols .p-grid__item {
  width: 47.852%; }
  @media print, screen and (min-width: 1024px) {
    .p-grid.p-grid--4cols .p-grid__item {
      width: 23.5%; } }
.p-grid.p-grid--4cols .p-grid__item.p-grid__item--double {
  width: 100%; }
  @media print, screen and (min-width: 1024px) {
    .p-grid.p-grid--4cols .p-grid__item.p-grid__item--double {
      width: 49%; } }

.p-grid.p-grid--type_docklist .p-grid__item {
  width: 47.852%; }
  @media print, screen and (min-width: 1024px) {
    .p-grid.p-grid--type_docklist .p-grid__item {
      width: 23.5%;
      margin-left: 2%; } }
  .p-grid.p-grid--type_docklist .p-grid__item:nth-of-type(2n+1):nth-last-of-type(-n+2), .p-grid.p-grid--type_docklist .p-grid__item:nth-of-type(2n+1):nth-last-of-type(-n+2) ~ .p-grid__item {
    margin-bottom: 0; }
  @media print, screen and (min-width: 1024px) {
    .p-grid.p-grid--type_docklist .p-grid__item:first-of-type, .p-grid.p-grid--type_docklist .p-grid__item:nth-of-type(4n+1) {
      margin-left: 0; } }
  @media print, screen and (min-width: 1024px) {
    .p-grid.p-grid--type_docklist .p-grid__item:nth-of-type(4n+1):nth-last-of-type(-n+4), .p-grid.p-grid--type_docklist .p-grid__item:nth-of-type(4n+1):nth-last-of-type(-n+4) ~ .p-grid__item {
      margin-bottom: 0; } }

.p-grid.p-grid--type_3to6 .p-grid__item {
  width: 31.595%;
  margin-bottom: 2.6075%; }
  @media print, screen and (min-width: 1024px) {
    .p-grid.p-grid--type_3to6 .p-grid__item {
      width: 16%;
      margin-bottom: .8%; } }

/* 健診メニュー p-grid--type_check-tile（3to6亜種）
---------------------------------------------------------------------- */
.p-grid.p-grid--type_check-tile .p-grid__item {
  width: 31.595%;
  margin-bottom: 2.6075%;
  margin-left: 2.6075%; }
  .p-grid.p-grid--type_check-tile .p-grid__item:nth-of-type(3n+1) {
    margin-left: 0; }

@media print, screen and (min-width: 1024px) {
  .p-grid.p-grid--type_check-tile .p-grid__item {
    width: 16%;
    margin-bottom: .8%;
    margin-left: .8%; }
    .p-grid.p-grid--type_check-tile .p-grid__item:nth-of-type(3n+1) {
      margin-left: .8%; }
    .p-grid.p-grid--type_check-tile .p-grid__item:nth-of-type(6n+1) {
      margin-left: 0; } }
.p-grid.p-grid--type_check {
  justify-content: center; }
  .p-grid.p-grid--type_check .p-grid__item {
    width: 50%; }
    @media print, screen and (min-width: 1024px) {
      .p-grid.p-grid--type_check .p-grid__item {
        width: 20%; } }

/* ======================================================================

  #hamburger

====================================================================== */
/*doc
---
title: hamburger
name: hamburger
categories: [project]
---
*/
/* p-hamburger
---------------------------------------------------------------------- */
.p-hamburger {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  color: #994c1f;
  line-height: 1; }
  @media print, screen and (min-width: 1024px) {
    .p-hamburger {
      display: none; } }

/* p-hamburger__item
---------------------------------------------------------------------- */
.p-hamburger__item {
  display: block;
  position: relative;
  width: 100%;
  height: 16px;
  margin-bottom: 5px; }
  .p-hamburger__item > span {
    display: block;
    position: absolute;
    right: 0;
    left: 0;
    margin: auto;
    width: 27px;
    height: 1px;
    background-color: #994c1f;
    transition: 0.3s; }
    .p-hamburger__item > span:nth-of-type(1) {
      top: 0; }
    .p-hamburger__item > span:nth-of-type(2) {
      top: 0;
      bottom: 0; }
    .p-hamburger__item > span:nth-of-type(3) {
      bottom: 0; }

.p-hamburger.is-active .p-hamburger__item > span:nth-of-type(1) {
  top: 5px;
  transform: rotate(-45deg); }
.p-hamburger.is-active .p-hamburger__item > span:nth-of-type(2) {
  display: none; }
.p-hamburger.is-active .p-hamburger__item > span:nth-of-type(3) {
  top: -4px;
  transform: rotate(45deg); }

/* p-hamburger__txt
---------------------------------------------------------------------- */
.p-hamburger__txt {
  display: block;
  width: 100%;
  font-size: 10px; }

/* ======================================================================

 #heading

====================================================================== */
/*doc
---
title: heading
name: heading
categories: [project]
---

*/
/* p-heading
---------------------------------------------------------------------- */
.p-heading {
  text-align: center;
  line-height: 1;
  margin-bottom: 26px;
  font-weight: normal; }

@media print, screen and (min-width: 1024px) {
  .p-heading {
    margin-bottom: 52px; } }
@media print, screen and (min-width: 1024px) {
  .p-heading.p-heading--type_check {
    margin-bottom: 0;
    text-align: left; } }
.p-heading.p-heading--type_kokuho {
  line-height: 1.4em; }

@media print, screen and (min-width: 1024px) {
  .p-heading.p-heading--type_kokuho {
    margin-bottom: 0; } }
/* p-heading__title
---------------------------------------------------------------------- */
.p-heading__title {
  display: block;
  position: relative;
  color: #836A4E;
  font-family: "Shippori Mincho", serif;
  font-size: 1.8rem;
  font-weight: normal;
  letter-spacing: 2px;
  text-indent: 2px; }

@media print, screen and (min-width: 1024px) {
  .p-heading__title {
    font-size: 2.4rem; } }
.p-heading.p-heading--type_check .p-heading__title {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin-bottom: 0;
  font-size: 2.6rem;
  line-height: 1.2; }
  .p-heading.p-heading--type_check .p-heading__title::before {
    display: block;
    position: relative;
    width: 44px;
    height: auto;
    font-size: 0;
    line-height: 1;
    content: url(../image/icon/scope.svg); }

@media print, screen and (min-width: 1024px) {
  .p-heading.p-heading--type_check .p-heading__title {
    display: block;
    padding-left: 42px;
    padding-right: 10px;
    font-size: 3.2rem; }
    .p-heading.p-heading--type_check .p-heading__title::before {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      left: -9px;
      width: 48px; } }
.p-heading.p-heading--type_kokuho .p-heading__title {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin-bottom: 0;
  font-size: 2.6rem;
  line-height: 1.6em; }
  .p-heading.p-heading--type_kokuho .p-heading__title::before {
    display: block;
    position: relative;
    width: 24px;
    height: auto;
    margin-right: 4px;
    margin-bottom: 4px;
    font-size: 0;
    line-height: 1;
    content: url(../image/icon/icon-gnav01.svg); }
  .p-heading.p-heading--type_kokuho .p-heading__title .min {
    font-size: 2rem; }

@media print, screen and (min-width: 1024px) {
  .p-heading.p-heading--type_kokuho .p-heading__title {
    display: inline-block;
    padding-left: 38px;
    padding-right: 10px;
    font-size: 2.8rem; }
    .p-heading.p-heading--type_kokuho .p-heading__title::before {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      left: 0;
      width: 28px;
      margin: 0; } }
/* p-heading__lead
---------------------------------------------------------------------- */
.p-heading__lead {
  display: block;
  color: #E59B00;
  font-size: 1.2rem;
  margin-top: 6px;
  letter-spacing: 1px; }

@media print, screen and (min-width: 1024px) {
  .p-heading__lead {
    margin-top: 14px;
    font-size: 1.6rem; } }
.p-heading.p-heading--type_check .p-heading__lead {
  font-size: 1.4rem;
  margin-top: 0;
  margin-bottom: 20px;
  line-height: 1.4; }

@media print, screen and (min-width: 1024px) {
  .p-heading.p-heading--type_check .p-heading__lead {
    margin-bottom: 32px;
    font-size: 1.8rem; } }
.p-sub-heading.p-sub-heading--left {
  font-family: "Shippori Mincho", serif;
  font-size: 1.8rem;
  margin-bottom: 14px;
  color: #836A4E;
  font-weight: normal;
  text-align: left;
  line-height: 1.6; }

/* p-heading__btn
---------------------------------------------------------------------- */
.p-heading__btn {
  display: inline-block;
  font-size: 16px;
  text-align: center;
  line-height: 2rem;
  margin-top: 20px; }
  @media print, screen and (min-width: 1024px) {
    .p-heading__btn {
      position: absolute;
      top: 48px;
      left: 268px;
      margin-top: 0px; } }
  .p-heading__btn a {
    display: block;
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 5px;
    padding-bottom: 9px;
    color: #fff;
    background-color: #DC5B79;
    background-image: linear-gradient(162deg, #dc5b79 0%, #dc5b79 50%, #d1385c 50%, #d1385c 100%); }
    .p-heading__btn a span {
      font-size: 12px; }

/* ======================================================================

  #info-layout

====================================================================== */
/*doc
---
title: info-layout
name: info-layout
categories: [project]
---

*/
/* ======================================================================

  大枠

====================================================================== */
@media print, screen and (min-width: 1024px) {
  .p-info-layout {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: stretch; } }
/* ======================================================================

  タイトル

====================================================================== */
.p-info-layout__divider + .p-info-layout__divider {
  margin-top: 2rem; }

@media print, screen and (min-width: 1024px) {
  .p-info-layout__divider {
    width: 48%; }

  .p-info-layout__divider + .p-info-layout__divider {
    margin-top: 0; } }
/* ======================================================================

 #layer

====================================================================== */
/*doc
---
title: layer
name: layer
categories: [project]
---

*/
/* p-layer
---------------------------------------------------------------------- */
.p-layer {
  z-index: 253;
  position: fixed;
  top: 0;
  left: 0;
  visibility: hidden;
  opacity: 0;
  transition: 0.3s; }

body.menu_is_opened .p-layer {
  width: 100%;
  height: 100%;
  visibility: visible;
  background-color: #000;
  opacity: .4; }

/* ======================================================================

 #list

====================================================================== */
/*doc
---
title: list
name: list
categories: [project]
---

*/
/* p-list
---------------------------------------------------------------------- */
.p-list.p-list--type_confirm {
  margin-bottom: 50px; }
  @media print, screen and (min-width: 1024px) {
    .p-list.p-list--type_confirm {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      width: 810px;
      margin: 0 auto 50px; } }

.p-list.p-list--type_confirm .p-list__label {
  margin-bottom: 4px;
  padding-top: 12px;
  border-top: 1px dashed #836A4E;
  font-weight: bold;
  color: #E59B00; }
  @media print, screen and (min-width: 1024px) {
    .p-list.p-list--type_confirm .p-list__label {
      width: 43%;
      margin-bottom: 0;
      padding: 14px 8px;
      text-align: center; } }
  .p-list.p-list--type_confirm .p-list__label:first-of-type {
    padding-top: 0;
    border-top: none; }
    @media print, screen and (min-width: 1024px) {
      .p-list.p-list--type_confirm .p-list__label:first-of-type {
        border-top: 1px dashed #836A4E;
        padding-top: 14px; } }
  @media print, screen and (min-width: 1024px) {
    .p-list.p-list--type_confirm .p-list__label:last-of-type {
      border-bottom: 1px dashed #836A4E; } }

.p-list.p-list--type_confirm .p-list__item {
  padding: 0 1rem;
  margin-bottom: 24px; }
  @media print, screen and (min-width: 1024px) {
    .p-list.p-list--type_confirm .p-list__item {
      width: 57%;
      margin-bottom: 0;
      padding: 14px 12px;
      border-top: 1px dashed #994c1f; } }
  .p-list.p-list--type_confirm .p-list__item:first-of-type {
    border-top: none; }
    @media print, screen and (min-width: 1024px) {
      .p-list.p-list--type_confirm .p-list__item:first-of-type {
        border-top: 1px dashed #994c1f; } }
  .p-list.p-list--type_confirm .p-list__item:last-of-type {
    margin-bottom: 0;
    padding-bottom: 24px;
    border-bottom: 1px dashed #994c1f; }
    @media print, screen and (min-width: 1024px) {
      .p-list.p-list--type_confirm .p-list__item:last-of-type {
        padding-bottom: 0; } }

/* ======================================================================

  #logo

====================================================================== */
/*doc
---
title: logo
name: logo
categories: [project]
---
*/
.p-logo {
  position: relative;
  line-height: 1;
  font-weight: normal; }
  .p-logo > .inner {
    display: block;
    width: 100%;
    height: 100%; }

@media print, screen and (min-width: 1024px) {
  .p-logo {
    padding-bottom: 23px; } }
.p-logo__lead {
  display: none;
  margin-bottom: 6px;
  font-size: 10px;
  color: #3B2D06; }
  @media print, screen and (min-width: 1024px) {
    .p-logo__lead {
      display: block;
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      margin-bottom: 0;
      font-size: 12px;
      text-align: center;
      white-space: nowrap; } }

.p-logo__title {
  display: block; }
  @media print, screen and (min-width: 1024px) {
    .p-logo__title {
      display: flex;
      flex-direction: row;
      align-items: flex-end;
      white-space: nowrap; } }
  .p-logo__title > .image {
    display: block;
    flex-grow: 0;
    flex-shrink: 0;
    width: 90px;
    height: auto;
    margin-right: 5px;
    margin-bottom: 3px; }
    @media print, screen and (min-width: 1024px) {
      .p-logo__title > .image {
        width: auto;
        height: 39px;
        margin-right: 12px;
        margin-bottom: 0; } }
  .p-logo__title > .txt {
    display: block;
    font-size: 15px;
    font-weight: bold;
    color: #3B2D06; }
    @media print, screen and (min-width: 1024px) {
      .p-logo__title > .txt {
        font-size: 27px; } }
  .p-logo__title > .logo {
    display: block;
    width: 120px;
    height: auto; }
    @media print, screen and (min-width: 1024px) {
      .p-logo__title > .logo {
        width: 252px; } }

/* ======================================================================

 #media

====================================================================== */
/*doc
---
media: media
name: media
categories: [project]
---

*/
/* p-media
---------------------------------------------------------------------- */
/* ======================================================================

  #menu

====================================================================== */
/*doc
---
title: menu
name: menu
categories: [project]
---
*/
.p-menu {
  border: 1px solid #989898; }

.p-menu.p-menu--horizontal {
  display: flex;
  justify-content: space-between; }

/* p-menu__head
---------------------------------------------------------------------- */
.p-menu__head {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.2;
  padding: 12px 0;
  background-color: #F2F2F2;
  text-align: center; }

.p-menu.p-menu--horizontal .p-menu__head {
  width: 32%;
  color: #836A4E; }

/* p-menu__body
---------------------------------------------------------------------- */
.p-menu__body {
  padding: 12px 0; }

.p-menu.p-menu--horizontal .p-menu__body {
  width: 68%; }

.p-menu.p-menu--type_check .p-menu__body {
  font-size: 1.8rem;
  color: #DC5B79;
  text-align: center;
  font-weight: bold; }

/* ======================================================================

 #more

====================================================================== */
/*doc
---
title: more
name: more
categories: [project]
---

*/
/* p-more
---------------------------------------------------------------------- */
.p-more {
  margin-top: 26px; }

@media print, screen and (min-width: 1024px) {
  .p-more {
    margin-top: 52px; } }
.p-more__content {
  display: inline-block;
  position: relative;
  padding: 0 2.4rem 0 0;
  color: #836A4E; }

@media print, screen and (min-width: 1024px) {
  .p-more__content::after {
    width: 1.8rem; } }
/* 矢印
---------------------------------------------------------------------- */
.p-more__arrow {
  display: block;
  position: absolute;
  top: 1px;
  right: 0;
  bottom: 0;
  width: 1.8rem;
  height: 1.8rem;
  margin: auto;
  border: 1px solid #836A4E;
  border-radius: 50% 50%; }
  .p-more__arrow::after {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: -.2rem;
    transform: rotate(45deg);
    width: .4rem;
    height: .4rem;
    margin: auto;
    border-top: 1px solid #836A4E;
    border-right: 1px solid #836A4E;
    content: ""; }

/* ======================================================================

  #pagination

====================================================================== */
/*doc
---
title: pagination
name: pagination
categories: [project]
---

*/
/* p-pagination
---------------------------------------------------------------------- */
.p-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  position: relative;
  margin: 30px 0;
  padding: 0 35px;
  line-height: 1; }

/* .p-pagination > li
---------------------------------------------------------------------- */
.p-pagination > li {
  position: relative; }

.p-pagination > li > .inner {
  display: block;
  position: relative;
  padding: 8px 10px;
  color: #3B2D06; }

/* .p-pagination > li
---------------------------------------------------------------------- */
.p-pagination > .current {
  position: relative;
  margin: 0 8px; }

.p-pagination > .current > .inner {
  color: #fff;
  background-color: #E59B00; }

/* .p-pagination .previous
---------------------------------------------------------------------- */
.p-pagination .previous {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 26px;
  height: 26px;
  margin: auto;
  overflow: hidden;
  text-indent: 100%; }
  @media print, screen and (min-width: 1024px) {
    .p-pagination .previous {
      overflow: visible;
      position: relative;
      left: auto;
      width: auto;
      height: auto;
      margin: 0;
      text-indent: 0%; } }

.p-pagination .previous > .arrow {
  display: block;
  position: absolute;
  top: 1px;
  bottom: 0;
  left: 0;
  width: 25px;
  height: 25px;
  margin: auto;
  border: 1px solid #3B2D06;
  border-radius: 50% 50%; }
  .p-pagination .previous > .arrow::after {
    display: block;
    position: absolute;
    top: 0;
    right: -2px;
    bottom: 0;
    left: 0;
    transform: rotate(-45deg);
    width: 5px;
    height: 5px;
    margin: auto;
    border-top: 1px solid #3B2D06;
    border-left: 1px solid #3B2D06;
    content: ""; }

.p-pagination .previous.inactive > .arrow {
  border-color: #ccc; }
  .p-pagination .previous.inactive > .arrow::after {
    border-color: #ccc; }

.p-pagination .previous > .inner {
  z-index: 1;
  background: transparent;
  width: 100%;
  height: 100%;
  padding: 0; }
  @media print, screen and (min-width: 1024px) {
    .p-pagination .previous > .inner {
      padding: 5px 14px 5px 34px; } }

.p-pagination .previous.inactive > .inner {
  color: #ccc; }

/* .p-pagination .next
---------------------------------------------------------------------- */
.p-pagination .next {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 26px;
  height: 26px;
  margin: auto;
  overflow: hidden;
  text-indent: 100%; }
  @media print, screen and (min-width: 1024px) {
    .p-pagination .next {
      overflow: visible;
      position: relative;
      right: auto;
      width: auto;
      height: auto;
      margin: 0;
      text-indent: 0%; } }

.p-pagination .next > .arrow {
  display: block;
  position: absolute;
  top: 1px;
  bottom: 0;
  right: 0;
  width: 25px;
  height: 25px;
  margin: auto;
  border-radius: 50% 50%;
  border: 1px solid #3B2D06; }
  .p-pagination .next > .arrow::after {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: -2px;
    transform: rotate(45deg);
    width: 5px;
    height: 5px;
    margin: auto;
    border-top: 1px solid #3B2D06;
    border-right: 1px solid #3B2D06;
    content: ""; }

.p-pagination .next.inactive > .arrow {
  border-color: #ccc; }
  .p-pagination .next.inactive > .arrow::after {
    border-color: #ccc; }

.p-pagination .next > .inner {
  z-index: 1;
  background: transparent;
  width: 100%;
  height: 100%;
  padding: 0;
  color: #3B2D06; }
  @media print, screen and (min-width: 1024px) {
    .p-pagination .next > .inner {
      padding: 5px 34px 5px 14px; } }

.p-pagination .next.inactive > .inner {
  color: #ccc; }

/* ======================================================================

  #qanda

====================================================================== */
/*doc
---
categories: [project]
---
*/
/* .p-qanda
---------------------------------------------------------------------- */
.p-qanda + .p-qanda {
  margin-top: 16px; }

@media print, screen and (min-width: 1024px) {
  .p-qanda + .p-qanda {
    margin-top: 26px; } }
/* .qanda__head
---------------------------------------------------------------------- */
.p-qanda__head {
  position: relative;
  margin-bottom: 14px;
  padding: 12px 8px 12px 35px;
  color: #5a4a1c;
  font-weight: bold;
  background: repeating-linear-gradient(-45deg, #fff, #fff 15%, transparent 15%, transparent 50%, #fff 50%, #fff 65%, transparent 65%, transparent 100%);
  background-size: 13px 13px;
  background-color: #FFF0C2; }
  .p-qanda__head::before {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 10px;
    transform: translateY(-50%);
    width: auto;
    height: auto;
    color: #E59B00;
    font-family: "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 2.2rem;
    line-height: 1;
    content: "Q"; }

@media print, screen and (min-width: 1024px) {
  .p-qanda__head {
    margin-bottom: 19px;
    padding: 14px 20px 14px 55px;
    font-size: 1.8rem;
    background-size: 15px 15px; }
    .p-qanda__head::before {
      left: 24px;
      font-size: 2.8rem; } }
/* .p-qanda__body
---------------------------------------------------------------------- */
.p-qanda__body {
  position: relative;
  padding: 0 0 14px 35px;
  color: #3B2D06; }
  .p-qanda__body::before {
    display: inline-block;
    position: absolute;
    top: 1px;
    left: 10px;
    width: auto;
    height: auto;
    color: #2388AC;
    font-family: "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 1;
    content: "A"; }

@media print, screen and (min-width: 1024px) {
  .p-qanda__body {
    padding: 1px 20px 23px 55px; }
    .p-qanda__body::before {
      left: 24px;
      font-size: 2.8rem; } }
.p-qanda__body > .txt + .txt {
  margin-top: 14px; }

.p-qanda__body > .list + .txt {
  margin-top: 14px; }

.p-qanda__body > .list > li {
  position: relative;
  padding-left: 12px; }
  .p-qanda__body > .list > li::after {
    display: block;
    position: absolute;
    top: .9rem;
    left: 0;
    width: 5px;
    height: 5px;
    border-radius: 50% 50%;
    background-color: #797979;
    content: ""; }

.p-qanda__body > .txt + .list {
  margin-top: 14px; }

/* ======================================================================

  sentence
  categories: [project]

====================================================================== */
.p-sentence.p-sentence--align_right {
  text-align: right; }

.p-sentence.p-sentence--align_center {
  text-align: center; }

.p-sentence.p-sentence--small {
  font-size: 1.2rem; }

@media print, screen and (min-width: 1024px) {
  .p-sentence.p-sentence--small {
    font-size: 1.4rem; } }
/* ======================================================================

 #sub-heading

====================================================================== */
/*doc
---
title: sub-heading
name: sub-heading
categories: [project]
---

*/
/* p-sub-heading
---------------------------------------------------------------------- */
.p-sub-heading {
  margin-bottom: 14px;
  color: #836A4E;
  font-family: "Shippori Mincho", serif;
  font-weight: normal;
  line-height: 1.6;
  text-align: center; }

.p-sub-heading.p-sub-heading--left {
  text-align: left; }

/* p-sub-heading__title
---------------------------------------------------------------------- */
.p-sub-heading__title {
  font-size: 1.8rem; }
  @media print, screen and (min-width: 1024px) {
    .p-sub-heading__title {
      font-size: 2rem; } }

.p-sub-heading.p-sub-heading--large .p-sub-heading__title {
  font-size: 1.8rem; }
  @media print, screen and (min-width: 1024px) {
    .p-sub-heading.p-sub-heading--large .p-sub-heading__title {
      font-size: 2.4rem; } }

/* p-sub-heading__intitle
---------------------------------------------------------------------- */
.p-sub-heading__intitle {
  font-size: 1.8rem;
  color: #FFF;
  letter-spacing: 0.3rem;
  text-shadow: 0px 0px 10px #000; }
  @media print, screen and (min-width: 1024px) {
    .p-sub-heading__intitle {
      font-size: 3rem; } }

.p-sub-heading__intitle-min {
  font-size: 1.2rem; }
  @media print, screen and (min-width: 1024px) {
    .p-sub-heading__intitle-min {
      font-size: 2rem; } }

/* ======================================================================

 #tab

====================================================================== */
/*doc
---
title: tab
name: tab
categories: [project]
---

*/
/* p-tab
---------------------------------------------------------------------- */
/* ======================================================================

 #table

====================================================================== */
/*doc
---
title: table
name: table
categories: [project]
---

*/
/* p-table
---------------------------------------------------------------------- */
.p-table {
  margin: 0 auto; }

@media print, screen and (min-width: 1024px) {
  .p-table {
    max-width: 800px;
    font-size: 13px; } }
.p-table + .p-table {
  margin-top: 26px; }

/* タイトル
---------------------------------------------------------------------- */
.p-table__title {
  background-color: #994c1f;
  color: #fff;
  font-weight: bold;
  text-align: center;
  padding: 8px 0; }

/* spスクロール部分
---------------------------------------------------------------------- */
.p-tabel__container {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch; }

/* テーブル本体
---------------------------------------------------------------------- */
.p-table__item {
  table-layout: fixed;
  position: relative;
  border-collapse: collapse;
  color: #3B2D06;
  font-size: 1.2rem;
  background-color: #fff;
  line-height: 1.4; }

@media print, screen and (min-width: 1024px) {
  .p-table__item {
    font-size: 13px; } }
/* thead
---------------------------------------------------------------------- */
.p-table__item thead {
  color: #3B2D06;
  background-color: #E59B00; }

.p-table__item thead tr th {
  width: 12.5%;
  padding: .8rem 0;
  text-align: center;
  font-weight: bold;
  color: #fff; }

.p-table__item thead tr th + th {
  border-left: 1px solid #fff; }

@media print, screen and (min-width: 1024px) {
  .p-table__item thead tr th {
    font-size: 13px;
    width: 8.75%; } }
.p-table__item thead tr th.head {
  width: 18rem; }

@media print, screen and (min-width: 1024px) {
  .p-table__item thead tr th.head {
    width: 38.75%; } }
/* tbody
---------------------------------------------------------------------- */
.p-table__item tbody {
  text-align: center; }

.p-table__item tbody tr {
  background-color: #EEB917;
  border-top: 1px solid #fff;
  background-color: #FFF0C2; }

.p-table__item tbody > tr:nth-child(2n) {
  background-color: #FFFCF2; }

.p-table__item tbody tr td {
  padding: 8px 0; }

.p-table__item tbody tr td + td {
  border-left: 1px solid #fff; }

@media print, screen and (min-width: 1024px) {
  .p-table__item tbody tr td {
    width: 10%; } }
/* tfoot
---------------------------------------------------------------------- */
.p-table tfoot tr td {
  padding-top: 10px; }

@media print, screen and (min-width: 1024px) {
  .p-table tfoot tr td {
    font-size: 13px; } }
/* 説明
---------------------------------------------------------------------- */
.p-tabel__caption {
  font-size: 1.2rem;
  margin-top: .7rem; }

@media print, screen and (min-width: 1024px) {
  .p-tabel__caption {
    font-size: 1.4rem; } }
/* ======================================================================

 #tile

====================================================================== */
/*doc
---
tile: tile
name: tile
categories: [project]
---

*/
/* p-tile
---------------------------------------------------------------------- */
/* ======================================================================

 #title

====================================================================== */
/*doc
---
title: title
name: title
categories: [project]
---

heading > sub-heading > title

*/
/* p-title
---------------------------------------------------------------------- */
.p-title {
  display: block;
  margin: 26px 0 20px;
  padding: 8px 8px 8px 14px;
  font-size: 1.6rem;
  font-weight: bold;
  background: repeating-linear-gradient(-45deg, #fff, #fff 15%, transparent 15%, transparent 50%, #fff 50%, #fff 65%, transparent 65%, transparent 100%);
  background-size: 13px 13px;
  background-color: #FFF0C2;
  color: #5a4a1c;
  border-left: 3px solid #E59B00; }
  @media print, screen and (min-width: 1024px) {
    .p-title {
      margin: 42px 0 30px;
      padding: 12px 12px 10px 19px;
      border-left-width: 5px;
      font-size: 1.8rem; } }

.p-title-min {
  color: #702a2b;
  margin-bottom: 10px; }

.p-title-min:before {
  content: "-";
  color: #702a2b; }

.p-title.p-title--gap_top-s {
  margin-top: 0; }

.p-title.p-title--type_charge {
  margin-bottom: 14px; }

@media print, screen and (min-width: 768px) {
  .p-title.p-title--type_charge {
    display: none; } }
/* ======================================================================

 #txt

====================================================================== */
/*doc
---
title: txt
name: txt
categories: [project]
---

*/
/* p-txt
---------------------------------------------------------------------- */
.p-txt.p-txt--small {
  font-size: 1.4rem; }

.p-txt.p-txt--type_calender {
  margin-top: 10px;
  text-align: right;
  font-size: 1.2rem; }
  @media print, screen and (min-width: 1024px) {
    .p-txt.p-txt--type_calender {
      margin-top: 18px;
      font-size: 1.4rem; } }
  .p-txt.p-txt--type_calender > span + span {
    margin-left: 10px; }
  .p-txt.p-txt--type_calender > .red {
    color: #DC5B79; }
  .p-txt.p-txt--type_calender > .blue {
    color: #2388AC; }
  .p-txt.p-txt--type_calender > .yellow {
    color: #EEB917; }
  .p-txt.p-txt--type_calender > .green {
    color: #23ab3a; }

/* -----------------------------------------------------------------------------
   #scope (.s-hoge)

   特定のページや部分固有のスタイルを指定
   -------------------------------------------------------------------------- */
/* ======================================================================

  news

====================================================================== */
/*doc
---
title: news
name: news
categories: [scope]
---

*/
.s-header-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100%; }

@media print, screen and (min-width: 1120px) {
  .s-header-container {
    width: 90% !important; } }
/* ======================================================================

  gnav-option-list

====================================================================== */
/*doc
---
title: gnav-option-list
name: gnav-option-list
categories: [scope]
---

*/
.s-gnav-option {
  display: none;
  background-color: #F2F2F2; }
  @media print, screen and (min-width: 1024px) {
    .s-gnav-option {
      opacity: 1;
      visibility: visible;
      justify-content: center;
      position: absolute;
      opacity: .96;
      top: 130px;
      left: 0;
      width: 100%;
      height: auto;
      border-top: 3px solid #3B2D06;
      background-color: #fff;
      font-size: 1.4rem; } }

/* 親要素のliがホバーで展開
---------------------------------------------------------------------- */
@media print, screen and (min-width: 1024px) {
  .p-gnav__list > .option:hover .s-gnav-option {
    display: flex; } }

/* s-gnav-option__list
---------------------------------------------------------------------- */
.s-gnav-option__title {
  display: none;
  position: relative;
  transition: 0.3s; }
  @media print, screen and (min-width: 1200px) {
    .s-gnav-option__title {
      display: flex;
      align-items: center;
      justify-content: center;
      flex-direction: column;
      width: 200px;
      padding: 0 29px;
      text-align: center;
      color: #E59B00;
      border-right: 1px solid #3B2D06; } }
  .s-gnav-option__title > span {
    max-width: 100%; }

.s-gnav-option__title > .icon {
  display: none; }
  @media print, screen and (min-width: 1024px) {
    .s-gnav-option__title > .icon {
      display: block;
      position: relative;
      width: 89%;
      height: auto;
      margin: 0 auto -12px; }
      .s-gnav-option__title > .icon::after {
        display: block;
        z-index: 0;
        position: relative;
        top: 0;
        left: 0;
        width: 100%;
        height: auto;
        padding-top: 100%;
        content: ""; } }

@media print, screen and (min-width: 1024px) {
  .s-gnav-option__title > .icon > img {
    display: block;
    z-index: 1;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: auto; } }

@media print, screen and (min-width: 1024px) {
  .s-gnav-option.s-gnav-option--row_single .s-gnav-option__title > .icon {
    width: 76%;
    margin: -16px auto -12px; } }

/* s-gnav-option__list
---------------------------------------------------------------------- */
.s-gnav-option__list {
  transition: 0.3s; }
  @media print, screen and (min-width: 1024px) {
    .s-gnav-option__list {
      display: flex;
      justify-content: flex-start;
      align-items: center;
      flex-wrap: wrap;
      position: relative;
      width: 100%;
      max-width: 1200px; } }
  @media print, screen and (min-width: 1200px) {
    .s-gnav-option__list {
      width: calc(1200px - 200px); } }

/* s-gnav-option__list > li
---------------------------------------------------------------------- */
/**
 * pc（小: lg）1024~1200px 6列
 * pc（大: lg2）1200px~ 5列
 */
.s-gnav-option__list > li {
  display: block;
  border-bottom: 1px solid #fff; }
  @media print, screen and (min-width: 1024px) {
    .s-gnav-option__list > li {
      width: 16.66666%;
      max-width: 200px;
      height: 132px;
      border-right: 1px solid #3B2D06;
      border-bottom: 1px solid #3B2D06; } }
  @media print, screen and (min-width: 1200px) {
    .s-gnav-option__list > li {
      width: calc(100% / 5); } }

@media print, screen and (min-width: 1024px) {
  .s-gnav-option.s-gnav-option--row_single .s-gnav-option__list > li {
    height: 150px; } }

@media print, screen and (min-width: 1024px) {
  .s-gnav-option__list > li:nth-of-type(6n) {
    border-right-width: 0; } }
@media print, screen and (min-width: 1200px) {
  .s-gnav-option__list > li:nth-of-type(6n) {
    border-right-width: 1px; } }

@media print, screen and (min-width: 1024px) {
  .s-gnav-option__list > li:nth-of-type(6n+1):nth-last-of-type(-n+6),
  .s-gnav-option__list > li:nth-of-type(6n+1):nth-last-of-type(-n+6) ~ li {
    border-bottom: none; } }
@media print, screen and (min-width: 1200px) {
  .s-gnav-option__list > li:nth-of-type(6n+1):nth-last-of-type(-n+6),
  .s-gnav-option__list > li:nth-of-type(6n+1):nth-last-of-type(-n+6) ~ li {
    border-bottom: 1px solid #3B2D06; } }

@media print, screen and (min-width: 1200px) {
  .s-gnav-option__list > li:nth-of-type(5n+1):nth-last-of-type(-n+5),
  .s-gnav-option__list > li:nth-of-type(5n+1):nth-last-of-type(-n+5) ~ li {
    border-bottom: none !important; } }

.s-gnav-option__list > li:nth-last-of-type(1) {
  border-bottom: none; }

/* s-gnav-option__list > li > a
---------------------------------------------------------------------- */
.s-gnav-option__list > li > a {
  display: block;
  padding: 14px 0; }
  @media print, screen and (min-width: 1024px) {
    .s-gnav-option__list > li > a {
      display: flex;
      justify-content: center;
      align-items: center;
      flex-direction: column;
      position: relative;
      width: 100%;
      max-width: 100%;
      height: 100%;
      padding: 0 10px;
      color: #3B2D06; } }
  @media print, screen and (min-width: 1024px) {
    .s-gnav-option__list > li > a > img {
      display: block;
      position: relative;
      margin-bottom: 0;
      width: 60px;
      height: auto; } }
  .s-gnav-option__list > li > a > span {
    max-width: 100%; }

/* ======================================================================

  index-main-slide

====================================================================== */
/*doc
---
title: index-main-slide
name: index-main-slide
categories: [scope]
---

*/
.s-index-main-slide {
  padding: 3.25vw 0 0;
  transition: opacity .3s;
  opacity: 0; }

.s-index-main-slide.is-active {
  opacity: 1; }

/* ======================================================================

  item

====================================================================== */
.s-index-main-slide__item {
  position: relative;
  padding: 0 1.5vw; }

@media print, screen and (min-width: 1024px) {
  .s-index-main-slide__item {
    width: 650px; } }
/* ======================================================================

  inner

====================================================================== */
.s-index-main-slide__inner {
  position: relative;
  display: block;
  width: 100%;
  height: auto; }

/* ======================================================================

  dot

====================================================================== */
.s-index-main-slide__nav {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  width: 86.933%;
  margin: 2.8rem auto 0;
  transform: translateX(-0.6rem); }

@media print, screen and (min-width: 1024px) {
  .s-index-main-slide__nav {
    width: 100%;
    margin-top: 3.4rem; } }
.s-index-main-slide__nav > li {
  margin: 0 0 .8rem 1.2rem; }

.s-index-main-slide__dot {
  display: block;
  width: 1.4rem;
  height: 1.4rem;
  border-radius: 50% 50%;
  background-color: #F2F2F2;
  cursor: pointer;
  transition: 0.3s ease; }
  .s-index-main-slide__dot:hover {
    opacity: 0.7; }

.s-index-main-slide__nav > li.slick-active .s-index-main-slide__dot {
  background-color: #EEB917; }

/* ======================================================================

  index-main-visual

====================================================================== */
/*doc
---
title: index-main-visual
name: index-main-visual
categories: [scope]
---

*/
.s-index-main-visual {
  overflow: hidden;
  position: relative;
  background-color: #F2F2F2; }

/* ======================================================================

  video

====================================================================== */
.s-index-main-visual__bg {
  display: block;
  opacity: 0;
  z-index: 1;
  overflow: hidden;
  position: relative;
  width: 100%;
  height: auto; }
  .s-index-main-visual__bg::before {
    display: block;
    z-index: 2;
    opacity: .7;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-repeat: repeat;
    background-size: 4px auto;
    background-position: left top;
    background-image: url(../image/bg/bg-dot.svg);
    content: ""; }
  .s-index-main-visual__bg::after {
    display: block;
    z-index: 0;
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    padding-top: 113.33333333%;
    content: ""; }

.s-index-main-visual.is-show .s-index-main-visual__bg {
  opacity: 1; }

@media print, screen and (min-width: 768px) {
  .s-index-main-visual__bg::after {
    padding-top: 37.5%; } }
.s-index-main-visual__bg > video {
  display: block;
  z-index: 1;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: auto;
  height: 100%; }

@media print, screen and (min-width: 768px) {
  .s-index-main-visual__bg > video {
    width: 100%;
    height: auto; } }
/* ======================================================================

  loader

====================================================================== */
.s-index-main-visual__loader {
  display: block;
  z-index: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 36px;
  height: 36px;
  margin: auto;
  border: 8px solid #176885;
  border-right-color: transparent;
  border-radius: 18px;
  text-indent: -9999px;
  animation: three-quarters-loader 1250ms infinite linear; }

@keyframes three-quarters-loader {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }
/* ======================================================================

  txt

====================================================================== */
.s-index-main-visual__cont {
  display: block;
  opacity: 0;
  z-index: 2;
  position: absolute;
  left: 50%;
  bottom: 6vw;
  transform: translate(-50%, 0);
  width: 86.933%;
  height: auto;
  transition: opacity .3s; }

.s-index-main-visual.is-show .s-index-main-visual__cont {
  opacity: 1; }

@media print, screen and (min-width: 1024px) {
  .s-index-main-visual__cont {
    bottom: 4.4rem; } }
/* ======================================================================

  catch

====================================================================== */
.s-index-main-visual__catch {
  font-size: 2rem;
  font-family: "Shippori Mincho", serif;
  color: #fff;
  font-weight: 500;
  line-height: 1.4;
  text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.6); }

@media print, screen and (min-width: 1024px) {
  .s-index-main-visual__catch {
    font-size: 2.6rem;
    font-weight: normal;
    line-height: 1.5; } }
/* ======================================================================

  copy

====================================================================== */
.s-index-main-visual__copy {
  position: relative;
  margin: 1rem 0 0;
  padding: 0 0 0 3.9rem;
  color: #fff; }

@media print, screen and (min-width: 1024px) {
  .s-index-main-visual__copy {
    margin: 1.6rem 0 0;
    padding: 0 0 0 4.5rem; } }
/* ======================================================================

  icon

====================================================================== */
.s-index-main-visual__icon {
  display: block;
  position: absolute;
  top: -.2rem;
  left: 0;
  width: 4rem;
  height: auto; }
  .s-index-main-visual__icon::after {
    display: block;
    width: 100%;
    height: auto;
    padding-top: 100%;
    content: ""; }

.s-index-main-visual__icon > img {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto; }

@media print, screen and (min-width: 1024px) {
  .s-index-main-visual__icon {
    top: -1rem;
    left: -1rem;
    width: 6rem; } }
.s-index-main-visual__cont p {
  font-size: 1.2rem;
  line-height: 1.4;
  font-weight: normal; }

@media print, screen and (min-width: 1024px) {
  .s-index-main-visual__cont p {
    font-size: 1.4rem; } }
.s-index-main-visual__cont h2 {
  font-size: 1.4rem;
  font-weight: normal;
  line-height: 1.4; }

@media print, screen and (min-width: 1024px) {
  .s-index-main-visual__cont h2 {
    font-size: 1.6rem; } }
/* ======================================================================

  index-sub-slide

====================================================================== */
/*doc
---
title: index-sub-slide
name: index-sub-slide
categories: [scope]
---

*/
.s-index-sub-slide {
  width: 86.933%;
  max-width: 1200px;
  margin: 0 auto; }
  @media print, screen and (min-width: 1024px) {
    .s-index-sub-slide {
      width: 70.333%; } }

.s-index-sub-slide .item {
  margin: 0 5px; }
.s-index-sub-slide .slick-arrow {
  display: block;
  overflow: hidden;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  bottom: 0;
  width: 10px;
  height: 10px;
  margin: auto;
  padding: 0;
  background-color: transparent;
  border: none;
  text-indent: 100%;
  cursor: pointer; }
.s-index-sub-slide .slick-arrow.slick-prev {
  left: -13px;
  border-bottom: 1px solid #836A4E;
  border-left: 1px solid #836A4E; }
.s-index-sub-slide .slick-arrow.slick-next {
  right: -13px;
  border-top: 1px solid #836A4E;
  border-right: 1px solid #836A4E; }
@media print, screen and (min-width: 1024px) {
  .s-index-sub-slide .slick-arrow {
    width: 18px;
    height: 18px; }
  .s-index-sub-slide .slick-arrow.slick-prev {
    left: -28px;
    border-bottom-width: 2px;
    border-left-width: 2px; }
  .s-index-sub-slide .slick-arrow.slick-next {
    right: -28px;
    border-top-width: 2px;
    border-right-width: 2px; } }

.s-index-sub-bana {
  width: 86.933%;
  max-width: 1200px;
  margin: 0 auto;
  margin-bottom: 50px; }
  @media print, screen and (min-width: 1024px) {
    .s-index-sub-bana {
      margin-bottom: 100px;
      width: 70.333%;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; } }
  .s-index-sub-bana .item {
    width: 100%;
    margin-bottom: 20px; }
    .s-index-sub-bana .item > a {
      display: block;
      width: 100%;
      height: 100%; }
    .s-index-sub-bana .item img {
      width: 100%; }
    @media print, screen and (min-width: 1024px) {
      .s-index-sub-bana .item {
        width: 49%; } }

/* ======================================================================

  index-contact

====================================================================== */
/*doc
---
title: index-contact
name: index-contact
categories: [scope]
---

*/
.s-index-contact {
  margin: 2.4rem 0 0;
  padding: 3.2rem 0; }

@media print, screen and (min-width: 1024px) {
  .s-index-contact {
    margin: 6rem 0 0;
    padding: 5.8rem 0; } }
.s-index-contact__container {
  position: relative;
  width: 86.933%;
  margin: 0 auto;
  max-width: 1200px; }

@media print, screen and (min-width: 1024px) {
  .s-index-contact__container {
    width: 70.333%; } }
/* ****************************************************************************************************

  pickup

**************************************************************************************************** */
.s-pickup-wrap {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-wrap: wrap; }

/* ======================================================================

  s-pickup

====================================================================== */
.s-pickup {
  width: 48%;
  margin-bottom: 6%;
  background-color: #fff; }

.s-pickup-wrap > :nth-child(even) {
  margin-left: 4%; }

.s-pickup-wrap > :nth-child(2n+1):nth-last-child(-n+2),
.s-pickup-wrap > :nth-child(2n+1):nth-last-child(-n+2) ~ .s-pickup {
  margin-bottom: 0; }

@media print, screen and (min-width: 1024px) {
  .s-pickup {
    width: 32%;
    margin-left: 2%;
    margin-bottom: 0; }

  .s-pickup-wrap > :nth-child(even) {
    margin-left: 2%; }

  .s-pickup-wrap > :first-child {
    margin-left: 0; } }
.s-pickup > .inner {
  display: block;
  width: 100%;
  height: 100%; }

/* ======================================================================

  s-pickup__head

====================================================================== */
.s-pickup__head {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 0;
  padding-top: 65.175%; }

.s-pickup--has_border .s-pickup__head {
  border: 1px solid #ccc; }

.s-pickup__head > .image {
  display: block;
  position: absolute;
  top: 50%;
  transform: translatey(-50%);
  width: auto;
  height: 100%; }

/* ======================================================================

  s-pickup__body

====================================================================== */
.s-pickup__body {
  margin-top: 8px;
  text-align: center; }

@media print, screen and (min-width: 1024px) {
  .s-pickup__body {
    margin-top: 14px; } }
.s-pickup__body > .txt {
  position: relative; }
  .s-pickup__body > .txt::after {
    display: inline-block;
    width: 16px;
    height: auto;
    margin-left: 8px;
    vertical-align: middle;
    content: url(../image/common/arrow-circle.svg); }

/* ======================================================================

  check

====================================================================== */
/*doc
---
title: check
name: check
categories: [scope]
---

*/
/* ======================================================================

  s-check-data

====================================================================== */
/* s-check-data__head
---------------------------------------------------------------------- */
.s-check-data__head {
  position: relative;
  width: 100%;
  padding-top: 47.5%; }
  .s-check-data__head > .image {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    font-size: 0;
    line-height: 1; }

.s-check-menu__item.s-check-menu__item--large .s-check-data__head {
  padding-top: 23.538%; }
  @media print, screen and (min-width: 1024px) {
    .s-check-menu__item.s-check-menu__item--large .s-check-data__head {
      padding-top: 47.5%; } }

.s-check-data.required .s-check-data__head > .image {
  display: block;
  width: 135px;
  height: auto; }
  @media print, screen and (min-width: 1024px) {
    .s-check-data.required .s-check-data__head > .image {
      width: 68.75%; } }

.s-check-data.meal .s-check-data__head > .image {
  display: block;
  width: 55px;
  height: auto; }
  @media print, screen and (min-width: 1024px) {
    .s-check-data.meal .s-check-data__head > .image {
      width: 65px; } }

.s-check-data.time .s-check-data__head > .image {
  display: block;
  width: 47px;
  height: auto; }
  @media print, screen and (min-width: 1024px) {
    .s-check-data.time .s-check-data__head > .image {
      width: 55px; } }

.s-check-data.interview .s-check-data__head > .image {
  display: block;
  width: 43px;
  height: auto; }
  @media print, screen and (min-width: 1024px) {
    .s-check-data.interview .s-check-data__head > .image {
      width: 50px; } }

.s-check-data.holiday .s-check-data__head > .image {
  display: block;
  width: 100px;
  height: auto; }
  @media print, screen and (min-width: 1024px) {
    .s-check-data.holiday .s-check-data__head > .image {
      width: 120px; } }

.s-check-data.holiday.is-inactive .s-check-data__head > .image {
  width: 41px; }
  @media print, screen and (min-width: 1024px) {
    .s-check-data.holiday.is-inactive .s-check-data__head > .image {
      width: 50px; } }

/* s-check-data__body
---------------------------------------------------------------------- */
.s-check-data__body {
  text-align: center;
  font-size: 1.2rem; }
  @media print, screen and (min-width: 1024px) {
    .s-check-data__body {
      font-size: 1.4rem; } }

/* ======================================================================

  check

====================================================================== */
/*doc
---
title: check
name: check
categories: [scope]
---

*/
/* ======================================================================

  s-check-free-table

====================================================================== */
.s-check-free_table {
  margin-bottom: 30px; }
  .s-check-free_table th, .s-check-free_table td {
    border-bottom: 1px dashed #994c1f;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 10px;
    padding-right: 10px;
    font-size: 1.2rem; }
    @media print, screen and (min-width: 1024px) {
      .s-check-free_table th, .s-check-free_table td {
        font-size: 1.4rem;
        padding-top: 10px;
        padding-bottom: 10px;
        padding-left: 15px;
        padding-right: 15px; }
        .s-check-free_table th br, .s-check-free_table td br {
          display: none; } }
  .s-check-free_table .right_border {
    border-right: 1px dashed #994c1f; }
  .s-check-free_table .right_txt {
    text-align: right; }

/* ======================================================================

  check

====================================================================== */
/*doc
---
title: check
name: check
categories: [scope]
---

*/
/* ======================================================================

  s-check-free

====================================================================== */
.s-check-free > :first-child {
  margin-top: 0; }
.s-check-free h2 {
  display: block;
  margin: 26px 0 20px;
  padding: 8px 8px 8px 14px;
  font-size: 1.6rem;
  font-weight: bold;
  background: repeating-linear-gradient(-45deg, #fff, #fff 15%, transparent 15%, transparent 50%, #fff 50%, #fff 65%, transparent 65%, transparent 100%);
  background-size: 13px 13px;
  background-color: #FFF0C2;
  color: #5a4a1c;
  border-left: 3px solid #E59B00; }
  @media print, screen and (min-width: 1024px) {
    .s-check-free h2 {
      margin: 42px 0 30px;
      padding: 12px 12px 10px 19px;
      border-left-width: 5px;
      font-size: 1.8rem;
      background-size: 15px 15px; } }
.s-check-free h3 {
  position: relative;
  margin-bottom: 10px;
  padding-left: 20px;
  color: #E59B00;
  font-size: 1.6rem; }
  .s-check-free h3::after {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 10px;
    height: 2px;
    background-color: #E59B00;
    margin: auto;
    content: ''; }
  @media print, screen and (min-width: 1024px) {
    .s-check-free h3 {
      margin-bottom: 15px;
      font-size: 1.8rem; } }
.s-check-free p {
  margin-bottom: 20px; }
  @media print, screen and (min-width: 1024px) {
    .s-check-free p {
      margin-bottom: 30px; } }
  .s-check-free p .tel {
    font-size: 2rem;
    color: #994c1f; }
.s-check-free .dl_box {
  margin-bottom: 20px;
  border-top: 1px dashed #989898; }
.s-check-free dl {
  border-bottom: 1px dashed #989898;
  padding-top: 5px;
  padding-bottom: 5px; }
  .s-check-free dl dt {
    float: left;
    width: 20%; }
  .s-check-free dl dd {
    float: left;
    width: 80%; }
.s-check-free ul {
  margin-bottom: 20px; }

/* ======================================================================

  check
  categories: [scope]

====================================================================== */
/* ======================================================================

  s-check-intro

====================================================================== */
/* s-check-intro__head
---------------------------------------------------------------------- */
.s-check-intro__head {
  margin-bottom: 26px; }
  @media print, screen and (min-width: 1024px) {
    .s-check-intro__head {
      display: flex;
      justify-content: space-between;
      align-items: flex-end;
      margin-bottom: 52px; } }

@media print, screen and (min-width: 1024px) {
  .s-check-intro__headBottom {
    width: 320px; } }

/* ======================================================================

  check

====================================================================== */
/*doc
---
title: check
name: check
categories: [scope]
---

*/
/* ======================================================================

  s-check-list

====================================================================== */
@media print, screen and (min-width: 1024px) {
  .s-check-list {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    margin-bottom: -10px; } }

.s-check-list li {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #5a4a1c;
  padding: 10px 10px;
  background-color: #FFF0C2;
  text-align: center; }
  @media print, screen and (min-width: 1024px) {
    .s-check-list li {
      width: 32%;
      margin-right: 2%;
      margin-bottom: 12px; } }

@media print, screen and (min-width: 1024px) {
  .s-check-list li:nth-child(3n) {
    margin-right: 0; } }

.s-check-list li + li {
  margin-top: 10px; }
  @media print, screen and (min-width: 1024px) {
    .s-check-list li + li {
      margin-top: 0; } }

/* ======================================================================

  check-menu
  categories: [scope]

====================================================================== */
/* ======================================================================

  s-check-menu

====================================================================== */
.s-check-menu {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  border: 1px solid #989898; }

/* s-check-menu__item
---------------------------------------------------------------------- */
.s-check-menu__item {
  width: 50%; }
  @media print, screen and (min-width: 1024px) {
    .s-check-menu__item {
      width: 20%; } }

.s-check-menu__item.s-check-menu__item--large {
  width: 100%;
  border-top: 1px solid #989898; }
  @media print, screen and (min-width: 1024px) {
    .s-check-menu__item.s-check-menu__item--large {
      width: 20%;
      border-top: none; } }

.s-check-menu .s-check-menu__item:nth-of-type(even) {
  border-left: 1px solid #989898; }
  @media print, screen and (min-width: 1024px) {
    .s-check-menu .s-check-menu__item:nth-of-type(even) {
      border-right: 1px solid #989898; } }
.s-check-menu .s-check-menu__item:nth-of-type(1), .s-check-menu .s-check-menu__item:nth-of-type(2) {
  border-bottom: 1px solid #989898; }
  @media print, screen and (min-width: 1024px) {
    .s-check-menu .s-check-menu__item:nth-of-type(1), .s-check-menu .s-check-menu__item:nth-of-type(2) {
      border-bottom: none; } }

/* s-check-menu__itemHead
---------------------------------------------------------------------- */
.s-check-menu__itemHead {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.2;
  padding: 12px 0;
  background-color: #F2F2F2;
  text-align: center; }

/* s-check-menu__itemBody
---------------------------------------------------------------------- */
.s-check-menu__itemBody {
  padding: 12px 0; }
  @media print, screen and (min-width: 1024px) {
    .s-check-menu__itemBody {
      padding-top: 0; } }

/* ======================================================================

  s-check-summary
  categories: [scope]

====================================================================== */
.s-check-summary {
  margin-bottom: 26px; }
  @media print, screen and (min-width: 1024px) {
    .s-check-summary {
      display: flex;
      justify-content: space-between; } }

/* s-check-summary__head
---------------------------------------------------------------------- */
.s-check-summary__head {
  margin-bottom: 26px; }
  @media print, screen and (min-width: 1024px) {
    .s-check-summary__head {
      width: 46.7%; } }
  .s-check-summary__head > .title {
    margin-bottom: 14px;
    color: #994c1f;
    font-family: "Shippori Mincho", serif;
    font-size: 1.8rem; }

@media print, screen and (min-width: 1024px) {
  .s-check-summary__head:only-child {
    width: 100%; } }

/* s-check-summary__body
---------------------------------------------------------------------- */
@media print, screen and (min-width: 1024px) {
  .s-check-summary__body {
    width: 49.5%; } }
.s-check-summary__body .title {
  margin-bottom: 14px;
  color: #994c1f;
  font-family: "Shippori Mincho", serif;
  font-size: 1.8rem; }

/* ======================================================================

  s-check-tile
  categories: [scope]

====================================================================== */
/* ======================================================================

  s-check-tile

====================================================================== */
.s-check-tile {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
  padding: 10px 4px;
  background-color: #fff4d4;
  color: #3B2D06; }
  @media print, screen and (min-width: 1024px) {
    .s-check-tile {
      padding: 16px 4px; } }

.s-check-tile.s-check-tile--gray {
  background-color: #F2F2F2;
  color: #989898; }

.s-check-tile.s-check-tile--type_select::after {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  padding: 4px 4px;
  background-color: #DC5B79;
  color: #fff;
  line-height: 1;
  font-size: 10px;
  font-family: "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  content: "選択制"; }

.s-check-tile.s-check-tile--type_select.s-check-tile--gray::after {
  background-color: #989898; }

.s-check-tile.s-check-tile--type_either {
  background-color: #fff;
  border: 1px dashed #DC5B79; }

.s-check-tile.s-check-tile--type_either.s-check-tile--gray {
  background-color: #F2F2F2;
  border: none; }

/* s-check-tile__head
---------------------------------------------------------------------- */
.s-check-tile__head > .image {
  display: block;
  width: 46px;
  height: auto;
  margin: 0 auto; }
  @media print, screen and (min-width: 1024px) {
    .s-check-tile__head > .image {
      width: 68px;
      height: auto; } }

/* s-check-tile__body
---------------------------------------------------------------------- */
.s-check-tile__body {
  font-size: 1.2rem;
  text-align: center; }
  @media print, screen and (min-width: 1024px) {
    .s-check-tile__body {
      font-size: 1.4rem; } }

/* ======================================================================

  s-check-tilecaption__list

====================================================================== */
.s-check-tilecaption {
  margin-top: 10px; }

.s-check-tilecaption__list {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  font-size: 10px; }
  @media print, screen and (min-width: 1024px) {
    .s-check-tilecaption__list {
      font-size: 1.4rem; } }

.s-check-tilecaption__listItem {
  position: relative;
  padding-left: 14px; }
  @media print, screen and (min-width: 1024px) {
    .s-check-tilecaption__listItem {
      padding-left: 22px; } }

.s-check-tilecaption__listItem + .s-check-tilecaption__listItem {
  margin-left: 16px; }
  @media print, screen and (min-width: 1024px) {
    .s-check-tilecaption__listItem + .s-check-tilecaption__listItem {
      margin-left: 26px; } }

.s-check-tilecaption__listItem::after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  display: block;
  width: 10px;
  height: 10px;
  margin: auto;
  background-color: #FFF0C2;
  content: ""; }
  @media print, screen and (min-width: 1024px) {
    .s-check-tilecaption__listItem::after {
      width: 13px;
      height: 13px; } }

.s-check-tilecaption__listItem.s-check-tilecaption__listItem--either::after {
  background-color: #fff;
  border: 1px dashed #DC5B79; }

.s-check-tilecaption__listItem.s-check-tilecaption__listItem--inactive::after {
  background-color: #F2F2F2;
  color: #989898; }

.s-check-tilecaption__text {
  margin-top: 6px;
  font-size: 11px;
  line-height: 1.5;
  color: #797979;
  text-align: right; }
  @media print, screen and (min-width: 1024px) {
    .s-check-tilecaption__text {
      margin-top: 10px;
      font-size: 1.4rem; } }

.s-check-tilecaption__text .red {
  color: #DC5B79; }

/* ======================================================================

  check

====================================================================== */
/*doc
---
title: check
name: check
categories: [scope]
---

*/
/* ======================================================================

  facility
  categories: [scope]

====================================================================== */
@media print, screen and (min-width: 1024px) {
  .s-facility {
    display: flex;
    justify-content: space-between;
    align-items: flex-start; } }
/* 上部画像部分
---------------------------------------------------------------------- */
@media print, screen and (min-width: 1024px) {
  .s-facility__head {
    width: 48%;
    flex-grow: 0;
    flex-shrink: 0; } }
.s-facility-slide-wrap {
  opacity: 0;
  visibility: hidden;
  position: relative;
  transition: .3s; }
  .s-facility-slide-wrap.initialized {
    opacity: 1;
    visibility: visible; }

.s-facility-slide {
  margin-bottom: 4px; }

.s-facility-slide__item > .image {
  width: 100%;
  height: auto; }

.s-facility-slide-arrow {
  display: block;
  z-index: 1;
  position: absolute;
  top: 0;
  width: 9%;
  height: 100%;
  background-color: transparent;
  cursor: pointer;
  transition: .3s; }
  .s-facility-slide-arrow::after {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 12px;
    height: 12px;
    margin: auto;
    content: ""; }

.s-facility-slide-arrow.s-facility-slide-arrow--type_prev {
  left: 0; }
  .s-facility-slide-arrow.s-facility-slide-arrow--type_prev::after {
    left: 3px;
    border-top: 2px solid #fff;
    border-left: 2px solid #fff;
    transform: rotate(-45deg); }

.s-facility-slide-arrow.s-facility-slide-arrow--type_next {
  right: 0; }
  .s-facility-slide-arrow.s-facility-slide-arrow--type_next::after {
    right: 3px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg); }

@media print, screen and (min-width: 1024px) {
  .s-facility-slide-arrow {
    width: 6.2%; }
    .s-facility-slide-arrow > img {
      width: 12px; } }
.s-facility-slide-nav-wrap {
  opacity: 0;
  visibility: hidden;
  transition: .3s; }
  .s-facility-slide-nav-wrap.initialized {
    opacity: 1;
    visibility: visible; }

.s-facility-slide-nav .s-facility-slide__item {
  position: relative;
  margin: 0 2px;
  cursor: pointer;
  transition: opacity .3s ease; }
  .s-facility-slide-nav .s-facility-slide__item:hover {
    opacity: .7; }
  .s-facility-slide-nav .s-facility-slide__item::after {
    display: block;
    opacity: .6;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #3B2D06;
    content: "";
    transition: .3s; }

.s-facility-slide-nav .s-facility-slide__item.slick-current::after {
  opacity: 0;
  visibility: hidden; }

/* 下部テキスト部分
---------------------------------------------------------------------- */
.s-facility__body {
  position: relative;
  margin-top: 20px; }

@media print, screen and (min-width: 1024px) {
  .s-facility__body {
    width: 49.2%;
    margin-top: 0; } }
.s-facility__body > .title {
  margin-bottom: 5px;
  color: #E59B00;
  font-size: 1.6rem;
  font-weight: bold; }

@media print, screen and (min-width: 1024px) {
  .s-facility__body > .title {
    margin-bottom: 10px; } }
.s-facility__body > .btn-list {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  flex-wrap: wrap;
  margin-top: 17px;
  margin-bottom: -3%; }

@media print, screen and (min-width: 1024px) {
  .s-facility__body > .btn-list {
    justify-content: flex-start;
    margin-top: 28px;
    margin-right: -2%;
    margin-bottom: -2%; } }
.s-facility__body > .btn-list > li {
  width: 48.5%;
  margin-bottom: 3%; }
  .s-facility__body > .btn-list > li.large {
    width: 100%; }

@media print, screen and (min-width: 1024px) {
  .s-facility__body > .btn-list > li {
    width: auto;
    margin-right: 2%;
    margin-bottom: 2%; }
    .s-facility__body > .btn-list > li.large {
      width: auto; } }
/* ****************************************************************************************************

  charge

**************************************************************************************************** */
/* ======================================================================

  大枠

====================================================================== */
.s-charge-table {
  border-collapse: collapse; }

@media print, screen and (min-width: 768px) {
  .s-charge-table {
    border-right: 1px solid #989898;
    border-bottom: 1px solid #989898;
    border-left: 1px solid #989898; }

  .s-charge-table.s-charge-table--type_first {
    border-top: 1px solid #989898; }

  .s-charge-table.s-charge-table--bg_odd-gray {
    background-color: #F2F2F2; } }
/* ======================================================================

  thead（pcだけ）

====================================================================== */
.s-charge-table > thead {
  display: none; }

@media print, screen and (min-width: 768px) {
  .s-charge-table > thead {
    display: table-header-group; } }
/* tr
---------------------------------------------------------------------- */
.s-charge-table > thead tr {
  border-bottom: 1px solid #989898;
  background-color: #E59B00; }

/* th
---------------------------------------------------------------------- */
.s-charge-table > thead th {
  padding: 8px 12px;
  color: #fff;
  font-weight: normal;
  text-align: center; }

@media print, screen and (min-width: 768px) {
  .s-charge-table > thead th {
    padding: 12px; } }
.s-charge-table > thead th.item {
  border-right: 1px dashed #fff; }

.s-charge-table > thead th.price {
  text-align: center; }

/* ======================================================================

  tbody

====================================================================== */
/* pcのときだけタイトル（th）
---------------------------------------------------------------------- */
.s-charge-table > tbody .heading-pc {
  display: none; }

@media print, screen and (min-width: 768px) {
  .s-charge-table > tbody .heading-pc {
    display: table-cell;
    text-align: center;
    border-right: 1px dashed #989898; }
    .s-charge-table > tbody .heading-pc.heading-pc--type_item-blank {
      border-right: none; } }
/* tr
---------------------------------------------------------------------- */
.s-charge-table > tbody tr {
  border-bottom: 1px dashed #989898; }

.s-charge-table > tbody > :last-child {
  border-bottom: none; }

/* td
---------------------------------------------------------------------- */
.s-charge-table > tbody td {
  padding: 8px 12px; }

@media print, screen and (min-width: 768px) {
  .s-charge-table > tbody td {
    padding: 12px; } }
.s-charge-table > tbody td.price {
  width: 27%;
  text-align: right; }

@media print, screen and (min-width: 768px) {
  .s-charge-table > tbody td.price {
    text-align: center; } }
.s-charge-table > tbody td.item {
  width: 40%; }

@media print, screen and (min-width: 768px) {
  .s-charge-table > tbody td.item {
    border-right: 1px dashed #989898; } }
.s-charge-table > tbody td.title {
  background-color: #DC5B79;
  color: #fff; }

/* th
---------------------------------------------------------------------- */
.s-charge-table > tbody th {
  padding: 8px 12px; }

@media print, screen and (min-width: 768px) {
  .s-charge-table > tbody th {
    padding: 12px; } }
/* ======================================================================

  tfoot（spだけ）

====================================================================== */
@media print, screen and (min-width: 768px) {
  .s-charge-table > tfoot {
    display: none; } }
/* td
---------------------------------------------------------------------- */
.s-charge-table > tfoot td {
  padding: 4px 12px 0 12px;
  color: #797979;
  font-size: 1.2rem;
  font-weight: normal;
  text-align: right; }

/* ======================================================================

  question

====================================================================== */
/*doc
---
title: question
name: question
categories: [scope]
---

*/
.s-question-intro .mb0 {
  margin-bottom: 0; }
.s-question-intro dl dt {
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 15px;
  padding-right: 15px;
  line-height: 1.8rem; }
  @media print, screen and (min-width: 1024px) {
    .s-question-intro dl dt {
      padding-top: 10px;
      padding-bottom: 10px;
      padding-left: 30px;
      padding-right: 30px;
      line-height: 3.5rem; } }
  .s-question-intro dl dt span {
    float: left;
    color: #7297E8;
    font-weight: bold;
    font-size: 1.8rem;
    width: 9%; }
    @media print, screen and (min-width: 1024px) {
      .s-question-intro dl dt span {
        font-size: 2.4rem;
        width: 4%; } }
  .s-question-intro dl dt p {
    float: left;
    font-size: 1.4rem;
    font-weight: bold;
    color: #744800;
    width: 91%; }
    @media print, screen and (min-width: 1024px) {
      .s-question-intro dl dt p {
        font-size: 1.8rem;
        width: 96%; } }
.s-question-intro dl dd {
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 15px;
  padding-right: 15px;
  line-height: 1.8rem;
  margin-bottom: 10px; }
  @media print, screen and (min-width: 1024px) {
    .s-question-intro dl dd {
      padding-top: 10px;
      padding-bottom: 10px;
      padding-left: 30px;
      padding-right: 30px;
      line-height: 3.5rem;
      margin-bottom: 15px; } }
  .s-question-intro dl dd span {
    float: left;
    color: #E8352C;
    font-weight: bold;
    font-size: 1.8rem;
    width: 9%; }
    @media print, screen and (min-width: 1024px) {
      .s-question-intro dl dd span {
        font-size: 2.4rem;
        width: 4%; } }
  .s-question-intro dl dd p {
    float: left;
    font-size: 1.4rem;
    font-weight: normal;
    color: #744800;
    line-height: 1.8rem;
    width: 91%;
    text-align: justify;
    text-justify: inter-ideograph; }
    @media print, screen and (min-width: 1024px) {
      .s-question-intro dl dd p {
        font-size: 1.6rem;
        width: 96%;
        line-height: 2.4rem;
        padding-top: 5px; } }

/* ======================================================================

  access

====================================================================== */
/*doc
---
title: access
name: access
categories: [scope]
---

*/
.s-access-intro .p-gmap {
  height: 470px; }
.s-access-intro h3 {
  color: #744800;
  display: block;
  padding: 10px 15px;
  border-left: 3px solid #744800;
  margin-bottom: 20px; }
  @media print, screen and (min-width: 1024px) {
    .s-access-intro h3 {
      padding: 15px 30px;
      border-left: 5px solid #744800;
      margin-bottom: 30px; } }
  .s-access-intro h3 span {
    font-size: 12px; }

@media print, screen and (min-width: 1024px) {
  .s-access-intro__acc ul {
    display: flex; } }
.s-access-intro__acc ul li {
  margin-bottom: 20px;
  background-repeat: no-repeat;
  background-position: top 42% right 5%;
  background-size: 12px 17px;
  background-image: url("../image/arrow_right02.svg"); }
  @media print, screen and (min-width: 1024px) {
    .s-access-intro__acc ul li {
      margin-bottom: 0;
      padding-right: 4.5%; } }
  .s-access-intro__acc ul li p {
    padding-top: 10px; }
    .s-access-intro__acc ul li p span {
      background-color: #E8352C;
      color: #FFF;
      padding: 3px 8px;
      margin-right: 5px; }
.s-access-intro__acc ul li:last-child {
  padding-right: 0; }
.s-access-intro__acc ul .no-arrow {
  background-image: none; }
.s-access-intro__acc ul .only-pc {
  display: none; }
  @media print, screen and (min-width: 1024px) {
    .s-access-intro__acc ul .only-pc {
      display: block; } }

@media print, screen and (min-width: 1024px) {
  .mb40 {
    margin-bottom: 40px; } }

@media print, screen and (min-width: 1024px) {
  .mb80 {
    margin-bottom: 80px; } }

/* ======================================================================

  reservation

====================================================================== */
/*doc
---
title: reservation
name: reservation
categories: [scope]
---

*/
/* ======================================================================

  s-reservation-intro

====================================================================== */
/* .s-reservation-intro
---------------------------------------------------------------------- */
.s-reservation-intro {
  width: 100%;
  margin: 0 auto;
  margin-bottom: 50px; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-intro {
      width: 80%;
      margin-bottom: 100px; } }

/* .p-heading
---------------------------------------------------------------------- */
.s-reservation-intro .p-heading {
  width: 100%;
  height: 170px;
  margin: 0 auto 30px;
  background-image: url(../image/parts/title_mark-01.svg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 170px 170px; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-intro .p-heading {
      width: 100%;
      height: 220px;
      margin-bottom: 50px;
      background-size: 220px 220px; } }

/* .p-heading__lead
---------------------------------------------------------------------- */
.s-reservation-intro .p-heading__lead {
  margin-bottom: 28px;
  padding-top: 10px;
  color: #836A4E;
  line-height: 1.8rem; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-intro .p-heading__lead {
      margin-bottom: 35px;
      padding-top: 45px; } }

/* .lead_box
---------------------------------------------------------------------- */
.s-reservation-intro .lead_box {
  border-top: double 4px #836A4E;
  border-bottom: double 4px #836A4E;
  padding-top: 25px;
  padding-bottom: 25px;
  text-align: center; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-intro .lead_box {
      border-top: double 5px #836A4E;
      border-bottom: double 5px #836A4E;
      padding-top: 40px;
      padding-bottom: 40px; } }

/* .lead_box h3
---------------------------------------------------------------------- */
.s-reservation-intro .lead_box h3 {
  margin-bottom: 25px;
  color: #E59B00;
  font-weight: normal;
  font-size: 1.4rem; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-intro .lead_box h3 {
      margin-bottom: 30px;
      font-size: 2rem; } }

.s-reservation-intro .lead_box h3 span {
  font-weight: bold; }

/* .lead_box .form_btn
---------------------------------------------------------------------- */
.s-reservation-intro .lead_box .form_btn {
  margin-bottom: 25px; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-intro .lead_box .form_btn {
      margin-bottom: 35px; } }

.s-reservation-intro .lead_box .form_btn a {
  display: block;
  padding-top: 15px;
  padding-bottom: 15px;
  border: 1px dashed #836A4E;
  background-color: #FFF;
  background-repeat: no-repeat;
  background-position: center right 10px;
  background-size: auto 10px;
  background-image: url(../image/common/arrow-right.svg); }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-intro .lead_box .form_btn a {
      padding: 20px 40px 20px 20px;
      background-repeat: no-repeat;
      background-position: center right 20px;
      background-size: auto 20px; } }

.s-reservation-intro .lead_box .form_btn a p {
  font-size: 1.2rem; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-intro .lead_box .form_btn a p {
      font-size: 1.8rem; } }

/* .lead_boxin
---------------------------------------------------------------------- */
.s-reservation-intro .lead_box .lead_boxin {
  padding-top: 20px;
  border-top: 1px dashed #836A4E; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-intro .lead_box .lead_boxin {
      padding-top: 30px; } }

.s-reservation-intro .lead_box .lead_boxin.validation {
  margin-top: 35px; }

.s-reservation-intro .lead_box .lead_boxin.lead_boxin--type_confirm {
  padding-top: 8px;
  border-top: none; }

.s-reservation-intro .lead_box .lead_boxin h4 {
  margin-bottom: 10px;
  color: #3B2D06;
  font-size: 1.6rem;
  font-weight: normal; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-intro .lead_box .lead_boxin h4 {
      margin-bottom: 20px;
      font-size: 1.8rem; } }

.s-reservation-intro .lead_box .lead_boxin.validation h4 {
  color: #DC5B79; }

.s-reservation-intro .lead_box .lead_boxin p {
  margin-bottom: 10px;
  text-align: left;
  font-size: 1.4rem; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-intro .lead_box .lead_boxin p {
      text-align: center;
      font-size: 1.8rem; } }

.s-reservation-intro .lead_box .lead_boxin ul li {
  font-size: 1.2rem;
  color: #666666;
  text-align: left; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-intro .lead_box .lead_boxin ul li {
      font-size: 1.4rem;
      text-align: center; } }

/* s-reservation-table h3
---------------------------------------------------------------------- */
.s-reservation-table h3 {
  display: block;
  background-color: #FFF;
  text-align: center;
  padding-top: 15px;
  padding-bottom: 15px;
  border-top: 2px solid #836A4E;
  border-bottom: 2px solid #836A4E; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table h3 {
      padding-top: 20px;
      padding-bottom: 20px;
      border-top: 3px solid #836A4E;
      border-bottom: 3px solid #836A4E; } }

.s-reservation-table h3 .p-heading__title {
  font-size: 1.8rem;
  font-weight: normal; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table h3 .p-heading__title {
      font-size: 2rem; } }

/* s-reservation-table-title-caption
---------------------------------------------------------------------- */
.s-reservation-table-title-caption {
  margin-top: 10px;
  font-size: 1.2rem;
  color: #797979;
  font-weight: normal; }

@media print, screen and (min-width: 1024px) {
  .s-reservation-table-title-caption {
    font-size: 1.4rem; } }
/* ======================================================================

  s-reservation-table__box .left

====================================================================== */
.s-reservation-table .s-reservation-table__box .left {
  float: none;
  width: 100%;
  border-right: none;
  border-bottom: none;
  padding-top: 30px;
  padding-bottom: 0px; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .left {
      float: left;
      width: 27%;
      border-right: 1px dashed #836A4E;
      border-bottom: 1px dashed #836A4E;
      padding-top: 50px;
      padding-right: 10px;
      padding-left: 10px;
      padding-bottom: 50px; } }

/* h4
---------------------------------------------------------------------- */
.s-reservation-table .s-reservation-table__box .left h4 {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  font-size: 1.8rem;
  color: #836A4E;
  font-weight: bold; }

.s-reservation-table .s-reservation-table__box .left h4 span {
  display: inline-block;
  flex-grow: 0;
  flex-shrink: 0;
  background-color: #D1385C;
  color: #fff;
  font-size: 1.2rem;
  padding: 3px;
  padding-left: 10px;
  padding-right: 10px;
  margin-right: 10px; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .left h4 span {
      font-size: 1.4rem; } }

/* left_att
---------------------------------------------------------------------- */
.s-reservation-table .s-reservation-table__box .left .left_att {
  display: block;
  margin-top: 15px;
  padding: 3%;
  color: #836A4E;
  background-color: #FFF;
  border: 1px dashed #836A4E;
  font-size: 1.4rem; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .left .left_att {
      display: inline-block;
      margin-top: 25px;
      padding: 7%; } }

/* ****************************************************************************************************

  フォームのリストなど
  * ラジオボタンやテキストボックスなどのフォームの各パーツについては
  object/project/_form.scssを参照してください *

**************************************************************************************************** */
/* ======================================================================

  s-reservation-table__box .red

====================================================================== */
.s-reservation-table .s-reservation-table__box .red {
  color: #D1385C; }

/* ======================================================================

  s-reservation-table__box .red

====================================================================== */
.s-reservation-table .s-reservation-table__box .blue {
  color: #2388AC; }

/* ======================================================================

  s-reservation-table__box .right

====================================================================== */
.s-reservation-table .s-reservation-table__box .right {
  width: 100%;
  float: none;
  border-bottom: 1px dashed #836A4E;
  padding-top: 15px;
  padding-bottom: 30px;
  padding-left: 0; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right {
      width: 73%;
      float: right;
      border-bottom: 1px dashed #836A4E;
      padding-top: 50px;
      padding-right: 10px;
      padding-bottom: 50px;
      padding-left: 4%; } }

/* .form_lr
---------------------------------------------------------------------- */
.s-reservation-table .s-reservation-table__box .right .form_lr {
  margin-bottom: 10px; }

.s-reservation-table .s-reservation-table__box .right .form_lr .form_l {
  float: left;
  width: 35%;
  padding: 10px; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right .form_lr .form_l {
      width: 20%; } }

.s-reservation-table .s-reservation-table__box .right .form_lr .form_l30 {
  float: left;
  width: 40%;
  padding: 10px;
  padding-left: 0; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right .form_lr .form_l30 {
      width: 30%; } }

.s-reservation-table .s-reservation-table__box .right .form_lr .form_r {
  float: right;
  width: 65%; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right .form_lr .form_r {
      width: 80%; } }

.s-reservation-table .s-reservation-table__box .right .form_lr .form_r input[type="text"] {
  width: 100%; }

.s-reservation-table .s-reservation-table__box .right .form_lr .form_r70 {
  float: right;
  width: 60%; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right .form_lr .form_r70 {
      width: 70%; } }

.s-reservation-table .s-reservation-table__box .right .form_lr .form_r70 input[type="text"] {
  width: 100%; }

/* .form_lcr
---------------------------------------------------------------------- */
.s-reservation-table .s-reservation-table__box .right .form_lcr {
  margin-bottom: 10px; }

.s-reservation-table .s-reservation-table__box .right .form_lcr .form_l {
  float: left;
  width: 45%; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right .form_lcr .form_l {
      width: 30%; } }

.s-reservation-table .s-reservation-table__box .right .form_lcr .form_c {
  float: left;
  width: 27%; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right .form_lcr .form_c {
      width: 20%; } }

.s-reservation-table .s-reservation-table__box .right .form_lcr .form_r {
  float: left;
  width: 27%; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right .form_lcr .form_r {
      width: 20%; } }

/* .form_lr50
---------------------------------------------------------------------- */
.s-reservation-table .s-reservation-table__box .right .form_lr50 {
  margin-bottom: 10px; }

.s-reservation-table .s-reservation-table__box .right .form_lr50 .form_l {
  float: left;
  width: 48.5%; }

.s-reservation-table .s-reservation-table__box .right .form_lr50 .form_l input[type="text"] {
  width: 100%; }

.s-reservation-table .s-reservation-table__box .right .form_lr50 .form_r {
  float: right;
  width: 48.5%; }

.s-reservation-table .s-reservation-table__box .right .form_lr50 .form_r input[type="text"] {
  width: 100%; }

/* .att_red
---------------------------------------------------------------------- */
.s-reservation-table .s-reservation-table__box .right .att_red {
  padding-top: 12px;
  color: #E8352C;
  font-size: 1.2rem; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right .att_red {
      padding-top: 14px;
      font-size: 1.4rem; } }

/* .att_grey
---------------------------------------------------------------------- */
.s-reservation-table .s-reservation-table__box .right .att_grey {
  padding-top: 10px;
  color: #666666;
  font-size: 1.2rem; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right .att_grey {
      font-size: 1.4rem; } }

/* .text_list
---------------------------------------------------------------------- */
.s-reservation-table .s-reservation-table__box .right .text_list ul {
  padding-left: 10px; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right .text_list ul {
      padding-left: 0; } }

.s-reservation-table .s-reservation-table__box .right .text_list ul li {
  display: flex;
  justify-content: space-between;
  align-items: center; }
  .s-reservation-table .s-reservation-table__box .right .text_list ul li + li {
    margin-top: 12px; }
    @media print, screen and (min-width: 1024px) {
      .s-reservation-table .s-reservation-table__box .right .text_list ul li + li {
        margin-top: 14px; } }

.s-reservation-table .s-reservation-table__box .right .text_list ul li .text_list__title {
  padding-right: 8px; }

.s-reservation-table .s-reservation-table__box .right .text_list ul li .text_list__cont {
  width: 65%; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right .text_list ul li .text_list__cont {
      width: 80%; } }

/* .radio_list
---------------------------------------------------------------------- */
.s-reservation-table .s-reservation-table__box .right .radio_list ul li + li {
  margin-top: 12px; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right .radio_list ul li + li {
      margin-top: 14px; } }

.s-reservation-table .s-reservation-table__box .right .radio_list ul li .radio_left {
  float: left;
  width: 7%; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right .radio_list ul li .radio_left {
      max-width: 28px; } }

.s-reservation-table .s-reservation-table__box .right .radio_list ul li .radio_right {
  float: left;
  width: 93%; }

.s-reservation-table .s-reservation-table__box .right .radio_list ul li .radio_att {
  color: #666666;
  font-size: 1.4rem; }

.s-reservation-table .s-reservation-table__box .right .radio_list .radio_other {
  width: 100%;
  margin-top: 10px; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right .radio_list .radio_other {
      width: 50%;
      margin-top: 8px; } }

/* .radio_lr
---------------------------------------------------------------------- */
.s-reservation-table .s-reservation-table__box .right .radio_lr ul li {
  margin-bottom: 10px;
  line-height: 2rem; }

.s-reservation-table .s-reservation-table__box .right .radio_lr ul li .radio_left {
  float: left;
  width: 7%; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right .radio_lr ul li .radio_left {
      max-width: 28px; } }

.s-reservation-table .s-reservation-table__box .right .radio_lr ul li .radio_right {
  float: left;
  width: 93%; }

.s-reservation-table .s-reservation-table__box .right .radio_lr ul li .radio_att {
  color: #666666;
  font-size: 1.4rem; }

.s-reservation-table .s-reservation-table__box .right .radio_lr .radio_other {
  width: 100%; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right .radio_lr .radio_other {
      width: 50%; } }

.s-reservation-table .s-reservation-table__box .right .radio_lr .radio_other input[type="text"] {
  width: 100%; }

.s-reservation-table .s-reservation-table__box .right .radio_lr .radio_l {
  float: left;
  width: 30%; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right .radio_lr .radio_l {
      width: 20%; } }

.s-reservation-table .s-reservation-table__box .right .radio_lr .radio_l .radio_left {
  width: auto;
  margin-right: 7px; }

.s-reservation-table .s-reservation-table__box .right .radio_lr .radio_l .radio_right {
  width: auto; }

.s-reservation-table .s-reservation-table__box .right .radio_lr .radio_r {
  float: left;
  width: 30%; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right .radio_lr .radio_r {
      width: 20%; } }

.s-reservation-table .s-reservation-table__box .right .radio_lr .radio_r .radio_left {
  width: auto;
  margin-right: 7px; }

.s-reservation-table .s-reservation-table__box .right .radio_lr .radio_r .radio_right {
  width: auto; }

/* .radio_lcr
---------------------------------------------------------------------- */
.s-reservation-table .s-reservation-table__box .right .radio_lcr ul li {
  float: left;
  width: 50%;
  margin-bottom: 10px;
  line-height: 2rem; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right .radio_lcr ul li {
      width: 30%; } }

.s-reservation-table .s-reservation-table__box .right .radio_lcr ul li .radio_left {
  float: left;
  width: 7%; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right .radio_lcr ul li .radio_left {
      max-width: 28px; } }

.s-reservation-table .s-reservation-table__box .right .radio_lcr ul li .radio_right {
  float: left;
  width: 93%; }

.s-reservation-table .s-reservation-table__box .right .radio_lcr ul li .radio_att {
  color: #666666;
  font-size: 1.4rem; }

.s-reservation-table .s-reservation-table__box .right .radio_lcr .radio_other {
  width: 100%; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right .radio_lcr .radio_other {
      width: 50%; } }

.s-reservation-table .s-reservation-table__box .right .radio_lcr .radio_other input[type="text"] {
  width: 100%; }

.s-reservation-table .s-reservation-table__box .right .radio_lcr .radio_l .radio_left {
  width: auto;
  margin-right: 7px; }
.s-reservation-table .s-reservation-table__box .right .radio_lcr .radio_l .radio_right {
  width: auto; }

.s-reservation-table .s-reservation-table__box .right .radio_lcr .radio_c .radio_left {
  width: auto;
  margin-right: 7px; }
.s-reservation-table .s-reservation-table__box .right .radio_lcr .radio_c .radio_right {
  width: auto; }

.s-reservation-table .s-reservation-table__box .right .radio_lcr .radio_r .radio_left {
  width: auto;
  margin-right: 7px; }
.s-reservation-table .s-reservation-table__box .right .radio_lcr .radio_r .radio_right {
  width: auto; }

/* .radio_tb
---------------------------------------------------------------------- */
.s-reservation-table .s-reservation-table__box .right .radio_tb ul li {
  margin-bottom: 10px;
  line-height: 2rem; }

.s-reservation-table .s-reservation-table__box .right .radio_tb ul li .radio_left {
  float: left;
  width: 7%; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right .radio_tb ul li .radio_left {
      max-width: 28px; } }

.s-reservation-table .s-reservation-table__box .right .radio_tb ul li .radio_right {
  float: left;
  width: 93%; }

.s-reservation-table .s-reservation-table__box .right .radio_tb ul li .radio_att {
  color: #666666;
  font-size: 1.4rem; }

.s-reservation-table .s-reservation-table__box .right .radio_tb .radio_other {
  width: 100%; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right .radio_tb .radio_other {
      width: 50%; } }

.s-reservation-table .s-reservation-table__box .right .radio_tb .radio_other input[type="text"] {
  width: 100%; }

/* .mb10
---------------------------------------------------------------------- */
.s-reservation-table .s-reservation-table__box .right .mb10 {
  margin-bottom: 10px; }

/* .pt20
---------------------------------------------------------------------- */
.s-reservation-table .s-reservation-table__box .right .pt20 {
  padding-top: 20px; }

/* .text_single50
---------------------------------------------------------------------- */
.s-reservation-table .s-reservation-table__box .right .text_single50 input[type="text"] {
  width: 100%; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-table .s-reservation-table__box .right .text_single50 input[type="text"] {
      width: 50%; } }

/* .text_single100
---------------------------------------------------------------------- */
.s-reservation-table .s-reservation-table__box .right .text_single100 input[type="text"],
.s-reservation-table .s-reservation-table__box .right .text_single100 input[type="email"] {
  width: 100%; }

/* .textarea_box
---------------------------------------------------------------------- */
.s-reservation-table .s-reservation-table__box .right .textarea_box textarea {
  width: 100%;
  height: 200px;
  padding: 10px; }

/* .under_border_none
---------------------------------------------------------------------- */
.under_border_none {
  border-bottom: none !important; }

/* ======================================================================

  s-reservation-privacy

====================================================================== */
.s-reservation-privacy {
  text-align: center;
  width: 100%;
  margin: 0 auto;
  margin-top: 30px;
  border: 2px solid #836A4E;
  margin-bottom: 30px; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-privacy {
      width: 67%;
      margin: 0 auto;
      margin-top: 60px;
      border: 4px solid #836A4E;
      margin-bottom: 60px; } }

.s-reservation-privacy dl dt {
  padding-top: 20px;
  padding-bottom: 20px;
  border-bottom: 1px dashed #836A4E; }

.s-reservation-privacy dl dd {
  padding-top: 20px;
  padding-bottom: 20px; }
  .s-reservation-privacy dl dd input[type="checkbox"] {
    margin-right: 1%; }
  .s-reservation-privacy dl dd span.require {
    background-color: #E8352C;
    color: #FFF;
    margin-left: 1%;
    padding-left: 7px;
    padding-right: 7px; }

/* ======================================================================

  title, capiton

====================================================================== */
.s-reservation-title {
  display: block; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-title {
      display: inline-block; } }

.s-reservation-subtitle {
  display: block;
  font-size: 1.2rem;
  margin-top: 7px; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-subtitle {
      display: inline-block;
      margin-top: 0;
      margin-left: 3px;
      font-size: 1.4rem; } }

.s-reservation-caption {
  margin-top: 12px;
  font-size: 1.2rem;
  line-height: 1.4; }
  @media print, screen and (min-width: 1024px) {
    .s-reservation-caption {
      margin-top: 34px;
      padding-bottom: 26px;
      font-size: 1.4rem;
      border-bottom: 1px dashed #836A4E; } }

/* ======================================================================

  utility

====================================================================== */
@media print, screen and (min-width: 1024px) {
  .only-sp {
    display: none; } }

.only-pc {
  display: none; }
  @media print, screen and (min-width: 1024px) {
    .only-pc {
      display: block; } }

/* ======================================================================

  contact

====================================================================== */
/*doc
---
title: contact
name: contact
categories: [scope]
---

*/
.s-contact-title {
  padding-top: 75px; }
  @media print, screen and (min-width: 1024px) {
    .s-contact-title {
      padding-top: 95px; } }

.top_border {
  border-top: 1px dashed #836A4E; }

.spleft {
  text-align: left; }
  @media print, screen and (min-width: 1024px) {
    .spleft {
      text-align: center; } }

/* ======================================================================

  news

====================================================================== */
/*doc
---
title: news
name: news
categories: [scope]
---

*/
.s-news .news_cat ul {
  width: 260px;
  margin: 0 auto 40px; }
  .s-news .news_cat ul li {
    width: 120px;
    text-align: center;
    border-radius: 15px;
    font-size: 1.2rem; }
    .s-news .news_cat ul li a {
      display: block;
      padding-top: 5px;
      padding-bottom: 5px;
      color: #FFF;
      letter-spacing: 0.4rem; }
  .s-news .news_cat ul .cat01 {
    float: left;
    background-color: #E59B00; }
  .s-news .news_cat ul .cat02 {
    float: right;
    background-color: #176885; }

.s-news-info {
  padding-bottom: 90px;
  border-bottom: 1px dashed #744800; }
  .s-news-info .date_box {
    color: #797979;
    font-size: 1.2rem;
    margin-bottom: 20px; }
  .s-news-info .news_inbox {
    font-size: 1.4rem; }
  .s-news-info h2 {
    color: #744800;
    display: block;
    padding: 10px 15px;
    border-left: 3px solid #744800;
    margin-bottom: 20px; }
    @media print, screen and (min-width: 1024px) {
      .s-news-info h2 {
        padding: 15px 30px;
        border-left: 5px solid #744800;
        margin-bottom: 30px; } }
    .s-news-info h2 span {
      font-size: 12px; }

/* ======================================================================

  social

====================================================================== */
/*doc
---
title: social
name: social
categories: [scope]
---

*/
.s-social {
  border-bottom: 1px solid #744800;
  margin-bottom: 50px; }
  @media print, screen and (min-width: 1024px) {
    .s-social {
      margin-bottom: 100px; } }
  .s-social .s-social-box {
    margin-bottom: 50px; }
    @media print, screen and (min-width: 1024px) {
      .s-social .s-social-box {
        margin-bottom: 100px; } }
    .s-social .s-social-box h3 {
      color: #744800;
      display: block;
      padding: 10px 15px;
      border-left: 3px solid #744800;
      margin-bottom: 20px; }
      @media print, screen and (min-width: 1024px) {
        .s-social .s-social-box h3 {
          padding: 15px 30px;
          border-left: 5px solid #744800;
          margin-bottom: 30px; } }
      .s-social .s-social-box h3 span {
        font-size: 12px; }
    .s-social .s-social-box .img {
      margin-bottom: 20px; }
      @media print, screen and (min-width: 1024px) {
        .s-social .s-social-box .img {
          margin-bottom: 40px; } }
      .s-social .s-social-box .img img {
        width: 100%; }
    .s-social .s-social-box .txt {
      margin-bottom: 20px; }
      @media print, screen and (min-width: 1024px) {
        .s-social .s-social-box .txt {
          margin-bottom: 30px; } }
      .s-social .s-social-box .txt strong {
        color: #744800; }
    .s-social .s-social-box .lr_box .left {
      float: none;
      width: 100%;
      margin-bottom: 25px;
      border: 1px solid #744800; }
      @media print, screen and (min-width: 1024px) {
        .s-social .s-social-box .lr_box .left {
          float: left;
          width: 48.5%;
          margin-bottom: 0; } }
      .s-social .s-social-box .lr_box .left h4 {
        background-color: #744800;
        color: #FFF;
        font-size: 1.6rem;
        text-align: center;
        padding-top: 10px;
        padding-bottom: 10px; }
      .s-social .s-social-box .lr_box .left .month_box {
        border-bottom: 1px dashed #744800;
        padding: 20px 10%; }
        @media print, screen and (min-width: 1024px) {
          .s-social .s-social-box .lr_box .left .month_box {
            padding-left: 15%;
            padding-right: 15%; } }
        .s-social .s-social-box .lr_box .left .month_box .date {
          float: left;
          font-size: 1.4rem;
          padding-top: 5px; }
        .s-social .s-social-box .lr_box .left .month_box .month {
          float: right;
          color: #744800;
          font-size: 2rem; }
      .s-social .s-social-box .lr_box .left .months_box {
        padding: 20px 10%; }
        @media print, screen and (min-width: 1024px) {
          .s-social .s-social-box .lr_box .left .months_box {
            padding-left: 15%;
            padding-right: 15%; } }
        .s-social .s-social-box .lr_box .left .months_box .date {
          float: left;
          font-size: 1.4rem;
          padding-top: 5px; }
        .s-social .s-social-box .lr_box .left .months_box .months {
          float: right;
          color: #744800;
          font-size: 1.8rem; }
    .s-social .s-social-box .lr_box .right {
      float: none;
      width: 100%; }
      @media print, screen and (min-width: 1024px) {
        .s-social .s-social-box .lr_box .right {
          float: right;
          width: 48.5%; } }
      .s-social .s-social-box .lr_box .right h5 {
        border-top: 2px solid #744800;
        border-bottom: 2px solid #744800;
        padding-top: 15px;
        padding-bottom: 15px;
        text-align: center;
        color: #744800;
        font-size: 1.8rem; }
        .s-social .s-social-box .lr_box .right h5 span {
          color: #333;
          font-size: 1.4rem;
          font-weight: normal; }
      .s-social .s-social-box .lr_box .right ul li {
        border-bottom: 1px dashed #744800;
        padding-top: 5px;
        padding-bottom: 5px; }
        .s-social .s-social-box .lr_box .right ul li .left_s {
          float: left;
          width: 50%;
          text-align: center; }
        .s-social .s-social-box .lr_box .right ul li .right_s {
          float: right;
          width: 50%;
          text-align: center; }

.s-social_bana ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  .s-social_bana ul li {
    margin-bottom: 20px;
    width: 100%; }
    @media print, screen and (min-width: 1024px) {
      .s-social_bana ul li {
        margin-bottom: 20px;
        width: 49%; } }

/* ======================================================================

  campaign

====================================================================== */
/*doc
---
title: campaign
name: campaign
categories: [scope]
---

*/
.s-campaign-intro h3 {
  color: #744800;
  display: block;
  padding: 10px 15px;
  border-left: 3px solid #744800;
  margin-bottom: 20px; }
  @media print, screen and (min-width: 1024px) {
    .s-campaign-intro h3 {
      padding: 15px 30px;
      border-left: 5px solid #744800;
      margin-bottom: 30px; } }
  .s-campaign-intro h3 span {
    font-size: 12px; }
.s-campaign-intro .img {
  margin-bottom: 20px; }
  @media print, screen and (min-width: 1024px) {
    .s-campaign-intro .img {
      margin-bottom: 50px; } }
.s-campaign-intro h4 {
  color: #744800;
  font-size: 1.4rem;
  margin-bottom: 15px; }
  @media print, screen and (min-width: 1024px) {
    .s-campaign-intro h4 {
      font-size: 1.8rem;
      margin-bottom: 30px; } }
.s-campaign-intro .txt {
  margin-bottom: 25px; }
  @media print, screen and (min-width: 1024px) {
    .s-campaign-intro .txt {
      margin-bottom: 50px; } }
.s-campaign-intro ul {
  display: block; }
  @media print, screen and (min-width: 1024px) {
    .s-campaign-intro ul {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; } }
  .s-campaign-intro ul li {
    margin-bottom: 20px;
    width: 100%;
    padding: 20px 6.5%;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between; }
    @media print, screen and (min-width: 1024px) {
      .s-campaign-intro ul li {
        margin-bottom: 0;
        width: 31%;
        padding: 30px 2.5%; } }
    .s-campaign-intro ul li .icon {
      margin-bottom: 20px;
      padding-left: 15%;
      padding-right: 15%; }
      @media print, screen and (min-width: 1024px) {
        .s-campaign-intro ul li .icon {
          margin-bottom: 40px;
          padding-left: 0;
          padding-right: 0; } }
    .s-campaign-intro ul li .btn {
      position: relative;
      bottom: 0; }
      .s-campaign-intro ul li .btn a {
        border: 1px solid #E8352C;
        display: block;
        width: 100%;
        padding-top: 5px;
        padding-bottom: 5px;
        text-align: center;
        color: #E8352C; }
      .s-campaign-intro ul li .btn a:hover {
        background-color: #E8352C;
        opacity: 1;
        color: #FFF; }
      .s-campaign-intro ul li .btn a:after {
        display: block;
        position: absolute;
        bottom: 0;
        right: 0;
        border-left: 12px solid transparent;
        border-bottom: 12px solid #E8352C;
        content: ""; }
    .s-campaign-intro ul li p {
      text-align: justify;
      text-justify: inter-ideograph;
      margin-bottom: 15px; }
      @media print, screen and (min-width: 1024px) {
        .s-campaign-intro ul li p {
          margin-bottom: 30px; } }
  .s-campaign-intro ul li:nth-child(1) {
    background-color: #D1E7E7; }
  .s-campaign-intro ul li:nth-child(2) {
    background-color: #F5CBB9; }
  .s-campaign-intro ul li:nth-child(3) {
    background-color: #F5E2A7;
    margin-bottom: 0; }

/* ======================================================================

  blood-option

====================================================================== */
/*doc
---
title: blood-option
name: blood-option
categories: [scope]
---

*/
/* ======================================================================

  大枠

====================================================================== */
.s-blood-option h3.p-sub-heading {
  font-size: 1.4em; }
.s-blood-option h4.p-sub-heading {
  margin-top: 30px;
  font-size: 1.2em;
  text-align: left;
  border-left: 5px solid #bd4666;
  padding-left: 10px; }
.s-blood-option section {
  margin-bottom: 50px; }

.s-blood-option-table {
  border-collapse: collapse;
  margin-top: 10px;
  margin-bottom: 10px; }

@media print, screen and (min-width: 768px) {
  .s-blood-option-table {
    border-right: 1px solid #994c1f;
    border-bottom: 1px solid #994c1f;
    border-left: 1px solid #994c1f; }

  .s-blood-option-table.s-blood-option-table--type_first {
    border-top: 1px solid #994c1f; }

  .s-blood-option-table.s-blood-option-table--bg_odd-gray {
    background-color: #F2F2F2; } }
/* ======================================================================

  thead（pcだけ）

====================================================================== */
.s-blood-option-table > thead {
  display: none; }

@media print, screen and (min-width: 768px) {
  .s-blood-option-table > thead {
    display: table-header-group; } }
/* tr
---------------------------------------------------------------------- */
.s-blood-option-table > thead tr {
  border-bottom: 1px solid #994c1f;
  background-color: #DC5B79; }

.s-blood-option-table > thead tr:last-of-type {
  border-bottom: 1px solid #994c1f; }

/* th
---------------------------------------------------------------------- */
.s-blood-option-table > thead th {
  padding: 8px 12px;
  color: #fff;
  font-weight: normal;
  text-align: center; }

@media print, screen and (min-width: 768px) {
  .s-blood-option-table > thead th {
    padding: 12px; } }
.s-blood-option-table > thead th.item {
  border-right: 1px dashed #fff; }

.s-blood-option-table > thead th.price {
  text-align: center; }

/* ======================================================================

  tbody

====================================================================== */
/* pcのときだけタイトル（th）
---------------------------------------------------------------------- */
.s-blood-option-table > tbody .heading-pc {
  display: block;
  width: 100%;
  float: left;
  background-color: #bd4666;
  color: white; }

@media print, screen and (min-width: 768px) {
  .s-blood-option-table > tbody .heading-pc {
    display: table-cell;
    text-align: center;
    width: 33%;
    float: none;
    background-color: white;
    color: #994c1f;
    border-right: 1px dashed #994c1f; }
    .s-blood-option-table > tbody .heading-pc.heading-pc--type_item-blank {
      border-right: none; } }
/* tr
---------------------------------------------------------------------- */
.s-blood-option-table > tbody tr {
  border-bottom: 1px solid #994c1f; }

@media print, screen and (min-width: 768px) {
  .s-blood-option-table > tbody tr {
    border-bottom: 1px dashed #994c1f; } }
.s-blood-option-table > tbody > :last-child {
  border-bottom: none; }

/* td
---------------------------------------------------------------------- */
.s-blood-option-table > tbody td {
  padding: 4px 12px 0; }

.s-blood-option-table > tbody td.heading-pc {
  padding: 8px 12px; }

.s-blood-option-table > tbody td.price {
  padding-bottom: 20px; }

@media print, screen and (min-width: 768px) {
  .s-blood-option-table > tbody td.price {
    padding-bottom: 12px; } }
@media print, screen and (min-width: 768px) {
  .s-blood-option-table > tbody td {
    padding: 12px; } }
.s-blood-option-table > tbody td.price {
  display: block;
  width: 100%;
  float: left; }

@media print, screen and (min-width: 768px) {
  .s-blood-option-table > tbody td.price {
    width: 27%;
    text-align: right;
    display: table-cell;
    float: none; } }
@media print, screen and (min-width: 768px) {
  .s-blood-option-table > tbody td.price {
    text-align: center; } }
.s-blood-option-table > tbody td.item {
  display: block;
  width: 100%;
  float: left; }

@media print, screen and (min-width: 768px) {
  .s-blood-option-table > tbody td.item {
    width: 40%;
    float: none;
    display: table-cell; } }
@media print, screen and (min-width: 768px) {
  .s-blood-option-table > tbody td.item {
    border-right: 1px dashed #994c1f; } }
.s-blood-option-table > tbody td.title {
  background-color: #DC5B79;
  color: #fff; }

/* th
---------------------------------------------------------------------- */
.s-blood-option-table > tbody th {
  padding: 8px 12px; }

@media print, screen and (min-width: 768px) {
  .s-blood-option-table > tbody th {
    padding: 12px; } }
/* ======================================================================

  tfoot（spだけ）

====================================================================== */
@media print, screen and (min-width: 768px) {
  .s-blood-option-table > tfoot {
    display: none; } }
/* td
---------------------------------------------------------------------- */
.s-blood-option-table > tfoot td {
  padding: 4px 12px 0;
  color: #797979;
  font-size: 1.2rem;
  font-weight: normal;
  text-align: right; }

/* -----------------------------------------------------------------------------
  #theme
   -------------------------------------------------------------------------- */
/* #bg
  -------------------------------------------------------------------------- */
/*doc
---
title: bg
name: bg
categories: [theme]
---

*/
.t-bg-stripe-yellow {
  background: repeating-linear-gradient(-45deg, #fff, #fff 15%, transparent 15%, transparent 50%, #fff 50%, #fff 65%, transparent 65%, transparent 100%);
  background-size: 13px 13px;
  background-color: #FFF0C2; }

@media print, screen and (min-width: 1024px) {
  .t-bg-stripe-yellow {
    background-size: 15px 15px; } }
/* #bg
  -------------------------------------------------------------------------- */
/*doc
---
title: bg
name: bg
categories: [theme]
---

*/
/* 茶色（神戸）
---------------------------------------------------------------------- */
.t-border-stipe-baige {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 12px;
  background: repeating-linear-gradient(-45deg, #F5ECDB, #F5ECDB 12%, transparent 12%, transparent 50%, #F5ECDB 50%, #F5ECDB 62%, transparent 62%, transparent 100%);
  background-size: 10px 10px;
  background-color: #F9F4E9; }

.t-border-stipe-baige__inner {
  display: block;
  width: 100%;
  height: 100%;
  padding: 14px 12px;
  background-color: #fff; }

/* 赤色（京都・総合）
---------------------------------------------------------------------- */
.t-border-stipe-red {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 12px;
  background: repeating-linear-gradient(-45deg, #fbf1d9, #fbf1d9 10%, transparent 10%, transparent 50%, #fbf1d9 50%, #fbf1d9 60%, transparent 60%, transparent 100%);
  background-size: 13px 13px;
  background-color: #f8ebcb; }
  @media print, screen and (min-width: 1024px) {
    .t-border-stipe-red {
      background-size: 15px 15px; } }

.t-border-stipe-red__inner {
  display: block;
  width: 100%;
  height: 100%;
  padding: 14px 12px;
  background-color: #fff; }

/* 黄色（BRIO）
---------------------------------------------------------------------- */
.t-border-stipe-yellow {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 12px;
  background: repeating-linear-gradient(-45deg, #fff, #fff 15%, transparent 15%, transparent 50%, #fff 50%, #fff 65%, transparent 65%, transparent 100%);
  background-size: 13px 13px;
  background-color: #FFF0C2; }
  @media print, screen and (min-width: 1024px) {
    .t-border-stipe-yellow {
      background-size: 15px 15px; } }

.t-border-stipe-yellow__inner {
  display: block;
  width: 100%;
  height: 100%;
  padding: 14px 12px;
  background-color: #fff; }

/* #icn
  -------------------------------------------------------------------------- */
/*doc
---
title: icn
name: icn
categories: [theme]
---

*/
.t-color-red {
  color: #D1385C !important; }

.t-color-gray {
  color: #797979 !important; }

.t-color-blue {
  color: #2388AC; }

.t-color-yellow {
  color: #EEB917; }

.t-color-green {
  color: #23ab3a; }

.t-color-pink {
  color: #db5abe; }

.t-color-pink2 {
  color: #dc85e6; }

/* ****************************************************************************************************

  font-weight

**************************************************************************************************** */
.u-font-weight-bold {
  font-weight: bold !important; }

.u-font-weight-normal {
  font-weight: bold !important; }

/* -----------------------------------------------------------------------------
  #Utility
   -------------------------------------------------------------------------- */
/* ****************************************************************************************************

  align

**************************************************************************************************** */
.u-align-left {
  display: block !important;
  margin-left: 0 !important;
  margin-right: auto !important; }

.u-align-center {
  display: block !important;
  margin-right: auto !important;
  margin-left: auto !important; }

.u-align-right {
  display: block !important;
  margin-left: auto !important;
  margin-right: 0 !important; }

/* ****************************************************************************************************

  # clearfix

**************************************************************************************************** */
.u-clearfix::after {
  display: block;
  clear: both;
  content: ""; }

/* ****************************************************************************************************

  # clip
  category: utility

**************************************************************************************************** */
.u-clip {
  overflow: hidden !important; }

/* #Display
  -------------------------------------------------------------------------- */
/*doc
---
title: display
name: display
categories: [utility]
---
*/
@media print, screen and (min-width: 1024px) {
  .u-dn-pc {
    display: none; } }

.u-dn-sp {
  display: none; }
  @media print, screen and (min-width: 1024px) {
    .u-dn-sp {
      display: block; } }

@media print, screen and (min-width: 1024px) {
  .u-dn-sp-inline {
    display: none; } }

.u-dn-sp-inline {
  display: none; }
  @media print, screen and (min-width: 1024px) {
    .u-dn-sp-inline {
      display: inline; } }

/* ======================================================================

  〜まで消す

====================================================================== */
@media print, screen and (max-width: 1023px) {
  .u-dn-under-pc {
    display: none !important; }

  .u-dn-under-pc-inline {
    display: none !important; } }
@media print, screen and (max-width: 767px) {
  .u-dn-under-tablet {
    display: none !important; }

  .u-dn-under-tablet-inline {
    display: none !important; } }
/* ======================================================================

  〜から消す

====================================================================== */
@media print, screen and (min-width: 1024px) {
  .u-dn-over-pc {
    display: none !important; }

  .u-dn-over-pc-inline {
    display: none !important; } }
@media print, screen and (min-width: 768px) {
  .u-dn-over-tablet {
    display: none !important; }

  .u-dn-over-tablet-inline {
    display: none !important; } }
/* ****************************************************************************************************

  font-size
  category: utility

**************************************************************************************************** */
/* ****************************************************************************************************

  display

**************************************************************************************************** */
/* ======================================================================

  〜まで消す

====================================================================== */
@media print, screen and (max-width: 1023px) {
  .u-hide-until-l {
    display: none !important; } }
@media print, screen and (max-width: 767px) {
  .u-hide-until-m {
    display: none !important; } }
/* ======================================================================

  〜から消す

====================================================================== */
@media print, screen and (min-width: 1024px) {
  .u-hide-from-l {
    display: none !important; } }
@media print, screen and (min-width: 768px) {
  .u-hide-from-m {
    display: none !important; } }
/* ****************************************************************************************************

  linebreak

**************************************************************************************************** */
/* ======================================================================

  〜までブロック要素になって改行

====================================================================== */
.u-linebreak-under-l {
  display: block !important; }

@media print, screen and (min-width: 1024px) {
  .u-linebreak-under-l {
    display: inline !important; } }
.u-linebreak-under-m {
  display: block !important; }

@media print, screen and (min-width: 768px) {
  .u-linebreak-under-m {
    display: inline !important; } }
/* ======================================================================

  〜からブロック要素になって改行

====================================================================== */
.u-linebreak-over-l {
  display: inline !important; }

@media print, screen and (min-width: 1024px) {
  .u-linebreak-over-l {
    display: block !important; } }
.u-linebreak-over-m {
  display: inline !important; }

@media print, screen and (min-width: 768px) {
  .u-linebreak-over-m {
    display: block !important; } }
/* ****************************************************************************************************

  margin

**************************************************************************************************** */
/* ======================================================================

  上方向のマージン

====================================================================== */
.u-mt0 {
  margin-top: 0 !important; }

.u-mt1 {
  margin-top: 1rem !important; }

.u-mt2 {
  margin-top: 2rem !important; }

.u-mt3 {
  margin-top: 3rem !important; }

.u-mt4 {
  margin-top: 3rem !important; }

.u-mt0 {
  margin-top: 0rem !important; }

.u-mt1 {
  margin-top: 1rem !important; }

.u-mt2 {
  margin-top: 2rem !important; }

.u-mt3 {
  margin-top: 3rem !important; }

.u-mt4 {
  margin-top: 4rem !important; }

.u-mt5 {
  margin-top: 5rem !important; }

.u-mt6 {
  margin-top: 6rem !important; }

.u-mt7 {
  margin-top: 7rem !important; }

.u-mt8 {
  margin-top: 8rem !important; }

.u-mt9 {
  margin-top: 9rem !important; }

.u-mt10 {
  margin-top: 10rem !important; }

/* ======================================================================

  下方向のマージン

====================================================================== */
.u-mb0 {
  margin-bottom: 0 !important; }

/* ======================================================================

  左マージン

====================================================================== */
.u-ml-s {
  margin-left: 10px; }

/* ****************************************************************************************************

  # padding

**************************************************************************************************** */
.u-pd0 {
  padding: 0 !important; }

.u-pt0 {
  padding-top: 0 !important; }

/* ****************************************************************************************************

  txt-align

**************************************************************************************************** */
.u-txt-align-right {
  text-align: right !important; }

.u-txt-align-center {
  text-align: center !important; }

.u-txt-align-left {
  text-align: left !important; }

@media print, screen and (min-width: 1024px) {
  .u-txt-align-center-from-l {
    text-align: center !important; } }
@media print, screen and (min-width: 768px) {
  .u-txt-align-center-from-m {
    text-align: center !important; } }
/* -----------------------------------------------------------------------------
  #plugin
   -------------------------------------------------------------------------- */
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-list,
.slick-slider .slick-track {
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-track:after, .slick-track:before {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

/* ======================================================================

  #jquery-ui

====================================================================== */
/*! jQuery UI - v1.12.1 - 2016-09-14
* http://jqueryui.com
* Includes: core.css, accordion.css, autocomplete.css, menu.css, button.css, controlgroup.css, checkboxradio.css, datepicker.css, dialog.css, draggable.css, resizable.css, progressbar.css, selectable.css, selectmenu.css, slider.css, sortable.css, spinner.css, tabs.css, tooltip.css, theme.css
* To view and modify this theme, visit http://jqueryui.com/themeroller/?bgShadowXPos=&bgOverlayXPos=&bgErrorXPos=&bgHighlightXPos=&bgContentXPos=&bgHeaderXPos=&bgActiveXPos=&bgHoverXPos=&bgDefaultXPos=&bgShadowYPos=&bgOverlayYPos=&bgErrorYPos=&bgHighlightYPos=&bgContentYPos=&bgHeaderYPos=&bgActiveYPos=&bgHoverYPos=&bgDefaultYPos=&bgShadowRepeat=&bgOverlayRepeat=&bgErrorRepeat=&bgHighlightRepeat=&bgContentRepeat=&bgHeaderRepeat=&bgActiveRepeat=&bgHoverRepeat=&bgDefaultRepeat=&iconsHover=url(%22images%2Fui-icons_555555_256x240.png%22)&iconsHighlight=url(%22images%2Fui-icons_777620_256x240.png%22)&iconsHeader=url(%22images%2Fui-icons_444444_256x240.png%22)&iconsError=url(%22images%2Fui-icons_cc0000_256x240.png%22)&iconsDefault=url(%22images%2Fui-icons_777777_256x240.png%22)&iconsContent=url(%22images%2Fui-icons_444444_256x240.png%22)&iconsActive=url(%22images%2Fui-icons_ffffff_256x240.png%22)&bgImgUrlShadow=&bgImgUrlOverlay=&bgImgUrlHover=&bgImgUrlHighlight=&bgImgUrlHeader=&bgImgUrlError=&bgImgUrlDefault=&bgImgUrlContent=&bgImgUrlActive=&opacityFilterShadow=Alpha(Opacity%3D30)&opacityFilterOverlay=Alpha(Opacity%3D30)&opacityShadowPerc=30&opacityOverlayPerc=30&iconColorHover=%23555555&iconColorHighlight=%23777620&iconColorHeader=%23444444&iconColorError=%23cc0000&iconColorDefault=%23777777&iconColorContent=%23444444&iconColorActive=%23ffffff&bgImgOpacityShadow=0&bgImgOpacityOverlay=0&bgImgOpacityError=95&bgImgOpacityHighlight=55&bgImgOpacityContent=75&bgImgOpacityHeader=75&bgImgOpacityActive=65&bgImgOpacityHover=75&bgImgOpacityDefault=75&bgTextureShadow=flat&bgTextureOverlay=flat&bgTextureError=flat&bgTextureHighlight=flat&bgTextureContent=flat&bgTextureHeader=flat&bgTextureActive=flat&bgTextureHover=flat&bgTextureDefault=flat&cornerRadius=3px&fwDefault=normal&ffDefault=Arial%2CHelvetica%2Csans-serif&fsDefault=1em&cornerRadiusShadow=8px&thicknessShadow=5px&offsetLeftShadow=0px&offsetTopShadow=0px&opacityShadow=.3&bgColorShadow=%23666666&opacityOverlay=.3&bgColorOverlay=%23aaaaaa&fcError=%235f3f3f&borderColorError=%23f1a899&bgColorError=%23fddfdf&fcHighlight=%23777620&borderColorHighlight=%23dad55e&bgColorHighlight=%23fffa90&fcContent=%23333333&borderColorContent=%23dddddd&bgColorContent=%23ffffff&fcHeader=%23333333&borderColorHeader=%23dddddd&bgColorHeader=%23e9e9e9&fcActive=%23ffffff&borderColorActive=%23003eff&bgColorActive=%23007fff&fcHover=%232b2b2b&borderColorHover=%23cccccc&bgColorHover=%23ededed&fcDefault=%23454545&borderColorDefault=%23c5c5c5&bgColorDefault=%23f6f6f6
* Copyright jQuery Foundation and other contributors; Licensed MIT */
/* Layout helpers
----------------------------------*/
.ui-helper-hidden {
  display: none; }

.ui-helper-hidden-accessible {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

.ui-helper-reset {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  line-height: 1.3;
  text-decoration: none;
  font-size: 100%;
  list-style: none; }

.ui-helper-clearfix:before,
.ui-helper-clearfix:after {
  content: "";
  display: table;
  border-collapse: collapse; }

.ui-helper-clearfix:after {
  clear: both; }

.ui-helper-zfix {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  opacity: 0;
  filter: Alpha(Opacity=0);
  /* support: IE8 */ }

.ui-front {
  z-index: 100; }

/* Interaction Cues
----------------------------------*/
.ui-state-disabled {
  cursor: default !important;
  pointer-events: none; }

/* Icons
----------------------------------*/
.ui-icon {
  display: inline-block;
  vertical-align: middle;
  margin-top: -.25em;
  position: relative;
  text-indent: -99999px;
  overflow: hidden;
  background-repeat: no-repeat; }

.ui-widget-icon-block {
  left: 50%;
  margin-left: -8px;
  display: block; }

/* Misc visuals
----------------------------------*/
/* Overlays */
.ui-widget-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.ui-accordion .ui-accordion-header {
  display: block;
  cursor: pointer;
  position: relative;
  margin: 2px 0 0 0;
  padding: .5em .5em .5em .7em;
  font-size: 100%; }

.ui-accordion .ui-accordion-content {
  padding: 1em 2.2em;
  border-top: 0;
  overflow: auto; }

.ui-autocomplete {
  position: absolute;
  top: 0;
  left: 0;
  cursor: default; }

.ui-menu {
  list-style: none;
  padding: 0;
  margin: 0;
  display: block;
  outline: 0; }

.ui-menu .ui-menu {
  position: absolute; }

.ui-menu .ui-menu-item {
  margin: 0;
  cursor: pointer;
  /* support: IE10, see #8844 */
  list-style-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"); }

.ui-menu .ui-menu-item-wrapper {
  position: relative;
  padding: 3px 1em 3px .4em; }

.ui-menu .ui-menu-divider {
  margin: 5px 0;
  height: 0;
  font-size: 0;
  line-height: 0;
  border-width: 1px 0 0 0; }

.ui-menu .ui-state-focus,
.ui-menu .ui-state-active {
  margin: -1px; }

/* icon support */
.ui-menu-icons {
  position: relative; }

.ui-menu-icons .ui-menu-item-wrapper {
  padding-left: 2em; }

/* left-aligned */
.ui-menu .ui-icon {
  position: absolute;
  top: 0;
  bottom: 0;
  left: .2em;
  margin: auto 0; }

/* right-aligned */
.ui-menu .ui-menu-icon {
  left: auto;
  right: 0; }

.ui-button {
  padding: .4em 1em;
  display: inline-block;
  position: relative;
  line-height: normal;
  margin-right: .1em;
  cursor: pointer;
  vertical-align: middle;
  text-align: center;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  /* Support: IE <= 11 */
  overflow: visible; }

.ui-button,
.ui-button:link,
.ui-button:visited,
.ui-button:hover,
.ui-button:active {
  text-decoration: none; }

/* to make room for the icon, a width needs to be set here */
.ui-button-icon-only {
  width: 2em;
  box-sizing: border-box;
  text-indent: -9999px;
  white-space: nowrap; }

/* no icon support for input elements */
input.ui-button.ui-button-icon-only {
  text-indent: 0; }

/* button icon element(s) */
.ui-button-icon-only .ui-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -8px;
  margin-left: -8px; }

.ui-button.ui-icon-notext .ui-icon {
  padding: 0;
  width: 2.1em;
  height: 2.1em;
  text-indent: -9999px;
  white-space: nowrap; }

input.ui-button.ui-icon-notext .ui-icon {
  width: auto;
  height: auto;
  text-indent: 0;
  white-space: normal;
  padding: .4em 1em; }

/* workarounds */
/* Support: Firefox 5 - 40 */
input.ui-button::-moz-focus-inner,
button.ui-button::-moz-focus-inner {
  border: 0;
  padding: 0; }

.ui-controlgroup {
  vertical-align: middle;
  display: inline-block; }

.ui-controlgroup > .ui-controlgroup-item {
  float: left;
  margin-left: 0;
  margin-right: 0; }

.ui-controlgroup > .ui-controlgroup-item:focus,
.ui-controlgroup > .ui-controlgroup-item.ui-visual-focus {
  z-index: 9999; }

.ui-controlgroup-vertical > .ui-controlgroup-item {
  display: block;
  float: none;
  width: 100%;
  margin-top: 0;
  margin-bottom: 0;
  text-align: left; }

.ui-controlgroup-vertical .ui-controlgroup-item {
  box-sizing: border-box; }

.ui-controlgroup .ui-controlgroup-label {
  padding: .4em 1em; }

.ui-controlgroup .ui-controlgroup-label span {
  font-size: 80%; }

.ui-controlgroup-horizontal .ui-controlgroup-label + .ui-controlgroup-item {
  border-left: none; }

.ui-controlgroup-vertical .ui-controlgroup-label + .ui-controlgroup-item {
  border-top: none; }

.ui-controlgroup-horizontal .ui-controlgroup-label.ui-widget-content {
  border-right: none; }

.ui-controlgroup-vertical .ui-controlgroup-label.ui-widget-content {
  border-bottom: none; }

/* Spinner specific style fixes */
.ui-controlgroup-vertical .ui-spinner-input {
  /* Support: IE8 only, Android < 4.4 only */
  width: 75%;
  width: calc( 100% - 2.4em ); }

.ui-controlgroup-vertical .ui-spinner .ui-spinner-up {
  border-top-style: solid; }

.ui-checkboxradio-label .ui-icon-background {
  box-shadow: inset 1px 1px 1px #ccc;
  border-radius: .12em;
  border: none; }

.ui-checkboxradio-radio-label .ui-icon-background {
  width: 16px;
  height: 16px;
  border-radius: 1em;
  overflow: visible;
  border: none; }

.ui-checkboxradio-radio-label.ui-checkboxradio-checked .ui-icon,
.ui-checkboxradio-radio-label.ui-checkboxradio-checked:hover .ui-icon {
  background-image: none;
  width: 8px;
  height: 8px;
  border-width: 4px;
  border-style: solid; }

.ui-checkboxradio-disabled {
  pointer-events: none; }

.ui-datepicker {
  width: 17em;
  padding: .2em .2em 0;
  display: none; }

.ui-datepicker .ui-datepicker-header {
  position: relative;
  padding: .2em 0; }

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
  position: absolute;
  top: 2px;
  width: 1.8em;
  height: 1.8em; }

.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
  top: 1px; }

.ui-datepicker .ui-datepicker-prev {
  left: 2px; }

.ui-datepicker .ui-datepicker-next {
  right: 2px; }

.ui-datepicker .ui-datepicker-prev-hover {
  left: 1px; }

.ui-datepicker .ui-datepicker-next-hover {
  right: 1px; }

.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
  display: block;
  position: absolute;
  left: 50%;
  margin-left: -8px;
  top: 50%;
  margin-top: -8px; }

.ui-datepicker .ui-datepicker-title {
  margin: 0 2.3em;
  line-height: 1.8em;
  text-align: center; }

.ui-datepicker .ui-datepicker-title select {
  font-size: 1em;
  margin: 1px 0; }

.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
  width: 45%; }

.ui-datepicker table {
  width: 100%;
  font-size: .9em;
  border-collapse: collapse;
  margin: 0 0 .4em; }

.ui-datepicker th {
  padding: .7em .3em;
  text-align: center;
  font-weight: bold;
  border: 0; }

.ui-datepicker td {
  border: 0;
  padding: 1px; }

.ui-datepicker td span,
.ui-datepicker td a {
  display: block;
  padding: .2em;
  text-align: right;
  text-decoration: none; }

.ui-datepicker .ui-datepicker-buttonpane {
  background-image: none;
  margin: .7em 0 0 0;
  padding: 0 .2em;
  border-left: 0;
  border-right: 0;
  border-bottom: 0; }

.ui-datepicker .ui-datepicker-buttonpane button {
  float: right;
  margin: .5em .2em .4em;
  cursor: pointer;
  padding: .2em .6em .3em .6em;
  width: auto;
  overflow: visible; }

.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
  float: left; }

/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi {
  width: auto; }

.ui-datepicker-multi .ui-datepicker-group {
  float: left; }

.ui-datepicker-multi .ui-datepicker-group table {
  width: 95%;
  margin: 0 auto .4em; }

.ui-datepicker-multi-2 .ui-datepicker-group {
  width: 50%; }

.ui-datepicker-multi-3 .ui-datepicker-group {
  width: 33.3%; }

.ui-datepicker-multi-4 .ui-datepicker-group {
  width: 25%; }

.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
  border-left-width: 0; }

.ui-datepicker-multi .ui-datepicker-buttonpane {
  clear: left; }

.ui-datepicker-row-break {
  clear: both;
  width: 100%;
  font-size: 0; }

/* RTL support */
.ui-datepicker-rtl {
  direction: rtl; }

.ui-datepicker-rtl .ui-datepicker-prev {
  right: 2px;
  left: auto; }

.ui-datepicker-rtl .ui-datepicker-next {
  left: 2px;
  right: auto; }

.ui-datepicker-rtl .ui-datepicker-prev:hover {
  right: 1px;
  left: auto; }

.ui-datepicker-rtl .ui-datepicker-next:hover {
  left: 1px;
  right: auto; }

.ui-datepicker-rtl .ui-datepicker-buttonpane {
  clear: right; }

.ui-datepicker-rtl .ui-datepicker-buttonpane button {
  float: left; }

.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
.ui-datepicker-rtl .ui-datepicker-group {
  float: right; }

.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
  border-right-width: 0;
  border-left-width: 1px; }

/* Icons */
.ui-datepicker .ui-icon {
  display: block;
  text-indent: -99999px;
  overflow: hidden;
  background-repeat: no-repeat;
  left: .5em;
  top: .3em; }

.ui-dialog {
  position: absolute;
  top: 0;
  left: 0;
  padding: .2em;
  outline: 0; }

.ui-dialog .ui-dialog-titlebar {
  padding: .4em 1em;
  position: relative; }

.ui-dialog .ui-dialog-title {
  float: left;
  margin: .1em 0;
  white-space: nowrap;
  width: 90%;
  overflow: hidden;
  text-overflow: ellipsis; }

.ui-dialog .ui-dialog-titlebar-close {
  position: absolute;
  right: .3em;
  top: 50%;
  width: 20px;
  margin: -10px 0 0 0;
  padding: 1px;
  height: 20px; }

.ui-dialog .ui-dialog-content {
  position: relative;
  border: 0;
  padding: .5em 1em;
  background: none;
  overflow: auto; }

.ui-dialog .ui-dialog-buttonpane {
  text-align: left;
  border-width: 1px 0 0 0;
  background-image: none;
  margin-top: .5em;
  padding: .3em 1em .5em .4em; }

.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
  float: right; }

.ui-dialog .ui-dialog-buttonpane button {
  margin: .5em .4em .5em 0;
  cursor: pointer; }

.ui-dialog .ui-resizable-n {
  height: 2px;
  top: 0; }

.ui-dialog .ui-resizable-e {
  width: 2px;
  right: 0; }

.ui-dialog .ui-resizable-s {
  height: 2px;
  bottom: 0; }

.ui-dialog .ui-resizable-w {
  width: 2px;
  left: 0; }

.ui-dialog .ui-resizable-se,
.ui-dialog .ui-resizable-sw,
.ui-dialog .ui-resizable-ne,
.ui-dialog .ui-resizable-nw {
  width: 7px;
  height: 7px; }

.ui-dialog .ui-resizable-se {
  right: 0;
  bottom: 0; }

.ui-dialog .ui-resizable-sw {
  left: 0;
  bottom: 0; }

.ui-dialog .ui-resizable-ne {
  right: 0;
  top: 0; }

.ui-dialog .ui-resizable-nw {
  left: 0;
  top: 0; }

.ui-draggable .ui-dialog-titlebar {
  cursor: move; }

.ui-draggable-handle {
  -ms-touch-action: none;
  touch-action: none; }

.ui-resizable {
  position: relative; }

.ui-resizable-handle {
  position: absolute;
  font-size: 0.1px;
  display: block;
  -ms-touch-action: none;
  touch-action: none; }

.ui-resizable-disabled .ui-resizable-handle,
.ui-resizable-autohide .ui-resizable-handle {
  display: none; }

.ui-resizable-n {
  cursor: n-resize;
  height: 7px;
  width: 100%;
  top: -5px;
  left: 0; }

.ui-resizable-s {
  cursor: s-resize;
  height: 7px;
  width: 100%;
  bottom: -5px;
  left: 0; }

.ui-resizable-e {
  cursor: e-resize;
  width: 7px;
  right: -5px;
  top: 0;
  height: 100%; }

.ui-resizable-w {
  cursor: w-resize;
  width: 7px;
  left: -5px;
  top: 0;
  height: 100%; }

.ui-resizable-se {
  cursor: se-resize;
  width: 12px;
  height: 12px;
  right: 1px;
  bottom: 1px; }

.ui-resizable-sw {
  cursor: sw-resize;
  width: 9px;
  height: 9px;
  left: -5px;
  bottom: -5px; }

.ui-resizable-nw {
  cursor: nw-resize;
  width: 9px;
  height: 9px;
  left: -5px;
  top: -5px; }

.ui-resizable-ne {
  cursor: ne-resize;
  width: 9px;
  height: 9px;
  right: -5px;
  top: -5px; }

.ui-progressbar {
  height: 2em;
  text-align: left;
  overflow: hidden; }

.ui-progressbar .ui-progressbar-value {
  margin: -1px;
  height: 100%; }

.ui-progressbar .ui-progressbar-overlay {
  background: url("data:image/gif;base64,R0lGODlhKAAoAIABAAAAAP///yH/C05FVFNDQVBFMi4wAwEAAAAh+QQJAQABACwAAAAAKAAoAAACkYwNqXrdC52DS06a7MFZI+4FHBCKoDeWKXqymPqGqxvJrXZbMx7Ttc+w9XgU2FB3lOyQRWET2IFGiU9m1frDVpxZZc6bfHwv4c1YXP6k1Vdy292Fb6UkuvFtXpvWSzA+HycXJHUXiGYIiMg2R6W459gnWGfHNdjIqDWVqemH2ekpObkpOlppWUqZiqr6edqqWQAAIfkECQEAAQAsAAAAACgAKAAAApSMgZnGfaqcg1E2uuzDmmHUBR8Qil95hiPKqWn3aqtLsS18y7G1SzNeowWBENtQd+T1JktP05nzPTdJZlR6vUxNWWjV+vUWhWNkWFwxl9VpZRedYcflIOLafaa28XdsH/ynlcc1uPVDZxQIR0K25+cICCmoqCe5mGhZOfeYSUh5yJcJyrkZWWpaR8doJ2o4NYq62lAAACH5BAkBAAEALAAAAAAoACgAAAKVDI4Yy22ZnINRNqosw0Bv7i1gyHUkFj7oSaWlu3ovC8GxNso5fluz3qLVhBVeT/Lz7ZTHyxL5dDalQWPVOsQWtRnuwXaFTj9jVVh8pma9JjZ4zYSj5ZOyma7uuolffh+IR5aW97cHuBUXKGKXlKjn+DiHWMcYJah4N0lYCMlJOXipGRr5qdgoSTrqWSq6WFl2ypoaUAAAIfkECQEAAQAsAAAAACgAKAAAApaEb6HLgd/iO7FNWtcFWe+ufODGjRfoiJ2akShbueb0wtI50zm02pbvwfWEMWBQ1zKGlLIhskiEPm9R6vRXxV4ZzWT2yHOGpWMyorblKlNp8HmHEb/lCXjcW7bmtXP8Xt229OVWR1fod2eWqNfHuMjXCPkIGNileOiImVmCOEmoSfn3yXlJWmoHGhqp6ilYuWYpmTqKUgAAIfkECQEAAQAsAAAAACgAKAAAApiEH6kb58biQ3FNWtMFWW3eNVcojuFGfqnZqSebuS06w5V80/X02pKe8zFwP6EFWOT1lDFk8rGERh1TTNOocQ61Hm4Xm2VexUHpzjymViHrFbiELsefVrn6XKfnt2Q9G/+Xdie499XHd2g4h7ioOGhXGJboGAnXSBnoBwKYyfioubZJ2Hn0RuRZaflZOil56Zp6iioKSXpUAAAh+QQJAQABACwAAAAAKAAoAAACkoQRqRvnxuI7kU1a1UU5bd5tnSeOZXhmn5lWK3qNTWvRdQxP8qvaC+/yaYQzXO7BMvaUEmJRd3TsiMAgswmNYrSgZdYrTX6tSHGZO73ezuAw2uxuQ+BbeZfMxsexY35+/Qe4J1inV0g4x3WHuMhIl2jXOKT2Q+VU5fgoSUI52VfZyfkJGkha6jmY+aaYdirq+lQAACH5BAkBAAEALAAAAAAoACgAAAKWBIKpYe0L3YNKToqswUlvznigd4wiR4KhZrKt9Upqip61i9E3vMvxRdHlbEFiEXfk9YARYxOZZD6VQ2pUunBmtRXo1Lf8hMVVcNl8JafV38aM2/Fu5V16Bn63r6xt97j09+MXSFi4BniGFae3hzbH9+hYBzkpuUh5aZmHuanZOZgIuvbGiNeomCnaxxap2upaCZsq+1kAACH5BAkBAAEALAAAAAAoACgAAAKXjI8By5zf4kOxTVrXNVlv1X0d8IGZGKLnNpYtm8Lr9cqVeuOSvfOW79D9aDHizNhDJidFZhNydEahOaDH6nomtJjp1tutKoNWkvA6JqfRVLHU/QUfau9l2x7G54d1fl995xcIGAdXqMfBNadoYrhH+Mg2KBlpVpbluCiXmMnZ2Sh4GBqJ+ckIOqqJ6LmKSllZmsoq6wpQAAAh+QQJAQABACwAAAAAKAAoAAAClYx/oLvoxuJDkU1a1YUZbJ59nSd2ZXhWqbRa2/gF8Gu2DY3iqs7yrq+xBYEkYvFSM8aSSObE+ZgRl1BHFZNr7pRCavZ5BW2142hY3AN/zWtsmf12p9XxxFl2lpLn1rseztfXZjdIWIf2s5dItwjYKBgo9yg5pHgzJXTEeGlZuenpyPmpGQoKOWkYmSpaSnqKileI2FAAACH5BAkBAAEALAAAAAAoACgAAAKVjB+gu+jG4kORTVrVhRlsnn2dJ3ZleFaptFrb+CXmO9OozeL5VfP99HvAWhpiUdcwkpBH3825AwYdU8xTqlLGhtCosArKMpvfa1mMRae9VvWZfeB2XfPkeLmm18lUcBj+p5dnN8jXZ3YIGEhYuOUn45aoCDkp16hl5IjYJvjWKcnoGQpqyPlpOhr3aElaqrq56Bq7VAAAOw==");
  height: 100%;
  filter: alpha(opacity=25);
  /* support: IE8 */
  opacity: 0.25; }

.ui-progressbar-indeterminate .ui-progressbar-value {
  background-image: none; }

.ui-selectable {
  -ms-touch-action: none;
  touch-action: none; }

.ui-selectable-helper {
  position: absolute;
  z-index: 100;
  border: 1px dotted black; }

.ui-selectmenu-menu {
  padding: 0;
  margin: 0;
  position: absolute;
  top: 0;
  left: 0;
  display: none; }

.ui-selectmenu-menu .ui-menu {
  overflow: auto;
  overflow-x: hidden;
  padding-bottom: 1px; }

.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup {
  font-size: 1em;
  font-weight: bold;
  line-height: 1.5;
  padding: 2px 0.4em;
  margin: 0.5em 0 0 0;
  height: auto;
  border: 0; }

.ui-selectmenu-open {
  display: block; }

.ui-selectmenu-text {
  display: block;
  margin-right: 20px;
  overflow: hidden;
  text-overflow: ellipsis; }

.ui-selectmenu-button.ui-button {
  text-align: left;
  white-space: nowrap;
  width: 14em; }

.ui-selectmenu-icon.ui-icon {
  float: right;
  margin-top: 0; }

.ui-slider {
  position: relative;
  text-align: left; }

.ui-slider .ui-slider-handle {
  position: absolute;
  z-index: 2;
  width: 1.2em;
  height: 1.2em;
  cursor: default;
  -ms-touch-action: none;
  touch-action: none; }

.ui-slider .ui-slider-range {
  position: absolute;
  z-index: 1;
  font-size: .7em;
  display: block;
  border: 0;
  background-position: 0 0; }

/* support: IE8 - See #6727 */
.ui-slider.ui-state-disabled .ui-slider-handle,
.ui-slider.ui-state-disabled .ui-slider-range {
  filter: inherit; }

.ui-slider-horizontal {
  height: .8em; }

.ui-slider-horizontal .ui-slider-handle {
  top: -.3em;
  margin-left: -.6em; }

.ui-slider-horizontal .ui-slider-range {
  top: 0;
  height: 100%; }

.ui-slider-horizontal .ui-slider-range-min {
  left: 0; }

.ui-slider-horizontal .ui-slider-range-max {
  right: 0; }

.ui-slider-vertical {
  width: .8em;
  height: 100px; }

.ui-slider-vertical .ui-slider-handle {
  left: -.3em;
  margin-left: 0;
  margin-bottom: -.6em; }

.ui-slider-vertical .ui-slider-range {
  left: 0;
  width: 100%; }

.ui-slider-vertical .ui-slider-range-min {
  bottom: 0; }

.ui-slider-vertical .ui-slider-range-max {
  top: 0; }

.ui-sortable-handle {
  -ms-touch-action: none;
  touch-action: none; }

.ui-spinner {
  position: relative;
  display: inline-block;
  overflow: hidden;
  padding: 0;
  vertical-align: middle; }

.ui-spinner-input {
  border: none;
  background: none;
  color: inherit;
  padding: .222em 0;
  margin: .2em 0;
  vertical-align: middle;
  margin-left: .4em;
  margin-right: 2em; }

.ui-spinner-button {
  width: 1.6em;
  height: 50%;
  font-size: .5em;
  padding: 0;
  margin: 0;
  text-align: center;
  position: absolute;
  cursor: default;
  display: block;
  overflow: hidden;
  right: 0; }

/* more specificity required here to override default borders */
.ui-spinner a.ui-spinner-button {
  border-top-style: none;
  border-bottom-style: none;
  border-right-style: none; }

.ui-spinner-up {
  top: 0; }

.ui-spinner-down {
  bottom: 0; }

.ui-tabs {
  position: relative;
  /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
  padding: .2em; }

.ui-tabs .ui-tabs-nav {
  margin: 0;
  padding: .2em .2em 0; }

.ui-tabs .ui-tabs-nav li {
  list-style: none;
  float: left;
  position: relative;
  top: 0;
  margin: 1px .2em 0 0;
  border-bottom-width: 0;
  padding: 0;
  white-space: nowrap; }

.ui-tabs .ui-tabs-nav .ui-tabs-anchor {
  float: left;
  padding: .5em 1em;
  text-decoration: none; }

.ui-tabs .ui-tabs-nav li.ui-tabs-active {
  margin-bottom: -1px;
  padding-bottom: 1px; }

.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor {
  cursor: text; }

.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor {
  cursor: pointer; }

.ui-tabs .ui-tabs-panel {
  display: block;
  border-width: 0;
  padding: 1em 1.4em;
  background: none; }

.ui-tooltip {
  padding: 8px;
  position: absolute;
  z-index: 9999;
  max-width: 300px; }

body .ui-tooltip {
  border-width: 2px; }

/* Component containers
----------------------------------*/
.ui-widget {
  font-family: Arial,Helvetica,sans-serif;
  font-size: 1em; }

.ui-widget .ui-widget {
  font-size: 1em; }

.ui-widget input,
.ui-widget select,
.ui-widget textarea,
.ui-widget button {
  font-family: Arial,Helvetica,sans-serif;
  font-size: 1em; }

.ui-widget.ui-widget-content {
  border: 1px solid #c5c5c5; }

.ui-widget-content {
  border: 1px solid #dddddd;
  background: #ffffff;
  color: #333333; }

.ui-widget-content a {
  color: #333333; }

.ui-widget-header {
  border: 1px solid #dddddd;
  background: #e9e9e9;
  color: #333333;
  font-weight: bold; }

.ui-widget-header a {
  color: #333333; }

/* Interaction states
----------------------------------*/
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default,
.ui-button,
html .ui-button.ui-state-disabled:hover,
html .ui-button.ui-state-disabled:active {
  border: 1px solid #c5c5c5;
  background: #f6f6f6;
  font-weight: normal;
  color: #454545; }

.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited,
a.ui-button,
a:link.ui-button,
a:visited.ui-button,
.ui-button {
  color: #454545;
  text-decoration: none; }

.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus,
.ui-button:hover,
.ui-button:focus {
  border: 1px solid #cccccc;
  background: #ededed;
  font-weight: normal;
  color: #2b2b2b; }

.ui-state-hover a,
.ui-state-hover a:hover,
.ui-state-hover a:link,
.ui-state-hover a:visited,
.ui-state-focus a,
.ui-state-focus a:hover,
.ui-state-focus a:link,
.ui-state-focus a:visited,
a.ui-button:hover,
a.ui-button:focus {
  color: #2b2b2b;
  text-decoration: none; }

.ui-visual-focus {
  box-shadow: 0 0 3px 1px #5e9ed6; }

.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active,
a.ui-button:active,
.ui-button:active,
.ui-button.ui-state-active:hover {
  border: 1px solid #003eff;
  background: #007fff;
  font-weight: normal;
  color: #ffffff; }

.ui-icon-background,
.ui-state-active .ui-icon-background {
  border: #003eff;
  background-color: #ffffff; }

.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
  color: #ffffff;
  text-decoration: none; }

.state-is-lady:not(.ui-datepicker-unselectable):not(.ui-state-disabled) .ui-state-default {
  background-color: #db5abe;
  color: #fff; }

.state-is-man:not(.ui-datepicker-unselectable):not(.ui-state-disabled) .ui-state-default {
  background-color: #2388AC;
  color: #fff; }

.state-is-special:not(.ui-datepicker-unselectable):not(.ui-state-disabled) .ui-state-default {
  background-color: #eb7d3c;
  color: #fff; }

/* Interaction Cues
----------------------------------*/
.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
  border: 1px solid #dad55e;
  background: #fffa90;
  color: #777620; }

.ui-state-checked {
  border: 1px solid #dad55e;
  background: #fffa90; }

.ui-state-highlight a,
.ui-widget-content .ui-state-highlight a,
.ui-widget-header .ui-state-highlight a {
  color: #777620; }

.ui-state-error,
.ui-widget-content .ui-state-error,
.ui-widget-header .ui-state-error {
  border: 1px solid #f1a899;
  background: #fddfdf;
  color: #5f3f3f; }

.ui-state-error a,
.ui-widget-content .ui-state-error a,
.ui-widget-header .ui-state-error a {
  color: #5f3f3f; }

.ui-state-error-text,
.ui-widget-content .ui-state-error-text,
.ui-widget-header .ui-state-error-text {
  color: #5f3f3f; }

.ui-priority-primary,
.ui-widget-content .ui-priority-primary,
.ui-widget-header .ui-priority-primary {
  font-weight: bold; }

.ui-priority-secondary,
.ui-widget-content .ui-priority-secondary,
.ui-widget-header .ui-priority-secondary {
  opacity: .7;
  filter: Alpha(Opacity=70);
  /* support: IE8 */
  font-weight: normal; }

.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
  opacity: .35;
  filter: Alpha(Opacity=35);
  /* support: IE8 */
  background-image: none; }

.ui-state-disabled .ui-icon {
  filter: Alpha(Opacity=35);
  /* support: IE8 - See #6059 */ }

/* Icons
----------------------------------*/
/* states and images */
.ui-icon {
  width: 16px;
  height: 16px; }

.ui-icon,
.ui-widget-content .ui-icon {
  background-image: url("images/ui-icons_444444_256x240.png"); }

.ui-widget-header .ui-icon {
  background-image: url("images/ui-icons_444444_256x240.png"); }

.ui-state-hover .ui-icon,
.ui-state-focus .ui-icon,
.ui-button:hover .ui-icon,
.ui-button:focus .ui-icon {
  background-image: url("images/ui-icons_555555_256x240.png"); }

.ui-state-active .ui-icon,
.ui-button:active .ui-icon {
  background-image: url("images/ui-icons_ffffff_256x240.png"); }

.ui-state-highlight .ui-icon,
.ui-button .ui-state-highlight.ui-icon {
  background-image: url("images/ui-icons_777620_256x240.png"); }

.ui-state-error .ui-icon,
.ui-state-error-text .ui-icon {
  background-image: url("images/ui-icons_cc0000_256x240.png"); }

.ui-button .ui-icon {
  background-image: url("images/ui-icons_777777_256x240.png"); }

/* positioning */
.ui-icon-blank {
  background-position: 16px 16px; }

.ui-icon-caret-1-n {
  background-position: 0 0; }

.ui-icon-caret-1-ne {
  background-position: -16px 0; }

.ui-icon-caret-1-e {
  background-position: -32px 0; }

.ui-icon-caret-1-se {
  background-position: -48px 0; }

.ui-icon-caret-1-s {
  background-position: -65px 0; }

.ui-icon-caret-1-sw {
  background-position: -80px 0; }

.ui-icon-caret-1-w {
  background-position: -96px 0; }

.ui-icon-caret-1-nw {
  background-position: -112px 0; }

.ui-icon-caret-2-n-s {
  background-position: -128px 0; }

.ui-icon-caret-2-e-w {
  background-position: -144px 0; }

.ui-icon-triangle-1-n {
  background-position: 0 -16px; }

.ui-icon-triangle-1-ne {
  background-position: -16px -16px; }

.ui-icon-triangle-1-e {
  background-position: -32px -16px; }

.ui-icon-triangle-1-se {
  background-position: -48px -16px; }

.ui-icon-triangle-1-s {
  background-position: -65px -16px; }

.ui-icon-triangle-1-sw {
  background-position: -80px -16px; }

.ui-icon-triangle-1-w {
  background-position: -96px -16px; }

.ui-icon-triangle-1-nw {
  background-position: -112px -16px; }

.ui-icon-triangle-2-n-s {
  background-position: -128px -16px; }

.ui-icon-triangle-2-e-w {
  background-position: -144px -16px; }

.ui-icon-arrow-1-n {
  background-position: 0 -32px; }

.ui-icon-arrow-1-ne {
  background-position: -16px -32px; }

.ui-icon-arrow-1-e {
  background-position: -32px -32px; }

.ui-icon-arrow-1-se {
  background-position: -48px -32px; }

.ui-icon-arrow-1-s {
  background-position: -65px -32px; }

.ui-icon-arrow-1-sw {
  background-position: -80px -32px; }

.ui-icon-arrow-1-w {
  background-position: -96px -32px; }

.ui-icon-arrow-1-nw {
  background-position: -112px -32px; }

.ui-icon-arrow-2-n-s {
  background-position: -128px -32px; }

.ui-icon-arrow-2-ne-sw {
  background-position: -144px -32px; }

.ui-icon-arrow-2-e-w {
  background-position: -160px -32px; }

.ui-icon-arrow-2-se-nw {
  background-position: -176px -32px; }

.ui-icon-arrowstop-1-n {
  background-position: -192px -32px; }

.ui-icon-arrowstop-1-e {
  background-position: -208px -32px; }

.ui-icon-arrowstop-1-s {
  background-position: -224px -32px; }

.ui-icon-arrowstop-1-w {
  background-position: -240px -32px; }

.ui-icon-arrowthick-1-n {
  background-position: 1px -48px; }

.ui-icon-arrowthick-1-ne {
  background-position: -16px -48px; }

.ui-icon-arrowthick-1-e {
  background-position: -32px -48px; }

.ui-icon-arrowthick-1-se {
  background-position: -48px -48px; }

.ui-icon-arrowthick-1-s {
  background-position: -64px -48px; }

.ui-icon-arrowthick-1-sw {
  background-position: -80px -48px; }

.ui-icon-arrowthick-1-w {
  background-position: -96px -48px; }

.ui-icon-arrowthick-1-nw {
  background-position: -112px -48px; }

.ui-icon-arrowthick-2-n-s {
  background-position: -128px -48px; }

.ui-icon-arrowthick-2-ne-sw {
  background-position: -144px -48px; }

.ui-icon-arrowthick-2-e-w {
  background-position: -160px -48px; }

.ui-icon-arrowthick-2-se-nw {
  background-position: -176px -48px; }

.ui-icon-arrowthickstop-1-n {
  background-position: -192px -48px; }

.ui-icon-arrowthickstop-1-e {
  background-position: -208px -48px; }

.ui-icon-arrowthickstop-1-s {
  background-position: -224px -48px; }

.ui-icon-arrowthickstop-1-w {
  background-position: -240px -48px; }

.ui-icon-arrowreturnthick-1-w {
  background-position: 0 -64px; }

.ui-icon-arrowreturnthick-1-n {
  background-position: -16px -64px; }

.ui-icon-arrowreturnthick-1-e {
  background-position: -32px -64px; }

.ui-icon-arrowreturnthick-1-s {
  background-position: -48px -64px; }

.ui-icon-arrowreturn-1-w {
  background-position: -64px -64px; }

.ui-icon-arrowreturn-1-n {
  background-position: -80px -64px; }

.ui-icon-arrowreturn-1-e {
  background-position: -96px -64px; }

.ui-icon-arrowreturn-1-s {
  background-position: -112px -64px; }

.ui-icon-arrowrefresh-1-w {
  background-position: -128px -64px; }

.ui-icon-arrowrefresh-1-n {
  background-position: -144px -64px; }

.ui-icon-arrowrefresh-1-e {
  background-position: -160px -64px; }

.ui-icon-arrowrefresh-1-s {
  background-position: -176px -64px; }

.ui-icon-arrow-4 {
  background-position: 0 -80px; }

.ui-icon-arrow-4-diag {
  background-position: -16px -80px; }

.ui-icon-extlink {
  background-position: -32px -80px; }

.ui-icon-newwin {
  background-position: -48px -80px; }

.ui-icon-refresh {
  background-position: -64px -80px; }

.ui-icon-shuffle {
  background-position: -80px -80px; }

.ui-icon-transfer-e-w {
  background-position: -96px -80px; }

.ui-icon-transferthick-e-w {
  background-position: -112px -80px; }

.ui-icon-folder-collapsed {
  background-position: 0 -96px; }

.ui-icon-folder-open {
  background-position: -16px -96px; }

.ui-icon-document {
  background-position: -32px -96px; }

.ui-icon-document-b {
  background-position: -48px -96px; }

.ui-icon-note {
  background-position: -64px -96px; }

.ui-icon-mail-closed {
  background-position: -80px -96px; }

.ui-icon-mail-open {
  background-position: -96px -96px; }

.ui-icon-suitcase {
  background-position: -112px -96px; }

.ui-icon-comment {
  background-position: -128px -96px; }

.ui-icon-person {
  background-position: -144px -96px; }

.ui-icon-print {
  background-position: -160px -96px; }

.ui-icon-trash {
  background-position: -176px -96px; }

.ui-icon-locked {
  background-position: -192px -96px; }

.ui-icon-unlocked {
  background-position: -208px -96px; }

.ui-icon-bookmark {
  background-position: -224px -96px; }

.ui-icon-tag {
  background-position: -240px -96px; }

.ui-icon-home {
  background-position: 0 -112px; }

.ui-icon-flag {
  background-position: -16px -112px; }

.ui-icon-calendar {
  background-position: -32px -112px; }

.ui-icon-cart {
  background-position: -48px -112px; }

.ui-icon-pencil {
  background-position: -64px -112px; }

.ui-icon-clock {
  background-position: -80px -112px; }

.ui-icon-disk {
  background-position: -96px -112px; }

.ui-icon-calculator {
  background-position: -112px -112px; }

.ui-icon-zoomin {
  background-position: -128px -112px; }

.ui-icon-zoomout {
  background-position: -144px -112px; }

.ui-icon-search {
  background-position: -160px -112px; }

.ui-icon-wrench {
  background-position: -176px -112px; }

.ui-icon-gear {
  background-position: -192px -112px; }

.ui-icon-heart {
  background-position: -208px -112px; }

.ui-icon-star {
  background-position: -224px -112px; }

.ui-icon-link {
  background-position: -240px -112px; }

.ui-icon-cancel {
  background-position: 0 -128px; }

.ui-icon-plus {
  background-position: -16px -128px; }

.ui-icon-plusthick {
  background-position: -32px -128px; }

.ui-icon-minus {
  background-position: -48px -128px; }

.ui-icon-minusthick {
  background-position: -64px -128px; }

.ui-icon-close {
  background-position: -80px -128px; }

.ui-icon-closethick {
  background-position: -96px -128px; }

.ui-icon-key {
  background-position: -112px -128px; }

.ui-icon-lightbulb {
  background-position: -128px -128px; }

.ui-icon-scissors {
  background-position: -144px -128px; }

.ui-icon-clipboard {
  background-position: -160px -128px; }

.ui-icon-copy {
  background-position: -176px -128px; }

.ui-icon-contact {
  background-position: -192px -128px; }

.ui-icon-image {
  background-position: -208px -128px; }

.ui-icon-video {
  background-position: -224px -128px; }

.ui-icon-script {
  background-position: -240px -128px; }

.ui-icon-alert {
  background-position: 0 -144px; }

.ui-icon-info {
  background-position: -16px -144px; }

.ui-icon-notice {
  background-position: -32px -144px; }

.ui-icon-help {
  background-position: -48px -144px; }

.ui-icon-check {
  background-position: -64px -144px; }

.ui-icon-bullet {
  background-position: -80px -144px; }

.ui-icon-radio-on {
  background-position: -96px -144px; }

.ui-icon-radio-off {
  background-position: -112px -144px; }

.ui-icon-pin-w {
  background-position: -128px -144px; }

.ui-icon-pin-s {
  background-position: -144px -144px; }

.ui-icon-play {
  background-position: 0 -160px; }

.ui-icon-pause {
  background-position: -16px -160px; }

.ui-icon-seek-next {
  background-position: -32px -160px; }

.ui-icon-seek-prev {
  background-position: -48px -160px; }

.ui-icon-seek-end {
  background-position: -64px -160px; }

.ui-icon-seek-start {
  background-position: -80px -160px; }

/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
.ui-icon-seek-first {
  background-position: -80px -160px; }

.ui-icon-stop {
  background-position: -96px -160px; }

.ui-icon-eject {
  background-position: -112px -160px; }

.ui-icon-volume-off {
  background-position: -128px -160px; }

.ui-icon-volume-on {
  background-position: -144px -160px; }

.ui-icon-power {
  background-position: 0 -176px; }

.ui-icon-signal-diag {
  background-position: -16px -176px; }

.ui-icon-signal {
  background-position: -32px -176px; }

.ui-icon-battery-0 {
  background-position: -48px -176px; }

.ui-icon-battery-1 {
  background-position: -64px -176px; }

.ui-icon-battery-2 {
  background-position: -80px -176px; }

.ui-icon-battery-3 {
  background-position: -96px -176px; }

.ui-icon-circle-plus {
  background-position: 0 -192px; }

.ui-icon-circle-minus {
  background-position: -16px -192px; }

.ui-icon-circle-close {
  background-position: -32px -192px; }

.ui-icon-circle-triangle-e {
  background-position: -48px -192px; }

.ui-icon-circle-triangle-s {
  background-position: -64px -192px; }

.ui-icon-circle-triangle-w {
  background-position: -80px -192px; }

.ui-icon-circle-triangle-n {
  background-position: -96px -192px; }

.ui-icon-circle-arrow-e {
  background-position: -112px -192px; }

.ui-icon-circle-arrow-s {
  background-position: -128px -192px; }

.ui-icon-circle-arrow-w {
  background-position: -144px -192px; }

.ui-icon-circle-arrow-n {
  background-position: -160px -192px; }

.ui-icon-circle-zoomin {
  background-position: -176px -192px; }

.ui-icon-circle-zoomout {
  background-position: -192px -192px; }

.ui-icon-circle-check {
  background-position: -208px -192px; }

.ui-icon-circlesmall-plus {
  background-position: 0 -208px; }

.ui-icon-circlesmall-minus {
  background-position: -16px -208px; }

.ui-icon-circlesmall-close {
  background-position: -32px -208px; }

.ui-icon-squaresmall-plus {
  background-position: -48px -208px; }

.ui-icon-squaresmall-minus {
  background-position: -64px -208px; }

.ui-icon-squaresmall-close {
  background-position: -80px -208px; }

.ui-icon-grip-dotted-vertical {
  background-position: 0 -224px; }

.ui-icon-grip-dotted-horizontal {
  background-position: -16px -224px; }

.ui-icon-grip-solid-vertical {
  background-position: -32px -224px; }

.ui-icon-grip-solid-horizontal {
  background-position: -48px -224px; }

.ui-icon-gripsmall-diagonal-se {
  background-position: -64px -224px; }

.ui-icon-grip-diagonal-se {
  background-position: -80px -224px; }

/* Misc visuals
----------------------------------*/
/* Corner radius */
.ui-corner-all,
.ui-corner-top,
.ui-corner-left,
.ui-corner-tl {
  border-top-left-radius: 3px; }

.ui-corner-all,
.ui-corner-top,
.ui-corner-right,
.ui-corner-tr {
  border-top-right-radius: 3px; }

.ui-corner-all,
.ui-corner-bottom,
.ui-corner-left,
.ui-corner-bl {
  border-bottom-left-radius: 3px; }

.ui-corner-all,
.ui-corner-bottom,
.ui-corner-right,
.ui-corner-br {
  border-bottom-right-radius: 3px; }

/* Overlays */
.ui-widget-overlay {
  background: #aaaaaa;
  opacity: .003;
  filter: Alpha(Opacity=0.3);
  /* support: IE8 */ }

.ui-widget-shadow {
  -webkit-box-shadow: 0px 0px 5px #666666;
  box-shadow: 0px 0px 5px #666666; }

/* ======================================================================

  #datepicker

====================================================================== */
/*doc
---
title: datepicker
name: datepicker
categories: [plugin]
---
*/
/* 大枠
---------------------------------------------------------------------- */
.ui-widget {
  z-index: 300 !important; }

@media print, screen and (max-width: 767px) {
  .ui-widget {
    position: fixed !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important; } }
.ui-datepicker .ui-datepicker-buttonpane {
  font-size: 14px; }
