/* Localized text replaces image-based Japanese navigation and headings. */
html { -webkit-text-size-adjust: 100%; }
body { font-family: Arial, "Noto Sans KR", sans-serif; }
.localized-art { display: inline-block; box-sizing: border-box; max-width: 100%; color: inherit; line-height: 1.45; font-weight: bold; white-space: normal; overflow-wrap: anywhere; }
#nav .localized-art { padding: 12px 8px; font-size: 17px; }
.contents-link a { display: flex; align-items: center; justify-content: center; min-height: 96px; padding: 12px; box-sizing: border-box; border: 1px solid rgba(255,255,255,.55); background: rgba(0,0,0,.65); }
.contents-link .localized-art { font-size: 23px; text-align: center; }
.title-box .localized-art { padding: 24px 12px; font-size: 36px; }
#header-top > h1 .localized-art { display: block; padding: 30px 20px; color: #fff; font-size: clamp(24px, 4vw, 56px); text-shadow: 0 2px 6px #000; text-align: center; }
.main-img-top h2 .localized-art, #header-top > h3 .localized-art { color: #fff; padding: 16px; font-size: 24px; text-shadow: 0 2px 6px #000; }
.menu-tab .localized-art, .tab .localized-art { padding: 12px; }
.guide-subcontents h3 .localized-art, .sns-subcontents h4 .localized-art { padding: 12px 0; font-size: 24px; }
@media(max-width: 767px) {
 .contents-link .localized-art { font-size: 18px; }
 .contents-link a { min-height: 82px; padding: 8px; }
 .title-box .localized-art { font-size: 28px; }
 .contents01 h3, .contents01 h4, .contents02 h3 { overflow-wrap: anywhere; }
}

.sns-subcontents { background-image: none; }
#tabs a { display: block; padding: 12px 8px; border: 1px solid #aaa; background: #222; color: white; }

.title-box, .guide-subcontents h3, .sns-subcontents h4 { color: #fff; }
.sns-subcontents .contents-right { background-image: none; }
#nav a, .contents-link a { color: #fff; }
#header-top > h1 { top: 230px; }
@media(max-width: 640px) {
 .contents01-box, .contents02-box { box-sizing: border-box; max-width: 92%; }
 .contents01-box h3, .contents02-box h3 { box-sizing: border-box; max-width: 100%; }
 .title-box .localized-art { padding: 12px; }
}

/* Match the Japanese site's social button colors. */
.btn-news p a, .sns-box h6 a { display: block; padding: 14px 20px; color: #fff; text-align: center; }
.btn-news a[href*="instagram.com"], .sns-box h6 a[href*="instagram.com"] { background: #ed147d; }
.btn-news a[href*="facebook.com"] { background: linear-gradient(90deg, #19449b, #0868b1); }
.btn-news a[href*="twitter.com"], .btn-news a[href*="x.com"] { background: linear-gradient(90deg, #181818, #39334f); }

#nav ul { max-width: 900px; }

/* Keep the expanded mobile navigation above the positioned hero artwork. */
@media (max-width: 640px) {
 .nav-header-sp { position: relative; z-index: 10; }
}

/* Match the original mobile footer: magenta, purple, and the map pin. */
.footer-link { z-index: 20; padding-bottom: env(safe-area-inset-bottom, 0px); }
.footer-link ul { width: 100%; max-width: 371px; margin: 0 auto; align-items: stretch; }
.footer-link ul li { flex: 158 1 0; min-width: 0; }
.footer-link ul li:last-child { flex: 55 1 0; }
.footer-link ul li a { display: flex; align-items: center; justify-content: center; box-sizing: border-box; height: 55px; min-height: 55px; min-width: 0; padding: 0 8px; border: 0; color: #fff; text-decoration: none; }
.footer-link ul li:first-child a { background: #9e0d5d; }
.footer-link ul li:nth-child(2) a { background: #7e2c8d; }
.footer-link ul li:last-child a { padding: 0; background: #000; }
.footer-link .localized-art { padding: 0; color: #fff; font-size: 16px; font-weight: 500; letter-spacing: .02em; line-height: 1.25; text-align: center; }
.footer-link ul li:last-child img { display: block; width: 55px; max-width: 100%; height: 55px; object-fit: contain; }
.footer-link ul li a:hover { opacity: .85; }
