/*
Theme Name: Kyoyu Shoji
Description: 共遊商事の企業サイト。専用ページ原稿・初期設定画面・お知らせ・Contact Form 7連携を備えたブロックテーマ。
Version: 1.0.0
Requires at least: 6.6
Requires PHP: 8.0
Author: Kyoyu Shoji
License: GPL-2.0-or-later
Text Domain: kyoyu-shoji
*/
:root{--ky-ink:#213d32;--ky-paper:#f5f3ed;--ky-muted:#626f65;--ky-line:#cdd5ca;--ky-sage:#e7ebe2;--ky-serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif CJK JP",serif;--ky-sans:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}
html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ky-ink);background:var(--ky-paper);font-family:var(--ky-sans);-webkit-font-smoothing:antialiased}*{box-sizing:border-box}a{color:inherit;text-underline-offset:5px}img{max-width:100%;height:auto}button,input,textarea,select{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #ad7932;outline-offset:4px}h1,h2,h3,p{overflow-wrap:anywhere}.wp-site-blocks{padding:0}.wp-site-blocks>*{margin-block-start:0}.wp-block-post-content{margin:0}.ky-wrap{max-width:1160px;margin-inline:auto}.ky-narrow{max-width:800px;margin-inline:auto}.ky-section{padding:clamp(64px,8vw,116px) max(24px,5vw)}.ky-section p{line-height:2.05}.ky-section h2{font-family:var(--ky-serif);font-size:clamp(28px,3vw,42px);font-weight:400;line-height:1.65;letter-spacing:.04em;margin:20px 0 30px}.ky-section h3{font-size:20px;font-weight:500;line-height:1.7}.ky-sage{background:var(--ky-sage)}.ky-white{background:#fcfcf8}.ky-forest{background:var(--ky-ink);color:var(--ky-paper)}.ky-kicker{font-family:Arial,sans-serif;font-size:11px!important;letter-spacing:.22em!important;font-weight:500;line-height:1.7!important;margin:0 0 20px;text-transform:uppercase}.ky-kicker::after{content:'';display:inline-block;width:42px;height:1px;background:currentColor;vertical-align:middle;margin-left:18px;opacity:.5}.ky-lead{font-size:18px;line-height:2.1;max-width:720px}.ky-note{font-size:12px!important;line-height:1.8!important;color:var(--ky-muted)}.ky-link{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;min-height:50px;min-width:210px;padding:12px 0;border-bottom:1px solid currentColor;text-decoration:none;font-size:15px}.ky-link:after{content:'→';font-size:23px;transition:transform .2s}.ky-link:hover:after{transform:translateX(5px)}.ky-button{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;padding:17px 24px;background:var(--ky-ink);color:#fff;text-decoration:none;min-height:54px;border:1px solid var(--ky-ink);font-size:15px}.ky-button:after{content:'↗'}.ky-button:hover{background:#365545}.ky-button-light{background:transparent;color:inherit;border-color:currentColor}.ky-button-light:hover{background:#e0e5db;color:var(--ky-ink)}.ky-actions{display:flex;gap:20px;flex-wrap:wrap;margin-top:30px}.ky-skip{position:fixed;z-index:99999;top:-100px;left:16px;padding:12px;background:white;color:black}.ky-skip:focus{top:12px}
.ky-header{position:relative;z-index:100;background:var(--ky-paper);border-bottom:1px solid var(--ky-line)}.ky-header-inner{max-width:1440px;margin:auto;padding:12px 40px;display:flex;justify-content:space-between;align-items:center;gap:30px;min-height:88px}.ky-logo{display:block;flex:0 0 auto;line-height:0}.ky-logo img{width:270px;height:62px;object-fit:cover}.ky-desktop-nav{display:flex;align-items:center;gap:26px}.ky-desktop-nav a{text-decoration:none;font-size:13px;white-space:nowrap}.ky-desktop-nav a:hover{text-decoration:underline}.ky-desktop-nav .ky-nav-contact{padding:12px 20px;border:1px solid var(--ky-ink)}.ky-mobile-menu{display:none}.ky-hero{position:relative;min-height:620px;height:min(78vh,810px);display:flex;align-items:center;overflow:hidden;background:#213d32;color:white}.ky-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.ky-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,30,22,.74),rgba(12,30,22,.15) 80%)}.ky-hero-copy{position:relative;z-index:1;width:100%;padding:65px max(24px,7.5vw)}.ky-hero h1{font-family:var(--ky-serif);font-size:clamp(38px,4.6vw,68px);font-weight:400;line-height:1.6;letter-spacing:.06em;margin:22px 0}.ky-hero p{line-height:2.05;font-size:18px}.ky-hero .ky-kicker{font-family:var(--ky-sans);font-size:13px!important;letter-spacing:.08em!important}.ky-hero .ky-note{color:#eee;font-size:10px!important;position:absolute;right:24px;bottom:18px;z-index:2}.ky-hero-scroll{position:absolute;z-index:2;bottom:25px;left:max(24px,7.5vw);font:10px Arial;letter-spacing:.2em}.ky-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,88px);align-items:center}.ky-photo{margin:0}.ky-photo img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.ky-photo figcaption{margin-top:8px;font-size:10px;color:var(--ky-muted)}.ky-intro-links{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:40px}.ky-intro-links a{width:100%}.ky-audiences{display:grid;grid-template-columns:1fr 1fr}.ky-audience{padding:64px max(24px,5vw);border-top:1px solid rgba(255,255,255,.2)}.ky-audience+div{border-left:1px solid rgba(255,255,255,.25)}.ky-audience h2{font:400 clamp(26px,2.3vw,36px)/1.65 var(--ky-serif);margin:14px 0}.ky-audience p{font-size:14px;line-height:2;color:#dde4db}.ky-office-teaser{font-family:var(--ky-serif);font-size:clamp(24px,3vw,42px);line-height:2.1;letter-spacing:.08em;color:#536d59}.ky-office-teaser span{white-space:nowrap}.ky-section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:32px}.ky-section-head h2{margin-bottom:0}.ky-news-list>a{display:grid;grid-template-columns:120px 1fr 24px;gap:20px;border-top:1px solid var(--ky-line);padding:24px 0;text-decoration:none;font-size:16px}.ky-news-list>a:last-child{border-bottom:1px solid var(--ky-line)}.ky-news-list time{font:13px/2 Arial,sans-serif;color:var(--ky-muted)}.ky-news-list>a:hover{background:#edf0e7}.ky-contact-band{padding:70px max(24px,5vw)}.ky-contact-band .ky-wrap{display:flex;justify-content:space-between;align-items:center;gap:30px}.ky-contact-band h2{font:400 clamp(26px,3vw,42px)/1.6 var(--ky-serif);margin:12px 0}.ky-contact-band .ky-kicker{margin:0}
.ky-page-heading{padding:65px max(24px,5vw) 60px;border-bottom:1px solid var(--ky-line)}.ky-page-heading .ky-breadcrumb{font-size:12px;margin:0 0 38px;color:var(--ky-muted)}.ky-page-heading h1{font:400 clamp(32px,4vw,52px)/1.6 var(--ky-serif);letter-spacing:.04em;margin:10px 0 20px}.ky-page-heading p{max-width:720px;font-size:16px;line-height:2}.ky-page-heading .ky-kicker{margin-bottom:10px}.ky-process{counter-reset:steps;padding:0;list-style:none;margin:40px 0}.ky-process li{padding:26px 0 26px 60px;border-top:1px solid var(--ky-line);position:relative}.ky-process li:before{counter-increment:steps;content:'0' counter(steps);position:absolute;left:0;top:26px;font:22px var(--ky-serif);color:#708270}.ky-process h3{margin:0 0 10px}.ky-process p{font-size:15px;margin:0}.ky-facts{width:100%;border-collapse:collapse}.ky-facts th,.ky-facts td{padding:22px 12px;border-bottom:1px solid var(--ky-line);text-align:left;font-size:15px;line-height:1.9}.ky-facts th{width:25%;font-weight:500}.ky-office-nav{display:flex;flex-wrap:wrap;gap:12px;margin:25px 0 40px}.ky-office-nav a{padding:10px 15px;border:1px solid var(--ky-line);text-decoration:none;font-size:13px}.ky-office-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.ky-office{border-top:1px solid var(--ky-line);padding:24px 0;scroll-margin-top:30px}.ky-office h2{font:400 24px/1.5 var(--ky-serif);margin:0 0 16px}.ky-office address{font-style:normal;font-size:14px;line-height:1.9}.ky-office p{font-size:14px;margin:12px 0}.ky-office a{display:inline-block;padding:6px 0}.ky-office .ky-map{font-size:12px}.ky-faq details{border-top:1px solid var(--ky-line);padding:22px 0}.ky-faq details:last-child{border-bottom:1px solid var(--ky-line)}.ky-faq summary{cursor:pointer;font-size:16px;line-height:1.8;padding-right:20px}.ky-faq details p{margin:16px 0 0;font-size:15px}.ky-contact-info{border-top:1px solid var(--ky-line);padding:22px 0}.ky-phone{font:clamp(28px,4vw,44px)/1.5 Arial;letter-spacing:.04em;text-decoration:none}.ky-legal h2{font-size:23px;margin-top:40px}.ky-legal p,.ky-legal li{font-size:15px;line-height:2}.ky-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.wpcf7 label{font-size:14px;line-height:2}.wpcf7 input:not([type=checkbox]):not([type=submit]),.wpcf7 select,.wpcf7 textarea{width:100%;margin-top:10px;border:1px solid #adb9aa;background:#fff;color:var(--ky-ink);padding:13px 14px;border-radius:0;min-height:50px;font-size:16px}.wpcf7 textarea{min-height:180px;resize:vertical}.wpcf7 input[type=submit]{padding:17px 28px;background:var(--ky-ink);color:white;border:0;cursor:pointer;min-width:240px;font-size:16px}.wpcf7 input[type=checkbox]{width:18px;height:18px;vertical-align:middle;margin-right:8px}.wpcf7 .wpcf7-list-item{margin:0}.ky-required,.ky-optional{font-size:10px;margin-left:10px;border:1px solid #abb8a8;padding:2px 5px}.ky-required{background:#e7ebe2}.ky-form-notice{padding:24px;border:1px solid var(--ky-line)}.wpcf7-not-valid-tip{font-size:13px}.ky-footer{padding:60px max(24px,5vw) 28px;border-top:1px solid var(--ky-line);background:#e7ebe2}.ky-footer-main{display:flex;justify-content:space-between;gap:50px}.ky-footer p{font-size:13px;line-height:2}.ky-footer-links{display:grid;grid-template-columns:1fr 1fr;gap:15px 40px;align-content:start}.ky-footer-links a{font-size:13px;text-decoration:none}.ky-footer-links a:hover{text-decoration:underline}.ky-footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #c4cebf;margin-top:45px;padding-top:20px;font:11px Arial,sans-serif}.ky-article{max-width:840px;margin:auto;padding:60px 24px 100px}.ky-article h1{font:400 clamp(28px,4vw,44px)/1.7 var(--ky-serif)}.ky-article .wp-block-post-date{font:13px Arial;color:var(--ky-muted)}.ky-article .wp-block-post-content{margin-top:40px;line-height:2}.ky-list .wp-block-post-template{list-style:none;padding:0}.ky-list .wp-block-post-template>li{padding:24px 0;border-top:1px solid var(--ky-line)}.ky-list .wp-block-post-title{font:400 22px/1.8 var(--ky-serif)}.ky-list .wp-block-post-date{font:13px Arial;color:var(--ky-muted)}.ky-list .wp-block-query-pagination{display:flex;gap:24px;margin-top:30px}
@media(max-width:1100px){.ky-desktop-nav{display:none}.ky-mobile-menu{display:block}.ky-mobile-menu summary{list-style:none;cursor:pointer;padding:12px 0 12px 18px;font-size:13px;letter-spacing:.1em}.ky-mobile-menu summary::-webkit-details-marker{display:none}.ky-mobile-menu summary:after{content:'☰';font-size:22px;vertical-align:middle;margin-left:12px}.ky-mobile-menu[open] summary:after{content:'×'}.ky-mobile-menu nav{position:absolute;top:100%;left:0;right:0;background:var(--ky-paper);padding:24px max(24px,5vw);box-shadow:0 10px 20px #0001;max-height:75vh;overflow:auto}.ky-mobile-menu nav a{display:block;padding:14px 0;border-bottom:1px solid var(--ky-line);text-decoration:none;font-size:16px}.ky-office-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.ky-header-inner{padding:6px 20px;min-height:76px;gap:12px}.ky-logo img{width:218px;height:58px}.ky-mobile-menu summary{font-size:0;padding:12px 0}.ky-mobile-menu summary:after{margin:0}.ky-hero{height:calc(88svh - 76px);min-height:560px;max-height:760px}.ky-hero>img{object-position:44% center}.ky-hero:after{background:linear-gradient(90deg,rgba(12,30,22,.72),rgba(12,30,22,.18))}.ky-hero-copy{padding:50px 24px 80px}.ky-hero h1{font-size:clamp(32px,8.3vw,43px);line-height:1.75;letter-spacing:.02em}.ky-hero p{font-size:15px}.ky-section{padding:64px 24px}.ky-split{grid-template-columns:1fr;gap:32px}.ky-reverse .ky-photo{order:2}.ky-intro-links{grid-template-columns:1fr;gap:12px}.ky-audiences{grid-template-columns:1fr}.ky-audience{padding:44px 24px}.ky-audience+div{border-left:0}.ky-section-head{display:block}.ky-section-head .ky-link{margin-top:20px}.ky-news-list>a{grid-template-columns:1fr 20px;gap:8px;font-size:15px}.ky-news-list time{grid-column:1/-1}.ky-contact-band .ky-wrap{display:block}.ky-contact-band .ky-actions{display:grid;grid-template-columns:1fr}.ky-button{width:100%}.ky-page-heading{padding:35px 24px 40px}.ky-page-heading .ky-breadcrumb{margin-bottom:28px}.ky-page-heading h1{font-size:32px}.ky-lead{font-size:16px}.ky-office-grid{grid-template-columns:1fr;gap:10px}.ky-office-nav{gap:8px}.ky-facts th,.ky-facts td{display:block;width:100%;padding:14px 0}.ky-facts th{border:0;padding-bottom:0}.ky-form-grid{grid-template-columns:1fr}.ky-footer{padding:40px 24px 24px}.ky-footer-main{display:block}.ky-footer-links{margin-top:30px;gap:14px 18px}.ky-footer-bottom{display:block;line-height:2}.ky-article{padding-top:40px}.ky-section h2{font-size:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
