@charset "UTF-8";
/* ==========================================================
Name:
    module.css

Description:
    サイトで共通使用する汎用モジュール及びページ固有のスタイルを記述する
    汎用モジュールは、アルファベット降順(A->Z)に記述する
    ページ固有のスタイルは、ディレクトリ名のアルファベット降順(A->Z)、
    ファイル名のアルファベット降順(A->Z)にそれぞれ記述する

Contents:
    module
    page
    utility
========================================================== */
/* ==========================================================
*
*   module
*
========================================================== */
/*  ff-YuGothic
--------------------------------------------- */

.ff-YuGothic {
  font-family: YuGothic, "Yu Gothic", sans-serif !important;
}

.ff-TimesNewRoman {
  font-family: "Times New Roman", serif !important;
}
/* ---------------------------------------------
*   text align
--------------------------------------------- */

.txt-al--center {
  text-align: center !important;
}

.txt-al--left {
  text-align: left !important;
}

.txt-al--right {
  text-align: right !important;
}

@media screen and (min-width: 768px) {
  .txt-al-pc--center {
    text-align: center !important;
  }
  .txt-al-pc--left {
    text-align: left !important;
  }
  .txt-al-pc--right {
    text-align: right !important;
  }
}

@media screen and (max-width: 767px) {
  .txt-al-sp--center {
    text-align: center !important;
  }
  .txt-al-sp--left {
    text-align: left !important;
  }
  .txt-al-sp--right {
    text-align: right !important;
  }
}
/*  background-color
--------------------------------------------- */

.bg-white {
  background-color: #fff !important;
}
/*  cursor
--------------------------------------------- */

.cursor-pointer {
  cursor: pointer !important;
}
/*  font color
--------------------------------------------- */

.fc-red {
  color: #f26968 !important;
}
/*  font-wight
--------------------------------------------- */

.fw-n {
  font-weight: 500 !important;
}

.fw-m {
  font-weight: 600 !important;
}

.fw-b {
  font-weight: 700 !important;
}
/*  txt-indent
--------------------------------------------- */

.txt-indent--1 {
  padding-left: 1em;
  text-indent: -1em;
}
/*  hover opacity
--------------------------------------------- */

