/* 自動生成（scripts/build-columns.py）← columns/hub/hub.css（GPT の hub.css そのまま。.col-gpt 配下にスコープしただけ） */

.col-gpt *{box-sizing:border-box}
.col-gpt{scroll-padding-top:24px}
.col-gpt .column-hub{--ink:#4d3d31;--muted:#697a7c;--gold:#dfb546;--line:#e6e0d4;--paper:#fffaf0;margin:0;background:#fff;color:var(--ink);font-family:"M PLUS 1","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-weight:400;-webkit-font-smoothing:antialiased;line-height:1.8;-webkit-text-size-adjust:100%}
.col-gpt .column-hub a{color:inherit;text-decoration:none}
.col-gpt .column-hub a:focus-visible,.col-gpt .column-hub button:focus-visible,.col-gpt .column-hub input:focus-visible{outline:3px solid #b67d22;outline-offset:4px}
.col-gpt .hub-container{width:calc(100% - 64px);max-width:1090px;margin-inline:auto}
.col-gpt .hub-header{background:#fff;border-bottom:1px solid #eee9df}
.col-gpt .hub-header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:18px}
.col-gpt .hub-header img{display:block;width:212px;height:auto}
.col-gpt .hub-header nav{display:flex;gap:28px;font-size:14px;font-weight:500}
.col-gpt .hub-header nav a:hover{color:#aa7c25}


.col-gpt .hub-hero{position:relative;overflow:hidden;background:#fbf6e9;border-bottom:1px solid #eae1cc}
.col-gpt .hub-hero:before{content:"";position:absolute;right:-90px;top:-170px;width:650px;height:650px;border-radius:50%;background:radial-gradient(circle at 42% 46%,#f3e5b7a6,#f6edcf66 55%,transparent 71%);pointer-events:none}
.col-gpt .hub-hero:after{content:"";position:absolute;bottom:9px;left:0;right:0;border-bottom:1px dashed #d9cba6;opacity:.7;pointer-events:none}
.col-gpt .hub-hero>.hub-container{position:relative}
.col-gpt .hub-crumbs{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:#948474;padding-block:17px;margin-bottom:0}
.col-gpt .hub-crumbs a{text-decoration:underline;text-underline-offset:3px}
.col-gpt .hub-hero-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:36px;align-items:center;padding-block:12px 36px}
.col-gpt .hub-hero-copy{min-width:0;padding-block:8px 14px}
.col-gpt .hub-eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:13px;font-weight:500;letter-spacing:.04em;color:#92712c;margin:0 0 17px}
.col-gpt .hub-eyebrow>span{width:13px;height:16px;background:var(--gold);clip-path:polygon(0 0,100% 0,100% 100%,50% 77%,0 100%)}
.col-gpt .hub-hero h1{font-size:clamp(28px,3vw,36px);line-height:1.6;letter-spacing:.01em;margin:0 0 22px;font-weight:500}
.col-gpt .hub-hero h1>span:last-child{background:linear-gradient(transparent 75%,#efd173b0 75%,#efd173b0 95%,transparent 95%);padding-bottom:2px}
.col-gpt .hub-intro{font-size:16px;color:#746b5d;line-height:1.95;margin:0;max-width:40em}
.col-gpt .hub-pocket-art{height:270px;position:relative;width:340px;justify-self:end}
.col-gpt .hub-note{position:absolute;width:150px;height:188px;background:#fffefa;border:1px solid #e3d9c0;border-radius:8px 8px 4px 4px;box-shadow:0 5px 16px #806b4010;padding:13px}
.col-gpt .hub-note>p{font-size:12px;line-height:1.6;font-weight:500;color:#687e7f;margin:0 0 8px;padding-bottom:9px;border-bottom:1px solid #eee8db;text-align:center;white-space:nowrap}
.col-gpt .hub-note--equipment{left:39px;top:14px;transform:rotate(-10deg)}
.col-gpt .hub-note--equipment>img{display:block;width:116px;height:auto;margin:4px auto 0}
.col-gpt .hub-note--check{left:164px;top:12px;transform:rotate(9deg);background:repeating-linear-gradient(#fffefa 0,#fffefa 23px,#f1eee4 24px,#fffefa 25px)}
.col-gpt .hub-note--check>p{color:#927347;background:#fffefa}
.col-gpt .hub-note--check svg{display:block;width:100px;height:auto;margin:auto}
.col-gpt .hub-pocket-front{position:absolute;z-index:2;bottom:6px;left:5px;width:330px;height:147px;border-radius:12px 12px 48px 48px;background:linear-gradient(120deg,#f6edcc,#eee0ad);border:1px solid #d9c99b;box-shadow:0 7px 14px #ad85210c,inset 0 5px 0 #ffffff40;display:flex;justify-content:center;align-items:center}
.col-gpt .hub-pocket-front:before{content:"";position:absolute;inset:10px;border:1.5px dashed #fffdf0;border-radius:5px 5px 39px 39px;pointer-events:none}
.col-gpt .hub-pocket-front p{position:relative;margin:0;width:100%;padding:0 70px 3px;transform:translateX(8px);text-align:center;color:#776545;font-size:18px;font-weight:500;line-height:1.6;letter-spacing:.03em}
.col-gpt .hub-art-bear{position:absolute;z-index:3;left:14px;bottom:22px;width:76px;height:auto;transform:rotate(-4deg)}
.col-gpt .hub-art-pokemaru{position:absolute;z-index:3;right:20px;bottom:22px;width:52px;height:auto;transform:rotate(5deg)}
.col-gpt .hub-art-spark{position:absolute;width:9px;height:9px;background:#8aab9b;transform:rotate(45deg);border-radius:1px}
.col-gpt .hub-art-spark--one{left:11px;top:75px}
.col-gpt .hub-art-spark--two{right:0;top:70px;width:5px;height:5px;background:#d8b54b}


.col-gpt .hub-layout{display:grid;grid-template-columns:minmax(0,830px) 220px;gap:40px;margin-top:40px}
.col-gpt .hub-list{min-width:0;scroll-margin-top:24px}
.col-gpt .hub-filters{display:flex;flex-wrap:wrap;gap:8px;padding-bottom:24px;border-bottom:1px solid var(--line)}
.col-gpt .hub-filters a{display:flex;align-items:center;justify-content:center;gap:12px;padding:10px 18px;font-size:15px;font-weight:500;border:1px solid #e4dece;border-radius:6px;background:#fff;transition:background .15s;color:#746452}
.col-gpt .hub-filters a span{font-size:12px;min-width:22px;text-align:center;border-radius:30px;background:#f5f1e8;color:#9a8667}
.col-gpt .hub-filters a[aria-current]{background:#f5e5ae;color:#654d22;border-color:#dfbf68}
.col-gpt .hub-filters a[aria-current] span{background:#fff8;color:#80602b}
.col-gpt .hub-filters a:hover{background:#fcf4dc;color:#73551f}
.col-gpt .hub-list-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-block:24px 20px}
.col-gpt .hub-list-heading h2{font-size:21px;line-height:1.6;margin:0;position:relative;padding-left:17px}
.col-gpt .hub-list-heading h2:before{content:"";position:absolute;left:0;top:.25em;bottom:.2em;width:5px;background:#dfb546;border-radius:1px}
.col-gpt .hub-list-heading p{font-size:20px;font-weight:500;color:#9a8a72;margin:0}
.col-gpt .hub-list-heading small{font-size:12px;margin-left:4px;font-weight:400}
.col-gpt .hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.col-gpt .hub-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #e6e1d7;border-radius:10px;overflow:hidden;box-shadow:0 3px 12px #715f3e05;transition:box-shadow .2s,border-color .2s}
.col-gpt .hub-card:hover{box-shadow:0 7px 22px #735d3410;border-color:#d7c99e}
.col-gpt .hub-card-main{display:flex;flex-direction:column;flex:1}
.col-gpt .hub-visual{position:relative;aspect-ratio:1.6;background:#f5f3ed;overflow:hidden;border-bottom:1px solid #eee9e0}
.col-gpt .hub-visual>img{display:block;width:100%;height:100%;object-fit:cover}
.col-gpt .hub-visual--ufb{background:radial-gradient(circle at 30% 15%,#fff,#e0f4fa 68%,#cbe8f1)}
.col-gpt .hub-visual--ufb:before,.col-gpt .hub-visual--ufb:after{content:"";position:absolute;border:1px solid #fff;border-radius:50%;height:92px;width:92px;left:-28px;bottom:-20px;box-shadow:25px -86px 0 -28px #ffffff88}
.col-gpt .hub-visual--ufb:after{left:auto;right:40%;top:-35px;width:80px;height:80px}
.col-gpt .hub-visual--ufb>img{position:absolute;right:2%;bottom:4%;width:50%;height:88%;object-fit:contain;z-index:1}
.col-gpt .hub-visual-copy{position:absolute;z-index:2;top:16%;left:7%;width:52%;color:#22637e}
.col-gpt .hub-visual-copy small{display:block;font-size:10px;font-weight:500;white-space:nowrap;margin-bottom:10px}
.col-gpt .hub-visual-copy strong{display:block;font-size:clamp(17px,1.65vw,22px);line-height:1.65;letter-spacing:.01em}
.col-gpt .hub-visual-copy>span{display:inline-block;font-size:10px;border-bottom:1px solid #8bbbcf;margin-top:10px}
.col-gpt .hub-card-copy{padding:20px 20px 18px;display:flex;flex-direction:column;flex:1}
.col-gpt .hub-card-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;color:#756d62}
.col-gpt .hub-card-meta>span{color:#8b6b25;background:#faf1d7;padding:3px 8px;font-weight:500;border-radius:3px;white-space:nowrap}
.col-gpt .hub-card[data-category="trouble"] .hub-card-meta>span{color:#4a7c83;background:#edf5f5}
.col-gpt .hub-card h2{font-size:19px;line-height:1.7;margin:13px 0 10px;font-weight:500;letter-spacing:.005em}
.col-gpt .hub-card p{font-size:14px;line-height:1.9;color:#7c7d73;margin:0 0 18px}
.col-gpt .hub-read{font-size:13px;font-weight:500;color:#827045;margin-top:auto;display:flex;justify-content:space-between;align-items:center}
.col-gpt .hub-read span{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;border:2px solid #927451;background:transparent;color:#927451;font-size:17px;transition:transform .15s}
.col-gpt .hub-card-main:hover .hub-read span{transform:translateX(3px)}
.col-gpt .hub-card-tags{list-style:none;display:flex;flex-wrap:wrap;gap:4px 12px;padding:13px 20px;margin:0;border-top:1px dashed #eae3d7;color:#9a9183;font-size:11px}
.col-gpt .hub-card-tags a:hover{text-decoration:underline}


.col-gpt .hub-aside section{margin-bottom:32px}
.col-gpt .hub-aside h2{font-size:16px;margin:0 0 16px;padding-bottom:11px;border-bottom:2px solid #eadfbe}
.col-gpt .hub-keywords{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.col-gpt .hub-keywords a{display:block;font-size:13px;border:1px solid #e8e2d4;background:#fdfbf6;border-radius:4px 4px 8px 4px;padding:6px 9px;overflow-wrap:anywhere;color:#8a7a61}
.col-gpt .hub-keywords a:hover,.col-gpt .hub-keywords a[aria-current]{background:#f8edcd;color:#866421;border-color:#dfc989}
.col-gpt .hub-search{display:flex;align-items:center;border:1px solid #e2dbc9;border-radius:6px;overflow:hidden;background:#fff}
.col-gpt .hub-search input{font:inherit;font-size:13px;min-width:0;width:100%;border:0;padding:12px 0 12px 12px;background:none;color:#5d4e3d}
.col-gpt .hub-search button{display:flex;align-items:center;justify-content:center;flex-shrink:0;border:0;background:transparent;padding:12px;color:#b59b5c;cursor:pointer}
.col-gpt .hub-about{padding:18px;background:#faf6ea;border-radius:8px;color:#90816b;font-size:13px}
.col-gpt .hub-about p{margin:0}
.col-gpt .hub-about .hub-about-label{font-size:13px;font-weight:500;margin-bottom:9px;color:#7b653a}
.col-gpt .hub-bottom{margin-top:56px;padding-block:24px 42px;border-top:1px dashed #e3dac7;text-align:center}
.col-gpt .hub-bottom a{font-size:14px;color:#a08b5d}
.col-gpt .hub-bottom span{margin-left:20px}
.col-gpt .hub-footer{padding:30px 0;background:#faf7ef;border-top:1px solid #eee8d9;color:#aa9c85}
.col-gpt .hub-footer img{display:block;width:177px;height:auto}
.col-gpt .hub-footer p{font-size:12px;margin:14px 0 4px}
.col-gpt .hub-footer small{font-size:10px}
.col-gpt .hub-search-status{font-size:14px;color:#8a7a61;margin:0 0 18px}
.col-gpt .hub-empty{padding:40px 16px;background:#fcf8ed;text-align:center;border-radius:10px}
.col-gpt .hub-empty a{color:#9b7a32;text-decoration:underline}
.col-gpt .hub-sr,.col-gpt .hub-skip{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.col-gpt .hub-skip:focus{z-index:10;position:fixed;top:0;left:0;width:auto;height:auto;padding:12px;background:#fff;clip:auto;margin:0}
.col-gpt [hidden]{display:none!important}

@media(min-width:761px) and (max-width:1000px){
 .col-gpt .hub-hero-layout{grid-template-columns:minmax(0,1fr) 270px;gap:24px}
 .col-gpt .hub-pocket-art{transform:scale(.8);transform-origin:right center;margin-left:-68px}
 .col-gpt .hub-hero h1{font-size:clamp(24px,3.1vw,30px);letter-spacing:0}
 .col-gpt .hub-intro{font-size:15px}
 .col-gpt .hub-layout{display:flex;flex-direction:column;gap:36px}
 .col-gpt .hub-aside{display:grid;grid-template-columns:1fr 1fr;gap:32px;padding-top:28px;border-top:1px solid var(--line)}
 .col-gpt .hub-aside section{margin:0}.col-gpt .hub-aside .hub-about{display:none}
 .col-gpt .hub-card h2{font-size:17px}.col-gpt .hub-card-copy{padding:16px}
 .col-gpt .hub-visual-copy strong{font-size:21px}.col-gpt .hub-visual-copy small{font-size:9px}
}
@media(max-width:760px){
 .col-gpt .hub-container{width:calc(100% - 40px)}
 .col-gpt .hub-header-inner{padding-block:14px}.col-gpt .hub-header img{width:172px}.col-gpt .hub-header nav{font-size:12px}.col-gpt .hub-header nav a:last-child{display:none}
 .col-gpt .hub-crumbs{padding-top:13px;font-size:11px}
 .col-gpt .hub-hero-layout{display:block;padding-block:10px 24px}
 .col-gpt .hub-hero-copy{padding:0}
 .col-gpt .hub-eyebrow{font-size:11px;gap:7px;margin-bottom:10px;letter-spacing:.02em}.col-gpt .hub-eyebrow>span{width:10px;height:13px}
 .col-gpt .hub-hero h1{font-size:26px;letter-spacing:0;line-height:1.55;margin-bottom:13px}
 .col-gpt .hub-hero h1>span{display:inline}
 .col-gpt .column-hub[data-hub-kind=""] .hub-hero h1{white-space:nowrap;font-size:clamp(19px,6.1vw,26px);letter-spacing:0}
 .col-gpt .hub-intro{font-size:14px;line-height:1.9}.col-gpt .hub-intro br{display:none}
 .col-gpt .hub-hero:before{width:370px;height:370px;right:-120px;top:0}
 .col-gpt .hub-pocket-art{width:100%;height:142px;margin-top:14px}
 .col-gpt .hub-note{width:103px;height:100px;padding:8px;border-radius:6px}
 .col-gpt .hub-note>p{font-size:9px;padding-bottom:5px;margin-bottom:2px}
 .col-gpt .hub-note--equipment{left:calc(50% - 97px);top:1px;transform:rotate(-7deg)}
 .col-gpt .hub-note--equipment>img{width:70px;margin-top:0}
 .col-gpt .hub-note--check{left:calc(50% - 3px);top:0;transform:rotate(7deg)}
 .col-gpt .hub-note--check svg{width:60px}
 .col-gpt .hub-pocket-front{left:50%;transform:translateX(-50%);bottom:0;width:min(100%,292px);height:94px;border-radius:9px 9px 29px 29px}
 .col-gpt .hub-pocket-front:before{inset:8px;border-radius:4px 4px 22px 22px;border-width:1px}
 .col-gpt .hub-pocket-front p{font-size:14px;line-height:1.55;padding:0 53px;letter-spacing:0;transform:translateX(5px)}
 .col-gpt .hub-pocket-front br{display:initial}
 .col-gpt .hub-art-bear{width:54px;left:calc(50% - 132px);bottom:15px}
 .col-gpt .hub-art-pokemaru{width:38px;left:auto;right:calc(50% - 130px);bottom:15px}
 .col-gpt .hub-art-spark--one{left:calc(50% - 124px);top:19px;width:6px;height:6px}.col-gpt .hub-art-spark--two{right:calc(50% - 128px);top:22px;width:4px;height:4px}
 .col-gpt .hub-layout{display:flex;flex-direction:column;gap:34px;margin-top:27px}
 .col-gpt .hub-filters{display:grid;grid-template-columns:.8fr 1.2fr 1fr;gap:6px;padding-bottom:20px}
 .col-gpt .hub-filters a{font-size:13px;padding:9px 5px;white-space:nowrap}.col-gpt .hub-filters a span{display:none}
 .col-gpt .hub-list-heading{padding-block:20px 16px}.col-gpt .hub-list-heading h2{font-size:20px;padding-left:14px}
 .col-gpt .hub-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px}
 .col-gpt .hub-card{border-radius:8px;box-shadow:none}.col-gpt .hub-card-copy{padding:12px}
 .col-gpt .hub-card-meta{flex-direction:column;align-items:flex-start;gap:5px;font-size:10px;line-height:1.6}.col-gpt .hub-card-meta>span{padding:3px 6px}
 .col-gpt .hub-card h2{font-size:clamp(13px,3.7vw,16px);line-height:1.7;margin:10px 0 12px;width:100%;text-align:left;overflow-wrap:anywhere;text-wrap:wrap}
 .col-gpt .hub-card-copy>p,.col-gpt .hub-card-tags{display:none}
 .col-gpt .hub-read{font-size:12px;line-height:1.6}.col-gpt .hub-read span{width:18px;height:18px;font-size:14px}
 .col-gpt .hub-visual--ufb .hub-visual-copy{display:none}.col-gpt .hub-visual--ufb>img{width:80%;height:92%;right:10%}
 .col-gpt .hub-aside{border-top:1px dashed #e3dac7;padding-top:26px;display:grid;grid-template-columns:1fr;gap:24px}
 .col-gpt .hub-aside section{margin:0}.col-gpt .hub-about{display:none}
 .col-gpt .hub-bottom{margin-top:34px;padding-bottom:28px}
 .col-gpt .hub-footer small{line-height:1.7;display:block}
}
@media(max-width:480px){.col-gpt .hub-card-copy{container-type:inline-size}.col-gpt .hub-card h2{font-size:clamp(13px,9.8cqw,16px);max-inline-size:100%;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}}
@media(max-width:360px){.col-gpt .hub-grid{gap:12px 10px}.col-gpt .hub-card-copy{padding:10px}}
@media(prefers-reduced-motion:reduce){.col-gpt{scroll-behavior:auto}.col-gpt *{transition:none!important}}

.col-gpt .hub-nowrap{display:inline-block;white-space:nowrap}
@media(min-width:375px) and (max-width:760px){.col-gpt .hub-intro br{display:initial}}


.col-gpt .column-hub :is(h1,.col-gpt h2,.col-gpt h3,.col-gpt strong,.col-gpt b){font-weight:500}


.col-gpt .hub-card-tags{display:none}


@media(max-width:359px){.col-gpt .hub-card h2{-webkit-line-clamp:unset}}


.col-gpt .hub-read span>svg{display:block;width:75%;height:75%;flex:none}
