#hapi-onsen-wp{--ink:#182d46;--blue:#233e60;--red:#bc422e;--cream:#fcf4e5;--muted:#526474;--line:#dedfdf;--teal:#22696b}#hapi-onsen-wp *{box-sizing:border-box}#hapi-onsen-wp{scroll-behavior:smooth;scroll-padding-top:86px}#hapi-onsen-wp{margin:0;background:#fff;color:var(--ink);font-family:system-ui,-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.85;-webkit-font-smoothing:antialiased}#hapi-onsen-wp a{color:inherit;text-underline-offset:4px}#hapi-onsen-wp button{font:inherit}#hapi-onsen-wp button,#hapi-onsen-wp a,#hapi-onsen-wp summary{-webkit-tap-highlight-color:transparent}#hapi-onsen-wp button:focus-visible,#hapi-onsen-wp a:focus-visible,#hapi-onsen-wp summary:focus-visible{outline:3px solid var(--red);outline-offset:5px}#hapi-onsen-wp h1,#hapi-onsen-wp h2,#hapi-onsen-wp h3,#hapi-onsen-wp p{margin:0}#hapi-onsen-wp h1,#hapi-onsen-wp h2,#hapi-onsen-wp h3{line-height:1.5}#hapi-onsen-wp svg{display:block;width:28px;height:28px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}#hapi-onsen-wp ruby{ruby-position:over}#hapi-onsen-wp rt{font-size:.55em;font-weight:500;letter-spacing:.04em;line-height:1}#hapi-onsen-wp.no-ruby rt{visibility:hidden}#hapi-onsen-wp img{display:block;max-width:100%}#hapi-onsen-wp .container{width:min(1180px,calc(100% - 64px));margin-inline:auto}#hapi-onsen-wp .skip{position:absolute;top:-90px;left:20px;padding:10px;background:white;z-index:100}#hapi-onsen-wp .skip:focus{top:10px}#hapi-onsen-wp .site-header{height:86px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}#hapi-onsen-wp .brand{display:flex;align-items:center;gap:13px;text-decoration:none}#hapi-onsen-wp .brand-word{font-size:26px;line-height:1.1;font-weight:900;letter-spacing:-1.2px}#hapi-onsen-wp .brand-word b{color:var(--red)}#hapi-onsen-wp .brand-label{border-left:1px solid #c4cbd1;padding-left:14px;font-size:14px;font-weight:650;letter-spacing:.03em}#hapi-onsen-wp .header-right{display:flex;align-items:center;gap:25px}#hapi-onsen-wp .header-link{font-size:14px;text-decoration:none}#hapi-onsen-wp .ruby-toggle{border:1px solid #c7cdd2;border-radius:6px;background:white;padding:7px 11px;cursor:pointer;color:var(--ink);font-size:14px;line-height:1.6}#hapi-onsen-wp .ruby-toggle span{color:var(--red);font-weight:750;margin-left:5px}#hapi-onsen-wp .hero{padding:38px 0 30px;display:grid;grid-template-columns:1.02fr 1.15fr;gap:42px;align-items:center}#hapi-onsen-wp .eyebrow{font-size:13px;letter-spacing:.16em;font-weight:700;color:var(--red);display:flex;gap:10px;align-items:center}#hapi-onsen-wp .eyebrow:before{content:"";width:26px;height:1px;background:currentColor}#hapi-onsen-wp .hero h1{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:54px;font-weight:650;letter-spacing:.04em;margin:16px 0 14px;line-height:1.45}#hapi-onsen-wp .hero h1 .underline{box-shadow:inset 0 -9px 0 #f4d4a2}#hapi-onsen-wp .hero-copy{color:var(--muted);max-width:31em;margin-top:20px}#hapi-onsen-wp .hero-note{display:flex;align-items:center;gap:8px;margin-top:23px;color:var(--teal);font-size:14px}#hapi-onsen-wp .hero-note svg{width:20px;height:20px}#hapi-onsen-wp .hero-art{position:relative;overflow:hidden;border-radius:12px;background:#e5eeeb;aspect-ratio:1.5;margin:0}#hapi-onsen-wp .hero-art img{width:100%;height:100%;object-fit:cover}#hapi-onsen-wp .art-caption{position:absolute;bottom:17px;left:18px;padding:8px 14px;border-radius:5px;background:rgba(255,255,255,.94);font-size:13px;letter-spacing:.05em;display:flex;align-items:center;gap:8px}#hapi-onsen-wp .art-caption span{color:var(--red);font-size:20px}#hapi-onsen-wp .jump-wrap{position:sticky;top:0;background:rgba(255,255,255,.97);z-index:10;border-block:1px solid var(--line);backdrop-filter:blur(10px)}#hapi-onsen-wp .jump-nav{display:flex;justify-content:center;overflow-x:auto;scrollbar-width:none}#hapi-onsen-wp .jump-nav a{white-space:nowrap;text-decoration:none;font-size:14px;font-weight:650;display:flex;align-items:center;gap:10px;padding:18px 30px;position:relative}#hapi-onsen-wp .jump-nav a+a:before{content:"";height:14px;width:1px;background:#d8dcdf;position:absolute;left:0}#hapi-onsen-wp .jump-nav a:hover,#hapi-onsen-wp .jump-nav a.active{color:var(--red)}#hapi-onsen-wp .jump-nav span{font-size:12px;letter-spacing:.1em;color:#81909d}#hapi-onsen-wp .section{padding:48px 0}#hapi-onsen-wp .section-heading{display:flex;gap:16px;align-items:flex-start;margin-bottom:26px}#hapi-onsen-wp .section-no{font-family:Georgia,serif;color:var(--red);font-size:20px;margin-top:5px;line-height:1.3}#hapi-onsen-wp .section-heading h2{font-size:27px;letter-spacing:.045em;line-height:1.65}#hapi-onsen-wp .section-heading p{color:var(--muted);font-size:15px;margin-top:3px}#hapi-onsen-wp .basics{padding:30px 0 40px}#hapi-onsen-wp .basics .section-heading{margin-bottom:18px}#hapi-onsen-wp .basics .section-heading h2{font-size:22px}#hapi-onsen-wp .essentials{display:grid;grid-template-columns:repeat(3,1fr);background:var(--cream);border-radius:10px;padding:24px 0}#hapi-onsen-wp .essential{padding:0 26px;display:flex;gap:14px;align-items:flex-start}#hapi-onsen-wp .essential+.essential{border-left:1px solid #e4dac9}#hapi-onsen-wp .icon-circle{background:white;border-radius:50%;width:45px;height:45px;display:grid;place-items:center;flex-shrink:0;color:var(--red)}#hapi-onsen-wp .icon-circle svg{width:25px;height:25px}#hapi-onsen-wp .essential h3{font-size:18px;font-weight:750;margin:1px 0 5px}#hapi-onsen-wp .essential p{font-size:14px;color:var(--muted);line-height:1.8}#hapi-onsen-wp .flow-section{padding-top:6px}#hapi-onsen-wp .steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:22px}#hapi-onsen-wp .step{position:relative;border-top:2px solid var(--blue);padding:21px 0 0}#hapi-onsen-wp .step-top{display:flex;align-items:center;justify-content:space-between;color:var(--blue);margin-bottom:17px}#hapi-onsen-wp .step-count{font:italic 36px/1 Georgia,serif;color:#a9b4bd}#hapi-onsen-wp .step-top svg{width:38px;height:38px;stroke-width:1.4}#hapi-onsen-wp .step h3{font-size:19px;letter-spacing:.025em;margin-bottom:11px}#hapi-onsen-wp .step p{color:var(--muted);line-height:1.85}#hapi-onsen-wp .step-tip{font-size:14px;color:var(--teal);background:#eef5f4;margin-top:15px;padding:9px 12px;border-radius:4px}#hapi-onsen-wp .manners{background:#f7f9fb}#hapi-onsen-wp .manners-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}#hapi-onsen-wp .manner{display:flex;gap:16px;border:1px solid #e0e5e9;background:white;padding:23px;border-radius:8px}#hapi-onsen-wp .manner-icon{color:var(--blue);width:40px;flex-shrink:0;position:relative;padding-top:3px}#hapi-onsen-wp .manner-icon .ng{position:absolute;top:-3px;left:20px;background:var(--red);color:white;border:2px solid white;border-radius:50%;height:19px;width:19px;font-size:14px;line-height:15px;text-align:center}#hapi-onsen-wp .manner h3{font-size:18px;margin-bottom:7px}#hapi-onsen-wp .manner p{font-size:15px;color:var(--muted);line-height:1.8}#hapi-onsen-wp .faq-wrap{display:grid;grid-template-columns:260px 1fr;gap:56px}#hapi-onsen-wp .faq-aside{background:var(--cream);padding:24px;border-radius:8px;align-self:start}#hapi-onsen-wp .faq-aside .stamp{font:500 40px/1.3 Georgia,serif;color:var(--red)}#hapi-onsen-wp .faq-aside h3{font-size:18px;margin:12px 0 10px}#hapi-onsen-wp .faq-aside p{font-size:15px;color:var(--muted)}#hapi-onsen-wp .faq-list{border-top:1px solid var(--line)}#hapi-onsen-wp details{border-bottom:1px solid var(--line)}#hapi-onsen-wp summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:15px;padding:20px 0;font-size:18px;font-weight:650;line-height:1.65}#hapi-onsen-wp summary::-webkit-details-marker{display:none}#hapi-onsen-wp summary .q{font-family:Georgia,serif;font-weight:500;color:var(--red);font-size:22px;flex-shrink:0}#hapi-onsen-wp summary:after{content:"+";font-size:23px;font-weight:400;margin-left:auto;color:var(--blue);padding-left:12px}#hapi-onsen-wp details[open] summary:after{content:"−"}#hapi-onsen-wp .answer{padding:0 32px 21px;color:var(--muted);font-size:16px}#hapi-onsen-wp .safety{background:var(--blue);color:white;border-radius:10px;padding:25px 30px;margin-top:37px;display:flex;gap:24px;align-items:flex-start}#hapi-onsen-wp .safety svg{width:31px;height:31px;color:#f3c17f;flex-shrink:0;margin-top:6px}#hapi-onsen-wp .safety h3{font-size:19px;margin-bottom:7px}#hapi-onsen-wp .safety p{font-size:15px;color:#e2e9f0;line-height:1.95}#hapi-onsen-wp .final-note{padding:28px 0 32px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:30px;align-items:center}#hapi-onsen-wp .final-note p{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:23px;font-weight:650;letter-spacing:.04em}#hapi-onsen-wp .travel-link{border:1px solid var(--blue);border-radius:5px;padding:12px 22px;text-decoration:none;font-size:15px;white-space:nowrap;transition:background .15s,color .15s}#hapi-onsen-wp .travel-link:hover{background:var(--blue);color:white}#hapi-onsen-wp .sources{padding:0 0 27px;color:var(--muted);font-size:12px;line-height:1.85}#hapi-onsen-wp .sources a{margin-right:16px}#hapi-onsen-wp .footer{background:#f3f5f7;padding:22px 0}#hapi-onsen-wp .footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:13px;color:var(--muted)}#hapi-onsen-wp .footer a{text-decoration:none}#hapi-onsen-wp .footer strong{font-size:17px;color:var(--blue)}@media(max-width:1000px){#hapi-onsen-wp .container{width:calc(100% - 40px)}#hapi-onsen-wp .hero{gap:28px}#hapi-onsen-wp .hero h1{font-size:42px}#hapi-onsen-wp .jump-nav a{padding-inline:22px}#hapi-onsen-wp .essential{padding-inline:19px;gap:10px}#hapi-onsen-wp .icon-circle{width:36px;height:36px}#hapi-onsen-wp .steps{gap:19px}#hapi-onsen-wp .step h3{font-size:18px}#hapi-onsen-wp .manner{padding:20px 17px;gap:10px}#hapi-onsen-wp .manner-icon{width:32px}#hapi-onsen-wp .faq-wrap{grid-template-columns:220px 1fr;gap:30px}}@media(max-width:760px){#hapi-onsen-wp{scroll-padding-top:66px}#hapi-onsen-wp .container{width:calc(100% - 32px)}#hapi-onsen-wp .site-header{height:70px}#hapi-onsen-wp .brand{gap:8px}#hapi-onsen-wp .brand-word{font-size:21px}#hapi-onsen-wp .brand-label{padding-left:9px;font-size:12px;line-height:1.6}#hapi-onsen-wp .header-right{gap:12px}#hapi-onsen-wp .header-link{display:none}#hapi-onsen-wp .ruby-toggle{padding:6px 8px;font-size:14px}#hapi-onsen-wp .hero{padding:27px 0 23px;grid-template-columns:1fr;gap:22px}#hapi-onsen-wp .eyebrow{font-size:12px}#hapi-onsen-wp .hero h1{font-size:36px;letter-spacing:.045em;margin:15px 0 0;line-height:1.48}#hapi-onsen-wp .hero h1 br{display:none}#hapi-onsen-wp .hero-copy{font-size:16px;margin-top:12px;max-width:100%}#hapi-onsen-wp .hero-note{margin-top:13px;font-size:14px}#hapi-onsen-wp .hero-art{aspect-ratio:1.7}#hapi-onsen-wp .art-caption{bottom:12px;left:12px;padding:6px 10px;font-size:12px}#hapi-onsen-wp .art-caption span{font-size:17px}#hapi-onsen-wp .jump-nav{justify-content:space-between}#hapi-onsen-wp .jump-nav a{padding:14px 10px;font-size:14px;gap:5px;line-height:1.7}#hapi-onsen-wp .jump-nav span{display:none}#hapi-onsen-wp .section{padding:33px 0}#hapi-onsen-wp .section-heading{gap:11px;margin-bottom:21px}#hapi-onsen-wp .section-heading h2{font-size:23px;line-height:1.8;letter-spacing:.02em}#hapi-onsen-wp .section-heading p{font-size:14px}#hapi-onsen-wp .section-no{font-size:18px;margin-top:8px}#hapi-onsen-wp .basics{padding:27px 0 33px}#hapi-onsen-wp .basics .section-heading h2{font-size:21px}#hapi-onsen-wp .essentials{padding:0 18px;display:block}#hapi-onsen-wp .essential{padding:17px 0;gap:14px}#hapi-onsen-wp .essential+.essential{border-left:0;border-top:1px solid #e4dac9}#hapi-onsen-wp .icon-circle{width:40px;height:40px}#hapi-onsen-wp .essential h3{font-size:17px;margin:0 0 3px}#hapi-onsen-wp .essential p{font-size:14px}#hapi-onsen-wp .flow-section{padding-top:3px}#hapi-onsen-wp .steps{grid-template-columns:1fr;gap:23px}#hapi-onsen-wp .step{padding:16px 0 0;display:grid;grid-template-columns:45px 1fr;column-gap:16px}#hapi-onsen-wp .step-top{flex-direction:column;justify-content:flex-start;gap:15px;margin:0;grid-row:1 / 4}#hapi-onsen-wp .step-count{font-size:27px}#hapi-onsen-wp .step-top svg{width:31px;height:31px}#hapi-onsen-wp .step h3{font-size:19px;margin-bottom:8px}#hapi-onsen-wp .step p{font-size:16px}#hapi-onsen-wp .step-tip{margin-top:11px;font-size:14px}#hapi-onsen-wp .manners-grid{grid-template-columns:1fr;gap:11px}#hapi-onsen-wp .manner{padding:19px 18px;gap:15px}#hapi-onsen-wp .manner-icon{width:33px}#hapi-onsen-wp .manner h3{font-size:17px}#hapi-onsen-wp .manner p{font-size:16px}#hapi-onsen-wp .faq-wrap{grid-template-columns:1fr;gap:21px}#hapi-onsen-wp .faq-aside{padding:19px 20px;display:grid;grid-template-columns:37px 1fr;column-gap:17px}#hapi-onsen-wp .faq-aside .stamp{grid-row:1 / 3;font-size:35px}#hapi-onsen-wp .faq-aside h3{margin:0 0 4px;font-size:17px}#hapi-onsen-wp .faq-aside p{font-size:16px}#hapi-onsen-wp .faq-list summary{font-size:16px;padding:17px 0;gap:10px}#hapi-onsen-wp .answer{padding-left:26px;padding-right:12px;font-size:16px}#hapi-onsen-wp .safety{padding:22px 18px;gap:13px;margin-top:24px}#hapi-onsen-wp .safety svg{width:25px;height:25px}#hapi-onsen-wp .safety h3{font-size:17px}#hapi-onsen-wp .safety p{font-size:16px}#hapi-onsen-wp .final-note{align-items:flex-start;flex-direction:column;gap:20px;padding:27px 0}#hapi-onsen-wp .final-note p{font-size:22px}#hapi-onsen-wp .travel-link{font-size:15px;text-align:center;white-space:normal;width:100%}#hapi-onsen-wp .sources a{display:block;margin:3px 0}#hapi-onsen-wp .footer-inner{align-items:flex-start;flex-direction:column;gap:8px}}@media(prefers-reduced-motion:reduce){#hapi-onsen-wp{scroll-behavior:auto}#hapi-onsen-wp *{transition:none!important}}@media print{#hapi-onsen-wp .site-header,#hapi-onsen-wp .jump-wrap,#hapi-onsen-wp .travel-link,#hapi-onsen-wp .footer{display:none}#hapi-onsen-wp .container{width:100%}#hapi-onsen-wp .hero-art{max-width:400px}#hapi-onsen-wp .hero{grid-template-columns:1fr 1fr}#hapi-onsen-wp .section{padding:20px 0}#hapi-onsen-wp .manners-grid{grid-template-columns:repeat(3,1fr)}#hapi-onsen-wp .steps{grid-template-columns:repeat(4,1fr)}#hapi-onsen-wp details .answer{display:block}#hapi-onsen-wp summary:after{display:none}#hapi-onsen-wp .safety{color:var(--ink);background:#eee}#hapi-onsen-wp .safety p{color:var(--ink)}#hapi-onsen-wp .manner,#hapi-onsen-wp .step,#hapi-onsen-wp details{break-inside:avoid}}#hapi-onsen-wp .language-bar{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding-block:12px;border-bottom:1px solid var(--line)}#hapi-onsen-wp .language-bar label{font-size:14px;font-weight:650;line-height:1.8}#hapi-onsen-wp .language-bar select{font:inherit;font-size:16px;line-height:1.8;border:1px solid #c7cdd2;background:white;color:var(--ink);padding:7px 34px 7px 12px;border-radius:6px;min-height:44px;min-width:165px;max-width:min(260px,70%);cursor:pointer}#hapi-onsen-wp .language-bar select:focus-visible{outline:3px solid var(--red);outline-offset:3px}#hapi-onsen-wp .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#hapi-onsen-wp [hidden]{display:none!important}#hapi-onsen-wp:not([lang="ja"]) h1,#hapi-onsen-wp:not([lang="ja"]) h2,#hapi-onsen-wp:not([lang="ja"]) h3{font-family:inherit;letter-spacing:normal}#hapi-onsen-wp:not([lang="ja"]) h1{font-size:clamp(30px,3.2vw,46px);line-height:1.5;overflow-wrap:anywhere}#hapi-onsen-wp:not([lang="ja"]) .brand-label{max-width:210px;font-size:14px}#hapi-onsen-wp:not([lang="ja"]) .jump-nav a{white-space:normal;text-align:center;line-height:1.65;min-width:0;flex:1}#hapi-onsen-wp:not([lang="ja"]) .step-tip,#hapi-onsen-wp:not([lang="ja"]) .manner p,#hapi-onsen-wp:not([lang="ja"]) .essential p,#hapi-onsen-wp:not([lang="ja"]) .safety p,#hapi-onsen-wp:not([lang="ja"]) .faq-aside p{font-size:16px}#hapi-onsen-wp:not([lang="ja"]) .travel-link{white-space:normal;text-align:center}#hapi-onsen-wp:not([lang="ja"]) p,#hapi-onsen-wp:not([lang="ja"]) h2,#hapi-onsen-wp:not([lang="ja"]) h3,#hapi-onsen-wp:not([lang="ja"]) summary{overflow-wrap:anywhere}#hapi-onsen-wp[lang="my"],#hapi-onsen-wp[lang="km"]{line-height:2.1}#hapi-onsen-wp[lang="my"] .jump-nav a,#hapi-onsen-wp[lang="km"] .jump-nav a{line-height:2}#hapi-onsen-wp[lang="my"] h1,#hapi-onsen-wp[lang="km"] h1{line-height:1.8}@media(max-width:760px){#hapi-onsen-wp .language-bar{justify-content:space-between;padding-block:10px}#hapi-onsen-wp .language-bar select{max-width:72%;width:210px}#hapi-onsen-wp:not([lang="ja"]) .brand-label{max-width:150px;font-size:12px}#hapi-onsen-wp:not([lang="ja"]) .jump-nav a{font-size:14px;padding:13px 7px;min-width:78px}#hapi-onsen-wp:not([lang="ja"]) .hero{padding-top:24px}#hapi-onsen-wp:not([lang="ja"]) .art-caption{position:static;background:#fcf4e5;border-radius:0;padding:8px 11px;line-height:1.8;font-size:13px}#hapi-onsen-wp:not([lang="ja"]) .hero-art{aspect-ratio:auto}#hapi-onsen-wp:not([lang="ja"]) .hero-art img{height:auto;aspect-ratio:1.7;object-fit:cover}#hapi-onsen-wp:not([lang="ja"]) .final-note p{font-size:22px}}@media print{#hapi-onsen-wp .language-bar{display:none}}
#hapi-onsen-wp{width:100%;box-sizing:border-box;isolation:isolate}#hapi-onsen-wp p{margin:0}#hapi-onsen-wp h1,#hapi-onsen-wp h2,#hapi-onsen-wp h3{border:none;padding:0;background:none;color:inherit}#hapi-onsen-wp button,#hapi-onsen-wp select{letter-spacing:normal}#hapi-onsen-wp .language-bar select{appearance:auto}#hapi-onsen-wp .steps{margin:0;padding:0}#hapi-onsen-wp .step{list-style:none}#hapi-onsen-wp .manner-icon .ng{color:white}#hapi-onsen-wp a:not(.travel-link):not(.skip){color:inherit}#hapi-onsen-wp [hidden]{display:none!important}
#hapi-onsen-wp{min-width:0;word-break:normal;overflow-wrap:break-word;hyphens:auto}
#hapi-onsen-wp :is(h1,h2,h3,p,li,a,button,summary){word-break:normal;overflow-wrap:break-word;line-break:auto}
#hapi-onsen-wp .language-bar{height:auto;flex-wrap:wrap;gap:8px}
#hapi-onsen-wp .language-control{min-width:0;max-width:100%;flex-wrap:wrap}
#hapi-onsen-wp #hapi-onsen-language-select{height:auto;min-height:40px;max-width:100%;width:auto;line-height:1.7}
#hapi-onsen-wp #hapi-onsen-language-label{max-width:100%;white-space:normal}
#hapi-onsen-wp :is(.hero-copy,.hero-art,.rule-copy,.step-copy){min-width:0}
#hapi-onsen-wp .jump-nav{flex-wrap:wrap;height:auto}
#hapi-onsen-wp .jump-nav a{white-space:normal;line-height:1.65;height:auto}
#hapi-onsen-wp:lang(ur){font-family:'Noto Nastaliq Urdu','Noto Sans Arabic',sans-serif;line-height:2}
#hapi-onsen-wp:lang(my),#hapi-onsen-wp:lang(km),#hapi-onsen-wp:lang(lo),#hapi-onsen-wp:lang(th),#hapi-onsen-wp:lang(si){letter-spacing:normal;line-height:1.9}
@media(max-width:600px){#hapi-onsen-wp h1{font-size:clamp(25px,6.5vw,36px);line-height:1.55;letter-spacing:normal}#hapi-onsen-wp .jump-nav a{flex:1 1 42%;padding:8px;font-size:14px}#hapi-onsen-wp .language-bar{align-items:center}#hapi-onsen-wp .language-control{flex:1 1 auto}}

/* Natural wrapping and bidirectional languages. */
#hapi-onsen-wp [data-i18n]{word-break:normal;overflow-wrap:break-word;white-space:normal}
#hapi-onsen-wp[data-language]:not([data-language="ja"]) h1{font-size:clamp(1.65rem,3.5vw,3.15rem);line-height:1.35;letter-spacing:normal;max-width:100%}
#hapi-onsen-wp .language-bar{flex-wrap:wrap;gap:.6rem}
#hapi-onsen-wp .language-bar select{min-width:0;max-width:100%}
#hapi-onsen-wp .jump-nav a{white-space:normal;min-width:0;text-align:center;line-height:1.45}
#hapi-onsen-wp[dir="rtl"]{text-align:right}
#hapi-onsen-wp[dir="rtl"] .eyebrow{direction:ltr;text-align:right}
#hapi-onsen-wp[dir="rtl"] .jump-nav{direction:rtl}
#hapi-onsen-wp[dir="rtl"] .step{padding-inline-start:1.4rem}
@media(max-width:600px){#hapi-onsen-wp .jump-nav a{font-size:.8rem;padding-inline:.4rem}#hapi-onsen-wp[data-language]:not([data-language="ja"]) h1{font-size:1.8rem}}

/* HAPI-JOB illustrated sauna and safety guide. */
#hapi-onsen-wp .hapi-sauna-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none}
#hapi-onsen-wp .hapi-sauna-step{background:#f7faf6;border:1px solid #dce7dd;border-radius:16px;overflow:hidden;min-width:0}
#hapi-onsen-wp .hapi-mascot-scene{width:100%;aspect-ratio:1;background-image:url('sauna-mascot.png');background-size:300% 200%;background-repeat:no-repeat;background-color:#fff9ef}
#hapi-onsen-wp .scene-0{background-position:0 0}#hapi-onsen-wp .scene-1{background-position:50% 0}#hapi-onsen-wp .scene-2{background-position:100% 0}#hapi-onsen-wp .scene-3{background-position:0 100%}#hapi-onsen-wp .scene-4{background-position:50% 100%}#hapi-onsen-wp .scene-5{background-position:100% 100%}
#hapi-onsen-wp .hapi-card-copy{padding:18px;min-width:0}
#hapi-onsen-wp .hapi-card-copy h3{font-size:18px;font-weight:750;margin:8px 0 12px;line-height:1.65}
#hapi-onsen-wp .hapi-card-copy p{font-size:15px;line-height:1.95}
#hapi-onsen-wp .hapi-step-badge{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#256b4b;color:white;font-weight:700;line-height:1}
#hapi-onsen-wp .hapi-sauna-etiquette{margin-top:20px;padding:22px;border-radius:14px;background:#eef5ee;border-inline-start:4px solid #448461}
#hapi-onsen-wp .hapi-sauna-etiquette h3{font-size:20px;margin-bottom:8px}
#hapi-onsen-wp .hapi-sauna-etiquette p+p{margin-top:10px}
#hapi-onsen-wp .hapi-illustration-note{font-size:12px;color:#607065;margin-top:12px;line-height:1.9}
#hapi-onsen-wp .hapi-safety-section{background:#fbf7ed;padding-block:42px}
#hapi-onsen-wp .hapi-caution-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
#hapi-onsen-wp .hapi-caution-card{background:white;border:1px solid #e8e0ce;border-radius:14px;overflow:hidden;min-width:0}
#hapi-onsen-wp .hapi-caution-card .hapi-mascot-scene{max-width:200px;margin:12px auto 0;border-radius:12px}
#hapi-onsen-wp .hapi-safety-symbol{display:flex;align-items:center;justify-content:center;width:42px;height:42px;margin:18px 18px 0;border-radius:50%;background:#f5e7cf;color:#6d5535;font-size:25px;font-weight:700}
#hapi-onsen-wp .jump-nav{display:flex;flex-wrap:wrap}#hapi-onsen-wp .jump-nav a{flex:1 1 0;min-width:120px}
#hapi-onsen-wp :is(.hapi-sauna-step,.hapi-caution-card) [data-i18n]{text-wrap:pretty;word-break:normal;hyphens:auto}
@media(max-width:960px){#hapi-onsen-wp .hapi-sauna-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#hapi-onsen-wp .hapi-caution-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){#hapi-onsen-wp .hapi-sauna-grid{grid-template-columns:1fr;gap:12px}#hapi-onsen-wp .hapi-sauna-step{display:grid;grid-template-columns:110px minmax(0,1fr);align-items:start}#hapi-onsen-wp .hapi-sauna-step .hapi-mascot-scene{margin-top:12px}#hapi-onsen-wp .hapi-card-copy{padding:14px}#hapi-onsen-wp .hapi-card-copy h3{font-size:16px}#hapi-onsen-wp .hapi-card-copy p{font-size:14px}#hapi-onsen-wp .hapi-caution-grid{grid-template-columns:1fr;gap:12px}#hapi-onsen-wp .hapi-caution-card:has(.hapi-mascot-scene){display:grid;grid-template-columns:110px minmax(0,1fr);align-items:start}#hapi-onsen-wp .hapi-caution-card .hapi-mascot-scene{margin:12px 0}#hapi-onsen-wp .jump-nav a{flex:1 1 30%;min-width:0}#hapi-onsen-wp .hapi-sauna-etiquette{padding:16px}}

#hapi-onsen-wp section[id]{scroll-margin-top:140px}

/* Mascot illustrations throughout the onsen guide. */
#hapi-onsen-wp .hapi-guide-art{aspect-ratio:1;background-repeat:no-repeat;background-color:#fff9ef;border-radius:12px;flex-shrink:0}
#hapi-onsen-wp .guide-steps{background-image:url('onsen-steps-mascot.webp');background-size:200% 200%;aspect-ratio:1.5}
#hapi-onsen-wp .guide-manners{background-image:url('onsen-manners-mascot.webp');background-size:300% 200%}
#hapi-onsen-wp .guide-tips{background-image:url('onsen-tips-mascot.webp');background-size:400% 300%}
#hapi-onsen-wp .essential .hapi-guide-art{width:100px}
#hapi-onsen-wp .essential>div:last-child{min-width:0}
#hapi-onsen-wp .step{display:block;padding-inline:0;min-width:0}
#hapi-onsen-wp .step>.hapi-guide-art{width:100%;max-width:230px;margin:0 auto 14px}
#hapi-onsen-wp .manner{display:grid;grid-template-columns:110px minmax(0,1fr);gap:16px;align-items:start;padding:18px}
#hapi-onsen-wp .manner>.hapi-guide-art{width:110px}
#hapi-onsen-wp .faq-aside{display:block}
#hapi-onsen-wp .faq-aside>.hapi-guide-art{width:150px;margin:0 auto 14px}
#hapi-onsen-wp .faq-list summary>.hapi-guide-art{width:62px;height:62px}
#hapi-onsen-wp .faq-list summary>[data-i18n]{min-width:0;flex:1}
#hapi-onsen-wp .hapi-caution-card{display:grid;grid-template-columns:110px minmax(0,1fr);align-items:start}
#hapi-onsen-wp .hapi-caution-card>.hapi-guide-art,#hapi-onsen-wp .hapi-caution-card>.hapi-mascot-scene{width:100px;margin:14px 0 0 10px}
@media(max-width:960px){#hapi-onsen-wp .essential .hapi-guide-art{width:74px}#hapi-onsen-wp .manner{grid-template-columns:90px minmax(0,1fr)}#hapi-onsen-wp .manner>.hapi-guide-art{width:90px}}
@media(max-width:600px){#hapi-onsen-wp .essential .hapi-guide-art{width:96px}#hapi-onsen-wp .step>.hapi-guide-art{max-width:180px}#hapi-onsen-wp .manner{grid-template-columns:92px minmax(0,1fr);gap:12px;padding:14px}#hapi-onsen-wp .manner>.hapi-guide-art{width:92px}#hapi-onsen-wp .faq-list summary>.hapi-guide-art{width:52px;height:52px}#hapi-onsen-wp .hapi-caution-card{grid-template-columns:100px minmax(0,1fr)}#hapi-onsen-wp .hapi-caution-card>.hapi-guide-art,#hapi-onsen-wp .hapi-caution-card>.hapi-mascot-scene{width:90px;margin-inline-start:10px}}
#hapi-onsen-wp .guide-steps-0{background-position:0.0% 0.0%}
#hapi-onsen-wp .guide-steps-1{background-position:100.0% 0.0%}
#hapi-onsen-wp .guide-steps-2{background-position:0.0% 100.0%}
#hapi-onsen-wp .guide-steps-3{background-position:100.0% 100.0%}
#hapi-onsen-wp .guide-manners-0{background-position:0.0% 0.0%}
#hapi-onsen-wp .guide-manners-1{background-position:50.0% 0.0%}
#hapi-onsen-wp .guide-manners-2{background-position:100.0% 0.0%}
#hapi-onsen-wp .guide-manners-3{background-position:0.0% 100.0%}
#hapi-onsen-wp .guide-manners-4{background-position:50.0% 100.0%}
#hapi-onsen-wp .guide-manners-5{background-position:100.0% 100.0%}
#hapi-onsen-wp .guide-tips-0{background-position:0.0% 0.0%}
#hapi-onsen-wp .guide-tips-1{background-position:33.33333% 0.0%}
#hapi-onsen-wp .guide-tips-2{background-position:66.66667% 0.0%}
#hapi-onsen-wp .guide-tips-3{background-position:100.0% 0.0%}
#hapi-onsen-wp .guide-tips-4{background-position:0.0% 50.0%}
#hapi-onsen-wp .guide-tips-5{background-position:33.33333% 50.0%}
#hapi-onsen-wp .guide-tips-6{background-position:66.66667% 50.0%}
#hapi-onsen-wp .guide-tips-7{background-position:100.0% 50.0%}
#hapi-onsen-wp .guide-tips-8{background-position:0.0% 100.0%}
#hapi-onsen-wp .guide-tips-9{background-position:33.33333% 100.0%}
#hapi-onsen-wp .guide-tips-10{background-position:66.66667% 100.0%}
#hapi-onsen-wp .guide-tips-11{background-position:100.0% 100.0%}
