@charset "UTF-8";
/**
 * Foundation for Sites by ZURB
 * Version 6.3.1
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */
/* Document
========================================================================== */
@import url("https://fonts.googleapis.com/css?family=Lora");
@import url("https://fonts.googleapis.com/css?family=Roboto:400,700");
@import url("https://fonts.googleapis.com/earlyaccess/notosansjapanese.css");
html {
  font-family: sans-serif;
  line-height: 1.15;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

/* Sections
========================================================================== */
body {
  margin: 0; }

article, aside, footer, header, nav, section {
  display: block; }

/**
* 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
========================================================================== */
figcaption, figure {
  display: block; }

figure {
  margin: 1em 40px; }

hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
  overflow: visible; }

main {
  display: block; }

pre {
  font-family: monospace, monospace;
  font-size: 1em; }

/* Links
========================================================================== */
a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects; }

a:active, a:hover {
  outline-width: 0; }

/* Text-level semantics
========================================================================== */
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; }

b, strong {
  font-weight: inherit; }

b, strong {
  font-weight: bolder; }

code, kbd, samp {
  font-family: monospace, monospace;
  font-size: 1em; }

dfn {
  font-style: italic; }

mark {
  background-color: #ff0;
  color: #000; }

small {
  font-size: 80%; }

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

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
========================================================================== */
audio, video {
  display: inline-block; }

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

img {
  border-style: none; }

svg:not(:root) {
  overflow: hidden; }

/* Forms
========================================================================== */
button, input, optgroup, select, textarea {
  font-family: sans-serif;
  font-size: 100%;
  line-height: 1.15;
  margin: 0; }

button {
  overflow: visible; }

button, select {
  text-transform: none; }

button, html [type="button"], [type="reset"], [type="submit"] {
  -webkit-appearance: button; }

button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

input {
  overflow: visible; }

[type="checkbox"], [type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0; }

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
  height: auto; }

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px; }

[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit; }

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

legend {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: table;
  max-width: 100%;
  padding: 0;
  color: inherit;
  white-space: normal; }

progress {
  display: inline-block;
  vertical-align: baseline; }

textarea {
  overflow: auto; }

/* Interactive
========================================================================== */
details {
  display: block; }

summary {
  display: list-item; }

menu {
  display: block; }

/* Scripting
========================================================================== */
canvas {
  display: inline-block; }

template {
  display: none; }

/* Hidden
========================================================================== */
[hidden] {
  display: none; }

.foundation-mq {
  font-family: "small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em"; }

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 100%; }

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

body {
  margin: 0;
  padding: 0;
  background: #fefefe;
  font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic; }

textarea {
  height: auto;
  min-height: 50px;
  border-radius: 0; }

select {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  border-radius: 0; }

.map_canvas img, .map_canvas embed, .map_canvas object, .mqa-display img, .mqa-display embed, .mqa-display object {
  max-width: none !important; }

button {
  padding: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 0;
  border-radius: 0;
  background: transparent;
  line-height: 1; }

[data-whatinput='mouse'] button {
  outline: 0; }

pre {
  overflow: auto; }

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

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

.fr {
  float: right; }

.imgR {
  float: right;
  margin-left: 20px; }

.fl {
  float: left; }

.imgL {
  float: left;
  margin-right: 20px; }

.imgC, .tC {
  text-align: center; }

.imgC {
  display: block;
  margin-left: auto;
  margin-right: auto; }

.tR {
  text-align: right; }

.mt0 {
  margin-top: 0px !important; }

.mb0 {
  margin-bottom: 0px !important; }

.pt0 {
  padding-top: 0px !important; }

.pb0 {
  padding-bottom: 0px !important; }

.mt5 {
  margin-top: 5px !important; }

.mb5 {
  margin-bottom: 5px !important; }

.pt5 {
  padding-top: 5px !important; }

.pb5 {
  padding-bottom: 5px !important; }

.mt10 {
  margin-top: 10px !important; }

.mb10 {
  margin-bottom: 10px !important; }

.pt10 {
  padding-top: 10px !important; }

.pb10 {
  padding-bottom: 10px !important; }

.mt15 {
  margin-top: 15px !important; }

.mb15 {
  margin-bottom: 15px !important; }

.pt15 {
  padding-top: 15px !important; }

.pb15 {
  padding-bottom: 15px !important; }

.mt20 {
  margin-top: 20px !important; }

.mb20 {
  margin-bottom: 20px !important; }

.pt20 {
  padding-top: 20px !important; }

.pb20 {
  padding-bottom: 20px !important; }

.mt25 {
  margin-top: 25px !important; }

.mb25 {
  margin-bottom: 25px !important; }

.pt25 {
  padding-top: 25px !important; }

.pb25 {
  padding-bottom: 25px !important; }

.mt30 {
  margin-top: 30px !important; }

.mb30 {
  margin-bottom: 30px !important; }

.pt30 {
  padding-top: 30px !important; }

.pb30 {
  padding-bottom: 30px !important; }

.mt35 {
  margin-top: 35px !important; }

.mb35 {
  margin-bottom: 35px !important; }

.pt35 {
  padding-top: 35px !important; }

.pb35 {
  padding-bottom: 35px !important; }

.mt40 {
  margin-top: 40px !important; }

.mb40 {
  margin-bottom: 40px !important; }

.pt40 {
  padding-top: 40px !important; }

.pb40 {
  padding-bottom: 40px !important; }

.mt45 {
  margin-top: 45px !important; }

.mb45 {
  margin-bottom: 45px !important; }

.pt45 {
  padding-top: 45px !important; }

.pb45 {
  padding-bottom: 45px !important; }

.mt50 {
  margin-top: 50px !important; }

.mb50 {
  margin-bottom: 50px !important; }

.pt50 {
  padding-top: 50px !important; }

.pb50 {
  padding-bottom: 50px !important; }

.mr0 {
  margin-right: 0 !important; }

.pr0 {
  padding-right: 0 !important; }

/* clearfix */
.clear-fix {
  zoom: 1; }
  .clear-fix:before, .clear-fix:after {
    content: "";
    display: table;
    height: 0;
    visibility: hidden; }
  .clear-fix:after {
    clear: both; }

.clear {
  clear: both; }

/* 基本タグのフォントサイズを指定（12px -> 120% or 1.2em ） */
h1, h2, h3, h4, h5, h6, input, button, textarea, select, p, th, td, address, li, dt, dd {
  font-weight: 400;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 1px; }

.contents h1, .contents h2, .contents h3, .contents h4, .contents h5, .contents h6, .contents input, .contents button, .contents textarea, .contents select, .contents p, .contents th, .contents td, .contents address, .contents li, .contents dt, .contents dd {
  line-height: 1.6; }
  @media screen and (min-width: 960px) {
    .contents h1, .contents h2, .contents h3, .contents h4, .contents h5, .contents h6, .contents input, .contents button, .contents textarea, .contents select, .contents p, .contents th, .contents td, .contents address, .contents li, .contents dt, .contents dd {
      font-size: 16px; } }
  @media screen and (max-width: 959px) {
    .contents h1, .contents h2, .contents h3, .contents h4, .contents h5, .contents h6, .contents input, .contents button, .contents textarea, .contents select, .contents p, .contents th, .contents td, .contents address, .contents li, .contents dt, .contents dd {
      font-size: 14px; } }

/* =========================================================
	element style
========================================================= */
html, body {
  height: 100%; }

body {
  color: #000;
  font-family: "Roboto", "Noto Sans Japanese", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; }

input, textarea, button {
  font-family: "Roboto", "Noto Sans Japanese", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  -webkit-appearance: none; }

