@charset "UTF-8";


/* =================== */
/*       pubulic       */
/* =================== */
.slick-slider { padding-bottom:1rem; }
.pic-slider { padding-bottom:0; }
.slick-dots {
  display:flex;
  justify-content:center;
  position:relative;
  margin-top:-1.3rem;
}
.slick-dots li {
  width:.45rem !important;
  height:.45rem !important;
  margin:0 .45rem !important;
  padding:0 !important;
  border-radius:100vmax;
  border:0;
  background:#fff;
}
.slick-dots li.slick-active { background:#ff720b; border:0; }
.slick-dots li button { display:none; }

main { color:#5a5f48; }

.kv-box { position:relative; }
.kv-box h1#page-ttl {
  font-size:2rem;
  font-weight:bold;
  color:#5a5f48;
  background:url(../img/qa/page_ttl_bk.png) no-repeat;
  background-size:cover;
  width:23rem;
  height:6rem;
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  margin:auto 0;
  display:flex;
  align-items:center;
  justify-content:center;
}
.kv-box h1#page-ttl::before {
  content:"●";
  font-size:75%;
  color:#9f52b0;
  margin-right:.3rem;
}
.kv-slide.slick-slider { padding-bottom:0; }

aside.btn-box .btn {
  width:60rem;
  margin:0 auto 7rem;
}
aside.btn-box .btn2 a {
  border-radius:100vmax;
  font-size:max(20px, 1.75rem);
}
aside.btn-box .btn2 .txt { right:19rem; }

.center-h {
  text-align:center;
  margin-bottom:2.5rem;
  position:relative;
  z-index:1;
}
.center-h .en {
  display:block;
  font-size:1.25rem;
  color:#5a5f48;
  font-weight:bold;
}
.center-h .jp {
  font-size:2.5rem;
  font-weight:bold;
  color:#6e8bb4;
  display:block;
  margin-top:1rem;
}

.sec-top-txt {
  font-size:max(15px, 1rem);
  line-height:1.8;
  text-align:center;
  color:#5a5f48;
  position:relative;
  z-index:1;
}

.pic-slider img { margin:0 .75rem; }

.dflt-layout {
  align-items:flex-start;
  margin-bottom:3.5rem;
}
.dflt-layout .pic-box {
  width:45rem;
  position:relative;
}
.dflt-layout .txt-box {
  width:calc(100% - 45rem - 9rem);
  position:relative;
}
.dflt-layout.pic-r .pic-box { order:2; }
.dflt-layout.pic-r .txt-box { order:1; }
.dflt-layout .txt-box .ttl-box {
  position:absolute;
  top:-1.5rem;
  z-index:1;
}
.dflt-layout.pic-r .txt-box .ttl-box { right:-11.5rem; }
.dflt-layout.pic-l .txt-box .ttl-box { left:-11.5rem; }
.dflt-layout .txt-box .ttl-box .layout-ttl {
  border-radius:100vmax;
  writing-mode:vertical-rl;
  color:#fff;
  background:#ff720b;
  font-size:3rem;
  font-weight:bold;
  padding:2rem 1rem;
  margin:0 auto;
  width:5rem;
}
.dflt-layout .txt-box .ttl-box .layout-ttl.size2 { font-size:2.5rem; width:4.5rem; }
.dflt-layout .txt-box .ttl-box .layout-ttl span { font-size:2rem; }
.dflt-layout .txt-box .ttl-box .icon {
  width:7.5rem;
  margin-top:1rem;
}
.dflt-layout .txt-box .txt {
  margin-top:8rem;
  line-height:2;
  font-size:max(15px, 1rem);
  color:#5a5f48;
}
.dflt-layout .txt-box dl { margin-top:1.5rem; }
.dflt-layout .txt-box dl .line {
  display:flex;
  align-items:baseline;
  font-size:max(15px, 1rem);
  line-height:1.5;
}
.dflt-layout .txt-box dl .line dt {
  color:#fff;
  background:#5a5f48;
  border-radius:100vmax;
  font-weight:bold;
  width:6em;
  text-align:center;
  padding:.2rem 0;
}
.dflt-layout .txt-box dl .line dd {
  width:calc(100% - 6em);
  padding:.2rem 0 .2rem .5em;
}
.dflt-layout.pic-r .illust {
  width:50rem;
  position:absolute;
  top:-6rem;
  left:-15.5rem;
}
.dflt-layout.pic-l .illust {
  width:50rem;
  position:absolute;
  top:-6rem;
  right:-15.5rem;
}

