<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";
.o_c {
  overflow: clip;
}

.bg08 {
  background-color: #082242;
}

#container {
  overflow: hidden;
}

.main.pt180 {
  padding-top: 104px;
}

.img .w100 {
  width: 100%;
}

.mb0sp {
  margin-bottom: 0;
}

.mb100sp {
  margin-bottom: 100px;
}

.mb80sp {
  margin-bottom: 80px;
}

.mb60sp {
  margin-bottom: 60px;
}

.mb40sp {
  margin-bottom: 40px;
}

.mb20sp {
  margin-bottom: 20px;
}

.w95sp_l {
  width: calc(100% - 30px);
  margin-right: auto;
}

.w95sp_r {
  display: block;
  width: calc(100% - 30px);
  margin-left: auto;
}

.font-go.txt12 {
  line-height: 1.666;
}

body {
  background-color: #061b37;
  color: #f4f4f2;
  font-size: 16px;
  min-width: 375px;
  animation: fadeIn 2s ease 0s 1 normal;
  -webkit-animation: fadeIn 2s ease 0s 1 normal;
}
body.first header {
  opacity: 0;
  z-index: -1;
}
body.first header .logo_box {
  opacity: 0;
  z-index: -1;
}
body:not(.first) header {
  z-index: 9995;
  opacity: 1;
}
body:not(.first) header .logo_box {
  opacity: 1;
  z-index: 9995;
}
body:not(.first) .opening {
  display: none;
}

header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
  margin: 0px;
  height: 68px;
  align-items: center;
  width: 100%;
  padding: 0 20px;
}
header .logo_box {
  position: relative;
  z-index: 99;
}
header .logo_box img {
  height: 36px;
  width: auto;
}
header.fixed {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
  background-color: #061b37;
  height: 46px;
  transition: all 0.4s linear;
}
header.fixed .logo_box img {
  height: 30px;
}
header.fixed #gnavi .toggle {
  top: 0px;
}
header .h_line {
  margin-right: 80px;
}
header .h_line a {
  padding: 5px 0;
  height: 24px;
  box-sizing: border-box;
  display: grid;
  place-items: center;
}

.bt_ar24 {
  width: 19px;
  height: 19px;
  fill: transparent;
  stroke: #f4f4f2;
  transition: all 0.4s linear;
}

.bt60 .icon {
  width: 46px;
  height: 45px;
  display: grid;
  place-items: center;
}
.bt60 .icon::before {
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  position: absolute;
  background: url(/villa/img/common/bt_waku60_w.svg) 50% 50% no-repeat;
  background-size: auto 100% !important;
  transition: all 0.4s linear;
  border-radius: 100%;
}
.bt60 .icon.w30 {
  position: relative;
  width: 26px;
  height: 25px;
  display: grid;
  place-items: center;
}
.bt60 .icon.w30::before {
  background: url(/villa/img/common/bt_waku30_w.svg) 50% 50% no-repeat;
}
.bt60 .icon.w30 .bt_ar12 {
  width: 10px;
  height: 10px;
}
.bt60#pagetop .icon {
  transform: rotate(-90deg);
}

.tit_wrap {
  padding-bottom: 40px;
}
.tit_wrap .tit_en {
  font-size: 60px;
  line-height: 1;
  z-index: 3;
}
.tit_wrap .tit_en:not(.mb0sp) {
  margin-bottom: 10px;
}
.tit_wrap .tit_en .font-en {
  font-size: min(146px, 15vw);
}
.tit_wrap .tit_en .txt80 {
  font-size: 60px;
  padding-bottom: 15px;
}
.tit_wrap .tit_en .txt50sp {
  font-size: min(50px, 12.5vw);
  white-space: nowrap;
}
.tit_wrap .tit_en .txt36 {
  font-size: 30px;
}
.tit_wrap .tit_en .txt44 {
  font-size: 34px;
  line-height: 1;
}
.tit_wrap .tit_en .txt42sp {
  font-size: 42px;
  padding-top: 8px;
}
.tit_wrap .tit_jp {
  font-size: 16px;
  padding-left: 20px;
  line-height: 1.25;
  letter-spacing: 0.02em;
}
.tit_wrap .tit_jp:before {
  display: block;
  content: "";
  width: 5px;
  height: 5px;
  top: 0;
  bottom: 0;
  left: 5px;
  margin: auto;
  position: absolute;
  border-radius: 3px;
  background: #f4f4f2;
}
.tit_wrap .bt_more {
  margin-top: 20px;
}

