/* ロゴ5案と共通組版。選択済み02はメインTOPにも適用。 */
.logo-identity.logo,.logo-identity.side-brand,.logo-identity.brand{display:inline-flex;flex-direction:row;align-items:center;gap:7px;min-width:0;text-align:left;letter-spacing:0}
.logo-identity .logo-symbol{display:block;flex:none;width:43px;height:43px;max-width:none;object-fit:contain}
.logo-identity .logo-lettering{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}
.logo-identity .service-name{font-size:20px;line-height:1.25;font-weight:900;letter-spacing:-.04em;white-space:nowrap}
.logo-identity .service-tagline{font-size:9px;line-height:1.45;font-weight:700;letter-spacing:.03em;white-space:nowrap}
.logo-choice-02 .service-name{position:relative;padding-bottom:4px}.logo-choice-02 .service-name:after{content:'';position:absolute;bottom:0;left:0;width:30px;height:3px;border-radius:2px;background:#ffdb00}
.logo-choice-03 .service-tagline{background:#ffdb00;color:#171717;border-radius:5px;padding:2px 5px}
.logo-choice-04 .service-name{font-weight:800;letter-spacing:-.01em}.logo-choice-04 .service-tagline{font-weight:500}
.logo-choice-05 .service-tagline{background:#171717;color:#ffdb00;border-radius:4px;padding:2px 5px}
.side-brand.logo-identity .logo-symbol{width:46px;height:46px}.side-brand.logo-identity .service-name{font-size:22px}.lp-footer .logo-identity{justify-content:center}
.logo-gallery:before{display:none}.logo-gallery{background:#f1f1f1}.logo-gallery-wrap{max-width:1220px;margin:auto;padding:35px 30px 45px}.logo-gallery-header{max-width:920px;margin-bottom:30px}.logo-gallery-header>p:first-child{font-size:12px;font-weight:800;color:#595959}.logo-gallery-header h1{font-size:34px;line-height:1.6;font-weight:900;margin:16px 0}.logo-gallery-header>p{font-size:13px;line-height:2}.logo-gallery-notice{background:#ffea72;border-radius:17px;padding:12px 16px;margin-top:18px;font-weight:700}.logo-gallery-header nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.logo-gallery-header nav a{display:flex;align-items:center;min-height:44px;background:white;border-radius:24px;padding:8px 14px;font-size:12px;font-weight:700}.logo-gallery-header nav a:hover{background:#ffdb00}
.logo-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:28px}.logo-option{background:white;border-radius:24px;overflow:hidden;box-shadow:0 8px 28px #00000009;min-width:0}.logo-option-heading{padding:24px 26px 10px}.logo-option-heading>p:first-child{display:inline-block;background:#ffdb00;border-radius:18px;font-size:12px;font-weight:900;padding:3px 10px}.logo-option-heading h2{font-size:23px;font-weight:900;line-height:1.6;margin:10px 0}.logo-option-heading>p{font-size:12px;line-height:1.9}
.logo-large-stage{padding:36px 25px 38px;display:flex;align-items:center;justify-content:center;min-height:180px}.logo-large-stage .logo-symbol{width:106px;height:106px}.logo-large-stage .service-name{font-size:36px}.logo-large-stage .service-tagline{font-size:13px}.logo-large-stage .logo-identity{gap:12px}.logo-large-stage .logo-lettering{gap:8px}.logo-large-stage .logo-choice-02 .service-name{padding-bottom:8px}.logo-large-stage .logo-choice-02 .service-name:after{width:52px;height:5px}
.logo-alternative-stage{margin:0 25px;padding:18px 22px;background:#ffdb00;border-radius:18px}.logo-alternative-stage>span{display:block;font-size:9px;font-weight:700;margin-bottom:15px}.logo-alternative-stage .logo-identity{display:flex;justify-content:center}.logo-alternative-stage .logo-symbol{width:54px;height:54px}.logo-alternative-stage .service-name{font-size:24px}.logo-alternative-stage .service-tagline{font-size:10px}.logo-alternative-stage .logo-choice-02 .service-name:after{background:#171717}.logo-alternative-stage .logo-choice-03 .service-tagline{background:white}
.logo-miniatures{padding:22px 25px}.logo-miniatures>p{font-size:10px;font-weight:800;margin-bottom:13px}.logo-miniatures>div{display:flex;align-items:center;gap:20px}.logo-miniatures figure{flex:none;min-width:34px;text-align:center}.logo-miniatures figure img{object-fit:contain;margin:auto}.logo-miniatures figcaption{font-size:9px;color:#595959;margin-top:5px}.logo-miniatures>div>p{font-size:10px;line-height:1.9;color:#595959;max-width:250px}
.logo-sample-label{font-size:10px;font-weight:700;padding:10px 20px;background:#f5f5f5}.logo-top-sample .lp-header{padding-inline:20px}.logo-top-sample .logo-symbol{width:36px;height:36px}.logo-top-sample .service-name{font-size:18px}.logo-top-sample .service-tagline{font-size:8px}.logo-top-sample .header-link{font-size:9px}.logo-context-photo{padding:25px 24px 29px;background:linear-gradient(#2c4553c7,#2c4553c7),url('country-canada-960.webp') center/cover;color:white}.logo-context-photo>p{font-size:25px;font-weight:900;line-height:1.8}.logo-context-photo mark{background:#ffdb00;color:#171717;padding:0 .12em}
.logo-option-footer{padding:15px 25px;display:flex;justify-content:space-between;align-items:center;gap:12px}.logo-option-footer a{display:inline-flex;align-items:center;min-height:44px;font-size:11px;font-weight:700;text-decoration:underline;text-underline-offset:4px}.logo-gallery-footer{font-size:11px;color:#595959;line-height:2;margin-top:30px;max-width:850px}.logo-gallery-footer a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;font-size:12px;font-weight:700}
@media(max-width:960px){.logo-gallery-grid{grid-template-columns:1fr}.logo-option{width:100%;max-width:560px;margin:auto}}
@media(max-width:560px){.logo-identity .logo-symbol{width:37px;height:37px}.logo-identity .service-name{font-size:19px}.logo-identity .service-tagline{font-size:8px}.logo-identity.logo{gap:5px}.logo-gallery-wrap{padding:24px 14px 35px}.logo-gallery-header h1{font-size:28px}.logo-gallery-header>p{font-size:12px}.logo-gallery-header nav a{font-size:11px;padding-inline:12px}.logo-option-heading{padding:22px 20px 9px}.logo-option-heading h2{font-size:21px}.logo-large-stage{padding:28px 16px;min-height:150px}.logo-large-stage .logo-identity{gap:7px}.logo-large-stage .logo-symbol{width:76px;height:76px}.logo-large-stage .service-name{font-size:27px}.logo-large-stage .service-tagline{font-size:11px}.logo-alternative-stage{margin-inline:20px;padding:16px}.logo-alternative-stage .logo-symbol{width:47px;height:47px}.logo-alternative-stage .service-name{font-size:22px}.logo-alternative-stage .service-tagline{font-size:9px}.logo-miniatures{padding-inline:20px}.logo-miniatures>div{gap:15px}.logo-top-sample .lp-header{padding-inline:14px;gap:7px}.logo-top-sample .logo-symbol{width:31px;height:31px}.logo-top-sample .service-name{font-size:17px}.logo-top-sample .service-tagline{font-size:8px}.logo-top-sample .header-link{font-size:8px}.logo-context-photo{padding:22px 20px}.logo-context-photo>p{font-size:23px}.logo-option-footer{padding-inline:20px}}
@media(max-width:370px){.logo-identity .logo-symbol{width:30px;height:30px}.logo-identity .service-name{font-size:16px}.logo-identity .service-tagline{font-size:8px}.logo-identity.logo{gap:4px}.logo-gallery-header h1{font-size:25px}.logo-large-stage .logo-symbol{width:58px;height:58px}.logo-large-stage .service-name{font-size:22px}.logo-large-stage .service-tagline{font-size:10px}.logo-alternative-stage{margin-inline:16px;padding-inline:12px}.logo-alternative-stage .logo-symbol{width:38px;height:38px}.logo-alternative-stage .service-name{font-size:20px}.logo-miniatures{padding-inline:16px}.logo-miniatures>div{gap:10px}.logo-option-footer{padding-inline:16px}.logo-top-sample .header-link{display:none}.logo-context-photo>p{font-size:21px}}
