:root{--paper:#f9f7f2;--ink:#343a32;--muted:#61685e;--line:#d5d8ce;--sage:#e9ece3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.95 'Yu Gothic',Meiryo,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #59634d;outline-offset:5px}header,main,footer{max-width:1200px;margin:auto}header{padding:30px 40px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo img{width:180px;height:auto;display:block}.logo small{display:block;text-align:center;font:9px Arial;letter-spacing:.25em;margin-top:9px}nav{display:flex;flex-wrap:wrap;gap:24px;font:14px Georgia,serif}main{padding:0 40px}.eyebrow{font:11px Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}h1,h2,h3{font-family:'Yu Mincho',serif;font-weight:400;line-height:1.6}h1{font-size:46px;margin:22px 0}h2{font-size:32px;margin:15px 0 24px}h3{font-size:23px;margin:12px 0}p{margin:12px 0}.intro{display:grid;grid-template-columns:1.15fr .85fr;background:var(--sage);min-height:450px}.intro-copy{padding:55px 48px}.intro img{width:100%;height:100%;max-height:510px;object-fit:cover}.intro p:not(.eyebrow){color:var(--muted)}.jump{padding:28px 0;display:flex;flex-wrap:wrap;gap:15px 30px;border-bottom:1px solid var(--line);font-size:13px}.jump a{border-bottom:1px solid #939a89}.section{padding:75px 0;border-bottom:1px solid var(--line)}.section-intro{max-width:720px;color:var(--muted)}.note{font-size:13px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:32px}.card{background:var(--sage);padding:28px;display:flex;flex-direction:column}.card h3{min-height:3.2em}.for{font-size:14px;min-height:5.85em;color:var(--muted)}.price{font:32px Georgia,serif;margin:25px 0 5px}.price small{font:12px 'Yu Gothic',sans-serif}.ex-tax{font-size:12px;color:var(--muted);margin:0}.card dl{font-size:14px;margin:22px 0}.card dt{margin-top:16px;font-weight:600}.card dd{margin:3px 0 0;color:var(--muted)}.pill{display:inline-block;font-size:11px;padding:2px 8px;border:1px solid #aaa78c;border-radius:3px;margin:4px 0;color:#6b603d}.button{display:inline-block;text-align:center;background:#3f4b3d;color:#fff;padding:14px 20px;border:0;font-size:14px;cursor:pointer}.card .button{margin-top:auto}.text-link{display:inline-block;border-bottom:1px solid #7e8876;padding:8px 0}.comparison{overflow:auto;margin-top:32px}table{border-collapse:collapse;width:100%;font-size:14px;min-width:670px;text-align:left}th,td{padding:17px 15px;border-bottom:1px solid var(--line);vertical-align:top}thead{background:#edf0e7}th{font-weight:500}.options{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;margin-top:24px}.option{padding:20px 0;border-bottom:1px solid var(--line)}.option strong{display:block;font-weight:500}.option .amount{font:23px Georgia,serif}.option small{font:12px 'Yu Gothic',sans-serif}.option p{font-size:13px;color:var(--muted)}.travel{padding:22px 26px;background:#efeee6;margin-top:30px}.travel h3{font-size:19px;margin-top:0}.travel p{font-size:14px}.other-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:35px}.other-grid article{border-top:1px solid #87917f;padding-top:16px}.other-grid p{font-size:14px;color:var(--muted)}.flow{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:0;list-style:none;counter-reset:step}.flow li{counter-increment:step;border-top:1px solid var(--line);padding-top:20px}.flow li:before{content:'0' counter(step);font:25px Georgia;color:#7b856e}.flow h3{font-size:19px}.flow p{font-size:14px;color:var(--muted)}details{border-bottom:1px solid var(--line);padding:19px 0}summary{cursor:pointer;padding-right:10px}details p{font-size:14px;color:var(--muted);max-width:850px}.consult{margin:65px 0;background:var(--sage);padding:45px}.consult h2{margin-top:10px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:13px}input,select,textarea{width:100%;background:var(--paper);color:var(--ink);border:1px solid #aab1a1;border-radius:0;padding:12px;margin:7px 0 16px}textarea{resize:vertical}footer{padding:35px 40px;display:flex;justify-content:space-between;gap:20px;font-size:12px;border-top:1px solid var(--line)}.review{margin-top:25px}.review summary{font-size:13px;color:#726444}.review p,.review li{font-size:13px}.status{padding:15px 0;margin:0}.review-heading{font-size:13px;color:#726444}#contact:focus{outline:none}@media(max-width:900px){.intro-copy{padding:35px 28px}h1{font-size:35px}.cards{gap:12px}.card{padding:20px}.price{font-size:28px}.card h3{font-size:20px}.flow{grid-template-columns:1fr 1fr}}@media(max-width:700px){header{padding:22px;align-items:flex-start}.logo img{width:135px}nav{gap:12px;font-size:12px}main{padding:0 22px}.intro{grid-template-columns:1fr}.intro-copy{padding:36px 25px}.intro img{height:300px;object-position:center 40%}h1{font-size:34px}h2{font-size:27px}.section{padding:48px 0}.cards,.other-grid,.options,.fields{grid-template-columns:1fr}.card{padding:28px}.card h3,.for{min-height:0}.card h3{font-size:24px}.card dl{display:grid;grid-template-columns:1fr 1.6fr;gap:13px;margin:24px 0}.card dt,.card dd{margin:0}.price{font-size:34px}.consult{padding:28px 22px;margin:40px 0}.flow{gap:20px}.jump{gap:12px 20px}.comparison:before{content:'横にスクロールして比較できます →';font-size:12px;color:var(--muted)}footer{padding:28px 22px;flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.cards-pair{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:700px){.cards-pair{grid-template-columns:1fr}}

.photo-unified{margin-top:32px}.photo-unified h3{min-height:0}.photo-rates{display:grid;grid-template-columns:1fr 1fr;gap:32px}.photo-rates>div{border-top:1px solid var(--line);padding:20px 0}.photo-rates h4{font-size:20px;font-weight:400;margin:0}.photo-rates .button{margin-top:15px}.photo-unified dl{border-top:1px solid var(--line);padding-top:15px}@media(max-width:700px){.photo-rates{grid-template-columns:1fr;gap:10px}}

.policy-page{max-width:900px}.policy-table{min-width:0}.policy-page a{text-decoration:underline;text-underline-offset:4px}.policy-page li{margin-bottom:14px}

.payment-summary{display:grid;grid-template-columns:7em 1fr;margin:24px 0 32px}.payment-summary dt,.payment-summary dd{margin:0;padding:14px 0;border-bottom:1px solid var(--line);font-weight:400}.payment-summary dd{padding-left:12px}.policy-page #payment h3{font-size:20px;margin-top:28px}.policy-page #payment ul{padding-left:1.4em}.policy-page #payment li{margin-bottom:6px}@media(max-width:700px){.payment-summary{grid-template-columns:5.5em 1fr}}

.policy-page .section{padding:44px 0}.policy-page ul,.policy-page ol{padding-left:1.4em}.policy-page li{margin-bottom:7px}.policy-page details ul,.policy-page details ol{font-size:14px;color:var(--muted)}.policy-page details h3{font-size:18px;margin-top:20px}.policy-page .policy-table thead{background:transparent}.policy-page .policy-table thead th{padding:7px 12px;font-size:12px;color:var(--muted)}.policy-page details summary{font-size:14px}.policy-page h1{font-size:36px}@media(max-width:700px){.policy-page h1{font-size:28px}.policy-page .section{padding:32px 0}}
