/*==========================================
  Common
==========================================*/
/* base
==================================*/
h1, h2, h3, h4, h5, h6, p, pre, blockquote, ul, li, ol, dl, dd, tr {
  font-size: 16px;
  line-height: 1.5;
}

h1, h2, h3, h4, h5, h6 {
  line-height: 1;
}

.pc {
  display: none !important;
}

a {
  color: #000;
  text-decoration: none;
}

a:visited {
  color: #000;
}

a:hover {
  color: #000;
  text-decoration: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

a:active {
  color: #000;
}

/* header
==================================*/
header .header_upper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  color: #fff;
  background: #7c6f46;
  height: 30px;
  padding: 0 15px;
}

header .header_upper a {
  color: #fff;
}

header .header_upper a.lang {
  font-size: 14px;
  line-height: 30px;
}

header .header_upper ul {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 0 0 10px;
}

header .header_upper ul::before {
  content: "";
  position: absolute;
  left: -1px;
  background: #a79c7c;
  width: 1px;
  height: 14px;
}

header .header_upper ul li {
  margin: 0 0 0 10px;
}

header .header_upper ul li img {
  vertical-align: baseline;
}

header .header_upper ul li.ig img {
  width: 14px;
  height: 14px;
}

header .header_upper ul li.fb img {
  width: 15px;
  height: 15px;
}

header .header_upper ul li.yt img {
  width: 18px;
  height: 13px;
}

header .header_fixed {
  position: absolute;
  top: 30px;
  left: 0;
  right: 0;
  z-index: 889;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  background: #000;
  width: 100%;
  height: 50px;
}

header .header_fixed .logo {
  margin: 7px 0 0 12px;
}

header .header_fixed .logo img {
  width: 152px;
  height: 32px;
}

header .header_fixed nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

header .header_fixed nav .menu {
  position: relative;
  background: #131313;
  width: 50px;
  height: 50px;
  border-left: 1px solid #1b1b1b;
}

header .header_fixed nav .menu span {
  position: absolute;
  top: 19px;
  left: 0;
  right: 0;
  display: inline-block;
  background: #ebdfbc;
  width: 18px;
  height: 1px;
  margin: 0 auto;
}

header .header_fixed nav .menu span.line-m {
  top: 25px;
}

header .header_fixed nav .menu span.line-b {
  top: 31px;
}

#allMenu {
  display: none;
  position: fixed;
  top: 30px;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 999;
  background: url(../sp/images/common/allMenu_bg.jpg) no-repeat top/cover;
  padding: 0 15px;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

#allMenu * {
  color: #fff;
  font-family: 'Noto Serif JP';
  font-weight: 500;
}

#allMenu .menu {
  position: absolute;
  top: 0;
  right: 0;
  background: #131313;
  width: 50px;
  height: 50px;
  border-left: 1px solid #1b1b1b;
}

#allMenu .menu span {
  position: absolute;
  top: 19px;
  left: 0;
  right: 0;
  display: inline-block;
  background: #ebdfbc;
  width: 18px;
  height: 1px;
  margin: 0 auto;
  -webkit-transition: .3s;
  transition: .3s;
}

#allMenu .menu span.line-t.show {
  top: 25px;
  -webkit-transform: rotate(30deg);
          transform: rotate(30deg);
}

#allMenu .menu span.line-m {
  top: 25px;
}

#allMenu .menu span.line-m.show {
  opacity: 0;
}

#allMenu .menu span.line-b {
  top: 31px;
}

#allMenu .menu span.line-b.show {
  top: 25px;
  -webkit-transform: rotate(-30deg);
          transform: rotate(-30deg);
}

#allMenu nav {
  margin: 80px 0 0;
  border-top: 1px solid #aea896;
}

#allMenu nav ul.first li a {
  display: block;
  color: #ebdfbc;
  padding: 15px 0;
  border-bottom: 1px solid #aea896;
  font-size: 15px;
}

#allMenu nav .c-navWrap p.tl {
  position: relative;
  border-bottom: 1px solid #aea896;
}

#allMenu nav .c-navWrap p.tl::before, #allMenu nav .c-navWrap p.tl::after {
  content: "";
  position: absolute;
  top: 27px;
  right: 12px;
  background: #ebdfbc;
  width: 12px;
  height: 1px;
}

#allMenu nav .c-navWrap p.tl::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  -webkit-transition: .3s;
  transition: .3s;
}

#allMenu nav .c-navWrap p.tl.open::after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  opacity: 0;
}

#allMenu nav .c-navWrap p.tl a {
  display: block;
  color: #ebdfbc;
  width: 50%;
  padding: 15px 0;
  font-size: 15px;
}

#allMenu nav .c-navWrap p.tl span {
  position: absolute;
  top: 0;
  right: 0;
  display: inline-block;
  width: 50%;
  height: 52px;
}

#allMenu nav .c-navWrap ul {
  display: none;
  padding: 12px 0;
  border-bottom: 1px solid #aea896;
}

#allMenu nav .c-navWrap ul li {
  padding: 0 0 0 25px;
}

#allMenu nav .c-navWrap ul li a {
  font-size: 15px;
  line-height: 40px;
}

#allMenu nav ul.other {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

#allMenu nav ul.other li {
  width: calc((100% - 15px) / 2);
  border-bottom: 1px solid #aea896;
}

#allMenu nav ul.other li a {
  display: block;
  padding: 15px 8px;
  font-size: 15px;
  letter-spacing: -0.01em;
}

@media (max-width: 360px) {
  #allMenu nav ul.other li a {
    font-size: 14px;
  }
}

@media (max-width: 340px) {
  #allMenu nav ul.other li a {
    font-size: 12px;
  }
}

#allMenu .otherLinks ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#allMenu .otherLinks ul.sns {
  padding: 50px 0 19px 8px;
  border-bottom: 1px solid #aea896;
}

#allMenu .otherLinks ul.sns li {
  margin-right: 15px;
}

#allMenu .otherLinks ul.sns li.lang {
  position: relative;
  margin-left: 15px;
  font-size: 14px;
}

#allMenu .otherLinks ul.sns li.lang::before {
  content: "";
  position: absolute;
  top: 1px;
  left: -14px;
  background: #5f5f5f;
  width: 2px;
  height: 15px;
}

#allMenu .otherLinks ul.sns li.lang a {
  font-size: 14px;
}

#allMenu .otherLinks ul.sns li.lang a:hover {
  color: #ebdfbc;
  text-decoration: underline;
}

#allMenu .otherLinks ul.sns li img {
  vertical-align: baseline;
}

#allMenu .otherLinks ul.external {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 30px 5px;
}

#allMenu .otherLinks ul.external li {
  margin-right: 25px;
}

@media (max-width: 340px) {
  #allMenu .otherLinks ul.external li {
    margin-right: 12px;
  }
}

#allMenu .otherLinks ul.external li:last-child {
  margin-right: 0;
}

#allMenu .otherLinks ul.external li.hcf img {
  width: 86px;
}

#allMenu .otherLinks ul.external li.act img {
  width: 94px;
}

#allMenu .otherLinks ul.external li.hama img {
  width: 76px;
}

/* footer
==================================*/
footer {
  position: relative;
  background: #000;
  padding: 60px 15px 25px;
}

footer * {
  color: #e2e2e2;
}

footer .footer_upper {
  padding: 0 0 28px;
  border-bottom: 1px solid #303030;
}

footer .footer_upper .left_box .logo {
  margin: 0 0 20px;
}

footer .footer_upper .left_box .logo img {
  width: 223px;
  height: 47px;
}

footer .footer_upper .left_box address {
  font-style: normal;
}

footer .footer_upper .left_box address p {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 14px;
  line-height: 24px;
}

footer .footer_upper .left_box address p:nth-of-type(1) span {
  display: inline-block;
  padding-left: 58px;
  -webkit-transform: translateY(-5px);
          transform: translateY(-5px);
}

footer .footer_upper .left_box address p:nth-of-type(2) {
  padding: 6px 0 0;
  font-size: 16px;
}

footer .footer_upper .left_box address p:nth-of-type(2) span {
  font-size: 24px;
}

footer .footer_upper .right_box ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 45px 0 16px;
}

footer .footer_upper .right_box ul li {
  margin: 0 20px 0 0;
}

footer .footer_upper .right_box ul li.ig img {
  width: 26px;
}

footer .footer_upper .right_box ul li.fb img {
  width: 26px;
}

footer .footer_upper .right_box ul li.yt img {
  width: 28px;
}

footer .footer_upper .right_box a.trip {
  display: inline-block;
  margin: 0 0 6px;
}

footer .footer_upper .right_box a.trip img {
  width: 118px;
}

footer .footer_upper .right_box p {
  color: #919191;
  font-size: 12px;
  line-height: 18px;
}

footer .footer_lower {
  padding: 30px 0 0;
}

footer .footer_lower ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

footer .footer_lower ul li {
  margin-right: 25px;
}

@media (max-width: 340px) {
  footer .footer_lower ul li {
    margin-right: 12px;
  }
}

footer .footer_lower ul li:last-child {
  margin-right: 0;
}

footer .footer_lower ul li.hcf img {
  width: 86px;
}

footer .footer_lower ul li.act img {
  width: 94px;
}

footer .footer_lower ul li.hama img {
  width: 76px;
}

footer .footer_lower .copy {
  margin: 28px 0 0;
  text-align: center;
}

footer .footer_lower .copy small {
  color: #5e5e5e;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 9px;
}

footer .footer_lower .copy small span {
  display: inline-block;
  padding: 8px 0 0;
  color: #474747;
}

#pageTop {
  opacity: 0;
  position: fixed;
  right: 0;
  bottom: 0;
  z-index: 888;
  -webkit-transition: .3s;
  transition: .3s;
}

#pageTop.active {
  opacity: 1;
}

#pageTop a {
  display: block;
  width: 46px;
  height: 46px;
}

/* main
==================================*/
main {
  display: block;
  padding: 50px 0 0;
}

main img {
  width: 100%;
}

main .title_area {
  position: relative;
  height: 40vw;
  max-height: 150px;
  margin: 0 0 50px;
  overflow: hidden;
}

main .title_area .ph {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}

main .title_area h1 {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  color: #fff;
  width: 100%;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 28px;
  text-align: center;
}

main .title_area h1 span {
  display: block;
  padding: 0 0 9px;
  font-size: 12px;
  letter-spacing: 0.12em;
}

main .under_nav {
  display: none;
}

main h2.c-section_tl {
  margin: 0 0 25px;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 26px;
  text-align: center;
}

main h2.c-section_tl span {
  display: block;
  padding: 0 0 10px;
  color: #a40006;
  font-size: 12px;
}

main .c-symbol_message .ph {
  margin: 0 50px 40px 0;
}

main .c-symbol_message .textWrap {
  padding: 0 15px;
}

main .c-symbol_message .textWrap h2 {
  color: rgba(150, 132, 75, 0.2);
  font-family: 'Amiri';
  font-weight: 400;
  font-size: 13.8vw;
  line-height: 0.85;
}

main .c-symbol_message .textWrap p {
  margin: 10px 0 0;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 4.12vw;
  line-height: 2;
}

main table.c-table tbody tr {
  border: 1px solid #e3e3e3;
}

main table.c-table tbody tr th, main table.c-table tbody tr td {
  display: block;
  padding: 17px 20px;
}

main table.c-table tbody tr th {
  background: #eae8e2;
  font-weight: 400;
  text-align: left;
}

main table.c-table tbody tr td span.kome {
  display: inline-block;
  padding-left: 1em;
  text-indent: -1em;
}

main ul.c-list li {
  position: relative;
  margin: 10px 0 0;
  padding-left: 20px;
}

main ul.c-list li::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 0;
  background: #96844b;
  width: 10px;
  height: 10px;
  border-radius: 50%;
}

main a.c-btn {
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  max-width: 305px;
  height: 60px;
  margin: 0 auto;
  border: 1px solid #e3e3e3;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 18px;
  line-height: 58px;
  text-align: center;
}

main a.c-btn2 {
  display: block;
  background: #d8cfb7;
  max-width: 305px;
  height: 60px;
  margin: 0 auto;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 18px;
  line-height: 60px;
  text-align: center;
}

main a.c-more {
  position: relative;
  display: block;
  width: 83px;
  margin: 0 auto;
  padding: 0 14px 0 0;
  font-family: 'Noto Serif JP';
  font-weight: 500;
}

main a.c-more::after {
  content: "";
  position: absolute;
  top: 5px;
  right: 0;
  width: 5px;
  height: 5px;
  border-top: 1px solid #ae0006;
  border-right: 1px solid #ae0006;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  border-radius: 2px;
}