@media screen and (min-width: 768px) {
  .hover-opacity {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .hover-opacity:hover {
    opacity: 0.8;
  }
}
/*  js-tel-disabled
--------------------------------------------- */

.js-tel-disabled {
  outline: none;
  cursor: default;
}
/*  ai1ec-calendar
--------------------------------------------- */

.ai1ec-calendar {
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

.ai1ec-calendar .ai1ec-prev-year,
.ai1ec-calendar .ai1ec-next-year,
.ai1ec-calendar .ai1ec-views-dropdown {
  display: none;
}

.ai1ec-calendar .ai1ec-calendar-toolbar {
  border: none;
}

.ai1ec-calendar .ai1ec-minical-trigger {
  pointer-events: none;
}

.ai1ec-calendar .ai1ec-minical-trigger:hover {
  background-color: transparent !important;
}

.ai1ec-calendar .ai1ec-next-month,
.ai1ec-calendar .ai1ec-prev-month {
  position: absolute;
  top: -11%;
  float: none;
  font-size: 1.28571rem;
}

@media screen and (max-width: 767px) {
  .ai1ec-calendar .ai1ec-next-month,
  .ai1ec-calendar .ai1ec-prev-month {
    top: -16.3%;
    font-size: 4.8vw;
  }
}

.ai1ec-calendar .ai1ec-next-month:hover,
.ai1ec-calendar .ai1ec-prev-month:hover {
  background-color: transparent !important;
}

.ai1ec-calendar .ai1ec-next-month {
  right: 5.2%;
}

@media screen and (max-width: 767px) {
  .ai1ec-calendar .ai1ec-next-month {
    right: 1%;
  }
}

.ai1ec-calendar .ai1ec-next-month .ai1ec-fa-angle-right {
  font-size: 1.28571rem;
}

@media screen and (max-width: 767px) {
  .ai1ec-calendar .ai1ec-next-month .ai1ec-fa-angle-right {
    font-size: 4.8vw;
  }
}

.ai1ec-calendar .ai1ec-prev-month {
  left: 5.2%;
}

@media screen and (max-width: 767px) {
  .ai1ec-calendar .ai1ec-prev-month {
    left: 1%;
  }
}

.ai1ec-calendar .ai1ec-btn-sm {
  padding: 0;
  border: none;
}

.ai1ec-calendar .ai1ec-weekday {
  padding: 0 0 40px !important;
  background: none !important;
  color: #482426 !important;
  font-size: 1.14286rem;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .ai1ec-calendar .ai1ec-weekday {
    padding-bottom: 13.33333vw;
    font-size: 4.26667vw;
  }
}

.ai1ec-calendar .ai1ec-weekday:nth-of-type(7) {
  color: #0c8acb !important;
}

.ai1ec-calendar .ai1ec-weekday:nth-of-type(1) {
  color: #f26968 !important;
}

.ai1ec-calendar .ai1ec-calendar-title {
  font-weight: normal;
  font-size: 1.57143rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (max-width: 767px) {
  .ai1ec-calendar .ai1ec-calendar-title {
    display: inline-block;
    font-size: 5.86667vw;
  }
}

.ai1ec-calendar .ai1ec-subscribe-container {
  display: none;
}

.ai1ec-calendar .ai1ec-btn-toolbar {
  position: relative;
}

.ai1ec-calendar .ai1ec-btn-toolbar .ai1ec-pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-pack: center;
  margin-bottom: 25px;
  margin-left: 0;
  width: 100%;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  justify-content: center;
}

@media screen and (max-width: 767px) {
  .ai1ec-calendar .ai1ec-btn-toolbar .ai1ec-pagination {
    margin-bottom: 9.33333vw;
  }
}

.ai1ec-calendar .ai1ec-btn-toolbar .ai1ec-fa-calendar-o {
  display: none;
}

.ai1ec-calendar .ai1ec-month-view {
  border: none !important;
}

.ai1ec-calendar .ai1ec-month-view td {
  border: none !important;
}

.ai1ec-calendar .ai1ec-month-view td:nth-of-type(7) .ai1ec-load-view {
  color: #0c8acb;
}

.ai1ec-calendar .ai1ec-month-view td:nth-of-type(1) .ai1ec-load-view {
  color: #f26968;
}

.ai1ec-calendar .ai1ec-month-view .ai1ec-date {
  height: auto;
  background-color: transparent;
  color: #482426;
  text-align: center;
  font-size: 1.14286rem;
}

.ai1ec-calendar .ai1ec-month-view .ai1ec-date a {
  border-bottom: 1px solid !important;
}

@media screen and (max-width: 767px) {
  .ai1ec-calendar .ai1ec-month-view .ai1ec-date {
    font-size: 4.26667vw;
  }
}

.ai1ec-calendar .ai1ec-month-view .ai1ec-day-stretcher {
  height: 63px;
}

@media screen and (max-width: 767px) {
  .ai1ec-calendar .ai1ec-month-view .ai1ec-day-stretcher {
    height: 16.8vw;
  }
}

.ai1ec-calendar .ai1ec-month-view .ai1ec-today {
  background: none !important;
}

.ai1ec-calendar .ai1ec-month-view + .ai1ec-pull-left {
  display: none;
}

.ai1ec-calendar .ai1ec-load-view {
  color: #482426;
}

.ai1ec-calendar .ai1ec-load-view:hover {
  color: #482426;
}

.ai1ec-calendar .ai1ec-month-view td.ai1ec-empty {
  background: none !important;
}
/*  mod-accordion
--------------------------------------------- */

.mod-accordion {
  margin-bottom: 12px;
}

@media screen and (max-width: 767px) {
  .mod-accordion {
    margin-bottom: 4vw;
  }
}

.mod-accordion:last-of-type {
  margin-bottom: 0;
}

.mod-accordion__head {
  position: relative;
  padding: 34px 100px 34px 50px;
  border: 1px solid #e7d7d4;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

@media screen and (max-width: 767px) {
  .mod-accordion__head {
    padding: 6.4vw 13.06667vw 6.4vw 6.66667vw;
  }
}

.mod-accordion--qa .mod-accordion__head {
  padding-left: 65px;
}

@media screen and (max-width: 767px) {
  .mod-accordion--qa .mod-accordion__head {
    padding-left: 4.8vw;
  }
}

@media screen and (min-width: 768px) {
  .mod-accordion__head {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .mod-accordion__head:hover {
    opacity: 0.8;
  }
  .ie11 .mod-accordion__head {
    padding-top: 37px;
    padding-bottom: 31px;
  }
}

.mod-accordion__head::before {
  position: absolute;
  top: 2px;
  left: 2px;
  z-index: -1;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  border: 1px solid #e7d7d4;
  content: "";
}

.mod-accordion__head::after {
  position: absolute;
  top: 50%;
  right: 40px;
  display: block;
  width: 35px;
  height: 19px;
  background: url(../img/common/icon_acc_arrow_btm.svg) 0 0 no-repeat;
  background-size: 100% auto;
  content: "";
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media screen and (min-width: 768px) {
  .edge .mod-accordion__head::after {
    height: 20px;
  }
}

@media screen and (max-width: 767px) {
  .mod-accordion__head::after {
    right: 6.4vw;
    width: 4.8vw;
    height: 2.93333vw;
    background-image: url(../img/common/icon_acc_arrow_btm_sp.svg);
  }
}

.js-acc-open .mod-accordion__head::after {
  -webkit-transform: rotate(-180deg) translateY(50%);
  transform: rotate(-180deg) translateY(50%);
}

.mod-accordion__ttl {
  display: block;
  font-size: 1.57143rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (max-width: 767px) {
  .mod-accordion__ttl {
    font-size: 4.8vw;
  }
}

.mod-accordion--qa .mod-accordion__ttl {
  position: relative;
  padding-left: 55px;
}

@media screen and (max-width: 767px) {
  .mod-accordion--qa .mod-accordion__ttl {
    padding-left: 9.06667vw;
  }
}

.mod-accordion--qa .mod-accordion__ttl::before {
  position: absolute;
  top: 50%;
  left: 0;
  content: "Q";
  font-size: 2.5rem;
  font-family: "Times New Roman", serif;
  line-height: 1;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media screen and (min-width: 768px) {
  .ie11 .mod-accordion--qa .mod-accordion__ttl::before {
    top: calc(50% - 3px);
  }
}

@media screen and (max-width: 767px) {
  .mod-accordion--qa .mod-accordion__ttl::before {
    font-size: 6.93333vw;
  }
}

.mod-accordion__body {
  display: none;
  padding: 33px 70px 80px 65px;
}

@media screen and (max-width: 767px) {
  .mod-accordion__body {
    padding: 8% 4.8% 10.66667%;
  }
}

@media screen and (min-width: 768px) {
  .mod-accordion--qa .mod-accordion__body {
    padding-right: 70px;
    padding-left: 120px;
  }
}

@media screen and (max-width: 767px) {
  .mod-accordion--qa .mod-accordion__body {
    padding-top: 17.06667%;
  }
}

.mod-accordion--qa .mod-accordion__body-inner {
  position: relative;
}

.mod-accordion--qa .mod-accordion__body-inner::before {
  position: absolute;
  top: -7px;
  left: -55px;
  content: "A";
  font-size: 2.5rem;
  line-height: 1;
}

@media screen and (min-width: 768px) {
  .ie11 .mod-accordion--qa .mod-accordion__body-inner::before {
    top: -4px;
  }
}

@media screen and (max-width: 767px) {
  .mod-accordion--qa .mod-accordion__body-inner::before {
    top: -1.3em;
    left: 0;
    font-size: 6.93333vw;
  }
}

.mod-accordion__txt {
  letter-spacing: 0.3px;
  font-size: 1.28571rem;
  line-height: 2;
}

@media screen and (max-width: 767px) {
  .mod-accordion__txt {
    font-size: 4.8vw;
  }
}
/*  mod-anchors
--------------------------------------------- */

.mod-anchors {
  position: fixed;
  bottom: 15px;
  left: 0;
  z-index: 1;
  min-width: 1220px;
  width: 100%;
  border-top: 1px solid #e7d7d4;
  border-bottom: 1px solid #e7d7d4;
  background: rgba(255, 255, 255, 0.5);
}

@media screen and (max-width: 767px) {
  .mod-anchors {
    position: static;
    min-width: initial;
    min-width: auto;
  }
}

.mod-anchors__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-pack: center;
  padding-top: 25px;
  padding-bottom: 5px;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  justify-content: center;
}

@media screen and (min-width: 1921px) {
  .mod-anchors__list {
    margin-right: 60px;
    margin-left: 60px;
  }
  .ie11 .mod-anchors__list {
    padding-top: 28px;
    padding-bottom: 2px;
  }
}

@media screen and (max-width: 767px) {
  .mod-anchors__list {
    -ms-flex-pack: start;
    padding-top: 5.06667vw;
    padding-bottom: 5.06667vw;
    -webkit-box-pack: start;
    justify-content: flex-start;
  }
}

.mod-anchors__item {
  margin-right: 3.125%;
  margin-left: 3.125%;
}

@media screen and (min-width: 768px) {
  .mod-anchors__item {
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 767px) {
  .mod-anchors__item {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-right: 0;
    margin-left: 1em;
    padding-left: 10.13333vw;
    width: calc(50% - 1em);
    background: url(../img/common/icon_anchor.svg) 0 0.5em no-repeat;
    background-size: 8vw 2.93333vw;
  }
  .mod-anchors__item:nth-of-type(n + 3) {
    margin-top: 4.26667vw;
  }
  .mod-anchors__item:nth-of-type(2n) {
    margin-left: 0.5em;
  }
}

.mod-anchors__link {
  display: inline-block;
  color: #482426;
}

@media screen and (min-width: 768px) {
  .mod-anchors__link:hover {
    text-decoration: underline;
  }
}

@media screen and (max-width: 767px) {
  .mod-anchors__link {
    font-size: 4.26667vw;
  }
}
/*  mod-article-list
--------------------------------------------- */

.mod-article-list {
  margin-bottom: 95px;
}

@media screen and (max-width: 767px) {
  .mod-article-list {
    margin-bottom: 13.86667vw;
  }
}

.mod-article-list__list {
  margin-bottom: 60px;
}

.mod-article-list__item {
  border: 1px solid #e7d7d4;
}

@media screen and (max-width: 767px) {
  .mod-article-list__item {
    border: none;
  }
}

.mod-article-list__item:nth-of-type(n + 2) {
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .mod-article-list__item:nth-of-type(n + 2) {
    margin-top: 4vw;
  }
}

.mod-article-list__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-pack: justify;
  padding: 1.25% 0;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .mod-article-list__link {
    display: block;
    padding: 0;
  }
}

@media screen and (min-width: 768px) {
  .mod-article-list__link[href] {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .mod-article-list__link[href]:hover {
    opacity: 0.8;
  }
}

.mod-article-list__img {
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-left: 3.33333%;
  width: 45.83333%;
}

@media screen and (max-width: 767px) {
  .mod-article-list__img {
    margin-bottom: 1.6vw;
    padding-left: 0;
    width: 100%;
  }
}

.mod-article-list__img img {
  width: 100%;
}

.mod-article-list__head-img {
  position: absolute;
  top: -30px;
  left: 50%;
  width: 200px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

@media screen and (max-width: 767px) {
  .mod-article-list__head-img {
    top: -8vw;
    width: 53.33333%;
  }
}

.mod-article-list__txt-wrap {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 40px;
  padding-right: 4.16667%;
  padding-left: 6.25%;
  width: 54.16667%;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (max-width: 767px) {
  .mod-article-list__txt-wrap {
    padding-top: 0;
    padding-right: 2.66667vw;
    padding-left: 2.66667vw;
    width: 100%;
  }
}

.mod-article-list__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.mod-article-list__date {
  display: block;
  margin-bottom: 10px;
  width: 100px;
  font-size: 14px;
  font-family: "Times New Roman", serif;
}

@media screen and (max-width: 767px) {
  .mod-article-list__date {
    width: 25vw;
    letter-spacing: 0.05vw;
    font-size: 3.73333vw;
  }
}

.smile_report {
  text-align: center;
}

.mod-article-list__lower .smile_report {
  text-align: left !important;
}

.smile_report span {
  background: linear-gradient(90deg, #ff706f, #ff9e6f);
  color: white;
  padding: 4px 12px;
  border-radius: 20px;
  font-size: 1.03rem;
  display: inline-block;
}

@media screen and (max-width: 767px) {
  .smile_report span {
    font-size: 0.6rem;
  }
}

.mod-article-list__labels {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  margin-bottom: 25px;
  width: calc(100% - 85px);
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .mod-article-list__labels {
    margin-bottom: 4vw;
    width: calc(100% - 20vw - 2.13vw);
  }
}

.mod-article-list__label {
  display: inline-block;
  margin-right: 5px;
  margin-bottom: 5px;
  padding: 3px 8px;
  background-color: #874e4c;
  color: #fff;
  font-size: 0.92857rem;
}

@media screen and (min-width: 768px) {
  .ie11 .mod-article-list__label {
    padding-top: 6px;
    padding-bottom: 0px;
  }
  .windows.firefox .mod-article-list__label {
    padding-top: 4px;
    padding-bottom: 2px;
  }
}

.mod-article-list__label:last-of-type {
  margin-right: 0;
}

.mod-article-list__ttl {
  margin-bottom: 15px;
  font-size: 1.57143rem;
  line-height: 1.8;
}

@media screen and (min-width: 768px) {
  .ie11 .mod-article-list__ttl {
    margin-bottom: 12px;
  }
}

@media screen and (max-width: 767px) {
  .mod-article-list__ttl {
    margin-bottom: 2.66667vw;
    text-align: left;
    font-size: 5.86667vw;
    line-height: 1.8;
  }
}

.mod-article-list__txt {
  margin-bottom: 30px;
  width: 97%;
  font-size: 1.28571rem;
  line-height: 1.7;
}

@media screen and (min-width: 768px) {
  .ie11 .mod-article-list__txt {
    margin-bottom: 27px;
  }
}

@media screen and (max-width: 767px) {
  .mod-article-list__txt {
    margin-bottom: 0;
    width: 100%;
    font-size: 4.8vw;
  }
}
/*  mod-article-detail
--------------------------------------------- */

.mod-article-detail {
  margin-bottom: 100px;
  padding: 10px 30px 40px;
  border: 1px solid #e7d7d4;
}

@media screen and (max-width: 767px) {
  .mod-article-detail {
    margin-bottom: 29.33333vw;
    padding: 0;
    border: none;
  }
}

@media screen and (max-width: 767px) {
  .mod-article-detail__head {
    padding-left: 2.66667vw;
  }
}

.mod-article-detail__date {
  display: block;
  margin-bottom: 15px;
  font-size: 1rem;
  font-family: "Times New Roman", serif;
}

@media screen and (max-width: 767px) {
  .mod-article-detail__date {
    margin-bottom: 1.33333vw;
    font-size: 3.73333vw;
  }
}

.mod-article-detail__ttl {
  margin-bottom: 30px;
  font-size: 2.14286rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (min-width: 768px) {
  .ie11 .mod-article-detail__ttl {
    margin-bottom: 27px;
    padding-top: 3px;
  }
}

@media screen and (max-width: 767px) {
  .mod-article-detail__ttl {
    margin-bottom: 2.93333vw;
    font-size: 5.86667vw;
  }
}

@media screen and (max-width: 767px) {
  .mod-article-detail .mod-wysiwyg {
    padding-right: 2.66667vw;
    padding-left: 2.66667vw;
  }
}
/*  mod-arrow-link
--------------------------------------------- */

.mod-arrow-link__link {
  position: relative;
  display: inline-block;
  margin-right: 1px;
  padding-right: 66px;
  padding-bottom: 3px;
  border-bottom: 1px solid #482426;
}

@media screen and (min-width: 768px) {
  .mod-arrow-link__link {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .mod-arrow-link__link:hover {
    opacity: 0.8;
  }
}

.mod-arrow-link__link::after {
  position: absolute;
  right: 0;
  bottom: -1px;
  display: block;
  width: 20px;
  height: 1px;
  background-color: #482426;
  content: "";
  -webkit-transform: rotate(30deg);
  transform: rotate(30deg);
  -webkit-transform-origin: bottom right;
  transform-origin: bottom right;
}

.mod-arrow-link__txt {
  font-size: 1.14286rem;
}
/*  mod-banner
--------------------------------------------- */

.mod-banner__link {
  display: block;
}

@media screen and (min-width: 768px) {
  .mod-banner__link {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .mod-banner__link:hover {
    opacity: 0.8;
  }
}

.mod-banner__link img {
  width: 100%;
}
/*  mod-btn-more
--------------------------------------------- */

.mod-btn-more {
  margin-right: auto;
  margin-left: auto;
  width: 320px;
}

@media screen and (max-width: 767px) {
  .mod-btn-more {
    width: 80%;
  }
}

.mod-btn-more__link {
  display: block;
  padding-top: 15px;
  padding-bottom: 15px;
  background-color: #482426;
  color: #fff;
  text-align: center;
  font-size: 1.42857rem;
}

@media screen and (max-width: 767px) {
  .mod-btn-more__link {
    padding-top: 4.26667vw;
    padding-bottom: 4.26667vw;
    font-size: 4.8vw;
  }
}
/*  mod-col
--------------------------------------------- */

.mod-col {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-right: auto;
  margin-bottom: 60px;
  margin-left: auto;
  max-width: 1180px;
}

@media screen and (max-width: 767px) {
  .mod-col {
    margin-bottom: 24vw;
    padding-right: 2.13333%;
    padding-left: 2.13333%;
  }
}

.mod-col__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (min-width: 768px) {
  .mod-col--pc-col4 .mod-col__item {
    margin-right: 1.69492%;
    width: 23.72881%;
  }
  .mod-col--pc-col4 .mod-col__item:nth-of-type(4n) {
    margin-right: 0;
  }
  .mod-col--pc-col4 .mod-col__item:nth-of-type(n + 5) {
    margin-top: 50px;
  }
}

@media screen and (min-width: 768px) {
  .mod-col--pc-col3 .mod-col__item {
    margin-right: 2.54237%;
    width: 31.61017%;
  }
  .mod-col--pc-col3 .mod-col__item:nth-of-type(3n) {
    margin-right: 0;
  }
  .mod-col--pc-col3 .mod-col__item:nth-of-type(n + 4) {
    margin-top: 50px;
  }
}

@media screen and (max-width: 767px) {
  .mod-col--sp-col2 .mod-col__item {
    margin-right: 1.94986%;
    width: 49.02507%;
  }
  .mod-col--sp-col2 .mod-col__item:nth-of-type(2n) {
    margin-right: 0;
  }
  .mod-col--sp-col2 .mod-col__item:nth-of-type(n + 3) {
    margin-top: 8vw;
  }
}

@media screen and (max-width: 767px) {
  .mod-col--sp-wide .mod-col__item {
    width: 100%;
  }
  .mod-col--sp-wide .mod-col__item:nth-of-type(n + 2) {
    margin-top: 10.66667vw;
  }
}

.mod-col__img {
  margin-bottom: 35px;
}

@media screen and (max-width: 767px) {
  .mod-col__img {
    margin-bottom: 3.46667vw;
    border: 1px solid #e7d7d4;
  }
}

.mod-col__img img {
  width: 100%;
}

.mod-col__txt {
  text-align: center;
  font-size: 1.78571rem;
  line-height: 1.4;
}

@media screen and (max-width: 767px) {
  .mod-col__txt {
    font-size: 4.8vw;
  }
}

@media screen and (max-width: 767px) {
  .mod-col--sp-wide .mod-col__txt {
    font-size: 1.57143rem;
  }
}

.mod-col__txt .small {
  font-size: 0.8em;
}
/*  mod-gallery
--------------------------------------------- */

.mod-gallery {
  margin-right: auto;
  margin-bottom: 170px;
  margin-left: auto;
  max-width: 1190px;
}

@media screen and (max-width: 767px) {
  .mod-gallery {
    margin-bottom: 23.46667vw;
  }
}

.mod-gallery__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.mod-gallery__item {
  margin-right: 1.68067%;
  width: 32.20168%;
}

@media screen and (min-width: 768px) {
  .mod-gallery__item:nth-of-type(3n + 1) {
    margin-right: 0;
  }
  .mod-gallery__item:nth-of-type(n + 2) {
    margin-top: 1.68067%;
  }
}

@media screen and (max-width: 767px) {
  .mod-gallery__item {
    margin-right: 0;
    width: 100%;
  }
}

.mod-gallery__item:first-of-type {
  width: 100%;
}

.mod-gallery__link {
  display: block;
}

@media screen and (min-width: 768px) {
  .mod-gallery__link {
    border: 1px solid #e7d7d4;
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .mod-gallery__link:hover {
    opacity: 0.8;
  }
}

.mod-gallery__link img {
  width: 100%;
}

.mod-gallery .slick-dotted.slick-slider {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .mod-gallery .slick-dots {
    bottom: -11.2vw;
  }
}

.mod-gallery .slick-counter {
  display: none;
}

@media screen and (max-width: 767px) {
  .mod-gallery .slick-counter {
    display: block;
  }
}
/*  mod-main-block
--------------------------------------------- */

.mod-main-block {
  padding-right: 10px;
  padding-left: 10px;
  /* -- slider [start] -- */
  /* -- slider [end] -- */
}

@media screen and (max-width: 767px) {
  .mod-main-block {
    padding-right: 0;
    padding-left: 0;
  }
}

.mod-main-block--padding-right-none {
  padding-right: 0;
}

@media screen and (min-width: 768px) {
  .mod-main-block--sp-only {
    padding-right: 0;
    padding-left: 0;
  }
}

.mod-main-block__container {
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-right: auto;
  margin-left: auto;
  padding-right: 3.90625%;
  padding-bottom: 40px;
  padding-left: 3.90625%;
  max-width: 1350px;
  background-color: #e7d7d4;
}

@media screen and (min-width: 768px) {
  .mod-main-block--sp-only .mod-main-block__container {
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 0;
    background: none;
  }
  .mod-main-block--sp-only .mod-main-block__container::before {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .mod-main-block__container {
    padding-right: 4%;
    padding-bottom: 13.33333vw;
    padding-left: 4%;
  }
}

.mod-main-block__container::before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 50px;
  background-color: #fff;
  content: "";
}

@media screen and (max-width: 767px) {
  .mod-main-block__container::before {
    height: 16vw;
  }
}

.mod-main-block__contents {
  position: relative;
  margin-right: auto;
  margin-left: auto;
  max-width: 1200px;
  border: 1px solid #e7d7d4;
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .mod-main-block--sp-only .mod-main-block__contents {
    max-width: initial;
    max-width: none;
    border: none;
  }
}

.mod-main-block__contents-inner {
  padding: 35px 3.33333% 25px;
}

@media screen and (max-width: 767px) {
  .mod-main-block__contents-inner {
    padding: 8vw 7.30994% 11.2vw;
  }
}

.mod-main-block .slick-dotted.slick-slider {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .mod-main-block .slick-dotted.slick-slider {
    margin-bottom: 18.66667vw;
  }
}

.mod-main-block__slide {
  outline: none;
}

.mod-main-block__slide img {
  width: 100%;
}

.mod-main-block .slick-dots {
  bottom: 20px;
}

@media screen and (max-width: 767px) {
  .mod-main-block .slick-dots {
    bottom: -9.33333vw;
  }
}

.mod-main-block .slick-dots li {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-right: 9.5px;
  margin-left: 9.5px;
  width: 10px;
  height: 10px;
  border: 1px solid #874e4c;
  border-radius: 50%;
  background-color: #fff;
}

.mod-main-block .slick-dots li.slick-active {
  background-color: #874e4c;
}

.mod-main-block .slick-dots li button {
  width: 100%;
  height: 100%;
}

.mod-main-block .slick-dots li button::before {
  display: none;
}

.mod-main-block__ttl {
  margin-top: 45px;
  color: #874e4c;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .mod-main-block__ttl {
    margin-bottom: 4.8vw;
  }
}

.mod-main-block__ttl-en {
  display: block;
  font-size: 2.5rem;
  font-family: "Times New Roman", serif;
}

@media screen and (max-width: 767px) {
  .mod-main-block__ttl-en {
    margin-bottom: 1.86667vw;
    font-size: 6.93333vw;
    line-height: 1.2;
  }
}

.mod-main-block__ttl-jp {
  display: block;
  font-size: 1.14286rem;
}

@media screen and (max-width: 767px) {
  .mod-main-block__ttl-jp {
    font-size: 4.26667vw;
  }
}

.mod-main-block__txt-capacity {
  display: block;
  margin-top: -28px;
  color: #874e4c;
  text-align: right;
  font-size: 1.28571rem;
}

@media screen and (max-width: 767px) {
  .mod-main-block__txt-capacity {
    margin-top: 0;
    text-align: center;
    font-size: 4.8vw;
  }
}

.mod-main-block__txt {
  margin-top: 30px;
  margin-bottom: 20px;
  text-align: center;
  font-size: 1.28571rem;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .mod-main-block__txt {
    margin-top: 5.86667vw;
    margin-bottom: 0;
    font-size: 4.8vw;
  }
}
/*  mod-media
--------------------------------------------- */

.mod-media__list {
  margin-right: auto;
  margin-left: auto;
  max-width: 996px;
}

.mod-media--wide .mod-media__list {
  max-width: 1240px;
}

.mod-media__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-pack: justify;
  counter-increment: item;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .mod-media__item {
    display: block;
  }
}

.mod-media__item:nth-of-type(n + 2) {
  margin-top: 50px;
}

@media screen and (max-width: 767px) {
  .mod-media__item:nth-of-type(n + 2) {
    margin-top: 8.53333vw;
  }
}

.mod-media__item:nth-of-type(2n) {
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
}

.mod-media__img {
  width: 45.18072%;
}

@media screen and (max-width: 767px) {
  .mod-media__img {
    margin-bottom: 6.66667vw;
    width: 100%;
  }
}

.mod-media__img img {
  width: 100%;
}

.mod-media__txt-wrap {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 75px;
  padding-right: 2.51004%;
  padding-left: 2.51004%;
  width: 50.2008%;
  color: #874e4c;
  text-align: center;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (max-width: 767px) {
  .mod-media__txt-wrap {
    padding-top: 0;
    width: 100%;
  }
}

.mod-media__txt-wrap *:last-child {
  margin-bottom: 0;
}

.mod-media__number {
  font-size: 2.5rem;
  font-family: "Times New Roman", serif;
}

@media screen and (max-width: 767px) {
  .mod-media__number {
    font-size: 10.66667vw;
  }
}

.mod-media__number::before {
  content: counter(item, decimal-leading-zero);
}

.mod-media__ttl {
  margin-bottom: 27px;
  font-size: 1.71429rem;
}

@media screen and (max-width: 767px) {
  .mod-media__ttl {
    margin-bottom: 0.85714rem;
    font-size: 5.86667vw;
  }
}

.mod-media__txt {
  margin-bottom: 26px;
  font-size: 1.28571rem;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .mod-media__txt {
    margin-bottom: 8vw;
    font-size: 4.8vw;
  }
}
/*  mod-media2
--------------------------------------------- */

.mod-media2 {
  margin-bottom: 140px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .mod-media2 {
    margin-bottom: 21.33333vw;
  }
}

.mod-media2__img img {
  width: 100%;
}

.mod-media2__txt-wrap {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-right: auto;
  margin-left: auto;
  width: 88.33333%;
}

@media screen and (max-width: 767px) {
  .mod-media2__txt-wrap {
    padding-right: 2.13333%;
    padding-left: 2.13333%;
    width: 100%;
  }
}

.mod-media2__ttl {
  margin-top: 43px;
  font-size: 1.78571rem;
}

@media screen and (max-width: 767px) {
  .mod-media2__ttl {
    margin-top: 8vw;
    font-size: 5.86667vw;
  }
}

.mod-media2__txt {
  margin-top: 25px;
  font-size: 1.57143rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (max-width: 767px) {
  .mod-media2__txt {
    margin-top: 5.33333vw;
    font-size: 4.8vw;
  }
}
/*  mod-media3
--------------------------------------------- */

.mod-media3 {
  margin-bottom: 120px;
}

@media screen and (max-width: 767px) {
  .mod-media3 {
    margin-bottom: 18.66667vw;
  }
}

.mod-media3__list {
  margin-bottom: 60px;
}

.mod-media3__item {
  padding: 3.33333% 0;
  border: 1px solid #e7d7d4;
}

@media screen and (max-width: 767px) {
  .mod-media3__item {
    padding: 0 0 10.13333vw;
    border: none;
    background-color: #e7d7d4;
  }
  .mod-media3__item:last-of-type {
    padding-bottom: 0;
  }
}

.mod-media3__item:nth-of-type(n + 2) {
  margin-top: 50px;
}

@media screen and (max-width: 767px) {
  .mod-media3__item:nth-of-type(n + 2) {
    margin-top: 8vw;
  }
}

.mod-media3__item-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-pack: justify;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .mod-media3__item-inner {
    padding-right: 2.13333%;
    padding-bottom: 10.66667vw;
    padding-left: 2.13333%;
    background-color: #fff;
  }
}

.mod-media3__img {
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-left: 3.33333%;
  width: 45.83333%;
}

@media screen and (max-width: 767px) {
  .mod-media3__img {
    margin-bottom: 7.2vw;
    padding-left: 0;
    width: 100%;
  }
}

.mod-media3__img img {
  width: 100%;
}

.mod-media3__txt-wrap {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-right: 4.16667%;
  padding-left: 6.25%;
  width: 54.16667%;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (max-width: 767px) {
  .mod-media3__txt-wrap {
    padding-right: 2.78552%;
    padding-left: 2.78552%;
    width: 100%;
  }
}

.mod-media3__date {
  display: block;
  margin-bottom: 15px;
  width: 85px;
  font-size: 1.14286rem;
  font-family: "Times New Roman", serif;
}

@media screen and (max-width: 767px) {
  .mod-media3__date {
    margin-bottom: 5.33333vw;
    width: 20vw;
    letter-spacing: 0.05vw;
    font-size: 3.73333vw;
  }
}

.mod-media3__ttl {
  margin-top: 5px;
  margin-bottom: 15px;
  font-size: 1.85714rem;
  line-height: 1.6;
}

@media screen and (max-width: 767px) {
  .mod-media3__ttl {
    margin-top: 0;
    margin-bottom: 2.66667vw;
    text-align: left;
    font-size: 5.86667vw;
    line-height: 1.8;
  }
}

.mod-media3__info {
  font-size: 1.28571rem;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .mod-media3__info {
    font-size: 4.8vw;
  }
}

.mod-media3__txt {
  margin-bottom: 50px;
  width: 97%;
  font-size: 1.28571rem;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .mod-media3__txt {
    margin-bottom: 15.46667vw;
    width: 100%;
    font-size: 4.8vw;
  }
}
/*  mod-mfp-popup
--------------------------------------------- */

.mod-mfp-popup.mfp-bg {
  background: rgba(120, 120, 120, 0.5);
}

.mod-mfp-popup .mfp-content {
  padding: 45px 30px 80px;
  border: 1px solid #e7d7d4;
  background-color: #fff;
}

@media screen and (max-width: 767px) {
  .mod-mfp-popup .mfp-content {
    padding: 4.53333vw 3.2vw 13.33333vw;
  }
}

.mod-mfp-popup .mfp-content .mfp-arrow {
  display: block;
}

.mod-mfp-popup .mfp-figure:after {
  display: none;
}

.mod-mfp-popup img.mfp-img {
  padding-top: 0;
  padding-bottom: 0;
}

.mod-mfp-popup .mfp-figure figure {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
}

.mod-mfp-popup .mfp-bottom-bar {
  position: static;
  margin-top: 0;
}

.mod-mfp-popup .mfp-title {
  top: 50px;
  left: 0;
  margin-right: auto;
  margin-left: auto;
  padding-right: 0;
  padding-bottom: 30px;
  max-width: 400px;
  width: 100%;
  color: #874e4c;
  text-align: center;
  font-size: 1.71429rem;
  line-height: 1.2;
}

@media screen and (max-width: 767px) {
  .mod-mfp-popup .mfp-title {
    padding-bottom: 3.73333vw;
    font-size: 4.26667vw;
  }
}

.mod-mfp-popup .mfp-title:empty {
  display: none;
}

@media screen and (max-width: 767px) {
  .mod-mfp-popup .mfp-container {
    padding-right: 4%;
    padding-left: 4%;
  }
}

.mod-mfp-popup .mfp-counter {
  top: auto;
  right: auto;
  bottom: 20px;
  left: 20px;
  color: #482426;
  font-size: 1.14286rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (max-width: 767px) {
  .mod-mfp-popup .mfp-counter {
    bottom: 4.26667vw;
    left: 3.2vw;
    font-size: 3.2vw;
  }
}

.mod-mfp-popup .mfp-counter::before {
  content: "image ";
}

.mod-mfp-popup .mfp-close {
  position: absolute;
  top: auto;
  right: 30px;
  bottom: 20px;
  padding-right: 0;
  width: 36px;
  height: 36px;
  background: #e7d7d4 url(../img/common/icon_popup_close.svg) center center
    no-repeat;
  background-size: 25px 25px;
  font-size: 0;
  line-height: 1;
  opacity: 1;
  cursor: pointer;
}

@media screen and (max-width: 767px) {
  .mod-mfp-popup .mfp-close {
    right: 3.2vw;
    bottom: 3.46667vw;
    width: 8vw;
    height: 8vw;
    background-size: 5.6vw 5.6vw;
  }
}

.mod-mfp-popup .mfp-arrow {
  display: none;
}

.mod-mfp-popup .custom-arrow {
  position: absolute;
  top: 50%;
  padding: 10px;
  width: 19px;
  height: 36px;
  background-size: 100% 100%;
  cursor: pointer;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
  .mod-mfp-popup .custom-arrow {
    padding: 2.66667vw;
    width: 5.06667vw;
    height: 9.6vw;
  }
}

.mod-mfp-popup .custom-arrow--prev {
  left: calc(30px + 2.53165%);
  background: url(../img/common/icon_popup_arrow_left.svg) 50% 50%
    no-repeat;
}

@media screen and (max-width: 767px) {
  .mod-mfp-popup .custom-arrow--prev {
    left: 3.46667vw;
  }
}

.mod-mfp-popup .custom-arrow--next {
  right: calc(30px + 2.53165%);
  background: url(../img/common/icon_popup_arrow_right.svg) 50% 50%
    no-repeat;
}

@media screen and (max-width: 767px) {
  .mod-mfp-popup .custom-arrow--next {
    right: 3.46667vw;
  }
}
/*  mod-acc-block
--------------------------------------------- */

.mod-acc-block {
  margin-bottom: 20px;
  padding-right: 10px;
  padding-left: 10px;
}

@media screen and (max-width: 767px) {
  .mod-acc-block {
    padding-right: 0;
    padding-left: 0;
  }
}

.mod-acc-block:last-of-type {
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .mod-acc-block:last-of-type {
    margin-bottom: 1.86666vw;
  }
}

.js-acc-open .mod-acc-block {
  margin-bottom: 140px;
}

@media screen and (max-width: 767px) {
  .js-acc-open .mod-acc-block {
    margin-bottom: 24vw;
  }
}

.mod-acc-block__container {
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-right: auto;
  margin-left: auto;
  padding-right: 2.90625%;
  padding-left: 2.90625%;
  padding-bottom: 42px;
}

@media screen and (max-width: 767px) {
  .mod-acc-block__container {
    margin-top: 0;
    padding-right: 4.26667%;
    padding-left: 4.26667%;
    padding-bottom: 11.46667vw;
  }
}

.mod-acc-block__container--first {
  margin-top: 20px;
  margin-bottom: 50px;
  max-width: 1350px;
  background-color: #e7d7d4;
}

@media screen and (max-width: 767px) {
  .mod-acc-block__container--first {
    margin-top: 14.4vw;
    padding-bottom: 17.6vw;
  }
}

@media screen and (max-width: 767px) {
  .js-acc-open .mod-acc-block__container--first {
    background-color: #e7d7d4 !important;
    padding-bottom: 17.6vw !important;
  }
}

.js-acc-open .mod-acc-block__container {
  padding-right: 2.90625%;
  padding-left: 2.90625%;
  background-color: #fff;
}

@media screen and (min-width: 1921px) {
  .js-acc-open .mod-acc-block__container {
    padding-right: 75px;
    padding-left: 75px;
  }
}

@media screen and (max-width: 767px) {
  .js-acc-open .mod-acc-block__container {
    padding-right: 4%;
    padding-bottom: 11.46667vw;
    padding-left: 4%;
  }
}

.mod-acc-block__container::before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 62px;
  background-color: #fff;
  content: "";
}

@media screen and (max-width: 767px) {
  .mod-acc-block__container::before {
    height: 17.6vw;
  }
}

.mod-acc-block__contents {
  position: relative;
  margin-right: auto;
  margin-left: auto;
  max-width: 1200px;
  border: 1px solid #e7d7d4;
  background-color: #fff;
}

@media screen and (max-width: 767px) {
  .mod-acc-block__contents {
    /*border: none;*/
  }
}

@media screen and (max-width: 767px) {
  .mod-acc-block__container--first .mod-acc-block__contents {
    margin-bottom: -5.33333vw;
    border: 1px solid #e7d7d4;
  }
}
/*  mod-btn
--------------------------------------------- */

.mod-btn {
  margin-right: auto;
  margin-left: auto;
  width: 300px;
}

@media screen and (max-width: 767px) {
  .mod-btn {
    width: 80vw;
  }
}

.mod-btn[type="submit"] {
  cursor: pointer;
}

@media screen and (min-width: 768px) {
  .mod-btn[type="submit"] {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .mod-btn[type="submit"]:hover {
    opacity: 0.8;
  }
}

.mod-btn--width-auto {
  width: auto;
  text-align: center;
}

.mod-btn__link {
  position: relative;
  display: block;
  padding-top: 10px;
  padding-bottom: 10px;
  background-color: #f26968;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .ie11 .mod-btn__link {
    padding-top: 12px;
    padding-bottom: 9px;
  }
}

@media screen and (min-width: 768px) and (min-width: 768px) {
  .chrome .mod-btn--width-auto .mod-btn__link,
  .mac.safari .mod-btn--width-auto .mod-btn__link,
  .windows.firefox .mod-btn--width-auto .mod-btn__link {
    padding-top: 11px;
    padding-bottom: 9px;
  }
}

@media screen and (max-width: 767px) {
  .mod-btn__link {
    padding-top: 2.66667vw;
    padding-bottom: 2.66667vw;
  }
}

@media screen and (min-width: 768px) {
  .mod-btn__link[href] {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .mod-btn__link[href]:hover {
    opacity: 0.8;
  }
}

.mod-btn--width-auto .mod-btn__link {
  display: inline-block;
  padding-right: 32px;
  padding-left: 32px;
}

@media screen and (max-width: 767px) {
  .mod-btn--width-auto .mod-btn__link {
    padding-right: 12vw;
    padding-left: 12vw;
  }
}
/*.mod-btn__link::before, .mod-btn__link::after {
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    height: 1px;
    background-color: #482426;
    content: "";
}*/

.mod-btn__link::before {
  top: 2px;
}

@media screen and (max-width: 767px) {
  .mod-btn__link::before {
    top: 0.53333vw;
  }
}

.mod-btn__link::after {
  bottom: 2px;
}

@media screen and (max-width: 767px) {
  .mod-btn__link::after {
    bottom: 0.53333vw;
  }
}

.mod-btn__txt {
  color: #ffffff;
  font-size: 1.14286rem;
  font-family: sans-serif;
}

.apoint {
  margin: 20px auto;
}

@media screen and (max-width: 767px) {
  .apoint {
    margin: 6.13333vw auto;
  }
}

.mod-btn__arrow img {
  width: 1.7em;
  vertical-align: bottom;
  margin-left: 10px;
}

@media screen and (max-width: 767px) {
  .mod-btn__txt {
    font-size: 4.26667vw;
  }
}
/*  mod-btn02
--------------------------------------------- */

.mod-btn02 {
  margin-right: auto;
  margin-left: auto;
  width: 438px;
}

@media screen and (max-width: 767px) {
  .mod-btn02 {
    width: 80%;
  }
}

.mod-btn02__link {
  position: relative;
  display: block;
  padding-top: 26px;
  padding-bottom: 26px;
  border: 1px solid #707070;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .mod-btn02__link {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .mod-btn02__link:hover {
    opacity: 0.8;
  }
  .ie11 .mod-btn02__link {
    padding-top: 29px;
    padding-bottom: 23px;
  }
}

@media screen and (max-width: 767px) {
  .mod-btn02__link {
    padding-top: 4.26667vw;
    padding-bottom: 4.26667vw;
  }
}

.mod-btn02__txt {
  font-size: 1.14286rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (max-width: 767px) {
  .mod-btn02__txt {
    font-size: 4.26667vw;
  }
}

.mod-btn02__arrow {
  position: absolute;
  top: 56%;
  left: 30px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 70px;
  height: 1px;
  border-bottom: 1px solid #482426;
}

@media screen and (max-width: 767px) {
  .mod-btn02__arrow {
    left: 5.33333vw;
    width: 12vw;
  }
}

.mod-btn02__arrow::before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 20px;
  height: 1px;
  background-color: #482426;
  content: "";
  -webkit-transform: rotate(-30deg);
  transform: rotate(-30deg);
  -webkit-transform-origin: top left;
  transform-origin: top left;
}

@media screen and (max-width: 767px) {
  .mod-btn02__arrow::before {
    width: 4vw;
  }
}
/*  mod-tab-block
--------------------------------------------- */

@media screen and (min-width: 768px) {
  .mod-tab-block {
    margin-right: auto;
    margin-left: auto;
    max-width: 1200px;
  }
}

.mod-tab-block--wide {
  max-width: initial;
  max-width: none;
}

.mod-tab-block__selectors {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.mod-tab-block__selector {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  -ms-flex-align: center;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 24px;
  padding-bottom: 24px;
  border: 1px solid #e7d7d4;
  text-align: center;
  font-size: 1.28571rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  cursor: pointer;
  -webkit-box-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  align-items: center;
}

@media screen and (min-width: 768px) {
  .ie11 .mod-tab-block__selector {
    padding-top: 27px;
    padding-bottom: 21px;
  }
}

@media screen and (max-width: 767px) {
  .mod-tab-block__selector {
    padding-top: 4.26667vw;
    padding-bottom: 4.26667vw;
    line-height: 1.25;
  }
}

.mod-tab-block__selector.current {
  border: 1px solid #707070;
  background-color: #482426;
  color: #fff;
  cursor: default;
}

.mod-tab-block__selector:not(.current) {
  position: relative;
}

@media screen and (min-width: 768px) {
  .mod-tab-block__selector:not(.current) {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .mod-tab-block__selector:not(.current):hover {
    opacity: 0.8;
  }
}

.mod-tab-block__selector:not(.current)::before {
  position: absolute;
  top: 2px;
  left: 2px;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  border: 1px solid #e7d7d4;
  content: "";
}

.mod-tab-block--col2 .mod-tab-block__selector {
  width: 50%;
}

@media screen and (max-width: 767px) {
  .mod-tab-block__body {
    padding-right: 2.13333%;
    padding-left: 2.13333%;
  }
}

.mod-tab-block__body--wide {
  padding-right: 0;
  padding-left: 0;
}

.mod-tab-block__contents {
  display: none;
}

.mod-tab-block__contents.current {
  display: block;
}
/*  mod-txt-link
--------------------------------------------- */

.mod-txt-link {
  text-decoration: underline;
}

@media screen and (min-width: 768px) {
  .mod-txt-link:hover {
    text-decoration: none;
  }
}
/*  mod-container
--------------------------------------------- */

.mod-container {
  margin-right: auto;
  margin-left: auto;
  max-width: 1200px;
}

@media screen and (max-width: 767px) {
  .mod-container {
    margin-right: 2.13333%;
    margin-left: 2.13333%;
    max-width: initial;
    max-width: none;
  }
}

.mod-container-m {
  margin-right: auto;
  margin-left: auto;
  max-width: 1280px;
}

@media screen and (max-width: 767px) {
  .mod-container-m {
    margin-right: 2.13333%;
    margin-left: 2.13333%;
    max-width: initial;
    max-width: none;
  }
}

@media screen and (min-width: 768px) {
  .mod-container-m-pc {
    margin-right: auto;
    margin-left: auto;
    max-width: 1280px;
  }
}

@media screen and (min-width: 768px) {
  .mod-container-pc {
    margin-right: auto;
    margin-left: auto;
    max-width: 1200px;
  }
}

@media screen and (max-width: 767px) {
  .mod-container-sp {
    margin-right: 2.13333%;
    margin-left: 2.13333%;
    max-width: initial;
    max-width: none;
  }
}
/*  mod-contact
--------------------------------------------- */

.mod-contact {
  position: relative;
  margin-right: auto;
  margin-left: auto;
  padding-top: 58px;
  padding-bottom: 55px;
  max-width: 1200px;
  background: #e7d7d4 url(../img/common/bg_contact-block_01.png) 0 100%
    no-repeat;
  background-size: 174px 130px;
}

@media screen and (min-width: 768px) {
  .ie11 .mod-contact {
    padding-top: 61px;
    padding-bottom: 52px;
  }
}

@media screen and (max-width: 767px) {
  .mod-contact {
    padding-top: 8.53333vw;
    padding-bottom: 7.46667vw;
    width: 100%;
    background-image: url(../img/common/bg_contact-block_01_sp.png);
    background-size: 20.8vw 19.2vw;
  }
}

.mod-contact::before {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 164px;
  height: 139px;
  background: url(../img/common/bg_contact-block_02.png) 100% 0 no-repeat;
  background-size: 100% auto;
  content: "";
}

@media screen and (max-width: 767px) {
  .mod-contact::before {
    background-image: url(../img/common/bg_contact-block_02_sp.png);
    background-size: 19.46667vw 19.2vw;
  }
}

.mod-contact__ttl {
  position: relative;
  z-index: 1;
  margin-bottom: 40px;
  padding-right: 0.5em;
  padding-left: 0.5em;
  text-align: center;
  font-size: 2.14286rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  line-height: 1.3;
}

@media screen and (max-width: 767px) {
  .mod-contact__ttl {
    margin-bottom: 4.26667vw;
    font-size: 4.8vw;
    line-height: 1.6;
  }
}

.mod-contact__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  -ms-flex-align: center;
  -webkit-box-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .mod-contact__body {
    display: block;
  }
}

.mod-contact__left {
  margin-right: 64px;
  font-size: 2.85714rem;
}

@media screen and (max-width: 767px) {
  .mod-contact__left {
    margin-right: 0;
    text-align: center;
    font-size: 6.4vw;
  }
}

.mod-contact__tel {
  margin-right: 0.3em;
}

.mod-contact__btn {
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 21px 55px;
  background-color: #f26968;
  color: #fff;
  text-align: center;
  font-size: 2.28571rem;
}

@media screen and (min-width: 768px) {
  .mod-contact__btn {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .mod-contact__btn:hover {
    opacity: 0.8;
  }
  .ie11 .mod-contact__btn {
    padding-top: 24px;
    padding-bottom: 18px;
  }
}

@media screen and (max-width: 767px) {
  .mod-contact__btn {
    margin-top: 4.53333vw;
    margin-right: auto;
    margin-left: auto;
    padding: 3.2vw 0.25em;
    width: 86.4%;
    font-size: 6.4vw;
  }
}
/*  mod-side-padding
--------------------------------------------- */

.mod-side-padding {
  padding-right: 10px;
  padding-left: 10px;
}

@media screen and (max-width: 767px) {
  .mod-side-padding {
    padding-right: 2.13333%;
    padding-left: 2.13333%;
  }
}

@media screen and (min-width: 768px) {
  .mod-side-padding-pc {
    padding-right: 10px;
    padding-left: 10px;
  }
}

@media screen and (max-width: 767px) {
  .mod-side-padding-sp {
    padding-right: 2.13333%;
    padding-left: 2.13333%;
  }
}
/*  mod-lead-txt
--------------------------------------------- */

.mod-lead-txt {
  margin-right: auto;
  margin-bottom: 90px;
  margin-left: auto;
  max-width: 1060px;
  font-size: 1.57143rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .mod-lead-txt {
    margin-right: auto;
    margin-bottom: 20vw;
    margin-left: auto;
    width: 74.66667%;
    text-align: center;
    font-size: 5.33333vw;
  }
  .mod-lead-txt--sp-small {
    font-size: 4.8vw;
  }
  .mod-lead-txt--sp-wide {
    width: 85%;
  }
}
/*  mod-narrowdown
--------------------------------------------- */

.mod-narrowdown {
  padding-top: 47px;
  padding-bottom: 35px;
  background-color: #e7d7d4;
}

.mod-narrowdown--gallery {
  position: relative;
  overflow-x: auto;
  overflow-y: hidden;
  margin-bottom: 70px;
  padding-bottom: 8px;
}

@media screen and (min-width: 768px) {
  .mod-narrowdown--gallery::before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 270px;
    height: 217px;
    background: url(../img/common/bg_narrowdown_01.png) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
  }
}

@media screen and (max-width: 767px) {
  .mod-narrowdown--gallery {
    margin-bottom: 6.66667vw;
    padding-top: 4vw;
    padding-bottom: 2.93333vw;
  }
}

.mod-narrowdown__ttl {
  position: absolute;
  top: calc(50% + 0.2em);
  left: 55px;
  color: #874e4c;
  font-size: 1.42857rem;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media screen and (min-width: 768px) {
  .ie11 .mod-narrowdown__ttl {
    top: calc(50% + 0.5em);
  }
}

@media screen and (max-width: 767px) {
  .mod-narrowdown__ttl {
    top: 50%;
    left: 5.86667vw;
    font-size: 5.33333vw;
  }
}

.mod-narrowdown__list {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  -ms-flex-align: center;
  margin-right: auto;
  margin-bottom: 16px;
  margin-left: auto;
  width: 980px;
  -webkit-box-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  align-items: center;
}

.mod-narrowdown__list--narrow {
  padding-left: 85px;
  width: 980px;
}

@media screen and (max-width: 767px) {
  .mod-narrowdown__list--narrow {
    padding-left: 0;
    width: 288vw;
  }
}

.mod-narrowdown--gallery .mod-narrowdown__list {
  -ms-flex-pack: start;
  margin-bottom: 0;
  -webkit-box-pack: start;
  justify-content: flex-start;
}

@media screen and (max-width: 767px) {
  .mod-narrowdown--gallery .mod-narrowdown__list {
    padding-left: 27.73333vw;
  }
}

.mod-narrowdown__item {
  margin-right: 0.83333%;
  margin-bottom: 26px;
  margin-left: 0.83333%;
}

@media screen and (max-width: 767px) {
  .mod-narrowdown--gallery .mod-narrowdown__item {
    margin-right: 2.66667vw;
    margin-bottom: 2.93333vw;
    margin-left: 2.66667vw;
  }
}

.mod-narrowdown__item label {
  cursor: pointer;
}

.mod-narrowdown__item input {
  display: none;
}

.mod-narrowdown__item input + span {
  display: block;
  padding: 5px 25px 4px;
  border-bottom: 1px solid #fff;
  font-size: 1.28571rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}

@media screen and (min-width: 768px) {
  .ie11 .mod-narrowdown__item input + span {
    padding-top: 8px;
    padding-bottom: 2px;
  }
}

@media screen and (max-width: 767px) {
  .mod-narrowdown--gallery .mod-narrowdown__item input + span {
    padding: 2.93333vw 3.73333vw 2.66667vw;
    font-size: 4.8vw;
  }
}

.mod-narrowdown__item input:checked + span {
  position: relative;
  padding-bottom: 5px;
  border-bottom: none;
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .ie11 .mod-narrowdown__item input:checked + span {
    padding-bottom: 3px;
  }
}

@media screen and (max-width: 767px) {
  .mod-narrowdown__item input:checked + span {
    padding-bottom: 2.93333vw;
  }
}

.mod-narrowdown__item input:checked + span::after {
  position: absolute;
  top: 2px;
  left: 2px;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  border: 1px solid #e7d7d4;
  content: "";
}

@media screen and (max-width: 767px) {
  .mod-narrowdown__select-wrap {
    margin-bottom: 8vw;
    padding-right: 4%;
    padding-left: 4%;
  }
}

.mod-narrowdown__select {
  width: 100%;
}

.mod-narrowdown__select .ms-choice {
  height: 12vw;
  border: none;
  border-bottom: 1px solid #fff;
  border-radius: 0;
  background: none;
}

.mod-narrowdown__select .ms-drop {
  margin-top: 1.33333vw;
}

.mod-narrowdown__select .ms-drop input {
  display: none;
}

.mod-narrowdown__select .ms-drop input + span::before {
  position: absolute;
  top: 1.3vw;
  left: 0;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 4.26667vw;
  height: 4.26667vw;
  border: 1px solid #482426;
  content: "";
}

.mod-narrowdown__select .ms-drop input:checked + span::after {
  position: absolute;
  top: 2.5vw;
  left: 0.9vw;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 2.66667vw;
  height: 1.33333vw;
  border-top: 0.53333vw solid #482426;
  border-right: 0.53333vw solid #482426;
  content: "";
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

.mod-narrowdown__select .ms-choice > span,
.mod-narrowdown__select .ms-drop ul > li label {
  color: #482426;
  font-size: 4.8vw;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

.mod-narrowdown__select .ms-choice > span {
  top: 50%;
  padding-right: 11.5942%;
  padding-left: 5.7971%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.mod-narrowdown__select .ms-drop ul > li label {
  padding-left: 5.33333vw;
}

.mod-narrowdown__select .ms-choice > div.icon-caret {
  top: 4.66667vw;
  right: 0.8vw;
  margin-top: 0;
  width: 5.6vw;
  height: 3.2vw;
  border: none;
  background: url(../img/common/icon_selecct_arrow.svg) 0 0 no-repeat;
  background-size: 100% auto;
}

.mod-narrowdown__select .ms-choice > div.icon-caret.open {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.mod-narrowdown .mod-btn {
  display: block;
  margin-right: auto;
  margin-left: auto;
  cursor: pointer;
}

@media screen and (min-width: 768px) {
  .mod-narrowdown .mod-btn {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .mod-narrowdown .mod-btn:hover {
    opacity: 0.8;
  }
}

.mod-narrowdown .mod-btn__txt {
  font-size: 1.14286rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (max-width: 767px) {
  .mod-narrowdown .mod-btn__txt {
    font-size: 4.8vw;
  }
}
/*  mod-nav
--------------------------------------------- */

.mod-nav {
  display: none;
}

@media screen and (max-width: 767px) {
  .mod-nav {
    position: fixed;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
  }
}

.mfp-zoom-out-cur .mod-nav {
  opacity: 0;
}

.mod-nav--fixed {
  z-index: 99;
  display: none;
}

@media screen and (min-width: 768px) {
  .mod-nav--fixed {
    display: none !important;
  }
}

.mod-nav__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

.mod-nav__item {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 24.53333%;
  height: 12.8vw;
}

.mod-nav--fixed .mod-nav__item {
  width: 33.33333%;
  border-right: 1px solid #fff;
}

.mod-nav--fixed .mod-nav__item:last-of-type {
  border: none;
}

.mod-nav__link {
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 21.6%;
  height: 100%;
  background-color: #f26968;
  background-repeat: no-repeat;
  text-align: center;
}

.mod-nav__item--tel .mod-nav__link {
  background-image: url(../img/common/icon_tel.svg);
  background-position: 50% 16.93%;
  background-size: 5.86667vw auto;
}

.mod-nav__item--fair .mod-nav__link {
  background-image: url(../img/common/icon_fair.svg);
  background-position: 50% 16.6%;
  background-size: 6.13333vw auto;
}

.mod-nav__item--visit .mod-nav__link {
  background-image: url(../img/common/icon_visit.svg);
  background-position: 50% 15.6%;
  background-size: 5.86667vw auto;
}

.mod-nav__item--map .mod-nav__link {
  background-image: url(../img/common/icon_map.svg);
  background-position: 50% 1.86667vw;
  background-size: 10.66667vw auto;
}

.mod-nav__txt {
  color: #fff;
  font-size: 3.46667vw;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}
/*  mod-keyvisual
--------------------------------------------- */

.mod-keyvisual img {
  width: 100%;
}
/*  mod-recommend-sp-slider
--------------------------------------------- */

@media screen and (min-width: 768px) {
  .mod-recommend-sp-slider .mod-recommend {
    margin-bottom: 0;
  }
  .mod-recommend-sp-slider .mod-recommend:last-of-type {
    margin-bottom: 225px;
  }
  .mod-recommend-sp-slider
    .mod-recommend:last-of-type
    .mod-recommend__container {
    padding-bottom: 30px;
  }
  .mod-recommend-sp-slider
    .mod-recommend:nth-of-type(n + 2)
    .mod-recommend__container {
    padding-top: 15px;
  }
  .mod-recommend-sp-slider
    .mod-recommend:nth-of-type(n + 2)
    .mod-recommend__heading-en,
  .mod-recommend-sp-slider
    .mod-recommend:nth-of-type(n + 2)
    .mod-recommend__heading-jp {
    display: none;
  }
  .mod-recommend-sp-slider .mod-recommend__container {
    padding-bottom: 0;
  }
}

@media screen and (max-width: 767px) {
  .mod-recommend-sp-slider .slick-dots {
    display: none !important;
  }
  .mod-recommend-sp-slider.slick-dotted.slick-slider {
    margin-bottom: 0;
  }
  .mod-recommend-sp-slider .slick-slide {
    outline: none;
  }
  .mod-recommend-sp-slider .slick-arrow {
    width: 21px;
    height: 38px;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
  }
}

@media screen and (max-width: 767px) and (min-width: 768px) {
  .mod-recommend-sp-slider .slick-arrow {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .mod-recommend-sp-slider .slick-arrow:hover {
    opacity: 0.8;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .mod-recommend-sp-slider .slick-arrow {
    width: 5.6vw;
    height: 10.13333vw;
  }
}

@media screen and (max-width: 767px) {
  .mod-recommend-sp-slider .slick-arrow::before {
    display: none;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .mod-recommend-sp-slider .slick-prev,
  .mod-recommend-sp-slider .slick-next {
    top: 111vw;
    width: 5.06667vw;
    height: 9.6vw;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}

@media screen and (max-width: 767px) {
  .mod-recommend-sp-slider .slick-prev {
    left: -63px;
    z-index: 1;
    background-image: url(../img/common/img_slider-arrow_left.svg);
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .mod-recommend-sp-slider .slick-prev {
    left: 2.4vw;
  }
}

@media screen and (max-width: 767px) {
  .mod-recommend-sp-slider .slick-next {
    right: -63px;
    background-image: url(../img/common/img_slider-arrow_right.svg);
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .mod-recommend-sp-slider .slick-next {
    right: 2.4vw;
  }
}
/*  mod-recommend
--------------------------------------------- */

.mod-recommend {
  margin-bottom: 225px;
  padding-right: 10px;
  padding-left: 10px;
}

@media screen and (max-width: 767px) {
  .mod-recommend {
    margin-bottom: 32vw;
    padding-right: 0;
    padding-left: 0;
  }
}

.mod-recommend__container {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-right: auto;
  margin-left: auto;
  padding: 30px 3.90625%;
  max-width: 1350px;
  background-color: #e7d7d4;
}

@media screen and (min-width: 1921px) {
  .mod-recommend__container {
    padding-right: 75px;
    padding-left: 75px;
  }
}

@media screen and (max-width: 767px) {
  .mod-recommend__container {
    padding: 13.33333% 4% 17.33333%;
  }
}

.mod-recommend__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-right: auto;
  margin-bottom: 15px;
  margin-left: auto;
  padding-top: 63px;
  padding-bottom: 50px;
  max-width: 1200px;
  background-color: #fff;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .mod-recommend__inner {
    display: block;
    padding-top: 0;
    padding-right: 5.84795%;
    padding-left: 5.84795%;
  }
}

.mod-recommend__inner:last-of-type {
  margin-bottom: 0;
}

.mod-recommend__left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-pack: justify;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-right: 3.33333%;
  padding-left: 3.33333%;
  width: 48.75%;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .mod-recommend__left {
    display: block;
    padding-top: 14.13333vw;
    padding-right: 0;
    padding-left: 0;
    width: 100%;
  }
}

.mod-recommend__heading {
  padding-top: 8px;
  width: 45%;
  color: #874e4c;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .mod-recommend__heading {
    margin-bottom: 9.33333vw;
    padding-top: 0;
    width: 100%;
  }
}

.mod-recommend__heading-en {
  display: block;
  margin-bottom: 10px;
  letter-spacing: 1px;
  font-size: 1.85714rem;
  font-family: "Times New Roman", serif;
  line-height: 1.2;
}

@media screen and (max-width: 1300px) {
  .mod-recommend__heading-en {
    font-size: 1.57143rem;
  }
}

@media screen and (max-width: 767px) {
  .mod-recommend__heading-en {
    margin-bottom: 2.66667vw;
    letter-spacing: 0;
    font-size: 6.93333vw;
  }
}

.mod-recommend__heading-jp {
  display: block;
  font-size: 1.14286rem;
}

@media screen and (max-width: 767px) {
  .mod-recommend__heading-jp {
    font-size: 4.26667vw;
  }
}

.mod-recommend__img {
  margin-left: 0.5em;
  width: 51.48515%;
}

@media screen and (max-width: 767px) {
  .mod-recommend__img {
    margin-bottom: 5.33333vw;
    margin-left: 0;
    width: 100%;
  }
}

.mod-recommend__img img {
  width: 100%;
}

.mod-recommend__right {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-right: 8.33333%;
  width: 51.25%;
  font-size: 1.28571rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (max-width: 767px) {
  .mod-recommend__right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: start;
    padding-top: 0;
    padding-right: 0;
    width: 100%;
    -webkit-box-pack: start;
    justify-content: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
  }
}

.mod-recommend__ttl {
  margin-bottom: 10px;
  font-size: 1.57143rem;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .mod-recommend__ttl {
    margin-bottom: 2.13333vw;
    letter-spacing: 0.2vw;
    font-size: 5.33333vw;
  }
}

@media screen and (max-width: 767px) {
  .mod-recommend__info {
    -ms-flex-order: -1;
    margin-bottom: 4vw;
    width: 100%;
    -webkit-box-ordinal-group: 0;
    order: -1;
  }
}

.mod-recommend__number {
  margin-right: 1em;
}

@media screen and (max-width: 767px) {
  .mod-recommend__number {
    font-size: 3.73333vw;
  }
}

@media screen and (max-width: 767px) {
  .mod-recommend__price {
    font-size: 3.73333vw;
  }
}

.mod-recommend__txt {
  margin-top: 23px;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .mod-recommend__txt {
    margin-top: 0;
    font-size: 4.8vw;
  }
}

.mod-recommend .mod-btn {
  margin-top: 35px;
}

@media screen and (max-width: 767px) {
  .mod-recommend .mod-btn {
    margin-top: 10.66667vw;
  }
}
/*  mod-pager
--------------------------------------------- */

.mod-pager {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
  justify-content: center;
}

.mod-pager__list {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
  justify-content: center;
}

.mod-pager__item {
  margin-right: 13px;
  margin-left: 13px;
}

@media screen and (max-width: 767px) {
  .mod-pager__item {
    margin-right: 1.86667vw;
    margin-left: 1.86667vw;
  }
}

.mod-pager__item--prev,
.mod-pager__item--next {
  position: absolute;
  top: 50%;
  display: block;
  background: none;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
  .mod-pager__item--prev,
  .mod-pager__item--next {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-align: center;
    align-items: center;
  }
}

.mod-pager__item--prev {
  left: -110px;
}

@media screen and (max-width: 767px) {
  .mod-pager__item--prev {
    left: 0;
  }
}

.mod-pager__item--next {
  right: -110px;
}

@media screen and (max-width: 767px) {
  .mod-pager__item--next {
    right: 0;
  }
}

.mod-pager__item--dot {
  margin-right: 0;
  margin-left: 0;
}

.mod-pager__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  -ms-flex-align: center;
  width: 48px;
  height: 48px;
  font-size: 2.14286rem;
  font-family: "Times New Roman", serif;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-box-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .mod-pager__link {
    width: 14.66667vw;
    height: 14.66667vw;
    font-size: 6.66667vw;
  }
}

.mod-pager__item--current .mod-pager__link {
  background-color: #482426;
  color: #fff;
}

.mod-pager__item--prev .mod-pager__link,
.mod-pager__item--next .mod-pager__link {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-bottom: 5px;
  width: 73px;
  height: auto;
  border-bottom: 1px solid #482426;
  font-size: 1.14286rem;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .mod-pager__item--prev .mod-pager__link,
  .mod-pager__item--next .mod-pager__link {
    padding-bottom: 1.33333vw;
    width: 15.73333vw;
    font-size: 4.26667vw;
  }
}

.mod-pager__item--prev .mod-pager__link::after,
.mod-pager__item--next .mod-pager__link::after {
  position: absolute;
  bottom: -1px;
  display: block;
  width: 18px;
  height: 1px;
  background-color: #482426;
  content: "";
}

@media screen and (max-width: 767px) {
  .mod-pager__item--prev .mod-pager__link::after,
  .mod-pager__item--next .mod-pager__link::after {
    width: 4.8vw;
  }
}

.mod-pager__item--prev .mod-pager__link {
  text-align: right;
}

.mod-pager__item--prev .mod-pager__link::after {
  left: 0;
  -webkit-transform: rotate(-30deg);
  transform: rotate(-30deg);
  -webkit-transform-origin: top left;
  transform-origin: top left;
}

.mod-pager__item--next .mod-pager__link::after {
  right: 0;
  -webkit-transform: rotate(30deg);
  transform: rotate(30deg);
  -webkit-transform-origin: top right;
  transform-origin: top right;
}

@media screen and (min-width: 768px) {
  .mod-pager__item:not(.mod-pager__item--next):not(.mod-pager__item--prev)
    .mod-pager__link[href]:hover {
    background-color: #482426;
    color: #fff;
  }
}
/*  mod-plan-block-wrap
--------------------------------------------- */

.mod-plan-block-wrap {
  margin-bottom: 100px;
}

@media screen and (max-width: 767px) {
  .mod-plan-block-wrap {
    margin-bottom: 26.66667vw;
  }
}
/*  mod-plan-block
--------------------------------------------- */

.mod-plan-block {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-right: auto;
  margin-bottom: 50px;
  margin-left: auto;
  padding: 15px 50px 45px 40px;
  max-width: 1200px;
  border: 1px solid #e7d7d4;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (max-width: 767px) {
  .mod-plan-block {
    margin-bottom: 13.33333vw;
    padding: 9.33333vw 0;
    border: none;
    background-color: #e7d7d4;
  }
  .mod-plan-block:last-of-type {
    margin-bottom: 0;
  }
}

.mod-plan-block__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-pack: justify;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .mod-plan-block__inner {
    display: block;
    padding: 8vw 2.13333% 14.66667vw;
    background-color: #fff;
  }
}

.mod-plan-block__left {
  width: 46.12613%;
}

@media screen and (max-width: 767px) {
  .mod-plan-block__left {
    margin-bottom: 7.2vw;
    width: 100%;
  }
}

.mod-plan-block__img img {
  width: 100%;
}

.mod-plan-block__ttl {
  margin-bottom: 20px;
  font-size: 1.85714rem;
}

@media screen and (max-width: 767px) {
  .mod-plan-block__ttl {
    margin-bottom: 2.66667vw;
    font-size: 5.86667vw;
  }
}

.mod-plan-block__lead {
  margin-bottom: 40px;
  font-size: 1.28571rem;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .mod-plan-block__lead {
    margin-bottom: 6.66667vw;
    font-size: 4.8vw;
  }
}

.mod-plan-block__right {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 34px;
  width: 46.84685%;
}

@media screen and (max-width: 767px) {
  .mod-plan-block__right {
    padding-top: 0;
    padding-right: 2.78552%;
    padding-left: 2.78552%;
    width: 100%;
  }
}

.mod-plan-block__list {
  margin-bottom: 55px;
}

@media screen and (max-width: 767px) {
  .mod-plan-block__list {
    margin-bottom: 8vw;
  }
}

.mod-plan-block__item {
  margin-bottom: 30px;
  font-size: 1.28571rem;
}

@media screen and (max-width: 767px) {
  .mod-plan-block__item {
    font-size: 4.8vw;
  }
}

.mod-plan-block__item:last-of-type {
  margin-bottom: 0;
}

.mod-plan-block__item-txt {
  line-height: 1.8;
}

.mod-plan-block__txt {
  font-size: 1.28571rem;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .mod-plan-block__txt {
    font-size: 4.8vw;
    line-height: 1.7;
  }
}
/*  mod-section
--------------------------------------------- */

.mod-section--concept {
  position: relative;
  padding-top: 24.79167%;
  padding-bottom: 20.83333%;
}

@media screen and (min-width: 1921px) {
  .mod-section--concept {
    padding-top: 476px;
    padding-bottom: 400px;
  }
}

@media screen and (max-width: 767px) {
  .mod-section--concept {
    padding-top: 78.93333%;
    padding-bottom: 98.13333%;
  }
}

.mod-section--concept::before {
  position: absolute;
  top: 2.29167%;
  left: 0;
  display: block;
  padding-top: 55.36458%;
  width: 19.53125%;
  background: url(../img/top/bg_concept_01.png) 0 0 no-repeat;
  background-size: cover;
  content: "";
}

@media screen and (min-width: 1921px) {
  .mod-section--concept::before {
    top: 44px;
    padding-top: 1063px;
    width: 375px;
  }
}

@media screen and (max-width: 767px) {
  .mod-section--concept::before {
    top: 37.33333vw;
    padding-top: 44.8%;
    width: 100%;
    background-image: url(../img/top/bg_concept_01_sp.png);
  }
}

.mod-section--concept::after {
  position: absolute;
  right: 0;
  bottom: -7.8125%;
  z-index: -1;
  display: block;
  padding-top: 56.04167%;
  width: 21.77083%;
  background: url(../img/top/bg_concept_02.png) 0 0 no-repeat;
  background-size: cover;
  content: "";
}

@media screen and (min-width: 1921px) {
  .mod-section--concept::after {
    bottom: -150px;
    padding-top: 1076px;
    width: 418px;
  }
}

@media screen and (max-width: 767px) {
  .mod-section--concept::after {
    bottom: 33.33333vw;
    padding-top: 44.26667%;
    width: 100%;
    background-image: url(../img/top/bg_concept_02_sp.png);
  }
}

.ie11 .mod-section--instagram {
  display: none;
}

.mod-section--instagram .mod-section__ttl-icon {
  margin: 10px auto 20px;
  width: 43px;
}

@media screen and (max-width: 767px) {
  .mod-section--instagram .mod-section__ttl-icon {
    margin-top: 0;
    margin-bottom: 3.46667vw;
    width: 7.73333%;
  }
}

.mod-section--instagram .mod-section__ttl-icon img {
  width: 100%;
}

.mod-section__ttl {
  position: relative;
  padding-top: 57px;
  color: #874e4c;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .mod-section__ttl {
    padding-top: 15.2vw;
  }
}

.mod-section__ttl::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 1px;
  height: 50px;
  background-color: #874e4c;
  content: "";
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}

@media screen and (max-width: 767px) {
  .mod-section__ttl::before {
    height: 13.06667vw;
  }
}

.mod-section__ttl-en {
  display: block;
  font-size: 1.85714rem;
  font-family: "Times New Roman", serif;
}

@media screen and (max-width: 767px) {
  .mod-section__ttl-en {
    font-size: 6.93333vw;
  }
}

.mod-section--instagram .mod-section__ttl-en {
  margin-bottom: -9px;
  line-height: 1;
}

.mod-section__ttl-jp {
  display: block;
  font-size: 1.14286rem;
}

@media screen and (max-width: 767px) {
  .mod-section__ttl-jp {
    font-size: 4.26667vw;
  }
}
/*  mod-step
--------------------------------------------- */

.mod-step {
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

.mod-step__list {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-right: auto;
  margin-left: auto;
  padding-right: 3%;
  padding-left: 3%;
  max-width: 1000px;
}

@media screen and (max-width: 767px) {
  .mod-step__list {
    padding-right: 0;
    padding-left: 0;
  }
}

.mod-step__item {
  padding-bottom: 180px;
  background: url(../img/common/icon_step_arrow.svg) 50% calc(100% - 72px)
    no-repeat;
  background-size: 29px 37px;
  counter-increment: item;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .mod-step__item {
    padding-bottom: 26.66667vw;
  }
}

.mod-step__item:last-of-type {
  padding-bottom: 0;
}

@media screen and (max-width: 767px) {
  .mod-step__item {
    background-position: 50% calc(100% - 9.86667vw);
    background-size: 4.53333vw 6.13333vw;
  }
}

.mod-step__item:last-of-type {
  background: none;
}

.mod-step__step-number {
  display: block;
  margin-bottom: 2px;
  font-size: 1.57143rem;
}

@media screen and (max-width: 767px) {
  .mod-step__step-number {
    margin-bottom: 0.8vw;
    font-size: 4.26667vw;
  }
}

.mod-step__step-number::before {
  content: "Step." counter(item, decimal-leading-zero);
}

.mod-step__ttl {
  margin-bottom: 20px;
  font-size: 1.57143rem;
  line-height: 1.5;
}

@media screen and (max-width: 767px) {
  .mod-step__ttl {
    margin-bottom: 4vw;
    font-size: 4.26667vw;
  }
}

.mod-step__main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-pack: justify;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .mod-step__main {
    -ms-flex-pack: start;
    -webkit-box-pack: start;
    justify-content: flex-start;
  }
}

.mod-step__img {
  width: 26.93966%;
}

@media screen and (max-width: 767px) {
  .mod-step__img {
    margin-right: 3.06407%;
    width: 43.73259%;
  }
}

.mod-step__img img {
  width: 100%;
}

.mod-step__txt-wrap {
  padding-top: 32px;
  width: 68.96552%;
}

@media screen and (max-width: 767px) {
  .mod-step__txt-wrap {
    margin-top: -0.53333vw;
    padding-top: 0;
    width: 51.53203%;
  }
}

.mod-step__txt {
  text-align: left;
  font-size: 1.57143rem;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .mod-step__txt {
    font-size: 3.73333vw;
  }
}

.mod-step .mod-btn {
  margin-top: 35px;
}

@media screen and (max-width: 767px) {
  .mod-step .mod-btn {
    margin-top: 8.8vw;
  }
}

@media screen and (min-width: 768px) {
  .mod-step .mod-btn__txt {
    font-size: 1.28571rem;
  }
}
/*  mod-ttl-h1
--------------------------------------------- */

.mod-ttl-h1 {
  margin-bottom: 45px;
  padding-right: 9.89583%;
  padding-left: 9.89583%;
  color: #874e4c;
}

@media screen and (max-width: 767px) {
  .mod-ttl-h1 {
    margin-bottom: 14.66667vw;
    padding-right: 6.66667%;
    padding-left: 6.66667%;
  }
}

.mod-ttl-h1__txt-en {
  display: block;
  font-size: 3.57143rem;
  font-family: "Times New Roman", serif;
}

@media screen and (max-width: 767px) {
  .mod-ttl-h1__txt-en {
    margin-bottom: 0.8vw;
    font-style: italic;
    font-size: 9.33333vw;
  }
}

.mod-ttl-h1__txt-jp {
  display: block;
  font-size: 1.42857rem;
}

@media screen and (max-width: 767px) {
  .mod-ttl-h1__txt-jp {
    font-size: 4.8vw;
  }
}
/*  mod-ttl-l
--------------------------------------------- */

.mod-ttl-l {
  margin-bottom: 25px;
  color: #874e4c;
  text-align: center;
  font-size: 2.14286rem;
}

@media screen and (max-width: 767px) {
  .mod-ttl-l {
    margin-bottom: 5.33333vw;
    font-size: 5.86667vw;
  }
}
/*  mod-ttl-m
--------------------------------------------- */

.mod-ttl-m {
  margin-bottom: 45px;
  color: #874e4c;
  text-align: center;
  font-size: 1.85714rem;
}

@media screen and (max-width: 767px) {
  .mod-ttl-m {
    margin-bottom: 9.33333vw;
    font-size: 5.86667vw;
  }
}
/*  fadein class
--------------------------------------------- */

[data-fadein],
[data-fadein-target] {
  opacity: 0;
  -webkit-transform: translateY(50px);
  transform: translateY(50px);
}

@media screen and (max-width: 767px) {
  [data-sp-fadein] {
    opacity: 0;
    -webkit-transform: translateY(50px);
    transform: translateY(50px);
  }
}

[data-fadein].js-fadein-active,
[data-fadein-target].js-fadein-active {
  opacity: 1;
  -webkit-transition: opacity 0.6s, -webkit-transform 0.6s !important;
  transition: opacity 0.6s, -webkit-transform 0.6s !important;
  transition: opacity 0.6s, transform 0.6s !important;
  transition: opacity 0.6s, transform 0.6s, -webkit-transform 0.6s !important;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

@media screen and (max-width: 767px) {
  [data-sp-fadein].js-fadein-active {
    opacity: 1;
    -webkit-transition: opacity 0.6s, -webkit-transform 0.6s !important;
    transition: opacity 0.6s, -webkit-transform 0.6s !important;
    transition: opacity 0.6s, transform 0.6s !important;
    transition: opacity 0.6s, transform 0.6s, -webkit-transform 0.6s !important;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
/*  mod-pagenavi
--------------------------------------------- */

.mod-pagenavi__list {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-pack: center;
  margin-right: auto;
  margin-left: auto;
  max-width: 1280px;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  justify-content: center;
}

@media screen and (max-width: 767px) {
  .mod-pagenavi__list {
    width: 89.06667%;
  }
}

.mod-pagenavi__item {
  width: 31.25%;
}

@media screen and (max-width: 767px) {
  .mod-pagenavi__item {
    width: 43.41317%;
  }
}

.mod-pagenavi__item--prev,
.mod-pagenavi__item--next {
  position: absolute;
  top: 0;
}

@media screen and (max-width: 767px) {
  .mod-pagenavi__item--prev,
  .mod-pagenavi__item--next {
    top: 46%;
    width: 17.36527%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}

.mod-pagenavi__item--prev {
  left: 0;
}

.mod-pagenavi__item--next {
  right: 0;
}

.mod-pagenavi__link {
  position: relative;
  display: block;
  padding-top: 27px;
  padding-bottom: 27px;
  border: 1px solid #482426;
  text-align: center;
}

.mod-pagenavi__item--back .mod-pagenavi__link {
  background-color: #482426;
}

@media screen and (min-width: 768px) {
  .mod-pagenavi__link {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .mod-pagenavi__link:hover {
    opacity: 0.8;
  }
  .ie11 .mod-pagenavi__link {
    padding-top: 30px;
    padding-bottom: 24px;
  }
}

@media screen and (max-width: 767px) {
  .mod-pagenavi__link {
    padding-top: 15px;
    padding-bottom: 15px;
  }
  .mod-pagenavi__item--prev .mod-pagenavi__link,
  .mod-pagenavi__item--next .mod-pagenavi__link {
    padding-top: 0;
    padding-bottom: 0;
    border: none;
  }
}

.mod-pagenavi__txt {
  font-size: 1rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (max-width: 767px) {
  .mod-pagenavi__txt {
    font-size: 4.26667vw;
  }
}

.mod-pagenavi__item--back .mod-pagenavi__txt {
  color: #fff;
  font-size: 0.92857rem;
}

@media screen and (max-width: 767px) {
  .mod-pagenavi__item--back .mod-pagenavi__txt {
    font-size: 4.26667vw;
  }
}

@media screen and (max-width: 767px) {
  .mod-pagenavi__item--prev .mod-pagenavi__txt,
  .mod-pagenavi__item--next .mod-pagenavi__txt {
    position: relative;
    display: block;
    width: auto;
    border-bottom: 1px solid #482426;
    font-family: "Times New Roman", serif;
  }
  .mod-pagenavi__item--prev .mod-pagenavi__txt::after,
  .mod-pagenavi__item--next .mod-pagenavi__txt::after {
    position: absolute;
    bottom: -1px;
    display: block;
    width: 4.26667vw;
    height: 1px;
    background-color: #482426;
    content: "";
  }
  .mod-pagenavi__item--prev .mod-pagenavi__txt {
    text-align: right;
  }
  .mod-pagenavi__item--prev .mod-pagenavi__txt::after {
    left: 0;
    -webkit-transform: rotate(-30deg);
    transform: rotate(-30deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
  }
  .mod-pagenavi__item--next .mod-pagenavi__txt {
    text-align: left;
  }
  .mod-pagenavi__item--next .mod-pagenavi__txt::after {
    right: 0;
    -webkit-transform: rotate(30deg);
    transform: rotate(30deg);
    -webkit-transform-origin: top right;
    transform-origin: top right;
  }
}

.mod-pagenavi__item--prev .mod-pagenavi__arrow,
.mod-pagenavi__item--next .mod-pagenavi__arrow {
  position: absolute;
  top: 56%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 63px;
  height: 1px;
  border-bottom: 1px solid #482426;
}

@media screen and (max-width: 767px) {
  .mod-pagenavi__item--prev .mod-pagenavi__arrow,
  .mod-pagenavi__item--next .mod-pagenavi__arrow {
    width: 12vw;
  }
}

.mod-pagenavi__item--prev .mod-pagenavi__arrow::before,
.mod-pagenavi__item--next .mod-pagenavi__arrow::before {
  position: absolute;
  top: 0;
  display: block;
  width: 20px;
  height: 1px;
  background-color: #482426;
  content: "";
}

@media screen and (max-width: 767px) {
  .mod-pagenavi__item--prev .mod-pagenavi__arrow::before,
  .mod-pagenavi__item--next .mod-pagenavi__arrow::before {
    width: 4vw;
  }
}

.mod-pagenavi__item--prev .mod-pagenavi__arrow {
  left: 30px;
}

@media screen and (max-width: 767px) {
  .mod-pagenavi__item--prev .mod-pagenavi__arrow {
    left: 5.33333vw;
  }
}

.mod-pagenavi__item--prev .mod-pagenavi__arrow::before {
  left: 0;
  -webkit-transform: rotate(-30deg);
  transform: rotate(-30deg);
  -webkit-transform-origin: top left;
  transform-origin: top left;
}

.mod-pagenavi__item--next .mod-pagenavi__arrow {
  right: 30px;
}

@media screen and (max-width: 767px) {
  .mod-pagenavi__item--next .mod-pagenavi__arrow {
    right: 5.33333vw;
  }
}

.mod-pagenavi__item--next .mod-pagenavi__arrow::before {
  right: 0;
  -webkit-transform: rotate(30deg);
  transform: rotate(30deg);
  -webkit-transform-origin: top right;
  transform-origin: top right;
}

@media screen and (max-width: 767px) {
  .mod-pagenavi__arrow {
    display: none;
  }
}
/*  mod-pc-multi-slider
--------------------------------------------- */

.mod-pc-multi-slider .slick-slide {
  outline: none;
}

.mod-pc-multi-slider .slick-arrow {
  width: 21px;
  height: 38px;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}

@media screen and (min-width: 768px) {
  .mod-pc-multi-slider .slick-arrow {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .mod-pc-multi-slider .slick-arrow:hover {
    opacity: 0.8;
  }
}

@media screen and (max-width: 767px) {
  .mod-pc-multi-slider .slick-arrow {
    width: 5.6vw;
    height: 10.13333vw;
  }
}

.mod-pc-multi-slider .slick-arrow::before {
  display: none;
}

.mod-pc-multi-slider .slick-prev {
  left: -63px;
  z-index: 1;
  background-image: url(../img/common/img_slider-arrow_left.svg);
}

@media screen and (max-width: 767px) {
  .mod-pc-multi-slider .slick-prev {
    left: 2.66667vw;
  }
}

.mod-pc-multi-slider .slick-next {
  right: -63px;
  background-image: url(../img/common/img_slider-arrow_right.svg);
}

@media screen and (max-width: 767px) {
  .mod-pc-multi-slider .slick-next {
    right: 2.66667vw;
  }
}

.mod-pc-multi-slider .slick-dots {
  bottom: -66px;
}

@media screen and (max-width: 767px) {
  .mod-pc-multi-slider .slick-dots {
    bottom: -12vw;
  }
}

.mod-pc-multi-slider .slick-dots li {
  margin-right: 9.5px;
  margin-left: 9.5px;
  width: 10px;
  height: 10px;
}

@media screen and (max-width: 767px) {
  .mod-pc-multi-slider .slick-dots li {
    margin-right: 2.53333vw;
    margin-left: 2.53333vw;
    width: 2.66667vw;
    height: 2.66667vw;
  }
}

.mod-pc-multi-slider .slick-dots button {
  width: 100%;
  height: 100%;
  border: 1px solid #874e4c;
  border-radius: 50%;
}

.mod-pc-multi-slider .slick-dots button::before {
  display: none;
}

.mod-pc-multi-slider .slick-dots .slick-active button {
  background-color: #874e4c;
}
/*  mod-wide-slide
--------------------------------------------- */

@media screen and (max-width: 767px) {
  .mod-wide-slide .slick-arrow {
    width: 5.6vw;
    height: 10.13333vw;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  .mod-wide-slide .slick-arrow::before {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .mod-wide-slide .slick-prev {
    left: 2.66667vw;
    z-index: 1;
    background-image: url(../img/common/img_slider-arrow_left.svg);
  }
}

@media screen and (max-width: 767px) {
  .mod-wide-slide .slick-next {
    right: 2.66667vw;
    background-image: url(../img/common/img_slider-arrow_right.svg);
  }
}

.mod-wide-slide .slick-dots li {
  margin-right: 9.5px;
  margin-left: 9.5px;
  width: 10px;
  height: 10px;
}

.mod-wide-slide .slick-dots button {
  width: 100%;
  height: 100%;
  border: 1px solid #874e4c;
  border-radius: 50%;
}

.mod-wide-slide .slick-dots button::before {
  display: none;
}

.mod-wide-slide .slick-dots .slick-active button {
  position: relative;
  background-color: #874e4c;
}
/*  slick-counter
--------------------------------------------- */

.slick-counter {
  margin-top: 30px;
  width: 100%;
  text-align: center;
  font-size: 1.57143rem;
}

@media screen and (max-width: 767px) {
  .slick-counter {
    margin-top: 8vw;
    font-size: 4.8vw;
  }
}
/* ---------------------------------------------
*   wysiwyg (Wordpress案件以外は削除すること)
--------------------------------------------- */

.mod-wysiwyg {
  overflow: hidden;
}

.mod-wysiwyg:after {
  display: block;
  clear: both;
  content: "";
}
/* wysiwyg default
--------------------------------------------- */

.mod-wysiwyg {
  font-size: 1.28571rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .mod-wysiwyg {
    padding-right: 0;
    padding-left: 0;
  }
}

.mod-wysiwyg > :first-child {
  margin-top: 0 !important;
}

.mod-wysiwyg > :last-child {
  margin-bottom: 0 !important;
}

.mod-wysiwyg sup {
  vertical-align: super;
  font-size: smaller;
}

.mod-wysiwyg sub {
  vertical-align: sub;
  font-size: smaller;
}

.mod-wysiwyg h1,
.mod-wysiwyg h2,
.mod-wysiwyg h3 {
  margin-top: 3rem;
}

.mod-wysiwyg h4,
.mod-wysiwyg h5,
.mod-wysiwyg h6 {
  margin-top: 2rem;
}

.mod-wysiwyg h1,
.mod-wysiwyg h2,
.mod-wysiwyg h3,
.mod-wysiwyg h4,
.mod-wysiwyg h5,
.mod-wysiwyg h6 {
  font-weight: 700;
}

.mod-wysiwyg i,
.mod-wysiwyg strong {
  font-weight: bold;
}

.mod-wysiwyg p {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

@media screen and (max-width: 767px) {
  .mod-wysiwyg p {
    font-size: 1.08571rem;
    margin-top: 1em;
    margin-bottom: 1em;
  }
}

.mod-wysiwyg em {
  font-style: italic;
}

.mod-wysiwyg a {
  text-decoration: underline;
}

.mod-wysiwyg ul {
  margin-top: 1rem;
  margin-bottom: 1rem;
  padding-left: 2em;
  list-style-type: disc;
}

.mod-wysiwyg ol {
  margin-top: 1rem;
  margin-bottom: 1rem;
  padding-left: 2em;
  list-style-type: decimal;
}

.mod-wysiwyg li {
  display: list-item;
  text-align: -webkit-match-parent;
}

.mod-wysiwyg blockquote {
  margin: 1rem 0;
  padding: 1em;
  background-color: #eaeaea;
}

.mod-wysiwyg .aligncenter {
  display: block;
  margin: 1rem auto;
  max-width: 100%;
}

.mod-wysiwyg .alignright {
  float: right;
  margin-top: 1rem;
  margin-left: 1rem;
  max-width: 100%;
}

.mod-wysiwyg .alignleft {
  float: left;
  margin-top: 1rem;
  margin-right: 1rem;
  max-width: 100%;
}

.mod-wysiwyg br {
  clear: both;
}

.mod-wysiwyg img[class*="wp-image-"],
.mod-wysiwyg img[class*="attachment-"] {
  max-width: 100%;
  height: auto;
}

.mod-wysiwyg .wp-caption {
  max-width: 100%;
  text-align: left;
}

.mod-wysiwyg .wp-caption img {
  width: 100%;
}

.mod-wysiwyg .wp-caption-text {
  display: block;
  margin: 0;
  padding: 0.5em 1rem 0;
  color: #8a8a8a;
  text-align: left;
  font-size: 0.875em;
}
/*  width
--------------------------------------------- */

.w-per--0 {
  width: 0% !important;
}

.w-per--1 {
  width: 1% !important;
}

.w-per--2 {
  width: 2% !important;
}

.w-per--3 {
  width: 3% !important;
}

.w-per--4 {
  width: 4% !important;
}

.w-per--5 {
  width: 5% !important;
}

.w-per--6 {
  width: 6% !important;
}

.w-per--7 {
  width: 7% !important;
}

.w-per--8 {
  width: 8% !important;
}

.w-per--9 {
  width: 9% !important;
}

.w-per--10 {
  width: 10% !important;
}

.w-per--11 {
  width: 11% !important;
}

.w-per--12 {
  width: 12% !important;
}

.w-per--13 {
  width: 13% !important;
}

.w-per--14 {
  width: 14% !important;
}

.w-per--15 {
  width: 15% !important;
}

.w-per--16 {
  width: 16% !important;
}

.w-per--17 {
  width: 17% !important;
}

.w-per--18 {
  width: 18% !important;
}

.w-per--19 {
  width: 19% !important;
}

.w-per--20 {
  width: 20% !important;
}

.w-per--21 {
  width: 21% !important;
}

.w-per--22 {
  width: 22% !important;
}

.w-per--23 {
  width: 23% !important;
}

.w-per--24 {
  width: 24% !important;
}

.w-per--25 {
  width: 25% !important;
}

.w-per--26 {
  width: 26% !important;
}

.w-per--27 {
  width: 27% !important;
}

.w-per--28 {
  width: 28% !important;
}

.w-per--29 {
  width: 29% !important;
}

.w-per--30 {
  width: 30% !important;
}

.w-per--31 {
  width: 31% !important;
}

.w-per--32 {
  width: 32% !important;
}

.w-per--33 {
  width: 33% !important;
}

.w-per--34 {
  width: 34% !important;
}

.w-per--35 {
  width: 35% !important;
}

.w-per--36 {
  width: 36% !important;
}

.w-per--37 {
  width: 37% !important;
}

.w-per--38 {
  width: 38% !important;
}

.w-per--39 {
  width: 39% !important;
}

.w-per--40 {
  width: 40% !important;
}

.w-per--41 {
  width: 41% !important;
}

.w-per--42 {
  width: 42% !important;
}

.w-per--43 {
  width: 43% !important;
}

.w-per--44 {
  width: 44% !important;
}

.w-per--45 {
  width: 45% !important;
}

.w-per--46 {
  width: 46% !important;
}

.w-per--47 {
  width: 47% !important;
}

.w-per--48 {
  width: 48% !important;
}

.w-per--49 {
  width: 49% !important;
}

.w-per--50 {
  width: 50% !important;
}

.w-per--51 {
  width: 51% !important;
}

.w-per--52 {
  width: 52% !important;
}

.w-per--53 {
  width: 53% !important;
}

.w-per--54 {
  width: 54% !important;
}

.w-per--55 {
  width: 55% !important;
}

.w-per--56 {
  width: 56% !important;
}

.w-per--57 {
  width: 57% !important;
}

.w-per--58 {
  width: 58% !important;
}

.w-per--59 {
  width: 59% !important;
}

.w-per--60 {
  width: 60% !important;
}

.w-per--61 {
  width: 61% !important;
}

.w-per--62 {
  width: 62% !important;
}

.w-per--63 {
  width: 63% !important;
}

.w-per--64 {
  width: 64% !important;
}

.w-per--65 {
  width: 65% !important;
}

.w-per--66 {
  width: 66% !important;
}

.w-per--67 {
  width: 67% !important;
}

.w-per--68 {
  width: 68% !important;
}

.w-per--69 {
  width: 69% !important;
}

.w-per--70 {
  width: 70% !important;
}

.w-per--71 {
  width: 71% !important;
}

.w-per--72 {
  width: 72% !important;
}

.w-per--73 {
  width: 73% !important;
}

.w-per--74 {
  width: 74% !important;
}

.w-per--75 {
  width: 75% !important;
}

.w-per--76 {
  width: 76% !important;
}

.w-per--77 {
  width: 77% !important;
}

.w-per--78 {
  width: 78% !important;
}

.w-per--79 {
  width: 79% !important;
}

.w-per--80 {
  width: 80% !important;
}

.w-per--81 {
  width: 81% !important;
}

.w-per--82 {
  width: 82% !important;
}

.w-per--83 {
  width: 83% !important;
}

.w-per--84 {
  width: 84% !important;
}

.w-per--85 {
  width: 85% !important;
}

.w-per--86 {
  width: 86% !important;
}

.w-per--87 {
  width: 87% !important;
}

.w-per--88 {
  width: 88% !important;
}

.w-per--89 {
  width: 89% !important;
}

.w-per--90 {
  width: 90% !important;
}

.w-per--91 {
  width: 91% !important;
}

.w-per--92 {
  width: 92% !important;
}

.w-per--93 {
  width: 93% !important;
}

.w-per--94 {
  width: 94% !important;
}

.w-per--95 {
  width: 95% !important;
}

.w-per--96 {
  width: 96% !important;
}

.w-per--97 {
  width: 97% !important;
}

.w-per--98 {
  width: 98% !important;
}

.w-per--99 {
  width: 99% !important;
}

.w-per--100 {
  width: 100% !important;
}

@media screen and (max-width: 767px) {
  .w-per-sp--0 {
    width: 0% !important;
  }
  .w-per-sp--1 {
    width: 1% !important;
  }
  .w-per-sp--2 {
    width: 2% !important;
  }
  .w-per-sp--3 {
    width: 3% !important;
  }
  .w-per-sp--4 {
    width: 4% !important;
  }
  .w-per-sp--5 {
    width: 5% !important;
  }
  .w-per-sp--6 {
    width: 6% !important;
  }
  .w-per-sp--7 {
    width: 7% !important;
  }
  .w-per-sp--8 {
    width: 8% !important;
  }
  .w-per-sp--9 {
    width: 9% !important;
  }
  .w-per-sp--10 {
    width: 10% !important;
  }
  .w-per-sp--11 {
    width: 11% !important;
  }
  .w-per-sp--12 {
    width: 12% !important;
  }
  .w-per-sp--13 {
    width: 13% !important;
  }
  .w-per-sp--14 {
    width: 14% !important;
  }
  .w-per-sp--15 {
    width: 15% !important;
  }
  .w-per-sp--16 {
    width: 16% !important;
  }
  .w-per-sp--17 {
    width: 17% !important;
  }
  .w-per-sp--18 {
    width: 18% !important;
  }
  .w-per-sp--19 {
    width: 19% !important;
  }
  .w-per-sp--20 {
    width: 20% !important;
  }
  .w-per-sp--21 {
    width: 21% !important;
  }
  .w-per-sp--22 {
    width: 22% !important;
  }
  .w-per-sp--23 {
    width: 23% !important;
  }
  .w-per-sp--24 {
    width: 24% !important;
  }
  .w-per-sp--25 {
    width: 25% !important;
  }
  .w-per-sp--26 {
    width: 26% !important;
  }
  .w-per-sp--27 {
    width: 27% !important;
  }
  .w-per-sp--28 {
    width: 28% !important;
  }
  .w-per-sp--29 {
    width: 29% !important;
  }
  .w-per-sp--30 {
    width: 30% !important;
  }
  .w-per-sp--31 {
    width: 31% !important;
  }
  .w-per-sp--32 {
    width: 32% !important;
  }
  .w-per-sp--33 {
    width: 33% !important;
  }
  .w-per-sp--34 {
    width: 34% !important;
  }
  .w-per-sp--35 {
    width: 35% !important;
  }
  .w-per-sp--36 {
    width: 36% !important;
  }
  .w-per-sp--37 {
    width: 37% !important;
  }
  .w-per-sp--38 {
    width: 38% !important;
  }
  .w-per-sp--39 {
    width: 39% !important;
  }
  .w-per-sp--40 {
    width: 40% !important;
  }
  .w-per-sp--41 {
    width: 41% !important;
  }
  .w-per-sp--42 {
    width: 42% !important;
  }
  .w-per-sp--43 {
    width: 43% !important;
  }
  .w-per-sp--44 {
    width: 44% !important;
  }
  .w-per-sp--45 {
    width: 45% !important;
  }
  .w-per-sp--46 {
    width: 46% !important;
  }
  .w-per-sp--47 {
    width: 47% !important;
  }
  .w-per-sp--48 {
    width: 48% !important;
  }
  .w-per-sp--49 {
    width: 49% !important;
  }
  .w-per-sp--50 {
    width: 50% !important;
  }
  .w-per-sp--51 {
    width: 51% !important;
  }
  .w-per-sp--52 {
    width: 52% !important;
  }
  .w-per-sp--53 {
    width: 53% !important;
  }
  .w-per-sp--54 {
    width: 54% !important;
  }
  .w-per-sp--55 {
    width: 55% !important;
  }
  .w-per-sp--56 {
    width: 56% !important;
  }
  .w-per-sp--57 {
    width: 57% !important;
  }
  .w-per-sp--58 {
    width: 58% !important;
  }
  .w-per-sp--59 {
    width: 59% !important;
  }
  .w-per-sp--60 {
    width: 60% !important;
  }
  .w-per-sp--61 {
    width: 61% !important;
  }
  .w-per-sp--62 {
    width: 62% !important;
  }
  .w-per-sp--63 {
    width: 63% !important;
  }
  .w-per-sp--64 {
    width: 64% !important;
  }
  .w-per-sp--65 {
    width: 65% !important;
  }
  .w-per-sp--66 {
    width: 66% !important;
  }
  .w-per-sp--67 {
    width: 67% !important;
  }
  .w-per-sp--68 {
    width: 68% !important;
  }
  .w-per-sp--69 {
    width: 69% !important;
  }
  .w-per-sp--70 {
    width: 70% !important;
  }
  .w-per-sp--71 {
    width: 71% !important;
  }
  .w-per-sp--72 {
    width: 72% !important;
  }
  .w-per-sp--73 {
    width: 73% !important;
  }
  .w-per-sp--74 {
    width: 74% !important;
  }
  .w-per-sp--75 {
    width: 75% !important;
  }
  .w-per-sp--76 {
    width: 76% !important;
  }
  .w-per-sp--77 {
    width: 77% !important;
  }
  .w-per-sp--78 {
    width: 78% !important;
  }
  .w-per-sp--79 {
    width: 79% !important;
  }
  .w-per-sp--80 {
    width: 80% !important;
  }
  .w-per-sp--81 {
    width: 81% !important;
  }
  .w-per-sp--82 {
    width: 82% !important;
  }
  .w-per-sp--83 {
    width: 83% !important;
  }
  .w-per-sp--84 {
    width: 84% !important;
  }
  .w-per-sp--85 {
    width: 85% !important;
  }
  .w-per-sp--86 {
    width: 86% !important;
  }
  .w-per-sp--87 {
    width: 87% !important;
  }
  .w-per-sp--88 {
    width: 88% !important;
  }
  .w-per-sp--89 {
    width: 89% !important;
  }
  .w-per-sp--90 {
    width: 90% !important;
  }
  .w-per-sp--91 {
    width: 91% !important;
  }
  .w-per-sp--92 {
    width: 92% !important;
  }
  .w-per-sp--93 {
    width: 93% !important;
  }
  .w-per-sp--94 {
    width: 94% !important;
  }
  .w-per-sp--95 {
    width: 95% !important;
  }
  .w-per-sp--96 {
    width: 96% !important;
  }
  .w-per-sp--97 {
    width: 97% !important;
  }
  .w-per-sp--98 {
    width: 98% !important;
  }
  .w-per-sp--99 {
    width: 99% !important;
  }
  .w-per-sp--100 {
    width: 100% !important;
  }
}

.w-auto {
  width: auto !important;
}

@media screen and (min-width: 768px) {
  .w-auto-pc {
    width: auto !important;
  }
}

@media screen and (max-width: 767px) {
  .w-auto-sp {
    width: auto !important;
  }
}
/* ==========================================================
*
*   page
*
========================================================== */
/* ---------------------------------------------
*   Access Pages
--------------------------------------------- */
/*  access
--------------------------------------------- */

.access {
  margin-top: 85px;
  margin-bottom: 190px;
}

@media screen and (max-width: 767px) {
  .access {
    margin-top: 16vw;
    margin-bottom: 26.13333vw;
  }
}

.access__map {
  margin-bottom: 100px;
}

@media screen and (max-width: 767px) {
  .access__map {
    margin-bottom: 16vw;
  }
}

.access__map iframe {
  width: 100% !important;
  height: 400px !important;
}

@media screen and (max-width: 767px) {
  .access__map iframe {
    height: 72vw !important;
  }
}

.access .mod-btn {
  margin-bottom: 145px;
}

@media screen and (max-width: 767px) {
  .access .mod-btn {
    margin-bottom: 20vw;
  }
}

.access__detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-pack: justify;
  margin-right: auto;
  margin-left: auto;
  max-width: 1200px;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .access__detail {
    margin-right: 2.13333%;
    margin-left: 2.13333%;
    max-width: initial;
    max-width: none;
  }
}

@media screen and (max-width: 767px) {
  .access__detail {
    display: block;
  }
}

.access__detail-left {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-right: 2em;
  width: calc(30%);
}

@media screen and (max-width: 767px) {
  .access__detail-left {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 17.33333vw;
    padding-right: 4.17827%;
    padding-left: 4.17827%;
    width: 100%;
  }
}

.access__detail-right {
  display: none;
  /*    width: 500px;
}

@media screen and (max-width: 767px) {
    .access__detail-right {
        width: 100%;
    }*/
}

.access__detail-img {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 25px;
  border: 1px solid #707070;
}

@media screen and (max-width: 767px) {
  .access__detail-img {
    margin-bottom: 4vw;
  }
}

.access__detail-img:last-of-type {
  margin-bottom: 0;
}

.access__detail-img img {
  width: 100%;
}
/*  access-detail
--------------------------------------------- */

.access-detail {
  margin-top: -4px;
  margin-bottom: 62px;
}

@media screen and (max-width: 767px) {
  .access-detail {
    margin-top: 0;
    margin-bottom: 23.73333vw;
  }
}

.access-detail:last-of-type {
  margin-bottom: 0;
}

.access-detail__ttl {
  margin-bottom: 22px;
  font-size: 1.78571rem;
  font-weight: 600;
  color: #ad4c4b;
}

@media screen and (max-width: 767px) {
  .access-detail__ttl {
    font-size: 5.86667vw;
    font-weight: 600;
    color: #ad4c4b;
  }
}

.access-detail__ttl-sub {
  font-size: 1.28571rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .access-detail__ttl-sub {
    font-weight: bold;
    font-size: 4.8vw;
  }
}

.access-detail__txt {
  font-size: 1.28571rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .access-detail__txt {
    font-size: 4.8vw;
  }
}
/* ---------------------------------------------
*   Agreement Pages
--------------------------------------------- */
/*  agreement
--------------------------------------------- */

.agreement {
  margin-top: 80px;
  margin-bottom: 200px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .agreement {
    margin-top: 0;
    margin-bottom: 28vw;
  }
}

.agreement__ttl {
  color: #874e4c;
  font-size: 2.14286rem;
}

@media screen and (max-width: 767px) {
  .agreement__ttl {
    font-size: 5.86667vw;
    line-height: 1.7;
  }
}

.agreement__lead {
  margin-top: 40px;
  margin-bottom: 155px;
}

@media screen and (max-width: 767px) {
  .agreement__lead {
    margin-top: 4vw;
    margin-bottom: 19.2vw;
  }
}

.agreement__item {
  margin-bottom: 145px;
}

@media screen and (max-width: 767px) {
  .agreement__item {
    margin-bottom: 17.33333vw;
  }
}

.agreement__item:last-of-type {
  margin-bottom: 0;
}

.agreement__item-ttl {
  margin-bottom: 30px;
  font-size: 1.78571rem;
}

@media screen and (max-width: 767px) {
  .agreement__item-ttl {
    margin-bottom: 8vw;
    font-size: 5.86667vw;
  }
}

.agreement__item-img img {
  width: 100%;
}

.agreement__item-txt {
  text-align: left;
  font-size: 1.28571rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .agreement__item-txt {
    margin-right: auto;
    margin-left: auto;
    width: 80.77994%;
    text-align: center;
    letter-spacing: 0.1vw;
    font-size: 4.8vw;
  }
}
/* ---------------------------------------------
*   Banquet Pages
--------------------------------------------- */
/*  banguet
--------------------------------------------- */

.banguet {
  margin-bottom: 210px;
}

@media screen and (max-width: 767px) {
  .banguet {
    margin-bottom: 11.2vw;
  }
}
/*  banguet-block
--------------------------------------------- */

.banguet-block__ttl {
  color: #874e4c;
  text-align: center;
  font-size: 2.14286rem;
}

@media screen and (max-width: 767px) {
  .banguet-block__ttl {
    font-size: 6.93333vw;
  }
}
/*  banguet-point-wrap
--------------------------------------------- */

.banguet-point-wrap {
  margin-top: 75px;
  margin-bottom: 140px;
}

@media screen and (max-width: 767px) {
  .banguet-point-wrap {
    margin-top: 3.21429rem;
    margin-bottom: 8vw;
  }
}
/*  banguet-point
--------------------------------------------- */

.banguet-point {
  margin-bottom: 100px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .banguet-point {
    margin-bottom: 3.21429rem;
  }
}

.banguet-point:last-of-type {
  margin-bottom: 0;
}

.banguet-point__ttl {
  margin-bottom: 25px;
  color: #874e4c;
  font-size: 1.78571rem;
}

@media screen and (max-width: 767px) {
  .banguet-point__ttl {
    margin-bottom: 2.66667vw;
    font-size: 4vw;
  }
}

.banguet-point__ttl-point {
  margin-right: 1em;
}

@media screen and (max-width: 767px) {
  .banguet-point__ttl-point {
    display: block;
    margin-right: 0;
    margin-bottom: 1.06667vw;
  }
}

@media screen and (max-width: 767px) {
  .banguet-point__ttl-txt {
    display: block;
  }
}

.banguet-point__txt {
  margin-right: auto;
  margin-bottom: 50px;
  margin-left: auto;
  max-width: 80%;
  letter-spacing: 0.3px;
  font-size: 1.57143rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .banguet-point__txt {
    margin-bottom: 6.13333vw;
    width: 83.56546%;
    font-size: 1.28571rem;
  }
}

.banguet-point__img-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.banguet-point__img-item {
  margin-right: 2.22222%;
  width: 48.44444%;
}

@media screen and (max-width: 767px) {
  .banguet-point__img-item {
    margin-right: 0;
    margin-bottom: 2.66667vw;
    width: 100%;
  }
  .banguet-point__img-item:last-of-type {
    margin-bottom: 0 auto;
  }
}

.banguet-point__img-item:last-of-type {
  margin: 0 auto;
}

.banguet-point__img-item img {
  width: 100%;
}
/*  banguet-other
--------------------------------------------- */

.banguet-other {
  margin-right: auto;
  margin-left: auto;
  padding-bottom: 27px;
  max-width: 1200px;
  border-bottom: 1px solid #e7d7d4;
}

@media screen and (max-width: 767px) {
  .banguet-other {
    padding: 4vw 2.66667% 10.13333vw;
    border-top: 1px solid #e7d7d4;
  }
}

.banguet-other__ttl {
  position: relative;
  margin-bottom: 52px;
  text-align: center;
  font-size: 1.57143rem;
}

@media screen and (max-width: 767px) {
  .banguet-other__ttl {
    margin-bottom: 9.33333vw;
    font-size: 4.26667vw;
  }
}

.banguet-other__ttl::before {
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  width: 100%;
  height: 1px;
  background-color: #e7d7d4;
  content: "";
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
  .banguet-other__ttl::before {
    display: none;
  }
}

.banguet-other__ttl-txt {
  position: relative;
  z-index: 1;
  display: inline-block;
  padding-right: 64px;
  padding-left: 64px;
  background-color: #fff;
}

@media screen and (max-width: 767px) {
  .banguet-other__ttl-txt {
    padding-right: 0;
    padding-left: 0;
  }
}

.banguet-other__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .banguet-other__list {
    display: block;
  }
}

.banguet-other__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-pack: justify;
  margin-right: 1.66667%;
  width: 49.16667%;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

@media screen and (min-width: 768px) {
  .banguet-other__item:nth-of-type(2n) {
    margin-right: 0;
  }
  .banguet-other__item:nth-of-type(n + 3) {
    margin-top: 50px;
  }
}

@media screen and (max-width: 767px) {
  .banguet-other__item {
    margin-bottom: 9.06667vw;
    width: 100%;
  }
  .banguet-other__item:last-of-type {
    margin-bottom: 0;
  }
}

.banguet-other__img {
  width: 42.37288%;
}

@media screen and (max-width: 767px) {
  .banguet-other__img {
    width: 42.25352%;
  }
}

.banguet-other__img img {
  width: 100%;
}

.banguet-other__txt-wrap {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 5px;
  width: 54.23729%;
  font-size: 1.57143rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (max-width: 1500px) {
  .banguet-other__txt-wrap {
    padding-right: 0.5em;
    font-size: 1.28571rem;
  }
}

@media screen and (max-width: 767px) {
  .banguet-other__txt-wrap {
    margin-top: -1.33333vw;
    padding-top: 0;
    padding-right: 0;
    width: 51.5493%;
    font-size: 5.33333vw;
  }
}

.banguet-other__item-ttl {
  margin-bottom: 20px;
  font-weight: bold;
}

@media screen and (max-width: 1500px) {
  .banguet-other__item-ttl {
    margin-bottom: 12px;
  }
}

@media screen and (max-width: 1400px) {
  .banguet-other__item-ttl {
    margin-bottom: 7px;
  }
}

@media screen and (max-width: 767px) {
  .banguet-other__item-ttl {
    margin-bottom: 2.13333vw;
    font-weight: normal;
    line-height: 1.4;
  }
}

.banguet-other__txt {
  line-height: 1.8;
}

@media screen and (max-width: 1400px) {
  .banguet-other__txt {
    font-size: 1.14286rem;
  }
}

@media screen and (max-width: 767px) {
  .banguet-other__txt {
    font-size: 3.73333vw;
    line-height: 1.9;
  }
}
/* ---------------------------------------------
*   Blog Pages
--------------------------------------------- */
/*  blog-list
--------------------------------------------- */

.blog-list {
  margin-bottom: 100px;
}

@media screen and (max-width: 767px) {
  .blog-list {
    margin-bottom: 6.66667vw;
  }
}

.blog-list__main-ttl {
  margin-bottom: 25px;
  font-size: 2rem;
}

@media screen and (max-width: 767px) {
  .blog-list__main-ttl {
    margin-bottom: 8vw;
    font-size: 6.4vw;
  }
}

.blog-list__item {
  margin-bottom: 20px;
  border: 1px solid #e7d7d4;
}

.blog-list__item a {
  margin-bottom: 0px;
}

.blog-list__item img {
  margin: 10px;
}

.blog-list__item .mod-btn {
  display: none;
}

@media screen and (max-width: 767px) {
  .blog-list__item {
    margin-bottom: 10.33333vw;
    border: none;
  }
}

.blog-list__item:last-of-type {
  margin-bottom: 0;
}

.blog-list__link {
  display: block;
  padding: 18px 30px 20px;
}

@media screen and (max-width: 767px) {
  .blog-list__link {
    padding: 0 0 3.66667vw;
  }
}

@media screen and (min-width: 768px) {
  .blog-list__link {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .blog-list__link:hover {
    opacity: 0.8;
  }
}

@media screen and (max-width: 767px) {
  .blog-list__inner-box {
    padding-right: 2.78552%;
    padding-left: 2.78552%;
  }
}

.blog-list__date {
  display: block;
  margin-bottom: 7px;
  font-size: 1rem;
  font-family: "Times New Roman", serif;
}

@media screen and (max-width: 767px) {
  .blog-list__date {
    margin-bottom: 1.86667vw;
    font-size: 3.73333vw;
  }
}

.blog-list__ttl {
  margin-bottom: 5px;
  font-size: 1.57143rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (max-width: 767px) {
  .blog-list__ttl {
    margin-bottom: 0.66667vw;
    font-size: 5.86667vw;
  }
}

.blog-list__img {
  margin-bottom: 5px;
}

@media screen and (max-width: 767px) {
  .blog-list__img {
    margin-bottom: 2.8vw;
  }
}

.blog-list__img img {
  width: 100%;
}

.blog-list__txt {
  margin-bottom: 30px;
  font-size: 1.28571rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .blog-list__txt {
    margin-bottom: 9.6vw;
    font-size: 4.8vw;
  }
}

.blog-list .mod-btn {
  margin-right: auto;
  margin-left: auto;
}
/* ---------------------------------------------
*   Chapel Pages
--------------------------------------------- */
/*  chapel-block
--------------------------------------------- */

.chapel-block {
  margin-right: auto;
  margin-bottom: 70px;
  margin-left: auto;
  max-width: 1320px;
}

@media screen and (max-width: 767px) {
  .chapel-block {
    margin-bottom: 21.33333vw;
  }
}

.chapel-block__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-pack: justify;
  margin-bottom: 45px;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

@media screen and (min-width: 768px) {
  .chapel-block__item:nth-of-type(2n) {
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
  }
}

@media screen and (max-width: 767px) {
  .chapel-block__item {
    margin-bottom: 18.66667vw;
  }
}

.chapel-block__item:last-of-type {
  margin-bottom: 0;
}

.chapel-block__img {
  width: 49.24242%;
}

@media screen and (max-width: 767px) {
  .chapel-block__img {
    margin-bottom: 8vw;
    width: 100%;
  }
}

.chapel-block__img img {
  width: 100%;
}

.chapel-block__txt-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-align: center;
  width: 46.9697%;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  align-items: center;
}

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

.chapel-block__ttl {
  margin-bottom: 20px;
  color: #874e4c;
  text-align: center;
  font-size: 1.71429rem;
}

@media screen and (max-width: 767px) {
  .chapel-block__ttl {
    margin-bottom: 2.66667vw;
    font-size: 6.93333vw;
  }
}

.chapel-block__txt {
  font-size: 1.28571rem;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .chapel-block__txt {
    margin-right: auto;
    margin-left: auto;
    width: 80.77994%;
    text-align: center;
    font-size: 4.8vw;
  }
}
/*  chapel-gallery
--------------------------------------------- */

.chapel-gallery {
  margin-top: 40px;
  margin-bottom: 270px;
}

@media screen and (max-width: 767px) {
  .chapel-gallery {
    margin-top: 8vw;
    margin-bottom: 53.33333vw;
  }
}

.chapel-gallery__slider {
  margin-right: auto;
  margin-left: auto;
  max-width: 1044px;
}

.chapel-gallery__slide {
  padding-right: 7px;
  padding-left: 7px;
}

@media screen and (max-width: 767px) {
  .chapel-gallery__slide {
    padding-right: 0;
    padding-left: 0;
  }
}

.chapel-gallery__slide img {
  width: 100%;
}

.chapel-gallery__slide a {
  display: block;
}
/* ---------------------------------------------
*   Concept Page
--------------------------------------------- */
/*  conecpt-intro
--------------------------------------------- */

.conecpt-intro {
  margin-bottom: 210px;
}

@media screen and (max-width: 767px) {
  .conecpt-intro {
    margin-bottom: 18.66667vw;
  }
}

.conecpt-intro__txt {
  margin-bottom: 45px;
  color: #874e4c;
  text-align: center;
  font-size: 1.42857rem;
  line-height: 2.4;
}

@media screen and (max-width: 767px) {
  .conecpt-intro__txt {
    margin-bottom: 6.66667vw;
    font-size: 4.8vw;
    line-height: 1.8;
  }
}

.conecpt-intro__txt:last-of-type {
  margin-bottom: 0;
}
/*  concept-panel-wrap
--------------------------------------------- */

.concept-panel-wrap {
  margin-bottom: 315px;
}

@media screen and (max-width: 767px) {
  .concept-panel-wrap {
    margin-bottom: 8.53333vw;
  }
}
/*  concept-panel
--------------------------------------------- */

@media screen and (min-width: 768px) {
  .concept-panel:nth-of-type(n + 2) {
    margin-top: 10px;
  }
}

.concept-panel__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (min-width: 768px) {
  .concept-panel:nth-of-type(2n + 1) .concept-panel__list {
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
  }
}

@media screen and (max-width: 767px) {
  .concept-panel__list {
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
  }
}

.concept-panel__item {
  display: block;
  width: 66.66%;
  color: #874e4c;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .concept-panel__item {
    width: 100%;
  }
}

.concept-panel__item--main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 10px 10px 0;
  width: 33.33%;
}

@media screen and (max-width: 767px) {
  .concept-panel__item--main {
    padding: 0;
    width: 100%;
  }
}

.concept-panel__link {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  -ms-flex-align: center;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0.5em 1em;
  width: 100%;
  height: 100%;
  -webkit-box-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  align-items: center;
}

@media screen and (min-width: 768px) {
  .concept-panel__link {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .concept-panel__link:hover {
    opacity: 0.8;
  }
}

@media screen and (max-width: 767px) {
  .concept-panel__link {
    padding-top: 8vw;
    padding-bottom: 25.33333vw;
  }
}

.concept-panel__link::before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  border: 1px solid #e7d7d4;
  content: "";
}

@media screen and (max-width: 767px) {
  .concept-panel__link::before {
    display: none;
  }
}

.concept-panel__contents {
  max-width: 400px;
}

@media screen and (max-width: 767px) {
  .concept-panel__contents {
    max-width: initial;
    max-width: none;
  }
}

.concept-panel__img img {
  width: 100%;
}

.concept-panel__ttl {
  margin-bottom: 22px;
}

@media screen and (max-width: 1220px) {
  .concept-panel__ttl {
    margin-bottom: 35px;
  }
}

@media screen and (max-width: 767px) {
  .concept-panel__ttl {
    margin-bottom: 9.33333vw;
  }
}

.concept-panel__ttl-number {
  display: block;
  margin-bottom: 11px;
  font-size: 2.5rem;
  font-family: "Times New Roman", serif;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .concept-panel__ttl-number {
    margin-bottom: 2.66667vw;
    font-size: 9.33333vw;
  }
}

.concept-panel__ttl-txt {
  display: block;
  font-size: 1.71429rem;
}

@media screen and (max-width: 767px) {
  .concept-panel__ttl-txt {
    font-size: 6.4vw;
  }
}

.concept-panel__txt {
  margin-bottom: 50px;
  font-size: 1.18571rem;
  line-height: 1.8;
}

@media screen and (max-width: 1220px) {
  .concept-panel__txt {
    margin-bottom: 14.66667vw;
  }
}

@media screen and (max-width: 767px) {
  .concept-panel__txt {
    font-size: 4.8vw;
  }
}
/*  staff-list
--------------------------------------------- */

.staff-list {
  margin-top: 55px;
  margin-bottom: 340px;
}

@media screen and (max-width: 767px) {
  .staff-list {
    margin-top: 9.86667vw;
    margin-bottom: 37.33333vw;
  }
}

.staff-list__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  margin-right: auto;
  margin-left: auto;
  max-width: 1200px;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .staff-list__list {
    margin-right: 2.13333%;
    margin-left: 2.13333%;
    max-width: initial;
    max-width: none;
  }
}

@media screen and (max-width: 767px) {
  .staff-list__list {
    display: block;
  }
}

.staff-list__item {
  margin-right: 4.58333%;
  width: 30%;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .staff-list__item:nth-of-type(3n) {
    margin-right: 0;
  }
  .staff-list__item:nth-of-type(n + 4) {
    margin-top: 135px;
  }
}

@media screen and (max-width: 767px) {
  .staff-list__item {
    margin-right: 0;
    width: 100%;
  }
  .staff-list__item:nth-of-type(n + 2) {
    margin-top: 8vw;
  }
}

.staff-list__img {
  margin-bottom: 35px;
}

@media screen and (max-width: 767px) {
  .staff-list__img {
    margin-bottom: 8.8vw;
  }
}

.staff-list__img img {
  width: 100%;
}

.staff-list__pos {
  margin-bottom: 25px;
  color: #874e4c;
}

@media screen and (max-width: 767px) {
  .staff-list__pos {
    margin-bottom: 8vw;
  }
}

.staff-list__pos-en {
  display: block;
  margin-bottom: 5px;
  font-size: 1.85714rem;
  font-family: "Times New Roman", serif;
}

@media screen and (max-width: 767px) {
  .staff-list__pos-en {
    margin-bottom: 0.8vw;
    font-size: 6.93333vw;
  }
}

.staff-list__pos-jp {
  display: block;
  font-size: 1.14286rem;
}

@media screen and (max-width: 767px) {
  .staff-list__pos-jp {
    font-size: 4.26667vw;
  }
}

.staff-list__txt {
  text-align: left;
  font-size: 1.57143rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .staff-list__txt {
    padding-right: 2.76243%;
    padding-left: 2.76243%;
    font-size: 4.8vw;
  }
}
/* ---------------------------------------------
*   Cuisine Page
--------------------------------------------- */
/*  cuisine-block
--------------------------------------------- */

.cuisine-block {
  margin-bottom: 280px;
}

@media screen and (max-width: 767px) {
  .cuisine-block {
    margin-bottom: 30.66667vw;
  }
}

.cuisine-block__ttl {
  color: #874e4c;
  text-align: center;
  font-size: 3.57143rem;
  font-family: "Times New Roman", serif;
}

@media screen and (max-width: 767px) {
  .cuisine-block__ttl {
    font-size: 6.93333vw;
  }
}

.cuisine-block__lead {
  margin-top: 25px;
  margin-bottom: 170px;
}

@media screen and (max-width: 767px) {
  .cuisine-block__lead {
    margin: 2.66667vw auto 8vw;
    width: 77.33333%;
    letter-spacing: 0.1vw;
    font-size: 4.8vw;
  }
}
/*  cuisine
--------------------------------------------- */

.cuisine {
  margin-bottom: 145px;
  color: #874e4c;
}

@media screen and (max-width: 767px) {
  .cuisine {
    display: block;
    margin-bottom: 23.46667vw;
    padding-right: 2.13333%;
    padding-left: 2.13333%;
  }
}

.cuisine__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  margin-bottom: 40px;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (min-width: 768px) {
  .cuisine__item:nth-of-type(2n) {
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
  }
  .cuisine__item:last-of-type {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 767px) {
  .cuisine__item {
    display: block;
    margin-bottom: 23.46667vw;
  }
}

.cuisine__img {
  width: 48.51852%;
}

@media screen and (max-width: 767px) {
  .cuisine__img {
    margin-bottom: 5.86667vw;
    width: 100%;
  }
}

.cuisine__img img {
  width: 100%;
}

.cuisine__txt-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-align: center;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-right: 4.44444%;
  padding-left: 3.7037%;
  width: 51.48148%;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .cuisine__txt-wrap {
    padding-right: 0;
    padding-left: 0;
    width: 100%;
  }
}

.cuisine__ttl {
  margin-bottom: 40px;
  text-align: center;
  font-size: 1.71429rem;
  line-height: 1.7;
}

@media screen and (max-width: 1580px) {
  .cuisine__ttl {
    margin-bottom: 30px;
    font-size: 1.57143rem;
  }
}

@media screen and (max-width: 1400px) {
  .cuisine__ttl {
    margin-bottom: 20px;
    font-size: 1.35714rem;
  }
}

@media screen and (max-width: 767px) {
  .cuisine__ttl {
    font-size: 1.71429rem;
    line-height: 1.4;
  }
}

.cuisine__txt {
  font-size: 1.28571rem;
  line-height: 1.8;
}

@media screen and (max-width: 1400px) {
  .cuisine__txt {
    font-size: 1.14286rem;
  }
}

@media screen and (max-width: 767px) {
  .cuisine__txt {
    margin-right: auto;
    margin-left: auto;
    width: 80.77994%;
    text-align: center;
    font-size: 4.8vw;
    line-height: 1.7;
  }
}
/*  cuisine-chef
--------------------------------------------- */

.cuisine-chef {
  margin-right: auto;
  margin-left: auto;
  padding-bottom: 82px;
  max-width: 1200px;
  border-bottom: 1px solid #e7d7d4;
}

@media screen and (max-width: 767px) {
  .cuisine-chef {
    padding-top: 4.26667vw;
    padding-bottom: 12vw;
    border-top: 1px solid #e7d7d4;
  }
}

.cuisine-chef__ttl {
  position: relative;
  margin-bottom: 55px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .cuisine-chef__ttl {
    margin-bottom: 8vw;
  }
}

.cuisine-chef__ttl::before {
  position: absolute;
  top: 50%;
  display: block;
  width: 100%;
  height: 1px;
  background-color: #e7d7d4;
  content: "";
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
  .cuisine-chef__ttl::before {
    display: none;
  }
}

.cuisine-chef__ttl-txt {
  position: relative;
  z-index: 1;
  padding-right: 45px;
  padding-left: 45px;
  background-color: #fff;
  color: #874e4c;
  font-size: 1.57143rem;
}

@media screen and (max-width: 767px) {
  .cuisine-chef__ttl-txt {
    padding-right: 0;
    padding-left: 0;
    font-size: 5.33333vw;
  }
}

.cuisine-chef__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .cuisine-chef__content {
    display: block;
  }
}

.cuisine-chef__left {
  width: 250px;
}

@media screen and (max-width: 767px) {
  .cuisine-chef__left {
    margin-bottom: 6.13333vw;
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .cuisine-chef__img {
    margin-right: auto;
    margin-left: auto;
    width: 66.66667%;
  }
}

.cuisine-chef__img img {
  width: 100%;
}

.cuisine-chef__right {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 3px;
  padding-left: 20px;
  width: calc(100% - 250px);
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (max-width: 767px) {
  .cuisine-chef__right {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 0;
    padding-right: 6.66667%;
    padding-left: 6.66667%;
    width: 100%;
    text-align: center;
  }
}

.cuisine-chef__name {
  margin-bottom: 12px;
  font-size: 1.85714rem;
}

@media screen and (max-width: 767px) {
  .cuisine-chef__name {
    margin-bottom: 2.66667vw;
    font-size: 5.33333vw;
  }
}

.cuisine-chef__txt {
  font-size: 1.27143rem;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .cuisine-chef__txt {
    font-size: 3.73333vw;
  }
}
/* ---------------------------------------------
*   Dress Pages
--------------------------------------------- */

.dress__ttl {
  margin-bottom: 45px;
  text-align: center;
  font-size: 2rem;
}

#dress-brand {
  max-width: 924px;
  margin: 0 auto;
}

#dress-brand a {
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .dress__ttl {
    margin-bottom: 6.66667vw;
    font-size: 6.4vw;
  }
}
/* ---------------------------------------------
*   Fair Page
--------------------------------------------- */
/*  fair-main
--------------------------------------------- */

.fair-main {
  padding: 40px 70px 55px 38px;
}

@media screen and (max-width: 767px) {
  .fair-main {
    padding: 20px 20px 32px;
  }
}

.fair-main__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-pack: justify;
  margin-bottom: 44px;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .fair-main__inner {
    display: block;
    margin-bottom: 10.66667vw;
  }
}

.fair-main__left {
  width: 50.3663%;
}

@media screen and (max-width: 767px) {
  .fair-main__left {
    width: 100%;
  }
}

.fair-main__img img {
  width: 100%;
}

.fair-main__head-img {
  position: absolute;
  top: 14px;
  left: 25%;
  width: 302px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

@media screen and (max-width: 767px) {
  .fair-main__head-img {
    left: 50%;
    top: -6vw;
    width: 65.33333%;
  }
}

.fair-main__right {
  padding-top: 27px;
  width: 43.49817%;
}

@media screen and (max-width: 767px) {
  .fair-main__right {
    padding-top: 4.53333vw;
    width: 100%;
  }
}

.fair-main__info {
  margin-bottom: 18px;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: baseline;
  align-items: baseline;
}

@media screen and (max-width: 767px) {
  .fair-main__info {
    margin-bottom: 3.46667vw;
    display: block;
  }
}

.fair-main__date {
  font-size: 1rem;
  font-family: "Times New Roman", serif;
  display: inline-block;
}

@media screen and (max-width: 767px) {
  .fair-main__date {
    font-size: 4.73333vw;
    margin-bottom: 3vw;
  }
}

.fair-main__ttl {
  margin-bottom: 10px;
  font-size: 1.57143rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  line-height: 1.8;
  color: #b30a0a;
}

@media screen and (max-width: 767px) {
  .fair-main__ttl {
    margin-bottom: 2.66667vw;
    font-size: 5.33333vw;
  }
}

.fair-main__txt {
  font-size: 1.28571rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .fair-main__txt {
    font-size: 3.8vw;
  }
}
/*  fair-calender
--------------------------------------------- */

.fair-calender {
  margin-top: 110px;
  margin-bottom: 35px;
  padding-right: 20px;
  padding-left: 20px;
  /* -- cakender [start] -- */
  /* -- cakender [end] -- */
}

@media screen and (max-width: 767px) {
  .fair-calender {
    margin-top: 13.33333vw;
    margin-bottom: 14.66667vw;
    padding-right: 5.33333%;
    padding-left: 5.33333%;
  }
}

.fair-calender__inner {
  position: relative;
  margin-right: auto;
  margin-left: auto;
  max-width: 1490px;
}

.fair-calender__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-pack: justify;
  padding-right: 4.36242%;
  padding-left: 4.36242%;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .fair-calender__list {
    padding-right: 0;
    padding-left: 0;
  }
}

.fair-calender__item {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 47.05882%;
}

@media screen and (max-width: 767px) {
  .fair-calender__item {
    width: 100%;
  }
  /* 2023.04 start */
  .fair-calender__item:last-of-type {
    display: none;
  }
  /* 2023.04 end */
}

.fair-calender .ai1ec-next-month,
.fair-calender .ai1ec-prev-month {
  display: none;
}

@media screen and (max-width: 767px) {
  .fair-calender .ai1ec-next-month,
  .fair-calender .ai1ec-prev-month {
    display: block;
  }
}

@media screen and (max-width: 767px) {
  /* 2023.04 start */
  /* .fair-calender__arrows {
    display: none;
  } */
  /* 2023.04 end */
}

.fair-calender__arrow {
  position: absolute;
  top: 46%;
  display: block;
  width: 18px;
  height: 35px;
  background-position: 0 0;
  background-size: 18px 35px;
  background-repeat: no-repeat;
  cursor: pointer;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media screen and (min-width: 768px) {
  .fair-calender__arrow {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .fair-calender__arrow:hover {
    opacity: 0.8;
  }
}

/* 2023.04 start */
@media screen and (max-width: 767px) {
  .fair-calender__arrow {
    width: 3.5vw;
    height: 7vw;
    background-size: contain;
    top: 3vw;
  }
}
/* 2023.04 end */

.fair-calender__arrow--prev {
  left: 0;
  background-image: url(../img/common/img_slider-arrow_left.svg);
}
/* 2023.04 start */
@media screen and (max-width: 767px) {
  .fair-calender__arrow--prev {
    z-index: 1;
  }
}
/* 2023.04 end */

.fair-calender__arrow--next {
  right: 0;
  background-image: url(../img/common/img_slider-arrow_right.svg);
}
/* 2023.04 start */
@media screen and (max-width: 767px) {
  .fair-calender__arrow--next {
    right: 0;
    z-index: 1;
  }
}
/* 2023.04 end */

/*  fair-detail-head
--------------------------------------------- */

.fair-detail-head {
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-top: 95px;
  margin-right: auto;
  margin-bottom: 140px;
  margin-left: auto;
  padding: 55px 40px 60px;
  max-width: 1200px;
  border: 1px solid #e7d7d4;
}

@media screen and (max-width: 767px) {
  .fair-detail-head {
    margin-right: 2.13333%;
    margin-left: 2.13333%;
    max-width: initial;
    max-width: none;
  }
}

@media screen and (max-width: 767px) {
  .fair-detail-head {
    margin-top: 16vw;
    margin-bottom: 24vw;
    padding: 10.66667vw 2.31884%;
  }
}

.fair-detail-head__img-head {
  position: absolute;
  top: -38px;
  left: 50%;
  padding-right: 23px;
  padding-left: 23px;
  width: 216px;
  background-color: #fff;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

@media screen and (max-width: 767px) {
  .fair-detail-head__img-head {
    top: -8vw;
    padding-right: 2.93333vw;
    padding-left: 2.93333vw;
    width: 53.33333vw;
  }
}

.fair-detail-head__img-head img {
  width: 100%;
}

.fair-detail-head__ttl {
  margin-bottom: 35px;
  text-align: center;
  font-size: 1.78571rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (max-width: 767px) {
  .fair-detail-head__ttl {
    margin-right: auto;
    margin-bottom: 2.66667vw;
    margin-left: auto;
    width: 80vw;
    text-align: left;
    letter-spacing: 0.2vw;
    font-size: 5.33333vw;
    line-height: 1.8;
  }
}

.fair-detail-head__upper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-pack: justify;
  margin-bottom: 65px;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .fair-detail-head__upper {
    display: block;
    margin-bottom: 9.33333vw;
  }
}

.fair-detail-head__left {
  width: 49.54955%;
}

@media screen and (max-width: 767px) {
  .fair-detail-head__left {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .fair-detail-head__img {
    margin-right: auto;
    margin-left: auto;
    width: 80vw;
  }
}

.fair-detail-head__img img {
  width: 100%;
}

.fair-detail-head__right {
  padding-top: 20px;
  width: 46.3964%;
}

@media screen and (max-width: 767px) {
  .fair-detail-head__right {
    padding-top: 3.73333vw;
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .fair-detail-head__date-info {
    margin-right: auto;
    margin-bottom: 3.73333vw;
    margin-left: auto;
    width: 80vw;
  }
}

.fair-detail-head__date {
  display: inline-block;
  margin-right: 14px;
  margin-bottom: 14px;
  margin-left: 6px;
  font-size: 1rem;
  font-family: "Times New Roman", serif;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .fair-detail-head__date {
    margin-right: 3.46667vw;
    margin-bottom: 0;
    margin-left: 0;
    font-size: 4.73333vw;
  }
}

.fair-detail-head__day-week {
  font-size: 1rem;
  font-family: "Times New Roman", serif;
}

@media screen and (max-width: 767px) {
  .fair-detail-head__day-week {
    font-size: 3.73333vw;
  }
}

.fair-detail-head__labels {
  margin-bottom: 43px;
  margin-left: 6px;
  font-size: 0;
}

@media screen and (max-width: 767px) {
  .fair-detail-head__labels {
    margin-right: auto;
    margin-bottom: 3.73333vw;
    margin-left: auto;
    width: 80vw;
  }
}

.fair-detail-head__label {
  display: inline-block;
  margin-right: 5px;
  margin-bottom: 5px;
  padding: 3px 8px;
  background-color: #874e4c;
  color: #fff;
  font-size: 0.92857rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (min-width: 768px) {
  .ie11 .fair-detail-head__label {
    padding-top: 5px;
    padding-bottom: 1px;
  }
}

@media screen and (max-width: 767px) {
  .fair-detail-head__label {
    margin-right: 1.33333vw;
    margin-bottom: 1.33333vw;
    padding: 0.8vw 2.13333vw;
    font-size: 3.46667vw;
  }
}

.fair-detail-head__label:last-of-type {
  margin-right: 0;
}

.fair-detail-head__tbl {
  width: 100%;
  table-layout: fixed;
}

.fair-detail-head__tbl tr {
  border-bottom: 1px solid #e7d7d4;
}

.fair-detail-head__tbl th,
.fair-detail-head__tbl td {
  color: #874e4c;
  text-align: center;
  font-size: 1.28571rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (max-width: 767px) {
  .fair-detail-head__tbl th,
  .fair-detail-head__tbl td {
    font-size: 3.73333vw;
  }
}

.fair-detail-head__tbl th {
  padding-top: 5px;
  padding-bottom: 5px;
  width: 16%;
}

@media screen and (min-width: 768px) {
  .ie11 .fair-detail-head__tbl th {
    padding-top: 8px;
    padding-bottom: 2px;
  }
}

@media screen and (max-width: 767px) {
  .fair-detail-head__tbl th:nth-of-type(1) {
    width: 23%;
  }
  .fair-detail-head__tbl th:nth-of-type(2) {
    width: 18%;
  }
  .fair-detail-head__tbl th:nth-of-type(3) {
    width: 20%;
  }
  .fair-detail-head__tbl th:nth-of-type(4) {
    width: 22%;
  }
}

@media screen and (min-width: 768px) {
  .fair-detail-head__tbl th:nth-of-type(3) {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-left: 2em;
    width: 20%;
    text-align: left;
  }
}

.fair-detail-head__tbl td {
  padding-top: 22px;
  padding-bottom: 22px;
}

@media screen and (min-width: 768px) {
  .ie11 .fair-detail-head__tbl td {
    padding-top: 25px;
    padding-bottom: 19px;
  }
}

@media screen and (max-width: 767px) {
  .fair-detail-head__tbl td {
    padding-top: 2.93333vw;
    padding-bottom: 2.93333vw;
  }
  .fair-detail-head__tbl td:nth-of-type(1) {
    letter-spacing: -0.2vw;
  }
}

.fair-detail-head__tbl td:nth-of-type(3) {
  padding-right: 1em;
  text-align: left;
}

.fair-detail-head__txt-note {
  display: block;
  margin-top: 10px;
  font-size: 1rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (max-width: 767px) {
  .fair-detail-head__txt-note {
    margin-top: 2.13333vw;
    font-size: 3.73333vw;
  }
}

.fair-detail-head__btn {
  display: block;
  padding-top: 9px;
  padding-bottom: 9px;
  width: 120px;
  background-color: #482426;
  color: #fff;
  font-size: 1.28571rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (min-width: 768px) {
  .fair-detail-head__btn {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .fair-detail-head__btn:hover {
    opacity: 0.8;
  }
  .ie11 .fair-detail-head__btn {
    padding-top: 12px;
    padding-bottom: 6px;
  }
}

@media screen and (max-width: 767px) {
  .fair-detail-head__btn {
    margin-right: 10px;
    margin-left: auto;
    padding-top: 1.33333vw;
    padding-bottom: 1.33333vw;
    width: 20vw;
    font-size: 3.73333vw;
  }
}

@media screen and (max-width: 767px) {
  .fair-detail-head__free-area {
    padding-right: 3.2vw;
    padding-left: 3.2vw;
  }
}
/*  fair-list01
--------------------------------------------- */

.fair-list01 {
  margin-top: 145px;
  margin-bottom: 122px;
}

@media screen and (max-width: 767px) {
  .fair-list01 {
    margin-top: 0;
    margin-bottom: 28.53333vw;
  }
}

.fair-list01__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .fair-list01__list {
    display: block;
  }
}

.fair-list01__item {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-right: 1.25%;
  width: 32.5%;
  border: 1px solid #e7d7d4;
}

@media screen and (min-width: 768px) {
  .fair-list01__item:nth-of-type(3n) {
    margin-right: 0;
  }
  .fair-list01__item:nth-of-type(n + 4) {
    margin-top: 15px;
  }
}

@media screen and (max-width: 767px) {
  .fair-list01__item {
    width: 100%;
    border-top: none;
    border-right: none;
    border-left: none;
  }
}

.fair-list01__link {
  display: block;
  padding: 15px 12px 28px;
}

@media screen and (min-width: 768px) {
  .fair-list01__link {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .fair-list01__link:hover {
    opacity: 0.8;
  }
}

@media screen and (max-width: 767px) {
  .fair-list01__link {
    position: relative;
    padding: 4.8vw 2.66667vw 3.46667vw;
    background: url(../img/common/icon_arrow_right.svg)
      calc(100% - 2.66667%) 50% no-repeat;
    background-size: 3.46667vw auto;
  }
}

@media screen and (max-width: 767px) {
  .fair-list01__upper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    -ms-flex-pack: justify;
    margin-bottom: 1.33333vw;
    -webkit-box-pack: start;
    justify-content: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    justify-content: space-between;
  }
}

@media screen and (max-width: 767px) {
  .fair-list01__upper-left {
    width: 36.62%;
  }
}

@media screen and (max-width: 767px) {
  .fair-list01__upper-right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: start;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-right: 4.3%;
    width: 59.72%;
    -webkit-box-pack: start;
    justify-content: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
  }
}

.fair-list01__img {
  margin-bottom: 24px;
}

.fair-list01__img img {
  width: 100%;
}

.fair-list01__date {
  display: block;
  margin-bottom: 12px;
  font-size: 1rem;
  font-family: "Times New Roman", serif;
}

@media screen and (max-width: 767px) {
  .fair-list01__date {
    margin-bottom: 0;
    width: 100%;
    font-size: 3.73333vw;
  }
}

.fair-list01__ttl {
  margin-bottom: 13px;
  font-size: 1.57143rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .fair-list01__ttl {
    display: block;
    -ms-flex-order: -1;
    margin-top: -1vw;
    margin-bottom: 1.33333vw;
    width: 100%;
    font-size: 4.26667vw;
    line-height: 1.62;
    -webkit-box-ordinal-group: 0;
    order: -1;
  }
}

.fair-list01__labels {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  margin-bottom: 32px;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .fair-list01__labels {
    margin-bottom: 0;
  }
}

.fair-list01__label-wrap {
  margin-left: 19px;
}

@media screen and (max-width: 767px) {
  .fair-list01__label-wrap {
    margin-left: 0;
  }
}

.fair-list01__label {
  display: inline-block;
  margin-right: 5px;
  margin-bottom: 5px;
  padding: 1px 8px;
  background-color: #874e4c;
  color: #fff;
  font-size: 0.92857rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (min-width: 768px) {
  .ie11 .fair-list01__label {
    padding-top: 4px;
    padding-bottom: 0;
  }
}

@media screen and (max-width: 767px) {
  .fair-list01__label {
    margin-right: 1.33333vw;
    margin-bottom: 1.33333vw;
    padding: 0.53333vw 2.13333vw;
    font-size: 3.06667vw;
  }
}

.fair-list01__label:last-of-type {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .fair-list01 .mod-btn {
    display: none;
  }
}
/*  fair-list02
--------------------------------------------- */

.fair-list02 {
  margin-top: 60px;
  margin-bottom: 165px;
}

@media screen and (max-width: 767px) {
  .fair-list02 {
    margin-top: 9.33333vw;
    margin-bottom: 32vw;
  }
}

.fair-list02__list {
  margin-bottom: 60px;
}

.fair-list02__list.fair-list02__list--acc {
  border: 1px solid #e7d7d4;
}

.fair-list02__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-pack: justify;
  padding: 1.25% 0;
  border: 1px solid #e7d7d4;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .fair-list02__item {
    display: block;
    padding: 0;
    border: none;
  }
}

.fair-list02__item:nth-of-type(n + 2) {
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .fair-list02__item:nth-of-type(n + 2) {
    margin-top: 24vw;
  }
}

.fair-list02__list--acc .fair-list02__item {
  border: none;
}

@media screen and (max-width: 767px) {
  .fair-list02__list--acc .fair-list02__item {
    padding: 9.06667vw 0 5.33333vw;
  }
}

.fair-list02__list--acc .fair-list02__item:nth-of-type(n + 2) {
  display: none;
  padding: 2.5% 0;
  margin-top: 0;
  margin-left: 4.41667%;
  margin-right: 4.41667%;
  border-top: 1px solid #e7d7d4;
}

@media screen and (max-width: 767px) {
  .fair-list02__list--acc .fair-list02__item:nth-of-type(n + 2) {
    margin-top: 0;
    margin-left: 6.4%;
    margin-right: 6.4%;
    padding-top: 6.4%;
    padding-bottom: 6.4%;
  }
}

.fair-list02__list--acc .fair-list02__item-wrap {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
}

.fair-list02__img-wrap {
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-left: 3.33333%;
  width: 45.83333%;
}

@media screen and (max-width: 767px) {
  .fair-list02__img-wrap {
    margin-bottom: 6.66667vw;
    padding-left: 1.86667%;
    padding-right: 1.86667%;
    width: 100%;
  }
}

.fair-list02__img-wrap .fair-list02__img {
  width: 100%;
  padding-left: 0;
}

@media screen and (max-width: 767px) {
  .fair-list02__img-wrap .fair-list02__img {
    margin-bottom: 0;
  }
}

.fair-list02__img {
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-left: 3.33333%;
  width: 45.83333%;
}

@media screen and (max-width: 767px) {
  .fair-list02__img {
    margin-bottom: 6.66667vw;
    padding-left: 0;
    width: 100%;
  }
}

.fair-list02__img img {
  width: 100%;
}

.fair-list02__head-img {
  position: absolute;
  top: -22px;
  left: 50%;
  width: 200px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

@media screen and (max-width: 767px) {
  .fair-list02__head-img {
    top: -8vw;
    width: 53.33333%;
  }
}

.fair-list02__txt-wrap {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-right: 4.16667%;
  padding-left: 6.25%;
  width: 54.16667%;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (max-width: 767px) {
  .fair-list02__txt-wrap {
    padding-right: 0;
    padding-left: 0;
    width: 100%;
  }
}

.fair-list02__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .fair-list02__info {
    padding-left: 2.66667vw;
  }
}

.fair-list02__date {
  display: block;
  width: 105px;
  font-size: 20px;
  font-family: "Times New Roman", serif;
}

@media screen and (max-width: 767px) {
  .fair-list02__date {
    margin-bottom: 2vw;
    width: 80vw;
    letter-spacing: 0.05vw;
    font-size: 4.73333vw;
  }
}

.fair-list02__labels {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  margin-bottom: 25px;
  width: calc(100% - 105px);
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .fair-list02__labels {
    margin-bottom: 4vw;
    width: calc(100% - 20vw - 2.13vw);
  }
}

.fair-list02__label {
  display: inline-block;
  margin-right: 5px;
  margin-bottom: 5px;
  padding: 3px 8px;
  background-color: #874e4c;
  color: #fff;
  font-size: 0.92857rem;
}

@media screen and (min-width: 768px) {
  .ie11 .fair-list02__label {
    padding-top: 6px;
    padding-bottom: 0px;
  }
  .windows.firefox .fair-list02__label {
    padding-top: 4px;
    padding-bottom: 2px;
  }
}

.fair-list02__label:last-of-type {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .fair-list02__lower {
    padding-right: 4.53333vw;
    padding-left: 4.53333vw;
  }
}

.fair-list02__ttl {
  margin-bottom: 15px;
  font-size: 1.57143rem;
  line-height: 1.6;
  color: #b30a0a;
}

@media screen and (min-width: 768px) {
  .ie11 .fair-list02__ttl {
    margin-bottom: 12px;
  }
}

@media screen and (max-width: 767px) {
  .fair-list02__ttl {
    margin-bottom: 2.66667vw;
    text-align: left;
    font-size: 5.86667vw;
    line-height: 1.8;
  }
}

.fair-list02__txt {
  margin-bottom: 30px;
  width: 97%;
  font-size: 1.28571rem;
  line-height: 1.7;
}

@media screen and (min-width: 768px) {
  .ie11 .fair-list02__txt {
    margin-bottom: 27px;
  }
}

@media screen and (max-width: 767px) {
  .fair-list02__txt {
    margin-bottom: 13.33333vw;
    width: 100%;
    font-size: 3.8vw;
  }
}

.fair-list02__bottom {
  width: 100%;
  padding-top: 18px;
  margin-top: 24px;
  margin-left: 3.33333%;
  margin-right: 2.66667%;
  border-top: 1px solid #e7d7d4;
  text-align: right;
}

@media screen and (max-width: 767px) {
  .fair-list02__bottom {
    padding-top: 5.3333vw;
    margin-right: 6.4%;
    margin-left: 6.4%;
  }
}

.fair-list02__acc-btn {
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-right: 44px;
  color: #482426;
  font-size: 1.14286rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  cursor: pointer;
}

@media screen and (min-width: 768px) {
  .fair-list02__acc-btn {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .fair-list02__acc-btn:hover {
    opacity: 0.8;
  }
}

@media screen and (max-width: 767px) {
  .fair-list02__acc-btn {
    font-size: 4.26667vw;
    padding-right: 8.53333vw;
  }
}

.fair-list02__acc-btn::before {
  position: absolute;
  top: 2px;
  left: 2px;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  content: "";
}

.fair-list02__acc-btn--close {
  display: none;
  margin-top: 38px;
  width: 246px;
  border: 1px solid #e7d7d4;
  color: #eabcac;
}

@media screen and (max-width: 767px) {
  .fair-list02__acc-btn--close {
    margin-top: 6.66667vw;
  }
}

.fair-list02__acc-btn--close::before {
  border: 1px solid #e7d7d4;
}

.js-acc-open .fair-list02__acc-btn--close {
  display: block;
}

.fair-list02__acc-btn-txt {
  font-size: 1.28571rem;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .fair-list02__acc-btn-txt {
    font-size: 4.8vw;
    letter-spacing: -0.04em;
  }
}

.fair-list02__acc-btn-arrow {
  position: absolute;
  top: 50%;
  right: 11px;
  display: block;
  width: 12px;
  height: 12px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
  .fair-list02__acc-btn-arrow {
    right: 0;
  }
}

.fair-list02__acc-btn-arrow::before,
.fair-list02__acc-btn-arrow::after {
  position: absolute;
  display: block;
  background-color: #482426;
  content: "";
}

.fair-list02__acc-btn-arrow::before {
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.fair-list02__acc-btn-arrow::after {
  top: 0;
  left: 50%;
  width: 1px;
  height: 100%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.js-acc-open .fair-list02__acc-btn-arrow::after {
  display: none;
}
/* ---------------------------------------------
*   Faq Pages
--------------------------------------------- */
/*  faq-block
--------------------------------------------- */

.faq-block {
  margin-top: 60px;
  margin-bottom: 95px;
}

@media screen and (max-width: 767px) {
  .faq-block {
    margin-top: 16vw;
    margin-bottom: 21.33333vw;
  }
}

.faq-block__ttl {
  margin-bottom: 40px;
  padding-right: 0.5em;
  padding-left: 0.5em;
  text-align: center;
  font-size: 2.57143rem;
}

@media screen and (max-width: 767px) {
  .faq-block__ttl {
    margin-bottom: 8vw;
    font-size: 6.93333vw;
  }
}
/*  mod-contact-progress
--------------------------------------------- */

.mod-contact-progress {
  margin-bottom: 45px;
  background-position: 0 0;
  background-size: 100% 100%;
  background-repeat: no-repeat;
}

.mod-contact-progress--input {
  background-image: url(../img/form/bg_form_progress_input.png);
}

@media screen and (max-width: 767px) {
  .mod-contact-progress--input {
    background-image: url(../img/form/bg_form_progress_input_sp.png);
  }
}

.custom-wpcf7c-confirmed .mod-contact-progress--input {
  display: none;
}

.mod-contact-progress--confirm {
  display: none;
  background-image: url(../img/form/bg_form_progress_confirm.png);
}

@media screen and (max-width: 767px) {
  .mod-contact-progress--confirm {
    background-image: url(../img/form/bg_form_progress_confirm_sp.png);
  }
}

.custom-wpcf7c-confirmed .mod-contact-progress--confirm {
  display: block;
}

.mod-contact-progress--done {
  margin-top: 108px;
  margin-bottom: 87px;
  background-image: url(../img/form/bg_form_progress_done.png);
}

@media screen and (max-width: 767px) {
  .mod-contact-progress--done {
    margin-top: 14.66667vw;
    margin-bottom: 9.33333vw;
    background-image: url(../img/form/bg_form_progress_done_sp.png);
  }
}

.mod-contact-progress__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.mod-contact-progress__item {
  padding-top: 20px;
  padding-bottom: 20px;
  width: 33.33%;
  text-align: center;
  font-size: 1.28571rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (min-width: 768px) {
  .ie11 .mod-contact-progress__item {
    padding-top: 23px;
    padding-bottom: 17px;
  }
}

@media screen and (max-width: 767px) {
  .mod-contact-progress__item {
    padding-top: 8vw;
    padding-bottom: 8vw;
    font-size: 4.8vw;
  }
}

@media screen and (min-width: 768px) {
  .mod-contact-form__multi-select-reserve {
    display: flex;
  }
  .mod-contact-form__multi-select-reserve .visit_year,
  .mod-contact-form__multi-select-reserve .visit_month {
    margin-right: 10px;
  }
}

.mod-contact-form__readonly {
  pointer-events: none;
}
/*  thanks
--------------------------------------------- */

.thanks {
  margin-bottom: 290px;
}

@media screen and (max-width: 767px) {
  .thanks {
    margin-bottom: 32vw;
    padding-right: 3.2%;
    padding-left: 3.2%;
  }
}

.thanks__lead {
  margin-bottom: 40px;
  text-align: center;
  font-size: 1.57143rem;
  line-height: 3;
}

@media screen and (max-width: 767px) {
  .thanks__lead {
    margin-bottom: 5.86667vw;
    font-weight: bold;
    font-size: 4.8vw;
    line-height: 2.2;
  }
}

.thanks__txt {
  margin-bottom: 70px;
  text-align: center;
  font-size: 1.57143rem;
  line-height: 3;
}

@media screen and (max-width: 767px) {
  .thanks__txt {
    margin-bottom: 8vw;
    letter-spacing: 0.1vw;
    font-size: 4.8vw;
    line-height: 1.8;
  }
  .thanks__txt:last-of-type {
    margin-bottom: 24vw;
  }
}

.thanks__movie {
  margin-right: auto;
  margin-bottom: 37px;
  margin-left: auto;
  width: 640px;
  height: 360px;
}

@media screen and (max-width: 767px) {
  .thanks__movie {
    width: 100%;
    height: 48vw;
  }
}

.thanks__movie iframe {
  width: 100% !important;
  height: 100% !important;
}
/* ---------------------------------------------
*   Gallery Page
--------------------------------------------- */
/*  gallery-list
--------------------------------------------- */

.gallery-list {
  margin-right: auto;
  margin-bottom: 100px;
  margin-left: auto;
  max-width: 1227px;
}

@media screen and (max-width: 767px) {
  .gallery-list {
    margin-bottom: 12.26667vw;
    padding-right: 1.06667%;
    padding-left: 1.06667%;
  }
}

.gallery-list__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .gallery-list__list {
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    justify-content: space-between;
  }
}

.gallery-list__item {
  position: relative;
  margin-right: 0.70833%;
  margin-bottom: 50px;
  margin-left: 0.70833%;
  width: 31.83333%;
}

@media screen and (max-width: 767px) {
  .gallery-list__item {
    margin-right: 0.95368%;
    margin-bottom: 7px;
    margin-left: 0.95368%;
    width: 47.9564%;
  }
}

.gallery-list__link {
  display: block;
}

@media screen and (min-width: 768px) {
  .gallery-list__link {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .gallery-list__link:hover {
    opacity: 0.8;
  }
}

.gallery-list__img {
  margin-bottom: 15px;
  padding-top: 100%;
  width: 100%;
  background-color: #eee;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}

@media screen and (max-width: 767px) {
  .gallery-list__img {
    margin-bottom: 0;
  }
}

.gallery-list__txt {
  text-align: center;
  font-size: 1.57143rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (max-width: 767px) {
  .gallery-list__txt {
    display: none;
  }
}
/* ---------------------------------------------
*   Guest Pages
--------------------------------------------- */
/* ---------------------------------------------
*   Online Pages
--------------------------------------------- */
/* ---------------------------------------------
*   Plan Page
--------------------------------------------- */
/*  plan-block
--------------------------------------------- */

.plan-block {
  padding: 40px 40px 57px;
  -webkit-transition: padding 0.3s;
  transition: padding 0.3s;
}

@media screen and (max-width: 767px) {
  .plan-block {
    padding: 6.66667vw 0 9.86667vw;
  }
}

@media screen and (min-width: 768px) {
  .js-acc-open .plan-block {
    padding: 40px 40px 60px;
  }
}

@media screen and (max-width: 767px) {
  .js-acc-open .plan-block {
    /*border: 1px solid #E7D7D4;*/
  }
}

.plan-block__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-pack: justify;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .plan-block__inner {
    display: block;
  }
  .js-acc-open .plan-block__inner {
    padding-right: 5.7971%;
    padding-left: 5.7971%;
  }
}

.plan-block__left {
  width: 45.53571%;
}

@media screen and (max-width: 767px) {
  .plan-block__left {
    width: 100%;
    padding-right: 5.8309%;
    padding-left: 5.8309%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}

@media screen and (max-width: 767px) {
  .js-acc-open .plan-block__left {
    width: 100%;
  }
}

.plan-block__img img {
  width: 100%;
}

.plan-block__right {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 10px;
  width: 47.32143%;
}

@media screen and (max-width: 767px) {
  .js-acc-open .plan-block__right {
    margin-right: 0;
    padding-top: 4.8vw;
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .plan-block__right {
    padding-top: 4.8vw;
    padding-right: 5.8309%;
    padding-left: 5.8309%;
    width: 100%;
  }
  .js-acc-open .plan-block__right {
    padding-right: 0;
    padding-left: 0;
  }
}

.plan-block__info {
  margin-bottom: 10px;
  font-size: 1.57143rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .plan-block__info {
    margin-bottom: 0.8vw;
    font-size: 4.33333vw;
  }
}

.plan-block__number {
  margin-right: 14px;
}

.plan-block__category-list {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-align-items: center;
  align-items: center;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .plan-block__category-list {
    margin-bottom: 4vw;
  }
}

.plan-block__category-item {
  padding: 4px 16px;
  margin-top: 8px;
  margin-right: 13px;
  font-size: 1rem;
  background-color: #f3eceb;
  border-radius: 15px;
}

@media screen and (max-width: 767px) {
  .plan-block__category-item {
    font-size: 3.2vw;
    padding: 1.06667vw 4.26667vw;
    margin-top: 2.66667vw;
    margin-right: 2.66667vw;
  }
}

.ie11 .plan-block__category-item {
  padding: 6px 16px 2px;
}

.plan-block__category-item:last-of-type {
  margin-right: 0;
}

.plan-block__ttl {
  margin-bottom: 15px;
  font-size: 1.78571rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  color: #b30a0a;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .plan-block__ttl {
    margin-bottom: 2.66667vw;
    font-size: 5.33333vw;
  }
  .js-acc-open .plan-block__ttl {
    font-size: 5.86667vw;
  }
}

.plan-block__caption {
  font-size: 1rem;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .plan-block__caption {
    font-size: 3.2vw;
    margin-bottom: 4vw;
  }
}

.plan-block__txt {
  font-size: 1.28571rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .plan-block__txt {
    font-size: 3.8vw;
  }
}

.plan-block__bottom {
  margin-top: 30px;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .plan-block__bottom {
    margin-top: 6.66667vw;
    margin-bottom: 6.13333vw;
  }
}

.plan-block__outer-tbl {
  width: 100%;
  background-color: #f8f5f5;
  border-top: 1px solid #eabcac;
  border-bottom: 1px solid #eabcac;
}

.plan-block__outer-tbl th {
  font-family: YuGothic, "Yu Gothic", sans-serif;
  font-size: 1.42857rem;
  width: 9.09091%;
  padding: 28px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  vertical-align: baseline;
}

@media screen and (max-width: 767px) {
  .plan-block__outer-tbl th {
    width: 13.33333vw;
    font-size: 2.93333vw;
    padding: 4.8vw 4vw 4.8vw 2.13333vw;
  }
}

.plan-block__outer-tbl td {
  font-family: YuGothic, "Yu Gothic", sans-serif;
  font-size: 1.28571rem;
  width: 90.90909%;
  padding: 28px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

@media screen and (max-width: 767px) {
  .plan-block__outer-tbl td {
    width: 68.26667vw;
    font-size: 3.2vw;
    padding: 4.8vw 4vw 4.8vw 2.13333vw;
  }
}

.plan-block__outer-tbl tr {
  border-bottom: 1px solid rgba(234, 188, 172, 0.3);
}

.plan-block__outer-tbl tr:last-of-type {
  border-bottom: none;
}

.plan-block__acc-btn {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-right: auto;
  margin-left: auto;
  padding-top: 8px;
  padding-bottom: 8px;
  width: 310px;
  border: 1px solid #eabcac;
  background-color: #fff;
  color: #482426;
  font-size: 1.14286rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  cursor: pointer;
}

@media screen and (min-width: 768px) {
  .plan-block__acc-btn {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .plan-block__acc-btn:hover {
    opacity: 0.8;
  }
  .ie11 .plan-block__acc-btn {
    padding-top: 11px;
    padding-bottom: 5px;
  }
}

@media screen and (max-width: 767px) {
  .plan-block__acc-btn {
    width: 91.30435%;
    font-size: 4.26667vw;
  }
}

.plan-block__acc-btn::before {
  position: absolute;
  top: 2px;
  left: 2px;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: calc(100% - 4px);
  height: 2px;
  height: calc(100% - 4px);
  border: 1px solid #eabcac;
  content: "";
}

.plan-block__acc-btn--open {
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .plan-block__acc-btn--open {
    margin-top: 6.13333vw;
  }
}

.js-acc-open .plan-block__acc-btn--open {
  display: none;
}

.plan-block__acc-btn--open::before {
  background-color: #e7d7d4;
}

.plan-block__acc-btn--close {
  display: none;
  margin-top: 38px;
  width: 246px;
  border: 1px solid #e7d7d4;
  color: #eabcac;
}

@media screen and (max-width: 767px) {
  .plan-block__acc-btn--close {
    margin-top: 6.66667vw;
  }
}

.plan-block__acc-btn--close::before {
  border: 1px solid #e7d7d4;
}

.js-acc-open .plan-block__acc-btn--close {
  display: block;
}

.plan-block__acc-btn-txt {
  position: relative;
  z-index: 1;
}

.plan-block__acc-btn-arrow {
  position: absolute;
  top: 50%;
  right: 23px;
  display: block;
  width: 12px;
  height: 12px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.plan-block__acc-btn-arrow::before,
.plan-block__acc-btn-arrow::after {
  position: absolute;
  display: block;
  background-color: #482426;
  content: "";
}

.js-acc-open .plan-block__acc-btn-arrow::before,
.js-acc-open .plan-block__acc-btn-arrow::after {
  background-color: #eabcac;
}

.plan-block__acc-btn-arrow::before {
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.plan-block__acc-btn-arrow::after {
  top: 0;
  left: 50%;
  width: 1px;
  height: 100%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.js-acc-open .plan-block__acc-btn-arrow::after {
  display: none;
}

.plan-block__acc-contents {
  display: none;
  margin-top: 40px;
  padding-right: 10px;
  padding-left: 10px;
}

@media screen and (max-width: 767px) {
  .plan-block__acc-contents {
    margin-top: 6.13333vw;
    padding-right: 4.34783%;
    padding-left: 4.34783%;
  }
}

.plan-block__acc-ttl {
  margin-bottom: 30px;
  color: #874e4c;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .plan-block__acc-ttl {
    margin-bottom: 2.66667vw;
  }
}

.plan-block__acc-ttl-en {
  display: block;
  font-size: 1.85714rem;
  font-family: "Times New Roman", serif;
}

@media screen and (max-width: 767px) {
  .plan-block__acc-ttl-en {
    font-size: 6.13333vw;
  }
}

.plan-block__acc-ttl-jp {
  display: block;
  font-size: 1.35714rem;
}

@media screen and (max-width: 767px) {
  .plan-block__acc-ttl-jp {
    font-size: 3.73333vw;
  }
}

.plan-block__acc-list {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  margin-bottom: 38px;
  border-top: 1px solid #eabcac;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .plan-block__acc-list {
    display: block;
    margin-bottom: 10.66667vw;
  }
}

.plan-block__acc-list::after {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 1px;
  background-color: #eabcac;
  content: "";
}

.plan-block__acc-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-align: center;
  width: 25%;
  border-bottom: 1px solid rgba(234, 188, 172, 0.3);
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .plan-block__acc-item {
    width: 100%;
  }
}

.plan-block__tbl {
  width: 100%;
  table-layout: fixed;
}

.plan-block__tbl td {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 23px;
  padding-bottom: 23px;
  vertical-align: middle;
  letter-spacing: -1px;
  font-size: 1rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (min-width: 768px) {
  .ie11 .plan-block__tbl td {
    padding-top: 26px;
    padding-bottom: 20px;
  }
}

@media screen and (max-width: 767px) {
  .plan-block__tbl td {
    padding-top: 4.8vw;
    padding-bottom: 4.8vw;
    letter-spacing: -0.1vw;
    font-size: 3.73333vw;
  }
}

.plan-block__tbl td:nth-of-type(1) {
  padding-right: 1em;
  padding-left: 30px;
  width: 85px;
}

@media screen and (max-width: 767px) {
  .plan-block__tbl td:nth-of-type(1) {
    padding-right: 0;
    padding-left: 2.66667vw;
    width: 21.26984%;
  }
}

.plan-block__tbl td:nth-of-type(2) {
  width: 24px;
  font-size: 0.85714rem;
}

@media screen and (max-width: 767px) {
  .plan-block__tbl td:nth-of-type(2) {
    width: 9.5238%;
    font-size: 3.73333vw;
  }
}

.plan-block__tbl td:nth-of-type(3) {
  font-size: 0.85714rem;
}

@media screen and (min-width: 768px) {
  .plan-block__tbl td:nth-of-type(3) {
    letter-spacing: 0.3px;
  }
}

@media screen and (max-width: 767px) {
  .plan-block__tbl td:nth-of-type(3) {
    padding-right: 2.66667vw;
    font-size: 3.2vw;
  }
}

.plan-block__tbl td .none {
  display: inline-block;
  padding-bottom: 1em;
  padding-left: 4px;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .plan-block__tbl td .none {
    padding-left: 0;
  }
}
/* ---------------------------------------------
*   Report Page
--------------------------------------------- */
/*  report-detail
--------------------------------------------- */

.report-detail {
  margin-top: 60px;
  padding-right: 10px;
  padding-left: 10px;
}

@media screen and (max-width: 767px) {
  .report-detail {
    padding-right: 0;
    padding-left: 0;
  }
}

@media screen and (max-width: 767px) {
  .report-detail .mod-main-block__container {
    padding-bottom: 6.66667vw;
  }
}

@media screen and (max-width: 767px) {
  .report-detail .mod-main-block__contents {
    padding: 5.84795% 5.84795% 13.15789%;
  }
}

.report-detail__img-main {
  margin-bottom: 45px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .report-detail__img-main {
    margin-bottom: 4.26667vw;
  }
}

.report-detail__img-main img {
  width: 100%;
}

.report-detail__ttl {
  margin-bottom: 42px;
  text-align: center;
  font-size: 2rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  line-height: 1.3;
}

@media screen and (max-width: 767px) {
  .report-detail__ttl {
    margin-bottom: 3.46667vw;
    text-align: left;
    font-size: 5.33333vw;
    line-height: 1.8;
  }
}

.report-detail__info {
  margin-bottom: 40px;
  text-align: center;
  font-size: 1.28571rem;
}

@media screen and (max-width: 767px) {
  .report-detail__info {
    margin-bottom: 8vw;
    font-size: 3.73333vw;
  }
}

.report-detail__date {
  display: block;
  margin-bottom: 11px;
}

@media screen and (max-width: 767px) {
  .report-detail__date {
    margin-bottom: 1.86667vw;
  }
}

.report-detail__name {
  display: block;
  margin-bottom: 20px;
  font-size: 1.57143rem;
}

@media screen and (max-width: 767px) {
  .report-detail__name {
    font-size: 6.66667vw;
  }
}

@media screen and (max-width: 767px) {
  .report-detail__info-box {
    display: inline-block;
  }
}

.report-detail__style {
  display: block;
  margin-bottom: 3px;
}

@media screen and (max-width: 767px) {
  .report-detail__style {
    margin-bottom: 1.33333vw;
    text-align: left;
  }
}

.report-detail__place {
  display: block;
}

@media screen and (max-width: 767px) {
  .report-detail__place {
    text-align: left;
  }
}

.report-detail .mod-wysiwyg {
  margin-right: auto;
  margin-bottom: 50px;
  margin-left: auto;
  max-width: 1000px;
}

@media screen and (max-width: 767px) {
  .report-detail .mod-wysiwyg {
    margin-bottom: 0;
  }
}

.report-detail .mod-wysiwyg p {
  text-align: center;
}

@media screen and (max-width: 767px) {
  .report-detail .mod-wysiwyg p {
    text-align: left;
  }
}

.report-detail__slider {
  margin-bottom: 165px;
}

@media screen and (max-width: 767px) {
  .report-detail__slider {
    margin-bottom: 41.33333vw;
  }
}

.report-detail__slider-list {
  margin-right: auto;
  margin-left: auto;
  max-width: 1044px;
}

.report-detail__slider-item {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-right: 7px;
  padding-left: 7px;
  width: 33.5249%;
}

@media screen and (max-width: 767px) {
  .report-detail__slider-item {
    padding-right: 0;
    padding-left: 0;
    width: 100%;
  }
}

.report-detail__slider-item img {
  width: 100%;
}

.report-detail .slick-dotted.slick-slider {
  margin-bottom: 0;
}
/* ---------------------------------------------
*   [宴会、成人式、七五三、ランチ]
--------------------------------------------- */
/* ---------------------------------------------
*   Topics Pages
--------------------------------------------- */
/*  topics-list
--------------------------------------------- */

.topics-list {
  margin: 70px auto 260px;
  max-width: 1030px;
}

@media screen and (max-width: 767px) {
  .topics-list {
    margin-top: 21.33333vw;
    margin-bottom: 22.4vw;
    max-width: initial;
    max-width: none;
  }
}

.topics-list__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-pack: justify;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .topics-list__list {
    display: block;
  }
}

.topics-list__item {
  width: 48.54369%;
}

@media screen and (min-width: 768px) {
  .topics-list__item:nth-of-type(n + 3) {
    margin-top: 80px;
  }
}

@media screen and (max-width: 767px) {
  .topics-list__item {
    width: 100%;
  }
  .topics-list__item:nth-of-type(n + 2) {
    margin-top: 21.33333vw;
  }
}

.topics-list__link {
  display: block;
}

@media screen and (min-width: 768px) {
  .topics-list__link {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .topics-list__link:hover {
    opacity: 0.8;
  }
}

.topics-list__img {
  margin-bottom: 22px;
}

@media screen and (max-width: 767px) {
  .topics-list__img {
    margin-bottom: 7.2vw;
  }
}

.topics-list__img img {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .topics-list__txt-wrap {
    padding-right: 2.77778%;
    padding-left: 2.77778%;
  }
}

.topics-list__date {
  display: block;
  margin-bottom: 13px;
  font-size: 1rem;
  font-family: "Times New Roman", serif;
}

@media screen and (max-width: 767px) {
  .topics-list__date {
    margin-bottom: 2.66667vw;
    font-size: 3.73333vw;
  }
}

.topics-list__txt {
  margin-bottom: 50px;
  font-size: 1.14286rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .topics-list__txt {
    margin-bottom: 8.53333vw;
    font-size: 4.8vw;
  }
}
/* ---------------------------------------------
*   Index Page
--------------------------------------------- */
/*  top-keyvisual
--------------------------------------------- */

.top-keyvisual {
  position: relative;
  margin-bottom: 70px;
}

.top-keyvisual .cv_area {
  position: absolute;
  right: 5%;
  bottom: 5%;
  z-index: 1000;
}

@media screen and (max-width: 767px) {
  .top-keyvisual {
    margin-bottom: 10.66667vw;
  }

  .top-keyvisual .cv_area {
    width: 90%;
  }
}

.top-keyvisual__slider {
  opacity: 0;
  -webkit-transition: opacity 0.8s;
  transition: opacity 0.8s;
}

.top-keyvisual__slider.slick-initialized {
  opacity: 1;
}

.top-keyvisual__img {
  outline: none;
}

.top-keyvisual__img img {
  width: 100%;
}

.top-keyvisual__contents {
  position: absolute;
  top: 23.97708%;
  left: 10.41667%;
  color: #fff;
}

@media screen and (max-width: 767px) {
  .top-keyvisual__contents {
    top: 16%;
    left: 6.93333%;
  }
}

.top-keyvisual__ttl-sub {
  font-size: 2.04286rem;
  font-family: "Times New Roman", serif;
  text-shadow: 2px 2px 7px #8e8c8c;
}

@media screen and (min-width: 1220px) {
  .top-keyvisual__ttl-sub {
    font-size: 2.34375vw;
  }
}

@media screen and (max-width: 767px) {
  .top-keyvisual__ttl-sub {
    letter-spacing: 0.3vw;
    font-size: 3.33333vw;
  }
}

.top-keyvisual__ttl {
  margin-top: 12px;
  font-size: 2.72143rem;
  text-shadow: 2px 2px 7px #8e8c8c;
}

@media screen and (min-width: 1220px) {
  .top-keyvisual__ttl {
    font-size: 3.125vw;
  }
}

@media screen and (max-width: 767px) {
  .top-keyvisual__ttl {
    margin-top: 2vw;
    letter-spacing: 0.5vw;
    font-size: 6vw;
    line-height: 1.7;
  }
}
/*  top-infobox
--------------------------------------------- */

.top-infobox {
  margin-right: auto;
  margin-bottom: 80px;
  margin-left: auto;
  max-width: 1500px;
  width: 78.125%;
}

@media screen and (max-width: 767px) {
  .top-infobox {
    margin-bottom: 18.66667vw;
    width: 92.26667%;
  }
}

.top-infobox__link {
  display: block;
  padding: 20px;
  border: 1px solid #e7d7d4;
  text-align: center;
  margin-bottom: 10px;
}

@media screen and (min-width: 768px) {
  .top-infobox__link {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .top-infobox__link:hover {
    opacity: 0.8;
  }
  .ie11 .top-infobox__link {
    padding-top: 23px;
    padding-bottom: 17px;
  }
}

@media screen and (max-width: 767px) {
  .top-infobox__link {
    padding: 4vw 5.33333vw;
  }
}

.top-infobox__txt {
  font-size: 1.14286rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (max-width: 767px) {
  .top-infobox__txt {
    font-size: 4.26667vw;
  }
}

@media screen and (min-width: 768px) {
  .top-infobox__link:hover .top-infobox__txt {
    text-decoration: underline;
  }
}
/*  top-fair
--------------------------------------------- */

.top-fair {
  margin-top: 75px;
  margin-bottom: 220px;
  /* -- slider [start]-- */
  /* -- slider [end]-- */
}

@media screen and (max-width: 767px) {
  .top-fair {
    margin-top: 14.66667vw;
    margin-bottom: 33.33333vw;
  }
}

.top-fair__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  margin-bottom: 40px;
  -webkit-box-pack: center;
  justify-content: center;
}

@media screen and (max-width: 767px) {
  .top-fair__inner {
    display: block;
    margin-bottom: 6.66667vw;
  }
}

.top-fair__left {
  margin-right: 110px;
  max-width: 640px;
  width: 33.33333%;
}

@media screen and (max-width: 767px) {
  .top-fair__left {
    margin-right: 0;
    max-width: initial;
    max-width: none;
    width: 100%;
  }
}

.top-fair__ttl {
  color: #874e4c;
  text-align: center;
}

.top-fair__ttl-en {
  display: block;
  margin-bottom: 5px;
  font-size: 1.07143rem;
  font-family: "Times New Roman", serif;
}

@media screen and (max-width: 767px) {
  .top-fair__ttl-en {
    margin-bottom: 1.33333vw;
    font-size: 4vw;
  }
}

.top-fair__ttl-jp {
  display: block;
  font-size: 1.14286rem;
}

@media screen and (max-width: 767px) {
  .top-fair__ttl-jp {
    font-size: 4.26667vw;
  }
}

.top-fair__right {
  max-width: 650px;
  width: 33.85417%;
}

@media screen and (max-width: 767px) {
  .top-fair__right {
    margin-top: 24vw;
    margin-right: auto;
    margin-left: auto;
    max-width: initial;
    max-width: none;
    width: 94%;
  }
}

.top-fair__right .ai1ec-prev-month {
  display: none;
}

.top-fair__body {
  padding-top: 30px;
}

@media screen and (max-width: 767px) {
  .top-fair__body {
    padding-top: 8vw;
  }
}

/* 2023.04 start */
.top-fair__tab {
  width: 100%;
  margin: 0 auto 50px;
  border: 1px solid #e7d7d4;
}
.top-fair__tab-item {
  width: 50%;
  height: 60px;
  line-height: 60px;
  font-size: 16px;
  text-align: center;
  color: #000;
  border-bottom: 1px solid #e7d7d4;
  background: #E7D7D4;
  display: block;
  float: left;
  text-align: center;
  font-weight: normal;
  box-sizing: border-box;
  cursor: pointer;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}
.top-fair__tab-item:hover {
  opacity: 0.75;
}
/*ラジオボタンを全て消す*/
input[name="calendar_tab_menu"] {
  display: none;
}
/*タブ切り替えの中身のスタイル*/
.top-fair__tab .fair-calender__item {
  display: none;
  padding: 40px;
  clear: both;
  overflow: hidden;
  transition: .5s opacity;
  border-top: none;
  width: 100%!important;
}
/*選択されているタブを表示*/
#tab01:checked ~ .fair-calender__list #contents01,
#tab02:checked ~ .fair-calender__list #contents02 {
  display: block;
}
/*選択されているタブのスタイル*/
.top-fair__tab input:checked + .top-fair__tab-item {
  font-weight: bold;
  border-bottom: none;
  background: #fff;
}
.top-fair__tab .ai1ec-title-buttons {
  display: none;
}
@media screen and (max-width: 767px) {
  .top-fair__tab-item {
      font-size: 1.2rem;
      height: 4rem;
      line-height: 4rem;
  }
  .top-fair__tab .fair-calender__list {
      display: block;
      padding-top: 5rem;
  }
}
/* 2023.04 end */

.top-fair__slider-wrap {
  position: relative;
}

.top-fair__slider {
  margin-right: auto;
  margin-left: auto;
  width: 76.92308%;
  opacity: 0;
  -webkit-transition: opacity 0.8s;
  transition: opacity 0.8s;
}

.top-fair__slider.slick-initialized {
  opacity: 1;
}

.top-fair__slide {
  outline: none;
}

.top-fair__slide-link {
  display: block;
  outline: none;
}

@media screen and (min-width: 768px) {
  .top-fair__slide-link {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .top-fair__slide-link:hover {
    opacity: 0.8;
  }
}

.top-fair__slide-img {
  margin-bottom: 15px;
}

.top-fair__slide-img img {
  width: 100%;
}

.top-fair__slide-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-align: center;
  margin-bottom: 18px;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  align-items: center;
}

.top-fair__slide-date {
  display: block;
  margin-bottom: 5px;
  width: 76px;
  font-size: 1rem;
  font-family: "Times New Roman", serif;
}

@media screen and (max-width: 767px) {
  .top-fair__slide-date {
    margin-bottom: 1.33333vw;
    width: 25.86207%;
    font-size: 3.73333vw;
  }
}

.top-fair__slide-labels {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  width: calc(100% - 76px);
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .top-fair__slide-labels {
    width: calc(100% - 25.86207%);
  }
}

.top-fair__slide-label {
  display: inline-block;
  margin-right: 5px;
  margin-bottom: 5px;
  padding: 4px 8px;
  background-color: #874e4c;
  color: #fff;
  font-size: 0.92857rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (min-width: 768px) {
  .ie11 .top-fair__slide-label {
    padding-top: 6px;
    padding-bottom: 2px;
  }
}

@media screen and (max-width: 767px) {
  .top-fair__slide-label {
    margin-right: 1.33333vw;
    margin-bottom: 1.33333vw;
    padding: 1.06667vw 2.13333vw;
    font-size: 3.73333vw;
  }
}

.top-fair__slide-label:last-of-type {
  margin-right: 0;
}

.top-fair__slide-txt {
  margin-bottom: 15px;
  font-size: 1.57143rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .top-fair__slide-txt {
    margin-bottom: 4vw;
    font-size: 5.33333vw;
  }
}

.top-fair__slide-arrows .slick-arrow {
  position: absolute;
  top: 32%;
  width: 19px;
  height: 36px;
  background-position: 0 0;
  background-size: 100% auto;
  background-repeat: no-repeat;
}

@media screen and (min-width: 768px) {
  .top-fair__slide-arrows .slick-arrow {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .top-fair__slide-arrows .slick-arrow:hover {
    opacity: 0.8;
  }
}

@media screen and (max-width: 767px) {
  .top-fair__slide-arrows .slick-arrow {
    top: 35.33333vw;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}

.top-fair__slide-arrows .slick-arrow::before {
  display: none;
}

.top-fair__slide-arrows .slick-prev {
  left: 0;
  background-image: url(../img/common/img_slider-arrow_left.svg);
}

@media screen and (max-width: 767px) {
  .top-fair__slide-arrows .slick-prev {
    left: 2.66667vw;
  }
}

.top-fair__slide-arrows .slick-next {
  right: 0;
  background-image: url(../img/common/img_slider-arrow_right.svg);
}

@media screen and (max-width: 767px) {
  .top-fair__slide-arrows .slick-next {
    right: 2.66667vw;
  }
}

.top-fair .slick-dots li {
  margin-right: 2.5px;
  margin-left: 2.5px;
  width: 12px;
  height: 12px;
}

.top-fair .slick-dots button {
  width: 100%;
  height: 100%;
  border: 1px solid #482426;
  border-radius: 50%;
}

.top-fair .slick-dots button::before {
  display: none;
}

.top-fair .slick-dots .slick-active button {
  position: relative;
}

.top-fair .slick-dots .slick-active button::after {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #482426;
  content: "";
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
/*  top-panel01-wrap
--------------------------------------------- */

.top-panel01-wrap {
  margin-bottom: 155px;
}

@media screen and (max-width: 767px) {
  .top-panel01-wrap {
    margin-bottom: 23.33333vw;
  }
}

@media screen and (max-width: 767px) {
  .top-panel01 {
    margin-bottom: 1.06667vw;
  }
  .top-panel01:last-of-type {
    margin-bottom: 0;
  }
}

.top-panel01__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
}

.top-panel01:nth-of-type(2n) .top-panel01__list {
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
}

.top-panel01__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 66.66%;
  color: #874e4c;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .top-panel01__item {
    width: 100%;
  }
}

.top-panel01__item--main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 10px;
  width: 33.33%;
}

@media screen and (max-width: 767px) {
  .top-panel01__item--main {
    padding: 0 2.66667%;
    width: 100%;
  }
}

.top-panel01__link {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  -ms-flex-align: center;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0.5em;
  width: 100%;
  height: 100%;
  -webkit-box-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  align-items: center;
}

@media screen and (min-width: 768px) {
  .top-panel01__link {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .top-panel01__link:hover {
    opacity: 0.8;
  }
}

@media screen and (max-width: 767px) {
  .top-panel01__link {
    padding: 10.66667vw 0 10.66667vw;
  }
}

.top-panel01__link::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  border: 1px solid #e7d7d4;
  content: "";
}

@media screen and (max-width: 767px) {
  .top-panel01__contents {
    width: 100%;
  }
}

.top-panel01__contents .top-panel01__img {
  display: none;
}

@media screen and (max-width: 767px) {
  .top-panel01__contents .top-panel01__img {
    display: block;
    margin-bottom: 12.8vw;
    width: 100%;
  }
}

.top-panel01__img {
  width: 50%;
}

@media screen and (max-width: 767px) {
  .top-panel01__img {
    display: none;
  }
}

.top-panel01__img img {
  width: 100%;
}

.top-panel01__ttl {
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .top-panel01__ttl {
    margin-bottom: 8vw;
  }
}

.top-panel01__ttl-en {
  display: block;
  margin-bottom: 11px;
  font-size: 1.85714rem;
  font-family: "Times New Roman", serif;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .top-panel01__ttl-en {
    font-size: 6.93333vw;
  }
}

.top-panel01__ttl-jp {
  display: block;
  font-size: 1.14286rem;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .top-panel01__ttl-jp {
    font-size: 4.26667vw;
  }
}

.top-panel01__lead {
  margin-bottom: 50px;
  font-size: 1.71429rem;
}

@media screen and (max-width: 1300px) {
  .top-panel01__lead {
    font-size: 1.5rem;
  }
}

@media screen and (max-width: 767px) {
  .top-panel01__lead {
    margin-bottom: 10.66667vw;
    font-size: 4.8vw;
  }
}
/*  top-pickup
--------------------------------------------- */

.top-pickup {
  margin-top: 75px;
  margin-bottom: 150px;
}

@media screen and (max-width: 767px) {
  .top-pickup {
    margin-top: 13.33333vw;
    margin-bottom: 28.53333vw;
  }
}

.top-pickup__container {
  margin-right: auto;
  margin-left: auto;
  width: 974px;
}

@media screen and (max-width: 767px) {
  .top-pickup__container {
    width: 100%;
  }
}

.top-pickup__catch {
  position: relative;
  margin-bottom: 2px;
  padding-left: 53px;
  color: #eabcac;
  font-style: italic;
  font-size: 2.28571rem;
  font-family: "Times New Roman", serif;
}

@media screen and (max-width: 767px) {
  .top-pickup__catch {
    margin-bottom: 1.6vw;
    padding-left: 15.2vw;
    font-size: 6.66667vw;
  }
}

.top-pickup__catch::before {
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  width: 43px;
  height: 1px;
  background-color: #e7d7d4;
  content: "";
  -webkit-transform: translateY(50%);
  transform: translateY(50%);
}

@media screen and (max-width: 767px) {
  .top-pickup__catch::before {
    width: 12vw;
  }
}

.top-pickup__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  margin-bottom: 50px;
  padding: 40px 30px;
  border: 1px solid #e7d7d4;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (min-width: 768px) {
  .top-pickup__content {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .top-pickup__content:hover {
    opacity: 0.8;
  }
}

@media screen and (max-width: 767px) {
  .top-pickup__content {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-right: auto;
    margin-bottom: 9.33333vw;
    margin-left: auto;
    padding: 5.33333vw 5.86667vw 8vw;
    width: 92%;
  }
}

.top-pickup__img {
  width: 396px;
}

@media screen and (max-width: 767px) {
  .top-pickup__img {
    margin-bottom: 4.53333vw;
    width: 100%;
  }
}

.top-pickup__img img {
  width: 100%;
}

.top-pickup__txt-wrap {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-left: 30px;
  width: calc(100% - 396px);
  font-family: YuGothic, "Yu Gothic", sans-serif;
}

@media screen and (max-width: 767px) {
  .top-pickup__txt-wrap {
    padding-left: 0;
    width: 100%;
  }
}

.top-pickup__date {
  display: block;
  margin-bottom: 20px;
  font-size: 1rem;
  font-family: "Times New Roman", serif;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .top-pickup__date {
    margin-bottom: 4vw;
    font-size: 3.73333vw;
  }
}

.top-pickup__ttl {
  margin-bottom: 13px;
  font-size: 1.57143rem;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .top-pickup__ttl {
    margin-bottom: 5.06667vw;
    font-size: 5.33333vw;
  }
}

.top-pickup__txt {
  font-size: 1.28571rem;
  line-height: 2;
}

@media screen and (min-width: 768px) {
  .top-pickup__txt {
    letter-spacing: 1px;
  }
}

@media screen and (max-width: 767px) {
  .top-pickup__txt {
    font-size: 4.8vw;
    line-height: 1.8;
  }
}
/*  top-plan
--------------------------------------------- */

.top-plan {
  margin-bottom: 210px;
}

@media screen and (max-width: 767px) {
  .top-plan {
    margin-bottom: 12.53333vw;
  }
}

@media screen and (max-width: 767px) {
  .top-plan__item {
    margin-bottom: 10.66667vw;
  }
  .top-plan__item:last-of-type {
    margin-bottom: 0;
  }
}

.top-plan__link {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .top-plan__link {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .top-plan__link:hover {
    opacity: 0.8;
  }
}

@media screen and (max-width: 767px) {
  .top-plan__link {
    display: block;
    text-align: left;
  }
}

.top-plan__item:nth-of-type(2n) .top-plan__link {
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
}

.top-plan__img {
  width: 50%;
}

@media screen and (max-width: 767px) {
  .top-plan__img {
    margin-bottom: 4vw;
    margin-left: auto;
    width: 85.33333%;
  }
  .top-plan__item:nth-of-type(2n) .top-plan__img {
    margin-right: auto;
    margin-left: 0;
  }
}

.top-plan__img img {
  width: 100%;
}

.top-plan__txt-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  -ms-flex-align: center;
  width: 50%;
  -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
  -webkit-box-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .top-plan__txt-wrap {
    display: block;
    margin-left: auto;
    width: 92%;
    -webkit-box-shadow: none;
    box-shadow: none;
  }
}

.top-plan__ttl {
  margin-bottom: 20px;
  font-size: 1.71429rem;
}

@media screen and (max-width: 767px) {
  .top-plan__ttl {
    display: block;
    margin-bottom: 3.2vw;
    font-size: 4.53333vw;
  }
}

.top-plan__txt {
  font-size: 1.14286rem;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .top-plan__txt {
    display: block;
    font-size: 3.73333vw;
  }
}
/*  top-cuisine
--------------------------------------------- */

.top-cuisine {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  margin-top: 45px;
  margin-bottom: 176px;
  -webkit-box-pack: center;
  justify-content: center;
}

@media screen and (max-width: 767px) {
  .top-cuisine {
    display: block;
    margin-top: 13.33333vw;
    margin-bottom: 13.33333vw;
  }
}

.top-cuisine__img {
  padding-left: 60px;
  width: 733px;
}

@media screen and (max-width: 767px) {
  .top-cuisine__img {
    margin-top: 8vw;
    margin-right: auto;
    margin-left: auto;
    padding-left: 0;
    width: 86.66667%;
  }
}

.top-cuisine__img img {
  width: 100%;
}

.top-cuisine__main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  -ms-flex-align: center;
  padding-top: 1.45833%;
  width: 32.08333%;
  -webkit-box-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  align-items: center;
}

@media screen and (min-width: 1921px) {
  .top-cuisine__main {
    padding-top: 28px;
  }
}

@media screen and (max-width: 1350px) {
  .top-cuisine__main {
    width: 38%;
  }
}

@media screen and (max-width: 767px) {
  .top-cuisine__main {
    padding-top: 0;
    width: 100%;
  }
}

.top-cuisine__main-inner {
  position: relative;
  left: -60px;
  display: block;
  padding-top: 13.31169%;
  padding-bottom: 18.34416%;
  width: 100%;
  background-color: #fff;
  -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
}

@media screen and (min-width: 1921px) {
  .top-cuisine__main-inner {
    padding-top: 82px;
    padding-bottom: 117px;
  }
}

@media screen and (max-width: 767px) {
  .top-cuisine__main-inner {
    position: static;
    padding-top: 0;
    padding-bottom: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
  }
}

@media screen and (max-width: 767px) {
  .top-cuisine__box {
    position: relative;
    z-index: 1;
    margin-top: -14.13333vw;
    margin-right: auto;
    margin-left: auto;
    padding-top: 9.33333vw;
    padding-bottom: 10.66667vw;
    width: 79.2%;
    background-color: #fff;
    -webkit-box-shadow: 0 0.8vw 1.6vw rgba(0, 0, 0, 0.05);
    box-shadow: 0 0.8vw 1.6vw rgba(0, 0, 0, 0.05);
  }
}

.top-cuisine__txt {
  margin-top: 45px;
  margin-bottom: 50px;
  text-align: center;
  font-size: 1.28571rem;
  line-height: 2;
  padding: 0 30px;
}

@media screen and (max-width: 767px) {
  .top-cuisine__txt {
    margin-top: 0;
    margin-bottom: 4vw;
    font-size: 3.73333vw;
    line-height: 2.4;
  }
}
/*  top-dress
--------------------------------------------- */

.top-dress {
  margin-top: 60px;
  margin-bottom: 227px;
}

@media screen and (max-width: 767px) {
  .top-dress {
    overflow-x: hidden;
    margin-top: 8vw;
    margin-bottom: 26.66667vw;
  }
}

.top-dress__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  margin-bottom: 85px;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .top-dress__list {
    display: block;
    margin-bottom: 16vw;
  }
}

.top-dress__item {
  width: 25%;
  outline: none;
}

@media screen and (max-width: 767px) {
  .top-dress__item {
    width: 100%;
  }
}

.top-dress__link {
  display: block;
  background-color: #eee;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .top-dress__link {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .top-dress__link:hover {
    opacity: 0.8;
  }
}

.top-dress__link img {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .top-dress .slick-arrow {
    width: 5.6vw;
    height: 10.13333vw;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  .top-dress .slick-arrow::before {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .top-dress .slick-prev {
    left: 2.66667vw;
    z-index: 1;
    background-image: url(../img/common/img_slider-arrow_left.svg);
  }
}

@media screen and (max-width: 767px) {
  .top-dress .slick-next {
    right: 2.66667vw;
    background-image: url(../img/common/img_slider-arrow_right.svg);
  }
}
/*  top-panel02
--------------------------------------------- */

.top-panel02 {
  position: relative;
  z-index: 1;
  margin-bottom: -16.875%;
}

.top-panel02__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-right: auto;
  margin-left: auto;
  width: 72.91667%;
}

@media screen and (max-width: 767px) {
  .top-panel02__list {
    display: block;
    width: 100%;
  }
}

.top-panel02__item {
  width: 48.07143%;
}

@media screen and (min-width: 768px) {
  .top-panel02__item:first-of-type {
    margin-right: 1.40625%;
  }
}

@media screen and (max-width: 767px) {
  .top-panel02__item {
    margin-right: auto;
    margin-bottom: 13.86667vw;
    margin-left: auto;
    width: 90.66667%;
  }
  .top-panel02__item:last-of-type {
    margin-bottom: 0;
  }
}

.top-panel02__link {
  display: block;
}

@media screen and (min-width: 768px) {
  .top-panel02__link {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .top-panel02__link:hover {
    opacity: 0.8;
  }
}

.top-panel02__img img {
  width: 100%;
}

.top-panel02__ttl {
  position: relative;
  z-index: 1;
  margin-top: -90px;
  margin-right: auto;
  margin-left: auto;
  padding-top: 44px;
  padding-bottom: 46px;
  width: 73.69985%;
  background-color: #fff;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05);
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05);
  color: #874e4c;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .top-panel02__ttl {
    margin-top: -7.73333vw;
    margin-right: auto;
    margin-left: auto;
    padding-top: 4.53333vw;
    padding-bottom: 4.8vw;
    width: 87.64706%;
    -webkit-box-shadow: 0 0.8vw 1.6vw rgba(0, 0, 0, 0.05);
    box-shadow: 0 0.8vw 1.6vw rgba(0, 0, 0, 0.05);
  }
}

.top-panel02__item:last-of-type .top-panel02__ttl {
  color: #482426;
}

.top-panel02__ttl-en {
  display: block;
  font-size: 1.85714rem;
  font-family: "Times New Roman", serif;
}

@media screen and (max-width: 767px) {
  .top-panel02__ttl-en {
    margin-bottom: 0.8vw;
    font-size: 6.4vw;
  }
}

.top-panel02__ttl-jp {
  display: block;
  font-size: 1.14286rem;
}

@media screen and (max-width: 767px) {
  .top-panel02__ttl-jp {
    font-size: 3.73333vw;
  }
}
/*  top-concept
--------------------------------------------- */

.top-concept {
  margin-top: 45px;
}

@media screen and (max-width: 767px) {
  .top-concept {
    margin-top: 13.33333vw;
  }
}

.top-concept__txt {
  margin-bottom: 45px;
  text-align: center;
  font-size: 1.28571rem;
  line-height: 3;
}

@media screen and (max-width: 767px) {
  .top-concept__txt {
    margin-bottom: 12vw;
    text-align: center;
    font-size: 1.00571rem;
    line-height: 2;
    }
}

.top-concept__txt:last-of-type {
  margin-bottom: 53px;
}

@media screen and (max-width: 767px) {
  .top-concept__txt:last-of-type {
    margin-bottom: 14.13333vw;
  }
}
/*  top-news
--------------------------------------------- */

.top-news {
  margin: 55px auto 220px;
  width: 1184px;
}

@media screen and (max-width: 767px) {
  .top-news {
    overflow-x: hidden;
    margin-top: 13.33333vw;
    margin-bottom: 29.33333vw;
    width: 100%;
  }
}

.top-news__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-pack: justify;
  margin-bottom: 80px;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .top-news__list {
    display: block;
    margin-bottom: 21.33333vw;
    padding-right: 11.2%;
    padding-left: 11.2%;
  }
}

.top-news__item {
  width: 30.40541%;
}

@media screen and (max-width: 767px) {
  .top-news__item {
    width: 100%;
  }
}

.top-news__link {
  display: block;
}

@media screen and (min-width: 768px) {
  .top-news__link {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .top-news__link:hover {
    opacity: 0.8;
  }
}

.top-news__img {
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .top-news__img {
    margin-bottom: 4vw;
  }
}

.top-news__img img {
  width: 100%;
}

.top-news__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-align: center;
  margin-bottom: 15px;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .top-news__info {
    margin-bottom: 8vw;
  }
}

.top-news__date {
  display: block;
  margin-bottom: 5px;
  width: 75px;
  font-size: 1rem;
  font-family: "Times New Roman", serif;
}

@media screen and (max-width: 767px) {
  .top-news__date {
    margin-bottom: 1.33333vw;
    width: 25.86207%;
    font-size: 3.73333vw;
  }
}

.top-news__labels {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  width: calc(100% - 75px);
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .top-news__labels {
    width: calc(100% - 25.86207%);
  }
}

.top-news__label {
  display: inline-block;
  margin-right: 5px;
  margin-bottom: 5px;
  padding: 5px 8px;
  background-color: #874e4c;
  color: #fff;
  font-size: 0.92857rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  line-height: 1.2;
}

@media screen and (min-width: 768px) {
  .ie11 .top-news__label {
    padding-top: 7px;
    padding-bottom: 3px;
  }
}

@media screen and (max-width: 767px) {
  .top-news__label {
    margin-right: 1.06667vw;
    margin-bottom: 1.33333vw;
    padding: 1.06667vw 2.13333vw;
    font-size: 3.46667vw;
  }
}

.top-news__label:last-of-type {
  margin-right: 0;
}

.top-news__img img {
  width: 100%;
}

.top-news__txt {
  font-size: 1.57143rem;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .top-news__txt {
    font-size: 5.33333vw;
  }
}

@media screen and (max-width: 767px) {
  .top-news .slick-arrow {
    top: 29.33333vw;
    width: 5.6vw;
    height: 10.13333vw;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
  .top-news .slick-arrow::before {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .top-news .slick-prev {
    left: 2.66667vw;
    z-index: 1;
    background-image: url(../img/common/img_slider-arrow_left.svg);
  }
}

@media screen and (max-width: 767px) {
  .top-news .slick-next {
    right: 2.66667vw;
    background-image: url(../img/common/img_slider-arrow_right.svg);
  }
}

@media screen and (max-width: 767px) {
  .top-news .slick-dotted.slick-slider {
    margin-bottom: 21.33333vw;
  }
}

@media screen and (max-width: 767px) {
  .top-news .slick-dots {
    left: 0;
  }
}

.top-news .slick-dots li {
  margin-right: 2.5px;
  margin-left: 2.5px;
  width: 12px;
  height: 12px;
}

.top-news .slick-dots button {
  width: 100%;
  height: 100%;
  border: 1px solid #482426;
  border-radius: 50%;
}

.top-news .slick-dots button::before {
  display: none;
}

.top-news .slick-dots .slick-active button {
  position: relative;
}

.top-news .slick-dots .slick-active button::after {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #482426;
  content: "";
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
/*  top-other-wrap
--------------------------------------------- */

@media screen and (min-width: 768px) {
  .top-other-wrap {
    margin-right: auto;
    margin-left: auto;
    padding-right: 10px;
    padding-left: 10px;
    max-width: 1220px;
  }
}
/*  top-other01
--------------------------------------------- */

.top-other01 {
  margin: 85px 0 100px;
}

@media screen and (max-width: 767px) {
  .top-other01 {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-top: 14.13333vw;
    margin-bottom: 19.73333vw;
    padding-right: 4%;
    padding-left: 4%;
    width: 100%;
  }
}

.top-other01__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-pack: justify;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .top-other01__list {
    display: block;
  }
}

.top-other01__item {
  width: 47%;
}

@media screen and (min-width: 768px) {
  .top-other01__item:nth-of-type(n + 3) {
    margin-top: 40px;
  }
}

@media screen and (max-width: 767px) {
  .top-other01__item {
    width: 100%;
  }
  .top-other01__item:nth-of-type(n + 2) {
    margin-top: 5.33333vw;
  }
}

.top-other01__link {
  position: relative;
  display: block;
  padding: 35px 1em;
  border: 1px solid #eabcac;
  text-align: center;
  font-size: 1.28571rem;
}

@media screen and (max-width: 767px) {
  .top-other01__link {
    padding-top: 6.66667vw;
    padding-bottom: 6.66667vw;
    font-size: 4.8vw;
  }
}

@media screen and (min-width: 768px) {
  .top-other01__link {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .top-other01__link:hover {
    opacity: 0.8;
  }
  .ie11 .top-other01__link {
    padding-top: 38px;
    padding-bottom: 32px;
  }
}

.top-other01__link::before {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: -1;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: calc(100% - 14px);
  height: calc(100% - 14px);
  border: 1px solid #eabcac;
  content: "";
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.top-other01__link::after {
  position: absolute;
  top: -11px;
  left: -19px;
  display: block;
  width: 126px;
  height: 57px;
  background: url(../img/top/img_other01_deco.png) 0 0 no-repeat;
  background-size: 100% auto;
  content: "";
}

@media screen and (max-width: 767px) {
  .top-other01__link::after {
    top: -2.4vw;
    left: -3.2vw;
    width: 24vw;
    height: 10.93333vw;
  }
}
/*  top-other02
--------------------------------------------- */

.top-other02 {
  margin-bottom: 220px;
}

@media screen and (max-width: 767px) {
  .top-other02 {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 14.4vw;
    padding-right: 1.33333%;
    padding-left: 1.33333%;
    width: 100%;
  }
}

.top-other02__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -ms-flex-pack: justify;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  justify-content: space-evenly;
}

.top-other02__item {
  width: 21.66667%;
}

@media screen and (max-width: 767px) {
  .top-other02__item {
    width: 49.31507%;
  }
  .top-other02__item:nth-of-type(n + 3) {
    margin-top: 1.33333vw;
  }
}

.top-other02__link {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 100%;
  background: #e7d7d4 url(../img/top/img_other02_stripe.png) 0 0;
  background-size: 24px auto;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .top-other02__link {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .top-other02__link:hover {
    opacity: 0.8;
  }
}

@media screen and (max-width: 767px) {
  .top-other02__link {
    background-size: 12.4% auto;
  }
}

.top-other02__img img {
  width: 100%;
}

.top-other02__item-inner {
  position: absolute;
  top: 50%;
  left: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  -ms-flex-align: center;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-right: 27px;
  padding-left: 27px;
  width: calc(100% - 27px * 2);
  height: calc(100% - 28px * 2);
  background: rgba(255, 255, 255, 0.9);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-box-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .top-other02__item-inner {
    padding-right: 9.09091%;
    padding-left: 9.09091%;
    width: 73.33333%;
    height: 73.33333%;
  }
}

.top-other02__txt {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 11px;
  padding-bottom: 11px;
  width: 100%;
  border-top: 2px solid #482426;
  border-bottom: 2px solid #482426;
  font-size: 1.28571rem;
}

@media screen and (min-width: 768px) {
  .ie11 .top-other02__txt {
    padding-top: 14px;
    padding-bottom: 8px;
  }
}

@media screen and (max-width: 767px) {
  .top-other02__txt {
    padding-top: 3.2vw;
    padding-bottom: 3.2vw;
    font-size: 4.26667vw;
  }
  .top-other02__item--lunch .top-other02__txt {
    letter-spacing: -0.6vw;
  }
}

.top-other02__txt::before,
.top-other02__txt::after {
  position: absolute;
  left: 0;
  display: block;
  width: 100%;
  height: 2px;
  background-color: #482426;
  content: "";
}

.top-other02__txt::before {
  top: 1px;
}

.top-other02__txt::after {
  bottom: 1px;
}
/*  top-instagram
--------------------------------------------- */

@media screen and (max-width: 767px) {
  .top-instagram {
    margin-top: 5.86667vw;
  }
}

.top-instagram__container {
  margin-right: auto;
  margin-left: auto;
  width: 83.85417%;
}

.top-instagram .mod-arrow-link {
  margin-right: 55px;
  margin-bottom: 17px;
}

@media screen and (max-width: 767px) {
  .top-instagram .mod-arrow-link {
    display: none;
  }
}

.top-instagram__inner {
  padding: 47px 7.96875%;
  background: #e7d7d4 url(../img/top/bg_instagram.png) 100% 50% no-repeat;
  background-size: 6.92708% auto;
}

@media screen and (max-width: 767px) {
  .top-instagram__inner {
    padding: 13.33333% 0 20%;
    padding-right: 0;
    padding-left: 0;
    background-image: url(../img/top/bg_instagram_sp.png);
    background-position: 50% 100%;
    background-size: 59.46667% auto;
  }
}

.top-instagram .insta-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
  justify-content: start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.top-instagram .insta-card li {
  position: relative;
  padding-top: 16.64596%;
  width: 16.6%;
}

@media screen and (max-width: 767px) {
  .top-instagram .insta-card li {
    padding-top: 50%;
    width: 50%;
  }
  .top-instagram .insta-card li:nth-of-type(n + 7) {
    display: none;
  }
}

.top-instagram .insta-card a {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}

@media screen and (min-width: 768px) {
  .top-instagram .insta-card a {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .top-instagram .insta-card a:hover {
    opacity: 0.8;
  }
}

.top-instagram .insta-card a img {
  width: 100%;
}

.top-instagram .mod-arrow-link {
  text-align: right;
}
/* ==========================================================
*
*   utility
*
========================================================== */
/* ---------------------------------------------
*   margin-top
--------------------------------------------- */

.mgt-pc--0 {
  margin-top: 0 !important;
}

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

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

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

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

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

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

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

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

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

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

.mgt-pc--55 {
  margin-top: 55px !important;
}

.mgt-pc--60 {
  margin-top: 60px !important;
}

.mgt-pc--65 {
  margin-top: 65px !important;
}

.mgt-pc--70 {
  margin-top: 70px !important;
}

.mgt-pc--75 {
  margin-top: 75px !important;
}

.mgt-pc--80 {
  margin-top: 80px !important;
}

.mgt-pc--85 {
  margin-top: 85px !important;
}

.mgt-pc--90 {
  margin-top: 90px !important;
}

.mgt-pc--95 {
  margin-top: 95px !important;
}

.mgt-pc--100 {
  margin-top: 100px !important;
}

.mgt-pc--105 {
  margin-top: 105px !important;
}

.mgt-pc--110 {
  margin-top: 110px !important;
}

.mgt-pc--115 {
  margin-top: 115px !important;
}

.mgt-pc--120 {
  margin-top: 120px !important;
}

.mgt-pc--125 {
  margin-top: 125px !important;
}

.mgt-pc--130 {
  margin-top: 130px !important;
}

.mgt-pc--135 {
  margin-top: 135px !important;
}

.mgt-pc--140 {
  margin-top: 140px !important;
}

.mgt-pc--145 {
  margin-top: 145px !important;
}

.mgt-pc--150 {
  margin-top: 150px !important;
}

.mgt-pc--155 {
  margin-top: 155px !important;
}

.mgt-pc--160 {
  margin-top: 160px !important;
}

.mgt-pc--165 {
  margin-top: 165px !important;
}

.mgt-pc--170 {
  margin-top: 170px !important;
}

.mgt-pc--175 {
  margin-top: 175px !important;
}

.mgt-pc--180 {
  margin-top: 180px !important;
}

.mgt-pc--185 {
  margin-top: 185px !important;
}

.mgt-pc--190 {
  margin-top: 190px !important;
}

.mgt-pc--195 {
  margin-top: 195px !important;
}

.mgt-pc--200 {
  margin-top: 200px !important;
}

.mgt-pc--205 {
  margin-top: 205px !important;
}

.mgt-pc--210 {
  margin-top: 210px !important;
}

.mgt-pc--215 {
  margin-top: 215px !important;
}

.mgt-pc--220 {
  margin-top: 220px !important;
}

.mgt-pc--225 {
  margin-top: 225px !important;
}

.mgt-pc--230 {
  margin-top: 230px !important;
}

.mgt-pc--235 {
  margin-top: 235px !important;
}

.mgt-pc--240 {
  margin-top: 240px !important;
}

.mgt-pc--245 {
  margin-top: 245px !important;
}

.mgt-pc--250 {
  margin-top: 250px !important;
}

@media screen and (max-width: 767px) {
  .mgt-sp--0 {
    margin-top: 0 !important;
  }
  .mgt-sp--5 {
    margin-top: 1.33333vw !important;
  }
  .mgt-sp--10 {
    margin-top: 2.66667vw !important;
  }
  .mgt-sp--15 {
    margin-top: 4vw !important;
  }
  .mgt-sp--20 {
    margin-top: 5.33333vw !important;
  }
  .mgt-sp--25 {
    margin-top: 6.66667vw !important;
  }
  .mgt-sp--30 {
    margin-top: 8vw !important;
  }
  .mgt-sp--35 {
    margin-top: 9.33333vw !important;
  }
  .mgt-sp--40 {
    margin-top: 10.66667vw !important;
  }
  .mgt-sp--45 {
    margin-top: 12vw !important;
  }
  .mgt-sp--50 {
    margin-top: 13.33333vw !important;
  }
  .mgt-sp--55 {
    margin-top: 14.66667vw !important;
  }
  .mgt-sp--60 {
    margin-top: 16vw !important;
  }
  .mgt-sp--65 {
    margin-top: 17.33333vw !important;
  }
  .mgt-sp--70 {
    margin-top: 18.66667vw !important;
  }
  .mgt-sp--75 {
    margin-top: 20vw !important;
  }
  .mgt-sp--80 {
    margin-top: 21.33333vw !important;
  }
  .mgt-sp--85 {
    margin-top: 22.66667vw !important;
  }
  .mgt-sp--90 {
    margin-top: 24vw !important;
  }
  .mgt-sp--95 {
    margin-top: 25.33333vw !important;
  }
  .mgt-sp--100 {
    margin-top: 26.66667vw !important;
  }
  .mgt-sp--105 {
    margin-top: 28vw !important;
  }
  .mgt-sp--110 {
    margin-top: 29.33333vw !important;
  }
  .mgt-sp--115 {
    margin-top: 30.66667vw !important;
  }
  .mgt-sp--120 {
    margin-top: 32vw !important;
  }
  .mgt-sp--125 {
    margin-top: 33.33333vw !important;
  }
  .mgt-sp--130 {
    margin-top: 34.66667vw !important;
  }
  .mgt-sp--135 {
    margin-top: 36vw !important;
  }
  .mgt-sp--140 {
    margin-top: 37.33333vw !important;
  }
  .mgt-sp--145 {
    margin-top: 38.66667vw !important;
  }
  .mgt-sp--150 {
    margin-top: 40vw !important;
  }
  .mgt-sp--155 {
    margin-top: 41.33333vw !important;
  }
  .mgt-sp--160 {
    margin-top: 42.66667vw !important;
  }
  .mgt-sp--165 {
    margin-top: 44vw !important;
  }
  .mgt-sp--170 {
    margin-top: 45.33333vw !important;
  }
  .mgt-sp--175 {
    margin-top: 46.66667vw !important;
  }
  .mgt-sp--180 {
    margin-top: 48vw !important;
  }
  .mgt-sp--185 {
    margin-top: 49.33333vw !important;
  }
  .mgt-sp--190 {
    margin-top: 50.66667vw !important;
  }
  .mgt-sp--195 {
    margin-top: 52vw !important;
  }
  .mgt-sp--200 {
    margin-top: 53.33333vw !important;
  }
  .mgt-sp--205 {
    margin-top: 54.66667vw !important;
  }
  .mgt-sp--210 {
    margin-top: 56vw !important;
  }
  .mgt-sp--215 {
    margin-top: 57.33333vw !important;
  }
  .mgt-sp--220 {
    margin-top: 58.66667vw !important;
  }
  .mgt-sp--225 {
    margin-top: 60vw !important;
  }
  .mgt-sp--230 {
    margin-top: 61.33333vw !important;
  }
  .mgt-sp--235 {
    margin-top: 62.66667vw !important;
  }
  .mgt-sp--240 {
    margin-top: 64vw !important;
  }
  .mgt-sp--245 {
    margin-top: 65.33333vw !important;
  }
  .mgt-sp--250 {
    margin-top: 66.66667vw !important;
  }
}
/* ---------------------------------------------
*   margin-bottom
--------------------------------------------- */

.mgb-pc--0 {
  margin-bottom: 0 !important;
}

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

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

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

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

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

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

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

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

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

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

.mgb-pc--55 {
  margin-bottom: 55px !important;
}

.mgb-pc--60 {
  margin-bottom: 60px !important;
}

.mgb-pc--65 {
  margin-bottom: 65px !important;
}

.mgb-pc--70 {
  margin-bottom: 70px !important;
}

.mgb-pc--75 {
  margin-bottom: 75px !important;
}

.mgb-pc--80 {
  margin-bottom: 80px !important;
}

.mgb-pc--85 {
  margin-bottom: 85px !important;
}

.mgb-pc--90 {
  margin-bottom: 90px !important;
}

.mgb-pc--95 {
  margin-bottom: 95px !important;
}

.mgb-pc--100 {
  margin-bottom: 100px !important;
}

.mgb-pc--105 {
  margin-bottom: 105px !important;
}

.mgb-pc--110 {
  margin-bottom: 110px !important;
}

.mgb-pc--115 {
  margin-bottom: 115px !important;
}

.mgb-pc--120 {
  margin-bottom: 120px !important;
}

.mgb-pc--125 {
  margin-bottom: 125px !important;
}

.mgb-pc--130 {
  margin-bottom: 130px !important;
}

.mgb-pc--135 {
  margin-bottom: 135px !important;
}

.mgb-pc--140 {
  margin-bottom: 140px !important;
}

.mgb-pc--145 {
  margin-bottom: 145px !important;
}

.mgb-pc--150 {
  margin-bottom: 150px !important;
}

.mgb-pc--155 {
  margin-bottom: 155px !important;
}

.mgb-pc--160 {
  margin-bottom: 160px !important;
}

.mgb-pc--165 {
  margin-bottom: 165px !important;
}

.mgb-pc--170 {
  margin-bottom: 170px !important;
}

.mgb-pc--175 {
  margin-bottom: 175px !important;
}

.mgb-pc--180 {
  margin-bottom: 180px !important;
}

.mgb-pc--185 {
  margin-bottom: 185px !important;
}

.mgb-pc--190 {
  margin-bottom: 190px !important;
}

.mgb-pc--195 {
  margin-bottom: 195px !important;
}

.mgb-pc--200 {
  margin-bottom: 200px !important;
}

.mgb-pc--205 {
  margin-bottom: 205px !important;
}

.mgb-pc--210 {
  margin-bottom: 210px !important;
}

.mgb-pc--215 {
  margin-bottom: 215px !important;
}

.mgb-pc--220 {
  margin-bottom: 220px !important;
}

.mgb-pc--225 {
  margin-bottom: 225px !important;
}

.mgb-pc--230 {
  margin-bottom: 230px !important;
}

.mgb-pc--235 {
  margin-bottom: 235px !important;
}

.mgb-pc--240 {
  margin-bottom: 240px !important;
}

.mgb-pc--245 {
  margin-bottom: 245px !important;
}

.mgb-pc--250 {
  margin-bottom: 250px !important;
}

@media screen and (max-width: 767px) {
  .mgb-sp--0 {
    margin-bottom: 0 !important;
  }
  .mgb-sp--5 {
    margin-bottom: 1.33333vw !important;
  }
  .mgb-sp--10 {
    margin-bottom: 2.66667vw !important;
  }
  .mgb-sp--15 {
    margin-bottom: 4vw !important;
  }
  .mgb-sp--20 {
    margin-bottom: 5.33333vw !important;
  }
  .mgb-sp--25 {
    margin-bottom: 6.66667vw !important;
  }
  .mgb-sp--30 {
    margin-bottom: 8vw !important;
  }
  .mgb-sp--35 {
    margin-bottom: 9.33333vw !important;
  }
  .mgb-sp--40 {
    margin-bottom: 10.66667vw !important;
  }
  .mgb-sp--45 {
    margin-bottom: 12vw !important;
  }
  .mgb-sp--50 {
    margin-bottom: 13.33333vw !important;
  }
  .mgb-sp--55 {
    margin-bottom: 14.66667vw !important;
  }
  .mgb-sp--60 {
    margin-bottom: 16vw !important;
  }
  .mgb-sp--65 {
    margin-bottom: 17.33333vw !important;
  }
  .mgb-sp--70 {
    margin-bottom: 18.66667vw !important;
  }
  .mgb-sp--75 {
    margin-bottom: 20vw !important;
  }
  .mgb-sp--80 {
    margin-bottom: 21.33333vw !important;
  }
  .mgb-sp--85 {
    margin-bottom: 22.66667vw !important;
  }
  .mgb-sp--90 {
    margin-bottom: 24vw !important;
  }
  .mgb-sp--95 {
    margin-bottom: 25.33333vw !important;
  }
  .mgb-sp--100 {
    margin-bottom: 26.66667vw !important;
  }
  .mgb-sp--105 {
    margin-bottom: 28vw !important;
  }
  .mgb-sp--110 {
    margin-bottom: 29.33333vw !important;
  }
  .mgb-sp--115 {
    margin-bottom: 30.66667vw !important;
  }
  .mgb-sp--120 {
    margin-bottom: 32vw !important;
  }
  .mgb-sp--125 {
    margin-bottom: 33.33333vw !important;
  }
  .mgb-sp--130 {
    margin-bottom: 34.66667vw !important;
  }
  .mgb-sp--135 {
    margin-bottom: 36vw !important;
  }
  .mgb-sp--140 {
    margin-bottom: 37.33333vw !important;
  }
  .mgb-sp--145 {
    margin-bottom: 38.66667vw !important;
  }
  .mgb-sp--150 {
    margin-bottom: 40vw !important;
  }
  .mgb-sp--155 {
    margin-bottom: 41.33333vw !important;
  }
  .mgb-sp--160 {
    margin-bottom: 42.66667vw !important;
  }
  .mgb-sp--165 {
    margin-bottom: 44vw !important;
  }
  .mgb-sp--170 {
    margin-bottom: 45.33333vw !important;
  }
  .mgb-sp--175 {
    margin-bottom: 46.66667vw !important;
  }
  .mgb-sp--180 {
    margin-bottom: 48vw !important;
  }
  .mgb-sp--185 {
    margin-bottom: 49.33333vw !important;
  }
  .mgb-sp--190 {
    margin-bottom: 50.66667vw !important;
  }
  .mgb-sp--195 {
    margin-bottom: 52vw !important;
  }
  .mgb-sp--200 {
    margin-bottom: 53.33333vw !important;
  }
  .mgb-sp--205 {
    margin-bottom: 54.66667vw !important;
  }
  .mgb-sp--210 {
    margin-bottom: 56vw !important;
  }
  .mgb-sp--215 {
    margin-bottom: 57.33333vw !important;
  }
  .mgb-sp--220 {
    margin-bottom: 58.66667vw !important;
  }
  .mgb-sp--225 {
    margin-bottom: 60vw !important;
  }
  .mgb-sp--230 {
    margin-bottom: 61.33333vw !important;
  }
  .mgb-sp--235 {
    margin-bottom: 62.66667vw !important;
  }
  .mgb-sp--240 {
    margin-bottom: 64vw !important;
  }
  .mgb-sp--245 {
    margin-bottom: 65.33333vw !important;
  }
  .mgb-sp--250 {
    margin-bottom: 66.66667vw !important;
  }
}
/* ---------------------------------------------
*   padding-top
--------------------------------------------- */

.pdt-pc--0 {
  padding-top: 0 !important;
}

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

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

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

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

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

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

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

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

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

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

.pdt-pc--55 {
  padding-top: 55px !important;
}

.pdt-pc--60 {
  padding-top: 60px !important;
}

.pdt-pc--65 {
  padding-top: 65px !important;
}

.pdt-pc--70 {
  padding-top: 70px !important;
}

.pdt-pc--75 {
  padding-top: 75px !important;
}

.pdt-pc--80 {
  padding-top: 80px !important;
}

.pdt-pc--85 {
  padding-top: 85px !important;
}

.pdt-pc--90 {
  padding-top: 90px !important;
}

.pdt-pc--95 {
  padding-top: 95px !important;
}

.pdt-pc--100 {
  padding-top: 100px !important;
}

.pdt-pc--105 {
  padding-top: 105px !important;
}

.pdt-pc--110 {
  padding-top: 110px !important;
}

.pdt-pc--115 {
  padding-top: 115px !important;
}

.pdt-pc--120 {
  padding-top: 120px !important;
}

.pdt-pc--125 {
  padding-top: 125px !important;
}

.pdt-pc--130 {
  padding-top: 130px !important;
}

.pdt-pc--135 {
  padding-top: 135px !important;
}

.pdt-pc--140 {
  padding-top: 140px !important;
}

.pdt-pc--145 {
  padding-top: 145px !important;
}

.pdt-pc--150 {
  padding-top: 150px !important;
}

.pdt-pc--155 {
  padding-top: 155px !important;
}

.pdt-pc--160 {
  padding-top: 160px !important;
}

.pdt-pc--165 {
  padding-top: 165px !important;
}

.pdt-pc--170 {
  padding-top: 170px !important;
}

.pdt-pc--175 {
  padding-top: 175px !important;
}

.pdt-pc--180 {
  padding-top: 180px !important;
}

.pdt-pc--185 {
  padding-top: 185px !important;
}

.pdt-pc--190 {
  padding-top: 190px !important;
}

.pdt-pc--195 {
  padding-top: 195px !important;
}

.pdt-pc--200 {
  padding-top: 200px !important;
}

.pdt-pc--205 {
  padding-top: 205px !important;
}

.pdt-pc--210 {
  padding-top: 210px !important;
}

.pdt-pc--215 {
  padding-top: 215px !important;
}

.pdt-pc--220 {
  padding-top: 220px !important;
}

.pdt-pc--225 {
  padding-top: 225px !important;
}

.pdt-pc--230 {
  padding-top: 230px !important;
}

.pdt-pc--235 {
  padding-top: 235px !important;
}

.pdt-pc--240 {
  padding-top: 240px !important;
}

.pdt-pc--245 {
  padding-top: 245px !important;
}

.pdt-pc--250 {
  padding-top: 250px !important;
}

@media screen and (max-width: 767px) {
  .pdt-sp--0 {
    padding-top: 0 !important;
  }
  .pdt-sp--5 {
    padding-top: 1.33333vw !important;
  }
  .pdt-sp--10 {
    padding-top: 2.66667vw !important;
  }
  .pdt-sp--15 {
    padding-top: 4vw !important;
  }
  .pdt-sp--20 {
    padding-top: 5.33333vw !important;
  }
  .pdt-sp--25 {
    padding-top: 6.66667vw !important;
  }
  .pdt-sp--30 {
    padding-top: 8vw !important;
  }
  .pdt-sp--35 {
    padding-top: 9.33333vw !important;
  }
  .pdt-sp--40 {
    padding-top: 10.66667vw !important;
  }
  .pdt-sp--45 {
    padding-top: 12vw !important;
  }
  .pdt-sp--50 {
    padding-top: 13.33333vw !important;
  }
  .pdt-sp--55 {
    padding-top: 14.66667vw !important;
  }
  .pdt-sp--60 {
    padding-top: 16vw !important;
  }
  .pdt-sp--65 {
    padding-top: 17.33333vw !important;
  }
  .pdt-sp--70 {
    padding-top: 18.66667vw !important;
  }
  .pdt-sp--75 {
    padding-top: 20vw !important;
  }
  .pdt-sp--80 {
    padding-top: 21.33333vw !important;
  }
  .pdt-sp--85 {
    padding-top: 22.66667vw !important;
  }
  .pdt-sp--90 {
    padding-top: 24vw !important;
  }
  .pdt-sp--95 {
    padding-top: 25.33333vw !important;
  }
  .pdt-sp--100 {
    padding-top: 26.66667vw !important;
  }
  .pdt-sp--105 {
    padding-top: 28vw !important;
  }
  .pdt-sp--110 {
    padding-top: 29.33333vw !important;
  }
  .pdt-sp--115 {
    padding-top: 30.66667vw !important;
  }
  .pdt-sp--120 {
    padding-top: 32vw !important;
  }
  .pdt-sp--125 {
    padding-top: 33.33333vw !important;
  }
  .pdt-sp--130 {
    padding-top: 34.66667vw !important;
  }
  .pdt-sp--135 {
    padding-top: 36vw !important;
  }
  .pdt-sp--140 {
    padding-top: 37.33333vw !important;
  }
  .pdt-sp--145 {
    padding-top: 38.66667vw !important;
  }
  .pdt-sp--150 {
    padding-top: 40vw !important;
  }
  .pdt-sp--155 {
    padding-top: 41.33333vw !important;
  }
  .pdt-sp--160 {
    padding-top: 42.66667vw !important;
  }
  .pdt-sp--165 {
    padding-top: 44vw !important;
  }
  .pdt-sp--170 {
    padding-top: 45.33333vw !important;
  }
  .pdt-sp--175 {
    padding-top: 46.66667vw !important;
  }
  .pdt-sp--180 {
    padding-top: 48vw !important;
  }
  .pdt-sp--185 {
    padding-top: 49.33333vw !important;
  }
  .pdt-sp--190 {
    padding-top: 50.66667vw !important;
  }
  .pdt-sp--195 {
    padding-top: 52vw !important;
  }
  .pdt-sp--200 {
    padding-top: 53.33333vw !important;
  }
  .pdt-sp--205 {
    padding-top: 54.66667vw !important;
  }
  .pdt-sp--210 {
    padding-top: 56vw !important;
  }
  .pdt-sp--215 {
    padding-top: 57.33333vw !important;
  }
  .pdt-sp--220 {
    padding-top: 58.66667vw !important;
  }
  .pdt-sp--225 {
    padding-top: 60vw !important;
  }
  .pdt-sp--230 {
    padding-top: 61.33333vw !important;
  }
  .pdt-sp--235 {
    padding-top: 62.66667vw !important;
  }
  .pdt-sp--240 {
    padding-top: 64vw !important;
  }
  .pdt-sp--245 {
    padding-top: 65.33333vw !important;
  }
  .pdt-sp--250 {
    padding-top: 66.66667vw !important;
  }
}
/* ---------------------------------------------
*   padding-bottom
--------------------------------------------- */

.pdb-pc--0 {
  padding-bottom: 0 !important;
}

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

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

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

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

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

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

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

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

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

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

.pdb-pc--55 {
  padding-bottom: 55px !important;
}

.pdb-pc--60 {
  padding-bottom: 60px !important;
}

.pdb-pc--65 {
  padding-bottom: 65px !important;
}

.pdb-pc--70 {
  padding-bottom: 70px !important;
}

.pdb-pc--75 {
  padding-bottom: 75px !important;
}

.pdb-pc--80 {
  padding-bottom: 80px !important;
}

.pdb-pc--85 {
  padding-bottom: 85px !important;
}

.pdb-pc--90 {
  padding-bottom: 90px !important;
}

.pdb-pc--95 {
  padding-bottom: 95px !important;
}

.pdb-pc--100 {
  padding-bottom: 100px !important;
}

.pdb-pc--105 {
  padding-bottom: 105px !important;
}

.pdb-pc--110 {
  padding-bottom: 110px !important;
}

.pdb-pc--115 {
  padding-bottom: 115px !important;
}

.pdb-pc--120 {
  padding-bottom: 120px !important;
}

.pdb-pc--125 {
  padding-bottom: 125px !important;
}

.pdb-pc--130 {
  padding-bottom: 130px !important;
}

.pdb-pc--135 {
  padding-bottom: 135px !important;
}

.pdb-pc--140 {
  padding-bottom: 140px !important;
}

.pdb-pc--145 {
  padding-bottom: 145px !important;
}

.pdb-pc--150 {
  padding-bottom: 150px !important;
}

.pdb-pc--155 {
  padding-bottom: 155px !important;
}

.pdb-pc--160 {
  padding-bottom: 160px !important;
}

.pdb-pc--165 {
  padding-bottom: 165px !important;
}

.pdb-pc--170 {
  padding-bottom: 170px !important;
}

.pdb-pc--175 {
  padding-bottom: 175px !important;
}

.pdb-pc--180 {
  padding-bottom: 180px !important;
}

.pdb-pc--185 {
  padding-bottom: 185px !important;
}

.pdb-pc--190 {
  padding-bottom: 190px !important;
}

.pdb-pc--195 {
  padding-bottom: 195px !important;
}

.pdb-pc--200 {
  padding-bottom: 200px !important;
}

.pdb-pc--205 {
  padding-bottom: 205px !important;
}

.pdb-pc--210 {
  padding-bottom: 210px !important;
}

.pdb-pc--215 {
  padding-bottom: 215px !important;
}

.pdb-pc--220 {
  padding-bottom: 220px !important;
}

.pdb-pc--225 {
  padding-bottom: 225px !important;
}

.pdb-pc--230 {
  padding-bottom: 230px !important;
}

.pdb-pc--235 {
  padding-bottom: 235px !important;
}

.pdb-pc--240 {
  padding-bottom: 240px !important;
}

.pdb-pc--245 {
  padding-bottom: 245px !important;
}

.pdb-pc--250 {
  padding-bottom: 250px !important;
}

@media screen and (max-width: 767px) {
  .pdb-sp--0 {
    padding-bottom: 0 !important;
  }
  .pdb-sp--5 {
    padding-bottom: 1.33333vw !important;
  }
  .pdb-sp--10 {
    padding-bottom: 2.66667vw !important;
  }
  .pdb-sp--15 {
    padding-bottom: 4vw !important;
  }
  .pdb-sp--20 {
    padding-bottom: 5.33333vw !important;
  }
  .pdb-sp--25 {
    padding-bottom: 6.66667vw !important;
  }
  .pdb-sp--30 {
    padding-bottom: 8vw !important;
  }
  .pdb-sp--35 {
    padding-bottom: 9.33333vw !important;
  }
  .pdb-sp--40 {
    padding-bottom: 10.66667vw !important;
  }
  .pdb-sp--45 {
    padding-bottom: 12vw !important;
  }
  .pdb-sp--50 {
    padding-bottom: 13.33333vw !important;
  }
  .pdb-sp--55 {
    padding-bottom: 14.66667vw !important;
  }
  .pdb-sp--60 {
    padding-bottom: 16vw !important;
  }
  .pdb-sp--65 {
    padding-bottom: 17.33333vw !important;
  }
  .pdb-sp--70 {
    padding-bottom: 18.66667vw !important;
  }
  .pdb-sp--75 {
    padding-bottom: 20vw !important;
  }
  .pdb-sp--80 {
    padding-bottom: 21.33333vw !important;
  }
  .pdb-sp--85 {
    padding-bottom: 22.66667vw !important;
  }
  .pdb-sp--90 {
    padding-bottom: 24vw !important;
  }
  .pdb-sp--95 {
    padding-bottom: 25.33333vw !important;
  }
  .pdb-sp--100 {
    padding-bottom: 26.66667vw !important;
  }
  .pdb-sp--105 {
    padding-bottom: 28vw !important;
  }
  .pdb-sp--110 {
    padding-bottom: 29.33333vw !important;
  }
  .pdb-sp--115 {
    padding-bottom: 30.66667vw !important;
  }
  .pdb-sp--120 {
    padding-bottom: 32vw !important;
  }
  .pdb-sp--125 {
    padding-bottom: 33.33333vw !important;
  }
  .pdb-sp--130 {
    padding-bottom: 34.66667vw !important;
  }
  .pdb-sp--135 {
    padding-bottom: 36vw !important;
  }
  .pdb-sp--140 {
    padding-bottom: 37.33333vw !important;
  }
  .pdb-sp--145 {
    padding-bottom: 38.66667vw !important;
  }
  .pdb-sp--150 {
    padding-bottom: 40vw !important;
  }
  .pdb-sp--155 {
    padding-bottom: 41.33333vw !important;
  }
  .pdb-sp--160 {
    padding-bottom: 42.66667vw !important;
  }
  .pdb-sp--165 {
    padding-bottom: 44vw !important;
  }
  .pdb-sp--170 {
    padding-bottom: 45.33333vw !important;
  }
  .pdb-sp--175 {
    padding-bottom: 46.66667vw !important;
  }
  .pdb-sp--180 {
    padding-bottom: 48vw !important;
  }
  .pdb-sp--185 {
    padding-bottom: 49.33333vw !important;
  }
  .pdb-sp--190 {
    padding-bottom: 50.66667vw !important;
  }
  .pdb-sp--195 {
    padding-bottom: 52vw !important;
  }
  .pdb-sp--200 {
    padding-bottom: 53.33333vw !important;
  }
  .pdb-sp--205 {
    padding-bottom: 54.66667vw !important;
  }
  .pdb-sp--210 {
    padding-bottom: 56vw !important;
  }
  .pdb-sp--215 {
    padding-bottom: 57.33333vw !important;
  }
  .pdb-sp--220 {
    padding-bottom: 58.66667vw !important;
  }
  .pdb-sp--225 {
    padding-bottom: 60vw !important;
  }
  .pdb-sp--230 {
    padding-bottom: 61.33333vw !important;
  }
  .pdb-sp--235 {
    padding-bottom: 62.66667vw !important;
  }
  .pdb-sp--240 {
    padding-bottom: 64vw !important;
  }
  .pdb-sp--245 {
    padding-bottom: 65.33333vw !important;
  }
  .pdb-sp--250 {
    padding-bottom: 66.66667vw !important;
  }
}

@media screen and (min-width: 768px) {
  .pc-hide {
    display: none !important;
  }
}

@media screen and (max-width: 767px) {
  .sp-hide {
    display: none !important;
  }
}
/** covid **/

.covid19_block {
  color: #000;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN",
    "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
}

.covid19_block .nowrap {
  display: inline-block;
}

.covid19_block .breadcrumb {
  margin-top: 60px;
  color: #482426;
}

.covid19_block .inner {
  margin: 0 auto;
  width: 1000px;
}

.covid19_block .mv {
  position: relative;
  width: 100%;
  margin: 30px 0 30px;
}

.covid19_block .mv .mv_bg {
  width: 100%;
  height: auto;
}

.covid19_block .mv .txt_block {
  background: rgba(255, 255, 255, 0.8);
  width: 292px;
  height: 323.5px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: absolute;
  top: 111px;
  left: calc(50% - 146px);
}

.covid19_block .mv .txt_block h2 {
  font-size: 42px;
  font-style: italic;
  line-height: 1.3;
  margin-bottom: 0.5em;
  font-weight: bold;
  letter-spacing: 0.03em;
}

.covid19_block .mv .txt_block h4 {
  font-size: 21px;
  letter-spacing: 0.2em;
  font-weight: bold;
}

.covid19_block section {
  padding: 50px 0;
  position: relative;
}

.covid19_block section:after {
  content: "";
  display: block;
  background: #000;
  width: 23px;
  height: 5px;
  position: absolute;
  bottom: -2.5px;
  left: calc(50% - 12.5px);
}

.covid19_block section.sec_request:after {
  display: none;
}

.covid19_block section h2.sec_title {
  font-weight: bold;
  font-size: 27px;
  letter-spacing: 0.2em;
  text-align: center;
  line-height: 1.3;
  margin-bottom: 1em;
}

.covid19_block section p {
  text-align: center;
  font-size: 17px;
  letter-spacing: 0.1em;
  line-height: 1.8;
  font-weight: 500;
}

.covid19_block section.sec_message p {
  line-height: 2;
}

.covid19_block .photo_list {
  margin-top: 45px;
}

.covid19_block .photo_list li {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
  margin-bottom: 60px;
}

.covid19_block .photo_list .photo {
  width: 50%;
  height: auto;
  z-index: 0;
}

.covid19_block .photo_list .txt {
  width: 50%;
  background: #e7f2f2;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 187px;
  margin: 0 0 0 -6%;
  margin-right: 0;
  z-index: 1;
}

.covid19_block .sec_request .photo_list .txt {
  background: #fdf5f2;
}

.covid19_block .photo_list .txt p {
  margin: 0 30px 0;
  text-align: left;
}

.covid19_block .photo_list li:nth-child(2n) {
  justify-content: flex-end;
}

.covid19_block .photo_list li:nth-child(2n) .photo {
  order: 2;
}

.covid19_block .photo_list li:nth-child(2n) .txt {
  order: 1;
  margin-left: 0;
  margin: 0 -6% 0 0;
}

.covid19_block .bottom_message {
  font-size: 16px;
  line-height: 2;
}

.covid19_block .from {
  font-size: 16px;
  text-align: right;
  line-height: 2;
  margin: 1em 0 50px;
}

@media screen and (max-width: 767px) {
  .covid19_block .inner {
    width: 100%;
  }
  .covid19_block .mv .txt_block {
    width: 50vw;
    height: 50vw;
    top: calc(50% - 22vw);
    left: calc(50% - 25vw);
  }
  .covid19_block .mv .txt_block h2 {
    font-size: 8vw;
  }
  .covid19_block .mv .txt_block h4 {
    font-size: 4vw;
  }
  .covid19_block section h2.sec_title {
    font-size: 5.6vw;
    line-height: 1.5;
  }
  .covid19_block section.sec_message {
    padding-top: 10px;
  }
  .covid19_block section.sec_message p {
    font-size: 3.5vw;
    padding: 0 1.5em;
  }
  .covid19_block .photo_list li {
    padding: 0 20px;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 0 50px;
  }
  .covid19_block .photo_list li:last-child {
    margin-bottom: 0;
  }
  .covid19_block .photo_list li:nth-child(2n) {
    justify-content: center;
  }
  .covid19_block .photo_list .photo {
    width: 100%;
  }
  .covid19_block .photo_list .txt {
    width: 85%;
    margin: -25px 0 0;
    height: auto;
  }
  .covid19_block .photo_list .txt p {
    font-size: 4vw;
    margin: 1.5em 2em;
  }
  .covid19_block .photo_list li:nth-child(2n) .photo {
    order: 1;
  }
  .covid19_block .photo_list li:nth-child(2n) .txt {
    order: 2;
    margin: -25px 0 0;
  }
  .covid19_block .bottom_message {
    padding: 0 1.5em;
    font-size: 4vw;
  }
  .covid19_block .from {
    font-size: 4vw;
    margin: 3em 1.5em 50px;
  }
}

@media screen and (max-width: 320px) {
  .covid19_block .mv .txt_block {
    width: 160px;
    height: 160px;
    top: calc(50% - 70px);
    left: calc(50% - 80px);
  }
  .covid19_block .mv .txt_block h2 {
    font-size: 25px;
  }
  .covid19_block .mv .txt_block h4 {
    font-size: 12.8px;
  }
}
/** 結婚式プラン診断 **/
/** sp **/

.assessment-page-main-sp {
  display: block !important;
  color: #000;
}

.assessment-page-main-sp .page-container {
  margin: 50px auto 0;
}

.assessment-page-main-sp section {
  background: url(../img/assessment/sp/back.png) repeat;
  background-size: 50vw auto;
  transition-duration: 1s;
  transition-timing-function: ease;
  transition-property: visibility, opacity, top;
  visibility: hidden;
  opacity: 0;
  position: relative;
  height: 0;
}

.assessment-page-main-sp section.result-block {
  background-image: url(../img/assessment/sp/back_r.png);
}

.assessment-page-main-sp section.active {
  visibility: visible;
  opacity: 1;
  height: auto;
  padding: 40px 0;
  margin-bottom: 13.3vw;
}

.assessment-page-main-sp section .inner {
  max-width: 750px;
  margin: 0 auto;
}

.assessment-page-main-sp #sec-top .frame-wrapper {
  max-width: 640px;
  width: 86%;
  margin: 0 auto;
}

.assessment-page-main-sp #sec-top .frame {
  background: url(../img/assessment/sp/top_frame_middle.png) repeat-y;
  background-size: contain;
  padding: 5.3vw 0;
  text-align: center;
  box-sizing: border-box;
}

.assessment-page-main-sp #sec-top .frame-top,
.assessment-page-main-sp #sec-top .frame-bottom {
  width: 100%;
  height: auto;
}

.assessment-page-main-sp #sec-top .heading {
  width: 38%;
}

.assessment-page-main-sp .top-message {
  font-size: 6.7vw;
  font-weight: normal;
}

.assessment-page-main-sp .top-message .large {
  font-size: 16vw;
  font-style: italic;
}

.assessment-page-main-sp .top-message .adj {
  line-height: 1.2;
}

.assessment-page-main-sp #sec-top .line {
  width: 69.5%;
  margin: 3vw 0 4vw;
}

.assessment-page-main-sp #sec-top .small {
  font-size: 3.6vw;
  margin-bottom: 0.8em;
}

.assessment-page-main-sp #sec-top .arrow {
  width: 8.3vw;
  vertical-align: top;
}

.assessment-page-main-sp #btn-start {
  width: 24vw;
  height: 24vw;
  display: block;
  margin: 0 auto;
  border-radius: 50%;
  color: #fff;
  background: #f26968;
  font-size: 6.7vw;
  margin-top: 8vw;
  transition: 0.3s ease all;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN",
    "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
}

.assessment-page-main-sp #btn-start:hover {
  transform: scale(1.1);
  box-shadow: 0 0 2vw rgba(0, 0, 0, 0.4);
}

.assessment-page-main-sp .block {
  background: #fff;
  text-align: center;
  width: 93.3%;
  margin: 0 auto;
  padding: 5.3vw 4.7vw 8vw;
  box-sizing: border-box;
  position: relative;
  z-index: 0;
}

.assessment-page-main-sp .block .crown {
  width: 17.6vw;
  margin-bottom: 6.7vw;
}

.assessment-page-main-sp .block h2 {
  font-size: 6vw;
  margin-bottom: 6vw;
}

.assessment-page-main-sp .btn-01 {
  width: calc(100% - 1vw);
  margin-top: 10.7vw;
  min-height: 25.3vw;
  border: 0.3vw solid #f26968;
  position: relative;
  background: #fff;
  font-size: 4.5vw;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN",
    "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  padding: 0.8em 0;
  display: block;
}

.assessment-page-main-sp .btn-01:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: #e56665;
  position: absolute;
  bottom: -1vw;
  right: -1vw;
  z-index: -1;
}

.assessment-page-main-sp .btn-arrow-01 {
  width: 8vw;
  vertical-align: top;
  margin-top: 0.5em;
  position: relative;
  top: 0;
  transition: 0.3s ease all;
}

.assessment-page-main-sp .btn-01:hover {
  background: #fcefef;
}

.assessment-page-main-sp .btn-01:hover .btn-arrow-01 {
  top: 2vw;
}

.assessment-page-main-sp .btn-02 {
  color: #fff;
  text-align: left;
  background: #f26968;
  min-height: 25.3vw;
  width: calc(76vw - 1vw);
  font-size: 5.6vw;
  margin: 0 auto;
  font-weight: bold;
  padding-left: 12vw;
  position: relative;
  transition: 0.3s ease all;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  box-sizing: border-box;
}

.assessment-page-main-sp .btn-02:hover {
  background: #f3908f;
}

.assessment-page-main-sp .btn-02:before {
  content: "";
  display: block;
  background: url(../img/assessment/sp/arrow_white_r.png) no-repeat center;
  background-size: contain;
  width: 8.1vw;
  height: 2.5vw;
  position: absolute;
  right: 5.3vw;
  bottom: calc(50% - 1.25vw);
  transition: 0.3s ease all;
}

.assessment-page-main-sp .btn-02:hover:before {
  right: 4.1vw;
}

.assessment-page-main-sp .btn-02:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: #ba5553;
  position: absolute;
  bottom: -1vw;
  right: -1vw;
  z-index: -1;
}

.assessment-page-main-sp .btn-02-label {
  font-size: 6vw;
  margin: 1.5em 0 0.5em;
}

.assessment-page-main-sp .block h3 {
  font-family: YuGothic, "Yu Gothic", sans-serif;
  font-size: 7.1vw;
  font-weight: bold;
  color: #f26968;
  margin: 0.8em 0 0.6em;
}

.assessment-page-main-sp .result-block .block {
  padding-bottom: 13.3vw;
}

.assessment-page-main-sp .result-block .line {
  width: 69.5%;
  margin: 0 0 9.3vw;
}

.assessment-page-main-sp .result-block .description {
  text-align: left;
  font-size: 4.3vw;
  margin-bottom: 2em;
  line-height: 1.8;
}

.assessment-page-main-sp .result-block .btn-02 {
  width: calc(98% - 1vw);
}

.assessment-page-main-sp .btn-back {
  display: block;
  width: 75%;
  background: #fff;
  margin: 2em auto 1em;
  font-size: 5vw;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN",
    "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  padding: 0.6em 0;
  border: 0.3vw solid #f26968;
  transition: 0.3s ease all;
}

.assessment-page-main-sp .btn-back img {
  width: 8.1vw;
  height: 2.5vw;
  vertical-align: middle;
  position: relative;
  bottom: 0.25em;
  left: 0;
  margin-right: 0.5em;
  transition: 0.3s ease all;
}

.assessment-page-main-sp .btn-back:hover {
  transform: scale(1.05);
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.4);
  opacity: 0.9;
}

.assessment-page-main-sp .btn-back:hover img {
  left: -0.5em;
}

@media screen and (min-width: 768px) {
  .assessment-page-main-sp {
    display: none !important;
  }
  .assessment-page-main-sp section {
    background-size: auto;
  }
  .assessment-page-main-sp section.active {
    padding: 5.3vw 0;
    margin-bottom: 100px;
  }
  .assessment-page-main-sp #sec-top .frame {
    padding: 40px 0;
  }
  .assessment-page-main-sp .top-message {
    font-size: 50px;
  }
  .assessment-page-main-sp .top-message .large {
    font-size: 120px;
  }
  .assessment-page-main-sp #sec-top .line {
    width: 445px;
    margin: 24px 0 32px;
  }
  .assessment-page-main-sp #btn-start {
    width: 180px;
    height: 180px;
    font-size: 50px;
    margin-top: 60px;
  }
  .assessment-page-main-sp #btn-start:hover {
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.4);
  }
  .assessment-page-main-sp #sec-top .small {
    font-size: 27px;
  }
  .assessment-page-main-sp #sec-top .arrow {
    width: 62px;
  }
  .assessment-page-main-sp .block {
    padding: 40px 35px 60px;
  }
  .assessment-page-main-sp .block .crown {
    width: 132px;
    margin-bottom: 50px;
  }
  .assessment-page-main-sp .block h2 {
    font-size: 45px;
    margin-bottom: 45px;
  }
  .assessment-page-main-sp .btn-01 {
    width: calc(100% - 7px);
    margin-top: 80px;
    min-height: 190px;
    font-size: 35px;
    transition: 0.3s ease all;
  }
  .assessment-page-main-sp .btn-01:after {
    bottom: -7px;
    right: -7px;
  }
  .assessment-page-main-sp .btn-arrow-01 {
    width: 60px;
  }
  .assessment-page-main-sp .btn-01:hover .btn-arrow-01 {
    top: 15px;
  }
  .assessment-page-main-sp .btn-02 {
    min-height: 190px;
    width: 563px;
    font-size: 42px;
    padding-left: 90px;
  }
  .assessment-page-main-sp .btn-02:before {
    width: 61px;
    height: 19px;
    right: 40px;
    bottom: calc(50% - 8.5px);
  }
  .assessment-page-main-sp .btn-02:hover:before {
    right: 30px;
  }
  .assessment-page-main-sp .btn-02:after {
    bottom: -7px;
    right: -7px;
  }
  .assessment-page-main-sp .btn-02-label {
    font-size: 45px;
  }
  .assessment-page-main-sp .block h3 {
    font-size: 53px;
  }
  .assessment-page-main-sp .result-block .block {
    padding-bottom: 100px;
  }
  .assessment-page-main-sp .result-block .line {
    width: 445px;
    margin: 0 0 70px;
  }
  .assessment-page-main-sp .result-block .description {
    font-size: 32px;
  }
  .assessment-page-main-sp .result-block .btn-02 {
    width: calc(98% - 7px);
  }
  .assessment-page-main-sp .btn-back {
    border: 2px solid #f26968;
    font-size: 37px;
  }
  .assessment-page-main-sp .btn-back img {
    width: 61px;
    height: 19px;
  }
}
/** pc **/

.assessment-page-main-pc {
  display: none !important;
  color: #000;
}

.assessment-page-main-pc .page-container {
  margin: 65px auto 0;
  background: url(../img/assessment/pc/back.png) repeat;
  background-size: 190px auto;
}

.assessment-page-main-pc section {
  padding: 40px 0 70px;
  position: relative;
}

.assessment-page-main-pc section:nth-child(2n):before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(249, 221, 230, 0.58);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  mix-blend-mode: multiply;
}

.assessment-page-main-pc section .inner {
  max-width: 1200px;
  margin: 0 auto;
  z-index: 1;
  position: relative;
}

.assessment-page-main-pc .frame-wrapper {
  position: relative;
}

.assessment-page-main-pc .frame {
  text-align: center;
  background: url(../img/assessment/pc/frame_middle.png) repeat-y;
  background-size: contain;
}

.assessment-page-main-pc .frame-contents {
  z-index: 1;
  position: relative;
}

.assessment-page-main-pc #sec-top-pc {
  padding-top: 30px;
}

.assessment-page-main-pc #sec-top-pc .frame {
  padding-bottom: 50px;
}

.assessment-page-main-pc .top-photo {
  position: absolute;
  top: 55px;
  left: 50px;
  width: 1100px;
  z-index: 0;
}

.assessment-page-main-pc #sec-top-pc .top-heading {
  width: 190px;
  margin-top: 50px;
}

.assessment-page-main-pc #sec-top-pc .top-message {
  font-size: 41px;
}

.assessment-page-main-pc #sec-top-pc .top-message .large {
  font-style: italic;
  font-size: 100px;
}

.assessment-page-main-pc #sec-top-pc .top-message .adj {
  line-height: 1.2;
}

.assessment-page-main-pc #sec-top-pc .line {
  width: 500px;
  margin: 35px 0 30px;
}

.assessment-page-main-pc #sec-top-pc h1 {
  font-size: 35px;
}

.assessment-page-main-pc #sec-top-pc .small {
  font-size: 17px;
  margin: 0.5em 0 1em;
}

.assessment-page-main-pc #sec-top-pc .start {
  color: #f26968;
  font-size: 42px;
  margin-bottom: 0.6em;
}

.assessment-page-main-pc #sec-top-pc .arrow {
  width: 75px;
  margin-bottom: 50px;
}

.assessment-page-main-pc .heading-wrapper .icon {
  width: 60px;
  margin-bottom: 20px;
}

.assessment-page-main-pc .heading-wrapper h2 {
  font-size: 30px;
  margin-bottom: 1em;
}

.assessment-page-main-pc #sec-top-pc .btn-wrapper {
  display: flex;
  justify-content: center;
  flex-wrap: nowrap;
  position: relative;
  z-index: 0;
}

.assessment-page-main-pc #sec-top-pc .btn-wrapper .btn-01 {
  display: block;
  width: 300px;
  min-height: 95px;
  font-size: 22px;
  margin: 0 65px;
  border: 1px solid #f26968;
  position: relative;
  padding: 0.9em 0;
  box-sizing: border-box;
  background: #fff;
  line-height: 1;
}

.assessment-page-main-pc #sec-top-pc .btn-wrapper .btn-01:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: #e56665;
  position: absolute;
  top: 3px;
  left: 3px;
  z-index: -1;
  transition: 0.3s ease all;
}

.assessment-page-main-pc #sec-top-pc .btn-wrapper .btn-01:hover {
  background: #fcefef;
}

.assessment-page-main-pc #sec-top-pc .btn-wrapper .btn-01 img {
  width: 30px;
  margin-top: 20px;
  position: relative;
  top: 0;
  transition: 0.3s ease all;
}

.assessment-page-main-pc #sec-top-pc .btn-wrapper .btn-01:hover img {
  top: 10px;
}

.assessment-page-main-pc .result-wrapper {
  width: 970px;
  margin: 0 auto;
}

.assessment-page-main-pc .result-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 60px;
}

.assessment-page-main-pc .result-item:last-child {
  margin-bottom: 0;
}

.assessment-page-main-pc .result-item .request {
  font-size: 26px;
  width: 320px;
  text-align: left;
  margin-right: -80px;
}

.assessment-page-main-pc .result-item .arrow-r {
  width: 20px;
  margin-right: -30px;
}

.assessment-page-main-pc .result-item .photo {
  width: 200px;
}

.assessment-page-main-pc .result-item .right {
  width: 304px;
  position: relative;
  z-index: 0;
  text-align: center;
}

.assessment-page-main-pc .result-item .right .recommendation {
  font-size: 16px;
  margin-bottom: 0.8em;
  text-align: left;
}

.assessment-page-main-pc .result-item .btn-02 {
  display: flex;
  background: #f26968;
  color: #fff;
  font-size: 22px;
  font-weight: bold;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  position: relative;
  width: 300px;
  min-height: 96px;
  align-items: center;
  justify-content: flex-start;
  padding-left: 40px;
  box-sizing: border-box;
  text-align: left;
  transition: 0.3s ease all;
  margin: 0 auto;
}

.assessment-page-main-pc .result-item .btn-02:before {
  content: "";
  display: block;
  width: 30px;
  height: 10px;
  position: absolute;
  right: 20px;
  top: calc(50% - 5px);
  background: url(../img/assessment/pc/arrow_white_r.png) no-repeat center;
  background-size: contain;
  transition: 0.3s ease all;
}

.assessment-page-main-pc .result-item .btn-02:after {
  content: "";
  display: block;
  position: absolute;
  top: 4px;
  left: 4px;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: #be5e5c;
}

.assessment-page-main-pc .result-item .btn-02:hover {
  background: #f3908f;
}

.assessment-page-main-pc .result-item .btn-02:hover:before {
  right: 10px;
}

.assessment-page-main-pc .result-item h3 {
  font-size: 30px;
  color: #f26968;
  text-align: left;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 0.3em;
}

.assessment-page-main-pc .result-item .description {
  font-size: 16px;
  text-align: left;
  margin-bottom: 2em;
}

.assessment-page-main-pc #sec-photo .frame {
  padding: 20px 0 30px;
}

.assessment-page-main-pc #sec-ceremony .frame {
  padding: 20px 0 50px;
}

.assessment-page-main-pc #sec-ceremony .result-wrapper {
  width: 1030px;
}

.assessment-page-main-pc #sec-ceremony .result-item .photo {
  width: 213px;
}

.assessment-page-main-pc #sec-ceremony .result-item .right {
  width: 390px;
}

.assessment-page-main-pc #sec-ceremony .result-item .request {
  margin-right: -50px;
}