.pic3-box img { width:calc((100% - 4rem) / 3); }


@media screen and (max-width: 960px) {
  .dflt-layout { display:block; max-width:600px; }
  .dflt-layout .pic-box { width:100%; }
  .dflt-layout .txt-box { width:100%; margin-top:20px; }
  .dflt-layout .txt-box .ttl-box { position:initial; }
  .dflt-layout .txt-box .ttl-box .layout-ttl { writing-mode:initial; display:inline-block; padding:1.5rem 2.5rem; width:auto; }
  .dflt-layout .txt-box .ttl-box .layout-ttl.size2 { width:auto; }
  .dflt-layout .txt-box .ttl-box .icon { position:absolute; right:0; margin-top:0; top:-6.25rem; }
  .dflt-layout .txt-box .txt { margin-top:15px; padding:0 20px; line-height:1.66; }
  .dflt-layout .txt-box dl { padding:0 20px; }
  .dflt-layout .txt-box dl .line { display:block; }
  .dflt-layout .txt-box dl .line dd { width:100%; padding:10px 15px 0; }

}
@media screen and (max-width: 750px) {
  aside.btn-box { margin-top:70px; }
  aside.btn-box .btn { width:100%; margin-bottom:60px; }
  aside.btn-box .btn2 .txt { right:5px; }
  .sec-top-txt { width:86.6%; padding:0 20px; margin:0 auto; line-height:1.66; text-align:left; }
  .dflt-layout .illust { display:none; }
  .pic3-box { width:100%; }
  .pic3-box img { width:auto; margin:0 .75rem; }
}