main + .under_nav {
  padding: 0 15px 30px;
}

main + .under_nav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

main + .under_nav ul li {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: calc((100% - 15px) / 2);
  margin: 0 15px 0 0;
  border-bottom: 1px solid #e2e2e2;
}

main + .under_nav ul li:nth-child(2n) {
  margin-right: 0;
}

main + .under_nav ul li:nth-child(-n + 2) {
  border-top: 1px solid #e2e2e2;
}

main + .under_nav ul li a {
  position: relative;
  display: block;
  padding: 17px 0;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 15px;
}

main + .under_nav ul li a.here {
  color: #96844b;
}

/* news-list
================================================ */
.news-list li a {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: 24px;
  padding-bottom: 24px;
  border-top: 1px solid #e2e0d3;
  display: block;
}

.news-list li a:hover {
  background: #eceae1;
}

.news-list li a:hover p {
  color: #b09b5c;
  text-decoration: underline;
}

.news-list li:last-child {
  border-bottom: 1px solid #e2e0d3;
}

.news-list li .date {
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.06em;
  color: #5e5e5e;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  margin-right: 15px;
  display: inline-block;
  width: 95px;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 95px;
          flex: 0 0 95px;
  padding: 3px 5px;
}

.news-list li .category-cat {
  font-size: 12px;
  line-height: 1;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  color: #fff;
  background: #303030;
  width: 65px;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 65px;
          flex: 0 0 65px;
  height: 19px;
  display: inline-block;
  text-align: center;
  padding: 3px 5px;
  margin-right: 22px;
  position: relative;
  top: -2px;
}

.news-list li .category-cat.caution {
  background: #ae0006;
}

.news-list li p {
  display: block;
  margin-top: 10px;
  vertical-align: middle;
}

.news-list li .icon {
  display: inline-block;
  width: 12px;
  height: 12px;
}

.news-list li .icon img {
  display: block;
  max-width: 100%;
  height: auto;
}

/* pager
================================================ */
#Content .pager {
  padding-top: 12px;
  width: 100%;
  text-align: center;
  letter-spacing: -0.4em;
}

#Content .pager .pages {
  display: none;
}

#Content .pager a {
  display: inline-block;
  width: 45px;
  height: 45px;
  text-align: center;
  letter-spacing: 0;
  font-size: 20px;
  line-height: 1;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 5px;
  font-family: "Noto Serif JP", serif;
  padding: 11px 5px;
  color: #000;
  background: #fff;
  border: 1px solid #e3e3e3;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

#Content .pager a:hover {
  color: #fff;
  background: #b09b5c;
  border-color: transparent;
  text-decoration: none;
}

#Content .pager span.current {
  display: inline-block;
  width: 45px;
  height: 45px;
  text-align: center;
  letter-spacing: 0;
  font-size: 20px;
  line-height: 1;
  border: 1px solid #b09b5c;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 5px;
  font-family: "Noto Serif JP", serif;
  padding: 11px 5px;
  color: #ffffff;
  background: #b09b5c;
}

#Content .pager a.previouspostslink,
#Content .pager .comPageBtn li.prev a {
  font-size: 16px;
  background: none;
  width: auto;
  height: auto;
  margin: 0 29px 0 0;
  padding-left: 15px;
  background: url(../images/common/prev.png) no-repeat left center;
  border: none;
}

#Content .pager a.previouspostslink:hover,
#Content .pager .comPageBtn li.prev a:hover {
  color: #000;
  text-decoration: none !important;
  opacity: .75;
}

#Content .pager a.nextpostslink,
#Content .pager .comPageBtn li.next a {
  font-size: 16px;
  background: none;
  width: auto;
  height: auto;
  margin: 0 0 0 29px;
  padding-right: 15px;
  background: url(../images/common/next.png) no-repeat right center;
  border: none;
}

#Content .pager a.nextpostslink:hover,
#Content .pager .comPageBtn li.next a:hover {
  color: #000;
  text-decoration: none !important;
  opacity: .75;
}

#Content .pager .comPageBtn li {
  display: inline;
}

#Content .pager a.first {
  display: none;
}

#Content .pager a.last {
  display: none;
}

#Content .pager .wp-pagenavi {
  margin: 0 -15px;
}

#Content .pager .wp-pagenavi span.extend {
  display: none;
}

#Content .pager a.previouspostslink:hover,
#Content .pager .comPageBtn li.prev a:hover,
#Content .pager a.nextpostslink:hover,
#Content .pager .comPageBtn li.next a:hover {
  text-decoration: underline;
}

main.detail #Content .pager a {
  padding: 16px 15px;
  font-size: 16px;
}

main.detail #Content .pager .prev a {
  margin-right: 19px;
}

main.detail #Content .pager .next a {
  margin-left: 19px;
}

main.detail #Content .pager .back a {
  width: 160px;
  height: 50px;
  margin-right: 0;
}

/* loader
==================================*/
#loader {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #fff;
  z-index: 1001;
}

#loader .item_wrap {
  position: absolute;
  top: 48%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 54px;
  height: 45px;
}

#loader span {
  display: block;
  bottom: 14px;
  width: 9px;
  height: 15px;
  background: #96844b;
  position: absolute;
  -webkit-animation: preloader_1 1.5s  infinite ease-in-out;
          animation: preloader_1 1.5s  infinite ease-in-out;
}

#loader span.item02 {
  left: 11px;
  -webkit-animation-delay: .2s;
          animation-delay: .2s;
}

#loader span.item03 {
  left: 22px;
  -webkit-animation-delay: .4s;
          animation-delay: .4s;
}

#loader span.item04 {
  left: 33px;
  -webkit-animation-delay: .6s;
          animation-delay: .6s;
}

#loader span.item05 {
  left: 44px;
  -webkit-animation-delay: .8s;
          animation-delay: .8s;
}

@-webkit-keyframes preloader_1 {
  0% {
    height: 15px;
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
    background: #96844b;
  }
  25% {
    height: 45px;
    -webkit-transform: translateY(15px);
            transform: translateY(15px);
    background: #960005;
  }
  50% {
    height: 15px;
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
    background: #96844b;
  }
  100% {
    height: 15px;
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
    background: #96844b;
  }
}

@keyframes preloader_1 {
  0% {
    height: 15px;
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
    background: #96844b;
  }
  25% {
    height: 45px;
    -webkit-transform: translateY(15px);
            transform: translateY(15px);
    background: #960005;
  }
  50% {
    height: 15px;
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
    background: #96844b;
  }
  100% {
    height: 15px;
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
    background: #96844b;
  }
}

/* Animation
==================================*/
.c-anim-load,
.c-anim-load02,
.c-anim-load03,
.c-anim-up,
.c-anim-up01,
.c-anim-up02,
.c-anim-up03 {
  -webkit-transform: translate(0, 30px);
          transform: translate(0, 30px);
  opacity: 0;
  -webkit-transition: 1.2s cubic-bezier(0.27, 0.38, 0.37, 0.99);
  transition: 1.2s cubic-bezier(0.27, 0.38, 0.37, 0.99);
}

.move {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  opacity: 1;
}

/*==========================================
  Layout
==========================================*/
/*==================================
  Top
==================================*/
#Top main img {
  max-width: 100%;
}

#Top main h3 {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 24px;
  text-align: center;
}

#Top main #heroArea {
  position: relative;
}

#Top main #heroArea .slick-arrow {
  position: absolute;
  bottom: 0;
  z-index: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #000;
  width: 46px;
  height: 46px;
}

#Top main #heroArea .slick-arrow.prev {
  right: 47px;
}

#Top main #heroArea .slick-arrow.next {
  right: 0;
}

#Top main #heroArea .slick-arrow img {
  width: 7px;
}

#Top main #heroArea .slider {
  display: none;
}

#Top main #heroArea .slider.slick-initialized {
  display: block;
}

#Top main #heroArea h2.catch {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

#Top main #heroArea h2.catch img {
  width: 122px;
}

#Top main #bannerArea {
  margin: 30px 0 50px;
  padding: 0 15px;
}

#Top main #bannerArea ul li {
  margin: 0 0 10px;
}

#Top main #bannerArea ul li:last-child {
  margin-bottom: 0;
}

#Top main #todayEvent {
  margin: 0 0 60px;
  padding: 0 15px;
}

#Top main #todayEvent h3 span {
  display: block;
  padding: 14px 0 0;
  font-size: 14px;
}

#Top main #todayEvent ul {
  margin: 25px 0 0;
}

#Top main #todayEvent ul li {
  position: relative;
  margin: 0 0 30px 0;
}

#Top main #todayEvent ul li:last-child {
  margin-bottom: 0;
}

#Top main #todayEvent ul li::before {
  content: "";
  position: absolute;
  top: 19px;
  left: 0;
  right: 0;
  background: #96844b;
  width: 100%;
  height: 1px;
}

#Top main #todayEvent ul li p.tag {
  color: #fff;
  background: #96844b;
  width: 104px;
  height: 20px;
  margin: 0 0 15px;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 12px;
  line-height: 20px;
  text-align: center;
}

#Top main #todayEvent ul li a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 40px 0 0;
}

#Top main #todayEvent ul li a::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background: #f6f4f0;
  width: 30px;
  height: 30px;
}

#Top main #todayEvent ul li a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 11px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background: url(../images/common/icon_arrow_right_bk.svg) no-repeat center/contain;
  width: 6px;
  height: 10px;
}

#Top main #todayEvent ul li a .ph {
  width: 110px;
  margin: 0 20px 0 0;
  overflow: hidden;
}

#Top main #todayEvent ul li a p {
  width: calc(100% - 110px);
  -webkit-transition: .3s;
  transition: .3s;
}

#Top main #todayEvent ul li a.no-link {
  padding: 0;
  pointer-events: none;
}

#Top main #todayEvent ul li a.no-link::before, #Top main #todayEvent ul li a.no-link::after {
  content: none;
}

#Top main #news {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #f6f4f0;
  padding: 50px 15px;
}

#Top main #news ul {
  margin: 20px 0 0;
  border-top: 1px solid #e2e0d3;
}

#Top main #news ul li {
  border-bottom: 1px solid #e2e0d3;
}

#Top main #news ul li a {
  display: block;
  padding: 16px 0;
}

#Top main #news ul li a p.day {
  color: #5e5e5e;
  font-family: 'Noto Serif JP';
  font-weight: 500;
}

#Top main #news ul li a p.day span {
  display: inline-block;
  color: #fff;
  width: 65px;
  height: 19px;
  margin-left: 20px;
  font-size: 12px;
  text-align: center;
  line-height: 18px;
}

#Top main #news ul li a p.day span.im {
  background: #ae0006;
}

#Top main #news ul li a p.day span.caution {
  background: #ae0006;
}

#Top main #news ul li a p.day span.ne {
  background: #303030;
}

#Top main #news ul li a p.text {
  margin: 5px 0 0;
}

#Top main #news a.c-more {
  margin-top: 30px;
}

#Top main #calender {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #eae8e2;
  padding: 50px 15px;
}

#Top main #calender .box {
  background: #f9f8f6;
  max-width: 345px;
  margin: 25px auto 0;
}

#Top main #calender .box .mc-main {
  position: relative;
  background: #f9f8f6;
  padding: 20px 24px 5px;
}

#Top main #calender .box .mc-main .my-calendar-header .my-calendar-nav ul li {
  margin: 0;
}

#Top main #calender .box .mc-main .my-calendar-header .my-calendar-nav ul li a {
  background: none;
  border: none;
  border-radius: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  width: 9px;
  height: 23px;
  display: block;
  position: absolute;
  top: 45px;
  z-index: 10;
  text-indent: -9999px;
}

#Top main #calender .box .mc-main .my-calendar-header .my-calendar-nav ul li a::before, #Top main #calender .box .mc-main .my-calendar-header .my-calendar-nav ul li a::after {
  content: "";
  margin: 0;
}

#Top main #calender .box .mc-main .my-calendar-header .my-calendar-nav ul li.my-calendar-prev a {
  background: url(/images/common/icon_arrow_left.svg) no-repeat 0 0;
  background-size: 9px 23px;
  left: 12%;
}

#Top main #calender .box .mc-main .my-calendar-header .my-calendar-nav ul li.my-calendar-next a {
  background: url(/images/common/icon_arrow_right.svg) no-repeat 0 0;
  background-size: 9px 23px;
  right: 12%;
}

#Top main #calender .box .mc-main.mini .mc-date {
  max-width: 36px;
  height: 36px;
  padding: 0;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  line-height: 36px;
}

#Top main #calender .box .mc-main.mini caption {
  color: #000;
  margin: 0 0 12px;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 20px;
  line-height: 1;
  text-align: center;
}