.assessment-page-main-pc #sec-ceremony .result-item .arrow-r {
  margin-right: -30px;
}

.assessment-page-main-pc #sec-ceremony .line {
  width: 100%;
  margin-bottom: 50px;
}

@media screen and (min-width: 768px) {
  .assessment-page-main-pc {
    display: block !important;
  }
}
/** 式場一覧ページ **/

#venues-page {
  color: #000;
  /** padding: 95px 0; **/
  padding: 150px 0 95px;
}

#venues-page * {
  box-sizing: border-box;
}

#venues-page .sp {
  display: none !important;
}

#venues-page .entry-content {
  width: 80%;
  max-width: 960px;
  margin: 0 auto;
}

#venues-page .txt-red {
  color: #f26968;
}

#venues-page .page-title {
  margin: 0;
  padding: 0;
  text-align: center;
  font-weight: normal;
}

#venues-page .page-title span.large {
  color: #f26968;
  font-size: 52px;
  display: inline-block;
}

#venues-page .page-title span.small {
  color: #000;
  font-size: 23px;
  margin: 0.5em 0 100px;
  display: inline-block;
}

#venues-page .search {
  text-align: center;
  font-size: 29px;
  margin: 0 0 1em 0;
}

#venues-page .tab {
  margin: 0 0 120px 0;
  padding: 0;
  text-align: center;
  font-size: 24px;
}

