


:root{--navy:#1f2a44;--gold:#b89b5e;--line:#deded8;--ivory:#f7f6f2;--muted:#626b77}*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;color:var(--navy);background:#fff;font:16px/1.8 'Yu Gothic','Meiryo',sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}h1,h2,h3{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-weight:500}header{height:104px;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:0 max(5vw,24px);border-bottom:1px solid var(--line);background:#fff}.logo{width:208px}.nav{display:flex;align-items:center;gap:38px;font-size:15px}.nav a:hover{color:#8a6d36}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;min-height:54px;padding:14px 24px;background:var(--navy);color:#fff;border:1px solid var(--navy);font-size:15px}.button:after{content:'↗';font-size:20px}.button.light{background:transparent;color:var(--navy)}.hero{display:grid;grid-template-columns:49% 51%;min-height:650px;background:var(--ivory)}.hero-copy{position:relative;padding:78px 38px 64px max(7.5vw,28px);z-index:1}.eyebrow{font:12px/1.5 Georgia,serif;letter-spacing:.23em;color:#856c3d;text-transform:uppercase;margin:0 0 22px}.hero h1{font-size:clamp(64px,6.7vw,104px);letter-spacing:.035em;line-height:1.4;margin:0 0 32px;white-space:nowrap}.hero p.lead{font-size:16px;line-height:2.15;max-width:500px;margin:0 0 32px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-media{position:relative;min-height:570px}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:58% center}.photo-note{position:absolute;bottom:12px;right:18px;color:#fff;font-size:11px;text-shadow:0 1px 4px #000}.hero-index{font:11px/1.6 Georgia,serif;letter-spacing:.17em;margin-top:42px;color:#707784}.wrap{width:min(1180px,86%);margin:0 auto}.section{padding:90px 0}.section-head{display:flex;gap:60px;align-items:baseline;margin-bottom:35px}.section-head h2{font-size:34px;letter-spacing:.05em;margin:0;line-height:1.5}.section-head .eyebrow{width:130px;flex-shrink:0;margin:0}.news{display:grid;grid-template-columns:220px 1fr;gap:60px;padding:56px 0}.news h2{font-size:28px;margin:0 0 8px}.news .eyebrow{margin:0}.news-line{padding:20px 0;border-bottom:1px solid var(--line);display:flex;gap:30px;align-items:center;font-size:15px}.news-line span{font-size:12px;color:var(--muted);white-space:nowrap}.soft{background:var(--ivory)}.business-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.business-card{background:#fff;display:block}.business-card .pic{height:224px;overflow:hidden}.business-card img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.business-card:hover img{transform:scale(1.035)}.card-body{padding:27px 28px 30px}.number{font:12px/1.5 Georgia,serif;color:#937b4c;letter-spacing:.12em}.business-card h3{font-size:25px;line-height:1.6;margin:12px 0}.business-card p{font-size:14px;color:var(--muted);line-height:1.95;margin:0 0 22px}.text-link{font-size:13px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:16px}.text-link:after{content:'↗';font-size:20px}.stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stat{padding:35px;border-right:1px solid var(--line)}.stat:last-child{border:0}.stat strong{display:block;font:52px/1.4 Georgia,serif;color:var(--navy)}.stat strong small{font:17px 'Yu Mincho',serif;margin-left:8px}.stat p{font-size:14px;margin:0;color:var(--muted)}.note{font-size:12px;color:var(--muted);margin-top:20px}.greeting{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.greeting-image{background:#eeede8;padding:68px 55px;min-height:300px;display:flex;align-items:center;justify-content:center}.greeting-image img{width:340px}.greeting h2{font-size:34px;margin:16px 0 25px}.greeting p{line-height:2}.contact-block{background:var(--navy);color:#fff;padding:66px}.contact-block h2{font-size:36px;margin:0 0 20px}.contact-block .eyebrow{color:#e0c588}.contact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:36px}.contact-grid a{min-height:70px;padding:18px;border:1px solid #667185;display:flex;align-items:center;justify-content:space-between;font-size:14px}.contact-grid a:after{content:'↗'}.contact-grid a:hover{background:#ffffff12}footer{padding:65px 0 25px}.footer-top{display:flex;justify-content:space-between;gap:40px;padding-bottom:38px}.footer-brand{max-width:290px}.footer-brand img{width:210px;margin-bottom:20px}.footer-brand p{font-size:13px;color:var(--muted)}.footer-links{display:flex;gap:25px;font-size:13px;align-items:flex-start;flex-wrap:wrap}.bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:var(--muted)}.draft-label{position:fixed;bottom:14px;left:16px;background:#fff;color:#59616f;border:1px solid #deded8;border-radius:3px;padding:4px 10px;box-shadow:0 2px 8px #0000000c;z-index:10;font-size:11px}.mobile-menu{display:none}.pending{color:#77808b;font-size:14px}.company-name{font-size:14px;font-weight:600}


@media(max-width:900px){.nav{gap:20px}.nav .button{display:none}.hero{grid-template-columns:1fr 1fr}.hero-copy{padding-left:7vw}.hero h1{font-size:68px}.hero p.lead{font-size:15px}.section-head{display:block}.section-head .eyebrow{margin-bottom:12px}.business-grid{gap:15px}.card-body{padding:22px}.contact-grid{grid-template-columns:1fr 1fr}.greeting{gap:35px}.contact-block{padding:42px}}


@media(max-width:600px){header{height:78px;padding:0 22px}.logo{width:172px}.nav{display:none}.mobile-menu{display:block;background:none;border:0;color:var(--navy);font-size:13px;padding:12px}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:46px 24px 40px}.hero h1{font-size:55px;letter-spacing:.035em;margin-bottom:23px}.hero .eyebrow{font-size:10px;margin-bottom:17px}.hero p.lead{font-size:16px;line-height:2;margin-bottom:26px}.hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.hero-actions .button{padding:12px 15px;gap:10px;font-size:13px;min-height:50px}.hero-index{display:none}.hero-media{min-height:0;height:280px}.wrap{width:calc(100% - 44px)}.news{display:block;padding:38px 0}.news h2{font-size:26px}.news .eyebrow{margin-bottom:20px}.news-line{display:block;padding:18px 0}.news-line span{display:block;margin-bottom:5px}.section{padding:56px 0}.section-head{margin-bottom:27px}.section-head h2{font-size:28px}.business-grid{display:block}.business-card{margin-bottom:24px}.business-card .pic{height:215px}.business-card h3{font-size:25px}.card-body{padding:25px}.stats{display:block}.stat{border-right:0;border-bottom:1px solid var(--line);padding:25px 12px;display:flex;align-items:center;justify-content:space-between}.stat strong{font-size:45px}.greeting{display:flex;flex-direction:column-reverse;align-items:stretch;gap:30px}.greeting h2{font-size:29px}.greeting-image{min-height:210px;padding:35px}.contact-block{padding:36px 25px}.contact-block h2{font-size:29px}.contact-grid{display:block;margin-top:28px}.contact-grid a{min-height:58px;margin-bottom:12px}.footer-top{display:block}.footer-links{margin-top:30px;gap:18px 25px}.bottom{display:block;line-height:2.2}.draft-label{font-size:10px;bottom:8px;left:8px}footer{padding-top:40px}}