#Top main #calender .box .mc-main.mini .details {
  border: none;
  padding: 16px 0 0;
}

#Top main #calender .box .mc-main button.close {
  top: 0;
  z-index: 2;
}

#Top main #calender .box .mc-main button.close .dashicons {
  width: 39px;
  height: 39px;
  border-radius: 0;
}

#Top main #calender .box .mc-main button.close .dashicons:before {
  content: "";
  text-indent: -9999px;
  width: 39px;
  height: 39px;
  display: block;
  background: url(../images/calendar/close.png) no-repeat left top;
  background-size: 39px 39px;
}

#Top main #calender .box .mc-main th {
  color: #5e5e5e !important;
  background: #f9f8f6 !important;
  padding: 0;
}

#Top main #calender .box .mc-main th abbr {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 14px;
}

#Top main #calender .box .mc-main th.sat {
  color: #0f2c7f !important;
}

#Top main #calender .box .mc-main th.sun {
  color: #a40006 !important;
}

#Top main #calender .box .mc-main td {
  border: 7px solid #f9f8f6;
}

#Top main #calender .box .mc-main td.weekend .mc-date {
  color: #a40006;
}

#Top main #calender .box .mc-main td.mcat_mcat_ .mc-date {
  background: #ffdfe0;
}

#Top main #calender .box .mc-main table.my-calendar-table tbody tr.mc-row td.day-with-date:last-child .mc-date {
  color: #0f2c7f !important;
}

#Top main #calender .box .mc-main .has-events .mc-date {
  color: #000;
  background: #fff;
}

#Top main #calender .box .mc-main .current-day .mc-date {
  color: #fff !important;
  background: #b09b5c !important;
  -webkit-box-shadow: none;
          box-shadow: none;
  font-style: normal;
}

#Top main #calender .box .mc-main .calendar-events {
  border: #e2e0d3 1px solid;
  -webkit-box-shadow: none;
          box-shadow: none;
  padding: 25px;
  z-index: 1000;
  top: -10%;
  height: 120%;
  overflow: scroll;
}

#Top main #calender .box .mc-main .calendar-events h3.event-title {
  background: none;
  padding: 32px 0 14px;
  text-align: left;
  border-bottom: #e2e0d3 1px solid;
}

#Top main #calender .box .mc-main .calendar-events .time-block {
  font-size: 16px;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  left: 25px;
  top: 25px;
  position: absolute;
  width: calc(100% - 50px);
  background: #fff;
}

#Top main #calender .box .mc-main .calendar-events .time-block p {
  padding: 0 !important;
}

#Top main #calender .box .mc-main .calendar-events .time-block::before {
  display: none;
}

#Top main #calender .box p.info {
  background: #f9f8f6;
  padding: 11px 24px;
  border-top: 1px solid #eae8e2;
  font-size: 14px;
  line-height: 16px;
}

#Top main #calender .box p.info span {
  display: inline-block;
  background: #ffdfe0;
  width: 16px;
  height: 16px;
  margin-right: 6px;
  vertical-align: bottom;
}

#Top main #event {
  margin: 0 0 70px;
  padding: 74px 0 0;
}

#Top main #event h3 {
  text-align: center;
}

#Top main #event h3 span.en {
  display: block;
  color: #a40006;
  padding: 0 0 15px;
  font-size: 14px;
}

#Top main #event .wrap {
  margin: 30px 0 0;
}

#Top main #event .wrap a.box {
  display: block;
  margin: 0 0 45px;
  text-align: center;
}

#Top main #event .wrap a.box .ph {
  margin: 0 0 20px;
  overflow: hidden;
}

#Top main #event .wrap a.box h4 {
  display: inline-block;
  padding: 0 0 2px;
  border-bottom: 1px solid #000;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 24px;
}

#Top main #event .wrap a.box p {
  color: #5e5e5e;
  padding: 15px 8px 0;
}

#Top main #spNav {
  margin: 0 0 30px;
  padding: 0 15px;
}

#Top main #spNav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

#Top main #spNav ul li {
  width: calc((100% - 15px) / 2);
  border-bottom: 1px solid #e2e2e2;
}

#Top main #spNav ul li a {
  display: block;
  padding: 14px 0;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 15px;
}

#Top main #spNav ul li:nth-child(-n+2) {
  border-top: 1px solid #e2e2e2;
}

#Top main #exLinks {
  margin: 0 0 30px;
  padding: 0 15px;
}

#Top main #exLinks ul li {
  margin-bottom: 10px;
}

#Top main #exLinks ul li:last-child {
  margin-bottom: 0;
}

#Top main #exLinks ul li a {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  max-width: 345px;
  margin: 0 auto;
  padding: 13px 0;
  border: 1px solid #e3e3e3;
  text-align: center;
}

#Top main #exLinks ul li a p {
  color: #5e5e5e;
  padding: 0 0 4px;
  font-size: 11px;
  line-height: 1;
}

#Top main #exLinks ul li.lolo img {
  width: 218px;
}

#Top main #exLinks ul li.andante img {
  width: 125px;
}

/*==================================
  Guide
==================================*/
#Guide main img {
  width: 100%;
}

#Guide main #Content {
  padding: 0 15px 75px;
}

#Guide main section.fee {
  margin: 0 0 80px;
}

#Guide main section.fee .table_wrap {
  margin: 12px 0 0;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

#Guide main section.fee .table_wrap table {
  width: 740px;
}

#Guide main section.fee .table_wrap table thead {
  border: 1px solid #e3e3e3;
  border-bottom: none;
}

#Guide main section.fee .table_wrap table thead tr th {
  background: #f6f4f0;
  padding: 17px 0;
  border-right: 1px solid #fff;
  font-weight: 400;
  line-height: 22px;
  vertical-align: middle;
}

#Guide main section.fee .table_wrap table thead tr th.col01 {
  width: 21%;
  padding: 17px 20px;
  text-align: left;
}

#Guide main section.fee .table_wrap table thead tr th.col02, #Guide main section.fee .table_wrap table thead tr th.col03 {
  width: 12%;
}

#Guide main section.fee .table_wrap table thead tr thcol04 {
  width: 16%;
}

#Guide main section.fee .table_wrap table thead tr th.col05 {
  width: 39%;
  border-right: none;
}

#Guide main section.fee .table_wrap table tbody {
  border: 1px solid #e3e3e3;
}

#Guide main section.fee .table_wrap table tbody tr {
  border: none;
}

#Guide main section.fee .table_wrap table tbody tr th, #Guide main section.fee .table_wrap table tbody tr td {
  display: table-cell;
}

#Guide main section.fee .table_wrap table tbody tr th {
  border-bottom: 1px solid #fff;
}

#Guide main section.fee .table_wrap table tbody tr td {
  border-right: 1px solid #e3e3e3;
  border-bottom: 1px solid #e3e3e3;
  text-align: center;
  vertical-align: middle;
}

#Guide main section.fee .table_wrap table tbody tr:last-child th {
  border-bottom: 1px solid #e3e3e3;
}

#Guide main section.fee .table_wrap table tbody tr:last-child td {
  border-bottom: none;
}

#Guide main section.fee ul.attr {
  padding: 12px 0 0;
}

#Guide main section.fee ul.attr li {
  margin: 0 0 3px;
  padding-left: 1em;
  text-indent: -1em;
  font-size: 14px;
  line-height: 1.4;
}

#Guide main section.fee h4 {
  padding: 42px 0 16px;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 20px;
  text-align: center;
}

#Guide main section.fee .tomonokai {
  margin: 35px 0 0;
  padding: 30px 19px 40px;
  border: 1px solid #e2e0d3;
}

#Guide main section.fee .tomonokai .upper h3 {
  padding: 0 0 15px;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 24px;
  text-align: center;
}

#Guide main section.fee .tomonokai .upper h3 span {
  display: block;
  color: #96844b;
  background: #f6f4f0;
  width: 122px;
  height: 23px;
  margin: 0 auto 3px;
  -webkit-transform: translateY(-4px);
          transform: translateY(-4px);
  font-size: 14px;
  line-height: 23px;
  vertical-align: middle;
}

#Guide main section.fee .tomonokai .upper p {
  padding: 0 0 17px;
}

#Guide main section.fee .tomonokai .benefits {
  background: #f6f4f0;
  margin: 30px 0 0;
  padding: 40px 20px;
}

#Guide main section.fee .tomonokai .benefits h4 {
  color: #96844b;
  padding: 0;
}

#Guide main section.fee .tomonokai .benefits ul {
  margin: 15px 0 0;
}

#Guide main section.fee .tomonokai a.c-btn2 {
  margin: 20px auto 0;
}

#Guide main section.facility .ph {
  margin: 20px 0 0;
}

/*==================================
  Access
==================================*/
#Access main img {
  width: 100%;
}

#Access main #Content {
  padding: 0 15px 75px;
}

#Access main section.map {
  padding: 0 0 75px;
  text-align: center;
}

#Access main section.map h3 {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 20px;
}

#Access main section.map p {
  padding: 10px 0 18px;
}

#Access main section.map .gMap {
  height: 300px;
  margin: 15px 0 0;
}

#Access main section.map .gMap iframe {
  width: 100%;
  height: 100%;
}

#Access main section.map a.c-btn {
  margin: 20px auto 0;
}

#Access main section.train {
  padding: 0 0 75px;
}

#Access main section.train p {
  padding: 15px 0 0;
}

#Access main section.car .inner > p {
  padding: 15px 0 0;
}

#Access main section.car .other {
  background: #f6f4f0;
  margin: 40px 0 0;
  padding: 40px 20px;
}

#Access main section.car .other > div {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#Access main section.car .other > div h3 {
  padding: 0 0 14px;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 24px;
}

#Access main section.car .other .parking {
  padding: 0 0 27px;
  border-bottom: 1px solid #e2e0d3;
}

#Access main section.car .other .parking p a {
  text-decoration: underline;
}

#Access main section.car .other .bus {
  padding: 27px 0 0;
}

#Access main section.car .other .bus a.tel {
  display: inline-block;
  color: #96844b;
  margin: 14px 0 0;
  font-family: 'Noto Serif JP';
  font-weight: 500;
}

#Access main section.car .other .bus a.tel span {
  font-size: 26px;
}

/*==================================
  About
==================================*/
/* ---------------------------------
  index
--------------------------------- */
#About main#index section.message {
  padding: 0 0 68px;
}

#About main#index section.greeting {
  padding: 70px 0;
}

#About main#index section.greeting .inner .ph {
  padding: 35px 0;
}

#About main#index section.greeting .inner p {
  padding: 0 15px;
}

#About main#index section.greeting .inner p.signature {
  padding-top: 22px;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 18px;
  text-align: right;
}

#About main#index section.greeting .inner p.signature span {
  font-size: 16px;
}

/* ---------------------------------
  outline
--------------------------------- */
#About main#outline #Content {
  padding: 0 15px;
}

#About main#outline section.purpose {
  padding: 0 0 70px;
}

#About main#outline section.purpose .ph {
  margin: 0 0 25px;
}

#About main#outline section.purpose .text h3 {
  padding: 24px 0 12px;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 24px;
  text-align: center;
}

#About main#outline section.history {
  padding: 0 0 75px;
}

#About main#outline section.history table {
  width: 100%;
  border-top: 1px solid #e2e0d3;
}

#About main#outline section.history table tr {
  border-bottom: 1px solid #e2e0d3;
}

#About main#outline section.history table tr th, #About main#outline section.history table tr td {
  display: block;
  line-height: 1;
}

#About main#outline section.history table tr th {
  color: #96844b;
  padding: 18px 0 8px;
  font-family: 'Amiri';
  font-weight: 400;
  font-size: 32px;
  text-align: center;
}

#About main#outline section.history table tr th span {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 20px;
}

#About main#outline section.history table tr td {
  padding: 0 0 17px;
}

#About main#outline section.history table tr td ul li {
  position: relative;
  margin: 0 0 11px;
  padding-left: 65px;
}

#About main#outline section.history table tr td ul li:last-child {
  margin-bottom: 0;
}

#About main#outline section.history table tr td ul li span.month {
  position: absolute;
  left: 0;
  display: inline-block;
  width: 40px;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 20px;
  line-height: 1.2;
  text-align: right;
}

#About main#outline section.history table tr td ul li span.month span {
  font-size: 16px;
}

/* ---------------------------------
  equipment
--------------------------------- */
#About main#equipment #Content {
  /*    padding-bottom: 75px;*/
}

#About main#equipment #Content *,
#About main#equipment #Content *:before,
#About main#equipment #Content *:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

