/* TOPのメイン下専用。共通ヘッダー・メイン・フッターには適用しません。 */
#kyokuto-top{--kt-navy:#1f2f54;--kt-blue:#1e73be;--kt-cyan:#24bce2;--kt-ink:#202d45;--kt-paper:#f3f6fa;color:var(--kt-ink);background:#fff;font-family:"Noto Sans JP", "Hiragino Kaku Gothic ProN",Meiryo,sans-serif;line-height:1.95;overflow:hidden;text-align:left;position:relative}
#kyokuto-top,#kyokuto-top *{box-sizing:border-box}
#kyokuto-top :is(p,h2,h3,figure){margin:0;padding:0}
#kyokuto-top a{color:inherit;text-decoration:none}
#kyokuto-top img{display:block;max-width:100%;width:100%;height:100%;object-fit:cover}
#kyokuto-top button{font:inherit;cursor:pointer}
#kyokuto-top :is(a,button,[tabindex]):focus-visible{outline:3px solid var(--kt-blue);outline-offset:6px}
#kyokuto-top .kt-wrap{width:min(1240px,86%);margin:0 auto;position:relative;z-index:2}
#kyokuto-top .kt-section{position:relative;isolation:isolate;padding:110px 0 120px}
#kyokuto-top .kt-section-label{display:flex;gap:22px;align-items:center;margin-bottom:60px;font:700 18px/1.4 Arial,sans-serif;letter-spacing:.09em;color:var(--kt-navy)}
#kyokuto-top .kt-section-label>span:first-child{border:1px solid #1f2f5433;border-radius:50%;width:40px;height:40px;display:grid;place-items:center;letter-spacing:0;font-size:15px;flex:none}
#kyokuto-top .kt-section-label i{height:1px;background:currentColor;opacity:.22;flex:1}
#kyokuto-top .kt-en{font:900 clamp(50px,6.2vw,92px)/.98 Arial,Helvetica,sans-serif;letter-spacing:-.045em;color:var(--kt-navy)}
#kyokuto-top .kt-en>span{color:var(--kt-blue)}
#kyokuto-top .kt-mini-label{display:block;font:700 18px/1.4 Arial,sans-serif;letter-spacing:.12em;color:var(--kt-blue)}
#kyokuto-top .kt-watermark{position:absolute;z-index:0;pointer-events:none;font:900 clamp(120px,17vw,260px)/1 Arial,sans-serif;letter-spacing:-.05em;white-space:nowrap;color:#1f2f5407;right:-2%;top:27px;will-change:transform}
#kyokuto-top .kt-intro-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:8%;align-items:center}
#kyokuto-top .kt-intro-heading{font-size:clamp(27px,2.9vw,43px);font-weight:700;letter-spacing:.015em;line-height:1.6;margin-top:32px}
#kyokuto-top .kt-intro-text>.kt-mini-label{margin-bottom:24px}
#kyokuto-top .kt-intro-text>p,#kyokuto-top .kt-strength-copy>p,#kyokuto-top .kt-product-copy>p:not(.kt-en){font-size:16px;line-height:2.2}
#kyokuto-top .kt-link{display:flex;align-items:center;justify-content:space-between;gap:38px;width:min(320px,100%);min-height:76px;border-bottom:1px solid var(--kt-navy);margin-top:35px;font-size:20px;font-weight:700;position:relative}
#kyokuto-top .kt-link:after{content:"";position:absolute;bottom:-1px;height:2px;width:100%;left:0;background:var(--kt-cyan);transform:scaleX(0);transform-origin:left;transition:transform .4s}
#kyokuto-top .kt-link>span{display:grid;place-items:center;flex:none;width:46px;height:46px;border-radius:50%;background:var(--kt-navy);color:#fff;font:23px/1 Arial;transition:background .3s,transform .3s}
#kyokuto-top .kt-link:hover:after{transform:scaleX(1)}
#kyokuto-top .kt-link:hover>span{transform:rotate(45deg);background:var(--kt-blue)}
#kyokuto-top .kt-photo{position:relative;overflow:hidden;background:#e5eaf1;border-radius:5px}
#kyokuto-top .kt-photo img{transition:transform 1s cubic-bezier(.2,.7,.2,1)}
#kyokuto-top .kt-photo:hover img{transform:scale(1.045)}
#kyokuto-top .kt-photo-composition{position:relative;display:grid;grid-template-columns:1.4fr 1fr;grid-template-rows:370px auto;gap:26px;margin-top:72px}
#kyokuto-top .kt-photo-main{grid-column:1;grid-row:1;margin:0}
#kyokuto-top .kt-photo-sub{grid-column:2;grid-row:1;margin:45px 0 0}
#kyokuto-top .kt-photo-detail{grid-column:1;grid-row:2;width:60%;height:230px;margin:-50px 80px 0 auto;z-index:3;border:9px solid white;border-radius:9px}
#kyokuto-top .kt-photo-caption{grid-column:2;grid-row:2;align-self:start;display:block;padding-top:4px;margin:0;border:0}
#kyokuto-top .kt-photo-caption p{font-size:18px;line-height:2;margin-top:18px}
#kyokuto-top .kt-image-word{position:absolute;bottom:30px;left:32px;color:white;text-shadow:0 1px 18px #10284445;font:900 clamp(36px,4.5vw,65px)/.95 Arial;letter-spacing:-.04em}
#kyokuto-top .kt-about{padding-bottom:150px}
#kyokuto-top .kt-purpose{color:white;background:var(--kt-navy);padding-bottom:100px}
#kyokuto-top .kt-purpose-photo{position:absolute;inset:0;z-index:-2}
#kyokuto-top .kt-purpose-photo img{width:100%;height:100%;object-fit:cover;object-position:65% center}
#kyokuto-top .kt-purpose-scrim{position:absolute;inset:0;background:linear-gradient(90deg,#142444f5 0%,#1f2f54dd 44%,#1f2f5470 100%);z-index:-1}
#kyokuto-top .kt-purpose .kt-section-label{color:white;margin-bottom:40px}
#kyokuto-top .kt-purpose .kt-section-label>span:first-child{border-color:#ffffff60}
#kyokuto-top .kt-purpose .kt-en{color:white;font-size:clamp(66px,7vw,100px)}
#kyokuto-top .kt-purpose-heading{font-size:clamp(27px,3.1vw,45px);line-height:1.7;letter-spacing:.035em;font-weight:700;margin-top:36px}
#kyokuto-top .kt-purpose-bottom{display:grid;grid-template-columns:1fr 1.15fr;align-items:end;gap:6%;margin-top:45px}
#kyokuto-top .kt-purpose-body{max-width:590px;font-size:15px;line-height:2.15;flex:1}
#kyokuto-top .kt-purpose-outline{font:900 clamp(42px,5.5vw,78px)/1.03 Arial,sans-serif;color:transparent;-webkit-text-stroke:1px #ffffff60;letter-spacing:-.04em;white-space:nowrap;text-align:right}
#kyokuto-top .kt-wire-lines{position:absolute;inset:0;z-index:0;opacity:.22;pointer-events:none}
#kyokuto-top .kt-wire-lines svg{width:100%;height:100%;fill:none;stroke:#84d9f1;stroke-width:1}
#kyokuto-top.kt-motion .kt-wire-lines path{stroke-dasharray:1900;stroke-dashoffset:1900;transition:stroke-dashoffset 2.5s cubic-bezier(.16,1,.3,1)}
#kyokuto-top.kt-motion .kt-purpose.kt-in-view .kt-wire-lines path{stroke-dashoffset:0}
#kyokuto-top .kt-strength{padding-top:120px;padding-bottom:90px;background:#fff}
#kyokuto-top .kt-strength>.kt-watermark{top:75px;right:-5%;font-size:clamp(110px,15vw,220px)}
#kyokuto-top .kt-dot-pattern{position:absolute;right:0;top:450px;width:43%;height:560px;background-color:var(--kt-paper);background-image:radial-gradient(#1f2f541a 1px,transparent 1px);background-size:18px 18px;border-radius:6px 0 0 6px;z-index:0}
#kyokuto-top .kt-strength-heading{display:grid;grid-template-columns:1.05fr 1fr;gap:7%;align-items:center}
#kyokuto-top .kt-strength-heading .kt-en{font-size:clamp(45px,5.7vw,83px)}
#kyokuto-top .kt-large-jp{font-size:clamp(23px,2.1vw,31px);font-weight:700;line-height:1.7;letter-spacing:.02em}
#kyokuto-top .kt-large-jp>span{display:inline-block;color:var(--kt-blue);margin-top:12px}
#kyokuto-top .kt-strength-grid{display:grid;grid-template-columns:.8fr 1fr;gap:13%;align-items:center;margin-top:65px}
#kyokuto-top .kt-strength-visual{position:relative;padding-bottom:48px}
#kyokuto-top .kt-strength-visual>.kt-photo:first-child{height:370px}
#kyokuto-top .kt-strength-inset{position:absolute;bottom:0;left:-60px;width:235px;height:170px;border:8px solid white;border-radius:9px}
#kyokuto-top .kt-promises{display:grid;grid-template-columns:repeat(4,1fr);margin-top:85px;border-top:1px solid #1f2f5430}
#kyokuto-top .kt-promise{position:relative;padding:42px 25px 34px;border-right:1px solid #1f2f5425}
#kyokuto-top .kt-promise:first-child{padding-left:0}
#kyokuto-top .kt-promise:last-child{border-right:0}
#kyokuto-top .kt-promise-number{display:block;font:900 76px/.9 Arial;color:transparent;-webkit-text-stroke:1px #1e73be40;letter-spacing:-.04em;margin-bottom:30px}
#kyokuto-top .kt-promise-en{display:block;font:700 16px/1.5 Arial;letter-spacing:.065em;color:var(--kt-blue)}
#kyokuto-top .kt-promise h3{font-size:clamp(25px,2.7vw,38px);font-weight:700;margin-top:13px;line-height:1.5;white-space:nowrap}
#kyokuto-top .kt-promise i{display:block;height:3px;width:45px;background:var(--kt-blue);margin-top:28px}
#kyokuto-top .kt-promises-caption{font-size:20px;letter-spacing:.04em;padding-top:30px;border-top:1px solid #1f2f5430;text-align:right}
#kyokuto-top .kt-products{background:var(--kt-paper);padding-bottom:125px}
#kyokuto-top .kt-products .kt-watermark{color:#1f2f5409;top:22px}
#kyokuto-top .kt-product-grid{display:grid;grid-template-columns:1fr .95fr;gap:9%;align-items:center}
#kyokuto-top .kt-product-visual{position:relative;padding-right:45px;padding-bottom:92px}
#kyokuto-top .kt-product-main{height:400px}
#kyokuto-top .kt-product-small{position:absolute;bottom:0;right:0;width:58%;height:185px;border:8px solid var(--kt-paper);border-radius:9px}
#kyokuto-top .kt-product-word{position:absolute;bottom:3px;left:0;z-index:4;font:900 clamp(36px,4vw,58px)/.93 Arial,sans-serif;letter-spacing:-.04em;color:var(--kt-navy);-webkit-text-stroke:3px white;paint-order:stroke fill;text-shadow:0 0 2px white}
#kyokuto-top .kt-product-copy .kt-en{font-size:clamp(48px,5.3vw,78px)}
#kyokuto-top .kt-product-title{font-size:24px;line-height:1.5;font-weight:700;letter-spacing:.07em;margin-top:18px;margin-bottom:35px}
#kyokuto-top .kt-gallery{padding:35px 0 45px;background:white}
#kyokuto-top .kt-gallery-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}
#kyokuto-top .kt-gallery-viewport{width:100%;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain}
#kyokuto-top .kt-gallery-viewport::-webkit-scrollbar{display:none}
#kyokuto-top .kt-gallery-track{display:flex;gap:18px;width:max-content;padding-left:0;padding-right:0}
#kyokuto-top .kt-gallery-photo{width:clamp(240px,27vw,420px);height:clamp(180px,22vw,315px);border-radius:5px;overflow:hidden;flex:none}
#kyokuto-top .kt-gallery-bottom{display:flex;justify-content:space-between;gap:20px;font:700 14px/1.6 Arial;letter-spacing:.08em;color:#6e7d94;margin-top:22px}
#kyokuto-top .kt-mobile-break{display:none}
#kyokuto-top.kt-motion .kt-reveal{opacity:0;transform:translateY(32px);transition:opacity .85s var(--kt-delay,0s),transform .85s var(--kt-delay,0s) cubic-bezier(.16,1,.3,1)}
#kyokuto-top.kt-motion .kt-reveal.kt-visible{opacity:1;transform:translateY(0)}
#kyokuto-top.kt-motion .kt-image-reveal{transition:opacity .7s var(--kt-delay,0s),transform 1.1s var(--kt-delay,0s)}
#kyokuto-top.kt-motion .kt-image-reveal img{clip-path:inset(0 100% 0 0);transition:clip-path 1.1s var(--kt-delay,0s) cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.2,.7,.2,1)}
#kyokuto-top.kt-motion .kt-image-reveal.kt-visible img{clip-path:inset(0 0 0 0)}
#kyokuto-top.kt-motion .kt-photo-detail{transform:translateY(32px)}
#kyokuto-top.kt-motion .kt-photo-detail.kt-visible{transform:none}
@media(min-width:1600px){#kyokuto-top .kt-wrap{width:1240px}#kyokuto-top .kt-gallery-track{padding-left:0}}
@media(max-width:1050px){#kyokuto-top .kt-wrap{width:88%}#kyokuto-top .kt-section{padding-top:85px;padding-bottom:85px}#kyokuto-top .kt-intro-grid{gap:6%}#kyokuto-top .kt-en{font-size:clamp(48px,6.6vw,76px)}#kyokuto-top .kt-intro-heading{font-size:28px}#kyokuto-top .kt-photo-composition{grid-template-columns:1.4fr 1fr;grid-template-rows:330px auto;gap:22px;margin-top:55px}#kyokuto-top .kt-photo-main{grid-column:1;grid-row:1;margin:0}#kyokuto-top .kt-photo-sub{grid-column:2;grid-row:1;margin:40px 0 0}#kyokuto-top .kt-photo-detail{grid-column:1;grid-row:2;width:60%;height:175px;margin:-40px 40px 0 auto;transform:none}#kyokuto-top.kt-motion .kt-photo-detail.kt-visible{transform:none}#kyokuto-top .kt-photo-caption{grid-column:2;grid-row:2;padding-top:0}#kyokuto-top .kt-photo-caption p{font-size:18px}#kyokuto-top .kt-image-word{font-size:40px;left:22px;bottom:25px}#kyokuto-top .kt-purpose-heading{font-size:32px}#kyokuto-top .kt-purpose-bottom{gap:5%}#kyokuto-top .kt-purpose-outline{font-size:clamp(34px,5.2vw,52px)}#kyokuto-top .kt-strength-heading{grid-template-columns:1fr;gap:40px}#kyokuto-top .kt-strength-heading .kt-en{font-size:70px}#kyokuto-top .kt-large-jp{font-size:30px}#kyokuto-top .kt-strength-grid{gap:9%;grid-template-columns:1fr 1fr}#kyokuto-top .kt-strength-visual>.kt-photo:first-child{height:340px}#kyokuto-top .kt-strength-inset{left:-25px;width:180px;height:130px}#kyokuto-top .kt-promise{padding:30px 15px}#kyokuto-top .kt-promise h3{font-size:28px}#kyokuto-top .kt-promise-en{font-size:14px}#kyokuto-top .kt-product-grid{gap:6%}#kyokuto-top .kt-product-main{height:355px}#kyokuto-top .kt-product-small{height:160px}#kyokuto-top .kt-product-copy .kt-en{font-size:48px}#kyokuto-top .kt-product-word{font-size:40px}}
@media(max-width:700px){#kyokuto-top .kt-section{padding:65px 0 70px}#kyokuto-top .kt-section-label{font-size:14px;gap:13px;margin-bottom:35px;letter-spacing:.1em}#kyokuto-top .kt-section-label>span:first-child{width:32px;height:32px;font-size:13px}#kyokuto-top .kt-watermark{font-size:105px;top:35px;right:-10%}#kyokuto-top .kt-intro-grid{grid-template-columns:1fr;gap:32px}#kyokuto-top .kt-en{font-size:clamp(45px,11.6vw,72px)}#kyokuto-top .kt-intro-heading{font-size:clamp(25px,6.6vw,35px);line-height:1.65;letter-spacing:.01em;margin-top:24px}#kyokuto-top .kt-intro-text>.kt-mini-label{margin-bottom:16px}#kyokuto-top .kt-mini-label{font-size:16px}#kyokuto-top .kt-intro-text>p,#kyokuto-top .kt-strength-copy>p,#kyokuto-top .kt-product-copy>p:not(.kt-en){font-size:14px;line-height:2.15}#kyokuto-top .kt-link{min-height:68px;width:100%;margin-top:22px;font-size:18px}#kyokuto-top .kt-link>span{width:40px;height:40px;font-size:21px}#kyokuto-top .kt-photo-composition{grid-template-columns:1fr 1fr;grid-template-rows:250px 165px auto;gap:15px;margin-top:40px}#kyokuto-top .kt-photo-main{grid-column:1/3;grid-row:1;margin:0}#kyokuto-top .kt-photo-sub{grid-column:1;grid-row:2;margin-top:0}#kyokuto-top .kt-photo-detail{grid-column:2;grid-row:2;border:0;border-radius:5px;margin:0;width:100%;height:165px;transform:none}#kyokuto-top .kt-photo-caption{grid-column:1/3;grid-row:3;display:block;border-top:1px solid #1f2f5425;padding-top:22px;margin-top:8px}#kyokuto-top .kt-photo-caption p{font-size:16px;line-height:2;margin-top:12px}#kyokuto-top .kt-image-word{font-size:42px;left:20px;bottom:20px}#kyokuto-top .kt-purpose{padding-top:62px;padding-bottom:65px}#kyokuto-top .kt-purpose-photo img{object-position:70% center}#kyokuto-top .kt-purpose-scrim{background:linear-gradient(90deg,#172746ed,#1f2f54b8)}#kyokuto-top .kt-purpose .kt-section-label{margin-bottom:35px}#kyokuto-top .kt-purpose .kt-en{font-size:clamp(57px,15vw,76px)}#kyokuto-top .kt-purpose-heading{font-size:clamp(24px,6.35vw,33px);letter-spacing:0;line-height:1.8;margin-top:28px}#kyokuto-top .kt-mobile-break{display:block}#kyokuto-top .kt-purpose-bottom{display:block;margin-top:27px}#kyokuto-top .kt-purpose-body{font-size:13px;line-height:2.1}#kyokuto-top .kt-purpose-outline{display:block;font-size:clamp(38px,8.8vw,60px);line-height:1.05;text-align:right;margin-top:35px;opacity:.65}#kyokuto-top .kt-strength>.kt-watermark{top:35px;font-size:92px;right:-20%}#kyokuto-top .kt-strength-heading{gap:28px}#kyokuto-top .kt-strength-heading .kt-en{font-size:clamp(42px,10.7vw,60px)}#kyokuto-top .kt-large-jp{font-size:clamp(22px,5.7vw,29px);line-height:1.8}#kyokuto-top .kt-large-jp>span{margin-top:8px}#kyokuto-top .kt-strength-grid{grid-template-columns:1fr;gap:35px;margin-top:28px}#kyokuto-top .kt-strength-visual{width:92%;margin-left:8%;padding-bottom:45px}#kyokuto-top .kt-strength-visual>.kt-photo:first-child{height:265px}#kyokuto-top .kt-strength-inset{left:-8.7%;bottom:0;width:54%;height:135px;border-width:6px}#kyokuto-top .kt-dot-pattern{width:80%;top:580px;height:350px;background-size:16px 16px}#kyokuto-top .kt-promises{grid-template-columns:1fr 1fr;margin-top:45px}#kyokuto-top .kt-promise,#kyokuto-top .kt-promise:first-child{padding:28px 17px}#kyokuto-top .kt-promise:nth-child(2){border-right:0}#kyokuto-top .kt-promise:nth-child(n+3){border-top:1px solid #1f2f5425}#kyokuto-top .kt-promise-number{font-size:64px;margin-bottom:20px}#kyokuto-top .kt-promise-en{font-size:12.5px;letter-spacing:.025em}#kyokuto-top .kt-promise h3{font-size:28px;margin-top:10px}#kyokuto-top .kt-promise i{width:35px;height:2px;margin-top:20px}#kyokuto-top .kt-promises-caption{font-size:16px;line-height:1.8;letter-spacing:.01em;text-align:center;padding-top:22px}#kyokuto-top .kt-product-grid{grid-template-columns:1fr;gap:40px}#kyokuto-top .kt-product-visual{padding-right:30px;padding-bottom:70px}#kyokuto-top .kt-product-main{height:300px}#kyokuto-top .kt-product-small{height:135px;border-width:6px}#kyokuto-top .kt-product-word{font-size:43px}#kyokuto-top .kt-product-copy .kt-en{font-size:clamp(45px,11.8vw,62px)}#kyokuto-top .kt-product-title{font-size:20px;margin-top:13px;margin-bottom:24px}#kyokuto-top .kt-gallery{padding:28px 0 30px}#kyokuto-top .kt-gallery-head{gap:12px;margin-bottom:17px}#kyokuto-top .kt-gallery-head .kt-mini-label{font-size:15px;letter-spacing:.06em}#kyokuto-top .kt-gallery-track{gap:12px;padding-left:0;padding-right:0}#kyokuto-top .kt-gallery-photo{width:72vw;height:220px}#kyokuto-top .kt-gallery-bottom{font-size:12px;margin-top:18px;flex-direction:column;gap:8px}#kyokuto-top .kt-gallery-bottom>span:last-child{display:block}#kyokuto-top.kt-motion .kt-reveal{transition-delay:0s}#kyokuto-top.kt-motion .kt-photo-detail{transform:translateY(25px)}#kyokuto-top.kt-motion .kt-photo-detail.kt-visible{transform:none}}
@media(prefers-reduced-motion:reduce){#kyokuto-top .kt-reveal,#kyokuto-top.kt-motion .kt-reveal{opacity:1;transform:none;clip-path:none;transition:none}#kyokuto-top .kt-photo img,#kyokuto-top .kt-link>span{transition:none}#kyokuto-top .kt-watermark{transform:none!important}#kyokuto-top .kt-wire-lines path{stroke-dashoffset:0!important;transition:none!important}}
