*,*::before,*::after{box-sizing:border-box}html,body{overflow-x:clip}img,video{max-width:100%;height:auto}svg{max-width:100%}a,button,input,select,textarea,[role="button"]{max-width:100%}section,main,header,footer,article,aside{max-width:100%;min-width:0}body{margin:0;font-family:var(--t-font-body);font-size:var(--t-fs-base);color:var(--c-text, #111);background:var(--c-bg, #fff)}h1,h2,h3{font-family:var(--t-font-heading)}h1{font-size:var(--t-fs-h1)}h2{font-size:var(--t-fs-h2)}h3{font-size:var(--t-fs-h3)}._24a7me{float:left;margin:0 1rem .5rem 0}._3en8te{float:right;margin:0 0 .5rem 1rem}._2gwwf1{display:block;margin:.5rem auto}._32xq29{display:block;width:100%}._4beax5{width:25%}._awia5k{width:50%}._3d0rx1{width:75%}._3sqpw2{width:100%}._24a7me,._2gwwf1,._3en8te,._32xq29,._4beax5,._awia5k,._3d0rx1,._3sqpw2{max-width:100%;height:auto}._532eno table{border-collapse:collapse;width:100%}._532eno th,._532eno td{border:1px solid var(--c-border, rgba(128,128,128,.35));padding:.5rem .75rem}._532eno th{font-weight:600;background:var(--c-surface, rgba(128,128,128,.12))}._532eno ._2on4b2{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}@media (max-width:600px){._532eno ._2on4b2 table{min-width:0}}

._66rsa9, ._66rsa9 *, ._66rsa9 *::before, ._66rsa9 *::after { box-sizing: border-box; }
._66rsa9 { width: 100%; background: var(--c-bg); padding: var(--t-section-py) 1.25rem; font-family: var(--t-font-body); font-size: var(--t-fs-base); color: var(--c-text); }
._2ku2st { max-width: var(--t-container-max); margin: 0 auto; }
._bzxcyp { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 3rem; align-items: center; }
._1xabd6 { margin: 0 0 1.25rem; font-weight: 800; font-size: 0.8rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--c-primary); }
._ittac8 { font-family: var(--t-font-heading); font-weight: 800; font-size: var(--t-fs-h1); line-height: 1.04; letter-spacing: -0.035em; color: var(--c-ink); margin: 0 0 1.25rem; }
._4x2et8 { margin: 0 0 0.85rem; font-family: var(--t-font-heading); font-weight: 800; font-size: 1.3rem; color: var(--c-primary); letter-spacing: -0.01em; }
._vht1ai { margin: 0 0 1.8rem; color: var(--c-muted); max-width: 46ch; line-height: 1.6; }
._3m5qtp { display: flex; flex-wrap: wrap; gap: 0.85rem; margin-bottom: 2rem; }
._mv0cid { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; font-family: var(--t-font-heading); font-weight: 800; font-size: 1rem; padding: 0.85rem 1.6rem; border: 2px solid var(--c-border); border-radius: var(--t-radius-sm); box-shadow: 4px 4px 0 var(--c-shadow); transition: transform 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease; max-width: 100%; }
._31as7n { background: var(--c-primary); color: var(--c-on-primary); }
._31as7n:hover { background: var(--c-primary-hover); }
._4tg34x { background: var(--c-surface); color: var(--c-ink); }
._mv0cid:hover { transform: translate(2px, 2px); box-shadow: 2px 2px 0 var(--c-shadow); }
._2ai657 { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 0.6rem; }
._2ai657 li { border: 2px solid var(--c-border); border-radius: 999px; padding: 0.4rem 0.95rem; font-weight: 700; font-size: 0.88rem; background: var(--c-surface-alt); color: var(--c-ink); }
._65l6y8 { margin: 0; border: 2px solid var(--c-border); border-radius: var(--t-radius); box-shadow: 4px 4px 0 var(--c-shadow); background: var(--c-surface); padding: 0.6rem; }
._65l6y8 img, ._1szh3f { display: block; width: 100%; max-width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--t-radius-sm); }
._1szh3f { background: repeating-linear-gradient(135deg, var(--c-surface-alt) 0 14px, var(--c-bg) 14px 28px); }
._6cq0oh { margin: 2.5rem 0 0; padding-top: 1.25rem; border-top: 1px solid var(--c-rule); font-size: 0.85rem; font-weight: 700; letter-spacing: 0.04em; color: var(--c-muted); }
@media (max-width: 900px) { ._bzxcyp { grid-template-columns: 1fr; gap: 2rem; } }
@media (max-width: 480px) { ._66rsa9 { padding: 2.75rem 1rem; } ._ittac8 { font-size: 2.1rem; } ._4x2et8 { font-size: 1.1rem; } ._mv0cid { width: 100%; } }

