@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;600;700&family=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap');

:root{--navy:#102746;--ink:#1d304a;--gold:#a9873e;--paper:#f8f8f6;--line:#e5e6e6;--blue:#102746;--blue2:#183b65;--amber:#a9873e;--ink:#1d304a;--slate:#5c6979}
html,body{max-width:100%;overflow-x:hidden}body{background:#fff!important;color:var(--ink)!important;font-family:'Zen Kaku Gothic New',sans-serif!important;line-height:1.9}
header.site{background:#fff!important;border-bottom:1px solid var(--line)!important;box-shadow:none!important}
header.site .wrap{max-width:1180px!important}
.brand,.brand-group .brand{font-family:'Noto Serif JP',serif!important;letter-spacing:.08em;color:var(--navy)!important}
.brand small{color:#687384!important}.header-address,.header-tel{color:#526176!important}
.header-line,.hero-line-btn,.line-cta,.line-big{background:var(--navy)!important;border-radius:0!important;box-shadow:none!important}
.hero{background:#f5f6f5!important;background-image:none!important;color:var(--ink)!important;padding:66px 0!important;position:relative;overflow:hidden}
.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(110deg,rgba(255,255,255,.96),rgba(248,249,249,.78));pointer-events:none}
.hero .wrap{position:relative;z-index:1}.hero h1,.hero h1 .hl{color:var(--navy)!important;font-family:'Noto Serif JP',serif!important;letter-spacing:.06em}
.hero p.lead,.hero-sub-note{color:#526176!important}.btn-amber{border-color:var(--gold)!important;color:var(--navy)!important}
.ticket,.price-ticket{background:#fff!important;color:var(--ink)!important;border:1px solid var(--line)!important;border-radius:0!important;box-shadow:0 14px 30px rgba(16,39,70,.09)!important}
.ticket:before{background:#f3f5f6!important}.ticket .ticket-price,.ticket .t-price{color:var(--navy)!important}
.ticket .ticket-label,.ticket .ticket-tax,.ticket .ticket-perf,.ticket .t-label,.ticket .t-note{color:#687384!important}
.road-divider,.worry-section,.topics-section{background:var(--paper)!important}
.section-head .tag,.sec-head .eyebrow-line,.sec-head .tag{background:var(--navy)!important}
.section-head h2,.sec-head h2,h2{font-family:'Noto Serif JP',serif!important;color:var(--navy)!important;letter-spacing:.06em}
.problem-card,.step,.doc-card,.option-item,.type-card,.service-card,.article-card,.column-card,.faq-item{background:#fff!important;border-color:var(--line)!important;border-radius:0!important;box-shadow:none!important}
.problem-card .icon,.step-no{background:var(--gold)!important}.price-note,.shussho-banner{border-radius:0!important}
.profile-panel{background:#f6f7f7!important;border-radius:0!important;color:var(--ink)!important}.profile-photo{border-radius:0!important}.profile-text .p-role{color:var(--gold)!important}.profile-text .p-name{color:var(--navy)!important}.profile-text p,.profile-text .desc{color:#34465d!important}
.final-cta{background:var(--navy)!important}.final-cta .line-big,.final-cta .line-cta{background:#b3924b!important;border-radius:0!important}.hero p{color:#34465d!important}.hero .hero-line-btn{background:#fff!important;color:var(--navy)!important;border:1px solid #b3924b!important}.hero .hero-tel{color:var(--navy)!important;border-bottom:1px solid #b3924b}.contact .hero-line-btn{background:#b3924b!important;color:#fff!important;border:1px solid #d7b978!important}
footer{background:#0a1b32!important}.article-hero,.column-hero{background:#f5f6f5!important}.article-body h1,.article-body h2,.article-body h3{font-family:'Noto Serif JP',serif!important;color:var(--navy)!important}
a:hover{opacity:.78}@media(max-width:700px){.hero{padding:46px 0!important}.hero h1{font-size:1.8rem!important}.header-address{display:none}.ticket{box-shadow:0 8px 20px rgba(16,39,70,.08)!important}.wrap{max-width:100%!important}.contact-choice{max-width:100%}.contact-email{overflow-wrap:anywhere;white-space:normal}}
.hero .hero-email{background:#fff!important;color:var(--navy)!important;border:1px solid #b3924b!important}.contact .hero-email{background:transparent!important;color:#fff!important;border:1px solid #d7b978!important}
