/* Page CSS. Existing common styles are overridden only inside .coop-line-shell.
   Main content classes use the line- prefix to allow fragment integration. */
html{visibility:visible!important;scroll-behavior:smooth}
.coop-line-shell{margin:0;min-width:0;overflow-x:visible;font-family:"Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;font-size:16px;line-height:1.7;text-align:left;color:#252525;-webkit-text-size-adjust:100%;text-size-adjust:100%}
.coop-line-shell *,.line-page *{box-sizing:border-box}
.coop-line-shell a:focus-visible,.line-page a:focus-visible,.coop-line-shell summary:focus-visible{outline:3px solid #174f8c;outline-offset:5px;opacity:1}
.line-skip{position:absolute;left:16px;top:-100px;padding:12px 20px;background:white;color:#163f32;z-index:20}
.line-skip:focus{top:12px}
.coop-line-shell .header .inner{width:min(1190px,calc(100% - 48px))}
.coop-line-shell .header .site-logo{height:41px;width:167px;margin:0}
.coop-line-shell .header .site-logo a{display:block;width:100%;height:100%;background:url(../img/h_logo.png) center/contain no-repeat;white-space:nowrap;text-indent:115%;overflow:hidden}
.coop-line-shell .header .gnav ul{display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:center;padding:0 24px}
.coop-line-shell .header .gnav ul li{margin:0}
.coop-line-shell .header .gnav a{font-size:14px;line-height:1.6;display:block}
.coop-line-shell .header .h_tel li:nth-child(2){font-size:30px;white-space:nowrap}
.line-mobile-menu{display:none}
.coop-line-shell .footer{min-width:0;padding:56px 24px 105px}
.coop-line-shell .footer .name{width:234px;height:57px}
.coop-line-shell .footer .name a{background-image:url(../img/h_logo.png)}
.coop-line-shell .footer .info{width:min(1019px,100%)}
.coop-line-shell .footer .info a[href^="tel:"]{pointer-events:auto}
.coop-line-shell .footer .sitemap_link{max-width:1190px;display:grid;grid-template-columns:repeat(6,1fr);gap:20px;margin:0 auto 64px}
.coop-line-shell .footer .sitemap_link ul{padding:0}
.coop-line-shell .footer .sitemap_link a{font-size:12px;line-height:1.8}
.coop-line-shell .footer .sitemap_link .sub a{font-size:11px}
.coop-line-shell .footer .copy{line-height:1.8}
.line-contact{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid #ddd;display:flex;gap:20px;align-items:center;justify-content:center;padding:10px 20px;z-index:10;box-shadow:0 -2px 10px #00000008;font-size:13px}
.line-contact a{min-height:44px;display:flex;align-items:center;justify-content:center}
.line-contact-phone{font-size:24px;font-weight:bold;color:#252525}
.line-contact-inquiry{background:#252525;color:#fff;padding:8px 24px;border-radius:4px;font-size:14px}
.line-page{--ink:#153f32;--green:#267746;--serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;color:#252f2a;font-family:"Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;line-height:1.65;text-align:left;font-size:18px}
.line-page h1,.line-page h2,.line-page h3,.line-page p,.line-page figure{margin:0}
.line-page ul,.line-page ol{padding:0;margin:0;list-style:none}
.line-page img{max-width:100%;height:auto;display:block}
.line-page a{color:inherit;text-decoration:none}
.line-wrap{width:min(1160px,calc(100% - 64px));margin-inline:auto}
.line-breadcrumb{padding-block:16px;font-size:13px;color:#4e5d55}
.line-breadcrumb ol{display:flex;gap:12px;flex-wrap:wrap}
.line-breadcrumb li+li:before{content:"›";margin-right:12px}
.line-breadcrumb a{text-decoration:underline;text-underline-offset:3px}
.line-hero{position:relative;background:#f9fbf5 url(../img/leaves.svg) center/cover no-repeat;overflow:hidden}
.line-hero-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr);align-items:center;gap:12px;padding-block:40px 28px}
.line-eyebrow{font-family:var(--serif);color:#326e51;font-size:21px;letter-spacing:.14em;margin-bottom:16px!important}
.line-page h1{font-family:var(--serif);font-size:clamp(25px,3vw,37px);font-weight:700;color:var(--ink);line-height:1.45;margin-bottom:10px}
.line-hero-title{font-family:var(--serif);font-size:clamp(34px,4.6vw,58px);line-height:1.25;font-weight:700;color:var(--green);letter-spacing:.015em}
.line-hero-description{font-size:21px;line-height:1.7;margin:18px 0 22px!important}
.line-add-button{display:flex;align-items:center;justify-content:center;gap:18px;width:fit-content;max-width:100%;min-height:72px;padding:12px 30px;border-radius:999px;background:linear-gradient(175deg,#2fa852,#078338);color:white!important;font-size:26px;font-weight:700;line-height:1.4;box-shadow:0 3px 5px #144a2320}
.line-add-button:hover{opacity:1;background:#076f30}
.line-add-button>span:last-child{font-size:38px;line-height:1}
.line-bubble{position:relative;display:grid;place-items:center;flex-shrink:0;background:white;width:51px;height:43px;border-radius:50%;color:#087f32;font-family:Arial,sans-serif;font-size:16px;letter-spacing:-.6px}
.line-bubble:after{content:"";position:absolute;bottom:-4px;left:16px;border-style:solid;border-width:7px 9px 0 0;border-color:white transparent transparent transparent;transform:rotate(12deg)}
.line-free{font-size:17px;font-weight:bold;color:var(--ink);margin-top:10px!important;max-width:490px;text-align:center;letter-spacing:.14em}
.line-phone-figure{text-align:center;justify-self:center;width:100%;max-width:340px;transform:rotate(5deg)}
.line-phone-figure img{width:100%;filter:drop-shadow(0 12px 6px #28432d18)}
.line-phone-figure figcaption{font-size:11px;color:#566759;margin-top:10px}
.line-information{background:#edf6ec;padding:28px 0 26px}
.line-section-title{display:flex;align-items:center;justify-content:center;gap:20px;font-family:var(--serif);font-size:32px;font-weight:700;color:var(--ink);text-align:center;margin-bottom:22px!important;line-height:1.5}
.line-section-title:before,.line-section-title:after{content:"";height:1px;width:105px;background:#a2bdae}
.line-section-title span:before,.line-section-title span:after{content:"❧";color:#91ad76;font-size:36px;margin:0 14px;display:inline-block}
.line-section-title span:after{transform:scaleX(-1)}
.line-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.line-cards li{text-align:center;border-radius:14px;background:#fff;padding:20px 12px 18px;box-shadow:0 2px 14px #31654104}
.line-cards img{width:76px;height:76px;margin:0 auto 10px}
.line-cards h3{font-family:var(--serif);font-size:23px;font-weight:700;color:var(--ink);line-height:1.4;margin-bottom:8px}
.line-cards p{font-size:17px;line-height:1.5}
.line-member{border:1px solid #ddc7a4;border-radius:14px;background:#fffcf6;display:flex;align-items:center;gap:28px;margin-top:18px;padding:24px 32px}
.line-member-card{flex:0 0 155px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:95px;background:linear-gradient(#fff9ee,#f1e0c9);border:1px solid #cbbb9c;border-radius:7px;transform:rotate(-8deg);box-shadow:0 3px 3px #4d381b17;font-family:var(--serif);color:#79491e;font-size:18px;font-weight:700}
.line-member-card span{color:#69935a;font-size:30px;line-height:1}
.line-member h3{font-family:var(--serif);font-size:28px;font-weight:700;color:#79491e;margin-bottom:4px}
.line-member p{font-size:17px}
.line-registration{padding:26px 0 24px;background:#fff}
.line-registration-grid{display:grid;grid-template-columns:minmax(0,3.6fr) minmax(180px,1fr);gap:16px}
.line-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.line-steps li{position:relative;border-radius:14px;background:#faf9f5;text-align:center;padding:24px 12px 20px}
.line-step-number{position:absolute;top:12px;left:14px;border-radius:50%;width:42px;height:42px;background:#519855;color:#fff;font-size:28px;line-height:42px;font-weight:bold}
.line-steps li+li:before{content:"›";position:absolute;left:-17px;top:45%;font-size:38px;color:#669c74}
.line-step-art{height:136px;display:flex;align-items:center;justify-content:center;position:relative;margin-bottom:6px}
.line-mini-button{background:linear-gradient(#31a75a,#12893c);border-radius:7px;color:white;font-size:15px;padding:10px 12px;font-weight:bold;margin-top:14px}
.line-tap{position:absolute;right:15px;bottom:4px;font-size:44px;color:#8b5b32;transform:rotate(-20deg)}
.line-mini-phone{height:126px;width:72px;display:flex;align-items:center;justify-content:center;gap:12px;flex-direction:column;border:3px solid #363e3a;background:#fff;border-radius:12px;box-shadow:2px 3px 0 #ddd;position:relative}
.line-mini-phone:before{content:"";position:absolute;top:0;width:32px;height:4px;background:#363e3a;border-radius:0 0 6px 6px}
.line-mini-bubble{background:#087c35;border-radius:50%;color:white;width:42px;height:38px;display:grid;place-items:center;font-size:12px;font-weight:bold}
.line-mini-add{background:#267746;color:white;padding:1px 14px;border-radius:5px;font-size:16px}
.line-check{display:grid;place-items:center;background:#159647;color:white;font-size:35px;border-radius:50%;width:46px;height:46px}
.line-steps p{font-size:17px;line-height:1.5}
.line-qr{background:#eef7f2;border-radius:14px;text-align:center;padding:14px 18px}
.line-qr figcaption{font-size:18px;font-weight:bold;line-height:1.4;margin-bottom:8px}
.line-qr a{display:block;max-width:156px;margin:auto;background:white;border-radius:8px;padding:8px}
.line-qr img{width:100%}
.line-qr p{font-size:12px;margin-top:7px}
.line-steps-note{font-size:12px;color:#536158;margin-top:12px!important}
.line-last-cta{background:#fbfaf1 url(../img/leaves.svg) center/cover no-repeat;text-align:center;padding:28px 0 26px}
.line-last-cta h2{font-family:var(--serif);font-size:36px;font-weight:700;color:var(--ink);line-height:1.5;margin-bottom:4px;text-wrap:balance}
.line-last-cta>div>p:first-of-type{font-size:21px;margin-bottom:18px}
.line-last-cta .line-add-button{margin-inline:auto}
.line-disclaimer{font-size:12px;margin-top:18px!important;line-height:1.8}
.line-policy{font-size:12px;margin-top:8px!important}
.line-policy a{text-decoration:underline;text-underline-offset:3px}
.line-mobile-break{display:none}
@media(max-width:1100px){.coop-line-shell .header .inner .box_l{width:260px}.coop-line-shell .header .inner .box_r{width:calc(100% - 260px)}.coop-line-shell .header .inner .box_r .h_tel{width:260px}.coop-line-shell .header .inner .box_r .h_tel li:nth-child(2){font-size:26px}.coop-line-shell .header .inner .box_r .btn_list{width:calc(100% - 260px);display:flex;gap:8px}.coop-line-shell .header .inner .box_r .btn_list li{width:50%}.line-wrap{width:calc(100% - 48px)}.line-hero-description{font-size:18px}.line-add-button{font-size:21px;gap:12px;padding:12px 24px}.line-cards h3{font-size:20px}.line-mini-button{font-size:12px}.coop-line-shell .footer .sitemap_link{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.coop-line-shell .header .pc{display:none!important}.coop-line-shell .header{height:auto;min-height:68px;background:#fff;position:relative!important}.coop-line-shell .header .inner{width:calc(100% - 32px);padding:12px 0}.coop-line-shell .header .site-logo{height:41px;width:167px}.line-mobile-menu{display:block;position:relative}.line-mobile-menu summary{position:absolute;right:16px;top:-57px;cursor:pointer;font-size:14px;padding:10px;border:1px solid #d4dfd6;border-radius:6px;min-height:44px}.line-mobile-menu nav{padding:12px 24px;border-top:1px solid #ddd;background:#f9faf8}.line-mobile-menu nav ul{display:grid;grid-template-columns:1fr 1fr;gap:6px 16px}.line-mobile-menu a{display:flex;align-items:center;min-height:44px;font-size:14px}.line-hero-grid{grid-template-columns:minmax(0,1.5fr) minmax(190px,1fr)}.line-hero-title{font-size:39px}.line-section-title{font-size:28px;gap:10px}.line-section-title:before,.line-section-title:after{width:55px}.line-section-title span:before,.line-section-title span:after{margin:0 7px}.line-member{padding:20px;gap:20px}.line-member h3{font-size:24px}.line-registration-grid{grid-template-columns:1fr}.line-qr{display:grid;grid-template-columns:1fr 150px;align-items:center;justify-content:center;gap:0 20px;padding:16px 24px;max-width:500px;width:100%;margin:0 auto!important}.line-qr a{grid-column:2;grid-row:1/3;width:150px}.line-qr figcaption{margin:0}.line-qr p{grid-column:1}.line-contact>span{display:none}.line-contact{gap:16px}.line-contact-phone{font-size:22px}.line-hero-description br{display:none}}
@media(max-width:600px){.line-wrap{width:calc(100% - 32px)}.line-page{font-size:16px}.line-breadcrumb{font-size:11px;padding-block:10px}.line-hero-grid{grid-template-columns:1fr;padding-top:28px;gap:18px}.line-hero-copy{text-align:center}.line-eyebrow{font-size:15px;letter-spacing:.1em;margin-bottom:12px!important}.line-page h1{font-size:26px;margin-bottom:12px;line-height:1.4}.line-mobile-break{display:block}.line-hero-title{font-size:clamp(28px,7.7vw,43px);line-height:1.3}.line-hero-description{font-size:16px;margin:16px 0 18px!important;text-align:left}.line-add-button{width:100%;font-size:clamp(16px,4.5vw,22px);gap:12px;padding:12px 16px;min-height:64px}.line-bubble{width:43px;height:37px;font-size:14px}.line-add-button>span:last-child{font-size:32px}.line-free{font-size:14px;max-width:none}.line-phone-figure{max-width:220px;transform:rotate(3deg)}.line-phone-figure figcaption{font-size:10px}.line-information{padding-top:22px}.line-section-title{font-size:25px;gap:7px;margin-bottom:18px!important}.line-section-title:before,.line-section-title:after{display:none}.line-section-title span:before,.line-section-title span:after{font-size:27px;margin:0 7px}.line-cards{grid-template-columns:1fr 1fr;gap:10px}.line-cards li{padding:18px 8px}.line-cards img{width:58px;height:58px}.line-cards h3{font-size:18px}.line-cards p{font-size:14px}.line-member{display:block;padding:20px}.line-member-card{width:135px;min-height:75px;font-size:16px;margin:0 auto 22px}.line-member h3{font-size:22px;text-align:center;margin-bottom:10px}.line-member p{font-size:15px}.line-desktop-break{display:none}.line-steps{grid-template-columns:1fr;gap:16px}.line-steps li{display:grid;grid-template-columns:120px 1fr;gap:8px;align-items:center;padding:18px 12px}.line-step-art{height:110px;margin:0}.line-mini-phone{height:102px;width:62px}.line-step-number{top:8px;left:8px;width:32px;height:32px;line-height:32px;font-size:22px;z-index:1}.line-steps li+li:before{left:calc(50% - 8px);top:-26px;transform:rotate(90deg);font-size:28px}.line-steps p{font-size:16px}.line-mini-button{font-size:10px;padding:10px 5px;margin:0}.line-tap{font-size:36px;right:8px;bottom:8px}.line-qr{grid-template-columns:1fr 140px;padding:16px;gap:0 12px}.line-qr a{width:140px}.line-qr figcaption{font-size:17px}.line-steps-note{font-size:11px}.line-last-cta{padding:26px 0}.line-last-cta h2{font-size:clamp(23px,6.6vw,30px);margin-bottom:10px}.line-last-cta>div>p:first-of-type{font-size:16px}.line-disclaimer{text-align:left;font-size:11px}.coop-line-shell .footer{padding:36px 20px 100px}.coop-line-shell .footer .lead{font-size:14px;margin-bottom:24px}.coop-line-shell .footer .info ul li{font-size:14px!important;line-height:1.8}.coop-line-shell .footer .sitemap_link{display:none}.coop-line-shell .footer .copy{font-size:11px}.line-contact{gap:8px;padding:8px 10px calc(8px + env(safe-area-inset-bottom))}.line-contact-phone{font-size:20px}.line-contact-inquiry{font-size:12px;padding:8px 12px}.line-mobile-menu nav ul{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.coop-line-shell a,.line-page a{transition:none}}
@media print{.line-contact,.line-mobile-menu,.line-skip{display:none}.coop-line-shell .footer{padding-bottom:24px}.line-page{font-size:14px}.line-hero-grid{grid-template-columns:1.65fr 1fr}.line-phone-figure{max-width:230px}.line-cards{grid-template-columns:repeat(4,1fr)}.line-steps{grid-template-columns:repeat(3,1fr)}.line-cards li,.line-steps li,.line-member,.line-qr{break-inside:avoid}.line-add-button{border:2px solid #267746;color:#163f32!important}.line-bubble{border:1px solid #267746}}

/* Same device-font stack as /lp/ube/ube-lp-assets/typography.css.
   Keep this after page and shared styles, including the previous serif rules. */
.coop-line-shell,.line-page{
 --line-font:"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ヒラギノ角ゴ Pro W6","メイリオ",Meiryo,"Helvetica Neue",Helvetica,Arial,sans-serif;
 --serif:var(--line-font);
 font-family:var(--line-font)!important;font-weight:400;
}
.coop-line-shell *,.line-page *{font-family:var(--line-font)!important;font-style:normal!important}
.line-page :is(h1,h2,h3,strong,.line-add-button,summary){font-weight:700}
.line-page :is(h1,h2,h3){letter-spacing:0}
