/* 写真に依存しない編集デザイン。既存の機能・ナビ・基本構造を継承。 */
.editorial {
  --color-green-900: #153b30;
  --color-green-800: #194735;
  --color-green-700: #24533f;
  --color-green-600: #31624b;
  --color-green-50: #f5f3ed;
  --color-green-100: #eeeae0;
  --color-text: #223b31;
  --color-text-muted: #536157;
  --color-border: #d5d9cf;
  --paper: #f5f3ed;
  --ochre: #815b30;
  background: #fff;
  font-weight: 400;
  line-height: 1.9;
}
.editorial h1,.editorial h2,.editorial h3 { font-weight: 600; text-wrap: initial; }
.editorial .keep { display: inline-block; }
.editorial a { text-underline-offset: 5px; }
.editorial a:focus-visible,.editorial button:focus-visible,.editorial summary:focus-visible { outline: 3px solid #9b7039; outline-offset: 5px; }
.editorial .container { max-width: 1320px; padding-inline: 40px; }
.editorial .site-header { backdrop-filter: none; background: #fff; }
.editorial .site-header__inner { max-width: 1440px; padding-inline: 40px; height: 88px; }
.editorial .brand__name { letter-spacing: .08em; font-size: 19px; }
.editorial .brand__tagline { font-size: 10px; letter-spacing: .07em; margin-top: 5px; }
.editorial .header-phone { display: none; }
.editorial .nav__list { gap: 24px; }
.editorial .nav__link { font-size: 16px; }
.editorial .btn { border-radius: 0; min-height: 50px; padding: 12px 22px; font-size: 15px; box-shadow: none; letter-spacing: .02em; }
.editorial .btn span { margin-left: 12px; }
.editorial .btn--primary:hover { background: #153b30; }
.editorial .text-link { display: inline-flex; align-items: center; justify-content: space-between; gap: 16px; padding: 11px 0; border-bottom: 1px solid currentColor; font-size: 15px; font-weight: 600; }
.editorial .text-link:hover { color: #815b30; }
.eyeline { display: block; font-size: 12px; letter-spacing: .12em; font-weight: 500; line-height: 1.8; margin-bottom: 24px; }
.editorial-hero { background: var(--paper); border-bottom: 1px solid var(--color-border); padding: 66px 0 60px; }
.editorial-hero__inner { display: grid; grid-template-columns: 1.45fr 1fr; align-items: center; gap: 72px; }
.editorial-hero h1 { font-size: clamp(38px,4.6vw,66px); line-height: 1.55; letter-spacing: -.025em; margin-bottom: 26px; }
.editorial-lead { max-width: 590px; font-size: 16px; line-height: 2; margin-bottom: 28px; }
.editorial-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 16px 28px; }
.hours-line { margin-top: 16px; font-size: 12px; color: var(--color-text-muted); }
.hero-directory { border-left: 1px solid #b8c4b7; padding-left: 36px; }
.hero-directory .eyeline { margin-bottom: 10px; }
.hero-directory>a { position: relative; display: grid; grid-template-columns: 28px 1fr auto; align-items: baseline; gap: 6px 12px; padding: 15px 0; border-bottom: 1px solid #bdc9bd; }
.hero-directory>a:hover { color: var(--ochre); }
.directory-no { font-family: Georgia,serif; font-size: 14px; font-weight: 400; color: var(--ochre); }
.hero-directory strong { font-size: 22px; font-weight: 500; }
.directory-detail { font-size: 12px; color: var(--color-text-muted); grid-column: 2; grid-row: 2; }
.hero-directory .directory-main { display: block; padding: 8px 0 24px; }
.directory-main .directory-no { display: block; font-family: inherit; font-size: 12px; }
.directory-main strong { font-size: 48px; line-height: 1.6; display: block; letter-spacing: .06em; }
.directory-main .directory-detail { display: block; }
.directory-arrow { position: absolute; top: 46px; right: 0; font-size: 28px; }
.hero-index { border-left: 1px solid #b8c4b7; padding-left: 36px; }
.hero-index__title { font-size: clamp(24px,2.4vw,34px); line-height: 1.7; font-weight: 500; margin: 0 0 24px; }
.hero-index__sub { font-size: 23px; }
.fact-list { margin: 0; }
.fact-list>div { display: grid; grid-template-columns: 98px 1fr; gap: 18px; border-top: 1px solid #bdc9bd; padding: 16px 0; }
.fact-list dt { font-size: 13px; font-weight: 500; }
.fact-list dd { margin: 0; font-size: 15px; }
.service-focus { background: #153b30; color: #fff; padding: 80px 0; }
.service-focus__inner { display: grid; grid-template-columns: 1.1fr 1fr; gap: 100px; }
.service-focus h2 { font-size: clamp(32px,3.5vw,48px); line-height: 1.65; margin-bottom: 26px; }
.service-focus__intro>p { font-size: 16px; color: #e0e8df; margin-bottom: 32px; }
.service-focus .text-link { color: #fff; }
.service-focus .text-link:hover { color: #e2c8a1; }
.consult-sheet { border-left: 1px solid #668071; padding-left: 42px; }
.consult-sheet .eyeline { color: #d3ddcf; font-size: 12px; }
.consult-sheet h3 { font-size: 29px; line-height: 1.6; margin-bottom: 24px; }
.consult-sheet .fact-list>div { border-color: #668071; }
.consult-sheet .fact-list dt { color: #dae2d9; }
.small-note { font-size: 13px; color: #d9e2d8; line-height: 1.8; }
.editorial .section { padding: 72px 0; }
.editorial .section__head { text-align: left; max-width: none; margin: 0 0 36px; }
.editorial .section__eyebrow { font-size: 12px; letter-spacing: .13em; font-weight: 500; margin-bottom: 14px; }
.editorial .section__title { font-size: 34px; line-height: 1.6; letter-spacing: .01em; }
.editorial .section__desc { font-size: 16px; max-width: 720px; font-weight: 400; }
.editorial .steps { gap: 0; }
.editorial .steps::before { display: none; }
.editorial .step { border-top: 1px solid #9aafa0; border-bottom: none; padding: 22px 24px 0 0; text-align: left; }
.editorial .step+.step { padding-left: 24px; border-left: 1px solid var(--color-border); }
.editorial .step__num { background: none; font-family: Georgia,serif; color: var(--ochre); font-size: 30px; width: auto; height: auto; margin: 0 0 20px; display: block; line-height: 1; }
.editorial .step__title { font-size: 18px; font-weight: 500; margin-bottom: 10px; }
.editorial .step__desc { font-size: 15px; font-weight: 400; line-height: 1.85; }
.business-list-section { padding: 84px 0; border-top: 1px solid var(--color-border); }
.editorial-heading { margin-bottom: 42px; }
.editorial-heading h2 { font-size: clamp(30px,3.2vw,44px); line-height: 1.6; margin-bottom: 18px; }
.editorial-heading>p { font-size: 16px; max-width: 620px; }
.business-list article { display: grid; grid-template-columns: 60px 1fr 2.2fr auto; gap: 24px; align-items: center; padding: 32px 0; border-top: 1px solid #b4c1b5; }
.business-list article:last-child { border-bottom: 1px solid #b4c1b5; }
.business-no { font-family: Georgia,serif; font-size: 28px; color: var(--ochre); }
.business-list h3 { font-size: 26px; }
.business-list p { font-size: 14px; color: var(--color-text-muted); }
.business-list .row-subtitle { font-size: 18px; font-weight: 500; color: var(--color-text); margin-bottom: 6px; }
.business-list .text-link { font-size: 13px; border-bottom: none; }
.local-company { background: #eee8dc; padding: 84px 0; }
.local-company__inner { display: grid; grid-template-columns: 1.1fr 1fr; gap: 100px; }
.local-company h2 { font-size: clamp(42px,4.5vw,66px); line-height: 1.7; letter-spacing: .04em; }
.local-company h2>span { font-size: .6em; }
.local-company__facts h3 { font-size: 24px; margin-bottom: 18px; }
.local-company__facts>p { font-size: 16px; margin-bottom: 26px; }
.local-company .fact-list>div { border-color: #bfb9ac; }
.local-company .text-link { margin-top: 18px; }
.editorial .section:has(.faq)>.container { display: grid; grid-template-columns: 1fr 1.55fr; gap: 60px; }
.editorial .faq { max-width: none; width: 100%; }
.editorial .faq details { padding: 22px 0; margin: 0; border-color: #bac7b9; }
.editorial .faq details:first-child { border-top-width: 1px; }
.editorial .faq summary { font-size: 16px; font-weight: 500; padding-right: 0; }
.editorial .faq p { font-size: 15px; font-weight: 400; }
.contact-end { background: #153b30; color: #fff; padding: 64px 0; }
.contact-end__inner { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: start; }
.contact-end h2 { font-size: 30px; line-height: 1.6; margin-bottom: 24px; }
.contact-end p { font-size: 14px; color: #dce4d9; }
.contact-end__links a { display: block; border-top: 1px solid #6b8271; padding: 17px 0; font-weight: 500; }
.contact-end__links a:hover { color: #e5cea6; }
.contact-end__links small { font-size: 12px; display: block; margin-bottom: 8px; color: #dce4d9; }
.contact-end__phone { font-size: clamp(26px,3vw,38px); line-height: 1.5; font-variant-numeric: tabular-nums; }
.contact-end__mail { font-size: clamp(14px,1.5vw,20px); overflow-wrap: anywhere; }
.contact-end__links a>span { float: right; }
.editorial .site-footer { padding: 44px 0 22px; border-top: 1px solid #486657; background: #153b30; }
.editorial .footer-brand__name { font-weight: 500; letter-spacing: .06em; }
.editorial .footer-heading { color: #dce4d9; font-weight: 500; }
.editorial .footer-tagline { font-size: 12px; }
.editorial .breadcrumb { font-size: 12px; padding-block: 14px; }
.consultation-layout { display: grid; grid-template-columns: 1fr 1.25fr; gap: 90px; }
.question-list>div { display: grid; grid-template-columns: 40px 1fr; gap: 12px 22px; border-top: 1px solid #b5c2b6; padding: 26px 0; }
.question-list>div>span { font: 24px Georgia,serif; color: var(--ochre); grid-row: span 2; padding-top: 5px; }
.question-list h3 { font-size: 23px; }
.question-list p { font-size: 16px; }
.editorial .section--area { background: #eee8dc; padding: 48px 0; }
.editorial .section--area .section__head { display: grid; grid-template-columns: .8fr 1.4fr; gap: 0 50px; margin: 0; }
.editorial .section--area .section__eyebrow { grid-column: 1; }
.editorial .section--area .section__title { grid-column: 1; margin-bottom: 0; }
.editorial .section--area .section__desc { grid-column: 2; grid-row: 1 / span 2; align-self: center; }
.rental-primary { display: grid; grid-template-columns: 1fr 1.3fr; gap: 70px; background: var(--paper); padding: 40px 48px; border-top: 2px solid #24533f; }
.rental-primary h3 { font-size: 50px; margin-bottom: 16px; }
.property-secondary { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; margin-top: 36px; }
.property-secondary article { border-top: 1px solid #b5c2b6; padding-top: 22px; }
.property-secondary h3 { font-size: 26px; margin-bottom: 14px; }
.property-secondary p { font-size: 16px; }
.agriculture-editorial,.kikurage-editorial { padding: 76px 0; }
.agriculture-editorial__inner,.kikurage-editorial__inner { display: grid; grid-template-columns: 1fr 1fr; gap: 100px; align-items: center; }
.agriculture-editorial { background: #fff; }
.kikurage-editorial { background: #eee8dc; }
.produce-heading h2 { font-size: 28px; margin-bottom: 28px; }
.produce-type { font-size: 58px; font-weight: 500; line-height: 1.6; letter-spacing: .06em; }
.produce-type>span { font-size: .65em; }
.produce-copy { border-left: 1px solid #b5c2b6; padding-left: 42px; }
.produce-copy h3 { font-size: 30px; line-height: 1.7; margin-bottom: 22px; }
.produce-copy p { font-size: 16px; margin-bottom: 26px; }
.editorial .consultation { background: #fff; border-bottom: 1px solid var(--color-border); }
.editorial .consultation__inner { grid-template-columns: 1fr 1fr; gap: 80px; }
.editorial .consultation .section__title { font-size: 32px; }
.editorial .page-company { background: #fff; }
.editorial.page-company .company-grid { grid-template-columns: 1.4fr 1fr; gap: 70px; }
.editorial .info-table { border: none; border-radius: 0; }
.editorial .info-table th { background: transparent; width: 150px; }
.editorial .info-table th,.editorial .info-table td { padding: 20px 12px 20px 0; font-size: 15px; }
.editorial .info-table tr:first-child th,.editorial .info-table tr:first-child td { border-top: 1px solid #b5c2b6; }
.editorial.page-company .location-panel { border-radius: 0; border: 0; height: auto; padding: 36px; align-items: flex-start; text-align: left; background: #eee8dc; color: #223b31; }
.editorial .location-panel__icon { display: none; }
.editorial.page-company .location-panel h3 { font-size: 26px; line-height: 1.7; }
.editorial.page-company .location-panel .eyeline { margin-bottom: 0; }
.editorial.page-company .location-panel__addr,.editorial.page-company .location-panel__link { color: #223b31; }
.editorial.page-company .location-panel__addr { font-size: 15px; font-weight: 500; margin-top: 20px; }
.editorial.page-company .location-panel .tag-list { display: none; }
.editorial .contact-grid { gap: 50px; }
.editorial .contact-card { border: 0; border-top: 1px solid #b5c2b6; border-radius: 0; text-align: left; padding: 28px 0 0; background: transparent; }
.editorial .contact-card__icon { display: none; }
.editorial .contact-card__label { font-size: 13px; margin-bottom: 18px; }
.editorial .contact-card__value { font-size: 32px; font-weight: 500; margin-bottom: 24px; }
.editorial .contact-card .btn { max-width: 260px; }
.editorial .contact-note { text-align: left; margin-top: 32px; font-size: 14px; }
.editorial .contact-note p { margin-bottom: 10px; }
@media(min-width:1440px) {
 .editorial .site-header__inner { padding-inline: 60px; }
 .editorial-hero { padding-block: 76px; }
}
@media(min-width:1920px) {
 .editorial .container { max-width: 1520px; padding-inline: 60px; }
 .editorial-hero h1 { font-size: 76px; }
 .editorial-hero__inner { gap: 110px; }
}
@media(min-width:721px) and (max-width:1100px) {
 .editorial .container { padding-inline: 28px; }
 .editorial .site-header__inner { padding-inline: 24px; height: 76px; gap: 20px; }
 .editorial .brand__name { font-size: 16px; letter-spacing: .01em; }
 .editorial .nav__list { gap: 14px; }
 .editorial .nav__link { font-size: 13px; }
 .editorial .nav__link-sub { display: none; }
 .editorial .site-header .btn { padding: 10px 15px; font-size: 13px; }
 .editorial-hero__inner { grid-template-columns: 1.25fr 1fr; gap: 36px; }
 .editorial-hero h1 { font-size: clamp(32px,4vw,44px); }
 .hero-directory,.hero-index { padding-left: 24px; }
 .hero-directory strong { font-size: 20px; }
 .directory-main strong { font-size: 42px; }
 .directory-detail { font-size: 11px; }
 .service-focus__inner,.local-company__inner { gap: 50px; }
 .business-list article { grid-template-columns: 40px 1fr 2fr; gap: 20px; }
 .business-list article>.text-link { grid-column: 3; justify-self: start; }
 .consultation-layout { gap: 46px; }
 .hero-index .fact-list>div { grid-template-columns: 1fr; gap: 4px; }
 .editorial .steps { grid-template-columns: repeat(2,1fr); row-gap: 28px; }
 .editorial .step:nth-child(3) { border-left: 0; padding-left: 0; }
 .editorial.page-company .company-grid { gap: 32px; }
 .editorial.page-company .location-panel { padding: 26px; }
}
@media(min-width:721px) and (max-width:850px) {
 .editorial .header-actions .btn { display: none; }
 .editorial .nav__list { gap: 12px; }
 .editorial-hero__inner { gap: 24px; }
 .editorial-hero h1 { font-size: 29px; }
 .hero-directory,.hero-index { padding-left: 20px; }
 .editorial-actions { gap: 10px 18px; }
 .editorial .section:has(.faq)>.container { gap: 30px; }
 .editorial .section__title { font-size: 27px; }
 .editorial.page-company .company-grid { grid-template-columns: 1fr; }
}
@media(max-width:720px) {
 .editorial { padding-bottom: calc(56px + env(safe-area-inset-bottom)); }
 .editorial .container { padding-inline: 24px; }
 .editorial .site-header__inner { height: 64px; min-height: 64px; padding: 8px 20px; }
 .editorial .brand__name { font-size: 15px; letter-spacing: .04em; }
 .editorial .nav__link { font-size: 15px; }
 .editorial .nav__list { gap: 4px; }
 .editorial .btn { min-height: 50px; font-size: 14px; padding: 12px 17px; }
 .editorial .text-link { font-size: 14px; }
 .eyeline { font-size: 10px; letter-spacing: .08em; margin-bottom: 22px; }
 .editorial-hero { padding: 36px 0 38px; }
 .editorial-hero__inner { display: block; }
 .editorial-hero h1 { font-size: clamp(28px,8.2vw,42px); line-height: 1.55; margin-bottom: 22px; letter-spacing: -.035em; }
 .editorial-lead { font-size: 15px; line-height: 1.95; margin-bottom: 24px; }
 .editorial-actions { gap: 12px 20px; }
 .editorial-actions .btn { flex: 1 0 auto; }
 .editorial-actions .text-link { flex: 1 0 auto; justify-content: center; }
 .hours-line { font-size: 11px; margin-top: 16px; }
 .hero-directory,.hero-index { border-left: 0; border-top: 1px solid #aebeb0; padding: 24px 0 0; margin-top: 30px; }
 .hero-directory .eyeline { font-size: 10px; margin-bottom: 10px; }
 .hero-directory>a { padding: 12px 0; grid-template-columns: 24px 1fr auto; gap: 4px 12px; }
 .hero-directory strong { font-size: 20px; }
 .hero-directory .directory-main { padding: 6px 0 18px; }
 .directory-main strong { font-size: 36px; }
 .directory-main .directory-detail { font-size: 12px; }
 .directory-arrow { top: 33px; }
 .directory-detail { font-size: 12px; }
 .hero-index__title { font-size: 27px; margin-bottom: 20px; }
 .hero-index .fact-list>div { padding-block: 13px; }
 .fact-list>div { grid-template-columns: 76px 1fr; gap: 12px; padding-block: 15px; }
 .fact-list dt { font-size: 12px; }
 .fact-list dd { font-size: 14px; }
 .service-focus { padding: 48px 0; }
 .service-focus__inner { grid-template-columns: 1fr; gap: 40px; }
 .service-focus h2 { font-size: 32px; margin-bottom: 22px; }
 .service-focus__intro>p { font-size: 15px; margin-bottom: 20px; }
 .service-focus__intro>p br { display: none; }
 .consult-sheet { border-left: 0; border-top: 1px solid #668071; padding: 28px 0 0; }
 .consult-sheet h3 { font-size: 25px; }
 .small-note { font-size: 13px; }
 .editorial .section { padding-block: 46px; }
 .editorial .section__head { margin-bottom: 26px; text-align: left; }
 .editorial .section__eyebrow { font-size: 10px; margin-bottom: 14px; }
 .editorial .section__title { font-size: 26px; line-height: 1.65; }
 .editorial .section__desc { font-size: 15px; text-align: left; }
 .editorial .steps { display: block; }
 .editorial .step,.editorial .step+.step { display: grid; grid-template-columns: 32px 1fr; gap: 6px 16px; padding: 22px 0; border-left: 0; border-top: 1px solid #bdc9bd; text-align: left; }
 .editorial .step:last-child { padding-bottom: 0; }
 .editorial .step__num { grid-row: span 2; font-size: 26px; padding-top: 3px; margin: 0; }
 .editorial .step__title { font-size: 17px; margin: 0; }
 .editorial .step__desc { font-size: 14px; }
 .business-list-section { padding-block: 48px; }
 .editorial-heading { margin-bottom: 28px; }
 .editorial-heading h2 { font-size: 30px; line-height: 1.6; }
 .editorial-heading>p { font-size: 15px; }
 .business-list article { grid-template-columns: 32px 1fr; gap: 16px; padding: 26px 0; }
 .business-no { font-size: 23px; }
 .business-list h3 { font-size: 25px; }
 .business-list article>div,.business-list article>.text-link { grid-column: 2; }
 .business-list .row-subtitle { font-size: 16px; }
 .business-list p { font-size: 14px; }
 .business-list .text-link { justify-self: start; padding: 4px 0; }
 .local-company { padding-block: 48px; }
 .local-company__inner { grid-template-columns: 1fr; gap: 32px; }
 .local-company h2 { font-size: 43px; line-height: 1.5; }
 .local-company__facts h3 { font-size: 21px; }
 .local-company__facts>p { font-size: 15px; }
 .editorial .section:has(.faq)>.container { grid-template-columns: 1fr; gap: 0; }
 .editorial .faq details { padding-block: 20px; }
 .editorial .faq summary { font-size: 15px; }
 .editorial .faq p { font-size: 14px; }
 .contact-end { padding-block: 44px; }
 .contact-end__inner { grid-template-columns: 1fr; gap: 30px; }
 .contact-end h2 { font-size: 25px; margin-bottom: 18px; }
 .contact-end__phone { font-size: 29px; }
 .contact-end__mail { font-size: 15px; }
 .editorial .site-footer { padding-top: 32px; }
 .editorial .footer-grid { gap: 26px; }
 .editorial .footer-tagline { font-size: 11px; }
 .editorial .mobile-bar a { font-size: 13px; min-height: 56px; }
 .editorial .breadcrumb { padding-block: 12px; font-size: 11px; }
 .consultation-layout { grid-template-columns: 1fr; gap: 0; }
 .question-list>div { grid-template-columns: 30px 1fr; gap: 10px 12px; padding-block: 24px; }
 .question-list h3 { font-size: 20px; }
 .question-list p { font-size: 15px; }
 .editorial .section--area .section__head { display: block; }
 .editorial .section--area .section__title { margin-bottom: 18px; }
 .rental-primary { grid-template-columns: 1fr; gap: 28px; padding: 26px 20px; }
 .rental-primary h3 { font-size: 40px; margin-bottom: 12px; }
 .rental-primary p { font-size: 14px; }
 .property-secondary { grid-template-columns: 1fr; gap: 28px; margin-top: 30px; }
 .property-secondary h3 { font-size: 24px; }
 .property-secondary p { font-size: 15px; }
 .agriculture-editorial,.kikurage-editorial { padding-block: 48px; }
 .agriculture-editorial__inner,.kikurage-editorial__inner { grid-template-columns: 1fr; gap: 30px; }
 .produce-heading h2 { font-size: 23px; margin-bottom: 24px; }
 .produce-type { font-size: 44px; }
 .produce-copy { border-left: 0; border-top: 1px solid #b5c2b6; padding: 28px 0 0; }
 .produce-copy h3 { font-size: 25px; margin-bottom: 20px; }
 .produce-copy p { font-size: 15px; margin-bottom: 20px; }
 .editorial .consultation__inner { grid-template-columns: 1fr; gap: 22px; }
 .editorial .consultation .section__title { font-size: 28px; text-align: left; }
 .editorial .consultation .section__eyebrow { text-align: left; }
 .editorial .consultation p { font-size: 15px; }
 .editorial.page-company .company-grid { grid-template-columns: 1fr; gap: 34px; }
 .editorial .info-table th { width: 100%; font-size: 12px; color: #536157; padding: 15px 0 4px; }
 .editorial .info-table td { font-size: 15px; padding: 0 0 15px; }
 .editorial .info-table tr:first-child td { border-top: none; }
 .editorial.page-company .location-panel { padding: 26px 22px; }
 .editorial.page-company .location-panel h3 { font-size: 24px; }
 .editorial.page-company .location-panel p { font-size: 15px; }
 .editorial .contact-grid { gap: 34px; }
 .editorial .contact-card__value { font-size: 29px; }
 .editorial .contact-card .btn { max-width: 100%; }
 .editorial .contact-note { font-size: 13px; }
}
@media(max-width:359px) {
 .editorial .container { padding-inline: 20px; }
 .editorial .site-header__inner { padding-inline: 16px; }
 .editorial-hero h1 { font-size: 27px; }
 .editorial-actions { gap: 12px; }
 .editorial-actions .btn,.editorial-actions .text-link { font-size: 13px; }
 .contact-end__phone { font-size: 25px; }
 .contact-end__mail { font-size: 13px; }
 .editorial .section__title { font-size: 24px; }
 .local-company h2 { font-size: 39px; }
}
.kikurage-editorial .produce-type { font-size: clamp(32px,4vw,58px); white-space: nowrap; }
.editorial .inline-link { text-decoration: underline; }

/* Real estate upper sections only. */
.page-fudousan .property-hero { background: #f5f3ed; padding: 52px 0 56px; }
.page-fudousan .property-hero .editorial-hero__inner { grid-template-columns: minmax(0,1.2fr) minmax(0,1fr); gap: 48px; }
.page-fudousan .property-hero .editorial-hero__text { min-width: 0; }
.page-fudousan .property-hero h1 { font-size: clamp(32px,3.5vw,48px); color: #12201b; line-height: 1.6; }
.page-fudousan .property-hero .editorial-lead { color: #12201b; max-width: 520px; }
.page-fudousan .property-hero__photo { margin: 0; min-width: 0; }
.page-fudousan .property-hero__photo img { display: block; width: 100%; aspect-ratio: 6 / 5; height: auto; object-fit: cover; border-radius: 48px 4px 48px 4px; }
.page-fudousan .property-hero__photo figcaption,
.page-fudousan .property-category__photo figcaption { font-size: 11px; color: #536157; text-align: right; padding: 6px 0 0; }
.page-fudousan .property-categories__heading { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 18px; font-size: 15px; font-weight: 500; letter-spacing: .07em; margin: 0 0 32px; color: #12201b; }
.page-fudousan .property-categories__heading>span:first-child { color: #536157; font-size: 12px; align-self: center; }
.page-fudousan .property-categories__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 26px; }
.page-fudousan .property-category { display: flex; flex-direction: column; min-width: 0; padding: 26px 24px; background: #faf9f5; border: 1px solid #d5d9cf; border-radius: 6px; }
.page-fudousan .property-category__heading { text-align: center; margin-bottom: 20px; }
.page-fudousan .property-category .eyeline { margin-bottom: 4px; color: #536157; }
.page-fudousan .property-category h3 { font-size: 30px; color: #12201b; }
.page-fudousan .property-category__photo { margin: 0 0 18px; }
.page-fudousan .property-category__photo img { display: block; width: 100%; aspect-ratio: 4 / 3; height: auto; object-fit: cover; border-radius: 3px; }
.page-fudousan .property-category__photo--rent img { object-position: 30% 65%; }
.page-fudousan .property-category__photo--house img { object-position: 80% 35%; }
.page-fudousan .property-category>p { font-size: 15px; color: #12201b; margin: 0 0 24px; }
.page-fudousan .property-category__link { position: relative; display: flex; align-items: center; justify-content: center; text-align: center; gap: 10px; min-height: 48px; padding: 12px 14px; margin-top: auto; border: 1px solid #24533f; border-radius: 3px; color: #194735; background: #fff; font-size: 14px; font-weight: 500; text-decoration: none; }
.page-fudousan .property-category__link:hover { background: #eaf0e8; }
.page-fudousan .property-category__link>span { flex-shrink: 0; position: absolute; right: 14px; top: 50%; transform: translateY(-50%); }
.page-fudousan .property-categories__note { margin: 24px 0 0; text-align: center; font-size: 13px; color: #536157; }
@media(max-width:1000px) and (min-width:721px) {
 .page-fudousan .property-hero .editorial-hero__inner { gap: 28px; }
 .page-fudousan .property-categories__grid { gap: 16px; }
 .page-fudousan .property-category { padding: 22px 16px; }
}
@media(max-width:720px) {
 .page-fudousan .property-hero { padding: 32px 0 38px; }
 .page-fudousan .property-hero h1 { font-size: clamp(27px,7.5vw,40px); }
 .page-fudousan .property-hero__photo { margin-top: 30px; }
 .page-fudousan .property-hero__photo img { aspect-ratio: 4 / 3; border-radius: 30px 3px 30px 3px; }
 .page-fudousan .property-categories__heading { gap: 6px; flex-direction: column; text-align: center; font-size: 14px; }
 .page-fudousan .property-categories__grid { grid-template-columns: minmax(0,1fr); gap: 24px; }
 .page-fudousan .property-category { padding: 24px 20px; }
}
/* Grass service: hero, preparation and flow only. */
.page-kusakari .grass-hero .editorial-hero__inner { display: grid; grid-template-columns: minmax(0,47fr) minmax(0,53fr); align-items: start; gap: 40px; }
.page-kusakari .grass-hero .editorial-hero__text { min-width: 0; padding-top: 12px; }
.page-kusakari .grass-hero h1 { font-size: clamp(26px,3.35vw,48px); line-height: 1.55; }
.page-kusakari .grass-hero__visual { min-width: 0; }
.page-kusakari .grass-photo { min-width: 0; margin: 0; }
.page-kusakari .grass-photo img { display: block; width: 100%; max-width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 4px; }
.page-kusakari .grass-photo figcaption { font-size: 11px; line-height: 1.7; color: #536157; text-align: right; margin-top: 6px; }
.page-kusakari .grass-hero .hero-index { display: block; border: 0; padding: 0; margin: 0; background: transparent; }
.page-kusakari .grass-hero .hero-index>.eyeline { margin: 0 0 8px; font-size: 11px; }
.page-kusakari .grass-hero .hero-index__title { font-size: 23px; line-height: 1.65; margin: 0 0 18px; }
.page-kusakari .grass-hero .fact-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); min-width: 0; margin-top: 16px; border: 1px solid #d5d9cf; border-radius: 4px; background: #fff; }
.page-kusakari .grass-hero .fact-list>div { display: block; min-width: 0; border-top: 0; padding: 16px 12px; }
.page-kusakari .grass-hero .fact-list dt { font-size: 12px; margin-bottom: 6px; }
.page-kusakari .grass-hero .fact-list dd { font-size: 13px; overflow-wrap: anywhere; }
.page-kusakari .grass-before .consultation-layout { display: grid; grid-template-columns: minmax(0,28fr) minmax(0,72fr); align-items: start; gap: 28px; }
.page-kusakari .grass-before .editorial-heading { min-width: 0; max-width: none; margin: 0; }
.page-kusakari .grass-before .editorial-heading h2 { font-size: clamp(26px,2.5vw,36px); line-height: 1.65; }
.page-kusakari .grass-before .editorial-heading>p { font-size: 15px; line-height: 1.9; }
.page-kusakari .grass-before .question-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); grid-auto-rows: 1fr; min-width: 0; gap: 16px; align-items: stretch; }
.page-kusakari .grass-before .question-list>div { display: flex; flex-direction: column; gap: 0; min-width: 0; padding: 22px 18px; border: 1px solid #d5d9cf; border-top: 3px solid #24533f; border-radius: 4px; background: #faf9f5; }
.page-kusakari .grass-before .question-list>div>span { font: 28px Georgia,serif; color: #24533f; padding: 0; margin-bottom: 14px; }
.page-kusakari .grass-before .question-list h3 { font-size: 18px; line-height: 1.65; min-height: 3.3em; margin-bottom: 14px; overflow-wrap: anywhere; }
.page-kusakari .grass-before .question-list .grass-photo { margin-bottom: 16px; }
.page-kusakari .grass-before .question-list p { font-size: 14px; line-height: 1.9; margin: 0; }
.page-kusakari .grass-flow .steps { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); grid-auto-rows: 1fr; gap: 20px; align-items: stretch; }
.page-kusakari .grass-flow .step,
.page-kusakari .grass-flow .step+.step { display: flex; flex-direction: column; min-width: 0; padding: 24px 20px; border: 1px solid #d5d9cf; border-radius: 4px; background: #fff; text-align: left; }
.page-kusakari .grass-flow .step__num { display: flex; align-items: center; justify-content: center; flex-shrink: 0; width: 44px; height: 44px; padding: 0; margin: 0 0 18px; border-radius: 50%; background: #24533f; color: #fff; font: 26px Georgia,serif; }
.page-kusakari .grass-flow .step__title { font-size: 18px; line-height: 1.6; min-height: 3.2em; margin-bottom: 14px; overflow-wrap: anywhere; }
.page-kusakari .grass-flow .grass-photo { margin-bottom: 16px; }
.page-kusakari .grass-flow .step__desc { font-size: 15px; line-height: 1.9; }
@media(min-width:721px) and (max-width:1000px) {
 .page-kusakari .grass-hero .editorial-hero__inner { gap: 24px; }
 .page-kusakari .grass-hero .hero-index { grid-template-columns: minmax(0,1fr); }
 .page-kusakari .grass-before .consultation-layout { gap: 18px; }
 .page-kusakari .grass-before .question-list { gap: 10px; }
 .page-kusakari .grass-before .question-list>div { padding: 18px 12px; }
 .page-kusakari .grass-before .question-list h3 { font-size: 16px; }
 .page-kusakari .grass-flow .steps { gap: 12px; }
 .page-kusakari .grass-flow .step,.page-kusakari .grass-flow .step+.step { padding: 20px 14px; }
}
@media(max-width:720px) {
 .page-kusakari .grass-hero .editorial-hero__inner { display: block; }
 .page-kusakari .grass-hero .editorial-hero__text { padding-top: 0; }
 .page-kusakari .grass-hero h1 { font-size: clamp(25px,7vw,36px); }
 .page-kusakari .grass-hero .editorial-actions>a { min-width: 0; max-width: 100%; }
 .page-kusakari .grass-hero__visual { margin-top: 28px; }
 .page-kusakari .grass-hero .hero-index { padding: 0; }
 .page-kusakari .grass-hero .fact-list { grid-template-columns: minmax(0,1fr); }
 .page-kusakari .grass-before .consultation-layout { grid-template-columns: minmax(0,1fr); gap: 26px; }
 .page-kusakari .grass-before .question-list,
 .page-kusakari .grass-flow .steps { grid-template-columns: minmax(0,1fr); grid-auto-rows: auto; gap: 20px; }
 .page-kusakari .grass-before .question-list>div { padding: 24px 20px; }
 .page-kusakari .grass-before .question-list h3 { font-size: 20px; min-height: 0; }
 .page-kusakari .grass-before .question-list p { font-size: 15px; }
 .page-kusakari .grass-flow .step,.page-kusakari .grass-flow .step+.step { padding: 24px 20px; }
 .page-kusakari .grass-flow .step__title { min-height: 0; }
}
/* Images in real estate consultation flow only. */
.page-fudousan section[aria-labelledby="flow-heading"] .steps { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 20px; align-items: stretch; }
.page-fudousan section[aria-labelledby="flow-heading"] .step { display: flex; flex-direction: column; min-width: 0; padding: 22px 20px 0; border-left: 0; }
.page-fudousan section[aria-labelledby="flow-heading"] .step__title { min-height: 3.2em; line-height: 1.6; overflow-wrap: anywhere; }
.page-fudousan .property-flow-photo { margin: 0 0 16px; min-width: 0; }
.page-fudousan .property-flow-photo img { display: block; width: 100%; max-width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 4px; }
.page-fudousan .property-flow-photo figcaption { margin-top: 6px; font-size: 11px; line-height: 1.7; color: #536157; text-align: right; }
@media(max-width:720px) {
 .page-fudousan section[aria-labelledby="flow-heading"] .steps { grid-template-columns: minmax(0,1fr); gap: 24px; }
 .page-fudousan section[aria-labelledby="flow-heading"] .step { padding: 22px 0; }
 .page-fudousan section[aria-labelledby="flow-heading"] .step__title { min-height: 0; margin-bottom: 14px; }
}
/* Agriculture and kikurage images only. */
.page-nougyou .produce-photo { min-width: 0; margin: 24px 0 0; }
.page-nougyou .produce-photo img { display: block; width: 100%; max-width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 4px; }
.page-nougyou .produce-photo figcaption { margin-top: 6px; font-size: 11px; line-height: 1.7; color: #536157; text-align: right; }
.page-nougyou .editorial-hero .hero-index { min-width: 0; }
.page-nougyou .editorial-hero .produce-photo { margin: 0 0 24px; }
.page-nougyou .agriculture-editorial__inner,
.page-nougyou .kikurage-editorial__inner { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
.page-nougyou .produce-heading,
.page-nougyou .produce-copy { min-width: 0; }
@media(max-width:720px) {
 .page-nougyou .agriculture-editorial__inner,
 .page-nougyou .kikurage-editorial__inner { grid-template-columns: minmax(0,1fr); }
}
/* Company hero and company information only. */
.page-company .editorial-hero .editorial-hero__inner { grid-template-columns: minmax(0,1.05fr) minmax(0,1fr); align-items: start; gap: 48px; }
.page-company .editorial-hero .editorial-hero__text { min-width: 0; padding-top: 16px; }
.page-company .editorial-hero h1 { font-size: clamp(28px,3.4vw,48px); }
.page-company .editorial-hero .hero-index { min-width: 0; padding: 0 24px 22px; border: 1px solid #d5d9cf; border-radius: 6px; background: #fff; }
.page-company .company-region-photo { margin: 0 -24px 22px; }
.page-company .company-region-photo img { display: block; width: 100%; max-width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 5px 5px 0 0; }
.page-company .company-region-photo figcaption { padding: 6px 12px 0; font-size: 11px; line-height: 1.7; color: #536157; text-align: right; }
.page-company .editorial-hero .hero-index>.eyeline { margin-bottom: 10px; }
.page-company .editorial-hero .hero-index__title { font-size: 25px; margin-bottom: 18px; }
.page-company .editorial-hero .fact-list>div { grid-template-columns: 86px minmax(0,1fr); gap: 12px; padding: 12px 0; }
.page-company .editorial-hero .fact-list dd { overflow-wrap: anywhere; }
.editorial.page-company .company-grid { grid-template-columns: minmax(0,1.45fr) minmax(0,1fr); gap: 40px; align-items: start; }
.page-company section[aria-labelledby="info-heading"] .info-table { min-width: 0; width: 100%; table-layout: fixed; }
.page-company section[aria-labelledby="info-heading"] .info-table th { width: 150px; }
.page-company section[aria-labelledby="info-heading"] .info-table td { overflow-wrap: anywhere; }
.editorial.page-company .company-grid .location-panel { min-width: 0; padding: 32px; border: 1px solid #d5d9cf; border-top: 3px solid #24533f; border-radius: 6px; background: #f5f3ed; }
.page-company .company-grid .location-panel>.eyeline { margin-bottom: 14px; }
.page-company .company-grid .location-panel h3 { margin-bottom: 20px; }
.page-company .company-grid .location-panel__addr { width: 100%; padding-top: 20px; border-top: 1px solid #d5d9cf; overflow-wrap: anywhere; }
.page-company .company-grid .location-panel__link { display: inline-block; margin-top: 18px; text-underline-offset: 5px; }
@media(max-width:720px) {
 .page-company .editorial-hero .editorial-hero__inner { display: block; }
 .page-company .editorial-hero .editorial-hero__text { padding-top: 0; }
 .page-company .editorial-hero h1 { font-size: clamp(25px,7vw,36px); }
 .page-company .editorial-hero .hero-index { margin-top: 28px; padding: 0 20px 20px; }
 .page-company .company-region-photo { margin: 0 -20px 20px; }
 .page-company .editorial-hero .hero-index__title { font-size: 22px; }
 .page-company .editorial-hero .fact-list>div { grid-template-columns: 76px minmax(0,1fr); }
 .editorial.page-company .company-grid { grid-template-columns: minmax(0,1fr); gap: 28px; }
 .page-company section[aria-labelledby="info-heading"] .info-table th { width: 100%; }
 .editorial.page-company .company-grid .location-panel { padding: 26px 22px; }
}