*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:140px}body{margin:0;color:#173c39;background:#fbfaf7;font-family:"Hiragino Kaku Gothic ProN","Noto Sans JP",Meiryo,sans-serif;line-height:1.9}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #ecae53;outline-offset:5px}img{width:100%;height:100%;object-fit:cover;display:block}h1,h2,h3,p{margin:0}h1{font-weight:600;line-height:1.45;letter-spacing:.06em}h2{font-size:clamp(26px,3vw,39px);line-height:1.65;letter-spacing:.04em}h3{font-size:21px;line-height:1.6}p{font-size:15px}.wrap{max-width:1240px;margin:auto;padding:0 48px}.compare{background:#172b2b;color:#fff;position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:center;gap:28px;padding:9px 18px;font-size:11px;min-height:52px}.compare-label{letter-spacing:.1em;color:#c4d3d0}.choices{display:flex;gap:5px}.choices a{padding:5px 18px;border:1px solid #556766;border-radius:4px;white-space:nowrap}.choices a[aria-current]{background:#f3f0e6;color:#183c39;border-color:#f3f0e6}.compare small{color:#a9b9b8}header{height:96px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{font-size:29px;font-weight:800;letter-spacing:-1.4px;display:flex;align-items:center;gap:10px}.logo i{width:23px;height:23px;border:6px solid currentColor;transform:rotate(45deg);border-radius:6px;display:inline-block}.logo span{letter-spacing:0;font-size:9px;font-weight:500;display:block;margin-top:-8px}nav{display:flex;gap:24px;align-items:center;font-size:12px;font-weight:600}.navcta{background:#1d6555;color:white;padding:11px 19px;border-radius:3px}.menu{display:none;border:1px solid currentColor;background:transparent;color:inherit;padding:5px 12px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.2em;display:block;margin-bottom:23px;color:#598376}.tag{display:inline-block;font-size:10px;letter-spacing:.08em;border:1px solid #bdd0c5;padding:2px 9px;border-radius:3px;margin-bottom:18px}.buttons{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:14px 23px;background:#1d6555;color:white;font-size:13px;font-weight:600;border:1px solid #1d6555;border-radius:3px}.btn:after{content:'↗';font-size:18px}.btn.secondary{background:transparent;color:#204e44;border-color:#b8c5bd}.note{font-size:11px;color:#6c7f77}.section{padding:92px 0;border-top:1px solid #dce4da}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:38px}.section-head>p{max-width:400px;color:#67786e;font-size:14px}.label{font-size:11px;letter-spacing:.17em;color:#497860;display:block;margin-bottom:14px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.photo-card .pic{height:235px;overflow:hidden;border-radius:4px;margin-bottom:22px}.photo-card img{transition:transform .5s}.photo-card:hover img{transform:scale(1.04)}.photo-card h3{margin-bottom:10px}.photo-card p{color:#6b7b73;font-size:13px}.step{padding:26px 0;border-top:1px solid #b7cbbd}.step b{font-size:11px;color:#4d7f65;display:block;letter-spacing:.1em;margin-bottom:18px}.step p{font-size:13px;margin-top:12px;color:#63776c}.vision-block{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.vision-block p{color:#63776c;margin:22px 0}.vision-photo{height:410px;border-radius:100px 3px 100px 3px;overflow:hidden}.techgrid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:35px}.tech{padding:30px;border:1px solid #cbd8cf;background:#fff}.tech h3{font-size:19px;margin:15px 0}.tech p{font-size:13px;color:#66796d}.tech small{font-size:10px;color:#5d7d6b}.contact{padding:65px;background:#e8eee4;border-radius:6px;display:flex;align-items:center;justify-content:space-between;gap:35px}.contact p{font-size:13px;margin-top:12px;color:#5f7568}.contact h2{font-size:30px}.contact .buttons{margin:0}footer{padding:48px 0 25px;font-size:11px;color:#6d7e74}footer .foot{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-bottom:30px}footer .fine{border-top:1px solid #d5ded4;padding-top:22px;font-size:10px}.faq{margin-top:25px}details{border-bottom:1px solid #d5ded4;padding:18px 0}summary{cursor:pointer;font-size:14px;font-weight:600}details p{font-size:13px;color:#66796d;margin-top:12px}.a-hero{display:grid;grid-template-columns:1.02fr 1fr;gap:40px;align-items:center;min-height:615px;padding:25px 0 50px}.a-hero h1{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(34px,4vw,53px);line-height:1.75;letter-spacing:.05em;margin-bottom:23px}.a-hero .intro{max-width:400px;color:#61756a;font-size:14px}.a-art{height:525px;position:relative;padding:0 0 30px 20px}.a-art>img{border-radius:140px 6px 6px 6px}.a-art .inset{position:absolute;width:200px;height:156px;bottom:0;left:-10px;border:7px solid #fbfaf7;border-radius:5px;overflow:hidden;transform:rotate(-5deg)}.a-art .caption{position:absolute;right:15px;bottom:45px;color:#fff;font-family:serif;writing-mode:vertical-rl;letter-spacing:.3em;font-size:15px;text-shadow:0 1px 10px #123}.newsline{display:flex;align-items:center;gap:28px;padding:23px 0;border-top:1px solid #d7dfd3;font-size:12px}.newsline b{font-size:10px;letter-spacing:.15em}.newsline span{color:#6c8173}.b{color:#183b43;background:#f7f8f5}.b .navcta,.b .btn{background:#163e49;border-color:#163e49}.b .btn.secondary{background:transparent;color:#163e49;border-color:#b8c5bd}.b-hero{padding:45px 0 0}.b-title{display:grid;grid-template-columns:1.35fr 1fr;gap:70px;align-items:center;padding-bottom:55px}.b h1{font-size:clamp(34px,4.3vw,57px);letter-spacing:-.01em;line-height:1.55}.b h1 em{font-style:normal;color:#428576}.b-title .intro{font-size:14px;line-height:2.1;color:#526d6d}.b-panorama{height:285px;position:relative;border-radius:4px;overflow:hidden}.b-panorama:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,40,46,.65),transparent)}.b-panorama .over{position:absolute;z-index:1;color:white;left:38px;top:40px;max-width:360px}.over .label{color:#cfebe2}.over h2{font-size:26px}.b-proof{display:grid;grid-template-columns:1fr 1fr 1fr;border-bottom:1px solid #cad5d0;padding:28px 0}.b-proof>div{padding:0 28px;border-right:1px solid #cad5d0}.b-proof>div:first-child{padding-left:0}.b-proof>div:last-child{border:0}.b-proof strong{font-size:18px;display:block}.b-proof small{color:#69827d;font-size:11px}.b .section{padding:70px 0}.b-services{display:grid;grid-template-columns:1fr 1fr;gap:35px}.b-service{padding:32px;background:white;border-top:3px solid #285b60}.b-service .num{font-size:13px;color:#67928b}.b-service h3{margin:20px 0}.b-service p{color:#607c77;font-size:13px}.b .contact{background:#193e48;color:white}.b .contact p{color:#c4d8d4}.b .contact .btn{background:#fff;color:#193e48}.c{background:#f5f3e9;color:#123d39}.c header{height:90px}.c-hero{background:#0c4942;color:#fcf8e9;padding:66px 0 50px;overflow:hidden;position:relative}.c-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:30px;align-items:center}.c .c-hero h1{font-size:clamp(39px,4.9vw,67px);line-height:1.6;letter-spacing:.03em;font-family:"Yu Mincho","Hiragino Mincho ProN",serif}.c-hero .eyebrow{color:#c9debd}.c-hero p{color:#ccdfd1;max-width:390px;font-size:14px;margin-top:24px}.c .c-hero .btn{background:#e4efba;border-color:#e4efba;color:#123d39}.c .c-hero .btn.secondary{background:transparent;color:#f6f5e7;border-color:#83a89a}.orbit{width:100%;aspect-ratio:1;position:relative;max-width:480px;margin:auto}.ring{position:absolute;inset:10%;border:1px solid #699e88;border-radius:50%}.ring.r2{inset:24%;border-style:dashed;transform:rotate(20deg)}.coin{position:absolute;inset:34%;border-radius:50%;background:#e9ecbc;color:#154a40;display:flex;align-items:center;justify-content:center;text-align:center;box-shadow:0 0 0 15px #88ae7833,0 0 0 30px #88ae7815;font-family:serif;font-size:24px;font-weight:600;line-height:1.5}.orbit-photo{position:absolute;width:37%;height:31%;border-radius:48px 4px 48px 4px;overflow:hidden;border:4px solid #0c4942}.op1{top:0;left:20%}.op2{bottom:7%;left:0}.op3{right:-1%;top:39%}.orbit-label{position:absolute;font-size:11px;letter-spacing:.1em;right:5%;top:17%;color:#d8e5ba}.c-hero .cap{border-top:1px solid #619285;margin-top:45px;padding-top:20px;display:flex;justify-content:space-between;gap:30px;color:#b8d0c3;font-size:11px}.c .vision-block{gap:70px}.c .section{border-color:#d1d7c5}.c .contact{background:#dfe7ca}.mobileonly{display:none}@media(min-width:1500px){.a-hero{min-height:690px}.a-art{height:580px}}@media(max-width:900px){.wrap{padding:0 25px}nav{gap:15px;font-size:10px}.compare{gap:12px}.compare small{display:none}.compare-label{font-size:9px}.choices a{padding:5px 11px}.a-hero{gap:20px}.a-art{height:470px}.a-art .inset{width:155px;height:125px}.b-title{gap:30px}.vision-block{gap:30px}.contact{padding:35px}.c-layout{gap:10px}.c .c-hero h1{font-size:45px}.photo-card .pic{height:180px}}@media(max-width:650px){.compare{flex-direction:column;gap:5px;padding:7px 10px}.compare-label{font-size:9px}.choices a{font-size:10px;padding:3px 19px}header{height:77px}.logo{font-size:26px}.menu{display:block;font-size:12px}nav{display:none;position:absolute;top:147px;left:0;right:0;background:#fbfaf7;z-index:25;padding:20px 25px;box-shadow:0 8px 20px #1232;flex-wrap:wrap;color:#173c39}nav.open{display:flex}nav a{font-size:13px}.a-hero{display:flex;flex-direction:column;align-items:stretch;gap:28px;padding-top:30px}.a-hero h1{font-size:35px;line-height:1.75}.eyebrow{font-size:10px;margin-bottom:15px}.a-hero .intro{font-size:13px}.buttons{gap:10px;margin-top:24px}.btn{font-size:12px;padding:12px 15px;gap:20px}.a-art{height:340px;padding-left:20px;margin-top:5px}.a-art>img{border-radius:90px 4px 4px 4px}.a-art .inset{width:150px;height:115px;left:0}.newsline{gap:13px;font-size:10px;align-items:flex-start}.newsline span{display:none}.section{padding:55px 0}.section-head{display:block;margin-bottom:27px}.section-head>p{margin-top:20px;font-size:13px}.cards{grid-template-columns:1fr;gap:30px}.photo-card{display:grid;grid-template-columns:.9fr 1fr;gap:18px;align-items:center}.photo-card .pic{height:155px;margin:0}.photo-card h3{font-size:18px}.photo-card p{font-size:12px}.step{padding:20px 0}.step b{margin-bottom:9px}.vision-block{grid-template-columns:1fr;gap:30px}.vision-photo{height:290px;order:2;border-radius:70px 3px 70px 3px}.techgrid{grid-template-columns:1fr;gap:15px}.tech{padding:24px}.contact{display:block;padding:30px 24px}.contact h2{font-size:25px}.contact .buttons{margin-top:25px}.foot{align-items:flex-start!important;flex-direction:column}.b-hero{padding-top:30px}.b-title{grid-template-columns:1fr;gap:23px;padding-bottom:30px}.b h1{font-size:36px}.b-title .intro{font-size:13px}.b-panorama{height:240px}.b-panorama .over{top:30px;left:24px;right:24px}.over h2{font-size:23px}.b-proof{gap:15px;grid-template-columns:1fr;padding:23px 0}.b-proof>div{padding:0!important;border:0;display:flex;justify-content:space-between;align-items:center}.b-proof strong{font-size:15px}.b-proof small{font-size:10px}.b-services{grid-template-columns:1fr;gap:18px}.b .section{padding:50px 0}.c header{height:77px}.c-hero{padding:38px 0 28px}.c-layout{grid-template-columns:1fr}.c .c-hero h1{font-size:40px;line-height:1.6}.c-hero p{font-size:13px;max-width:330px}.orbit{max-width:340px;margin-top:30px}.coin{font-size:20px}.c-hero .cap{display:block;margin-top:20px;font-size:10px}.c-hero .cap span{display:block;margin-top:6px}.c .vision-block{gap:28px}}

.common-section{background:#eef2ec}.common-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:55px;align-items:center}.common-tag{font-size:11px;color:#438576;display:inline-block;border:1px solid #9bb8a8;padding:3px 10px;margin-bottom:18px}.common-intro h2{font-size:clamp(25px,3vw,36px);line-height:1.7;margin-bottom:24px}.common-intro p{font-size:14px;color:#5c7874;margin-top:18px}.common-image{height:380px;position:relative;overflow:hidden;border-radius:3px}.common-image img{width:100%;height:100%;object-fit:cover;display:block}.common-image:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#153e46a8)}.common-image>span{position:absolute;bottom:25px;left:25px;color:white;font-size:18px;z-index:1}.common-journey{padding:35px;margin-top:42px;background:#f9faf6;border:1px solid #d4dfd5}.common-origin{text-align:center;margin-bottom:35px}.common-origin>span{display:block;font-size:11px;color:#608174}.common-origin strong{display:block;font-size:20px;font-weight:500;margin:6px 0}.common-origin p{font-size:11px;color:#648073}.common-stops{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;position:relative}.common-stops:before{content:'';height:1px;position:absolute;top:0;left:16%;right:16%;background:#88ad9a}.common-stops article{text-align:center;border-top:2px solid #77a390;padding:22px 15px 10px}.common-stops small{font-size:11px;letter-spacing:.15em;color:#558775}.common-stops h3{font-size:24px;margin:10px 0}.common-stops p{font-size:12px;color:#678075}.common-caption{font-size:10px!important;color:#7c8d83!important;margin-top:25px!important;text-align:center}.common-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:35px}.common-benefits article{border-top:1px solid #bccfc0;padding-top:20px}.common-benefits h3{font-size:16px;margin-bottom:10px}.common-benefits p{font-size:12px;color:#607b70}.common-conditions{border-left:2px solid #83aa95;padding:3px 0 3px 20px;margin-top:35px}.common-conditions strong{font-size:13px;font-weight:500}.common-conditions p{font-size:11px;color:#6b8076;margin-top:10px}.common-payment{padding-top:30px;border-top:1px solid #bdcfc2;margin-top:38px}.common-payment h3{font-size:21px;margin:12px 0 15px}.common-payment p{font-size:13px;margin-top:12px;color:#607b70}@media(max-width:700px){.common-intro{grid-template-columns:1fr;gap:26px}.common-intro h2{font-size:27px}.common-intro p{font-size:13px}.common-image{height:240px}.common-image>span{font-size:16px;bottom:20px;left:20px}.common-journey{padding:23px 15px;margin-top:28px}.common-origin strong{font-size:16px}.common-stops{gap:12px}.common-stops article{padding:17px 0 5px}.common-stops h3{font-size:19px}.common-stops p{font-size:10px}.common-stops small{font-size:10px}.common-benefits{grid-template-columns:1fr;gap:20px}.common-benefits article{padding-top:16px}.common-conditions{padding-left:15px}.common-conditions strong{font-size:12px}.common-caption{text-align:left}.common-payment h3{font-size:19px}}

/* B: integrated contact form. */
.b-contact .new-contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;align-items:start}.b-contact .new-contact-copy>p{font-size:13px;color:#607b77;margin-top:22px}.b-contact .contact-preview-note{border-left:3px solid #639688;padding:16px 18px;background:#e9efea;margin-top:25px;font-size:12px}.b-contact .contact-preview-note strong{font-weight:600}.b-contact .contact-preview-note p{font-size:12px;color:#607b77;margin-top:7px}.b-contact .new-contact-panel{background:#fff;padding:32px;border:1px solid #d7e0da}.b-contact .form-steps{list-style:none;display:flex;gap:30px;margin:0 0 28px;padding:0;border-bottom:1px solid #c5d4ca;color:#789087;font-size:12px}.b-contact .form-steps li{padding-bottom:12px}.b-contact .form-steps .active{color:#183e48;border-bottom:2px solid #183e48}.b-contact form label{display:block;font-size:13px;margin-bottom:22px;font-weight:500}.b-contact input,.b-contact select,.b-contact textarea{width:100%;display:block;background:#fdfefb;border:1px solid #b8cbbf;padding:12px 14px;font:inherit;font-size:14px;line-height:1.7;color:#183e48;border-radius:2px;margin-top:8px;min-width:0}.b-contact textarea{resize:vertical}.b-contact .required,.b-contact .optional{font-size:10px;margin-left:9px;color:#4b7d6b}.b-contact .optional{color:#7a8c83}.b-contact .form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.b-contact .consent{display:flex;align-items:start;gap:12px;font-size:11px;font-weight:400}.b-contact .consent input{width:17px;height:17px;flex-shrink:0;margin-top:5px}.b-contact .consent a{border-bottom:1px solid #8fae9e}.b-contact .button{display:flex;align-items:center;justify-content:space-between;width:100%;background:#183e48;color:#fff;border:1px solid #183e48;padding:15px 20px;gap:25px;font:inherit;font-size:13px;cursor:pointer}.b-contact .contact-extra{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden;white-space:nowrap}.b-contact .form-status,.b-contact .notice{padding:14px 18px;background:#edf2e9;border-left:3px solid #649486;font-size:12px;margin-bottom:20px;color:#4f7165}.b-contact .company-table{margin:20px 0}.b-contact .company-table>div{display:grid;grid-template-columns:125px 1fr;gap:18px;padding:17px 0;border-top:1px solid #ccdbd0;font-size:12px}.b-contact .company-table dt{font-weight:500}.b-contact .company-table dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;color:#5d7770}.b-contact #confirm h2{font-size:24px}.b-contact [hidden]{display:none!important}.b-contact input:focus-visible,.b-contact select:focus-visible,.b-contact textarea:focus-visible{outline:2px solid #438977;outline-offset:3px}@media(max-width:800px){.b-contact .new-contact-layout{grid-template-columns:1fr;gap:28px}.b-contact .new-contact-panel{padding:24px}.b-contact input,.b-contact select,.b-contact textarea{font-size:16px}}@media(max-width:480px){.b-contact .new-contact-panel{padding:20px 18px}.b-contact .form-row{grid-template-columns:1fr;gap:0}.b-contact .company-table>div{grid-template-columns:95px 1fr;gap:12px}.b-contact .consent{font-size:10px}}