a {
  color: #000; }
  @media screen and (min-width: 960px) {
    a {
      transition: all 0.3s;
      -moz-transition: all 0.3s;
      -webkit-transition: all 0.3s; }
      a:hover {
        text-decoration: none; }
      a.hov {
        display: block; }
        a.hov:hover {
          opacity: .6; } }

img {
  max-width: 100%;
  height: auto; }

/* =========================================================
 icon
========================================================= */
@font-face {
  font-family: 'fonts';
  src: url("/common/fonts/fonts.ttf?ielakg") format("truetype"), url("/common/fonts/fonts.woff?ielakg") format("woff"), url("/common/fonts/fonts.svg?ielakg#fonts") format("svg");
  font-weight: normal;
  font-style: normal; }
@font-face {
  font-family: 'def';
  src: url("/common/fonts/def.ttf?b8fhm8") format("truetype"), url("/common/fonts/def.woff?b8fhm8") format("woff"), url("/common/fonts/def.svg?b8fhm8#def") format("svg");
  font-weight: normal;
  font-style: normal; }
[class^="icon-"], [class*=" icon-"], [class^="ico-"], [class*=" ico-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

[class^="icon-"], [class*=" icon-"] {
  font-family: 'fonts' !important; }

[class^="ico-"], [class*=" ico-"] {
  font-family: 'def' !important; }

/* original
--------------------------------------------------------- */
.icon-arrow:before {
  content: "\e900"; }

.icon-fb:before {
  content: "\e901"; }

.icon-mail:before {
  content: "\e902"; }

.icon-phone:before {
  content: "\e903"; }

/* defalt
--------------------------------------------------------- */
.ico-down:before {
  content: "\e802"; }

.ico-prv:before {
  content: "\e803"; }

.ico-up:before {
  content: "\e805"; }

.ico-comment:before {
  content: "\e806"; }

.ico-download:before {
  content: "\e807"; }

.ico-external:before {
  content: "\e808"; }

.ico-map:before {
  content: "\e80a"; }

.ico-close:before {
  content: "\e80b"; }

.ico-open:before {
  content: "\e80d"; }

.ico-search:before {
  content: "\e80e"; }

.ico-zoom-in:before {
  content: "\e80f"; }

.ico-zoom-out:before {
  content: "\e810"; }

/* =========================================================
	general
========================================================= */
@media screen and (min-width: 960px) {
  .cnt-pc {
    display: block; } }
@media screen and (max-width: 959px) {
  .cnt-pc {
    display: none; } }

@media screen and (min-width: 960px) {
  .cnt-sp {
    display: none; } }
@media screen and (max-width: 959px) {
  .cnt-sp {
    display: block; } }

.contents h2 {
  margin: 0 auto;
  text-align: center; }
  @media screen and (min-width: 960px) {
    .contents h2 {
      margin-bottom: 50px;
      font-size: 30px;
      letter-spacing: 2px; } }
  @media screen and (max-width: 959px) {
    .contents h2 {
      margin-bottom: 30px;
      font-size: 22px; } }
  @media screen and (max-width: 767px) {
    .contents h2 {
      margin-bottom: 15px;
      font-size: 18px; } }
  .contents h2 span {
    line-height: 1; }
    .contents h2 span.en {
      display: block;
      font-family: 'Lora', sans-serif;
      text-transform: uppercase;
      letter-spacing: 4px; }
      @media screen and (min-width: 960px) {
        .contents h2 span.en {
          font-size: 30px; } }
      @media screen and (max-width: 959px) {
        .contents h2 span.en {
          font-size: 24px; } }
      @media screen and (max-width: 767px) {
        .contents h2 span.en {
          font-size: 20px; } }
    @media screen and (min-width: 960px) {
      .contents h2 span.jp {
        margin-top: 20px;
        font-size: 12px; } }
    @media screen and (max-width: 959px) {
      .contents h2 span.jp {
        margin-top: 15px;
        font-size: 12px; } }
    @media screen and (max-width: 767px) {
      .contents h2 span.jp {
        margin-top: 5px;
        font-size: 11px; } }
.contents h2 > span {
  display: inline-block;
  position: relative;
  margin: auto;
  padding-bottom: 20px; }
  .contents h2 > span:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    width: 100%;
    height: 1px;
    background: #9C8175; }
.contents h3 {
  color: #9C8175;
  text-align: left;
  line-height: 1.3; }
  @media screen and (min-width: 960px) {
    .contents h3 {
      margin-bottom: 25px;
      font-size: 24px; } }
  @media screen and (max-width: 959px) {
    .contents h3 {
      margin-bottom: 15px;
      font-size: 18px; } }
  @media screen and (max-width: 767px) {
    .contents h3 {
      margin-bottom: 10px;
      font-size: 16px; } }
.contents .no-post {
  text-align: center; }

.article, .section {
  zoom: 1; }
  .article:before, .article:after, .section:before, .section:after {
    content: "";
    display: table;
    height: 0;
    visibility: hidden; }
  .article:after, .section:after {
    clear: both; }
  .article p:last-of-type, .article ul:last-of-type, .article dl:last-of-type, .section p:last-of-type, .section ul:last-of-type, .section dl:last-of-type {
    margin-bottom: 0; }

@media screen and (min-width: 960px) {
  .article {
    max-width: 1280px;
    margin: auto;
    padding: 0 0 120px; } }
@media screen and (max-width: 959px) {
  .article {
    padding: 0 0 80px; } }
@media screen and (max-width: 767px) {
  .article {
    padding: 0 0 60px; } }
.article p, .article ul, .article dl {
  margin-bottom: 1.5em;
  line-height: 1.8; }

.section {
  width: 100%; }
  @media screen and (min-width: 960px) {
    .section {
      padding: 80px 0 0; } }
  @media screen and (max-width: 959px) {
    .section {
      padding: 50px 0 0; } }
  @media screen and (max-width: 767px) {
    .section {
      padding: 30px 0 0; } }

h2 + .section {
  padding-top: 0; }

@media screen and (min-width: 768px) {
  .table-wrap {
    position: relative;
    margin: 0 -30px; } }

table {
  width: 100%;
  border: none; }
  @media screen and (min-width: 768px) {
    table {
      border-collapse: separate;
      border-spacing: 30px 0; }
      table tr:first-child th, table tr:first-child td {
        border-top: 1px solid #eee; } }
  @media screen and (max-width: 767px) {
    table {
      border-collapse: collapse;
      border-spacing: 0;
      border-bottom: 1px solid #eee; } }
  table th, table td {
    border: none;
    text-align: left;
    vertical-align: top;
    font-weight: 400; }
    @media screen and (min-width: 768px) {
      table th, table td {
        padding: 20px;
        border-bottom: 1px solid #eee; } }
    @media screen and (max-width: 767px) {
      table th, table td {
        padding: 15px;
        border-bottom: 1px solid #eee; } }
    @media screen and (max-width: 767px) {
      table th, table td {
        display: block;
        padding: 10px;
        border: none; } }
  @media screen and (min-width: 768px) {
    table th {
      width: 30%; } }
  @media screen and (max-width: 767px) {
    table th {
      width: 20%; } }
  @media screen and (max-width: 767px) {
    table th {
      width: auto;
      border-top: 1px solid #eee;
      border-bottom: 1px dotted #eee;
      background: #f8f8f8; } }
  table td ul:last-child, table td dl:last-child {
    margin-bottom: 0; }

.bold {
  font-weight: 700; }

.emphasis {
  color: #91141e;
  font-weight: 700; }

.en {
  font-family: "Lora", sans-serif;
  letter-spacing: 2px; }

p.attention {
  margin-left: 1em;
  text-indent: -1em;
  font-size: 13px; }

ul.attention {
  margin-top: 10px; }
  ul.attention li {
    margin-left: 1em;
    text-indent: -1em;
    font-size: 13px; }

p + ul.list {
  margin-top: .5em; }

ul.list li {
  position: relative;
  margin-bottom: 0.5em;
  padding-left: 1em; }
  ul.list li:last-child {
    margin-bottom: 0; }
  ul.list li:before {
    position: absolute;
    display: block;
    content: '';
    top: 9px;
    left: 0;
    width: 6px;
    height: 6px;
    background: #9C8175;
    border-radius: 100%; }

ol.num {
  padding: 0 25px 0 25px;
  list-style-position: outside; }
  ol.num li {
    list-style-type: decimal; }
    ol.num li:last-child {
      margin-bottom: 0; }

.btn-link {
  text-align: center;
  line-height: 1; }
  @media screen and (min-width: 960px) {
    .btn-link {
      padding: 50px 0 0; } }
  @media screen and (max-width: 959px) {
    .btn-link {
      padding: 30px 0 0; } }
  .btn-link.more {
    font-family: "Lora", sans-serif;
    font-size: 14px;
    letter-spacing: 2px; }
  .btn-link a {
    position: relative;
    display: inline-block;
    margin: 0 auto;
    padding: 0;
    background: #9C8175;
    color: #fff;
    font-size: 16px;
    text-decoration: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
    @media screen and (min-width: 960px) {
      .btn-link a {
        padding: 15px 30px;
        transition: all 0.3s;
        -moz-transition: all 0.3s;
        -webkit-transition: all 0.3s; }
        .btn-link a:hover {
          background: #000; } }
    @media screen and (max-width: 959px) {
      .btn-link a {
        padding: 15px;
        width: 80%;
        margin: auto; } }
    @media screen and (max-width: 767px) {
      .btn-link a {
        width: 100%; } }
  @media screen and (min-width: 960px) {
    .btn-link li {
      display: inline-block;
      margin: 0 15px; } }
  @media screen and (max-width: 959px) {
    .btn-link li {
      margin-bottom: 15px; }
      .btn-link li:last-child {
        margin-bottom: 0; } }
  .btn-link i {
    right: 15px;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%); }

.wp-pagenavi {
  padding-top: 50px;
  line-height: 1;
  text-align: center;
  font-size: 14px; }
  .wp-pagenavi span, .wp-pagenavi a {
    display: inline-block;
    width: 35px;
    margin: 0 1px 0 2px;
    *display: inline;
    *zoom: 1;
    line-height: 35px; }
  .wp-pagenavi .current {
    border: solid 1px #9C8175;
    background: #9C8175;
    color: #fff; }
  .wp-pagenavi .extend {
    padding: 0; }
  .wp-pagenavi .first, .wp-pagenavi .last {
    width: auto;
    padding: 0 10px; }
  .wp-pagenavi .pages {
    width: auto;
    margin-right: 5px; }
  .wp-pagenavi a {
    border: solid 1px #ddd;
    background: #fff;
    color: #aaa;
    text-decoration: none; }
  .wp-pagenavi a:hover {
    border: solid 1px #9C8175;
    background: #fff;
    color: #000; }

.img-btm, .img-top {
  text-align: center; }

@media screen and (min-width: 960px) {
  .img-top {
    padding-bottom: 30px; } }
@media screen and (max-width: 959px) {
  .img-top {
    padding-bottom: 20px; } }
@media screen and (max-width: 767px) {
  .img-top {
    padding-bottom: 15px; } }

@media screen and (min-width: 960px) {
  .img-btm {
    padding-top: 30px; } }
@media screen and (max-width: 959px) {
  .img-btm {
    padding-top: 20px; } }
@media screen and (max-width: 767px) {
  .img-btm {
    padding-top: 15px; } }

@media screen and (max-width: 959px) {
  .map {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden; }
    .map iframe {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; } }
.clm5, .clm4, .clm3, .clm2 {
  position: relative;
  zoom: 1; }
  .clm5:before, .clm5:after, .clm4:before, .clm4:after, .clm3:before, .clm3:after, .clm2:before, .clm2:after {
    content: "";
    display: table;
    height: 0;
    visibility: hidden; }
  .clm5:after, .clm4:after, .clm3:after, .clm2:after {
    clear: both; }
  .clm5 .item, .clm5 li, .clm4 .item, .clm4 li, .clm3 .item, .clm3 li, .clm2 .item, .clm2 li {
    float: left;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }

.clm5 {
  margin: 0 -5px; }
  .clm5 .item, .clm5 li {
    width: 20%;
    padding: 0 5px; }

.clm4 {
  margin: 0 -10px; }
  .clm4 .item, .clm4 li {
    width: 25%;
    padding: 0 10px; }

.clm3 {
  margin: 0 -15px; }
  .clm3 .item, .clm3 li {
    width: 33.33333%;
    padding: 0 15px; }

.clm2 {
  margin: 0 -20px; }
  .clm2 .item, .clm2 li {
    width: 50%;
    padding: 0 20px; }

/* =========================================================
	fade
========================================================= */
#js_fade {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  z-index: 999999; }
  #js_fade .sk-fading-circle {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 40px;
    height: 40px;
    margin-top: -20px;
    margin-left: -20px; }
    #js_fade .sk-fading-circle .sk-circle {
      width: 100%;
      height: 100%;
      position: absolute;
      left: 0;
      top: 0; }
    #js_fade .sk-fading-circle .sk-circle:before {
      content: '';
      display: block;
      margin: 0 auto;
      width: 15%;
      height: 15%;
      background-color: #9C8175;
      border-radius: 100%;
      -webkit-animation: sk-circleFadeDelay 1.2s infinite ease-in-out both;
      animation: sk-circleFadeDelay 1.2s infinite ease-in-out both; }
    #js_fade .sk-fading-circle .sk-circle2 {
      transform: rotate(30deg);
      -moz-transform: rotate(30deg);
      -webkit-transform: rotate(30deg); }
    #js_fade .sk-fading-circle .sk-circle3 {
      transform: rotate(60deg);
      -moz-transform: rotate(60deg);
      -webkit-transform: rotate(60deg); }
    #js_fade .sk-fading-circle .sk-circle4 {
      transform: rotate(90deg);
      -moz-transform: rotate(90deg);
      -webkit-transform: rotate(90deg); }
    #js_fade .sk-fading-circle .sk-circle5 {
      transform: rotate(120deg);
      -moz-transform: rotate(120deg);
      -webkit-transform: rotate(120deg); }
    #js_fade .sk-fading-circle .sk-circle6 {
      transform: rotate(150deg);
      -moz-transform: rotate(150deg);
      -webkit-transform: rotate(150deg); }
    #js_fade .sk-fading-circle .sk-circle7 {
      transform: rotate(180deg);
      -moz-transform: rotate(180deg);
      -webkit-transform: rotate(180deg); }
    #js_fade .sk-fading-circle .sk-circle8 {
      transform: rotate(210deg);
      -moz-transform: rotate(210deg);
      -webkit-transform: rotate(210deg); }
    #js_fade .sk-fading-circle .sk-circle9 {
      transform: rotate(240deg);
      -moz-transform: rotate(240deg);
      -webkit-transform: rotate(240deg); }
    #js_fade .sk-fading-circle .sk-circle10 {
      transform: rotate(270deg);
      -moz-transform: rotate(270deg);
      -webkit-transform: rotate(270deg); }
    #js_fade .sk-fading-circle .sk-circle11 {
      transform: rotate(300deg);
      -moz-transform: rotate(300deg);
      -webkit-transform: rotate(300deg); }
    #js_fade .sk-fading-circle .sk-circle12 {
      transform: rotate(330deg);
      -moz-transform: rotate(330deg);
      -webkit-transform: rotate(330deg); }
    #js_fade .sk-fading-circle .sk-circle2:before {
      animation-delay: -1.1s;
      -moz-animation-delay: -1.1s;
      -webkit-animation-delay: -1.1s; }
    #js_fade .sk-fading-circle .sk-circle3:before {
      animation-delay: -1s;
      -moz-animation-delay: -1s;
      -webkit-animation-delay: -1s; }
    #js_fade .sk-fading-circle .sk-circle4:before {
      animation-delay: -0.9s;
      -moz-animation-delay: -0.9s;
      -webkit-animation-delay: -0.9s; }
    #js_fade .sk-fading-circle .sk-circle5:before {
      animation-delay: -0.8s;
      -moz-animation-delay: -0.8s;
      -webkit-animation-delay: -0.8s; }
    #js_fade .sk-fading-circle .sk-circle6:before {
      animation-delay: -0.7s;
      -moz-animation-delay: -0.7s;
      -webkit-animation-delay: -0.7s; }
    #js_fade .sk-fading-circle .sk-circle7:before {
      animation-delay: -0.6s;
      -moz-animation-delay: -0.6s;
      -webkit-animation-delay: -0.6s; }
    #js_fade .sk-fading-circle .sk-circle8:before {
      animation-delay: -0.5s;
      -moz-animation-delay: -0.5s;
      -webkit-animation-delay: -0.5s; }
    #js_fade .sk-fading-circle .sk-circle9:before {
      animation-delay: -0.4s;
      -moz-animation-delay: -0.4s;
      -webkit-animation-delay: -0.4s; }
    #js_fade .sk-fading-circle .sk-circle10:before {
      animation-delay: -0.3s;
      -moz-animation-delay: -0.3s;
      -webkit-animation-delay: -0.3s; }
    #js_fade .sk-fading-circle .sk-circle11:before {
      animation-delay: -0.2s;
      -moz-animation-delay: -0.2s;
      -webkit-animation-delay: -0.2s; }
    #js_fade .sk-fading-circle .sk-circle12:before {
      animation-delay: -0.1s;
      -moz-animation-delay: -0.1s;
      -webkit-animation-delay: -0.1s; }