.stit_wrap {
  margin-bottom: 46px;
}
.stit_wrap .stit_en {
  z-index: 3;
}
.stit_wrap .stit_en.txt240 {
  transform: translateX(-0.16em);
  font-size: min(99px, 25.6vw);
  line-height: 0.85;
  margin-bottom: 20px;
}
.stit_wrap .stit_en .font-en.txt60 {
  font-size: 60px;
}
.stit_wrap .stit_en .font-en.txt80 {
  font-size: min(60px, 16vw);
  line-height: 0.9;
}
.stit_wrap .stit_en .font-en.txt80.mb20sp {
  margin-bottom: 20px;
}
.stit_wrap .stit_en .font-en.txt50sp {
  font-size: min(50px, 16vw);
}
.stit_wrap .stit18 {
  font-size: 16px;
  padding-left: 14px;
  line-height: 1;
}
.stit_wrap .stit18:not(.ml0) {
  margin-left: 7%;
}
.stit_wrap .stit18:before {
  display: block;
  content: "";
  width: 5px;
  height: 5px;
  top: 5px;
  left: 0;
  margin: auto;
  position: absolute;
  border-radius: 3px;
  background: #f4f4f2;
}
.stit_wrap .stit18.txt_rl {
  padding-left: 0;
}
.stit_wrap .stit18.txt_rl:before {
  top: -12px;
  left: 0;
  right: 0;
}

.intro + .txt_txt {
  padding: 80px 0;
}
.intro + .txt_txt .txt_box01 {
  margin-bottom: 20px;
}

.bt_more a {
  position: relative;
  letter-spacing: 0.1em;
}
.bt_more a:before {
  display: block;
  content: "";
  width: 0px;
  height: 1px;
  bottom: 0;
  left: 0;
  margin: auto;
  position: absolute;
  background: #f4f4f2;
  transition: all 0.3s linear;
}
.bt_more a .bt_icon,
.bt_more a &gt; .pr {
  padding-right: 36px;
  font-size: 16px;
}
.bt_more a .bt_icon:before,
.bt_more a &gt; .pr:before {
  display: block;
  content: "";
  width: 26px;
  height: 26px;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  position: absolute;
  background: url(/villa/img/common/bt_waku_w.svg) 50% 50% no-repeat;
  background-size: auto 100% !important;
  /*transition: all 0.3s linear;*/
  border-radius: 100%;
}
.bt_more a .bt_icon:after,
.bt_more a &gt; .pr:after {
  display: block;
  content: "";
  top: 0;
  bottom: 0;
  right: 8px;
  margin: auto;
  position: absolute;
  width: 11px;
  height: 11px;
  transition: all 0.3s linear;
  background: url(/villa/img/common/bt_ar_w.svg) 50% 50% no-repeat;
  background-size: auto 100% !important;
  z-index: 9;
}
.bt_more a.txt_bl:before {
  background: #061b37;
}
.bt_more a.txt_bl &gt; .pr:before {
  background: url(/villa/img/common/bt_waku_bl.svg) 50% 50% no-repeat;
}
.bt_more a.txt_bl &gt; .pr:after {
  background: url(/villa/img/common/bt_ar_bl.svg) 50% 50% no-repeat;
}

.map_box .stit_wrap2 {
  gap: 20px;
}
.map_box .img06 {
  margin-bottom: 100px;
}
.map_box .map {
  margin: 40px auto 60px;
}

#contact #btn_book,
#esthetic_reservation #btn_book,
#confirm #btn_book {
  display: none !important;
}

#btn_book {
  position: fixed;
  top: calc(100dvh - 84px);
  right: 0;
  margin: auto;
  z-index: 98;
  transition: all 0.4s linear;
}
#btn_book.is-hidden {
  transform: translateX(100%);
}
#btn_book a {
  vertical-align: bottom;
  padding: 8px 18px 14px 10px;
  background: #20566d;
  line-height: 1;
  transition: all 0.4s linear;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 2px;
}
#btn_book a .txt18 {
  padding-left: 1em;
}
#btn_book a .txt18:before {
  display: block;
  content: "";
  width: 4px;
  height: 4px;
  top: 0;
  left: 5px;
  bottom: 0;
  margin: auto;
  position: absolute;
  border-radius: 100%;
  background: #f4f4f2;
}
#btn_book a .txt14 {
  font-size: 14px;
}
#btn_book .is-hidden {
  display: none;
}

