/* Brand-only overrides. The tp_professionals1 layout and breakpoints remain authoritative. */
:root{--primary-color:#123e55;--primary-inverse-color:#fff;--light-color:#e8f2f3;--light-inverse-color:#18313b;--secondary-color:#315f67;--secondary-inverse-color:#fff;--accent-color:#2e8581;--accent-inverse-color:#fff;--bg-inverse-color:#26383f}
html{scroll-behavior:smooth}body{font-family:"Noto Serif JP","Yu Mincho",YuMincho,serif;overflow-wrap:anywhere}a:focus-visible,button:focus-visible,.openclose:focus-visible{outline:3px solid #f0bd68;outline-offset:4px}#concerns,#about,#tools,.hc-legacy-anchor{scroll-margin-top:calc(var(--headerH) + 1rem)}.hc-legacy-anchor{display:block;height:0}
.hc-brand{display:flex;align-items:center;gap:.75rem;text-decoration:none}.hc-brand-mark{position:relative;width:40px;height:24px;flex:none}.hc-brand-mark i{position:absolute;top:2px;width:20px;height:20px;border:2px solid #fff;border-radius:50%}.hc-brand-mark i:first-child{left:2px}.hc-brand-mark i:last-child{right:2px;border-color:#7ed0c7}.hc-brand strong{display:block;font-size:1.25rem;line-height:1}.hc-brand small{display:block;font-size:.66rem;margin-top:.3rem;opacity:.78;white-space:nowrap}.site-header nav{min-width:0}.site-header .hc-primary-nav{justify-content:flex-end;align-items:center;gap:clamp(.7rem,1.25vw,1.25rem);font-size:clamp(.79rem,1vw,.94rem)}.site-header .hc-primary-nav li{min-width:0}.site-header .hc-primary-nav a,.site-header .hc-primary-nav .hc-nav-pending{white-space:nowrap}.hc-nav-pending{display:block;text-align:center;opacity:.62;cursor:default}
.hc-mobile-break{display:none}.hc-hero-line{display:block;white-space:nowrap}.hc-phrase{display:inline-block;white-space:nowrap}.mainimg .slide .text h2,.hc-situation-grid h4,.hc-tool-grid h4,.slide-thumbnail h4{line-break:strict;word-break:keep-all}.mainimg .slide .text p{line-break:strict}.hc-lead{max-width:760px;margin:0 auto 3rem}.hc-inline-link{margin-top:1.2rem!important}.hc-inline-link a,.hc-inline-link .hc-link-pending{font-weight:bold;text-decoration:underline;text-underline-offset:.35em}.hc-link-pending{color:#596f78;text-decoration-style:dotted!important;cursor:default}.hc-footer-logo small{display:block;font-size:.8rem;font-weight:normal;margin-top:.5rem}.hc-footer-menus{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1.5rem}.hc-footer-menus h4{min-height:3.2em;margin:0 0 .5rem;font-size:.88rem;line-height:1.6}.hc-footer-menus h4 a{text-decoration:none}.hc-footer-menus li{border-bottom:1px solid rgba(255,255,255,.18);padding:.55rem 0;font-size:.78rem;line-height:1.65}.hc-footer-menus a{text-decoration:none}.hc-footer-menus span{opacity:.62}.hc-footer-legal{display:flex;flex-wrap:wrap;gap:.65rem 1.4rem;margin-top:2rem;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.24);font-size:.8rem}.hc-footer-legal a{text-decoration:none}.hc-news .new dd{margin-bottom:.5rem}.sticky1>.text{min-height:48vh}.sticky1>.text p{font-size:1.05rem}.slide-thumbnail .name{font-family:Arial,sans-serif;letter-spacing:.1em}.openclose{cursor:pointer}
.list-grid-menu i::before{font-family:Arial,sans-serif;font-style:normal;font-size:.72em;font-weight:bold}.list-grid-menu li:nth-child(1) i::before{content:"休"}.list-grid-menu li:nth-child(2) i::before{content:"整"}.list-grid-menu li:nth-child(3) i::before{content:"条"}.list-grid-menu li:nth-child(4) i::before{content:"履"}.list-grid-menu li:nth-child(5) i::before{content:"日"}.list-grid-menu li:nth-child(6) i::before{content:"覧"}.openclose::before{font-family:Arial,sans-serif;content:"+"}.openclose.active::before{content:"−"}.pagetop i::before{content:"↑";font-family:Arial,sans-serif}

/* SECTION-02: the verified Template Party list-yoko5 competition structure. */
.hc-section2-competition{--parts-line:rgba(18,62,85,.18)}
.hc-section2-competition.hc-section2-b{background:#fff;color:#123e55}
.hc-section2-competition .hc-section2-intro{text-align:center;max-width:860px;margin:0 auto 3rem}
.hc-section2-competition .hc-section2-intro h2{margin-bottom:1rem;color:#123e55;line-break:strict;word-break:keep-all;overflow-wrap:normal}
.hc-section2-competition .hc-section2-intro p{margin:0;color:#30464f}
.hc-section2-b .hc-yoko-entries{border-top:1px solid var(--parts-line)}
.hc-section2-b .list-yoko5-parts{display:flex;align-items:center;gap:5vw;padding:1.35rem 0;border-bottom:1px solid var(--parts-line);color:#123e55;text-decoration:none}
.hc-section2-b .list-yoko5-parts .text-parts{flex:1;display:flex;flex-direction:column;gap:.55rem;min-width:0}
.hc-section2-b .list-yoko5-parts .image-parts{width:28%;height:92px;overflow:hidden}
.hc-section2-b .list-yoko5-parts .image-parts img{width:100%;height:100%;object-fit:cover;transition:.5s}
.hc-section2-b .list-yoko5-parts:hover .image-parts img{transform:scale(1.04)}
.hc-section2-b .list-yoko5-parts h3{display:flex;flex-direction:column-reverse;margin:0;color:#123e55;font-size:1.35rem;line-height:1.5;line-break:strict;word-break:keep-all;overflow-wrap:normal}
.hc-section2-b .list-yoko5-parts h3 span{display:block;color:#596f78;font-size:.56em;font-family:Arial,sans-serif;letter-spacing:.12em}
.hc-section2-b .list-yoko5-parts h3 .hc-title-text{display:block;color:inherit;font:inherit;letter-spacing:0}.hc-section2-b .list-yoko5-parts h3 .hc-phrase{display:inline-block;color:inherit;font:inherit;letter-spacing:0;white-space:nowrap}
.hc-section2-b .list-yoko5-parts p{margin:0;color:#30464f;font-size:.86rem;line-height:1.65}
.hc-section2-b .hc-entry-arrow{display:inline-block;margin-top:auto;color:#216f6b;font-size:.78rem;font-weight:700;letter-spacing:0;line-break:strict;word-break:keep-all;overflow-wrap:normal}
.hc-section2-b .hc-entry-pending{cursor:default}.hc-section2-b .hc-entry-pending .hc-entry-arrow{color:#6b7b81;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:.35em}.hc-section2-b .hc-entry-pending:hover .image-parts img{transform:none}

/* SECTION-03: keep the tp_professionals1 curved layout while making copy primary. */
.hc-about .hc-about-label{margin-bottom:.7rem;font-size:.9rem;letter-spacing:.08em;opacity:.78}
.hc-about .hc-about-title{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;margin-bottom:3rem;font-size:clamp(2.2rem,3.5vw,3.2rem);line-break:strict;word-break:keep-all;overflow-wrap:normal}
.hc-about .list-normal h4{padding-right:2.8rem;font-size:1.35rem;line-height:1.5;line-break:strict;word-break:keep-all;overflow-wrap:normal}
.hc-about .list-normal h4 .hc-phrase{display:inline-block;color:inherit;font:inherit;letter-spacing:inherit;opacity:1;white-space:nowrap}
.hc-about .list-normal .text p{font-size:1rem;line-height:1.9}
.hc-about .list-normal .num{top:1.15rem;right:1.35rem;color:var(--primary-color);font-family:Arial,sans-serif;font-size:.85rem;font-weight:700;line-height:1;letter-spacing:.12em;opacity:.45}
@media(min-width:1000px){footer{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,2.3fr);gap:clamp(2rem,4vw,4rem)}}
@media(min-width:700px) and (max-width:999px){footer{display:block}.footer1{margin-bottom:2.5rem!important}.hc-footer-menus{grid-template-columns:repeat(2,minmax(0,1fr))}.hc-footer-menus h4{min-height:auto}}
@media(max-width:800px){.hc-brand small{display:none}.hc-brand strong{font-size:1.1rem}.mainimg .slide .text{padding-inline:8vw}.mainimg .slide .text h2{font-size:clamp(2rem,9vw,3.2rem)}.mainimg .slide .text p{max-width:31rem}.mainimg .btn{gap:.6rem}.mainimg .btn a{min-height:48px;display:flex;align-items:center;justify-content:center}.hc-lead{margin-bottom:2rem}.sticky1>.text{min-height:auto}.hc-footer-menus{grid-template-columns:repeat(2,minmax(0,1fr))}.hc-footer-menus h4{min-height:auto}.text-kazari{font-size:12vw}.small-screen #menubar .hc-nav-pending{margin-bottom:1rem;padding:1rem 2rem;background:rgba(255,255,255,.12);color:#fff;text-align:left}}
@media(max-width:700px){.hc-section2-competition .hc-section2-intro{margin-bottom:2rem}.hc-section2-b .list-yoko5-parts{flex-direction:column;align-items:stretch;gap:.8rem;padding:1.15rem 0}.hc-section2-b .list-yoko5-parts .image-parts{width:100%;height:110px;order:-1}}
@media(max-width:500px){:root{--content-space:20px}.hc-mobile-break{display:inline}.mainimg .img1{height:500px}.mainimg .slide .text{padding-top:18px;padding-bottom:12px}.mainimg .slide .text h2{font-size:clamp(1.65rem,7.2vw,1.85rem);line-height:1.45;margin-bottom:.7rem}.mainimg .slide .text p{font-size:.9rem}.mainimg .btn{flex-direction:column;width:min(100%,290px);gap:.5rem;margin-top:1.2rem}.mainimg .btn a{width:100%;white-space:nowrap}.hc-situation-grid h4,.hc-tool-grid h4,.list-normal h4,.sticky1 h2,.sticky1 h3,.slide-thumbnail h4{word-break:keep-all;overflow-wrap:normal}.hc-tool-grid{grid-template-columns:1fr;gap:1.25rem}.list-grid-menu a{min-height:64px}.hc-about .hc-about-label{margin-bottom:.55rem;font-size:.82rem}.hc-about .hc-about-title{margin-bottom:2rem;font-size:1.75rem}.hc-about .list-normal .list{gap:1rem;padding:1.2rem;margin-bottom:1.5rem;border-width:2px}.hc-about .list-normal figure{width:34%;margin-bottom:0}.hc-about .list-normal h4{padding-right:1.8rem;margin-bottom:.6rem;font-size:1.05rem}.hc-about .list-normal .text p{font-size:.85rem;line-height:1.7}.hc-about .list-normal .num{top:.75rem;right:.8rem;font-size:.72rem}.hc-footer-menus{grid-template-columns:1fr;gap:1.25rem}.hc-footer-legal{display:grid;gap:.7rem}.hc-footer-legal a{width:fit-content}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.mainimg video{display:none}.mainimg .slide{background:url('../images/1.jpg') center/cover no-repeat}.scrollfx-move{transform:none!important}}
