h1{font-size:clamp(36px,5vw,72px);line-height:1.1}h2{font-size:clamp(28px,3.5vw,48px);line-height:1.2}h3{font-size:clamp(20px,2.5vw,32px);line-height:1.35}p{font-size:clamp(15px,1.5vw,18px);line-height:1.8}.page-hero{flex-direction:column;justify-content:flex-end;width:100%;height:clamp(400px,55vh,600px);display:flex;position:relative;overflow:hidden}.page-hero__image{object-fit:cover;object-position:center;width:100%;height:100%;aspect-ratio:unset;z-index:0;position:absolute;inset:0}.page-hero:after{content:"";z-index:1;background:linear-gradient(90deg,#0a0f28b8 0%,#0a0f286b 50%,#0a0f281f 100%);position:absolute;inset:0}.page-hero__content{z-index:2;padding:0 8% clamp(32px,4.5vw,52px);position:relative}.page-hero__title{color:#fff;letter-spacing:.06em;margin:0;font-size:clamp(38px,5.5vw,76px);font-weight:900;line-height:1}.page-hero__subtitle{color:#ffffffe0;letter-spacing:.14em;margin:.35em 0 0;font-size:clamp(13px,1.4vw,18px);font-weight:400}.page-hero__detail{z-index:2;border-top:1px solid #ffffff4d;align-items:center;gap:clamp(8px,1.5vw,20px);margin:0 8% clamp(32px,4.5vw,52px);padding-top:14px;display:inline-flex;position:relative}.page-hero__detail--ja{color:#fff;white-space:nowrap;margin:0;font-size:clamp(14px,1.5vw,20px);font-weight:600}.page-hero__detail--en{color:#ffffff73;letter-spacing:.15em;margin:0;font-size:clamp(11px,1.1vw,14px);font-weight:400}@media (max-width:1024px){.page-hero{height:clamp(340px,48vw,500px)}}@media (max-width:768px){.page-hero{height:clamp(280px,50vw,420px)}.page-hero__content{padding:0 6% clamp(24px,4vw,36px)}.page-hero__detail{margin:0 6% clamp(24px,4vw,36px)}}.flip{transform:scaleX(-1)}.breadcrumb{justify-content:flex-start;width:100%;margin:24px 0 16px;padding-left:5%;padding-right:5%;font-size:clamp(13px,1.2vw,16px);display:flex}.breadcrumb__list{flex-wrap:wrap;gap:clamp(4px,.8vw,10px) 0;margin:0;padding:0;list-style:none;display:flex}.breadcrumb__item{color:#888;font-size:inherit;letter-spacing:.03em;overflow-wrap:anywhere;word-break:break-all;align-items:center;line-height:1.7;display:flex}.breadcrumb__item-link{color:#1a3a7c;font-weight:500;font-size:inherit;white-space:nowrap;text-decoration:none;transition:color .2s;display:inline-block}.breadcrumb__item-link:hover{color:#f37800}.breadcrumb__item:not(:last-child):after{content:">";color:#bbb;white-space:nowrap;margin:0 clamp(4px,.5vw,8px);font-size:.95em;font-weight:700}.breadcrumb__item:last-child{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.outlet{max-width:1040px;margin:0 auto;padding:clamp(56px,8vw,104px) 5%}.outlet h2{color:#111827;letter-spacing:-.01em;word-break:auto-phrase;text-wrap:pretty;margin:0 0 clamp(32px,5vw,56px);font-size:clamp(22px,2.6vw,36px);font-weight:900;line-height:1.5}.outlet h2:before{content:"";background:#1a3a7c;border-radius:2px;width:48px;height:4px;margin:0 0 22px;display:block}.outlet__body{max-width:820px}.outlet__description{color:#374151;margin:0 0 clamp(24px,3vw,36px);font-size:clamp(14px,1vw,16px);line-height:2}.outlet__notice{text-align:left;color:#9a3412;background:#fff7ed;border-left:4px solid #ea580c;border-radius:8px;margin:0;padding:18px 22px;font-size:clamp(13px,1vw,15px);font-weight:500;line-height:1.9;display:block}.outlec-contact{text-align:center;padding:clamp(40px,8vw,100px) 5%}.outlec-contact__buttons{flex-wrap:wrap;justify-content:center;gap:20px;display:flex}.outlec-contact__title{margin-bottom:clamp(40px,6vw,80px);padding:0 clamp(16px,4vw,40px);display:inline-block;position:relative}.outlec-contact__title:before,.outlec-contact__title:after{content:"";background:#1a3a7c;width:clamp(40px,10vw,75px);height:3px;position:absolute;top:50%;transform:translateY(-50%)}.outlec-contact__title:before{left:calc(-1.5*clamp(16px,4vw,40px))}.outlec-contact__title:after{right:calc(-1.5*clamp(16px,4vw,40px))}@media (max-width:768px){.outlec-contact__title:before,.outlec-contact__title:after{width:clamp(20px,8vw,40px);height:2px}}.outlet-list{padding-top:clamp(40px,8vw,100px);padding-bottom:clamp(40px,8vw,100px)}.outlet-list__inner{max-width:1200px;margin:0 auto;padding:0 5%}.outlet-list__items{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:clamp(20px,3vw,40px);list-style:none;display:grid}.outlet-list__item{background:#fff;border:1px solid #e4e7f0;border-radius:12px;transition:transform .25s,box-shadow .25s,border-color .25s;overflow:hidden}.outlet-list__item:hover{border-color:#1a3a7c;transform:translateY(-6px);box-shadow:0 16px 40px #0a143c24}.outlet-list__image{aspect-ratio:4/3;object-fit:cover;background-color:#f5f5f5;width:100%;height:auto;display:block}.outlet-list__info{text-align:left;padding:22px 24px}.outlet-list__title{color:#111827;margin-bottom:8px;font-size:clamp(16px,2vw,20px);font-weight:700}.outlet-list__desc{color:#555;font-size:clamp(14px,1.6vw,16px);line-height:1.85}.outlet-list__button{margin-top:16px}.outlet-list__empty-message{text-align:center;color:#555;font-size:clamp(16px,2vw,20px);line-height:2}.contact{text-align:center;padding:clamp(40px,8vw,100px) 5%}.contact__buttons{flex-wrap:wrap;justify-content:center;gap:20px;display:flex}.contact__title{margin-bottom:clamp(40px,6vw,80px);padding:0 clamp(16px,4vw,40px);display:inline-block;position:relative}.contact__title:before,.contact__title:after{content:"";background:#1a3a7c;width:clamp(40px,10vw,75px);height:3px;position:absolute;top:50%;transform:translateY(-50%)}.contact__title:before{left:calc(-1.5*clamp(16px,4vw,40px))}.contact__title:after{right:calc(-1.5*clamp(16px,4vw,40px))}@media (max-width:768px){.contact__title:before,.contact__title:after{width:clamp(20px,8vw,40px);height:2px}}.floating-banner{z-index:1000;position:fixed;bottom:2.5vw;right:2vw}.floating-banner a{color:#fff;background:#1a3a7c;border-radius:9999px;justify-content:center;align-items:center;width:300px;height:64px;padding:12px 20px;font-size:clamp(14px,2vw,16px);font-weight:600;text-decoration:none;transition:all .3s;display:flex;position:relative;box-shadow:0 4px 10px #0003}.floating-banner a:hover{color:#1a3a7c;background-color:#fff;transform:translateY(-2px);box-shadow:0 6px 12px #00000040}.floating-banner .icon-wrap{color:#1a3a7c;background-color:#fff;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;font-size:1.2em;transition:all .3s;display:flex;position:absolute;left:16px}.floating-banner .text{text-align:center;margin-left:28px;line-height:1}.floating-banner .arrow,.floating-banner .contact-panel{display:none}@media (max-width:1024px){.floating-banner{margin:5px;bottom:0;left:0;right:0}.floating-banner .floating-toggle{width:100%;height:56px;box-shadow:none;color:#fff;cursor:pointer;background:#1a3a7c;border-radius:0;justify-content:center;align-items:center;font-size:16px;font-weight:600;transition:background .3s;display:flex}.floating-banner .floating-toggle:hover,.floating-banner .floating-toggle.active{color:#fff;background:#0f2456}.floating-banner .floating-toggle .icon-wrap{display:none}.floating-banner .floating-toggle .text{margin-left:0}.floating-banner .floating-toggle .arrow{content:"▼";margin-left:8px;font-size:.9em;transition:transform .3s;display:inline-block;transform:rotate(0)}.floating-banner .floating-toggle.active .arrow{transform:rotate(180deg)}.floating-banner .contact-panel{opacity:0;background:0 0;flex-direction:column;align-items:stretch;width:100%;max-height:0;transition:all .4s;display:flex;position:absolute;bottom:100%;left:0;overflow:hidden}.floating-banner .contact-panel.open{opacity:1;max-height:220px}.floating-banner .contact-panel .contact-btn{color:#fff;border-radius:9999px;justify-content:center;align-items:center;gap:10px;width:100%;max-width:90%;height:56px;margin:6px auto;font-size:15px;font-weight:600;text-decoration:none;transition:opacity .3s;display:flex}.floating-banner .contact-panel .contact-btn i{font-size:1.1em}.floating-banner .contact-panel .contact-btn--blue{background:#0096ff}.floating-banner .contact-panel .contact-btn--form{background:#00a0e9}.floating-banner .contact-panel .contact-btn--line{background:#06c755}.floating-banner .contact-panel .contact-btn:hover{opacity:.85}}.floating-banner a:hover .icon-wrap{color:#fff;background-color:#1a3a7c}
