@charset "UTF-8";

.p-article-page{--shadow-article-photo:13px 17px 0 rgba(39,67,45,.14);--shadow-article-photo-mobile:8px 11px 0 rgba(39,67,45,.14);background:var(--color-bg-soft)}
.p-article-page .l-header{border-bottom:1px solid var(--color-border)}
.c-breadcrumb{padding-block:23px;font-size:12px;color:var(--color-text-mute)}
.c-breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;list-style:none;padding:0;margin:0}
.c-breadcrumb li{display:flex;align-items:center;gap:12px;min-height:44px}
.c-breadcrumb li+li::before{content:'›';color:var(--color-primary-ink)}
.c-breadcrumb a{text-decoration:none}
.c-breadcrumb a:hover{text-decoration:underline}
.p-article-heading{padding:12px 0 30px}
.c-article-label{display:inline-flex;gap:14px;align-items:center;font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--color-primary-ink);margin-bottom:20px}
.c-article-label span{color:var(--color-text-mute);font-weight:500}
.p-article-heading h1{max-width:1040px;font-size:clamp(26px,2.65vw,38px);line-height:1.65;font-weight:700;letter-spacing:.025em;overflow-wrap:anywhere}
.p-article-meta{display:flex;align-items:center;flex-wrap:wrap;gap:14px 36px;margin-top:25px;font-size:12px;color:var(--color-text-mute)}
.p-article-meta p{display:flex;align-items:center;gap:8px}
.p-article-meta strong{font-size:14px;color:var(--color-primary-deep)}
.c-author-dot{flex-shrink:0;display:inline-grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#e4ebd5;color:var(--color-primary-deep);font-size:15px;font-weight:700}
.p-article-pr{font-size:11px;color:var(--color-text-mute);margin-top:18px}
.p-article-cover{margin-top:4px;margin-bottom:55px}
.p-article-cover__inner{position:relative;isolation:isolate;overflow:hidden;min-height:470px;background:#e9efdf;border-radius:0;display:grid;grid-template-columns:1fr 1.15fr}
.p-article-cover__copy{position:relative;z-index:2;padding:42px 0 48px 46px}
.p-article-cover__logo{display:inline-flex;background:var(--color-brand-greenspoon);border-radius:6px;padding:12px 17px;max-width:220px;margin-bottom:24px}
.p-article-cover__logo img{width:163px;height:22px;object-fit:contain}
.p-article-cover__title{font-size:clamp(34px,3.6vw,49px);line-height:1.43;font-weight:900;letter-spacing:.015em;color:var(--color-primary-deep)}
.p-article-cover__lead{margin-top:20px;font-size:14px;line-height:1.9;color:var(--color-primary-deep)}
.p-article-cover__tag{display:inline-block;font-size:11px;font-weight:700;margin-top:20px;background:var(--color-bg-hero);padding:5px 11px;border-radius:5px;color:var(--color-primary-deep)}
.p-article-cover__photos{position:relative;min-width:0}
.p-article-cover__main,.p-article-cover__small{padding:6px;border:0;background:var(--color-bg-soft);border-radius:2px;overflow:hidden;box-shadow:var(--shadow-article-photo)}
.p-article-cover__image{display:block;width:100%;height:auto;border:0;border-radius:0;box-shadow:none}
.p-article-cover__main{position:absolute;width:530px;max-width:none;right:-50px;top:22px;transform:rotate(6deg)}
.p-article-cover__small{position:absolute;width:270px;max-width:none;left:-30px;bottom:30px;transform:rotate(-9deg)}
.p-article-cover__seal{position:absolute;z-index:3;right:35px;bottom:24px;width:112px;height:112px;display:grid;place-items:center;background:var(--color-bg-hero);border:1px dashed var(--color-primary-deep);outline:7px solid var(--color-bg-hero);border-radius:50%;font-weight:700;font-size:16px;line-height:1.7;text-align:center;transform:rotate(9deg);color:var(--color-primary-deep)}
.p-article-cover figcaption{margin-top:11px;text-align:right;font-size:11px;color:var(--color-text-mute)}
.l-article-grid{display:grid;grid-template-columns:minmax(0,760px) minmax(0,260px);gap:70px;align-items:start}
.p-article-body{min-width:0;background:var(--color-bg);padding:34px 38px 38px;border-radius:24px;font-size:16px;line-height:2.05;overflow-wrap:anywhere}
.p-article-body p{margin-bottom:1.45em}
.p-article-body ul{list-style:disc;padding-left:1.4em;margin:18px 0 25px}
.p-article-body li{padding-left:.2em;margin:.6em 0}
.p-article-body h2{font-size:27px;line-height:1.7;letter-spacing:.025em;font-weight:700;overflow-wrap:anywhere}
.p-article-body h3{font-size:22px;line-height:1.7;letter-spacing:.015em;overflow-wrap:anywhere}
.p-article-body .c-article-kicker{font-size:12px;line-height:1.7;margin-bottom:12px;font-weight:700;letter-spacing:.1em;color:var(--color-primary-ink)}
.p-article-body .c-article-note,.c-article-note{font-size:12px;line-height:1.9;color:var(--color-text-mute)}
.p-article-body .c-button{font-size:15px;line-height:1.6}
.p-article-summary{background:var(--color-bg-hero);border-radius:18px;padding:30px;margin-block:33px 30px}
.p-article-summary h2{font-size:26px}
.p-article-summary ul{font-size:14px;margin-top:18px;margin-bottom:23px}
.p-article-summary li::marker{color:var(--color-primary-ink)}
.p-article-summary .c-button{background:var(--color-primary-deep);font-size:14px;min-height:50px}
.p-article-summary .c-button:hover{background:var(--color-primary-ink)}
.p-article-toc{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);margin-block:32px;padding-block:7px}
.p-article-toc summary{display:flex;justify-content:space-between;align-items:center;gap:10px;list-style:none;min-height:52px;cursor:pointer;font-size:15px;font-weight:700;color:var(--color-primary-deep)}
.p-article-toc summary::-webkit-details-marker{display:none}
.p-article-toc[open] summary span{transform:rotate(45deg)}
.p-article-toc ol,.p-article-aside ol{padding:0;margin:12px 0 22px;list-style:none}
.p-article-toc li{padding:0;margin:0}
.p-article-toc li a{display:flex;align-items:center;gap:12px;min-height:44px;font-size:14px;text-decoration:none;color:var(--color-primary-deep)}
.p-article-toc a span{color:var(--color-primary-ink);font-size:11px}
.p-article-author{padding:23px;border:1px solid var(--color-border);border-radius:14px;margin-block:30px 45px;background:var(--color-bg-soft)}
.p-article-author__heading{display:flex;gap:12px;align-items:center;margin-bottom:17px}
.p-article-author .c-author-dot{width:43px;height:43px;font-size:20px}
.p-article-author__heading p{font-size:11px;line-height:1.7;margin:0}
.p-article-author__heading strong{color:var(--color-primary-deep);font-size:18px}
.p-article-author>p{font-size:14px;line-height:1.95}
.p-article-author details{font-size:13px;margin-top:8px}
.p-article-author summary{display:list-item;cursor:pointer;min-height:44px;align-content:center;color:var(--color-primary-ink)}
.p-article-author details ul{font-size:13px;margin-top:0}
.p-article-author p:last-child{margin:10px 0 0}
.p-article-section{margin-top:64px;scroll-margin-top:30px}
.p-article-section>h2{padding-bottom:23px;margin-bottom:25px;border-bottom:3px solid #dce6cc}
.p-trial-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-block:25px}
.c-trial-group{background:var(--color-bg-soft);border:1px solid #eee7da;border-radius:12px;padding:17px}
.c-trial-group:last-child{grid-column:1/-1}
.c-trial-group h3{font-size:15px;margin-bottom:10px}
.c-trial-group p{font-size:13px;line-height:1.9;margin:0}
.p-dish{margin-top:40px;scroll-margin-top:30px}
.p-dish+.p-dish{border-top:1px solid var(--color-border);padding-top:34px;margin-top:48px}
.p-dish__index{display:flex;align-items:center;gap:13px;font-size:12px;font-weight:500;color:var(--color-primary-ink);margin-bottom:10px}
.c-dish-number{font-size:35px;font-weight:700;color:var(--color-primary-deep);line-height:1.2}
.p-dish h3{margin-bottom:22px}
.p-article-photo{margin:25px 0}
.p-article-photo img{width:100%;height:auto;border-radius:14px}
.p-article-photo figcaption{font-size:11px;color:var(--color-text-mute);line-height:1.8;margin-top:9px}
.p-article-price{margin:25px 0 18px;border-top:2px solid var(--color-primary-deep)}
.p-article-price table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.95}
.p-article-price caption{text-align:left;padding:15px 14px;font-size:12px;background:var(--color-primary-soft)}
.p-article-price th,.p-article-price td{padding:17px 14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--color-border)}
.p-article-price th{width:110px;font-weight:500;color:var(--color-primary-deep);background:var(--color-bg-soft)}
.p-article-price td strong{font-weight:700;color:var(--color-primary-deep)}
.p-article-price tr:first-child strong{font-size:21px;color:var(--color-cta)}
.p-article-body .p-article-sources{font-size:12px;line-height:2;color:var(--color-text-mute)}
.p-article-sources a{color:var(--color-primary-ink);display:inline-block;min-height:28px}
.p-article-faq details{border-bottom:1px solid var(--color-border);padding:10px 0}.p-article-faq [data-faq-item]{border-bottom:1px solid var(--color-border);padding:10px 0}
.p-article-faq summary{position:relative;list-style:none;min-height:48px;display:flex;align-items:center;padding:10px 28px;font-size:15px;line-height:1.8;font-weight:700;color:var(--color-primary-deep);cursor:pointer}.p-article-faq .c-faq-question{position:relative;list-style:none;min-height:48px;display:flex;align-items:center;padding:10px 28px;font-size:15px;line-height:1.8;font-weight:700;color:var(--color-primary-deep);cursor:pointer}
.p-article-faq summary::-webkit-details-marker{display:none}.p-article-faq .c-faq-question::-webkit-[data-faq-item]-marker{display:none}
.p-article-faq summary::before{position:absolute;left:0;content:'Q';color:var(--color-primary-ink)}.p-article-faq .c-faq-question::before{position:absolute;left:0;content:'Q';color:var(--color-primary-ink)}
.p-article-faq summary::after{position:absolute;right:0;content:'＋';font-weight:400}.p-article-faq .c-faq-question::after{position:absolute;right:0;content:'＋';font-weight:400}
.p-article-faq details[open] summary::after{content:'−'}.p-article-faq [data-faq-item] .c-faq-question::after{content:'−'}
.p-article-faq details p{padding:12px 28px 5px;font-size:14px;margin:0}.p-article-faq [data-faq-item] p{padding:12px 28px 5px;font-size:14px;margin:0}
.p-article-faq .p-article-sources{margin-top:20px}
.p-article-cta{background:var(--color-bg-hero);border-radius:18px;padding:34px 25px;text-align:center;margin-top:40px}
.p-article-cta h2{font-size:26px;margin-bottom:15px}
.p-article-cta p{font-size:14px;line-height:1.95;margin-bottom:22px}
.p-article-cta .c-button{width:100%;max-width:500px;gap:14px}
.p-article-cta__official{display:flex;align-items:center;justify-content:center;gap:12px;min-height:44px;font-size:12px;color:var(--color-primary-ink);margin-top:9px}
.p-article-actions{display:flex;align-items:center;flex-wrap:wrap;gap:7px 15px;margin-top:35px;font-size:12px}
.c-article-copy{display:flex;align-items:center;gap:15px;border:1px solid var(--color-border);border-radius:7px;color:var(--color-primary-deep);background:#fff;min-height:44px;padding:9px 14px;font-size:12px}
.p-article-actions #copy-status{margin:0;font-size:11px;color:var(--color-primary-ink)}
.p-article-actions>a{margin-left:auto;display:flex;align-items:center;min-height:44px;color:var(--color-primary-ink)}
.p-article-aside{align-self:stretch;min-width:0}
.p-article-aside__sticky{position:sticky;top:25px;max-height:none;overflow:visible;padding:3px 3px 15px}
.p-article-aside nav>p{font-size:15px;font-weight:700;color:var(--color-primary-deep);padding-bottom:16px;border-bottom:1px solid var(--color-border)}
.p-article-aside ol{margin:15px 0 25px}
.p-article-aside li a{display:flex;align-items:center;gap:9px;min-height:46px;padding:8px 10px;font-size:12px;font-weight:500;line-height:1.7;text-decoration:none;color:var(--color-text-mute);border-radius:6px}
.p-article-aside li a span{color:var(--color-primary-ink);font-size:10px}
.p-article-aside li a[aria-current="location"]{background:#e9efdf;color:var(--color-primary-deep);font-weight:700}
.p-article-aside li a:hover,.p-article-toc li a:hover{text-decoration:underline}
.p-article-aside__brand{display:flex;flex-direction:column;align-items:center;background:var(--color-brand-greenspoon);border-radius:12px;padding:24px 16px 15px;color:white;text-decoration:none;gap:20px;margin-bottom:15px}
.p-article-aside__brand img{max-width:170px;height:27px;object-fit:contain}
.p-article-aside__brand span{display:block;width:100%;padding:9px 8px;border-radius:6px;background:#fff;color:var(--color-primary-deep);font-size:12px;font-weight:700;line-height:1.8;text-align:center}
.p-article-related{padding-block:85px 70px}
.p-article-related h2{font-size:32px}
.p-article-related__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.c-article-related{text-decoration:none;display:block;min-width:0}
.c-article-related>img,.c-article-related__art{aspect-ratio:1.55;width:100%;object-fit:cover;border-radius:17px;margin-bottom:18px}
.c-article-related>span{font-size:11px;font-weight:700;color:var(--color-primary-ink)}
.c-article-related h3{font-size:18px;line-height:1.8;margin-top:8px}
.c-article-related p{font-size:13px;color:var(--color-text-mute);margin-top:8px}
.c-article-related__art{background:#e9efdf;display:flex;align-items:center;justify-content:space-evenly;gap:14px;padding:20px;color:var(--color-primary-deep)}
.c-article-related__art span{font-size:22px;font-weight:700;line-height:1.7}
.c-article-related__art svg{width:105px;max-width:40%}
.p-article-page .l-footer{border-top:1px solid var(--color-border)}

@media(max-width:1100px){
  .l-article-grid{grid-template-columns:minmax(0,1fr) 220px;gap:35px}
  .p-article-body{padding:28px}
  .p-article-cover__copy{padding-left:32px}
  .p-article-cover__main{width:440px;right:-75px;top:35px}
  .p-article-cover__small{width:220px;left:-10px;bottom:45px}
  .p-article-cover__seal{width:92px;height:92px;font-size:13px;right:25px;bottom:37px}
}
@media(max-width:900px){
  .l-article-grid{grid-template-columns:minmax(0,1fr);max-width:760px}
  .p-article-aside{display:none}
  .p-article-related__grid{gap:18px}
  .c-article-related__art{flex-direction:column;gap:0}
  .c-article-related__art span{font-size:20px}
  .c-article-related__art svg{max-height:70px}
}
@media(max-width:760px){
  .c-breadcrumb{font-size:10px;padding-block:10px}
  .c-breadcrumb ol{gap:3px 9px}
  .c-breadcrumb li{gap:9px}
  .p-article-heading{padding-top:8px;padding-bottom:23px}
  .c-article-label{font-size:10px;gap:9px;margin-bottom:13px}
  .p-article-heading h1{font-size:25px;line-height:1.7;letter-spacing:.01em}
  .p-article-meta{gap:12px;margin-top:20px;font-size:10px}
  .p-article-meta p{gap:6px}
  .p-article-meta strong{font-size:12px}
  .p-article-pr{font-size:10px;line-height:1.9;margin-top:14px}
  .p-article-cover{margin-bottom:30px}
  .p-article-cover__inner{grid-template-columns:1fr;min-height:620px}
  .p-article-cover__copy{padding:28px 24px 0}
  .p-article-cover__logo{margin-bottom:16px;padding:10px 13px}
  .p-article-cover__logo img{width:134px;height:20px}
  .p-article-cover__title{font-size:30px;line-height:1.45}
  .p-article-cover__lead{font-size:12px;margin-top:14px;line-height:1.85}
  .p-article-cover__tag{font-size:10px;margin-top:14px}
  .p-article-cover__photos{height:290px;margin-top:14px}
  .p-article-cover__main,.p-article-cover__small{padding:4px;box-shadow:var(--shadow-article-photo-mobile)}
  .p-article-cover__main{width:285px;right:-45px;top:0;transform:rotate(5deg)}
  .p-article-cover__small{width:175px;left:-10px;bottom:15px;transform:rotate(-9deg)}
  .p-article-cover__seal{width:72px;height:72px;right:23px;bottom:22px;font-size:10px;outline-width:4px}
  .p-article-cover figcaption{font-size:9px}
  .p-article-body{border-radius:18px;padding:25px 20px 27px;line-height:2;font-size:16px}
  .p-article-body h2{font-size:23px;line-height:1.65}
  .p-article-body h3{font-size:21px;line-height:1.65}
  .p-article-summary{margin-block:27px;padding:24px 19px;border-radius:12px}
  .p-article-summary h2{font-size:21px;line-height:1.8}
  .p-article-summary ul{font-size:13px;padding-left:1.2em;margin-bottom:20px}
  .p-article-summary .c-button{font-size:12px;padding:11px 12px;gap:8px;width:100%}
  .p-article-author{padding:19px 16px;margin-bottom:35px}
  .p-article-author__heading{gap:10px}
  .p-article-author__heading p{font-size:10px}
  .p-article-author>p{font-size:13px}
  .p-article-author summary{font-size:12px}
  .p-article-section{margin-top:48px}
  .p-article-section>h2{padding-bottom:20px;margin-bottom:22px}
  .p-trial-grid{grid-template-columns:1fr;gap:10px;margin-block:21px}
  .c-trial-group{padding:16px}
  .c-trial-group h3{font-size:16px}
  .p-dish{margin-top:32px}
  .p-dish+.p-dish{margin-top:38px;padding-top:29px}
  .c-dish-number{font-size:31px}
  .p-dish h3{margin-bottom:18px}
  .p-article-photo{margin:21px -3px}
  .p-article-photo img{border-radius:10px}
  .p-article-photo figcaption{font-size:10px}
  .p-article-price th,.p-article-price td{padding:14px 10px}
  .p-article-price table{font-size:13px;line-height:1.95}
  .p-article-price th{width:72px}
  .p-article-price caption{font-size:11px;padding:13px 10px}
  .p-article-price tr:first-child strong{font-size:18px}
  .p-article-body .c-article-note{font-size:11px}
  .p-article-faq summary{font-size:14px;padding-right:20px;padding-left:24px}  .p-article-faq .c-faq-question{font-size:14px;padding-right:20px;padding-left:24px}
  .p-article-faq details p{padding-left:24px;padding-right:10px;font-size:13px}  .p-article-faq [data-faq-item] p{padding-left:24px;padding-right:10px;font-size:13px}
  .p-article-cta{padding:26px 18px;border-radius:12px}
  .p-article-cta h2{font-size:22px}
  .p-article-cta .c-article-kicker{font-size:10px}
  .p-article-cta p{font-size:13px}
  .p-article-cta .c-button{font-size:13px;padding-inline:13px;gap:9px}
  .p-article-cta__official{font-size:11px}
  .p-article-actions{gap:7px 9px}
  .p-article-related{padding-block:55px 45px}
  .p-article-related h2{font-size:27px}
  .p-article-related__grid{grid-template-columns:1fr;gap:30px}
  .c-article-related h3{font-size:18px}
  .c-article-related__art{flex-direction:row;min-height:200px}
  .c-article-related__art span{font-size:25px}
}
@media(prefers-reduced-motion:reduce){.p-article-toc summary span{transition:none}}
.p-article-aside__sticky.is-tall{position:static}

/* 現在料金の比較は、スマホでは表の中だけ横にスクロールする。 */
.p-current-prices .p-article-price{overflow-x:auto}
.p-current-prices table{min-width:680px}
.p-current-prices thead th{width:auto}
.p-current-prices tbody th{min-width:120px}
