@charset "UTF-8";
/* -----------------------------------------
 Reset
------------------------------------------- */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}
body {
  line-height: 1.5;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}
ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none;
}
em {
  font-style: normal;
}
a {
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  background: transparent;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ddd;
  margin: .8rem 0;
  padding: 0;
}
input, select {
  vertical-align: middle;
}
button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  margin: 0;
  padding: 0;
  appearance: none;
}
button:active {
  color: inherit;
}
/* -----------------------------------------
 基本
------------------------------------------- */
html {
  font-size: 62.5%;
  font-size: calc(1em*.625);
}
body {
  color: #333;
  background: #fff;
  font-size: 1.6rem;
  font-family: sans-serif;
  -webkit-text-size-adjust: 100%;
}
img {
  max-width: 100%;
  vertical-align: top;
}
.sp--only {
  display: none;
}
*, *::before, *::after {
  box-sizing: border-box;
}
/* -----------------------------------------
 レイアウト
------------------------------------------- */
.wrap {
  width: 98rem;
  min-width: 98rem;
  margin-left: auto;
  margin-right: auto;
}
section {
  min-width: 98rem;
}
/* -----------------------------------------
 文字装飾
------------------------------------------- */
.mincho {
  font-family: serif;
}
.bold {
  font-weight: bold;
}
.normal {
  font-weight: normal;
}
.txt--center {
  text-align: center;
}
.txt--right {
  text-align: right;
}
.txt--left {
  text-align: left;
}
.f84 {
  font-size: 8.4rem;
}
.f70 {
  font-size: 7rem;
}
.f64 {
  font-size: 6.4rem;
}
.f49 {
  font-size: 4.9rem;
}
.f48 {
  font-size: 4.8rem;
}
.f46 {
  font-size: 4.6rem;
}
.f45 {
  font-size: 4.5rem;
}
.f42 {
  font-size: 4.2rem;
}
.f38 {
  font-size: 3.8rem;
}
.f36 {
  font-size: 3.6rem;
}
.f34 {
  font-size: 3.4rem;
}
.f32 {
  font-size: 3.2rem;
}
.f30 {
  font-size: 3rem;
}
.f28 {
  font-size: 2.8rem;
}
.f27 {
  font-size: 2.7rem;
}
.f26 {
  font-size: 2.6rem;
}
.f24 {
  font-size: 2.4rem;
}
.f21 {
  font-size: 2.1rem;
}
.f20 {
  font-size: 2rem;
}
.f19 {
  font-size: 1.9rem;
}
.f18 {
  font-size: 1.8rem;
}
.f17 {
  font-size: 1.7rem;
}
.f16 {
  font-size: 1.6rem;
}
.f15 {
  font-size: 1.5rem;
}
.f14 {
  font-size: 1.4rem;
}
.f13 {
  font-size: 1.3rem;
}
.f12 {
  font-size: 1.2rem;
}
.f11 {
  font-size: 1.1rem;
}
.f10 {
  font-size: 1rem;
}
.mb0 {
  margin-bottom: 0;
}
.mb5 {
  margin-bottom: .5rem;
}
.mb10 {
  margin-bottom: 1rem;
}
.mb15 {
  margin-bottom: 1.5rem;
}
.mb20 {
  margin-bottom: 2rem;
}
.mb25 {
  margin-bottom: 2.5rem;
}
.mb30 {
  margin-bottom: 3rem;
}
.mb40 {
  margin-bottom: 4rem;
}
.mb50 {
  margin-bottom: 5rem;
}
.mb60 {
  margin-bottom: 6rem;
}
.mb1e {
  margin-bottom: 1em;
}
.mb2e {
  margin-bottom: 2em;
}
.mt1e {
  margin-top: 1em;
}
.ml10 {
  margin-left: 1rem;
}
.pt40 {
  padding-top: 4rem;
}
.pt0 {
  padding-top: 0;
}
.mr10 {
  margin-right: 1rem;
}
.mr20 {
  margin-right: 2rem;
}
/* -----------------------------------------
 共通
------------------------------------------- */
a:link {
  color: #B17752;
  text-decoration: underline;
}
a:visited {
  color: #B17752;
  text-decoration: none;
}
a:active {
  color: #e00;
  text-decoration: none;
}
a:hover {
  opacity: .8;
}
a:hover img {
  opacity: .8;
}
button:hover {
  opacity: .8;
}
.d-block {
  display: block;
}
.d-iblock {
  display: inline-block;
}
.d-inline {
  display: inline;
}
/* Clear Fix */
.cf:after {
  content: "";
  display: block;
  clear: both;
}
/* comment */
.comment {
  padding-left: .5em;
  text-indent: -.5em;
}
.comment__list > li {
  padding-left: 1em;
  text-indent: -1em;
  font-size: 1.4rem;
}
/* disc */
ul.disc li {
  position: relative;
  padding-left: 1.3em;
}
ul.disc > li + li {
  margin-top: .3em;
}
ul.disc li::before {
  content: "";
  position: absolute;
  width: .6rem;
  height: .6rem;
  background: #ccc;
  border-radius: 50%;
  left: .4em;
  top: .5em;
}
ul.number-disc {
  margin: 0 0 1rem 0;
}
ul.number-disc li {
  padding-left: 1em;
  text-indent: -1em;
}
ul.number-disc li::before {
  display: none;
}
ul.inner-disc {
  margin: 0 0 .5rem 0;
}
ul.inner-disc li {
  padding-left: 1.3em;
  text-indent: 0;
}
ul.inner-disc li::before {
  display: block;
}
.btn__accordion {
  position: relative;
  width: 3rem;
  height: 3rem;
}
.btn__accordion::before {
  content: "";
  display: block;
  position: absolute;
  top: -.9rem;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 1.8rem;
  height: 1.8rem;
  border-right: .2rem solid #B17752;
  border-bottom: .2rem solid #B17752;
  transform: rotate(45deg);
}
.btn, a.btn {
  display: inline-block;
  min-width: 24rem;
  position: relative;
  padding: .7em 1.7em;
  color: #fff;
  font-size: 2rem;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  background-color: #B17752;
}
a.btn {
  color: #fff;
}
.btn::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 1.2rem;
  bottom: 0;
  margin: auto;
  width: 2.1rem;
  height: 2.1rem;
  background: url("../../img/icon_arrow.svg") 50% 50% no-repeat;
  -webkit-background-size: contain;
  background-size: contain;
}
.btn.accordion::after {
  top: -.3rem;
  right: 1.7rem;
  width: 1.4rem;
  height: 1.4rem;
  border-bottom: 3px solid #fff;
  border-right: 3px solid #fff;
  background-image: none;
  transform: rotate(45deg);
}
.btn.accordion.open::after {
  top: .8rem;
  transform: rotate(-135deg);
}
.btn.arrow--hide::after {
  display: none;
}
.accordion__box {
  display: none;
}
.btn.no-arrow::after {
  display: none;
}
.omit {
  width: 100%;
  height: 1px;
  overflow: hidden;
  text-indent: -9999px;
}
/* -----------------------------------------
 Slick
------------------------------------------- */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}
.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}
.slick-slider .slick-track, .slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  display: table;
  content: '';
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}
.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}
[dir='rtl'] .slick-slide {
  float: right;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
  display: none;
}
/* Arrows */
.slick-prev, .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 4rem;
  height: 8rem;
  margin-top: -8rem;
  padding: 0;
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
  z-index: 2;
}
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus {
  color: transparent;
  outline: none;
  opacity: .8;
  -webkit-transition: .2s ease-in-out;
  transition: .2s ease-in-out;
}
.slick-prev:hover::before, .slick-prev:focus::before, .slick-next:hover::before, .slick-next:focus::before, .slick-prev:hover::after, .slick-prev:focus::after, .slick-next:hover::after, .slick-next:focus::after {
  opacity: 1;
}
.slick-prev.slick-disabled, .slick-next.slick-disabled {
  opacity: 0;
  cursor: default;
}
.slick-prev.slick-disabled::before, .slick-next.slick-disabled::before, .slick-prev.slick-disabled::after, .slick-next.slick-disabled::after {
  opacity: 0;
  cursor: default;
}
.slick-prev::before, .slick-next::before {
  content: "";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent transparent transparent transparent;
  border-width: 3.2rem;
}
.slick-prev {
  left: -7.5rem;
}
.slick-prev::before {
  border-right-color: #008CD6;
  border-left-width: 0;
}
.slick-next {
  right: -7.5rem;
}
.slick-next::before {
  border-left-color: #008CD6;
  border-right-width: 0;
}
/* -----------------------------------------
 ページトップ
------------------------------------------- */
#page__top a {
  display: block;
  position: fixed;
  right: 2rem;
  bottom: 2.5rem;
  width: 7rem;
  height: 7rem;
  cursor: pointer;
  z-index: 10;
  background: url("../../img/icon_pagetop.svg") 0 0 no-repeat;
  background-size: contain;
}
/* -----------------------------------------
 見出し
------------------------------------------- */
.heading--a {
  display: inline-block;
  position: absolute;
  bottom: -7.2rem;
  right: 0;
  left: 0;
  margin: auto;
  width: 48rem;
  padding: .6em 1em;
  color: #54390D;
  font-family: serif;
  font-size: 4.2rem;
  font-weight: normal;
  text-align: center;
  letter-spacing: .1rem;
  background-color: rgba(255, 255, 255, .95);
  z-index: 2;
}
.heading--a::before {
  content: "";
  display: block;
  position: absolute;
  top: .4rem;
  right: .4rem;
  bottom: .4rem;
  left: .4rem;
  border: 1px solid #442B0B;
}
.heading--b {
  margin-bottom: 2.2em;
  line-height: 1.3;
  color: #54390D;
  font-family: serif;
  font-size: 3.6rem;
  font-weight: normal;
  text-align: center;
}
.heading--b > span {
  display: inline-block;
  padding: .4em .8em;
  border-top: 2px solid #54390D;
  border-bottom: 2px solid #54390D;
  text-indent: .1em;
  letter-spacing: .1rem;
}
.heading--c {
  color: #54390D;
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: .1rem;
}
.heading--d {
  position: relative;
  margin-bottom: .3em;
  padding-left: 1.6rem;
  color: #54390D;
  font-family: serif;
  font-size: 1.8rem;
  font-weight: normal;
  text-align: left;
}
.heading--d::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: .53em;
  left: 0;
  width: .8rem;
  height: .8rem;
  background-color: #442B0B;
  transform: rotate(45deg);
}
/* -----------------------------------------
 ヘッダー
------------------------------------------- */
.header {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: center;
  align-items: center;
  padding: 1.4rem 4.8rem 1.3rem 3.2rem;
  background-color: #fff;
  min-width: 98rem;
}
.header .header__logo {
  flex-shrink: 0;
  display: -ms-flexbox;
  display: flex;
  width: 24rem;
  margin-left: 1.2rem;
}
.header .header__logo .right--side {
  padding-left: 2rem;
}
.header .header__logo a img {
  width: 100%;
}
.header .header__logo a:hover,
.header .header__logo a:hover > img {
  opacity: 1;
}
.header .header__logo-v2 {
  display: flex;
  justify-content: flex-start;
  width: 100%;
}
.header .header__logo-v2 > a {
  width: 27.2rem;
}
.header .header__logo-v2 > a:hover,
.header .header__logo-v2 > a:hover > img {
  opacity: 1;
}
.header .feature {
  display: -ms-flexbox;
  display: flex;
  justify-content: flex-end;
  width: 100%;
}
.header .feature .item:not(:first-child) {
  margin-left: 3.5rem;
}
.header .feature .item {
  position: relative;
}
.header .feature button {
  position: relative;
  padding-left: 4rem;
  padding-right: 1.8rem;
  font-size: 1.6rem;
}
.header .feature button::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 3rem;
  height: 3rem;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: contain;
}
.header .feature button.icon--share::before {
  background-image: url("../../img/icon_share.svg");
}
.header .feature button.icon--lang::before {
  background-image: url("../../img/icon_lang.svg");
}
.header .feature button::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: .6rem .6rem 0 .6rem;
  border-color: #B17752 transparent transparent transparent;
}
.header .feature ul {
  display: none;
  position: absolute;
  margin-top: 1rem;
  border-radius: .5rem;
  background-color: #fff;
  box-shadow: 0 .3rem .6rem rgba(0, 0, 0, .16);
  z-index: 3;
}
.header .feature ul li:not(:last-child) {
  border-bottom: 1px solid #E9EAEA;
}
.header .feature ul li a {
  display: block;
  padding: .8em 1em;
  color: inherit;
  text-decoration: none;
}
.header .feature ul li a.current {
  font-weight: bold;
}
.header .feature .language {
  width: 13.6rem;
}
.header .feature .language li a {
  position: relative;
}
.header .feature .language li a.current::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 1.5rem;
  margin: auto;
  width: .7rem;
  height: 1.2rem;
  background-image: none;
  border-bottom: 2px solid #B17752;
  border-right: 2px solid #B17752;
  transform: rotate(45deg);
}
.header .feature .share {
  left: -2.8rem;
  width: 15.8rem;
}
.header .feature .share li a {
  position: relative;
  padding-left: 6.2rem;
}
.header .feature .share li a::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 2rem;
  margin: auto;
  width: 3rem;
  height: 3rem;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: contain;
}
.header .feature .share li .icon--x::before {
  background-image: url("../../img/icon_x.svg");
}
.header .feature .share li .icon--facebook::before {
  background-image: url("../../img/icon_facebook.png");
}
.header .feature .share li .icon--instagram::before {
  background-image: url("../../img/icon_instagram.png");
}
.header__overlay {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
}
.btn__menu--sp {
  display: none;
}
/* sp__menu */
.sp__menu {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100%;
  max-height: 100%;
  padding-bottom: 50px;
  background-color: rgba(68, 43, 11, .96);
  overflow-y: auto;
}
.sp__menu a {
  color: #fff;
  text-decoration: none;
}
.sp__menu button:hover {
  opacity: 1;
  color: #fff;
}
.btn__menu--close {
  width: 5.6rem;
  margin-left: auto;
  padding: 1.4rem 1.6rem;
  cursor: pointer;
}
.btn__menu--close div {
  position: relative;
  width: 2.4rem;
  height: 2.2rem;
}
.btn__menu--close div::before, .btn__menu--close div::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 100%;
  height: .3rem;
  background-color: #fff;
}
.btn__menu--close div::before {
  transform: rotate(45deg);
}
.btn__menu--close div::after {
  transform: rotate(-45deg);
}
.btn__bottom__menu--close {
  display: inline-block;
  margin-top: 2rem;
  padding: .5em 1em;
  position: relative;
  padding-left: 3.6rem;
  color: #fff;
  font-size: 1.8rem;
  font-weight: bold;
}
.btn__bottom__menu--close::before, .btn__bottom__menu--close::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 1.2rem;
  margin: auto;
  width: 1.6rem;
  height: .2rem;
  background-color: #fff;
}
.btn__bottom__menu--close::before {
  transform: rotate(45deg);
}
.btn__bottom__menu--close::after {
  transform: rotate(-45deg);
}
.sp__menu__box {
  padding: 2.8rem 0;
  border-bottom: 1px solid #a5998a;
  text-align: center;
}
.sp__menu .menu {
  display: -ms-flexbox;
  display: flex;
  padding-right: 4rem;
  padding-left: 4rem;
  padding-bottom: 2.3rem;
}
.sp__menu .menu ul {
  width: 50%;
  font-size: 2rem;
  font-weight: bold;
  text-align: left;
}
.sp__menu .menu ul li a {
  display: block;
  padding: .5em 0;
}
.sp__menu .language li {
  display: inline-block;
}
.sp__menu .language li:not(:last-child)::after {
  content: "|";
  margin: 0 1em 0 1.2em;
  color: #fff;
}
.sp__menu .language .current {
  font-weight: bold;
}
.sp__menu .share {}
.sp__menu .share li {
  display: inline-block;
}
.sp__menu .share li:not(:last-child) {
  margin-right: 2rem;
}
.sp__menu .share li a {
  display: block;
  position: relative;
  padding-left: 3.8rem;
}
.sp__menu .share li a::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 3.2rem;
  height: 3.2rem;
  border-radius: .4rem;
  background-color: #fff;
}
.sp__menu .share li a::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: .3rem;
  margin: auto;
  width: 2.6rem;
  height: 2.6rem;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: contain;
}
.sp__menu .share li a.icon--x::after {
  background-image: url("../../img/icon_x.svg");
}
.sp__menu .share li a.icon--facebook::after {
  background-image: url("../../img/icon_facebook.png");
}
.sp__menu .share li a.icon--instagram::after {
  background-image: url("../../img/icon_instagram.png");
}
.sp__menu .title {
  display: inline-block;
  position: relative;
  margin-bottom: 1em;
  padding-left: 3rem;
  color: #fff;
  font-weight: bold;
  font-size: 1.6rem;
}
.sp__menu .title.icon--share {
  margin-bottom: 1.3em;
}
.sp__menu .title::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 2.4rem;
  height: 2.4rem;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: contain;
}
.sp__menu .title.icon--share::before {
  background-image: url("../../img/icon_share_w.svg");
}
.sp__menu .title.icon--lang::before {
  background-image: url("../../img/icon_lang_w.svg");
}
@keyframes spMenuUp {
  0% {
    transform: translate(400px, 0);
    opacity: 0;
  }
  100% {
    transform: translate(0, 0);
    opacity: 1;
  }
}
.sp__menu {
  -webkit-animation: spMenuUp .3s ease-in-out alternate;
  animation: spMenuUp .3s ease-in-out alternate;
}
.menu__open body {
  position: fixed;
  width: 100%;
  height: 100%;
}
.sp__menu .sp__menu__logo {
  margin: 2.8rem auto 0;
  max-width: 29.5rem;
  box-sizing: border-box;
}
.sp__menu .sp__menu__logo > a {
  display: block;
  padding: 1.3rem 3.0rem;
  background-color: #fff;
  text-align: center;
}
.sp__menu .sp__menu__logo > a > img {
  width: 160px;
}
/* -----------------------------------------
 メインビジュアル
------------------------------------------- */
.mv {
  position: relative;
  background: url(../../img/mv_bg.jpg) 50% 50% no-repeat;
  background-size: cover;
  min-width: 98rem;
}
.mv .wrap {
  position: relative;
  max-width: 128rem;
  width: auto;
}
.mv__slide .slide__item {
  display: none;
/*  height: 48rem;*/
  position: relative;
  vertical-align: top;
}
.mv__slide .slide__item:first-child {
  display: block;
}
.mv__slide.slick-initialized .slide__item {
  display: block;
}
.mv__slide .slide__item img {
  position: absolute;
}
.mv__slide:not(.slick-initialized) .slide:not(:first-child) {
  display: none;
}
.mv__slide.slick-initialized .slide:not(:first-child) {
  display: block;
}
.mv__slide .hd-logo img {
  width: 100%;
}
.mv__slide .mv__title {
  position: relative;
  width: 100%;
  height: 100%;
  max-width: 98rem;
  margin: 0 auto;
}
.mv__slide .mv__title img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  max-width: 68rem;
}
.mv__about {
  height: 36rem;
  background: url("../../../about/img/mv.jpg") 50% 50% no-repeat;
  background-size: cover;
}
.mv__about.visual {
  background-position-y: 70%;
}
.mv__slide .slide__item.link-slide {
  background: #fff;
}
.mv__slide .slide__item a {
  display: block;
  height: 100%;
}
.mv__slide .slide__item a:hover {
  opacity: .7;
}
.mv__slide .slide__item .slide__item-inner {
  height: 48rem;
  position: relative;
  vertical-align: top;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
}
.mv__slide .slide__img {
  height: 48rem;
  position: relative;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
}
/* -----------------------------------------
 フッター
------------------------------------------- */
footer {
  padding: 5rem 0;
  color: #fff;
  text-align: center;
  background-color: #442B0B;
  min-width: 98rem;
}
.footer__link {
  margin-bottom: 2rem;
  line-height: 1.2;
}
.footer__link li {
  display: inline-block;
}
.footer__link li:not(:last-child) {
  margin-right: .4em;
  padding-right: .7em;
  border-right: 1px solid #fff;
}
.footer__link li a {
  color: #fff;
  text-decoration: none;
}
.copyright {
  font-size: 1.4rem;
}
/* -----------------------------------------
 ナビゲーション
------------------------------------------- */
.nav {
  color: #fff;
  text-align: center;
  background-color: #442B0B;
  min-width: 98rem;
}
.nav ul {
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
}
.nav ul li {
  display: inline-block;
  position: relative;
  font-size: 1.8rem;
  font-weight: bold;
}
.nav ul li:not(:first-child) {
  padding-left: 4.2em;
}
.nav ul li:not(:first-child)::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 2.1em;
  bottom: 0;
  margin: auto;
  width: .1rem;
  height: 2.8rem;
  background-color: #fff;
  transform: rotate(45deg);
}
.nav ul a {
  display: block;
  padding: 1em .4em;
  text-decoration: none;
  color: #fff;
}
.nav ul a.current {
  position: relative;
}
.nav ul a.current::before {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  height: .6rem;
  background-color: #FDD000;
}
/* -----------------------------------------
 ニュース
------------------------------------------- */
.news {
  display: -ms-flexbox;
  display: flex;
  padding: 3.6rem 6rem;
  background-color: #F5F8FA;
}
.news .news__left {
  margin-right: 4.68%;
}
.news .news__left .heading--b {
  margin-bottom: 2rem;
  font-size: 3rem;
  width: 4em;
}
.news .news__left a.news__link {
  min-width: 0;
  padding: .3em 2.8em .3em 2.4em;
  font-size: 1.6rem;
}
.news .news__left a.news__link::after {
  width: 1.4rem;
  height: 1.4rem;
  right: .9rem;
}
.news .news__link.sp--only {
  display: none;
}
.news .btn__accordion {
  margin-left: 3.12%;
}
.news__list {
  flex: 1;
  overflow: hidden;
}
.news__list li, .news__list--inner {
  display: -ms-flexbox;
  display: flex;
}
.news__list li.hide {
  display: none;
}
.news__list li:not(:last-child), .news__list--inner:not(:last-child) {
  margin-bottom: 2rem;
  padding-bottom: 2rem;
  border-bottom: 1px dotted #54390D;
}
.news__list .category {
  display: inline-block;
  width: 6.5em;
  min-width: 6.5em;
  margin-right: 4rem;
  padding: .1em .3em;
  border: 1px solid #54390D;
  color: #54390D;
  font-size: 1.4rem;
  text-align: center;
}
/* -----------------------------------------
 来館案内
------------------------------------------- */
.about {
  padding: 9rem 0;
}
.about__history {
  display: -ms-flexbox;
  display: flex;
  position: relative;
  margin-bottom: 4.8rem;
  padding: 0 2rem;
}
.about__history::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: .1rem;
  background-color: #54390D;
}
.about__history .item {
  position: relative;
  padding: 5.3rem 2rem 0;
  width: 25%;
}
.about__history .item::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: .1rem;
  height: 3.6rem;
  background-color: #54390D;
}
.about__history .item::after {
  content: "";
  position: absolute;
  top: -.6rem;
  right: 0;
  left: 0;
  margin: auto;
  width: 1.2rem;
  height: 1.2rem;
  border: 1px solid #54390D;
  border-radius: 50%;
  background-color: #fff;
}
.about__history .floor {
  margin-bottom: .8em;
  color: #54390D;
  font-size: 2.4rem;
  text-align: center;
}
.about__history .about__thumb {
  margin-bottom: .7em;
}
.about__history h3 {
  width: 65%;
  margin-bottom: .5rem;
}
.about__history .title {
  margin-bottom: .5em;
  color: #54390D;
  line-height: 1.25;
  font-size: 2.4rem;
}
.floor--box img {
  width: 100%;
}
/* -----------------------------------------
 営業日のご案内
------------------------------------------- */
.schedule {
  padding: 9rem 0;
  background-color: #EEE5D5;
}
.schedule .schedule__time {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 3.6rem;
  padding-bottom: 3.6rem;
  border-bottom: 1px solid #A8A18B;
}
.schedule .schedule__time .heading--c {
  margin-right: 8rem;
}
.schedule .schedule__time p {
  line-height: 1.7;
  font-size: 2rem;
}
.schedule__day {
  margin-bottom: 5.8rem;
}
.schedule__day .left__side {
  float: left;
  width: 16.32%;
}
.schedule__day .left__side .heading--c {
  margin-bottom: 1em;
}
.schedule__day .left__side .holiday {
  position: relative;
  padding-left: 3.8rem;
}
.schedule__day .left__side .holiday::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 2.4rem;
  height: 2.4rem;
  background-color: #D1C1A5;
}
.schedule__day .right__side {
  float: left;
  width: 83.68%;
  padding-top: 1.2em;
}
.schedule__day .right__side .calendar__slide {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.schedule__day .right__side li {
  width: 25.2rem;
}
.schedule__day .right__side li:not(:last-child) {
  margin-right: 3.2rem;
}
.schedule__day .right__side li:nth-child(3) {
  margin-right: 0;
}
.schedule__day .right__side li:nth-child(n+4) {
  margin-top: 3rem;
}
.schedule__day .right__side h4 {
  margin-bottom: .8em;
  font-weight: normal;
  text-align: center;
}
.schedule .btn {
  min-width: 40rem;
}
/* calendar */
.calendar__box .clndr-controls .month {
  margin-bottom: .8em;
  font-weight: normal;
  text-align: center;
}
.calendar__box .clndr-grid {
  width: 100%;
  font-size: 1.4rem;
}
.calendar__box .clndr-grid .days-of-the-week {
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}
.calendar__box .clndr-grid .header-day {
  flex: 1;
  padding: .4em 0;
  border-top: 1px solid #A8A18B;
  border-bottom: 1px solid #A8A18B;
  font-weight: normal;
  text-align: center;
}
.calendar__box .clndr-grid .header-day:first-child {
  color: #d00;
}
.calendar__box .clndr-grid .header-day:last-child {
  color: #002CA2;
}
.calendar__box .clndr-grid .days {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
}
.calendar__box .clndr-grid .day, .calendar__box .clndr-grid .my-day {
  width: 14.28%;
  padding: .4em 0;
  border-bottom: 1px solid #A8A18B;
  text-align: center;
}
.calendar__box .clndr-grid .day.holiday, .calendar__box .clndr-grid .day:nth-child(7n + 1) {
  color: #d00;
}
.calendar__box .clndr-grid .day:nth-child(7n + 7) {
  color: #002CA2;
}
.calendar__box .clndr-grid .day.closing, .calendar__box .clndr-grid .my-day.closing {
  background-color: #D1C1A5;
}
.calendar__box .clndr-grid .day.inactive, .calendar__box .clndr-grid .my-day.inactive {
  color: gray;
}
.calendar__box .clndr-grid .empty, .calendar__box .clndr-grid .adjacent-month {
  width: 14.28%;
  padding: .4em 0;
  border-bottom: 1px solid #A8A18B;
  text-align: center;
}
/* calendar */
.calendar {
  width: 100%;
  table-layout: fixed;
  font-size: 1.4rem;
}
.calendar thead th {
  padding: .4em 0;
  border-top: 1px solid #A8A18B;
  border-bottom: 1px solid #A8A18B;
  font-weight: normal;
  text-align: center;
}
.calendar thead th:first-child {
  color: #d00;
}
.calendar thead th:last-child {
  color: #002CA2;
}
.calendar tbody td {
  padding: .4em 0;
  border-bottom: 1px solid #A8A18B;
  text-align: center;
}
.calendar tbody td:first-child {
  color: #d00;
}
.calendar tbody td:last-child {
  color: #002CA2;
}
.calendar .holiday {
  background-color: #D1C1A5;
}
.schedule .group__user {
  padding-top: 5rem;
}
.schedule .group__user .heading--c {
  margin-bottom: 1em;
}
.group__user .inquiry {
  display: -ms-flexbox;
  display: flex;
}
.group__user .inquiry p {
  line-height: 1.7;
  font-size: 1.8rem;
}
.group__user .inquiry .icon--tel {
  position: relative;
  margin-left: 2rem;
  padding-left: 4.8rem;
  font-size: 3.2rem;
  font-weight: bold;
}
.group__user .inquiry .icon--tel::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 4rem;
  height: 4rem;
  background: url("../../img/icon_tel.svg") 0 0 no-repeat;
  background-size: contain;
}
/* calendar__txt */
.calendar__txt {
  margin-top: 4rem;
}
/* -----------------------------------------
 アクセス
------------------------------------------- */
.access {
  padding: 9rem 0;
}
.access .location {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 3.6rem;
  padding-bottom: 3.6rem;
  border-bottom: 1px solid #A8A18B;
}
.access .location .heading--c {
  margin-right: 8rem;
}
.access .location p {
  line-height: 1.7;
  font-size: 1.8rem;
}
.access .traffic .heading--c {
  margin-bottom: 1.3em;
}
.traffic__access {
  margin-bottom: 4.8rem;
}
.traffic__access .route {
  float: left;
  width: 32.65%;
}
.traffic__access .map {
  float: right;
  width: 62.24%;
}
.traffic__access .route__detail {
  margin-left: 1.8rem;
  color: #54390D;
  font-size: 1.4rem;
}
.traffic__access .route__detail:not(:last-child) {
  margin-bottom: 3.6rem;
}
.route__time > div {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: end;
  align-items: flex-end;
}
.route__time dd {
  position: relative;
  padding-left: 3rem;
  text-align: right;
}
.route__time dd::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 2rem;
  height: 0;
  border-bottom: 1px dotted #A8A18B;
}
/* -----------------------------------------
 バナーエリア
------------------------------------------- */
.bnr__area {
  padding: 8rem 0 6.4rem;
  background-color: #EEE5D5;
  min-width: 98rem;
}
.bnr__list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.bnr__list li {
  text-align: center;
  width: 22.4%;
  margin-right: 3.3rem;
}
.bnr__list li:last-child, .bnr__list li:nth-child(4), .bnr__list li:nth-child(8) {
  margin-right: 0;
}
.bnr__list li:nth-child(n+5) {
  margin-top: 2rem;
}
.bnr__list a {
  color: inherit;
  text-decoration: none;
}
.bnr__list p {
  margin-top: .8em;
}
/* -----------------------------------------
 来館案内（下層ページ） 2020.01.16
------------------------------------------- */
/* ごあいさつ */
.message {
  padding: 14rem 0 9rem;
  background: url(../../../about/img/message_bg.jpg) no-repeat;
  background-size: cover;
}
.message .wrap {
  width: 90rem;
  min-width: 90rem;
}
.message--txt p {
  font-size: 1.8rem;
  margin-bottom: 3rem;
}
.message--txt p.mb60 {
  margin-bottom: 6rem;
}
.message--txt p.message--txt__last {
  color: #442B0B;
  margin-bottom: 0;
}
/* フロアマップ／展示コーナー */
.floormap {
  background: #EEE5D5;
  padding: 9rem 0 7rem;
}
.wrap.floor--map {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding-bottom: 8rem;
  width: 101rem;
}
.wrap.floor--map .floormap--left {
  width: 57rem;
}
.wrap.floor--map .floormap--right {
  padding-left: 4rem;
  width: 42.4%;
}
.floormap--heading {
  font-size: 2.4rem;
  color: #54390D;
  line-height: 1.7;
  font-weight: bold;
  margin-bottom: 5rem;
}
.floormap--right__box {
  border: dotted .2rem #54390D;
  padding: 2rem 2.3rem 2rem 2.5rem;
  background: #EAE5DA;
  line-height: 1.7;
}
.floormap--right__box .top--side {
  text-align: center;
  margin-bottom: 1rem;
}
.floormap--right__box .floormap--heading {
  font-size: 2rem;
  margin-bottom: 2rem;
}
.floor--history__wrap {
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
  padding: 0 4rem;
  box-sizing: content-box;
}
.floor--history__wrap .floormap--heading {
  font-size: 2.8rem;
}
.floor--history__list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
}
.floor--history__list li {
  background: #fff;
  padding: 2rem 4rem 4rem;
  width: 48.3%;
  margin-bottom: 4rem;
  position: relative;
}
.floor--history__list li::before {
  content: "6F";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  background: #E9EAEA;
  font-size: 2rem;
  color: #54390D;
  width: 9rem;
  text-align: center;
  padding: 0.3rem 0;
}
.floor--history__list li.fl6_5::before {
  content: "6F / 5F";
}
.floor--history__list li.fl5_4::before {
  content: "5F / 4F";
}
.floor--history__list li.fl3_2::before {
  content: "3F / 2F";
}
.floor--history__top {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 2rem;
}
.floor--history__top .left--side {
  width: 50%;
}
.floor--history__top .right--side {
  width: 50%;
  padding-left: 2rem;
}
.floor--history__heading {
  color: #54390D;
  font-size: 2.4rem;
  font-weight: normal;
  margin-bottom: 1.5rem;
  line-height: 1.4;
}
.floor--history__sub {
  font-weight: bold;
  font-size: 1.8rem;
  padding: 1rem 0;
  line-height: 1.3;
  border-top: dashed .1rem #000;
  border-bottom: dashed .1rem #000;
}
/* 見どころ */
.highlight {
  padding: 9rem 0;
}
.highlight--list {
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.highlight--list li {
  width: 30.6%;
  font-size: 1.4rem;
  line-height: 1.7;
}
.highlight--heading {
  font-size: 1.8rem;
  color: #442B0B;
  padding: 0 0 1.5rem 3rem;
  position: relative;
  margin-top: 2rem;
  line-height: 1.4;
}
.highlight--heading::before {
  position: absolute;
  content: "";
  display: block;
  background: url(../../../about/img/highlight_icon.svg) no-repeat;
  height: 2rem;
  width: 2.5rem;
  background-size: contain;
  left: 0;
  top: .1em;
  margin: auto;
}
/* -----------------------------------------
 アクセス(下層ページ)
------------------------------------------- */
.mv__about.access-mv {
  background-image: url(../../../access/img/mv.jpg);
}
.access--map {
  padding: 14rem 0 9rem;
}
.access--map .location {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 3rem;
}
.access--map .location .location-inner {
  display: -ms-flexbox;
  display: flex;
  margin-right: 8rem;
}
.access--map .location .access-img {
  width: 20%;
}
.access--map .border--btm {
  border-bottom: 1px solid #A8A18B;
  padding-bottom: 3.6rem;
  margin-bottom: 3.6rem;
}
.access--map .location .heading--c {
  margin-right: 8rem;
}
.access--map .location p {
  line-height: 1.7;
  font-size: 1.8rem;
}
.btn.large {
  padding: .7em 2.8em;
}
.access--map .traffic .heading--c {
  margin-bottom: 1.3em;
}
.access--map .traffic__access {
  margin-bottom: 0;
}
.access--map .traffic__access .route {
  width: 30.55%;
  margin-left: 4rem;
}
.access--map .traffic__access .route:first-child {
  margin-left: 0;
}
.access--map .traffic__access .route:first-child .route__time dd {
  padding-left: 1rem;
}
.access--map .traffic__access .route:first-child .route__time dd::before {
  left: -1rem;
  width: 1rem;
}
.access--map .closed {
  display: -ms-flexbox;
  display: flex;
}
.closed--left {
  padding: 2rem;
  border: dotted .1rem #A8A18B;
  width: 43.6%;
  font-size: 1.4rem;
  color: #54390D;
  line-height: 1.7;
}
.closed--left .heading--d {
  padding-left: 0;
}
.closed--left .heading--d::before {
  display: none;
}
.closed--left ul {
  margin-bottom: .5rem;
}
.closed--left ul li {
  padding-left: .5em;
  text-indent: -.5em;
}
.closed--right {
  font-size: 1.4rem;
  color: #54390D;
  padding-left: 4rem;
  line-height: 1.7;
  padding-top: 3rem;
}
a.arrow__btn {
  font-size: 1.4rem;
  color: #B17752;
  text-decoration: none;
  font-weight: bold;
  position: relative;
  padding-left: 2rem;
}
a.arrow__btn::before {
  position: absolute;
  content: "";
  display: block;
  background: url(../../img/icon_arrow_b.svg) no-repeat;
  background-size: contain;
  height: 1.4rem;
  width: 1.4rem;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
/* -----------------------------------------
 よくある質問
------------------------------------------- */
.mv__about.faq-mv {
  background-image: url(../../../faq/img/mv.jpg);
}
.faq {
  padding: 12rem 0 9rem;
}
.accordion__heading {
  border-bottom: solid .1rem #A8A18B;
  padding-bottom: 1.5rem;
  margin-bottom: 2rem;
  padding-top: 2rem;
}
.accordion__heading a.btn__accordion {
  font-size: 2.4rem;
  color: #54390D;
  font-weight: bold;
  text-decoration: none;
  width: 100%;
  display: block;
}
.accordion__heading a.btn__accordion::before {
  left: auto;
  right: 1rem;
}
.accordion__heading a.btn__accordion.open::before {
  transform: rotate(-135deg);
  top: .8rem;
}
.faq__accordion dl dt {
  background: #EEE5D5;
  padding: 1.7rem 0 1.7rem 7rem;
  position: relative;
}
.faq__accordion dl dt::before {
  content: "Q";
  position: absolute;
  top: .6em;
  left: 1em;
  width: 3.6rem;
  height: 3.6rem;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  font-weight: bold;
  font-size: 1.8rem;
  text-align: center;
  background-color: #D1C1A5;
  color: #54390D;
  line-height: 3.5rem;
}
.faq__accordion dl dd {
  padding: 2rem 0 3rem 7rem;
  position: relative;
}
.faq__accordion dl dd::before {
  content: "A";
  position: absolute;
  top: .8em;
  left: 1em;
  width: 3.6rem;
  height: 3.6rem;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  font-weight: bold;
  font-size: 1.8rem;
  text-align: center;
  background-color: #FDD000;
  color: #54390D;
  line-height: 3.5rem;
}
/* -----------------------------------------
 ニュース(下層ページ)
------------------------------------------- */
.mv__about.news-mv {
  background-image: url(../../../news/img/mv.jpg);
  background-position-y: 30%;
}
.news--page {
  padding: 14rem 0 9rem;
}
.news__list .left--side {
  margin-right: 3rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: baseline;
  align-items: baseline;
}
.news__list .left--side .date {
  width: 6em;
  vertical-align: top;
}
.news__list .right--side {
  width: 85%;
}
.news .news__list .right--side p {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  max-width: 100%;
}
.news__more {
  margin-top: 4.8rem;
  text-align: center;
}
.news__more.hide {
  display: none;
}
/* -----------------------------------------
 ご利用案内
------------------------------------------- */
.mv__about.guide-mv {
  background-image: url(../../../guide/img/mv.jpg);
  background-position-y: 45%;
}
.guide {
  padding: 12rem 0 9rem;
}
.guide-column.border--btm {
  margin-bottom: 3rem;
  padding-bottom: 2.5rem;
  border-bottom: .1rem solid #A8A18B;
}
.guide-column .heading--c {
  margin-bottom: 1.5rem;
}
.guide-column p {
  font-size: 1.8rem;
  margin-bottom: .5rem;
}
.guide-column p.f14 {
  font-size: 1.4rem;
}
.guide-column .heading--b {
  margin: 10rem auto 4rem;
}
.guide-column ul li {
  font-size: 1.8rem;
}
.guide-column_inner {
  margin-bottom: 2rem;
}
.guide-column_inner:last-child {
  margin-bottom: 0;
}
.guide-column ul.inner-disc li {
  font-size: 1.6rem;
}
/* -----------------------------------------
 ニュース モジュール
------------------------------------------- */
.news--date {
  font-size: 1.8rem;
  color: #54390D;
  margin-bottom: 2rem;
}
.news--title {
  font-size: 2.4rem;
  color: #54390D;
  padding-bottom: 2rem;
  margin-bottom: 4rem;
  border-bottom: .1rem solid #54390D;
}
.news--inner {
  border-bottom: .1rem solid #54390D;
  margin-bottom: 2rem;
  padding-bottom: 2rem;
}
.news--page a.arrow__btn {
  color: #442B0B;
}
.news--sub__title {
  font-size: 1.6rem;
  font-weight: bold;
  color: #54390D;
  background: #EEE5D5;
  padding: 1rem;
  margin-bottom: 2.5rem;
}
.f--small {
  font-size: 1.6rem;
}
.f--middle {
  font-size: 2rem;
}
.f--large {
  font-size: 2.4rem;
}
.red {
  color: #FF0000;
}
.under--line {
  text-decoration: underline;
}
.f--sup {
  font-size: 65%;
  line-height: 0;
  position: relative;
  top: -.6rem;
  vertical-align: middle;
}
.f--sub {
  font-size: 65%;
  line-height: 0;
  position: relative;
  top: 0;
  vertical-align: middle;
}
ul.disc--list li {
  position: relative;
  padding-left: 15px;
}
ul.disc--list li::before {
  content: "";
  position: absolute;
  display: block;
  width: 6px;
  height: 6px;
  background: #ccc;
  border-radius: 50%;
  left: 0;
  top: .6em;
}
.window--link {
  position: relative;
  padding-right: 1.1em;
  display: inline-block
}
.window--link::after {
  position: absolute;
  content: "";
  display: block;
  background: url(../../../news/img/link_window.svg) no-repeat;
  background-size: contain;
  width: 1.5rem;
  height: 1.1rem;
  right: 0;
  top: .3em;
}
.pdf--link {
  position: relative;
  padding-right: 1em;
  display: inline-block;
}
.pdf--link::after {
  position: absolute;
  content: "";
  display: block;
  background: url(../../../news/img/link_pdf.svg) no-repeat;
  background-size: contain;
  width: 1.2rem;
  height: 1.4rem;
  right: 0;
  top: .3em;
}
.img--small img {
  width: 33%;
}
.img--middle img {
  width: 66%;
}
.img--large img {
  width: 100%;
}
.column2-box .left-side img,.column2-box .right-side img {
  width: auto;
}
.txt--caption {
  margin-top: .5em;
}
.column2-box.img-left .left-side {
  float: left;
  width: 51%;
  padding-right: 2.5rem;
  margin-bottom: 1rem;
}
.column2-box .left-side.img--small {
  width: 33%;
}
.column2-box .left-side.img--large {
  width: 70%;
}
.column2-box.img-right .right-side {
  float: right;
  width: 51%;
  padding-left: 2.5rem;
  margin-bottom: 1rem;
}
.column2-box .right-side.img--small {
  width: 33%;
}
.column2-box .right-side.img--large {
  width: 70%;
}
.column2-box-img .left-side {
  width: 48%;
  float: left;
}
.column2-box-img .right-side {
  width: 48%;
  float: right;
}
.btn.size--l {
  padding: 1em 5em;
}
.btn.border {
  background: transparent;
  border: solid .2rem #B17752;
  color: #B17752;
}
.btn.download::after {
  transform: rotate(90deg);
}
.mb-s {
  margin-bottom: 1rem;
}
.mb-m {
  margin-bottom: 3rem;
}
.mb-l {
  margin-bottom: 5rem;
}
@media screen and (max-width: 1010px) {
  .wrap.floor--map {
    width: 98rem;
  }
  .floormap--right__box {
    padding: 2rem 0rem 2rem 1.9rem;
  }
}