body {
  letter-spacing: 0.06em;
  text-align: justify;
  text-justify: inter-ideograph;
  font-family: "Noto Sans JP", sans-serif;
  word-wrap: break-all;
  word-wrap: break-word;
  width: 100%;
  min-width: 1260px;
  color: #555555;
  scroll-behavior: smooth;
  font-weight: 500;
  font-size: 22px;
  font-size: 2.2rem;
}
@media screen and (max-width: 768px) {
  body {
    font-size: 32px;
    font-size: 4.1666666667vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  body {
    font-size: 18.8235294118px;
  }
}

.col-wht {
  color: #fff !important;
}
.col-blk {
  color: #555555 !important;
}
.col-main {
  color: #ee3a19 !important;
}
.col-sub {
  color: #002687 !important;
}
.col-accent {
  color: #f9f0f1 !important;
}
.col-bdr {
  color: #d5e7dc !important;
}
.col-bg {
  color: #f5f3ed !important;
}
.col-line {
  color: #06c755 !important;
}
.col-blu {
  color: #003f7b !important;
}

.bg-wht {
  background-color: #fff !important;
}
.bg-blk {
  background-color: #555555 !important;
}
.bg-main {
  background-color: #ee3a19 !important;
}
.bg-sub {
  background-color: #002687 !important;
}
.bg-accent {
  background-color: #f9f0f1 !important;
}
.bg-bdr {
  background-color: #d5e7dc !important;
}
.bg-bg {
  background-color: #f5f3ed !important;
}
.bg-line {
  background-color: #06c755 !important;
}
.bg-blu {
  background-color: #003f7b !important;
}

.btn-01__link, .btn-02__link, .btn-03__link, .btn-04__link, .btn-05__link, .btn-06__link {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  background: #ee3a19;
  color: #fff;
}
.btn-01__link:hover, .btn-02__link:hover, .btn-03__link:hover, .btn-04__link:hover, .btn-05__link:hover, .btn-06__link:hover {
  color: rgba(255, 255, 255, 0.8);
}
.btn-02__link {
  background: #f5f3ed;
  color: #555555;
  border: solid 1px #555555;
}
.btn-02__link:hover {
  color: rgba(85, 85, 85, 0.8);
}
.btn-03__link {
  background: #002687;
}
.btn-04__link {
  background: #d5e7dc;
  color: #555555;
}
.btn-04__link:hover {
  color: rgba(85, 85, 85, 0.8);
}
.btn-05__link {
  padding: 10px;
  border-radius: 10px;
}
.btn-06__link {
  background: #fff;
  color: #555555;
  border: solid 1px #d5e7dc;
}
.btn-06__link:hover {
  color: rgba(85, 85, 85, 0.8);
}

.ic-tel-17, .ic-tel-21, .ic-tel-36 {
  display: flex;
  align-items: center;
  -moz-column-gap: 5px;
       column-gap: 5px;
}
.ic-tel-17::before, .ic-tel-21::before, .ic-tel-36::before {
  content: "";
  display: block;
  width: 17px;
  aspect-ratio: 36/46;
  background-image: url("/img/common/ic-tel.png");
  background-size: 100%;
}
.ic-tel-21 {
  -moz-column-gap: 10px;
       column-gap: 10px;
}
.ic-tel-21::before {
  width: 21px;
}
.ic-tel-36 {
  -moz-column-gap: 10px;
       column-gap: 10px;
}
.ic-tel-36::before {
  width: 36px;
}
.ic-phone-11, .ic-phone-14, .ic-phone-23 {
  display: flex;
  align-items: center;
  -moz-column-gap: 5px;
       column-gap: 5px;
}
.ic-phone-11::before, .ic-phone-14::before, .ic-phone-23::before {
  content: "";
  display: block;
  width: 11px;
  aspect-ratio: 23/36;
  background-image: url("/img/common/ic-phone.png");
  background-size: 100%;
}
.ic-phone-14 {
  -moz-column-gap: 10px;
       column-gap: 10px;
}
.ic-phone-14::before {
  width: 14px;
}
.ic-phone-23 {
  -moz-column-gap: 10px;
       column-gap: 10px;
}
.ic-phone-23::before {
  width: 23px;
}
.ic-calendar-20, .ic-calendar-23, .ic-calendar-50 {
  position: relative;
}
.ic-calendar-20::before, .ic-calendar-23::before, .ic-calendar-50::before {
  content: "";
  display: block;
  width: 20px;
  aspect-ratio: 1/1;
  background-image: url("/img/common/ic-calendar.png");
  background-size: 100%;
  position: absolute;
  top: 50%;
  left: 20px;
  transform: translateY(-50%);
}
.ic-calendar-23::before {
  width: 23px;
}
.ic-calendar-50::before {
  width: 50px;
}
.ic-pin-14 {
  position: relative;
}
.ic-pin-14::before {
  content: "";
  display: block;
  width: 14px;
  aspect-ratio: 14/20;
  background-image: url("/img/common/ic-pin.png");
  background-size: 100%;
  position: absolute;
  top: 50%;
  left: 15px;
  transform: translateY(-50%);
}
.ic-outlink-10, .ic-outlink-10-blk {
  position: relative;
}
.ic-outlink-10::after, .ic-outlink-10-blk::after {
  content: "";
  display: block;
  width: 10px;
  aspect-ratio: 1/1;
  background-image: url("/img/common/ic-outlink.png");
  background-size: 100%;
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
  transition: 0.3s;
}
.ic-outlink-10:hover::after, .ic-outlink-10-blk:hover::after {
  transform: translate(1px, calc(-50% - 1px));
}
.ic-outlink-10-blk::after {
  background-image: url("/img/common/ic-outlink-blk.png");
  background-size: 100%;
}
.ic-line, .ic-line-20 {
  display: flex;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 20px;
       column-gap: 20px;
}
.ic-line::before, .ic-line-20::before {
  content: "";
  display: block;
  width: 40px;
  aspect-ratio: 1/1;
  background-image: url("/img/common/ic-line.png");
  background-size: 100%;
}
.ic-line-20 {
  gap: 15px;
}
.ic-line-20::before {
  width: 20px;
}

.arw-wht {
  position: relative;
}
.arw-wht::after {
  content: "";
  display: block;
  width: 13px;
  aspect-ratio: 1/1;
  background-image: url("/img/common/arw-wht.png");
  background-size: 100%;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translate(0, -50%);
  transition: 0.3s;
}
.arw-wht:hover::after {
  transform: translate(-2px, -50%);
}

.obj-side-slash {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  -moz-column-gap: 10px;
       column-gap: 10px;
}
.obj-side-slash::before, .obj-side-slash::after {
  content: "";
  display: block;
  width: 1px;
  height: 20px;
  background: #555555;
  transform: rotate(-30deg);
}
.obj-side-slash::after {
  transform: rotate(30deg);
}
.obj-side-star1 {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  -moz-column-gap: 25px;
       column-gap: 25px;
}
.obj-side-star1::before, .obj-side-star1::after {
  content: "";
  display: block;
  width: 18px;
  min-width: 18px;
  aspect-ratio: 18/21;
  background-image: url("/img/common/obj-star.png");
  background-size: 100%;
}
.obj-side-star2 {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  -moz-column-gap: 30px;
       column-gap: 30px;
}
.obj-side-star2::before, .obj-side-star2::after {
  content: "";
  display: block;
  width: 85px;
  min-width: 85px;
  aspect-ratio: 85/31;
  background-image: url("/img/common/obj-star-triple.png");
  background-size: 100%;
}
.obj-side-spot {
  position: relative;
  z-index: 1;
}
.obj-side-spot::before, .obj-side-spot::after {
  content: "";
  display: block;
  width: 62px;
  aspect-ratio: 62/183;
  background-image: url("/img/common/obj-spot.png");
  background-size: 100%;
  position: absolute;
  top: 50%;
  right: 100%;
  transform: translate(-60px, -50%);
  z-index: -1;
}
.obj-side-spot::after {
  right: inherit;
  left: 100%;
  transform: translate(60px, -50%) scaleX(-1);
}
.obj-side-flag {
  display: flex;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 30px;
       column-gap: 30px;
}
.obj-side-flag::before, .obj-side-flag::after {
  content: "";
  display: block;
  width: 141px;
  aspect-ratio: 141/66;
  background-image: url("/img/common/obj-flag.png");
  background-size: 100%;
}
.obj-side-flag::after {
  transform: scaleX(-1);
}
.obj-side-flag span {
  max-width: calc(100% - 342px);
}
.obj-side-leaf {
  display: flex;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 30px;
       column-gap: 30px;
}
.obj-side-leaf::before, .obj-side-leaf::after {
  content: "";
  display: block;
  width: 34px;
  aspect-ratio: 34/40;
  background-image: url("/img/common/obj-leaf2.png");
  background-size: 100%;
}
.obj-side-leaf::after {
  transform: scaleX(-1);
}
.obj-bird {
  position: relative;
  z-index: 1;
}
.obj-bird::before {
  content: "";
  display: block;
  width: 276px;
  aspect-ratio: 276/100;
  background-image: url("/img/common/illust-bird.png");
  background-size: 100%;
  position: absolute;
  z-index: -1;
}
.obj-cloud {
  position: relative;
  z-index: 1;
}
.obj-cloud::after {
  content: "";
  display: block;
  width: 136px;
  aspect-ratio: 136/77;
  background-image: url("/img/common/illust-cloud.png");
  background-size: 100%;
  position: absolute;
  z-index: -1;
}
.obj-temple1 {
  position: relative;
  z-index: 1;
}
.obj-temple1::after {
  content: "";
  display: block;
  width: 304px;
  aspect-ratio: 304/332;
  background-image: url("/img/common/illust-temple1.png");
  background-size: 100%;
  position: absolute;
  z-index: -1;
}
.obj-temple2 {
  position: relative;
  z-index: 1;
}
.obj-temple2::after {
  content: "";
  display: block;
  width: 254px;
  aspect-ratio: 254/162;
  background-image: url("/img/common/illust-temple2.png");
  background-size: 100%;
  position: absolute;
  z-index: -1;
}
.obj-animal {
  position: relative;
  z-index: 1;
}
.obj-animal::after {
  content: "";
  display: block;
  width: 290px;
  aspect-ratio: 290/190;
  background-image: url("/img/common/illust-animal.png");
  background-size: 100%;
  position: absolute;
  z-index: -1;
}
.obj-leaf1 {
  position: relative;
  z-index: 1;
}
.obj-leaf1::after {
  content: "";
  display: block;
  width: 73px;
  aspect-ratio: 73/121;
  background-image: url("/img/common/obj-leaf1.png");
  background-size: 100%;
  position: absolute;
  z-index: -1;
}
.obj-matsuri {
  position: relative;
  z-index: 1;
}
.obj-matsuri::before {
  content: "";
  display: block;
  width: 222px;
  aspect-ratio: 222/326;
  background-image: url("/img/common/illust-matsuri.png");
  background-size: 100%;
  position: absolute;
  z-index: -1;
}

.hov-opa a:hover {
  opacity: 0.8;
}
.hov-img a:hover img {
  opacity: 0.8;
}
.hov-scale a img, .hov-up a img {
  backface-visibility: hidden;
  -webkit-transform: translateZ(0) scale(1, 1);
}
.hov-scale a:hover {
  transform: scale(0.99);
}
.hov-up a:hover img {
  transform: translateY(-3px);
}

.tbl {
  width: 100%;
}
.tbl td {
  overflow-wrap: anywhere;
  word-break: normal;
  line-break: strict;
}
.tbl-01, .tbl-03 {
  display: grid;
  row-gap: 10px;
}
.tbl-01 dl, .tbl-03 dl {
  width: 100%;
  display: flex;
  -moz-column-gap: 15px;
       column-gap: 15px;
}
.tbl-01 dt, .tbl-01 dd, .tbl-03 dt, .tbl-03 dd {
  padding: 5px 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  line-height: 1.8181818182;
}
.tbl-01 dt, .tbl-03 dt {
  width: 150px;
  max-width: 100%;
  background: #ee3a19;
  color: #fff;
  text-align: center;
  border-radius: 10px;
}
.tbl-01 dd, .tbl-03 dd {
  max-width: calc(100% - 165px);
}
.tbl-02 {
  background: #fff;
}
.tbl-02 th, .tbl-02 td {
  vertical-align: middle;
  padding: 15px 2%;
  font-weight: 500;
}
.tbl-02 th {
  width: 24%;
  background: #003f7b;
  color: #fff;
  text-align: center;
}
.tbl-02 tr:not(:first-child) th, .tbl-02 tr:not(:first-child) td {
  border-top: solid 1px #fff;
}
.tbl-02 tr:not(:first-child) td {
  border-top-color: #555555;
}
.tbl-03 dt {
  background: #002687;
}

[class^=cts-] {
  width: 100%;
  margin: 0 auto;
}

.cts-1080 {
  max-width: 1080px;
}
.cts-1280 {
  max-width: 1280px;
}
.cts-1500 {
  max-width: 1500px;
}
.cts-1600 {
  max-width: 1600px;
}

.layout-clm-2 {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
}
.layout-clm-2 .list-item,
.layout-clm-2 .layout-item {
  width: calc((100% - 40px) / 2);
}
.layout-clm-2-c {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 40px;
}
.layout-clm-2-c .list-item,
.layout-clm-2-c .layout-item {
  width: calc((100% - 40px) / 2);
}
.layout-clm-3 {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}
.layout-clm-3 .list-item,
.layout-clm-3 .layout-item {
  width: calc((100% - 60px) / 3);
}
.layout-clm-3-c {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 30px;
}
.layout-clm-3-c .list-item,
.layout-clm-3-c .layout-item {
  width: calc((100% - 60px) / 3);
}
.layout-clm-4 {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}
.layout-clm-4 .list-item,
.layout-clm-4 .layout-item {
  width: calc((100% - 90px) / 4);
}
.layout-clm-4-c {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 30px;
}
.layout-clm-4-c .list-item,
.layout-clm-4-c .layout-item {
  width: calc((100% - 90px) / 4);
}

.list-blog .list-item, .list-news .list-item, .list-privacy .list-item, .list-room .list-item, .list-cancel-policy .list-item, .list-check .list-item, .list-event .list-item, .list-profile .list-item, .list-lesson .list-item {
  width: 100%;
}
.list-news time {
  font-family: "Zen Maru Gothic", serif;
  font-weight: bold;
  display: block;
  line-height: 1;
  font-weight: 500;
}
.list-news__link {
  display: block;
  padding: 40px 0;
}
.list-news__bx {
  display: flex;
  align-items: center;
  -moz-column-gap: 20px;
       column-gap: 20px;
}
.list-news__ttl {
  margin-top: 10px;
}
.list-news__item {
  border-bottom: solid 1px #555555;
}
.list-news__item:first-child .list-news__link {
  padding-top: 0;
}
.list-scene {
  font-weight: bold;
  font-size: 25px;
  font-size: 2.5rem;
}
@media screen and (max-width: 768px) {
  .list-scene {
    font-size: 35px;
    font-size: 4.5572916667vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .list-scene {
    font-size: 20.5882352941px;
  }
}
.list-scene__item {
  text-align: center;
}
.list-scene__ttl {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  -moz-column-gap: 10px;
       column-gap: 10px;
}
.list-scene__ttl::before, .list-scene__ttl::after {
  content: "/";
  display: block;
  transform: scaleX(-1);
  font-weight: normal;
}
.list-scene__ttl::after {
  transform: none;
}
.list-scene__ic {
  margin-top: 20px;
}
.list-room .com-layout {
  justify-content: space-between;
  align-items: flex-start;
}
.list-room__item {
  background: #f9f0f1;
  padding: 80px 0;
  border-radius: 60px;
}
.list-room__bx {
  width: 650px;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  row-gap: 30px;
}
.list-room__price {
  font-family: "Zen Maru Gothic", serif;
  font-weight: bold;
}
.list-room__price-list {
  display: flex;
  border: solid 1px #555555;
}
.list-room__price-list dl {
  width: 50%;
  background: #fff;
  text-align: center;
}
.list-room__price-list dl:not(:first-child) dt {
  border-left: solid 1px #fff;
}
.list-room__price-list dl:not(:first-child) dd {
  border-left: solid 1px #555555;
}
.list-room__price-list dt {
  background: #555555;
  color: #fff;
  padding: 5px 10px;
}
.list-room__price-list dd {
  padding: 12px 20px;
}
.list-room__price-list dd:not(:last-child) {
  border-bottom: solid 1px #555555;
}
.list-room__price-txt {
  font-family: "Zen Maru Gothic", serif;
  font-weight: bold;
  color: #ee3a19;
  font-size: 26px;
  font-size: 2.6rem;
}
@media screen and (max-width: 768px) {
  .list-room__price-txt {
    font-size: 36px;
    font-size: 4.6875vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .list-room__price-txt {
    font-size: 21.1764705882px;
  }
}
.list-room .obj-leaf1::after {
  right: 0;
  bottom: 0;
  transform: translate(220px, 60px);
}
.list-cancel-policy dl {
  display: flex;
  -moz-column-gap: 10px;
       column-gap: 10px;
}
.list-cancel-policy dt, .list-cancel-policy dd {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.list-cancel-policy dt {
  width: 24%;
  background: #ee3a19;
  color: #fff;
  border-radius: 50rem;
  text-align: center;
  padding: 3px 10px;
}
.list-service__item {
  background: #f9f0f1;
  border-radius: 20px;
  padding: 40px 20px;
  display: flex;
  flex-direction: column;
  row-gap: 15px;
}
.list-service__ttl {
  min-height: 65px;
  font-family: "Zen Maru Gothic", serif;
  font-weight: bold;
  color: #002687;
  text-align: center;
  line-height: 1.3461538462;
  font-size: 26px;
  font-size: 2.6rem;
}
@media screen and (max-width: 768px) {
  .list-service__ttl {
    font-size: 36px;
    font-size: 4.6875vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .list-service__ttl {
    font-size: 21.1764705882px;
  }
}
.list-check__item {
  display: flex;
  align-items: flex-start;
  -moz-column-gap: 10px;
       column-gap: 10px;
}
.list-check__item::before {
  content: "";
  display: block;
  width: 15px;
  aspect-ratio: 30/30;
  background-image: url("/img/common/ic-check.png");
  background-size: 100%;
  transform: translateY(60%);
}
.list-check__item span {
  max-width: calc(100% - 25px);
}
.list-check-20 .list-check__item::before {
  width: 20px;
  transform: translateY(40%);
}
.list-check-20 .list-check__item span {
  max-width: calc(100% - 30px);
}
.list-scene_example__item {
  background: #f9f0f1;
  padding: 30px;
  text-align: center;
  border-radius: 20px;
}
.list-scene_example__ttl {
  color: #ee3a19;
  font-weight: bold;
  margin-top: 15px;
  font-size: 30px;
  font-size: 3rem;
}
@media screen and (max-width: 768px) {
  .list-scene_example__ttl {
    font-size: 40px;
    font-size: 5.2083333333vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .list-scene_example__ttl {
    font-size: 23.5294117647px;
  }
}
.list-price dl {
  display: flex;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 15px;
       column-gap: 15px;
}
.list-price dt {
  background: #002687;
  color: #fff;
  padding: 5px 20px;
}
.list-event__item, .list-lesson__item {
  border-radius: 30px;
}
.list-event__img, .list-lesson__img {
  width: 300px;
  min-width: 300px;
  aspect-ratio: 300/200;
}
.list-event__bx, .list-lesson__bx {
  width: 100%;
}
.list-event__item {
  background: #f9f0f1;
}
.list-event__bx {
  display: flex;
  flex-direction: column;
  row-gap: 20px;
}
.list-event__ttl {
  font-family: "Zen Maru Gothic", serif;
  font-weight: bold;
  background: #ee3a19;
  color: #fff;
  padding: 10px 20px;
  font-size: 26px;
  font-size: 2.6rem;
}
@media screen and (max-width: 768px) {
  .list-event__ttl {
    font-size: 36px;
    font-size: 4.6875vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .list-event__ttl {
    font-size: 21.1764705882px;
  }
}
.list-event__day {
  display: flex;
  -moz-column-gap: 15px;
       column-gap: 15px;
}
.list-event__day dt {
  white-space: nowrap;
  color: #002687;
  font-weight: bold;
}
.list-event__link {
  justify-content: space-between;
  align-items: flex-start;
  -moz-column-gap: 40px;
       column-gap: 40px;
  padding: 60px;
}
.list-lesson__item {
  background: #fff;
  padding: 40px;
}
.list-lesson__ttl {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  font-family: "Zen Maru Gothic", serif;
  font-weight: bold;
  border-bottom: solid 1px #555555;
  padding-bottom: 10px;
}
.list-lesson__ttl-txt, .list-lesson__ttl-price {
  max-width: 50%;
}
.list-lesson__ttl-txt {
  display: flex;
  flex-wrap: wrap;
  color: #ee3a19;
  font-size: 26px;
  font-size: 2.6rem;
}
@media screen and (max-width: 768px) {
  .list-lesson__ttl-txt {
    font-size: 36px;
    font-size: 4.6875vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .list-lesson__ttl-txt {
    font-size: 21.1764705882px;
  }
}
.list-lesson__ttl-price {
  white-space: pre-wrap;
  color: #002687;
  font-size: 20px;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .list-lesson__ttl-price {
    font-size: 30px;
    font-size: 3.90625vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .list-lesson__ttl-price {
    font-size: 17.6470588235px;
  }
}
.list-lesson_txt {
  white-space: pre-wrap;
}
.list-lesson .com-layout {
  justify-content: space-between;
  align-items: flex-start;
  -moz-column-gap: 40px;
       column-gap: 40px;
}
.list-circle__item {
  background: #fff;
  aspect-ratio: 1/1;
  border-radius: 50rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  row-gap: 20px;
}
.list-circle__item::before {
  content: "";
  display: block;
  width: 30px;
  aspect-ratio: 1/1;
  background-image: url("/img/common/ic-check.png");
  background-size: 100%;
}
.list-circle__txt {
  font-weight: bold;
  font-size: 26px;
  font-size: 2.6rem;
}
@media screen and (max-width: 768px) {
  .list-circle__txt {
    font-size: 36px;
    font-size: 4.6875vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .list-circle__txt {
    font-size: 21.1764705882px;
  }
}
.list-circle__txt span {
  font-size: 20px;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .list-circle__txt span {
    font-size: 30px;
    font-size: 3.90625vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .list-circle__txt span {
    font-size: 17.6470588235px;
  }
}
.list-step__item {
  width: 320px;
  max-width: 100%;
  position: relative;
  text-align: center;
}
.list-step__item:not(:last-child)::after {
  content: "";
  display: block;
  width: 17px;
  aspect-ratio: 17/23;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  background: #ee3a19;
  position: absolute;
  top: 0;
  left: 100%;
  transform: translate(18.5px, 153px);
}
.list-step__bx {
  width: 100%;
  aspect-ratio: 1/1;
  border-radius: 50rem;
  background: #002687;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  row-gap: 25px;
}
.list-step__ttl {
  font-family: "Zen Maru Gothic", serif;
  font-weight: bold;
  font-size: 26px;
  font-size: 2.6rem;
}
@media screen and (max-width: 768px) {
  .list-step__ttl {
    font-size: 36px;
    font-size: 4.6875vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .list-step__ttl {
    font-size: 21.1764705882px;
  }
}
.list-step__ttl span {
  font-size: 22px;
  font-size: 2.2rem;
}
@media screen and (max-width: 768px) {
  .list-step__ttl span {
    font-size: 32px;
    font-size: 4.1666666667vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .list-step__ttl span {
    font-size: 18.8235294118px;
  }
}
.list-step__txt {
  margin-top: 20px;
}
.list-anchor .arw-wht::after {
  transform: translateY(-50%) rotate(90deg);
}
.list-anchor .arw-wht:hover::after {
  transform: translateY(calc(-50% + 2px)) rotate(90deg);
}
.list-map__item, .list-parking__item, .list-guide__item {
  display: flex;
  flex-direction: column;
  text-align: center;
  row-gap: 20px;
}
.list-map__txt, .list-parking__txt, .list-guide__txt {
  line-height: 1.3636363636;
}
.list-map__num {
  font-family: "Zen Maru Gothic", serif;
  font-weight: bold;
  width: 80px;
  background: #ee3a19;
  color: #fff;
  border-radius: 50rem;
  padding: 3px;
  line-height: 1;
  text-align: center;
  margin: 0 auto;
  font-size: 26px;
  font-size: 2.6rem;
}
@media screen and (max-width: 768px) {
  .list-map__num {
    font-size: 36px;
    font-size: 4.6875vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .list-map__num {
    font-size: 21.1764705882px;
  }
}
.list-parking__item, .list-guide__item {
  width: 340px;
  max-width: 100%;
}
.list-guide__item {
  position: relative;
  row-gap: 10px;
}
.list-guide__pickup {
  display: flex;
  align-items: flex-end;
  -moz-column-gap: 5px;
       column-gap: 5px;
  background: #ee3a19;
  color: #fff;
  line-height: 1;
  font-weight: bold;
  font-family: "Zen Maru Gothic", serif;
  font-weight: bold;
  padding: 3px 10px 7px 10px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.list-guide__pickup::before {
  content: "";
  display: block;
  width: 24px;
  aspect-ratio: 24/14;
  background-image: url("/img/access/ic-bus.png");
  background-size: 100%;
}
.list-guide__img {
  width: 100%;
  aspect-ratio: 340/200;
}
.list-guide__bx {
  background: #f9f0f1;
  padding: 20px 30px;
  display: flex;
  flex-direction: column;
  row-gap: 15px;
  height: 100%;
}
.list-guide__ttl {
  width: 100%;
  font-family: "Zen Maru Gothic", serif;
  font-weight: bold;
  color: #002687;
  text-align: center;
  border-bottom: solid 1px #002687;
  font-size: 26px;
  font-size: 2.6rem;
}
@media screen and (max-width: 768px) {
  .list-guide__ttl {
    font-size: 36px;
    font-size: 4.6875vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .list-guide__ttl {
    font-size: 21.1764705882px;
  }
}
.list-label dl {
  background: #fff;
  border-radius: 20px;
  padding: 20px 30px;
  display: flex;
  flex-direction: column;
  row-gap: 10px;
}
.list-label dt {
  color: #ee3a19;
  font-weight: bold;
}

.com-gmap {
  max-width: 100%;
}
.com-gmap iframe {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 100%;
}
.com-layout {
  display: flex;
}
.com-tel .tel {
  font-family: "Zen Maru Gothic", serif;
  font-weight: bold;
  line-height: 1;
}
.com-info {
  display: flex;
  -moz-column-gap: 20px;
       column-gap: 20px;
}
.com-info .com-tel {
  display: flex;
  flex-direction: column;
}
.com-info .btn-comment {
  margin-bottom: 10px;
  font-weight: bold;
}
.com-info .btn-comment__inner {
  display: flex;
  flex-direction: column;
  text-align: center;
  row-gap: 5px;
}
.com-info .btn-comment__inner span {
  line-height: 1;
}

#com-reserve .bnr-bx {
  background: url("/img/common/reserve-bg.png") center center no-repeat;
  background-size: cover;
}
#com-reserve .bnr-txt {
  padding: 5px 30px 10px 40px;
}
#com-reserve .obj-temple2 {
  position: relative;
}
#com-reserve .obj-temple2::after {
  left: 0;
  bottom: 0;
  transform: translate(-60px, 40px);
  z-index: 1;
}

.tag-main__list {
  font-weight: 500;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 5px;
  font-size: 18px;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .tag-main__list {
    font-size: 28px;
    font-size: 3.6458333333vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .tag-main__list {
    font-size: 16.4705882353px;
  }
}
.tag-main__link {
  display: block;
  background: #ee3a19;
  color: #fff;
  padding: 10px 20px;
}
.tag-main__link:hover {
  opacity: 0.8;
}
.tag-sub__list {
  display: flex;
  flex-wrap: wrap;
  font-weight: normal;
  gap: 5px 10px;
  font-size: 20px;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .tag-sub__list {
    font-size: 30px;
    font-size: 3.90625vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .tag-sub__list {
    font-size: 17.6470588235px;
  }
}
.tag-sub__item {
  line-height: 1;
  background: #ee3a19;
  color: #fff;
  padding: 5px 10px 7px 10px;
}

.ttl-main {
  font-family: "Zen Maru Gothic", serif;
  font-weight: bold;
}
.ttl-sub {
  font-family: "Zen Maru Gothic", serif;
  font-weight: bold;
  font-weight: 600;
  border-left: solid #ee3a19 6px;
  border-bottom: solid 1px #d5e7dc;
  background: #f5f5f5;
  padding: 10px 20px 15px 20px;
  margin-bottom: 30px;
  font-size: 24px;
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .ttl-sub {
    font-size: 34px;
    font-size: 4.4270833333vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .ttl-sub {
    font-size: 20px;
  }
}
.ttl-01, .ttl-02, .ttl-03 {
  font-family: "Zen Maru Gothic", serif;
  font-weight: bold;
  background: #002687;
  color: #fff;
  padding: 11px 20px;
  border-radius: 10px;
  font-size: 40px;
  font-size: 4rem;
}
@media screen and (max-width: 768px) {
  .ttl-01, .ttl-02, .ttl-03 {
    font-size: 50px;
    font-size: 6.5104166667vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .ttl-01, .ttl-02, .ttl-03 {
    font-size: 29.4117647059px;
  }
}
.ttl-02 {
  border-radius: 0;
  padding: 25px 20px 20px;
  font-size: 26px;
  font-size: 2.6rem;
}
@media screen and (max-width: 768px) {
  .ttl-02 {
    font-size: 36px;
    font-size: 4.6875vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .ttl-02 {
    font-size: 21.1764705882px;
  }
}
.ttl-03 {
  background: #ee3a19;
  border-radius: 0;
  text-align: center;
  padding: 20px;
  font-size: 35px;
  font-size: 3.5rem;
}
@media screen and (max-width: 768px) {
  .ttl-03 {
    font-size: 45px;
    font-size: 5.859375vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .ttl-03 {
    font-size: 26.4705882353px;
  }
}

.txt-plain {
  line-height: 1.8181818182;
}

ruby {
  ruby-position: over;
}
ruby rt {
  font-size: 12px;
  font-size: 1.2rem;
}
@media screen and (max-width: 768px) {
  ruby rt {
    font-size: 22px;
    font-size: 2.8645833333vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  ruby rt {
    font-size: 12.9411764706px;
  }
}

#header-bar {
  padding: 0 2.08%;
  position: sticky;
  top: 0;
  left: 0;
  z-index: 88;
}

.header-nav {
  margin-top: 15px;
}
.header-nav__list {
  display: flex;
  justify-content: flex-end;
  font-family: "Zen Maru Gothic", serif;
  font-weight: bold;
  font-weight: bold;
  font-size: 20px;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .header-nav__list {
    font-size: 30px;
    font-size: 3.90625vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .header-nav__list {
    font-size: 17.6470588235px;
  }
}
.header-nav__item {
  line-height: 1;
  display: flex;
  align-items: center;
}
.header-nav__item:not(:first-child)::before {
  content: "";
  display: block;
  width: 6px;
  aspect-ratio: 1/1;
  border-radius: 50rem;
  background: #555555;
  margin: 0 10px;
}
.header-nav__link:hover {
  opacity: 0.8;
}
.header-nav .current {
  color: #ee3a19;
}

.sv {
  width: 100%;
  aspect-ratio: 1920/500;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.sv-ttl {
  font-family: "Zen Maru Gothic", serif;
  font-weight: bold;
  background: #002687;
  color: #fff;
  line-height: 1;
  padding: 2.6vw 3vw;
  font-size: 40px;
  font-size: 2.0833333333vw;
}
@media screen and (max-width: 1120px) {
  .sv-ttl {
    font-size: 23.5294117647px;
  }
}
@media screen and (min-width: 1920px) {
  .sv-ttl {
    font-size: 40px;
  }
}
.sv-stay {
  background: url("/img/stay/sv.png") center center no-repeat;
  background-size: cover;
}
.sv-rental-space {
  background: url("/img/rental-space/sv.png") center center no-repeat;
  background-size: cover;
}
.sv-fortune-school {
  background: url("/img/fortune-school/sv.png") center center no-repeat;
  background-size: cover;
}
.sv-access {
  background: url("/img/access/sv.png") center center no-repeat;
  background-size: cover;
}
.sv-news {
  background: url("/img/news/sv.png") center center no-repeat;
  background-size: cover;
}
.sv-contact {
  background: url("/img/contact/sv.png") center center no-repeat;
  background-size: cover;
}
.sv-privacy {
  background: url("/img/privacy/sv.png") center center no-repeat;
  background-size: cover;
}
.sv-site {
  background: url("/img/site/sv.png") center center no-repeat;
  background-size: cover;
}
.sv-complete {
  background: url("/img/complete/sv.png") center center no-repeat;
  background-size: cover;
}
.sv-notfound {
  background: url("/img/notfound/sv.png") center center no-repeat;
  background-size: cover;
}

.top-stay, .top-menu, .top-info, .top-reserve {
  padding: 130px 0 0;
}

.top-stay .stay-bnr {
  background-image: linear-gradient(90deg, #ee3a19 25%, #e92811 25%, #e92811 50%, #ee3a19 50%, #ee3a19 75%, #e92811 75%, #e92811);
  background-size: 40px 40px;
  background-attachment: fixed;
}
.top-stay .stay-bnr__link {
  display: block;
  width: 100%;
  padding: 15px;
  position: relative;
}
.top-stay .stay-bnr__link:hover .stay-bnr__ttl, .top-stay .stay-bnr__link:hover .stay-bnr__txt {
  opacity: 0.8;
}
.top-stay .stay-bnr__link:hover .stay-bnr__img img {
  transform: scale(102%);
  opacity: 0.8;
}
.top-stay .stay-bnr__inner {
  width: 100%;
  height: 100%;
  background: url("/img/top/stay-bg.png") right center no-repeat;
  background-size: auto 100%;
  background-color: #fff;
}
.top-stay .stay-bnr__bx {
  width: 600px;
  max-width: 100%;
  text-align: center;
}
.top-stay .stay-bnr__comment {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-60%, -15px);
  z-index: 1;
}
.top-stay .stay-bnr__ttl, .top-stay .stay-bnr__txt {
  transition: 0.4s;
}
.top-stay .stay-bnr__txt {
  line-height: 1.5384615385;
}
.top-stay .stay-bnr__txt span {
  border-bottom: dotted 1px #555555;
}
.top-stay .obj-flag {
  position: relative;
  z-index: 1;
}
.top-stay .obj-flag::after {
  content: "";
  display: block;
  width: 100px;
  aspect-ratio: 100/157;
  background-image: url("/img/top/stay-illust-flag.png");
  background-size: 100%;
  position: absolute;
  right: 0;
  bottom: 0;
  transform: translate(20px, 15px);
  z-index: 1;
}

.top-access {
  padding: 90px 0 100px 0;
  background: url("/img/top/access-bg.png") left bottom no-repeat;
  background-size: auto;
}
.top-access .access-ttl em {
  padding: 0 10px;
}
.top-access .access-txt {
  line-height: 2.2727272727;
}
.top-access .access-img {
  margin-right: -180px;
}
.top-access .img-03 {
  margin-top: 50px;
}
.top-access .obj-bird::before {
  top: 0;
  left: 0;
  transform: translate(-250px, -20px);
}
.top-access .obj-cloud::after {
  top: 0;
  right: 0;
  transform: translate(130px, -40px);
}

.top-scene .ttl-main {
  margin-bottom: 50px;
}
.top-scene .obj-temple1::after {
  left: 0;
  bottom: 0;
  transform: translate(-290px, 60px);
}
.top-scene .obj-matsuri::before {
  right: 0;
  bottom: 0;
  transform: translate(300px, -35px);
}

.top-menu .ttl-main {
  margin-bottom: 20px;
  font-size: 50px;
  font-size: 5rem;
}
@media screen and (max-width: 768px) {
  .top-menu .ttl-main {
    font-size: 60px;
    font-size: 7.8125vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .top-menu .ttl-main {
    font-size: 35.2941176471px;
  }
}
.top-menu .menu-item, .top-menu .menu-bx {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.top-menu .menu-item {
  padding: 50px 0;
}
.top-menu .menu-item__stay {
  background: url("/img/top/menu-bg-stay.png") center center no-repeat;
  background-size: cover;
}
.top-menu .menu-item__rental {
  background: url("/img/top/menu-bg-rent.png") center center no-repeat;
  background-size: cover;
}
.top-menu .menu-item__fortune {
  background: url("/img/top/menu-bg-fortune-school.png") center center no-repeat;
  background-size: cover;
}
.top-menu .menu-bx {
  width: 400px;
  max-width: 100%;
  height: 300px;
  background: rgba(255, 255, 255, 0.8);
  text-align: center;
}
.top-menu .menu-txt {
  line-height: 1.5909090909;
}
.top-menu .btn {
  margin-top: 15px;
}

.top-info .ttl-main {
  margin-bottom: 70px;
}
.top-info .obj-animal::after {
  right: 0;
  bottom: 0;
  transform: translate(330px, 150px);
}

.top-news {
  padding: 130px 0;
}
.top-news .ttl-main {
  margin-bottom: 60px;
}
.top-news .btn {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
}

#ctn-lower section {
  padding: 120px 0;
}
#ctn-lower .ttl-main {
  text-align: center;
  margin-bottom: 70px;
  font-size: 55px;
  font-size: 5.5rem;
}
@media screen and (max-width: 768px) {
  #ctn-lower .ttl-main {
    font-size: 65px;
    font-size: 8.4635416667vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  #ctn-lower .ttl-main {
    font-size: 38.2352941176px;
  }
}

.lower-stay_info .obj-bird::before {
  top: 0;
  left: 0;
  transform: translateX(-110px);
}
.lower-stay_info .obj-cloud::after {
  top: 0;
  right: 0;
  transform: translateX(-130px);
}

.lower-rent_about {
  background: url("/img/rental-space/about-bg.png") left bottom no-repeat;
  background-size: auto;
}
.lower-rent_scene .obj-bird::before {
  top: 0;
  left: 0;
  transform: translate(-70px, -15px);
}
.lower-rent_scene .obj-cloud::after {
  top: 0;
  right: 0;
  transform: translateY(-20px);
}
.lower-rent_price .obj-temple1::after {
  left: 0;
  bottom: 0;
  transform: translate(-45px, 175px);
}

.lower-fortune_about .obj-cloud::after {
  top: 0;
  left: 0;
  transform: translateX(-40px) scaleX(-1);
}
.lower-fortune_about .obj-matsuri::before {
  right: 0;
  bottom: 0;
  transform: translate(150px, 40px);
}
.lower-fortune_profile .list-data dt {
  color: #ee3a19;
  font-weight: bold;
}
.lower-fortune_lesson .obj-temple1::after {
  right: 0;
  bottom: 0;
  transform: translate(300px, 170px) scaleX(-1);
}

.lower-access_map .obj-bird::before {
  top: 0;
  left: 0;
}
.lower-access_map .obj-cloud::after {
  top: 0;
  right: 0;
  transform: translateX(-90px);
}

#footer {
  padding: 100px 0;
}

.footer-nav {
  width: 720px;
  max-width: 100%;
  margin: 40px auto 0 auto;
  border-top: solid 1px #555555;
  padding-top: 20px;
}
.footer-nav__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px 20px;
  font-size: 16px;
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  .footer-nav__list {
    font-size: 26px;
    font-size: 3.3854166667vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 539px) {
  .footer-nav__list {
    font-size: 15.2941176471px;
  }
}
.footer-nav__link:hover {
  opacity: 0.8;
}/*# sourceMappingURL=style.css.map */