#About main#equipment #Content .inner {
  padding: 0 15px 75px;
  margin: auto;
}

#About main#equipment #Content .map-wrap {
  margin-bottom: 38px;
}

#About main#equipment #Content h3 {
  margin: 0 0 10px;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 22px;
}

#About main#equipment #Content .shop .ph {
  margin-bottom: 15px;
}

#About main#equipment #Content .shop .ph img {
  width: 100%;
}

#About main#equipment #Content .shop .text p {
  padding: 0 0 25px;
}

#About main#equipment #Content .shop .text table {
  width: 100%;
}

#About main#equipment #Content .shop .text table tr td {
  word-break: break-all;
}

#About main#equipment #Content .shop .text table tr td a {
  background: url(/images/about/link.svg) no-repeat right center;
  background-size: 12px 12px;
  padding-right: 20px;
}

#About main#equipment #Content .shop .text table tr td a.tel {
  background: none;
  padding: 0;
}

/* ---------------------------------
  tomonokai
--------------------------------- */
#About main#tomonokai #Content {
  margin: auto;
  padding: 0 15px 0;
  padding-bottom: 75px;
}

#About main#tomonokai #Content *,
#About main#tomonokai #Content *:before,
#About main#tomonokai #Content *:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

#About main#tomonokai #Content section {
  padding-bottom: 50px;
}

#About main#tomonokai #Content section:last-child {
  padding-bottom: 0;
}

#About main#tomonokai #Content .map-wrap {
  margin-bottom: 60px;
}

#About main#tomonokai #Content .read-wrap {
  margin-bottom: 35px;
}

#About main#tomonokai #Content .activity-content {
  margin-bottom: 35px;
}

#About main#tomonokai #Content .activity-content > div {
  text-align: center;
  margin-left: -15px;
  margin-right: -15px;
  margin-bottom: 35px;
}

#About main#tomonokai #Content .activity-content > div:last-child {
  margin-bottom: 0;
}

#About main#tomonokai #Content .activity-content > div .ph img {
  max-width: 100%;
  height: auto;
}

#About main#tomonokai #Content .activity-content > div p:not(.ph) {
  text-align: left;
  padding: 15px 40px 0;
}

#About main#tomonokai #Content h3 {
  margin: 0 0 10px;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 22px;
}

#About main#tomonokai #Content .bg-wrap {
  background: #f6f4f0;
  margin: 20px 0 0;
  padding: 30px 20px;
}

#About main#tomonokai #Content .bg-wrap h3 {
  color: #96844b;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 20px;
  line-height: 1.4;
  vertical-align: bottom;
  text-align: center;
}

#About main#tomonokai #Content .bg-wrap h3 small {
  font-size: 16px;
  display: inline-block;
  margin-left: 5px;
}

#About main#tomonokai #Content .bg-wrap .c-list + h3 {
  margin-top: 25px;
}

#About main#tomonokai #Content .fee .inner > p {
  margin-bottom: 35px;
}

#About main#tomonokai #Content .fee .inner > p.swipe_txt {
  margin-bottom: 12px;
}

#About main#tomonokai #Content .fee .inner .table_wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

#About main#tomonokai #Content .fee .inner table {
  width: 890px;
}

#About main#tomonokai #Content .fee .inner table thead {
  border: 1px solid #e3e3e3;
  border-bottom: none;
}

#About main#tomonokai #Content .fee .inner table thead tr th {
  display: table-cell;
  background: #f6f4f0;
  padding: 17px 0;
  border-right: 1px solid #fff;
  font-weight: 400;
  line-height: 22px;
  vertical-align: middle;
}

#About main#tomonokai #Content .fee .inner table thead tr th.col01 {
  width: 21%;
}

#About main#tomonokai #Content .fee .inner table thead tr th.col02, #About main#tomonokai #Content .fee .inner table thead tr th.col03, #About main#tomonokai #Content .fee .inner table thead tr th.col04 {
  width: 19.75%;
}

#About main#tomonokai #Content .fee .inner table thead tr th.col05 {
  border-right: none;
}

#About main#tomonokai #Content .fee .inner table tbody {
  border-top: none;
}

#About main#tomonokai #Content .fee .inner table tbody th {
  display: table-cell;
}

#About main#tomonokai #Content .fee .inner table tbody td {
  display: table-cell;
  border-right: 1px solid #e3e3e3;
  text-align: center;
  vertical-align: middle;
}

#About main#tomonokai #Content .fee .inner table tbody td:last-child {
  border-right: none;
}

#About main#tomonokai #Content .fee .inner .attr {
  margin-top: 10px;
}

#About main#tomonokai #Content .join h2 + p {
  text-align: center;
  margin-bottom: 35px;
}

#About main#tomonokai #Content .join .table_wrap + p {
  margin-top: 15px;
}

#About main#tomonokai #Content .join .c-table {
  width: 100%;
}

/*==================================
  Event
==================================*/
/* ---------------------------------
  index
--------------------------------- */
#Event main#index .info {
  padding: 0 15px 105px;
}

#Event main#index .info .text h3 {
  font-size: 24px;
  line-height: 1.3;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  margin-top: 30px;
  text-align: center;
}

#Event main#index .info .text p {
  padding: 15px 0 25px;
}

#Event main#index .info a.c-btn2 {
  background: #e2ded3;
}

#Event main#index section.schedule {
  padding: 0 15px 72px;
}

#Event main#index section.schedule ul li {
  margin: 0 0 14px;
  border-top: 1px solid #e2e0d3;
  border-bottom: 1px solid #e2e0d3;
}

#Event main#index section.schedule ul li .dayBox {
  background: #f6f4f0;
  padding: 15px 0 13px;
}

#Event main#index section.schedule ul li .dayBox .wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#Event main#index section.schedule ul li .dayBox p {
  font-family: 'Amiri';
  font-weight: 400;
  line-height: 1;
}

#Event main#index section.schedule ul li .dayBox p.year {
  font-size: 14px;
  padding: 0 0 2px;
}

#Event main#index section.schedule ul li .dayBox p.day {
  font-size: 30px;
}

#Event main#index section.schedule ul li .dayBox p.day span.week {
  display: inline-block;
  -webkit-transform: translateY(-3px);
          transform: translateY(-3px);
  font-size: 18px;
}

#Event main#index section.schedule ul li .dayBox p.day span.week span {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  vertical-align: middle;
}

#Event main#index section.schedule ul li .dayBox p.day span.week span.sat {
  color: #0f2c7f;
}

#Event main#index section.schedule ul li .dayBox p.day span.week span.sun {
  color: #a40006;
}

#Event main#index section.schedule ul li .dayBox span.line {
  display: block;
  background: #96844b;
  width: 15px;
  height: 1px;
  margin: 15px 10px 0;
}

#Event main#index section.schedule ul li a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 20px 35px 20px 0;
}

#Event main#index section.schedule ul li a::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background: #f6f4f0;
  width: 30px;
  height: 30px;
  -webkit-transition: .3s;
  transition: .3s;
}

#Event main#index section.schedule ul li a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 12px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background: url(../images/common/icon_arrow_right_bk.svg) no-repeat center/contain;
  width: 6px;
  height: 8px;
}

#Event main#index section.schedule ul li a .ph {
  width: 33.6%;
  border: 1px solid #e2e2e2;
}

#Event main#index section.schedule ul li a .text {
  width: 60.4%;
  margin-left: 6%;
}

#Event main#index section.schedule ul li a .text p.tag {
  display: inline-block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #fff;
  background: #96844b;
  min-width: 120px;
  height: 20px;
  margin: 0 0 5px;
  padding: 0 5px;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 12px;
  line-height: 18px;
  text-align: center;
}

#Event main#index section.schedule ul li a .text p.tl {
  line-height: 1.5;
}

#Event main#index section.schedule a.c-more {
  margin-top: 30px;
}

#Event main#index section.introduction {
  padding: 0 0 25px;
}

#Event main#index section.introduction h2.c-section_tl {
  margin-bottom: 30px;
}

#Event main#index section.introduction ul li {
  margin: 0 0 50px;
  text-align: center;
}

#Event main#index section.introduction ul li a .ph {
  width: 100%;
  height: 150px;
}

#Event main#index section.introduction ul li a h3 {
  padding: 19px 0 2px;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 24px;
  border-bottom: 1px solid #000;
  display: inline-block;
}

#Event main#index section.introduction ul li.e01 .ph {
  background: url(../images/event/index_ph02.jpg) no-repeat center/cover;
}

#Event main#index section.introduction ul li.e02 .ph {
  background: url(../images/event/index_ph03.jpg) no-repeat center/cover;
}

#Event main#index section.introduction ul li.e03 .ph {
  background: url(../images/event/index_ph04.jpg) no-repeat center/cover;
}

#Event main#index section.introduction ul li.e04 .ph {
  background: url(../images/event/index_ph05.jpg) no-repeat center/cover;
}

/*==================================
  Pager
==================================*/
#Event main .pager {
  margin: -46px 0 75px;
}

#Event main .pager .wp-pagenavi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0;
}

#Event main .pager .wp-pagenavi a {
  font-size: 20px;
  line-height: 1;
  text-align: center;
  width: 45px;
  display: inline-block;
  padding: 14px 0 9px;
  border: 1px solid #e3e3e3;
  background: #fff;
  margin: 0 5px;
  font-family: 'Amiri';
  font-weight: 400;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#Event main .pager .wp-pagenavi a.previouspostslink, #Event main .pager .wp-pagenavi a.nextpostslink {
  border: none;
  width: auto;
  padding: 0;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 16px;
}

#Event main .pager .wp-pagenavi a.previouspostslink {
  background: url(../images/common/icon_arrow_left.svg) no-repeat center left;
  background-size: 4px 7px;
  margin-right: 15px;
  padding-left: 14px;
}

#Event main .pager .wp-pagenavi a.nextpostslink {
  background: url(../images/common/icon_arrow_right.svg) no-repeat center right;
  background-size: 4px 7px;
  margin-left: 15px;
  padding-right: 14px;
}

#Event main .pager .wp-pagenavi span.current {
  color: #fff;
  font-size: 20px;
  text-align: center;
  width: 45px;
  display: inline-block;
  background: #b09b5c;
  padding: 14px 0 9px;
  border: 1px solid transparent;
  margin: 0 5px;
  font-family: 'Amiri';
  font-weight: 400;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#Event main .pager .comPageBtn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#Event main .pager .comPageBtn li {
  line-height: 1;
  position: relative;
  font-family: 'Noto Serif JP';
  font-weight: 500;
}

#Event main .pager .comPageBtn li.back {
  margin: 0 20px;
}

#Event main .pager .comPageBtn li.back a {
  text-align: center;
  width: 160px;
  height: auto;
  font-size: 16px;
  display: inline-block;
  padding: 16px 0;
  border: 1px solid #e3e3e3;
  background: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0;
}

#Event main .pager .comPageBtn li.prev a, #Event main .pager .comPageBtn li.next a {
  border: none;
  width: auto;
  padding: 0;
  margin: 0;
}

#Event main .pager .comPageBtn li.prev a {
  background: url(../images/common/icon_arrow_left.svg) no-repeat center left;
  background-size: 4px 7px;
  padding-left: 14px;
}

#Event main .pager .comPageBtn li.next a {
  background: url(../images/common/icon_arrow_right.svg) no-repeat center right;
  background-size: 4px 7px;
  padding-right: 14px;
}

/*==================================
  Event List
==================================*/
#Event main .catelist {
  padding-bottom: 10px;
}

#Event main .catelist .cbox {
  display: table;
  width: 100%;
  margin-bottom: 10px;
}

#Event main .catelist .cbox h3 {
  display: table-cell;
  vertical-align: middle;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  width: 50px;
}

#Event main .catelist .cbox .c select {
  width: 100%;
  text-overflow: ellipsis;
  border: none;
  outline: none;
  background: transparent;
  background-image: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  padding: 10px 40px 10px 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#Event main .catelist .cbox .c select::-ms-expand {
  display: none;
}

#Event main .catelist .cbox .sen {
  position: relative;
  width: 100%;
  background: #FFF;
  border: #e2e0d3 1px solid;
}

#Event main .catelist .cbox .sen::before {
  position: absolute;
  top: 19px;
  right: 14px;
  width: 0;
  height: 0;
  padding: 0;
  content: '';
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid #000000;
  pointer-events: none;
}

/*==================================
  Article
==================================*/
#Event main article {
  margin: 0 15px 86px;
  padding-bottom: 30px;
  border-bottom: #e2e0d3 1px solid;
}

#Event main article p {
  margin: 0 0 30px;
}