.feed_clm3 .swiper-slide {
  margin-bottom: 40px;
}
.feed_clm3 .swiper-slide .txt_box {
  text-align: left;
}
.feed_clm3 .swiper-slide .txt20 {
  margin: 20px 0 10px;
}
.feed_clm3 .swiper-slide .date {
  margin: 18px 0 10px;
}
.feed_clm3 .pager {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 14px;
}
.feed_clm3 .swiper-button-next,
.feed_clm3 .swiper-button-prev {
  position: relative;
  cursor: pointer;
  width: 46px;
  height: 45px;
  left: 0;
}
.feed_clm3 .swiper-button-prev {
  transform: scale(-1, 1);
}

#main .swiper-pagination {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 6px;
  bottom: 20px;
}
#main .swiper-pagination .swiper-pagination-bullet {
  width: 16px;
  height: 2px;
  background: #f4f4f2;
  opacity: 0.15;
  border-radius: 0;
  margin: 0 !important;
  transition: all 0.4s linear;
}
#main .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  opacity: 1;
}

a.blank {
  background: url(/villa/img/common/i_blank.svg) 100% 50% no-repeat;
  padding-right: 21px;
}

#access {
  padding: 100px 0;
}
#access .map_wrap {
  aspect-ratio: 315/210;
  margin-bottom: 10px;
}
#access .map_wrap iframe {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#access .map_txt {
  align-items: flex-end;
}
#access .info_table_pc {
  display: none;
}
#access .info_table_sp {
  width: 100%;
  text-align: center;
}
#access .info_table_sp th {
  vertical-align: middle;
}
#access .info_table_sp th:first-child {
  border-right: 4px solid #061b37;
}
#access .info_table_sp th:last-child {
  border-left: 4px solid #061b37;
}
#access .info_table_sp td {
  vertical-align: middle;
}
#access .info_table_sp td.bo_dash {
  padding: 8px;
}
#access .info_table_sp td.bo_dash .ib {
  padding: 20px 10px;
}
#access .info_table_sp td.bo_dash .ib:before, #access .info_table_sp td.bo_dash .ib:after {
  display: block;
  content: "";
  width: 2px;
  height: 15px;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  position: absolute;
  background-image: repeating-linear-gradient(#f4f4f2, #f4f4f2 3px, transparent 3px, transparent 6px);
  background-position: 50% bottom;
  background-repeat: repeat-y;
  background-size: 2px 100%;
}
#access .info_table_sp td.bo_dash .ib:after {
  top: auto;
  bottom: 0;
}
#access .info_table_sp .bg01 {
  padding: 20px;
  background: #0d3356;
}
#access .info_table_sp .bg01 .txt24 {
  margin-bottom: 12px;
}

#activity_sec {
  padding: 50px 0 100px;
}
#activity_sec .stit_wrap_box .txt_box {
  margin-bottom: 40px;
}
#activity_sec .stit_wrap_box .bt_more {
  margin-bottom: 40px;
}
#activity_sec .feed_clm3_wrap:before {
  display: block;
  content: "";
  width: 31px;
  height: 100%;
  top: 0;
  bottom: 0;
  right: 100%;
  margin: auto;
  position: absolute;
  background: #061b37;
  z-index: 99;
}
#activity_sec.bg08 .feed_clm3_wrap:before {
  background: #082242;
}

#blog_sev {
  padding: 100px 0 100px;
}
#blog_sev .stit_wrap_box {
  padding-right: 7%;
  margin-bottom: 40px;
}

#faq_sev {
  padding: 100px 0;
}

