@charset "UTF-8";
.effect-slidein-up {
  transform: translate(0px, 50px);
}

.active .effect-slidein-up {
  transform: translate(0px, 0px);
  transition: transform 1.8s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.effect-fadein {
  opacity: 0;
}

.active .effect-fadein {
  opacity: 1;
  transition: opacity 1s linear, transform 1s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.effect-fadein-up {
  opacity: 0;
  transform: translate(0px, 40px);
}

.active .effect-fadein-up {
  opacity: 1;
  transform: translate(0px, 0px);
  transition: opacity 1s linear, transform 1s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.effect-rotateX {
  transform: perspective(1000px) rotateX(20deg);
  opacity: 0;
}

.active .effect-rotateX {
  transform: perspective(1000px) rotateX(0deg);
  opacity: 1;
  transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.effect-rotateY {
  transform: perspective(1000px) rotateY(20deg);
  opacity: 0;
}

.active .effect-rotateY {
  transform: perspective(1000px) rotateY(0deg);
  opacity: 1;
  transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.effect-rotateXY {
  transform: perspective(1000px) rotateY(5deg) rotateX(5deg);
  opacity: 0;
}

.active .effect-rotateXY {
  transform: perspective(1000px) rotateY(0deg) rotateX(0deg);
  opacity: 1;
  transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.effect-clip {
  clip-path: inset(0 100% 0 0);
}

.active .effect-clip {
  clip-path: inset(0);
  transition: clip-path 1s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.active .effect-delay-0 {
  transition-delay: 0s;
}

.active .effect-delay-100 {
  transition-delay: 0.1s;
}

.active .effect-delay-200 {
  transition-delay: 0.2s;
}

.active .effect-delay-300 {
  transition-delay: 0.3s;
}

.active .effect-delay-400 {
  transition-delay: 0.4s;
}

.active .effect-delay-500 {
  transition-delay: 0.5s;
}

.active .effect-delay-600 {
  transition-delay: 0.6s;
}

.active .effect-delay-700 {
  transition-delay: 0.7s;
}

.active .effect-delay-800 {
  transition-delay: 0.8s;
}

.active .effect-delay-900 {
  transition-delay: 0.9s;
}

.active .effect-delay-1000 {
  transition-delay: 1s;
}

.active .effect-delay-1100 {
  transition-delay: 1.1s;
}

.active .effect-delay-1200 {
  transition-delay: 1.2s;
}

.active .effect-delay-1300 {
  transition-delay: 1.3s;
}

.active .effect-delay-1400 {
  transition-delay: 1.4s;
}

.active .effect-delay-1500 {
  transition-delay: 1.5s;
}

.active .effect-delay-1600 {
  transition-delay: 1.6s;
}

.active .effect-delay-1700 {
  transition-delay: 1.7s;
}

.active .effect-delay-1800 {
  transition-delay: 1.8s;
}

.active .effect-delay-1900 {
  transition-delay: 1.9s;
}

.active .effect-delay-2000 {
  transition-delay: 2s;
}

.active .effect-delay-2100 {
  transition-delay: 2.1s;
}

.active .effect-delay-2200 {
  transition-delay: 2.2s;
}

.active .effect-delay-2300 {
  transition-delay: 2.3s;
}

.active .effect-delay-2400 {
  transition-delay: 2.4s;
}

.active .effect-delay-2500 {
  transition-delay: 2.5s;
}

.active .effect-delay-2600 {
  transition-delay: 2.6s;
}

.active .effect-delay-2700 {
  transition-delay: 2.7s;
}

.active .effect-delay-2800 {
  transition-delay: 2.8s;
}

.active .effect-delay-2900 {
  transition-delay: 2.9s;
}

.active .effect-delay-3000 {
  transition-delay: 3s;
}

.active .effect-delay-3100 {
  transition-delay: 3.1s;
}

.active .effect-delay-3200 {
  transition-delay: 3.2s;
}

.active .effect-delay-3300 {
  transition-delay: 3.3s;
}

.active .effect-delay-3400 {
  transition-delay: 3.4s;
}

.active .effect-delay-3500 {
  transition-delay: 3.5s;
}

.active .effect-delay-3600 {
  transition-delay: 3.6s;
}

.active .effect-delay-3700 {
  transition-delay: 3.7s;
}

.active .effect-delay-3800 {
  transition-delay: 3.8s;
}

.active .effect-delay-3900 {
  transition-delay: 3.9s;
}

.active .effect-delay-4000 {
  transition-delay: 4s;
}

.active .effect-delay-4100 {
  transition-delay: 4.1s;
}

.active .effect-delay-4200 {
  transition-delay: 4.2s;
}

.active .effect-delay-4300 {
  transition-delay: 4.3s;
}

.active .effect-delay-4400 {
  transition-delay: 4.4s;
}

.active .effect-delay-4500 {
  transition-delay: 4.5s;
}

.active .effect-delay-4600 {
  transition-delay: 4.6s;
}

.active .effect-delay-4700 {
  transition-delay: 4.7s;
}

.active .effect-delay-4800 {
  transition-delay: 4.8s;
}

.active .effect-delay-4900 {
  transition-delay: 4.9s;
}

.active .effect-delay-5000 {
  transition-delay: 5s;
}

html {
  overflow-x: hidden;
  scroll-behavior: smooth;
}
html.no-scroll {
  overflow: hidden;
}

body {
  position: relative;
  color: #0A0A0A;
  font-family: "EB Garamond", "Zen Old Mincho", "Hiragino Mincho Pro", "MS PMincho", "MS Mincho", serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  overflow-x: hidden;
  -webkit-text-size-adjust: 100%;
}
body.no-scroll {
  overflow: hidden;
}
body.zh-CN {
  font-family: "EB Garamond", "Noto Serif SC", "Hiragino Mincho Pro", "MS PMincho", "MS Mincho", serif;
}

a {
  color: #0A0A0A;
  text-decoration: none;
}

h1, h2, h3, h4, h5, h6, strong {
  font-weight: 400;
}

.italic {
  font-style: italic;
}

small {
  font-size: 14px;
}

select {
  outline: none;
}

.header {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  padding: 30px;
  background: #FFF;
}
@media only screen and (max-width:912px) {
  .header {
    padding: 25px;
  }
}
@media only screen and (max-width:540px) {
  .header {
    padding: 20px 5%;
  }
}
.header__left {
  display: flex;
  align-items: center;
}
.header__logo img {
  width: 100%;
  height: auto;
}
@media only screen and (max-width:1024px) {
  .header__logo {
    width: 200px;
  }
}
@media only screen and (max-width:912px) {
  .header__logo {
    width: 180px;
  }
}
@media only screen and (max-width:540px) {
  .header__logo {
    width: 130px;
  }
}
.header__nav {
  padding-left: 50px;
}
@media only screen and (max-width:1024px) {
  .header__nav {
    padding-left: 45px;
  }
}
@media only screen and (max-width:912px) {
  .header__nav {
    padding-left: 40px;
  }
}
.header__nav > ul {
  display: flex;
  list-style: none;
}
.header__nav > ul > li {
  position: relative;
  padding-right: 42px;
  font-size: 16px;
}
@media only screen and (max-width:1024px) {
  .header__nav > ul > li {
    padding-right: 38px;
    font-size: 14px;
  }
}
@media only screen and (max-width:912px) {
  .header__nav > ul > li {
    display: none;
  }
}
.header__nav > ul > li > a {
  display: inline-block;
}
.header__nav > ul > li > a span {
  display: block;
  position: relative;
  padding-top: 5px;
  font-size: 14px;
  letter-spacing: 0.07em;
  color: #989898;
}
@media only screen and (max-width:1024px) {
  .header__nav > ul > li > a span {
    font-size: 12px;
  }
}
.header__nav > ul > li > a span::before {
  position: absolute;
  content: attr(data-content);
  color: #B8384F;
  clip-path: polygon(0 0, 0 0, 0% 100%, 0 100%);
  transition: clip-path 275ms ease;
}
@media (hover: hover) and (pointer: fine) {
  .header__nav > ul > li > a:hover:hover span::before {
    clip-path: polygon(0 0, 100% 0, 100% 115%, 0 115%);
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .header__nav > ul > li > a:hover:hover span::before {
    clip-path: polygon(0 0, 100% 0, 100% 115%, 0 115%);
  }
}
.header__nav > ul > li ul {
  position: absolute;
  top: 30px;
  z-index: 10;
  padding-top: 25px;
  list-style: none;
  visibility: hidden;
  opacity: 0;
  transition: 0.2s;
}
.header__nav > ul > li ul li {
  font-size: 14px;
}
.header__nav > ul > li ul li a {
  display: block;
  padding: 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(184, 56, 79, 0.95);
  color: #FFF;
  white-space: nowrap;
}
@media (hover: hover) and (pointer: fine) {
  .header__nav > ul > li:hover:hover ul {
    z-index: 11;
    visibility: visible;
    opacity: 1;
    transition: 0.2s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .header__nav > ul > li:hover:hover ul {
    z-index: 11;
    visibility: visible;
    opacity: 1;
    transition: 0.2s;
  }
}
.header__right {
  display: flex;
  align-items: center;
  position: absolute;
  top: 35px;
  right: 40px;
  z-index: 11;
}
@media only screen and (max-width:912px) {
  .header__right {
    top: 25px;
  }
}
@media only screen and (max-width:540px) {
  .header__right {
    top: 15px;
    right: 5%;
  }
}
.header__right.active {
  position: fixed;
}
.header__right.active .header__lang a {
  color: #FFF;
  background: url(/assets/images/common/arrow02.png) no-repeat left/6px;
}
.header__right.active .header__menu-btn span {
  background: #FFF;
}
.header__right.active .header__menu-btn span:first-child {
  transform: translateY(8px) rotate(45deg);
}
.header__right.active .header__menu-btn span:nth-child(2) {
  opacity: 0;
}
.header__right.active .header__menu-btn span:last-child {
  transform: translateY(-8px) rotate(-45deg);
}
.header__lang {
  position: relative;
  padding-right: 45px;
}
@media only screen and (max-width:1024px) {
  .header__lang {
    padding-right: 35px;
    font-size: 12px;
  }
}
@media only screen and (max-width:540px) {
  .header__lang {
    padding-right: 20px;
    font-size: 11px;
  }
}
.header__lang ul {
  list-style: none;
  display: flex;
}
.header__lang ul li {
  padding-left: 30px;
}
@media only screen and (max-width:1024px) {
  .header__lang ul li {
    padding-left: 25px;
  }
}
@media only screen and (max-width:540px) {
  .header__lang ul li {
    padding-left: 15px;
  }
}
.header__lang ul li.current {
  display: none;
}
.header__lang ul li a {
  display: inline-block;
  padding-left: 14px;
  background: url(/assets/images/common/arrow01.png) no-repeat left/6px;
}
@media only screen and (max-width:540px) {
  .header__lang ul li a {
    padding-left: 12px;
    background-size: 5px;
  }
}
.header__menu-btn {
  position: relative;
  z-index: 11;
  width: 28px;
  height: 35px;
  cursor: pointer;
}
body.zh-CN .header__menu-btn, body.en-US .header__menu-btn {
  width: 0;
  opacity: 0;
}
@media only screen and (max-width:912px) {
  body.zh-CN .header__menu-btn, body.en-US .header__menu-btn {
    width: 28px;
    opacity: 1;
  }
}
.header__menu-btn span {
  position: absolute;
  display: block;
  width: 28px;
  height: 1px;
  background: #0A0A0A;
  transition: all 0.3s;
  -webkit-transition: -webkit-transform 0.3s;
  -moz-transition: -moz-transform 0.3s;
  -ms-transition: -ms-transform 0.3s;
}
.header__menu-btn span:first-child {
  top: 9px;
}
.header__menu-btn span:nth-child(2) {
  top: 50%;
}
.header__menu-btn span:last-child {
  bottom: 9px;
}
body#contact-body .header__menu-btn span {
  background: #FFF;
}
.header__pagenav {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 10px 30px;
  color: white;
  background: url(/assets/images/common/ptn2.png) repeat left/88px;
  transform: translateY(100%);
  opacity: 0;
  transition: 0.2s;
}
@media only screen and (max-width:912px) {
  .header__pagenav {
    font-size: 13px;
  }
}
@media only screen and (max-width:540px) {
  .header__pagenav {
    padding: 10px 5%;
    font-size: 11px;
  }
}
.header__pagenav.show {
  opacity: 1;
  transition: 0.2s;
}
.header__pagenav ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
}
.header__pagenav ul li {
  position: relative;
  margin-right: 12px;
  padding-right: 12px;
}
.header__pagenav ul li a {
  display: inline-block;
  padding: 5px;
  color: #FFF;
}
@media (hover: hover) and (pointer: fine) {
  .header__pagenav ul li a:hover:hover {
    opacity: 0.5;
    transition: 0.2s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .header__pagenav ul li a:hover:hover {
    opacity: 0.5;
    transition: 0.2s;
  }
}
.header__pagenav ul li::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  width: 1px;
  height: 10px;
  background: #989898;
  transform: translateY(-50%);
}

.footer {
  padding: 70px 5% 60px;
  color: #FFF;
  background: url(/assets/images/common/ptn2.png) repeat left/88px;
}
@media only screen and (max-width:912px) {
  .footer {
    padding: 50px 5% 40px;
  }
}
@media only screen and (max-width:540px) {
  .footer {
    padding: 50px 5% 30px;
  }
}
.footer a {
  color: #FFF;
}
.footer ul {
  list-style: none;
}
.footer__top {
  display: flex;
  justify-content: space-between;
  margin-bottom: 100px;
}
@media only screen and (max-width:1024px) {
  .footer__top {
    margin-bottom: 80px;
  }
}
@media only screen and (max-width:912px) {
  .footer__top {
    margin-bottom: 60px;
  }
}
@media only screen and (max-width:540px) {
  .footer__top {
    display: block;
  }
}
.footer__top-left a {
  transition: 0.2s;
}
@media (hover: hover) and (pointer: fine) {
  .footer__top-left a:hover:hover {
    opacity: 0.5;
    transition: 0.2s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .footer__top-left a:hover:hover {
    opacity: 0.5;
    transition: 0.2s;
  }
}
.footer__top-list1 {
  display: flex;
  margin-bottom: 50px;
  font-size: 16px;
}
@media only screen and (max-width:1024px) {
  .footer__top-list1 {
    font-size: 15px;
  }
}
@media only screen and (max-width:912px) {
  .footer__top-list1 {
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .footer__top-list1 {
    display: grid;
    grid-auto-flow: column;
    grid-template-rows: repeat(2, auto);
    margin-bottom: 30px;
  }
}
.footer__top-list1 li {
  margin-right: 40px;
}
@media only screen and (max-width:912px) {
  .footer__top-list1 li {
    margin-right: 30px;
  }
}
@media only screen and (max-width:540px) {
  .footer__top-list1 li {
    margin: 0 0 20px 0;
  }
}
.footer__top-list1 li a {
  display: inline-block;
  padding-left: 14px;
  background: url(/assets/images/common/arrow02.png) no-repeat left/6px;
}
@media only screen and (max-width:540px) {
  .footer__top-list1 li a {
    padding-left: 12px;
    background-size: 5px;
  }
}
.footer__top-list2 {
  display: grid;
  grid-auto-flow: column;
  grid-template-rows: repeat(6, auto);
}
@media only screen and (max-width:1024px) {
  .footer__top-list2 {
    font-size: 13px;
    grid-template-rows: repeat(8, auto);
  }
}
@media only screen and (max-width:912px) {
  .footer__top-list2 {
    font-size: 11px;
  }
}
@media only screen and (max-width:540px) {
  .footer__top-list2 {
    justify-content: space-between;
    margin-bottom: 50px;
    letter-spacing: 0.05em;
  }
}
.footer__top-list2 li {
  margin: 0 100px 2px 0;
  line-height: 1.6;
}
@media only screen and (max-width:912px) {
  .footer__top-list2 li {
    margin: 0 60px 2px 0;
  }
}
@media only screen and (max-width:540px) {
  .footer__top-list2 li {
    margin: 0 0 2px 0;
  }
}
.footer__top-list2 li a {
  display: inline-block;
  padding: 5px 0;
}
.footer__top-bnr {
  width: 200px;
}
@media only screen and (max-width:912px) {
  .footer__top-bnr {
    width: 180px;
  }
}
@media only screen and (max-width:540px) {
  .footer__top-bnr {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: auto;
  }
}
.footer__top-bnr li {
  margin-bottom: 15px;
}
@media only screen and (max-width:540px) {
  .footer__top-bnr li {
    width: 47.5%;
    margin-bottom: 5%;
  }
}
.footer__top-bnr li img {
  display: block;
  width: 100%;
  height: auto;
}
.footer__bottom {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}
@media only screen and (max-width:540px) {
  .footer__bottom {
    display: block;
  }
}
.footer__bottom-left {
  display: flex;
  align-items: center;
}
@media only screen and (max-width:912px) {
  .footer__bottom-left {
    display: block;
  }
}
.footer__bottom-logo {
  margin-right: 40px;
}
@media only screen and (max-width:1024px) {
  .footer__bottom-logo {
    width: 200px;
  }
}
@media only screen and (max-width:912px) {
  .footer__bottom-logo {
    width: 180px;
    margin: 0 0 30px 0;
  }
}
@media only screen and (max-width:540px) {
  .footer__bottom-logo {
    width: 150px;
  }
}
.footer__bottom-logo img {
  width: 100%;
  height: auto;
}
.footer__bottom-adr {
  line-height: 1.6;
}
@media only screen and (max-width:1024px) {
  .footer__bottom-adr {
    font-size: 12px;
  }
}
@media only screen and (max-width:540px) {
  .footer__bottom-adr {
    margin-bottom: 30px;
  }
}
.footer__bottom-right small {
  font-size: 11px;
  color: #989898;
}
@media only screen and (max-width:1024px) {
  .footer__bottom-right small {
    font-size: 10px;
  }
}
.footer__bottom-sns {
  display: flex;
  justify-content: right;
  margin-bottom: 12px;
}
@media only screen and (max-width:540px) {
  .footer__bottom-sns {
    justify-content: left;
  }
}
.footer__bottom-sns .line {
  margin-left: 15px;
}

.cv {
  display: flex;
}
.cv a {
  display: block;
}
.cv__left {
  position: relative;
  width: 50%;
  overflow: hidden;
  text-align: center;
  background: rgb(53, 53, 70);
}
@media only screen and (max-width:540px) {
  .cv__left {
    width: 50%;
  }
}
@media (hover: hover) and (pointer: fine) {
  .cv__left:hover:hover .cv__overlay {
    transform: scale(1.03);
    transition: 0.3s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .cv__left:hover:hover .cv__overlay {
    transform: scale(1.03);
    transition: 0.3s;
  }
}
.cv__right {
  position: relative;
  width: 50%;
  text-align: center;
  background: url(/assets/images/common/bg_cv.jpg) no-repeat center/cover;
}
@media only screen and (max-width:540px) {
  .cv__right {
    width: 50%;
  }
}
.cv__right::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: calc(100% - 20px);
  height: calc(100% - 20px);
  margin: 10px;
  border: 1px solid #FFF;
  opacity: 0.2;
}
@media only screen and (max-width:912px) {
  .cv__right::before {
    width: calc(100% - 16px);
    height: calc(100% - 16px);
    margin: 8px;
  }
}
@media only screen and (max-width:540px) {
  .cv__right::before {
    width: calc(100% - 10px);
    height: calc(100% - 10px);
    margin: 5px;
  }
}
.cv__overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: url(/assets/images/common/pic_cv@2x.jpg) no-repeat center/cover;
  opacity: 0.3;
  transition: 0.3s;
}
.cv__txt {
  position: relative;
  z-index: 1;
  padding: 80px 5%;
  color: #FFF;
}
@media only screen and (max-width:912px) {
  .cv__txt {
    padding: 50px 5%;
  }
}
@media only screen and (max-width:540px) {
  .cv__txt {
    padding: 30px 5%;
  }
}
.cv__txt p {
  margin-bottom: 10px;
  font-size: 21px;
}
@media only screen and (max-width:1024px) {
  .cv__txt p {
    font-size: 19px;
  }
}
@media only screen and (max-width:912px) {
  .cv__txt p {
    font-size: 17px;
  }
}
@media only screen and (max-width:540px) {
  .cv__txt p {
    margin-bottom: 5px;
    font-size: 14px;
  }
}
.cv__txt small {
  font-size: 12px;
  opacity: 0.4;
}
@media only screen and (max-width:912px) {
  .cv__txt small {
    font-size: 11px;
  }
}
@media only screen and (max-width:540px) {
  .cv__txt small {
    font-size: 10px;
  }
}

.overlay-menu {
  display: flex;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  height: 100%;
  color: #FFF;
  background: url(/assets/images/common/ptn2.png) repeat left/88px;
  opacity: 0;
  transition: 0.3s;
  pointer-events: none;
}
.overlay-menu a {
  color: #FFF;
}
.overlay-menu ul {
  list-style: none;
}
.overlay-menu.active {
  opacity: 1;
  transition: 0.3s;
  pointer-events: visible;
}
.overlay-menu__logo {
  position: absolute;
  top: 30px;
  left: 30px;
}
@media only screen and (max-width:1024px) {
  .overlay-menu__logo {
    width: 200px;
  }
}
@media only screen and (max-width:912px) {
  .overlay-menu__logo {
    width: 180px;
    top: 25px;
    left: 25px;
  }
}
@media only screen and (max-width:540px) {
  .overlay-menu__logo {
    width: 130px;
    top: 20px;
    left: 20px;
  }
}
.overlay-menu__logo img {
  width: 100%;
  height: auto;
}
.overlay-menu__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  max-width: 1300px;
  margin: 0 auto;
  padding: 40px 5% 0;
}
@media only screen and (max-width:912px) {
  .overlay-menu__main {
    display: block;
  }
}
@media only screen and (max-width:540px) {
  .overlay-menu__main {
    padding: 0 5%;
  }
}
.overlay-menu__main a {
  transition: 0.2s;
}
@media (hover: hover) and (pointer: fine) {
  .overlay-menu__main a:hover:hover {
    opacity: 0.5;
    transition: 0.2s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .overlay-menu__main a:hover:hover {
    opacity: 0.5;
    transition: 0.2s;
  }
}
.overlay-menu__pic {
  width: 27%;
}
@media only screen and (max-width:912px) {
  .overlay-menu__pic {
    display: none;
  }
}
.overlay-menu__pic img {
  width: 100%;
  height: 100%;
}
.overlay-menu__right {
  width: 67%;
}
@media only screen and (max-width:912px) {
  .overlay-menu__right {
    width: 100%;
  }
}
.overlay-menu__list1 {
  display: flex;
  position: relative;
  padding-bottom: 30px;
  font-size: 22px;
}
@media only screen and (max-width:540px) {
  .overlay-menu__list1 {
    font-size: 15px;
  }
}
body.zh-CN .overlay-menu__list1, body.en-US .overlay-menu__list1 {
  display: block;
  text-align: center;
}
.overlay-menu__list1 li {
  margin-right: 8%;
}
@media only screen and (max-width:540px) {
  .overlay-menu__list1 li {
    margin-right: 6%;
  }
}
body.zh-CN .overlay-menu__list1 li, body.en-US .overlay-menu__list1 li {
  margin: 0 0 30px 0;
}
.overlay-menu__list1 li a {
  display: inline-block;
}
.overlay-menu__list1 li:last-child {
  margin: 0;
}
.overlay-menu__list1::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: #FFF;
  opacity: 0.15;
}
body.zh-CN .overlay-menu__list1::before, body.en-US .overlay-menu__list1::before {
  display: none;
}
.overlay-menu__list1::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 3%;
  height: 1px;
  background: #B8384F;
}
body.zh-CN .overlay-menu__list1::after, body.en-US .overlay-menu__list1::after {
  display: none;
}
.overlay-menu__list2 {
  display: flex;
  position: relative;
  padding: 30px 0;
  font-size: 18px;
}
@media only screen and (max-width:540px) {
  .overlay-menu__list2 {
    flex-wrap: wrap;
    font-size: 13px;
  }
}
.overlay-menu__list2 li {
  margin-right: 8%;
}
@media only screen and (max-width:540px) {
  .overlay-menu__list2 li {
    margin: 0 8% 1em 0;
  }
}
.overlay-menu__list2 li a {
  display: inline-block;
  padding-left: 14px;
  background: url(/assets/images/common/arrow02.png) no-repeat left/6px;
}
.overlay-menu__list2 li:last-child {
  margin: 0;
}
.overlay-menu__list2::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: #FFF;
  opacity: 0.15;
}
.overlay-menu__list2::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 3%;
  height: 1px;
  background: #B8384F;
}
.overlay-menu__list3 {
  display: grid;
  grid-auto-flow: column;
  grid-template-rows: repeat(5, auto);
  padding-top: 30px;
}
@media only screen and (max-width:540px) {
  .overlay-menu__list3 {
    font-size: 11px;
    justify-content: space-between;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(7, auto);
  }
}
.overlay-menu__list3 li {
  margin-bottom: 2px;
  line-height: 1.6;
}
@media only screen and (max-width:540px) {
  .overlay-menu__list3 li {
    letter-spacing: 0.03em;
  }
}
.overlay-menu__list3 li a {
  display: inline-block;
  padding: 5px 0;
}
.overlay-menu__list3 li:nth-child(n+11) {
  margin: 0 0 2px 0;
}
.overlay-menu__bottom {
  display: flex;
  justify-content: space-between;
  position: absolute;
  bottom: 0;
  width: 100%;
  padding: 0 30px 30px;
}
@media only screen and (max-width:540px) {
  .overlay-menu__bottom {
    display: block;
    padding: 0 5% 30px;
  }
}
@media only screen and (max-width:540px) {
  .overlay-menu__bottom-logo {
    margin-bottom: 10px;
  }
}
.overlay-menu__bottom small {
  font-size: 11px;
  color: #989898;
}
@media only screen and (max-width:540px) {
  .overlay-menu__bottom small {
    font-size: 10px;
  }
}

.reserve-btn {
  position: fixed;
  top: 50%;
  right: 0;
  z-index: 11;
  transform: translateY(-50%);
  animation: reserveBtn 0.8s forwards;
}
@media only screen and (max-width:540px) {
  .reserve-btn {
    top: auto;
    bottom: 80px;
    transform: none;
  }
}
.reserve-btn p {
  font-size: 16px;
  font-weight: 600;
  text-align: center;
  letter-spacing: 0.1em;
}
@media only screen and (max-width:912px) {
  .reserve-btn p {
    font-size: 15px;
  }
}
@media only screen and (max-width:540px) {
  .reserve-btn p {
    font-size: 11px;
  }
}
.reserve-btn p a {
  display: flex;
  padding: 20px 18px;
  color: #FFF;
  background: #B8384F;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  transition: 0.3s;
}
@media only screen and (max-width:912px) {
  .reserve-btn p a {
    padding: 18px 16px;
  }
}
@media only screen and (max-width:540px) {
  .reserve-btn p a {
    padding: 14px 12px;
  }
}
.reserve-btn p a span {
  display: inline-block;
  padding-bottom: 24px;
  writing-mode: vertical-rl;
  text-orientation: mixed;
  background: url(/assets/images/common/ico_reserve.png) no-repeat left 2px bottom/14px;
}
@media only screen and (max-width:912px) {
  .reserve-btn p a span {
    padding-bottom: 22px;
    background-size: 13px;
  }
}
@media only screen and (max-width:540px) {
  .reserve-btn p a span {
    padding-bottom: 16px;
    background-size: 9px;
  }
}
.reserve-btn p a:hover {
  opacity: 0.9;
  transition: 0.3s;
}

@media only screen and (max-width:540px) {
  .pc-only {
    display: none;
  }
}

.sp-only {
  display: none;
}
@media only screen and (max-width:540px) {
  .sp-only {
    display: block;
  }
}

.lead1 {
  font-size: 16px;
  line-height: 1.8;
}
@media only screen and (max-width:912px) {
  .lead1 {
    font-size: 15px;
  }
}
@media only screen and (max-width:540px) {
  .lead1 {
    font-size: 13px;
  }
}

.btn1 {
  width: 250px;
  border: 1px solid #0A0A0A;
}
.btn1 a {
  display: flex;
  align-items: center;
  position: relative;
  height: 56px;
  padding: 0 20px;
  font-size: 15px;
  line-height: 1;
  border-radius: 4px;
}
@media only screen and (max-width:540px) {
  .btn1 a {
    height: 50px;
    font-size: 13px;
  }
}
.btn1 a::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 15px;
  z-index: 12;
  width: 6px;
  height: 6px;
  background: url(/assets/images/common/arrow01.png) no-repeat right/6px;
  transition: 0.2s;
  transform: translateY(-50%);
}
@media (hover: hover) and (pointer: fine) {
  .btn1 a:hover:hover::after {
    right: 10px;
    transition: 0.2s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .btn1 a:hover:hover::after {
    right: 10px;
    transition: 0.2s;
  }
}

.red {
  color: #B8384F;
}

.notes {
  font-size: 12px;
  display: inline-block;
  padding-top: 10px;
}
@media only screen and (max-width:540px) {
  .notes {
    font-size: 11px;
  }
}

.view1 {
  font-size: 14px;
}
@media only screen and (max-width:1024px) {
  .view1 {
    font-size: 13px;
  }
}
@media only screen and (max-width:912px) {
  .view1 {
    font-size: 12px;
  }
}
@media only screen and (max-width:540px) {
  .view1 {
    font-size: 11px;
  }
}
.view1 a {
  display: inline-block;
  position: relative;
  padding: 10px 38px 10px 0;
}
.view1 a::after {
  content: "";
  display: block;
  position: absolute;
  top: 14px;
  right: 0;
  width: 26px;
  height: 5px;
  background: url(/assets/images/common/arrow03.png) no-repeat right/26px;
  transition: 0.2s;
}
@media only screen and (max-width:912px) {
  .view1 a::after {
    top: 13px;
  }
}
@media only screen and (max-width:540px) {
  .view1 a::after {
    top: 12px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .view1 a:hover:hover::after {
    right: -5px;
    transition: 0.2s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .view1 a:hover:hover::after {
    right: -5px;
    transition: 0.2s;
  }
}

.newtab a {
  display: inline-block;
  padding-right: 20px;
  background: url(/assets/images/common/ico_newtab.png) no-repeat right/16px;
}

.follower-drag {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 15;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  margin-top: -40px;
  margin-left: -20px;
  background: url(/assets/images/common/ico_drag.png) no-repeat center center;
  background-size: 100% 100%;
  transition: opacity 0.3s, transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  opacity: 0;
  pointer-events: none;
}
.follower-drag > span {
  display: none;
}
@media only screen and (max-width:1024px) {
  .follower-drag {
    display: none;
  }
}
.follower-drag.is-active {
  opacity: 1;
}

.ttl1 {
  position: relative;
}
.ttl1 h2 {
  padding-left: 20px;
  background: url(/assets/images/common/circle01.png) no-repeat left/12px;
  font-size: 28px;
  line-height: 1;
  letter-spacing: 0.02em;
}
@media only screen and (max-width:1024px) {
  .ttl1 h2 {
    font-size: 25px;
  }
}
@media only screen and (max-width:912px) {
  .ttl1 h2 {
    font-size: 22px;
  }
}
@media only screen and (max-width:540px) {
  .ttl1 h2 {
    font-size: 18px;
  }
}
.ttl1 small {
  display: block;
  padding-top: 10px;
  color: #989898;
  font-size: 15px;
}
@media only screen and (max-width:1024px) {
  .ttl1 small {
    font-size: 13px;
  }
}
@media only screen and (max-width:912px) {
  .ttl1 small {
    font-size: 11px;
  }
}
.ttl1 .view1 {
  position: absolute;
  top: 10px;
  right: 0;
}
@media only screen and (max-width:540px) {
  .ttl1 .view1 {
    top: 5px;
  }
}

.ttl2 {
  position: relative;
  margin-bottom: 60px;
  padding: 27px 30px 25px;
  font-size: 26px;
  line-height: 1;
  background: url(/assets/images/common/ptn1.png) repeat left/143px;
}
@media only screen and (max-width:912px) {
  .ttl2 {
    margin-bottom: 40px;
    font-size: 22px;
  }
}
@media only screen and (max-width:540px) {
  .ttl2 {
    margin-bottom: 30px;
    padding: 21px 20px 19px;
    font-size: 18px;
  }
}
.ttl2 small {
  display: inline-block;
  padding-left: 15px;
  font-size: 14px;
  letter-spacing: 0.03em;
}
@media only screen and (max-width:540px) {
  .ttl2 small {
    padding: 8px 0 0 0;
    font-size: 12px;
    line-height: 1.6;
  }
}
.ttl2 .view1 {
  position: absolute;
  top: 50%;
  right: 30px;
  transform: translateY(-50%);
}
@media only screen and (max-width:540px) {
  .ttl2 .view1 {
    right: 15px;
  }
}
.ttl2::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 7px;
  height: 16px;
  transform: translateY(-50%);
  background: #B8384F;
}
@media only screen and (max-width:540px) {
  .ttl2::after {
    width: 5px;
  }
}

.ttl3 {
  margin-bottom: 30px;
  padding-bottom: 13px;
  font-size: 21px;
  line-height: 1.5;
  border-bottom: 1px solid #E4E9EC;
}
@media only screen and (max-width:912px) {
  .ttl3 {
    font-size: 19px;
  }
}
@media only screen and (max-width:540px) {
  .ttl3 {
    margin-bottom: 20px;
    font-size: 16px;
  }
}

.ttl4 {
  padding: 15px 20px;
  font-size: 24px;
  color: #FFF;
  background: url(/assets/images/common/ptn4.png) repeat left/20px;
}
@media only screen and (max-width:912px) {
  .ttl4 {
    font-size: 19px;
  }
}
@media only screen and (max-width:540px) {
  .ttl4 {
    font-size: 16px;
  }
}

.ttl5 {
  margin-bottom: 40px;
}
@media only screen and (max-width:912px) {
  .ttl5 {
    margin-bottom: 30px;
    font-size: 22px;
  }
}
@media only screen and (max-width:540px) {
  .ttl5 {
    margin-bottom: 20px;
    font-size: 16px;
  }
}

.ttl6 {
  margin-bottom: 20px;
  padding-left: 15px;
  font-size: 18px;
  border-left: 3px solid #B8384F;
}
@media only screen and (max-width:912px) {
  .ttl6 {
    margin-bottom: 30px;
    font-size: 16px;
  }
}
@media only screen and (max-width:540px) {
  .ttl6 {
    margin-bottom: 20px;
    font-size: 14px;
  }
}

.ttl7 {
  margin-bottom: 15px;
  padding: 8px 15px 6px;
  font-size: 16px;
  line-height: 1.4;
  border-left: 1px solid #B8384F;
}
@media only screen and (max-width:912px) {
  .ttl7 {
    font-size: 15px;
  }
}
@media only screen and (max-width:540px) {
  .ttl7 {
    font-size: 13px;
  }
}

.cnt-head1 {
  position: relative;
}
.cnt-head1__kv {
  position: relative;
  width: 75%;
  height: 350px;
  margin: 0 0 0 auto;
}
@media only screen and (max-width:540px) {
  .cnt-head1__kv {
    height: 200px;
    width: 65%;
  }
}
.cnt-head1__ttl {
  position: absolute;
  top: 0;
  left: 10%;
  writing-mode: vertical-rl;
  text-orientation: mixed;
}
@media only screen and (max-width:912px) {
  .cnt-head1__ttl {
    left: 7.5%;
  }
}
.cnt-head1__ttl h1 {
  margin-left: 10px;
  font-size: 32px;
  line-height: 1.3;
}
@media only screen and (max-width:540px) {
  .cnt-head1__ttl h1 {
    margin-left: 8px;
    font-size: 22px;
  }
}
.cnt-head1__ttl h1 span {
  display: inline-block;
  transform: translateY(-14px);
}
.cnt-head1__ttl small {
  font-size: 14px;
  color: #B8384F;
}
@media only screen and (max-width:540px) {
  .cnt-head1__ttl small {
    font-size: 12px;
  }
}
.cnt-head1::before {
  content: "";
  display: block;
  position: absolute;
  top: 80px;
  left: 0;
  z-index: -1;
  width: 75%;
  height: 350px;
  background: url(/assets/images/common/ptn1.png) repeat left/143px;
}
@media only screen and (max-width:540px) {
  .cnt-head1::before {
    top: 40px;
    height: 200px;
  }
}

.cnt-head2 {
  padding: 70px 5%;
  background: url(/assets/images/common/ptn1.png) repeat left/143px;
}
@media only screen and (max-width:540px) {
  .cnt-head2 {
    padding: 40px 5%;
  }
}
.cnt-head2__ttl {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.cnt-head2__ttl h1 {
  font-size: 30px;
}
@media only screen and (max-width:912px) {
  .cnt-head2__ttl h1 {
    font-size: 26px;
  }
}
@media only screen and (max-width:540px) {
  .cnt-head2__ttl h1 {
    font-size: 19px;
  }
}
.cnt-head2__ttl span {
  display: inline-block;
  margin-top: 10px;
  color: #B8384F;
}
@media only screen and (max-width:540px) {
  .cnt-head2__ttl span {
    margin-bottom: 8px;
    font-size: 12px;
  }
}

.cnt-head3 {
  position: relative;
  padding: 0 5%;
}
.cnt-head3__kv {
  position: relative;
  z-index: 1;
}
.cnt-head3__kv img {
  display: block;
  width: 100%;
  height: auto;
}
.cnt-head3__kv::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  background: url(/assets/images/common/overlay_dark.webp) no-repeat center/cover;
}
@media only screen and (max-width:540px) {
  .cnt-head3__kv::before {
    background: url(/assets/images/common/overlay_dark_sp.webp) no-repeat center/cover;
  }
}
.cnt-head3__kv::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
  width: 100%;
  height: 100%;
  background: url(/assets/images/common/ptn3.webp) repeat center/200px;
  opacity: 0.25;
}
@media only screen and (max-width:912px) {
  .cnt-head3__kv::after {
    background-size: 150px;
  }
}
@media only screen and (max-width:540px) {
  .cnt-head3__kv::after {
    background-size: 100px;
  }
}
.cnt-head3__ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 4;
  width: 100%;
  height: 100%;
  color: #FFF;
  text-shadow: 0 0 5px rgba(0, 0, 0, 0.25);
}
.cnt-head3__ttl-in {
  text-align: center;
}
.cnt-head3__ttl-in .ja {
  margin-bottom: 25px;
  font-size: 36px;
  letter-spacing: 0.12em;
  writing-mode: vertical-rl;
  white-space: pre;
  text-orientation: mixed;
}
@media only screen and (max-width:912px) {
  .cnt-head3__ttl-in .ja {
    margin-bottom: 20px;
    font-size: 30px;
  }
}
@media only screen and (max-width:540px) {
  .cnt-head3__ttl-in .ja {
    margin-bottom: 10px;
    font-size: 20px;
  }
}
.cnt-head3__ttl-in .en {
  display: block;
  margin-left: 4px;
  font-size: 20px;
  letter-spacing: 0.07em;
  writing-mode: horizontal-tb;
}
body.en-US .cnt-head3__ttl-in .en {
  font-size: 40px;
}
@media only screen and (max-width:912px) {
  body.en-US .cnt-head3__ttl-in .en {
    font-size: 30px;
  }
}
@media only screen and (max-width:540px) {
  body.en-US .cnt-head3__ttl-in .en {
    font-size: 20px;
  }
}
@media only screen and (max-width:912px) {
  .cnt-head3__ttl-in .en {
    font-size: 16px;
  }
}
@media only screen and (max-width:540px) {
  .cnt-head3__ttl-in .en {
    font-size: 12px;
  }
}

.cnt-index {
  padding: 60px 5% 50px;
}
@media only screen and (max-width:912px) {
  .cnt-index {
    padding: 40px 5% 30px;
  }
}
@media only screen and (max-width:540px) {
  .cnt-index {
    padding: 30px 5% 25px;
  }
}
.cnt-index__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  list-style: none;
  font-size: 16px;
  line-height: 1.4;
}
@media only screen and (max-width:912px) {
  .cnt-index__list {
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .cnt-index__list {
    font-size: 12px;
    line-height: 1.3;
  }
}
.cnt-index__list::after {
  content: "";
  display: block;
  width: 30%;
}
.cnt-index__list li {
  width: 30%;
  margin-bottom: 2.5%;
}
@media only screen and (max-width:540px) {
  .cnt-index__list li {
    width: 47.5%;
    margin-bottom: 3%;
  }
}
.cnt-index__list li a {
  display: flex;
  align-items: center;
  position: relative;
  height: 60px;
  padding: 0 18px;
  border-left: 3px solid #B8384F;
  border-bottom: 1px solid #E4E9EC;
}
@media only screen and (max-width:540px) {
  .cnt-index__list li a {
    height: 50px;
    padding: 0 15px;
  }
}
.cnt-index__list li a span {
  display: inline-block;
}
.cnt-index__list li a:hover {
  transition: 0.4s;
}
.cnt-index__list li a:hover::after {
  animation: arrowIn 0.4s forwards;
}
.cnt-index__list li a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 10px;
  display: block;
  width: 8px;
  height: 8px;
  background: url(/assets/images/common/arrow04.png) no-repeat center/8px;
  transform: translateY(-50%);
}
@media only screen and (max-width:540px) {
  .cnt-index__list li a::after {
    background-size: 6px;
  }
}

.cnt-cat {
  padding: 60px 5% 40px;
}
@media only screen and (max-width:540px) {
  .cnt-cat {
    padding: 30px 5%;
  }
}
.cnt-cat__in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.cnt-cat__in h2 {
  margin-bottom: 30px;
}
@media only screen and (max-width:540px) {
  .cnt-cat__in h2 {
    margin-bottom: 20px;
  }
}
.cnt-cat__in:nth-child(n+2) {
  padding-top: 30px;
}
@media only screen and (max-width:540px) {
  .cnt-cat__in:nth-child(n+2) {
    padding-top: 20px;
  }
}
.cnt-cat__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  list-style: none;
}
.cnt-cat__list::after {
  content: "";
  display: block;
  width: 32%;
}
.cnt-cat__list li {
  width: 32%;
  margin-bottom: 2%;
  font-size: 15px;
  transition: 0.2s;
}
@media only screen and (max-width:912px) {
  .cnt-cat__list li {
    font-size: 13px;
  }
}
@media only screen and (max-width:540px) {
  .cnt-cat__list li {
    width: 48.5%;
    margin-bottom: 3%;
    font-size: 11px;
  }
}
.cnt-cat__list li.current a {
  border-left: 4px solid #B8384F;
}
.cnt-cat__list li a {
  display: block;
  padding: 20px;
  background: #F3F5FA;
}
@media only screen and (max-width:912px) {
  .cnt-cat__list li a {
    padding: 15px;
  }
}
@media only screen and (max-width:540px) {
  .cnt-cat__list li a {
    padding: 11px;
  }
}
.cnt-cat__list li:hover {
  opacity: 0.6;
  transition: 0.2s;
}

.list-default {
  margin-left: 1.2em;
  line-height: 1.7;
  list-style: none;
}
.list-default li {
  position: relative;
}
.list-default li::before {
  content: "・";
  position: absolute;
  left: -1.2em;
}

.list-notes {
  font-size: 12px;
  line-height: 1.6;
  list-style: none;
  margin-left: 1.5em;
  padding-top: 10px;
}
@media only screen and (max-width:540px) {
  .list-notes {
    font-size: 11px;
    margin-left: 1.2em;
  }
}
.list-notes li {
  position: relative;
}
.list-notes li::before {
  content: "※";
  position: absolute;
  left: -1.5em;
}
@media only screen and (max-width:540px) {
  .list-notes li::before {
    left: -1.2em;
  }
}

.table1 {
  width: 100%;
  border-top: 1px solid #E4E9EC;
  font-size: 15px;
}
@media only screen and (max-width:912px) {
  .table1 {
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .table1 {
    font-size: 13px;
  }
}
.table1__item {
  display: flex;
  flex-wrap: wrap;
  border-bottom: 1px solid #E4E9EC;
}
.table1__item-ttl {
  width: 25%;
  background: #F3F5FA;
  padding: 25px;
  line-height: 1.7;
}
@media only screen and (max-width:912px) {
  .table1__item-ttl {
    padding: 20px;
  }
}
@media only screen and (max-width:540px) {
  .table1__item-ttl {
    width: 27%;
    padding: 15px;
  }
}
.table1__item-cnt {
  width: 75%;
  padding: 25px;
  line-height: 1.9;
}
@media only screen and (max-width:912px) {
  .table1__item-cnt {
    padding: 20px;
  }
}
@media only screen and (max-width:540px) {
  .table1__item-cnt {
    width: 73%;
    padding: 15px;
  }
}
.table1__item-cnt-item {
  margin-bottom: 20px;
}
.table1__item-cnt-item:last-child {
  margin: 0;
}
.table1__item-cnt strong {
  display: inline-block;
  margin-bottom: 8px;
}
.table1__item-cnt ul {
  width: 100%;
  list-style: none;
}
.table1__item-cnt ul.decimal {
  padding-left: 20px;
  list-style: decimal !important;
}
.table1__item-cnt ul.column {
  display: grid;
  grid-auto-flow: column;
  grid-template-rows: repeat(10, auto);
  grid-auto-columns: 1fr;
}
@media only screen and (max-width:540px) {
  .table1__item-cnt ul.column {
    display: block;
  }
}
.table1__item-cnt a {
  color: #B8384F;
  text-decoration: underline;
}

.feed1 {
  padding: 0 5%;
}
.feed1__in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.feed1__list {
  list-style: none;
}
@media only screen and (max-width:912px) {
  .feed1__list {
    display: block;
  }
}
.feed1__list li {
  display: flex;
  align-items: center;
  margin-bottom: 40px;
}
@media only screen and (max-width:912px) {
  .feed1__list li {
    margin-bottom: 5%;
  }
}
.feed1__list li:last-child {
  margin-bottom: 0;
}
.feed1__list-pic {
  width: 25%;
  height: auto;
  transition: 0.3s;
}
@media only screen and (max-width:912px) {
  .feed1__list-pic {
    width: 22%;
  }
}
.feed1__list-pic img {
  display: block;
  width: 100%;
  height: auto;
}
@media (hover: hover) and (pointer: fine) {
  .feed1__list-pic:hover:hover {
    opacity: 0.8;
    transition: 0.3s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .feed1__list-pic:hover:hover {
    opacity: 0.8;
    transition: 0.3s;
  }
}
.feed1__list-cnt {
  width: 75%;
  padding-left: 4%;
}
.feed1__list-cnt-meta {
  display: flex;
  font-size: 13px;
  line-height: 1.4;
}
@media only screen and (max-width:540px) {
  .feed1__list-cnt-meta {
    font-size: 11px;
  }
}
.feed1__list-cnt-meta time {
  display: inline-block;
  margin-right: 10px;
}
.feed1__list-cnt-cat {
  font-weight: 600;
}
@media only screen and (max-width:540px) {
  .feed1__list-cnt-cat {
    font-size: 11px;
  }
}
.feed1__list-cnt-cat a {
  color: #B8384F;
}
.feed1__list-cnt-ttl {
  margin-top: 10px;
  font-size: 18px;
  line-height: 1.6;
}
@media only screen and (max-width:912px) {
  .feed1__list-cnt-ttl {
    font-size: 15px;
  }
}
@media only screen and (max-width:540px) {
  .feed1__list-cnt-ttl {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    margin-top: 5px;
    font-size: 12px;
    overflow: hidden;
  }
}
.feed1__list-cnt-ttl a {
  display: block;
}
.feed1 .no-post {
  font-size: 15px;
  padding-bottom: 40px;
}
@media only screen and (max-width:540px) {
  .feed1 .no-post {
    font-size: 13px;
    padding-bottom: 20px;
  }
}

.ui-accordion__item-head {
  position: relative;
  cursor: pointer;
}
.ui-accordion__item-head::after {
  content: "";
  display: block;
  position: absolute;
  right: 20px;
  width: 19px;
  height: 19px;
  background: url(/assets/images/common/plus01.png) no-repeat center/19px;
  transform: rotate(0);
  transition: 0.2s;
}
@media only screen and (max-width:540px) {
  .ui-accordion__item-head::after {
    right: 15px;
    width: 12px;
    height: 12px;
    background-size: 12px;
  }
}
.ui-accordion__item-cnt {
  height: 0;
  overflow: hidden;
  transition: 0.3s;
}
.ui-accordion__item.open .ui-accordion__item-head::after {
  transform: rotate(135deg);
  transition: 0.2s;
}
.ui-accordion__item.open .ui-accordion__item-cnt {
  height: auto;
}

.mailform {
  font-size: 16px;
  line-height: 1.4;
}
@media only screen and (max-width:912px) {
  .mailform {
    font-size: 15px;
  }
}
@media only screen and (max-width:540px) {
  .mailform {
    font-size: 13px;
  }
}
.mailform dl {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 30px;
}
@media only screen and (max-width:912px) {
  .mailform dl {
    display: block;
  }
}
.mailform dl dt {
  width: 25%;
  margin-bottom: 20px;
  padding: 15px 15px 15px 0;
}
@media only screen and (max-width:912px) {
  .mailform dl dt {
    width: auto;
    margin-bottom: 15px;
    padding: 0;
  }
}
@media only screen and (max-width:540px) {
  .mailform dl dt {
    margin-bottom: 12px;
  }
}
.mailform dl dt span {
  color: #B8384F;
}
.mailform dl dd {
  width: 75%;
  margin-bottom: 30px;
}
@media only screen and (max-width:912px) {
  .mailform dl dd {
    width: auto;
  }
}
.mailform dl dd .wpcf7-text, .mailform dl dd .wpcf7-email, .mailform dl dd .wpcf7-select, .mailform dl dd .wpcf7-textarea {
  display: block;
  padding: 15px;
  background: #FAF9F3;
  border-bottom: 1px solid #989898;
}
@media only screen and (max-width:540px) {
  .mailform dl dd .wpcf7-text, .mailform dl dd .wpcf7-email, .mailform dl dd .wpcf7-select, .mailform dl dd .wpcf7-textarea {
    padding: 10px;
  }
}
.mailform dl dd .wpcf7-text.width30, .mailform dl dd .wpcf7-email.width30, .mailform dl dd .wpcf7-select.width30, .mailform dl dd .wpcf7-textarea.width30 {
  width: 30%;
}
@media only screen and (max-width:540px) {
  .mailform dl dd .wpcf7-text.width30, .mailform dl dd .wpcf7-email.width30, .mailform dl dd .wpcf7-select.width30, .mailform dl dd .wpcf7-textarea.width30 {
    width: 100%;
  }
}
.mailform dl dd .wpcf7-text.width50, .mailform dl dd .wpcf7-email.width50, .mailform dl dd .wpcf7-select.width50, .mailform dl dd .wpcf7-textarea.width50 {
  width: 50%;
}
@media only screen and (max-width:540px) {
  .mailform dl dd .wpcf7-text.width50, .mailform dl dd .wpcf7-email.width50, .mailform dl dd .wpcf7-select.width50, .mailform dl dd .wpcf7-textarea.width50 {
    width: 100%;
  }
}
.mailform dl dd .wpcf7-text.width80, .mailform dl dd .wpcf7-email.width80, .mailform dl dd .wpcf7-select.width80, .mailform dl dd .wpcf7-textarea.width80 {
  width: 80%;
}
@media only screen and (max-width:540px) {
  .mailform dl dd .wpcf7-text.width80, .mailform dl dd .wpcf7-email.width80, .mailform dl dd .wpcf7-select.width80, .mailform dl dd .wpcf7-textarea.width80 {
    width: 100%;
  }
}
.mailform dl dd .wpcf7-text.width100, .mailform dl dd .wpcf7-email.width100, .mailform dl dd .wpcf7-select.width100, .mailform dl dd .wpcf7-textarea.width100 {
  width: 100%;
}
.mailform dl dd .wpcf7-text.mb20, .mailform dl dd .wpcf7-email.mb20, .mailform dl dd .wpcf7-select.mb20, .mailform dl dd .wpcf7-textarea.mb20 {
  margin-bottom: 20px;
}
.mailform dl dd .wpcf7-select {
  padding-right: 30px;
  color: #0A0A0A;
  background: url(/assets/images/common/arrow04.png) no-repeat #FAF9F3 center right 10px/8px;
  cursor: pointer;
}
@media only screen and (max-width:540px) {
  .mailform dl dd .wpcf7-select {
    padding-right: 20px;
    background-size: 6px;
  }
}
.mailform dl dd .wpcf7-radio {
  display: block;
  padding: 15px 0;
}
@media only screen and (max-width:540px) {
  .mailform dl dd .wpcf7-radio {
    padding: 7px 0 0;
  }
}
.mailform dl dd .wpcf7-radio.ceremony-style span, .mailform dl dd .wpcf7-radio.inquiry-type span {
  display: inline-block;
  padding-bottom: 4px;
}
.mailform dl dd .wpcf7-radio.ceremony-style span.wpcf7-list-item-label, .mailform dl dd .wpcf7-radio.inquiry-type span.wpcf7-list-item-label {
  padding-left: 4px;
}
.mailform dl dd .wpcf7-not-valid-tip {
  display: inline-block;
  padding-top: 10px;
  font-size: 13px;
  letter-spacing: 0.01em;
}
.mailform dl dd .wpcf7-list-item {
  margin: 0 30px 0 0;
}
.mailform dl dd.flex {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.mailform dl dd.flex > span {
  display: block;
  width: 16%;
  margin: 0 10px;
}
@media only screen and (max-width:540px) {
  .mailform dl dd.flex > span {
    width: 18%;
    margin: 0 8px;
    letter-spacing: 0.01em;
  }
}
.mailform dl dd.flex > span input, .mailform dl dd.flex > span select {
  width: 100%;
}
@media only screen and (max-width:540px) {
  .mailform dl dd.flex span[data-name=meeting-time] {
    width: 80px;
    margin: 15px 0 0 0;
  }
}
.mailform dl .wpcf7cf_group {
  width: 100%;
  margin-bottom: 30px;
  padding: 20px 40px;
  background: #F3F5FA;
}
@media only screen and (max-width:912px) {
  .mailform dl .wpcf7cf_group {
    padding: 35px 35px 15px;
  }
}
@media only screen and (max-width:540px) {
  .mailform dl .wpcf7cf_group {
    padding: 25px 20px 5px;
  }
}
.mailform dl .wpcf7cf_group input, .mailform dl .wpcf7cf_group select {
  background-color: #FFF;
}
.mailform .privacy {
  margin-bottom: 40px;
  text-align: center;
}
@media only screen and (max-width:540px) {
  .mailform .privacy {
    margin-bottom: 30px;
  }
}
.mailform .privacy input {
  margin-right: 5px;
}
.mailform .privacy a {
  color: #B8384F;
  text-decoration: underline;
}
.mailform .send {
  position: relative;
  width: 450px;
  margin: 0 auto;
}
@media only screen and (max-width:912px) {
  .mailform .send {
    width: 60%;
  }
}
@media only screen and (max-width:540px) {
  .mailform .send {
    width: 100%;
  }
}
.mailform .send .wpcf7-submit {
  display: block;
  position: relative;
  width: 100%;
  padding: 28px 35px;
  font-size: 18px;
  letter-spacing: 0.1em;
  color: #0A0A0A;
  border: 1px solid #989898;
}
@media only screen and (max-width:540px) {
  .mailform .send .wpcf7-submit {
    padding: 20px;
    font-size: 14px;
  }
}
.mailform .send .wpcf7-spinner {
  position: absolute;
  left: 50%;
  bottom: -30px;
  margin: 0;
  transform: translateX(-50%);
}
.mailform .send::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  z-index: 12;
  width: 6px;
  height: 6px;
  background: url(/assets/images/common/arrow01.png) no-repeat right/6px;
  transition: 0.2s;
  transform: translateY(-50%);
}
@media (hover: hover) and (pointer: fine) {
  .mailform .send:hover::after {
    right: 15px;
    transition: 0.2s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .mailform .send:hover::after {
    right: 15px;
    transition: 0.2s;
  }
}
.mailform .wpcf7-response-output {
  margin-top: 40px !important;
  padding: 15px 20px !important;
}

.wp-pagenavi {
  padding-top: 50px;
  text-align: center;
  font-size: 22px;
}
@media only screen and (max-width:912px) {
  .wp-pagenavi {
    padding-top: 40px;
    font-size: 18px;
  }
}
@media only screen and (max-width:540px) {
  .wp-pagenavi {
    padding-top: 20px;
    font-size: 16px;
  }
}
.wp-pagenavi span, .wp-pagenavi a {
  display: inline-block;
  padding: 10px;
}
.wp-pagenavi a {
  transition: 0.2s;
  color: #B8384F;
}
.wp-pagenavi a:hover {
  opacity: 0.6;
  transition: 0.2s;
}

.swiper-slide {
  transition: opacity 1s ease;
  opacity: 0;
}

.swiper-slide-active {
  opacity: 1;
}

.swiper-pagination-bullet {
  position: relative;
  width: 30px;
  height: 2px;
  background: rgba(0, 0, 0, 0.1);
  opacity: 1;
  margin: 0 5px;
}
.swiper-pagination-bullet::before {
  content: "";
  position: absolute;
  top: -8px;
  left: -5px;
  width: 40px;
  height: 18px;
  background: transparent;
  cursor: pointer;
}

.swiper-pagination-bullet-active {
  background: #B8384F;
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
  bottom: -20px;
  left: 0;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.grecaptcha-badge {
  visibility: hidden;
}

@keyframes reserveBtn {
  0% {
    opacity: 0;
    right: -5%;
  }
  100% {
    opacity: 1;
    right: 0;
  }
}
@keyframes arrowIn {
  0% {
    opacity: 1;
    transform: translateY(-50%);
  }
  50% {
    opacity: 0;
    transform: translateY(2px);
  }
  51% {
    opacity: 0;
    transform: translateY(-10px);
  }
  100% {
    opacity: 1;
    transform: translateY(-50%);
  }
}
.p-home {
  padding-top: 20px;
}
@media only screen and (max-width:912px) {
  .p-home {
    padding: 0;
  }
}
.p-home__head {
  position: relative;
  padding: 0 5%;
}
.p-home__head-kv {
  position: relative;
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
}
.p-home__head-kv-tokyo img {
  width: 100%;
  display: block;
}
.p-home__head-kv-cloud {
  position: absolute;
  top: 0;
  right: 0;
  width: 1673px;
  animation: moveRight 30s linear forwards;
}
@media only screen and (max-width:912px) {
  .p-home__head-kv-cloud {
    width: 1000px;
    animation: moveRight 40s linear forwards;
  }
}
@media only screen and (max-width:540px) {
  .p-home__head-kv-cloud {
    width: 600px;
    animation: moveRight 50s linear forwards;
  }
}
.p-home__head-kv-cloud img {
  width: 100%;
  height: auto;
}
.p-home__head-kv-nav {
  position: absolute;
  top: 30px;
  right: 30px;
}
@media only screen and (max-width:1024px) {
  .p-home__head-kv-nav {
    top: 20px;
    right: 10px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__head-kv-nav {
    display: none;
  }
}
.p-home__head-kv-nav ul {
  display: flex;
  align-items: center;
  list-style: none;
}
.p-home__head-kv-nav ul li {
  position: relative;
}
@media only screen and (max-width:1024px) {
  .p-home__head-kv-nav ul li {
    font-size: 12px;
  }
}
.p-home__head-kv-nav ul li a {
  display: inline-block;
  padding: 10px 25px;
  color: #FFF;
  transition: 0.2s;
}
@media only screen and (max-width:1024px) {
  .p-home__head-kv-nav ul li a {
    padding: 10px 20px;
  }
}
@media only screen and (max-width:912px) {
  .p-home__head-kv-nav ul li a {
    padding: 10px 15px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .p-home__head-kv-nav ul li a:hover:hover {
    opacity: 0.6;
    transition: 0.2s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .p-home__head-kv-nav ul li a:hover:hover {
    opacity: 0.6;
    transition: 0.2s;
  }
}
.p-home__head-kv-nav ul li:not(:first-child)::after {
  content: "";
  display: block;
  position: absolute;
  top: 12px;
  width: 1px;
  height: 10px;
  background: #FFF;
}
@media only screen and (max-width:1024px) {
  .p-home__head-kv-nav ul li:not(:first-child)::after {
    top: 11px;
  }
}
.p-home__head-kv-ttl {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  text-align: center;
  color: #FFF;
  text-shadow: 0 0 5px rgba(0, 0, 0, 0.25);
  transform: translateY(-50%);
}
.p-home__head-kv-ttl h1 {
  margin-bottom: 25px;
  font-size: 43px;
  font-weight: 400;
}
@media only screen and (max-width:1024px) {
  .p-home__head-kv-ttl h1 {
    font-size: 34px;
  }
}
@media only screen and (max-width:912px) {
  .p-home__head-kv-ttl h1 {
    margin-bottom: 20px;
    font-size: 28px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__head-kv-ttl h1 {
    margin-bottom: 10px;
    font-size: 18px;
  }
}
.p-home__head-kv-ttl h1 span {
  font-size: 50px;
}
@media only screen and (max-width:1024px) {
  .p-home__head-kv-ttl h1 span {
    font-size: 41px;
  }
}
@media only screen and (max-width:912px) {
  .p-home__head-kv-ttl h1 span {
    font-size: 35px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__head-kv-ttl h1 span {
    font-size: 24px;
  }
}
.p-home__head-kv-ttl p {
  font-size: 20px;
  line-height: 1.4;
}
@media only screen and (max-width:1024px) {
  .p-home__head-kv-ttl p {
    font-size: 16px;
  }
}
@media only screen and (max-width:912px) {
  .p-home__head-kv-ttl p {
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__head-kv-ttl p {
    font-size: 11px;
  }
}
.p-home__head-kv-logo {
  position: absolute;
  bottom: 30px;
  left: 30px;
  z-index: 10;
}
@media only screen and (max-width:540px) {
  .p-home__head-kv-logo {
    bottom: 20px;
    left: 20px;
  }
  .p-home__head-kv-logo img {
    width: 120px;
  }
}
.p-home__head-lead {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 50px;
  font-size: 15px;
  text-align: center;
  line-height: 1.6;
}
@media only screen and (max-width:912px) {
  .p-home__head-lead {
    padding: 40px 0;
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__head-lead {
    padding: 30px 0;
    font-size: 13px;
  }
}
.p-home__head::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: calc(100% - 40vh);
  background: url(/assets/images/common/ptn1.png) repeat left/143px;
}
@media only screen and (max-width:1024px) {
  .p-home__head::before {
    height: calc(100% - 15vh);
  }
}
@media only screen and (max-width:912px) {
  .p-home__head::before {
    height: calc(100% - 25vh);
  }
}
.p-home__important {
  width: 100%;
  max-width: 1400px;
  margin: 50px auto 0;
  font-size: 16px;
  font-weight: 600;
  text-align: center;
  line-height: 1.6;
}
@media only screen and (max-width:912px) {
  .p-home__important {
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__important {
    margin: 30px auto 0;
    font-size: 13px;
  }
}
.p-home__important a {
  display: block;
  color: #B8384F;
  padding: 30px 5%;
  background: #FFF;
  border: 1px solid #E4E9EC;
}
@media only screen and (max-width:540px) {
  .p-home__important a {
    padding: 20px 5%;
  }
}
.p-home__important a:nth-child(n+2) {
  margin-top: 10px;
}
.p-home__pnl-wrap {
  display: flex;
  justify-content: space-between;
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 50px 0;
}
@media only screen and (max-width:912px) {
  .p-home__pnl-wrap {
    padding: 40px 0;
  }
}
@media only screen and (max-width:540px) {
  .p-home__pnl-wrap {
    display: block;
    padding: 30px 0;
  }
}
.p-home__pnl {
  width: 48%;
}
@media only screen and (max-width:540px) {
  .p-home__pnl {
    width: auto;
  }
}
@media only screen and (max-width:540px) {
  .p-home__pnl:first-child {
    margin-bottom: 25px;
  }
}
.p-home__pnl-ttl {
  padding: 20px 30px;
  background: #0A0A0A;
  color: #FFF;
}
@media only screen and (max-width:912px) {
  .p-home__pnl-ttl {
    padding: 16px 20px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__pnl-ttl {
    padding: 14px 18px;
  }
}
.p-home__pnl-ttl h2 {
  display: inline-block;
  font-size: 19px;
}
@media only screen and (max-width:1024px) {
  .p-home__pnl-ttl h2 {
    font-size: 16px;
  }
}
@media only screen and (max-width:912px) {
  .p-home__pnl-ttl h2 {
    font-size: 13px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__pnl-ttl h2 {
    font-size: 12px;
  }
}
.p-home__pnl-ttl small {
  display: inline-block;
  padding-left: 20px;
  font-size: 12px;
  color: #989898;
  letter-spacing: 0.06em;
}
@media only screen and (max-width:1024px) {
  .p-home__pnl-ttl small {
    padding-left: 15px;
    font-size: 11px;
  }
}
@media only screen and (max-width:912px) {
  .p-home__pnl-ttl small {
    padding-left: 10px;
    font-size: 10px;
  }
}
.p-home__pnl-room {
  padding: 20px 30px;
  background: #FFF;
}
@media only screen and (max-width:912px) {
  .p-home__pnl-room {
    padding: 20px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__pnl-room {
    padding: 18px;
  }
}
.p-home__pnl-room-data {
  display: flex;
}
@media only screen and (max-width:1024px) {
  .p-home__pnl-room-data {
    justify-content: space-between;
  }
}
.p-home__pnl-room-data label {
  width: 15%;
  margin-right: 4%;
}
@media only screen and (max-width:1024px) {
  .p-home__pnl-room-data label {
    margin: 0;
  }
}
.p-home__pnl-room-data label:first-child {
  width: 25%;
  min-width: 115px;
}
@media only screen and (max-width:1024px) {
  .p-home__pnl-room-data label:first-child {
    width: 38%;
  }
}
@media only screen and (max-width:912px) {
  .p-home__pnl-room-data label:first-child {
    min-width: 100px;
  }
}
.p-home__pnl-room-data label p {
  margin-bottom: 3px;
  letter-spacing: 0.05em;
  white-space: nowrap;
}
@media only screen and (max-width:1024px) {
  .p-home__pnl-room-data label p {
    font-size: 13px;
  }
}
@media only screen and (max-width:912px) {
  .p-home__pnl-room-data label p {
    font-size: 12px;
  }
}
.p-home__pnl-room-data label select {
  width: 100%;
  padding: 10px 10px 10px 0;
  border-bottom: 1px solid #0A0A0A;
  font-size: 18px;
  letter-spacing: 0.1em;
  color: #0A0A0A;
  cursor: pointer;
}
@media only screen and (max-width:912px) {
  .p-home__pnl-room-data label select {
    font-size: 15px;
  }
}
.p-home__pnl-room-data label select.date {
  background: url(/assets/images/common/ico_cal.png) no-repeat center right 10px/16px;
}
.p-home__pnl-room-data label select.number {
  background: url(/assets/images/common/arrow04.png) no-repeat center right 10px/6px;
}
.p-home__pnl-room-foot {
  display: flex;
  align-items: center;
  padding-top: 30px;
}
@media only screen and (max-width:1024px) {
  .p-home__pnl-room-foot {
    display: block;
    padding-top: 20px;
  }
}
.p-home__pnl-room-btn {
  width: 50%;
  min-width: 180px;
}
@media only screen and (max-width:1024px) {
  .p-home__pnl-room-btn {
    width: auto;
    min-width: auto;
    margin-bottom: 20px;
  }
}
.p-home__pnl-room-btn a {
  position: relative;
  display: block;
  width: 100%;
  padding: 20px 10px;
  text-align: center;
  border-radius: 4px;
  font-size: 15px;
  color: #FFF;
  background: #B8384F;
}
@media only screen and (max-width:1024px) {
  .p-home__pnl-room-btn a {
    width: 100%;
  }
}
@media only screen and (max-width:540px) {
  .p-home__pnl-room-btn a {
    padding: 15px 10px;
    font-size: 14px;
  }
}
.p-home__pnl-room-btn a span {
  display: inline-block;
  padding: 4px 0 4px 25px;
  background: url(/assets/images/common/ico_search.png) no-repeat left/20px;
}
@media (hover: hover) and (pointer: fine) {
  .p-home__pnl-room-btn a:hover:hover::after {
    right: 10px;
    transition: 0.2s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .p-home__pnl-room-btn a:hover:hover::after {
    right: 10px;
    transition: 0.2s;
  }
}
.p-home__pnl-room-aside {
  padding-left: 5%;
}
@media only screen and (max-width:1024px) {
  .p-home__pnl-room-aside {
    padding: 0;
  }
}
@media only screen and (max-width:912px) {
  .p-home__pnl-room-aside {
    display: flex;
    align-items: center;
  }
}
.p-home__pnl-room-tel {
  margin-bottom: 12px;
  padding-left: 25px;
  font-size: 21px;
  background: url(/assets/images/common/ico_tel.png) no-repeat left/16px;
}
@media only screen and (max-width:912px) {
  .p-home__pnl-room-tel {
    margin: 0 2.8% 0 0;
    font-size: 18px;
  }
}
.p-home__pnl-room-confirm {
  letter-spacing: 0.05em;
}
@media only screen and (max-width:912px) {
  .p-home__pnl-room-confirm {
    margin-top: 2px;
    font-size: 12px;
  }
}
.p-home__pnl-room-confirm a {
  display: inline-block;
  padding-left: 25px;
  background: url(/assets/images/common/ico_arrow06.png) no-repeat 1px center/14px;
}
@media only screen and (max-width:912px) {
  .p-home__pnl-room-confirm a {
    padding-left: 15px;
    background-size: 10px;
  }
}
.p-home__pnl-notes {
  display: block;
  padding-top: 15px;
  font-weight: 600;
  text-align: right;
  font-size: 12px;
}
.p-home__pnl-notes a {
  color: #B8384F;
  text-decoration: underline;
}
.p-home__pnl-rest {
  display: flex;
  padding: 15px 0;
  background: #FFF;
}
.p-home__pnl-rest-item {
  width: 50%;
  padding: 10px;
  text-align: center;
}
@media only screen and (max-width:912px) {
  .p-home__pnl-rest-item {
    padding: 10px 0;
  }
}
.p-home__pnl-rest-item:first-child {
  border-right: 1px solid #E4E9EC;
}
.p-home__pnl-rest-ttl {
  margin-bottom: 25px;
  font-size: 16px;
}
@media only screen and (max-width:912px) {
  .p-home__pnl-rest-ttl {
    margin-bottom: 20px;
  }
}
.p-home__pnl-rest-ttl small {
  font-size: 14px;
}
@media only screen and (max-width:1024px) {
  .p-home__pnl-rest-ttl small {
    display: block;
    margin-bottom: 10px;
  }
}
@media only screen and (max-width:912px) {
  .p-home__pnl-rest-ttl small {
    margin-bottom: 10px;
    font-size: 12px;
  }
}
.p-home__pnl-rest-btn {
  display: inline-block;
  width: 80%;
  margin-bottom: 20px;
}
.p-home__pnl-rest-btn a {
  position: relative;
  display: block;
  width: 100%;
  padding: 20px 10px;
  text-align: center;
  font-size: 15px;
  letter-spacing: 0.02em;
  border-radius: 4px;
  color: #FFF;
  background: #B8384F;
}
@media only screen and (max-width:1024px) {
  .p-home__pnl-rest-btn a {
    width: 100%;
  }
}
@media only screen and (max-width:912px) {
  .p-home__pnl-rest-btn a {
    font-size: 13px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__pnl-rest-btn a {
    padding: 16px 10px;
  }
}
.p-home__pnl-rest-btn a span {
  position: relative;
}
.p-home__pnl-rest-btn a span::after {
  content: "";
  display: block;
  position: absolute;
  top: -5px;
  right: -15px;
  z-index: 10;
  width: 12px;
  height: 12px;
  background: url(/assets/images/common/ico_newtab02.png) no-repeat right/12px;
}
.p-home__pnl-rest-tel span {
  display: inline-block;
  padding: 0 2.8%;
  white-space: nowrap;
}
@media only screen and (max-width:1024px) {
  .p-home__pnl-rest-tel span {
    display: block;
    margin-bottom: 10px;
  }
}
@media only screen and (max-width:912px) {
  .p-home__pnl-rest-tel span {
    margin-bottom: 7px;
    font-size: 12px;
  }
}
.p-home__pnl-rest-tel p {
  display: inline-block;
  padding-left: 25px;
  font-size: 21px;
  background: url(/assets/images/common/ico_tel.png) no-repeat left/16px;
}
@media only screen and (max-width:912px) {
  .p-home__pnl-rest-tel p {
    font-size: 18px;
  }
}
.p-home__info {
  padding: 70px 5% 0;
}
@media only screen and (max-width:912px) {
  .p-home__info {
    padding: 60px 5% 0;
  }
}
@media only screen and (max-width:540px) {
  .p-home__info {
    padding: 50px 5% 0;
  }
}
.p-home__info-in {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}
.p-home__info-ttl {
  margin-bottom: 40px;
}
@media only screen and (max-width:540px) {
  .p-home__info-ttl {
    margin-bottom: 30px;
  }
}
.p-home__info-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  list-style: none;
}
.p-home__info-list li {
  width: 23%;
}
@media only screen and (max-width:540px) {
  .p-home__info-list li {
    width: 47.5%;
    margin-bottom: 30px;
  }
}
.p-home__info-list li h3 {
  font-size: 15px;
}
@media only screen and (max-width:1024px) {
  .p-home__info-list li h3 {
    font-size: 14px;
  }
}
@media only screen and (max-width:912px) {
  .p-home__info-list li h3 {
    font-size: 13px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__info-list li h3 {
    font-size: 12px;
  }
}
.p-home__info-list-pic {
  overflow: hidden;
}
.p-home__info-list-pic img {
  display: block;
  width: 100%;
  height: auto;
  transition: 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .p-home__info-list-pic a:hover:hover img {
    transform: scale(1.06);
    transition: 0.3s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .p-home__info-list-pic a:hover:hover img {
    transform: scale(1.06);
    transition: 0.3s;
  }
}
.p-home__info-list-pic {
  margin-bottom: 20px;
}
.p-home__info-list-meta {
  display: flex;
  margin-bottom: 15px;
  line-height: 1.4;
}
@media only screen and (max-width:1024px) {
  .p-home__info-list-meta {
    font-size: 12px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__info-list-meta {
    margin-bottom: 5px;
    font-size: 11px;
  }
}
.p-home__info-list-meta time {
  margin-right: 15px;
}
@media only screen and (max-width:540px) {
  .p-home__info-list-meta time {
    margin-right: 10px;
  }
}
.p-home__info-list-cat a {
  color: #B8384F;
}
.p-home__info-list-ttl {
  line-height: 1.6;
}
.p-home__column {
  padding: 80px 5%;
}
@media only screen and (max-width:912px) {
  .p-home__column {
    padding: 60px 5%;
  }
}
@media only screen and (max-width:540px) {
  .p-home__column {
    padding: 50px 5% 30px;
  }
}
.p-home__column-in {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}
.p-home__column-ttl {
  margin-bottom: 40px;
}
@media only screen and (max-width:540px) {
  .p-home__column-ttl {
    margin-bottom: 30px;
  }
}
.p-home__column-list {
  display: flex;
  flex-wrap: wrap;
  gap: 5%;
  list-style: none;
}
@media only screen and (max-width:912px) {
  .p-home__column-list {
    display: block;
  }
}
.p-home__column-list li {
  display: flex;
  align-items: center;
  gap: 5%;
  width: 47.5%;
  margin-bottom: 30px;
}
@media only screen and (max-width:912px) {
  .p-home__column-list li {
    width: auto;
  }
}
.p-home__column-list-pic {
  width: 40%;
  overflow: hidden;
}
@media only screen and (max-width:912px) {
  .p-home__column-list-pic {
    width: 30%;
  }
}
.p-home__column-list-pic img {
  display: block;
  width: 100%;
  height: auto;
  transition: 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .p-home__column-list-pic a:hover:hover img {
    transform: scale(1.06);
    transition: 0.3s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .p-home__column-list-pic a:hover:hover img {
    transform: scale(1.06);
    transition: 0.3s;
  }
}
.p-home__column-list-cnt {
  width: 60%;
}
@media only screen and (max-width:912px) {
  .p-home__column-list-cnt {
    width: 70%;
  }
}
.p-home__column-list-ttl {
  font-size: 15px;
  line-height: 1.6;
}
@media only screen and (max-width:912px) {
  .p-home__column-list-ttl {
    font-size: 13px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__column-list-ttl {
    font-size: 12px;
  }
}
.p-home__column-list-ttl a {
  display: block;
}
.p-home__column-list-date {
  padding-top: 10px;
  line-height: 1.4;
}
@media only screen and (max-width:912px) {
  .p-home__column-list-date {
    font-size: 12px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__column-list-date {
    font-size: 10px;
    padding-top: 7px;
  }
}
.p-home__act {
  padding: 180px 5% 120px;
  background: url(/assets/images/common/ptn1.png) repeat left/143px;
}
@media only screen and (max-width:1024px) {
  .p-home__act {
    padding: 160px 5% 100px;
  }
}
@media only screen and (max-width:912px) {
  .p-home__act {
    padding: 120px 5% 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__act {
    padding: 100px 5% 60px;
  }
}
.p-home__act-item {
  position: relative;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto 120px;
}
@media only screen and (max-width:912px) {
  .p-home__act-item {
    margin: 0 auto 90px;
  }
}
.p-home__act-item-left {
  width: 60%;
  padding: 100px 60px 40px;
  background: #FFF;
}
@media only screen and (max-width:1024px) {
  .p-home__act-item-left {
    padding: 70px 50px 30px;
  }
}
@media only screen and (max-width:912px) {
  .p-home__act-item-left {
    padding: 60px 10% 25px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__act-item-left {
    width: 80%;
    padding: 60px 8% 20px;
  }
}
.p-home__act-item-right {
  position: absolute;
  top: -60px;
  right: 0;
  width: 100%;
  max-width: 54%;
}
@media only screen and (max-width:1024px) {
  .p-home__act-item-right {
    top: -40px;
  }
}
.p-home__act-item-right img {
  width: 100%;
  height: auto;
}
.p-home__act-item-ttl {
  position: absolute;
  top: -80px;
  left: 60px;
  writing-mode: vertical-rl;
  text-orientation: mixed;
}
@media only screen and (max-width:1024px) {
  .p-home__act-item-ttl {
    left: 50px;
  }
}
@media only screen and (max-width:912px) {
  .p-home__act-item-ttl {
    left: 35px;
    top: -60px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__act-item-ttl {
    left: 5%;
  }
}
.p-home__act-item-ttl h2 {
  font-size: 38px;
  letter-spacing: 0.1em;
}
@media only screen and (max-width:1024px) {
  .p-home__act-item-ttl h2 {
    font-size: 32px;
  }
}
@media only screen and (max-width:912px) {
  .p-home__act-item-ttl h2 {
    font-size: 28px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__act-item-ttl h2 {
    font-size: 25px;
  }
}
.p-home__act-item-ttl small {
  font-size: 18px;
  color: #B8384F;
}
@media only screen and (max-width:1024px) {
  .p-home__act-item-ttl small {
    font-size: 16px;
  }
}
@media only screen and (max-width:912px) {
  .p-home__act-item-ttl small {
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__act-item-ttl small {
    font-size: 12px;
  }
}
.p-home__act-item-ttl::before {
  content: "";
  display: block;
  width: 1px;
  height: 100%;
  margin-left: 20px;
  background: #0A0A0A;
  opacity: 0.15;
}
.p-home__act-item-ttl::after {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  width: 1px;
  height: 18%;
  margin-left: 20px;
  background: #B8384F;
}
.p-home__act-item-list {
  margin-bottom: 30px;
  font-size: 16px;
  list-style: none;
}
@media only screen and (max-width:1024px) {
  .p-home__act-item-list {
    font-size: 14px;
  }
}
@media only screen and (max-width:912px) {
  .p-home__act-item-list {
    margin-bottom: 20px;
    font-size: 12px;
  }
}
.p-home__act-item-list li {
  line-height: 1.6;
}
.p-home__act-item-list li a {
  display: inline-block;
  padding: 5px 0 5px 15px;
  background: url(/assets/images/common/arrow01.png) no-repeat left/6px;
}
@media only screen and (max-width:912px) {
  .p-home__act-item-list li a {
    padding: 3px 0 3px 15px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__act-item-list li a {
    padding: 3px 0 3px 12px;
    background-size: 5px;
  }
}
.p-home__act-item:nth-child(2n) .p-home__act-item-left {
  margin-left: 40%;
  padding: 100px 60px 40px 19%;
}
@media only screen and (max-width:1024px) {
  .p-home__act-item:nth-child(2n) .p-home__act-item-left {
    padding: 70px 50px 30px 19%;
  }
}
@media only screen and (max-width:912px) {
  .p-home__act-item:nth-child(2n) .p-home__act-item-left {
    padding: 60px 35px 25px 19%;
  }
}
@media only screen and (max-width:540px) {
  .p-home__act-item:nth-child(2n) .p-home__act-item-left {
    margin: 0 0 0 auto;
    padding: 60px 8% 20px;
  }
}
.p-home__act-item:nth-child(2n) .p-home__act-item-right {
  right: auto;
  left: 0;
}
.p-home__act-item:nth-child(2n) .p-home__act-item-ttl {
  right: 60px;
  left: auto;
}
@media only screen and (max-width:1024px) {
  .p-home__act-item:nth-child(2n) .p-home__act-item-ttl {
    right: 50px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__act-item:nth-child(2n) .p-home__act-item-ttl {
    right: 5%;
  }
}
.p-home__act-item:nth-child(2n) .p-home__act-item-view {
  text-align: right;
}
.p-home__act-item:last-child {
  margin-bottom: 0;
}
.p-home__feed {
  padding: 70px 5% 0;
}
@media only screen and (max-width:912px) {
  .p-home__feed {
    padding: 60px 5% 0;
  }
}
@media only screen and (max-width:540px) {
  .p-home__feed {
    padding: 50px 5% 0;
  }
}
.p-home__feed-in {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}
.p-home__feed-ttl {
  margin-bottom: 40px;
}
@media only screen and (max-width:540px) {
  .p-home__feed-ttl {
    margin-bottom: 30px;
  }
}
.p-home__feed-list {
  display: flex;
  flex-wrap: wrap;
  gap: 5%;
  list-style: none;
}
@media only screen and (max-width:912px) {
  .p-home__feed-list {
    display: block;
  }
}
.p-home__feed-list li {
  display: flex;
  align-items: center;
  gap: 5%;
  width: 47.5%;
  margin-bottom: 30px;
}
@media only screen and (max-width:912px) {
  .p-home__feed-list li {
    width: auto;
  }
}
@media only screen and (max-width:540px) {
  .p-home__feed-list li {
    align-items: start;
  }
}
.p-home__feed-list-pic {
  width: 40%;
  overflow: hidden;
}
@media only screen and (max-width:912px) {
  .p-home__feed-list-pic {
    width: 30%;
  }
}
.p-home__feed-list-pic img {
  display: block;
  width: 100%;
  height: auto;
  transition: 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .p-home__feed-list-pic a:hover:hover img {
    transform: scale(1.06);
    transition: 0.3s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .p-home__feed-list-pic a:hover:hover img {
    transform: scale(1.06);
    transition: 0.3s;
  }
}
.p-home__feed-list-cnt {
  width: 60%;
}
@media only screen and (max-width:912px) {
  .p-home__feed-list-cnt {
    width: 70%;
  }
}
.p-home__feed-list-ttl {
  font-size: 15px;
  line-height: 1.6;
}
@media only screen and (max-width:912px) {
  .p-home__feed-list-ttl {
    font-size: 13px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__feed-list-ttl {
    font-size: 12px;
  }
}
.p-home__feed-list-ttl a {
  display: block;
}
.p-home__feed-list-date {
  padding-top: 10px;
  line-height: 1.4;
}
@media only screen and (max-width:912px) {
  .p-home__feed-list-date {
    font-size: 12px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__feed-list-date {
    font-size: 10px;
    padding-top: 7px;
  }
}
.p-home__rec {
  padding: 80px 5% 120px;
  overflow: hidden;
}
@media only screen and (max-width:912px) {
  .p-home__rec {
    padding: 60px 5% 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__rec {
    padding: 50px 5% 60px;
  }
}
.p-home__rec-ttl {
  max-width: 1200px;
  margin: 0 auto 40px;
}
.p-home__rec .slider-wrap {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
  cursor: grab;
}
.p-home__rec-list {
  display: flex;
  position: relative;
  list-style: none;
}
.p-home__rec-list li {
  display: flex;
  flex: 0 0 auto;
  position: relative;
  width: 60%;
  padding: 0 40px 0 20px;
}
@media only screen and (max-width:540px) {
  .p-home__rec-list li {
    display: block;
    padding: 0 20px;
  }
}
.p-home__rec-list li::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  width: 1px;
  height: 100%;
  background: #0A0A0A;
  opacity: 0.15;
}
.p-home__rec-list li::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 10%;
  background: #B8384F;
}
.p-home__rec-list-pic {
  width: 50%;
}
@media only screen and (max-width:540px) {
  .p-home__rec-list-pic {
    width: auto;
    margin-bottom: 20px;
  }
}
.p-home__rec-list-pic img {
  display: block;
  width: 100%;
  height: auto;
}
.p-home__rec-list-cnt {
  width: 50%;
  margin-left: 6%;
  line-height: 1.6;
}
@media only screen and (max-width:540px) {
  .p-home__rec-list-cnt {
    width: auto;
    margin: 0;
  }
}
.p-home__rec-list-ttl {
  margin-bottom: 20px;
}
@media only screen and (max-width:1024px) {
  .p-home__rec-list-ttl {
    font-size: 15px;
  }
}
@media only screen and (max-width:912px) {
  .p-home__rec-list-ttl {
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__rec-list-ttl {
    font-size: 13px;
  }
}
.p-home__rec-list-lead {
  font-size: 13px;
}
@media only screen and (max-width:1024px) {
  .p-home__rec-list-lead {
    font-size: 12px;
  }
}
@media only screen and (max-width:912px) {
  .p-home__rec-list-lead {
    display: none;
  }
}
.p-home__foreign {
  padding: 80px 5% 80px;
}
@media only screen and (max-width:540px) {
  .p-home__foreign {
    padding: 40px 5% 20px;
  }
}
.p-home__foreign-in {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}
.p-home__foreign-list {
  list-style: none;
}
@media only screen and (max-width:912px) {
  .p-home__foreign-list {
    display: block;
  }
}
.p-home__foreign-list li {
  display: flex;
  align-items: center;
  margin-bottom: 40px;
}
@media only screen and (max-width:912px) {
  .p-home__foreign-list li {
    margin-bottom: 5%;
  }
}
@media only screen and (max-width:540px) {
  .p-home__foreign-list li {
    display: block;
    margin-bottom: 30px;
  }
}
.p-home__foreign-list li:last-child {
  margin-bottom: 0;
}
.p-home__foreign-list-pic {
  width: 25%;
  height: auto;
  transition: 0.3s;
}
@media only screen and (max-width:912px) {
  .p-home__foreign-list-pic {
    width: 22%;
  }
}
@media only screen and (max-width:540px) {
  .p-home__foreign-list-pic {
    width: auto;
    margin-bottom: 20px;
  }
}
.p-home__foreign-list-pic img {
  display: block;
  width: 100%;
  height: auto;
}
.p-home__foreign-list-cnt {
  width: 75%;
  padding-left: 4%;
}
@media only screen and (max-width:540px) {
  .p-home__foreign-list-cnt {
    width: auto;
    padding: 0;
  }
}
.p-home__foreign-list-cnt h3 {
  margin-top: 10px;
  font-size: 18px;
  line-height: 1.6;
}
@media only screen and (max-width:912px) {
  .p-home__foreign-list-cnt h3 {
    font-size: 15px;
  }
}
.p-home__foreign-list-cnt p {
  padding-top: 10px;
  line-height: 1.7;
}
@media only screen and (max-width:912px) {
  .p-home__foreign-list-cnt p {
    font-size: 13px;
  }
}
@media only screen and (max-width:540px) {
  .p-home__foreign-list-cnt p {
    font-size: 12px;
    line-height: 1.5;
  }
}

@keyframes moveRight {
  0% {
    right: 0;
    opacity: 1;
  }
  100% {
    right: -400px;
    opacity: 0;
  }
}
.p-info {
  padding: 70px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-info {
    padding: 60px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-info {
    padding: 30px 0 60px;
  }
}
.p-info__head {
  padding-bottom: 80px;
}
@media only screen and (max-width:540px) {
  .p-info__head {
    padding-bottom: 60px;
  }
}
.p-info__head-kv {
  background: url(/assets/images/info/hero.jpg) no-repeat center/cover;
}
@media (min-resolution: 192dpi) {
  .p-info__head-kv {
    background: url(/assets/images/info/hero@2x.jpg) no-repeat center/cover;
  }
}
.p-info__cnt {
  padding: 0 5%;
}
.p-info__cnt-term {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto 20px;
}
@media only screen and (max-width:540px) {
  .p-info__cnt-term {
    font-size: 12px;
    margin: 0 auto 15px;
  }
}
.p-info__list {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  list-style: none;
  border-top: 1px solid #E4E9EC;
}
.p-info__list-item {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 30px 0;
  border-bottom: 1px solid #E4E9EC;
}
@media only screen and (max-width:540px) {
  .p-info__list-item {
    padding: 20px 0;
  }
}
.p-info__list-pic {
  width: 22%;
  transition: 0.2s;
  border: 1px solid #E4E9EC;
}
.p-info__list-pic img {
  display: block;
  width: 100%;
  height: auto;
}
@media (hover: hover) and (pointer: fine) {
  .p-info__list-pic:hover {
    opacity: 0.8;
    transition: 0.2s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .p-info__list-pic:hover {
    opacity: 0.8;
    transition: 0.2s;
  }
}
.p-info__list-cnt {
  width: 74%;
}
.p-info__list-meta {
  display: flex;
  margin-bottom: 15px;
}
@media only screen and (max-width:1024px) {
  .p-info__list-meta {
    font-size: 13px;
  }
}
@media only screen and (max-width:912px) {
  .p-info__list-meta {
    margin-bottom: 10px;
  }
}
@media only screen and (max-width:540px) {
  .p-info__list-meta {
    font-size: 11px;
  }
}
.p-info__list-meta time {
  margin-right: 15px;
}
@media only screen and (max-width:540px) {
  .p-info__list-meta time {
    margin-right: 10px;
  }
}
.p-info__list-cat a {
  color: #B8384F;
}
.p-info__list-ttl {
  margin-bottom: 20px;
  font-size: 22px;
  line-height: 1.6;
}
@media only screen and (max-width:912px) {
  .p-info__list-ttl {
    margin-bottom: 10px;
    font-size: 18px;
  }
}
@media only screen and (max-width:540px) {
  .p-info__list-ttl {
    margin: 0;
    font-size: 13px;
  }
}
.p-info__list-ttl a {
  transition: 0.2s;
}
.p-info__list-ttl a:hover {
  opacity: 0.6;
  transition: 0.2s;
}
.p-info__list-lead {
  margin-bottom: 20px;
  font-size: 14px;
  line-height: 1.7;
}
@media only screen and (max-width:912px) {
  .p-info__list-lead {
    margin-bottom: 10px;
    font-size: 12px;
  }
}
@media only screen and (max-width:540px) {
  .p-info__list-lead {
    display: none;
  }
}
.p-info__list .view1 {
  text-align: right;
}

.p-info-single {
  padding: 30px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-info-single {
    padding: 20px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-info-single {
    padding: 10px 0 60px;
  }
}
.p-info-single__flex {
  padding: 80px 5% 0;
}
@media only screen and (max-width:912px) {
  .p-info-single__flex {
    padding: 60px 5% 0;
  }
}
@media only screen and (max-width:540px) {
  .p-info-single__flex {
    padding: 40px 5% 0;
  }
}
.p-info-single__in {
  display: flex;
  justify-content: space-between;
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
@media only screen and (max-width:540px) {
  .p-info-single__in {
    display: block;
  }
}
.p-info-single__cnt {
  width: 74%;
  padding-bottom: 80px;
  line-height: 1.7;
}
@media only screen and (max-width:912px) {
  .p-info-single__cnt {
    padding-bottom: 50px;
  }
}
@media only screen and (max-width:540px) {
  .p-info-single__cnt {
    width: auto;
    padding-bottom: 40px;
  }
}
.p-info-single__cnt-meta {
  display: flex;
  margin-bottom: 15px;
  font-size: 15px;
}
@media only screen and (max-width:1024px) {
  .p-info-single__cnt-meta {
    font-size: 13px;
  }
}
@media only screen and (max-width:912px) {
  .p-info-single__cnt-meta {
    margin-bottom: 10px;
  }
}
@media only screen and (max-width:540px) {
  .p-info-single__cnt-meta {
    font-size: 11px;
  }
}
.p-info-single__cnt-meta time {
  margin-right: 15px;
}
@media only screen and (max-width:540px) {
  .p-info-single__cnt-meta time {
    margin-right: 10px;
  }
}
.p-info-single__cnt-cat a {
  color: #B8384F;
}
.p-info-single__cnt-ttl {
  margin-bottom: 40px;
  font-size: 30px;
}
@media only screen and (max-width:1024px) {
  .p-info-single__cnt-ttl {
    font-size: 26px;
  }
}
@media only screen and (max-width:912px) {
  .p-info-single__cnt-ttl {
    font-size: 22px;
  }
}
@media only screen and (max-width:540px) {
  .p-info-single__cnt-ttl {
    margin-bottom: 30px;
    font-size: 17px;
  }
}
.p-info-single__cnt-cnt {
  font-size: 16px;
}
@media only screen and (max-width:912px) {
  .p-info-single__cnt-cnt {
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-info-single__cnt-cnt {
    font-size: 13px;
  }
}
.p-info-single__cnt-cnt p {
  margin-bottom: 30px;
}
@media only screen and (max-width:540px) {
  .p-info-single__cnt-cnt p {
    margin-bottom: 20px;
  }
}
.p-info-single__cnt-cnt a {
  color: #B8384F;
  text-decoration: underline;
}
.p-info-single__cnt-cnt img {
  max-width: 100%;
  height: auto;
}
.p-info-single__aside {
  width: 20%;
  padding-bottom: 40px;
}
@media only screen and (max-width:540px) {
  .p-info-single__aside {
    width: auto;
    margin-bottom: 60px;
    padding: 0;
  }
}
.p-info-single__aside-ttl {
  position: relative;
  margin-bottom: 30px;
  padding-bottom: 20px;
  font-size: 20px;
}
@media only screen and (max-width:912px) {
  .p-info-single__aside-ttl {
    font-size: 16px;
  }
}
@media only screen and (max-width:540px) {
  .p-info-single__aside-ttl {
    margin-bottom: 20px;
  }
}
.p-info-single__aside-ttl::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: #0A0A0A;
  opacity: 0.15;
}
.p-info-single__aside-ttl::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 5%;
  height: 1px;
  background: #B8384F;
}
.p-info-single__aside ul {
  list-style: none;
}
@media only screen and (max-width:540px) {
  .p-info-single__aside ul {
    display: grid;
    grid-auto-flow: column;
    grid-template-rows: repeat(2, auto);
  }
}
.p-info-single__aside ul li a {
  display: block;
  padding: 10px 0;
  font-size: 15px;
  padding-left: 14px;
  background: url(/assets/images/common/arrow01.png) no-repeat left/6px;
  transition: 0.2s;
}
@media only screen and (max-width:912px) {
  .p-info-single__aside ul li a {
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-info-single__aside ul li a {
    padding-left: 12px;
    background-size: 5px;
    font-size: 13px;
  }
}
.p-info-single__aside ul li a:hover {
  opacity: 0.6;
  transition: 0.3s;
}
.p-info-single__link {
  position: relative;
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  border-top: 1px solid #E4E9EC;
  font-size: 15px;
  line-height: 1.6;
  overflow: hidden;
}
@media only screen and (max-width:1024px) {
  .p-info-single__link {
    font-size: 14px;
  }
}
@media only screen and (max-width:912px) {
  .p-info-single__link {
    font-size: 13px;
  }
}
.p-info-single__link div {
  width: 50%;
  padding-top: 25px;
}
.p-info-single__link div a {
  position: relative;
  display: block;
  padding: 30px 0 30px;
}
.p-info-single__link-prev {
  float: left;
  padding-right: 30px;
}
.p-info-single__link-prev a::before {
  content: "PREV";
  display: block;
  position: absolute;
  top: 0;
  color: #B8384F;
}
.p-info-single__link-next {
  float: right;
  padding-left: 30px;
  text-align: right;
}
.p-info-single__link-next a::before {
  content: "NEXT";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  color: #B8384F;
}
.p-info-single__link::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  width: 1px;
  height: 100%;
  background: #E4E9EC;
}

.p-column {
  padding: 70px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-column {
    padding: 60px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-column {
    padding: 30px 0 60px;
  }
}
.p-column__head {
  padding-bottom: 80px;
}
@media only screen and (max-width:540px) {
  .p-column__head {
    padding-bottom: 60px;
  }
}
.p-column__head-kv {
  background: url(/assets/images/column/hero.jpg) no-repeat center/cover;
}
@media (min-resolution: 192dpi) {
  .p-column__head-kv {
    background: url(/assets/images/column/hero@2x.jpg) no-repeat center/cover;
  }
}
.p-column__cnt {
  padding: 0 5%;
}
.p-column__cnt-term {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto 20px;
}
@media only screen and (max-width:540px) {
  .p-column__cnt-term {
    font-size: 12px;
    margin: 0 auto 15px;
  }
}
.p-column__list {
  width: 100%;
  max-width: 1080px;
  margin: 80px auto 0;
  list-style: none;
  border-top: 1px solid #E4E9EC;
}
@media only screen and (max-width:540px) {
  .p-column__list {
    margin: 20px auto 0;
  }
}
.p-column__list-item {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 30px 0;
  border-bottom: 1px solid #E4E9EC;
}
@media only screen and (max-width:540px) {
  .p-column__list-item {
    padding: 20px 0;
  }
}
.p-column__list-pic {
  width: 22%;
  transition: 0.2s;
  border: 1px solid #E4E9EC;
}
.p-column__list-pic img {
  display: block;
  width: 100%;
  height: auto;
}
@media (hover: hover) and (pointer: fine) {
  .p-column__list-pic:hover {
    opacity: 0.8;
    transition: 0.2s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .p-column__list-pic:hover {
    opacity: 0.8;
    transition: 0.2s;
  }
}
.p-column__list-cnt {
  width: 74%;
}
.p-column__list-meta {
  display: flex;
  margin-bottom: 15px;
}
@media only screen and (max-width:1024px) {
  .p-column__list-meta {
    font-size: 13px;
  }
}
@media only screen and (max-width:912px) {
  .p-column__list-meta {
    margin-bottom: 10px;
  }
}
@media only screen and (max-width:540px) {
  .p-column__list-meta {
    font-size: 11px;
  }
}
.p-column__list-meta time {
  margin-right: 15px;
}
@media only screen and (max-width:540px) {
  .p-column__list-meta time {
    margin-right: 10px;
  }
}
.p-column__list-ttl {
  margin-bottom: 20px;
  font-size: 22px;
  line-height: 1.6;
}
@media only screen and (max-width:912px) {
  .p-column__list-ttl {
    margin-bottom: 10px;
    font-size: 18px;
  }
}
@media only screen and (max-width:540px) {
  .p-column__list-ttl {
    margin: 0;
    font-size: 13px;
  }
}
.p-column__list-ttl a {
  transition: 0.2s;
}
.p-column__list-ttl a:hover {
  opacity: 0.6;
  transition: 0.2s;
}
.p-column__list-lead {
  margin-bottom: 20px;
  font-size: 14px;
  line-height: 1.7;
}
@media only screen and (max-width:912px) {
  .p-column__list-lead {
    margin-bottom: 10px;
    font-size: 12px;
  }
}
@media only screen and (max-width:540px) {
  .p-column__list-lead {
    display: none;
  }
}
.p-column__list .view1 {
  text-align: right;
}

.p-column-single {
  padding: 30px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-column-single {
    padding: 20px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-column-single {
    padding: 10px 0 60px;
  }
}
.p-column-single__post {
  padding: 80px 5% 0;
}
@media only screen and (max-width:912px) {
  .p-column-single__post {
    padding: 60px 5% 0;
  }
}
@media only screen and (max-width:540px) {
  .p-column-single__post {
    padding: 40px 5% 0;
  }
}
.p-column-single__in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
@media only screen and (max-width:540px) {
  .p-column-single__in {
    display: block;
  }
}
.p-column-single__cnt {
  padding-bottom: 80px;
  line-height: 1.7;
}
@media only screen and (max-width:912px) {
  .p-column-single__cnt {
    padding-bottom: 50px;
  }
}
@media only screen and (max-width:540px) {
  .p-column-single__cnt {
    width: auto;
    padding-bottom: 40px;
  }
}
.p-column-single__cnt-meta {
  display: flex;
  margin-bottom: 15px;
  font-size: 15px;
}
@media only screen and (max-width:1024px) {
  .p-column-single__cnt-meta {
    font-size: 13px;
  }
}
@media only screen and (max-width:912px) {
  .p-column-single__cnt-meta {
    margin-bottom: 10px;
  }
}
@media only screen and (max-width:540px) {
  .p-column-single__cnt-meta {
    font-size: 11px;
  }
}
.p-column-single__cnt-meta time {
  margin-right: 15px;
}
@media only screen and (max-width:540px) {
  .p-column-single__cnt-meta time {
    margin-right: 10px;
  }
}
.p-column-single__cnt-ttl {
  margin-bottom: 40px;
  font-size: 30px;
}
@media only screen and (max-width:1024px) {
  .p-column-single__cnt-ttl {
    font-size: 26px;
  }
}
@media only screen and (max-width:912px) {
  .p-column-single__cnt-ttl {
    font-size: 22px;
  }
}
@media only screen and (max-width:540px) {
  .p-column-single__cnt-ttl {
    margin-bottom: 30px;
    font-size: 17px;
  }
}
.p-column-single__cnt-cnt {
  padding-bottom: 40px;
  font-size: 17px;
  line-height: 2.2;
}
@media only screen and (max-width:912px) {
  .p-column-single__cnt-cnt {
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-column-single__cnt-cnt {
    font-size: 13px;
    line-height: 2;
  }
}
.p-column-single__cnt-cnt p {
  margin-bottom: 30px;
}
@media only screen and (max-width:540px) {
  .p-column-single__cnt-cnt p {
    margin-bottom: 20px;
  }
}
.p-column-single__cnt-cnt a {
  color: #B8384F;
  text-decoration: underline;
}
.p-column-single__cnt-cnt strong {
  font-weight: 600;
}
.p-column-single__cnt-cnt figure {
  margin: 40px 0;
}
.p-column-single__cnt-cnt img {
  max-width: 100%;
  height: auto;
}
.p-column-single__cnt-editor {
  padding: 30px 35px;
  background: #FAF9F3;
}
@media only screen and (max-width:540px) {
  .p-column-single__cnt-editor {
    padding: 20px 25px;
  }
}
.p-column-single__cnt-editor-job {
  margin-bottom: 5px;
  font-size: 14px;
}
@media only screen and (max-width:540px) {
  .p-column-single__cnt-editor-job {
    font-size: 12px;
  }
}
.p-column-single__cnt-editor-name {
  margin-bottom: 25px;
  font-size: 20px;
}
@media only screen and (max-width:540px) {
  .p-column-single__cnt-editor-name {
    font-size: 17px;
  }
}
.p-column-single__cnt-editor-name span {
  display: inline-block;
  padding-left: 20px;
  font-size: 13px;
}
@media only screen and (max-width:540px) {
  .p-column-single__cnt-editor-name span {
    padding-left: 15px;
    font-size: 11px;
  }
}
@media only screen and (max-width:540px) {
  .p-column-single__cnt-editor-bio {
    font-size: 13px;
  }
}
.p-column-single__cnt-editor-bio dl {
  display: grid;
  grid-template-columns: 50px 1fr;
  gap: 10px 20px;
  align-items: start;
}
.p-column-single__link {
  position: relative;
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  border-top: 1px solid #E4E9EC;
  font-size: 15px;
  line-height: 1.6;
  overflow: hidden;
}
@media only screen and (max-width:1024px) {
  .p-column-single__link {
    font-size: 14px;
  }
}
@media only screen and (max-width:912px) {
  .p-column-single__link {
    font-size: 13px;
  }
}
.p-column-single__link div {
  width: 50%;
  padding-top: 25px;
}
.p-column-single__link div a {
  position: relative;
  display: block;
  padding: 30px 0 30px;
}
.p-column-single__link-prev {
  float: left;
  padding-right: 30px;
}
.p-column-single__link-prev a::before {
  content: "PREV";
  display: block;
  position: absolute;
  top: 0;
  color: #B8384F;
}
.p-column-single__link-next {
  float: right;
  padding-left: 30px;
  text-align: right;
}
.p-column-single__link-next a::before {
  content: "NEXT";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  color: #B8384F;
}
.p-column-single__link::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  width: 1px;
  height: 100%;
  background: #E4E9EC;
}

.p-stay {
  padding: 30px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-stay {
    padding: 20px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-stay {
    padding: 10px 0 60px;
  }
}
.p-stay__room {
  margin-bottom: 80px;
  padding: 0 5%;
}
@media only screen and (max-width:540px) {
  .p-stay__room {
    margin-bottom: 50px;
  }
}
.p-stay__room-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-stay__room-sec-txt {
  margin-bottom: 30px;
  font-size: 15px;
  line-height: 1.6;
}
@media only screen and (max-width:540px) {
  .p-stay__room-sec-txt {
    font-size: 12px;
  }
}
.p-stay__room-sec-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  list-style: none;
}
.p-stay__room-sec-list li {
  width: 23.5%;
  border: 1px solid #E4E9EC;
}
@media only screen and (max-width:912px) {
  .p-stay__room-sec-list li {
    width: 31%;
    margin-bottom: 4%;
  }
}
@media only screen and (max-width:540px) {
  .p-stay__room-sec-list li {
    width: 47.5%;
    margin-bottom: 5%;
  }
}
.p-stay__room-sec-list li a {
  transition: 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .p-stay__room-sec-list li a:hover:hover {
    opacity: 0.8;
    transition: 0.3s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .p-stay__room-sec-list li a:hover:hover {
    opacity: 0.8;
    transition: 0.3s;
  }
}
.p-stay__room-sec-list li figure {
  margin: 0;
}
.p-stay__room-sec-list li figure img {
  display: block;
  width: 100%;
  height: auto;
}
.p-stay__room-sec-list li figure figcaption {
  padding: 17px 15px 15px 15px;
  font-size: 15px;
  letter-spacing: 0.025em;
}
@media only screen and (max-width:912px) {
  .p-stay__room-sec-list li figure figcaption {
    padding: 15px 13px 13px 13px;
    font-size: 13px;
  }
}
.p-stay__room-sec--premium {
  margin-bottom: 60px;
}
@media only screen and (max-width:912px) {
  .p-stay__room-sec--premium {
    margin-bottom: 40px;
  }
}
.p-stay__room-sec--standard .p-stay__room-sec-list::after {
  content: "";
  display: block;
  width: 23.5%;
}
@media only screen and (max-width:912px) {
  .p-stay__room-sec--standard .p-stay__room-sec-list::after {
    display: none;
  }
}
.p-stay__room-sec-virtual {
  padding-top: 40px;
  font-size: 15px;
  line-height: 1.6;
}
@media only screen and (max-width:540px) {
  .p-stay__room-sec-virtual {
    padding-top: 20px;
    font-size: 12px;
  }
}
.p-stay__room-sec-virtual p {
  margin-bottom: 20px;
}
.p-stay__room-sec-virtual ul {
  display: flex;
  list-style: none;
}
@media only screen and (max-width:540px) {
  .p-stay__room-sec-virtual ul {
    flex-wrap: wrap;
  }
}
.p-stay__room-sec-virtual ul li {
  margin-right: 10px;
}
.p-stay__room-sec-virtual ul li a {
  color: #B8384F;
}
.p-stay__about {
  margin-bottom: 80px;
  padding: 0 5%;
}
@media only screen and (max-width:540px) {
  .p-stay__about {
    margin-bottom: 60px;
  }
}
.p-stay__about-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-stay__about-flex {
  display: flex;
  justify-content: space-between;
  padding: 20px;
  background: #FAF9F3;
}
@media only screen and (max-width:912px) {
  .p-stay__about-flex {
    padding: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-stay__about-flex {
    display: block;
  }
}
.p-stay__about-item {
  width: calc(50% - 10px);
  background: #FFF;
}
@media only screen and (max-width:912px) {
  .p-stay__about-item {
    width: calc(50% - 7px);
  }
}
@media only screen and (max-width:540px) {
  .p-stay__about-item {
    width: auto;
  }
}
.p-stay__about-item a {
  position: relative;
  display: block;
  height: 100%;
  padding: 40px 70px 40px 30px;
}
@media only screen and (max-width:912px) {
  .p-stay__about-item a {
    padding: 30px 60px 30px 20px;
  }
}
.p-stay__about-item a::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  width: 26px;
  height: 5px;
  background: url(/assets/images/common/arrow03.png) no-repeat right/26px;
  transform: translateY(-50%);
  transition: 0.2s;
}
@media (hover: hover) and (pointer: fine) {
  .p-stay__about-item a:hover:hover::after {
    right: 15px;
    transition: 0.2s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .p-stay__about-item a:hover:hover::after {
    right: 15px;
    transition: 0.2s;
  }
}
.p-stay__about-item h3 {
  margin-bottom: 20px;
  padding-left: 20px;
  font-size: 20px;
  background: url(/assets/images/common/circle01.png) no-repeat left/12px;
}
@media only screen and (max-width:912px) {
  .p-stay__about-item h3 {
    font-size: 18px;
  }
}
@media only screen and (max-width:540px) {
  .p-stay__about-item h3 {
    margin-bottom: 15px;
    font-size: 15px;
  }
}
.p-stay__about-item p {
  line-height: 1.7;
}
@media only screen and (max-width:912px) {
  .p-stay__about-item p {
    font-size: 13px;
  }
}
@media only screen and (max-width:540px) {
  .p-stay__about-item p {
    font-size: 12px;
  }
}
@media only screen and (max-width:540px) {
  .p-stay__about-item:first-child {
    margin-bottom: 14px;
  }
}
.p-stay__souvenir {
  margin-bottom: 80px;
  padding: 0 5%;
}
@media only screen and (max-width:540px) {
  .p-stay__souvenir {
    margin-bottom: 60px;
  }
}
.p-stay__souvenir-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-stay__souvenir-flex {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
}
@media only screen and (max-width:540px) {
  .p-stay__souvenir-flex {
    display: block;
  }
}
.p-stay__souvenir-flex p {
  width: 65%;
  font-size: 16px;
  line-height: 1.9;
}
@media only screen and (max-width:912px) {
  .p-stay__souvenir-flex p {
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-stay__souvenir-flex p {
    width: 100%;
    font-size: 13px;
  }
}
.p-stay__souvenir-pic {
  width: 30%;
}
@media only screen and (max-width:540px) {
  .p-stay__souvenir-pic {
    width: 100%;
    margin-bottom: 20px;
  }
}
.p-stay__souvenir-pic img {
  max-width: 100%;
  height: auto;
}
.p-stay__faq {
  margin: 80px 0;
  padding: 0 5%;
}
@media only screen and (max-width:540px) {
  .p-stay__faq {
    margin-bottom: 60px;
  }
}
.p-stay__faq-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-stay__faq-accordion {
  padding: 20px 20px 1px 20px;
  background: #FAF9F3;
}
@media only screen and (max-width:540px) {
  .p-stay__faq-accordion {
    padding: 12px 12px 1px 12px;
  }
}
.p-stay__faq-accordion-item {
  margin-bottom: 20px;
  background: #FFF;
}
@media only screen and (max-width:540px) {
  .p-stay__faq-accordion-item {
    margin-bottom: 12px;
  }
}
.p-stay__faq-accordion-item-head {
  display: flex;
  align-items: center;
  padding: 30px 50px 30px 30px;
}
@media only screen and (max-width:912px) {
  .p-stay__faq-accordion-item-head {
    padding: 24px 50px 24px 24px;
  }
}
@media only screen and (max-width:540px) {
  .p-stay__faq-accordion-item-head {
    padding: 20px 40px 20px 20px;
  }
}
.p-stay__faq-accordion-item-head h3 {
  position: relative;
  margin-left: 25px;
  font-size: 17px;
  line-height: 1.4;
}
@media only screen and (max-width:912px) {
  .p-stay__faq-accordion-item-head h3 {
    font-size: 16px;
  }
}
@media only screen and (max-width:540px) {
  .p-stay__faq-accordion-item-head h3 {
    margin-left: 20px;
    font-size: 13px;
  }
}
.p-stay__faq-accordion-item-head h3::before {
  content: "Q";
  display: block;
  position: absolute;
  top: -2px;
  left: -1.5em;
  color: #B8384F;
}
.p-stay__faq-accordion-item-cnt {
  font-size: 16px;
  line-height: 1.8;
}
@media only screen and (max-width:912px) {
  .p-stay__faq-accordion-item-cnt {
    font-size: 15px;
  }
}
@media only screen and (max-width:540px) {
  .p-stay__faq-accordion-item-cnt {
    font-size: 12px;
  }
}
.p-stay__faq-accordion-item-cnt-in {
  padding: 0 30px 30px;
}
@media only screen and (max-width:912px) {
  .p-stay__faq-accordion-item-cnt-in {
    padding: 0 24px 24px;
  }
}
@media only screen and (max-width:540px) {
  .p-stay__faq-accordion-item-cnt-in {
    padding: 0 20px 20px;
  }
}
.p-stay__faq-accordion-item-cnt-answer {
  position: relative;
  margin-left: 25px;
}
@media only screen and (max-width:540px) {
  .p-stay__faq-accordion-item-cnt-answer {
    margin-left: 20px;
  }
}
.p-stay__faq-accordion-item-cnt-answer a {
  color: #B8384F;
  text-decoration: underline;
}
.p-stay__faq-accordion-item-cnt-answer::before {
  content: "A";
  display: block;
  position: absolute;
  top: -2px;
  left: -1.5em;
  color: #B8384F;
  font-size: 18px;
}
@media only screen and (max-width:912px) {
  .p-stay__faq-accordion-item-cnt-answer::before {
    font-size: 16px;
  }
}
@media only screen and (max-width:540px) {
  .p-stay__faq-accordion-item-cnt-answer::before {
    font-size: 13px;
  }
}
.p-stay__faq-notes {
  padding-top: 10px;
  text-align: right;
}
.p-stay__faq-notes a {
  display: inline-block;
  padding: 10px 0;
  color: #B8384F;
  text-decoration: underline;
}
@media only screen and (max-width:540px) {
  .p-stay__faq-notes a {
    font-size: 13px;
  }
}

.p-dining {
  padding: 30px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-dining {
    padding: 20px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-dining {
    padding: 10px 0 60px;
  }
}
.p-dining__head {
  margin-bottom: 80px;
}
@media only screen and (max-width:912px) {
  .p-dining__head {
    margin-bottom: 60px;
  }
}
@media only screen and (max-width:540px) {
  .p-dining__head {
    margin-bottom: 40px;
  }
}
.p-dining__rest {
  padding: 180px 5% 120px;
  background: url(/assets/images/common/ptn1.png) repeat left/143px;
}
@media only screen and (max-width:1024px) {
  .p-dining__rest {
    padding: 160px 5% 100px;
  }
}
@media only screen and (max-width:912px) {
  .p-dining__rest {
    padding: 100px 5% 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-dining__rest {
    padding: 40px 5% 60px;
  }
}
.p-dining__rest-item {
  position: relative;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto 120px;
  scroll-margin-top: 80px;
}
@media only screen and (max-width:912px) {
  .p-dining__rest-item {
    margin: 0 auto 90px;
  }
}
@media only screen and (max-width:540px) {
  .p-dining__rest-item {
    margin: 0 auto 50px;
  }
}
.p-dining__rest-item-left {
  position: relative;
  width: 60%;
  padding: 100px 60px 60px;
  background: #FFF;
}
@media only screen and (max-width:1024px) {
  .p-dining__rest-item-left {
    padding: 80px 50px 30px;
  }
}
@media only screen and (max-width:912px) {
  .p-dining__rest-item-left {
    padding: 80px 5% 25px;
  }
}
@media only screen and (max-width:540px) {
  .p-dining__rest-item-left {
    width: auto;
    padding: 30px 8% 40px;
  }
}
body.zh-CN .p-dining__rest-item-left, body.en-US .p-dining__rest-item-left {
  padding: 60px 60px 30px;
}
@media only screen and (max-width:912px) {
  body.zh-CN .p-dining__rest-item-left, body.en-US .p-dining__rest-item-left {
    padding: 40px 5% 25px;
  }
}
@media only screen and (max-width:540px) {
  body.zh-CN .p-dining__rest-item-left, body.en-US .p-dining__rest-item-left {
    width: auto;
    padding: 30px 8% 40px;
  }
}
.p-dining__rest-item-right {
  position: absolute;
  top: -60px;
  right: 0;
  width: 100%;
  max-width: 54%;
}
@media only screen and (max-width:1024px) {
  .p-dining__rest-item-right {
    top: -40px;
  }
}
@media only screen and (max-width:540px) {
  .p-dining__rest-item-right {
    position: static;
    max-width: none;
  }
}
.p-dining__rest-item-right img {
  width: 100%;
  height: auto;
}
.p-dining__rest-item-ttl {
  position: absolute;
  top: -60px;
  left: 60px;
}
@media only screen and (max-width:1024px) {
  .p-dining__rest-item-ttl {
    left: 50px;
  }
}
@media only screen and (max-width:912px) {
  .p-dining__rest-item-ttl {
    left: 35px;
    top: -40px;
  }
}
@media only screen and (max-width:540px) {
  .p-dining__rest-item-ttl {
    position: static;
    margin-bottom: 20px;
  }
}
body.zh-CN .p-dining__rest-item-ttl, body.en-US .p-dining__rest-item-ttl {
  position: static;
  top: 0;
}
.p-dining__rest-item-ttl h2 {
  margin-bottom: 10px;
  font-size: 28px;
  line-height: 1.5;
  letter-spacing: 0.1em;
  text-indent: 0.3em;
  transform: translateX(-0.3em);
}
@media only screen and (max-width:912px) {
  .p-dining__rest-item-ttl h2 {
    font-size: 22px;
  }
}
@media only screen and (max-width:540px) {
  .p-dining__rest-item-ttl h2 {
    font-size: 18px;
    margin-bottom: 8px;
    text-indent: 0;
    transform: translateX(0);
  }
}
body.zh-CN .p-dining__rest-item-ttl h2, body.en-US .p-dining__rest-item-ttl h2 {
  margin-bottom: 20px;
}
.p-dining__rest-item-ttl small {
  font-size: 16px;
  color: #B8384F;
}
@media only screen and (max-width:912px) {
  .p-dining__rest-item-ttl small {
    font-size: 13px;
  }
}
@media only screen and (max-width:540px) {
  .p-dining__rest-item-ttl small {
    font-size: 12px;
  }
}
.p-dining__rest-item-lead {
  width: 70%;
  margin-bottom: 30px;
  font-size: 16px;
  line-height: 1.6;
}
@media only screen and (max-width:1024px) {
  .p-dining__rest-item-lead {
    font-size: 14px;
  }
}
@media only screen and (max-width:912px) {
  .p-dining__rest-item-lead {
    margin-bottom: 20px;
    font-size: 12px;
  }
}
@media only screen and (max-width:540px) {
  .p-dining__rest-item-lead {
    width: auto;
  }
}
.p-dining__rest-item-menu {
  display: flex;
  gap: 10px;
  margin-bottom: 30px;
  list-style: none;
}
@media only screen and (max-width:540px) {
  .p-dining__rest-item-menu {
    margin-bottom: 15px;
  }
}
.p-dining__rest-item-menu li {
  padding: 5px 10px 4px;
  border: 1px solid #B8384F;
  border-radius: 50vw;
  color: #B8384F;
  font-size: 12px;
}
@media only screen and (max-width:540px) {
  .p-dining__rest-item-menu li {
    font-size: 11px;
  }
}
.p-dining__rest-item:nth-child(2n) .p-dining__rest-item-left {
  margin-left: 40%;
  padding: 100px 60px 60px 19%;
}
@media only screen and (max-width:1024px) {
  .p-dining__rest-item:nth-child(2n) .p-dining__rest-item-left {
    padding: 70px 50px 30px 19%;
  }
}
@media only screen and (max-width:912px) {
  .p-dining__rest-item:nth-child(2n) .p-dining__rest-item-left {
    padding: 60px 35px 25px 19%;
  }
}
@media only screen and (max-width:540px) {
  .p-dining__rest-item:nth-child(2n) .p-dining__rest-item-left {
    margin: 0 0 0 auto;
    padding: 30px 8% 40px;
  }
}
body.zh-CN .p-dining__rest-item:nth-child(2n) .p-dining__rest-item-left, body.en-US .p-dining__rest-item:nth-child(2n) .p-dining__rest-item-left {
  padding: 60px 60px 30px 19%;
}
@media only screen and (max-width:912px) {
  body.zh-CN .p-dining__rest-item:nth-child(2n) .p-dining__rest-item-left, body.en-US .p-dining__rest-item:nth-child(2n) .p-dining__rest-item-left {
    padding: 40px 35px 25px 19%;
  }
}
@media only screen and (max-width:540px) {
  body.zh-CN .p-dining__rest-item:nth-child(2n) .p-dining__rest-item-left, body.en-US .p-dining__rest-item:nth-child(2n) .p-dining__rest-item-left {
    margin: 0 0 0 auto;
    padding: 30px 8% 40px;
  }
}
.p-dining__rest-item:nth-child(2n) .p-dining__rest-item-right {
  right: auto;
  left: 0;
}
.p-dining__rest-item:nth-child(2n) .p-dining__rest-item-ttl {
  left: auto;
}
.p-dining__rest-item:nth-child(2n) .p-dining__rest-item-lead {
  width: auto;
}
.p-dining__rest-item:nth-child(2n) .p-dining__rest-item-view {
  text-align: right;
}
@media only screen and (max-width:540px) {
  .p-dining__rest-item:nth-child(2n) .p-dining__rest-item-view {
    text-align: left;
  }
}
.p-dining__rest-item:last-child {
  margin-bottom: 0;
}
.p-dining__feed {
  padding-top: 80px;
}
@media only screen and (max-width:540px) {
  .p-dining__feed {
    padding-top: 60px;
  }
}
.p-dining__inquiries {
  padding: 80px 5% 0;
}
@media only screen and (max-width:540px) {
  .p-dining__inquiries {
    padding: 60px 5% 0;
  }
}
.p-dining__inquiries-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}

.p-banquet {
  padding: 30px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-banquet {
    padding: 20px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-banquet {
    padding: 10px 0 60px;
  }
}
.p-banquet__hall {
  margin-bottom: 80px;
  padding: 180px 5% 120px;
  background: url(/assets/images/common/ptn1.png) repeat left/143px;
}
@media only screen and (max-width:1024px) {
  .p-banquet__hall {
    padding: 160px 5% 100px;
  }
}
@media only screen and (max-width:912px) {
  .p-banquet__hall {
    padding: 100px 5% 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-banquet__hall {
    margin-bottom: 60px;
    padding: 40px 5% 60px;
  }
}
.p-banquet__hall-item {
  position: relative;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto 120px;
  scroll-margin-top: 80px;
}
@media only screen and (max-width:912px) {
  .p-banquet__hall-item {
    margin: 0 auto 90px;
  }
}
@media only screen and (max-width:540px) {
  .p-banquet__hall-item {
    margin: 0 auto 50px;
  }
}
.p-banquet__hall-item-left {
  position: relative;
  width: 60%;
  padding: 100px 60px 60px;
  background: #FFF;
}
@media only screen and (max-width:1024px) {
  .p-banquet__hall-item-left {
    padding: 80px 50px 30px;
  }
}
@media only screen and (max-width:912px) {
  .p-banquet__hall-item-left {
    width: 68%;
    padding: 80px 5% 25px;
  }
}
@media only screen and (max-width:540px) {
  .p-banquet__hall-item-left {
    width: auto;
    padding: 30px 8% 40px;
  }
}
@media only screen and (max-width:1024px) {
  body.zh-CN .p-banquet__hall-item-left, body.en-US .p-banquet__hall-item-left {
    padding: 60px 50px 30px;
  }
}
@media only screen and (max-width:912px) {
  body.zh-CN .p-banquet__hall-item-left, body.en-US .p-banquet__hall-item-left {
    width: 68%;
    padding: 40px 5% 25px;
  }
}
@media only screen and (max-width:540px) {
  body.zh-CN .p-banquet__hall-item-left, body.en-US .p-banquet__hall-item-left {
    width: auto;
    padding: 30px 8% 40px;
  }
}
.p-banquet__hall-item-right {
  position: absolute;
  top: -60px;
  right: 0;
  width: 100%;
  max-width: 54%;
}
@media only screen and (max-width:1024px) {
  .p-banquet__hall-item-right {
    top: -40px;
  }
}
@media only screen and (max-width:912px) {
  .p-banquet__hall-item-right {
    max-width: 46%;
  }
}
@media only screen and (max-width:540px) {
  .p-banquet__hall-item-right {
    position: static;
    max-width: none;
  }
}
.p-banquet__hall-item-right img {
  width: 100%;
  height: auto;
}
.p-banquet__hall-item-ttl {
  position: absolute;
  top: -60px;
  left: 60px;
}
@media only screen and (max-width:1024px) {
  .p-banquet__hall-item-ttl {
    left: 50px;
  }
}
@media only screen and (max-width:912px) {
  .p-banquet__hall-item-ttl {
    left: 35px;
    top: -40px;
  }
}
@media only screen and (max-width:540px) {
  .p-banquet__hall-item-ttl {
    position: static;
    margin-bottom: 20px;
  }
}
body.zh-CN .p-banquet__hall-item-ttl, body.en-US .p-banquet__hall-item-ttl {
  position: static;
}
.p-banquet__hall-item-ttl h2 {
  margin-bottom: 10px;
  font-size: 28px;
  line-height: 1.5;
  letter-spacing: 0.1em;
  text-indent: 0.3em;
  transform: translateX(-0.3em);
}
@media only screen and (max-width:1024px) {
  .p-banquet__hall-item-ttl h2 {
    font-size: 26px;
  }
}
@media only screen and (max-width:912px) {
  .p-banquet__hall-item-ttl h2 {
    font-size: 22px;
  }
}
@media only screen and (max-width:540px) {
  .p-banquet__hall-item-ttl h2 {
    font-size: 18px;
    margin-bottom: 8px;
    text-indent: 0;
    transform: translateX(0);
  }
}
.p-banquet__hall-item-ttl small {
  font-size: 16px;
  color: #B8384F;
}
@media only screen and (max-width:912px) {
  .p-banquet__hall-item-ttl small {
    font-size: 13px;
  }
}
@media only screen and (max-width:540px) {
  .p-banquet__hall-item-ttl small {
    font-size: 12px;
  }
}
.p-banquet__hall-item-lead {
  width: 70%;
  margin-bottom: 30px;
  font-size: 16px;
  line-height: 1.6;
}
@media only screen and (max-width:1024px) {
  .p-banquet__hall-item-lead {
    font-size: 14px;
  }
}
@media only screen and (max-width:912px) {
  .p-banquet__hall-item-lead {
    margin-bottom: 20px;
    font-size: 12px;
  }
}
@media only screen and (max-width:540px) {
  .p-banquet__hall-item-lead {
    width: auto;
  }
}
.p-banquet__hall-item-view {
  display: inline-block;
  color: #B8384F;
  text-decoration: underline;
  cursor: pointer;
}
@media only screen and (max-width:912px) {
  .p-banquet__hall-item-view {
    font-size: 13px;
  }
}
.p-banquet__hall-item:nth-child(2n) .p-banquet__hall-item-left {
  margin-left: 40%;
  padding: 100px 60px 60px 19%;
}
@media only screen and (max-width:1024px) {
  .p-banquet__hall-item:nth-child(2n) .p-banquet__hall-item-left {
    padding: 70px 50px 30px 19%;
  }
}
@media only screen and (max-width:912px) {
  .p-banquet__hall-item:nth-child(2n) .p-banquet__hall-item-left {
    margin-left: 32%;
    padding: 80px 35px 25px 19%;
  }
}
@media only screen and (max-width:540px) {
  .p-banquet__hall-item:nth-child(2n) .p-banquet__hall-item-left {
    margin: 0 0 0 auto;
    padding: 30px 8% 40px;
  }
}
@media only screen and (max-width:1024px) {
  body.zh-CN .p-banquet__hall-item:nth-child(2n) .p-banquet__hall-item-left, body.en-US .p-banquet__hall-item:nth-child(2n) .p-banquet__hall-item-left {
    padding: 60px 50px 30px 19%;
  }
}
@media only screen and (max-width:912px) {
  body.zh-CN .p-banquet__hall-item:nth-child(2n) .p-banquet__hall-item-left, body.en-US .p-banquet__hall-item:nth-child(2n) .p-banquet__hall-item-left {
    margin-left: 32%;
    padding: 40px 35px 25px 19%;
  }
}
@media only screen and (max-width:540px) {
  body.zh-CN .p-banquet__hall-item:nth-child(2n) .p-banquet__hall-item-left, body.en-US .p-banquet__hall-item:nth-child(2n) .p-banquet__hall-item-left {
    margin: 0 0 0 auto;
    padding: 30px 8% 40px;
  }
}
.p-banquet__hall-item:nth-child(2n) .p-banquet__hall-item-right {
  right: auto;
  left: 0;
}
.p-banquet__hall-item:nth-child(2n) .p-banquet__hall-item-ttl {
  left: auto;
}
.p-banquet__hall-item:nth-child(2n) .p-banquet__hall-item-lead {
  width: auto;
}
.p-banquet__hall-item:nth-child(2n) .p-banquet__hall-item-view {
  text-align: right;
}
@media only screen and (max-width:540px) {
  .p-banquet__hall-item:nth-child(2n) .p-banquet__hall-item-view {
    text-align: left;
  }
}
.p-banquet__hall-item:last-child {
  margin-bottom: 0;
}
.p-banquet__mdl {
  display: none;
  position: relative;
  z-index: 11;
  opacity: 0;
  transition: 0.3s;
}
.p-banquet__mdl-in {
  display: flex;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100dvh;
  padding: 0 5%;
  background: rgba(0, 0, 0, 0.9);
  cursor: pointer;
}
@media only screen and (max-width:540px) {
  .p-banquet__mdl-in {
    padding: 40px 5%;
    overflow-y: auto;
  }
}
.p-banquet__mdl-sec {
  width: 100%;
}
.p-banquet__mdl-sec h3 {
  max-width: 860px;
  margin: 0 auto 30px;
  font-size: 21px;
  color: #FFF;
}
@media only screen and (max-width:540px) {
  .p-banquet__mdl-sec h3 {
    margin: 0 auto 20px;
    font-size: 16px;
  }
}
.p-banquet__mdl-sec-in {
  width: 100%;
  max-width: 860px;
  margin: 0 auto;
  background: #FFF;
  border-radius: 8px;
  cursor: default;
}
.p-banquet__mdl-head {
  display: flex;
  align-items: center;
  position: relative;
  border-bottom: 1px solid #E4E9EC;
}
.p-banquet__mdl-head-pic {
  border-radius: 8px 0 0 0;
  overflow: hidden;
}
@media only screen and (max-width:540px) {
  .p-banquet__mdl-head-pic {
    display: none;
  }
}
.p-banquet__mdl-head-ttl {
  padding: 0 30px;
}
@media only screen and (max-width:540px) {
  .p-banquet__mdl-head-ttl {
    padding: 25px 8%;
  }
}
.p-banquet__mdl-head-ttl h4 {
  margin-bottom: 2px;
  font-size: 18px;
  line-height: 1.4;
}
.p-banquet__mdl-head-ttl small {
  font-size: 11px;
  color: #B8384F;
}
.p-banquet__mdl-head-close {
  display: block;
  position: absolute;
  top: -10px;
  right: -10px;
  z-index: 12;
  width: 36px;
  height: 36px;
  background: url(/assets/images/common/close01.png) no-repeat center/cover;
  cursor: pointer;
}
.p-banquet__mdl-cnt {
  padding: 50px 5% 40px;
}
@media only screen and (max-width:540px) {
  .p-banquet__mdl-cnt {
    padding: 40px 5% 20px;
  }
}
.p-banquet__mdl-cnt ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  list-style: none;
}
.p-banquet__mdl-cnt ul li {
  margin-bottom: 10px;
  padding: 0 30px;
  text-align: center;
}
@media only screen and (max-width:540px) {
  .p-banquet__mdl-cnt ul li {
    width: 50%;
    padding: 0 20px;
  }
  .p-banquet__mdl-cnt ul li img {
    width: 100%;
    height: auto;
  }
}
.p-banquet__mdl-cnt ul li img {
  max-width: 180px;
}
.p-banquet__mdl-cnt ul li figcaption {
  display: block;
  padding-top: 20px;
  font-size: 15px;
  line-height: 1.4;
}
@media only screen and (max-width:540px) {
  .p-banquet__mdl-cnt ul li figcaption {
    font-size: 13px;
  }
}
.p-banquet__spec {
  margin-bottom: 80px;
  padding: 0 5%;
}
@media only screen and (max-width:540px) {
  .p-banquet__spec {
    margin-bottom: 60px;
  }
}
.p-banquet__spec-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-banquet__spec-tbl-wrap {
  overflow-y: auto;
}
.p-banquet__spec-tbl {
  width: 100%;
  min-width: 800px;
  font-size: 15px;
  border-collapse: collapse;
  table-layout: fixed;
}
@media only screen and (max-width:540px) {
  .p-banquet__spec-tbl {
    font-size: 13px;
  }
}
.p-banquet__spec-tbl tr th, .p-banquet__spec-tbl tr td {
  padding: 15px 10px;
  border: 1px solid #E4E9EC;
}
@media only screen and (max-width:540px) {
  .p-banquet__spec-tbl tr th, .p-banquet__spec-tbl tr td {
    padding: 12px 8px;
  }
}
.p-banquet__spec-tbl tr th {
  font-weight: 400;
  background: #F3F5FA;
  line-height: 1.4;
}
.p-banquet__spec-tbl tr .floor {
  background: #F3F5FA;
}
.p-banquet__spec-tbl tr .num {
  text-align: center;
}
.p-banquet__plan {
  margin-bottom: 60px;
  padding: 0 5%;
}
@media only screen and (max-width:540px) {
  .p-banquet__plan {
    margin-bottom: 30px;
  }
}
.p-banquet__plan-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-banquet__plan-list {
  border-top: 1px solid #E4E9EC;
  list-style: none;
}
.p-banquet__plan-list li {
  border-bottom: 1px solid #E4E9EC;
}
.p-banquet__plan-list li a {
  display: flex;
  align-items: center;
  position: relative;
  padding: 30px 80px 30px 0;
}
@media only screen and (max-width:540px) {
  .p-banquet__plan-list li a {
    display: block;
  }
}
.p-banquet__plan-list li a::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  width: 26px;
  height: 5px;
  background: url(/assets/images/common/arrow03.png) no-repeat right/26px;
  transition: 0.2s;
  transform: translateY(-50%);
}
@media (hover: hover) and (pointer: fine) {
  .p-banquet__plan-list li a:hover .p-banquet__plan-list-pic {
    opacity: 0.6;
    transition: 0.2s;
  }
  .p-banquet__plan-list li a:hover::after {
    right: 15px;
    transition: 0.2s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .p-banquet__plan-list li a:hover .p-banquet__plan-list-pic {
    opacity: 0.6;
    transition: 0.2s;
  }
  .p-banquet__plan-list li a:hover::after {
    right: 15px;
    transition: 0.2s;
  }
}
.p-banquet__plan-list-pic {
  width: 30%;
  transition: 0.2s;
}
@media only screen and (max-width:540px) {
  .p-banquet__plan-list-pic {
    width: auto;
    margin-bottom: 30px;
  }
}
.p-banquet__plan-list-pic img {
  width: 100%;
  height: auto;
}
.p-banquet__plan-list-cnt {
  width: 70%;
  padding-left: 40px;
}
@media only screen and (max-width:540px) {
  .p-banquet__plan-list-cnt {
    width: auto;
    padding: 0;
  }
}
.p-banquet__plan-list-cnt h3 {
  margin-bottom: 10px;
  font-size: 20px;
  line-height: 1.6;
}
@media only screen and (max-width:540px) {
  .p-banquet__plan-list-cnt h3 {
    font-size: 16px;
  }
}
.p-banquet__plan-list-cnt p {
  line-height: 1.8;
}
@media only screen and (max-width:912px) {
  .p-banquet__plan-list-cnt p {
    font-size: 13px;
  }
}
.p-banquet__rsv {
  padding: 0 5%;
  text-align: center;
}
.p-banquet__rsv-in {
  width: 520px;
  margin: 0 auto;
}
@media only screen and (max-width:912px) {
  .p-banquet__rsv-in {
    width: 60%;
  }
}
@media only screen and (max-width:540px) {
  .p-banquet__rsv-in {
    width: 100%;
  }
}
.p-banquet__rsv-in a {
  display: block;
  position: relative;
  padding: 35px;
  color: #FFF;
  background: #B8384F;
  font-size: 20px;
}
@media only screen and (max-width:540px) {
  .p-banquet__rsv-in a {
    padding: 20px;
    font-size: 14px;
  }
}
.p-banquet__rsv-in a::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  width: 26px;
  height: 5px;
  background: url(/assets/images/common/arrow05.png) no-repeat right/26px;
  transition: 0.2s;
  transform: translateY(-50%);
}
@media (hover: hover) and (pointer: fine) {
  .p-banquet__rsv-in a:hover:hover::after {
    right: 15px;
    transition: 0.2s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .p-banquet__rsv-in a:hover:hover::after {
    right: 15px;
    transition: 0.2s;
  }
}

.p-bqp {
  padding: 70px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-bqp {
    padding: 60px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-bqp {
    padding: 30px 0 60px;
  }
}
.p-bqp__head {
  padding-bottom: 80px;
}
@media only screen and (max-width:540px) {
  .p-bqp__head {
    padding-bottom: 60px;
  }
}
.p-bqp__head-kv {
  background: url(/assets/images/banquet/hero@2x.jpg) no-repeat center/cover;
}
.p-bqp__blk {
  margin-bottom: 80px;
  padding: 80px 5% 0;
}
@media only screen and (max-width:540px) {
  .p-bqp__blk {
    display: block;
    padding: 30px 5% 0;
    margin-bottom: 40px;
  }
}
.p-bqp__blk-in {
  display: flex;
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
@media only screen and (max-width:540px) {
  .p-bqp__blk-in {
    display: block;
  }
}
.p-bqp__blk-cnt {
  display: flex;
  align-items: center;
  width: 50%;
  padding: 40px;
  background: url(/assets/images/common/ptn1.png) repeat left/143px;
}
@media only screen and (max-width:540px) {
  .p-bqp__blk-cnt {
    width: auto;
    padding: 25px 25px 35px 25px;
  }
}
.p-bqp__blk-cnt h3 {
  font-size: 28px;
  line-height: 1.6;
}
@media only screen and (max-width:1024px) {
  .p-bqp__blk-cnt h3 {
    font-size: 26px;
  }
}
@media only screen and (max-width:912px) {
  .p-bqp__blk-cnt h3 {
    font-size: 22px;
  }
}
@media only screen and (max-width:540px) {
  .p-bqp__blk-cnt h3 {
    font-size: 18px;
  }
}
.p-bqp__blk-cnt p {
  margin-top: 20px;
  line-height: 1.8;
}
@media only screen and (max-width:540px) {
  .p-bqp__blk-cnt p {
    margin-top: 15px;
    font-size: 13px;
  }
}
.p-bqp__blk-cnt .pdf {
  margin-top: 30px;
}
@media only screen and (max-width:540px) {
  .p-bqp__blk-cnt .pdf {
    margin-top: 20px;
    font-size: 13px;
  }
}
.p-bqp__blk-cnt .pdf a {
  text-decoration: underline;
}
.p-bqp__blk-pic {
  width: 50%;
}
@media only screen and (max-width:540px) {
  .p-bqp__blk-pic {
    width: auto;
  }
}
.p-bqp__blk-pic img {
  width: 100%;
  height: auto;
}
.p-bqp__blk-notes {
  display: block;
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  text-align: right;
}
.p-bqp__blk-notes small {
  display: inline-block;
  padding-top: 15px;
  font-size: 13px;
}
@media only screen and (max-width:540px) {
  .p-bqp__blk-notes small {
    font-size: 11px;
  }
}
.p-bqp__detail {
  margin-bottom: 60px;
  padding: 0 5%;
}
@media only screen and (max-width:540px) {
  .p-bqp__detail {
    margin-bottom: 40px;
  }
}
.p-bqp__detail-tbl {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  font-size: 15px;
  line-height: 1.7;
  border-top: 1px solid #E4E9EC;
}
@media only screen and (max-width:912px) {
  .p-bqp__detail-tbl {
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-bqp__detail-tbl {
    display: block;
    margin-top: 30px;
    font-size: 13px;
  }
}
.p-bqp__detail-tbl-item {
  display: flex;
  border-bottom: 1px solid #E4E9EC;
}
.p-bqp__detail-tbl-item strong {
  font-weight: 600;
}
.p-bqp__detail-tbl-ttl {
  width: 25%;
  background: #F3F5FA;
  padding: 30px;
}
@media only screen and (max-width:912px) {
  .p-bqp__detail-tbl-ttl {
    padding: 16px;
  }
}
@media only screen and (max-width:540px) {
  .p-bqp__detail-tbl-ttl {
    width: 27%;
    padding: 15px;
  }
}
.p-bqp__detail-tbl-cnt {
  width: 75%;
  padding: 30px;
}
@media only screen and (max-width:912px) {
  .p-bqp__detail-tbl-cnt {
    padding: 16px;
  }
}
@media only screen and (max-width:540px) {
  .p-bqp__detail-tbl-cnt {
    width: 73%;
    padding: 15px;
  }
}
.p-bqp__detail-notes {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  padding-top: 15px;
}
.p-bqp__detail-notes small {
  font-size: 12px;
  line-height: 1.5;
}
.p-bqp__rsv {
  margin-bottom: 100px;
  padding: 0 5%;
  text-align: center;
}
@media only screen and (max-width:540px) {
  .p-bqp__rsv {
    margin-bottom: 60px;
  }
}
.p-bqp__rsv-in {
  width: 520px;
  margin: 0 auto;
}
@media only screen and (max-width:912px) {
  .p-bqp__rsv-in {
    width: 60%;
  }
}
@media only screen and (max-width:540px) {
  .p-bqp__rsv-in {
    width: 100%;
  }
}
.p-bqp__rsv-in a {
  display: block;
  position: relative;
  padding: 35px;
  color: #FFF;
  background: #B8384F;
  font-size: 20px;
}
@media only screen and (max-width:540px) {
  .p-bqp__rsv-in a {
    padding: 20px;
    font-size: 14px;
  }
}
.p-bqp__rsv-in a::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  width: 26px;
  height: 5px;
  background: url(/assets/images/common/arrow05.png) no-repeat right/26px;
  transition: 0.2s;
  transform: translateY(-50%);
}
@media (hover: hover) and (pointer: fine) {
  .p-bqp__rsv-in a:hover:hover::after {
    right: 15px;
    transition: 0.2s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .p-bqp__rsv-in a:hover:hover::after {
    right: 15px;
    transition: 0.2s;
  }
}

.p-bridal {
  padding: 30px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-bridal {
    padding: 20px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-bridal {
    padding: 10px 0 60px;
  }
}
.p-bridal__plan {
  margin-bottom: 80px;
  padding: 0 5%;
}
@media only screen and (max-width:540px) {
  .p-bridal__plan {
    margin-bottom: 60px;
  }
}
.p-bridal__plan-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-bridal__plan .lead1 {
  margin-bottom: 60px;
}
@media only screen and (max-width:540px) {
  .p-bridal__plan .lead1 {
    margin-bottom: 40px;
  }
}
.p-bridal__plan-ex {
  margin-bottom: 80px;
}
@media only screen and (max-width:540px) {
  .p-bridal__plan-ex {
    margin-bottom: 60px;
  }
}
.p-bridal__plan-ex .ttl3 {
  margin-bottom: 40px;
}
@media only screen and (max-width:540px) {
  .p-bridal__plan-ex .ttl3 {
    margin-bottom: 30px;
  }
}
.p-bridal__plan-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 2%;
  background: #FAF9F3;
  list-style: none;
}
@media only screen and (max-width:540px) {
  .p-bridal__plan-list {
    padding: 15px;
  }
}
.p-bridal__plan-list li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 31.66%;
  padding: 30px;
  background: #FFF;
}
@media only screen and (max-width:912px) {
  .p-bridal__plan-list li {
    width: 48.9%;
    margin-bottom: 2%;
  }
}
@media only screen and (max-width:540px) {
  .p-bridal__plan-list li {
    width: 100%;
    padding: 25px;
    margin-bottom: 5%;
  }
}
.p-bridal__plan-list li:last-child {
  margin: 0;
}
.p-bridal__plan-list-people {
  font-size: 16px;
}
@media only screen and (max-width:912px) {
  .p-bridal__plan-list-people {
    font-size: 14px;
  }
}
.p-bridal__plan-list-price {
  font-size: 28px;
}
@media only screen and (max-width:912px) {
  .p-bridal__plan-list-price {
    font-size: 26px;
  }
}
@media only screen and (max-width:540px) {
  .p-bridal__plan-list-price {
    font-size: 24px;
  }
}
.p-bridal__plan-list-price span {
  display: inline-block;
  padding-left: 5px;
  font-size: 18px;
}
@media only screen and (max-width:540px) {
  .p-bridal__plan-list-price span {
    font-size: 16px;
  }
}
.p-bridal__plan-notes {
  padding-top: 15px;
  text-align: right;
}
.p-bridal__plan-notes small {
  font-size: 12px;
}
@media only screen and (max-width:540px) {
  .p-bridal__plan-notes small {
    font-size: 11px;
  }
}
.p-bridal__ceremony {
  margin-bottom: 80px;
  padding: 0 5%;
}
@media only screen and (max-width:540px) {
  .p-bridal__ceremony {
    margin-bottom: 60px;
  }
}
.p-bridal__ceremony-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-bridal__ceremony-pic {
  margin-bottom: 60px;
}
@media only screen and (max-width:912px) {
  .p-bridal__ceremony-pic {
    margin-bottom: 40px;
  }
}
@media only screen and (max-width:540px) {
  .p-bridal__ceremony-pic {
    margin-bottom: 30px;
  }
}
.p-bridal__ceremony-pic img {
  width: 100%;
  height: auto;
}
.p-bridal__reception {
  margin-bottom: 80px;
  padding: 0 5%;
}
@media only screen and (max-width:540px) {
  .p-bridal__reception {
    margin-bottom: 60px;
  }
}
.p-bridal__reception-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-bridal__reception-flex {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width:540px) {
  .p-bridal__reception-flex {
    display: block;
  }
}
.p-bridal__reception-hall {
  width: 47.5%;
}
@media only screen and (max-width:540px) {
  .p-bridal__reception-hall {
    width: auto;
  }
}
.p-bridal__reception-hall-ttl {
  margin-bottom: 40px;
  padding: 15px 20px;
  font-size: 22px;
  line-height: 1.4;
  color: #FFF;
  background: url(/assets/images/common/ptn4.png) repeat left/20px;
}
@media only screen and (max-width:912px) {
  .p-bridal__reception-hall-ttl {
    font-size: 18px;
  }
}
@media only screen and (max-width:540px) {
  .p-bridal__reception-hall-ttl {
    margin-bottom: 20px;
    font-size: 16px;
  }
}
.p-bridal__reception-hall-pic {
  margin-bottom: 40px;
}
@media only screen and (max-width:912px) {
  .p-bridal__reception-hall-pic {
    margin-bottom: 30px;
  }
}
.p-bridal__reception-hall-pic img {
  width: 100%;
  height: auto;
}
.p-bridal__reception-hall-lead {
  margin-bottom: 25px;
  font-size: 20px;
  line-height: 1.6;
}
@media only screen and (max-width:912px) {
  .p-bridal__reception-hall-lead {
    font-size: 18px;
    margin-bottom: 15px;
  }
}
.p-bridal__reception-hall-desc {
  font-size: 14px;
  line-height: 1.7;
}
@media only screen and (max-width:540px) {
  .p-bridal__reception-hall-desc {
    font-size: 13px;
  }
}
@media only screen and (max-width:540px) {
  .p-bridal__reception-hall:first-child {
    margin-bottom: 40px;
  }
}
.p-bridal__costume {
  margin-bottom: 80px;
  padding: 0 5%;
}
@media only screen and (max-width:540px) {
  .p-bridal__costume {
    margin-bottom: 60px;
  }
}
.p-bridal__costume-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-bridal__costume-flex {
  display: flex;
  align-items: flex-start;
}
@media only screen and (max-width:540px) {
  .p-bridal__costume-flex {
    display: block;
  }
}
.p-bridal__costume-bnr {
  border: 1px solid #E4E9EC;
}
@media only screen and (max-width:540px) {
  .p-bridal__costume-bnr {
    width: 80%;
    margin: 0 auto 40px;
  }
}
.p-bridal__costume-bnr img {
  display: block;
  width: 100%;
  height: auto;
}
.p-bridal__costume .lead1 {
  padding-left: 50px;
}
@media only screen and (max-width:540px) {
  .p-bridal__costume .lead1 {
    padding: 0;
  }
}
.p-bridal__costume .lead1 p {
  margin-bottom: 20px;
}
.p-bridal__costume .lead1 p:last-child {
  margin: 0;
}
.p-bridal__contact {
  padding: 0 5%;
}
.p-bridal__contact-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-bridal__contact .lead1 {
  margin-bottom: 80px;
}
@media only screen and (max-width:540px) {
  .p-bridal__contact .lead1 {
    margin-bottom: 50px;
  }
}
.p-bridal__contact .lead1 p {
  margin-bottom: 25px;
}
.p-bridal__contact .lead1 p:last-child {
  margin: 0;
}

.p-bc {
  padding: 30px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-bc {
    padding: 20px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-bc {
    padding: 10px 0 60px;
  }
}
.p-bc__cnt {
  padding: 80px 5% 0;
}
@media only screen and (max-width:912px) {
  .p-bc__cnt {
    padding: 60px 5% 0;
  }
}
@media only screen and (max-width:540px) {
  .p-bc__cnt {
    padding: 40px 5% 0;
  }
}
.p-bc__cnt-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-bc__cnt .lead1 {
  margin-bottom: 80px;
}
@media only screen and (max-width:540px) {
  .p-bc__cnt .lead1 {
    margin-bottom: 60px;
  }
}

.p-tourism {
  padding: 30px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-tourism {
    padding: 20px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-tourism {
    padding: 10px 0 60px;
  }
}
.p-tourism__access {
  margin-bottom: 80px;
  padding: 0 5%;
}
@media only screen and (max-width:540px) {
  .p-tourism__access {
    margin-bottom: 60px;
  }
}
.p-tourism__access-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-tourism__access-map {
  margin-bottom: 60px;
}
@media only screen and (max-width:912px) {
  .p-tourism__access-map {
    margin-bottom: 40px;
  }
}
@media only screen and (max-width:540px) {
  .p-tourism__access-map {
    margin-bottom: 30px;
  }
}
.p-tourism__access-map img {
  width: 100%;
  height: auto;
}
.p-tourism__access-guide {
  display: flex;
  justify-content: space-between;
  padding: 20px 20px 0 20px;
  background: #FAF9F3;
}
@media only screen and (max-width:912px) {
  .p-tourism__access-guide {
    padding: 14px 14px 0 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-tourism__access-guide {
    display: block;
    padding: 12px;
  }
}
.p-tourism__access-guide-col {
  width: calc(50% - 10px);
}
@media only screen and (max-width:912px) {
  .p-tourism__access-guide-col {
    width: calc(50% - 7px);
  }
}
@media only screen and (max-width:540px) {
  .p-tourism__access-guide-col {
    width: auto;
  }
}
.p-tourism__access-guide-item {
  margin-bottom: 20px;
  background: #FFF;
}
@media only screen and (max-width:912px) {
  .p-tourism__access-guide-item {
    margin-bottom: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-tourism__access-guide-item {
    margin-bottom: 12px;
  }
}
.p-tourism__access-guide-head {
  display: flex;
  align-items: center;
  padding: 30px;
}
@media only screen and (max-width:912px) {
  .p-tourism__access-guide-head {
    padding: 24px;
  }
}
@media only screen and (max-width:540px) {
  .p-tourism__access-guide-head {
    padding: 20px;
  }
}
.p-tourism__access-guide-head h3 {
  font-size: 18px;
}
@media only screen and (max-width:912px) {
  .p-tourism__access-guide-head h3 {
    font-size: 17px;
  }
}
@media only screen and (max-width:540px) {
  .p-tourism__access-guide-head h3 {
    font-size: 14px;
  }
}
.p-tourism__access-guide-cnt-in {
  padding: 0 30px 30px;
}
@media only screen and (max-width:912px) {
  .p-tourism__access-guide-cnt-in {
    padding: 0 24px 24px;
  }
}
@media only screen and (max-width:540px) {
  .p-tourism__access-guide-cnt-in {
    padding: 0 20px 20px;
  }
}
.p-tourism__access-guide-cnt section {
  margin-bottom: 30px;
}
.p-tourism__access-guide-cnt section p {
  line-height: 1.6;
}
@media only screen and (max-width:912px) {
  .p-tourism__access-guide-cnt section p {
    font-size: 13px;
  }
}
@media only screen and (max-width:540px) {
  .p-tourism__access-guide-cnt section p {
    font-size: 12px;
  }
}
.p-tourism__access-guide-cnt section p a {
  color: #B8384F;
  text-decoration: underline;
}
@media only screen and (max-width:912px) {
  .p-tourism__access-guide-cnt section ul {
    font-size: 13px;
  }
}
@media only screen and (max-width:540px) {
  .p-tourism__access-guide-cnt section ul {
    font-size: 12px;
  }
}
.p-tourism__access-guide-cnt section:last-child {
  margin: 0;
}
.p-tourism__tokyotower {
  margin-bottom: 80px;
  padding: 0 5%;
}
@media only screen and (max-width:540px) {
  .p-tourism__tokyotower {
    margin-bottom: 60px;
  }
}
.p-tourism__tokyotower-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-tourism__feed {
  padding: 0 5% 70px;
}
@media only screen and (max-width:912px) {
  .p-tourism__feed {
    padding: 60px 5% 0;
  }
}
@media only screen and (max-width:540px) {
  .p-tourism__feed {
    padding: 50px 5% 0;
  }
}
.p-tourism__feed-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-tourism__feed-ttl {
  margin-bottom: 40px;
}
@media only screen and (max-width:540px) {
  .p-tourism__feed-ttl {
    margin-bottom: 30px;
  }
}
.p-tourism__feed-list {
  display: flex;
  flex-wrap: wrap;
  gap: 5%;
  list-style: none;
}
@media only screen and (max-width:912px) {
  .p-tourism__feed-list {
    display: block;
  }
}
.p-tourism__feed-list li {
  display: flex;
  align-items: center;
  gap: 5%;
  width: 47.5%;
  margin-bottom: 30px;
}
@media only screen and (max-width:912px) {
  .p-tourism__feed-list li {
    width: auto;
  }
}
@media only screen and (max-width:540px) {
  .p-tourism__feed-list li {
    align-items: start;
  }
}
.p-tourism__feed-list-pic {
  width: 40%;
  overflow: hidden;
}
@media only screen and (max-width:912px) {
  .p-tourism__feed-list-pic {
    width: 30%;
  }
}
.p-tourism__feed-list-pic img {
  display: block;
  width: 100%;
  height: auto;
  transition: 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .p-tourism__feed-list-pic a:hover:hover img {
    transform: scale(1.06);
    transition: 0.3s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .p-tourism__feed-list-pic a:hover:hover img {
    transform: scale(1.06);
    transition: 0.3s;
  }
}
.p-tourism__feed-list-cnt {
  width: 60%;
}
@media only screen and (max-width:912px) {
  .p-tourism__feed-list-cnt {
    width: 70%;
  }
}
.p-tourism__feed-list-ttl {
  font-size: 15px;
  line-height: 1.6;
}
@media only screen and (max-width:912px) {
  .p-tourism__feed-list-ttl {
    font-size: 13px;
  }
}
@media only screen and (max-width:540px) {
  .p-tourism__feed-list-ttl {
    font-size: 12px;
  }
}
.p-tourism__feed-list-ttl a {
  display: block;
}
.p-tourism__feed-list-date {
  padding-top: 10px;
  line-height: 1.4;
}
@media only screen and (max-width:912px) {
  .p-tourism__feed-list-date {
    font-size: 12px;
  }
}
@media only screen and (max-width:540px) {
  .p-tourism__feed-list-date {
    font-size: 10px;
    padding-top: 7px;
  }
}
.p-tourism__bus {
  margin-bottom: 80px;
  padding: 0 5%;
}
@media only screen and (max-width:540px) {
  .p-tourism__bus {
    margin-bottom: 60px;
  }
}
.p-tourism__bus-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-tourism__bus-flex {
  display: flex;
  margin-bottom: 60px;
}
@media only screen and (max-width:540px) {
  .p-tourism__bus-flex {
    display: block;
    margin-bottom: 40px;
  }
}
.p-tourism__bus-pic {
  width: 30%;
}
@media only screen and (max-width:540px) {
  .p-tourism__bus-pic {
    width: auto;
    margin-bottom: 30px;
  }
}
.p-tourism__bus-pic img {
  width: 100%;
  height: auto;
}
.p-tourism__bus-lead {
  width: 70%;
  padding-left: 50px;
  line-height: 1.9;
}
@media only screen and (max-width:540px) {
  .p-tourism__bus-lead {
    width: auto;
    padding-left: 0;
  }
}
.p-tourism__bus-lead p {
  margin-bottom: 20px;
  font-size: 16px;
}
@media only screen and (max-width:912px) {
  .p-tourism__bus-lead p {
    font-size: 15px;
  }
}
@media only screen and (max-width:540px) {
  .p-tourism__bus-lead p {
    font-size: 13px;
  }
}
.p-tourism__bus-lead a {
  color: #B8384F;
  text-decoration: underline;
}
.p-tourism__bus-rsv {
  margin-bottom: 60px;
  font-size: 15px;
}
@media only screen and (max-width:540px) {
  .p-tourism__bus-rsv {
    margin-bottom: 40px;
    font-size: 13px;
  }
}
.p-tourism__bus-rsv .ttl4 {
  margin-bottom: 40px;
}
@media only screen and (max-width:540px) {
  .p-tourism__bus-rsv .ttl4 {
    margin-bottom: 25px;
  }
}
.p-tourism__bus-rsv-list {
  line-height: 1.9;
}
.p-tourism__bus-root {
  margin-bottom: 60px;
  font-size: 15px;
}
@media only screen and (max-width:540px) {
  .p-tourism__bus-root {
    margin-bottom: 40px;
    font-size: 13px;
  }
}
.p-tourism__bus-root .ttl4 {
  margin-bottom: 40px;
}
@media only screen and (max-width:540px) {
  .p-tourism__bus-root .ttl4 {
    margin-bottom: 25px;
  }
}
.p-tourism__bus-root-list {
  line-height: 1.9;
}
.p-tourism__bus-time {
  margin-bottom: 60px;
  font-size: 15px;
}
@media only screen and (max-width:540px) {
  .p-tourism__bus-time {
    margin-bottom: 40px;
    font-size: 13px;
  }
}
.p-tourism__bus-time .ttl4 {
  margin-bottom: 40px;
}
@media only screen and (max-width:540px) {
  .p-tourism__bus-time .ttl4 {
    margin-bottom: 25px;
  }
}
.p-tourism__bus-time-lead {
  margin-bottom: 30px;
  line-height: 1.7;
}
.p-tourism__bus-time-bnr {
  margin-bottom: 80px;
}
@media only screen and (max-width:540px) {
  .p-tourism__bus-time-bnr {
    margin-bottom: 40px;
  }
  .p-tourism__bus-time-bnr img {
    width: 100%;
    height: auto;
  }
}
.p-tourism__bus-time-table-wrap {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  text-align: center;
}
@media only screen and (max-width:540px) {
  .p-tourism__bus-time-table-wrap {
    display: block;
  }
}
.p-tourism__bus-time-table-wrap table {
  width: 47.5%;
  border-collapse: collapse;
  line-height: 1.6;
}
@media only screen and (max-width:540px) {
  .p-tourism__bus-time-table-wrap table {
    width: 100%;
    font-size: 12px;
  }
}
.p-tourism__bus-time-table-wrap table tr th {
  padding: 20px;
  background: #F3F5FA;
  border: 1px solid #E4E9EC;
}
@media only screen and (max-width:540px) {
  .p-tourism__bus-time-table-wrap table tr th {
    padding: 15px;
  }
}
.p-tourism__bus-time-table-wrap table tr td {
  padding: 20px;
  border: 1px solid #E4E9EC;
}
@media only screen and (max-width:540px) {
  .p-tourism__bus-time-table-wrap table tr td {
    padding: 15px;
  }
}
.p-tourism__bus-time-table-wrap table tr.col2 td {
  width: 50%;
}
.p-tourism__bus-time-table-wrap table:first-child {
  margin-bottom: 30px;
}
.p-tourism__bus-terminal {
  margin-bottom: 60px;
  font-size: 15px;
}
@media only screen and (max-width:540px) {
  .p-tourism__bus-terminal {
    margin-bottom: 40px;
    font-size: 13px;
  }
}
.p-tourism__bus-terminal .ttl4 {
  margin-bottom: 40px;
}
@media only screen and (max-width:540px) {
  .p-tourism__bus-terminal .ttl4 {
    margin-bottom: 25px;
  }
}
.p-tourism__bus-terminal-flex {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
}
@media only screen and (max-width:540px) {
  .p-tourism__bus-terminal-flex {
    display: block;
  }
}
.p-tourism__bus-terminal-flex section {
  display: flex;
  flex-direction: column;
  width: 47.5%;
}
@media only screen and (max-width:540px) {
  .p-tourism__bus-terminal-flex section {
    width: auto;
  }
  .p-tourism__bus-terminal-flex section:first-child {
    margin-bottom: 30px;
  }
}
.p-tourism__bus-terminal-flex section h4 {
  margin-bottom: 30px;
  padding: 0 0 15px 0;
  font-size: 18px;
  border-bottom: 1px solid #E4E9EC;
}
@media only screen and (max-width:540px) {
  .p-tourism__bus-terminal-flex section h4 {
    margin-bottom: 15px;
    font-size: 15px;
  }
}
.p-tourism__bus-terminal-flex section p {
  flex: 1;
  margin-bottom: 30px;
  line-height: 1.8;
}
.p-tourism__bus-terminal-flex section img {
  width: 100%;
  height: auto;
}
.p-tourism__souvenir {
  margin-bottom: 80px;
  padding: 0 5%;
}
@media only screen and (max-width:540px) {
  .p-tourism__souvenir {
    margin-bottom: 60px;
  }
}
.p-tourism__souvenir-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-tourism__souvenir-flex {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
}
@media only screen and (max-width:540px) {
  .p-tourism__souvenir-flex {
    display: block;
  }
}
.p-tourism__souvenir-flex p {
  width: 65%;
  font-size: 16px;
  line-height: 1.9;
}
@media only screen and (max-width:912px) {
  .p-tourism__souvenir-flex p {
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-tourism__souvenir-flex p {
    width: 100%;
    font-size: 13px;
  }
}
.p-tourism__souvenir-pic {
  width: 30%;
}
@media only screen and (max-width:540px) {
  .p-tourism__souvenir-pic {
    width: 100%;
    margin-bottom: 20px;
  }
}
.p-tourism__souvenir-pic img {
  max-width: 100%;
  height: auto;
}
.p-tourism__info {
  padding: 0 5%;
}
.p-tourism__info-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-tourism__info .lead1 {
  margin-bottom: 40px;
}
@media only screen and (max-width:540px) {
  .p-tourism__info .lead1 {
    margin-bottom: 30px;
  }
}
.p-tourism__info-link {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  list-style: none;
}
@media only screen and (max-width:540px) {
  .p-tourism__info-link {
    display: block;
  }
}
.p-tourism__info-link::after {
  content: "";
  display: block;
  width: 32%;
}
.p-tourism__info li {
  width: 32%;
  margin-bottom: 2%;
  border: 1px solid #0A0A0A;
}
@media only screen and (max-width:540px) {
  .p-tourism__info li {
    width: auto;
    margin-bottom: 10px;
  }
}
.p-tourism__info li a {
  display: flex;
  align-items: center;
  position: relative;
  height: 60px;
  padding: 0 15px;
  font-size: 15px;
  line-height: 1.4;
}
@media only screen and (max-width:540px) {
  .p-tourism__info li a {
    height: 50px;
    font-size: 13px;
  }
}
.p-tourism__info li a::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 15px;
  z-index: 12;
  width: 6px;
  height: 6px;
  background: url(/assets/images/common/arrow01.png) no-repeat right/6px;
  transition: 0.2s;
  transform: translateY(-50%);
}
@media (hover: hover) and (pointer: fine) {
  .p-tourism__info li a:hover:hover::after {
    right: 10px;
    transition: 0.2s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .p-tourism__info li a:hover:hover::after {
    right: 10px;
    transition: 0.2s;
  }
}

.p-guest-room {
  padding: 70px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-guest-room {
    padding: 60px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-guest-room {
    padding: 30px 0 40px;
  }
}
.p-guest-room__head {
  padding-bottom: 80px;
}
@media only screen and (max-width:540px) {
  .p-guest-room__head {
    padding-bottom: 60px;
  }
}
.p-guest-room__head-kv {
  background: url(/assets/images/guest-room/hero.jpg) no-repeat center/cover;
}
@media (min-resolution: 192dpi) {
  .p-guest-room__head-kv {
    background: url(/assets/images/guest-room/hero@2x.jpg) no-repeat center/cover;
  }
}
.p-guest-room__type {
  padding: 60px 5%;
}
@media only screen and (max-width:540px) {
  .p-guest-room__type {
    padding: 30px 5% 50px;
  }
}
.p-guest-room__type-in {
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-guest-room__type-ttl {
  margin-bottom: 40px;
}
@media only screen and (max-width:912px) {
  .p-guest-room__type-ttl {
    margin-bottom: 30px;
  }
}
@media only screen and (max-width:540px) {
  .p-guest-room__type-ttl {
    margin-bottom: 20px;
  }
}
.p-guest-room__type-flex {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width:540px) {
  .p-guest-room__type-flex {
    display: block;
  }
}
.p-guest-room__type-sec {
  width: 49%;
  border: 1px solid #E4E9EC;
  border-left: 3px solid #B8384F;
}
@media only screen and (max-width:540px) {
  .p-guest-room__type-sec {
    width: auto;
  }
  .p-guest-room__type-sec:first-child {
    margin-bottom: 20px;
  }
}
.p-guest-room__type-sec h3 {
  border-bottom: 1px solid #E4E9EC;
}
@media only screen and (max-width:540px) {
  .p-guest-room__type-sec h3 {
    font-size: 14px;
  }
}
.p-guest-room__type-sec h3 a {
  position: relative;
  display: block;
  padding: 20px 30px;
}
@media only screen and (max-width:912px) {
  .p-guest-room__type-sec h3 a {
    padding: 15px 20px;
  }
}
.p-guest-room__type-sec h3 a:hover {
  transition: 0.4s;
}
.p-guest-room__type-sec h3 a:hover::after {
  animation: arrowIn 0.4s forwards;
}
.p-guest-room__type-sec h3 a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  display: block;
  width: 8px;
  height: 8px;
  background: url(/assets/images/common/arrow04.png) no-repeat center/8px;
  transform: translateY(-50%);
}
@media only screen and (max-width:540px) {
  .p-guest-room__type-sec h3 a::after {
    background-size: 6px;
  }
}
.p-guest-room__type-sec ul {
  padding: 20px 50px;
  list-style: none;
}
@media only screen and (max-width:912px) {
  .p-guest-room__type-sec ul {
    padding: 20px 40px;
  }
}
@media only screen and (max-width:540px) {
  .p-guest-room__type-sec ul {
    padding: 15px 35px;
  }
}
.p-guest-room__type-sec ul li {
  list-style: 1.6;
}
@media only screen and (max-width:540px) {
  .p-guest-room__type-sec ul li {
    font-size: 12px;
  }
}
.p-guest-room__type-sec ul li a {
  display: inline-block;
  padding: 6px 0;
  text-decoration: underline;
}
.p-guest-room__cnt {
  padding: 0 5%;
}
.p-guest-room__cnt-rank {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-guest-room__cnt-rank-lead {
  margin-bottom: 60px;
}
@media only screen and (max-width:1024px) {
  .p-guest-room__cnt-rank-lead {
    margin-bottom: 40px;
  }
}
@media only screen and (max-width:540px) {
  .p-guest-room__cnt-rank-lead {
    margin-bottom: 25px;
  }
}
.p-guest-room__cnt-cat {
  margin-bottom: 60px;
}
@media only screen and (max-width:540px) {
  .p-guest-room__cnt-cat {
    margin-bottom: 50px;
  }
}
.p-guest-room__cnt-cat-ttl {
  margin-bottom: 40px;
}
@media only screen and (max-width:540px) {
  .p-guest-room__cnt-cat-ttl {
    margin-bottom: 30px;
  }
}
.p-guest-room__cnt-sec-ttl {
  margin-bottom: 40px;
}
@media only screen and (max-width:540px) {
  .p-guest-room__cnt-sec-ttl {
    margin-bottom: 30px;
  }
}
.p-guest-room__cnt-sec:not(:first-child) {
  margin-top: 60px;
}
@media only screen and (max-width:912px) {
  .p-guest-room__cnt-sec:not(:first-child) {
    margin-top: 50px;
  }
}
@media only screen and (max-width:540px) {
  .p-guest-room__cnt-sec:not(:first-child) {
    margin-top: 40px;
  }
}
.p-guest-room__cnt-pic--grid {
  display: grid;
  grid-template-columns: 1fr 2fr;
  grid-template-rows: 1fr 1fr;
  gap: 20px;
}
@media only screen and (max-width:540px) {
  .p-guest-room__cnt-pic--grid {
    gap: 10px;
  }
}
.p-guest-room__cnt-pic--grid .p-guest-room__cnt-pic-item:nth-child(1) {
  grid-column: 1;
  grid-row: 1;
}
.p-guest-room__cnt-pic--grid .p-guest-room__cnt-pic-item:nth-child(2) {
  grid-column: 1;
  grid-row: 2;
}
.p-guest-room__cnt-pic--grid .p-guest-room__cnt-pic-item:nth-child(3) {
  grid-column: 2;
  grid-row: 1/span 2;
}
.p-guest-room__cnt-pic--grid .p-guest-room__cnt-pic-item:nth-child(3) img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-guest-room__cnt-pic--flex {
  display: flex;
  justify-content: space-between;
}
.p-guest-room__cnt-pic--flex .p-guest-room__cnt-pic-item {
  width: calc(50% - 10px);
}
.p-guest-room__cnt-pic-item {
  position: relative;
}
.p-guest-room__cnt-pic-item img {
  display: block;
  width: 100%;
  height: auto;
}
.p-guest-room__cnt-pic-item span {
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  padding: 15px;
  font-size: 16px;
  color: #FFF;
}
@media only screen and (max-width:540px) {
  .p-guest-room__cnt-pic-item span {
    padding: 10px;
    font-size: 15px;
  }
}
.p-guest-room__cnt-tbl {
  display: grid;
  grid-auto-flow: column;
  grid-template-rows: repeat(2, auto);
  grid-template-columns: 1fr 1fr;
  margin-top: 40px;
  font-size: 15px;
  line-height: 1.7;
  border-top: 1px solid #E4E9EC;
}
@media only screen and (max-width:912px) {
  .p-guest-room__cnt-tbl {
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-guest-room__cnt-tbl {
    display: block;
    margin-top: 30px;
    font-size: 13px;
  }
}
.p-guest-room__cnt-tbl-item {
  display: flex;
  flex-direction: row;
  border-bottom: 1px solid #E4E9EC;
}
.p-guest-room__cnt-tbl-ttl {
  flex: 1;
  background: #F3F5FA;
  padding: 20px;
}
@media only screen and (max-width:912px) {
  .p-guest-room__cnt-tbl-ttl {
    padding: 16px;
  }
}
@media only screen and (max-width:540px) {
  .p-guest-room__cnt-tbl-ttl {
    padding: 15px;
  }
}
.p-guest-room__cnt-tbl-cnt {
  flex: 2;
  padding: 20px;
}
@media only screen and (max-width:912px) {
  .p-guest-room__cnt-tbl-cnt {
    padding: 16px;
  }
}
@media only screen and (max-width:540px) {
  .p-guest-room__cnt-tbl-cnt {
    padding: 15px;
  }
}

.p-ays {
  padding: 70px 0 100px;
  font-size: 15px;
  line-height: 1.8;
}
@media only screen and (max-width:912px) {
  .p-ays {
    padding: 60px 0 80px;
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-ays {
    padding: 30px 0 60px;
    font-size: 13px;
  }
}
.p-ays__head {
  padding-bottom: 80px;
}
@media only screen and (max-width:540px) {
  .p-ays__head {
    padding-bottom: 60px;
  }
}
.p-ays__head-kv {
  background: url(/assets/images/about-your-stay/hero.jpg) no-repeat center/cover;
}
@media (min-resolution: 192dpi) {
  .p-ays__head-kv {
    background: url(/assets/images/about-your-stay/hero@2x.jpg) no-repeat center/cover;
  }
}
.p-ays__bkf {
  padding: 60px 5% 80px;
}
@media only screen and (max-width:540px) {
  .p-ays__bkf {
    padding: 30px 5% 60px;
  }
}
.p-ays__bkf-in {
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-ays__bkf-lead {
  padding-bottom: 20px;
  font-size: 20px;
}
@media only screen and (max-width:912px) {
  .p-ays__bkf-lead {
    font-size: 18px;
  }
}
@media only screen and (max-width:540px) {
  .p-ays__bkf-lead {
    padding-bottom: 20px;
    font-size: 16px;
  }
}
.p-ays__bkf-sec {
  padding-top: 60px;
}
@media only screen and (max-width:540px) {
  .p-ays__bkf-sec {
    padding-top: 40px;
  }
}
.p-ays__bkf-sec .ttl3 small {
  display: inline-block;
  padding-left: 10px;
  font-size: 12px;
  color: #B8384F;
}
.p-ays__bkf-sec-flex {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width:540px) {
  .p-ays__bkf-sec-flex {
    display: block;
  }
}
.p-ays__bkf-sec-pic {
  width: 48.5%;
}
@media only screen and (max-width:540px) {
  .p-ays__bkf-sec-pic {
    width: auto;
    margin-bottom: 10px;
  }
}
.p-ays__bkf-sec-pic img {
  width: 100%;
  height: auto;
}
.p-ays__bkf-sec-pic--grid {
  display: grid;
  grid-template-areas: "top top" "left right";
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
@media only screen and (max-width:540px) {
  .p-ays__bkf-sec-pic--grid {
    margin-bottom: 20px;
  }
}
.p-ays__bkf-sec-pic--grid img:nth-of-type(1) {
  grid-area: top;
  width: 100%;
}
.p-ays__bkf-sec-pic--grid img:nth-of-type(2) {
  grid-area: left;
  width: 100%;
}
.p-ays__bkf-sec-pic--grid img:nth-of-type(3) {
  grid-area: right;
  width: 100%;
}
.p-ays__bkf-sec-right {
  width: 48.5%;
}
@media only screen and (max-width:540px) {
  .p-ays__bkf-sec-right {
    width: auto;
  }
}
.p-ays__bkf-sec-ttl {
  margin-bottom: 10px;
  font-size: 17px;
}
@media only screen and (max-width:540px) {
  .p-ays__bkf-sec-ttl {
    font-size: 15px;
  }
}
.p-ays__bkf .table1 {
  margin-top: 40px;
}
@media only screen and (max-width:540px) {
  .p-ays__bkf .table1 {
    margin-top: 30px;
  }
}
.p-ays__info {
  padding: 0 5%;
}
.p-ays__info a {
  color: #B8384F;
  text-decoration: underline;
}
.p-ays__info-in {
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-ays__info-sec {
  padding: 0 0 50px;
}
@media only screen and (max-width:912px) {
  .p-ays__info-sec {
    padding: 0 0 40px;
  }
}
.p-ays__info-sec p {
  margin-bottom: 10px;
}
.p-ays__info-sec-child {
  margin-bottom: 40px;
}
.p-ays__info-sec-child h5 {
  margin-bottom: 10px;
  font-size: 14px;
}
.p-ays__info-sec-child:last-child {
  margin: 0;
}
.p-ays__info-sec-child--amenity section {
  margin-bottom: 20px;
}
.p-ays__info-sec-list {
  display: grid;
  grid-auto-flow: column;
  grid-template-rows: repeat(4, auto);
  list-style: none;
}
@media only screen and (max-width:540px) {
  .p-ays__info-sec-list {
    grid-template-rows: repeat(6, auto);
  }
}
.p-ays__info-sec small {
  display: block;
}
.p-ays__info-sec--check ul {
  padding-top: 20px;
  list-style: none;
}

.p-acpln {
  padding: 70px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-acpln {
    padding: 60px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-acpln {
    padding: 30px 0 60px;
  }
}
.p-acpln__head {
  padding-bottom: 80px;
}
@media only screen and (max-width:540px) {
  .p-acpln__head {
    padding-bottom: 60px;
  }
}
.p-acpln__head-kv {
  background: url(/assets/images/accommodation-plan/hero@2x.jpg) no-repeat center/cover;
}
@media (min-resolution: 192dpi) {
  .p-acpln__head-kv {
    background: url(/assets/images/accommodation-plan/hero@2x.jpg) no-repeat center/cover;
  }
}
.p-acpln__cnt {
  padding: 0 5%;
}
.p-acpln__notes {
  max-width: 1080px;
  margin: 0 auto;
  padding-bottom: 20px;
  text-align: right;
}
@media only screen and (max-width:540px) {
  .p-acpln__notes {
    font-size: 12px;
  }
}
.p-acpln__list {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  list-style: none;
  border-top: 1px solid #E4E9EC;
}
.p-acpln__list-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 30px 0;
  border-bottom: 1px solid #E4E9EC;
}
@media only screen and (max-width:540px) {
  .p-acpln__list-item {
    padding: 20px 0;
  }
}
.p-acpln__list-item-thumb {
  width: 22%;
  transition: 0.2s;
}
.p-acpln__list-item-thumb img {
  display: block;
  width: 100%;
  height: auto;
}
.p-acpln__list-item-thumb:hover {
  opacity: 0.8;
  transition: 0.2s;
}
.p-acpln__list-item-right {
  width: 74%;
}
.p-acpln__list-item-meta {
  display: flex;
  margin-bottom: 15px;
}
@media only screen and (max-width:1024px) {
  .p-acpln__list-item-meta {
    font-size: 13px;
  }
}
@media only screen and (max-width:912px) {
  .p-acpln__list-item-meta {
    margin-bottom: 10px;
  }
}
@media only screen and (max-width:540px) {
  .p-acpln__list-item-meta {
    font-size: 11px;
  }
}
.p-acpln__list-item-cat a {
  color: #B8384F;
}
.p-acpln__list-item-ttl {
  margin-bottom: 20px;
  font-size: 22px;
  line-height: 1.6;
}
@media only screen and (max-width:912px) {
  .p-acpln__list-item-ttl {
    margin-bottom: 10px;
    font-size: 18px;
  }
}
@media only screen and (max-width:540px) {
  .p-acpln__list-item-ttl {
    margin: 0;
    font-size: 13px;
  }
}
.p-acpln__list-item-ttl a {
  transition: 0.2s;
}
.p-acpln__list-item-ttl a:hover {
  opacity: 0.6;
  transition: 0.2s;
}
.p-acpln__list-item-lead {
  font-size: 14px;
  line-height: 1.7;
}
@media only screen and (max-width:912px) {
  .p-acpln__list-item-lead {
    font-size: 12px;
  }
}
@media only screen and (max-width:540px) {
  .p-acpln__list-item-lead {
    display: none;
  }
}

.p-rest {
  padding: 70px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-rest {
    padding: 60px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-rest {
    padding: 30px 0 60px;
  }
}
.p-rest__head {
  padding-bottom: 80px;
}
@media only screen and (max-width:540px) {
  .p-rest__head {
    padding-bottom: 60px;
  }
}
.p-rest__head-kv--sakura {
  background: url(/assets/images/sakura/hero.jpg) no-repeat center/cover;
}
@media (min-resolution: 192dpi) {
  .p-rest__head-kv--sakura {
    background: url(/assets/images/sakura/hero@2x.jpg) no-repeat center/cover;
  }
}
.p-rest__head-kv--azalea {
  background: url(/assets/images/azalea/hero.jpg) no-repeat center/cover;
}
@media (min-resolution: 192dpi) {
  .p-rest__head-kv--azalea {
    background: url(/assets/images/azalea/hero@2x.jpg) no-repeat center/cover;
  }
}
.p-rest__head-kv--tohtenkoh {
  background: url(/assets/images/tohtenkoh/hero.jpg) no-repeat center/cover;
}
@media (min-resolution: 192dpi) {
  .p-rest__head-kv--tohtenkoh {
    background: url(/assets/images/tohtenkoh/hero@2x.jpg) no-repeat center/cover;
  }
}
.p-rest__detail {
  padding: 60px 5% 80px;
}
@media only screen and (max-width:540px) {
  .p-rest__detail {
    padding: 30px 5% 60px;
  }
}
.p-rest__detail-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-rest__detail-reserve {
  display: flex;
  margin-bottom: 50px;
}
@media only screen and (max-width:912px) {
  .p-rest__detail-reserve {
    display: block;
  }
}
.p-rest__detail-reserve-ttl {
  flex: 1;
  padding: 40px 30px;
  background: #0A0A0A;
  color: #FFF;
}
@media only screen and (max-width:912px) {
  .p-rest__detail-reserve-ttl {
    padding: 16px 20px;
  }
}
@media only screen and (max-width:540px) {
  .p-rest__detail-reserve-ttl {
    padding: 14px 18px;
  }
}
.p-rest__detail-reserve-ttl p {
  font-size: 17px;
}
@media only screen and (max-width:912px) {
  .p-rest__detail-reserve-ttl p {
    font-size: 15px;
  }
}
@media only screen and (max-width:540px) {
  .p-rest__detail-reserve-ttl p {
    font-size: 12px;
  }
}
.p-rest__detail-reserve-ttl p small {
  display: inline-block;
  padding-left: 20px;
  color: #989898;
  font-size: 12px;
}
.p-rest__detail-reserve-cnt {
  display: flex;
  align-items: center;
  flex: 2.5;
  padding: 0 40px;
  border: 1px solid #E4E9EC;
}
@media only screen and (max-width:912px) {
  .p-rest__detail-reserve-cnt {
    padding: 20px;
  }
}
@media only screen and (max-width:540px) {
  .p-rest__detail-reserve-cnt {
    display: block;
    text-align: center;
  }
}
.p-rest__detail-reserve-cnt-btn {
  flex: 1;
  display: inline-block;
  max-width: 240px;
}
@media only screen and (max-width:540px) {
  .p-rest__detail-reserve-cnt-btn {
    width: 100%;
    max-width: auto;
    margin-bottom: 20px;
  }
}
.p-rest__detail-reserve-cnt-btn a {
  position: relative;
  display: block;
  width: 100%;
  padding: 20px 10px;
  text-align: center;
  font-size: 15px;
  letter-spacing: 0.02em;
  border-radius: 4px;
  color: #FFF;
  background: #B8384F;
}
@media only screen and (max-width:912px) {
  .p-rest__detail-reserve-cnt-btn a {
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-rest__detail-reserve-cnt-btn a {
    padding: 16px 10px;
  }
}
.p-rest__detail-reserve-cnt-btn a span {
  position: relative;
}
.p-rest__detail-reserve-cnt-btn a span::after {
  content: "";
  display: block;
  position: absolute;
  top: -5px;
  right: -15px;
  z-index: 10;
  width: 12px;
  height: 12px;
  background: url(/assets/images/common/ico_newtab02.png) no-repeat right/12px;
}
.p-rest__detail-reserve-cnt-tel {
  display: flex;
  align-items: center;
  flex: 1;
}
@media only screen and (max-width:540px) {
  .p-rest__detail-reserve-cnt-tel {
    display: inline-block;
  }
}
.p-rest__detail-reserve-cnt-tel span {
  display: inline-block;
  padding: 0 4%;
  white-space: nowrap;
}
@media only screen and (max-width:912px) {
  .p-rest__detail-reserve-cnt-tel span {
    font-size: 12px;
  }
}
@media only screen and (max-width:540px) {
  .p-rest__detail-reserve-cnt-tel span {
    margin-bottom: 10px;
  }
}
.p-rest__detail-reserve-cnt-tel p {
  display: inline-block;
  padding-left: 25px;
  font-size: 21px;
  background: url(/assets/images/common/ico_tel.png) no-repeat left/16px;
}
@media only screen and (max-width:912px) {
  .p-rest__detail-reserve-cnt-tel p {
    font-size: 18px;
  }
}
.p-rest__detail .lead1 {
  margin-bottom: 60px;
}
@media only screen and (max-width:540px) {
  .p-rest__detail .lead1 {
    margin-bottom: 40px;
  }
}
.p-rest__detail .lead1 a {
  color: #B8384F;
  text-decoration: underline;
}
.p-rest__detail-pic {
  display: flex;
  justify-content: space-between;
  margin-bottom: 40px;
}
@media only screen and (max-width:540px) {
  .p-rest__detail-pic {
    margin-bottom: 20px;
  }
}
.p-rest__detail-pic-pic1, .p-rest__detail-pic-pic2 {
  width: 48.5%;
}
.p-rest__detail-pic img {
  width: 100%;
  height: auto;
}
.p-rest__detail-list {
  display: flex;
  flex-wrap: wrap;
}
@media only screen and (max-width:540px) {
  .p-rest__detail-list {
    font-size: 13px;
  }
}
.p-rest__detail-list dt {
  width: 25%;
  padding: 30px 0;
  border-bottom: 1px solid #B8384F;
  line-height: 1.9;
}
@media only screen and (max-width:540px) {
  .p-rest__detail-list dt {
    line-height: 1.7;
    padding: 25px 5px 25px 0;
  }
}
.p-rest__detail-list dd {
  width: 75%;
  padding: 30px 0;
  border-bottom: 1px solid #E4E9EC;
  line-height: 1.9;
}
@media only screen and (max-width:540px) {
  .p-rest__detail-list dd {
    padding: 25px 0;
  }
}
.p-rest__detail-list dd a {
  color: #B8384F;
  text-decoration: underline;
}
.p-rest__detail-list dd .list-notes {
  margin-top: 5px;
}
.p-rest .feed1 {
  margin-bottom: 80px;
}
@media only screen and (max-width:540px) {
  .p-rest .feed1 {
    margin-bottom: 60px;
  }
}
.p-rest__private {
  margin-bottom: 80px;
  padding: 0 5%;
}
@media only screen and (max-width:540px) {
  .p-rest__private {
    margin-bottom: 60px;
  }
}
.p-rest__private-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-rest__private-flex {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width:540px) {
  .p-rest__private-flex {
    display: block;
  }
}
.p-rest__private-pic {
  width: 47.5%;
}
@media only screen and (max-width:912px) {
  .p-rest__private-pic {
    width: 30%;
  }
}
@media only screen and (max-width:540px) {
  .p-rest__private-pic {
    width: 60%;
    margin: 0 auto 40px;
  }
}
.p-rest__private-pic img {
  width: 100%;
  height: auto;
}
.p-rest__private-right {
  width: 47.5%;
}
@media only screen and (max-width:912px) {
  .p-rest__private-right {
    width: 65%;
  }
}
@media only screen and (max-width:540px) {
  .p-rest__private-right {
    width: auto;
  }
}
.p-rest__private-lead {
  margin-bottom: 40px;
  font-size: 15px;
  line-height: 1.9;
}
@media only screen and (max-width:912px) {
  .p-rest__private-lead {
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-rest__private-lead {
    font-size: 13px;
  }
}
.p-rest__private-type {
  margin-bottom: 30px;
  padding: 20px;
  background: #FAF9F3;
}
@media only screen and (max-width:540px) {
  .p-rest__private-type {
    padding: 15px;
  }
}
.p-rest__private-type-item {
  padding: 30px 20px 20px;
  background: #FFF;
}
@media only screen and (max-width:540px) {
  .p-rest__private-type-item {
    padding: 25px 25px 15px;
  }
}
.p-rest__private-type-item h3 {
  margin-bottom: 15px;
  font-size: 20px;
}
@media only screen and (max-width:540px) {
  .p-rest__private-type-item h3 {
    font-size: 16px;
  }
}
.p-rest__private-type-item dl {
  display: flex;
  flex-wrap: wrap;
  line-height: 1.5;
}
@media only screen and (max-width:540px) {
  .p-rest__private-type-item dl {
    font-size: 12px;
  }
}
.p-rest__private-type-item dl dt {
  width: 50%;
  padding: 10px 10px 10px 0;
  border-bottom: 1px solid #E4E9EC;
}
.p-rest__private-type-item dl dd {
  width: 50%;
  padding: 10px 0;
  border-bottom: 1px solid #E4E9EC;
}
.p-rest__private-type-item:first-child {
  margin-bottom: 20px;
}
.p-rest__menu {
  padding: 0 5%;
}
.p-rest__menu-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-rest__menu-tab {
  display: flex;
  gap: 2.5%;
  margin-bottom: 60px;
  list-style: none;
}
@media only screen and (max-width:540px) {
  .p-rest__menu-tab {
    flex-wrap: wrap;
    gap: 5%;
    margin-bottom: 40px;
  }
}
.p-rest__menu-tab li {
  position: relative;
  width: 23.125%;
  padding: 21px 20px 20px 20px;
  border: 1px solid #E4E9EC;
  font-size: 16px;
  cursor: pointer;
}
@media only screen and (max-width:540px) {
  .p-rest__menu-tab li {
    width: 47.5%;
    margin-bottom: 5%;
    padding: 17px 15px 15px 15px;
    font-size: 13px;
  }
}
.p-rest__menu-tab li::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  background: #B8384F;
  opacity: 0;
  transition: 0.3s ease-in-out;
}
.p-rest__menu-tab li.is-active::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background: #B8384F;
  opacity: 1;
  transition: 0.3s ease-in-out;
}
.p-rest__menu-cnt {
  overflow: hidden;
  transition: height 0.5s ease-in-out;
}
.p-rest__menu-cnt-cat {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  transition: 0.5s;
}
.p-rest__menu-cnt-cat.is-show {
  display: block;
  position: relative;
  opacity: 1;
}
.p-rest__menu-cnt-item {
  padding-bottom: 60px;
}
@media only screen and (max-width:540px) {
  .p-rest__menu-cnt-item {
    padding-bottom: 10px;
  }
}
.p-rest__menu-cnt-head {
  display: flex;
  margin-bottom: 50px;
}
@media only screen and (max-width:540px) {
  .p-rest__menu-cnt-head {
    display: block;
    margin-bottom: 30px;
  }
}
.p-rest__menu-cnt-lead {
  display: flex;
  align-items: center;
  width: 50%;
  padding: 40px;
  background: url(/assets/images/common/ptn1.png) repeat left/143px;
}
@media only screen and (max-width:540px) {
  .p-rest__menu-cnt-lead {
    width: auto;
    padding: 25px 25px 35px 25px;
  }
}
.p-rest__menu-cnt-lead h3 {
  font-size: 28px;
  line-height: 1.6;
}
@media only screen and (max-width:1024px) {
  .p-rest__menu-cnt-lead h3 {
    font-size: 26px;
  }
}
@media only screen and (max-width:912px) {
  .p-rest__menu-cnt-lead h3 {
    font-size: 22px;
  }
}
@media only screen and (max-width:540px) {
  .p-rest__menu-cnt-lead h3 {
    font-size: 18px;
  }
}
.p-rest__menu-cnt-lead p {
  margin-top: 20px;
  line-height: 1.8;
}
@media only screen and (max-width:540px) {
  .p-rest__menu-cnt-lead p {
    margin-top: 15px;
    font-size: 13px;
  }
}
.p-rest__menu-cnt-lead .pdf {
  margin-top: 30px;
}
@media only screen and (max-width:540px) {
  .p-rest__menu-cnt-lead .pdf {
    margin-top: 20px;
    font-size: 13px;
  }
}
.p-rest__menu-cnt-lead .pdf a {
  text-decoration: underline;
}
.p-rest__menu-cnt-pic {
  width: 50%;
}
@media only screen and (max-width:540px) {
  .p-rest__menu-cnt-pic {
    width: auto;
  }
}
.p-rest__menu-cnt-pic img {
  width: 100%;
  height: auto;
}
.p-rest__menu-cnt-detail {
  display: flex;
  justify-content: space-between;
  line-height: 1.7;
}
@media only screen and (max-width:540px) {
  .p-rest__menu-cnt-detail {
    display: block;
  }
}
.p-rest__menu-cnt-detail dl {
  width: 47.5%;
}
@media only screen and (max-width:540px) {
  .p-rest__menu-cnt-detail dl {
    width: auto;
  }
}
.p-rest__menu-cnt-detail dl dt {
  margin-bottom: 20px;
}
.p-rest__menu-cnt-detail dl dd {
  margin-bottom: 40px;
}
@media only screen and (max-width:540px) {
  .p-rest__menu-cnt-detail dl dd {
    margin-bottom: 30px;
    font-size: 12px;
  }
}
.p-rest__menu-cnt-detail dl dd strong {
  display: block;
  margin-bottom: 5px;
  font-size: 15px;
  font-weight: 600;
}
.p-rest__menu-cnt-detail dl dd p {
  margin-bottom: 20px;
}
.p-rest__menu-cnt .no-post {
  padding-bottom: 60px;
  font-size: 15px;
}
@media only screen and (max-width:540px) {
  .p-rest__menu-cnt .no-post {
    font-size: 13px;
  }
}
.p-rest__menu--azalea, .p-rest__menu--tohtenkoh {
  margin-bottom: 50px;
}
@media only screen and (max-width:540px) {
  .p-rest__menu--azalea, .p-rest__menu--tohtenkoh {
    margin-bottom: 20px;
  }
}
.p-rest__meet {
  margin-bottom: 60px;
  padding: 0 5%;
}
.p-rest__meet-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-rest__meet .lead1 {
  margin-bottom: 40px;
}
@media only screen and (max-width:912px) {
  .p-rest__meet .lead1 {
    font-size: 15px;
  }
}
@media only screen and (max-width:540px) {
  .p-rest__meet .lead1 {
    font-size: 13px;
  }
}
.p-rest__meet-plan {
  padding: 20px;
  background: #FAF9F3;
}
@media only screen and (max-width:540px) {
  .p-rest__meet-plan {
    padding: 15px;
  }
}
.p-rest__meet-item {
  margin-bottom: 20px;
  background: #FFF;
}
@media only screen and (max-width:540px) {
  .p-rest__meet-item {
    margin-bottom: 15px;
  }
}
.p-rest__meet-head {
  display: flex;
  align-items: center;
  position: relative;
  padding: 30px;
}
@media only screen and (max-width:540px) {
  .p-rest__meet-head {
    padding: 15px;
  }
}
.p-rest__meet-head h3 {
  padding-right: 40px;
  font-size: 20px;
}
@media only screen and (max-width:912px) {
  .p-rest__meet-head h3 {
    padding-right: 20px;
    font-size: 17px;
  }
}
@media only screen and (max-width:540px) {
  .p-rest__meet-head h3 {
    font-size: 16px;
  }
}
.p-rest__meet-head h3 span {
  font-size: 15px;
}
@media only screen and (max-width:912px) {
  .p-rest__meet-head h3 span {
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-rest__meet-head h3 span {
    font-size: 12px;
  }
}
@media only screen and (max-width:912px) {
  .p-rest__meet-head p {
    font-size: 12px;
  }
}
@media only screen and (max-width:540px) {
  .p-rest__meet-head p {
    display: none;
  }
}
.p-rest__meet-cnt-in {
  padding: 0 30px 30px;
}
@media only screen and (max-width:540px) {
  .p-rest__meet-cnt-in {
    padding: 0 15px 15px;
  }
}
.p-rest__meet-lead {
  margin-bottom: 40px;
  font-size: 15px;
  line-height: 1.8;
}
@media only screen and (max-width:912px) {
  .p-rest__meet-lead {
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-rest__meet-lead {
    margin-bottom: 30px;
    font-size: 13px;
  }
}
.p-rest__meet-tbl {
  line-height: 1.7;
  border-top: 1px solid #E4E9EC;
}
@media only screen and (max-width:912px) {
  .p-rest__meet-tbl {
    font-size: 13px;
  }
}
@media only screen and (max-width:540px) {
  .p-rest__meet-tbl {
    font-size: 12px;
  }
}
.p-rest__meet-tbl-row {
  display: flex;
  flex-direction: row;
  border-bottom: 1px solid #E4E9EC;
}
.p-rest__meet-tbl-cell1 {
  flex: 1;
  width: 35%;
  background: #F3F5FA;
  padding: 20px;
}
@media only screen and (max-width:912px) {
  .p-rest__meet-tbl-cell1 {
    padding: 16px;
  }
}
@media only screen and (max-width:540px) {
  .p-rest__meet-tbl-cell1 {
    flex: 1.2;
    padding: 15px;
  }
}
.p-rest__meet-tbl-cell1 strong {
  font-weight: 400;
}
.p-rest__meet-tbl-cell2 {
  flex: 4;
  padding: 20px;
}
@media only screen and (max-width:912px) {
  .p-rest__meet-tbl-cell2 {
    padding: 16px;
  }
}
@media only screen and (max-width:540px) {
  .p-rest__meet-tbl-cell2 {
    padding: 15px;
  }
}
.p-rest__meet-tbl-cell2 ul {
  list-style: none;
  margin-left: 1.5em;
}
@media only screen and (max-width:540px) {
  .p-rest__meet-tbl-cell2 ul {
    margin-left: 1.2em;
  }
}
.p-rest__meet-tbl-cell2 ul li {
  position: relative;
}
.p-rest__meet-tbl-cell2 ul li::before {
  content: "・";
  position: absolute;
  left: -1.5em;
}
@media only screen and (max-width:540px) {
  .p-rest__meet-tbl-cell2 ul li::before {
    left: -1.2em;
  }
}
.p-rest__meet-bnf {
  text-align: right;
  line-height: 1.4;
}
@media only screen and (max-width:912px) {
  .p-rest__meet-bnf {
    font-size: 13px;
  }
}
@media only screen and (max-width:540px) {
  .p-rest__meet-bnf {
    text-align: left;
    font-size: 12px;
  }
}
.p-rest-takeout {
  margin-bottom: 60px;
  padding: 0 5%;
}
@media only screen and (max-width:540px) {
  .p-rest-takeout {
    margin-bottom: 40px;
  }
}
.p-rest-takeout-in {
  display: flex;
  align-items: center;
  position: relative;
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  padding: 30px 60px 30px 40px;
  border: 1px solid #E4E9EC;
}
@media only screen and (max-width:540px) {
  .p-rest-takeout-in {
    display: block;
    padding: 8% 8% 60px 8%;
    text-align: center;
  }
}
.p-rest-takeout-in::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  width: 26px;
  height: 5px;
  background: url(/assets/images/common/arrow03.png) no-repeat right/26px;
  transition: 0.2s;
  transform: translateY(-50%);
}
@media only screen and (max-width:540px) {
  .p-rest-takeout-in::after {
    top: auto;
    right: 50%;
    bottom: 30px;
    transform: translateY(0);
    transform: translateX(50%);
  }
}
@media (hover: hover) and (pointer: fine) {
  .p-rest-takeout-in:hover:hover::after {
    right: 15px;
    transition: 0.2s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .p-rest-takeout-in:hover:hover::after {
    right: 15px;
    transition: 0.2s;
  }
}
.p-rest-takeout-img {
  width: 25%;
}
@media only screen and (max-width:540px) {
  .p-rest-takeout-img {
    width: 60%;
    margin: 0 auto 20px;
  }
}
.p-rest-takeout-img img {
  width: 100%;
  height: auto;
}
.p-rest-takeout-lead {
  width: 75%;
  padding-left: 5%;
}
@media only screen and (max-width:540px) {
  .p-rest-takeout-lead {
    width: auto;
  }
}
.p-rest-takeout-lead h4 {
  margin-bottom: 15px;
  font-size: 20px;
  line-height: 1.4;
}
@media only screen and (max-width:912px) {
  .p-rest-takeout-lead h4 {
    margin-bottom: 15px;
  }
}
@media only screen and (max-width:540px) {
  .p-rest-takeout-lead h4 {
    font-size: 16px;
  }
}
.p-rest-takeout-lead p {
  line-height: 1.6;
}
@media only screen and (max-width:912px) {
  .p-rest-takeout-lead p {
    font-size: 13px;
  }
  .p-rest-takeout-lead p br {
    display: none;
  }
}
@media only screen and (max-width:540px) {
  .p-rest-takeout-lead p {
    font-size: 12px;
  }
}
.p-rest__link {
  padding: 0 5%;
}
.p-rest__link-in {
  display: flex;
  align-items: center;
  position: relative;
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  padding: 30px 60px 30px 40px;
  border: 1px solid #E4E9EC;
}
@media only screen and (max-width:540px) {
  .p-rest__link-in {
    display: block;
    padding: 8% 8% 60px 8%;
    text-align: center;
  }
}
.p-rest__link-in::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  width: 26px;
  height: 5px;
  background: url(/assets/images/common/arrow03.png) no-repeat right/26px;
  transition: 0.2s;
  transform: translateY(-50%);
}
@media only screen and (max-width:540px) {
  .p-rest__link-in::after {
    top: auto;
    right: 50%;
    bottom: 30px;
    transform: translateY(0);
    transform: translateX(50%);
  }
}
@media (hover: hover) and (pointer: fine) {
  .p-rest__link-in:hover:hover::after {
    right: 15px;
    transition: 0.2s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .p-rest__link-in:hover:hover::after {
    right: 15px;
    transition: 0.2s;
  }
}
.p-rest__link-img {
  width: 120px;
}
@media only screen and (max-width:540px) {
  .p-rest__link-img {
    width: 40%;
    margin: 0 auto 20px;
  }
}
.p-rest__link-img img {
  width: 100%;
  height: auto;
}
.p-rest__link-lead {
  width: calc(100% - 120px);
  padding-left: 5%;
}
@media only screen and (max-width:540px) {
  .p-rest__link-lead {
    width: auto;
  }
}
.p-rest__link-lead h4 {
  margin-bottom: 15px;
  font-size: 20px;
  line-height: 1.4;
}
@media only screen and (max-width:912px) {
  .p-rest__link-lead h4 {
    margin-bottom: 15px;
  }
}
@media only screen and (max-width:540px) {
  .p-rest__link-lead h4 {
    font-size: 16px;
  }
}
.p-rest__link-lead p {
  line-height: 1.6;
}
@media only screen and (max-width:912px) {
  .p-rest__link-lead p {
    font-size: 13px;
  }
  .p-rest__link-lead p br {
    display: none;
  }
}
@media only screen and (max-width:540px) {
  .p-rest__link-lead p {
    font-size: 12px;
  }
}
.p-rest__rsv {
  padding: 0 5%;
  text-align: center;
}
.p-rest__rsv-in {
  width: 520px;
  margin: 0 auto;
}
@media only screen and (max-width:912px) {
  .p-rest__rsv-in {
    width: 60%;
  }
}
@media only screen and (max-width:540px) {
  .p-rest__rsv-in {
    width: 100%;
  }
}
.p-rest__rsv-in a {
  display: block;
  position: relative;
  padding: 35px;
  color: #FFF;
  background: #0A0A0A;
  font-size: 20px;
}
@media only screen and (max-width:540px) {
  .p-rest__rsv-in a {
    padding: 20px;
    font-size: 14px;
  }
}
.p-rest__rsv-in a::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  width: 26px;
  height: 5px;
  background: url(/assets/images/common/arrow05.png) no-repeat right/26px;
  transition: 0.2s;
  transform: translateY(-50%);
}
@media (hover: hover) and (pointer: fine) {
  .p-rest__rsv-in a:hover:hover::after {
    right: 15px;
    transition: 0.2s;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .p-rest__rsv-in a:hover:hover::after {
    right: 15px;
    transition: 0.2s;
  }
}

.p-facilities {
  padding: 70px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-facilities {
    padding: 60px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-facilities {
    padding: 30px 0 40px;
  }
}
.p-facilities__head {
  padding-bottom: 80px;
}
@media only screen and (max-width:540px) {
  .p-facilities__head {
    padding-bottom: 60px;
  }
}
.p-facilities__head-kv {
  background: url(/assets/images/facilities/hero.jpg) no-repeat center/cover;
}
@media (min-resolution: 192dpi) {
  .p-facilities__head-kv {
    background: url(/assets/images/facilities/hero@2x.jpg) no-repeat center/cover;
  }
}
.p-facilities__cnt {
  padding: 80px 5% 0;
}
@media only screen and (max-width:912px) {
  .p-facilities__cnt {
    padding: 60px 5% 0;
  }
}
@media only screen and (max-width:540px) {
  .p-facilities__cnt {
    padding: 40px 5% 0;
  }
}
.p-facilities__cnt-flex {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
@media only screen and (max-width:540px) {
  .p-facilities__cnt-flex {
    display: block;
  }
}
.p-facilities__cnt-floor {
  width: 47.5%;
}
@media only screen and (max-width:540px) {
  .p-facilities__cnt-floor {
    width: auto;
  }
}
.p-facilities__cnt-right {
  width: 47.5%;
}
@media only screen and (max-width:540px) {
  .p-facilities__cnt-right {
    width: auto;
    margin-bottom: 40px;
  }
}
.p-facilities__cnt-right p {
  margin-bottom: 40px;
  font-size: 16px;
  line-height: 1.9;
}
@media only screen and (max-width:912px) {
  .p-facilities__cnt-right p {
    font-size: 15px;
  }
}
@media only screen and (max-width:540px) {
  .p-facilities__cnt-right p {
    font-size: 14px;
  }
}
.p-facilities__cnt-right img {
  width: 100%;
  height: auto;
}

.p-access {
  padding: 70px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-access {
    padding: 60px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-access {
    padding: 30px 0 60px;
  }
}
.p-access__head {
  padding-bottom: 80px;
}
@media only screen and (max-width:540px) {
  .p-access__head {
    padding-bottom: 60px;
  }
  body.en-US .p-access__head {
    padding-bottom: 40px;
  }
}
.p-access__head-kv {
  background: url(/assets/images/access/hero.jpg) no-repeat center/cover;
}
@media (min-resolution: 192dpi) {
  .p-access__head-kv {
    background: url(/assets/images/access/hero@2x.jpg) no-repeat center/cover;
  }
}
.p-access__cnt {
  padding: 60px 5% 0;
}
@media only screen and (max-width:912px) {
  .p-access__cnt {
    padding: 40px 5% 0;
  }
}
@media only screen and (max-width:540px) {
  .p-access__cnt {
    padding: 30px 5% 0;
  }
}
.p-access__cnt-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-access__map-wrap {
  display: flex;
  align-items: center;
  margin-bottom: 60px;
}
@media only screen and (max-width:540px) {
  .p-access__map-wrap {
    display: block;
    margin-bottom: 40px;
  }
}
.p-access__map {
  width: 50%;
}
@media only screen and (max-width:540px) {
  .p-access__map {
    width: auto;
    margin-bottom: 20px;
  }
}
.p-access__map img {
  width: 100%;
  height: auto;
}
.p-access__address {
  padding-left: 50px;
  font-size: 16px;
  line-height: 1.8;
}
@media only screen and (max-width:912px) {
  .p-access__address {
    margin-bottom: 45px;
    font-size: 15px;
  }
}
@media only screen and (max-width:540px) {
  .p-access__address {
    margin: 0;
    padding: 0;
    font-size: 13px;
  }
}
.p-access__gmap {
  position: relative;
  overflow: hidden;
  padding-top: 56.25%;
}
.p-access__gmap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.p-access__train {
  margin-top: 60px;
}
@media only screen and (max-width:540px) {
  .p-access__train {
    margin-top: 45px;
  }
}
.p-access__train .ttl4 {
  margin-bottom: 40px;
}
@media only screen and (max-width:912px) {
  .p-access__train .ttl4 {
    margin-bottom: 30px;
  }
}
.p-access__train-list {
  font-size: 15px;
}
@media only screen and (max-width:912px) {
  .p-access__train-list {
    font-size: 14px;
  }
}
.p-access__car {
  margin-top: 60px;
}
@media only screen and (max-width:540px) {
  .p-access__car {
    margin-top: 45px;
  }
}
.p-access__car .ttl4 {
  margin-bottom: 40px;
}
@media only screen and (max-width:912px) {
  .p-access__car .ttl4 {
    margin-bottom: 30px;
  }
}
.p-access__car-list {
  font-size: 15px;
}
@media only screen and (max-width:912px) {
  .p-access__car-list {
    font-size: 14px;
  }
}
.p-access__car section {
  margin-top: 40px;
}
@media only screen and (max-width:540px) {
  .p-access__car section {
    margin-top: 30px;
  }
}
.p-access__car section p {
  line-height: 1.6;
}
@media only screen and (max-width:540px) {
  .p-access__car section p {
    font-size: 12px;
  }
}
.p-access__airport {
  margin-top: 60px;
}
@media only screen and (max-width:540px) {
  .p-access__airport {
    margin-top: 45px;
  }
}
.p-access__airport .ttl4 {
  margin-bottom: 40px;
}
@media only screen and (max-width:912px) {
  .p-access__airport .ttl4 {
    margin-bottom: 30px;
  }
}
.p-access__airport section {
  margin-bottom: 30px;
}
.p-access__airport section p {
  margin-top: 20px;
  line-height: 1.6;
}
@media only screen and (max-width:540px) {
  .p-access__airport section p {
    font-size: 12px;
  }
}
.p-access__bus {
  margin-top: 60px;
}
@media only screen and (max-width:540px) {
  .p-access__bus {
    margin-top: 45px;
  }
}
.p-access__bus .ttl4 {
  margin-bottom: 40px;
}
@media only screen and (max-width:912px) {
  .p-access__bus .ttl4 {
    margin-bottom: 30px;
  }
}
.p-access__bus-flex {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width:540px) {
  .p-access__bus-flex {
    display: block;
  }
}
.p-access__bus-pic {
  width: 25%;
}
@media only screen and (max-width:540px) {
  .p-access__bus-pic {
    width: auto;
    margin-bottom: 30px;
  }
}
.p-access__bus-pic img {
  width: 100%;
  height: auto;
}
.p-access__bus-cnt {
  width: 75%;
  padding-left: 40px;
}
@media only screen and (max-width:540px) {
  .p-access__bus-cnt {
    width: auto;
    padding: 0;
  }
}
.p-access__bus-cnt .ttl3 {
  margin-bottom: 30px;
}
.p-access__bus-cnt p {
  margin-bottom: 15px;
  font-size: 16px;
  line-height: 1.8;
}
@media only screen and (max-width:540px) {
  .p-access__bus-cnt p {
    font-size: 13px;
  }
}
.p-access__bus-cnt ul {
  margin-bottom: 25px;
}
.p-access__station, .p-access__narita, .p-access__haneda {
  margin-top: 60px;
}
@media only screen and (max-width:540px) {
  .p-access__station, .p-access__narita, .p-access__haneda {
    margin-top: 45px;
  }
}
.p-access__station .ttl4, .p-access__narita .ttl4, .p-access__haneda .ttl4 {
  margin-bottom: 40px;
}
@media only screen and (max-width:912px) {
  .p-access__station .ttl4, .p-access__narita .ttl4, .p-access__haneda .ttl4 {
    margin-bottom: 30px;
  }
}
.p-access__station-list, .p-access__narita-list, .p-access__haneda-list {
  font-size: 15px;
}
@media only screen and (max-width:912px) {
  .p-access__station-list, .p-access__narita-list, .p-access__haneda-list {
    font-size: 14px;
  }
}
.p-access__station p, .p-access__narita p, .p-access__haneda p {
  font-size: 16px;
  line-height: 1.7;
}
@media only screen and (max-width:912px) {
  .p-access__station p, .p-access__narita p, .p-access__haneda p {
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-access__station p, .p-access__narita p, .p-access__haneda p {
    font-size: 13px;
  }
}

.p-inquiry {
  padding: 30px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-inquiry {
    padding: 20px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-inquiry {
    padding: 10px 0 60px;
  }
}
.p-inquiry__faq {
  margin-bottom: 80px;
  padding: 0 5%;
}
@media only screen and (max-width:540px) {
  .p-inquiry__faq {
    margin-bottom: 60px;
  }
}
.p-inquiry__faq-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-inquiry__faq .lead1 {
  margin-bottom: 30px;
}
.p-inquiry__mailform {
  margin-bottom: 80px;
  padding: 0 5%;
}
@media only screen and (max-width:540px) {
  .p-inquiry__mailform {
    margin-bottom: 60px;
  }
}
.p-inquiry__mailform-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-inquiry__mailform .lead1 {
  margin-bottom: 60px;
}
@media only screen and (max-width:540px) {
  .p-inquiry__mailform .lead1 {
    margin-bottom: 40px;
  }
}
.p-inquiry__mailform .lead1 a {
  color: #B8384F;
  text-decoration: underline;
}
.p-inquiry__tel {
  padding: 0 5%;
}
.p-inquiry__tel-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-inquiry__tel .table1__item-cnt {
  display: grid;
  grid-template-columns: 50% 50%;
}
@media only screen and (max-width:540px) {
  .p-inquiry__tel .table1__item-cnt {
    display: block;
  }
}
.p-inquiry__tel .table1__item-cnt.parent {
  display: block;
}
.p-inquiry__tel .table1__item-cnt.parent .child {
  display: grid;
  grid-template-columns: 50% 50%;
  width: 100%;
  padding: 0;
}
@media only screen and (max-width:540px) {
  .p-inquiry__tel .table1__item-cnt.parent .child {
    display: block;
    margin-bottom: 15px;
  }
}

.p-faq {
  padding: 30px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-faq {
    padding: 20px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-faq {
    padding: 10px 0 60px;
  }
}
.p-faq .cnt-index .lead1 {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto 40px;
}
.p-faq__cat {
  margin-bottom: 80px;
  padding: 0 5%;
}
@media only screen and (max-width:540px) {
  .p-faq__cat {
    margin-bottom: 60px;
  }
}
.p-faq__cat-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-faq__cat:last-child {
  margin-bottom: 0;
}
.p-faq__accordion {
  padding: 20px 20px 1px 20px;
  background: #FAF9F3;
}
@media only screen and (max-width:540px) {
  .p-faq__accordion {
    padding: 12px 12px 1px 12px;
  }
}
.p-faq__accordion-item {
  margin-bottom: 20px;
  background: #FFF;
}
@media only screen and (max-width:540px) {
  .p-faq__accordion-item {
    margin-bottom: 12px;
  }
}
.p-faq__accordion-item-head {
  display: flex;
  align-items: center;
  padding: 30px 50px 30px 30px;
}
@media only screen and (max-width:912px) {
  .p-faq__accordion-item-head {
    padding: 24px 50px 24px 24px;
  }
}
@media only screen and (max-width:540px) {
  .p-faq__accordion-item-head {
    padding: 20px 40px 20px 20px;
  }
}
.p-faq__accordion-item-head h3 {
  position: relative;
  margin-left: 25px;
  font-size: 17px;
  line-height: 1.4;
}
@media only screen and (max-width:912px) {
  .p-faq__accordion-item-head h3 {
    font-size: 16px;
  }
}
@media only screen and (max-width:540px) {
  .p-faq__accordion-item-head h3 {
    margin-left: 20px;
    font-size: 13px;
  }
}
.p-faq__accordion-item-head h3::before {
  content: "Q";
  display: block;
  position: absolute;
  top: -2px;
  left: -1.5em;
  color: #B8384F;
}
.p-faq__accordion-item-cnt {
  font-size: 16px;
  line-height: 1.8;
}
@media only screen and (max-width:912px) {
  .p-faq__accordion-item-cnt {
    font-size: 15px;
  }
}
@media only screen and (max-width:540px) {
  .p-faq__accordion-item-cnt {
    font-size: 12px;
  }
}
.p-faq__accordion-item-cnt-in {
  padding: 0 30px 30px;
}
@media only screen and (max-width:912px) {
  .p-faq__accordion-item-cnt-in {
    padding: 0 24px 24px;
  }
}
@media only screen and (max-width:540px) {
  .p-faq__accordion-item-cnt-in {
    padding: 0 20px 20px;
  }
}
.p-faq__accordion-item-cnt-answer {
  position: relative;
  margin-left: 25px;
}
@media only screen and (max-width:540px) {
  .p-faq__accordion-item-cnt-answer {
    margin-left: 20px;
  }
}
.p-faq__accordion-item-cnt-answer a {
  color: #B8384F;
  text-decoration: underline;
}
.p-faq__accordion-item-cnt-answer::before {
  content: "A";
  display: block;
  position: absolute;
  top: -2px;
  left: -1.5em;
  color: #B8384F;
  font-size: 18px;
}
@media only screen and (max-width:912px) {
  .p-faq__accordion-item-cnt-answer::before {
    font-size: 16px;
  }
}
@media only screen and (max-width:540px) {
  .p-faq__accordion-item-cnt-answer::before {
    font-size: 13px;
  }
}

.p-link {
  padding: 30px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-link {
    padding: 20px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-link {
    padding: 10px 0 60px;
  }
}
.p-link__group {
  padding: 80px 5% 0;
}
@media only screen and (max-width:912px) {
  .p-link__group {
    padding: 60px 5% 0;
  }
}
@media only screen and (max-width:540px) {
  .p-link__group {
    padding: 40px 5% 0;
  }
}
.p-link__group-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-link__table {
  width: 100%;
  border-top: 1px solid #E4E9EC;
  font-size: 15px;
}
@media only screen and (max-width:912px) {
  .p-link__table {
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-link__table {
    font-size: 13px;
  }
}
.p-link__table-item {
  display: flex;
  flex-wrap: wrap;
  border-bottom: 1px solid #E4E9EC;
}
.p-link__table-item-ttl {
  width: 25%;
  background: #F3F5FA;
  line-height: 1.7;
}
@media only screen and (max-width:540px) {
  .p-link__table-item-ttl {
    width: 50%;
  }
}
.p-link__table-item-ttl a {
  display: block;
  padding: 25px;
  color: #B8384F;
  text-decoration: underline;
}
@media only screen and (max-width:912px) {
  .p-link__table-item-ttl a {
    padding: 20px;
  }
}
@media only screen and (max-width:540px) {
  .p-link__table-item-ttl a {
    padding: 15px;
  }
}
.p-link__table-item-cnt {
  width: 75%;
  padding: 25px;
  line-height: 1.9;
}
@media only screen and (max-width:912px) {
  .p-link__table-item-cnt {
    padding: 20px;
  }
}
@media only screen and (max-width:540px) {
  .p-link__table-item-cnt {
    width: 50%;
    padding: 15px;
    font-size: 12px;
    line-height: 1.7;
  }
}

.p-company {
  padding: 30px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-company {
    padding: 20px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-company {
    padding: 10px 0 60px;
  }
}
.p-company__cnt {
  padding: 80px 5% 0;
}
@media only screen and (max-width:912px) {
  .p-company__cnt {
    padding: 60px 5% 0;
  }
}
@media only screen and (max-width:540px) {
  .p-company__cnt {
    padding: 40px 5% 0;
  }
}
.p-company__cnt-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-company__flex {
  display: flex;
  justify-content: space-between;
  margin-bottom: 80px;
}
@media only screen and (max-width:540px) {
  .p-company__flex {
    display: block;
    margin-bottom: 60px;
  }
}
.p-company__cnt-concept {
  width: 47.5%;
}
@media only screen and (max-width:540px) {
  .p-company__cnt-concept {
    width: auto;
    margin-bottom: 30px;
  }
}
.p-company__cnt-concept p {
  margin-bottom: 20px;
  font-size: 16px;
  line-height: 1.9;
}
@media only screen and (max-width:912px) {
  .p-company__cnt-concept p {
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-company__cnt-concept p {
    font-size: 13px;
  }
}
.p-company__cnt-concept p:last-child {
  margin: 0;
}
.p-company__cnt-pic {
  width: 47.5%;
}
@media only screen and (max-width:540px) {
  .p-company__cnt-pic {
    width: auto;
  }
}
.p-company__cnt-pic img {
  width: 100%;
  height: auto;
}

.p-recruit {
  padding: 30px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-recruit {
    padding: 20px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-recruit {
    padding: 10px 0 60px;
  }
}
.p-recruit__cnt {
  padding: 80px 5% 0;
}
@media only screen and (max-width:912px) {
  .p-recruit__cnt {
    padding: 60px 5% 0;
  }
}
@media only screen and (max-width:540px) {
  .p-recruit__cnt {
    padding: 40px 5% 0;
  }
}
.p-recruit__cnt-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-recruit__cnt-no-recruitment {
  font-size: 16px;
  line-height: 1.7;
}
@media only screen and (max-width:912px) {
  .p-recruit__cnt-no-recruitment {
    font-size: 15px;
  }
}
@media only screen and (max-width:540px) {
  .p-recruit__cnt-no-recruitment {
    font-size: 14px;
  }
}

.p-pp {
  padding: 30px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-pp {
    padding: 20px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-pp {
    padding: 10px 0 60px;
  }
}
.p-pp__cnt {
  padding: 80px 5% 0;
}
@media only screen and (max-width:912px) {
  .p-pp__cnt {
    padding: 60px 5% 0;
  }
}
@media only screen and (max-width:540px) {
  .p-pp__cnt {
    padding: 40px 5% 0;
  }
}
.p-pp__cnt-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-pp__cnt-sec {
  padding-top: 60px;
}
@media only screen and (max-width:540px) {
  .p-pp__cnt-sec {
    padding-top: 40px;
  }
}
.p-pp__cnt-sec-ttl {
  margin-bottom: 30px;
}
.p-pp__cnt-sec-txt {
  font-size: 15px;
  line-height: 1.8;
}
@media only screen and (max-width:912px) {
  .p-pp__cnt-sec-txt {
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-pp__cnt-sec-txt {
    font-size: 13px;
  }
}
.p-pp__cnt-sec-list {
  padding-top: 20px;
  list-style: none;
}
.p-pp__cnt-sec-list li {
  font-size: 15px;
  line-height: 1.8;
}
@media only screen and (max-width:912px) {
  .p-pp__cnt-sec-list li {
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-pp__cnt-sec-list li {
    font-size: 13px;
  }
}
.p-pp__cnt-sec-sec {
  padding-top: 40px;
}
.p-pp__cnt-sec-sec p {
  font-size: 14px;
  line-height: 1.9;
}
@media only screen and (max-width:912px) {
  .p-pp__cnt-sec-sec p {
    font-size: 13px;
  }
}
@media only screen and (max-width:540px) {
  .p-pp__cnt-sec-sec p {
    font-size: 12px;
  }
}

.p-agent {
  padding: 30px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-agent {
    padding: 20px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-agent {
    padding: 10px 0 60px;
  }
}
.p-agent__cnt {
  padding: 80px 5% 0;
}
@media only screen and (max-width:912px) {
  .p-agent__cnt {
    padding: 60px 5% 0;
  }
}
@media only screen and (max-width:540px) {
  .p-agent__cnt {
    padding: 40px 5% 0;
  }
}
.p-agent__cnt-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-agent__flex {
  display: flex;
  justify-content: space-between;
  margin-bottom: 80px;
}
@media only screen and (max-width:540px) {
  .p-agent__flex {
    display: block;
    margin-bottom: 60px;
  }
}
.p-agent__cnt-concept {
  width: 47.5%;
}
@media only screen and (max-width:540px) {
  .p-agent__cnt-concept {
    width: auto;
    margin-bottom: 30px;
  }
}
.p-agent__cnt-concept p {
  margin-bottom: 20px;
  font-size: 16px;
  line-height: 1.9;
}
@media only screen and (max-width:912px) {
  .p-agent__cnt-concept p {
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-agent__cnt-concept p {
    font-size: 13px;
  }
}
.p-agent__cnt-concept p:last-child {
  margin: 0;
}
.p-agent__cnt-pic {
  width: 47.5%;
}
@media only screen and (max-width:540px) {
  .p-agent__cnt-pic {
    width: auto;
  }
}
.p-agent__cnt-pic img {
  width: 100%;
  height: auto;
}
.p-agent__facility {
  margin-bottom: 80px;
  padding: 0 5%;
}
@media only screen and (max-width:540px) {
  .p-agent__facility {
    margin-bottom: 60px;
  }
}
.p-agent__facility-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-agent__room {
  margin-bottom: 80px;
  padding: 0 5%;
}
@media only screen and (max-width:540px) {
  .p-agent__room {
    margin-bottom: 60px;
  }
}
.p-agent__room-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-agent__food {
  margin-bottom: 80px;
  padding: 0 5%;
}
@media only screen and (max-width:540px) {
  .p-agent__food {
    margin-bottom: 60px;
  }
}
.p-agent__food-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-agent__food-flex {
  display: flex;
  gap: 20px;
  margin-bottom: 60px;
  padding: 20px;
  background: #FAF9F3;
}
@media only screen and (max-width:540px) {
  .p-agent__food-flex {
    display: block;
    margin-bottom: 40px;
  }
}
.p-agent__food-item {
  flex: 1;
  line-height: 1.6;
}
@media only screen and (max-width:540px) {
  .p-agent__food-item:first-child {
    margin-bottom: 40px;
  }
}
.p-agent__food-item section {
  margin-bottom: 20px;
  background: #FFF;
  padding: 5%;
}
@media only screen and (max-width:540px) {
  .p-agent__food-item section {
    padding: 7.5%;
  }
}
.p-agent__food-item section h3 {
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom: 1px solid #E4E9EC;
}
.p-agent__food-item section h4 {
  margin-bottom: 10px;
}
.p-agent__food-item section p {
  margin-bottom: 25px;
}
.p-agent__food-item section p:last-child {
  margin: 0;
}
.p-agent__food-facts {
  font-size: 13px;
}
.p-agent__food-facts a {
  color: #B8384F;
  text-decoration: underline;
}
.p-agent__food-manners p {
  font-size: 15px;
}
@media only screen and (max-width:540px) {
  .p-agent__food-manners p {
    font-size: 13px;
  }
}
.p-agent__food-manners p a {
  color: #B8384F;
  text-decoration: underline;
}
.p-agent__jurisdiction {
  margin-bottom: 80px;
  padding: 0 5%;
}
@media only screen and (max-width:540px) {
  .p-agent__jurisdiction {
    margin-bottom: 60px;
  }
}
.p-agent__jurisdiction-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-agent__others {
  padding: 0 5%;
}
.p-agent__others-in {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-agent__others-list {
  list-style: none;
}
.p-agent__others-list-item {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}
@media only screen and (max-width:540px) {
  .p-agent__others-list-item {
    display: block;
    margin-bottom: 25px;
  }
}
@media only screen and (max-width:912px) {
  .p-agent__others-list-item .btn1 {
    width: 30%;
  }
}
@media only screen and (max-width:540px) {
  .p-agent__others-list-item .btn1 {
    width: 60%;
    margin-bottom: 15px;
  }
}
.p-agent__others-list-item p {
  margin-left: 30px;
  font-size: 16px;
  line-height: 1.6;
}
@media only screen and (max-width:912px) {
  .p-agent__others-list-item p {
    width: 70%;
    font-size: 15px;
  }
}
@media only screen and (max-width:912px) {
  .p-agent__others-list-item p {
    width: 100%;
    padding: 0;
    font-size: 13px;
  }
}

.p-tos {
  padding: 30px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-tos {
    padding: 20px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-tos {
    padding: 10px 0 60px;
  }
}
.p-tos__cnt {
  padding: 80px 5% 0;
  font-size: 15px;
  line-height: 1.8;
}
@media only screen and (max-width:912px) {
  .p-tos__cnt {
    padding: 60px 5% 0;
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-tos__cnt {
    padding: 40px 5% 0;
    font-size: 13px;
  }
}
.p-tos__sec {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto 60px;
}
@media only screen and (max-width:540px) {
  .p-tos__sec {
    margin-bottom: 40px;
  }
}
.p-tos__sec-ttl {
  margin-bottom: 30px;
}
.p-tos__sec-list {
  padding-left: 20px;
  list-style: decimal;
}
.p-tos__sec-list-item {
  margin-bottom: 10px;
}
.p-tos__sec-sublist {
  padding: 10px 0 20px 1.7em;
  list-style: none;
}
.p-tos__sec-sublist li {
  text-indent: -1.7em;
}
.p-tos__sec-item:nth-of-type(1) {
  margin-bottom: 60px;
}
.p-tos__sec-item-notes {
  padding-top: 10px;
  font-size: 12px;
}
@media only screen and (max-width:540px) {
  .p-tos__sec-item-notes {
    font-size: 11px;
  }
}
.p-tos__sec-item-notes-list {
  padding: 10px 0 20px 2.85em;
  list-style: none;
}
.p-tos__sec-item-notes-list-item {
  text-indent: -2.85em;
}
.p-tos__sec-tbl-wrap {
  overflow-x: auto;
}
.p-tos__sec-tbl {
  width: 100%;
  min-width: 690px;
  margin-bottom: 10px;
  border-collapse: collapse;
}
.p-tos__sec-tbl tr:nth-of-type(2) td:first-child {
  background: #F3F5FA;
}
.p-tos__sec-tbl th, .p-tos__sec-tbl td {
  padding: 20px;
}
.p-tos__sec-tbl th {
  font-weight: 400;
  background: #43434A;
  color: #FFF;
  border: 1px solid #989898;
  text-align: left;
}
.p-tos__sec-tbl td {
  border: 1px solid #E4E9EC;
}
.p-tos__sec:last-child {
  margin-bottom: 0;
}

.p-bt {
  padding: 30px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-bt {
    padding: 20px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-bt {
    padding: 10px 0 60px;
  }
}
.p-bt__cnt {
  padding: 80px 5% 0;
  font-size: 15px;
  line-height: 1.8;
}
@media only screen and (max-width:912px) {
  .p-bt__cnt {
    padding: 60px 5% 0;
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-bt__cnt {
    padding: 40px 5% 0;
    font-size: 13px;
  }
}
.p-bt__sec {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto 60px;
}
@media only screen and (max-width:540px) {
  .p-bt__sec {
    margin: 0 auto 40px;
  }
}
.p-bt__sec-ttl {
  margin-bottom: 30px;
}
.p-bt__sec-list {
  padding-left: 1.2em;
  list-style: decimal;
}
.p-bt__sec-list li {
  margin-bottom: 10px;
}
.p-bt__sec-cancel {
  padding: 10px 0;
  list-style: none;
}
.p-bt__sec:last-child {
  margin-bottom: 0;
}

.p-tou {
  padding: 30px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-tou {
    padding: 20px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-tou {
    padding: 10px 0 60px;
  }
}
.p-tou__cnt {
  padding: 80px 5% 0;
  font-size: 15px;
  line-height: 1.8;
}
@media only screen and (max-width:912px) {
  .p-tou__cnt {
    padding: 60px 5% 0;
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-tou__cnt {
    padding: 40px 5% 0;
    font-size: 13px;
  }
}
.p-tou__sec {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto 60px;
}
@media only screen and (max-width:540px) {
  .p-tou__sec {
    margin: 0 auto 40px;
  }
}
.p-tou__sec-ttl {
  margin-bottom: 30px;
}
.p-tou__sec:last-child {
  margin-bottom: 0;
}

.p-reg {
  padding: 30px 0 100px;
}
@media only screen and (max-width:912px) {
  .p-reg {
    padding: 20px 0 80px;
  }
}
@media only screen and (max-width:540px) {
  .p-reg {
    padding: 10px 0 60px;
  }
}
.p-reg__cnt {
  padding: 80px 5% 0;
  font-size: 15px;
  line-height: 1.8;
}
@media only screen and (max-width:912px) {
  .p-reg__cnt {
    padding: 60px 5% 0;
    font-size: 14px;
  }
}
@media only screen and (max-width:540px) {
  .p-reg__cnt {
    padding: 40px 5% 0;
    font-size: 13px;
  }
}
.p-reg__cnt .lead1 {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto 60px;
}
.p-reg__cnt .start {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}
.p-reg__sec {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto 60px;
}
@media only screen and (max-width:540px) {
  .p-reg__sec {
    margin-bottom: 40px;
  }
}
.p-reg__sec-ttl {
  margin-bottom: 30px;
}
.p-reg__sec-list {
  padding-left: 20px;
  list-style: decimal;
}
.p-reg__sec-list li {
  margin-bottom: 10px;
}
.p-reg__sec-sublist {
  padding: 10px 20px 0;
  list-style: lower-latin;
}
.p-reg__sec:last-child {
  margin-bottom: 0;
}/*# sourceMappingURL=style.css.map */