:root{--paper:#F8F6F0;--white:#FFFFFF;--green:#1F8E63;--deep:#176B4B;--pale:#E9F2ED;--ink:#231815;--muted:#5C534E;--accent:#C05A2E;font-family:Helvetica,"Helvetica Neue",Arial,"Yu Gothic Medium","游ゴシック Medium","Yu Gothic M",YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:var(--ink);background:var(--white);font-size:16px;font-weight:500;line-height:2;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;overflow-wrap:break-word;line-break:strict}h1,h2,h3,p,figure,dl,ol,ul{margin:0}h1,h2,h3,strong,b{font-weight:700}h1,h2,h3,nav{font-feature-settings:"palt" 1}h2{font-size:clamp(1.75rem,3.5vw,2.75rem);line-height:1.5;letter-spacing:-.03em;margin-bottom:1.5rem}h3{font-size:1.5rem;line-height:1.5;margin-bottom:1rem}p+p{margin-top:1rem}a{color:var(--deep);text-underline-offset:.28em;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}a:focus-visible,summary:focus-visible{outline:3px solid var(--deep);outline-offset:5px}img{max-width:100%;height:auto;display:block}svg{display:block;max-width:100%}button,summary{font:inherit}summary{cursor:pointer;min-height:48px}section{scroll-margin-top:1.5rem}main:focus{outline:none}.cof-wrap{width:min(1120px,calc(100% - 96px));margin-inline:auto}.cof-section{padding:96px 0}.cof-white{background:var(--white)}.cof-pale{background:var(--pale)}.cof-kicker{font-size:1rem;font-weight:700;letter-spacing:.08em;margin-bottom:24px}.cof-note{font-size:1rem;color:var(--muted)}.cof-text{max-width:680px}.cof-split{display:grid;grid-template-columns:1fr 1fr;gap:64px}.cof-split>*{min-width:0}.cof-link{display:inline-flex;align-items:center;gap:16px;min-height:48px;font-weight:700;margin-top:24px}.cof-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:60px;max-width:100%;padding:16px 28px;border:1px solid var(--deep);background:var(--deep);color:var(--white);border-radius:999px;font-weight:700;line-height:1.5;text-decoration:none}.cof-btn span{flex-shrink:0}.cof-btn:hover{background:var(--ink);color:var(--white);border-color:var(--ink);text-decoration:none}.cof-btn-light{background:var(--white);color:var(--deep);border-color:var(--white)}.cof-btn-light:hover{background:var(--pale);color:var(--deep);border-color:var(--pale)}.cof-skip{position:absolute;left:24px;top:-200px;padding:16px;background:var(--white);z-index:10}.cof-skip:focus{top:16px}
/* 白い余白と深緑の宣言を全ページの入口に通す。 */
.cof-header{background:var(--white)}.cof-header-inner{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:32px}.cof-logo{display:flex;align-items:center;width:140px;flex-shrink:0}.cof-logo img{width:140px;max-height:86px;object-fit:contain}.cof-nav{display:flex;align-items:center;gap:24px}.cof-nav a{display:flex;align-items:center;min-height:48px;text-decoration:none;font-weight:700;color:var(--ink)}nav a[aria-current="page"]{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:8px}.cof-menu{display:none}.cof-hero{background:var(--deep);color:var(--white);padding:56px 0 32px}.cof-hero .cof-kicker{text-align:center}.cof-hero h1{text-align:center;line-height:1.25;letter-spacing:-.04em}.cof-flag-first{display:block;font-size:clamp(1.75rem,3vw,2.5rem);font-weight:500}.cof-flag-main{display:block;font-size:clamp(2.125rem,7.5vw,6rem);margin:.2em 0}.cof-flag-last{display:block;font-size:clamp(2rem,4.5vw,3.5rem)}.cof-hero-intro{text-align:center;margin-top:32px;font-size:1.125rem}.cof-hero-bottom{border-top:1px solid var(--pale);margin-top:40px;padding-top:32px;display:flex;align-items:center;justify-content:space-between;gap:32px}.cof-hero-bottom strong{display:block;font-size:1.25rem}.cof-hero-meta{text-align:center;margin-top:24px}.cof-subhero{background:var(--deep);color:var(--white);padding:32px 0 64px}.cof-subhero h1{font-size:clamp(2.5rem,5vw,4rem);line-height:1.4;letter-spacing:-.03em;margin:24px 0}.cof-subhero .cof-text{font-size:1.125rem}.cof-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:24px}.cof-breadcrumb a{color:var(--white);min-height:48px;display:inline-flex;align-items:center}.cof-breadcrumb span:before{content:"/";margin-right:24px}.cof-section-head{margin-bottom:48px}.cof-map-conclusion{max-width:680px;margin:40px auto 0}
/* 図解1：6要素の分岐。文字はHTML、線はインラインSVG。 */
.cof-work-map{display:grid;grid-template-columns:25% 20% 55%;grid-template-rows:repeat(5,56px);row-gap:20px;max-width:900px;margin-inline:auto;align-items:center}.cof-work-from{grid-column:1;grid-row:1/6;border:1px solid var(--green);border-radius:8px;background:var(--pale);font-size:1.5rem;font-weight:700;text-align:center;padding:16px}.cof-branches{grid-column:2;grid-row:1/6;width:100%;height:360px;overflow:visible;fill:none;stroke:var(--green);stroke-width:1.5;vector-effect:non-scaling-stroke}.cof-branches path{vector-effect:non-scaling-stroke}.cof-branches-mobile{display:none}.cof-work-destination{grid-column:3;height:56px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--green);border-radius:8px;background:var(--white);font-weight:700;font-size:1.125rem}.cof-work-destination span{font-size:1rem;font-weight:500}.cof-emphasis{background:var(--deep)!important;color:var(--white);border-color:var(--deep)!important}
/* 3つの相談は緑の罫で軽く分け、箱を増やさない。 */
.cof-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:40px}.cof-entry,.cof-group{border-top:1px solid var(--green);padding-top:24px;min-width:0}.cof-entry h3{color:var(--deep);font-size:1.75rem}.cof-entry>p:first-of-type{font-weight:700;font-size:1.125rem;line-height:1.8}.cof-theme{display:flex;flex-wrap:wrap;gap:16px 32px;margin-top:32px;align-items:center}.cof-theme span{border-bottom:1px solid var(--green)}
/* 実績は大きな数字ひとつと、同じ縮尺の横棒。 */
.cof-proof-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:80px;align-items:center;margin:48px 0 32px}.cof-proof-number{color:var(--accent);font-size:128px;font-weight:700;line-height:1.05;letter-spacing:-.06em;margin:12px 0 16px}.cof-proof-number span{font-size:32px;letter-spacing:0;margin-left:12px}.cof-chart figcaption{font-weight:700;margin-bottom:24px}.cof-bar-row{display:grid;grid-template-columns:80px 1fr 40px;gap:16px;align-items:center;margin:12px 0;line-height:1.5}.cof-bar-row svg{width:100%;height:24px;overflow:visible}.cof-data-bar{fill:var(--green)}.cof-bar-row strong{text-align:right;white-space:nowrap;font-size:1rem}.cof-record-context{margin-top:32px}.cof-h-subhead{margin-top:64px}
/* 診断の説明は工程へ置き換え、紙の見本を実物に近く読む。 */
.cof-diagnosis-head{max-width:760px}.cof-diagnosis-head>p{max-width:680px}.cof-price{color:var(--accent);font-weight:700;font-size:40px;line-height:1.5;white-space:nowrap;margin:24px 0}.cof-price span{font-size:24px}.cof-mini-flow{margin:48px 0}.cof-flow-nodes{display:grid;grid-template-columns:1fr 32px 1fr 32px 1fr 32px 1fr;align-items:stretch;gap:8px}.cof-flow-node{min-width:0;padding:24px 16px;background:var(--white);border:1px solid var(--green);border-radius:8px;display:flex;flex-direction:column;justify-content:flex-start;gap:16px;line-height:1.8}.cof-flow-node strong{font-size:1.125rem;line-height:1.6}.cof-flow-node>span:not(.cof-step){font-size:1rem}.cof-step{font-size:24px;color:var(--deep);line-height:1.5}.cof-flow-arrow{width:32px;height:32px;align-self:center;stroke:var(--green);stroke-width:1.5;fill:none}.cof-mini-flow figcaption{margin-top:16px;color:var(--muted)}.cof-sheets{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,400px),1fr));gap:32px;margin-top:24px;padding:32px;background:var(--paper)}.cof-sheet{background:var(--white);border-top:4px solid var(--deep);padding:32px;min-width:0}.cof-sheet>p{color:var(--muted)}.cof-sheet h3{margin:16px 0}.cof-sheet-row{padding:20px 0;border-top:1px solid var(--pale)}.cof-sheet-row strong{font-size:1.125rem}.cof-sheet-row dl{display:block;margin-top:8px}.cof-sheet-row dt{font-weight:700;float:left;clear:left;width:3em}.cof-sheet-row dd{margin-left:3em}.cof-calendar{list-style:none;padding:0;margin:24px 0 0}.cof-calendar li{display:grid;grid-template-columns:5em 1fr;gap:12px;border-bottom:1px solid var(--pale);padding:16px 0;line-height:1.8}.cof-calendar b{color:var(--deep)}.cof-calendar small{display:block;color:var(--muted);font-size:1rem}.cof-plan{margin-top:24px;border-bottom:1px solid var(--green)}.cof-plan summary{padding:12px 0;color:var(--deep);font-weight:700}.cof-after-cta{display:flex;flex-wrap:wrap;align-items:center;gap:16px 32px;margin-top:32px}.cof-after-cta p{margin:0}.cof-after-cta .cof-link{margin:0}.cof-service-work{margin-bottom:80px}.cof-questions{list-style:none;counter-reset:question;padding:0;margin:40px 0 24px}.cof-questions>li{counter-increment:question;border-top:1px solid var(--green);padding:24px 0 24px 64px;position:relative;max-width:900px}.cof-questions>li:before{content:counter(question,decimal-leading-zero);position:absolute;left:0;top:24px;color:var(--deep);font-size:24px;font-weight:700;line-height:1.5}.cof-questions p{margin-top:16px}.cof-meeting-copy{border-top:1px solid var(--green);padding-top:24px}.cof-table{width:100%;border-collapse:collapse;margin-top:32px;text-align:left;font-size:1rem;line-height:1.8;table-layout:fixed}.cof-table th,.cof-table td{padding:24px 16px;border-bottom:1px solid var(--green);vertical-align:top;overflow-wrap:break-word}.cof-table thead{background:var(--pale)}.cof-table th:first-child{width:32%}.cof-table th{font-weight:700}.cof-table td p{color:var(--muted);margin-top:8px}.cof-table-compact th,.cof-table-compact td{padding:20px 16px}.cof-table-compact th:first-child{width:20%}.cof-table-compact th:last-child{width:24%}.cof-fit-details{margin-top:48px;border-top:1px solid var(--green);border-bottom:1px solid var(--green)}.cof-fit-details summary{padding:16px 0;font-weight:700;color:var(--deep)}.cof-fit-details>div{padding:24px 0 32px}.cof-fit-details h2{display:none}.cof-fit ul{padding-left:24px}.cof-fit li{margin:16px 0}.cof-method-list>div{padding:24px 0;border-top:1px solid var(--green)}.cof-method-list dt{font-size:1.5rem;font-weight:700;line-height:1.5;margin-bottom:16px}.cof-method-list dd{margin:8px 0 0}.cof-agent-section{margin:48px 0}.cof-agent-section h3{font-size:32px}.cof-agent{margin-top:32px}.cof-foundation{margin-top:16px;border:1px solid var(--green);border-radius:8px;padding:24px;background:var(--white);display:flex;justify-content:center;gap:24px;flex-wrap:wrap}.cof-boundaries{border-top:1px solid var(--green);padding-top:32px}.cof-boundaries p{max-width:800px}
/* 研修の中心を1つだけ示す。 */
.cof-protection{margin:32px 0 16px}.cof-protection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.cof-protection-node{border:1px solid var(--green);border-radius:8px;background:var(--white);padding:24px 16px;display:flex;flex-direction:column;gap:16px;align-items:flex-start;line-height:1.8}.cof-protection-node strong{font-size:1.25rem}.cof-protection-node svg{width:48px;height:40px;fill:none;stroke:var(--green);stroke-width:1.5}.cof-protection-node.cof-emphasis svg{stroke:var(--white)}.cof-protection-node>b{margin-top:auto;font-size:1rem}.cof-protection figcaption{margin-top:24px;font-size:1rem;font-weight:700;max-width:700px}.cof-date{font-size:1.25rem;font-weight:700;line-height:1.8}.cof-profile{display:grid;grid-template-columns:120px 1fr;column-gap:40px;row-gap:32px;margin-top:40px;align-items:center}.cof-profile img{width:120px;height:120px;object-fit:cover;border-radius:50%;grid-row:1}.cof-profile-copy{grid-column:2;max-width:680px}.cof-profile h3{margin-bottom:8px;font-size:2rem}.cof-company-data{margin-top:40px}.cof-company-data>div{display:grid;grid-template-columns:180px 1fr;gap:32px;padding:24px 0;border-top:1px solid var(--green)}.cof-company-data dt{font-weight:700}.cof-company-data dd{margin:0}.cof-faq{max-width:880px;margin-top:40px}.cof-faq>details{border-top:1px solid var(--green)}.cof-faq>details:last-child{border-bottom:1px solid var(--green)}.cof-faq summary{padding:24px 48px 24px 0;position:relative;font-weight:700;list-style:none}.cof-faq summary::-webkit-details-marker{display:none}.cof-faq summary:after{content:"＋";position:absolute;right:8px;top:24px;color:var(--deep);font-size:24px;line-height:1.3}.cof-faq details[open] summary:after{content:"−"}.cof-faq details>p{max-width:720px;margin:0 24px 24px 0}.cof-contact-process{max-width:680px;margin-top:32px}.cof-contact{background:var(--deep);color:var(--white);padding:64px 0}.cof-contact-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:64px;align-items:center}.cof-contact .cof-btn{margin:32px 0 24px}.cof-contact a{color:var(--white)}.cof-contact .cof-btn-light{color:var(--deep)}.cof-contact :focus-visible,.cof-subhero :focus-visible{outline-color:var(--white)}.cof-contacts>div{padding:16px 0;border-bottom:1px solid var(--green)}.cof-contacts dt{font-weight:700}.cof-contacts dd{margin:0}.cof-contacts a{min-height:48px;display:inline-flex;align-items:center;max-width:100%;font-size:1.25rem;overflow-wrap:anywhere;line-height:1.6}.cof-contact .cof-contacts>div{border-color:var(--pale)}#contact-methods .cof-btn{margin-top:32px}.cof-footer{padding:48px 0;background:var(--white)}.cof-footer-top{display:flex;justify-content:space-between;gap:40px;margin-bottom:32px}.cof-footer nav{display:flex;flex-wrap:wrap;align-content:flex-start;gap:8px 24px;max-width:50%}.cof-footer nav a{min-height:48px;display:inline-flex;align-items:center}.cof-copyright{font-size:1rem;color:var(--muted);margin-top:32px}
@media(max-width:950px){.cof-wrap{width:calc(100% - 48px)}.cof-nav{gap:16px}.cof-nav a{font-size:1rem}.cof-logo,.cof-logo img{width:112px}.cof-grid{gap:24px}.cof-split,.cof-contact-grid{gap:40px}.cof-proof-grid{gap:40px}.cof-flow-nodes{grid-template-columns:1fr 24px 1fr 24px 1fr 24px 1fr;gap:4px}.cof-flow-arrow{width:24px}.cof-flow-node{padding:16px 12px}.cof-sheets{padding:24px;gap:24px}.cof-sheet{padding:24px}}
@media(max-width:760px){.cof-nav{display:none}.cof-menu{display:block;position:relative}.cof-menu summary{display:flex;align-items:center;gap:16px;list-style:none;font-weight:700;min-height:48px;color:var(--ink)}.cof-menu summary::-webkit-details-marker{display:none}.cof-menu nav{position:absolute;right:0;top:100%;z-index:5;background:var(--white);padding:16px 24px;border:1px solid var(--green);border-radius:8px;width:min(288px,calc(100vw - 48px))}.cof-menu nav a{display:flex;min-height:48px;align-items:center;font-weight:700}.cof-menu[open] summary span{transform:rotate(45deg)}.cof-grid{grid-template-columns:1fr;gap:40px}.cof-split,.cof-contact-grid,.cof-proof-grid{grid-template-columns:1fr;gap:32px}.cof-section{padding:64px 0}.cof-flow-nodes{grid-template-columns:1fr;gap:8px}.cof-flow-node{padding:20px 24px;gap:8px}.cof-flow-node strong{font-size:1.25rem}.cof-flow-arrow{transform:rotate(90deg);justify-self:center;width:32px;height:32px}.cof-protection-grid{grid-template-columns:1fr;gap:16px}.cof-protection-node{padding:24px;display:grid;grid-template-columns:48px 1fr;gap:12px 16px}.cof-protection-node svg{grid-row:1/4}.cof-protection-node strong,.cof-protection-node>span,.cof-protection-node>b{grid-column:2}.cof-foundation{display:block;padding:24px}.cof-foundation>span{display:block;margin-top:8px}.cof-proof-number{font-size:104px}.cof-chart{max-width:560px}.cof-footer-top{display:block}.cof-footer nav{max-width:none;margin-top:24px}.cof-profile-copy{grid-column:1/-1}.cof-profile{grid-template-columns:88px 1fr;gap:24px}.cof-profile img{width:88px;height:88px}.cof-profile h3{font-size:1.5rem}.cof-table-compact th,.cof-table-compact td{padding:16px 8px}.cof-table-compact th:first-child{width:26%}.cof-table-compact th:last-child{width:26%}.cof-subhero .cof-text{font-size:1rem}}
@media(max-width:520px){.cof-wrap{width:calc(100% - 40px)}.cof-header-inner{min-height:78px}.cof-logo,.cof-logo img{width:108px}.cof-logo img{max-height:66px}.cof-hero{padding:32px 0 24px}.cof-hero .cof-kicker{letter-spacing:0;margin-bottom:24px}.cof-flag-first{font-size:24px}.cof-flag-main{font-size:clamp(32px,8.8vw,44px);letter-spacing:-.055em;margin:.35em 0}.cof-flag-last{font-size:32px}.cof-hero-intro{font-size:1rem;margin-top:24px}.cof-hero-bottom{display:block;margin-top:24px;padding-top:24px}.cof-hero-bottom strong{font-size:1.125rem}.cof-hero-bottom .cof-btn{width:100%;margin-top:24px}.cof-btn{padding:16px 20px;gap:12px}.cof-hero-meta{text-align:left;margin-top:24px}.cof-subhero{padding:24px 0 40px}.cof-subhero h1{font-size:40px}.cof-section-head{margin-bottom:32px}.cof-work-map{grid-template-columns:16px 32px 1fr;grid-template-rows:56px repeat(5,56px);row-gap:20px}.cof-work-from{grid-column:1/-1;grid-row:1;font-size:1.25rem;padding:8px}.cof-branches{display:none}.cof-branches-mobile{display:block;grid-column:1/3;grid-row:2/7;width:100%;height:360px;fill:none;stroke:var(--green);stroke-width:1.5;overflow:visible}.cof-branches-mobile path{vector-effect:non-scaling-stroke}.cof-work-destination{font-size:1rem;grid-column:3}.cof-map-conclusion{margin-top:32px}.cof-proof-grid{margin-top:32px}.cof-bar-row{grid-template-columns:72px 1fr 36px;gap:12px}.cof-price{font-size:32px}.cof-price span{font-size:24px}.cof-mini-flow{margin:32px 0}.cof-sheets{padding:16px;gap:24px}.cof-sheet{padding:20px 16px}.cof-sheet-row dl{line-height:2}.cof-calendar li{grid-template-columns:1fr;gap:8px}.cof-questions>li{padding-left:48px}.cof-questions>li:before{font-size:24px}.cof-table th,.cof-table td{padding:16px 8px}.cof-table:not(.cof-table-compact) th:first-child{width:38%}.cof-table-compact{line-height:1.8}.cof-table-compact th,.cof-table-compact td{padding:16px 6px}.cof-company-data>div{grid-template-columns:1fr;gap:8px}.cof-contact{padding:48px 0}.cof-contacts a{font-size:1.125rem}.cof-footer{padding:40px 0}.cof-footer nav{gap:8px 20px}.cof-h-subhead{margin-top:48px}.cof-service-work{margin-bottom:64px}}
@media(prefers-reduced-motion:no-preference){.cof-hero h1,.cof-subhero h1{animation:cof-arrive .65s ease-out}@keyframes cof-arrive{from{transform:translateY(10px)}to{transform:translateY(0)}}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* 初回照合の修正1回：深緑ヒーロー内のフォーカスを白で表示。 */
.cof-hero :focus-visible{outline-color:var(--white)}
/* 2026-10-15 申込みをフォームへ（Claude Code） */
.cof-apply-label{font-weight:700;margin-bottom:16px}
.cof-apply-steps{list-style:none;padding:0;margin:0;counter-reset:step}
.cof-apply-steps li{counter-increment:step;display:grid;grid-template-columns:48px 1fr;column-gap:16px;padding:16px 0;border-top:1px solid var(--pale)}
.cof-apply-steps li::before{content:"0" counter(step);grid-row:span 2;font-family:Helvetica,Arial,sans-serif;font-weight:700;font-size:1.5rem;line-height:1.4}
.cof-apply-steps strong{font-size:1.125rem;line-height:1.5}
.cof-apply-steps span{line-height:1.7}
.cof-form-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:64px;align-items:start}
.cof-form{display:grid;gap:24px;padding:40px;background:var(--paper);border-radius:16px}
.cof-field{display:grid;gap:8px;margin:0;padding:0;border:0;min-width:0}
.cof-field>label,.cof-choices legend{font-weight:700;line-height:1.6}
.cof-req,.cof-opt{display:inline-block;margin-left:8px;padding:0 8px;border-radius:999px;font-size:.875rem;line-height:1.7;font-weight:700;vertical-align:middle}
.cof-req{background:var(--deep);color:var(--white)}
.cof-opt{border:1px solid var(--muted);color:var(--muted)}
.cof-form input[type=text],.cof-form input[type=email],.cof-form input[type=tel],.cof-form select,.cof-form textarea{width:100%;min-height:52px;padding:12px 16px;border:1px solid var(--muted);border-radius:8px;background:var(--white);color:var(--ink);font:inherit;font-size:16px;line-height:1.6}
.cof-form textarea{min-height:136px;resize:vertical}
.cof-form input:focus-visible,.cof-form select:focus-visible,.cof-form textarea:focus-visible,.cof-form button:focus-visible{outline:3px solid var(--deep);outline-offset:2px}
.cof-choices legend{margin-bottom:8px;padding:0}
.cof-choices label,.cof-agree label{display:flex;gap:12px;align-items:flex-start;min-height:44px;padding:8px 0;line-height:1.7;cursor:pointer}
.cof-choices input,.cof-agree input{width:20px;height:20px;margin:4px 0 0;flex-shrink:0;accent-color:var(--deep)}
.cof-hint{color:var(--muted);font-size:.875rem;line-height:1.7}
.cof-form .cof-btn{margin:8px 0 0;justify-self:start;cursor:pointer;font:inherit;font-weight:700}
.cof-form-status:empty{display:none}
.cof-form-status{padding:16px;border-left:3px solid var(--deep);background:var(--pale);line-height:1.7}
.cof-form [aria-invalid=true]{border-color:var(--accent)}
.cof-form-alt{margin-top:32px;color:var(--muted)}
@media (max-width:768px){.cof-form-layout{grid-template-columns:1fr;gap:32px}.cof-form{padding:24px 20px}.cof-form .cof-btn{justify-self:stretch}}
.cof-req,.cof-opt{white-space:nowrap;flex-shrink:0}.cof-agree .cof-req{margin-top:2px}
/* 2026-10-15 AIを組み込んだメニュー（Claude Code） */
.cof-menu-intro{max-width:44rem;margin-bottom:40px}
.cof-menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.cof-menu-card{background:var(--white);border-radius:16px;padding:32px;display:grid;align-content:start;gap:16px;border-top:4px solid var(--deep)}
.cof-menu-no{font-family:Helvetica,Arial,sans-serif;font-weight:700;color:var(--green);font-size:1.5rem;line-height:1}
.cof-menu-card h3{font-size:1.5rem;line-height:1.5;margin:0}
.cof-menu-card h3 span{display:block;font-size:1rem;color:var(--muted)}
.cof-menu-lead{line-height:1.9}
.cof-menu-ai{background:var(--pale);border-radius:8px;padding:16px 20px}
.cof-menu-ai-label{font-weight:700;color:var(--deep);margin-bottom:8px}
.cof-menu-ai ul{margin:0;padding-left:1.25rem;line-height:1.8}
.cof-menu-ai li+li{margin-top:4px}
.cof-menu-out strong{display:block;font-size:.875rem;color:var(--muted)}
.cof-menu-note{font-size:.875rem;color:var(--muted);border-top:1px solid var(--pale);padding-top:12px}
.cof-menu-agent{margin-top:56px}
@media (max-width:768px){.cof-menu-grid{grid-template-columns:1fr}.cof-menu-card{padding:24px 20px}.cof-menu-agent{margin-top:40px}}
.cof-menu-links{margin-top:40px}
.cof-menu-links ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px}
.cof-menu-links li{border-bottom:1px solid var(--pale)}
.cof-menu-links a{display:flex;align-items:center;min-height:56px;padding:8px 0;color:var(--deep);font-weight:700;text-decoration:none}
.cof-menu-links a::after{content:"→";margin-left:auto;padding-left:16px}
@media (max-width:768px){.cof-menu-links ul{grid-template-columns:1fr}}
.cof-menu-wide{grid-column:1/-1;border-top-color:var(--ink)}
.cof-menu-wide-body{display:grid;grid-template-columns:1.2fr 1fr;gap:32px;align-items:start}
.cof-menu-wide-body>div:first-child{display:grid;gap:16px}
.cof-menu-note a{color:var(--deep);font-weight:700;margin-left:8px;white-space:nowrap}
@media (max-width:768px){.cof-menu-wide-body{grid-template-columns:1fr;gap:16px}}
/* 2026-10-15 トップの5つのメニュー */
.cof-home-menus{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px;margin:40px 0 24px}
.cof-home-menu{grid-column:span 2;position:relative;display:grid;align-content:start;gap:12px;padding:28px 28px 64px;background:var(--white);border-radius:16px;border-top:4px solid var(--deep);color:var(--ink);text-decoration:none}
.cof-home-menu:nth-child(4),.cof-home-menu:nth-child(5){grid-column:span 3}
.cof-home-menu:nth-child(5){border-top-color:var(--ink)}
.cof-home-menu strong{font-size:1.25rem;line-height:1.5}
.cof-home-menu-lead{line-height:1.8}
.cof-home-menu-ai{background:var(--pale);border-radius:8px;padding:12px 16px;font-size:.9375rem;line-height:1.7}
.cof-home-menu-ai b{display:block;color:var(--deep);font-size:.875rem}
.cof-home-menu-go{position:absolute;right:28px;bottom:20px;color:var(--deep);font-weight:700;font-size:1.25rem}
.cof-home-menu:hover{box-shadow:0 0 0 2px var(--deep) inset}
.cof-home-menu:hover strong{text-decoration:underline;text-underline-offset:4px}
.cof-home-menu:focus-visible{outline:3px solid var(--deep);outline-offset:4px}
@media (max-width:1000px){.cof-home-menus{grid-template-columns:repeat(2,minmax(0,1fr))}.cof-home-menu,.cof-home-menu:nth-child(4){grid-column:span 1}.cof-home-menu:nth-child(5){grid-column:1/-1}}
@media (max-width:600px){.cof-home-menus{grid-template-columns:1fr}.cof-home-menu,.cof-home-menu:nth-child(5){grid-column:auto;padding:24px 20px 56px}}
#menus.cof-paper-bg{background:var(--paper)}
/* 同意欄：文とリンクと必須の印を1つの段落として折り返す */
.cof-agree label{display:grid;grid-template-columns:20px 1fr;column-gap:12px;align-items:start;padding:16px 20px;background:var(--white);border:1px solid var(--muted);border-radius:8px;font-weight:500}
.cof-agree-text{display:block;line-height:1.8}
.cof-agree-text .cof-req{margin:0 8px 0 0;vertical-align:1px}
.cof-agree-text a{color:var(--deep);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.cof-agree input{margin-top:6px}
.cof-agree-text a{white-space:nowrap}
/* 2026-10-16 5つのメニュー：箱をやめ、ほかの節と同じ緑の罫と番号の一覧に */
.cof-menu-index{list-style:none;padding:0;margin:40px 0 24px;border-top:1px solid var(--green)}
.cof-menu-index>li,.cof-mi-detail{border-bottom:1px solid var(--green)}
.cof-mi-row,.cof-mi-detail{display:grid;grid-template-columns:64px minmax(0,1.1fr) minmax(0,1fr) 32px;gap:32px;align-items:baseline;padding:28px 0}
.cof-mi-row{color:var(--ink);text-decoration:none}
.cof-mi-detail{grid-template-columns:64px minmax(0,1fr) minmax(0,1fr);padding:40px 0}
.cof-mi-name strong,.cof-mi-name h3{display:block;color:var(--deep);font-size:1.5rem;line-height:1.5;margin:0 0 8px}
.cof-mi-sub{display:block;font-size:1rem;font-weight:700;color:var(--muted)}
.cof-mi-name>span,.cof-mi-name p{line-height:1.8}
.cof-mi-use b{display:block;font-size:.875rem;color:var(--muted);margin-bottom:4px}
.cof-mi-use{line-height:1.8}
.cof-mi-use ul{margin:0 0 16px;padding-left:1.25rem}
.cof-mi-use p{margin-bottom:12px}
.cof-mi-use .cof-link{margin-left:8px}
.cof-mi-go{color:var(--deep);font-weight:700;font-size:1.25rem;text-align:right}
.cof-mi-row:hover .cof-mi-name strong{text-decoration:underline;text-underline-offset:4px}
.cof-mi-row:focus-visible{outline:3px solid var(--deep);outline-offset:4px}
.cof-menu-index-detail{margin-top:40px}
@media (max-width:900px){.cof-mi-row{grid-template-columns:48px minmax(0,1fr) 24px;gap:16px}.cof-mi-row .cof-mi-use{grid-column:2/3}.cof-mi-row .cof-mi-go{grid-row:1;grid-column:3}
.cof-mi-detail{grid-template-columns:48px minmax(0,1fr);gap:16px}.cof-mi-detail .cof-mi-use{grid-column:2/3}}
/* 2026-10-16 実績：数字の横に「誰に呼ばれたか」を罫の一覧で */
.cof-proof-who{list-style:none;padding:0;margin:40px 0 16px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--green)}
.cof-proof-who li{padding:16px 16px 16px 0;border-bottom:1px solid var(--green);line-height:1.6}
.cof-proof-who b{display:block;color:var(--deep);font-size:1rem}
.cof-proof-who li{font-size:1.5rem;font-weight:700}
.cof-proof-who span{display:block;font-size:.875rem;font-weight:500;color:var(--muted)}
@media (max-width:768px){.cof-proof-who{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:420px){.cof-proof-who{grid-template-columns:1fr}.cof-proof-who li{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 12px}.cof-proof-who span{flex-basis:100%}}
/* 2026-10-16 プライバシーポリシー */
.cof-policy{max-width:46rem}
.cof-policy h2{font-size:1.375rem;line-height:1.5;margin:48px 0 16px;padding-top:24px;border-top:1px solid var(--green)}
.cof-policy h2:first-of-type{margin-top:32px}
.cof-policy p,.cof-policy li{line-height:1.9}
.cof-policy ul,.cof-policy ol{padding-left:1.5rem;margin:0 0 16px}
.cof-policy li+li{margin-top:8px}
.cof-policy p+p{margin-top:12px}
.cof-policy a{color:var(--deep)}
.cof-policy-date{margin-top:48px;color:var(--muted)}
.cof-footer-legal{margin-top:16px}
.cof-footer-legal a{color:inherit}

/* a-blog cms 用（2026-10-16）：入力チェックの結果、管理バーとの重なり */
.validator-result-,.validator-result-1{display:none}
.validator-result-0 .cof-error{display:block}
.cof-error{color:var(--accent);font-weight:700;margin-top:8px}
.cof-footer-sub{display:flex;gap:24px;margin-top:16px}
.cof-footer-sub a{color:inherit}
.cof-entry{max-width:48rem}
.cof-entry img{max-width:100%;height:auto}
.cof-entry-list{list-style:none;padding:0;margin:0}
.cof-entry-list li{padding:16px 0;border-bottom:1px solid var(--pale)}
.cof-entry-list time{display:block;color:var(--muted);font-size:.875rem}
.cof-entry-list a{color:inherit;text-decoration:none}
.cof-entry-list a:hover{text-decoration:underline}
.pager{display:flex;gap:8px;list-style:none;padding:0;margin:32px 0 0}
.pager a,.pager span{display:inline-block;min-width:44px;padding:8px 12px;text-align:center}
.cof-confirm{display:grid;gap:0;margin:0 0 24px}
.cof-confirm div{display:grid;grid-template-columns:12rem 1fr;gap:16px;padding:12px 0;border-bottom:1px solid var(--pale)}
.cof-confirm dt{font-weight:700}
.cof-confirm dd{margin:0}
.cof-form-buttons{display:flex;gap:16px;flex-wrap:wrap}
.cof-form-buttons .cof-btn{margin:0}
@media (max-width:600px){.cof-confirm div{grid-template-columns:1fr;gap:4px}}
.cof-policy h3{font-size:1.125rem;line-height:1.6;margin:32px 0 12px}
.cof-policy-table{width:100%;border-collapse:collapse;margin:16px 0 24px;font-size:.9375rem;line-height:1.7}
.cof-policy-table th,.cof-policy-table td{border:1px solid var(--pale);padding:12px;text-align:left;vertical-align:top}
.cof-policy-table th{background:var(--pale);font-weight:700}
@media (max-width:600px){.cof-policy-table{display:block;overflow-x:auto}.cof-policy-table th,.cof-policy-table td{min-width:9em}}
