.favicon_rt {
background-image: url(https://travel.rakuten.co.jp/favicon.ico);
}
.favicon_booking {
background-image: url(https://cf.bstatic.com/static/img/favicon/9ca83ba2a5a3293ff07452cb24949a5843af4592.svg);
}
.favicon_jalan {
background-image: url(https://www.jalan.net/favicon.ico);
}
.favicon_expedia {
background-image: url(https://www.expedia.co.jp/favicon.ico);
}
.favicon_ytravel {
background-image: url(https://s.yimg.jp/c/icon/s/bsc/2.0/favicon.ico);
}
.favicon_airbnb {
background-image: url(https://a0.muscache.com/airbnb/static/logotype_favicon-21cc8e6c6a2cca43f061d2dcabdf6e58.ico);
}
.favicon_agoda {
background-image: url(https://www.agoda.com/favicon.ico);
}
.favicon_hotels {
background-image: url(https://jp.hotels.com/favicon.ico);
}
.favicon_rurubu {
background-image: url(https://cdn6.agoda.net/images/default/favicon/rurubu/rurubu-favicon@2x.ico);
}
.favicon_trip {
background-image: url(https://jp.trip.com/favicon.ico);
}
.favicon {
width: 16px;
height: 16px;
background-size: contain;
background-repeat: no-repeat;
display: inline-block;
margin-right: 8px;
}
html {
font-family: -apple-system, BlinkMacSystemFont, Helvetica Neue, Segoe UI, Hiragino Kaku Gothic ProN, Hiragino Sans, ヒラギノ角ゴ ProN W3, Arial, メイリオ, Meiryo, sans-serif;
}
a {
text-decoration: none;
color: inherit;
}  .font80 {
font-size: 80%;
}
.shortMessage p {
font-size: 13px;
}
.logo {}
.logo img {
width: 90px;
height: 25px;
}
.navbar-brand:hover {
text-decoration: none;
}
.facility a:hover {
text-decoration: none;
}
.facilities-on {
background-color: #898888;
color: #FFF;
}
#map {  height: 600px;
width: 100%;
margin-bottom: 10px;
border-radius: 15px;
}
.hotelNameTag {
background-color: #FFFFFF;
border-radius: 8px;
color: #111111;
font-size: 11px;
font-weight: bold;
padding: 10px 15px;
position: relative;
border-radius: 45px;
}
.hotelNameTag::after {
content: "";
position: absolute;
left: 50%;
top: 100%;
transform: translate(-50%, 0);
width: 0;
height: 0;
border-left: 8px solid transparent;
border-right: 8px solid transparent;
border-top: 8px solid #FFFFFF;
}
.swiper-container {
position: relative;
overflow: hidden;
height: 40vw;
max-height: 600px;
min-height: 400px;
background-color: #F7F7F7;
}
.swiper-slide {
display: flex;
align-items: flex-start;
justify-content: center;
}
.swiper-slide img {
display: inline;
width: auto;
max-width: 100%;
max-height: 100%;
align-self: center;
}
.swiper-button-next,
.swiper-button-prev {
--swiper-navigation-color: #33b3b4;
}
.swiper-pagination-bullet {
background-color: #33b3b4;
}
.slider-caption {
position: absolute;
bottom: 30px;
padding: 10px 20px;
margin: 0;
width: 100%;
background-color: rgba(0, 0, 0, 0.50);
color: #fff;
font-size: 70%;
}
#panorama {
width: 100%;
min-height: 350px;
}
.facilityInfo .inactive svg {
fill: #DEE2E6;
}
.facilityInfo .inactive p {
color: #DEE2E6;
}
.facilityInfo .list-inline-item {
width: 65px;
}
.facilityInfo svg {
width: 32px;
height: 32px;
}
.facilityInfo p {
font-size: 80%;
}
.map {
width: 100%;
height: 300px;
}
.priceBox_list {
display: flex;
flex-wrap: nowrap;
justify-content: space-between;
}
.priceBox_link_list {
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-bottom: 0;
}
.priceBox_link_list .list-inline-item {
padding: 15px 0;
margin: 0;
}
.breadcrumb {
margin: 0;
padding: 0;
list-style: none;
font-size: 14px;
}
.breadcrumb li {
display: inline;
list-style: none;
}
.breadcrumb li:after {
content: '>';
padding: 0 0.4em;
}
.breadcrumb li:last-child:after {
content: '';
}
.magazine-breadcrumb {
--bs-breadcrumb-divider: ">";
}
.magazine-breadcrumb li:after {
content: none;
}  .facility-header {
padding: 24px 0;
}
.facility-title {
font-size: 26px; font-weight: 700; margin-bottom: 4px;
}
.facility-location {
color: var(--primary-text); text-decoration: underline; font-size: 14px; font-weight: 500;
} .photo-gallery {
display: grid;
grid-template-columns: 2fr 1fr 1fr;
grid-template-rows: 200px 200px;
gap: 8px;
border-radius: 12px;
overflow: hidden;
margin-bottom: 40px;
}
.gallery-item {
position: relative;
overflow: hidden;
background-color: #f0f0f0;
cursor: pointer;
} .gallery-item:nth-child(1) {
grid-column: 1 / 2;
grid-row: 1 / 3;
}
.gallery-img {
width: 100%; height: 100%; object-fit: cover;
transition: opacity 0.2s, transform 0.3s;
}
.gallery-item:hover .gallery-img { opacity: 0.9; transform: scale(1.02); } .show-all-photos {
position: absolute;
bottom: 20px; right: 20px;
background: white; border: 1px solid #222;
padding: 6px 14px; border-radius: 8px;
font-size: 14px; font-weight: 500;
display: flex; align-items: center; gap: 8px;
cursor: pointer; box-shadow: 0 2px 4px rgba(0,0,0,0.1);
transition: transform 0.1s;
z-index: 10;
}
.show-all-photos:active { transform: scale(0.96); }
.show-all-photos-center {
display: flex;
justify-content: center;
}
.show-all-photos-center .show-all-photos {
position: static;
bottom: auto; right: auto;
margin-top: 8px;
background: white;
border: 1px solid #222;
padding: 8px 18px;
}
.show-all-photos-center .show-all-photos:hover {
background: #f7f7f7;
} .section-title {
font-size: 20px; font-weight: 600; margin-bottom: 20px; padding-bottom: 10px;
border-bottom: 1px solid #f0f0f0;
} .pano-container {
width: 100%; height: 400px; background: #eee;
border-radius: 12px; overflow: hidden; position: relative;
display: flex; align-items: center; justify-content: center;
} .info-table {
width: 100%;
border-collapse: collapse;
}
.info-table th, .info-table td {
padding: 12px 0;
border-bottom: 1px solid #f0f0f0;
font-size: 15px;
}
.info-table th {
width: 30%;
font-weight: 500;
color: var(--primary-text);
}
.info-table td {
color: var(--secondary-text);
} .facilityInfo svg {
width: 32px; height: 32px; fill: var(--primary-text); margin-bottom: 8px;
}
.facilityInfo .list-inline-item {
width: 90px; margin-bottom: 24px; margin-right: 8px;
display: flex; flex-direction: column; align-items: center;
justify-content: flex-start; vertical-align: top;
}
.facilityInfo p {
font-size: 13px; margin: 0; color: var(--primary-text);
line-height: 1.3; font-weight: 500;
}
.facilityInfo .inactive svg, .facilityInfo .inactive p {
opacity: 0.2; color: var(--secondary-text); fill: var(--secondary-text);
}
.facilityInfo .inactive p { text-decoration: line-through; }
.price-highlight {
font-size: 22px; font-weight: 700; font-feature-settings: "palt";
}
.price-period {
font-size: 14px; color: var(--secondary-text);
}
.booking-btn {
display: block; width: 100%; padding: 12px;
border-radius: 8px; margin-bottom: 10px;
font-weight: 600; text-align: center;
transition: opacity 0.2s; border: none;
}
.booking-btn:hover { opacity: 0.9; text-decoration: none; color: white; } .btn-official { background: linear-gradient(135deg, #3AB8B9 0%, #2AA0A2 100%); color: white; }
.btn-rakuten { background: #BF0000; color: white; }
.btn-booking { background: #003580; color: white; }
.btn-airbnb { background: #FF385C; color: white; }
.booking-card .list-group-item {
border-style: dotted; border-color: #eee; padding: 12px 0;
}
.booking-card .list-group-item:last-child { border-bottom: none; } .modal-header {
position: absolute;
top: 0; left: 0; right: 0;
z-index: 1055;
background: rgba(0,0,0,0.5);
border-bottom: none;
padding: 1rem;
}
.btn-close-white {
filter: invert(1) grayscale(100%) brightness(200%);
}
.photo-modal {
background: rgba(0,0,0,0.95);
color: white;
}
.photo-modal-body {
padding: 1rem 2rem 2rem;
display: flex;
flex-direction: column;
gap: 1rem;
height: calc(100vh - 56px);
overflow: hidden;
}
.photo-main {
flex: 1 1 auto;
background: #000;
border-radius: 12px;
overflow: hidden;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
gap: 10px;
max-height: 60vh;
}
.photo-main img {
max-width: 100%;
max-height: 100%;
object-fit: contain;
display: block;
margin: 0 auto;
}
.photo-thumbs {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
gap: 0.85rem;
overflow-y: auto;
padding: 0.5rem 0.25rem 0.75rem;
max-height: 40vh;
}
.photo-thumb {
border: none;
padding: 0;
background: transparent;
border-radius: 8px;
overflow: hidden;
position: relative;
cursor: pointer;
outline: none;
}
.photo-thumb img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: transform 0.2s, opacity 0.2s;
}
.photo-thumb.active::after {
content: "";
position: absolute;
inset: 0;
border: 2px solid #3AB8B9;
border-radius: 8px;
box-shadow: 0 0 0 1px #3AB8B9;
}
.photo-thumb:hover img {
transform: scale(1.02);
opacity: 0.9;
} @media (max-width: 768px) {
.photo-gallery { 
grid-template-columns: 1fr; 
grid-template-rows: 250px; 
gap: 0;
}
.gallery-item:nth-child(n+2) { display: none; }
.photo-modal-body {
padding: 1rem;
gap: 0.75rem;
}
.photo-main {
min-height: 55vh;
max-height: 60vh;
}
.photo-thumbs {
display: flex;
flex-wrap: nowrap;
gap: 0.75rem;
overflow-x: auto;
overflow-y: hidden;
padding: 0.5rem 0.25rem 0.75rem;
max-height: none;
}
.photo-thumb {
flex: 0 0 100px;
height: 100px;
}
}
.photo-counter {
display: inline-block;
padding: 6px 10px;
border-radius: 12px;
background: rgba(0,0,0,0.55);
color: #fff;
font-size: 12px;
letter-spacing: 0.05em;
text-align: center;
} .photo-mobile-slider {
position: relative;
margin-bottom: 32px;
}
.photo-mobile-main {
position: relative;
width: 100%;
aspect-ratio: 4 / 3;
background: #f5f5f5;
border-radius: 12px;
overflow: hidden;
display: flex;
align-items: center;
justify-content: center;
}
.photo-mobile-main img {
width: 100%;
height: 100%;
object-fit: contain;
background: #f5f5f5;
}
.photo-mobile-counter {
position: absolute;
right: 12px;
bottom: 12px;
padding: 6px 10px;
border-radius: 12px;
background: rgba(0,0,0,0.55);
color: #fff;
font-size: 12px;
letter-spacing: 0.05em;
} .magazine-page {
background: var(--bg-color);
color: var(--primary-text);
}
.magazine-breadcrumb {
--bs-breadcrumb-divider: ">";
}
.magazine-breadcrumb .breadcrumb-item {
font-size: 12px;
color: var(--secondary-text);
}
.magazine-breadcrumb .breadcrumb-item.active { color: var(--primary-text); }
.magazine-breadcrumb .breadcrumb-item + .breadcrumb-item::before {
font-size: 10px;
}
@media (min-width: 768px) {
.magazine-breadcrumb .breadcrumb-item { font-size: 14px; }
.magazine-breadcrumb .breadcrumb-item + .breadcrumb-item::before { font-size: 12px; }
}
.magazine-page .article-container {
max-width: 840px;
margin: 0 auto;
display: flex;
flex-direction: column;
gap: 24px;
}
.magazine-page .article-header {
padding-top: 24px;
padding-bottom: 8px;
width: 100%;
}
@media (min-width: 768px) {
.magazine-page .article-header { padding-top: 32px; }
}
.magazine-page .article-title {
font-size: 24px;
font-weight: 700;
line-height: 1.5;
margin-bottom: 16px;
color: var(--primary-text);
word-break: break-word;
}
@media (min-width: 768px) {
.magazine-page .article-title { font-size: 32px; }
}
.magazine-page .article-meta {
color: var(--secondary-text);
font-size: 13px;
display: flex;
align-items: center;
flex-wrap: wrap;
gap: 12px;
margin-bottom: 0;
}
@media (min-width: 768px) {
.magazine-page .article-meta { font-size: 14px; gap: 16px; }
}
.magazine-page .sns-share { display: flex; gap: 12px; }
.magazine-page .sns-btn {
width: 36px;
height: 36px;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
color: #fff !important;
font-size: 18px;
}
.magazine-page .sns-btn.twitter { background-color: #000000; }
.magazine-page .sns-btn.facebook { background-color: #1877F2; }
.magazine-page .sns-btn.line { background-color: #00C300; }
.magazine-page .sns-btn.copy { background-color: #888; transition: box-shadow 0.2s, opacity 0.2s; }
.magazine-page .sns-btn.copy.copied { box-shadow: 0 0 0 2px var(--accent-color) inset; }
.magazine-page .article-featured-image {
width: 100%;
height: auto;
border-radius: 12px;
object-fit: cover;
aspect-ratio: 16/9;
box-shadow: 0 4px 12px rgba(0,0,0,0.05);
display: block;
margin-top: 0;
margin-bottom: 24px;
}
.magazine-page .article-body {
font-size: 15px;
color: #333;
line-height: 1.8;
}
@media (min-width: 768px) {
.magazine-page .article-body { font-size: 16px; line-height: 1.9; }
}
.magazine-page .toc-box {
background-color: #F8FBFD;
border: 1px solid #E1F0F5;
border-radius: 8px;
padding: 20px;
margin: 0 0 32px 0;
}
@media (min-width: 768px) {
.magazine-page .toc-box { padding: 24px; margin: 0 0 40px 0; }
}
.magazine-page .toc-title {
font-weight: 700;
font-size: 16px;
margin-bottom: 12px;
color: var(--primary-text);
display: flex;
align-items: center;
gap: 8px;
}
@media (min-width: 768px) {
.magazine-page .toc-title { font-size: 18px; margin-bottom: 16px; }
}
.magazine-page .toc-list { margin: 0; padding-left: 20px; }
.magazine-page .toc-list li { margin-bottom: 8px; }
.magazine-page .toc-list a { color: var(--primary-text); text-decoration: underline; text-decoration-color: #ddd; }
.magazine-page .toc-list a:hover { color: var(--accent-color); text-decoration-color: var(--accent-color); }
.magazine-page .article-body h2.wp-block-heading {
font-size: 20px;
font-weight: 700;
margin-top: 48px;
margin-bottom: 20px;
padding-bottom: 8px;
border-bottom: 2px solid var(--accent-color);
}
@media (min-width: 768px) {
.magazine-page .article-body h2.wp-block-heading {
font-size: 24px;
margin-top: 56px;
margin-bottom: 24px;
padding-bottom: 12px;
}
}
.magazine-page .article-body h3.wp-block-heading {
font-size: 18px;
font-weight: 700;
margin-top: 32px;
margin-bottom: 16px;
padding-left: 12px;
border-left: 4px solid var(--accent-color);
}
@media (min-width: 768px) {
.magazine-page .article-body h3.wp-block-heading {
font-size: 20px;
margin-top: 40px;
padding-left: 16px;
border-left: 5px solid var(--accent-color);
}
}
.magazine-page .article-body h4.wp-block-heading {
font-size: 16px;
font-weight: 700;
margin-top: 24px;
margin-bottom: 16px;
}
@media (min-width: 768px) {
.magazine-page .article-body h4.wp-block-heading {
font-size: 18px;
margin-top: 32px;
}
}
.magazine-page .article-body p { margin-bottom: 24px; }
.magazine-page .article-body .wp-block-image { margin: 24px 0; }
.magazine-page .article-body .wp-block-image img {
max-width: 100%;
height: auto;
border-radius: 8px;
box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}
.magazine-page .article-body .wp-block-image figcaption {
font-size: 12px;
color: #777;
text-align: center;
margin-top: 8px;
}
.magazine-page .article-body ul.wp-block-list,
.magazine-page .article-body ol.wp-block-list {
margin-bottom: 24px;
padding-left: 20px;
background: #f9f9f9;
padding: 24px 20px;
border-radius: 8px;
}
@media (min-width: 768px) {
.magazine-page .article-body ul.wp-block-list,
.magazine-page .article-body ol.wp-block-list {
padding-left: 24px;
padding: 24px 24px 24px 48px;
}
}
.magazine-page .article-body .wp-block-list li { margin-bottom: 8px; }
.magazine-page .article-body .wp-block-quote {
background: #f9f9f9;
border-left: 4px solid #ccc;
margin: 24px 0;
padding: 16px 20px;
font-style: italic;
color: #555;
}
@media (min-width: 768px) {
.magazine-page .article-body .wp-block-quote {
margin: 32px 0;
padding: 16px 24px;
}
}
.magazine-page .article-body .wp-block-quote p { margin-bottom: 0; }
.magazine-page .article-body .wp-block-quote cite {
display: block;
margin-top: 10px;
font-size: 0.8em;
color: #777;
font-style: normal;
text-align: right;
}
.magazine-page .article-body hr.wp-block-separator {
border: 0;
border-top: 1px solid #ddd;
margin: 32px 0;
opacity: 1;
}
@media (min-width: 768px) {
.magazine-page .article-body hr.wp-block-separator { margin: 48px 0; }
}
.magazine-page .article-body .wp-block-table {
margin-bottom: 24px;
overflow-x: auto;
}
.magazine-page .article-body .wp-block-table table {
width: 100%;
border-collapse: collapse;
font-size: 14px;
min-width: 500px;
}
.magazine-page .article-body .wp-block-table th,
.magazine-page .article-body .wp-block-table td {
border: 1px solid #ddd;
padding: 12px;
}
.magazine-page .article-body .wp-block-table th {
background-color: #f0f8fa;
font-weight: bold;
}
.magazine-page .article-body .wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
background-color: #f9f9f9;
}
.magazine-page .writer-profile {
margin-top: 40px;
padding: 20px;
background: #F8F9FA;
border-radius: 12px;
display: flex;
gap: 16px;
align-items: center;
flex-direction: column;
text-align: center;
}
@media (min-width: 768px) {
.magazine-page .writer-profile {
padding: 24px;
flex-direction: row;
text-align: left;
gap: 20px;
}
}
.magazine-page .writer-img,
.magazine-page .writer-avatar {
width: 80px;
height: 80px;
border-radius: 50%;
object-fit: cover;
border: 2px solid #fff;
box-shadow: 0 2px 6px rgba(0,0,0,0.1);
flex-shrink: 0;
}
.magazine-page .writer-avatar {
background-color: #3AB8B9;
font-size: 14px;
letter-spacing: 0.05em;
}
.magazine-page .writer-info h4 { font-size: 16px; font-weight: 700; margin-bottom: 8px; }
.magazine-page .writer-info p { font-size: 14px; color: var(--secondary-text); margin: 0; line-height: 1.6; }
.magazine-page .section-title {
font-size: 18px;
font-weight: 700;
margin-bottom: 20px;
padding-left: 12px;
border-left: 4px solid var(--accent-color);
}
@media (min-width: 768px) {
.magazine-page .section-title { font-size: 20px; margin-bottom: 24px; }
}
.magazine-page .card-article {
border: none;
transition: transform 0.2s;
height: 100%;
}
.magazine-page .card-article:hover { transform: translateY(-4px); }
.magazine-page .card-article-thumb {
position: relative;
padding-top: 56.25%; border-radius: 8px;
overflow: hidden;
background: #f0f0f0;
margin-bottom: 12px;
}
.magazine-page .card-article-img {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}
.magazine-page .card-article-title {
font-size: 15px;
font-weight: 700;
line-height: 1.5;
margin-bottom: 8px;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
}
.magazine-page .card-article-date { font-size: 12px; color: #999; }
@media (max-width: 576px) {
.magazine-page .article-featured-image { border-radius: 8px; }
}
.magazine-page .magazine-nav {
gap: 12px;
}
.magazine-page .magazine-nav-item {
flex: 1 1 0;
}
.magazine-page .magazine-nav-center {
min-width: 160px;
}
.magazine-page .nav-placeholder {
visibility: hidden;
display: inline-block;
} :root {
--primary-text: #222222; --secondary-text: #717171; --accent-color: #00B4D8; --bg-color: #FFFFFF; }
body {
font-family: 'Noto Sans JP', sans-serif;
background-color: var(--bg-color);
color: var(--primary-text);
line-height: 1.5;
-webkit-font-smoothing: antialiased;
padding-bottom: 80px; }
a:hover { 
color: var(--accent-color); 
text-decoration: none; 
} .icon {
width: 1em;
height: 1em;
vertical-align: -0.125em;
fill: none;
stroke: currentColor;
stroke-width: 2;
stroke-linecap: round;
stroke-linejoin: round;
} header {
background: var(--bg-color);
height: 64px;
} .logo-link {
display: flex;
align-items: center;
height: 100%;
}
.logo-img {
height: 36px;
width: auto;
display: block;
}
.header-link {
font-size: 14px;
font-weight: 500;
padding: 8px 16px;
border-radius: 20px;
transition: background 0.2s;
display: flex;
align-items: center;
gap: 4px;
}
.header-link .icon {
position: relative;
top: 1px;
}
.header-link:hover {
background-color: #f7f7f7;
color: inherit;
} .header-actions {
flex-wrap: nowrap;
}
@media (max-width: 576px) {
.header-link {
padding: 6px;
font-size: 13px;
gap: 4px;
}
.logo-img {
height: 30px;
}
} .hero-text-section {
padding: 30px 20px;
text-align: center;
}
.hero-title {
font-size: 1.25rem;
font-weight: 700;
margin-bottom: 8px;
color: var(--primary-text);
}
.hero-subtitle {
font-size: 0.875rem;
color: var(--secondary-text);
font-weight: 400;
} #map-container {
transition: all 0.3s ease-in-out;
} .property-card {
background: transparent;
display: flex;
flex-direction: column;
gap: 12px;
cursor: pointer;
height: 100%;
}
.card-img-wrapper {
position: relative;
aspect-ratio: 3 / 2;
border-radius: 12px;
overflow: hidden;
background: #f0f0f0;
}
.card-img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.3s;
}
.property-card:hover .card-img {
transform: scale(1.03);
}
.card-content {
display: flex;
flex-direction: column;
gap: 4px;
}
.card-title {
font-size: 16px;
font-weight: 600;
color: var(--primary-text);
margin: 0;
line-height: 1.4;
}
.amenity-list {
display: flex;
flex-wrap: wrap;
gap: 8px;
margin: 4px 0 8px;
}
.amenity-tag {
font-size: 11px;
color: var(--secondary-text);
background: #f7f7f7;
padding: 2px 6px;
border-radius: 4px;
display: flex;
align-items: center;
gap: 4px;
} .property-card .list-group-item {
background-color: transparent;
padding-left: 0;
padding-right: 0;
padding-top: 0.35rem;
padding-bottom: 0.35rem;
font-size: 0.875rem;
border-color: #f0f0f0;
border-style: dotted;
border-left: none;
border-right: none;
border-top: none;
}
.property-card .list-group-item:last-child {
border-bottom: none;
color: var(--accent-color);
}
.property-card .list-group-item span:first-child {
color: var(--secondary-text);
font-size: 12px;
}
.property-card .list-group-item span.fw-bold {
font-feature-settings: "palt";
} .map-float-btn-wrapper {
position: fixed;
bottom: 30px;
left: 0;
right: 0;
z-index: 1030;
display: flex;
justify-content: center;
pointer-events: none;
}
.map-float-btn {
pointer-events: auto;
background-color: #222222;
color: #ffffff;
border: none;
border-radius: 50px;
padding: 12px 24px;
font-weight: 600;
font-size: 14px;
box-shadow: 0 4px 10px rgba(0,0,0,0.3);
display: flex;
align-items: center;
gap: 8px;
transition: transform 0.2s, background-color 0.2s;
}
.map-float-btn:hover {
transform: scale(1.05);
background-color: #000000;
color: #ffffff;
} .footer-facility-list {
display: flex;
flex-wrap: wrap;
gap: 0.5rem 1rem;
}
.footer-facility-list li {
margin-bottom: 0;
}
@media (max-width: 576px) {
.hero-title { font-size: 1.1rem; }
.hero-subtitle { font-size: 0.8rem; }
}