#venues-page .tab li {
  display: inline-block;
  text-align: center;
  cursor: pointer;
}

#venues-page .tab li:hover {
  color: #f26968;
}

#venues-page .tab li.active {
  color: #f26968;
}

#venues-page .tab li:before {
  content: "｜";
  margin: 0 0.7em 0 0.5em;
  color: #000;
}

#venues-page .tab li:first-child:before {
  margin-left: 0;
}

#venues-page .tab li:last-child:after {
  content: "｜";
  margin: 0 0 0 0.5em;
  color: #000;
}

#venues-page h2 {
  text-align: center;
  font-size: 35px;
  line-height: 1.8;
  border-bottom: #000 solid 1px;
  margin-bottom: 1em;
  font-weight: normal;
}

#venues-page section {
  visibility: hidden;
  opacity: 0;
  height: 0;
  transition-duration: 1s;
  transition-timing-function: ease;
  transition-property: visibility, opacity;
  overflow: hidden;
}

#venues-page section.active {
  visibility: visible;
  opacity: 1;
  height: auto;
}

#venues-page .sub-sec {
  padding-bottom: 90px;
}

#venues-page h3 {
  text-align: center;
  font-size: 26px;
  margin-bottom: 1.2em;
  font-weight: normal;
}

#venues-page .area-contents {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 30px;
}

