/* ===== Zen Maru Gothic（サイトで使う文字だけのサブセットを自前で配信）=====
   Google Fonts の分割ファイル（約70個・約1MB）を読まずに済ませるため。ここに無い文字（あとから足した漢字など）は
   これまでどおり Google Fonts（非同期読み込み）から表示される。後から宣言したものが優先されるので、このブロックは Google の @font-face より後ろに置く。 */
@font-face{font-family:'Zen Maru Gothic';font-style:normal;font-weight:400;font-display:swap;src:url(studio-fonts/zen-maru-gothic-400.woff2) format('woff2');unicode-range:U+20-7E,U+A0,U+A5,U+A9,U+AB,U+AE,U+B0,U+B7,U+BB,U+D7,U+2010,U+2013-2014,U+2016,U+2018-201A,U+201C-201E,U+2020-2022,U+2025-2026,U+2030,U+2032-2033,U+2039-203B,U+2190-2193,U+25A0-25A1,U+25B2-25B3,U+25BC-25BD,U+25C6-25C7,U+25CB,U+25CE-25CF,U+25EF,U+2605-2606,U+266A,U+3000-3015,U+301C-301D,U+301F-3020,U+3041-3094,U+309B-309E,U+30A1-30FE,U+4E00-4E01,U+4E08-4E0B,U+4E0D-4E0E,U+4E16,U+4E2D,U+4E3B,U+4E86,U+4E88,U+4E8B-4E8C,U+4E92,U+4EBA,U+4ECA-4ECB,U+4ED5-4ED6,U+4ED8,U+4EE3-4EE5,U+4EFB,U+4F01,U+4F11,U+4F1A,U+4F1D,U+4F3A,U+4F4D,U+4F53,U+4F55,U+4F5C,U+4F7F,U+4F9B,U+4FA1,U+4FBF,U+4FC2,U+4FE1,U+4FEE,U+500B,U+5019,U+505C,U+5065,U+5074,U+5099,U+50CF,U+512A,U+5148-5149,U+514D,U+5150,U+5165,U+5168,U+516C,U+5171,U+5177,U+5185-5186,U+518D,U+5199,U+51FA,U+5206-5207,U+521D,U+5225,U+5229,U+5236,U+5238,U+524A,U+524D,U+5256,U+5272,U+529B,U+52A0,U+52A9,U+52B1,U+52B9,U+52D5,U+52DF,U+52E7,U+5316,U+533A-533B,U+5343,U+5348,U+5357,U+539F,U+53C2,U+53CB,U+53CD,U+53D6-53D7,U+53E3,U+53EF,U+53F7,U+5404,U+5408,U+540C-540D,U+5411,U+5438,U+5468,U+547C,U+548C,U+54C1,U+54E1,U+5546,U+554F,U+55B6,U+5668,U+56DE,U+56F2,U+56FA,U+56FD,U+571F,U+5727-5728,U+5730,U+5750,U+57FA,U+5831,U+5834,U+5897,U+58F0,U+58F2,U+5909,U+5916,U+591C,U+5927,U+5929,U+592B,U+5931,U+5948,U+5973,U+598A,U+59CB,U+5A20,U+5B50,U+5B66,U+5B89,U+5B8C,U+5B97,U+5B9A,U+5B9F,U+5BA2,U+5BA4,U+5BB3,U+5BB6,U+5BB9,U+5BC4,U+5BD2,U+5BE7,U+5BFE,U+5C02,U+5C0A-5C0B,U+5C0E-5C0F,U+5C11,U+5C4A,U+5DDD,U+5DE1,U+5E02-5E03,U+5E0C,U+5E2B,U+5E2F-5E30,U+5E38,U+5E74,U+5E78,U+5E97,U+5EA6,U+5EB7,U+5ECA,U+5EF6,U+5F0F,U+5F15,U+5F35,U+5F53,U+5F62,U+5F71,U+5F8B-5F8C,U+5F92-5F93,U+5F97,U+5FA9,U+5FAE,U+5FC3,U+5FC5,U+5FCD,U+5FD8-5FD9,U+5FDC,U+601D,U+6025,U+6027,U+60A9,U+60C5,U+60D1,U+60F3,U+610F,U+611F,U+614B,U+6162-6163,U+616E,U+6210,U+623B,U+6240,U+624B,U+6255,U+6271,U+627F,U+628A,U+629C,U+629E,U+62C5,U+62E1,U+62ED,U+6301,U+6307,U+632F,U+6368,U+63A2,U+63A7,U+63B2,U+63D0,U+63DB,U+63E1,U+64AE,U+652F,U+6539,U+653F,U+6545,U+6559,U+6570,U+6574,U+6587,U+6599,U+65AD,U+65B0,U+65B9,U+65BD,U+65CF,U+65E5,U+65E9,U+660E,U+6613,U+6620,U+6642,U+6691,U+66DC,U+66F4,U+66F8,U+66FF-6700,U+6708-6709,U+670D,U+671B,U+671F,U+6728,U+672B-672C,U+6761,U+6765,U+679C,U+67D3-67D4,U+683C,U+6848,U+696D,U+697D,U+69CB,U+69D8,U+6A19,U+6A21,U+6A2A,U+6A5F,U+6B21,U+6B32,U+6B62-6B63,U+6B69,U+6BCE,U+6C17,U+6C34,U+6C42,U+6C57,U+6CBB,U+6CC1,U+6CD5,U+6D25,U+6D3B,U+6D3E,U+6D41,U+6D45,U+6D5C,U+6D77,U+6D88,U+6DF1,U+6DFB,U+6E08,U+6E21,U+6E29,U+6E2C,U+6E96,U+6EC5,U+6EDE,U+6F0F,U+706B,U+706F,U+707D,U+70B9-70BA,U+7121,U+719F,U+71B1,U+7269,U+7279,U+72B6,U+73FE,U+7406,U+751F,U+7523,U+7528,U+7530-7531,U+7533,U+7537,U+753A-753B,U+756A,U+75B2,U+75C5,U+75DB,U+7642,U+7652,U+767A-767B,U+7684,U+7686,U+76D7,U+76EE,U+76F4,U+76F8,U+770C,U+771F-7720,U+7740,U+7761,U+77E5,U+786C,U+78BA,U+793A,U+795D-795E,U+79C1,U+79D1,U+79FB,U+7A0B,U+7A4D,U+7A7A,U+7A93,U+7ACB,U+7B11,U+7B2C,U+7B49,U+7B4B,U+7BA1,U+7BC4,U+7C21,U+7D04,U+7D1B,U+7D20,U+7D39,U+7D42,U+7D44,U+7D4C,U+7D50,U+7D61,U+7D66,U+7D99-7D9A,U+7DCA,U+7DD2,U+7DDA,U+7DE8,U+7F6E,U+7F8E,U+7FD2,U+8003,U+8005,U+8010,U+80A9,U+80B2,U+80C3,U+80CC,U+80FD,U+8155,U+8170,U+8178,U+819C-819D,U+81EA,U+8217,U+826F,U+82BD,U+82E6,U+843D,U+85E4,U+884C,U+8868,U+88C5,U+88DC,U+8981,U+898B,U+898F,U+899A,U+89A7,U+89B3,U+89E3,U+8A00,U+8A02,U+8A08,U+8A18,U+8A2D,U+8A3A,U+8A71,U+8A8D,U+8A98,U+8AAD,U+8ABF,U+8AC7,U+8ACB,U+8B1B,U+8B1D,U+8CA0,U+8CA9,U+8CAC,U+8CB4,U+8CC7,U+8CEA,U+8D8A,U+8DB3,U+8EAB,U+8EE2,U+8EFD,U+8F09,U+8F9B,U+8FBC,U+8FD1,U+8FD4,U+8FF7,U+8FFD,U+9014,U+901A,U+9020,U+9023,U+9031,U+9045,U+904B,U+904E,U+9053-9055,U+9060,U+9069,U+9078,U+90E8,U+90FD,U+914D,U+9177,U+91CD,U+91CF,U+91D1,U+9332,U+9577,U+9580,U+9589,U+958B,U+9593,U+95A2,U+9632,U+964D,U+9650,U+9662,U+9664,U+9670,U+969B,U+96A0,U+96C6,U+96E3,U+96F0,U+96FB,U+9759,U+975E,U+9762,U+97FF,U+9803,U+9805,U+9810-9811,U+982D,U+984D,U+9854,U+9858,U+98F2,U+9996,U+9999,U+99B4,U+99C5,U+9A13,U+9AA8,U+9AD8,U+9DB4,U+9F62,U+FF01-FF03,U+FF05-FF0C,U+FF0E-FF5D;}
@font-face{font-family:'Zen Maru Gothic';font-style:normal;font-weight:500;font-display:swap;src:url(studio-fonts/zen-maru-gothic-500.woff2) format('woff2');unicode-range:U+20-7E,U+A0,U+A5,U+A9,U+AB,U+AE,U+B0,U+B7,U+BB,U+D7,U+2010,U+2013-2014,U+2016,U+2018-201A,U+201C-201E,U+2020-2022,U+2025-2026,U+2030,U+2032-2033,U+2039-203B,U+2190-2193,U+25A0-25A1,U+25B2-25B3,U+25BC-25BD,U+25C6-25C7,U+25CB,U+25CE-25CF,U+25EF,U+2605-2606,U+266A,U+3000-3015,U+301C-301D,U+301F-3020,U+3041-3094,U+309B-309E,U+30A1-30FE,U+4E00,U+4E0D,U+4E88,U+4F11,U+4F1A,U+4F53,U+4F55,U+51FA,U+5206,U+521D,U+5225,U+5236,U+5238,U+524D,U+52A0,U+53C2,U+5404,U+5408,U+5411,U+56DE,U+5831,U+5834,U+5BA4,U+5C11,U+5E2B,U+5E74,U+5F62,U+5F8B,U+601D,U+6027,U+60A9,U+60C5,U+60F3,U+6240,U+624B,U+6301,U+63A2,U+6559,U+6570,U+65B0,U+65B9,U+6691,U+6708,U+670D,U+683C,U+6B69,U+6D3E,U+6D41,U+7269,U+786C,U+795E,U+79C1,U+7D04,U+7D4C,U+80A9,U+8170,U+819D,U+81EA,U+82E6,U+88C5,U+8ABF,U+8B1B,U+8CC7,U+8EAB,U+9055,U+9078,U+90FD,U+9650,U+9F62,U+FF01-FF03,U+FF05-FF0C,U+FF0E-FF5D;}
@font-face{font-family:'Zen Maru Gothic';font-style:normal;font-weight:700;font-display:swap;src:url(studio-fonts/zen-maru-gothic-700.woff2) format('woff2');unicode-range:U+20-7E,U+A0,U+A5,U+A9,U+AB,U+AE,U+B0,U+B7,U+BB,U+D7,U+2010,U+2013-2014,U+2016,U+2018-201A,U+201C-201E,U+2020-2022,U+2025-2026,U+2030,U+2032-2033,U+2039-203B,U+2190-2193,U+25A0-25A1,U+25B2-25B3,U+25BC-25BD,U+25C6-25C7,U+25CB,U+25CE-25CF,U+25EF,U+2605-2606,U+266A,U+3000-3015,U+301C-301D,U+301F-3020,U+3041-3094,U+309B-309E,U+30A1-30FE,U+4F11,U+512A,U+6D77,U+9854,U+FF01-FF03,U+FF05-FF0C,U+FF0E-FF5D;}

/* =========================================================
   studio-custom.css — ちひろヨガ（案件ごとの上書き）
   設置先: wp-content/uploads/studio-custom.css
   .entry-content / body 基準で書く（編集画面にも効かせるため）。
   Figma v4（スマホ375）／PC1440 に合わせる。
   ========================================================= */