#Event main article p img {
  width: auto;
  max-width: 100%;
  height: auto;
}

#Event main article .detail_tl h3 {
  font-size: 20px;
  line-height: 1.5;
  font-weight: 400;
  padding: 7px 0 13px;
  border-bottom: #e2e0d3 1px solid;
  margin-bottom: 30px;
}

#Event main article .detail_tl p.day {
  margin: 0;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  position: relative;
  padding-bottom: 33px;
}

#Event main article .detail_tl p.day .tag {
  font-size: 12px;
  line-height: 1.7;
  color: #fff;
  display: inline-block;
  background: #96844b;
  padding: 0 18px;
  position: absolute;
  left: 0;
  bottom: 0;
}

#Event main article .detail_hon p.ph {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: #e2e2e2 1px solid;
}

#Event main article .detail_hon .txt ul li {
  position: relative;
  padding-left: 84px;
}

#Event main article .detail_hon .txt ul li span {
  position: absolute;
  left: 0;
  top: 0;
}

#Event main article .detail_hon .txt .btn {
  margin: 0;
}

#Event main article .detail_hon .txt .btn a {
  background: #e2ded3;
  margin: 30px auto 0;
  color: #000;
  text-decoration: none;
}

#Event main article .detail_hon .txt h3 {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 18px;
  line-height: 1.5;
}

#Event main article .detail_hon .txt p a {
  color: #96844b;
  text-decoration: underline;
}

/*==================================
  Video
==================================*/
#Event main.Videoroom #Content .video {
  padding-bottom: 70px;
}

#Event main.Videoroom #Content .inner {
  max-width: 480px;
  margin: auto;
  padding-bottom: 45px;
  padding-left: 15px;
  padding-right: 15px;
}

#Event main.Videoroom #Content .inner:last-child {
  padding-bottom: 0;
}

#Event main.Videoroom #Content ul.video-list > li {
  margin-bottom: 30px;
}

#Event main.Videoroom #Content ul.video-list > li .video-wrap {
  font-size: 0;
  line-height: 0;
  position: relative;
}

#Event main.Videoroom #Content ul.video-list > li .video-wrap iframe {
  font-size: 0;
  line-height: 0;
  border: none;
  width: 100%;
  max-width: 480px;
  min-height: 270px;
}

#Event main.Videoroom #Content ul.video-list > li .video-wrap p {
  margin-top: 8px;
  font-size: 14px;
  text-align: right;
}

#Event main.Videoroom #Content ul.video-list > li .video-wrap a {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
}

#Event main.Videoroom #Content ul.video-list > li:last-child {
  margin-bottom: 0;
}

/*==================================
  Calendar
==================================*/
#Calendar main img {
  width: 100%;
}

#Calendar main #Content {
  padding: 0 15px 70px;
}

#Calendar main #Content p.museum-holi {
  text-align: right;
  margin-top: 20px;
  line-height: 30px;
  position: relative;
}

#Calendar main #Content p.museum-holi::before {
  content: "";
  display: inline-block;
  width: 30px;
  height: 30px;
  background: #f4dcdf;
  position: absolute;
  top: 0;
  right: 60px;
}

#Calendar main .mc-main {
  position: relative;
}

#Calendar main .mc-main .my-calendar-header .my-calendar-nav ul li {
  margin: 0;
}

#Calendar main .mc-main .my-calendar-header .my-calendar-nav ul li a {
  background: none;
  border: none;
  border-radius: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  width: 8px;
  height: 16px;
  display: block;
  position: absolute;
  top: 18px;
  z-index: 10;
  text-indent: -9999px;
}

#Calendar main .mc-main .my-calendar-header .my-calendar-nav ul li a::before, #Calendar main .mc-main .my-calendar-header .my-calendar-nav ul li a::after {
  content: "";
  margin: 0;
}

#Calendar main .mc-main .my-calendar-header .my-calendar-nav ul li.my-calendar-prev a {
  background: url(/images/common/icon_arrow_left.svg) no-repeat 0 0;
  background-size: 8px 16px;
  left: calc(50% - 80px);
}

#Calendar main .mc-main .my-calendar-header .my-calendar-nav ul li.my-calendar-next a {
  background: url(/images/common/icon_arrow_right.svg) no-repeat 0 0;
  background-size: 8px 16px;
  right: calc(50% - 80px);
}

#Calendar main .mc-main table.my-calendar-table caption.heading {
  text-align: center;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 22px;
  color: #000;
  margin: -19px 0 15px;
}

#Calendar main .mc-main table.my-calendar-table thead {
  border: #e3e3e3 1px solid;
  border-bottom: none;
}

#Calendar main .mc-main table.my-calendar-table thead th.day-heading,
#Calendar main .mc-main table.my-calendar-table thead th.weekend-heading {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 18px;
  color: #000 !important;
  background: #f6f4f0 !important;
  padding: 15px 0;
  border-bottom: #e3e3e3 1px solid;
}

#Calendar main .mc-main table.my-calendar-table thead th.sun {
  color: #a40006 !important;
}

#Calendar main .mc-main table.my-calendar-table thead th.sat {
  color: #0f2c7f !important;
}

#Calendar main .mc-main table.my-calendar-table tbody tr.mc-row {
  /*td.mcat_mcat_ {
            .mc-date {
              display: block;
              width: 36px;
              background: #f4dcdf !important;
              margin: 14px auto !important;
            }
          }*/
}

#Calendar main .mc-main table.my-calendar-table tbody tr.mc-row td.day-with-date .mc-date {
  text-align: center;
  background: none !important;
  font-family: 'Amiri';
  font-weight: 400;
  font-size: 24px;
  color: #000 !important;
  font-style: normal;
  -webkit-box-shadow: none;
          box-shadow: none;
  margin-top: 14px !important;
  margin-bottom: 14px !important;
  padding: 0;
}

#Calendar main .mc-main table.my-calendar-table tbody tr.mc-row td.day-with-date:first-child .mc-date {
  color: #a40006 !important;
}

#Calendar main .mc-main table.my-calendar-table tbody tr.mc-row td.day-with-date:last-child .mc-date {
  color: #0f2c7f !important;
}

#Calendar main .mc-main table.my-calendar-table tbody tr.mc-row td.day-with-date .mc_rel_event .event-title a:hover,
#Calendar main .mc-main table.my-calendar-table tbody tr.mc-row td.day-with-date .mc_rel_event .event-title a:focus {
  background: #dae8f2 !important;
  /* EVENT DAY */
}

#Calendar main .mc-main table.my-calendar-table tbody tr.mc-row td.day-with-date .mc_rel_mcat2 .event-title a:hover,
#Calendar main .mc-main table.my-calendar-table tbody tr.mc-row td.day-with-date .mc_rel_mcat2 .event-title a:focus {
  background: #f4dcdf !important;
  /* HOLIDAY */
}

#Calendar main .mc-main table.my-calendar-table tbody tr.mc-row td.day-with-date .mc_rel_guidetour .event-title a:hover,
#Calendar main .mc-main table.my-calendar-table tbody tr.mc-row td.day-with-date .mc_rel_guidetour .event-title a:focus {
  background: #dfefce !important;
  /* GUIDE TOUR */
}

#Calendar main .mc-main table.my-calendar-table tbody tr.mc-row td.day-with-date h3 a {
  text-indent: -9999px;
}

#Calendar main .mc-main table.my-calendar-table tbody tr.mc-row td.current-day .mc-date {
  display: block;
  width: 36px;
  background: #b09b5c !important;
  color: #FFF !important;
  margin: 14px auto !important;
}

#Calendar main .mc-main .calendar-events {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 25px;
  -webkit-box-shadow: none;
          box-shadow: none;
  width: 100%;
  left: 0;
  z-index: 1000;
  border: #e2e0d3 1px solid;
}

#Calendar main .mc-main .calendar-events h3.event-title.summary {
  background: none;
  padding: 28px 0 13px;
  font-size: 20px;
  line-height: 1.5;
  border-bottom: #e2e0d3 1px solid;
  font-family: 'Noto Sans JP';
  font-weight: 400;
}

#Calendar main .mc-main .calendar-events .time-block {
  left: 25px;
  top: 25px;
}

#Calendar main .mc-main .calendar-events .details .description {
  margin: 16px 0 0;
}

#Calendar main .mc-main .calendar-events .details .description h3 {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 20px;
  line-height: 1.5;
}

#Calendar main .mc-main .calendar-events .details .description p a {
  color: #96844b;
  text-decoration: underline;
}

#Calendar main .mc-main.mini .close {
  top: 0;
}

#Calendar main .mc-main.mini .close .dashicons {
  width: 39px;
  height: 39px;
  border-radius: 0;
}

#Calendar main .mc-main.mini .close .dashicons:before {
  content: "";
  text-indent: -9999px;
  width: 39px;
  height: 39px;
  display: block;
  background: url(../images/calendar/close.png) no-repeat left top;
  background-size: 39px 39px;
}

#Calendar main .mc-main h2.event-title.summary {
  background: none;
  padding: 28px 0 13px;
  font-size: 20px;
  line-height: 1.5;
  border-bottom: #e2e0d3 1px solid;
  font-family: 'Noto Sans JP';
  font-weight: 400;
}

#Calendar main .mc-main .time-block {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  position: absolute;
  left: 0;
  top: 0;
  font-size: 16px;
}

#Calendar main .mc-main .time-block::before {
  display: none;
}

#Calendar main .mc-main .time-block p {
  padding: 0 !important;
}

#Calendar main .mc-main .details {
  border: none !important;
  padding: 0 !important;
}

#Calendar main .mc-main .details .description {
  margin: 16px 0 60px;
}

#Calendar main .mc-main .details .description h3 {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 18px;
  line-height: 1.5;
}

#Calendar main .mc-main .details .description p a {
  color: #96844b;
  text-decoration: underline;
}

#Calendar main .mc-main .details .view-full a {
  text-align: center;
  width: 160px;
  height: auto;
  margin: 0 auto;
  display: block;
  padding: 16px 0;
  border: 1px solid #e3e3e3;
  background: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 16px;
  line-height: 1;
  font-family: 'Noto Serif JP';
  font-weight: 500;
}

#Calendar main .mc-main .time-block p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#Calendar main .mc-main .time-block p .event-time {
  padding-left: 8px;
}

/*==================================
  Collection
==================================*/
#Collection .under_nav ul li a {
  letter-spacing: -0.01em;
}

@media (max-width: 360px) {
  #Collection .under_nav ul li a {
    letter-spacing: -0.05em;
  }
}

/* ---------------------------------
  index
--------------------------------- */
#Collection main#index section.permanent {
  padding: 0 0 70px;
}

#Collection main#index section.permanent p {
  padding: 0 15px 37px;
}

#Collection main#index section.permanent ul li {
  margin-bottom: 50px;
  text-align: center;
}

#Collection main#index section.permanent ul li:last-child {
  margin-bottom: 0;
}

#Collection main#index section.permanent ul li a h3 {
  padding: 20px 0 2px;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 24px;
  border-bottom: 1px solid #000;
  display: inline-block;
}

#Collection main#index section.concept {
  padding: 0 0 70px;
}

#Collection main#index section.concept .box {
  margin: 42px 0 0;
  padding: 0 15px;
}

#Collection main#index section.concept .box .textWrap h3 {
  padding: 30px 0 15px;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 24px;
}

#Collection main#index section.concept .box .textWrap h4 {
  padding: 25px 0 10px;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 20px;
}

#Collection main#index section.concept .box .textWrap table {
  margin: 18px 0 0;
}

#Collection main#index section.concept .box .textWrap ul {
  margin: 12px 0 0;
}

/*==================================
  Collection Kids
==================================*/
#Collection main.Kids #Content *, #Collection main.Kids #Content *:before, #Collection main.Kids #Content *:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#Collection main.Kids #Content section.kids {
  padding-bottom: 70px;
}

#Collection main.Kids #Content .inner {
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 0 15px 45px;
}

#Collection main.Kids #Content .inner:last-child {
  padding-bottom: 0;
}

#Collection main.Kids #Content p.c-anim-load {
  margin-bottom: 24px;
}

#Collection main.Kids #Content p.c-anim-load + .ph {
  margin-left: -15px;
  margin-right: -15px;
}

#Collection main.Kids #Content h2 {
  font-size: 24px;
  font-weight: 500;
  font-family: 'Noto Serif JP';
  text-align: center;
  line-height: 1.5;
  margin-bottom: 28px;
}

#Collection main.Kids #Content .benefits {
  max-width: 858px;
  background: #f6f4f0;
  margin: 24px auto 24px;
  padding: 20px 30px;
}