#venues-page .area-contents .photo-main {
  width: 48%;
}

#venues-page .area-contents .right {
  width: 48%;
  display: flex;
  flex-wrap: wrap;
}

#venues-page .area-contents .txt {
  font-size: 18px;
  line-height: 1.75;
  margin-bottom: 1.5em;
  margin-top: -0.4em;
  width: 100%;
}

#venues-page .area-contents .photo {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}

#venues-page .area-contents .photo img {
  width: 48%;
}

#venues-page .btn-link {
  width: 460px;
  height: 75px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #f26968;
  border: 1px solid #f26968;
  position: relative;
  margin: 0 auto;
  font-size: 19px;
  transition: 0.3s all ease;
}

#venues-page .btn-link:after {
  content: "＞";
  position: absolute;
  right: 15px;
  top: 23px;
}

#venues-page .btn-link:hover {
  background: #f26968;
  color: #fff;
}

@media screen and (max-width: 768px) {
  #venues-page {
    color: #000;
    padding: calc(10.6vw + 40px) 0 10.6vw;
    /** padding: 10.6vw 0; **/
  }
  #venues-page .sp {
    display: block !important;
  }
  #venues-page .page-title span.large {
    font-size: 8vw;
  }
  #venues-page .page-title span.small {
    font-size: 4.4vw;
    margin: 0.5em 0 13.3vw;
  }
  #venues-page .search {
    font-size: 4.5vw;
  }
  #venues-page .tab {
    margin: 0 0 16vw 0;
    font-size: 3.8vw;
    width: 90vw;
    position: relative;
    left: -6vw;
  }
  #venues-page h2 {
    font-size: 6.2vw;
  }
  #venues-page .sub-sec {
    padding-bottom: 14.6vw;
  }
  #venues-page h3 {
    font-size: 4.6vw;
  }
  #venues-page .area-contents {
    margin-bottom: 6.6vw;
  }
  #venues-page .area-contents .photo-main {
    width: 100%;
    margin-bottom: 3.3vw;
  }
  #venues-page .area-contents .right {
    width: 100%;
  }
  #venues-page .area-contents .txt {
    font-size: 3.1vw;
    order: 2;
    margin: 1.5em 0 0;
  }
  #venues-page .area-contents .photo {
    order: 1;
  }
  #venues-page .btn-link {
    width: 100%;
    height: 13.3vw;
    font-size: 3.3vw;
  }
  #venues-page .btn-link:after {
    right: 2.6vw;
    top: 4vw;
  }
}