/* 社長指示：写真に文字を重ねる一体型のファーストビュー */


.hero{display:block;position:relative;isolation:isolate;min-height:660px;color:#fff;background:#253449;overflow:hidden}


.hero-media{position:absolute;inset:0;z-index:-2;min-height:0}


.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center}


.hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(14,26,42,.88),rgba(14,26,42,.68) 43%,rgba(14,26,42,.08) 78%)}


.hero-copy{padding:84px max(7.5vw,28px) 72px;max-width:1000px}


.hero h1{font-size:clamp(62px,6.7vw,104px);margin-bottom:22px}


.hero .eyebrow{color:#e0c588}.hero p.lead{max-width:590px;line-height:2.1}


.hero .button{background:#fff;color:var(--navy);border-color:#fff}.hero .button.light{color:#fff;background:transparent}


.hero-index{color:#dddfe2;margin-top:30px}.hero .photo-note{bottom:14px;right:22px;z-index:1;font-size:11px;color:#fff}


.cases-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}


.case-card{border:1px solid var(--line);background:#fff}


.case-photo{aspect-ratio:16/10;background:#eeede8;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;color:#747970}


.case-photo svg{width:45px;height:45px;stroke:#8a9087;fill:none;stroke-width:1.2}


.case-photo span{font-size:14px}.case-body{padding:25px 27px 28px}


.case-tag{font-size:11px;letter-spacing:.08em;color:#947b48}


.case-body h3{font-size:23px;line-height:1.6;margin:12px 0}


.case-body p{color:var(--muted);font-size:14px;margin:0 0 18px}


.case-kind{padding-top:15px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}


.case-intro{font-size:16px;margin:-7px 0 30px}


.cases .section-head{margin-bottom:20px}


.article-route{display:flex;align-items:center;justify-content:space-between;gap:35px;margin-top:42px;border-top:1px solid var(--line);padding-top:30px}


.article-route p{max-width:680px;margin:0;font-size:15px;color:var(--muted)}


@media(max-width:900px){.hero-copy{max-width:850px}.cases-grid{gap:15px}.case-body{padding:22px}}


@media(max-width:600px){.hero{min-height:680px;display:block}.hero-copy{padding:60px 25px 65px}.hero h1{font-size:55px}.hero p.lead{font-size:15px}.hero-media{height:auto;min-height:0}.hero-media img{object-position:66% center}.hero:before{background:linear-gradient(90deg,rgba(14,26,42,.86),rgba(14,26,42,.65))}.hero .eyebrow{font-size:10px}.hero-index{display:none}.cases-grid{display:block}.case-card{margin-bottom:25px}.case-photo{aspect-ratio:16/9}.article-route{display:block}.article-route .button{margin-top:22px}.case-intro{font-size:15px}}


.hero-message{font-family:"Yu Mincho",serif;font-size:clamp(25px,2.5vw,39px);line-height:1.65;margin:0 0 25px;letter-spacing:.04em}.hero h1{font-size:clamp(58px,5.3vw,82px);margin-bottom:15px}.hero-copy{padding-top:65px;padding-bottom:55px}.hero p.lead{max-width:600px}.hero:before{background:linear-gradient(90deg,rgba(14,26,42,.84),rgba(14,26,42,.58) 48%,rgba(14,26,42,.02) 83%)}@media(max-width:600px){.hero-message{font-size:27px}.hero h1{font-size:55px}.hero-copy{padding:45px 25px 55px}.hero:before{background:linear-gradient(90deg,rgba(14,26,42,.85),rgba(14,26,42,.55))}}header .nav{gap:26px}header .nav .button{gap:25px;padding:12px 22px;min-height:52px}@media(max-width:1100px){header .nav{gap:18px}header .nav .button{padding:10px 16px;gap:12px}.logo{width:180px}}@media(max-width:900px){header .nav .button{display:none}}


.business-card p,.case-body p,.article-route p,.hero p.lead{font-size:16px}.news-line{font-size:16px}.contact-grid a{font-size:16px;min-height:70px}.mobile-menu{min-height:48px;min-width:72px}


.mobile-navigation{padding:12px 24px 22px;border-bottom:1px solid var(--line);background:white}.mobile-navigation[hidden]{display:none}.mobile-navigation a{display:block;min-height:48px;padding:10px 0;border-bottom:1px solid var(--line)}


@media(min-width:601px){.mobile-navigation{display:none}}


@media(max-width:600px){.hero p.lead{font-size:16px}.business-card p,.case-body p{font-size:16px}.hero-actions .button{font-size:14px}.contact-grid a{font-size:16px}}





body{font-size:16px;line-height:1.8;overflow-wrap:anywhere}main{min-height:55vh}input,select,textarea,button{font:inherit}button,a.button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #967742;outline-offset:4px}.page-heading{padding:58px 0 48px;background:var(--ivory)}.page-heading h1{font-size:clamp(31px,3.4vw,48px);line-height:1.5;margin:12px 0 20px}.page-heading p{max-width:820px;margin:0}.crumb{font-size:13px;color:var(--muted);padding:20px 0}.crumb a{text-decoration:underline}.content-wrap{max-width:880px}.local-notice{padding:20px 24px;border-left:3px solid var(--gold);background:var(--ivory);margin:20px 0 38px}.local-notice p{margin:6px 0}.local-notice strong{font-weight:600}.form-section{margin:0 0 42px}.form-section h2{font-size:28px;margin:0 0 20px}.question{margin:0;padding:26px 0;border:0;border-bottom:1px solid var(--line);min-width:0}.question legend{float:left;width:100%;font-weight:600;line-height:1.8;padding:0 0 14px}.question:after{content:'';display:block;clear:both}.question-options{clear:both;display:flex;gap:12px 20px;flex-wrap:wrap}.choice{display:flex;align-items:center;gap:12px;min-height:48px;padding:10px 16px;border:1px solid var(--line);background:white;cursor:pointer}.choice:has(input:checked){border-color:var(--navy);background:#f5f5f3}.choice input{width:18px;height:18px;accent-color:var(--navy);flex-shrink:0}.field{display:block;margin:24px 0}.field>span{display:block;margin-bottom:9px;font-weight:600}.field input,.field select,.field textarea{display:block;width:100%;min-height:52px;border:1px solid #aab0b8;padding:12px 15px;border-radius:0;background:white;color:var(--navy)}.field textarea{min-height:140px;resize:vertical}.optional{font-size:13px;font-weight:400;color:var(--muted);margin-left:12px}.consent{display:flex;align-items:flex-start;gap:12px;padding:12px 0;min-height:48px}.consent input{width:20px;height:20px;accent-color:var(--navy);margin-top:5px;flex-shrink:0}.form-foot{margin-top:34px}.form-foot .button{font-size:16px;min-height:56px}.form-foot p{font-size:14px;color:var(--muted)}.reference{border-top:1px solid var(--line);margin-top:38px;padding-top:25px;color:var(--muted)}.reference h2{font:600 16px 'Yu Gothic',sans-serif}.result-panel{border:1px solid var(--navy);padding:30px;margin:35px 0;background:var(--ivory)}.result-panel[hidden]{display:none}.result-panel h2{font-size:27px;margin:0 0 16px}.result-panel dl{margin:20px 0}.result-panel dl>div{padding:12px 0;border-bottom:1px solid var(--line)}.result-panel dt{font-weight:600}.result-panel dd{margin:5px 0 0;white-space:pre-wrap}.news-slots{border-top:1px solid var(--line)}.news-slot{padding:30px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:190px 1fr;gap:30px}.news-slot .meta{font-size:13px;color:var(--muted)}.news-slot h2{font-size:25px;margin:0 0 10px}.news-slot p{margin:0}.legal-layout{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:36px 0;margin-top:30px}.legal-layout h2{font-size:26px;margin:0 0 18px}.legal-layout p{margin:12px 0}.legal-placeholder{border-left:2px solid var(--line);padding:20px 26px;background:#fafaf8}.sp-fixed{display:none}.header-actions{display:flex;gap:9px}.special-header{padding-left:4vw;padding-right:4vw;gap:20px}.special-header .logo{width:170px;flex-shrink:0}.special-header .nav{gap:18px;font-size:13px}.special-header .button{font-size:12px;padding:10px 14px;gap:14px;min-height:48px}.mobile-navigation{padding:12px 24px 22px;border-bottom:1px solid var(--line);background:white}.mobile-navigation[hidden]{display:none}.mobile-navigation a{display:block;min-height:48px;padding:10px 0;border-bottom:1px solid var(--line)}.mobile-menu{min-height:48px;min-width:72px}.footer-links a,.bottom a{text-decoration:underline;text-underline-offset:4px}


@media(max-width:1200px){.special-header .header-actions{display:none}.special-header .nav{gap:18px}}@media(min-width:601px){.mobile-navigation{display:none}}@media(max-width:600px){.page-heading{padding:36px 0}.page-heading h1{font-size:31px}.page-heading .eyebrow{font-size:11px}.question-options{gap:10px}.choice{padding:10px 13px}.local-notice{padding:17px 19px}.form-foot .button{width:100%;justify-content:space-between}.news-slot{display:block;padding:24px 0}.news-slot .meta{margin-bottom:10px}.news-slot h2{font-size:23px}.result-panel{padding:23px}.form-section h2{font-size:25px}.legal-placeholder{padding:18px}.sp-fixed{position:fixed;display:grid;grid-template-columns:repeat(4,1fr);bottom:0;left:0;right:0;background:white;border-top:1px solid var(--line);z-index:30;padding-bottom:env(safe-area-inset-bottom)}.sp-fixed a,.sp-fixed button{display:flex;align-items:center;justify-content:center;min-height:58px;background:white;border:0;border-right:1px solid var(--line);color:var(--navy);font-size:14px;padding:10px 3px}.special-page{padding-bottom:calc(64px + env(safe-area-inset-bottom))}.special-header .logo{width:165px}.special-header .nav{display:none}.special-header .mobile-menu{display:block}}





[hidden]{display:none!important}.eyebrow{display:none!important}.flow-area{padding:28px 0 72px}.flow-card{border:1px solid var(--line);padding:36px;background:#fff;min-width:0}.flow-card h2{font-size:28px;line-height:1.6;margin:0 0 20px}.flow-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px}.flow-top p{margin:0;font-size:15px}.step-progress{display:block;width:100%;height:6px;appearance:none;border:0;background:#e9e8e3;margin:0 0 30px}.step-progress::-webkit-progress-bar{background:#e9e8e3}.step-progress::-webkit-progress-value{background:var(--gold)}.step-progress::-moz-progress-bar{background:var(--gold)}.flow-panel{min-width:0}.flow-panel h2:focus{outline:none}.flow-controls{display:flex;justify-content:space-between;gap:18px;margin-top:30px;flex-wrap:wrap}.flow-controls .button{min-height:54px;font-size:16px}.flow-error{color:#9f2929;min-height:1.8em;margin-top:18px}.flow-question{padding:0 0 20px;border:0}.flow-question legend{font-size:25px;font-family:'Yu Mincho',serif;line-height:1.6;margin-bottom:25px;padding:0}.flow-question .question-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.flow-question .choice{margin:0;min-height:60px}.flow-question .choice input{width:20px;height:20px}.flow-note{color:var(--muted);font-size:14px;line-height:1.9}.demo-note{background:#f7f3e9;border-left:3px solid var(--gold);padding:17px 22px;margin:0 0 28px}.demo-note p{margin:5px 0}.demo-note strong{font-weight:600}.price-example{border:1px solid #a78545;background:#fcf8ed;padding:20px;margin:0 0 30px}.price-example strong{display:block;font-size:18px}.price-example p{margin:9px 0 0}.pricing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.price-card{border:1px solid var(--line);padding:27px;min-width:0;background:#fff}.price-card h2{font-size:26px;line-height:1.6;margin:0 0 22px}.price-card dl{margin:0 0 20px}.price-card dl>div{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid var(--line)}.price-card dd{margin:0;font-weight:600;text-align:right}.price-card dt{color:var(--muted)}.price-card .button{width:100%;font-size:15px;gap:20px;min-height:54px}.selection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.service-choice{display:block;cursor:pointer;border:1px solid var(--line);padding:20px;min-height:100px}.service-choice:has(input:checked){border-color:var(--navy);background:var(--ivory)}.service-choice input{width:20px;height:20px;accent-color:var(--navy);margin:0 10px 0 0;vertical-align:middle}.service-choice strong{font-size:18px}.service-choice small{display:block;margin-top:10px;color:var(--muted);font-size:14px}.totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;padding:24px;margin:26px 0;background:var(--ivory)}.totals div{min-width:0}.totals span{display:block;font-size:14px;color:var(--muted)}.totals strong{display:block;font-size:24px;white-space:nowrap;margin-top:6px;font-weight:500}.price-calculator{margin-top:48px;border:1px solid var(--line);padding:30px}.price-calculator h2{font-size:28px;margin:0 0 20px}.flow-summary{margin:24px 0}.flow-summary>div{display:grid;grid-template-columns:180px minmax(0,1fr);gap:20px;padding:17px 0;border-bottom:1px solid var(--line)}.flow-summary dt{font-weight:600}.flow-summary dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.sample-document{border:1px solid var(--line);background:#fafaf7;padding:26px;margin:22px 0}.sample-document h3{font-size:21px;margin-top:0}.check-list{padding-left:22px;line-height:2}.process-list{display:flex;list-style:none;padding:0;gap:12px;flex-wrap:wrap;margin:24px 0}.process-list li{border:1px solid var(--line);padding:10px 18px;min-height:48px}.recommendation{border-top:1px solid var(--line);padding:24px 0}.recommendation h3{font-size:23px;margin:0 0 10px}.recommendation p{margin:8px 0}.recommendation .rank{color:#8a6d36;margin-bottom:8px;font-size:14px}.mail-preview{background:var(--ivory);border:1px solid var(--line);padding:25px;margin:26px 0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:16px;line-height:1.9}.receipt-no{font-family:Georgia,serif;font-size:32px;letter-spacing:.05em}.demo-badge{position:fixed;right:10px;bottom:75px;z-index:31;border:1px solid #ddd;background:#fffffff0;padding:3px 9px;color:#69717a;font-size:11px;pointer-events:none}.sp-fixed{box-shadow:0 -4px 18px #00000008;will-change:bottom}.sp-fixed button{cursor:pointer}.step-label{font-size:14px;color:var(--muted)}.flow-card input,.flow-card select,.flow-card textarea{max-width:100%}.field input,.field textarea{font-size:16px}.flow-card form{margin:0}.button:disabled{opacity:.5;cursor:default}.special-page main{padding-bottom:30px}.special-header .mobile-menu{min-width:72px}.native-link{text-decoration:underline;text-underline-offset:4px}


@media(max-width:700px){.totals{grid-template-columns:1fr;padding:19px;gap:18px}.totals div{display:flex;justify-content:space-between;align-items:baseline;gap:16px}.totals strong{margin:0;font-size:23px}.pricing-grid{grid-template-columns:1fr}.flow-question .question-options{grid-template-columns:1fr 1fr}.flow-summary>div{display:block}.flow-summary dd{margin-top:8px}}


@media(max-width:600px){.flow-area{padding:15px 0 76px}.flow-card{padding:25px 19px}.flow-card h2{font-size:25px}.flow-top{display:block}.flow-top .step-label{margin-top:5px}.flow-question legend{font-size:23px}.flow-question .question-options{grid-template-columns:1fr}.choice{min-height:54px}.selection-grid{grid-template-columns:1fr}.price-card{padding:24px}.price-calculator{padding:24px 19px}.price-example{padding:18px}.price-example strong{font-size:17px}.flow-controls{gap:12px}.flow-controls .button{padding:12px 17px;font-size:15px;min-height:52px}.flow-controls .button:last-child{flex:1}.sample-document{padding:21px}.mail-preview{padding:20px}.special-page{padding-bottom:0}.special-page main{padding-bottom:78px}.demo-badge{font-size:10px}.process-list{display:grid;grid-template-columns:1fr 1fr}.page-heading p{font-size:16px}}





[hidden]{display:none!important}.online-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.online-card{border:1px solid var(--line);background:#fff;padding:26px;min-width:0}.online-card h2,.online-card h3{font-size:25px;line-height:1.6;margin:0 0 15px}.online-card p{margin:10px 0 22px;font-size:16px}.online-card .button{width:100%;gap:15px;font-size:15px}.portal-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:36px;align-items:start}.portal-sidebar{border:1px solid var(--line);background:var(--ivory);padding:15px}.portal-sidebar button{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);min-height:52px;padding:12px;background:transparent;color:var(--navy);cursor:pointer}.portal-sidebar button[aria-selected="true"]{background:var(--navy);color:white}.portal-panel{border:1px solid var(--line);padding:30px;min-width:0}.portal-panel h2{font-size:30px;margin-top:0;line-height:1.5}.portal-panel h3{font-size:23px;line-height:1.6;margin-top:32px}.portal-panel p{font-size:16px}.portal-actions{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0}.portal-actions .button{gap:18px;font-size:15px;min-height:52px}.portal-steps{padding:0;list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:25px 0}.portal-steps li{padding:18px 12px;border:1px solid var(--line);font-size:14px;line-height:1.7;min-width:0}.portal-steps li[aria-current="step"]{background:var(--navy);color:#fff;border-color:var(--navy)}.portal-steps strong{display:block;font-size:20px;margin-bottom:8px;font-weight:500}.file-list{padding-left:23px;overflow-wrap:anywhere}.file-list li{padding:8px 0}.status-pill{display:inline-block;background:var(--ivory);border:1px solid var(--line);padding:4px 11px;font-size:13px}.native-detail{border-top:1px solid var(--line);padding:20px 0}.native-detail summary{min-height:48px;cursor:pointer;display:flex;align-items:center;font-weight:600}.document-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:24px 0}.document-preview{border:1px solid var(--line);padding:24px;background:#fafaf7}.document-preview h3{font-size:23px;margin:0 0 18px}.unconfirmed{font-size:16px;color:var(--muted)}.action-row{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0}.action-row button,.action-row a{min-height:52px;font-size:15px}.memory-state{padding:15px 18px;border-left:3px solid var(--gold);background:var(--ivory);font-size:15px;margin:20px 0}.online-section{padding:30px 0 70px}.online-section h2{line-height:1.6}.online-section .field input,.online-section .field textarea,.online-section .field select{font-size:16px}.table-scroll{max-width:100%;overflow:auto}.management-table{width:100%;border-collapse:collapse;font-size:16px}.management-table td,.management-table th{padding:17px 14px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}.management-table th{background:var(--ivory);font-weight:600}.management-table button{font-size:14px;padding:10px 15px;min-height:48px;min-width:75px;background:white;border:1px solid var(--navy);color:var(--navy);cursor:pointer}.management-toolbar{display:grid;grid-template-columns:1fr 220px;gap:20px}.management-toolbar .field{margin-top:0}.demo-step{margin:15px 0 25px;font-size:14px;color:var(--muted)}.demo-result{padding:28px;background:var(--ivory);border:1px solid var(--line);margin:26px 0}.demo-result h2{font-size:28px;margin-top:0}.demo-result dl>div{padding:14px 0;border-bottom:1px solid var(--line)}.demo-result dt{font-weight:600}.demo-result dd{margin:5px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.empty-note{color:var(--muted);font-size:15px}.button-row{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0}.button-row .button{min-height:52px;font-size:15px;gap:18px}.flow-area .content-wrap{min-width:0}.flow-panel{scroll-margin-top:24px}.report-table{width:100%;border-collapse:collapse}.report-table th,.report-table td{border-bottom:1px solid var(--line);padding:18px 12px;text-align:left;font-size:16px}.report-table th{width:40%;font-weight:500}.guidance-copy{max-width:760px}.guidance-copy p{font-size:16px}.guide-number{font:30px Georgia,serif;color:#957b44}.qs-group{border-top:1px solid var(--line);padding-top:25px;margin-top:25px}.qs-group h2{font-size:27px}.answer-note{font-size:15px;color:var(--muted)}.totals strong{white-space:normal;font-size:22px}.totals div{min-width:0}.online-section button:focus-visible,.portal-sidebar button:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.heading-label{font-size:13px;color:#846b37}.online-section form{margin:0}.material-field input[type="file"]{padding:13px;white-space:normal;overflow:hidden;max-width:100%}.sp-fixed button{min-height:58px}.demo-badge{right:12px;bottom:75px}.special-page main{padding-bottom:32px}


@media(max-width:950px){.portal-layout{grid-template-columns:1fr}.portal-sidebar{display:flex;overflow:auto;gap:5px}.portal-sidebar button{width:auto;flex-shrink:0;white-space:nowrap;border:0;min-height:52px}.online-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}


@media(max-width:600px){.online-section{padding:15px 0 74px}.online-grid,.document-grid{grid-template-columns:1fr}.online-card,.portal-panel{padding:24px 19px}.portal-panel h2{font-size:27px}.portal-panel h3{font-size:23px}.portal-layout{gap:20px}.portal-steps li{padding:15px 12px}.portal-steps strong{font-size:19px}.portal-actions,.action-row,.button-row{flex-direction:column}.portal-actions .button,.action-row .button,.button-row .button{width:100%;justify-content:space-between}.management-toolbar{grid-template-columns:1fr;gap:5px}.management-table{min-width:510px}.management-table th,.management-table td{padding:14px 10px}.demo-result{padding:24px 20px}.report-table th,.report-table td{padding:15px 6px}.document-preview{padding:21px}.special-page main{padding-bottom:78px}.memory-state{font-size:14px}.totals div{display:block}.totals strong{font-size:22px;margin-top:8px}}






.price-scope{font-size:14px;color:var(--muted)}.approved-tag{display:inline-block;background:#eef0e9;border:1px solid #cbd1c5;padding:5px 12px;font-size:14px}.package-panel{border:1px solid var(--gold);background:#faf6eb;padding:30px;margin:28px 0}.package-panel h2{font-size:30px;margin:0 0 18px}.package-price{font-size:39px;font-weight:500;margin:10px 0}.package-price small{font-size:16px}.package-description{font-size:16px}.package-panel .button{min-height:52px}.price-card ul{padding-left:20px;font-size:16px;line-height:1.9}.price-card .service-name{min-height:65px}.pricing-grid{gap:20px}.price-card .price-amount{font-size:30px;font-weight:500;margin:12px 0}.price-conditions{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:36px 0}.price-conditions h2{font-size:26px}.monthly-contents{padding:25px;border:1px solid var(--line);margin:30px 0}.monthly-contents h2{font-size:28px}.monthly-contents ul{padding-left:23px;columns:2;column-gap:35px}.monthly-contents li{break-inside:avoid;margin-bottom:11px}.approved-fees{width:100%;border-collapse:collapse}.approved-fees th,.approved-fees td{text-align:left;padding:15px;border-bottom:1px solid var(--line);font-size:16px;vertical-align:top}.approved-fees th{font-weight:500;width:55%}.price-discount{font-size:18px;color:#785f2d;margin:15px 0}.two-price-total{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:24px;margin:26px 0;background:var(--ivory)}.two-price-total span{display:block;font-size:15px}.two-price-total strong{display:block;font-size:29px;font-weight:500;margin-top:9px;overflow-wrap:anywhere}.support-choice{margin:23px 0;border-top:1px solid var(--line);padding-top:23px}.support-choice .service-choice{min-height:80px}.ai-main{padding:58px 0;background:var(--ivory)}.ai-main h1{font-size:clamp(31px,3.5vw,48px);line-height:1.55;max-width:900px;margin:10px 0 25px}.ai-main p{font-size:17px;max-width:820px}.ai-panel{background:white;border:1px solid var(--line);padding:30px}.ai-demo-chat{max-width:690px;margin:35px 0}.ai-demo-line{background:#eef0f3;padding:18px 22px;margin:14px 0;font-size:16px}.ai-demo-line.you{background:#f7f3e8;margin-left:55px}.ai-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.ai-service-card{padding:27px;border:1px solid var(--line);background:white}.ai-service-card h3{font-size:25px;line-height:1.6;margin-top:0}.ai-service-card p{font-size:16px}.ai-current-note{font-size:14px;color:var(--muted);margin-top:20px}.ai-price-strip{background:var(--navy);color:#fff;padding:34px;margin-top:35px}.ai-price-strip h2{font-size:29px;margin:0 0 20px}.ai-price-strip p{font-size:20px}.ai-price-strip .button{background:#fff;color:var(--navy);border-color:#fff}.approved-preview-note{padding:16px 20px;background:var(--ivory);border-left:3px solid var(--gold);font-size:15px;margin:25px 0}


@media(max-width:600px){.package-panel{padding:25px 20px}.package-panel h2{font-size:26px}.package-price{font-size:33px}.price-conditions,.two-price-total{grid-template-columns:1fr}.monthly-contents{padding:22px}.monthly-contents ul{columns:1}.two-price-total{padding:22px;gap:15px}.two-price-total strong{font-size:27px}.price-card .service-name{min-height:0}.approved-fees th,.approved-fees td{padding:13px 6px}.ai-main{padding:38px 0}.ai-main h1{font-size:32px}.ai-main p{font-size:16px}.ai-service-grid{grid-template-columns:1fr}.ai-panel,.ai-service-card{padding:24px 20px}.ai-demo-line.you{margin-left:22px}.ai-price-strip{padding:28px 22px}.ai-price-strip h2{font-size:26px}.ai-price-strip p{font-size:18px}}




#ai-character-demo{background:#f7f3ec;border-top:1px solid #e7e1d6;border-bottom:1px solid #e7e1d6}#ai-character-demo .ai-v8-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:70px;align-items:start}#ai-character-demo .ai-v8-copy{padding-top:26px}#ai-character-demo .ai-v8-label{font-size:13px;letter-spacing:.06em;color:#8b713f}#ai-character-demo h2{font-size:clamp(27px,3vw,39px);line-height:1.65;margin:15px 0 24px}#ai-character-demo .ai-v8-copy p{font-size:16px;line-height:1.95;margin-bottom:24px}#ai-character-demo .ai-v8-copy .button{min-height:54px;gap:20px;padding:14px 20px;font-size:14px;width:100%}#ai-character-demo .ai-v8-copy .ai-v8-note,#ai-character-demo .ai-v8-note{font-size:12px;line-height:1.9;color:#687181;margin:17px 0 0}#ai-character-demo .ai-v8-player{min-width:0}#ai-character-demo .ai-v8-phone{max-width:530px;margin:0 auto;border:1px solid #d5dbe3;border-radius:20px;background:#f1f4f7;overflow:hidden;box-shadow:0 18px 45px #1f2a4410}#ai-character-demo .ai-v8-phone-head{display:flex;gap:13px;align-items:center;background:#1f2a44;color:white;padding:20px 23px}#ai-character-demo .ai-v8-faces{display:flex;padding-right:8px;flex:none}#ai-character-demo .ai-v8-faces img{width:39px;height:39px;border-radius:100%;border:2px solid #fff}#ai-character-demo .ai-v8-faces img+img{margin-left:-10px}#ai-character-demo .ai-v8-phone-head strong{font-size:15px;display:block}#ai-character-demo .ai-v8-phone-head small{display:block;font-size:10px;color:#dce3ed}#ai-character-demo .ai-v8-typing{margin-left:auto;color:#dcc18d;letter-spacing:2px}#ai-character-demo .ai-v8-transcript{padding:22px}#ai-character-demo .ai-v8-step{margin:0 0 14px;transition:background-color .25s,box-shadow .25s,transform .25s}#ai-character-demo .ai-v8-step.is-current{box-shadow:0 0 0 2px #b89b5e;transform:translateY(-2px)}#ai-character-demo .ai-v8-visitor{max-width:85%;margin-left:auto;padding:11px 14px;background:#e2e7ee;border-radius:10px 0 10px 10px}#ai-character-demo .ai-v8-visitor>span{font-size:10px;color:#596779}#ai-character-demo .ai-v8-step p{font-size:14px;line-height:1.85;margin:6px 0 0}#ai-character-demo .ai-v8-answer{padding:15px;background:#fff;border:1px solid #dce2e9;border-radius:0 11px 11px 11px;max-width:94%}#ai-character-demo .ai-v8-speaker{display:flex;gap:9px;align-items:center}#ai-character-demo .ai-v8-speaker img{width:31px;height:31px;border-radius:50%}#ai-character-demo .ai-v8-speaker strong{font-size:12px;line-height:1.5}#ai-character-demo .ai-v8-speaker small{font-size:9px;display:block;font-weight:400;color:#687181}#ai-character-demo .ai-v8-guide{padding:15px;border:1px solid #c9b581;background:#fcf8ec;border-radius:8px;margin-bottom:0}#ai-character-demo .ai-v8-guide>span,#ai-character-demo .ai-v8-guide small{font-size:10px;display:block;color:#75623c}#ai-character-demo .ai-v8-guide strong{font-size:14px;display:flex;justify-content:space-between;margin:4px 0}#ai-character-demo .ai-v8-controls{max-width:530px;margin:20px auto 0}#ai-character-demo .ai-v8-button-row{display:flex;gap:10px}#ai-character-demo button{min-height:48px;border:1px solid #1f2a44;border-radius:5px;padding:11px 18px;background:#1f2a44;color:white;font-size:14px;cursor:pointer}#ai-character-demo button+button{background:transparent;color:#1f2a44}#ai-character-demo button:disabled{opacity:.5;cursor:default}#ai-character-demo .ai-v8-progress-label{display:block;font-size:10px;color:#687181;margin-top:15px}#ai-character-demo progress{display:block;width:100%;height:5px;margin:7px 0 10px;accent-color:#b89b5e}#ai-character-demo #ai-demo-status{font-size:12px;line-height:1.8;margin:0;min-height:44px;color:#596779}#ai-character-demo.is-playing .ai-v8-typing{animation:aiV8Typing 1s ease-in-out infinite}@keyframes aiV8Typing{50%{opacity:.35}}
@media(max-width:950px){#ai-character-demo .ai-v8-layout{grid-template-columns:1fr;gap:30px}#ai-character-demo .ai-v8-copy{padding-top:0}#ai-character-demo .ai-v8-copy .button{width:auto}#ai-character-demo .ai-v8-copy p{max-width:700px}#ai-character-demo h2 br{display:none}}
@media(max-width:600px){#ai-character-demo .ai-v8-phone-head{padding:17px 16px}#ai-character-demo .ai-v8-phone-head strong{font-size:13px}#ai-character-demo .ai-v8-transcript{padding:17px 14px}#ai-character-demo .ai-v8-step p{font-size:14px}#ai-character-demo .ai-v8-answer{max-width:96%;padding:13px}#ai-character-demo .ai-v8-visitor{max-width:90%}#ai-character-demo .ai-v8-copy .button{font-size:13px;width:100%;gap:10px;padding:13px 14px}#ai-character-demo .ai-v8-button-row button{padding:11px 12px;font-size:13px}#ai-character-demo .ai-v8-faces img{width:34px;height:34px}}
@media(prefers-reduced-motion:reduce){#ai-character-demo .ai-v8-step{transition:none!important;transform:none!important}#ai-character-demo .ai-v8-typing{animation:none!important}}

/* 第10回・社長直接指示の文字/余白点検。内容・金額・機能は変更しない。
   読み込みは親が該当ページへ統合。共通header/footerには適用しない。 */

/* 支払案内の本文中リンクが通常の文章と見分けられるようにする。 */
body[data-page="online-contract"] main a.native-link {
  text-decoration-line: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .22em;
}

/* 一覧の主CTAは同じ行の下端へ。AIだけの追加案内は同じ行の隣へ置く。
   DOM/タブ順は維持し、広い画面だけ二列の案内欄を使う。 */
@media (min-width: 761px) {
  body[data-page="services"] #service-list .v6-service-card {
    display: grid;
    grid-template-columns: max-content minmax(0, 1fr);
    grid-template-rows: auto auto 1fr auto auto;
    column-gap: 14px;
    align-items: start;
  }
  body[data-page="services"] #service-list .v6-service-card > .v3-eyebrow,
  body[data-page="services"] #service-list .v6-service-card > h2,
  body[data-page="services"] #service-list .v6-service-card > p {
    grid-column: 1 / -1;
  }
  body[data-page="services"] #service-list .v6-service-card > .v3-btn {
    grid-column: 1;
    grid-row: 5;
    align-self: end;
    margin: 0 !important;
  }
  body[data-page="services"] #service-list .v6-service-card > .v5-text-link {
    grid-column: 2;
    grid-row: 5;
    align-self: end;
    display: flex;
    align-items: center;
    min-height: 54px;
    min-width: 0;
    margin: 0 !important;
    font-size: 13px;
    line-height: 1.6;
  }
}

/* 横長の実画面を固有の比率で表示し、4:3枠による大きな白余白を除く。 */
body[data-page="website"] .service-hero figure img.real-hero {
  height: auto;
  aspect-ratio: auto;
  object-fit: contain;
}

/* 同じボタンに重なる二つ目の矢印を抑える */
.v7-trial-hero > span[aria-hidden="true"]{display:none}

/* SPで見出し末尾の一文字だけが残らないよう、2見出しの行を均等にする。 */
@media (max-width: 760px) {
  body[data-page="system"] main .v3-wrap:has(> .v3-grid.four) > h2,
  body[data-page="system"] main .v4-benefits > h3 {
    text-wrap: balance;
  }
}

/* 一覧の長いしくみ名がSPで一文字だけの次行にならないようにする。 */
@media (max-width: 760px) {
  body[data-page="services"] #service-list .v6-service-card > h2 {
    text-wrap: balance;
  }
}

/* 5列の申込手順で最後の「し」だけが次行に残るのを防ぐ。 */
@media (min-width: 761px) {
  body[data-page="system"] main .v4-flow-five > .v4-flow-step:last-child > h3 {
    text-wrap: balance;
  }
}

/* SPのよさ一覧で「つなぐ」の最後の一文字だけを残さない。 */
@media (max-width: 760px) {
  body[data-page="system"] main .v5-benefit-six h4 {
    text-wrap: balance;
  }
}

/* 語の途中では切らず、「メールマガジン」を一まとまりで改行する。 */
@media (max-width: 760px) {
  body[data-page="services"] #service-list .v6-service-card > h2 > .spacing-no-break {
    white-space: nowrap;
  }
}

/* AI紹介のFAQを一項目ずつ読みやすい間隔へ。操作とマーカーは維持。 */
body[data-page="ai-chat"] main .section > details {
  border-bottom: 1px solid #d7dce0;
}
body[data-page="ai-chat"] main .section > details > summary {
  min-height: 52px;
  padding: 14px 0;
  line-height: 1.8;
}
body[data-page="ai-chat"] main .section > details > p {
  margin-top: 0;
  margin-bottom: 18px;
}
@media (max-width: 760px) {
  body[data-page="ai-chat"] main .ai-service-card > h3,
  body[data-page="ai-chat"] main .ai-demo-chat > h2 {
    text-wrap: balance;
  }
}

/* 同じ横長の公開ヘッダーを使う守り紹介でも、原画像の固有比率を保つ。 */
body[data-page="support"] .service-hero figure img.real-hero {
  height: auto;
  aspect-ratio: auto;
  object-fit: contain;
}
@media (max-width: 760px) {
  body[data-page="online-contract"] main .v5-box > h3 {
    text-wrap: balance;
  }
}

/* SPの初期/毎月の料金は縦に並べ、円・税込の不自然な細切れを防ぐ。 */
@media (max-width: 760px) {
  body[data-page="follow"] main .follow-price-card {
    grid-template-columns: minmax(0, 1fr);
  }
  body[data-page="follow"] main .follow-price-card > div + div {
    border-left: 0;
    border-top: 1px solid #deded8;
  }
  body[data-page="follow"] main .follow-price-card strong {
    display: block;
    font-size: clamp(22px, 7.2vw, 28px);
    white-space: nowrap;
  }
}

/* content-seo-history-word-groups: 元の意味のまとまりで3行にし、指定文言を保持。 */
body[data-page="content-seo"] main .seo-history h2 br {
  display: initial;
}
@media (max-width: 760px) {
  body[data-page="content-seo"] main .seo-plans .button {
    padding-inline: 14px;
    gap: 12px;
    font-size: 13px;
  }
}

/* columns-visible-orphans: 記事一覧と本文の見出し末尾だけを次行へ残さない。 */
@media (max-width: 760px) {
  body[data-page="columns"] main .column-body h3,
  body[data-page="columns"] main .sidebar > h2,
  body[data-page="article"] main .article-title,
  body[data-page="article"] main .column-body h3,
  body[data-page="article"] main .sidebar > h2 {
    text-wrap: balance;
  }
  body[data-page^="industry-"] main .ex9-button[href="ai-chat-trial.html"] {
    padding-inline: 16px;
    gap: 12px;
    font-size: 14px;
    text-wrap: balance;
  }
}

/* column-hub-card-orphans: 一覧と同じ記事カードの孤立末尾を分類内でも抑える。 */
@media (max-width: 760px) {
  body[data-page^="columns-"] main .column-body h3,
  body[data-page="columns-follow"] main .column-category-empty-v9 > h3,
  body[data-page="columns-content-seo"] main .column-hub-header-v9 h1 {
    text-wrap: balance;
  }
}
