/* Header-only extract from web-order.css (auto-generated, rem-rescaled 62.5%->100%) */
.is-loaded .l-body{visibility:visible;opacity:1}
.l-backlayer{visibility:hidden;z-index:1400;position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.6);opacity:0;transition:visibility .5s ease,opacity .5s ease}
.is-modal-login-active .l-backlayer,.is-nav-active .l-backlayer{visibility:visible;opacity:1}
.is-scroll .l-cart__fixed{visibility:visible;bottom:0;opacity:1}
.l-header{z-index:999;position:fixed;top:0;left:0;width:100%;background-color:#fff;transition:box-shadow .5s ease}
.l-header__inner{justify-content:space-between;height:4.5rem;padding:0 1rem}
.l-header__area,.l-header__inner{display:flex;align-items:center}
.l-header__logo{display:block;height:-moz-fit-content;height:fit-content}
.l-header__logo a{display:flex;align-items:center;transition:.2s}
.l-header__logo a:hover{opacity:.8}
.l-header__logo-image{display:block;width:13rem}
.l-header__nav{gap:1rem}
.l-header__list,.l-header__nav{display:flex;align-items:center}
.l-header__list{gap:0.625rem}
.l-header__btn-area,.l-header__list-area,.l-header__list-item--btn{display:flex;align-items:center;gap:0.5rem}
.l-header__list-item.is-active .l-header__list-link{background-color:#e5f3fb;color:#008cd6}
.l-header__list-item.is-active .l-header__list-link .l-header__list-icon path{fill:#008cd6}
.l-header__list-link{display:flex;align-items:center;padding:0.25rem 0.3125rem;gap:0.25rem;border-radius:4px;font-weight:600;font-size:0.875rem;line-height:1;letter-spacing:0;transition:.2s}
.l-header__list-link:hover{background-color:#f7f7f7}
.l-header__list-icon--external{min-width:1rem;padding-left:0.25rem}
.l-header__list-menu{display:flex;position:relative;align-items:center;justify-content:center;padding:0.5rem 1.5rem 0.5rem 0.5rem;gap:0.25rem;border:1px solid #b2b2b2;border-radius:5px;cursor:pointer;transition:.2s}
.l-header__list-menu.is-active,.l-header__list-menu:hover{border:1px solid #008cd6;background-color:#e5f3fb}
.l-header__list-menu.is-active:after{transform:rotate(180deg)}
.l-header__list-menu:after{position:absolute;top:50%;right:0.625rem;width:0;height:0;border-top:5px solid #b2b2b2;border-right:4px solid transparent;border-left:4px solid transparent;content:"";transition:.2s}
.l-header__list-menu-icon{width:1.5rem;border:1px solid #f7f7f7;border-radius:50%}
.is-scroll .l-header{border-bottom:1px solid #f1f5f9}
.is-nav-active .l-header{box-shadow:none}
.l-header-register{z-index:999;position:fixed;top:0;left:0;width:100%;background-color:#fff;transition:box-shadow .5s ease}
.l-header-register__inner{justify-content:space-between;height:4.5rem;padding:0 1rem}
.l-header-register__area,.l-header-register__inner{display:flex;align-items:center}
.l-header-register__logo{display:block;height:-moz-fit-content;height:fit-content}
.l-header-register__logo a{display:flex;align-items:center;transition:.2s}
.l-header-register__logo a:hover{opacity:.8}
.l-header-register__logo-image{display:block}
.l-header-register__ttl{position:relative;margin-left:1.5rem;padding-left:1.5rem;font-weight:600;font-size:1.5rem;line-height:1;letter-spacing:0}
.l-header-register__ttl:before{position:absolute;top:50%;left:0;width:0.0625rem;height:100%;transform:translateY(-50%);background-color:#b2b2b2;content:""}
.is-scroll .l-header-register{border-bottom:1px solid #f1f5f9}
.l-header-register__nav{font-weight:600;font-size:1rem;line-height:1.5}
.l-header-register__nav-list{display:flex;align-items:center;gap:2.5rem}
.l-header-register__nav-list-item{position:relative;color:#b2b2b2}
.l-header-register__nav-list-item.is-active{color:#008cd6}
.l-header-register__nav-list-item:not(:last-of-type):after{position:absolute;top:calc(50% + 0.125rem);right:-1.5rem;width:0.5rem;height:0.9375rem;transform:translateY(-50%);background-image:url(../images/common/arrow-right.svg);background-size:contain;background-repeat:no-repeat;content:""}
.l-header-register__mega{visibility:hidden;z-index:999;position:fixed;top:4.5rem;left:0;width:100%;max-height:100%;overflow-y:auto;background-color:#fff;opacity:0;transition:visibility .5s ease,opacity .5s ease}
.l-header-register__mega nav{font-weight:500;font-size:0.875rem;line-height:1.4285714286}
.l-header-register__mega nav ul{display:flex;flex-wrap:wrap;align-items:center;list-style:none}
.l-header-register__mega nav ul li:nth-of-type(n+2){margin-left:10px}
.l-nav-mega{display:none}
.l-nav-mega__area{padding:0.5rem}
.l-nav-mega__area--grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:0.5rem}
.l-nav-mega__list{display:flex;flex-direction:column;margin-top:2rem;padding:1rem;gap:0.875rem}
.l-nav-mega__list-link{display:flex;align-items:center;padding:0.25rem 0.3125rem;gap:0.25rem;border-radius:4px;font-weight:600;font-size:0.875rem;line-height:1;letter-spacing:0}
.l-nav-mega__list-link:hover{background-color:#e5f3fb;color:#008cd6}
.l-nav-mega__list-link:hover .l-footer__list-icon path,.l-nav-mega__list-link:hover .l-nav-mega__list-icon path{fill:#008cd6}
.l-nav-mega__info{display:flex;margin-top:3.5rem;padding:0 1.5rem;gap:1.5rem}
.l-nav-mega__info-item{font-weight:400;font-size:0.75rem;line-height:2;letter-spacing:0}
.l-nav-mega02{visibility:hidden;z-index:40;position:fixed;top:6.875rem;width:100%;height:100%;max-height:calc(100% - 6.875rem);overflow-y:auto;background-color:#fff;opacity:0;transition:.2s}
.l-nav-mega02.is-active{visibility:visible;opacity:1}
.c-btn-icon{display:flex;position:relative;align-items:center;justify-content:center;padding:0.625rem 0.875rem;gap:0.25rem;border:1px solid #b2b2b2;border-radius:4px;font-weight:600;font-size:1rem;line-height:1.25;letter-spacing:0;white-space:nowrap}
.c-btn-icon,.c-btn-icon path{transition:.2s}
.c-btn-icon:hover{border:1px solid #008cd6;background-color:#e5f3fb;color:#008cd6}
.c-btn-icon:hover .c-btn-icon__icon path{fill:#008cd6}
.c-btn-icon--blue{border:1px solid transparent;background-color:#008cd6;color:#fff}
.c-btn-icon--blue:hover{background-color:#0064c1;color:#fff}
.c-btn-icon--blue .c-btn-icon__icon path,.c-btn-icon--blue:hover .c-btn-icon__icon path{fill:#fff}
.c-btn-icon--grey{width:9rem;padding:0.3125rem 0;gap:0.25rem;color:grey;font-weight:400;font-size:0.875rem;line-height:1.4285714286;letter-spacing:0}
.c-btn-icon--grey .c-btn-icon__icon path{fill:grey}
.c-btn-icon__icon{width:1.25rem}
.c-btn-icon__num{justify-content:center;min-width:1.25rem;min-height:1.25rem;border-radius:50%;background-color:#e00;color:#fff;font-weight:600;font-size:0.625rem;line-height:1;letter-spacing:0}
.c-btn-count,.c-btn-icon__num{display:flex;align-items:center}
.c-btn-icon-normal{display:flex;z-index:2;position:relative;align-items:center;justify-content:center;width:-moz-fit-content;width:fit-content;padding:0.3125rem 1.125rem 0.3125rem 1rem;gap:0.25rem;border:1px solid #b2b2b2;border-radius:4px;background-color:#fff;color:grey;font-weight:400;font-size:1.25rem;line-height:1.5;letter-spacing:0;white-space:nowrap;cursor:pointer;transition:.2s}
.c-btn-icon-normal:hover{border:1px solid grey;background-color:#f7f7f7;color:#333}
.c-btn-icon-normal:hover svg path{fill:#333;transition:.2s}
.c-btn-icon-normal--blue{border:1px solid #008cd6;background-color:#008cd6;font-weight:600;font-size:1.25rem;line-height:1.5;letter-spacing:0}
.c-btn-icon-normal--blue .c-btn-icon-normal__txt{color:#fff}
.c-btn-icon-normal--blue .c-btn-icon-normal__icon path{fill:#fff}
.c-btn-icon-normal--blue:hover{border:1px solid #0064c1;background-color:#0064c1}
.c-btn-icon-normal--blue:hover svg path{fill:#fff}
.c-btn-icon-normal--width{width:13.75rem}
.c-btn-icon-normal__icon{min-width:1.625rem}
.c-btn-icon-normal__icon path{fill:grey}
.c-btn-icon-small{display:flex;z-index:2;position:relative;align-items:center;justify-content:center;width:-moz-fit-content;width:fit-content;padding:0.3125rem 0.5rem 0.3125rem 0.4375rem;gap:0.25rem;border:1px solid #b2b2b2;border-radius:4px;background-color:#fff;color:grey;font-weight:400;font-size:0.875rem;line-height:1.4285714286;letter-spacing:0;white-space:nowrap;cursor:pointer;transition:.2s}
.c-btn-icon-small--right{margin-left:auto}
.c-btn-icon-small--font-small{font-weight:400;font-size:0.75rem;line-height:1.5;letter-spacing:0}
.c-btn-icon-small svg{min-width:1.25rem}
.c-btn-icon-small svg path{fill:grey;transition:.2s}
.c-btn-icon-small__icon{min-width:1.25rem}
.c-btn-icon-small__icon path{fill:grey}
.c-btn-icon-small:hover{border:1px solid grey;background-color:#f7f7f7;color:#333}
.c-btn-icon-small:hover svg path{fill:#333}
.c-hamburger{display:none;z-index:1080;position:fixed;width:2.5rem;height:2.5rem}
.c-hamburger span{display:inline-block;position:absolute;left:0.625rem;width:1.25rem;height:0.125rem;transform-origin:center;background-color:#333;transition:.5s ease}
.c-hamburger span:first-of-type{top:0.625rem}
.c-hamburger span:nth-of-type(2){top:1.1875rem}
.c-hamburger span:nth-of-type(3){bottom:0.625rem}
.is-nav-active .c-hamburger span:first-of-type{top:calc(50% - 0.0625rem);transform:rotate(-315deg)}
.is-nav-active .c-hamburger span:nth-of-type(2){opacity:0}
.is-nav-active .c-hamburger span:nth-of-type(3){bottom:calc(50% - 0.0625rem);transform:rotate(315deg)}
.c-modal-small{display:flex;visibility:hidden;z-index:80;position:absolute;top:3.125rem;right:0;left:50%;align-items:center;justify-content:center;width:calc(100% + 2px);padding:0.5rem;transform:translateX(-50%);border:1px solid #f1f5f9;border-radius:8px;background-color:#fff;opacity:0;transition:.2s}
.c-modal-small--header{top:1.25rem;left:auto;width:11.25rem;transform:none;transition:.5s cubic-bezier(.16,1,.3,1)}
.c-modal-small--header.is-active{top:3.125rem}
.c-modal-small.is-active{visibility:visible;opacity:1}
.c-modal-small__list{display:flex;flex-direction:column;width:100%;max-height:12rem;overflow-y:auto;gap:0.625rem}
.c-modal-small__list-item{position:relative;width:100%;padding:0.75rem 0.5rem;gap:0.25rem;border-radius:4px;transition:.2s}
.c-modal-small__list-item:hover{background-color:#f7f7f7}
.c-modal-small__list-item span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.c-modal-small__list-item:not(:first-of-type){padding-top:0.75rem}
.c-modal-small__list-item:not(:first-of-type):after{position:absolute;top:-0.3125rem;left:0;width:100%;height:0.0625rem;background-color:#f1f5f9;content:""}
.c-modal-small__list-item--link{position:relative}
.c-modal-small__list-item--link:not(:first-of-type):after{position:absolute;top:-0.3125rem;left:0;width:100%;height:0.0625rem;background-color:#f1f5f9;content:""}
.c-modal-small__list-item--02{display:flex;align-items:center;justify-content:space-between}
.c-modal-small__list-link{display:flex;align-items:center;width:100%;padding:0.75rem 0.875rem;gap:0.5rem;border-radius:4px;font-weight:600;font-size:1rem;line-height:1.5;letter-spacing:0;transition:.2s}
.c-modal-small__list-link:hover{background-color:#f7f7f7}
.is-scroll .c-scroll{visibility:visible;opacity:1}
.c-text-num{display:flex;align-items:center;justify-content:center;width:1.25rem;min-width:1.25rem;height:1.25rem;min-height:1.25rem;border-radius:50%;background-color:#e00;color:#fff;font-weight:600;font-size:0.625rem;line-height:1;letter-spacing:0}
.c-text-num--margin{margin-left:0.25rem}
@media screen and (max-width:767px){html.is-nav-active{overflow:hidden}
.l-header__inner{height:3.5rem;padding:0 3rem 0 1rem}
.l-header__area{flex-direction:column}
.l-header__logo-image{width:11.25rem}
.l-header__btn-area{gap:0.75rem}
.l-header__list-item--btn{gap:0.875rem}
.l-header__list-menu:hover{border:1px solid transparent;background-color:#fff}
.l-header__list-menu.is-active{border:1px solid #008cd6;background-color:#e5f3fb}
.l-header__list-menu{padding:0;border:1px solid #f7f7f7;border-radius:50%;background-color:initial}
.l-header__list-menu:after{content:none}
.l-header__list-menu-icon{width:1.75rem;border:none}
.l-header-register{position:static;padding:1.25rem 0 0}
.l-header-register__inner{display:block;flex-direction:column;align-items:normal;justify-content:normal;height:auto;padding:0}
.l-header-register__area{flex-direction:column;width:100%}
.l-header-register__logo-image{width:10.875rem}
.l-header-register__ttl{display:flex;align-items:center;justify-content:center;width:100%;margin-top:1.125rem;margin-left:0;padding:1rem 0;background-color:#f1f5f9;font-weight:600;font-size:1rem;line-height:1.5;letter-spacing:0}
.l-header-register__ttl:before{content:none}
.l-header-register__nav{font-weight:600;font-size:0.875rem;line-height:1.2857142857}
.l-header-register__nav-list{align-items:flex-start;justify-content:center;padding:1.25rem;gap:2.5rem}
.l-header-register__nav-list-item{text-align:center;white-space:nowrap}
.l-header-register__nav-list-item--responsive:not(:last-of-type):after{top:2.5rem}
.l-nav-mega__list{margin-top:1rem;padding:0 0.625rem;gap:1.5rem 2rem}
.l-nav-mega__list-item{width:100%}
.l-nav-mega__list-link{gap:0.3125rem;font-weight:600;font-size:1rem;line-height:1;letter-spacing:0}
.l-nav-mega__list-link:hover{background-color:#fff}
.l-nav-mega__list-icon{width:1.5rem}
.l-nav-mega__list-icon--external{width:1rem}
.l-nav-mega__info{justify-content:space-between;padding:0 1rem 2.5rem}
.c-btn-icon__txt--responsive{display:none}
.c-btn-icon--responsive{padding:0.125rem;border:1px solid #fff;background-color:#fff}
.c-btn-icon--responsive .c-btn-icon__icon path{fill:#333}
.c-btn-icon--responsive:hover{border:1px solid #fff;background-color:#fff}
.c-btn-icon--grey{width:100%}
.c-btn-icon__icon{width:1.5rem}
.c-btn-icon__icon--width{min-width:1.5rem;max-width:1.5rem}
.c-btn-icon__num{position:absolute;top:-0.5rem;right:-0.5rem;min-width:1.125rem;min-height:1.125rem}
.c-btn-icon-normal{gap:0.5rem;font-weight:400;font-size:0.875rem;line-height:1.4285714286;letter-spacing:0}
.c-btn-icon-normal--responsive-width{width:100%}
.c-btn-icon-normal--blue{height:2.5rem;font-weight:600;font-size:1rem;line-height:1.25;letter-spacing:0}
.c-btn-icon-normal--width{width:10.25rem}
.c-btn-icon-normal__icon{width:1.25rem;min-width:1.25rem}
.c-btn-icon-small--width{width:100%}
.c-btn-icon-small--flex{flex:1}
.c-modal-small--header{top:0.625rem;right:-2.5rem;width:11.5rem}
.c-modal-small--header.is-active{top:2.125rem}
.c-text-num{min-width:1.125rem;min-height:1.125rem}}
@media screen and (max-width:960px){.is-nav-active .l-backlayer{visibility:hidden;opacity:0}
.is-modal-login-active .l-backlayer,.is-modalcat-active .l-backlayer,.is-modalmnft-active .l-backlayer{visibility:visible;opacity:1}
.l-header__list{display:none}
.l-nav-mega{z-index:80;position:fixed;top:3.5rem;width:100%;height:100%;max-height:calc(100% - 3.5rem);overflow-y:auto;border-top:1px solid #f2f2f2;background-color:#fff}
.is-nav-active .l-nav-mega{display:block}
.c-hamburger{display:block;top:0.7812rem;right:0.125rem;width:2.5rem;height:2.125rem}
.c-hamburger span{left:0.625rem;width:1.25rem;height:0.125rem}
.c-hamburger span:first-of-type{top:0.625rem}
.c-hamburger span:nth-of-type(2){top:1rem}
.c-hamburger span:nth-of-type(3){bottom:0.625rem}
.is-nav-active .c-hamburger span:first-of-type{top:calc(50% - 0.0625rem)}
.is-nav-active .c-hamburger span:nth-of-type(3){bottom:calc(50% - 0.0625rem)}}
@media screen and (min-width:768px)and (max-width:1200px){.l-header-register__inner{flex-direction:column;align-items:normal;justify-content:center;gap:0.5rem}
.l-header-register__logo-image{width:9.75rem}
.l-header-register__ttl{margin-left:0.625rem;padding-left:0.625rem;font-weight:600;font-size:1rem;line-height:1.5;letter-spacing:0}
.l-header-register__nav{font-weight:600;font-size:0.875rem;line-height:1.2857142857}
.l-header-register__nav-list,.l-header-register__nav-list-item{gap:1.5rem}
.l-header-register__nav-list-item:not(:last-of-type):after{right:-1.0625rem}}
@media screen and (min-width:768px)and (max-width:960px){.l-header__inner{padding:0 2.875rem 0 1rem}
.c-hamburger{top:1.25rem;right:0.125rem}}
@media screen and (min-width:768px)and (max-width:1340px){.l-header__logo-image{width:11.25rem}}
@media screen and (min-width:960px)and (max-width:1460px){.l-header__list{flex-direction:column;align-items:flex-start;gap:0}}
@media screen and (min-width:768px)and (max-width:1080px){.c-btn-icon__txt--responsive{display:none}}
/* Scoped anchor color overrides (designer used a global `a { color: #333 }` reset which
   we intentionally do NOT copy into this extract to avoid affecting core-styled pages).
   These rules apply only inside the header / mega nav / user dropdown so the nav link
   text is dark gray instead of inheriting Bootstrap's default link blue. */
.l-header a,
.l-header a:visited,
.l-nav-mega a,
.l-nav-mega a:visited,
.c-modal-small__list-link,
.c-modal-small__list-link:visited { color: #333; }

/* Preserve the is-active blue on the current-route nav item */
.l-header__list-item.is-active .l-header__list-link,
.l-header__list-item.is-active .l-header__list-link:visited { color: #008cd6; }

/* Preserve white text on the blue "login" CTA */
.c-btn-icon--blue,
.c-btn-icon--blue:visited { color: #fff; }


/* --- login modal (auto-generated) --- */
.is-modal-login-active body{overflow:hidden}
.is-modal-login-active .l-backlayer,.is-nav-active .l-backlayer{visibility:visible;opacity:1}
.c-accordion04__txt02,.c-btn-normal{font-weight:600;letter-spacing:0;transition:.2s}
.c-btn-normal{display:flex;align-items:center;justify-content:center;width:20rem;margin:0 auto;padding:1rem 1.75rem;gap:0.5rem;border-radius:6px;background-color:#008cd6;color:#fff;font-size:1.125rem;line-height:1.5555555556;cursor:pointer}
.c-btn-normal:hover{background-color:#0064c1}
.c-btn-normal--white{padding:0.9375rem 1.75rem;border:1px solid #b2b2b2;background-color:#fff;color:grey;font-weight:400}
.c-btn-normal--white:hover{border:1px solid grey;background-color:#f7f7f7;color:#333}
.c-btn-normal--orange{background-color:#f70;color:#fff}
.c-btn-normal--orange:hover{background-color:#f50}
.c-btn-normal--right{margin:0 0 0 auto}
.c-btn-normal--left{margin:initial}
.c-btn-normal--height{width:12.5rem;height:2.375rem;border-radius:4px}
.c-btn-normal__icon--white path{fill:#fff}
.c-btn-small{display:flex;align-items:center;justify-content:center;width:7.5rem;height:2.0625rem;margin:0 auto;border:1px solid #b2b2b2;border-radius:4px;color:grey;font-weight:400;font-size:0.875rem;line-height:1.7142857143;letter-spacing:0;cursor:pointer;transition:.2s}
.c-btn-small--width{width:9.875rem}
.c-btn-small--left{margin:initial}
.c-btn-small:hover{border:1px solid grey;background-color:#f7f7f7;color:#333}
.c-btn-small:hover svg path{fill:#333}
.c-btn-smallest{display:block;width:-moz-fit-content;width:fit-content;height:-moz-fit-content;height:fit-content;padding:0 0.1875rem 0.0625rem;border:1px solid #80c5eb;border-radius:2px;background-color:#f2f9fd;color:#008cd6;font-weight:400;font-size:0.75rem;line-height:1.5;letter-spacing:0;transition:.2s}
.c-btn-smallest--gray{border:1px solid #b2b2b2;background-color:initial;color:grey}
.c-btn-smallest--gray:hover{border:1px solid grey;background-color:#f7f7f7;color:#333}
.c-btn-smallest--responsive{display:flex;align-items:center;justify-content:center;width:12.5rem;padding:0.125rem 0.1875rem 0.1875rem;cursor:pointer}
.c-card{display:flex;align-items:center;padding:1rem;gap:1rem;background-color:#f7f7f7}
.c-card--column{flex-direction:column;align-items:flex-start;gap:1rem}
.c-card--padding{padding:1.5rem}
.c-card span{color:grey;font-weight:400;font-size:0.875rem;line-height:1.4285714286;letter-spacing:0}
.c-card__parts{gap:0.25rem}
.c-card02,.c-card__parts{display:flex;flex-direction:column}
.c-card02{padding:1.5rem;gap:0.5rem;border:1px solid #b2b2b2;border-radius:4px;transition:.2s}
.c-card02:hover{border:1px solid grey;background-color:#f7f7f7}
.c-card02--default{display:revert;gap:0}
.c-card02--default:hover{border:1px solid #b2b2b2;background-color:#fff}
.c-card02--default:hover .c-card02__date,.c-card02--default:hover .c-card02__ttl,.c-card02--default:hover .c-card02__txt{color:#333;text-decoration:none}
.c-card02--responsive-border{position:relative}
.c-card02--responsive-border:before{top:0}
.c-card02--responsive-border:after{bottom:0}
.c-card02--responsive-border02{position:relative}
.c-card02--hover:hover{border:1px solid #80c5eb;background-color:#f2f9fd}
.c-card02--hover:hover .c-card02__area-parts:before{background-color:#80c5eb}
.c-card02__date{color:grey;font-weight:400;font-size:0.75rem;line-height:1.5;letter-spacing:0}
.c-card02__ttl{display:-webkit-box;-webkit-line-clamp:3;font-weight:600;font-size:1.125rem;line-height:1.5;letter-spacing:0}
.c-card02__ttl,.c-card02__ttl a{-webkit-box-orient:vertical;overflow:hidden}
.c-card02__ttl a{display:block;display:-webkit-box;width:-moz-fit-content;width:fit-content;-webkit-line-clamp:2;text-overflow:ellipsis;transition:.2s}
.c-card02__ttl a:hover{color:#008cd6;text-decoration:underline}
.c-card02__ttl--02{font-weight:600;font-size:1.25rem;line-height:1.5;letter-spacing:0}
.c-card02__txt{-webkit-box-orient:vertical;display:-webkit-box;-webkit-line-clamp:2;overflow:hidden;font-weight:400;font-size:0.875rem;line-height:1.5714285714;letter-spacing:0;text-overflow:ellipsis;transition:.2s}
.c-card02__area{display:flex;align-items:center;justify-content:space-between}
.c-card02__grid{display:grid;grid-template-columns:8fr 8fr 8fr 1fr;margin-top:0.5rem;gap:0.5rem}
.c-card02__grid--column{grid-template-columns:1fr}
.c-card02__grid--hover .c-card02__grid-item{transition:.2s}
.c-card02__grid--hover .c-card02__grid-item:hover{color:#008cd6}
.c-card02__grid--hover .c-card02__grid-item:hover .c-card02__grid-txt{text-decoration:underline}
.c-card02__grid--hover .c-card02__grid-item:hover .c-card02__grid-parts span{color:#008cd6}
.c-card02__area-parts{position:relative;padding-top:0.5rem}
.c-card02__area-parts:before{position:absolute;top:0;left:50%;width:calc(100% + 3rem);height:1px;transform:translateX(-50%);background-color:#b2b2b2;content:""}
.c-card02__grid-area-parts{display:flex;flex-grow:1;min-width:0}
.c-card02__grid-image{width:2.5rem;height:2.5rem;object-fit:cover;border:1px solid rgba(0,0,0,.05);border-radius:2px}
.c-card02__grid-item{display:flex;align-items:center;gap:0.625rem}
.c-card02__grid-area,.c-card02__grid-item{flex-grow:1;min-width:0;max-width:-moz-fit-content;max-width:fit-content}
.c-card02__grid-parts{display:flex;gap:0.625rem}
.c-card02__grid-parts span{color:grey;font-weight:400;font-size:0.625rem;line-height:2;letter-spacing:0}
.c-card02__grid-parts em{line-height:1.6666666667}
.c-card02__grid-parts em,.c-card02__grid-txt{font-weight:400;font-size:0.75rem;letter-spacing:0}
.c-card02__grid-txt{width:100%;overflow:hidden;line-height:1.3333333333;text-overflow:ellipsis;white-space:nowrap}
.c-card02__grid-square{display:flex;flex-direction:column;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:1px solid rgba(0,0,0,.05);border-radius:4px;background-color:#fff;color:grey;font-weight:400;font-size:0.625rem;line-height:1.6;letter-spacing:0;transition:.2s}
.c-card02__grid-square span{margin-right:0.125rem;font-weight:400;font-size:1rem;line-height:1;letter-spacing:0}
.c-card02__grid-square:hover{border:1px solid #008cd6;background-color:#f2f9fd;color:#008cd6}
.c-card02__info{margin-top:0.5rem;gap:0.5rem}
.c-card02__info,.c-card02__info-parts{display:flex;align-items:center}
.c-card02__info-parts-txt02{margin-right:0.5rem;font-weight:400;font-size:0.875rem;line-height:1.4285714286;letter-spacing:0}
.c-input{display:flex;position:relative;flex-direction:column;gap:0.5rem}
.c-input--row{display:grid;grid-template-columns:6.25rem 1fr}
.c-input__area{display:flex;align-items:center;gap:0.75rem}
.c-input__txt{font-weight:600;font-size:0.875rem;line-height:1.7142857143;letter-spacing:0}
.c-input__require{border:1px solid #e00;border-radius:2px;color:#e00}
.c-input__option,.c-input__require{padding:0 0.3125rem 0.0625rem 0.25rem;font-weight:400;font-size:0.75rem;line-height:1.5;letter-spacing:0}
.c-input__option{border:1px solid #b2b2b2;border-radius:2px;color:#b2b2b2}
.c-input__calnder{position:relative;cursor:pointer}
.c-input__calnder .flatpickr-input{color:#333}
.c-input__calnder .flatpickr-mobile{text-align:left!important}
.c-input__calnder-icon{z-index:2;position:absolute;top:50%;right:0.5rem;width:1.5rem;height:1.5rem;transform:translateY(-50%);pointer-events:none}
.c-input__calnder-icon.is-error path{fill:#e00}
.c-input__description{display:flex;flex-wrap:wrap;align-items:center;gap:1rem}
.c-input__textarea-wrapper{position:relative}
.c-input__textarea{width:100%;height:10rem;padding:0.625rem;border:1px solid #b2b2b2;border-radius:3px;outline:none;font-weight:400;font-size:1rem;line-height:1.5;letter-spacing:0;resize:none}
.c-input__textarea::placeholder{color:#b2b2b2}
.c-input__textarea.is-error{border:1px solid #e00}
.c-input__textarea:focus{border:1px solid #008cd6}
.c-input__textarea--height{height:5rem}
.c-input__textarea--height02{height:20rem}
.c-input__textarea02{width:100%;padding:0.75rem 0.5rem;overflow-y:hidden;border:1px solid #b2b2b2;border-radius:3px;outline:none;resize:none}
.c-input__textarea02.is-error{border:1px solid #e00}
.c-input__textarea02:focus{border:1px solid #008cd6}
.c-input__textarea-num{position:absolute;right:0.5rem;bottom:0.75rem;color:#b2b2b2;font-weight:400;font-size:0.75rem;line-height:1.6666666667;letter-spacing:0}
.c-input__grid{display:grid;grid-template-columns:4.5rem max-content 6.5rem max-content;align-items:center;gap:0.5rem}
.c-input__item{width:100%;height:2.5rem;padding:0 0.625rem;border:1px solid #b2b2b2;border-radius:4px;outline:none;font-weight:400;font-size:1rem;line-height:1;letter-spacing:0}
.c-input__item::placeholder{color:#b2b2b2;font-weight:400;font-size:0.875rem;line-height:1.1428571429;letter-spacing:0}
.c-input__item.is-error{border:1px solid #e00}
.c-input__item:focus{border:1px solid #008cd6}
.c-input__item--width{width:20rem}
.c-input__item--width02{width:10rem}
.c-input-search{position:relative;width:100%}
.c-input-search.is-active .c-input-search__btn{background-color:#008cd6;cursor:pointer;pointer-events:auto;transition:.2s}
.c-input-search.is-active .c-input-search__btn:hover{background-color:#0064c1}
.c-input-search.is-active .c-input-search__btn path{fill:#fff}
.c-input-search__area{display:flex;align-items:center;gap:0.75rem}
.c-input-search__btn{display:flex;position:absolute;top:50%;right:0.3125rem;align-items:center;justify-content:center;min-width:2rem;min-height:2rem;padding:0.125rem;transform:translateY(-50%);border-radius:2px;pointer-events:none;transition:.2s}
.c-input-search__icon{width:1.5rem;min-width:1.5rem}
.c-input-search__item{width:100%;height:2.5rem;padding:0.3125rem 0.625rem;border:1px solid #b2b2b2;border-radius:4px;outline:none;font-weight:400;font-size:1rem;line-height:1.5;letter-spacing:0;transition:.2s}
.c-input-search__item::placeholder{color:#b2b2b2;font-weight:400;font-size:0.875rem;line-height:1.7142857143;letter-spacing:0}
.c-input-search__item--white{border:1px solid transparent;background-color:#fff}
.c-input-search__item--white:after{width:0.875rem;height:0.875rem}
.c-input-search__item:focus{border:1px solid #008cd6}
.c-input-search__item--adjust:focus{border:1px solid transparent}
.c-input-check{display:flex;align-items:center;max-width:-moz-fit-content;max-width:fit-content}
.c-input-check--ellipsis{max-width:none}
.c-input-check--ellipsis .c-input-check__label{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.c-input-check--ellipsis .c-input-check__input{pointer-events:none}
.c-input-check:hover .c-input-check__input:before{border:1px solid #008cd6}
.c-input-check.is-inactive{pointer-events:none}
.c-input-check.is-inactive .c-input-check__input:before{background-color:#e5e5e5}
.c-input-check.is-inactive .c-input-check__input:after{background-image:url(../images/common/icon-check-inactive.svg)}
.c-input-check__input{-webkit-appearance:none;appearance:none;position:relative;width:1.25rem;min-width:1.25rem;height:1.25rem;margin:0;padding:0;border:none;border-radius:0;outline:none;background:none;cursor:pointer}
.c-input-check__input:before{display:block;border:1px solid #b2b2b2;border-radius:0.1875rem;opacity:1;transition:.2s}
.c-input-check__input:after,.c-input-check__input:before{position:absolute;top:calc(50% + 0.0625rem);left:50%;width:1.25rem;height:1.25rem;transform:translate(-50%,-50%);content:""}
.c-input-check__input:after{border-radius:0.1875rem;background-image:url(../images/common/icon-check.svg);background-size:contain;opacity:0}
.c-input-check__input:checked:after{opacity:0;opacity:1}
.c-input-check__input.is-error:before{border:1px solid #e00}
.c-input-check__label{display:flex;position:relative;top:0.0625rem;align-items:center;padding-left:0.5rem;color:#333;font-weight:400;font-size:1rem;line-height:1.75;letter-spacing:0;cursor:pointer}
.c-input-upload.is-error .c-input-upload__default{border:1px solid #e00}
.c-input-upload__label{display:block;width:-moz-fit-content;width:fit-content;cursor:pointer;transition:.25s ease}
.c-input-upload__label--no-cursor{cursor:default}
.c-input-upload__default{display:flex;align-items:center;padding:0.3125rem 0.5rem;gap:0.25rem;border:1px solid #b2b2b2;border-radius:4px;color:grey;transition:.2s}
.c-input-upload__default:hover{border:1px solid grey;background-color:#f7f7f7;color:#333}
.c-input-upload__default:hover svg path{fill:#333}
.c-input-upload__txt{margin-top:0.25rem;color:grey;font-weight:400;font-size:0.875rem;line-height:1.7142857143;letter-spacing:0}
.c-input-upload__image{width:5rem;height:5rem;object-fit:cover;border-radius:50%}
.c-input-upload__btn-icon path{fill:grey}
.c-input-upload__item{display:none}
.c-input-upload__files{color:grey;font-weight:400;font-size:0.875rem;line-height:1.7142857143;letter-spacing:0}
.c-input-upload__filename{color:#008cd6;cursor:pointer}
.c-input-upload__filename:hover{text-decoration:underline}
.c-input-radio{display:flex;flex-wrap:wrap;align-items:center;gap:1.5rem}
.c-input-radio--ellipsis .c-input-radio__label{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.c-input-radio--ellipsis .c-input-radio__parts{flex-grow:1;min-width:0}
.c-input-radio--ellipsis .c-input-radio__item{pointer-events:none}
.c-input-radio--center{justify-content:center}
.c-input-radio--column{flex-direction:column;align-items:flex-start;gap:1rem}
.c-input-radio.is-inactive{pointer-events:none}
.c-input-radio.is-inactive .c-input-radio__item:before{border:1px solid #b2b2b2;background-color:#e5e5e5}
.c-input-radio.is-inactive .c-input-radio__item:after{background-color:#b2b2b2}
.c-input-radio__item{-webkit-appearance:none;appearance:none;position:relative;width:1.25rem;min-width:1.25rem;height:1.25rem;margin:0;padding:0;border:none;border-radius:0;outline:none;background:none;cursor:pointer}
.c-input-radio__item:before{display:block;width:1.25rem;height:1.25rem;border:1px solid #b2b2b2;border-radius:50%;background-color:#fff;opacity:1;transition:.2s}
.c-input-radio__item:after,.c-input-radio__item:before{position:absolute;top:calc(50% + 0.0625rem);left:50%;transform:translate(-50%,-50%);content:""}
.c-input-radio__item:after{width:0.75rem;height:0.75rem;border-radius:50%;background-color:#008cd6;opacity:0}
.c-input-radio__item:checked:before{border:1px solid #008cd6}
.c-input-radio__item:checked:after{opacity:0;opacity:1}
.c-input-radio__item.is-error:before{border:1px solid #e00}
.c-input-radio__item.is-error:after{background-color:#e00}
.c-input-radio__label{padding-left:0.5rem;font-weight:400;font-size:1rem;line-height:1.5;letter-spacing:0;white-space:nowrap;cursor:pointer}
.c-input-radio__parts{display:flex;align-items:center}
.c-input-radio__parts--width{width:100%}
.c-input-radio__parts:hover .c-input-radio__item:before{border:1px solid #008cd6}
.c-input-radio__parts:hover .c-input-radio__item.is-error:before{border:1px solid #e00}
.c-input-radio__input-normal{height:2.5rem;padding:0 0.625rem;border:1px solid #b2b2b2;border-radius:4px;outline:none;font-weight:400;font-size:1rem;line-height:1.5;letter-spacing:0}
.c-input-radio__input-normal--margin{margin-left:1rem}
.c-input-radio__input-normal--width{width:100%}
.c-input-radio__input-normal::placeholder{color:#b2b2b2}
.c-input-radio__input-normal.is-error{border:1px solid #e00}
.c-input-radio__input-normal.is-error::placeholder{color:#e00}
.c-input-radio__input-normal:focus{border:1px solid #008cd6}
.c-modal-login{visibility:hidden;z-index:1500;position:fixed;top:2.5rem;left:50%;width:-moz-fit-content;width:fit-content;transform:translateX(-50%);border-radius:8px;background-color:#fff;opacity:0;transition:.2s}
.c-modal-login--large{width:50rem}
.c-modal-login--wide{width:66.75rem}
.c-modal-login--normal{width:37.5rem}
.c-modal-login--default{width:43.75rem}
.c-modal-login.is-active{visibility:visible;opacity:1}
.c-modal-login__contents-wrapper{overflow:hidden;border-radius:0 0 16px 0}
.c-modal-login__contents{max-height:85vh;padding:2.5rem 2.5rem 3.5rem;overflow-y:auto}
.c-modal-login__contents--min-height{min-height:15rem}
.c-modal-login__contents--padding{padding:0.25rem}
.c-modal-login__contents.is-active01{padding:2.5rem 1rem 8rem}
.c-modal-login__contents.is-active02{padding:2.5rem 1rem 13rem}
.c-modal-login__contents.is-active03{padding:2.5rem 1rem 18.25rem}
.c-modal-login__structure{max-width:20rem;margin:0 auto}
.c-modal-login__area-parts{display:flex}
.c-modal-login__parts:first-of-type{margin:0 2.5rem 0 0;padding:0 2.5rem 0 0;border-right:1px solid #b2b2b2}
.c-modal-login__area{display:flex;align-items:center;justify-content:space-between;height:2.5rem;padding:0 1rem;border-bottom:1px solid #b2b2b2}
.c-modal-login__area-txt{font-weight:600;font-size:0.875rem;line-height:1.2857142857;letter-spacing:0}
.c-modal-login__close{position:relative;width:0.9375rem;height:0.9375rem;cursor:pointer}
.c-modal-login__close span{position:absolute;top:50%;left:0;width:100%;height:0.0625rem;transform-origin:center;background-color:#b2b2b2}
.c-modal-login__close span:first-of-type{transform:translateY(-50%) rotate(45deg)}
.c-modal-login__close span:nth-of-type(2){transform:translateY(-50%) rotate(-45deg)}
.c-modal-login__txt01{margin-top:1.5rem;font-weight:600;font-size:1rem;line-height:1.5;letter-spacing:0;text-align:center}
.c-modal-login__txt02{margin-top:0.5rem;font-weight:400;font-size:0.75rem;line-height:1.6666666667;letter-spacing:0}
.c-modal-login__txt02 span{font-weight:600;font-size:0.625rem;line-height:1.8;letter-spacing:0}
.c-text-link{display:flex;align-items:center;width:-moz-fit-content;width:fit-content;color:#008cd6;font-weight:400;font-size:1rem;line-height:1.5;letter-spacing:0;cursor:pointer;transition:.2s}
.c-text-link:hover{text-decoration:underline}
.c-text-link--inline{display:inline}
.c-text-link--underline{text-decoration:underline}
.c-text-link__icon{width:0.75rem;margin:0 0.25rem}
.c-text-link__icon path{fill:#008cd6}
.c-text-link__icon--top{position:relative;top:-0.25rem}
.c-text-link__icon--top02{position:relative;top:0.0625rem}
.c-ttl-default,.c-ttl-normal{font-weight:600;line-height:1.5;letter-spacing:0}
.c-ttl-normal{font-size:1.5rem}
.u-dp-flex{display:flex}
.u-jc-center{justify-content:center}
.u-dp-block{display:block}
.u-fs14{font-size:0.875rem}
.u-lh15{line-height:1.5}
.u-mt4{margin-top:0.25rem}
.u-mt16{margin-top:1rem}
.u-mt20{margin-top:1.25rem}
.u-mt24{margin-top:1.5rem}
.u-mt40{margin-top:2.5rem}
.u-mt44{margin-top:2.75rem}
.u-mt48{margin-top:3rem}
.u-mt204{margin-top:12.75rem}
.u-text-center{display:block;width:-moz-fit-content;width:fit-content;margin-right:auto;margin-left:auto}
.u-text-indent{padding-left:1em;text-indent:-1em}
@media screen and (max-width:767px){.is-modal-login-active body{height:100%}
.c-btn-normal{width:100%;font-weight:600;font-size:1rem;line-height:1.5;letter-spacing:0}
.c-btn-normal--white{font-weight:400}
.c-btn-normal--right{width:100%;margin-left:0}
.c-card{flex-direction:column;align-items:flex-start;gap:0.25rem}
.c-card--column{gap:1.5rem}
.c-card02--default:hover{border:none}
.c-card02--default{padding:1.75rem 0;border:none}
.c-card02--responsive-border02:not(:last-of-type):after,.c-card02--responsive-border:after,.c-card02--responsive-border:before{position:absolute;left:50%;width:calc(100% + 3rem);height:1px;transform:translateX(-50%);background-color:#f1f5f9;content:""}
.c-card02--responsive-border02:not(:last-of-type):after{bottom:0}
.c-card02--responsive-border02:first-of-type:before{position:absolute;top:0;left:50%;width:calc(100% + 3rem);height:1px;transform:translateX(-50%);background-color:#f1f5f9;content:""}
.c-card02--hover:hover{border:none;background-color:transparent}
.c-card02--hover:hover .c-card02__area-parts:before{background-color:#f1f5f9}
.c-card02__area{flex-direction:column;align-items:flex-start}
.c-card02__area--row{flex-direction:row;align-items:flex-start}
.c-card02__area-parts{margin-top:1.25rem;padding-top:1.25rem}
.c-card02__area-parts:before{background-color:#f1f5f9}
.c-card02__grid-item{max-width:none}
.c-card02__info{flex-direction:column;align-items:flex-start;gap:0.5rem}
.c-card02__info-parts-txt{width:6.25rem}
.c-input__calnder{width:100%}
.c-input__description{gap:0.5rem}
.c-input__description--nowrap{flex-wrap:nowrap}
.c-input__item--width,.c-input__item--width02{width:100%}
.c-input-search--icon-small .c-input-search__icon{right:0.25rem;width:1.125rem;height:1.125rem}
.c-input-search__item::placeholder{font-weight:400;font-size:1rem;line-height:1.25;letter-spacing:0}
.c-input-search__item--adjust::placeholder{font-weight:400;font-size:0.875rem;line-height:1.4285714286;letter-spacing:0}
.c-input-check--top-responsive{position:relative;top:0.125rem}
.c-input-upload,.c-input-upload__label{width:100%}
.c-input-upload__default{justify-content:center}
.c-input-radio{flex-direction:column;align-items:flex-start;gap:1rem}
.c-input-radio__input-normal,.c-input-radio__parts--width .c-input-radio__input-normal{width:100%}
.c-modal-login{top:auto;bottom:-100%;left:0;width:100%;transform:none;border-radius:8px 8px 0 0;transition:.8s cubic-bezier(.16,1,.3,1)}
.c-modal-login.is-active{bottom:0}
.c-modal-login.is-close{transition:.8s cubic-bezier(.25,.46,.45,.94)}
.c-modal-login__contents-wrapper{border-radius:0}
.c-modal-login__contents{max-height:calc(100svh - 4rem);padding:2.5rem 1rem 3.5rem;overflow-x:hidden}
.c-modal-login__contents--max-height{max-height:calc(100svh - 9rem)}
.c-modal-login__contents--padding{padding:0.25rem}
.c-modal-login__structure{max-width:100%}
.c-modal-login__area-parts{flex-direction:column}
.c-modal-login__parts:first-of-type{margin:0 0 2.5rem;padding:0 0 2.5rem;border-right:none;border-bottom:1px solid #b2b2b2}
.c-text-link{display:inline-block}
.c-text-link--inline{display:inline}
.c-text-link__icon{margin:0.25rem 0.125rem 0.3125rem}
.c-text-link__icon--top{top:0.0625rem}
.c-text-link__icon--top02{top:0}
.c-ttl-normal--responsive,.c-ttl-secondary{font-weight:600;line-height:1.5;letter-spacing:0}
.c-ttl-normal--responsive{font-size:1rem}
.c-ttl-normal--responsive-small{font-weight:600;font-size:1.125rem;line-height:1.3333333333;letter-spacing:0}
.u-dp-block-sm{display:block}
.u-mt4-sm{margin-top:0.25rem}
.u-mt16-sm{margin-top:1rem}
.u-mt20-sm{margin-top:1.25rem}
.u-mt24-sm{margin-top:1.5rem}
.u-mt40-sm{margin-top:2.5rem}
.u-mt48-sm{margin-top:3rem}
.u-text-center{display:block;text-align:center}}
@media screen and (max-width:960px){.is-modal-login-active .l-backlayer,.is-modalcat-active .l-backlayer,.is-modalmnft-active .l-backlayer{visibility:visible;opacity:1}}
@media screen and (min-width:768px)and (max-width:1200px){.c-card--width{max-width:42.5rem}}
@media screen and (max-width:1200px){.c-card02__grid{grid-template-columns:max-content max-content max-content 1fr}
.c-card02__grid--column{grid-template-columns:1fr}
.c-card02__grid--column .c-card02__grid-area{display:block}
.c-card02__grid-area{display:none}
.c-card02__grid-square{margin-left:auto}}
/* Font parity with designer's site — scoped to header, mega nav, and login modal only
   so unmigrated pages keep their core (Bootstrap) font stack. Designer applies these
   globally via body{}; we scope to avoid disturbing the rest of the page.
   NB: -webkit-font-smoothing:antialiased makes the strokes thinner than the designer's
   headless-Chrome rendering; keeping the family override alone matches designer weight. */
.l-header,
.l-nav-mega,
.c-modal-login,
.c-modal-small--header {
  font-family: 'Noto Sans JP', sans-serif;
  font-feature-settings: "palt";
}

/* Login modal error message (designer HTML has no error class; add scoped style) */
.c-modal-login__error {
  color: #d9333f;
  font-size: 0.875rem;
  line-height: 1.5;
  text-align: center;
}

/* デザイナー CSS は .l-header__list-menu-icon に width のみ指定しているが、
   HTML の height="48" 属性が残るとアイコンが縦長 (24x48) に潰れる。
   幅と同じサイズにして正円で表示する。 */
.l-header__list-menu-icon {
  height: 1.5rem;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .l-header__list-menu-icon { height: 1.75rem; }
}

/* アバタードロップダウン (ヘッダー内 .c-modal-small--header) の見た目調整
   - デザイナーのグローバル ress.css リセット (`* { margin:0; padding:0 }` と ul の list-style 消し)
     は本テーマでは未読込 (未変換ページ保護のため)。ul のデフォルトブレット/インデントが
     ヘッダーメニューに漏れて表示されるためスコープでリセットする。
   - デザイナー CSS の `.c-modal-small__list-item span { white-space: nowrap; ... }` は
     `--link` バリアントには効かないため、テキストが 2 行折り返し (span 高 48px) して
     項目が 72px に膨らみ、3 項目で max-height:12rem(192px) を超えてスクロールが出る。
     `--link` にも同じスタイルを適用してテキストを 1 行に固定する。
   - ヘッダーのアバターメニューは 3 項目固定で全て見せたいので max-height を解除する。 */
.c-modal-small--header .c-modal-small__list {
  max-height: none;
  overflow-y: visible;
  list-style: none;
  margin: 0;
  padding: 0;
}
.c-modal-small--header .c-modal-small__list-item--link {
  list-style: none;
}
.c-modal-small--header .c-modal-small__list-item--link span:not(.c-text-num) {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* ログインモーダル インラインエラー (top-screen.md §5.9 LM-E01/E02/E03)。
   デザイナー web-order.css は 62.5% ベース (1rem=10px) で作成されているが、
   本 header.css は 100% ベースにリスケール済み (先頭のコメント参照)。
   デザイナーの 1.4rem(=14px) → 本ファイル 0.875rem、0.4rem(=4px) → 0.25rem。 */
.c-modal-login .c-text-attention__item {
  display: block;
  padding-left: 1em;
  text-indent: -1em;
  color: #e00;
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 1.4285714286;
  letter-spacing: 0;
}
/* LM-E02/E03 (フィールド直下エラー) だけ入力欄との隙間を確保。
   LM-E01 (フォームトップエラー) は u-mt16 が 1rem のマージンを付与するのでノータッチ。 */
.c-modal-login .c-input .c-text-attention__item {
  margin-top: 0.25rem;
}
.c-modal-login .c-text-attention__item[hidden] { display: none; }

/* エラー状態のフィールド枠を赤に (top-screen.md §5.9 LM-E01/E02/E03 の画面イメージ準拠)。
   - フィールド単位エラー (LM-E02/E03): 直近の .c-input 内の未 hidden .c-text-attention__item を検出
   - 認証エラー (LM-E01): .c-modal-login__parts の直下 (=.c-input の外) にエラーが出るケース
     このとき当該セクション内の全ての入力フィールドを赤枠にする */
.c-modal-login .c-input:has(> .c-text-attention__item:not([hidden])) > .c-input__item {
  border-color: #e00;
}
.c-modal-login .c-modal-login__parts:has(> .c-text-attention__item:not([hidden])) .c-input__item {
  border-color: #e00;
}

/* 認証コードモーダル AC-08 FAQ 案内は 1 行に収める必要がある。
   .c-text-link は display:flex/inline-block 指定で inline フローに乗らず改行してしまうため
   段落内にネストされたリンクだけ display:inline で上書きする (top-screen.md §5.10 AC-08)。 */
.c-modal-login p .c-text-link {
  display: inline;
}