@-webkit-keyframes sk-circleFadeDelay {
  0%, 39%, 100% {
    opacity: 0; }
  40% {
    opacity: 1; } }
@keyframes sk-circleFadeDelay {
  0%, 39%, 100% {
    opacity: 0; }
  40% {
    opacity: 1; } }
/* =========================================================
	#wrapper
========================================================= */
#wrapper {
  width: 100%;
  height: 100%;
  margin: 0 auto; }
  @media screen and (max-width: 959px) {
    #wrapper {
      padding-top: 100px; } }
  @media screen and (max-width: 767px) {
    #wrapper {
      padding-top: 60px; } }

/* =========================================================
	.contents
========================================================= */
.contents {
  overflow: hidden;
  zoom: 1; }
  .contents:before, .contents:after {
    content: "";
    display: table;
    height: 0;
    visibility: hidden; }
  .contents:after {
    clear: both; }
  @media screen and (min-width: 960px) {
    .contents {
      padding-top: 80px;
      min-height: 800px; } }
  @media screen and (max-width: 1359px) {
    .contents {
      padding: 80px 5% 0; } }
  @media screen and (max-width: 959px) {
    .contents {
      padding-top: 50px; } }
  @media screen and (max-width: 767px) {
    .contents {
      padding-top: 30px; } }

/* =========================================================
	.pagetitle
========================================================= */
.pagetitle {
  text-align: center;
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
  background: rgba(156, 129, 117, 0.1); }
  .pagetitle h1 {
    color: #999;
    font-weight: 400;
    line-height: 1; }
  @media screen and (min-width: 960px) {
    .pagetitle {
      padding: 40px 0;
      font-size: 13px; } }
  @media screen and (max-width: 959px) {
    .pagetitle {
      padding: 30px 0;
      font-size: 11px; } }
  @media screen and (max-width: 767px) {
    .pagetitle {
      padding: 20px 0;
      font-size: 10px; } }
  .pagetitle span {
    display: block;
    color: #9C8175;
    font-family: "Lora", sans-serif;
    letter-spacing: 4px; }
    @media screen and (min-width: 960px) {
      .pagetitle span {
        margin-bottom: 15px;
        font-size: 34px; } }
    @media screen and (max-width: 959px) {
      .pagetitle span {
        margin-bottom: 10px;
        font-size: 26px; } }
    @media screen and (max-width: 767px) {
      .pagetitle span {
        margin-bottom: 5px;
        font-size: 22px; } }