.faq_list li + li {
  margin-top: 14px;
}
.faq_list li i {
  font-size: 22px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 15px;
  margin: auto;
  font-weight: 600;
  height: 1.6em;
  vertical-align: middle;
}
.faq_list li input {
  display: none;
}
.faq_list li label {
  font-size: 16px;
  background: #0d3356;
  display: block;
  font-weight: bold;
  position: relative;
  padding: 10px 48px;
  box-sizing: border-box;
  cursor: pointer;
}
.faq_list li label .icon::before, .faq_list li label .icon::after {
  content: "";
  width: 16px;
  height: 2px;
  background: #f4f4f2;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
  z-index: 2;
}
.faq_list li label .icon::after {
  transform: translateY(-50%) rotate(90deg);
  transition: 0.5s;
}
.faq_list li .a_box {
  max-height: 0;
  opacity: 0;
  padding: 0 15px 0 48px;
  box-sizing: border-box;
  visibility: hidden;
  transition: 0.5s;
  overflow: hidden;
  position: relative;
  background: #f4f4f2;
  color: #061b37;
}
.faq_list li .a_box i {
  color: #061b37;
}
.faq_list li .a_box p {
  margin: 0;
  font-weight: 700;
  line-height: 1.5;
  font-size: 14px;
}
.faq_list li input:checked ~ .a_box {
  max-height: none;
  height: auto;
  padding: 10px 15px 10px 48px;
  opacity: 1;
  visibility: visible;
}
.faq_list li input:checked ~ label .icon::after {
  opacity: 0;
}

.bn_furusato {
  padding: 100px 0;
}
.bn_furusato a {
  background-color: #0d3356;
  gap: 30px;
  margin-inline: auto;
  padding: 30px;
}
.bn_furusato a .txt36 {
  font-size: 30px;
  text-transform: uppercase;
  line-height: 1;
  margin: 5px 0 15px;
}
.bn_furusato a .txt20 {
  font-size: 18px;
  line-height: 30px;
  letter-spacing: 0.04em;
}
.bn_furusato a .bt_icon {
  width: 30px;
  height: 30px;
  position: absolute;
  bottom: 30px;
  right: 30px;
  margin: auto;
}
.bn_furusato a .bt_icon:before {
  width: 30px;
  height: 30px;
}
.bn_furusato a .bt_icon:after {
  right: 10px;
}

#reserve {
  background: url(/villa/img/common/bg_reserve_sp.jpg) 50% 0 no-repeat;
  background-size: 100% auto;
  padding-top: 180px;
}
#reserve .stit_wrap {
  margin-bottom: 20px;
}
#reserve .inbox {
  background: #20566d;
  padding: 30px 29px 96px;
  position: relative;
}
#reserve .inbox .icon {
  width: 46px;
  height: 45px;
  position: absolute;
  bottom: 30px;
  right: 30px;
  margin: auto;
  display: grid;
  place-items: center;
}
#reserve .inbox .icon .bt_ar24 {
  width: 19px;
  height: 19px;
  fill: transparent;
  stroke: #f4f4f2;
}
#reserve .inbox .icon::before {
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  position: absolute;
  background: url(/villa/img/common/bt_waku60_w.svg) 50% 50% no-repeat;
  background-size: 46px 45px;
  border-radius: 100%;
}

.bg08 + .breadcrumb {
  background-color: #082242;
}

.breadcrumb {
  padding: 0 0 15px 0;
}
.breadcrumb ol {
  font-weight: 500;
  text-align: left;
  line-height: 1.4;
  font-size: 12px;
}
.breadcrumb ol li {
  display: inline;
}
.breadcrumb ol li:not(:first-child):before {
  content: "|";
  line-height: 0.8;
  padding-left: 12px;
  padding-right: 8px;
}
.breadcrumb ol li span {
  display: inline;
}
.breadcrumb ol li a {
  display: inline;
  text-decoration: underline;
}
.breadcrumb ol li a:hover {
  text-decoration: none;
}
.breadcrumb ol li a.current {
  text-decoration: none;
  pointer-events: none;
}
.breadcrumb ol li a.current:hover {
  text-decoration: none;
}

footer {
  padding: 80px 0 60px;
}