/* =================== */
/*       body.qa       */
/* =================== */
body.qa main {
  padding-top:6rem;
  position:relative;
}
body.qa main .illust {
  width:50rem;
  position:absolute;
  right:-14rem;
  top:0;
}
body.qa #sec1 article { margin-bottom:5rem; }
body.qa #sec1 h2 {
  font-size:max(20px, 1.5rem);
  color:#5a5f48;
  font-weight:bold;
  display:flex;
  align-items:center;
  margin-bottom:1rem;
}
body.qa #sec1 h2::before {
  content:"●";
  font-size:66%;
  color:#9f52b0;
  margin-right:.5rem;
}
body.qa #sec1 dl .line {
  border-radius:2rem;
  background:#fff;
  margin-bottom:1rem;
  padding:0 1.5rem;
}
body.qa #sec1 dl dt {
  padding:.3rem 0 .7rem;
  position:relative;
  display:flex;
  align-items:baseline;
  line-height:1.5;
  cursor:pointer;
}
body.qa #sec1 dl dt::before {
  content:"Q.";
  font-size:2rem;
  color:#ff720b;
  font-weight:bold;
  margin-right:.5rem;
}
body.qa #sec1 dl dt span {
  font-size:max(16px, 1.15rem);
  color:#5a5f48;
  font-weight:bold;
}
body.qa #sec1 dl dt::after {
  content:"↓";
  color:#ff720b;
  font-size:max(20px, 1.5rem);
  font-weight:bold;
  position:absolute;
  right:.5rem;
  top:.8rem;
}
body.qa #sec1 dl dt.open::after {
  content:"↑";
}
body.qa #sec1 dl dd { display:none; }
body.qa #sec1 dl dd div {
  padding:.2rem 0 1rem;
  position:relative;
  display:flex;
  align-items:baseline;
  line-height:1.5;
  border-top:1px solid #d4d4d4;
}
body.qa #sec1 dl dd div::before {
  content:"A.";
  font-size:2rem;
  color:#6e8bb4;
  font-weight:bold;
  margin-right:.5rem;
}
body.qa #sec1 dl dd p {
  font-size:max(15px, 1rem);
  color:#5a5f48;
}
body.qa #sec1 dl dd p a {
  font-weight:bold;
  color:#6e8bb4;
  text-decoration:underline;
}
body.qa #contact {
  background:rgba(110,139,180,.3);
  padding:6rem 0;
}
body.qa #contact .wht-box {
  background:#fff;
  border-radius:1.5rem;
  padding:5rem 7.5rem;
}
body.qa #contact .form-box form {
  width:100%;
  margin:0 auto;
  padding:1.5rem 0 0;
}
body.qa #contact .form-box form table {
  width:100%;
  border-collapse:separate;
  border-spacing:2rem 1rem;
}
body.qa #contact .form-box form th {
  text-align:left;
  width:15rem;
  min-width:180px;
  line-height:1;
  padding:.5rem 2rem 1.5rem;
  vertical-align:bottom;
  font-size:max(16px, 1.15rem);
  font-weight:bold;
  position:relative;
  color:#5a5f48;
  border-bottom:1px solid #d4d4d4;
}
body.qa #contact .form-box form th.top { vertical-align:top; }
body.qa #contact .form-box form th .req {
  color:#ff720b;
  margin-left:.5rem;
}
body.qa #contact .form-box form td {
  position:relative;
  border-bottom:1px solid #d4d4d4;
  padding:0 1rem 1rem;
  font-size:max(15px, 1rem);
  vertical-align:top;
}
body.qa #contact .form-box form input,
body.qa #contact .form-box form textarea {
  border:0;
  line-height:1.5;
  width:100%;
  padding:.5rem;
  font-size:max(15px, 1rem);
  border:1px solid #d4d4d4;
  box-sizing:border-box;
}
body.qa #contact .form-box form .size-s { border-bottom:0; }
body.qa #contact .form-box form .size-s input { width:15rem; }
body.qa #contact .form-box form .size-m input { width:20rem; }
body.qa #contact .form-box form .size-l input { width:25rem; }
body.qa #contact .form-box form textarea { padding:0; }
body.qa #contact .form-box form input[type='submit'] {
  background:#6e8bb4;
  color:#fff;
  font-size:max(17px, 1.5rem);
  line-height:5rem;
  text-align:center;
  width:20rem;
  display:block;
  margin:4rem auto 0;
  padding:0;
  transition:0.5s ease all;
  cursor:pointer;
  font-family:"Zen Kaku Gothic Antique", sans-serif;
  font-weight:400;
  font-style:normal;
  border-radius:100vmax;
  box-sizing:border-box;
  font-weight:bold;
}
body.qa #contact .form-box form input[type='submit']:hover { opacity:.5; }

@media screen and (max-width: 750px) {
  body.qa main { padding-top:40px; }
  body.qa main .illust { display:none; }
  body.qa #sec1 dl dt span { padding-right:2rem; }
  body.qa #sec1 dl dt { padding:6px 0 14px; }
  body.qa #sec1 dl dd div { padding:4px 0 20px; }
  body.qa #contact .wht-box { padding:40px 20px; }
  body.qa #contact .form-box table,
  body.qa #contact .form-box tbody,
  body.qa #contact .form-box table tr,
  body.qa #contact .form-box table th,
  body.qa #contact .form-box table td { display:block; }
  body.qa #contact .form-box form th { width:100%; padding:10px; }
  body.qa #contact .form-box form td { width:100%; min-width:inherit; margin-bottom:30px; padding:10px; }
  body.qa #contact .form-box form input { width:100% !important; box-sizing:border-box; }
  body.qa #contact .form-box form { padding:10px 0 0; }
  body.qa #contact .form-box form input[type='submit'] { width:200px; line-height:50px; max-width:300px; }
}