/* =========================================================
	header
========================================================= */
.header {
  position: relative;
  background: #fff;
  text-align: center;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  z-index: 10000; }
  @media screen and (min-width: 960px) {
    .header {
      height: 230px;
      padding-top: 40px;
      transition: all 0.3s;
      -moz-transition: all 0.3s;
      -webkit-transition: all 0.3s; } }
  @media screen and (max-width: 959px) {
    .header {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100px; } }
  @media screen and (max-width: 767px) {
    .header {
      height: 60px; } }
  .header a {
    text-decoration: none;
    display: block;
    color: #000;
    line-height: 1; }
  @media screen and (min-width: 960px) {
    .header .head-logo {
      width: 192px;
      margin: 0px auto 33px; } }
  @media screen and (max-width: 959px) {
    .header .head-logo {
      display: inline-block;
      margin: auto;
      padding: 20px 0; }
      .header .head-logo img {
        width: auto;
        height: 60px; } }
  @media screen and (max-width: 767px) {
    .header .head-logo {
      padding: 10px 0; }
      .header .head-logo img {
        height: 40px; } }
  @media screen and (min-width: 960px) {
    .header .menu {
      display: block; } }
  @media screen and (max-width: 959px) {
    .header .menu {
      display: none;
      opacity: 0;
      position: absolute;
      top: 100px;
      width: 100%;
      background: #9C8175;
      transition: all 0.3s;
      -moz-transition: all 0.3s;
      -webkit-transition: all 0.3s; }
      .header .menu.on {
        display: block;
        opacity: 1;
        z-index: 10000; } }
  @media screen and (max-width: 767px) {
    .header .menu {
      top: 60px; } }
  .header .gnav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    max-width: 1280px;
    margin: auto;
    text-align: center; }
    @media screen and (min-width: 960px) {
      .header .gnav {
        -webkit-box-pack: space-evenly;
            -ms-flex-pack: space-evenly;
                justify-content: space-evenly;
        list-style: none; } }
    @media screen and (min-width: 960px) {
      .header .gnav li {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1; } }
    @media screen and (max-width: 959px) {
      .header .gnav li {
        width: 50%;
        border-bottom: 1px solid rgba(255, 255, 255, 0.3); }
        .header .gnav li:last-child, .header .gnav li:nth-last-child(2) {
          border-bottom: none; }
        .header .gnav li:nth-child(2n) {
          border-left: 1px solid rgba(255, 255, 255, 0.3); } }
    @media screen and (min-width: 960px) {
      .header .gnav li span {
        display: block;
        transition: all 0.5s;
        -moz-transition: all 0.5s;
        -webkit-transition: all 0.5s; } }
    .header .gnav li span.en {
      font-family: "Lora", sans-serif;
      letter-spacing: 2px; }
      @media screen and (min-width: 960px) {
        .header .gnav li span.en {
          opacity: 1;
          font-size: 14px; } }
      @media screen and (max-width: 959px) {
        .header .gnav li span.en {
          font-size: 18px; } }
      @media screen and (max-width: 767px) {
        .header .gnav li span.en {
          font-size: 16px; } }
    @media screen and (min-width: 960px) {
      .header .gnav li span.jp {
        position: absolute;
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
        opacity: 0;
        margin-top: -14px;
        font-size: 13px;
        white-space: nowrap; } }
    @media screen and (max-width: 959px) {
      .header .gnav li span.jp {
        display: block;
        margin-top: 5px;
        font-size: 13px; } }
    @media screen and (max-width: 767px) {
      .header .gnav li span.jp {
        font-size: 12px; } }
    .header .gnav li a {
      position: relative; }
      @media screen and (min-width: 960px) {
        .header .gnav li a {
          padding: 10px 0; }
          .header .gnav li a.current {
            color: #9C8175; } }
      @media screen and (max-width: 959px) {
        .header .gnav li a {
          padding: 20px 0;
          color: #fff; } }
      @media screen and (min-width: 960px) {
        .header .gnav li a:hover span.en {
          opacity: 0; }
        .header .gnav li a:hover span.jp {
          opacity: 1; } }
  .header .sp-nav {
    cursor: pointer;
    display: block;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 15px;
    width: 30px;
    height: 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    z-index: 9999;
    line-height: 1; }
    @media screen and (min-width: 960px) {
      .header .sp-nav {
        display: none; } }
    @media screen and (max-width: 959px) {
      .header .sp-nav {
        display: block; } }
    .header .sp-nav figure {
      position: absolute;
      left: 0;
      display: block;
      width: 100%;
      height: 1px;
      background: #000;
      transition: 0.25s;
      -moz-transition: 0.25s;
      -webkit-transition: 0.25s; }
      .header .sp-nav figure:nth-child(1) {
        top: 0; }
      .header .sp-nav figure:nth-child(2) {
        top: 50%; }
      .header .sp-nav figure:nth-child(3) {
        bottom: -17px; }
    .header .sp-nav.on figure:nth-child(1) {
      top: 50%;
      transform: rotate(45deg);
      -moz-transform: rotate(45deg);
      -webkit-transform: rotate(45deg); }
    .header .sp-nav.on figure:nth-child(2) {
      background: transparent; }
    .header .sp-nav.on figure:nth-child(3) {
      bottom: -7px;
      transform: rotate(-45deg);
      -moz-transform: rotate(-45deg);
      -webkit-transform: rotate(-45deg); }
  @media screen and (min-width: 960px) {
    .header.is-fixed {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 70px;
      border-bottom: 1px solid #eee;
      padding: 0 0 0 15px;
      background: #fff;
      zoom: 1; }
      .header.is-fixed:before, .header.is-fixed:after {
        content: "";
        display: table;
        height: 0;
        visibility: hidden; }
      .header.is-fixed:after {
        clear: both; }
      .header.is-fixed .head-logo {
        float: left;
        width: 45px;
        padding: 20px 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        background: url(/images/logo-hol.svg?2) no-repeat left center;
        background-size: 100% auto;
        -moz-background-size: 100% auto;
        -webkit-background-size: 100% auto; }
        .header.is-fixed .head-logo a {
          height: 30px; }
        .header.is-fixed .head-logo img {
          display: none; }
      .header.is-fixed .menu {
        float: right; }
        .header.is-fixed .menu ul {
          height: 70px; }
        .header.is-fixed .menu li {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-flex: 1;
              -ms-flex: auto;
                  flex: auto;
          -webkit-box-align: center;
              -ms-flex-align: center;
                  align-items: center;
          padding-right: 35px; }
          .header.is-fixed .menu li span.en {
            font-size: 13px; }
          .header.is-fixed .menu li span.jp {
            font-size: 12px;
            letter-spacing: 0; } }

/* =========================================================
	フッター
========================================================= */
.footer {
  border-top: 1px solid #eee;
  background: #f8f8f8; }
  @media screen and (min-width: 960px) {
    .footer {
      padding: 60px 0; } }
  @media screen and (max-width: 1279px) {
    .footer {
      padding-left: 5%;
      padding-right: 5%; } }
  @media screen and (max-width: 959px) {
    .footer {
      padding: 30px 5%; } }
  @media screen and (max-width: 767px) {
    .footer {
      padding: 20px 5%; } }
  .footer .foot-inner {
    max-width: 1280px;
    margin: auto; }
    @media screen and (min-width: 960px) {
      .footer .foot-inner {
        position: relative; } }
    @media screen and (min-width: 960px) {
      .footer .foot-inner .foot-logo {
        position: absolute;
        top: 0;
        right: 0;
        width: 172px; } }
    @media screen and (max-width: 959px) {
      .footer .foot-inner .foot-logo {
        width: 172px;
        margin: 0 auto 30px; } }
    @media screen and (max-width: 767px) {
      .footer .foot-inner .foot-logo {
        width: 172px;
        margin: 0 auto 20px; } }
    @media screen and (min-width: 960px) {
      .footer .foot-inner .foot-link {
        text-align: left; } }
    @media screen and (max-width: 959px) {
      .footer .foot-inner .foot-link {
        text-align: center; } }
    .footer .foot-inner .foot-link li {
      display: inline-block;
      border-right: 1px solid #ccc;
      font-size: 13px;
      font-family: "Lora", sans-serif;
      line-height: 1;
      letter-spacing: 1px; }
      @media screen and (min-width: 960px) {
        .footer .foot-inner .foot-link li {
          margin-right: 30px;
          padding-right: 30px; } }
      @media screen and (max-width: 959px) {
        .footer .foot-inner .foot-link li {
          padding: 0 10px; } }
      .footer .foot-inner .foot-link li:last-child {
        margin-right: 0;
        padding-right: 0;
        border: none; }
  .footer a {
    display: block;
    text-decoration: none; }
    @media screen and (min-width: 960px) {
      .footer a:hover {
        color: #9C8175; } }
  .footer .copyright {
    font-family: "Lora", sans-serif;
    font-size: 10px;
    line-height: 1; }
    @media screen and (min-width: 960px) {
      .footer .copyright {
        margin-top: 50px;
        letter-spacing: 2px; } }
    @media screen and (max-width: 959px) {
      .footer .copyright {
        margin-top: 30px;
        text-align: center;
        letter-spacing: 1px; } }
    @media screen and (max-width: 767px) {
      .footer .copyright {
        margin-top: 20px; } }

/* =========================================================
	pagetop
========================================================= */
.pagetop {
  position: fixed;
  right: 0;
  bottom: 0;
  width: 40px;
  height: 40px; }
  .pagetop a {
    display: table-cell;
    width: 40px;
    height: 40px;
    background: #9C8175;
    color: #fff;
    text-decoration: none;
    text-align: center;
    vertical-align: middle; }

@media screen and (max-width: 959px) {
  .pagetop {
    display: none !important; } }
/* =========================================================
 info-list
========================================================= */
.info-list {
  max-width: 1000px;
  margin: auto; }
  .info-list li {
    width: 100%;
    border-bottom: 1px dotted #eee;
    text-align: left; }
    .info-list li a {
      width: 100%;
      padding: 20px 0;
      font-size: 14px;
      text-decoration: none; }
      @media screen and (min-width: 768px) {
        .info-list li a {
          display: table;
          table-layout: fixed; } }
      @media screen and (max-width: 767px) {
        .info-list li a {
          display: block; } }
    @media screen and (min-width: 768px) {
      .info-list li span {
        display: table-cell;
        vertical-align: top; } }
    @media screen and (max-width: 767px) {
      .info-list li span {
        display: block; } }
    @media screen and (min-width: 768px) {
      .info-list li span:first-child {
        width: 100px; } }

/* index page
========================================================= */
#home-page .mv {
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
  background: #f8f8f8; }
  @media screen and (min-width: 960px) {
    #home-page .mv {
      padding: 50px 0; } }
  @media screen and (max-width: 959px) {
    #home-page .mv {
      padding: 30px 0; } }
  @media screen and (max-width: 767px) {
    #home-page .mv {
      padding: 20px 0; } }
#home-page .contents {
  text-align: center; }
  #home-page .contents #bnr-breakfast {
    max-width: 750px;
    margin: -30px auto 40px;
    border-radius: 10px;
    overflow: hidden; }
    @media screen and (max-width: 959px) {
      #home-page .contents #bnr-breakfast {
        margin: 0 auto 30px; } }
    #home-page .contents #bnr-breakfast a {
      display: block;
      opacity: 1;
      -webkit-transition: opacity .15s ease;
      transition: opacity .15s ease; }
      #home-page .contents #bnr-breakfast a:hover {
        opacity: .6; }
  @media screen and (min-width: 960px) {
    #home-page .contents #service, #home-page .contents #tie-up {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; } }
  #home-page .contents #service .txt, #home-page .contents #tie-up .txt {
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
    @media screen and (min-width: 960px) {
      #home-page .contents #service .txt, #home-page .contents #tie-up .txt {
        width: 50%;
        text-align: left; }
        #home-page .contents #service .txt h2, #home-page .contents #service .txt .btn-link, #home-page .contents #tie-up .txt h2, #home-page .contents #tie-up .txt .btn-link {
          text-align: left; } }
    @media screen and (min-width: 1280px) {
      #home-page .contents #service .txt, #home-page .contents #tie-up .txt {
        width: 40%; } }
  #home-page .contents #service .img, #home-page .contents #tie-up .img {
    position: relative; }
    @media screen and (min-width: 960px) {
      #home-page .contents #service .img, #home-page .contents #tie-up .img {
        width: 50%;
        min-height: 465px; } }
    @media screen and (min-width: 1280px) {
      #home-page .contents #service .img, #home-page .contents #tie-up .img {
        width: 60%; } }
    @media screen and (max-width: 959px) {
      #home-page .contents #service .img, #home-page .contents #tie-up .img {
        height: 300px;
        margin-bottom: 30px; } }
    #home-page .contents #service .img figure, #home-page .contents #tie-up .img figure {
      position: absolute;
      top: 0;
      display: block;
      height: 100%;
      background-position: center center;
      background-repeat: no-repeat;
      background-size: cover;
      -moz-background-size: cover;
      -webkit-background-size: cover; }
      @media screen and (min-width: 960px) {
        #home-page .contents #service .img figure, #home-page .contents #tie-up .img figure {
          width: 50vw; } }
      @media screen and (min-width: 1280px) {
        #home-page .contents #service .img figure, #home-page .contents #tie-up .img figure {
          width: 60vw; } }
      @media screen and (max-width: 959px) {
        #home-page .contents #service .img figure, #home-page .contents #tie-up .img figure {
          width: 100vw;
          left: -5%; } }
  @media screen and (min-width: 960px) {
    #home-page .contents #service {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
          -ms-flex-direction: row-reverse;
              flex-direction: row-reverse; } }
  #home-page .contents #service figure {
    left: 0;
    background-image: url(/images/service-hotel_morning.png); }
  @media screen and (min-width: 960px) {
    #home-page .contents #service .txt {
      padding-right: 60px; } }
  #home-page .contents #tie-up figure {
    right: 0;
    background-image: url(/images/index-tieup.png); }
  @media screen and (min-width: 960px) {
    #home-page .contents #tie-up .txt {
      padding-left: 60px; } }
  #home-page .contents #menu .menu-slide {
    width: 100%;
    position: relative; }
    @media screen and (min-width: 960px) {
      #home-page .contents #menu .menu-slide {
        margin-bottom: 50px;
        height: 282px; } }
    @media screen and (max-width: 959px) {
      #home-page .contents #menu .menu-slide {
        height: 163px;
        margin-bottom: 30px; } }
    @media screen and (max-width: 767px) {
      #home-page .contents #menu .menu-slide {
        margin-bottom: 20px; } }
  #home-page .contents #menu .simply-scroll-container {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 100vw; }
  #home-page .contents #menu .simply-scroll-clip {
    position: relative;
    overflow: hidden; }
  #home-page .contents #menu .simply-scroll-list {
    overflow: hidden;
    margin: 0;
    padding: 0; }
  #home-page .contents #menu .simply-scroll-list li {
    list-style: none !important;
    float: left;
    margin: 0;
    padding: 0; }
    @media screen and (min-width: 960px) {
      #home-page .contents #menu .simply-scroll-list li {
        width: 450px;
        height: 282; } }
    @media screen and (max-width: 959px) {
      #home-page .contents #menu .simply-scroll-list li {
        width: 260px;
        height: 163px; } }
  #home-page .contents #menu .simply-scroll-list li img {
    display: block; }
  #home-page .contents #brand ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    @media screen and (min-width: 960px) {
      #home-page .contents #brand ul {
        padding-top: 40px; } }
    @media screen and (max-width: 959px) {
      #home-page .contents #brand ul {
        padding-top: 30px; } }
    @media screen and (max-width: 767px) {
      #home-page .contents #brand ul {
        padding-top: 20px; } }
  #home-page .contents #brand li {
    width: 30%;
    border: 1px solid #eee; }
  #home-page .contents #works .img {
    position: relative; }
    @media screen and (min-width: 960px) {
      #home-page .contents #works .img {
        height: 400px;
        margin-bottom: 80px; } }
    @media screen and (max-width: 959px) {
      #home-page .contents #works .img {
        height: 300px;
        margin-bottom: 40px; } }
    @media screen and (max-width: 767px) {
      #home-page .contents #works .img {
        height: 250px;
        margin-bottom: 30px; } }
    #home-page .contents #works .img figure {
      position: absolute;
      top: 0;
      left: 50%;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%);
      width: 100vw;
      height: 100%;
      background: url(/images/index-works.png) no-repeat center center;
      background-size: cover;
      -moz-background-size: cover;
      -webkit-background-size: cover; }
  @media screen and (max-width: 959px) {
    #home-page .contents #works h2 {
      margin-bottom: 0; } }
  #home-page .contents #works .box-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch; }
    #home-page .contents #works .box-list .list-item {
      -webkit-box-sizing: border-box;
      box-sizing: border-box; }
      @media screen and (min-width: 960px) {
        #home-page .contents #works .box-list .list-item {
          width: 30%; } }
      @media screen and (max-width: 959px) {
        #home-page .contents #works .box-list .list-item {
          width: 30%; } }
      @media screen and (max-width: 767px) {
        #home-page .contents #works .box-list .list-item {
          width: 48%;
          padding: 15px 5px; } }
    #home-page .contents #works .box-list .thumb {
      margin-bottom: 15px; }
    #home-page .contents #works .box-list a {
      text-decoration: none; }