._nnfxr1, ._nnfxr1 *, ._nnfxr1 *::before, ._nnfxr1 *::after { box-sizing: border-box; }
._nnfxr1 { width: 100%; background: var(--c-bg-alt); padding: var(--t-section-py) 1.25rem; font-family: var(--t-font-body); font-size: var(--t-fs-base); color: var(--c-text); }
._61rv8f { max-width: var(--t-container-max); margin: 0 auto; }
._4imlm1 { margin: 0 0 2.25rem; font-family: var(--t-font-heading); font-weight: 800; font-size: var(--t-fs-h2); letter-spacing: -0.03em; color: var(--c-ink); }
._60c4us { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
._4pml25 { display: flex; flex-direction: column; gap: 0.7rem; background: var(--c-surface); border: 2px solid var(--c-border); border-radius: var(--t-radius); box-shadow: 4px 4px 0 var(--c-shadow); padding: 1.6rem 1.4rem 1.8rem; }
._1khods { font-family: var(--t-font-heading); font-weight: 800; font-size: 2.75rem; line-height: 1; letter-spacing: -0.05em; color: var(--c-primary); }
._4lw6uc { font-family: var(--t-font-heading); font-weight: 800; font-size: var(--t-fs-h3); letter-spacing: -0.02em; color: var(--c-ink); }
._4rmhvu { color: var(--c-muted); line-height: 1.6; font-size: 0.97rem; }
@media (max-width: 900px) { ._60c4us { grid-template-columns: 1fr; } }
@media (max-width: 480px) { ._nnfxr1 { padding: 2.75rem 1rem; } ._4imlm1 { font-size: 1.6rem; } ._1khods { font-size: 2.2rem; } }

._n550j1, ._n550j1 *, ._n550j1 *::before, ._n550j1 *::after { box-sizing: border-box; }
._n550j1 { width: 100%; background: var(--c-bg, #fdf6e3); padding: var(--t-section-py, 4rem) 1.25rem; font-family: var(--t-font-body, system-ui, sans-serif); font-size: var(--t-fs-base, 16px); color: var(--c-text, #2a2a2a); }
._3i54uu, ._467csf { max-width: var(--t-container-max, 1200px); margin: 0 auto; }
._467csf { width: 100%; display: flex; justify-content: center; text-align: center; }
._1dpr57 { margin: 0 0 1.75rem; font-family: var(--t-font-heading, system-ui, sans-serif); font-weight: 800; font-size: var(--t-fs-h2, 2rem); letter-spacing: -0.03em; color: var(--c-ink, #1a1a1a); }
._adctig { list-style: none; margin: 0 auto 1.75rem; padding: 0.25rem 0.25rem 1rem; max-width: var(--t-container-max, 1200px); display: flex; gap: 1rem; overflow-x: auto; -webkit-overflow-scrolling: touch; scroll-snap-type: x mandatory; }
._4d8kea { flex: 0 0 160px; scroll-snap-align: start; display: flex; flex-direction: column; gap: 0.6rem; background: var(--c-surface, #ffffff); border: 2px solid var(--c-border, #1a1a1a); border-radius: var(--t-radius, 12px); box-shadow: 4px 4px 0 var(--c-shadow, #1a1a1a); padding: 0.6rem; }
._5hmtwi { position: relative; display: block; width: 100%; }
._5hmtwi img, ._l4hmqt { display: block; width: 100%; max-width: 100%; aspect-ratio: 2 / 3; object-fit: cover; border-radius: var(--t-radius-sm, 8px); }
._l4hmqt { background: repeating-linear-gradient(135deg, var(--c-surface-alt, #f1e7c9) 0 12px, var(--c-bg, #fdf6e3) 12px 24px); }
._2011k6 { position: absolute; top: 0.45rem; left: 0.45rem; font-family: var(--t-font-heading, system-ui, sans-serif); font-weight: 800; font-size: 0.68rem; letter-spacing: 0.08em; padding: 0.2rem 0.45rem; border-radius: 6px; color: var(--c-on-badge, #ffffff); }
._48emxf { background: var(--c-badge-hot, #e8443a); }
._5w6gi7 { background: var(--c-badge-new, #2f8f5b); }
._4nep4g { display: block; width: 100%; min-height: 2.6em; font-family: var(--t-font-heading, system-ui, sans-serif); font-weight: 800; font-size: 0.95rem; line-height: 1.3; letter-spacing: -0.01em; color: var(--c-ink, #1a1a1a); overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow-wrap: break-word; }
._5ntat9 { display: inline-flex; align-items: center; justify-content: center; width: 100%; max-width: 100%; text-decoration: none; font-family: var(--t-font-heading, system-ui, sans-serif); font-weight: 800; font-size: 0.92rem; padding: 0.6rem 0.9rem; background: var(--c-primary, #ffc83d); color: var(--c-on-primary, #1a1a1a); border: 2px solid var(--c-border, #1a1a1a); border-radius: var(--t-radius-sm, 8px); box-shadow: 4px 4px 0 var(--c-shadow, #1a1a1a); transition: transform 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease; }
._5ntat9:hover { background: var(--c-primary-hover, #ffb800); transform: translate(2px, 2px); box-shadow: 2px 2px 0 var(--c-shadow, #1a1a1a); }
._3mvngc { width: auto; margin: 0; padding: 0.85rem 1.7rem; font-size: 1rem; }
@media (min-width: 768px) {
  ._adctig { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; overflow-x: visible; scroll-snap-type: none; padding: 0.25rem; }
  ._4d8kea { flex: initial; width: 100%; min-width: 0; scroll-snap-align: none; }
}
@media (min-width: 1024px) {
  ._adctig { grid-template-columns: repeat(6, minmax(0, 1fr)); }
}
@media (max-width: 480px) { ._n550j1 { padding: 2.75rem 1rem; } ._1dpr57 { font-size: 1.6rem; } ._3mvngc { width: 100%; } }

._46tbjz, ._46tbjz *, ._46tbjz *::before, ._46tbjz *::after { box-sizing: border-box; }
._46tbjz { display: block; width: 100%; background: var(--c-bg-alt); padding: var(--t-section-py) 1.25rem; font-family: var(--t-font-body); font-size: var(--t-fs-base); color: var(--c-text); }
._d4mkbj { max-width: var(--t-container-max); margin: 0 auto 1.75rem; font-family: var(--t-font-heading); font-weight: 800; font-size: var(--t-fs-h2); letter-spacing: -0.03em; color: var(--c-ink); }
._18lyhq { list-style: none; max-width: var(--t-container-max); margin: 0 auto; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; }
._32406b { background: var(--c-surface); border: 2px solid var(--c-border); border-radius: var(--t-radius); box-shadow: 4px 4px 0 var(--c-shadow); padding: 1.1rem 0.8rem; display: flex; flex-direction: column; align-items: center; gap: 0.6rem; }
._32406b img, ._4dfd8g { display: block; width: 100%; max-width: 92px; height: 34px; object-fit: contain; filter: none; opacity: 1; }
._4dfd8g { border-radius: 6px; background: repeating-linear-gradient(135deg, var(--c-surface-alt) 0 10px, var(--c-bg) 10px 20px); }
._51ulb7 { font-weight: 700; font-size: 0.85rem; color: var(--c-ink); text-align: center; overflow-wrap: break-word; }
@media (max-width: 768px) { ._18lyhq { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 480px) { ._46tbjz { padding: 2.75rem 1rem; } ._d4mkbj { font-size: 1.6rem; } ._18lyhq { grid-template-columns: repeat(2, 1fr); gap: 0.8rem; } }

._5dtzd8, ._5dtzd8 *, ._5dtzd8 *::before, ._5dtzd8 *::after { box-sizing: border-box; }
._5dtzd8 { display: block; width: 100%; background: var(--c-bg); padding: var(--t-section-py) 1.25rem; font-family: var(--t-font-body); font-size: var(--t-fs-base); color: var(--c-text); }
._53w73u { max-width: 820px; margin: 0 auto; }
._nplqql { margin: 0 0 1.75rem; font-family: var(--t-font-heading); font-weight: 800; font-size: var(--t-fs-h1); line-height: 1.06; letter-spacing: -0.035em; color: var(--c-ink); overflow-wrap: break-word; }
._44tmkx { color: var(--c-muted); line-height: 1.7; overflow-wrap: break-word; }
._44tmkx h2 { font-family: var(--t-font-heading); font-weight: 800; font-size: var(--t-fs-h2); letter-spacing: -0.03em; color: var(--c-ink); margin: 2.5rem 0 0.9rem; line-height: 1.15; }
._44tmkx h3 { font-family: var(--t-font-heading); font-weight: 800; font-size: var(--t-fs-h3); letter-spacing: -0.02em; color: var(--c-ink); margin: 1.8rem 0 0.7rem; }
._44tmkx p { margin: 0 0 1.1rem; }
._44tmkx a { color: var(--c-primary); overflow-wrap: break-word; }
._44tmkx ul, ._44tmkx ol { margin: 0 0 1.25rem; padding-left: 1.25rem; }
._44tmkx li { margin-bottom: 0.5rem; }
._44tmkx blockquote { margin: 1.5rem 0; padding: 0.9rem 1.2rem; border-left: 3px solid var(--c-primary); background: var(--c-surface-alt); border-radius: var(--t-radius-sm); }
._44tmkx img { max-width: 100%; height: auto; border-radius: var(--t-radius-sm); }
._44tmkx iframe, ._44tmkx video { max-width: 100%; width: 100%; aspect-ratio: 16 / 9; border: 0; }
._44tmkx pre, ._44tmkx code { overflow-x: auto; white-space: pre-wrap; }
._44tmkx div { max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
._44tmkx table { width: 100%; max-width: 100%; border-collapse: collapse; font-size: 0.93rem; }
._44tmkx th, ._44tmkx td { border: 1px solid var(--c-rule); padding: 0.6rem 0.75rem; text-align: left; vertical-align: top; }
._44tmkx th { background: var(--c-surface-alt); color: var(--c-ink); font-weight: 700; }
@media (max-width: 480px) { ._5dtzd8 { padding: 2.75rem 1rem; } ._nplqql { font-size: 2.05rem; } ._44tmkx h2 { font-size: 1.5rem; margin-top: 1.8rem; } ._44tmkx h3 { font-size: 1.2rem; } ._44tmkx ul, ._44tmkx ol { padding-left: 1.1rem; } }

._zusw5k, ._zusw5k *, ._zusw5k *::before, ._zusw5k *::after { box-sizing: border-box; }
._zusw5k { width: 100%; background: var(--c-bg-alt); padding: var(--t-section-py) 1.25rem; font-family: var(--t-font-body); font-size: var(--t-fs-base); color: var(--c-text); }
._53u9l6 { max-width: 860px; margin: 0 auto; }
._4y7m8c { margin: 0 0 1.75rem; font-family: var(--t-font-heading); font-weight: 800; font-size: var(--t-fs-h2); letter-spacing: -0.03em; color: var(--c-ink); }
._kvne1e { background: var(--c-surface); border: 2px solid var(--c-border); border-radius: var(--t-radius); box-shadow: 4px 4px 0 var(--c-shadow); margin-bottom: 1rem; }
._3tb6ob { cursor: pointer; list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.05rem 1.35rem; font-family: var(--t-font-heading); font-weight: 800; font-size: 1.02rem; letter-spacing: -0.01em; color: var(--c-ink); }
._3tb6ob::-webkit-details-marker { display: none; }
._3tb6ob::after { content: "+"; flex: 0 0 auto; font-weight: 800; color: var(--c-primary); font-size: 1.3rem; line-height: 1; }
._kvne1e[open] ._3tb6ob::after { content: "–"; }
._2gkeor { padding: 0 1.35rem 1.25rem; color: var(--c-muted); line-height: 1.65; overflow-wrap: break-word; }
@media (max-width: 480px) { ._zusw5k { padding: 2.75rem 1rem; } ._4y7m8c { font-size: 1.6rem; } ._3tb6ob { padding: 0.9rem 1rem; font-size: 0.97rem; } ._2gkeor { padding: 0 1rem 1rem; } }

._466vc4, ._466vc4 *, ._466vc4 *::before, ._466vc4 *::after { box-sizing: border-box; }
._466vc4 { position: sticky; top: 0; z-index: 40; width: 100%; background: var(--c-bg); border-bottom: 2px solid var(--c-border); font-family: var(--t-font-body); font-size: var(--t-fs-base); color: var(--c-text); }
._24k6lt { max-width: var(--t-container-max); margin: 0 auto; padding: 0.85rem 1.25rem; display: flex; align-items: center; gap: 1.25rem; }
._ysakwu { display: inline-flex; align-items: center; text-decoration: none; margin-right: auto; }
._ysakwu img { display: block; max-width: 100%; height: 38px; width: auto; }
._1f6ek6 { font-family: var(--t-font-heading); font-weight: 800; letter-spacing: -0.03em; font-size: 1.25rem; color: var(--c-ink); text-transform: none; }
._3w2iej { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: 1.5rem; }
._3w2iej a { color: var(--c-muted); text-decoration: none; font-weight: 600; font-size: 0.95rem; }
._3w2iej a:hover { color: var(--c-ink); }
._180zk4 { display: flex; align-items: center; gap: 0.65rem; }
._k6k1ny { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; font-family: var(--t-font-heading); font-weight: 800; font-size: 0.95rem; letter-spacing: -0.01em; padding: 0.6rem 1.1rem; border: 2px solid var(--c-border); border-radius: var(--t-radius-sm); box-shadow: 4px 4px 0 var(--c-shadow); transition: transform 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease; max-width: 100%; }
._ga1z3b { background: var(--c-primary); color: var(--c-on-primary); }
._ga1z3b:hover { background: var(--c-primary-hover); }
._3genir { background: var(--c-surface); color: var(--c-ink); }
._k6k1ny:hover { transform: translate(2px, 2px); box-shadow: 2px 2px 0 var(--c-shadow); }
._19gbk9 { display: none; flex-direction: column; justify-content: center; gap: 5px; width: 46px; height: 42px; padding: 0 10px; background: var(--c-surface); border: 2px solid var(--c-border); border-radius: var(--t-radius-sm); cursor: pointer; }
._19gbk9 span { display: block; height: 2px; width: 100%; background: var(--c-ink); transition: transform 0.2s ease, opacity 0.2s ease; }
._1fg4qb { position: absolute; left: 0; right: 0; top: 100%; background: var(--c-bg); border-bottom: 2px solid var(--c-border); padding: 1.1rem 1.25rem 1.4rem; transform: translateY(-14px); opacity: 0; visibility: hidden; pointer-events: none; transition: transform 0.25s ease, opacity 0.25s ease, visibility 0.25s ease; }
._3tuh74 ._1fg4qb { transform: translateY(0); opacity: 1; visibility: visible; pointer-events: auto; }
._3zmom8 { list-style: none; margin: 0 0 1rem; padding: 0; display: flex; flex-direction: column; gap: 0.15rem; }
._3zmom8 a { display: block; padding: 0.7rem 0; color: var(--c-ink); text-decoration: none; font-weight: 700; border-bottom: 1px solid var(--c-rule); }
._6waz12 { display: flex; flex-direction: column; gap: 0.6rem; }
._6waz12 ._k6k1ny { width: 100%; }
@media (max-width: 900px) { ._4w10se { display: none; } ._19gbk9 { display: flex; } ._180zk4 { display: none; } }
@media (max-width: 480px) { ._24k6lt { padding: 0.7rem 1rem; gap: 0.75rem; } ._ysakwu img { height: 32px; } }

._5ja1xv, ._5ja1xv *, ._5ja1xv *::before, ._5ja1xv *::after { box-sizing: border-box; }
._5ja1xv { width: 100%; background: var(--c-bg); border-top: 2px solid var(--c-border); padding: 3rem 1.25rem; font-family: var(--t-font-body); font-size: var(--t-fs-base); color: var(--c-text); }
._6qgfz4 { max-width: 760px; margin: 0 auto; text-align: center; }
._27q87u { display: inline-flex; align-items: center; justify-content: center; min-width: 48px; padding: 0.3rem 0.7rem; margin-bottom: 1.1rem; font-family: var(--t-font-heading); font-weight: 800; color: var(--c-on-primary); background: var(--c-primary); border: 2px solid var(--c-border); border-radius: 999px; }
._55sg6o { margin: 0 0 1rem; font-weight: 700; color: var(--c-ink); line-height: 1.55; }
._1xfwj9, ._1scro6 { margin: 0 0 0.8rem; font-size: 0.9rem; color: var(--c-muted); line-height: 1.6; overflow-wrap: break-word; }
._5msu5i { margin: 1.5rem 0 0; padding-top: 1.25rem; border-top: 1px solid var(--c-rule); font-size: 0.85rem; color: var(--c-muted); }
@media (max-width: 480px) { ._5ja1xv { padding: 2.25rem 1rem; } }