header.header-group {
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.16);
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.16);
  position: fixed;
  z-index: 10;
  width: 100%;
  top: 0;
  left: 0;
  background: #fff;
}

header.header-group .group-logo {
  height: 60px;
  padding: 0;
  margin-left: 40px;
  width: auto;
}

@media screen and (max-width: 768px) {
  header.header-group .group-logo {
    height: 40px;
    margin-left: 5px;
  }
}

footer.footer-group {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 60px;
  background: #ebebeb;
}

footer.footer-group p {
  font-size: 9px;
}

#bestrate {
  padding-bottom: 175px;
}
#bestrate * {
  box-sizing: border-box;
}
#bestrate .heading {
  display: block;
  width: 85%;
  max-width: 690px;
  margin: 0 auto 60px;
}
#bestrate .lead {
  width: 90%;
  max-width: 780px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 0 auto 70px;
}
#bestrate .lead img {
  width: 152px;
  height: auto;
}
#bestrate .lead p {
  width: calc(100% - 180px);
  color: #000;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.7;
}
#bestrate .inner {
  width: 95%;
  max-width: 700px;
  margin: 0 auto;
}
#bestrate h3 {
  color: #874e4c;
  margin-bottom: 1.5em;
  text-align: center;
  font-weight: bold;
  font-size: 24px;
  line-height: 1.3;
}
#bestrate .figure-list {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
}
#bestrate .figure-list .figure {
  width: 48.5%;
  position: relative;
}
#bestrate .figure-list .figure img {
  width: 100%;
}
#bestrate .figure-list .figure .bestrate-s {
  position: absolute;
  width: 127px;
  top: -30px;
  left: -15px;
}
#bestrate h4 {
  color: #000;
  font-size: 22px;
  text-align: center;
  line-height: 1.3;
  margin: 3em 0 1em;
  position: relative;
  font-weight: bold;
}
#bestrate .frame-top,
#bestrate .frame-bottom {
  width: 100%;
  display: block;
}
#bestrate .frame-middle {
  background: url(../img/bestrate/frame_middle.png) repeat-y;
  background-size: 100% 100%;
  padding: 30px 30px 0;
  width: 100%;
}
#bestrate .frame {
  position: relative;
  margin-top: 46px;
  background: url(../img/bestrate/frame_bg.png) repeat;
  background-size: 6.5px;
  display: flex;
  flex-wrap: wrap;
}
#bestrate .frame-heading {
  width: 270px;
  display: block;
  position: absolute;
  top: -26px;
  left: calc(50% - 135px);
}
#bestrate .frame .note {
  margin-top: 25px;
  list-style: none;
}
#bestrate .frame .note li {
  list-style: none;
  color: #000;
  font-size: 14px;
  font-family: YuGothic, "Yu Gothic", sans-serif;
  text-indent: -1em;
  padding-left: 1em;
}
#bestrate .btn {
  display: block;
  width: 343px;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  background: #f26968;
  line-height: 1;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  margin: 0 auto;
  border-radius: 40px;
  transition: 0.3s all ease;
}
#bestrate .btn:hover {
  transform: scale(1.05);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}