/* company page
========================================================= */
#company-page .contents .philosophy, #company-page .contents .outline {
  max-width: 960px; }
#company-page .contents .philosophy {
  text-align: center; }

/* service page
========================================================= */
@media screen and (min-width: 960px) {
  #service-page .contents .item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    padding-bottom: 120px; } }
@media screen and (max-width: 959px) {
  #service-page .contents .item {
    padding-bottom: 80px; } }
@media screen and (max-width: 767px) {
  #service-page .contents .item {
    padding-bottom: 60px; } }
#service-page .contents .item .txt {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }
  @media screen and (min-width: 960px) {
    #service-page .contents .item .txt {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      width: 50%;
      padding: 30px 0;
      text-align: left; }
      #service-page .contents .item .txt h2, #service-page .contents .item .txt .btn-link {
        text-align: left; } }
  @media screen and (min-width: 1280px) {
    #service-page .contents .item .txt {
      width: 40%; } }
#service-page .contents .item .img {
  position: relative; }
  @media screen and (min-width: 960px) {
    #service-page .contents .item .img {
      width: 50%;
      min-height: 465px; } }
  @media screen and (min-width: 1280px) {
    #service-page .contents .item .img {
      width: 60%; } }
  @media screen and (max-width: 959px) {
    #service-page .contents .item .img {
      height: 300px;
      margin-bottom: 30px; } }
  #service-page .contents .item .img figure {
    position: absolute;
    top: 0;
    display: block;
    height: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    -moz-background-size: cover;
    -webkit-background-size: cover; }
    @media screen and (min-width: 960px) {
      #service-page .contents .item .img figure {
        width: 50vw; } }
    @media screen and (min-width: 1280px) {
      #service-page .contents .item .img figure {
        width: 60vw; } }
    @media screen and (max-width: 959px) {
      #service-page .contents .item .img figure {
        width: 100vw;
        left: -5%; } }
@media screen and (min-width: 960px) {
  #service-page .contents .item.morning, #service-page .contents .item.delivery, #service-page .contents .item.breakfast {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; } }
#service-page .contents .item.morning figure, #service-page .contents .item.delivery figure, #service-page .contents .item.breakfast figure {
  left: 0; }
@media screen and (min-width: 960px) {
  #service-page .contents .item.morning .txt, #service-page .contents .item.delivery .txt, #service-page .contents .item.breakfast .txt {
    padding-right: 60px; } }
#service-page .contents .item.morning figure {
  background-image: url(/images/service-hotel_morning.png); }
#service-page .contents .item.delivery {
  padding-bottom: 0; }
  #service-page .contents .item.delivery figure {
    background-image: url(/images/service-delivery.png); }
#service-page .contents .item.shop figure {
  right: 0;
  background-image: url(/images/service-hotel_shop.png); }
@media screen and (min-width: 960px) {
  #service-page .contents .item.shop .txt {
    padding-left: 60px; } }
#service-page .contents .item.breakfast {
  padding-bottom: 0; }
  #service-page .contents .item.breakfast figure {
    background-image: url(/images/service-breakfast.jpg); }
@media screen and (min-width: 960px) {
  #service-page .contents .btn-link {
    padding-top: 100px; } }
@media screen and (max-width: 959px) {
  #service-page .contents .btn-link {
    padding-top: 60px; } }
@media screen and (max-width: 767px) {
  #service-page .contents .btn-link {
    padding-top: 40px; } }

/* menu page
========================================================= */
#menu-page .contents .intro {
  max-width: 960px;
  margin: auto;
  text-align: center; }
@media screen and (min-width: 960px) {
  #menu-page .contents .section {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; } }
#menu-page .contents .section .img {
  position: relative;
  zoom: 1; }
  #menu-page .contents .section .img:before, #menu-page .contents .section .img:after {
    content: "";
    display: table;
    height: 0;
    visibility: hidden; }
  #menu-page .contents .section .img:after {
    clear: both; }
  @media screen and (min-width: 960px) {
    #menu-page .contents .section .img {
      width: 50%; } }
  @media screen and (min-width: 1280px) {
    #menu-page .contents .section .img {
      width: 60%; } }
  @media screen and (max-width: 959px) {
    #menu-page .contents .section .img {
      margin-bottom: 30px; } }
  @media screen and (max-width: 767px) {
    #menu-page .contents .section .img {
      margin-bottom: 20px; } }
  @media screen and (min-width: 960px) {
    #menu-page .contents .section .img img:last-child {
      display: none; } }
  @media screen and (max-width: 959px) {
    #menu-page .contents .section .img img {
      float: left;
      width: 50%; } }
#menu-page .contents .section .txt {
  position: relative;
  z-index: 10; }
  #menu-page .contents .section .txt p {
    line-height: 1.8; }
  @media screen and (min-width: 960px) {
    #menu-page .contents .section .txt {
      width: 50%;
      padding-left: 40px; }
      #menu-page .contents .section .txt p {
        font-size: 15px; } }
  @media screen and (min-width: 1280px) {
    #menu-page .contents .section .txt {
      width: 40%;
      padding-left: 60px; }
      #menu-page .contents .section .txt p {
        font-size: 16px; } }
  #menu-page .contents .section .txt h3 {
    position: relative; }

/* recruit page
========================================================= */
#recruit-page .contents .anchor {
  margin: auto; }
  #recruit-page .contents .anchor li {
    width: 100%;
    padding-bottom: 1px; }
  #recruit-page .contents .anchor a {
    display: block;
    padding: 20px;
    text-decoration: none;
    background: #ddd;
    text-align: center; }
    @media screen and (min-width: 960px) {
      #recruit-page .contents .anchor a:hover {
        color: #fff;
        background: #9C8175; } }
    #recruit-page .contents .anchor a.current {
      background: #9C8175;
      color: #fff; }
#recruit-page .contents .article {
  max-width: 960px;
  text-align: center; }
  #recruit-page .contents .article table {
    width: 100%;
    table-layout: fixed;
    word-break: break-all;
    word-wrap: break-all; }

/* privacy page
========================================================= */
#privacy-page .contents .contact {
  border: 1px solid #eee; }
  @media screen and (min-width: 960px) {
    #privacy-page .contents .contact {
      margin-top: 20px;
      padding: 20px; } }
  @media screen and (max-width: 959px) {
    #privacy-page .contents .contact {
      margin-top: 20px;
      padding: 15px; } }
  @media screen and (max-width: 767px) {
    #privacy-page .contents .contact {
      margin-top: 15px;
      padding: 10px; } }
  #privacy-page .contents .contact dt {
    font-weight: 700; }

/* brands,works,tie-up page
========================================================= */
#brand-page .contents, #tie-up-page .contents, #works-page .contents {
  text-align: center; }
  #brand-page .contents .anchor, #tie-up-page .contents .anchor, #works-page .contents .anchor {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    margin: auto; }
    @media screen and (min-width: 960px) {
      #brand-page .contents .anchor, #tie-up-page .contents .anchor, #works-page .contents .anchor {
        margin-bottom: 60px; } }
    @media screen and (max-width: 959px) {
      #brand-page .contents .anchor, #tie-up-page .contents .anchor, #works-page .contents .anchor {
        margin-bottom: 50px; } }
    @media screen and (max-width: 767px) {
      #brand-page .contents .anchor, #tie-up-page .contents .anchor, #works-page .contents .anchor {
        margin-bottom: 30px; } }
    #brand-page .contents .anchor li, #tie-up-page .contents .anchor li, #works-page .contents .anchor li {
      padding-right: 1px; }
    #brand-page .contents .anchor a, #tie-up-page .contents .anchor a, #works-page .contents .anchor a {
      display: block;
      padding: 20px;
      text-decoration: none;
      background: #ddd;
      text-align: center; }
      @media screen and (min-width: 960px) {
        #brand-page .contents .anchor a:hover, #tie-up-page .contents .anchor a:hover, #works-page .contents .anchor a:hover {
          color: #fff;
          background: #9C8175; } }
      #brand-page .contents .anchor a.current, #tie-up-page .contents .anchor a.current, #works-page .contents .anchor a.current {
        background: #9C8175;
        color: #fff; }
  #brand-page .contents .item, #tie-up-page .contents .item, #works-page .contents .item {
    zoom: 1;
    text-align: left; }
    #brand-page .contents .item:before, #brand-page .contents .item:after, #tie-up-page .contents .item:before, #tie-up-page .contents .item:after, #works-page .contents .item:before, #works-page .contents .item:after {
      content: "";
      display: table;
      height: 0;
      visibility: hidden; }
    #brand-page .contents .item:after, #tie-up-page .contents .item:after, #works-page .contents .item:after {
      clear: both; }
    @media screen and (min-width: 960px) {
      #brand-page .contents .item, #tie-up-page .contents .item, #works-page .contents .item {
        padding-bottom: 60px; } }
    @media screen and (max-width: 959px) {
      #brand-page .contents .item, #tie-up-page .contents .item, #works-page .contents .item {
        padding-bottom: 40px; } }
    @media screen and (max-width: 767px) {
      #brand-page .contents .item, #tie-up-page .contents .item, #works-page .contents .item {
        padding-bottom: 30px; } }
    #brand-page .contents .item:last-of-type, #tie-up-page .contents .item:last-of-type, #works-page .contents .item:last-of-type {
      padding-bottom: 0; }
    @media screen and (min-width: 960px) {
      #brand-page .contents .item .img, #tie-up-page .contents .item .img, #works-page .contents .item .img {
        float: left;
        width: 45%; } }
    @media screen and (max-width: 959px) {
      #brand-page .contents .item .img, #tie-up-page .contents .item .img, #works-page .contents .item .img {
        margin-bottom: 30px; } }
    @media screen and (max-width: 767px) {
      #brand-page .contents .item .img, #tie-up-page .contents .item .img, #works-page .contents .item .img {
        margin-bottom: 15px; } }
    @media screen and (min-width: 960px) {
      #brand-page .contents .item .cnt, #tie-up-page .contents .item .cnt, #works-page .contents .item .cnt {
        float: right;
        width: 50%; } }
    @media screen and (min-width: 960px) {
      #brand-page .contents .item .cnt .txt, #tie-up-page .contents .item .cnt .txt, #works-page .contents .item .cnt .txt {
        padding-top: 30px; }
        #brand-page .contents .item .cnt .txt p, #tie-up-page .contents .item .cnt .txt p, #works-page .contents .item .cnt .txt p {
          font-size: 14px; } }
    @media screen and (max-width: 959px) {
      #brand-page .contents .item .cnt .txt, #tie-up-page .contents .item .cnt .txt, #works-page .contents .item .cnt .txt {
        padding-top: 30px; } }
    @media screen and (max-width: 767px) {
      #brand-page .contents .item .cnt .txt, #tie-up-page .contents .item .cnt .txt, #works-page .contents .item .cnt .txt {
        padding-top: 20px; } }
    #brand-page .contents .item .cnt h3 + .txt, #tie-up-page .contents .item .cnt h3 + .txt, #works-page .contents .item .cnt h3 + .txt {
      padding-top: 0; }
    #brand-page .contents .item .cnt h3 span, #tie-up-page .contents .item .cnt h3 span, #works-page .contents .item .cnt h3 span {
      display: block;
      background: #ccc;
      color: #fff;
      text-align: center;
      font-weight: 700;
      line-height: 1; }
      @media screen and (min-width: 960px) {
        #brand-page .contents .item .cnt h3 span, #tie-up-page .contents .item .cnt h3 span, #works-page .contents .item .cnt h3 span {
          width: 80px;
          margin-bottom: 10px;
          padding: 5px 0;
          font-size: 13px; } }
      @media screen and (max-width: 959px) {
        #brand-page .contents .item .cnt h3 span, #tie-up-page .contents .item .cnt h3 span, #works-page .contents .item .cnt h3 span {
          width: 80px;
          margin-bottom: 10px;
          padding: 5px 0;
          font-size: 12px; } }
      @media screen and (max-width: 767px) {
        #brand-page .contents .item .cnt h3 span, #tie-up-page .contents .item .cnt h3 span, #works-page .contents .item .cnt h3 span {
          font-size: 11px; } }
    @media screen and (min-width: 960px) {
      #brand-page .contents .item .cnt .table-wrap, #tie-up-page .contents .item .cnt .table-wrap, #works-page .contents .item .cnt .table-wrap {
        margin: 0 -20px; } }
    @media screen and (max-width: 959px) {
      #brand-page .contents .item .cnt .table-wrap, #tie-up-page .contents .item .cnt .table-wrap, #works-page .contents .item .cnt .table-wrap {
        margin: 0 -20px; } }
    @media screen and (min-width: 768px) {
      #brand-page .contents .item .cnt table, #tie-up-page .contents .item .cnt table, #works-page .contents .item .cnt table {
        border-spacing: 20px 0; }
        #brand-page .contents .item .cnt table th, #brand-page .contents .item .cnt table td, #tie-up-page .contents .item .cnt table th, #tie-up-page .contents .item .cnt table td, #works-page .contents .item .cnt table th, #works-page .contents .item .cnt table td {
          padding: 15px;
          font-size: 14px; }
        #brand-page .contents .item .cnt table th, #tie-up-page .contents .item .cnt table th, #works-page .contents .item .cnt table th {
          width: 20%; } }
    @media screen and (max-width: 767px) {
      #brand-page .contents .item .cnt table, #tie-up-page .contents .item .cnt table, #works-page .contents .item .cnt table {
        padding-top: 20px; } }
    #brand-page .contents .item .cnt form, #tie-up-page .contents .item .cnt form, #works-page .contents .item .cnt form {
      display: block; }
      @media screen and (min-width: 960px) {
        #brand-page .contents .item .cnt form, #tie-up-page .contents .item .cnt form, #works-page .contents .item .cnt form {
          padding-top: 30px; } }
      @media screen and (max-width: 959px) {
        #brand-page .contents .item .cnt form, #tie-up-page .contents .item .cnt form, #works-page .contents .item .cnt form {
          padding-top: 30px;
          text-align: center; } }
      @media screen and (max-width: 767px) {
        #brand-page .contents .item .cnt form, #tie-up-page .contents .item .cnt form, #works-page .contents .item .cnt form {
          padding-top: 20px; } }
    #brand-page .contents .item .cnt input, #tie-up-page .contents .item .cnt input, #works-page .contents .item .cnt input {
      cursor: pointer;
      display: inline-block;
      margin: auto;
      border: none;
      background: #9C8175;
      color: #fff;
      font-size: 16px;
      padding: 15px 30px;
      text-align: center;
      transition: all 0.3s;
      -moz-transition: all 0.3s;
      -webkit-transition: all 0.3s; }
      @media screen and (min-width: 960px) {
        #brand-page .contents .item .cnt input:hover, #tie-up-page .contents .item .cnt input:hover, #works-page .contents .item .cnt input:hover {
          background: #000; } }
      @media screen and (max-width: 959px) {
        #brand-page .contents .item .cnt input, #tie-up-page .contents .item .cnt input, #works-page .contents .item .cnt input {
          width: 80%; } }
      @media screen and (max-width: 767px) {
        #brand-page .contents .item .cnt input, #tie-up-page .contents .item .cnt input, #works-page .contents .item .cnt input {
          width: 100%; } }

