﻿:root{--paper:#fcfbf9;--tint:#f0eeea;--text:#252622;--muted:#73746f;--line:#dcdcd5;--accent:#7c8072;--width:1200px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:135px}body{margin:0;background:var(--paper);color:var(--text);font-family:"Yu Gothic",Meiryo,sans-serif;font-size:14px;line-height:2;letter-spacing:.06em}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:auto}figure,p,h1,h2,h3,h4,ol,ul{margin:0}h1,h2,h3,h4{font-weight:400}h1,h2{font-family:Georgia,"Yu Mincho",serif}h3{font-size:19px;line-height:1.8}a:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.container{width:min(var(--width),calc(100% - 80px));margin-inline:auto}.section{padding-block:115px}.tinted{background:var(--tint)}.section-heading{margin-bottom:60px;text-align:center}.decoration{font:40px/1.4 Georgia,serif;letter-spacing:.04em;color:#9a9d92;margin-bottom:23px}.section-heading h2{font-size:clamp(26px,2.5vw,36px);line-height:1.9;letter-spacing:.1em}.section-description{max-width:700px;margin:25px auto 0;line-height:2.5;font-size:14px}.eyebrow{font:10px/2 Arial,sans-serif;letter-spacing:.24em}.media img{aspect-ratio:4/3;object-fit:cover;background:#d2d2d2}.floating-header{position:fixed;top:9px;left:50%;transform:translateX(-50%);width:min(1200px,calc(100% - 48px));min-height:88px;padding:14px 22px;display:flex;justify-content:space-between;align-items:center;gap:25px;background:#fcfbf9f5;border:1px solid #ffffffb3;box-shadow:0 5px 25px #00000013;z-index:30}.header-logo{flex:0 0 160px}.header-logo img{width:160px;aspect-ratio:360/112;object-fit:contain}.floating-header nav{display:flex;align-items:center;gap:16px}.header-button{display:flex;align-items:center;justify-content:center;min-height:46px;padding:10px 22px;border:1px solid var(--text);font-size:12px;line-height:1.6;white-space:nowrap;transition:background .2s,color .2s}.header-button.catalog{background:var(--text);color:#fff}.header-button:hover{background:var(--accent);border-color:var(--accent);color:white}.header-phone{font:19px/1.5 Georgia,serif;letter-spacing:.02em;display:flex;align-items:center;gap:8px;white-space:nowrap;margin-left:8px}.phone-symbol{font:22px/1 Arial,sans-serif}.hero{color:#fff;width:min(1200px,100%);margin-inline:auto;position:relative;min-height:720px;min-height:min(820px,max(680px,90svh));display:flex;align-items:center;isolation:isolate;background:#d2d2d2;overflow:hidden;padding:145px 0 100px}.hero-image{position:absolute;inset:0;height:100%;object-fit:cover;z-index:-2}.hero:after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.45);z-index:-1}.hero-copy h1{font-size:clamp(34px,4vw,58px);line-height:1.9;letter-spacing:.12em;margin:20px 0 25px}.hero-sub{font-size:16px;line-height:2.3;max-width:750px}.scroll-cue{position:absolute;bottom:35px;right:4%;font:9px/1 Arial,sans-serif;letter-spacing:.15em;display:flex;gap:20px;align-items:center}.scroll-cue span{font-size:24px}.fair-banner{margin-block:40px 0;max-width:921px}.fair-banner img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain}.fair-banner>p{text-align:right;font-size:10px;margin-top:14px;color:var(--muted)}.fair-banner>p a{text-decoration:underline;text-underline-offset:4px}.concept-intro{max-width:780px;margin:0 auto 60px;text-align:center}.concept-intro h2{font-size:clamp(29px,3vw,42px);line-height:1.9;margin-bottom:28px}.concept-intro>p:last-child{font-size:15px;line-height:2.7}.concept-image img{aspect-ratio:3/2}.feature-row{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center;margin-bottom:110px}.feature-row:last-child{margin-bottom:0}.feature-row .section-heading{text-align:left;margin:0}.feature-row .section-heading h2{font-size:30px}.feature-row .section-description{font-size:14px;margin:28px 0 0}.feature-row.reverse>.feature-copy{grid-column:2;grid-row:1}.feature-row.reverse>.media{grid-column:1;grid-row:1}.works-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:55px 40px}.works-grid h3{display:flex;align-items:baseline;gap:18px;font-size:17px;margin-top:20px}.card-index{flex:none;font:10px/2 Arial,sans-serif;color:var(--muted)}.social-area{margin-top:100px;text-align:center}.social-area h3{font-size:20px;margin-bottom:30px}.social-button{display:flex;align-items:center;justify-content:center;gap:30px;min-height:50px;border:1px solid #aaa;background:transparent;padding:12px 25px;font:15px/2 Arial,sans-serif;letter-spacing:.05em;transition:background .2s}.social-button:hover{background:var(--tint)}.social-button.instagram{width:min(600px,100%);margin-inline:auto;min-height:82px;font-size:25px;border-color:var(--text)}.social-arrow{font-size:10px;line-height:1;flex:none}.social-sub{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:600px;margin:18px auto 0}.model-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px 25px}.model-grid .media img{aspect-ratio:640/440}.model-grid h3{font-size:15px;margin-top:18px}.model-grid article>p{font-size:11px;margin-top:10px}.address-link{text-decoration:underline;text-underline-offset:4px}.fair-section>.container>.section-heading{margin-bottom:25px}.fair-section .section-heading>.decoration{font-family:"Yu Mincho",serif;font-size:27px}.fair-section .section-heading h2{font-size:42px}.fair-period{display:flex;justify-content:center;align-items:center;gap:25px;margin-bottom:65px}.fair-period>span{font-size:12px;border:1px solid var(--line);padding:2px 12px}.fair-period>strong{font-size:25px;font-family:Georgia,"Yu Mincho",serif;font-weight:400;letter-spacing:.03em}.fair-period small{font-size:16px;margin-left:4px}.fair-block{border:1px solid var(--line);padding:55px 45px 45px;margin-bottom:60px;background:var(--paper)}.benefit-label{font-size:14px;letter-spacing:.18em;text-align:center;margin-bottom:22px;color:var(--muted)}.fair-block>h3{text-align:center;font-family:"Yu Mincho",serif;font-size:26px;line-height:2;margin-bottom:40px}.reservation-benefit>h3>span{display:inline-block;margin-right:10px}.fair-block h3 strong{font-family:Georgia,serif;font-weight:400;font-size:58px;letter-spacing:0;line-height:1.3;margin-inline:6px}.reservation-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.reservation-grid>article{background:var(--tint);padding:30px;display:flex;flex-direction:column}.benefit-step{font:11px/2 Arial,sans-serif;color:var(--muted);margin-bottom:15px}.reservation-grid h4{font-family:"Yu Mincho",serif;font-size:21px;line-height:1.9;margin-bottom:17px}.reservation-grid article>p:not(.benefit-step){font-size:12px;line-height:2.3;margin-bottom:25px}.gift-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:auto}.gift-options>p{background:var(--paper);text-align:center;font-size:11px;padding:18px 10px;line-height:1.8}.gift-options strong{display:block;font:35px/1.5 Georgia,serif;letter-spacing:0;margin-top:8px}.gift-options strong>span{font:13px/1.5 "Yu Gothic",sans-serif;margin-left:3px}.gift-options.single{grid-template-columns:1fr}.contract-benefit{background:var(--tint)}.course-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.course-grid article{background:var(--paper);padding:30px}.course-number{font-size:10px;color:var(--muted);letter-spacing:.15em;margin-bottom:12px}.course-grid h4{font-family:"Yu Mincho",serif;font-size:21px;margin-bottom:18px;line-height:1.9}.course-grid article>p:last-child{font-size:12px;line-height:2.4}.mobile-break{display:none}.conditions{padding-top:10px;max-width:1000px;margin-inline:auto}.conditions>h3{font-family:"Yu Mincho",serif;font-size:23px;margin-bottom:35px}.condition-block{border-top:1px solid var(--line);padding:25px 0 30px}.condition-block h4{font-size:14px;font-weight:500;margin-bottom:15px}.condition-block p,.condition-block li{font-size:11px;line-height:2.3;overflow-wrap:anywhere}.circled-list{list-style:none;padding:0;counter-reset:condition}.circled-list li{position:relative;padding-left:25px;counter-increment:condition;margin-top:5px}.circled-list li:before{content:counter(condition,circled-decimal);position:absolute;left:0}.notes-list{padding-left:18px}.notes-list li{margin-bottom:5px}.trademark-note{margin-top:15px}.trademark-note a{text-decoration:underline;text-underline-offset:3px}.conversion{position:relative;isolation:isolate;color:#fff;background:#252722;padding:100px 0;overflow:hidden}.conversion-inner{text-align:center}.conversion h2{font-size:clamp(28px,3vw,40px);line-height:2;letter-spacing:.12em;margin-bottom:25px}.conversion-inner>p{font-size:13px;line-height:2.4}.conversion-buttons{display:grid;grid-template-columns:1fr 1fr;gap:25px;max-width:800px;margin:40px auto 35px}.button{display:flex;align-items:center;justify-content:center;gap:30px;min-height:64px;padding:16px 25px;font-size:14px;border:1px solid #fff;transition:background .2s}.button span{font:20px/1 Arial,sans-serif}.button.light{background:var(--paper);color:var(--text)}.button.outline{color:#fff}.button:hover{background:var(--accent);border-color:var(--accent);color:white}.conversion-phone{display:inline-flex;align-items:center;gap:13px;font:38px/1.6 Georgia,serif;letter-spacing:.04em}.conversion-phone .phone-symbol{font-size:32px}.conversion-inner>.business-hours{font-size:11px;margin-top:10px}.copyright{position:relative;text-align:center;background:var(--paper);padding:25px 60px}.copyright p{font:9px/2 Arial,sans-serif;letter-spacing:.08em}.back-top{position:absolute;right:25px;top:15px;border:1px solid var(--line);width:36px;height:36px;line-height:36px}.skip-link{position:fixed;left:15px;top:-100px;padding:10px;background:white;z-index:50}.skip-link:focus{top:15px}
.feature-copy .spec-note{font-size:11px;line-height:2;color:var(--muted);margin-top:14px;letter-spacing:.03em}
@media(max-width:1050px){.container{width:calc(100% - 64px)}.section{padding-block:90px}.floating-header{width:calc(100% - 40px);padding:12px 18px;gap:18px}.header-logo,.header-logo img{width:140px;flex-basis:140px}.floating-header nav{gap:10px}.header-button{font-size:11px;padding-inline:16px}.header-phone{font-size:16px;gap:5px;margin-left:0}.feature-row{gap:40px;margin-bottom:80px}.feature-row .section-heading h2{font-size:27px}.model-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 20px}.fair-block{padding:40px 30px}.reservation-grid{gap:22px}.reservation-grid>article{padding:25px 20px}.gift-options{gap:8px}.gift-options strong{font-size:30px}.course-grid article{padding:25px}.course-grid h4{font-size:19px}}
@media(max-width:760px){html{scroll-padding-top:110px}.container{width:calc(100% - 40px)}.section{padding-block:65px}.floating-header{top:5px;width:calc(100% - 20px);min-height:74px;padding:10px 12px;gap:10px}.header-logo{flex-basis:94px}.header-logo img{width:94px}.floating-header nav{gap:6px}.header-button{font-size:10px;letter-spacing:0;min-height:40px;padding:8px 10px}.header-phone{margin-left:3px;min-height:40px;min-width:30px;justify-content:center}.header-phone>span:last-child{display:none}.header-phone .phone-symbol{font-size:25px}.hero{min-height:610px;padding:135px 0 90px}.hero-copy h1{font-size:clamp(25px,5.6vw,40px);line-height:2;letter-spacing:.06em;margin-top:22px}.hero-sub{font-size:12px;line-height:2.5;max-width:320px}.hero .eyebrow{font-size:8px}.scroll-cue{font-size:8px;right:20px;bottom:30px}.fair-banner{margin-top:25px}.fair-banner>p{font-size:9px;line-height:2.1;text-align:center;margin-top:12px}.decoration{font-size:31px;margin-bottom:18px}.section-heading{margin-bottom:35px}.section-heading h2{font-size:25px;letter-spacing:.06em;line-height:1.9}.section-description{font-size:12px;margin-top:20px;line-height:2.4}.concept-intro{margin-bottom:35px;text-align:left}.concept-intro h2{font-size:28px;letter-spacing:.04em;margin-bottom:22px}.concept-intro .decoration{font-size:30px}.concept-intro>p:last-child{font-size:13px;line-height:2.5}.concept-image img{aspect-ratio:4/3}.feature-row{grid-template-columns:1fr;gap:30px;margin-bottom:60px}.feature-row.reverse>.feature-copy,.feature-row.reverse>.media{grid-column:auto;grid-row:auto}.feature-row .section-heading h2{font-size:25px}.feature-row .section-description{font-size:12px;margin-top:20px}.works-grid{grid-template-columns:1fr;gap:35px}.works-grid h3{font-size:15px;margin-top:15px;gap:15px}.social-area{margin-top:55px}.social-area h3{font-size:16px;line-height:2;max-width:310px;margin-inline:auto;margin-bottom:25px}.social-button.instagram{min-height:70px;font-size:22px}.social-button{font-size:13px;gap:22px}.social-sub{gap:12px;margin-top:12px}.model-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 16px}.model-grid h3{font-size:13px;margin-top:13px}.model-grid article>p{font-size:10px;margin-top:7px}.fair-section .section-heading>.decoration{font-size:22px}.fair-section .section-heading h2{font-size:29px}.fair-period{gap:12px;flex-direction:column;margin-bottom:35px}.fair-period>span{font-size:10px}.fair-period>strong{font-size:22px;letter-spacing:0}.fair-period small{font-size:12px;margin-left:2px}.fair-block{padding:30px 20px;margin-bottom:35px}.benefit-label{font-size:12px;margin-bottom:17px}.fair-block>h3{font-size:21px;margin-bottom:25px;line-height:2}.fair-block h3 strong{font-size:46px;margin-inline:4px}.reservation-benefit>h3>span{display:block;margin-right:0}.reservation-grid{grid-template-columns:1fr;gap:20px}.reservation-grid>article{padding:22px 17px}.benefit-step{margin-bottom:10px}.reservation-grid h4{font-size:20px}.reservation-grid article>p:not(.benefit-step){font-size:11px}.gift-options>p{font-size:10px;padding:15px 7px}.gift-options strong{font-size:33px}.course-grid{grid-template-columns:1fr;gap:17px}.course-grid article{padding:24px 20px}.course-grid h4{font-size:20px;margin-bottom:13px}.course-grid article>p:last-child{font-size:11px}.mobile-break{display:block}.conditions{padding-top:15px}.conditions>h3{font-size:21px;margin-bottom:25px}.condition-block{padding:22px 0}.condition-block h4{font-size:13px;line-height:2}.condition-block p,.condition-block li{font-size:10px;line-height:2.3}.circled-list li{padding-left:23px}.conversion{padding-block:65px}.conversion h2{font-size:clamp(21px,4.8vw,30px);letter-spacing:.04em;line-height:2}.conversion-inner>p{font-size:11px;line-height:2.5}.conversion-buttons{grid-template-columns:1fr;gap:15px;margin:30px auto;max-width:420px}.button{min-height:58px;font-size:13px}.conversion-phone{font-size:32px;gap:10px}.conversion-phone .phone-symbol{font-size:27px}.conversion-inner>.business-hours{font-size:10px}.copyright{padding:25px 50px 25px 15px}.copyright p{font-size:7px;letter-spacing:.03em}.back-top{right:12px;top:20px;width:28px;height:28px;line-height:28px}.address-link{overflow-wrap:anywhere}}
@media(max-width:380px){.floating-header{padding:10px 8px;gap:6px}.header-logo{flex-basis:70px}.header-logo img{width:70px}.header-button{font-size:9px;padding-inline:7px}.floating-header nav{gap:4px}.header-phone{min-width:24px;margin:0}.header-phone .phone-symbol{font-size:22px}.container{width:calc(100% - 32px)}.hero-copy h1{font-size:25px}.fair-block{padding-inline:14px}.fair-period>strong{font-size:19px}.gift-options strong{font-size:28px}.course-grid h4{font-size:18px}.conversion-phone{font-size:28px}.model-grid{gap:25px 12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{.floating-header,.scroll-cue,.back-top{display:none}.section{padding-block:35px}.hero{min-height:450px}.fair-block,.course-grid article,.model-grid article{break-inside:avoid}.conversion{print-color-adjust:exact;-webkit-print-color-adjust:exact}.conditions{max-width:none}}
/* sample5の文言と画像を引き継いだ調整 */
.mobile-only-break{display:none}
.contract-benefit>h3{margin-bottom:16px}
.contract-note{text-align:center;font-size:14px;line-height:2.2;margin:0 0 35px}
@media(min-width:1024px){.concept-intro{max-width:none}.concept-intro>.concept-text{font-size:clamp(13px,1.15vw,15px);letter-spacing:.03em}.concept-text>.concept-line{display:block;white-space:nowrap}}
@media(max-width:760px){.mobile-only-break{display:block}.contract-note{font-size:12px;margin-bottom:25px}}