footer .nav_clm4 .inbox,
#sitemap .nav_clm4 .inbox {
  display: contents;
}
footer .nav_clm4 .box_top,
#sitemap .nav_clm4 .box_top {
  order: 1;
  align-items: flex-start;
}
footer .nav_clm4 .box_btm,
#sitemap .nav_clm4 .box_btm {
  order: 2;
}
footer .nav_clm4 .box_btm .txt_link li,
#sitemap .nav_clm4 .box_btm .txt_link li {
  width: 150px;
}
footer .nav_clm4 .box_btm .txt_link li:first-child,
#sitemap .nav_clm4 .box_btm .txt_link li:first-child {
  order: 1;
}
footer .nav_clm4 .box_btm .txt_link li:nth-child(2),
#sitemap .nav_clm4 .box_btm .txt_link li:nth-child(2) {
  order: 3;
}
footer .nav_clm4 .box_btm .txt_link li:nth-child(3),
#sitemap .nav_clm4 .box_btm .txt_link li:nth-child(3) {
  order: 2;
}
footer .nav_clm4 .box_btm .txt_link li:nth-child(4),
#sitemap .nav_clm4 .box_btm .txt_link li:nth-child(4) {
  order: 4;
}
footer .nav_clm4 .logo_wrap,
#sitemap .nav_clm4 .logo_wrap {
  order: 3;
}
footer .nav_clm4 .tel_wrap,
#sitemap .nav_clm4 .tel_wrap {
  order: 4;
}
footer .nav_clm4 .sns_btn,
#sitemap .nav_clm4 .sns_btn {
  order: 5;
}
footer .nav_clm4 .f_nav01,
#sitemap .nav_clm4 .f_nav01 {
  width: 180px;
}
footer .nav_clm4 .f_nav03,
#sitemap .nav_clm4 .f_nav03 {
  width: calc(100% - 195px);
}
footer .nav_clm4 .txt_wrap,
#sitemap .nav_clm4 .txt_wrap {
  margin-bottom: 30px;
}
footer .nav_clm4 .txt_wrap .subtxt,
#sitemap .nav_clm4 .txt_wrap .subtxt {
  margin-bottom: 30px;
}
footer .nav_clm4 .txt_wrap .txt_add,
#sitemap .nav_clm4 .txt_wrap .txt_add {
  margin-bottom: 25px;
}
footer .nav_clm4 .txt_wrap .txt_tel,
#sitemap .nav_clm4 .txt_wrap .txt_tel {
  margin-bottom: 6px;
}
footer .nav_clm4 .txt_wrap .txt_time,
#sitemap .nav_clm4 .txt_wrap .txt_time {
  margin-bottom: 30px;
}
footer .nav_clm4 .nav_pa &gt; li a,
#sitemap .nav_clm4 .nav_pa &gt; li a {
  font-size: 16px;
  position: relative;
}
footer .nav_clm4 .nav_pa &gt; li + li,
#sitemap .nav_clm4 .nav_pa &gt; li + li {
  margin-top: 44px;
}
footer .nav_clm4 .nav_pa ul,
#sitemap .nav_clm4 .nav_pa ul {
  margin-top: 10px;
}
footer .nav_clm4 .nav_pa .ch a,
#sitemap .nav_clm4 .nav_pa .ch a {
  margin-left: 0;
  font-size: 12px;
  margin-top: 14px;
  position: relative;
  padding-left: 12px;
}
footer .nav_clm4 .nav_pa .ch a:before,
#sitemap .nav_clm4 .nav_pa .ch a:before {
  content: "";
  top: 7px;
  left: 1px;
  margin: auto;
  position: absolute;
  width: 3px;
  height: 3px;
  background-color: #fff;
  border-radius: 100%;
}
footer .btn_reserve,
#sitemap .btn_reserve {
  margin-bottom: 60px;
}
footer .btn_reserve a,
#sitemap .btn_reserve a {
  width: 240px;
  height: 58px;
}
footer .copy,
#sitemap .copy {
  font-family: Playfair Display;
  font-size: 12px;
  font-weight: 600;
  line-height: 16px;
  letter-spacing: 0.08em;
}

footer .nav_clm4 .box_btm {
  width: 100%;
  border-bottom: 1px solid #20566d;
  margin-bottom: 50px;
  padding-bottom: 10px;
}

#sitemap .nav_clm4 .box_btm {
  width: 100%;
}

