@charset "UTF-8";
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: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

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

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

q, blockquote {
  quotes: none;
}

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

a img {
  border: none;
}

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

.mod-listed-block-a .title {
  overflow: hidden;
  white-space: nowrap;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
}

.ex-sans-serif-en {
  font-family: Verdana, Geneva, sans-serif;
}

.ex-serif-en {
  font-family: Perpetua, "Times New Roman", Times, serif;
}

html {
  height: 100%;
}

body {
  height: 100%;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: small;
  line-height: 1.6;
  color: #8c8c8c;
  background: #fff;
}

img {
  vertical-align: bottom;
}

a {
  color: #39c;
  outline: none;
  text-decoration: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

a:hover, a:active {
  text-decoration: underline;
}

.available-break-3,
.available-break-4 {
  display: none;
}

@media screen and (max-width: 800px) {
  .available-break-3 {
    display: block;
  }
}

@media screen and (max-width: 640px) {
  .available-break-4 {
    display: block;
  }
}

.layout-footer {
  overflow: hidden;
  *zoom: 1;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 100;
  width: 100%;
  font-family: Perpetua, "Times New Roman", Times, serif;
  font-size: 131%;
  color: #fff;
  background: #3e3e3e;
}

.layout-footer .inner {
  overflow: hidden;
  *zoom: 1;
  position: relative;
  margin: 0 auto;
  padding: 30px 20px;
  max-width: 1200px;
}

.layout-footer .nav-left ul {
  padding-bottom: 10px;
}

.layout-footer .nav-left ul li {
  text-align: center;
  margin-bottom: 10px;
}

.layout-footer .nav-lang {
  float: left;
  position: relative;
}

.layout-footer .nav-lang ul, .layout-footer .nav-lang li {
  display: inline;
}

.layout-footer .nav-lang ul {
  margin-left: 5px;
}

.layout-footer .nav-lang li {
  margin-right: 5px;
}

.layout-footer .sns {
  float: left;
  right: 20px;
  top: 30px;
  line-height: 23px;
  text-align: right;
}

.layout-footer .sns ul, .layout-footer .sns li {
  display: inline;
}

.layout-footer .sns li {
  margin-left: 12px;
}

.layout-footer a {
  color: #cfcfcf;
  text-decoration: none;
}

.layout-footer a.is-non-active {
  color: #808080;
}

.layout-footer a:hover, .layout-footer a:active {
  color: #fff;
}

@media screen and (min-width: 640px) {
  .layout-footer .nav-left {
    float: left;
  }
  .layout-footer .nav-left ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: left;
        -ms-flex-pack: left;
            justify-content: left;
    padding-bottom: 0px;
  }
  .layout-footer .nav-left li {
    font-size: 0.8em;
    margin-right: 30px !important;
    margin-left: 0px !important;
    margin-bottom: 0px !important;
  }
  .layout-footer .nav-right {
    float: right;
  }
}

.layout-side {
  position: relative;
  z-index: 100;
  float: left;
  padding-top: 65px;
  width: 210px;
}

.layout-side .inner {
  left: inherit;
  top: inherit;
  width: 205px;
}

.layout-side .logo {
  margin: 0 auto 20px;
  width: 135px;
}

.layout-side .logo img {
  width: 100%;
}

.layout-side .menu-toggle {
  display: none;
}

.layout-nav {
  position: relative;
  height: 339px;
  /* 20140430追加 */
}

.layout-nav .main-nav {
  position: relative;
  left: 0px;
  top: 5px;
  z-index: 50;
  padding: 16px 0;
  /*border-width: 1px 2px 2px 1px;
        border-color: $color-3;
        border-style: solid;
        background-color: $color-bg-1;*/
}

.layout-nav .main-nav > li {
  padding: 25px 17px;
  text-align: center;
  background: url("/img/nav-line-dotted.png") 50% 0 no-repeat;
}

.layout-nav .main-nav > li:first-child {
  background-image: none;
}

.layout-nav .main-nav > li > a {
  display: block;
}

.layout-nav .main-nav > li > a span {
  display: block;
  overflow: hidden;
  height: 34px;
  text-indent: -200%;
  background-position: 50% 50%;
  background-repeat: no-repeat;
}

.layout-nav .main-nav > li.nav-about span {
  background-image: url("/img/nav-about.gif");
}

.layout-nav .main-nav > li.nav-menu span {
  background-image: url("/img/nav-menu.png");
}

.layout-nav .main-nav > li.nav-gift span {
  background-image: url("/img/nav-gift.gif");
}

.layout-nav .main-nav > li.nav-staff span {
  background-image: url("/img/nav-staff.png");
}

.layout-nav .main-nav > li.nav-salon span {
  background-image: url("/img/nav-salon.gif");
}

.layout-nav .main-nav > li.nav-information span {
  background-image: url("/img/nav-information.gif");
}

.layout-nav .main-nav > li.nav-history span {
  background-image: url("/img/nav-history.png");
}

.layout-nav .main-nav > li.nav-reservation span {
  background-image: url("/img/nav-reservation.gif");
}

.layout-nav .main-nav > li.nav-access span {
  background-image: url("/img/nav-access.gif");
}

.layout-nav .sub-nav {
  display: none;
  position: absolute;
  left: 200px;
  z-index: 60;
}

.no-opacity .layout-nav .sub-nav {
  *left: 185px;
  width: 242px;
}

.layout-nav .sub-nav ul {
  position: relative;
  left: 20px;
  width: 213px;
  border: 4px rgba(255, 255, 255, 0.8) solid;
}

.layout-nav .sub-nav li {
  border-top: 1px rgba(184, 184, 184, 0.8) solid;
  text-align: left;
}

.layout-nav .sub-nav li:first-child {
  border-top: none;
}

.layout-nav .sub-nav li a {
  display: block;
  padding: 15px;
  background: rgba(125, 125, 125, 0.8);
}

.layout-nav .sub-nav li a:hover {
  background: rgba(125, 125, 125, 0.6);
}

.layout-nav .nav-about .sub-nav {
  top: -1px;
}

.layout-nav .nav-information .sub-nav {
  top: 178px;
}