/* =================== */
/*       body.facilities       */
/* =================== */
body.facilities .kv-box h1#page-ttl::before { color:#ffef40; }
body.facilities #sec1 {
  margin-top:6rem;
  position:relative;
}
body.facilities #sec1 ul.anc-list {
  flex-wrap:wrap;
  align-items:initial;
  justify-content:center;
  margin-top:3rem;
  position:relative;
  z-index:1;
}
body.facilities #sec1 ul.anc-list li {
  width:calc((100% - 4.5rem) / 4);
  margin-bottom:1.5rem;
  margin-right:1.5rem;
}
body.facilities #sec1 ul.anc-list li:nth-child(4n) { margin-right:0; }
body.facilities #sec1 ul.anc-list li a {
  line-height:5rem;
  background:#fff4be;
  text-align:center;
  position:relative;
  border-radius:100vmax;
  font-size:1.5rem;
  font-weight:bold;
  color:#5a5f48;
  display:block;
}
body.facilities #sec1 ul.anc-list li:nth-child(3) a,
body.facilities #sec1 ul.anc-list li:nth-child(7) a { padding-right:2rem; }
body.facilities #sec1 ul.anc-list li a::after {
  content:">";
  font-size:2rem;
  color:#ff720b;
  font-weight:bold;
  transform:rotate(90deg) scale(0.7, 1);
  display:block;
  position:absolute;
  right:1.5rem;
  top:0;
}
body.facilities #sec1 ul.anc-list li a:hover { background:#fff; }
body.facilities #sec1 .illust1 {
  width:44rem;
  position:absolute;
  top:-.5rem;
  left:-4.5rem;
}
body.facilities #sec1 .illust2 {
  width:31.5rem;
  position:absolute;
  top:3rem;
  right:-9.5rem;
}
body.facilities #sec1 .illust3 {
  width:31.5rem;
  position:absolute;
  top:27.5rem;
  left:20.5rem;
}
body.facilities #sec1 .pic {
  width:100%;
  margin-top:-32rem;
}
body.facilities #sec1 #art1 { margin-top:-20rem; }
body.facilities #sec1 #art1 .dflt-layout.pic-r .illust {
  top:-12.5rem;
  right:-14.5rem;
  left:initial;
}
body.facilities #sec1 #art2,
body.facilities #sec1 #art4,
body.facilities #sec1 #art6 { margin:7.5rem auto; }
body.facilities #sec1 #art3 .dflt-layout .txt-box .ttl-box,
body.facilities #sec1 #art5 .dflt-layout .txt-box .ttl-box { right:-15.5rem; }
body.facilities #sec1 #art6 .dflt-layout .txt-box .ttl-box { left:-15.5rem; }
body.facilities #sec1 #art3 .dflt-layout .txt-box .ttl-box .icon,
body.facilities #sec1 #art5 .dflt-layout .txt-box .ttl-box .icon,
body.facilities #sec1 #art6 .dflt-layout .txt-box .ttl-box .icon { width:15.3rem; }
body.facilities #sec2 .sec-top-txt {
  width:40rem;
  margin:0 auto;
  text-align:left;
}
body.facilities #sec2 .wht-box {
  background:#fff;
  border-radius:2.5rem;
  padding:4.5rem 0 14.5rem;
  position:relative;
}
body.facilities #sec2 .wht-box .illust {
  width:50rem;
  position:absolute;
  left:-25rem;
  top:-5rem;
}
body.facilities #sec2 .pic-slider { margin-top:-12rem; }
body.facilities #sec3 {
  margin-top:8rem;
  background:#fff;
  border-radius:2.5rem;
  padding:4.5rem 7.5rem;
}
body.facilities #sec3 h4.center-h .jp { font-size:2rem; }
body.facilities #sec3 .illust {
  width:50rem;
  position:absolute;
  right:-25rem;
  top:-6rem;
}
body.facilities #sec3 dl { border-top:1px solid #d4d4d4; }
body.facilities #sec3 dl .line {
  display:flex;
  font-size:max(15px, 1rem);
  line-height:1.5;
  border-bottom:1px solid #d4d4d4;
}
body.facilities #sec3 dl .line dt {
  font-size:max(16px, 1.1rem);
  color:#ff720b;
  font-weight:bold;
  background:#fcfaf7;
  padding:.5rem 1.5rem;
  width:max(160px, 12rem);
}
body.facilities #sec3 dl .line dd {
  padding:.5rem 1.5rem;
  width:calc(100% - max(160px, 12rem));
}
body.facilities #sec1 #art1 .dflt-layout .txt-box dl .line { display:block; }
body.facilities #sec1 #art1 .dflt-layout .txt-box dl .line dd { width:100%; }