#Collection main.Kids #Content .benefits h3 {
  color: #96844b;
  padding: 0;
  font-size: 20px;
  font-weight: 500;
  font-family: 'Noto Serif JP';
}

#Collection main.Kids #Content .benefits ul {
  margin: 15px 0 0;
}

#Collection main.Kids #Content .benefits ul li strong {
  color: #a40006;
}

#Collection main.Kids #Content .sheet-list li {
  position: relative;
  width: 100%;
  font-size: 0;
  line-height: 0;
  margin-bottom: 38px;
}

#Collection main.Kids #Content .sheet-list li:last-child {
  margin-bottom: 0;
}

#Collection main.Kids #Content .sheet-list li .img-wrap {
  padding: 10px 5px;
  border: 1px solid #e3e3e3;
}

#Collection main.Kids #Content .sheet-list li p {
  font-size: 18px;
  line-height: 1.4;
  font-weight: 500;
  font-family: 'Noto Serif JP';
  letter-spacing: 0.08em;
  text-align: center;
  margin-top: 14px;
  display: block;
}

#Collection main.Kids #Content .sheet-list li p .num {
  display: block;
  color: #96844b;
  background: #f6f4f0;
  width: 70px;
  height: 28px;
  margin-right: 10px;
  font-size: 16px;
  line-height: 28px;
  text-align: center;
  vertical-align: middle;
  margin: auto;
  margin-bottom: 8px;
}

#Collection main.Kids #Content .sheet-list li p .caution {
  color: #a40006;
  margin-top: 8px;
  display: block;
}

#Collection main.Kids #Content .sheet-list li a {
  margin-top: 18px;
}

/*==================================
  Collection Kind
==================================*/
#Collection main.Kind #Content section {
  padding-bottom: 75px;
}

#Collection main.Kind #Content section ul.item-list li {
  margin-bottom: 50px;
  text-align: center;
}

#Collection main.Kind #Content section ul.item-list li:last-child {
  margin-bottom: 0;
}

#Collection main.Kind #Content section ul.item-list li a h2 {
  margin-bottom: 18px;
  padding: 20px 0 2px;
  border-bottom: 1px solid #000;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  line-height: 1;
  font-size: 24px;
  display: inline-block;
}

#Collection main.Kind #Content section ul.item-list li a p {
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.06em;
  -webkit-transition: .3s;
  transition: .3s;
  color: #5e5e5e;
  text-align: left;
  padding-left: 15px;
  padding-right: 15px;
}

/*==================================
  Collection Kind Category
==================================*/
#Collection main.Kind.category #Content *, #Collection main.Kind.category #Content ::after, #Collection main.Kind.category #Content ::before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#Collection main.Kind.category #Content .inner {
  padding-left: 15px;
  padding-right: 15px;
}

#Collection main.Kind.category #Content ul.item-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

#Collection main.Kind.category #Content ul.item-list li a p {
  font-size: 14px;
}

#Collection main.Kind.category #Content .category-nav {
  margin-bottom: 30px;
}

#Collection main.Kind.category #Content .category-nav > h2 {
  font-size: 24px;
  line-height: 1;
  letter-spacing: 0.12em;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  text-align: center;
  margin-bottom: 30px;
}

#Collection main.Kind.category #Content .category-nav > .cbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#Collection main.Kind.category #Content .category-nav > .cbox p {
  font-size: 18px;
  line-height: 1;
  letter-spacing: 0.06em;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  margin-right: 10px;
}

#Collection main.Kind.category #Content .category-nav > .cbox .c_sen {
  width: calc(100% - 143px);
}

#Collection main.Kind.category #Content ul.item-list {
  margin-left: -10px;
  margin-right: -10px;
}

#Collection main.Kind.category #Content ul.item-list > li {
  position: relative;
  width: 100%;
  min-height: 1px;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  max-width: 50%;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 38px;
}

#Collection main.Kind.category #Content ul.item-list > li a {
  display: block;
  text-align: left;
}

#Collection main.Kind.category #Content ul.item-list > li a .img-wrap {
  overflow: hidden;
}

#Collection main.Kind.category #Content ul.item-list > li a .img-wrap img {
  -webkit-transition: .3s;
  transition: .3s;
  width: 100%;
}

#Collection main.Kind.category #Content ul.item-list > li a p {
  font-size: 16px;
  line-height: 1.315;
  letter-spacing: 0.08em;
  color: #000;
  text-align: left;
  padding: 12px 0 0;
  text-decoration: underline;
}

.c_sen {
  overflow: hidden;
  width: 100%;
  text-align: center;
}

.c_sen select {
  width: 100%;
  padding-right: 1em;
  cursor: pointer;
  text-indent: 0.01px;
  text-overflow: ellipsis;
  border: none;
  outline: none;
  background: transparent;
  background-image: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}

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

.c_sen {
  position: relative;
  border: 1px solid #e2e0d3;
  background: #ffffff;
}

.c_sen select {
  padding: 14px 48px 14px 18px;
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: 0.06em;
  color: #000;
}

.c_sen::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: 1em;
  width: 0;
  height: 0;
  padding: 0;
  margin: auto;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #000000;
  pointer-events: none;
}

/*==================================
  Collection Kind Detail
==================================*/
#Collection main.Kind.detail #Content .inner {
  padding-left: 15px;
  padding-right: 15px;
}

#Collection main.Kind.detail #Content .inner .middle-content {
  margin-top: 60px;
  margin-bottom: 45px;
}

#Collection main.Kind.detail #Content .inner .middle-content .flex-wrap > div h2 {
  font-size: 20px;
  line-height: 1;
  letter-spacing: 0.12em;
  font-family: "Noto Serif JP", serif;
  text-align: left;
  margin-bottom: 15px;
}

#Collection main.Kind.detail #Content .inner .middle-content .flex-wrap > div p {
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.06em;
  text-align: left;
  margin-bottom: 28px;
}

#Collection main.Kind.detail #Content .inner .middle-content .flex-wrap > div .c-btn2 {
  font-size: 18px;
  background-color: #e2ded3;
}

#Collection main.Kind.detail #Content .inner .middle-content .flex-wrap > div .c-table {
  width: 100%;
  margin-top: 50px;
}

#Collection main.Kind.detail #Content .inner .middle-content .flex-wrap > div .c-table tr th {
  text-align: left;
  padding: 19px 20px;
}

#Collection main.Kind.detail #Content .inner .middle-content .flex-wrap > div .c-table tr td {
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: 0;
  -webkit-font-feature-settings: 'palt';
          font-feature-settings: 'palt';
  text-align: left;
  padding: 19px 20px;
}

#Collection main.Kind.detail #Content .inner .video-wrap {
  font-size: 0;
  line-height: 0;
  text-align: center;
  position: relative;
}

#Collection main.Kind.detail #Content .inner .video-wrap iframe {
  width: 100%;
  height: 194px;
}

#Collection main.Kind.detail #Content .inner .video-wrap a {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
}

#Collection main.Kind.detail #Content .inner .pager {
  padding-top: 50px;
}

#Collection main.Kind.detail #Content .inner .pager a {
  padding: 16px 15px;
  font-size: 16px;
}

#Collection main.Kind.detail #Content .inner .pager .back a {
  width: 160px;
  height: 50px;
  margin-right: 0;
}

#Collection main.Kind.detail #Content .inner .slick-dots li {
  width: 30px;
  height: 10px;
}

#Collection main.Kind.detail #Content .inner .slick-dots li button {
  width: 30px;
  height: 2px;
}

#Collection main.Kind.detail #Content .inner .slick-dots li button:before {
  content: "";
  width: 30px;
  height: 2px;
  background-color: #e2e2e2;
  opacity: 1;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}

#Collection main.Kind.detail #Content .inner .slick-dots li.slick-active button:before {
  -webkit-transition: all .3s;
  transition: all .3s;
  background-color: #7c6f46;
}

#Collection main.Kind.detail #Content .inner .slick-prev {
  left: 20px;
  z-index: 1;
  width: 13px;
  height: 29px;
}

#Collection main.Kind.detail #Content .inner .slick-prev:before {
  content: "";
  background: url("../images/common/slick_prev.svg");
  background-repeat: no-repeat;
  background-position: left;
  background-size: contain;
  width: 13px;
  height: 29px;
  display: block;
}

#Collection main.Kind.detail #Content .inner .slick-next {
  right: 20px;
  z-index: 1;
  width: 13px;
  height: 29px;
}

#Collection main.Kind.detail #Content .inner .slick-next:before {
  content: "";
  background: url("../images/common/slick_next.svg");
  background-repeat: no-repeat;
  background-position: right;
  background-size: contain;
  width: 13px;
  height: 29px;
  display: block;
}

/*==================================
  Room
==================================*/
#Collection main.Room #Content *, #Collection main.Room #Content ::after, #Collection main.Room #Content ::before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#Collection main.Room #Content p.text-center {
  margin-bottom: 18px;
}

#Collection main.Room #Content p.text-center + .ph {
  margin-left: -15px;
  margin-right: -15px;
}

#Collection main.Room #Content .inner {
  max-width: 1080px;
  margin-left: auto;
  margin-right: auto;
  padding: 0 15px 37px;
}

#Collection main.Room #Content .inner + .inner {
  padding-bottom: 33px;
}

#Collection main.Room #Content p.c-anim-load01 {
  margin-bottom: 38px;
}

#Collection main.Room #Content .room .info {
  margin: 0 auto;
  padding-bottom: 37px;
}

#Collection main.Room #Content .room .info .text h2 {
  font-size: 24px;
  font-weight: 500;
  font-family: 'Noto Serif JP';
  padding: 30px 0 15px;
}

#Collection main.Room #Content .room p.c-anim-load01 + .ph {
  margin-left: -15px;
  margin-right: -15px;
}

#Collection main.Room table.c-table {
  display: block;
  width: 100%;
  margin-top: 18px;
  margin-bottom: 8px;
}

#Collection main.Room table.c-table * {
  display: block;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#Collection main.Room table.c-table tr:nth-child(2) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

#Collection main.Room table.c-table tr:nth-child(2) > td {
  position: relative;
  width: 100%;
  min-height: 1px;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  max-width: 50%;
}

#Collection main.Room table.c-table tr:nth-child(2) > td:nth-child(odd) {
  border-right: 1px solid #e3e3e3;
}

#Collection main.Room table.c-table tr:nth-child(2) > td:nth-child(-n+2) {
  border-bottom: 1px solid #e3e3e3;
}

/*==================================
  Room
==================================*/
#Collection main.Videoroom #Content section.video {
  padding-bottom: 70px;
}

#Collection main.Videoroom #Content .inner {
  max-width: 480px;
  margin: auto;
  padding-bottom: 45px;
  padding-left: 15px;
  padding-right: 15px;
}

#Collection main.Videoroom #Content .inner:last-child {
  padding-bottom: 0;
}

#Collection main.Videoroom #Content ul.video-list > li {
  margin-bottom: 30px;
}

#Collection main.Videoroom #Content ul.video-list > li .video-wrap {
  font-size: 0;
  line-height: 0;
  position: relative;
  /*iframe {
            font-size: 0;
            line-height: 0;
            border: none;
            width: 100%;
            max-width: 480px;
            min-height: 270px;
          }*/
}

#Collection main.Videoroom #Content ul.video-list > li .video-wrap .videobox {
  font-size: 0;
  line-height: 0;
  border: none;
  width: 100%;
  max-width: 480px;
  padding-top: 56.25%;
  position: relative;
}

#Collection main.Videoroom #Content ul.video-list > li .video-wrap .videobox iframe {
  font-size: 0;
  line-height: 0;
  border: none;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

#Collection main.Videoroom #Content ul.video-list > li .video-wrap p {
  margin-top: 8px;
  font-size: 14px;
  text-align: right;
}

#Collection main.Videoroom #Content ul.video-list > li .video-wrap a {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
}

#Collection main.Videoroom #Content ul.video-list > li:last-child {
  margin-bottom: 0;
}

/*==================================
  Collection Area
==================================*/
#Collection main.Area #Content section {
  padding-bottom: 75px;
}

#Collection main.Area #Content section ul.item-list li {
  margin-bottom: 50px;
  text-align: center;
}

#Collection main.Area #Content section ul.item-list li:last-child {
  margin-bottom: 0;
}

#Collection main.Area #Content section ul.item-list li a h2 {
  margin-bottom: 18px;
  padding: 20px 0 2px;
  border-bottom: 1px solid #000;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  line-height: 1;
  font-size: 24px;
  display: inline-block;
}

#Collection main.Area #Content section ul.item-list li a p {
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.06em;
  -webkit-transition: .3s;
  transition: .3s;
  color: #5e5e5e;
  text-align: left;
  padding-left: 15px;
  padding-right: 15px;
}