#gnavi {
  position: absolute;
  top: 0;
  left: 0;
  right: 0px;
  margin: auto;
  pointer-events: none;
}
#gnavi .toggle {
  pointer-events: all;
  width: 40px;
  height: 46px;
  text-align: center;
  box-sizing: border-box;
  top: 10px;
  right: 20px;
  position: absolute;
  cursor: pointer;
  z-index: 9996;
}
#gnavi .toggle span {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  width: 40px;
  height: 2px;
  background: #f4f4f2;
  display: inline-block;
  transition: all 0.5s;
  box-sizing: border-box;
}
#gnavi .toggle span:nth-of-type(1) {
  top: 17px;
}
#gnavi .toggle span:nth-of-type(2) {
  top: 29px;
}
#gnavi .menu_toggle:checked + label .toggle span:nth-of-type(1) {
  transform: translateY(6px) rotate(-335deg);
}
#gnavi .menu_toggle:checked + label .toggle span:nth-of-type(2) {
  transform: translateY(-6px) rotate(335deg);
}

#gnavi {
  width: 100%;
}
#gnavi .menu_open {
  background-color: #061b37;
  color: #fff;
  z-index: 9994;
  width: 100%;
  position: absolute;
  top: -100%;
  left: 0;
  right: 0;
  text-align: center;
  opacity: 0;
  transition: all 0.3s;
  overflow-y: auto;
}
#gnavi .menu_open a:not(.justify) {
  display: block;
}
#gnavi .menu_open .ac {
  display: inline-block;
  position: absolute;
  bottom: 0;
  right: 0;
  top: 0;
  margin: 0;
  width: 55px;
  height: 55px;
  cursor: pointer;
  z-index: 9;
}
#gnavi .menu_open .ac::before {
  display: block;
  content: "+";
  font-weight: bold;
  font-size: 120%;
  top: 0;
  right: 8px;
  margin: auto;
  position: absolute;
}
#gnavi .menu_open .acc_btn2.active .ac::before {
  content: "−";
}
#gnavi .menu_open .nav_pa &gt; li {
  line-height: 55px;
  border-bottom: 1px solid #20566d;
}
#gnavi .menu_open .acc_open {
  padding-bottom: 2px;
}
#gnavi .menu_open a.no_link {
  pointer-events: none;
}
#gnavi .menu_open .ch {
  line-height: 2;
  font-size: 12px;
  padding-bottom: 12px;
}
#gnavi .menu_open .ch a {
  font-size: 12px;
  position: relative;
  padding-left: 12px;
}
#gnavi .menu_open .ch a:before {
  content: "";
  top: 47%;
  left: 1px;
  margin: auto;
  position: absolute;
  width: 3px;
  height: 3px;
  background-color: #f4f4f2;
  border-radius: 100%;
}
#gnavi .menu_open .txt_wrap {
  margin-bottom: 30px;
}
#gnavi .menu_open .txt_wrap .subtxt {
  margin-bottom: 30px;
}
#gnavi .menu_open .txt_wrap .txt_add {
  margin-bottom: 25px;
}
#gnavi .menu_open .txt_wrap .txt_tel {
  margin-bottom: 6px;
}
#gnavi .menu_open .txt_wrap .txt_tel a {
  display: inline-block;
}
#gnavi .menu_open .txt_wrap .insta {
  margin-bottom: 30px;
}
#gnavi .menu_open .inbox {
  display: contents;
}
#gnavi .menu_open .txt_link li {
  width: 150px;
}
#gnavi .menu_open .txt_link li:first-child {
  order: 1;
}
#gnavi .menu_open .txt_link li:nth-child(2) {
  order: 3;
}
#gnavi .menu_open .txt_link li:nth-child(3) {
  order: 2;
}
#gnavi .menu_open .txt_link li:nth-child(4) {
  order: 4;
}
#gnavi .menu_open .btn_reserve {
  order: 1;
  margin-bottom: 14px;
}
#gnavi .menu_open .box_top {
  order: 2;
}
#gnavi .menu_open .box_btm {
  order: 3;
}
#gnavi .menu_open .txt_wrap {
  order: 4;
}
#gnavi .menu_open .txt_wrap .tel_wrap {
  order: 2;
}
#gnavi .menu_open .txt_wrap .logo_wrap {
  order: 1;
}
#gnavi .menu_open .txt_wrap .copy_wrap {
  order: 3;
}
#gnavi .menu_open .txt_wrap .copy_wrap .sns_wrap {
  gap: 22px;
}
#gnavi #menu_toggle:checked ~ .menu_open {
  pointer-events: all;
  top: 0;
  height: 100vh;
  display: block;
  opacity: 1;
  padding: 80px 0 40px;
  box-sizing: border-box;
}
#gnavi #menu_toggle:checked ~ .menu_open .logo_box_w {
  position: fixed;
  z-index: 9994;
}