.opacity .layout-nav .main-nav > li > a {
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.opacity .layout-nav .main-nav > li > a:hover, .opacity .layout-nav .main-nav > li > a:active {
  opacity: 0.5;
  filter: alpha(opacity=50);
}

.no-rgba .layout-nav .sub-nav ul {
  border: 4px #fff solid;
}

.no-rgba .layout-nav .sub-nav li {
  border-top: 1px #ccc solid;
}

.no-rgba .layout-nav .sub-nav li a {
  background: url("/img/nav-bg-sub.png") 0 0 repeat;
}

.no-rgba .layout-nav .sub-nav li a:hover {
  background-image: url("/img/nav-bg-sub-on.png");
}

.layout-nav .has-sub > a {
  background: url("/img/nav-arrow-right.png") 98% 50% no-repeat;
}

.layout-nav .is-sub-shown > a {
  background-image: url("/img/nav-arrow-left.png");
}

.layout-nav .extra-nav {
  text-align: center;
  border-top: 1px solid #5d4f2e;
  border-bottom: 1px solid #5d4f2e;
  width: 157px;
  margin: 6px auto 0;
  padding: 25px 0 0 0;
}

.layout-nav .extra-nav a {
  margin-bottom: 25px;
  display: block;
}

.opacity .layout-nav .extra-nav > a {
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.opacity .layout-nav .extra-nav > a:hover, .opacity .layout-nav .extra-nav > a:active {
  opacity: 0.7;
  filter: alpha(opacity=70);
}

.layout-nav-deco {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 203px;
  height: 100%;
}

.layout-nav-deco .deco_inner {
  width: 203px;
  height: 100%;
  background-image: url("/img/nav-bg.gif");
  background-repeat: repeat-y;
}

/*
.layout-nav-deco-1 {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 48;
    width: 206px;
    height: 372px;
    border: 2px $color-3 solid;
}

.layout-nav-deco-2 {
    position: absolute;
    top: 5px;
    left: 5px;
    z-index: 49;
    width: 207px;
    height: 373px;
    border: 1px $color-3 solid;
}
*/
.layout-vail {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1000;
  width: 100%;
  height: 100%;
  background: #fff;
}

.layout-vail.legacySide {
  height: 230px;
}

.layout-vail.legacyFooter {
  height: 125px;
}

.layout-container {
  overflow: hidden;
  *zoom: 1;
  position: relative;
  padding: 0 65px 0 20px;
  min-height: 100%;
  visibility: hidden;
  background-image: url("/img/container_bg.jpg");
  background-repeat: no-repeat;
  background-position: center 188px;
  background-attachment: fixed;
}

.layout-container-inner {
  margin: 0 auto;
  max-width: 1200px;
  position: relative;
}

.no-mediaqueries .layout-container-inner {
  min-width: 960px;
}

.layout-main {
  position: relative;
  z-index: 90;
  margin-left: 280px;
  padding: 60px 0 125px;
  min-height: 800px;
}

.layout-main-inner {
  padding-right: 45px;
}

.layout-section {
  margin: 50px 0;
}

.layout-section-narrow {
  margin: 50px 0;
  max-width: 726px;
  min-width: 480px;
}

.layout-section-very-narrow {
  margin: 50px 0;
  width: 480px;
}

@media screen and (max-width: 640px) {
  .layout-section {
    margin-top: 15px;
  }
  .layout-section-narrow {
    min-width: 0;
  }
  .layout-section-very-narrow {
    margin-top: 15px;
    width: auto;
    padding-bottom: 90px;
  }
}

.layout-overlay {
  display: none;
  position: absolute;
  z-index: 500;
  left: 0;
  top: 0;
  width: 100%;
  min-height: 100%;
  background: #fff url("/img/overlay-bg.gif") 50% 0 no-repeat;
  background-attachment: fixed;
  overflow: auto;
}

.layout-overlay > .inner {
  padding: 90px 45px;
}

.layout-overlay .close {
  position: fixed;
  left: 0;
  top: 45px;
  z-index: 505;
  width: 100%;
  height: 41px;
}

.layout-overlay .close .inner {
  margin: 0 auto;
  max-width: 935px;
  height: 41px;
  text-align: right;
}

.layout-overlay .close img {
  cursor: pointer;
}

.layout-overlay-article {
  position: relative;
  z-index: 510;
  margin: 0 auto;
  padding: 70px 60px;
  max-width: 725px;
  color: #b99d5b;
  background: #fff;
}

.layout-overlay-article.thin {
  padding: 40px 30px;
}

.layout-overlay-article.zero-width {
  padding: 0px;
}

.layout-overlay-article .date {
  margin-bottom: 25px;
  font-style: italic;
  line-height: 1;
}

.layout-overlay-article .new {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  margin-right: 10px;
  padding: 4px 6px;
  font-family: Baskerville, serif;
  font-style: normal;
  border: 1px #b99d5b solid;
}

.layout-overlay-article .title {
  margin-bottom: 35px;
  padding: 20px;
  border: 1px #b99d5b solid;
  font-size: 138.5%;
  font-weight: bold;
}

.layout-overlay-article .title span {
  display: block;
  font-size: 72.2%;
}

.layout-overlay-article .image {
  margin-bottom: 35px;
  text-align: center;
}

.layout-overlay-article .image > img {
  width: 100%;
  height: auto;
}

.layout-overlay-article .text {
  font-size: 108%;
  line-height: 2.4;
  color: #666;
}

.layout-overlay-article .text > p {
  margin-bottom: 2em;
  text-indent: 1em;
}

.layout-overlay-article .caption {
  padding: 20px 0 0 0;
  color: #575757;
}

.layout-overlay-article .youtube-box {
  display: block;
  width: 725px;
  height: 441px;
  cursor: pointer;
  overflow: hidden;
}

.layout-overlay-article .movie-placeholder {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

@media screen and (max-width: 800px) {
  .layout-overlay {
    padding: 0;
  }
  .layout-overlay > .inner {
    padding: 0;
  }
  .layout-overlay .close {
    position: static;
    height: 0;
  }
  .layout-overlay .close img {
    position: fixed;
    right: 10px;
    top: 20px;
    z-index: 520;
    cursor: pointer;
  }
}

.layout-overlay-original-contents {
  display: none;
}

.open-overlay {
  cursor: pointer;
}

@media screen and (max-width: 800px) {
  .layout-container {
    padding: 0;
    background-image: none;
  }
  .layout-main,
  .layout-side {
    float: none;
  }
  .layout-main {
    margin-left: 0;
    padding: 30px 20px 60px 20px;
    min-height: auto;
  }
  .layout-main-inner {
    padding-right: 0;
  }
  .layout-section {
    margin-bottom: 0;
  }
  .layout-side {
    padding-top: 0;
    width: 100%;
  }
  .layout-side .inner {
    position: static;
    width: 100%;
  }
  .layout-side .logo {
    position: relative;
    z-index: 45;
    margin: 0;
    padding: 30px 0;
    width: 100%;
    text-align: center;
    background-color: #000;
  }
  .layout-side .logo img {
    width: 219px;
  }
  .layout-side .menu-toggle {
    position: absolute;
    display: block;
    right: 20px;
    top: 28px;
    z-index: 50;
    width: 40px;
    height: 40px;
    cursor: pointer;
  }
  .layout-nav {
    position: absolute;
    left: 0;
    top: -1000px;
    z-index: 43;
    width: 100%;
  }
  .layout-nav.is-shown {
    top: 101px;
  }
  .layout-nav .main-nav {
    position: static;
    padding: 0;
    border: none;
    border-bottom: 1px #666 solid;
    background: #000;
  }
  .layout-nav .main-nav > li {
    border-top: 1px #666 solid;
    background: none;
    padding: 0;
  }
  .layout-nav .main-nav > li > a span {
    height: 40px;
    padding: 20px 0 15px 0;
    background-size: auto 40px;
  }
  .layout-nav .main-nav > li.nav-about span {
    background-image: url("/img/nav-about-sd.png");
  }
  .layout-nav .main-nav > li.nav-menu span {
    background-image: url("/img/nav-menu-sd.png");
  }
  .layout-nav .main-nav > li.nav-gift span {
    background-image: url("/img/nav-gift-sd.png");
  }
  .layout-nav .main-nav > li.nav-staff span {
    background-image: url("/img/nav-staff-sd.png");
  }
  .layout-nav .main-nav > li.nav-salon span {
    background-image: url("/img/nav-salon-sd.png");
  }
  .layout-nav .main-nav > li.nav-information span {
    background-image: url("/img/nav-information-sd.png");
  }
  .layout-nav .main-nav > li.nav-history span {
    background-image: url("/img/nav-history-sd.png");
  }
  .layout-nav .main-nav > li.nav-reservation span {
    background-image: url("/img/nav-reservation-sd.png");
  }
  .layout-nav .main-nav > li.nav-access span {
    background-image: url("/img/nav-access-sd.png");
  }
  .layout-nav .has-sub {
    padding: 0;
  }
  .layout-nav .has-sub a {
    background: none;
  }
  .layout-nav .sub-nav {
    display: block;
    position: relative;
    left: 0;
  }
  .layout-nav .sub-nav ul {
    border: none;
    left: 0;
    width: auto;
  }
  .layout-nav .sub-nav li {
    border-top: 1px #666 solid;
    background: none;
    padding: 19px 0 15px 0;
    background-color: #232323;
  }
  .layout-nav .sub-nav li:first-child {
    border-top: 1px #666 solid;
  }
  .layout-nav .sub-nav li a {
    -webkit-transition: opacity 0.3s ease;
    -o-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
    padding: 0;
    display: block;
    background: none;
    height: 35px;
    background-size: auto 35px;
    background-position: 50% 50%;
    background-repeat: no-repeat;
  }
  .layout-nav .sub-nav li a:hover {
    opacity: 0.5;
    filter: alpha(opacity=50);
    background-size: auto 35px;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-color: transparent;
  }
  .layout-nav .sub-nav li a.nav-staff {
    background-image: url("/img/nav-staff-sd.png");
  }
  .layout-nav .sub-nav li a.nav-passion {
    background-image: url("/img/nav-passion-sd.png?20170428");
  }
  .layout-nav .sub-nav li a.nav-interiorart {
    background-image: url("/img/nav-interioart-sd.png");
  }
  .layout-nav .sub-nav img {
    display: none;
  }
  .layout-nav .is-sub-shown {
    display: none;
  }
  .layout-nav .extra-nav {
    width: 100%;
    background-color: #000;
    margin: 0;
    padding: 0;
    border: 0;
  }
  .layout-nav .extra-nav a {
    margin: 0;
    padding: 15px 0 10px 0;
  }
  .layout-nav .extra-nav li:first-child {
    border-bottom: 1px solid #666;
  }
  .layout-nav .extra-nav li a {
    -webkit-transition: opacity 0.3s ease;
    -o-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
    height: 30px;
    background-size: auto 30px;
    background-position: 50% 50%;
    background-repeat: no-repeat;
  }
  .layout-nav .extra-nav li a:hover {
    opacity: 0.5;
    filter: alpha(opacity=50);
    background-size: auto 30px;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-color: transparent;
  }
  .layout-nav .extra-nav li a.nav-forpress {
    background-image: url("/img/nav-forpress-sd.png");
  }
  .layout-nav .extra-nav li a.nav-contactus {
    background-image: url("/img/nav-contactus-sd.png");
  }
  .layout-nav .extra-nav li a.nav-culturelink {
    background-image: url("/img/nav-culturelink-sd.png");
  }
  .layout-nav .extra-nav img {
    display: none;
  }
  .layout-nav-deco .deco_inner {
    display: none;
  }
  /*.layout-nav-deco-1,
    .layout-nav-deco-2 {
        display: none;
    }*/
  .layout-footer {
    position: static;
  }
}

@media screen and (max-width: 640px) {
  .layout-container-inner {
    padding-bottom: 0;
  }
  .layout-side .logo img {
    width: 160px;
  }
  .layout-side .menu-toggle {
    top: 23px;
    right: 14px;
  }
  .layout-nav {
    top: -800px;
  }
  .layout-nav.is-shown {
    top: 90px;
  }
  .layout-nav .main-nav li {
    padding: 0;
  }
  .layout-nav .main-nav li > a span {
    height: 35px;
    background-size: auto 35px;
  }
  .layout-nav .sub-nav li {
    padding: 20px 0 17px 0;
  }
  .layout-nav .sub-nav li a {
    height: 28px;
    background-size: auto 28px;
  }
  .layout-nav .sub-nav li a:hover {
    background-size: auto 28px;
  }
  .layout-footer {
    position: static;
  }
  .layout-footer .nav,
  .layout-footer .nav-lang {
    float: none;
    width: 100%;
    margin-bottom: 15px;
    text-align: center;
  }
  .layout-footer .inner {
    float: none;
  }
  .layout-footer .nav-lang {
    margin-right: 0;
    margin-bottom: 15px;
    font-size: 147%;
  }
  .layout-footer .sns,
  .layout-footer .logo-shiseido,
  .layout-footer .copyright {
    position: static;
  }
  .layout-footer .sns {
    margin-bottom: 18px;
    width: 100%;
    text-align: center;
  }
  .layout-footer .logo-shiseido {
    display: block;
    margin: 0 auto 15px;
  }
  .layout-footer .copyright {
    display: block;
    margin: 0 auto;
    text-align: center;
  }
}

.btn {
  font-size: 9px;
  font-size: 0.75rem;
  border: 1px solid #c1c1c1;
  display: block;
  min-height: 32px;
  line-height: 32px;
  text-align: center;
}

.btn--primary {
  font-family: Perpetua, "Times New Roman", Times, serif;
  font-size: 14px;
  font-size: 1.16667rem;
  display: block;
  background: #b99d5b url("/img/nav-arrow-right-l.png") no-repeat 94% 50%;
  border-color: #b99d5b;
  color: #fff;
}

.btn--primary:hover {
  background: #c8b27f url("/img/nav-arrow-right-l.png") no-repeat 94% 50%;
  text-decoration: none;
  -webkit-transition: .5s;
  -o-transition: .5s;
  transition: .5s;
}

.btn--link {
  font-family: Perpetua, "Times New Roman", Times, serif;
  font-size: 13px;
  font-size: 1.08333rem;
  line-height: 1em;
  min-height: 1em;
  display: inline-block;
  padding: 11px 50px 8px;
  background-color: #b99d5b;
  border-color: #b99d5b;
  color: #fff !important;
  -webkit-transition: .5s;
  -o-transition: .5s;
  transition: .5s;
}

.btn--link:before {
  content: '';
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-right: 6px;
  background-image: url("/img/ico/ico_link.png");
  background-repeat: no-repeat;
  background-size: contain;
}

.btn--link:hover {
  background-color: #c8b27f;
  text-decoration: none;
}

.btn-more {
  color: #b99d5b;
  text-decoration: none;
  background: url("/img/nav-arrow-bottom.png") no-repeat 100% 50%;
  padding-right: 15px;
  cursor: pointer;
}

.btn-more.is-open {
  background: url("/img/nav-arrow-top.png") no-repeat 100% 50%;
}

.headline {
  border-bottom: 1px solid #b99d5b;
  text-align: center;
  margin-bottom: 60px;
  padding-bottom: 30px;
}

.headline img {
  margin: 0 auto;
}

@media screen and (max-width: 1024px) {
  .headline {
    margin-bottom: 30px;
    padding-bottom: 20px;
  }
}

.mod-main-visual .container {
  position: relative;
  overflow: hidden;
}

.mod-main-visual .container div {
  position: absolute;
  z-index: 50;
  width: 100%;
  opacity: 0;
  filter: alpha(opacity=0);
}

.mod-main-visual .container div.is-active {
  z-index: 51;
}

.mod-main-visual .container div img {
  position: relative;
  z-index: 51;
  width: 100%;
  height: 100%;
}

.mod-main-visual .container div p {
  position: absolute;
  top: 56%;
  left: 0;
  z-index: 52;
  width: 100%;
  text-align: center;
  font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "HGS明朝B", "MS PMincho", serif;
  font-size: 182%;
  color: #000;
}

.mod-main-visual .indicator {
  margin-top: 15px;
  text-align: center;
}

.mod-main-visual .indicator li {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  margin: 0 10px;
  width: 8px;
  height: 8px;
  background: url("/img/indicator.png") 0 -8px no-repeat;
  background-size: cover;
  cursor: pointer;
}

.mod-main-visual .indicator li.is-active {
  background-position: 0 0;
  cursor: default;
}

@media screen and (max-width: 640px) {
  .mod-main-visual .container div p {
    font-size: 116%;
  }
}

.mod-head-a {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  margin-bottom: 30px;
  padding: 14px 95px 14px 10px;
  border: 1px #c5b358 solid;
  background: rgba(255, 255, 255, 0.7);
}

.mod-head-a span {
  padding-left: 9px;
}

.mod-main-title, .mod-main-title-narrow {
  position: relative;
  margin-bottom: 70px;
}

.mod-main-title .title, .mod-main-title-narrow .title {
  position: absolute;
  right: 0;
  top: 0;
  z-index: 100;
  display: inline-block;
  *display: inline;
  *zoom: 1;
  padding: 13% 20px 20px;
  width: 17%;
  background-color: #000;
  text-align: right;
}

.mod-main-title .title > img, .mod-main-title-narrow .title > img {
  max-width: 66%;
}

.mod-main-title .title span, .mod-main-title-narrow .title span {
  display: block;
  margin-top: 13px;
}

.mod-main-title .title span img, .mod-main-title-narrow .title span img {
  max-width: 75%;
}

.mod-main-title .image, .mod-main-title-narrow .image {
  position: relative;
  z-index: 90;
  width: 75.5%;
}

.mod-main-title .image img, .mod-main-title-narrow .image img {
  width: 100%;
}

.mod-main-title .text, .mod-main-title-narrow .text {
  margin-top: 30px;
  font-size: 108%;
  line-height: 1.7;
}

.mod-main-title-narrow {
  max-width: 726px;
}

@media screen and (max-width: 640px) {
  .mod-main-title .title, .mod-main-title-narrow .title {
    padding-left: 8px;
    padding-right: 8px;
    padding-top: 16%;
    width: 26%;
  }
  .mod-main-title .title span, .mod-main-title-narrow .title span {
    margin-top: 5px;
  }
  .mod-main-title .image, .mod-main-title-narrow .image {
    width: 66%;
  }
  .mod-main-title .text, .mod-main-title-narrow .text {
    font-size: 131%;
  }
}

.mod-head-a {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  margin-bottom: 30px;
  padding: 14px 95px 14px 10px;
  border: 1px #c5b358 solid;
}

.mod-head-a span {
  padding-left: 9px;
}

@media screen and (max-width: 640px) {
  .mod-head-a {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    max-width: 100%;
  }
  .mod-head-a span {
    display: block;
    margin-top: 9px;
    padding-left: 0;
  }
}

.mod-head-b {
  margin-bottom: 50px;
}

.mod-head-b > img {
  max-width: 100%;
}

.mod-head-b span {
  padding-left: 12px;
}

@media screen and (max-width: 640px) {
  .mod-head-b {
    margin-bottom: 20px;
    text-align: center;
  }
  .mod-head-b span {
    display: block;
    margin-top: 9px;
    padding-left: 0;
  }
}

.mod-head-c {
  margin-bottom: 25px;
}

.mod-head-c span {
  padding-left: 12px;
}

.mod-head-d {
  margin-bottom: 24px;
  padding-bottom: 10px;
  border-bottom: 1px #b99d5b solid;
}

.mod-head-d span {
  padding-left: 9px;
}

.mod-head-e {
  margin-bottom: 20px;
}

.mod-head-e > img {
  max-width: 100%;
}

.mod-head-f {
  margin-bottom: 30px;
  padding: 14px 12px;
  border: 1px #c5b358 solid;
}

.mod-head-g {
  margin-bottom: 1em;
  font-size: 116%;
  color: #b99d5b;
}

.mod-head-h {
  margin-bottom: 10px;
  padding-bottom: 3px;
  border-bottom: 1px #c8c8c8 solid;
  color: #646464;
}

.mod-head-i {
  margin-bottom: 12px;
}

.mod-head-i .role,
.mod-head-i .name {
  display: block;
}

.mod-head-i .role,
.mod-head-i .name,
.mod-head-i .name-sub {
  color: #b99d5b;
}

.mod-head-i .role {
  margin-bottom: 3px;
  font-size: 108%;
  line-height: 1;
}

.mod-head-i .name {
  font-family: Verdana, Geneva, sans-serif;
  font-size: 131%;
}

.mod-head-i .name-sub {
  margin-top: 2px;
  font-size: 93%;
}

.mod-head-j {
  font-size: 150%;
  text-align: center;
  line-height: 1.4em;
}

.mod-head-j span {
  display: inline-block;
  border-bottom: 1px #646464 solid;
}

.mod-note {
  margin: 30px 0;
  font-size: 93%;
  line-height: 1.6;
  color: #646464;
}

.mod-note-inline {
  margin: 1em 0;
  font-size: 93%;
  line-height: 1.6;
  color: #646464;
}

.mod-btn-a, .mod-btn-d, .mod-btn-e, .mod-btn-g {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  margin-bottom: 10px;
  padding: 10px 10px 8px;
  border: 1px #bebebe solid;
  font-size: 93%;
  line-height: 1;
}

.mod-btn-a a, .mod-btn-d a, .mod-btn-e a, .mod-btn-g a {
  display: block;
  padding-left: 13px;
  color: #8c8c8c;
  background: url("/img/marker-tri-gray.png") 0 40% no-repeat;
}

.mod-btn-a a span, .mod-btn-d a span, .mod-btn-e a span, .mod-btn-g a span {
  color: #39c;
}

.mod-btn-a a:hover span, .mod-btn-d a:hover span, .mod-btn-e a:hover span, .mod-btn-g a:hover span, .mod-btn-a a:active span, .mod-btn-d a:active span, .mod-btn-e a:active span, .mod-btn-g a:active span {
  text-decoration: underline;
}

.mod-btn-b, .mod-btn-f {
  margin-bottom: 10px;
  border: 1px #b99d5b solid;
  font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "HGS明朝B", "MS PMincho", serif;
  line-height: 1;
  text-align: center;
}

.mod-btn-b a, .mod-btn-f a {
  display: block;
  padding: 10px 10px 8px;
  color: #b99d5b;
  text-decoration: none;
}

.mod-btn-b a:hover, .mod-btn-f a:hover, .mod-btn-b a:active, .mod-btn-f a:active {
  color: #c8b27f;
}

.mod-btn-c {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  font-family: Perpetua, "Times New Roman", Times, serif;
  width: 40%;
  border: 1px #b99d5b solid;
  font-size: 131%;
  line-height: 1;
  text-align: center;
}

.mod-btn-c a {
  display: block;
  padding: 8px 0 5px;
}

.mod-btn-d, .mod-btn-e {
  font-size: 85%;
}

.mod-btn-e {
  padding: 15px 40px;
  font-size: 153.9%;
}

.mod-btn-f a {
  color: white;
  font-size: 140%;
  background-color: #b99d5b;
  padding: 12px 10px 10px;
}

.mod-btn-g {
  font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "HGS明朝B", "MS PMincho", serif;
  padding: 10px 15px 10px;
  border: none;
  font-size: 108%;
  background-color: #b99d5b;
}

.mod-btn-g a {
  color: white !important;
  padding-left: 20px;
  line-height: 1.5em;
  background: url("/img/marker-tri-white.png") 0 40% no-repeat;
  text-align: left;
}

.mod-btn-g a:hover, .mod-btn-g a:active {
  opacity: 0.7;
  text-decoration: none;
}

.mod-btn-g a:hover span, .mod-btn-g a:active span {
  text-decoration: none;
}

.mod-btn-horizontal-left, .mod-btn-horizontal-right {
  margin-top: 25px;
}

.mod-btn-horizontal-left {
  text-align: left;
}

.mod-btn-horizontal-left > div {
  margin-right: 20px;
}

.mod-btn-horizontal-right {
  text-align: right;
}

.mod-btn-horizontal-right > div {
  margin-left: 20px;
}

@media screen and (max-width: 640px) {
  .mod-btn-horizontal-left,
  .mod-btn-horizontal-right {
    text-align: center;
  }
  .mod-btn-horizontal-left > div,
  .mod-btn-horizontal-right > div {
    margin: 5px;
  }
}

.mod-table, .mod-table-narrow {
  margin-bottom: 20px;
}

.mod-table th, .mod-table-narrow th, .mod-table td, .mod-table-narrow td {
  padding: 14px 18px 11px;
  border: 1px #8c8c8c solid;
  vertical-align: top;
}

.mod-table th, .mod-table-narrow th {
  width: 14%;
}

.mod-table .align, .mod-table-narrow .align {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  width: 4.5em;
}

.mod-table .align-en, .mod-table-narrow .align-en {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  width: 4em;
}

.mod-table-narrow {
  margin: 0 auto 20px;
  width: 90%;
}

@media screen and (max-width: 1024px) {
  .mod-table th, .mod-table-narrow th {
    width: 23%;
  }
}

@media screen and (max-width: 800px) {
  .mod-table th, .mod-table-narrow th {
    width: 16%;
  }
  .mod-note {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 640px) {
  .mod-table th, .mod-table-narrow th, .mod-table td, .mod-table-narrow td {
    padding: 8px;
  }
  .mod-table th, .mod-table-narrow th {
    width: 28%;
  }
}

.mod-history {
  margin-left: 50px;
  padding-top: 32px;
  background: url("/img/about/history-pict-arrowhead.png") 0 0 no-repeat;
}

.mod-history .inner {
  margin-left: 9px;
  padding-bottom: 38px;
  background: url("/img/about/history-pict-nock.png") 0 100% no-repeat;
}

.mod-history .block {
  background: url("/img/about/history-line-vertical.gif") 0 0 repeat-y;
}

.mod-history .title {
  padding: 25px 0 11px 67px;
  line-height: 1;
  background: url("/img/about/history-line-horizontal.gif") 0 100% no-repeat;
}

.mod-history .title img {
  max-width: 100%;
}

.mod-history .body {
  overflow: hidden;
  *zoom: 1;
  padding: 20px 0 23px 67px;
}

.mod-history .text {
  float: left;
  padding-left: 242px;
  font-size: 93%;
}

.mod-history .logo {
  margin-bottom: 25px;
}

.mod-history .image {
  float: left;
  margin-right: -212px;
  width: 212px;
}

@media screen and (max-width: 640px) {
  .mod-history {
    margin-left: 0;
  }
  .mod-history .title {
    padding-left: 20px;
  }
  .mod-history .body {
    padding-left: 20px;
    text-align: center;
  }
  .mod-history .text {
    float: none;
    padding-left: 0;
    font-size: 123.1%;
    text-align: left;
  }
  .mod-history .logo {
    margin-bottom: 20px;
    text-align: center;
  }
  .mod-history .image {
    float: none;
    margin-bottom: 20px;
    margin-right: 0;
    width: 100%;
  }
}

.mod-list-a {
  text-indent: -1em;
  padding-left: 1em;
}

.flexslider-slider-a {
  position: relative;
  margin: 0 auto 35px;
  padding: 0 15%;
  width: 53%;
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  opacity: 0;
  filter: alpha(opacity=0);
}

.flexslider-slider-a.marginLess {
  margin-bottom: 0;
}

.flexslider-slider-a .slides {
  z-index: 100;
}

.flexslider-slider-a .slides li img {
  width: 100%;
}

.flexslider-slider-a .next,
.flexslider-slider-a .prev {
  position: absolute;
  top: 0;
  width: 36px;
  height: 100%;
  background-image: url("/img/arrow-slider.png");
  background-repeat: no-repeat;
  cursor: pointer;
  opacity: 0.7;
  filter: alpha(opacity=70);
}

.flexslider-slider-a .next.disabled,
.flexslider-slider-a .prev.disabled {
  visibility: hidden;
  cursor: default;
}

.flexslider-slider-a .next:hover,
.flexslider-slider-a .prev:hover {
  opacity: 1;
  filter: alpha(opacity=100);
}

.flexslider-slider-a .next {
  right: 0;
  background-position: 100% 50%;
}

.flexslider-slider-a .prev {
  left: 0;
  background-position: 0 50%;
}

@media screen and (max-width: 640px) {
  .flexslider-slider-a {
    width: 70%;
  }
  .flexslider-slider-a .next {
    right: -10px;
  }
  .flexslider-slider-a .prev {
    left: -10px;
  }
}

.flexslider {
  border: none;
  border-radius: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.wrap {
  width: 93%;
  margin: 0 auto;
}

.wrap img {
  width: 100%;
}

@media screen and (max-width: 800px) {
  .wrap {
    width: 100%;
  }
}

/**
    Table of contents

    - リストブロックA
    - リストブロックB
    - リストブロックC
    - リストブロックD
    - リストブロックE
    - フレームブロックA
    - フレームブロックB
    - 画像ブロック

*/
.mod-listed-block-a {
  overflow: hidden;
  *zoom: 1;
  margin-bottom: 70px;
}

.mod-listed-block-a .block {
  display: inline-block;
  margin-bottom: 40px;
  margin-right: 2%;
  width: 23%;
  *width: 22%;
  vertical-align: top;
}

.mod-listed-block-a .block.child-4 {
  margin-right: 0;
}

.mod-listed-block-a .image {
  margin-bottom: 15px;
}

.mod-listed-block-a .image img {
  width: 100%;
  height: auto;
  background: #fff;
}

.mod-listed-block-a .title {
  color: #b99d5b;
  display: block;
  border-bottom: 1px solid #b99d5b;
  margin-bottom: 10px;
  padding-bottom: 10px;
}

.mod-listed-block-a .text {
  color: #b99d5b;
  border-bottom: 1px solid #b99d5b;
  margin-bottom: 10px;
  padding-bottom: 10px;
  display: none;
}

.mod-listed-block-a .text a {
  color: #b99d5b;
}

.mod-listed-block-a .text a:hover, .mod-listed-block-a .text a:active {
  color: #d0bd91;
  text-decoration: none;
}

@media screen and (max-width: 1200px) {
  .mod-listed-block-a {
    margin-bottom: 0;
  }
  .mod-listed-block-a .block {
    margin-right: 4%;
    width: 30%;
  }
  .mod-listed-block-a .block.child-3 {
    margin-right: 0;
  }
  .mod-listed-block-a .block.child-4 {
    margin-right: 2%;
  }
}

@media screen and (max-width: 640px) {
  .mod-listed-block-a .block {
    float: none;
    margin-right: 0;
    width: 100%;
  }
  .mod-listed-block-a .block:last-child {
    margin-bottom: 0;
  }
  .mod-listed-block-a .title {
    font-size: 131%;
    padding-bottom: 18px;
  }
  .mod-listed-block-a .text {
    font-size: 131%;
  }
  .mod-listed-block-a .btn-more {
    font-size: 131%;
  }
}

.mod-listed-block-b {
  overflow: hidden;
  *zoom: 1;
  margin-bottom: 70px;
}

.mod-listed-block-b .block {
  float: left;
  margin-bottom: 40px;
  margin-right: 4.9%;
  width: 30%;
}

.mod-listed-block-b .block.child-3n {
  margin-right: 0;
}

.mod-listed-block-b .block:last-child {
  margin-bottom: 0;
}

.mod-listed-block-b .image {
  margin-bottom: 17px;
}

.mod-listed-block-b .image img {
  width: 100%;
}

.mod-listed-block-b .text {
  margin-top: 11px;
}

.mod-listed-block-b .role,
.mod-listed-block-b .name,
.mod-listed-block-b .name-sub {
  color: #b99d5b;
}

.mod-listed-block-b .role {
  margin-bottom: 4px;
  font-size: 108%;
}

.mod-listed-block-b .name {
  font-family: Verdana, Geneva, sans-serif;
  font-size: 116%;
}

.mod-listed-block-b .name-sub {
  font-size: 108%;
}

.mod-listed-block-b .text-sub {
  margin-top: 5px;
  font-size: 85%;
}

@media screen and (max-width: 1024px) {
  .mod-listed-block-b {
    margin-bottom: 0;
  }
  .mod-listed-block-b .block {
    margin-right: 2%;
    width: 48%;
  }
  .mod-listed-block-b .block.child-2n {
    margin-right: 0;
  }
  .mod-listed-block-b .block.child-3n {
    margin-right: 2%;
  }
}

@media screen and (max-width: 640px) {
  .mod-listed-block-b .block {
    float: none;
    margin-right: 0;
    width: 100%;
  }
  .mod-listed-block-b .block.child-3n {
    margin-right: 0;
  }
  .mod-listed-block-b .text {
    font-size: 131%;
  }
  .mod-listed-block-b .role {
    margin-bottom: 0;
    font-size: 123.1%;
    line-height: 1.3;
  }
  .mod-listed-block-b .name {
    font-size: 153.9%;
  }
  .mod-listed-block-b .name-sub {
    font-size: 146.5%;
  }
  .mod-listed-block-b .text-sub {
    margin-top: 20px;
    font-size: 108%;
  }
}

.mod-listed-block-c {
  overflow: hidden;
  *zoom: 1;
}

.mod-listed-block-c .block {
  float: left;
  margin-right: 5%;
  margin-bottom: 40px;
  width: 47.5%;
}

.mod-listed-block-c .block.child-2n {
  margin-right: 0;
}

.mod-listed-block-c .text {
  line-height: 2;
  padding-bottom: 18px;
}

.mod-listed-block-c .text span {
  padding-left: 1em;
}

.mod-listed-block-c .text .caution01 {
  font-size: 90%;
}

.mod-listed-block-c .caution02 {
  padding-bottom: 8px;
  font-size: 90%;
  color: #646464;
}

@media screen and (max-width: 640px) {
  .mod-listed-block-c .block {
    float: none;
    margin-right: 0;
    width: 100%;
  }
  .mod-listed-block-c .text {
    font-size: 123.1%;
  }
}

.mod-listed-block-d .block {
  overflow: hidden;
  *zoom: 1;
  margin-bottom: 40px;
}

.mod-listed-block-d .block .image {
  float: left;
  margin-right: -222px;
  width: 222px;
}

.mod-listed-block-d .block .image img {
  width: 100%;
}

.mod-listed-block-d .block .text {
  float: left;
  margin-left: 240px;
  color: #b99d5b;
}

.mod-listed-block-d .block .date {
  margin-bottom: 18px;
  font-size: 85%;
  font-style: italic;
  line-height: 1;
}

.mod-listed-block-d .block .new {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  margin-right: 10px;
  padding: 3px 5px;
  font-family: Baskerville, serif;
  font-style: normal;
  border: 1px #b99d5b solid;
}

.mod-listed-block-d .block .title {
  margin-bottom: 5px;
  font-size: 123.1%;
}

.mod-listed-block-d .block .name {
  font-size: 93%;
}

.mod-listed-block-d .block .body {
  margin-top: 17px;
  font-size: 93%;
}

.mod-listed-block-d .block .body .more {
  padding-left: 1em;
}

.mod-listed-block-d .block .link {
  margin-top: 1em;
}

.mod-listed-block-d .block a {
  color: #b99d5b;
}

.mod-listed-block-d.type-a .block .text {
  color: #8c8c8c;
}

.mod-listed-block-d.type-a .block .title {
  color: #b99d5b;
}

.mod-listed-block-d.type-b .block .body {
  color: #666;
}

.mod-listed-block-d.type-b .block .body a {
  color: #666;
}

@media screen and (max-width: 640px) {
  .mod-listed-block-d .block .image,
  .mod-listed-block-d .block .text {
    float: none;
  }
  .mod-listed-block-d .block .image {
    margin-right: 0;
    margin-bottom: 18px;
    width: 100%;
  }
  .mod-listed-block-d .block .text {
    margin-left: 0;
  }
  .mod-listed-block-d .block .text .date {
    font-size: 116%;
  }
  .mod-listed-block-d .block .text .title {
    font-size: 153.9%;
  }
  .mod-listed-block-d .block .text .name {
    font-size: 123.1%;
  }
  .mod-listed-block-d .block .text .body {
    font-size: 123.1%;
  }
}

.mod-listed-block-e {
  overflow: hidden;
  *zoom: 1;
}

.mod-listed-block-e .block {
  float: left;
  margin-right: 1.2%;
  margin-bottom: 10px;
  width: 32.5%;
  text-align: center;
  color: #b99d5b;
}

.mod-listed-block-e .block.child-3n {
  margin-right: 0;
}

.mod-listed-block-e .inner {
  padding: 30px 10px;
  border-width: 1px 0 0 1px;
  border-color: #b99d5b;
  border-style: solid;
}

.mod-listed-block-e .title {
  font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "HGS明朝B", "MS PMincho", serif;
  margin-bottom: 14px;
  font-size: 123.1%;
  color: #666;
  line-height: 22px;
}

.mod-listed-block-e .title .ldquo,
.mod-listed-block-e .title .bdquo {
  font-size: 150%;
  font-family: Perpetua, "Times New Roman", Times, serif;
}

.mod-listed-block-e .title .ldquo {
  padding-right: .2em;
}

.mod-listed-block-e .title .bdquo {
  padding-left: .2em;
}

.mod-listed-block-e .name {
  margin-bottom: 5px;
  font-size: 116%;
  font-weight: bold;
}

.mod-listed-block-e .role {
  font-size: 93%;
}

.mod-listed-block-e .name-sub {
  font-family: Perpetua, "Times New Roman", Times, serif;
  font-size: 138.5%;
}

.mod-listed-block-e .body {
  margin-bottom: 10px;
}

.mod-listed-block-e .btn a {
  color: #b99d5b;
}

@media screen and (max-width: 1024px) {
  .mod-listed-block-e .block {
    margin-right: 1.5%;
    width: 49.25%;
  }
  .mod-listed-block-e .block.child-2n {
    margin-right: 0 !important;
  }
  .mod-listed-block-e .block.child-3n {
    margin-right: 1.5%;
  }
  .mod-listed-block-e .inner {
    padding: 10px 0;
  }
  .mod-listed-block-e .title {
    font-size: 108%;
  }
  .mod-listed-block-e .title .ldquo,
  .mod-listed-block-e .title .bdquo {
    font-size: 128.5%;
  }
  .mod-listed-block-e .name {
    font-size: 93%;
  }
  .mod-listed-block-e .role {
    margin-bottom: 5px;
    font-size: 85%;
  }
  .mod-listed-block-e .name-sub {
    font-size: 116%;
  }
}

@media screen and (max-width: 640px) {
  .mod-listed-block-e .block {
    margin-right: 0;
    width: 100%;
  }
  .mod-listed-block-e .block.child-3n {
    margin-right: 0 !important;
  }
}

.mod-framed-block-a {
  padding: 40px 30px;
  text-align: center;
  background: #f5f0e7;
}

.mod-framed-block-a .title {
  margin-bottom: 35px;
  padding-bottom: 10px;
  border-bottom: 1px #b99d5b solid;
}

.mod-framed-block-a .title span {
  display: block;
  margin-top: 10px;
}

.mod-framed-block-a .title > img {
  max-width: 100%;
}

.mod-framed-block-a .body {
  color: #6e6e6e;
}

.mod-framed-block-a .body p {
  margin-bottom: 5px;
}

.mod-framed-block-a .body .bigger {
  font-family: Perpetua, "Times New Roman", Times, serif;
  margin-bottom: 15px;
  font-size: 292.3%;
  line-height: 1.3;
}

.mod-framed-block-a .body .big {
  margin-bottom: 15px;
  font-size: 123.1%;
  line-height: 1.3;
}

.mod-framed-block-a .body .multi-line {
  line-height: 1.6;
}

.mod-framed-block-a .body .note {
  margin-top: 30px;
}

.mod-framed-block-a .body .note li {
  margin-bottom: 10px;
}

@media screen and (max-width: 640px) {
  .mod-framed-block-a .body .bigger {
    font-size: 182%;
    line-height: 1.4;
  }
  .mod-framed-block-a .body .bigger span {
    display: block;
  }
  .mod-framed-block-a .body .big {
    font-size: 116%;
  }
  .mod-framed-block-a .body .multi-line {
    line-height: 1.6;
  }
  .mod-framed-block-a .body a {
    color: #8c8c8c;
    text-decoration: none;
  }
}

.mod-framed-block-b {
  margin: 15px 0;
  padding: 13px 9px;
  border: 1px #b99d5b solid;
  font-size: 108%;
  text-align: center;
}

.mod-framed-block-b .title {
  margin-bottom: 15px;
  padding-bottom: 7px;
  border-bottom: 1px #b99d5b solid;
  color: #b99d5b;
}

.mod-image-block-a {
  margin-bottom: 20px;
}

.mod-image-block-a > img {
  width: 100%;
}

.mod-image-block-b {
  margin-bottom: 20px;
  max-width: 726px;
}

.mod-image-block-b > img {
  width: 100%;
}

.calendar {
  margin-bottom: 50px;
}

.calendar table {
  font-family: Perpetua, "Times New Roman", Times, serif;
  font-size: 13px;
  font-size: 1.08333rem;
  width: 100%;
  table-layout: fixed;
  color: #cdb98a;
}

.calendar td {
  border-right: 1px solid #ceba8c;
  border-bottom: 1px solid #ceba8c;
  text-align: center;
}

.calendar td:first-child {
  border: none;
}

.calendar td.is-disabled {
  color: #dfd2b4;
}

.calendar td span {
  font-size: 8px;
  font-size: 0.66667rem;
  display: none;
}

.calendar__month {
  font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "HGS明朝B", "MS PMincho", serif;
  font-size: 18px;
  font-size: 1.5rem;
  color: #ceba8c;
}

.calendar__weekday td {
  border: 1px solid #ceba8c;
  vertical-align: middle;
  background: #fff;
}

.calendar__weekday td:first-child {
  background: transparent;
}

.calendar__days td {
  border-top: 1px solid #ceba8c;
  border-left: 1px solid #ceba8c;
  background: #fff;
}

.calendar__days td:first-child {
  background: transparent;
}

.calendar__days td.calendar__weekend {
  background: #ceba8c;
  color: #fff;
  border-right: 1px solid #fff;
}

.calendar__days td.calendar__weekend.is-disabled {
  color: #dfd2b4;
}

.calendar__menu td {
  border-left: 1px solid #ceba8c;
  border-right: 1px solid #ceba8c;
  border-bottom: none;
  padding: 10px 0;
}

.calendar__menu-lunch td {
  background: #fff;
}

.calendar__menu-lunch td.calendar__menu-title {
  background: transparent;
}

.calendar__menu-dinner td {
  background: #fff url("/img/line_dot.png") repeat-x 0 0;
  border-bottom: 1px solid #ceba8c;
}

.calendar__menu-dinner td.calendar__menu-title {
  background: transparent;
}

.calendar__menu-dinner td:first-child {
  border: none;
}

.circle {
  width: 15px;
  height: 15px;
  display: inline-block;
  background: url("/img/ico/ico_circle.png") no-repeat 0 0;
}

.circle.is-disabled {
  background-image: url("/img/ico/ico_circle_transparent.png");
}

.cross {
  width: 12px;
  height: 12px;
  display: inline-block;
  background: url("/img/ico/ico_cross.png") no-repeat 0 0;
}

.cross.is-disabled {
  background-image: url("/img/ico/ico_cross_transparent.png");
}

.triangle {
  width: 16px;
  height: 14px;
  display: inline-block;
  background: url("/img/ico/ico_triangle.png") no-repeat 0 0;
}

.triangle.is-disabled {
  background-image: url("/img/ico/ico_triangle_transparent.png");
}

@media screen and (max-width: 800px) {
  .calendar__month th {
    font-size: 13px;
    font-size: 1.08333rem;
    padding-left: 10px;
    border-top: 1px solid #ceba8c;
    border-left: 1px solid #ceba8c;
    border-right: 1px solid #ceba8c;
    text-align: center;
  }
  .calendar td span {
    display: block;
  }
  .sp-hide {
    display: none;
  }
}

/* 201903　カレンダー用スタイル 追加 */
.calendar__days td.calendar__holiday {
  background: #f4f0e6 !important;
  color: #ed6e6a;
  border-right: 1px solid #ceba8c;
  border-bottom: 1px solid #ceba8c;
}

.calendar__days td.calendar__monday {
  background: #f4f0e6 !important;
  color: #cdb98a;
  border-right: 1px solid #ceba8c;
  border-bottom: 1px solid #ceba8c;
}

.calendar__days td.calendar__weekend {
  background: #ffffff;
  border-right: 1px solid #ceba8c;
  border-bottom: 1px solid #ceba8c;
}

.calendar__days td.calendar__holiday.is-disabled,
.calendar__days td.calendar__monday.is-disabled {
  color: #dfd2b4;
}

.calendar__menu td.calendar__holiday,
.calendar__menu td.calendar__monday {
  background: #f4f0e6 !important;
  border-right: 1px solid #ceba8c;
}

.calendar__menu td.calendar__weekend {
  background: #ffffff;
  border-right: 1px solid #ceba8c;
}

.calendar__menu-dinner td.calendar__holiday,
.calendar__menu-dinner td.calendar__monday {
  background: #f4f0e6 url("/img/line_dot.png") repeat-x 0 0 !important;
}

.calendar__menu-dinner td.calendar__weekend {
  background: #ffffff url("/img/line_dot.png") repeat-x 0 0;
}

/* 201911 カレンダースタイル 追加 */
.calendar__menu td.calendar__holiday a,
.calendar__menu td.calendar__monday a {
  display: none;
}

.calendar__menu td.calendar__holiday div,
.calendar__menu td.calendar__monday div {
  display: none;
}

.align--center {
  margin: 0 auto;
  text-align: center;
}

.align--right {
  margin: 0 auto;
  text-align: right;
}

.ex-mt-5 {
  margin-top: 5px;
}

.ex-mt-10 {
  margin-top: 10px;
}

.ex-mt-20 {
  margin-top: 20px;
}

.ex-mt-30 {
  margin-top: 30px;
}

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

.ex-mb-10 {
  margin-bottom: 10px;
}

.ex-mb-20 {
  margin-bottom: 20px;
}

.ex-mb-30 {
  margin-bottom: 30px;
}

.ex-mb-40 {
  margin-bottom: 40px;
}

.ex-mb-50 {
  margin-bottom: 50px;
}

.ex-mb-60 {
  margin-bottom: 60px;
}

.ex-mb-70 {
  margin-bottom: 70px;
}

.ex-mb-80 {
  margin-bottom: 80px;
}

.ex-mb-90 {
  margin-bottom: 90px;
}

.ex-mb-100 {
  margin-bottom: 100px;
}

.ex-mb-80 {
  margin-bottom: 80px;
}

.ex-mr-0 {
  margin-right: 0;
}