:root{
  --c-ivory:#faf6ee; --c-white:#fffefb; --c-green:#4f6b52; --c-green-soft:#e4e8df;
  --c-orange:#d2793f; --c-orange-text:#ab5720; --c-orange-btn:#b65e23; --c-orange-soft:#f1e2d0; --c-text:#1c2531; --c-sub:#6f665c; --c-line:#e7e0d2; --c-sand:#f3e7d4;
  --c-line-green:#00c755; --yoga-content:1200px;
}
body, .entry-content{ color:var(--c-text) !important; font-family:var(--yoga-font-p,'Zen Maru Gothic'),sans-serif; }
body{ background:var(--c-ivory); }
.entry-content p, .entry-content li, .entry-content summary{ font-size:16px; line-height:1.9; }

/* ---------- 共通：セクション ---------- */
.chi-sec{ padding-top:48px; padding-bottom:48px; }
.chi-bg-ivory{ background:var(--c-ivory); }
.chi-bg-white{ background:var(--c-white); }
.chi-bg-green{ background:var(--c-green-soft); }
.chi-sec .yoga-section__inner{ max-width:1200px; padding-inline:20px; }
/* WP の constrained レイアウトが直下ブロックを 840px（既定のコンテンツ幅）に縛るのを外す */
.chi-sec .yoga-section__inner > *{ max-width:1200px; }
.chi-sec .yoga-section__en{ margin:0 0 4px !important; font-size:16px; letter-spacing:.12em; color:var(--c-green) !important; text-align:center; }
.chi-sec .yoga-section__title{ margin:0 0 28px !important; font-size:24px; font-weight:500; line-height:1.4; letter-spacing:.08em; color:var(--c-text) !important; text-align:center; border:0; background:none; padding:0; }
.chi-sec .yoga-section__title::after{ content:""; display:block; width:36px; height:3px; margin:12px auto 0 !important; background:var(--c-orange); border-radius:2px; }
.chi-sec .yoga-section__title::before{ display:none; }
.entry-content .chi-sec h3{ background:none; border:0; padding:0; }
/* ボタン（共通） */
.chi-sec .wp-block-button__link, .chi-hero .wp-block-button__link{ border-radius:999px; font-weight:500; font-size:18px; padding:16px 32px; text-decoration:none; background:var(--c-green); color:#fff !important; box-shadow:none; }
.chi-sec .wp-block-button.is-line .wp-block-button__link, .chi-hero .wp-block-button.is-line .wp-block-button__link{ background:var(--c-line-green); }
.chi-sec .wp-block-button.is-more .wp-block-button__link, .chi-sec .wp-block-button.is-follow .wp-block-button__link{ background:transparent; color:var(--c-green) !important; border:1.5px solid var(--c-green); padding:12px 28px; font-size:16px; }
.chi-hero .wp-block-button.is-reservation .wp-block-button__link{ background:var(--c-green); }
/* CTA 帯 */
.chi-cta{ padding-top:12px; padding-bottom:12px; background:var(--c-ivory); }
.chi-cta .yoga-section__inner{ padding-block:0; }
.chi-cta .wp-block-button, .chi-cta .wp-block-button__link{ width:70%; min-width:240px; text-align:center; }
.chi-cta .wp-block-buttons{ margin:0 !important; }

/* ---------- ヘッダー（スマホ：プラグインのモバイルヘッダー） ---------- */
.yss-mheader{ background:var(--c-white); border-bottom:1.5px solid var(--c-line); }
.yss-mheader__btn span{ font-size:10px; }

/* ---------- Cocoon の余計なもの ---------- */
.home #main > .article-header, .home .breadcrumb, .home .sns-share, .home .sns-follow, .home .entry-footer, .home .related-entries, .home .comment-area{ display:none !important; }
.home .main, .home .content, .home .content-in{ background:transparent; box-shadow:none; border:0; padding:0; }
.home #content-in, .home .content-in{ display:block; }
.home .sidebar{ display:none !important; }
.home .main{ width:100% !important; max-width:none !important; margin:0 !important; padding:0 !important; }

/* ---------- ヒーロー ---------- */
.chi-hero{ position:relative; display:grid; width:100vw; max-width:100vw; margin-left:calc(50% - 50vw) !important; margin-right:calc(50% - 50vw) !important; margin-top:0 !important; margin-bottom:0 !important; background:var(--c-sand); overflow:hidden; }
.chi-hero__panel{ grid-area:1/1; margin:0 !important; }
.chi-hero__panel .yss-fv{ margin:0 !important; max-width:none !important; width:100% !important; border-radius:0; }
.chi-hero__text{ grid-area:1/1; z-index:3; align-self:end; padding:56px 20px 28px; background:linear-gradient(to top,rgba(20,26,32,.62),rgba(20,26,32,0)); color:#fff !important; }
.chi-hero .chi-hero__eyebrow{ margin:0 0 4px !important; color:#fff !important; font-size:16px; letter-spacing:.08em; text-shadow:0 1px 6px rgba(0,0,0,.35); }
.entry-content h1.chi-hero__title{ margin:0 0 16px !important; color:#fff !important; font-size:36px; line-height:1.35; font-weight:500; letter-spacing:.04em; text-shadow:0 2px 10px rgba(0,0,0,.35); background:none; border:0; padding:0; }
.chi-offer, .chi-hero__line{ display:none !important; }
.chi-hero__btns{ margin:0 !important; justify-content:flex-start; }
.chi-hero__btns .wp-block-button__link{ font-size:18px; padding:14px 36px; }

/* ---------- お知らせ・ブログの行 ---------- */
.chi-rows{ max-width:780px; margin:0 auto 24px !important; }
.chi-row{ display:flex; flex-direction:column; gap:2px; padding:14px 4px; border-bottom:1.5px solid var(--c-line); }
.chi-row__date{ margin:0 !important; font-size:16px; color:var(--c-sub) !important; }
.chi-row__title{ margin:0 !important; font-size:16px; font-weight:500; }
.chi-more{ margin:0 !important; }
.chi-more a{ color:var(--c-green) !important; text-decoration:none; font-weight:500; }

/* ---------- キャンペーンバナー ---------- */
.chi-campaign{ padding-top:28px; padding-bottom:28px; }
.chi-campaign__img{ max-width:780px; margin:0 auto !important; }
.chi-campaign__img img{ width:100%; height:auto; border-radius:16px; display:block; }

/* ---------- コンセプト ---------- */
.entry-content .chi-concept__lead{ margin:0 0 8px !important; font-size:19px; font-weight:500; line-height:1.6; }
.chi-concept__quote{ margin:0 0 16px !important; color:var(--c-orange-text) !important; font-weight:500; }
.chi-concept__text{ margin:0 0 24px !important; }
.chi-concept__video{ max-width:780px; margin:0 auto !important; }
.chi-concept__video iframe, .chi-concept__video .wp-block-embed__wrapper{ border-radius:16px; overflow:hidden; }

/* ---------- クラス＆料金 ---------- */
.chi-classes{ display:grid; grid-template-columns:1fr; gap:28px; }
.chi-class{ display:flex; flex-direction:column; }
.chi-class__photo{ margin:0 !important; }
.chi-class__photo img{ width:100%; aspect-ratio:335/230; object-fit:cover; border-radius:20px; display:block; }
.chi-class--private .chi-class__photo img{ object-position:center 30%; }
.chi-class__acc{ border-bottom:1.5px solid var(--c-line); padding:16px 0; margin:0 !important; }
.chi-class__acc > summary{ list-style:none; cursor:pointer; position:relative; padding-right:28px; display:flex; flex-direction:column; gap:2px; }
.chi-class__acc > summary::-webkit-details-marker{ display:none; }
.chi-class__acc > summary::after{ content:""; position:absolute; right:4px; top:12px; width:9px; height:9px; border-right:2px solid var(--c-sub); border-bottom:2px solid var(--c-sub); transform:rotate(45deg); transition:transform .2s; }
.chi-class__acc[open] > summary::after{ transform:rotate(-135deg); top:18px; }
.chi-sum__name{ font-size:22px; font-weight:500; line-height:1.4; letter-spacing:.04em; }
.chi-sum__meta{ font-size:18px; color:var(--c-orange-text) !important; line-height:1.5; }
.chi-class__desc{ margin:14px 0 0 !important; }
.chi-pbox{ margin-top:16px !important; padding:16px 18px; background:var(--c-white); border:1.5px solid var(--c-line); border-radius:20px; }
.chi-pbox__title{ margin:0 0 4px !important; color:var(--c-orange-text) !important; font-size:17px; font-weight:500; }
.chi-prow{ display:flex !important; flex-wrap:nowrap; align-items:baseline; gap:0 !important; padding:9px 0; }
.chi-prow__l{ margin:0 !important; font-size:16px; order:0; flex:0 1 auto; }
.chi-prow::before{ content:""; order:1; flex:1 1 20px; min-width:12px; margin:0 8px !important; align-self:center; border-bottom:2px dotted #cdc4b2; transform:translateY(5px); }
.chi-prow__p{ margin:0 !important; order:2; font-size:22px; font-weight:500; line-height:1.3; white-space:nowrap; }
.chi-pbox__note{ margin:4px 0 0 !important; font-size:15px; line-height:1.7; color:var(--c-sub) !important; }
.chi-plans{ margin-top:12px !important; padding:0; border:1.5px solid var(--c-orange-soft); border-radius:14px; background:#faf3ea; }
.chi-plans > summary{ cursor:pointer; list-style:none; padding:12px 18px; color:var(--c-orange-text) !important; font-weight:500; position:relative; }
.chi-plans > summary::-webkit-details-marker{ display:none; }
.chi-plans > summary::after{ content:""; position:absolute; right:18px; top:18px; width:8px; height:8px; border-right:2px solid var(--c-orange); border-bottom:2px solid var(--c-orange); transform:rotate(45deg); }
.chi-plans[open] > summary::after{ transform:rotate(-135deg); top:22px; }
.chi-plans > *:not(summary){ margin-inline:18px; }
.chi-plan__h{ margin:8px 18px 0 !important; font-weight:500; font-size:16px; }
.chi-plan__t{ margin:2px 18px 10px !important; font-size:16px; color:var(--c-sub) !important; }
.chi-join{ display:flex; margin:28px 0 0 !important; padding:14px 18px; background:var(--c-white); border:1.5px solid var(--c-line); border-radius:16px; font-size:18px; }
.chi-join p{ margin:0 !important; font-size:18px; }
.chi-join__v{ color:var(--c-orange-text) !important; font-weight:500; }
.chi-choice{ margin-top:40px !important; text-align:center; }
.chi-rule{ width:28px; height:2px; margin:0 auto 12px !important; background:var(--c-orange); }
.entry-content .chi-choice__h{ margin:0 0 12px !important; font-size:20px; font-weight:500; }
.chi-choice__t{ margin:0 !important; }
.chi-foot{ margin-top:28px !important; text-align:center; }
.chi-foot__t{ margin:0 0 12px !important; }
.chi-foot .wp-block-button__link{ width:100%; }
.chi-foot .wp-block-buttons{ margin:0 !important; }

/* ---------- スケジュール（プラグインの週タブ） ---------- */
.chi-schedule .yoga-section__inner{ max-width:1200px; }

/* ---------- 講師紹介 ---------- */
.chi-inst__top{ margin-bottom:16px !important; }
.chi-inst__photo img{ width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; border-radius:20px; display:block; }
.entry-content .chi-inst__name{ margin:14px 0 4px !important; font-size:26px; font-weight:500; }
.chi-inst__role{ margin:0 !important; color:var(--c-sub) !important; }
.chi-inst__p{ margin:0 0 14px !important; }
.chi-toggle{ margin-top:10px !important; border:1.5px solid var(--c-line); border-radius:14px; background:var(--c-white); }
.chi-toggle > summary{ cursor:pointer; padding:14px 18px; font-weight:500; list-style:none; position:relative; }
.chi-toggle > summary::-webkit-details-marker{ display:none; }
.chi-toggle > summary::after{ content:""; position:absolute; right:18px; top:20px; width:8px; height:8px; border-right:2px solid var(--c-sub); border-bottom:2px solid var(--c-sub); transform:rotate(45deg); }
.chi-toggle[open] > summary::after{ transform:rotate(-135deg); top:24px; }
.chi-toggle > *:not(summary){ margin:0 18px 14px !important; }

/* ---------- スタジオ紹介 ---------- */
.entry-content .chi-about__lead{ margin:0 0 20px !important; font-size:19px; font-weight:500; }
.chi-gal{ display:grid; grid-template-columns:1fr; gap:10px; margin-bottom:28px !important; }
.chi-gal__main img{ width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:20px; display:block; }
.chi-gal__thumbs{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.chi-gal__thumb img{ width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:16px; display:block; }
.chi-feats{ display:grid; gap:18px; }
.chi-feat{ display:flex; gap:16px; align-items:flex-start; padding:4px 0; }
.chi-feat__n{ margin:0 !important; flex:none; font-size:30px; line-height:1.2; color:var(--c-orange-text) !important; font-weight:500; min-width:44px; }
.chi-feat__t{ margin:0 !important; font-size:18px; font-weight:500; }
.chi-feat__d{ margin:2px 0 0 !important; }

/* ---------- お客様の声（プラグインのカルーセル） ---------- */
.chi-voice .yoga-review{ background:var(--c-white); border:1.5px solid var(--c-line); border-radius:20px; padding:20px; box-shadow:none; height:100%; }
.chi-voice .yoga-review__head{ align-items:center; gap:12px; margin-bottom:10px !important; }
.chi-voice .yoga-review__avatar img{ width:56px; height:56px; border-radius:50%; object-fit:cover; }
.chi-voice .yoga-review__attr{ margin:0 !important; font-size:18px; font-weight:500; }
.chi-voice .yoga-review__text{ margin:0 !important; font-size:16px; line-height:1.85; }

/* ---------- FAQ ---------- */
.chi-faq__list{ max-width:820px; margin:0 auto !important; }
.chi-faq__item{ border-bottom:1.5px solid var(--c-line); padding:0; }
.chi-faq__item > summary{ display:flex; gap:12px; align-items:flex-start; cursor:pointer; list-style:none; padding:16px 28px 16px 0; font-weight:500; position:relative; }
.chi-faq__item > summary::-webkit-details-marker{ display:none; }
.chi-faq__item > summary::after{ content:""; position:absolute; right:6px; top:24px; width:8px; height:8px; border-right:2px solid var(--c-sub); border-bottom:2px solid var(--c-sub); transform:rotate(45deg); }
.chi-faq__item[open] > summary::after{ transform:rotate(-135deg); top:28px; }
.chi-q{ flex:none; width:26px; height:26px; border-radius:50%; background:var(--c-green); color:#fff !important; font-size:14px; line-height:26px; text-align:center; margin-top:1px !important; }
.chi-faq__item > p{ margin:0 0 16px !important; padding-left:38px; color:var(--c-sub) !important; }

/* ---------- アクセス ---------- */
.chi-access .yoga-section__inner{ max-width:820px; text-align:center; }
.chi-acc__lead{ margin:0 !important; font-weight:500; }
.chi-acc__train{ margin:0 0 16px !important; color:var(--c-sub) !important; }
.chi-acc__info{ margin-bottom:20px !important; padding:18px; background:var(--c-white); border:1.5px solid var(--c-line); border-radius:20px; }
.chi-acc__addr, .chi-acc__off{ margin:0 !important; }
.chi-acc__off{ margin-top:8px !important; color:var(--c-sub) !important; }

/* ---------- 移転前に ---------- */
.chi-move .yoga-section__inner{ max-width:720px; }
.entry-content .chi-move__h{ margin:0 0 18px !important; font-size:22px; font-weight:500; line-height:1.6; }
.chi-move__t{ margin:0 0 12px !important; }
.chi-move__quote{ margin:20px 0 4px !important; font-size:27px; color:var(--c-orange-text) !important; font-weight:500; line-height:1.5; }
.chi-move .wp-block-buttons{ margin-top:20px !important; }

/* ---------- Instagram ---------- */
.chi-insta .yoga-section__inner{ text-align:center; }
.chi-insta__handle{ margin:0 0 16px !important; font-size:18px; font-weight:500; }
.chi-insta__handle a{ color:var(--c-text) !important; text-decoration:none; }

/* ---------- フッター ---------- */
.footer{ background:var(--c-white); border-top:1.5px solid var(--c-line); }
.footer .logo-footer, .footer .source-org{ font-size:14px; }
.navi-footer a{ font-size:14px; color:var(--c-sub) !important; }

/* =========================================================
   PC（1200px コンテンツ幅）
   ========================================================= */

/* ---------- PC ヘッダー（ロゴ左・メニュー右・体験予約ボタン） ---------- */

@media (max-width:959px){
  .header-container, #navi{ display:none; }
}

/* ---------- 微調整（行間・折り返し） ---------- */
.entry-content .chi-offer p{ line-height:1.4; }
.entry-content .chi-offer .chi-offer__price{ line-height:1.15; }
.chi-hero .wp-block-button__link{ box-sizing:border-box; }
.entry-content .chi-prow__p{ line-height:1.3; }
.entry-content .chi-sum__name, .entry-content .chi-sum__meta{ line-height:1.5; }

/* WP の flow レイアウト（子ブロックの上マージン）をヒーローでは無効にする */
.chi-hero__text > *, .chi-hero__panel > *{ margin-block-start:0 !important; }
.chi-offer > *, .chi-offer__label > *, .chi-offer__side > *{ margin-block-start:0 !important; }

.chi-offer__label, .chi-offer__side{ gap:0 !important; }
.chi-hero__text{ display:flex; flex-direction:column; gap:0 !important; }

.entry-content .chi-prow__l{ line-height:1.5; }
.chi-pbox > *{ margin-block-start:0 !important; }
.chi-pbox{ display:flex; flex-direction:column; gap:0 !important; }
.chi-prow{ margin:0 !important; }

.entry-content .chi-more a{ text-decoration:none; }

/* スマホのヒーロー：写真の上に白文字（テーマの見出し色指定に負けないよう !important） */
.chi-hero{ padding:0 !important; }
.chi-hero .chi-hero__eyebrow, .entry-content h1.chi-hero__title{ color:#fff !important; }
.entry-content h1.chi-hero__title{ margin:0 0 14px !important; font-size:36px; line-height:1.3; }
.chi-hero__text{ margin-bottom:0 !important; padding-bottom:44px; }
.chi-hero .chi-hero__eyebrow{ margin:0 0 2px !important; }

/* .entry-content p{font-size:16px} に負けないよう、段落のサイズ指定を詳細度を上げて再指定 */
.entry-content .chi-prow__p{ font-size:22px; }
.entry-content .chi-pbox__title{ font-size:17px; }
.entry-content .chi-pbox__note, .entry-content .chi-plan__t{ font-size:15px; }
.entry-content .chi-feat__n{ font-size:30px; }
.entry-content .chi-feat__t, .entry-content .yoga-review__attr, .entry-content .chi-insta__handle, .entry-content .chi-join p{ font-size:18px; }
.entry-content .chi-move__quote{ font-size:27px; }
.entry-content .chi-sec .yoga-section__en{ font-size:16px; }
.entry-content .chi-classes{ row-gap:20px; }


/* =========================================================
   追加：PCだけ／スマホだけ の出し分け（PC版で足した要素はスマホでは出さない）
   ========================================================= */
@media (max-width:959px){
  .chi-pc-only, .chi-brpc{ display:none !important; }
  .chi-row--3{ display:none; }
  .chi-classgroup{ display:none; }
  .chi-sum__tags, .chi-sum__price{ display:none; }
  .chi-move__photo{ margin:0 auto 18px !important; max-width:285px; }
  .chi-move__photo img{ width:100%; height:auto; border-radius:12px; display:block; }
  .entry-content .chi-move__lead{ font-weight:500; }
}
@media (min-width:960px){ .chi-sp-only{ display:none !important; } }

/* =========================================================
   PC（1440基準・本文幅800px）  Figma「ちひろヨガ_PC1440_v1」に合わせる
   外枠（ヘッダー／FV／フッター）は全幅、本文セクションは中身800px。
   ========================================================= */
@media (min-width:960px){
  /* ---------- 共通 ---------- */
  .entry-content p, .entry-content li, .entry-content summary{ font-size:18px; line-height:1.9; }
  .entry-content .chi-sec{ padding-top:48px; padding-bottom:48px; }
  .entry-content .chi-sec .yoga-section__inner{ max-width:800px; padding-inline:0; }
  .entry-content .chi-sec .yoga-section__inner > *{ max-width:800px; }
  .entry-content .chi-sec .yoga-section__en{ font-size:20px; letter-spacing:.1em; margin:0 0 4px !important; }
  .entry-content .chi-sec .yoga-section__title{ font-size:40px; margin:0 0 32px !important; }
  .entry-content .chi-sec .wp-block-button__link, .entry-content .chi-hero .wp-block-button__link{ font-size:20px; padding:18px 36px; }
  .entry-content .chi-sec .wp-block-button.is-more .wp-block-button__link, .entry-content .chi-sec .wp-block-button.is-follow .wp-block-button__link{ font-size:18px; padding:14px 40px; }
  .entry-content .chi-bg-lesson, .entry-content .chi-lesson{ background:var(--c-ivory); }

  /* ---------- ヘッダー（ロゴ左・メニュー右・体験予約） ---------- */
  .header-container{ background:var(--c-white); border-bottom:1.5px solid var(--c-line); }
  .header-container-in, .header-in{ max-width:1200px; margin:0 auto !important; }
  #header-container .navi, #navi{ background:transparent; }
  .header-in{ display:flex; align-items:center; justify-content:space-between; min-height:88px; }
  .navi-in{ margin:0 !important; }
  .navi-in > ul{ display:flex; flex-wrap:nowrap; justify-content:flex-end; align-items:center; }
  .navi-in > ul > li{ width:auto !important; flex:none; }
  #navi .menu-header > li > a, .navi-in > ul > li > a{ font-size:17px; color:var(--c-text) !important; padding:0 14px; }
  .navi-in > ul > li > a:hover{ color:var(--c-orange-text) !important; }
  #navi .menu-header .chi-nav-cta > a, .navi-in .chi-nav-cta > a{ background:var(--c-orange-btn); color:#fff !important; border-radius:999px; padding:0 28px; margin-left:12px !important; height:48px; line-height:48px; }

  /* ---------- FV：左=写真 864px / 右=テキスト 576px（Lucasと同じ 6:4） ---------- */
  .entry-content .chi-hero{ display:grid; grid-template-columns:min(60vw,864px) minmax(0,1fr); width:100vw !important; max-width:100vw !important; height:460px; margin-left:calc(50% - 50vw) !important; margin-right:0 !important;
    background:var(--c-white); box-shadow:0 0 0 100vmax var(--c-white); clip-path:inset(0 -100vmax); box-sizing:border-box; padding:0 !important; }
  .entry-content .chi-hero__panel{ grid-area:1/1; height:460px; position:relative; }
  .entry-content .chi-hero__panel .yss-fv{ --yss-height-pc:460px !important; --yss-dot-active:#d2793f !important; --yss-dot-color:#ffffff !important; --yss-arrow-color:#ffffff !important;
    width:100% !important; max-width:none !important; margin:0 !important; height:460px; border-radius:0; }
  .entry-content .chi-hero__panel .yss-fv.yss-fv--full{ width:100% !important; max-width:100% !important; margin:0 !important; }
  .entry-content .chi-hero__panel .yss-fv__dots{ left:32px; transform:none; bottom:24px; }
  .entry-content .chi-hero__panel .yss-fv__arrow{ filter:drop-shadow(0 1px 4px rgba(0,0,0,.4)); }
  .entry-content .chi-hero__text{ grid-area:1/2; z-index:1; align-self:center; padding:0 64px; background:none; color:var(--c-text) !important; }
  .entry-content .chi-hero .chi-hero__eyebrow{ display:flex; align-items:center; gap:14px; color:var(--c-green) !important; text-shadow:none; font-size:20px; font-weight:500; letter-spacing:.08em; margin:0 0 6px !important; line-height:1.4; }
  .entry-content .chi-hero .chi-hero__eyebrow::before{ content:""; width:36px; height:2px; background:var(--c-green); flex:none; }
  .entry-content h1.chi-hero__title{ color:var(--c-text) !important; text-shadow:none; font-size:46px; line-height:1.25; letter-spacing:.04em; margin:0 0 14px !important; padding:0 0 14px; border-bottom:1.5px solid #d9ccb6; white-space:nowrap; }
  .entry-content .chi-hero__title br{ display:none; }
  .entry-content .chi-offer{ gap:0 22px !important; display:grid !important; grid-template-columns:auto auto; grid-template-rows:auto auto; column-gap:22px; width:max-content; max-width:100%; margin:0 0 18px !important; padding:0; border:0; }
  .entry-content .chi-offer__label{ grid-area:1/1; display:flex !important; flex-direction:row !important; gap:.7em; margin:0 !important; }
  .entry-content .chi-offer__l1, .entry-content .chi-offer__l2{ color:var(--c-orange-text) !important; font-size:18px !important; line-height:1.4 !important; font-weight:500; margin:0 !important; }
  .entry-content .chi-offer .chi-offer__price{ grid-area:2/1; font-size:52px !important; line-height:1.1; font-weight:500; margin:0 !important; }
  .entry-content .chi-offer__side{ grid-area:1/2/3/3; display:flex !important; flex-direction:column; justify-content:space-between; padding-left:22px; border-left:1.5px solid #d9ccb6; }
  .entry-content .chi-offer__note{ font-size:19px !important; color:var(--c-sub) !important; margin:0 !important; line-height:1.4 !important; }
  .entry-content .chi-offer__free{ font-size:30px !important; color:var(--c-orange-text) !important; font-weight:500; margin:0 !important; line-height:1.3 !important; }
  .entry-content .chi-hero__btns{ gap:16px; flex-wrap:nowrap; justify-content:flex-start; margin:0 !important; }
  .entry-content .chi-hero__line{ display:block !important; }
  .entry-content .chi-hero .wp-block-button__link{ width:auto !important; min-width:216px; box-sizing:border-box; text-align:center; font-size:17px; padding:15px 12px; }
  .entry-content .chi-hero .wp-block-button.is-reservation .wp-block-button__link{ background:var(--c-orange-btn); }
  .entry-content .chi-hero .wp-block-button.is-line .wp-block-button__link{ background:var(--c-line-green); }

  /* ---------- 信頼バー ---------- */
  .entry-content .chi-trust{ padding:0 !important; background:var(--c-green-soft); }
  .entry-content .chi-trust .yoga-section__inner{ max-width:1440px; }
  .entry-content .chi-trust .yoga-section__inner > *{ max-width:1440px; }
  .entry-content .chi-trust__row{ gap:0 !important; }
  .entry-content .chi-trust__item{ padding:18px 40px; text-align:center; border-left:1.5px solid #b3c4b0; }
  .entry-content .chi-trust__item:first-child{ border-left:0; }
  .entry-content .chi-trust__item > *{ margin:0 !important; }
  .entry-content .chi-trust__t{ font-size:20px; font-weight:500; color:var(--c-green) !important; line-height:1.5; }
  .entry-content .chi-trust__s{ font-size:16px; color:var(--c-sub) !important; line-height:1.5; }

  /* ---------- お知らせ・ブログ：3カード ---------- */
  .entry-content .chi-rows{ position:relative; display:grid; grid-template-columns:repeat(3,250px); gap:24px; max-width:798px; margin:0 auto 32px !important; }
  .entry-content .chi-row, .entry-content .chi-row--3{ display:block !important; padding:0 16px 20px; background:var(--c-white); border:0; border-radius:20px; overflow:hidden; box-shadow:0 4px 16px rgba(28,37,49,.08); }
  .entry-content .chi-row::before{ content:""; display:block; aspect-ratio:3/2; margin:0 -16px 14px !important; background:var(--c-green-soft); }
  .entry-content .chi-row__date{ font-size:16px; margin:0 0 4px !important; }
  .entry-content .chi-row__title{ font-size:18px; line-height:1.6; font-weight:500; }
  .entry-content .chi-rows::after{ content:"›"; position:absolute; right:-17px; top:68px; width:34px; height:34px; border-radius:50%; background:#fff; box-shadow:0 2px 8px rgba(0,0,0,.15); display:grid; place-items:center; font-size:22px; line-height:1; color:var(--c-text) !important; padding-bottom:3px; box-sizing:border-box; }
  .entry-content .chi-more{ font-size:18px; }

  /* ---------- キャンペーンバナー ---------- */
  .entry-content .chi-campaign{ padding-top:32px; padding-bottom:32px; }
  .entry-content .chi-campaign__img{ max-width:800px; }

  /* ---------- コンセプト：左テキスト／右動画 ---------- */
  .entry-content .chi-concept__cols{ display:grid; grid-template-columns:minmax(0,1fr) 440px; gap:32px; align-items:center; }
  .entry-content .chi-concept__body *{ text-align:left !important; }
  .entry-content .chi-concept__lead{ font-size:28px; line-height:1.5; margin:0 0 12px !important; }
  .entry-content .chi-concept__quote{ font-size:20px; color:var(--c-sub) !important; font-weight:500; margin:0 0 14px !important; }
  .entry-content .chi-concept__text{ font-size:20px; color:var(--c-sub) !important; margin:0 !important; line-height:1.9; }
  .entry-content .chi-concept__video{ position:relative; margin:0 !important; max-width:440px; }
  .entry-content .chi-concept__video::after{ content:""; position:absolute; right:-36px; bottom:-40px; width:150px; height:150px; border-radius:50%; background:var(--c-sand); z-index:-1; }
  .entry-content .chi-concept__video iframe, .entry-content .chi-concept__video .wp-block-embed__wrapper{ border-radius:16px; box-shadow:0 8px 24px rgba(28,37,49,.15); }
  .entry-content .chi-cta{ padding-top:0; padding-bottom:36px; }
  .entry-content .chi-cta .wp-block-button, .entry-content .chi-cta .wp-block-button__link{ width:260px; }
  .entry-content .chi-cta .wp-block-button__link{ padding:18px 24px; }

  /* ---------- 体験CTA帯（緑） ---------- */
  .entry-content .chi-trial{ background:var(--c-green); color:#fff !important; padding-top:44px; padding-bottom:48px; }
  .entry-content .chi-trial p{ color:#fff !important; }
  .entry-content .chi-trial__label{ font-size:36px; font-weight:500; letter-spacing:.12em; margin:0 0 8px !important; opacity:.92; line-height:1.4; }
  .entry-content .chi-trial__price{ align-items:center; gap:0 !important; margin:0 0 14px !important; }
  .entry-content .chi-trial__a, .entry-content .chi-trial__b{ font-size:56px; font-weight:500; line-height:1.2; margin:0 !important; padding:0 34px; }
  .entry-content .chi-trial__b{ font-size:48px; border-left:1.5px solid rgba(255,255,255,.45); }
  .entry-content .chi-trial__note{ font-size:18px; opacity:.88; margin:0 0 22px !important; line-height:1.8; }
  .entry-content .chi-trial__btns{ gap:20px; margin:0 !important; }
  .entry-content .chi-trial .wp-block-button__link{ width:auto !important; min-width:300px; box-sizing:border-box; padding:18px 12px; font-size:20px; text-align:center; background:var(--c-orange-btn); }
  .entry-content .chi-trial .wp-block-button.is-line .wp-block-button__link{ background:var(--c-line-green); }

  /* ---------- ご体験の流れ ---------- */
  .entry-content .chi-steps{ display:grid; grid-template-columns:repeat(3,250px); gap:24px; justify-content:center; }
  .entry-content .chi-step{ padding:24px 22px 26px; background:var(--c-ivory); border:1.5px solid var(--c-line); border-radius:20px; }
  .entry-content .chi-step > *{ margin:0 !important; }
  .entry-content .chi-step__n{ font-size:16px; color:var(--c-orange-text) !important; font-weight:500; letter-spacing:.06em; line-height:1.5; }
  .entry-content .chi-step__t{ font-size:24px; font-weight:500; line-height:1.5; margin:2px 0 6px !important; }
  .entry-content .chi-step__d{ font-size:18px; color:var(--c-sub) !important; line-height:1.8; }

  /* ---------- クラス＆料金：グループ別アコーディオン行 ---------- */
  .entry-content .chi-classes{ display:block; }
  .entry-content .chi-classgroup{ display:block; margin:30px 0 12px !important; padding:0 0 0 12px; border:0 !important; border-left:4px solid var(--c-orange) !important; background:none; font-size:20px; font-weight:500; line-height:1.3; }
  .entry-content .chi-classgroup:first-child{ margin-top:0 !important; }
  .entry-content .chi-class{ position:relative; display:block; background:var(--c-white); border:1.5px solid var(--c-line); border-radius:20px; margin:0 0 12px !important; }
  .entry-content .chi-class__photo{ position:absolute; left:16px; top:14px; width:90px; margin:0 !important; z-index:1; }
  .entry-content .chi-class__photo img{ width:90px; height:62px; aspect-ratio:auto; border-radius:10px; object-fit:cover; }
  .entry-content .chi-class--private .chi-class__photo{ display:none; }
  .entry-content .chi-class__acc{ border:0; padding:0; margin:0 !important; }
  .entry-content .chi-class__acc > summary{ cursor:pointer; pointer-events:auto; display:grid; grid-template-columns:minmax(0,1fr) auto; grid-template-areas:"name price" "meta price" "tags price"; column-gap:16px; align-items:center; padding:16px 56px 16px 20px; }
  .entry-content .chi-class--reset .chi-class__acc > summary, .entry-content .chi-class--aroma .chi-class__acc > summary, .entry-content .chi-class--flow .chi-class__acc > summary, .entry-content .chi-class--auto .chi-class__acc > summary{ padding-left:124px; }
  .entry-content .chi-class__acc > summary::after{ display:block; right:24px; top:50%; margin-top:-6px !important; }
  .entry-content .chi-class__acc[open] > summary::after{ top:50%; margin-top:-2px !important; }
  .entry-content .chi-class__acc[open] > summary{ border-bottom:1.5px solid var(--c-line); }
  .entry-content .chi-sum__name{ grid-area:name; font-size:26px; letter-spacing:.04em; }
  .entry-content .chi-sum__meta{ grid-area:meta; font-size:19px; }
  .entry-content .chi-sum__tags{ grid-area:tags; display:flex; flex-wrap:wrap; gap:6px; margin-top:4px !important; }
  .entry-content .chi-tag{ padding:1px 12px; border-radius:999px; background:var(--c-orange-soft); color:var(--c-orange-text) !important; font-size:16px; line-height:1.6; }
  .entry-content .chi-sum__price{ grid-area:price; display:flex; flex-direction:column; align-items:flex-end; text-align:right; }
  .entry-content .chi-sum__price small{ font-size:16px; color:var(--c-sub) !important; line-height:1.4; }
  .entry-content .chi-sum__price b{ font-size:28px; font-weight:500; line-height:1.3; }
  .entry-content .chi-class__acc > *:not(summary){ margin-left:20px !important; margin-right:20px !important; }
  .entry-content .chi-class__desc{ margin-top:16px !important; font-size:18px; }
  .entry-content .chi-pbox{ margin:16px 20px 20px !important; padding:18px 24px 14px; background:var(--c-ivory); border:0; border-radius:16px; }
  .entry-content .chi-pbox__title{ font-size:18px; }
  .entry-content .chi-prow__l{ font-size:18px; }
  .entry-content .chi-prow__p{ font-size:22px; }
  .entry-content .chi-pbox__note{ font-size:16px; }
  .entry-content .chi-plans{ margin:0 20px 20px !important; }
  .entry-content .chi-join{ max-width:300px; margin:32px auto 0 !important; border-radius:999px; justify-content:center; gap:24px; }
  .entry-content .chi-choice h3{ font-size:24px; }
  .entry-content .chi-foot .wp-block-button__link{ width:420px; }

  /* ---------- スケジュール（プラグイン側CSSがコンテナ幅700pxから横並びに切替） ---------- */
  .entry-content .chi-schedule .yoga-section__inner{ max-width:800px; }

  /* ---------- 講師紹介：左=写真と名前 / 右=見出しと本文 ---------- */
  .entry-content .chi-instructor .yoga-section__inner{ display:grid; grid-template-columns:300px minmax(0,1fr); column-gap:56px; align-items:start; }
  .entry-content .chi-instructor .yoga-section__inner > *{ grid-column:2; }
  .entry-content .chi-instructor .yoga-section__inner > .chi-inst__top{ grid-column:1; grid-row:1 / span 12; max-width:300px; margin:0 !important; text-align:center; }
  .entry-content .chi-instructor .yoga-section__en, .entry-content .chi-instructor .yoga-section__title{ text-align:left !important; }
  .entry-content .chi-instructor .yoga-section__title::after{ margin-left:0 !important; }
  .entry-content .chi-inst__photo{ margin:0 !important; }
  .entry-content .chi-inst__photo img{ width:260px; height:260px; aspect-ratio:1; border-radius:50%; object-fit:cover; object-position:center 20%; border:4px solid var(--c-orange); box-sizing:border-box; margin:0 auto !important; }
  .entry-content .chi-inst__head{ margin-top:10px !important; }
  .entry-content .chi-inst__name{ font-size:34px; margin:4px 0 6px !important; }
  .entry-content .chi-inst__role{ font-size:18px; color:var(--c-orange-text) !important; line-height:1.7; }
  .entry-content .chi-inst__p{ font-size:18px; color:var(--c-sub) !important; margin-bottom:14px !important; }
  .entry-content .chi-toggle{ border:1.5px solid var(--c-orange); border-radius:14px; background:transparent; }
  .entry-content .chi-toggle > summary{ color:var(--c-orange-text) !important; font-size:20px; }
  .entry-content .chi-toggle > summary::after{ border-color:var(--c-orange); }

  /* ---------- CTA帯（PC：一言＋ボタン2つ） ---------- */
  .entry-content .chi-ctapc{ background:var(--c-green-soft); padding-top:34px; padding-bottom:34px; }
  .entry-content .chi-ctapc__lead{ font-size:26px; font-weight:500; margin:0 0 18px !important; line-height:1.5; color:var(--c-text) !important; }
  .entry-content .chi-ctapc__btns{ gap:20px; margin:0 !important; }
  .entry-content .chi-ctapc .wp-block-button__link{ width:auto !important; min-width:296px; box-sizing:border-box; text-align:center; font-size:20px; padding:18px 12px; background:var(--c-green); }
  .entry-content .chi-ctapc .wp-block-button.is-line .wp-block-button__link{ background:var(--c-line-green); }

  /* ---------- スタジオ紹介：左=写真 / 右=3つの特徴 ---------- */
  .entry-content .chi-about__cols{ display:grid; grid-template-columns:480px minmax(0,1fr); gap:40px; align-items:start; }
  .entry-content .chi-about__lead{ font-size:26px; margin:0 0 28px !important; }
  .entry-content .chi-gal{ display:grid; grid-template-columns:1fr; gap:8px; margin:0 !important; }
  .entry-content .chi-gal__main img{ width:100%; aspect-ratio:16/9; height:auto; max-height:none; border-radius:20px; object-fit:cover; }
  .entry-content .chi-gal__thumbs{ grid-template-columns:1fr 1fr; gap:8px; }
  .entry-content .chi-gal__thumb img{ aspect-ratio:3/2; border-radius:14px; }
  .entry-content .chi-feats{ display:flex; flex-direction:column; gap:0; }
  .entry-content .chi-feat{ flex-direction:row; gap:14px; padding:14px 0; border-bottom:1.5px dashed var(--c-line); }
  .entry-content .chi-feat:first-child{ padding-top:0; }
  .entry-content .chi-feat:last-child{ border-bottom:0; }
  .entry-content .chi-feat__n{ font-size:34px; }
  .entry-content .chi-feat__t{ font-size:22px; }
  .entry-content .chi-feat__d{ font-size:18px; color:var(--c-sub) !important; }

  /* ---------- お客様の声（2枚表示のカルーセル） ---------- */
  .entry-content .chi-voice .yoga-review{ padding:24px; border-radius:20px; }
  .entry-content .chi-voice .yoga-review__avatar img{ width:64px; height:64px; }
  .entry-content .chi-voice .yoga-review__attr{ font-size:22px; }
  .entry-content .chi-voice .yoga-review__text{ font-size:18px; }

  /* ---------- FAQ ---------- */
  .entry-content .chi-faq__list{ max-width:800px; }
  .entry-content .chi-faq__item > summary{ font-size:20px; padding:18px 36px 18px 0; align-items:center; }
  .entry-content .chi-faq__item > summary::after{ top:50%; margin-top:-6px !important; right:10px; }
  .entry-content .chi-faq__item[open] > summary::after{ top:50%; margin-top:-2px !important; }
  .entry-content .chi-q{ width:36px; height:36px; line-height:36px; font-size:18px; margin-top:0 !important; }
  .entry-content .chi-faq__item > p{ font-size:18px; padding-left:48px; }

  /* ---------- アクセス ---------- */
  .entry-content .chi-access .yoga-section__inner{ max-width:800px; }
  .entry-content .chi-acc__head, .entry-content .chi-acc__info{ position:relative; max-width:480px; margin-left:auto !important; margin-right:auto !important; text-align:left; padding:0; background:none; border:0; border-radius:0; }
  .entry-content .chi-acc__head, .entry-content .chi-acc__addr, .entry-content .chi-acc__off{ padding-left:64px; position:relative; }
  .entry-content .chi-acc__head::before, .entry-content .chi-acc__addr::before, .entry-content .chi-acc__off::before{ content:""; position:absolute; left:0; top:2px; width:44px; height:44px; border-radius:50%; background-color:var(--c-green-soft); background-repeat:no-repeat; background-position:center; background-size:24px; }
  .entry-content .chi-acc__head::before{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234f6b52' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='3' width='14' height='15' rx='3'/%3E%3Cpath d='M5 11h14M9 21l2-3M15 21l-2-3'/%3E%3Ccircle cx='9' cy='14.5' r='.6'/%3E%3Ccircle cx='15' cy='14.5' r='.6'/%3E%3C/svg%3E"); }
  .entry-content .chi-acc__addr::before{ background-color:var(--c-orange-soft); background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d2793f' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s7-6.2 7-11.5A7 7 0 0 0 5 9.5C5 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E"); }
  .entry-content .chi-acc__off::before{ background-color:var(--c-orange-soft); background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d2793f' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='5' width='16' height='15' rx='3'/%3E%3Cpath d='M8 3v4M16 3v4M4 10h16'/%3E%3C/svg%3E"); }
  .entry-content .chi-acc__head{ margin-bottom:22px !important; }
  .entry-content .chi-acc__info{ margin-bottom:22px !important; }
  .entry-content .chi-acc__addr{ margin:0 0 22px !important; }
  .entry-content .chi-acc__lead{ color:var(--c-green) !important; font-size:19px; }
  .entry-content .chi-acc__train, .entry-content .chi-acc__addr, .entry-content .chi-acc__off{ font-size:19px; color:var(--c-text) !important; margin-bottom:0 !important; }
  .entry-content .chi-access .wp-block-buttons{ margin-top:6px !important; }

  /* ---------- 移転前に：左=写真 / 右=文章 ---------- */
  .entry-content .chi-move .yoga-section__inner{ max-width:800px; }
  .entry-content .chi-move__h{ font-size:34px; margin:0 0 30px !important; line-height:1.5; }
  .entry-content .chi-move__em{ color:var(--c-orange-text) !important; }
  .entry-content .chi-move__cols{ display:grid; grid-template-columns:340px minmax(0,1fr); gap:48px; align-items:center; }
  .entry-content .chi-move__photo{ margin:0 !important; position:relative; transform:rotate(-3deg); }
  .entry-content .chi-move__photo img{ width:100%; height:auto; display:block; border:8px solid #fff; border-radius:6px; box-shadow:0 8px 24px rgba(28,37,49,.18); max-width:316px; }
  .entry-content .chi-move__photo::after{ content:"✦"; position:absolute; right:42px; top:-14px; color:var(--c-orange-text) !important; font-size:26px; line-height:1; }
  .entry-content .chi-move__lead{ padding-left:0; border-left:0; font-size:21px; font-weight:500; line-height:1.8; margin:0 0 14px !important; }
  .entry-content .chi-move__t{ font-size:18px; color:var(--c-sub) !important; text-align:left; margin:0 0 12px !important; }
  .entry-content .chi-move__quote{ font-size:36px; text-align:center; margin:16px 0 4px !important; }
  .entry-content .chi-move__body .has-text-align-center{ text-align:center; color:var(--c-text) !important; }
  .entry-content .chi-move .wp-block-buttons{ margin-top:16px !important; justify-content:center; }

  /* ---------- Instagram ---------- */
  .entry-content .chi-insta__handle{ font-size:22px; }
}

/* フッター（ロゴ中央・メニュー・法的リンク） */
@media (min-width:960px){
  .footer{ background:var(--c-white); border-top:1.5px solid var(--c-line); }
  .navi-footer a{ font-size:17px; color:var(--c-text) !important; }
}

/* ---------- PC 微調整（2回目） ---------- */
@media (min-width:960px){
  .entry-content p, .entry-content li, .entry-content summary{ letter-spacing:.03em; }
  .entry-content h1.chi-hero__title{ letter-spacing:.02em; }
  .entry-content .chi-classes .chi-classgroup{ padding-left:12px !important; }
  .entry-content .chi-steps{ align-items:stretch !important; }
  .entry-content .chi-step{ align-self:stretch; }
  .entry-content .chi-instructor .yoga-section__inner > *{ margin-left:0 !important; margin-right:0 !important; }
  .entry-content .chi-instructor .yoga-section__inner > .chi-toggle{ width:100%; box-sizing:border-box; }
  .entry-content .chi-instructor .yoga-section__title::after{ margin-left:0 !important; margin-right:auto !important; }
}

/* ---------- PC 微調整（3回目） ---------- */
@media (min-width:960px){
  .entry-content .chi-row::before{ aspect-ratio:auto !important; height:167px; box-sizing:border-box; }
  .entry-content .chi-row, .entry-content .chi-row--3{ align-self:stretch; box-sizing:border-box; }
  /* ヘッダーの体験予約ボタン（Cocoon のメニュー色指定に負けないよう !important） */
  #navi .menu-header .chi-nav-cta > a, .navi-in .chi-nav-cta > a{ background:var(--c-orange-btn) !important; color:#fff !important; border-radius:999px !important; padding:0 28px !important; margin-left:12px; height:48px; line-height:48px; align-self:center; }
  .logo-header img, .site-logo-image{ height:80px !important; width:auto !important; max-height:none !important; }
  /* ボタンの色（パターンCSSの .is-reservation=オレンジ より優先） */
  .entry-content .chi-cta .wp-block-button__link, .entry-content .chi-ctapc .wp-block-button.is-reservation .wp-block-button__link{ background:var(--c-green) !important; }
  .entry-content .chi-foot .wp-block-button__link, .entry-content .chi-ctapc .wp-block-button.is-line .wp-block-button__link, .entry-content .chi-trial .wp-block-button.is-line .wp-block-button__link{ background:var(--c-line-green) !important; }
  .entry-content .chi-move .wp-block-button__link{ width:auto !important; min-width:296px; white-space:nowrap; }
  .entry-content .chi-feat__d{ margin-bottom:0 !important; }
  .entry-content .chi-feat__t{ margin-bottom:2px !important; }
  /* お客様の声：カードの高さを揃える */
  .chi-voice .yss-carousel__track{ align-items:stretch; }
  .chi-voice .yoga-review{ height:100%; box-sizing:border-box; }
}
/* フッター：ロゴ中央・メニュー・コピーライトを縦に中央揃え */
.footer .footer-bottom-content{ display:flex; flex-direction:column; align-items:center; gap:14px; text-align:center; }
.footer .logo-footer{ order:1; margin:0; }
.footer .navi-footer{ order:2; }
.footer .navi-footer-in > .menu-footer{ display:flex; justify-content:center; flex-wrap:wrap; gap:6px 24px; }
.footer .source-org{ order:3; text-align:center; }

/* Cocoon が .wp-block-group に付ける下マージン(1.8em)を、PCのカード類では無効にする */
@media (min-width:960px){
  .entry-content .chi-sec .wp-block-group{ margin-bottom:0; }
}

/* 見出し：英字ラベル下の線は出さず、タイトルの下に短いオレンジの線（Figma） */
.entry-content .chi-sec .yoga-section__en::after{ display:none !important; }
.entry-content .chi-sec .yoga-section__title::after{ display:block !important; }

/* フッター：ロゴ中央 → メニュー → コピーライト（PC・スマホ共通で中央揃え） */
.footer .footer-bottom{ display:flex; flex-direction:column; align-items:center; gap:14px; text-align:center; }
.footer .footer-bottom-logo, .footer .footer-bottom-content{ float:none !important; width:auto !important; margin:0 !important; text-align:center; }
.footer .footer-bottom-content{ display:flex; flex-direction:column; align-items:center; gap:10px; }
.footer .logo-footer{ margin:0; }
.footer .navi-footer-in > .menu-footer{ display:flex; justify-content:center; flex-wrap:wrap; gap:6px 24px; margin:0; }
.footer .source-org{ text-align:center; }
.footer .footer-bottom-logo{ position:static !important; order:-1; }
.footer .footer-bottom-logo .logo-footer{ position:static !important; }

/* スマホ：講師は丸写真（140px）中央、移転前は傾けた写真（Figma v4） */
@media (max-width:959px){
  .chi-inst__top{ text-align:center; }
  .entry-content .chi-inst__photo img{ width:140px; height:140px; aspect-ratio:1; border-radius:50%; object-fit:cover; margin:0 auto; display:block; }
  .entry-content .chi-inst__name{ text-align:center; font-size:24px; }
  .entry-content .chi-inst__role{ text-align:center; color:var(--c-orange-text) !important; }
  .chi-move__em{ color:var(--c-orange-text); }
  .chi-move__photo{ transform:rotate(-3deg); }
  .chi-move__photo img{ border:6px solid #fff; border-radius:6px !important; box-shadow:0 6px 18px rgba(28,37,49,.18); }
}

/* お知らせ・ブログ（note の記事カード）：文字は14px以上、カード間の余白（Figma：日付16・タイトル18） */
.entry-content .chi-news .note-card-date, .entry-content .chi-blog .note-card-date{ font-size:14px !important; }
.entry-content .chi-news .note-card-title, .entry-content .chi-blog .note-card-title{ font-size:14px !important; line-height:1.45 !important; }
.chi-news .wp-block-buttons, .chi-blog .chi-more{ margin-top:28px !important; }
@media (min-width:960px){
  .entry-content .chi-news .note-card-date, .entry-content .chi-blog .note-card-date{ font-size:16px !important; }
  .entry-content .chi-news .note-card-title, .entry-content .chi-blog .note-card-title{ font-size:18px !important; }
}

/* =========================================================
   修正（2026-11-03 後半）
   ・スマホ：日本語見出し24px（テーマの h2 指定に負けていた）／CTA下の余白／スタジオ紹介をFigma v4に／写真は拡大表示
   ・PC：本文16px・日本語見出し30px・全体の文字を一段小さく／レッスン写真を3倍
   ========================================================= */
.entry-content .chi-sec .yoga-section__title{ font-size:24px !important; line-height:1.4; }

/* 写真の拡大表示（タップ／クリック） */
.chi-zoomable{ cursor:zoom-in; }
.entry-content .chi-gal__main{ position:relative; }
.entry-content .chi-gal__main::after{ content:""; position:absolute; right:12px; bottom:12px; width:40px; height:40px; border-radius:50%; background:#fffefb url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231c2531' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6'/%3E%3Cpath d='M15 15l5 5M10.5 8v5M8 10.5h5'/%3E%3C/svg%3E") center/22px no-repeat; box-shadow:0 2px 8px rgba(0,0,0,.2); pointer-events:none; }
.chi-lb{ position:fixed; inset:0; z-index:100000; display:flex; align-items:center; justify-content:center; background:rgba(20,26,32,.88); padding:16px; box-sizing:border-box; }
.chi-lb[hidden]{ display:none; }
.chi-lb img{ max-width:100%; max-height:100%; width:auto; height:auto; border-radius:8px; box-shadow:0 8px 32px rgba(0,0,0,.5); }
.chi-lb__close{ position:absolute; top:12px; right:12px; width:44px; height:44px; border:0; border-radius:50%; background:#fffefb; color:#1c2531; font-size:26px; line-height:1; cursor:pointer; }

@media (max-width:959px){
  /* CTA 帯の下の余白を広く */
  .chi-cta{ padding-top:12px !important; padding-bottom:40px !important; }
  /* スタジオ紹介（Figma v4）：写真3:2＋小さい2枚(間10px)、特徴は点線区切り */
  .entry-content .chi-about__lead{ font-size:19px; margin:0 0 20px !important; }
  .chi-gal{ gap:10px; margin-bottom:24px; }
  .chi-gal__main img{ aspect-ratio:335/216; border-radius:20px; }
  .chi-gal__thumbs{ gap:10px; }
  .chi-gal__thumb img{ aspect-ratio:165/100; border-radius:16px; }
  .chi-feats{ gap:0; }
  .chi-feat{ gap:12px; padding:16px 0; border-bottom:1.5px dashed var(--c-line); }
  .chi-feat:last-child{ border-bottom:0; }
  .chi-feat__body{ min-width:0; }
  .entry-content .chi-feat__n{ font-size:30px; min-width:44px; }
  .entry-content .chi-feat__t{ font-size:18px; font-weight:500; margin:0 0 2px !important; }
  .entry-content .chi-feat__d{ font-size:16px; color:var(--c-sub) !important; margin:0 !important; line-height:1.8; }
}

@media (min-width:960px){
  /* 本文16px・日本語見出し30px、そのほかの文字も一段小さく */
  .entry-content p, .entry-content li, .entry-content summary{ font-size:16px; }
  .entry-content .chi-sec .yoga-section__title{ font-size:30px !important; margin-bottom:28px !important; }
  .entry-content .chi-sec .yoga-section__en{ font-size:18px; }
  .entry-content .chi-sec .wp-block-button__link, .entry-content .chi-hero .wp-block-button__link{ font-size:18px; }
  .entry-content .chi-hero .chi-hero__eyebrow{ font-size:18px; }
  .entry-content .chi-trust__t{ font-size:18px; }
  .entry-content .chi-trust__s{ font-size:14px; }
  .entry-content .chi-row__title, .entry-content .chi-news .note-card-title, .entry-content .chi-blog .note-card-title{ font-size:16px !important; }
  .entry-content .chi-news .note-card-date, .entry-content .chi-blog .note-card-date{ font-size:14px !important; }
  .entry-content .chi-concept__lead{ font-size:22px; }
  .entry-content .chi-concept__quote, .entry-content .chi-concept__text{ font-size:16px; }
  .entry-content .chi-trial__label{ font-size:28px; }
  .entry-content .chi-trial__a{ font-size:44px; }
  .entry-content .chi-trial__b{ font-size:38px; }
  .entry-content .chi-trial__note{ font-size:16px; }
  .entry-content .chi-trial .wp-block-button__link, .entry-content .chi-ctapc .wp-block-button__link{ font-size:18px; }
  .entry-content .chi-step__t{ font-size:20px; }
  .entry-content .chi-step__d{ font-size:16px; }
  .entry-content .chi-classgroup{ font-size:18px; }
  .entry-content .chi-sum__name{ font-size:20px; }
  .entry-content .chi-sum__meta{ font-size:16px; }
  .entry-content .chi-tag{ font-size:14px; }
  .entry-content .chi-sum__price small{ font-size:14px; }
  .entry-content .chi-sum__price b{ font-size:22px; }
  .entry-content .chi-class__desc, .entry-content .chi-prow__l, .entry-content .chi-pbox__title{ font-size:16px; }
  .entry-content .chi-prow__p{ font-size:20px; }
  .entry-content .chi-pbox__note, .entry-content .chi-pbox__note{ font-size:14px; }
  .entry-content .chi-choice h3{ font-size:20px; }
  .entry-content .chi-inst__name{ font-size:26px; }
  .entry-content .chi-inst__role, .entry-content .chi-inst__p{ font-size:16px; }
  .entry-content .chi-toggle > summary{ font-size:18px; }
  .entry-content .chi-ctapc__lead{ font-size:20px; }
  .entry-content .chi-about__lead{ font-size:20px; }
  .entry-content .chi-feat__n{ font-size:28px; }
  .entry-content .chi-feat__t{ font-size:18px; }
  .entry-content .chi-feat__d{ font-size:16px; }
  .entry-content .chi-voice .yoga-review__attr{ font-size:18px; }
  .entry-content .chi-voice .yoga-review__text{ font-size:16px; }
  .entry-content .chi-faq__item > summary{ font-size:18px; }
  .entry-content .chi-faq__item > p{ font-size:16px; }
  .entry-content .chi-q{ width:32px; height:32px; line-height:32px; font-size:16px; }
  .entry-content .chi-acc__lead, .entry-content .chi-acc__train, .entry-content .chi-acc__addr, .entry-content .chi-acc__off{ font-size:16px; }
  .entry-content .chi-move__h{ font-size:26px; }
  .entry-content .chi-move__lead{ font-size:18px; }
  .entry-content .chi-move__t{ font-size:16px; }
  .entry-content .chi-move__quote{ font-size:28px; }
  .entry-content .chi-insta__handle{ font-size:18px; }

  /* レッスン紹介の写真：3倍（90×62 → 270×186）。プライベートも表示 */
  .entry-content .chi-class__photo{ left:16px; top:16px; width:270px; }
  .entry-content .chi-class__photo img{ width:270px; height:186px; border-radius:14px; }
  .entry-content .chi-class--private .chi-class__photo{ display:block; }
  .entry-content .chi-class--reset .chi-class__acc > summary, .entry-content .chi-class--aroma .chi-class__acc > summary, .entry-content .chi-class--flow .chi-class__acc > summary, .entry-content .chi-class--auto .chi-class__acc > summary, .entry-content .chi-class--private .chi-class__acc > summary{ padding-left:308px; min-height:218px; box-sizing:border-box; }
  .entry-content .chi-class__acc[open] > summary{ min-height:218px; }
}

/* スタジオ紹介：Cocoon が画像・グループに付ける余白を消す */
.entry-content .chi-gal figure, .entry-content .chi-gal__thumbs{ margin:0 !important; }
.entry-content .chi-feat, .entry-content .chi-feat__body{ margin-top:0 !important; margin-bottom:0 !important; }
.entry-content .chi-about__cols{ margin-bottom:0 !important; }
@media (min-width:960px){
  .entry-content .chi-class__acc > summary{ align-content:center; row-gap:4px; }
}

/* =========================================================
   PC：画面幅 960〜1439px でもFV・ヘッダーが崩れないよう、文字・余白を画面幅に合わせて縮める
   ========================================================= */
@media (min-width:960px){
  .entry-content .chi-news .note-card-title, .entry-content .chi-blog .note-card-title{ line-height:1.5 !important; }
  .entry-content .chi-hero__text{ padding:0 clamp(20px,4.4vw,64px); min-width:0; }
  .entry-content h1.chi-hero__title{ font-size:clamp(28px,3.2vw,46px) !important; }
  .entry-content .chi-hero .chi-hero__eyebrow{ font-size:clamp(14px,1.25vw,18px) !important; gap:10px; }
  .entry-content .chi-hero .chi-hero__eyebrow::before{ width:clamp(20px,2.5vw,36px); }
  .entry-content .chi-offer .chi-offer__price{ font-size:clamp(32px,3.6vw,52px) !important; }
  .entry-content .chi-offer__l1, .entry-content .chi-offer__l2{ font-size:clamp(14px,1.25vw,18px) !important; }
  .entry-content .chi-offer__note{ font-size:clamp(14px,1.3vw,19px) !important; }
  .entry-content .chi-offer__free{ font-size:clamp(20px,2.1vw,30px) !important; }
  .entry-content .chi-offer{ column-gap:clamp(12px,1.5vw,22px) !important; }
  .entry-content .chi-offer__side{ padding-left:clamp(12px,1.5vw,22px); }
  .entry-content .chi-hero__btns{ gap:clamp(8px,1.1vw,16px); }
  .entry-content .chi-hero .wp-block-button__link{ min-width:0; font-size:clamp(13px,1.2vw,17px); padding:14px clamp(8px,1.4vw,22px); white-space:nowrap; }
  .logo-header img, .site-logo-image{ height:clamp(52px,5.6vw,80px) !important; }
}
@media (min-width:960px) and (max-width:1279px){
  #navi .menu-header > li > a, .navi-in > ul > li > a{ font-size:15px; padding:0 8px; }
  #navi .menu-header .chi-nav-cta > a, .navi-in .chi-nav-cta > a{ padding:0 18px !important; margin-left:6px; height:44px; line-height:44px; }
  .header-container-in, .header-in{ padding-left:16px; padding-right:16px; box-sizing:border-box; }
}

/* スケジュール下のCTA：他のCTA帯と同じ配色（予約=緑、LINE=LINEグリーン） */
.entry-content .chi-schedule .yss-sch .yss-sch__btn.is-resv{ background:var(--c-green) !important; }
.entry-content .chi-schedule .yss-sch .yss-sch__btn.is-line{ background:var(--c-line-green) !important; }
.entry-content .chi-schedule .yss-sch .yss-sch__btn{ min-width:260px; }
@media (max-width:600px){ .entry-content .chi-schedule .yss-sch .yss-sch__btn{ min-width:0; } }
@media (min-width:960px){ .entry-content .chi-schedule .yss-sch .yss-sch__btn{ min-width:280px; font-size:18px; } }

/* PC ヘッダー：高さはロゴ（80px）＋上下の余白だけにそろえる（Cocoon の余白で大きくなりすぎないように） */
@media (min-width:960px){
  .header-container-in{ padding-top:12px !important; padding-bottom:12px !important; min-height:0 !important; align-items:center; }
  #header, .header, .header-in{ padding-top:0 !important; padding-bottom:0 !important; margin-top:0 !important; margin-bottom:0 !important; min-height:0 !important; height:auto !important; }
  .header-container-in .tagline:empty{ display:none; }
  .logo-header{ margin:0 !important; padding:0 !important; line-height:0; }
  .logo-header a{ display:block; }
  #navi, #navi-in{ margin:0 !important; padding-top:0 !important; padding-bottom:0 !important; }
}

/* 「もっと読む」「Instagramをフォロー」などの輪郭ボタンは小さめに */
.chi-sec .wp-block-button.is-more .wp-block-button__link, .chi-sec .wp-block-button.is-follow .wp-block-button__link{ padding:8px 24px; font-size:14px; }
@media (min-width:960px){
  .entry-content .chi-sec .wp-block-button.is-more .wp-block-button__link, .entry-content .chi-sec .wp-block-button.is-follow .wp-block-button__link{ padding:9px 30px; font-size:15px; }
}

/* 移転前に：PCは「写真＋前半の文章」を2カラム、「私にもできるかも」以降は下に1カラム中央寄せ */
.entry-content .chi-move__after{ text-align:center; }
.entry-content .chi-move__after p{ text-align:center !important; }
@media (min-width:960px){
  .entry-content .chi-move__cols{ align-items:center; margin-bottom:8px; }
  .entry-content .chi-move__after{ max-width:640px; margin:24px auto 0; }
  .entry-content .chi-move__after .chi-move__quote{ margin:0 0 6px !important; }
  .entry-content .chi-move__after .wp-block-buttons{ margin-top:20px; justify-content:center; }
}
.entry-content .chi-move__after .chi-move__quote{ color:var(--c-orange-text) !important; font-weight:500; }

/* =========================================================
   スマホ：ヘッダーとFVを Figma v4 に合わせる
   ヘッダー 高さ85・ロゴ 155×56・アイコン列は右端20px／FV 375×460：文字は左上・ボタンは左下・上から暗いグラデ・ドットは中央下
   ========================================================= */
@media (max-width:959px){
  body.yss-has-mheader{ padding-top:85px !important; }
  .yss-mheader{ min-height:85px; height:85px; padding:0 20px !important; box-sizing:border-box; }
  .yss-mheader__logo img{ max-height:56px !important; height:56px; width:auto !important; max-width:none; }
  .yss-mheader__actions{ gap:14px !important; align-items:center; }
  .yss-mheader__btn{ min-width:0 !important; padding:0 !important; gap:3px !important; }
  .yss-mheader__btn i{ height:32px !important; font-size:26px !important; }

  .entry-content .chi-hero{ height:460px; }
  .entry-content .chi-hero__panel .yss-fv{ --yss-dot-active:#4f6b52 !important; --yss-dot-color:#ffffff !important; --yss-dot-size:8px !important; height:460px; }
  .entry-content .chi-hero__panel .yss-fv__arrow{ display:none !important; }
  .entry-content .chi-hero__panel .yss-fv__dots{ bottom:22px !important; gap:8px; }
  .entry-content .chi-hero__panel .yss-fv__dot{ opacity:.85; }
  .entry-content .chi-hero__panel .yss-fv__dot.is-active{ opacity:1; }
  .entry-content .chi-hero__text{
    align-self:stretch; box-sizing:border-box; height:460px; z-index:3;
    display:flex; flex-direction:column; align-items:flex-start; text-align:left;
    padding:44px 24px 46px !important; margin:0 !important;
    background:linear-gradient(to bottom, rgba(13,20,15,.5), rgba(13,20,15,0) 300px);
  }
  .entry-content .chi-hero .chi-hero__eyebrow{ font-size:16px; font-weight:500; letter-spacing:.1em; line-height:1.5; margin:0 0 9px !important; text-align:left; }
  .entry-content h1.chi-hero__title{ font-size:36px; font-weight:500; letter-spacing:.06em; line-height:1.5; margin:0 !important; text-align:left; }
  .entry-content .chi-hero__btns{ margin:auto 0 0 !important; justify-content:flex-start; }
  .entry-content .chi-hero__btns .wp-block-button, .entry-content .chi-hero__btns .wp-block-button__link{ width:187px !important; box-sizing:border-box; }
  .entry-content .chi-hero__btns .wp-block-button__link{ display:flex; align-items:center; justify-content:center; height:48px; padding:0 !important; border-radius:26px; font-size:18px; font-weight:500; background:var(--c-green) !important; }
}

@media (max-width:959px){
  .yss-mheader__logo{ flex:0 0 auto !important; overflow:visible; }
  .entry-content .chi-hero__btns .wp-block-button__link{ min-height:48px !important; height:48px !important; line-height:1 !important; }
  .entry-content .chi-hero__btns .wp-block-button{ height:48px; margin:0 !important; }
  .entry-content .chi-hero--baked .chi-hero__eyebrow, .entry-content .chi-hero--baked h1.chi-hero__title{ opacity:0; visibility:hidden; }
  .entry-content .chi-hero__eyebrow, .entry-content h1.chi-hero__title{ transition:opacity .3s; }
}

/* 5枚目（スタジオ・写真に文字入り）は上の暗いグラデーションを出さない */
@media (max-width:959px){
  .entry-content .chi-hero__text{ transition:background-color .3s; }
  .entry-content .chi-hero--baked .chi-hero__text{ background:none !important; }
}

/* PC ヘッダー：ロゴ・メニュー・「体験予約」の縦の中心をそろえる（ロゴ枠がCocoonの固定高さ60pxのままで、ロゴが下にはみ出していた） */
@media (min-width:960px){
  .header-container-in{ display:flex !important; align-items:center !important; }
  #header, .header, .header-in{ height:auto !important; display:flex; align-items:center; }
  .logo-header, .logo-header.logo-image{ height:auto !important; min-height:0 !important; display:flex; align-items:center; line-height:0; }
  .logo-header a, .logo-header .site-name-text{ display:flex; align-items:center; height:auto; }
  #navi, #navi-in, .navi-in{ height:auto !important; display:flex; align-items:center; }
  .navi-in > ul{ align-items:center !important; height:auto !important; }
  .navi-in > ul > li{ display:flex; align-items:center; height:auto !important; }
  .navi-in > ul > li > a{ display:flex; align-items:center; height:auto !important; line-height:1.4 !important; padding-top:8px; padding-bottom:8px; }
  #navi .menu-header .chi-nav-cta > a, .navi-in .chi-nav-cta > a{ height:48px !important; line-height:48px !important; padding-top:0 !important; padding-bottom:0 !important; }
}
@media (min-width:960px){ .header-container-in{ padding-top:10px !important; padding-bottom:10px !important; box-sizing:border-box; } }

/* スマホヘッダーの縦幅を少し狭く（85 → 72px、ロゴ 56 → 48px） */
@media (max-width:959px){
  body.yss-has-mheader{ padding-top:72px !important; }
  .yss-mheader{ min-height:72px !important; height:72px !important; }
  .yss-mheader__logo img{ max-height:48px !important; height:48px !important; }
  .yss-mheader__btn i{ height:28px !important; font-size:23px !important; }
}

/* 「メニュー選びに迷われる方へ」の下：テキストとボタンの間を広く */
.entry-content .chi-foot__t{ margin-bottom:28px !important; }
.entry-content .chi-foot .wp-block-button__link{ background:var(--c-line-green) !important; }

/* =========================================================
   法定ページ（プライバシーポリシー／特定商取引法に基づく表記／利用規約）
   Figma「ご利用案内」風：白いカード・オレンジの見出し
   ========================================================= */
body:has(.chi-legal) .article-header .entry-title, body:has(.chi-legal) .article-header .eye-catch-wrap{ display:none !important; }
body:has(.chi-legal) .main{ background:transparent; }
.entry-content .chi-legal{ max-width:800px; margin:0 auto; padding:24px 0 16px; }
.entry-content .chi-legal__head{ text-align:center; margin-bottom:28px; }
.entry-content .chi-legal__en{ margin:0 0 4px !important; font-size:16px; font-weight:500; letter-spacing:.12em; color:var(--c-green) !important; }
.entry-content .chi-legal__title{ margin:0 0 12px !important; padding:0 0 14px; font-size:26px; font-weight:500; line-height:1.4; letter-spacing:.06em; color:var(--c-text) !important; background:none; border:0; position:relative; }
.entry-content .chi-legal__title::after{ content:""; display:block; width:36px; height:3px; margin:12px auto 0; background:var(--c-orange); border-radius:2px; }
.entry-content .chi-legal__title::before{ display:none; }
.entry-content .chi-legal__lead{ margin:0 !important; font-size:16px; color:var(--c-sub) !important; line-height:1.8; }
.entry-content .chi-legal__card{ margin:0 0 14px !important; padding:20px 22px 16px; background:var(--c-white); border:1.5px solid var(--c-orange-soft); border-radius:20px; }
.entry-content .chi-legal__card > *{ margin-block-start:0 !important; }
.entry-content .chi-legal h2{ margin:0 0 8px !important; padding:0; font-size:18px; font-weight:500; line-height:1.5; color:var(--c-orange-text) !important; background:none; border:0; }
.entry-content .chi-legal h2::before, .entry-content .chi-legal h2::after{ display:none; }
.entry-content .chi-legal__card p{ margin:0 0 8px !important; font-size:16px; line-height:1.9; }
.entry-content .chi-legal__card ul{ margin:0 0 6px !important; padding-left:1.3em; }
.entry-content .chi-legal__card li{ font-size:16px; line-height:1.9; margin:0 0 4px; }
.entry-content .chi-legal__card a, .entry-content .chi-legal__table a{ color:var(--c-green); text-decoration:underline; }
.entry-content .chi-legal__date{ margin:18px 0 0 !important; text-align:right; font-size:14px; color:var(--c-sub) !important; }
.entry-content .chi-legal__table{ margin:0 !important; }
.entry-content .chi-legal__table table{ width:100%; border-collapse:separate; border-spacing:0; border:1.5px solid var(--c-orange-soft); border-radius:20px; overflow:hidden; background:var(--c-white); }
.entry-content .chi-legal__table th, .entry-content .chi-legal__table td{ padding:14px 18px; border:0; border-bottom:1.5px solid var(--c-orange-soft); font-size:16px; line-height:1.9; text-align:left; vertical-align:top; background:transparent; }
.entry-content .chi-legal__table tr:last-child th, .entry-content .chi-legal__table tr:last-child td{ border-bottom:0; }
.entry-content .chi-legal__table th{ width:190px; font-weight:500; color:var(--c-orange-text) !important; background:#faf3ea; }
@media (max-width:959px){
  .entry-content .chi-legal{ padding:16px 0 8px; }
  .entry-content .chi-legal__title{ font-size:24px; }
  .entry-content .chi-legal__card{ padding:16px 16px 12px; border-radius:16px; }
  .entry-content .chi-legal__table table, .entry-content .chi-legal__table tbody, .entry-content .chi-legal__table tr, .entry-content .chi-legal__table th, .entry-content .chi-legal__table td{ display:block; width:100%; box-sizing:border-box; }
  .entry-content .chi-legal__table th{ border-bottom:0; padding:12px 16px 2px; background:#faf3ea; }
  .entry-content .chi-legal__table td{ padding:4px 16px 14px; }
}
@media (min-width:960px){
  .entry-content .chi-legal__title{ font-size:30px; }
  .entry-content .chi-legal h2{ font-size:20px; }
}
@media (min-width:960px){ .entry-content .chi-move__lead{ padding-left:0 !important; border-left:0 !important; } }

/* クラス＆料金の文字を大きく（PCのみ） */
@media (min-width:960px){
  .entry-content .chi-classgroup{ font-size:22px; }
  .entry-content .chi-sum__name{ font-size:26px; }
  .entry-content .chi-sum__meta{ font-size:19px; }
  .entry-content .chi-tag{ font-size:16px; padding:2px 14px; }
  .entry-content .chi-sum__price small{ font-size:16px; }
  .entry-content .chi-sum__price b{ font-size:30px; }
  .entry-content .chi-class__desc{ font-size:18px; }
  .entry-content .chi-pbox__title{ font-size:19px; }
  .entry-content .chi-prow__l{ font-size:19px; }
  .entry-content .chi-prow__p{ font-size:24px; }
  .entry-content .chi-pbox__note{ font-size:16px; }
  .entry-content .chi-plan__h{ font-size:18px; }
  .entry-content .chi-plan__t{ font-size:16px; }
  .entry-content .chi-plans > summary{ font-size:18px; }
  .entry-content .chi-join p{ font-size:20px; }
  .entry-content .chi-choice h3{ font-size:22px; }
  .entry-content .chi-choice__t, .entry-content .chi-foot__t{ font-size:18px; }
  .entry-content .chi-class__acc > summary{ column-gap:20px; }
}

/* スマホのスライドインメニュー：「体験予約」は項目ではなく、独立したオレンジのボタンにする */
.yss-mnav .yss-mnav__list li.chi-nav-cta{ border:0 !important; margin:28px 0 0 !important; padding:0 4px; }
.yss-mnav .yss-mnav__list li.chi-nav-cta > a{
  justify-content:center; gap:0; padding:18px 20px !important; border-radius:999px;
  background:var(--c-orange-btn) !important; color:#fff !important; font-size:18px !important; font-weight:500; letter-spacing:.08em; line-height:1.3;
  box-shadow:0 6px 16px rgba(210,121,63,.35); opacity:1 !important;
}
.yss-mnav .yss-mnav__list li.chi-nav-cta > a::before{ display:none !important; }
.yss-mnav .yss-mnav__list li.chi-nav-cta > a:hover, .yss-mnav .yss-mnav__list li.chi-nav-cta > a:focus{ color:#fff !important; filter:brightness(.95); }

/* スマホFV：ボタンとドットの現在位置をオレンジに（緑だと写真の緑・青に埋もれるため） */
@media (max-width:959px){
  .entry-content .chi-hero__btns .wp-block-button__link{ background:var(--c-orange-btn) !important; box-shadow:0 4px 14px rgba(0,0,0,.28); }
  .entry-content .chi-hero__panel .yss-fv{ --yss-dot-active:#d2793f !important; }
  .entry-content .chi-hero__panel .yss-fv__dot.is-active{ background:#d2793f !important; }
}

/* ================= ホバーをやわらかく（全ボタン共通） =================
   ・動きはゆっくり（0.5秒・減速イージング）／浮き上がりは1pxだけ／透明度は落とさず、明るさと影でそっと変える
   ・ヘッダーの「体験予約」は、ホバー時の下線（Cocoonのメニュー下線）を出さない */
:root{ --chi-ease:cubic-bezier(.25,.8,.3,1); }
.chi-sec .wp-block-button__link, .chi-hero .wp-block-button__link, .yss-fv__button,
.navi-in .chi-nav-cta > a, .yss-mnav .chi-nav-cta > a, .yss-sch .yss-sch__btn, .yss-nr-more__btn,
.yss-fbar__btn, .yss-mheader__btn, .yss-mnav .yss-mnav__list li > a, .yss-mnav__close, .yss-mheader__logo{
  transition:transform .5s var(--chi-ease), box-shadow .5s var(--chi-ease), background-color .5s var(--chi-ease), color .5s var(--chi-ease), border-color .5s var(--chi-ease), filter .5s var(--chi-ease), opacity .5s var(--chi-ease) !important;
}
.wp-block-button.is-reservation .wp-block-button__link:hover,
.wp-block-button.is-line .wp-block-button__link:hover,
.wp-block-button.is-contact .wp-block-button__link:hover,
.chi-sec .wp-block-button__link:hover, .chi-hero .wp-block-button__link:hover, .yss-fv__button:hover{
  opacity:1 !important; transform:translateY(-1px); filter:brightness(1.05); box-shadow:0 8px 20px rgba(0,0,0,.14);
}
.chi-hero .wp-block-button__link:hover{ box-shadow:0 8px 22px rgba(0,0,0,.30); }
.chi-sec .wp-block-button.is-more .wp-block-button__link:hover, .chi-sec .wp-block-button.is-follow .wp-block-button__link:hover{
  opacity:1 !important; transform:none; filter:none; box-shadow:none; background-color:rgba(79,107,82,.09);
}
.navi-in .chi-nav-cta > a::after, #navi .chi-nav-cta > a::after, .navi-in .chi-nav-cta > a::before{ display:none !important; content:none !important; }
.navi-in .chi-nav-cta > a:hover, #navi .chi-nav-cta > a:hover{ background:var(--c-orange-btn) !important; color:#fff !important; text-decoration:none !important; transform:translateY(-1px); filter:brightness(1.06); box-shadow:0 6px 16px rgba(210,121,63,.32); }
.navi-in > ul > li > a{ transition:color .45s var(--chi-ease) !important; }
.yss-nr-more__btn:hover{ background:rgba(79,107,82,.09) !important; color:var(--c-green) !important; }
.yss-fbar__btn:hover, .yss-fbar__btn:focus{ opacity:.94; }
.yss-mheader__btn:hover, .yss-mheader__btn:focus{ opacity:.82; }
.yss-mnav .yss-mnav__list li > a:hover{ opacity:.72; }
.yss-mnav__close:hover{ opacity:.75; }
.yss-mheader__logo:hover{ opacity:.85; }
.note-card, .yss-nr-card{ transition:transform .5s var(--chi-ease), box-shadow .5s var(--chi-ease) !important; }
.note-card:hover, .yss-nr-card:hover{ transform:translateY(-1px); box-shadow:0 8px 22px rgba(0,0,0,.08); }
.note-card .note-card-title, .note-card .note-card-date{ transition:color .5s var(--chi-ease); }
@media (prefers-reduced-motion: reduce){
  .chi-sec .wp-block-button__link, .chi-hero .wp-block-button__link, .note-card, .yss-nr-card{ transition:none !important; }
  .chi-sec .wp-block-button__link:hover, .chi-hero .wp-block-button__link:hover, .note-card:hover{ transform:none; }
}

/* ===== ユーザー補助（PageSpeed Insights の指摘への対応）===== */
/* 1) カルーセルのドット：見た目は同じ（8px）まま、タップ領域を24px以上にする */
.yss-carousel__dots{ gap:0; }
.yss-carousel__dots .yss-carousel__dot{ box-sizing:content-box; padding:8px; margin:0; background-clip:content-box; }
/* 2) ヘッダーのロゴ：横幅の指定（width属性）で縦横比が崩れないようにする（PCは上で高さを指定している） */
.logo-header img, .site-logo-image, .site-fixed-logo-image{ height:auto; }
/* 3) 「予約」ボタン（プラグインの is-reservation）の背景も、白文字で読めるオレンジにそろえる */
.entry-content .chi-sec .wp-block-button.is-reservation .wp-block-button__link, .entry-content .chi-hero .wp-block-button.is-reservation .wp-block-button__link{ background:var(--c-orange-btn); }
/* 4) スケジュールの選択中タブ（白文字）の背景も、読めるオレンジに */
.yss-sch .yss-sch__tab[aria-selected="true"]{ background:var(--c-orange-btn); border-color:var(--c-orange-btn); }
/* 5) スケジュール：補足の文字色を濃く／過ぎた日の薄さを弱める（コントラスト4.5:1以上） */
.yss-sch{ --sch-sub:#6f665c; --sch-red:#9f2f2f; }
.yss-sch .yss-sch__day.is-past{ opacity:.9; filter:saturate(.35); }