@media screen and (max-width: 960px) {
  body.facilities #sec1 { margin-top:40px; }
}
@media screen and (max-width: 750px) {
  body.facilities #sec1 .illust1 { display:none; }
  body.facilities #sec1 .illust2 { display:none; }
  body.facilities #sec1 .illust3 { display:none; }
  body.facilities #sec1 ul.anc-list li { width:calc((100% - 1.5rem) / 2); margin-bottom:10px; }
  body.facilities #sec1 ul.anc-list li:nth-child(2n) { margin-right:0; }
  body.facilities #sec1 ul.anc-list li a::after { right:10px; }
  body.facilities #sec1 .pic { margin-top:-16.5rem; }
  body.facilities #sec1 #art1 { margin-top:-6rem; }
  body.facilities #sec1 #art2,
  body.facilities #sec1 #art4,
  body.facilities #sec1 #art6 { margin:5rem auto; }
  body.facilities #sec2 .wht-box .illust { display:none; }
  body.facilities #sec2 .wht-box { width:93.3%; padding:50px 35px 145px; }
  body.facilities #sec2 .sec-top-txt { width:100%; padding:0; }
  body.facilities #sec3 { padding:50px 35px; margin-top:60px; }
  body.facilities #sec3 .illust { display:none; }
  body.facilities #sec3 dl .line { display:block; line-height:1.66; }
  body.facilities #sec3 dl .line dt { width:100%; }
  body.facilities #sec3 dl .line dd { width:100%; }
}










/* =================== */
/*       body.stay       */
/* =================== */
body.stay .kv-box h1#page-ttl::before { color:#96c17a; }
body.stay #sec1 {
  margin-top:6rem;
  position:relative;
}
body.stay #sec1 #art1,
body.stay #sec1 #art3,
body.stay #sec1 #art5,
body.stay #sec1 #art7 { margin:7.5rem auto; }
body.stay #sec1 .illust2 {
  width:31.5rem;
  position:absolute;
  right:-4.5rem;
  top:.5rem;
}
body.stay .dflt-layout .txt-box .txt .en {
  display:block;
  font-size:max(19px, 1.25rem);
  font-weight:bold;
}
body.stay .bnr-btn .illust {
  width:35.85rem;
  position:absolute;
  right:-18rem;
  top:-6rem;
}
body.stay .bnr-btn a:hover { opacity:.5; }
body.stay #sec1 #art5 .btn { margin-top:2rem; }
body.stay #sec1 #art5 .btn a {
  background:#faf0bb;
  line-height:3.5rem;
  border-radius:100vmax;
  font-size:max(15px, 1.1rem);
  color:#5a5f48;
  display:flex;
  justify-content:center;
  align-items:center;
  text-align:center;
  font-weight:bold;
}
body.stay #sec1 #art5 .btn a .arrow {
  font-size:max(18px, 1.5rem);
  color:#ff720b;
  margin-left:.5rem;
}
body.stay #sec1 #art5 .btn a:hover { background:#fff; }

@media screen and (max-width: 960px) {
  body.stay .bnr-btn { max-width:600px; }
  body.stay #sec1 #art5 .btn a { width:280px; margin:2rem auto 0; line-height:45px; }
}
@media screen and (max-width: 750px) {
  body.stay #sec1 { margin-top:40px; }
  body.stay #sec1 .illust2 { display:none; }
  body.stay #sec1 #art1,
  body.stay #sec1 #art3,
  body.stay #sec1 #art5,
  body.stay #sec1 #art7 { margin:50px auto; }
  body.stay .bnr-btn .illust { display:none; }
}