/* brand page
========================================================= */
#brand-page .contents .item {
  border-bottom: 1px dotted #eee; }
  @media screen and (min-width: 960px) {
    #brand-page .contents .item {
      margin-bottom: 60px; } }
  @media screen and (max-width: 959px) {
    #brand-page .contents .item {
      margin-bottom: 40px; } }
  @media screen and (max-width: 767px) {
    #brand-page .contents .item {
      margin-bottom: 30px; } }
  @media screen and (min-width: 960px) {
    #brand-page .contents .item .img {
      float: left;
      width: 30%;
      border: 1px solid #eee; } }
  @media screen and (max-width: 959px) {
    #brand-page .contents .item .img {
      margin-bottom: 30px;
      text-align: center; }
      #brand-page .contents .item .img img {
        max-width: 350px; } }
  @media screen and (max-width: 767px) {
    #brand-page .contents .item .img {
      margin-bottom: 15px; } }
  @media screen and (min-width: 960px) {
    #brand-page .contents .item .cnt {
      float: right;
      width: 65%; } }
#brand-page .contents .btn-link {
  padding-top: 0; }

/* info page
========================================================= */
#info-page .contents .post-cnt {
  max-width: 800px; }
#info-page .contents .update {
  margin-bottom: 20px;
  padding: 15px;
  background: #f8f8f8;
  text-align: right;
  line-height: 1; }
  #info-page .contents .update dt, #info-page .contents .update dd {
    display: inline-block; }
    @media screen and (min-width: 960px) {
      #info-page .contents .update dt, #info-page .contents .update dd {
        font-size: 14px; } }
    @media screen and (max-width: 959px) {
      #info-page .contents .update dt, #info-page .contents .update dd {
        font-size: 13px; } }
    @media screen and (max-width: 767px) {
      #info-page .contents .update dt, #info-page .contents .update dd {
        font-size: 12px; } }
  @media screen and (min-width: 960px) {
    #info-page .contents .update dt {
      margin-right: 15px; } }
  @media screen and (max-width: 959px) {
    #info-page .contents .update dt {
      margin-right: 15px; } }
  @media screen and (max-width: 767px) {
    #info-page .contents .update dt {
      margin-right: 10px; } }