.btn_reserve a {
  background: #20566d;
  width: 100%;
  height: 52px;
  line-height: 52px;
  padding: 0px 26px 0px 20px;
  transition: all 0.4s linear;
  align-items: center;
  gap: 20px;
  display: flex;
}
.btn_reserve a.w787, .btn_reserve a.este {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  font-size: 16px;
  height: 60px;
  line-height: 60px;
  padding: 0px 22px 0px 20px;
}
.btn_reserve a .bt_ar24 {
  width: 16px;
  height: 16px;
}
.btn_reserve a:hover {
  color: #20566d;
  background-color: #f4f4f2;
}
.btn_reserve a:hover .bt_ar24 {
  stroke: #20566d;
  transform: translateX(5px);
}

body:has(#menu_toggle:checked) header {
  position: fixed;
}
body:has(#menu_toggle:checked) header:before {
  display: block;
  content: "";
  width: 100%;
  height: 68px;
  top: 0;
  left: 0;
  right: 0;
  position: absolute;
  background: #061b37;
  z-index: 9995;
}
body:has(#menu_toggle:checked) header.fixed {
  height: 68px;
}
body:has(#menu_toggle:checked) header #gnavi .toggle {
  top: 8px;
}

.nav_clm4 .txt_wrap .txt14 {
  line-height: 1.714;
}
.nav_clm4 .box_btm .txt_link {
  margin-top: 40px;
  font-size: 12px;
  gap: 16px 10px;
}
.nav_clm4 .sns_btn {
  gap: 22px;
  margin-bottom: 30px;
}

#fix_btn {
  position: absolute;
  bottom: 60px;
  right: 30px;
  width: 46px;
  z-index: 999;
}
#fix_btn img {
  width: 46px;
  height: 45px;
}

/*-----------------------
	fadein
------------------------*/
.block.fadein,
.g_fade .img.fadein,
.img_sp.fadein,
.img.fadein {
  opacity: 0;
  transition-delay: 300ms;
  transition-duration: 1000ms;
  transition-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);
  will-change: opacity;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.block.fadein.scrollin,
.g_fade .img.fadein.scrollin,
.img_sp.fadein.scrollin,
.img.fadein.scrollin {
  opacity: 1;
  transition-duration: 1000ms;
  transition-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.g_fade.fadein .txt_f,
.stit_wrap .stit_en.fadein,
.stit_wrap.fadein,
.stit_wrap2.fadein,
.txt_box02.fadein,
.txt_box.fadein,
.txt.fadein {
  opacity: 0;
  filter: blur(10px);
}

.g_fade.fadein.scrollin .txt_f,
.stit_wrap .stit_en.fadein.scrollin,
.stit_wrap2.fadein.scrollin,
.stit_wrap.fadein.scrollin,
.txt_box02.fadein.scrollin,
.txt_box.fadein.scrollin,
.txt.fadein.scrollin {
  opacity: 1 !important;
  filter: blur(0px);
  transition-duration: 1000ms;
  transition-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);
  transition-delay: 0.5s;
}

.fadein.delay_sp {
  transition-delay: 0.35s;
}

.fadeinp.delay2_sp {
  transition-delay: 0.7s;
}

.fadein.delay3_sp {
  transition-delay: 1.05s;
}

.fadein.delay4 {
  transition-delay: 1.05s;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
#page404 .img_txt {
  flex-direction: column-reverse;
  gap: 40px;
}
#page404 .tit404 {
  align-items: flex-end;
  gap: 10px;
  margin-bottom: 40px;
}
#page404 .tit404 .txt160 {
  font-size: 110px;
  line-height: 1;
}
#page404 .tit404 .txt48 {
  font-size: 34px;
  line-height: 1.1;
  transform: translateY(10px);
}
#page404 .txt_box .txt30 {
  font-size: 20px;
}
/*# sourceMappingURL=sp.css.map */</pre></body></html>