/* =================== */
/*       body.price       */
/* =================== */
body.price .kv-box h1#page-ttl::before { color:#525bb0; }
body.price #sec1 {
  margin:6rem auto;
  position:relative;
}
body.price main .wht-box {
  background:#fff;
  border-radius:2.5rem;
  padding:4.5rem 7.5rem;
  position:relative;
  min-width:850px;
}
body.price main #sec1 .illust {
  width:50rem;
  position:absolute;
  right:-25rem;
  top:-5rem;
}
body.price main #sec2 .illust {
  width:50rem;
  position:absolute;
  left:-25rem;
  top:-5rem;
}
body.price main .wht-box .center-h .jp { font-size:2rem; }
body.price main .wht-box table { width:100%; }
body.price main .wht-box table th {
  background:#fcfaf7;
  font-size:max(16px, 1.1rem);
  color:#ff720b;
  font-weight:bold;
  background:#fcfaf7;
  padding:.5rem 0;
  border:1px solid #d4d4d4;
}
body.price main .wht-box table td {
  font-size:max(15px, 1rem);
  padding:.5rem 0;
  border:1px solid #d4d4d4;
}
body.price main #sec2.wht-box table {
  font-size:max(15px, 1rem);
  line-height:1.2;
  text-align:center;
  border-top:2px solid #d4d4d4;
  border-bottom:2px solid #d4d4d4;
}
body.price main #sec2.wht-box table th {
  width:calc(100% / 10);
  font-size:max(15px, 1rem);
  vertical-align:middle;
  white-space:nowrap;
}
body.price main #sec2.wht-box table th:first-child { border-left:0; }
body.price main #sec2.wht-box table th:last-child { border-right:0; }
body.price main #sec2.wht-box table td { padding:1rem 0; }
body.price main #sec2.wht-box table td:first-child { border-left:0; }
body.price main #sec2.wht-box table td:last-child { border-right:0; }
body.price main #sec1.wht-box table { line-height:1.2; }
body.price main #sec1.wht-box table th {
  text-align:left;
  padding:.5rem 1.5rem;
}
body.price main #sec1.wht-box table .ttl-line th { text-align:center; }
body.price main #sec1.wht-box table .ttl-line th {
  color:#000;
  font-weight:normal;
  font-size:max(15px, 1rem);
}
body.price main #sec1.wht-box table .ttl-line th.deco {
  color:#000;
  font-size:max(16px, 1.1rem);
  font-weight:bold;
}
body.price main #sec1.wht-box table td { text-align:center; }
body.price main #sec1.wht-box table th a { display:flex; justify-content:space-between; align-items:center; }
body.price main #sec1.wht-box table th a::after { content:"→"; transition:0.5s ease all; }
body.price main #sec1.wht-box table th a:hover::after { transform:translate(.3rem, 0); }
body.price main #sec1 .att-list { padding:1.5rem 2rem 0; }
body.price main #sec1 .att-list li {
  font-size:max(15px, 1rem);
  line-height:1.5;
  text-indent:-1em;
  padding-left:1em;
  margin-bottom:.25rem;
}
body.price #access { margin:7.5rem 0 6rem; }
body.price #access .map-box {
  height:35rem;
  border-top:.5rem solid #6e8bb4;
}
body.price #access .map-box iframe { width:100%; height:100%; }
body.price #access .map-add-box {
  position:relative;
  margin-top:3rem;
  justify-content:center;
  align-items:flex-start;
}
body.price #access .map-add-box .map-pic { width:15.5rem; }
body.price #access .map-add-box .map-logo { width:11rem; }
body.price #access .map-add-box address {
  font-size:max(15px, 1rem);
  line-height:1.5;
  margin:0 2.5rem;
}
body.price #access .map-add-box address .name { font-weight:bold; }
body.price #access .map-add-box .illust1 {
  width:31.5rem;
  position:absolute;
  left:-13.5rem;
  top:-7.5rem;
  z-index:-1;
}
body.price #access .map-add-box .illust2 {
  width:31.5rem;
  position:absolute;
  top:1.5rem;
  right:-8rem;
  z-index:-1;
}
body.price #sec3.wht-box { padding:4.5rem 5rem; }
body.price #sec3.wht-box .center-h .jp { font-size:2.5rem; }
body.price #sec3 .box h3 {
  display:flex;
  align-items:center;
  font-size:max(17px, 1.5rem);
  color:#ff720b;
  font-weight:bold;
  margin-bottom:1rem;
}
body.price #sec3 .box h3 img {
  width:3.5rem;
  margin-right:1rem;
}
body.price #sec3 .box .root { padding:0 1rem; }
body.price #sec3 .box1 { margin-bottom:3.5rem; }

