@charset "utf-8";
/* Revisions supplied on 2026-10-08. */
:root{--beige:#f9f7ed}
 .studio__ttl{z-index:2}
.band{background:var(--gold)}
.band__sub,.band__main,.band .gold{color:var(--navy)}
.band::before,.band::after{display:none}
.cta1,.footcta{background:var(--beige)}
.btn--gold,.spcta__btn--gold{background:var(--gold);color:var(--navy)}
.price__sale,.price__strike,.price__tax,.tax-in{font-family:"Noto Sans JP",sans-serif;font-variant-numeric:tabular-nums}
.cta1 .price__sale,.cta1 .price__strike,.bcard .price__sale,.bcard .price__strike,.bcard .price__tax{font-family:"Noto Sans JP",sans-serif;font-variant-numeric:tabular-nums}
.cta1 .price__tax,.bcard .price__tax,.cta1 .tax-in,.cta1 .tax-yen,.bcard .tax-in,.bcard .tax-yen{color:var(--gold);-webkit-text-stroke:.1875rem var(--navy);paint-order:stroke fill}
.price__normal-l,.refund__txt{color:var(--navy)}
.fdiv3{clip-path:polygon(0 100%,100% 0,100% 100%)}
@media(min-width:769px){
 .btnrow{display:grid;grid-template-columns:repeat(2,21.875rem);row-gap:0}
 .btnrow__col{display:contents}
 .btnrow .ribbon{grid-column:1;grid-row:1;justify-self:center}
 .btnrow .btn--gold{grid-column:1;grid-row:2}
 .btnrow>.btn--navy{grid-column:2;grid-row:2;margin-top:0}
 .btnrow .note{grid-column:1;grid-row:3}
 .cta1 .price__tax,.bcard .price__tax{display:inline-flex;flex-direction:row;align-items:baseline;gap:.25rem;padding-bottom:.5rem;line-height:1.25}
 .cta1 .tax-in,.bcard .tax-in,.cta1 .tax-yen,.bcard .tax-yen{font-size:2rem;line-height:1.25}
 .sticky{width:10.5rem}
 .sticky__label{font-size:1.125rem;font-weight:900}
 .sticky__badge{font-size:.75rem}
 .prob__photo,.prob__inner::after{clip-path:polygon(0 0,100% 2.1875rem,100% 100%,0 calc(100% - 2.1875rem))}
 .prob--2 .prob__photo,.prob--2 .prob__inner::after{clip-path:polygon(0 0,100% 2.2916667rem,100% 100%,0 calc(100% - 2.2916667rem))}
 .prob--1 .prob__inner::after{aspect-ratio:653/1000}
 .prob--2 .prob__inner::after{aspect-ratio:367/562}
 .prob--3 .prob__inner::after{aspect-ratio:653/1000}
 .prob--2 .wedge{display:none}
 .prob--2::before{inset:0;background:var(--ice);clip-path:none}
 .prob--3::before{clip-path:none}
 .prob--2::after,.prob--3::after{content:"";position:absolute;left:0;top:-2.3125rem;width:100%;height:var(--dg);pointer-events:none;z-index:0;background:url('../images/design/problem-junction-12.svg') center/100% 100% no-repeat}
 .prob--3::after{background-image:url('../images/design/problem-junction-23.svg')}
}
@media(max-width:768px){
 .ccard{padding-bottom:1.5rem}
 .ccard::after{height:auto;bottom:0}
 .spcta__btn--gold,.spcta__btn--navy{box-shadow:none}
 .spcta::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 .125rem var(--navy);pointer-events:none;z-index:4}
 .spcta .spcta__btn--gold::after{content:"";position:absolute;right:0;top:.125rem;bottom:.125rem;width:.0625rem;background:var(--navy);pointer-events:none}
 .stickysp{box-shadow:0 -.1875rem .625rem rgba(0,0,0,.18)}
 .cta1 .btn,.btnrow--benefit .btn,.footcta .btn{justify-content:center;padding-left:0;padding-right:0;letter-spacing:.05em}
 /* Backgrounds follow each section's content height instead of a long,
    fixed-height shape stretching from CONCERNS to the FEATURES junction. */
 .concerns::before{height:100%;background:var(--navy)}
 .problem-region,.about{background:var(--navy)}
 .bridge{background:var(--white)}
 .btnrow--benefit{background:var(--beige)}
 .band{height:7.6875rem}
 .cta1,.cta1__inner,.cta1__body{height:45.25rem;min-height:45.25rem}
 .cta1__head{background:transparent;z-index:2}
 .cta1__img{top:4.25rem;left:-.75rem;width:14rem;height:14rem;object-fit:contain}
 .cta1 .price{top:5.125rem;left:9.125rem;width:13.6875rem;height:auto}
 .cta1 .price__label{position:static;text-align:center;font-size:1.25rem;line-height:1.875rem}
 .cta1 .price__row{display:grid;grid-template-columns:minmax(0,1fr) 2.625rem;gap:.5rem 0;margin:0}
 .cta1 .price__normal{position:static;grid-column:1/-1;display:flex;justify-content:center;align-items:center;gap:.375rem;height:3.125rem}
 .cta1 .price__normal-l{font-size:1rem;line-height:1.125rem}
 .cta1 .price__strike{position:relative;top:auto;font-size:2.75rem;line-height:1.1}
 .cta1 .price__yen{margin:0;align-self:center;padding:0;font-size:1rem}
 .cta1 .price__arrow{position:static;grid-column:1/-1;justify-self:center;margin:0}
 .cta1 .price__sale{position:static;justify-self:end;font-size:3.75rem;line-height:1.15;letter-spacing:-.055em;white-space:nowrap;font-feature-settings:normal;-webkit-text-stroke:.125rem var(--navy)}
 .cta1 .price__tax{position:static;width:auto;height:auto;display:flex;flex-direction:column-reverse;justify-content:center;align-items:center}
 .cta1 .price__tax,.cta1 .tax-in,.cta1 .tax-yen{-webkit-text-stroke:.125rem var(--navy)}
 .cta1 .tax-in,.cta1 .tax-yen{position:static;font-family:"Noto Sans JP",sans-serif;line-height:1.4;font-size:.75rem}
 .cta1 .tax-yen{font-size:1.5rem}
 .cta1 .refund{top:18.75rem}
 .cta1 .refund__big{top:5.125rem;left:calc(50% + .4375rem);width:max-content;transform:translateX(-50%)}
 .cta1 .btnrow{top:30.75rem}
 .cta1 .btn--navy{margin-top:1.5rem}
 .bcard .price__label{left:.875rem;width:8rem;text-align:center}
 .bcard .price__normal{gap:.25rem}
 .bcard .price__sale{left:8.75rem;top:1.1875rem;letter-spacing:-.04em}
 .bcard .price__tax{left:14.625rem;top:1.5rem;width:max-content;display:inline-flex;flex-direction:row;align-items:baseline;gap:.125rem;padding:0;line-height:1.75rem}
 .bcard .tax-in,.bcard .tax-yen{position:static;font-size:.875rem;line-height:1.75rem}
 .bcard .price__tax,.bcard .tax-in,.bcard .tax-yen{-webkit-text-stroke:.125rem var(--navy)}
 .bcard .refund__txt{left:2.5rem;font-size:.75rem;line-height:1.125rem;white-space:nowrap}
 .bcard .refund__big{left:9.375rem;top:0;font-size:1.5rem;letter-spacing:0}
 .prob--2 .labelbox{text-align:center}
 .prob--2{padding-bottom:2.25rem;min-height:0}
 .prob--3{margin-top:0}
 .coach{background:var(--navy)}
 .coach::before{background:var(--navy)}
 .feat--03::before{height:100%;background-size:100% 100%}
 .prob--2 .prob__photo{transform:scaleX(-1);object-fit:cover;object-position:center;width:22.1875rem;height:12.6875rem;clip-path:none}
 .faqitem__q{display:grid;grid-template-columns:1.875rem minmax(0,1fr) 1.875rem;gap:.5rem;padding:0 1.6875rem 0 .5625rem;min-height:2.875rem;height:auto}
 .faqitem__qtxt{min-width:0;white-space:normal;line-height:1.5;text-wrap:wrap}
 .footcta .wrap{width:21.875rem;margin:0 auto}
 .footcta .ribbon,.footcta .btn{width:100%}
}