@media screen and (max-width: 767px) {
  #bestrate .heading {
    margin: 0 auto 8vw;
  }
  #bestrate .lead {
    justify-content: center;
    margin: 0 auto 18.67vw;
  }
  #bestrate .lead img {
    width: 29.33vw;
  }
  #bestrate .lead p {
    width: 100%;
    font-size: 3.47vw;
    margin-top: 6.67vw;
  }
  #bestrate h3 {
    font-size: 4.7vw;
  }
  #bestrate .figure-list .figure .bestrate-s {
    width: 16.8vw;
    top: -4vw;
    left: -2vw;
  }
  #bestrate h4 {
    font-size: 4.5vw;
  }
  #bestrate .frame {
    margin-top: 10vw;
  }
  #bestrate .frame-heading {
    width: 36vw;
    top: -3.47vw;
    left: calc(50% - 18vw);
  }
  #bestrate .frame-middle {
    padding: 4vw 4vw 1.33vw;
    box-sizing: border-box;
  }
  #bestrate .frame .note {
    margin-top: 3.33vw;
  }
  #bestrate .frame .note li {
    font-size: 1.95vw;
  }
  #bestrate .btn {
    width: 80vw;
    height: 18.67vw;
    font-size: 5.07vw;
    border-radius: 9.33vw;
  }
  #bestrate .btn:hover {
    box-shadow: 0 0.27vw 0.53vw rgba(0, 0, 0, 0.2);
  }
}