@media screen and (max-width: 960px) {
  body.price main .wht-box { min-width:initial; padding:45px; }
  body.price main #sec2.wht-box table.pc-on { display:table; }
  body.price main #sec2.wht-box table.sp-on { display:none; }
  body.price main #sec1.wht-box .tbl-wrap { width:100%; }
  body.price main #sec1.wht-box table { width:740px; }
}
@media screen and (max-width: 750px) {
  body.price #sec1 { margin:40px auto; }
  body.price main .wht-box { width:93.3%; padding:50px 35px; }
  body.price main #sec1 .illust { display:none; }
  body.price main #sec1.wht-box table { line-height:1.5; }
  body.price main #sec1 .att-list { padding:15px 0 0; }
  body.price main #sec2 .illust { display:none; }
  body.price main #sec2.wht-box table.pc-on { display:none; }
  body.price main #sec2.wht-box table.sp-on { display:table; }
  body.price main #sec2.wht-box table th { width:50%; padding:10px 0; }
  body.price main #sec2.wht-box table td { padding:10px 0; vertical-align:middle; }
  body.price #access { margin:50px auto; }
  body.price #access .map-add-box { display:block; }
  body.price #access .map-add-box .map-logo { margin:0 auto; }
  body.price #access .map-add-box address { margin:20px auto; text-align:center; }
  body.price #access .map-add-box .illust1 { display:none; }
  body.price #access .map-add-box .map-pic { margin:0 auto; }
  body.price #sec3.wht-box { padding:35px 35px; }
  body.price #sec3 .box .root { padding:0; }
}







/* =================== */
/*       body.cafe       */
/* =================== */
body.cafe .kv-box h1#page-ttl {
  width:32.5rem;
  background:url(../img/cafe/page_ttl_bk.png) no-repeat;
  background-size:cover;
}
body.cafe .kv-box h1#page-ttl::before { color:#7ac1a7; }
body.cafe #sec1 {
  margin:6rem auto 8rem;
  position:relative;
}
body.cafe #sec1 .sec-pic-box {
  padding-right:20.5rem;
  margin-top:6rem;
}
body.cafe #sec1 .sec-pic-box .pic-in {
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
}
body.cafe #sec1 .sec-pic-box .pic { margin:0 1.5rem; }
body.cafe #sec1 .sec-pic-box .pic1 { width:26rem; }
body.cafe #sec1 .sec-pic-box .pic2 {
  width:12rem;
  margin-top:5rem;
}
body.cafe #sec1 .sec-pic-box .pic3 {
  width:16.5rem;
  margin-top:-2.5rem;
}
body.cafe #sec1 .sec-pic-box .pic4 {
  width:21.5rem;
  margin-top:-4.5rem;
}
body.cafe #sec1 .top-btm-pic {
  width:100%;
  margin-top:-35rem;
}
body.cafe #sec1 .illust1 {
  width:44rem;
  position:absolute;
  top:-6rem;
  left:1.5rem;
  z-index:-1;
}
body.cafe #sec1 .illust2 {
  width:31.5rem;
  position:absolute;
  top:-3rem;
  right:-4.5rem;
}
body.cafe .dflt-layout .txt-box .txt .en {
  display:block;
  font-size:max(17px, 1.25rem);
  font-weight:bold;
}
body.cafe #sec1 #art1 { margin-top:-21rem; }
body.cafe #sec1 .btn-box {
  justify-content:center;
  margin:6rem auto 3.5rem;
}
body.cafe main .dflt-btn {
  width:32.5rem;
  height:6rem;
  position:relative;
}
body.cafe main .dflt-btn.btn1 { margin-right:4.5rem; }
body.cafe main .dflt-btn .link a {
  width:100%;
  line-height:6rem;
  border-radius:100vmax;
  background:#faf0bb;
  display:block;
  color:#5a5f48;
  font-size:2rem;
  font-weight:bold;
  padding-right:3rem;
  text-align:center;
  box-sizing:border-box;
}
body.cafe main .dflt-btn .link a:hover { background:#fff; }
body.cafe main .dflt-btn .link .arrow {
  font-size:3rem;
  font-weight:bold;
  color:#ff720b;
  position:absolute;
  right:3rem;
  top:0;
  transition:0.5s ease all;
}
body.cafe main .dflt-btn .link a:hover .arrow { right:2.5rem; }
body.cafe main .dflt-btn .txt {
  width:10.55rem;
  position:absolute;
  right:3rem;
  top:-3rem;
}
body.cafe #sec2 .sec-top-txt {
  width:40rem;
  margin:0 auto;
  text-align:left;
}
body.cafe #sec2 .wht-box {
  background:#fff;
  border-radius:2.5rem;
  padding:4.5rem 0 9.5rem;
  position:relative;
}
body.cafe #sec2 .wht-box .illust {
  width:50rem;
  position:absolute;
  left:-25rem;
  top:-5rem;
}
body.cafe #sec2 .pic-slider { margin-top:-7rem; }
body.cafe #sec2 .schedule {
  width:50rem;
  margin:2rem auto 0;
}
body.cafe #sec2 .schedule iframe { width:100%; }
body.cafe main .mini-wht-box {
  background:#fff;
  border-radius:2.5rem;
  padding:4.5rem 0 5rem;
  position:relative;
  margin-top:6rem;
}
body.cafe main .mini-wht-box .sec-top-txt {
  width:40rem;
  margin:0 auto;
  text-align:left;
}
body.cafe main .mini-wht-box .illust {
  width:50rem;
  position:absolute;
  left:-25rem;
  top:-3rem;
}
body.cafe main #sec4 .mini-wht-box .illust { left:initial; right:-25rem; }
body.cafe main #sec6 .mini-wht-box .illust { left:initial; right:-25rem; }
body.cafe main .mini-wht-box .dflt-btn { margin:3rem auto 0; }
body.cafe main #sec6 .dflt-btn .link a {
  line-height:1.2;
  padding:.8rem 0;
}
body.cafe main #sec6 .dflt-btn .link .arrow {
  height:1em;
  line-height:1.2;
  top:0;
  bottom:0;
  margin:auto 0;
}