/*  contact page
========================================================= */
#contact-page .contents {
  text-align: center; }
  #contact-page .contents h3 {
    text-align: center; }
  @media screen and (min-width: 960px) {
    #contact-page .contents .tel dt {
      font-size: 50px; }
      #contact-page .contents .tel dt span {
        font-size: 30px; } }
  @media screen and (max-width: 959px) {
    #contact-page .contents .tel dt {
      font-size: 30px; }
      #contact-page .contents .tel dt span {
        font-size: 20px; } }
  @media screen and (max-width: 767px) {
    #contact-page .contents .tel dt {
      font-size: 24px; }
      #contact-page .contents .tel dt span {
        font-size: 16px; } }
  #contact-page .contents .form {
    width: 100%;
    text-align: left; }
    #contact-page .contents .form #mfp_confirm_table {
      width: 100%;
      margin-top: 20px; }
    #contact-page .contents .form dl {
      display: table;
      width: inherit;
      margin: 0;
      padding: 20px 0;
      border-bottom: dotted 1px #eee; }
      @media screen and (max-width: 767px) {
        #contact-page .contents .form dl {
          display: block; } }
      #contact-page .contents .form dl:first-of-type {
        border-top: dotted 1px #eee; }
    #contact-page .contents .form dt, #contact-page .contents .form dd {
      display: table-cell;
      padding: 0;
      border: none !important;
      font-size: 100%;
      text-align: left;
      vertical-align: middle; }
      @media screen and (max-width: 959px) {
        #contact-page .contents .form dt, #contact-page .contents .form dd {
          display: block; } }
    @media screen and (min-width: 960px) {
      #contact-page .contents .form dt {
        width: 300px; } }
    @media screen and (max-width: 959px) {
      #contact-page .contents .form dt {
        width: auto;
        padding-bottom: 10px; } }
    #contact-page .contents .form dt span {
      display: block;
      float: right;
      width: 35px;
      height: 18px;
      margin-top: 3px;
      background: #91141e;
      color: #fff;
      font-size: 9px;
      text-align: center;
      line-height: 18px;
      text-indent: 0;
      border-radius: 6px; }
    #contact-page .contents .form #submit {
      margin-top: 30px;
      text-align: center; }
    #contact-page .contents .form #add {
      width: 100%; }
    #contact-page .contents .form h3 {
      margin-bottom: 15px; }
    #contact-page .contents .form dd {
      padding-left: 20px; }
      @media screen and (max-width: 959px) {
        #contact-page .contents .form dd {
          padding-left: 0; } }
      #contact-page .contents .form dd dl {
        width: 100%;
        padding: 5px 0;
        border: none !important; }
        #contact-page .contents .form dd dl:first-of-type {
          border-top: none; }
        #contact-page .contents .form dd dl dt {
          width: 100px;
          padding-top: 10px; }
        @media screen and (max-width: 959px) {
          #contact-page .contents .form dd dl {
            padding-left: 1em; }
            #contact-page .contents .form dd dl dt, #contact-page .contents .form dd dl dd {
              width: auto; } }
      #contact-page .contents .form dd .mfp_err {
        clear: both;
        display: none;
        text-align: left;
        margin: 5px 0px 0px 0px;
        padding: 3px 0px 5px 17px;
        color: #91141e;
        font-size: 12px;
        line-height: normal;
        background-repeat: no-repeat;
        background-position: 0px center; }
      #contact-page .contents .form dd input[type="text"], #contact-page .contents .form dd input[type="tel"], #contact-page .contents .form dd input[type="email"], #contact-page .contents .form dd textarea {
        -webkit-appearance: none;
        width: 100% !important;
        padding: 10px;
        border: solid 1px #eee;
        background: #f8f8f8;
        border-radius: 6px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        font-size: 100% !important; }
      #contact-page .contents .form dd #zip-code {
        width: 250px !important;
        margin-right: 10px; }
      #contact-page .contents .form dd .custom {
        overflow: hidden;
        position: relative;
        width: 250px;
        border: 1px solid #eee;
        border-radius: 4px;
        background: #f8f8f8;
        z-index: 10; }
        #contact-page .contents .form dd .custom i {
          position: absolute;
          top: 50%;
          -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
          right: 10px; }
      #contact-page .contents .form dd select {
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        display: block;
        position: relative;
        width: 130%;
        height: 44px;
        padding: 11px 0 10px 15px;
        font-weight: 400;
        cursor: pointer;
        background: none;
        z-index: 15;
        vertical-align: middle;
        line-height: 24px;
        border: none;
        -webkit-appearance: button;
        -moz-appearance: button;
        appearance: button; }
      #contact-page .contents .form dd input[type=radio], #contact-page .contents .form dd input[type=checkbox] {
        display: none; }
      #contact-page .contents .form dd .radio, #contact-page .contents .form dd .checkbox {
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        -webkit-transition: background-color 0.2s linear;
        transition: background-color 0.2s linear;
        position: relative;
        display: block;
        padding: 15px 15px 15px 45px;
        border-radius: 6px;
        border: 1px solid #eee;
        background-color: #f8f8f8;
        vertical-align: middle;
        cursor: pointer; }
        #contact-page .contents .form dd .radio:hover:after, #contact-page .contents .form dd .checkbox:hover:after {
          border-color: #9C8175; }
        #contact-page .contents .form dd .radio:before, #contact-page .contents .form dd .radio:after, #contact-page .contents .form dd .checkbox:before, #contact-page .contents .form dd .checkbox:after {
          display: block;
          position: absolute;
          top: 50%;
          -webkit-box-sizing: border-box;
          box-sizing: border-box;
          content: ''; }
        #contact-page .contents .form dd .radio:before, #contact-page .contents .form dd .checkbox:before {
          opacity: 0; }
        #contact-page .contents .form dd .radio:after, #contact-page .contents .form dd .checkbox:after {
          -webkit-transition: border-color 0.2s linear;
          transition: border-color 0.2s linear;
          left: 15px;
          margin-top: -10px;
          width: 20px;
          height: 20px;
          border: 2px solid #bbb;
          border-radius: 6px; }
        #contact-page .contents .form dd .radio.mfp_checked:after, #contact-page .contents .form dd .checkbox.mfp_checked:after {
          border-color: #9C8175; }
        #contact-page .contents .form dd .radio.mfp_checked:before, #contact-page .contents .form dd .checkbox.mfp_checked:before {
          opacity: 1; }
      #contact-page .contents .form dd .radio:before {
        -webkit-transition: opacity 0.2s linear;
        transition: opacity 0.2s linear;
        left: 21px;
        margin-top: -4px;
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background-color: #9C8175; }
      #contact-page .contents .form dd .radio:after {
        border-radius: 100%; }
      #contact-page .contents .form dd .checkbox:before {
        -webkit-transition: opacity 0.2s linear;
        transition: opacity 0.2s linear;
        position: absolute;
        top: 50%;
        left: 21px;
        display: block;
        margin-top: -7px;
        width: 7px;
        height: 11px;
        border-right: 3px solid #9C8175;
        border-bottom: 3px solid #9C8175;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg); }
      #contact-page .contents .form dd ol {
        zoom: 1; }
        #contact-page .contents .form dd ol:before, #contact-page .contents .form dd ol:after {
          content: "";
          display: table;
          height: 0;
          visibility: hidden; }
        #contact-page .contents .form dd ol:after {
          clear: both; }
      #contact-page .contents .form dd li {
        float: left;
        width: 50%;
        padding: 5px 10px 5px 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box; }
        @media screen and (max-width: 959px) {
          #contact-page .contents .form dd li {
            float: none;
            width: auto;
            padding: 0 0 10px 0; }
            #contact-page .contents .form dd li:last-child {
              padding-bottom: 0; } }
        #contact-page .contents .form dd li input {
          margin-right: 5px;
          padding: 0;
          border: none;
          background: none; }
  #contact-page .contents #button, #contact-page .contents .mfp_buttons {
    text-align: center; }
    @media screen and (min-width: 960px) {
      #contact-page .contents #button, #contact-page .contents .mfp_buttons {
        margin: 50px 180px 0; } }
    @media screen and (max-width: 959px) {
      #contact-page .contents #button, #contact-page .contents .mfp_buttons {
        margin-top: 50px; } }
    @media screen and (max-width: 767px) {
      #contact-page .contents #button, #contact-page .contents .mfp_buttons {
        margin-top: 0; } }
    #contact-page .contents #button li, #contact-page .contents .mfp_buttons li {
      width: 45%; }
      @media screen and (max-width: 767px) {
        #contact-page .contents #button li, #contact-page .contents .mfp_buttons li {
          float: none;
          width: 100%;
          margin-top: 30px; } }
    #contact-page .contents #button button, #contact-page .contents .mfp_buttons button {
      display: block;
      width: 100%;
      height: 60px;
      margin: 0;
      padding: 0;
      border: none;
      background: #9C8175;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      border-radius: 6px;
      cursor: pointer;
      color: #fff;
      font-size: 16px;
      text-align: center; }
      #contact-page .contents #button button:hover, #contact-page .contents .mfp_buttons button:hover {
        opacity: 0.8; }
  #contact-page .contents .mfp_buttons {
    padding: 0;
    zoom: 1; }
    #contact-page .contents .mfp_buttons:before, #contact-page .contents .mfp_buttons:after {
      content: "";
      display: table;
      height: 0;
      visibility: hidden; }
    #contact-page .contents .mfp_buttons:after {
      clear: both; }
    #contact-page .contents .mfp_buttons button {
      width: 45%; }
      @media screen and (max-width: 767px) {
        #contact-page .contents .mfp_buttons button {
          width: 100%;
          margin-top: 30px; } }
    #contact-page .contents .mfp_buttons #mfp_button_send {
      float: right; }
    #contact-page .contents .mfp_buttons #mfp_button_cancel {
      float: left; }
  #contact-page .contents #mfp_confirm_table dt {
    padding-top: 0; }
  #contact-page .contents .thanks {
    text-align: center; }
    #contact-page .contents .thanks h2, #contact-page .contents .thanks div {
      animation-delay: 0.5s;
      -moz-animation-delay: 0.5s;
      -webkit-animation-delay: 0.5s; }
    #contact-page .contents .thanks p {
      line-height: 2; }
  #contact-page .contents #mfp_phase_confirm h4 {
    font-size: 20px;
    text-align: center; }
    @media screen and (max-width: 767px) {
      #contact-page .contents #mfp_phase_confirm h4 {
        font-size: 18px; } }

/*  error page
========================================================= */
#error-page .pagetitle h1 {
  padding: 0;
  border: none; }
#error-page .contents {
  text-align: center; }
  #error-page .contents h2 span {
    display: block;
    font-size: 11px; }

@media screen and (max-width: 959px) {
  #error-page #pagetitle h1 {
    padding: 0;
    border: none; } }
/*!
*  - v1.3
* Homepage: http://bqworks.com/slider-pro/
* Author: bqworks
* Author URL: http://bqworks.com/
*/
/* Core
--------------------------------------------------*/
.slider-pro {
  position: relative;
  margin: 0 auto;
  -webkit-box-sizing: content-box;
          box-sizing: content-box; }

.sp-slides-container {
  position: relative; }

.sp-mask {
  position: relative;
  overflow: hidden; }

.sp-slides {
  position: relative;
  -webkit-backface-visibility: hidden;
  -webkit-perspective: 1000; }

.sp-slide {
  position: absolute; }

.sp-image-container {
  overflow: hidden; }

.sp-image {
  position: relative;
  display: block;
  border: none; }

.sp-no-js {
  overflow: hidden;
  max-width: 100%; }

/* Thumbnails
--------------------------------------------------*/
.sp-thumbnails-container {
  position: relative;
  overflow: hidden;
  direction: ltr; }

.sp-top-thumbnails,
.sp-bottom-thumbnails {
  left: 0;
  margin: 0 auto; }

.sp-top-thumbnails {
  position: absolute;
  top: 0;
  margin-bottom: 4px; }

.sp-bottom-thumbnails {
  margin-top: 4px; }

.sp-left-thumbnails,
.sp-right-thumbnails {
  position: absolute;
  top: 0; }

.sp-right-thumbnails {
  right: 0;
  margin-left: 4px; }

.sp-left-thumbnails {
  left: 0;
  margin-right: 4px; }

.sp-thumbnails {
  position: relative; }

.sp-thumbnail {
  border: none; }