/** ベル・カシェット　TOP KV エンブレム **/
.top-kv-emblem {
  position: absolute;
  right: 10%;
  bottom: 30px;
}
.top-kv-emblem img {
  width: 250px;
}
@media screen and (max-width: 767px) {
  .top-kv-emblem {
    right: 5%;
    bottom: 7vw;
  }
  .top-kv-emblem img {
    width: 40vw;
  }
}

/** ベルヴィ盛岡　フォトウェディングページ **/
#photowedding-plan {
  margin-top: 65px;
}
#photowedding-plan img {
  max-width: 100%;
  height: auto;
}
#photowedding-plan .sp {
  display: none;
}
#photowedding-plan .container-w {
  max-width: 1100px;
  width: 93%;
  margin: 0 auto;
}
#photowedding-plan .container {
  max-width: 685px;
  width: 95%;
  margin: 0 auto;
}
#photowedding-plan .sec-ttl {
  text-align: center;
}
#photowedding-plan .sec-ttl img {
  width: 88px;
  margin-bottom: 50px;
}
#photowedding-plan h2 {
  line-height: 1;
  margin: 0 0 1em;
  color: #4d4d4d;
  font-family: YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo,
    sans-serif;
  font-size: 29px;
  font-weight: bold;
}
#photowedding-plan .lead {
  text-align: center;
  color: #4d4d4d;
  font-family: YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo,
    sans-serif;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.8;
  margin-bottom: 45px;
}
#photowedding-plan .sec-plan {
  padding: 50px 0 105px;
  background: url(../bellevie-morioka/img/photowedding/plan_bg.png) left -30px
    bottom -30px no-repeat;
  background-size: 700px auto;
}
#photowedding-plan .plan-list li {
  margin-bottom: 25px;
}
#photowedding-plan .plan-list li:last-child {
  margin-bottom: 0;
}
#photowedding-plan .sec-machinaka {
  background: #f7ecf1;
  padding-bottom: 50px;
  position: relative;
  margin-bottom: 100px;
}
#photowedding-plan .sec-machinaka:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 35px 34px 0 34px;
  border-color: #f7ecf1 transparent transparent transparent;
  position: absolute;
  left: calc(50% - 34px);
  bottom: -35px;
}
#photowedding-plan .sec-machinaka .content {
  margin-top: -40px;
}
#photowedding-plan .sec-price {
  padding-bottom: 110px;
}
#photowedding-plan .sec-price .lead {
  margin-bottom: 55px;
}
@media screen and (max-width: 767px) {
  #photowedding-plan .pc {
    display: none;
  }
  #photowedding-plan .sp {
    display: block;
  }
  #photowedding-plan img.sp {
    display: inline;
  }
  #photowedding-plan .container-w,
  #photowedding-plan .container {
    max-width: inherit;
  }
  #photowedding-plan .sec-ttl img {
    width: 16vw;
    margin-bottom: 9.07vw;
  }
  #photowedding-plan h2 {
    font-size: 6vw;
  }
  #photowedding-plan .lead {
    font-size: 3.47vw;
    margin-bottom: 6.67vw;
  }
  #photowedding-plan .sec-plan {
    padding: 14vw 0;
    background: none;
  }
  #photowedding-plan .plan-list li {
    margin-bottom: 13.33vw;
  }
  #photowedding-plan .plan-list li:last-child {
    margin-bottom: 0;
  }
  #photowedding-plan .sec-machinaka {
    padding-bottom: 12vw;
    margin-bottom: 17.33vw;
  }
  #photowedding-plan .sec-machinaka .container {
    width: 96.5%;
  }
  #photowedding-plan .sec-machinaka:after {
    border-width: 6.67vw 6.33vw 0 6.33vw;
    left: calc(50% - 6.33vw);
    bottom: -6.6vw;
  }
  #photowedding-plan .sec-machinaka .content {
    margin-top: -3vw;
  }
  #photowedding-plan .sec-price {
    padding-bottom: 17.33vw;
  }
  #photowedding-plan .sec-price .lead {
    margin-bottom: 12vw;
  }
  #photowedding-plan .sec-price .price-figure {
    width: 86.27vw;
    margin: 0 auto;
  }
}


/** 式場コンセプトTOP **/
#hall-concept-top .contents{
    padding-top: 0;
}
.hall-concept-top__mv{
    text-align: center;
    position: relative;
}
.hall-concept-top__mv_txt{
    color: #fff;
    font-size: clamp(33.84px, 2.77vw, 38px);
    font-weight: 600;
    position: absolute;
    top: max(5vw, 66.78px);
    width: 100%;
    letter-spacing: 0.02em;
    line-height: 1.5;
    text-shadow: 0 0 5px rgba(0,0,0,1);
}
@media screen and (max-width: 767px){
    .hall-concept-top__mv_txt{
        font-size: 5.8vw;
        top: 5vw;
    }
}
.hall-concept-top__mv_txt_small{
    font-size: clamp(24.93px, 2.04vw, 28px);
    display: inline-block;
    margin-bottom: 0.5em;
}
@media screen and (max-width: 767px){
    .hall-concept-top__mv_txt_small{
        font-size: 4vw;
    }
}
.hall-concept-top__concept{
    padding: 50px 0 0;
    margin-bottom: 110px;
    color: #874e4c;
}
@media screen and (max-width: 767px){
    .hall-concept-top__concept{
        padding: 9vw 0 0;
        margin-bottom: 18vw;
    }
}
.hall-concept-top__concept_inner{
    max-width: 910px;
    width: 95%;
    margin: 0 auto;
}
.hall-concept-top__concept_lead{
    font-size: 32px;
    line-height: 1.375;
    text-align: center;
    margin-bottom: 1.5em;
}
@media screen and (max-width: 767px){
    .hall-concept-top__concept_lead{
        font-size: 5.4vw;
    }
}
.hall-concept-top__concept_lead_small{
    font-size: 28px;
    display: inline-block;
    margin-bottom: 0.5em;
}
@media screen and (max-width: 767px){
    .hall-concept-top__concept_lead_small{
        font-size: 4.2vw;
    }
}
.hall-concept-top__concept_list{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.hall-concept-top__concept_list li{
    width: 45%;
    text-align: center;
}
@media screen and (max-width: 767px){
    .hall-concept-top__concept_list li{
        width: 100%;
        margin-bottom: 13vw;
    }
    .hall-concept-top__concept_list li:last-child{
        margin-bottom: 0;
    }
}
.hall-concept-top__concept_list_number{
    font-size: 26px;
    font-style: italic;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    line-height: 1.2;
    margin-bottom: 0.8em;
    letter-spacing: -0.02em;
}
@media screen and (max-width: 767px){
    .hall-concept-top__concept_list_number{
        font-size: 4.8vw;
        margin-bottom: 0.5em;
    }
}
.hall-concept-top__concept_list h3{
    font-size: 26px;
    line-height: 1.46;
    margin: 0 0 15px -1em;
    width: calc(100% + 2em);
}
@media screen and (max-width: 767px){
    .hall-concept-top__concept_list h3{
        font-size: 4.8vw;
        margin-bottom: 0.8em;
    }
}
.hall-concept-top__concept_list img{
  width: 100%;
  display: inline-block;
  margin-bottom: 27px;
}
@media screen and (max-width: 767px){
    .hall-concept-top__concept_list img{
        max-width: 100%;
        width: 94.74%;
        margin-bottom: 6vw;
    }
}
.hall-concept-top__concept_list .btn{
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 100%;
    height: 54px;
    border: 1px solid #874e4c;
    font-size: 19px;
    transition: .3s all ease;
    margin: 0 auto;
}
@media screen and (max-width: 767px){
    .hall-concept-top__concept_list .btn{
        font-size: 4vw;
        height: 12vw;
        width: 94.74%;
    }
}
.hall-concept-top__concept_list .btn:hover{
    background: rgba(135,78,76,0.1);
}
.hall-concept-top__bnrarea{
    margin: 0 auto 50px;
    text-align: center;
}
.hall-concept-top__bnrarea a{
    transition: .3s all ease;
}
.hall-concept-top__bnrarea a:hover{
    opacity: 0.8;
}
.hall-concept-top__bnrarea img.sp-hide{
    margin: 0 auto 50px;
    width: 60%;
}
.hall-concept-top__bnrarea img.pc-hide{
    margin: 0 auto 30px;
    width: 90%;
}
.top-fair.hall-concept-top__top-fair{
    margin-bottom: 135px;
}

/** 式場コンセプト下層 **/
#hall-concept-details .contents{
    padding-top: 0;
}
.hall-concept-details__ttl{
    text-align: center;
    color: #874e4c;
    margin: 20px 0 20px;
    font-size: 36px;
    font-weight: 500;
}
@media screen and (max-width: 767px){
    .hall-concept-details__ttl{
        font-size: 7vw;
        margin: 0.6em 0;
    }
}
.hall-concept-details__ttl .small{
    font-size: 18px;
    display: inline-block;
    margin-bottom: 0.5em;
}
@media screen and (max-width: 767px){
    .hall-concept-details__ttl .small{
        font-size: 4vw;
    }
}
.hall-concept-details__lead{
    text-align: center;
    color: #874e4c;
    font-size: 26px;
    margin-bottom: 70px;
    font-weight: 500;
}
@media screen and (max-width: 767px){
    .hall-concept-details__lead{
        font-size: 4.8vw;
        width: 95%;
        margin: 0 auto 3em;
    }
}
.hall-concept-details__secttl{
    text-align: center;
    color: #874e4c;
    margin-bottom: 35px;
}
@media screen and (max-width: 767px){
    .hall-concept-details__secttl{
        margin-bottom: 7vw;
    }
}
.hall-concept-details__secttl h2{
    font-weight: normal;
    font-size: 43px;
}
@media screen and (max-width: 767px){
    .hall-concept-details__secttl h2{
        font-size: 7.5vw;
    }
}
.hall-concept-details__secttl .ja{
    font-size: 20px;
    font-weight: 500;
}
@media screen and (max-width: 767px){
    .hall-concept-details__secttl .ja{
        font-size: 4vw;
    }
}
.hall-concept-details__banquet-wrapper{
    margin-top: 120px;
}
.hall-concept-details__index{
    display: flex;
    justify-content: center;
    color: #874e4c;
    margin: 0 0 65px;
}
@media screen and (max-width: 767px){
    .hall-concept-details__index{
        margin: 0 auto 10vw;
        justify-content: space-between;
        width: 95%;
    }
}
.hall-concept-details__index a{
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 228px;
    height: 74px;
    border: 1px solid #874e4c;
    font-size: 20px;
    margin: 0 50px;
    padding: 0 1em 0 1.2em;
    line-height: 1.2;
    transition: .3s all ease;
    box-sizing: border-box;
}
@media screen and (max-width: 767px){
    .hall-concept-details__index a{
        height: 14vw;
        width: 49%;
        margin: 0;
        font-size: 4vw;
        padding: 0 0.5em;
    }
}
.hall-concept-details__index a:hover{
    background: rgba(135,78,76,0.1);
}
.hall-concept-details__index a:after{
    content: ">";

}
.hall-concept-details__index a .small{
    font-size: 16px;
    font-weight: 500;
}
@media screen and (max-width: 767px){
    .hall-concept-details__index a .small{
        font-size: 3.6vw;
    }
}
#hall-concept-details .banguet{
    margin-bottom: 100px;
}
#hall-concept-details .banguet-point-wrap{
    margin: 20px 0 0;
}
#hall-concept-details .banguet-point__txt{
    margin-bottom: 0;
}
#hall-concept-details .mod-recommend{
    margin-bottom: 150px;
}


/** ベルヴィ盛岡　フォトウェディングページ2 **/
#photowedding-plan2{
  color: #333333;
}
@media screen and (max-width: 767px){
  #photowedding-plan2{
    width: 104.456824512480%;
    margin-left: -2.228412256240%;
  }
}
@media screen and (min-width: 768px){
  #photowedding-plan2 .sp{
    display: none!important;
  }
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .pc{
    display: none!important;
  }
}
#photowedding-plan2 .mv-area .container{
  max-width: 1300px;
  width: 100%;
  margin: 0 auto;
  position: relative;
}
#photowedding-plan2 .mv-area .bg{
  display: block;
  width: 100%;
}
#photowedding-plan2 .mv-area .txt{
  display: block;
  width: 550px;
  position: absolute;
  left: calc(50% - 275px);
  top: calc(50% - 103px);
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .mv-area .txt{
    top: 49vw;
    width: 86.67vw;
    left: calc(50% - 43.335vw);
  }
}
#photowedding-plan2 .sec-ttl{
  text-align: center;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .sec-ttl{
    margin-bottom: 6.00vw;
  }
}
#photowedding-plan2 .sec-ttl .icon{
  width: 70px;
  display: inline-block;
  margin-bottom: 27px;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .sec-ttl .icon{
    width: 9.33vw;
    margin-bottom: 5.33vw;
  }
}
#photowedding-plan2 .sec-ttl .en{
  font-family: "Times New Roman", serif;
  font-size: 42px;
  font-weight: normal;
  line-height: 1.2;
  font-feature-settings: "palt";
  letter-spacing: 0.04em;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .sec-ttl .en{
    font-size: 7.33vw;
  }
}
#photowedding-plan2 .sec-ttl .ja{
  line-height: 1;
  font-size: 24px;
  font-weight: 500;
  font-family: YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo,
    sans-serif;
  margin-top: 0.7em;
  font-feature-settings: "palt";
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .sec-ttl .ja{
    font-size: 4.27vw;
  }
}
#photowedding-plan2 .lead{
  font-size: 18px;
  font-weight: 500;
  font-family: YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo,
    sans-serif;
  line-height: 1.78;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .lead{
    font-size: 3.47vw;
  }
}
#photowedding-plan2 .sec-message{
  position: relative;
  padding: 60px 0 100px;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .sec-message{
    padding: 10.67vw 0 26.67vw;
  }
}
#photowedding-plan2 .sec-message .txt-wrapper{
  display: inline-flex;
  justify-content: center;
  align-items: flex-start;
  position: relative;
}
#photowedding-plan2 .sec-message .heading{
  font-size: 30px;
  font-weight: 500;
  writing-mode: vertical-rl;
  line-height: 1;
  border-right: 1px solid #000;
  padding-right: 0.3em; 
  margin-right: 50px;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .sec-message .heading{
    font-size: 6.13vw;
    margin-right: 4.80vw;
    height: 93.07vw;
    text-align: left;
  }
}
#photowedding-plan2 .sec-message .description-wrapper{
  line-height: 2.3em;
  font-size: 20px;
  font-weight: 500;
  text-align: left;
  margin-top: -0.7em;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .sec-message .description-wrapper{
    font-size: 3.47vw;
  }
}
#photowedding-plan2 .sec-message .description{
  margin-bottom: 2.3em;
}
#photowedding-plan2 .sec-message .description:last-child{
  margin-bottom: 0;
}
#photowedding-plan2 .sec-message .badge{
  position: absolute;
  width: 182px;
  right: -100px;
  bottom: -110px;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .sec-message .badge{
    width: 31.47vw;
    right: 0;
    bottom: -19.73vw;
  }
}
#photowedding-plan2 .sec-plan{
  margin-bottom: 80px;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .sec-plan{
    margin-bottom: 21.33vw;
  }
}
#photowedding-plan2 .sec-plan .lead{
  margin-bottom: 80px;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .sec-plan .lead{
    margin-bottom: 10.67vw;
  }
}
#photowedding-plan2 .plan-list{
  width: 885px;
  margin: 0 auto;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .plan-list{
    width: 92.00vw;
  }
}
#photowedding-plan2 .plan-list li{
  margin-bottom: 96px;
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .plan-list li{
    margin-bottom: 16.00vw;
    justify-content: center;
    flex-wrap: wrap;
  }
}
#photowedding-plan2 .plan-list li:last-child{
  margin-bottom: 0;
}
#photowedding-plan2 .plan-list li .ph{
  width: 334px;
  position: relative;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .plan-list li .ph{
    width: 57.87vw;
    margin-bottom: 8.53vw;
  }
}
#photowedding-plan2 .plan-list li .ph:before{
  content: "";
  display: block;
  background: #fde5e5;
  width: 250px;
  height: 290px;
  z-index: 0;
  position: absolute;
  top: -23px;
  left: -104px;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .plan-list li .ph:before{
    width: 43.33vw;
    height: 50.27vw;
    top: -4.00vw;
    left: -16.67vw;
  }
}
#photowedding-plan2 .plan-list li .ph img{
  width: 100%;
  z-index: 1;
  position: relative;
}
#photowedding-plan2 .plan-list li .txt{
  width: 490px;
  text-align: left;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .plan-list li .txt{
    width: 100%;
  }
}
#photowedding-plan2 .plan-list li .head h3{
  font-family: "Times", serif;
  font-style: italic;
  font-size: 36px;
  line-height: 1;
  font-weight: normal;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .plan-list li .head h3{
    font-size: 6.27vw;
  }
}
#photowedding-plan2 .plan-list li .head h3 .large{
  font-size: 50px;
  margin-left: 0.2em;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .plan-list li .head h3 .large{
    font-size: 8.67vw;
  }
}
#photowedding-plan2 .plan-list li .head .name{
  font-family: YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo,
    sans-serif;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  margin: 0.5em 0 1.5em;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .plan-list li .head .name{
    font-size: 3.07vw;
    margin: 1em 0 1.5em;
  }
}
#photowedding-plan2 .plan-list li .head .price{
  font-family: YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo,
    sans-serif;
  line-height: 1;
  font-size: 34px;
  font-weight: bold;
  margin-bottom: 24px;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .plan-list li .head .price{
    font-size: 5.87vw;
    margin-bottom: 8.53vw;
  }
}
#photowedding-plan2 .plan-list li .head .price .unit{
  font-size: 16px;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .plan-list li .head .price .unit{
    font-size: 2.80vw;
  }
}
#photowedding-plan2 .sec-location .lead{
  margin-bottom: 37px;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .sec-location .lead{
    margin-bottom: 6.67vw;
  }
}
#photowedding-plan2 .sec-location .ph img{
  width: 100%;
}
#photowedding-plan2 .sec-location .subsec{
  padding: 45px 0 100px;
  font-family: YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo,
    sans-serif;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .sec-location .subsec{
    padding: 11.47vw 0 17.33vw;
  }
}
#photowedding-plan2 .sec-location .subsec-ttl{
  font-weight: bold;
  font-size: 24px;
  line-height: 1.3;
  margin-bottom: 1em;
  font-feature-settings: "palt";
  letter-spacing: 0.01em;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .sec-location .subsec-ttl{
    font-size: 5.60vw;
  }
}
#photowedding-plan2 .sec-location .subsec-flow{
  background: #f7ecf1;
}
#photowedding-plan2 .sec-location .subsec-flow .subsec-ttl{
  margin-bottom: 1.5em;
}
#photowedding-plan2 .sec-location .subsec-flow .flow{
  width: 670px;
  margin: 0 0 24px;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .sec-location .subsec-flow .flow{
    width: 90.13vw;
    margin: 0 0 10.40vw;
  }
}
#photowedding-plan2 .sec-location .subsec-flow .description{
  font-weight: bold;
  font-size: 25px;
  line-height: 1.46;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .sec-location .subsec-flow .description{
    font-size: 6.40vw;
    color: #da6967;
  }
}
#photowedding-plan2 .sec-location .subsec-price .lead{
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 30px;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .sec-location .subsec-price .lead{
    font-size: 3.47vw;
    margin-bottom: 12.80vw;
  }
}
#photowedding-plan2 .sec-location .subsec-price .price{
  width: 686px;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .sec-location .subsec-price .price{
    width: 92.00vw;
  }
}
#photowedding-plan2 .cta .cta-txt{
  color: #000;
  font-size: 22px;
  text-align: center;
  line-height: 1.3;
  margin: 0 0 0.8em;
  position: relative;
  font-weight: bold;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .cta .cta-txt{
    font-size: 4.5vw;
  }
}
#photowedding-plan2 .cta .btn{
  display: block;
  width: 343px;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  background: #f26968;
  line-height: 1;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  margin: 0 auto;
  border-radius: 40px;
  transition: 0.3s all ease;
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .cta .btn{
    width: 80vw;
    height: 18.67vw;
    font-size: 5.07vw;
    border-radius: 9.33vw;
  }
}
#photowedding-plan2 .cta .btn:hover{
  transform: scale(1.05);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}
@media screen and (max-width: 767px){
  #photowedding-plan2 .cta .btn:hover{
    box-shadow: 0 0.27vw 0.53vw rgba(0, 0, 0, 0.2);
  }
}
#photowedding-plan2 .cta01{
  padding-bottom: 120px;
}