@media screen and (max-width: 960px) {
  body.cafe #sec2 .wht-box { max-width:600px; }
  body.cafe main .mini-wht-box { max-width:600px; }
}
@media screen and (max-width: 750px) {
  body.cafe #sec1 .sec-pic-box {
    width:100%;
    height:300px;
    margin-top:0;
    animation-name:moveToRight;
    animation-duration:7s;
    animation-iteration-count:infinite;
    animation-timing-function:ease;
    margin-left:-100px;
    position:relative;
  }
  body.cafe #sec1 .sec-pic-box .pic-in {
    width:728px;
    justify-content:center;
    display:flex;
    align-items:flex-start;
    position:absolute;
    left:-50%;
    right:-50%;
    margin:0 auto;
  }
  @keyframes moveToRight {
    50% {
      margin-left: 100px;
    }
    100% {
      margin-left: -100px;
    }
  }
  body.cafe #sec1 .sec-pic-box .pic { margin:0 1rem; }
  body.cafe #sec1 .sec-pic-box .pic2 { margin-top:-1rem; }
  body.cafe #sec1 .sec-pic-box .pic3 { margin-top:4rem; }
  body.cafe #sec2 .wht-box .illust { display:none; }
  body.cafe #sec2 .wht-box { width:93.3%; padding:50px 35px 105px; }
  body.cafe #sec2 .sec-top-txt { width:100%; padding:0; }
  body.cafe main .mini-wht-box { padding:35px; }
  body.cafe #sec1 #art1 { margin-top:70px; }
  body.cafe #sec1 .illust2 { display:none; }
  body.cafe #sec1 .illust1 { display:none; }
  body.cafe #sec1 .btn-box { display:block; }
  body.cafe main .dflt-btn { width:255px; margin:0 auto; }
  body.cafe main .dflt-btn.btn1 { margin:0 auto 40px; }
  body.cafe #sec1 { margin-bottom:50px; }
  body.cafe #sec2 .schedule { width:100%; }
  body.cafe main #sec3 .mini-wht-box .illust { display:none; }
  body.cafe main #sec4 .mini-wht-box .illust { display:none; }
  body.cafe main #sec5 .mini-wht-box .illust { display:none; }
  body.cafe main .mini-wht-box .sec-top-txt { width:100%; padding:0; }
  body.cafe main .mini-wht-box .center-h .jp { font-size:23px; }
  body.cafe main .mini-wht-box .dflt-btn { margin-top:40px; }
  body.cafe main #sec5 .dflt-btn .link .arrow { font-size:20px; right:20px; }
  body.cafe main #sec5 .dflt-btn .link a { font-size:17px; }
  body.cafe main #sec6 .dflt-btn .link a { padding:1.4rem 0; }
}