/*==================================
  Collection Area Category
==================================*/
#Collection main.Area.Category #Content *, #Collection main.Area.Category #Content ::after, #Collection main.Area.Category #Content ::before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#Collection main.Area.Category #Content .inner {
  padding-left: 15px;
  padding-right: 15px;
}

/*==================================
  Collection Area Dummy
==================================*/
#Collection main.Area.Dummy #Content *, #Collection main.Area.Dummy #Content ::after, #Collection main.Area.Dummy #Content ::before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#Collection main.Area.Dummy #Content .inner {
  padding-left: 15px;
  padding-right: 15px;
}

#Collection main.Area.Dummy #Content section {
  padding: 0 0 50px;
  text-align: center;
}

#Collection main.Area.Dummy #Content section:last-child {
  padding-bottom: 75px;
}

#Collection main.Area.Dummy #Content section .flex-wrap p {
  text-align: left;
  margin-bottom: 15px;
}

#Collection main.Area.Dummy #Content section .img-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 35px;
  margin-left: -5px;
  margin-right: -5px;
}

#Collection main.Area.Dummy #Content section .img-list > li {
  width: 50%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
  position: relative;
  min-height: 1px;
  padding-left: 5px;
  padding-right: 5px;
}

#Collection main.Area.Dummy #Content section .img-list > li:last-child {
  width: 100%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
  margin-top: 10px;
}

#Collection main.Area.Dummy #Content section .img-list > li > img {
  max-width: 100%;
  height: auto;
}

#Collection main.Area.Dummy #Content section .bottom-content {
  margin-top: 20px;
}

#Collection main.Area.Dummy #Content section .c-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-left: -10px;
  margin-right: -10px;
}

#Collection main.Area.Dummy #Content section .c-list li {
  width: 50%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
  position: relative;
  min-height: 1px;
  text-align: left;
  padding-left: 25px;
  padding-right: 10px;
}

#Collection main.Area.Dummy #Content section .c-list li:before {
  left: 10px;
}

/*==================================
  Research
==================================*/
#Research main *,
#Research main *:before,
#Research main *:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#Research main #Content {
  padding-bottom: 70px;
}

#Research main #Content .box {
  margin: 42px 0 0;
  padding: 0 15px;
}

#Research main #Content .box .ph ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 15px;
  margin-left: -5px;
  margin-right: -5px;
}

#Research main #Content .box .ph ul li {
  width: 50%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
  padding-left: 5px;
  padding-right: 5px;
}

#Research main #Content .box .ph img {
  max-width: 100%;
  height: auto;
}

#Research main #Content .box .textWrap h2 {
  padding: 30px 0 15px;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 24px;
}

/*==================================
  Publish
==================================*/
#Publish main #Content *,
#Publish main #Content *:before,
#Publish main #Content *:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#Publish main #Content .read-content {
  margin-top: 30px;
  margin-bottom: 30px;
  padding-left: 15px;
  padding-right: 15px;
}

#Publish main #Content .read-content p {
  margin-bottom: 15px;
}

#Publish main #Content .read-content p a {
  border-bottom: 1px solid #000;
  cursor: pointer;
}

#Publish main #Content .read-content .banner-list {
  max-width: 225px;
  margin: auto;
}

#Publish main #Content .read-content .banner-list li {
  text-align: center;
}

#Publish main #Content .read-content .banner-list li:first-child {
  margin-bottom: 10px;
}

#Publish main #Content section {
  padding-bottom: 75px;
}

#Publish main #Content section ul.item-list li {
  margin-bottom: 50px;
  text-align: center;
}

#Publish main #Content section ul.item-list li:last-child {
  margin-bottom: 0;
}

#Publish main #Content section ul.item-list li:last-child h2 {
  width: 280px;
}

#Publish main #Content section ul.item-list li a h2 {
  margin-bottom: 18px;
  padding: 20px 0 2px;
  border-bottom: 1px solid #000;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  line-height: 1;
  font-size: 24px;
  display: inline-block;
}

#Publish main #Content section ul.item-list li a p {
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.06em;
  -webkit-transition: .3s;
  transition: .3s;
  color: #5e5e5e;
  text-align: left;
  padding-left: 15px;
  padding-right: 15px;
}

/*==================================
  Publish Category
==================================*/
#Publish main.Category #Content *,
#Publish main.Category #Content ::after,
#Publish main.Category #Content ::before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#Publish main.Category #Content .inner {
  padding-left: 15px;
  padding-right: 15px;
}

#Publish main.Category #Content ul.item-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

#Publish main.Category #Content ul.item-list li a p {
  font-size: 14px;
}

#Publish main.Category #Content .category-nav {
  margin-bottom: 30px;
}

#Publish main.Category #Content .category-nav > h2 {
  font-size: 24px;
  line-height: 1;
  letter-spacing: 0.12em;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  text-align: center;
  margin-bottom: 30px;
}

#Publish main.Category #Content .category-nav > .cbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#Publish main.Category #Content .category-nav > .cbox p {
  font-size: 18px;
  line-height: 1;
  letter-spacing: 0.06em;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  margin-right: 10px;
  white-space: nowrap;
}

#Publish main.Category #Content .category-nav > .cbox .c_sen {
  width: calc(100% - 143px);
}

#Publish main.Category #Content ul.item-list {
  margin-left: -10px;
  margin-right: -10px;
}

#Publish main.Category #Content ul.item-list > li {
  position: relative;
  width: 100%;
  min-height: 1px;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  max-width: 50%;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 38px;
}

#Publish main.Category #Content ul.item-list > li a {
  display: block;
}

#Publish main.Category #Content ul.item-list > li a .img-wrap {
  overflow: hidden;
  height: 47.05vw;
  max-height: 400px;
}

#Publish main.Category #Content ul.item-list > li a .img-wrap img {
  -webkit-transition: .3s;
  transition: .3s;
}

#Publish main.Category #Content ul.item-list > li a p {
  font-size: 18px;
  line-height: 1.5;
  letter-spacing: 0.08em;
  color: #000;
  text-align: left;
  padding: 12px 0 0;
  text-decoration: underline;
}

/*==================================
  Publish Detail
==================================*/
#Publish main.Detail #Content .inner {
  margin: auto;
  padding-left: 15px;
  padding-right: 15px;
}

#Publish main.Detail #Content .inner .single-item img {
  max-width: 100%;
  height: auto;
  margin: auto;
}

#Publish main.Detail #Content .inner .name-wrap {
  padding: 30px 15px;
  background-color: #f6f4f0;
  margin-top: 65px;
  margin-left: -15px;
  margin-right: -15px;
}

#Publish main.Detail #Content .inner .name-wrap .flex-wrap > div {
  position: relative;
  width: 100%;
}

#Publish main.Detail #Content .inner .name-wrap .flex-wrap > div h2 {
  font-size: 20px;
  line-height: 1.4;
  letter-spacing: 0.12em;
  font-family: 'Noto Serif JP';
  font-weight: 500;
}

#Publish main.Detail #Content .inner .name-wrap .flex-wrap > div p {
  font-size: 14px;
  line-height: 1.1;
  letter-spacing: 0.12em;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  margin-top: 5px;
}

#Publish main.Detail #Content .inner .name-wrap .flex-wrap > div p strong {
  font-size: 20px;
  letter-spacing: 0.12em;
}

#Publish main.Detail #Content .inner .name-wrap .flex-wrap > div .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 20px;
  margin-left: -5px;
  margin-right: -5px;
}

#Publish main.Detail #Content .inner .name-wrap .flex-wrap > div .flex li {
  padding-left: 5px;
  padding-right: 5px;
}

#Publish main.Detail #Content .inner .name-wrap .flex-wrap > div .flex li img {
  width: 100%;
}

#Publish main.Detail #Content .inner .bottom-content {
  margin-top: 38px;
}

#Publish main.Detail #Content .inner .bottom-content h1,
#Publish main.Detail #Content .inner .bottom-content h3 {
  padding-bottom: 13px;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 20px;
}

#Publish main.Detail #Content .inner .bottom-content ul li {
  margin-bottom: 30px;
}

#Publish main.Detail #Content .inner .bottom-content .tl {
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: 0.06em;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  margin-bottom: 5px;
  display: block;
}

#Publish main.Detail #Content .inner .bottom-content p:not(.tl) {
  font-size: 16px;
  letter-spacing: .06em;
  margin-bottom: 30px;
}

#Publish main.Detail #Content .inner .bottom-content p:not(.tl) strong {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-weight: bold;
  font-size: 20px;
}

#Publish main.Detail #Content .inner .bottom-content p:not(.tl) a {
  color: #b09b5c;
  text-decoration: underline;
}

#Publish main.Detail #Content .inner .bottom-content table.tablepress {
  width: 100%;
  border: #e3e3e3 1px solid;
}

#Publish main.Detail #Content .inner .bottom-content table.tablepress .column-1 {
  width: 66px;
  text-align: center;
  font-weight: 400;
  background: #eae8e2;
  border-bottom: #fff 1px solid;
  vertical-align: middle;
}

#Publish main.Detail #Content .inner .bottom-content table.tablepress .column-2 {
  text-align: left;
  font-weight: 400;
  padding: 20px;
  border-bottom: 1px solid #e3e3e3;
  word-break: break-all;
}

#Publish main.Detail #Content .inner .bottom-content table.tablepress th.column-2 {
  background: #f6f4f0;
  border-left: #fff 1px solid;
}

#Publish main.Detail #Content .inner .bottom-content table.tablepress tbody tr:last-child td.column-1,
#Publish main.Detail #Content .inner .bottom-content table.tablepress tbody tr:last-child td.column-2 {
  border-bottom: none;
}

#Publish main.Detail #Content .inner .table-wrap .c-table {
  margin-top: 20px;
}

#Publish main.Detail #Content .inner .table-wrap .c-table thead tr {
  border-top: 1px solid #e3e3e3;
}

#Publish main.Detail #Content .inner .table-wrap .c-table thead tr th {
  background: #f6f4f0;
  padding: 22px 25px;
  border-right: 1px solid #e3e3e3;
  text-align: left;
}

#Publish main.Detail #Content .inner .table-wrap .c-table thead tr th:first-child {
  background: #eae8e2;
  width: 66px;
  padding: 22px 0;
  border-bottom: 1px solid #fff;
  font-weight: 400;
  vertical-align: middle;
  text-align: center;
}

#Publish main.Detail #Content .inner .table-wrap .c-table tbody tr th {
  width: 66px;
  text-align: center;
}

#Publish main.Detail #Content .inner .table-wrap .c-table tbody tr th,
#Publish main.Detail #Content .inner .table-wrap .c-table tbody tr td {
  display: table-cell;
}

#Publish main.Detail #Content .inner .pager {
  padding-top: 50px;
}

#Publish main.Detail #Content .inner .slick-dots li {
  width: 30px;
  height: 10px;
}

#Publish main.Detail #Content .inner .slick-dots li button {
  width: 30px;
  height: 2px;
}

#Publish main.Detail #Content .inner .slick-dots li button:before {
  content: "";
  width: 30px;
  height: 2px;
  background-color: #e2e2e2;
  opacity: 1;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}

#Publish main.Detail #Content .inner .slick-dots li.slick-active button:before {
  -webkit-transition: all .3s;
  transition: all .3s;
  background-color: #7c6f46;
}

#Publish main.Detail #Content .inner .slick-prev {
  left: 20px;
  z-index: 1;
  width: 13px;
  height: 29px;
}

#Publish main.Detail #Content .inner .slick-prev:before {
  content: "";
  background: url("../images/common/slick_prev.svg");
  background-repeat: no-repeat;
  background-position: left;
  background-size: contain;
  width: 13px;
  height: 29px;
  display: block;
}

#Publish main.Detail #Content .inner .slick-next {
  right: 20px;
  z-index: 1;
  width: 13px;
  height: 29px;
}

#Publish main.Detail #Content .inner .slick-next:before {
  content: "";
  background: url("../images/common/slick_next.svg");
  background-repeat: no-repeat;
  background-position: right;
  background-size: contain;
  width: 13px;
  height: 29px;
  display: block;
}

/*==================================
  Publish Letter
==================================*/
#Publish main.Letter #Content .inner {
  padding-left: 15px;
  padding-right: 15px;
  margin: auto;
}

#Publish main.Letter #Content .inner .pager {
  margin-top: 45px;
  padding-top: 0;
}

#Publish main.Letter #Content .inner .news-list li p {
  padding-left: 1em;
  position: relative;
}

#Publish main.Letter #Content .inner .news-list li .icon {
  position: absolute;
  top: 0.45em;
  left: 0;
}