.sp-thumbnail-container {
  position: relative;
  display: block;
  overflow: hidden;
  float: left;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

.sp-rtl .sp-thumbnail-container {
  float: right; }

/* Horizontal thumbnails
------------------------*/
.sp-top-thumbnails .sp-thumbnail-container,
.sp-bottom-thumbnails .sp-thumbnail-container {
  margin-left: 2px;
  margin-right: 2px; }

.sp-top-thumbnails .sp-thumbnail-container:first-child,
.sp-bottom-thumbnails .sp-thumbnail-container:first-child {
  margin-left: 0; }

.sp-top-thumbnails .sp-thumbnail-container:last-child,
.sp-bottom-thumbnails .sp-thumbnail-container:last-child {
  margin-right: 0; }

/* Vertical thumbnails 
----------------------*/
.sp-left-thumbnails .sp-thumbnail-container,
.sp-right-thumbnails .sp-thumbnail-container {
  margin-top: 2px;
  margin-bottom: 2px; }

.sp-left-thumbnails .sp-thumbnail-container:first-child,
.sp-right-thumbnails .sp-thumbnail-container:first-child {
  margin-top: 0; }

.sp-left-thumbnails .sp-thumbnail-container:last-child,
.sp-right-thumbnails .sp-thumbnail-container:last-child {
  margin-bottom: 0; }

/* Right thumbnails with pointer
--------------------------------*/
.sp-right-thumbnails.sp-has-pointer {
  margin-left: -13px; }

.sp-right-thumbnails.sp-has-pointer .sp-thumbnail {
  position: absolute;
  left: 18px;
  margin-left: 0 !important; }

.sp-right-thumbnails.sp-has-pointer .sp-selected-thumbnail:before {
  content: '';
  position: absolute;
  height: 100%;
  border-left: 5px solid #F00;
  left: 0;
  top: 0;
  margin-left: 13px; }

.sp-right-thumbnails.sp-has-pointer .sp-selected-thumbnail:after {
  content: '';
  position: absolute;
  width: 0;
  height: 0;
  left: 0;
  top: 50%;
  margin-top: -8px;
  border-right: 13px solid #F00;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent; }

/* Left thumbnails with pointer
-------------------------------*/
.sp-left-thumbnails.sp-has-pointer {
  margin-right: -13px; }

.sp-left-thumbnails.sp-has-pointer .sp-thumbnail {
  position: absolute;
  right: 18px; }

.sp-left-thumbnails.sp-has-pointer .sp-selected-thumbnail:before {
  content: '';
  position: absolute;
  height: 100%;
  border-left: 5px solid #F00;
  right: 0;
  top: 0;
  margin-right: 13px; }

.sp-left-thumbnails.sp-has-pointer .sp-selected-thumbnail:after {
  content: '';
  position: absolute;
  width: 0;
  height: 0;
  right: 0;
  top: 50%;
  margin-top: -8px;
  border-left: 13px solid #F00;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent; }

/* Bottom thumbnails with pointer
---------------------------------*/
.sp-bottom-thumbnails.sp-has-pointer {
  margin-top: -13px; }

.sp-bottom-thumbnails.sp-has-pointer .sp-thumbnail {
  position: absolute;
  top: 18px;
  margin-top: 0 !important; }

.sp-bottom-thumbnails.sp-has-pointer .sp-selected-thumbnail:before {
  content: '';
  position: absolute;
  width: 100%;
  border-bottom: 5px solid #F00;
  top: 0;
  margin-top: 13px; }

.sp-bottom-thumbnails.sp-has-pointer .sp-selected-thumbnail:after {
  content: '';
  position: absolute;
  width: 0;
  height: 0;
  left: 50%;
  top: 0;
  margin-left: -8px;
  border-bottom: 13px solid #F00;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent; }

/* Top thumbnails with pointer
------------------------------*/
.sp-top-thumbnails.sp-has-pointer {
  margin-bottom: -13px; }

.sp-top-thumbnails.sp-has-pointer .sp-thumbnail {
  position: absolute;
  bottom: 18px; }

.sp-top-thumbnails.sp-has-pointer .sp-selected-thumbnail:before {
  content: '';
  position: absolute;
  width: 100%;
  border-bottom: 5px solid #F00;
  bottom: 0;
  margin-bottom: 13px; }

.sp-top-thumbnails.sp-has-pointer .sp-selected-thumbnail:after {
  content: '';
  position: absolute;
  width: 0;
  height: 0;
  left: 50%;
  bottom: 0;
  margin-left: -8px;
  border-top: 13px solid #F00;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent; }

/* Layers
--------------------------------------------------*/
.sp-layer {
  position: absolute;
  margin: 0;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -webkit-font-smoothing: subpixel-antialiased;
  -webkit-backface-visibility: hidden; }

.sp-black {
  color: #FFF;
  background: black;
  background: rgba(0, 0, 0, 0.7); }

.sp-white {
  color: #000;
  background: white;
  background: rgba(255, 255, 255, 0.7); }

.sp-rounded {
  border-radius: 10px; }

.sp-padding {
  padding: 10px; }

/* Touch Swipe
--------------------------------------------------*/
/*
.sp-grab {
	cursor: url(images/openhand.cur), move;
}

.sp-grabbing {
	cursor: url(images/closedhand.cur), move;
}

.sp-selectable {
	cursor: default;
}
*/
/* Caption
--------------------------------------------------*/
.sp-caption-container {
  text-align: center;
  margin-top: 10px; }

/* Full Screen
--------------------------------------------------*/
.sp-full-screen {
  margin: 0 !important;
  background-color: #000; }

.sp-full-screen-button {
  position: absolute;
  top: 5px;
  right: 10px;
  font-size: 30px;
  line-height: 1;
  cursor: pointer;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg); }

.sp-full-screen-button:before {
  content: '\2195'; }

.sp-fade-full-screen {
  opacity: 0;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s; }

.slider-pro:hover .sp-fade-full-screen {
  opacity: 1; }

/* Buttons
--------------------------------------------------*/
.sp-buttons {
  position: relative;
  width: 100%;
  text-align: center;
  padding-top: 10px; }

.sp-rtl .sp-buttons {
  direction: rtl; }

.sp-full-screen .sp-buttons {
  display: none; }

.sp-button {
  width: 10px;
  height: 10px;
  border: 2px solid #000;
  border-radius: 50%;
  margin: 4px;
  display: inline-block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  cursor: pointer; }

.sp-selected-button {
  background-color: #000; }

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .sp-button {
    width: 14px;
    height: 14px; } }
@media only screen and (min-width: 568px) and (max-width: 768px) {
  .sp-button {
    width: 16px;
    height: 16px; } }
@media only screen and (min-width: 320px) and (max-width: 568px) {
  .sp-button {
    width: 18px;
    height: 18px; } }
/* Arrows
--------------------------------------------------*/
.sp-fade-arrows {
  opacity: 0;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s; }

.sp-slides-container:hover .sp-fade-arrows {
  opacity: 1; }

.sp-arrow {
  position: absolute;
  top: 50%;
  margin-top: -40px;
  display: block;
  width: 80px;
  height: 80px;
  cursor: pointer;
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'fonts' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.sp-arrow:before {
  content: "\e900";
  position: absolute;
  top: 0;
  left: 0;
  border: 10px solid #f8f8f8;
  background: #f8f8f8;
  border-radius: 100%;
  color: #9C8175;
  font-size: 60px;
  line-height: 1; }

.sp-next-arrow {
  right: 50%;
  margin-right: -380px; }

.sp-previous-arrow {
  left: 50%;
  margin-left: -380px; }

.sp-previous-arrow:before {
  transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -webkit-transform: rotate(180deg); }

/* Thumbnail Arrows
--------------------------------------------------*/
.sp-thumbnail-arrows {
  position: absolute; }

.sp-fade-thumbnail-arrows {
  opacity: 0;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s; }

.sp-thumbnails-container:hover .sp-fade-thumbnail-arrows {
  opacity: 1; }

.sp-top-thumbnails .sp-thumbnail-arrows,
.sp-bottom-thumbnails .sp-thumbnail-arrows {
  width: 100%;
  top: 50%;
  left: 0;
  margin-top: -12px; }

.sp-left-thumbnails .sp-thumbnail-arrows,
.sp-right-thumbnails .sp-thumbnail-arrows {
  height: 100%;
  top: 0;
  left: 50%;
  margin-left: -7px; }

.sp-thumbnail-arrow {
  position: absolute;
  display: block;
  width: 15px;
  height: 25px;
  cursor: pointer; }

.sp-left-thumbnails .sp-thumbnail-arrows .sp-thumbnail-arrow,
.sp-right-thumbnails .sp-thumbnail-arrows .sp-thumbnail-arrow {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg); }

.sp-top-thumbnails .sp-previous-thumbnail-arrow,
.sp-bottom-thumbnails .sp-previous-thumbnail-arrow {
  left: 0px; }

.sp-top-thumbnails .sp-next-thumbnail-arrow,
.sp-bottom-thumbnails .sp-next-thumbnail-arrow {
  right: 0px; }

.sp-left-thumbnails .sp-previous-thumbnail-arrow,
.sp-right-thumbnails .sp-previous-thumbnail-arrow {
  top: 0px; }

.sp-left-thumbnails .sp-next-thumbnail-arrow,
.sp-right-thumbnails .sp-next-thumbnail-arrow {
  bottom: 0px; }

.sp-previous-thumbnail-arrow:before,
.sp-previous-thumbnail-arrow:after,
.sp-next-thumbnail-arrow:before,
.sp-next-thumbnail-arrow:after {
  content: '';
  position: absolute;
  width: 50%;
  height: 50%;
  background-color: #FFF; }

.sp-previous-thumbnail-arrow:before {
  left: 30%;
  top: 0;
  -webkit-transform: skew(145deg, 0deg);
  transform: skew(145deg, 0deg); }

.sp-previous-thumbnail-arrow:after {
  left: 30%;
  top: 50%;
  -webkit-transform: skew(-145deg, 0deg);
  transform: skew(-145deg, 0deg); }

.sp-next-thumbnail-arrow:before {
  right: 30%;
  top: 0;
  -webkit-transform: skew(35deg, 0deg);
  transform: skew(35deg, 0deg); }

.sp-next-thumbnail-arrow:after {
  right: 30%;
  top: 50%;
  -webkit-transform: skew(-35deg, 0deg);
  transform: skew(-35deg, 0deg); }

.ie8 .sp-thumbnail-arrow,
.ie7 .sp-thumbnail-arrow {
  width: 0;
  height: 0; }

.ie8 .sp-thumbnail-arrow:before,
.ie8 .sp-thumbnail-arrow:after,
.ie7 .sp-thumbnail-arrow:before,
.ie7 .sp-thumbnail-arrow:after {
  content: none; }

.ie8 .sp-top-thumbnails .sp-previous-thumbnail-arrow,
.ie8 .sp-bottom-thumbnails .sp-previous-thumbnail-arrow,
.ie7 .sp-top-thumbnails .sp-previous-thumbnail-arrow,
.ie7 .sp-bottom-thumbnails .sp-previous-thumbnail-arrow {
  border-right: 12px solid #FFF;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent; }

.ie8 .sp-top-thumbnails .sp-next-thumbnail-arrow,
.ie8 .sp-bottom-thumbnails .sp-next-thumbnail-arrow,
.ie7 .sp-top-thumbnails .sp-next-thumbnail-arrow,
.ie7 .sp-bottom-thumbnails .sp-next-thumbnail-arrow {
  border-left: 12px solid #FFF;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent; }

.ie8 .sp-left-thumbnails .sp-previous-thumbnail-arrow,
.ie8 .sp-right-thumbnails .sp-previous-thumbnail-arrow,
.ie7 .sp-left-thumbnails .sp-previous-thumbnail-arrow,
.ie7 .sp-right-thumbnails .sp-previous-thumbnail-arrow {
  border-bottom: 12px solid #FFF;
  border-left: 12px solid transparent;
  border-right: 12px solid transparent; }

.ie8 .sp-left-thumbnails .sp-next-thumbnail-arrow,
.ie8 .sp-right-thumbnails .sp-next-thumbnail-arrow,
.ie7 .sp-left-thumbnails .sp-next-thumbnail-arrow,
.ie7 .sp-right-thumbnails .sp-next-thumbnail-arrow {
  border-top: 12px solid #FFF;
  border-left: 12px solid transparent;
  border-right: 12px solid transparent; }

/* Video
--------------------------------------------------*/
a.sp-video {
  text-decoration: none; }

a.sp-video img {
  -webkit-backface-visibility: hidden;
  border: none; }

a.sp-video:after {
  content: '\25B6';
  position: absolute;
  width: 45px;
  padding-left: 5px;
  height: 50px;
  border: 2px solid #FFF;
  text-align: center;
  font-size: 30px;
  border-radius: 30px;
  top: 0;
  color: #FFF;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(0, 0, 0, 0.2);
  margin: auto;
  line-height: 52px; }

/* CSS for preventing styling issues in WordPress
--------------------------------------------------*/
.slider-pro img.sp-image,
.slider-pro img.sp-thumbnail {
  max-width: none;
  max-height: none;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  -webkit-box-shadow: none !important;
  -mox-box-shadow: none !important;
  box-shadow: none !important;
  transition: none;
  -moz-transition: none;
  -webkit-transition: none;
  -o-transition: none; }

.slider-pro a {
  position: static;
  transition: none !important;
  -moz-transition: none !important;
  -webkit-transition: none !important;
  -o-transition: none !important; }

.slider-pro iframe,
.slider-pro object,
.slider-pro video,
.slider-pro embed,
.slider-pro canvas {
  max-width: none;
  max-height: none; }

.slider-pro p.sp-layer {
  font-size: 14px;
  line-height: 1.4;
  margin: 0; }

.slider-pro h1.sp-layer {
  font-size: 32px;
  line-height: 1.4;
  margin: 0; }

.slider-pro h2.sp-layer {
  font-size: 24px;
  line-height: 1.4;
  margin: 0; }

.slider-pro h3.sp-layer {
  font-size: 19px;
  line-height: 1.4;
  margin: 0; }

.slider-pro h4.sp-layer {
  font-size: 16px;
  line-height: 1.4;
  margin: 0; }

.slider-pro h5.sp-layer {
  font-size: 13px;
  line-height: 1.4;
  margin: 0; }

.slider-pro h6.sp-layer {
  font-size: 11px;
  line-height: 1.4;
  margin: 0; }

.slider-pro img.sp-layer {
  border: none; }

@media print {
  * html body {
    zoom: .7; } }

/*# sourceMappingURL=style.css.map */

#works-page img.slick-slide {
  aspect-ratio: 3 / 2;
  -o-object-fit: cover;
     object-fit: cover;
}