/*==================================
  News
==================================*/
#News main #Content {
  padding-bottom: 75px;
}

#News main #Content *, #News main #Content *:before, #News main #Content *:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#News main #Content .inner {
  max-width: 1080px;
  margin: auto;
  padding-left: 15px;
  padding-right: 15px;
}

#News main #Content .inner .pager {
  margin-top: 45px;
  padding-top: 0;
}

#News main #Content .inner .categorybox {
  margin-bottom: 20px;
}

#News main #Content .inner .categorybox .cbox {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#News main #Content .inner .categorybox .cbox:first-child {
  margin-bottom: 10px;
}

#News main #Content .inner .categorybox .cbox p {
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.06em;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  min-width: 100px;
}

#News main #Content .inner .categorybox .cbox .c_sen {
  width: calc(100% - 100px);
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(100% - 100px);
          flex: 0 0 calc(100% - 100px);
}

#News main article {
  margin: 0 15px 34px;
  border-bottom: #e2e0d3 1px solid;
}

#News main article p {
  margin: 0 0 30px;
}

#News main article p img {
  width: auto;
  max-width: 100%;
  height: auto;
}

#News main article .detail_tl h2 {
  font-size: 20px;
  line-height: 1.5;
  font-weight: 400;
  padding: 7px 0 13px;
  border-bottom: #e2e0d3 1px solid;
  margin-bottom: 30px;
}

#News main article .detail_tl p.day {
  margin: 0;
  font-family: 'Noto Serif JP';
  font-weight: 500;
  color: #5e5e5e;
}

#News main article .detail_tl p.day .tag {
  display: inline-block;
  color: #fff;
  width: 65px;
  height: 19px;
  margin-left: 20px;
  font-size: 12px;
  text-align: center;
  line-height: 1.5;
  background: #303030;
}

#News main article .detail_tl p.day .tag.im {
  background: #ae0006;
}

#News main article .detail_tl p.day .tag.caution {
  background: #ae0006;
}

#News main article .detail_hon h3 {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 20px;
  line-height: 1.5;
  padding-bottom: 6px;
}

#News main article .detail_hon a {
  color: #b09b5c;
  text-decoration: underline;
}

#News main .detail .comPageBtn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#News main .detail .comPageBtn li {
  line-height: 1;
  position: relative;
  font-family: 'Noto Serif JP';
  font-weight: 500;
}

#News main .detail .comPageBtn li.back {
  margin: 0 20px;
}

#News main .detail .comPageBtn li.back a {
  text-align: center;
  width: 160px;
  height: auto;
  font-size: 16px;
  display: inline-block;
  padding: 16px 0;
  border: 1px solid #e3e3e3;
  background: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0;
}

#News main .detail .comPageBtn li.prev a, #News main .detail .comPageBtn li.next a {
  border: none;
  width: auto;
  padding: 0;
  margin: 0;
}

#News main .detail .comPageBtn li.prev a {
  background: url(../images/common/icon_arrow_left.svg) no-repeat center left;
  background-size: 4px 7px;
  padding-left: 14px;
}

#News main .detail .comPageBtn li.next a {
  background: url(../images/common/icon_arrow_right.svg) no-repeat center right;
  background-size: 4px 7px;
  padding-right: 14px;
}

/*==================================
  Contact
==================================*/
#Contact main img {
  width: 100%;
}

#Contact main .ERR {
  color: #a40006;
}

#Contact main #Content {
  padding: 0 15px 75px;
}

#Contact main #Content p.lead {
  margin-bottom: 30px;
}

#Contact main #Content p.lead a {
  text-decoration: underline;
}

#Contact main .form_wrap table {
  width: 100%;
}

#Contact main .form_wrap table tr th {
  display: block;
  font-weight: 400;
  text-align: left;
}

#Contact main .form_wrap table tr th span.need {
  color: #a40006;
  font-size: 14px;
}

#Contact main .form_wrap table tr td {
  display: block;
  padding: 9px 0 20px 0;
  word-break: break-all;
}

#Contact main .form_wrap table tr td input.txt, #Contact main .form_wrap table tr td textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  border: none;
  border-radius: 0;
  background: #f6f4f0;
  width: 100%;
  padding: 13px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#Contact main .form_wrap table tr td input.tzip {
  width: 58%;
}

#Contact main .form_wrap table tr td textarea {
  height: 200px;
}

#Contact main .form_wrap .submit_area {
  margin-top: 20px;
}

#Contact main .form_wrap .submit_area input.pushbtn {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  border: none;
  font-size: 18px;
  line-height: 1.4;
  color: #fff;
  text-align: center;
  width: 100%;
  max-width: 305px;
  display: block;
  background: #96844b;
  border-radius: 0;
  padding: 18px 0;
  margin: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#Contact main .form_wrap .submit_area p {
  text-align: center;
  margin-bottom: 20px;
}

#Contact main .form_wrap .submit_area p.btn_back {
  margin-bottom: 0;
}

#Contact main .form_wrap .submit_area p.btn_back input.pushbtn {
  color: #000;
  background: #fff;
  padding: 17px 0;
  border: 1px solid #e3e3e3;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#Contact main .form_wrap .submit_area ul.koumoku {
  width: 100%;
  max-width: 305px;
  margin: 0 auto;
}

#Contact main .form_wrap .submit_area ul.koumoku li {
  float: none;
}

#Contact main .form_wrap .submit_area ul.koumoku li.btn_back {
  margin-top: 20px;
}

#Contact main .form_wrap .submit_area ul.koumoku li.btn_back input.pushbtn {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  color: #000;
  background: #fff;
  padding: 17px 0;
  border: 1px solid #e3e3e3;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#Contact main .send_comp p.contact_back a {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 18px;
  line-height: 1.4;
  text-align: center;
  width: 100%;
  max-width: 305px;
  display: block;
  color: #000;
  background: #fff;
  padding: 17px 0;
  border: 1px solid #e3e3e3;
  margin: 40px auto 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/*==================================
  Privacy policy
==================================*/
#Privacy main #Content {
  padding: 0 15px 75px;
}

#Privacy main #Content p.intro {
  margin-bottom: 30px;
}

#Privacy main #Content p.sign {
  text-align: right;
}

#Privacy main section.pri {
  padding: 0 0 30px;
}

#Privacy main section.pri h2 {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 20px;
  line-height: 1.5;
  padding: 0 0 8px;
  margin-left: 1.2em;
  text-indent: -1.2em;
}

#Privacy main section.cont {
  margin-top: 50px;
  padding: 20px;
  border: 1px solid #e2e0d3;
}

#Privacy main section.cont h2 {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 24px;
  line-height: 1.5;
  text-align: center;
}

#Privacy main section.cont h3 {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 20px;
  line-height: 1.5;
  padding: 25px 0 0;
  color: #96844b;
}

/*==================================
  Links
==================================*/
#Links main #Content {
  padding: 0 15px 75px;
}

#Links main section.link {
  padding: 0 0 30px;
}

#Links main section.link h2 {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 24px;
  line-height: 1.5;
  text-align: center;
}

#Links main section.link ul li a {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  text-decoration: underline;
}

#Links main section.aboutlink {
  padding: 30px 19px 40px;
  border: 1px solid #e2e0d3;
}

#Links main section.aboutlink h2 {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 24px;
  line-height: 1.5;
  text-align: center;
  padding: 0 0 15px;
}

#Links main section.aboutlink .attention {
  background: #f6f4f0;
  margin: 30px 0 0;
  padding: 40px 20px;
}

#Links main section.aboutlink .attention h3 {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 20px;
  color: #96844b;
  text-align: center;
}

/*==================================
  Sitemap
==================================*/
#Sitemap main #Content {
  padding: 0 15px 75px;
}

#Sitemap main #Content ul {
  padding: 0 0 30px;
}

#Sitemap main #Content ul li a {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 18px;
}

#Sitemap main #Content section.sm h2 {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 20px;
}

#Sitemap main #Content section.sm ul {
  padding: 0 0 30px 20px;
}

#Sitemap main #Content section.sm ul li a {
  font-family: 'Noto Sans JP';
  font-weight: 400;
  font-size: 16px;
}

#Sitemap main #Content section.aboutGA {
  padding: 30px 19px 40px;
  border: 1px solid #e2e0d3;
}

#Sitemap main #Content section.aboutGA h2 {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 24px;
  line-height: 1.5;
  text-align: center;
  padding: 0 0 15px;
}

#Sitemap main #Content section.aboutGA .attention {
  background: #f6f4f0;
  margin: 30px 0 0;
  padding: 40px 20px 10px;
}

/*==================================
  Signage
==================================*/
#Signage {
  width: 100%;
  background: url(../../images/signage/bg.jpg) no-repeat center top;
  background-size: cover;
}

#Signage main {
  padding: 30px 15px 0;
}

#Signage main h1 {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 28px;
  color: #FFF;
  text-align: center;
  white-space: nowrap;
  margin-bottom: 15px;
}

#Signage main h1 span.en {
  display: block;
  padding: 0 0 9px;
  font-size: 12px;
  letter-spacing: 0.12em;
}

#Signage main #WhiteContent {
  background: #FFF;
  margin-bottom: 30px;
}

#Signage main #WhiteContent .inner {
  padding: 30px 15px 0;
}

#Signage main #WhiteContent .inner p {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  /*          white-space: nowrap;*/
}

#Signage main #WhiteContent .inner #OpenDay h2 {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  font-size: 16px;
  color: #FFF;
  margin-bottom: 7px;
}

#Signage main #WhiteContent .inner #OpenDay h2 span {
  display: inline-block;
  background: #96844b;
  padding: 6px;
}

#Signage main #WhiteContent .inner #OpenDay .talk {
  margin-bottom: 15px;
}

#Signage main #WhiteContent .inner #OpenDay .talk p.g_txt {
  margin-bottom: 15px;
}

#Signage main #WhiteContent .inner #OpenDay .talk .talkBox {
  border-bottom: #e2e0d3 1px solid;
  padding: 15px 0 15px;
  width: 100%;
  position: relative;
}

#Signage main #WhiteContent .inner #OpenDay .talk .talkBox h3 {
  font-size: 24px;
  line-height: 1.3;
  font-family: 'Noto Serif JP';
  font-weight: 700;
}

#Signage main #WhiteContent .inner #OpenDay .talk .talkBox .talk_time {
  padding-right: 95px;
  min-height: 80px;
  margin-bottom: 15px;
}

#Signage main #WhiteContent .inner #OpenDay .talk .talkBox .talk_time p {
  font-size: 20px;
  font-weight: 700;
}

#Signage main #WhiteContent .inner #OpenDay .talk .talkBox .talk_time p.place {
  font-size: 16px;
  color: #5e5e5e;
  font-weight: 500;
}

#Signage main #WhiteContent .inner #OpenDay .talk .talkBox .talk_title p {
  color: #5e5e5e;
}

#Signage main #WhiteContent .inner #OpenDay .talk .talkBox .talk_title p.en {
  color: #000;
  margin: 4px 0 10px;
}

#Signage main #WhiteContent .inner #OpenDay .talk .talkBox .ph {
  width: 80px;
  position: absolute;
  right: 0;
  top: 15px;
}

#Signage main #WhiteContent .inner #OpenDay .talk .talkBox .ph img {
  height: auto;
}

#Signage main #WhiteContent .inner #OpenDay .eventBox {
  padding: 15px 0 13px;
  border-bottom: #e2e0d3 1px solid;
}

#Signage main #WhiteContent .inner #OpenDay .eventBox p {
  font-weight: 700;
}

#Signage main #WhiteContent .inner #OpenDay .eventBox:last-child {
  border-bottom: none;
}

#Signage main #WhiteContent .inner #CloseDay {
  padding-bottom: 30px;
}

#Signage main #WhiteContent .inner #CloseDay h2 {
  font-family: 'Noto Serif JP';
  font-weight: 500;
  text-align: center;
  margin-bottom: 15px;
  font-size: 24px;
  line-height: 1.3;
}

#Signage main #WhiteContent .inner #CloseDay p {
  text-align: center;
}

#Signage main #WhiteContent .inner #CloseDay p.qr {
  width: 150px;
  margin: 15px auto 0;
}

#Signage main #F-black {
  background: #000;
  padding: 15px 0;
  margin: 0 -15px;
}

#Signage main #F-black p {
  text-align: center;
  color: #FFF;
  font-size: 14px;
  line-height: 1.7;
  font-family: 'Noto Serif JP';
  font-weight: 500;
}

#Signage main #F-black p.logo {
  width: 226px;
  margin: 0 auto 10px;
}
