/* Revision 02: ZEN's photo, vertical type and whitespace rhythm. */
body.home #container{padding-top:0}body.home #header:not(.type2){background:transparent!important;box-shadow:none}body.home:not(.start_scroll) #header_logo img{filter:brightness(0) invert(1)}body.home:not(.start_scroll) #global_menu>ul>li>a{color:#fff}body.home:not(.start_scroll) #header{color:#fff}body.home #header.type1{position:absolute;top:0}body.home.admin-bar #header.type1{top:32px}body.home #header.type1 #header_logo{top:35px}body.home #header.type1 #header_logo img{width:150px;height:auto}body.home #global_menu>ul>li>a{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:16px;letter-spacing:.1em}
.kf-zen-home{background:#fff;color:#252b26}.kf-zen-hero{position:relative;width:100%;height:100svh;min-height:650px;overflow:hidden}.admin-bar .kf-zen-hero{height:calc(100svh - 32px)}.kf-zen-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 60%}.kf-zen-hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,20,14,.6),rgba(8,20,14,.02) 50%,rgba(8,20,14,.4))}.kf-zen-scroll{position:absolute;bottom:46px;left:50%;transform:translateX(-50%);color:#fff!important;display:flex;flex-direction:column;align-items:center;gap:24px;font-family:"Yu Mincho",serif;font-size:15px;letter-spacing:.18em;white-space:nowrap}.kf-zen-scroll i{height:54px;width:1px;background:#fff}.kf-zen-latest{position:absolute;bottom:36px;right:36px;width:430px;max-width:35%;padding:18px 22px;border:1px solid rgba(255,255,255,.45);display:flex;align-items:center;gap:18px;color:#fff!important;font-size:12px;line-height:1.7;background:rgba(8,20,14,.15)}.kf-zen-latest time{white-space:nowrap}.kf-zen-latest b{font-weight:400;margin-left:auto}.kf-zen-concept{padding:150px 32px 160px;min-height:640px;display:flex;align-items:center;justify-content:center}.kf-zen-vertical{display:flex;flex-direction:row-reverse;align-items:flex-start;gap:70px;margin:0 auto;font-family:"Yu Mincho","Hiragino Mincho ProN",serif}.kf-zen-vertical h1{writing-mode:vertical-rl;font-size:38px;font-weight:500;line-height:1.65;letter-spacing:.16em;margin:0;white-space:nowrap}.kf-zen-concept-copy{display:flex;flex-direction:row-reverse;gap:24px;margin-top:6px}.kf-zen-concept-copy p{writing-mode:vertical-rl;font-size:16px;line-height:2;letter-spacing:.11em;margin:0}.kf-zen-home .design_headline{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:500;letter-spacing:.08em;font-size:36px;line-height:1.65}.kf-zen-banner{position:relative;height:clamp(460px,42vw,680px);overflow:hidden}.kf-zen-banner>.content{position:absolute;inset:0;z-index:2;display:flex;justify-content:center;align-items:center}.kf-zen-banner>picture,.kf-zen-banner>.simpleParallax{position:absolute;inset:0;display:block}.kf-zen-banner picture img,.kf-zen-banner .simpleParallax img{width:100%;height:100%;object-fit:cover}.kf-zen-banner .headline_content{position:relative;z-index:2;color:white;text-align:center;padding:45px 36px;border:1px solid rgba(255,255,255,.7);min-width:180px}.kf-zen-banner .headline{font-family:"Yu Mincho",serif;font-size:52px!important;writing-mode:vertical-rl;margin:0 auto;letter-spacing:.22em;line-height:1.6}.kf-zen-banner .subtitle{font-family:"Yu Mincho",serif;line-height:1.8;letter-spacing:.13em;font-size:15px;margin-top:26px}.kf-zen-banner .overlay{position:absolute;inset:0;z-index:1}.kf-zen-guidance,.kf-zen-events,.kf-zen-journal,.kf-zen-contact{padding:125px 30px;text-align:center}.kf-zen-kicker{font-size:13px;letter-spacing:.18em;margin:0 0 26px;color:#53634a}.kf-zen-lead{font-family:"Yu Mincho",serif;font-size:16px;line-height:2.6;margin:38px auto 54px;max-width:800px}.kf-zen-paths{max-width:1000px;margin:55px auto 0;display:grid;grid-template-columns:1fr 1fr;text-align:left;border-top:1px solid #dce0d8;border-bottom:1px solid #dce0d8}.kf-zen-paths a{display:grid;grid-template-columns:1fr 25px;gap:16px;padding:35px 40px;color:#252b26}.kf-zen-paths a+a{border-left:1px solid #dce0d8}.kf-zen-paths span{grid-column:1/-1;font-size:12px;color:#62695f;letter-spacing:.1em}.kf-zen-paths strong{font-family:"Yu Mincho",serif;font-size:22px;font-weight:500;line-height:1.5}.kf-zen-paths b{font-weight:400;align-self:center}.kf-zen-news{padding:120px 30px}.kf-zen-news .news_list2{max-width:900px;margin:50px auto}.kf-zen-news .link_button{text-align:center}.kf-zen-event-intro{display:flex;justify-content:center;flex-direction:row-reverse;gap:35px;margin:45px 0 70px}.kf-zen-event-intro p{writing-mode:vertical-rl;text-align:left;font-family:"Yu Mincho",serif;font-size:16px;line-height:2.2;letter-spacing:.1em}.kf-zen-event-list{max-width:1000px;margin:0 auto 50px;text-align:left;border-top:1px solid #dce0d8}.kf-zen-event-list article{display:grid;grid-template-columns:130px 1fr;gap:28px;padding:28px 0;border-bottom:1px solid #dce0d8;align-items:center}.kf-zen-event-list time{font-size:13px;color:#62695f}.kf-zen-event-list h3{font-size:17px;font-weight:400;line-height:1.8}.kf-zen-event-list a{display:flex;justify-content:space-between;gap:25px}.kf-zen-journal{border-bottom:1px solid #e3e6df}.kf-zen-contact{padding-bottom:110px}.kf-zen-address{font-size:14px;line-height:2.3}.kf-zen-home a:focus-visible{outline:3px solid #8f9e79;outline-offset:6px}.kf-zen-home .c-button01{min-width:260px;max-width:100%}body.home #header.type2{background:white!important}body.home #header.type2 #header_logo img{filter:brightness(0)}body.home #header.type2 #global_menu>ul>li>a{color:#252b26}
@media(max-width:1280px){body.home #header{position:absolute;background:transparent!important}body.home.admin-bar #header{top:32px}.kf-zen-latest{max-width:none;width:auto;left:25px;right:25px;bottom:25px}.kf-zen-scroll{bottom:125px}.kf-zen-hero-photo{object-position:50% 58%}}
@media(max-width:767px){body.home.admin-bar #header,body.home.admin-bar #header.type1{top:46px}body.home #header.type1 #header_logo{top:0}body.home #header.type1 #header_logo img{width:100px}.kf-zen-hero{min-height:610px;max-height:900px}.admin-bar .kf-zen-hero{height:calc(100svh - 46px)}.kf-zen-hero-photo{object-position:50% 56%}.kf-zen-latest{font-size:11px;gap:12px;padding:14px;left:20px;right:20px}.kf-zen-scroll{font-size:12px;bottom:122px;gap:20px}.kf-zen-concept{padding:90px 24px;min-height:560px}.kf-zen-vertical{gap:30px}.kf-zen-vertical h1{font-size:26px;line-height:1.6;letter-spacing:.12em}.kf-zen-concept-copy{gap:12px}.kf-zen-concept-copy p{font-size:13px;line-height:1.75;letter-spacing:.05em}.kf-zen-home .design_headline{font-size:26px;line-height:1.7}.kf-zen-banner{height:430px}.kf-zen-banner .headline_content{padding:30px 24px;min-width:150px}.kf-zen-banner .headline{font-size:38px!important}.kf-zen-banner .subtitle{font-size:13px;margin-top:20px}.kf-zen-guidance,.kf-zen-events,.kf-zen-journal,.kf-zen-contact,.kf-zen-news{padding:75px 24px}.kf-zen-lead{font-size:14px;line-height:2.2;margin:28px auto 36px}.kf-zen-lead br{display:none}.kf-zen-paths{grid-template-columns:1fr;margin-top:35px}.kf-zen-paths a{padding:28px 0;gap:12px}.kf-zen-paths a+a{border-left:0;border-top:1px solid #dce0d8}.kf-zen-paths strong{font-size:20px}.kf-zen-news .news_list2{margin:35px auto}.kf-zen-event-intro{gap:20px;margin:35px 0 50px}.kf-zen-event-intro p{font-size:14px}.kf-zen-event-list article{grid-template-columns:1fr;gap:10px;padding:22px 0}.kf-zen-event-list h3{font-size:15px}.kf-zen-address{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.kf-zen-banner img{transform:none!important;transition:none!important}}
body.home #header{top:0!important}body.home #header.type2 #header_logo{top:0}#kf-banner-pray picture img{object-position:50% 0%}#kf-banner-pray>.content{justify-content:flex-end;padding-right:9vw}@media(max-width:767px){body.home #header #header_logo{top:0!important}#kf-banner-pray>.content{justify-content:center;padding-right:0}}
.kf-zen-banner .headline,.kf-zen-banner .headline span{height:auto!important;max-height:none!important;white-space:nowrap!important}.kf-zen-banner .headline span{padding:0!important}
/* Revision 03: hover/focus header and a replaceable central tagline. */
:root{--kf-tagline-font:"Yu Mincho","YuMincho","Hiragino Mincho ProN",serif}
.kf-zen-hero-tagline{position:absolute;z-index:2;top:51%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:row-reverse;gap:28px;margin:0;color:#fff;font-family:var(--kf-tagline-font);font-size:38px;font-weight:500;line-height:1.55;letter-spacing:.19em;text-shadow:0 2px 16px rgba(0,0,0,.65);white-space:nowrap;pointer-events:none}
.kf-zen-hero-tagline span{writing-mode:vertical-rl;text-orientation:mixed;display:block}
.kf-zen-vertical #kf-concept-title{writing-mode:vertical-rl;font-size:38px;font-weight:500;line-height:1.65;letter-spacing:.16em;margin:0;white-space:nowrap}
body.home #header{transition:background-color .2s ease,color .2s ease;overflow:visible}
body.home #header:focus-within{background:#fff!important;color:#222!important}
body.home #header:focus-within #header_logo img{filter:brightness(0)!important}
body.home #header:focus-within #global_menu>ul>li>a{color:#222!important}
body.home #header:focus-within #drawer_menu_button span{background:#222!important}
body.home #header a:focus-visible{outline:2px solid #66795b;outline-offset:-6px}
@media(min-width:1281px){
 body.home #header.type1:not(.type2) #header_logo{top:0;align-self:flex-start;height:220px}
 body.home #header.type1:not(.type2) #header_logo a,body.home #header.type1:not(.type2) #header_logo a picture{align-items:flex-start;justify-content:flex-start}
 body.home #header.type1:not(.type2) #header_logo a{padding-top:50px}
 body.home #header:is(:hover,.active_header){background:#fff!important;color:#222!important}
 body.home #header:is(:hover,.active_header) #header_logo img{filter:brightness(0)!important}
 body.home #header:is(:hover,.active_header) #global_menu>ul>li>a{color:#222!important}
 body.home #global_menu li:is(:hover,:focus-within)>ul{display:block!important;opacity:1!important;visibility:visible!important}
 body.home #global_menu ul ul{background:#fff}
 body.home #global_menu ul ul a{background:#fff;color:#222;transition:background-color .2s ease}
 body.home #global_menu ul ul a:is(:hover,:focus-visible){background:#eef1ea!important;color:#222!important}
}
@media(max-width:767px){
 .kf-zen-hero-tagline{top:47%;font-size:28px;letter-spacing:.13em;gap:22px}
 .kf-zen-vertical #kf-concept-title{font-size:26px;line-height:1.6;letter-spacing:.12em}
}
@media(max-height:700px) and (min-width:768px){.kf-zen-hero-tagline{font-size:30px;top:54%}}
@media(prefers-reduced-motion:reduce){body.home #header,body.home #global_menu a{transition:none!important}}
/* Match all navigation labels; the memorial label uses an explicit line break. */
@media(min-width:1281px){body.home #header.type1:not(.type2) #global_menu>ul>li>a{padding-top:35px;padding-bottom:35px}body.home #header.type1:not(.type2) #global_menu>ul>li>a span{max-height:150px}}
#drawer_menu a br{display:block}#drawer_menu a{line-height:1.65}
/* Keep both lines inside the sticky bar, with the same font and size. */
@media(min-width:1281px){body.home #header.type2 #global_menu>ul>li>a{height:110px;line-height:1.65;display:flex;align-items:center}}
#drawer_menu #drawer_menu_nav>ul>li>a{display:block;height:auto;min-height:50px;padding:14px 20px;line-height:1.65;box-sizing:border-box}

/* Candidate 07: one continuous vertical row, contained horizontal scrolling. */
.kf-zen-concept-scroll{display:contents}
@media(max-width:767px){
 #about.kf-zen-concept{display:block;box-sizing:border-box;min-height:0;padding:70px 24px}
 #about .kf-zen-concept-scroll{display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;overflow-x:auto;direction:rtl;overscroll-behavior-x:contain;touch-action:auto;scrollbar-width:none;-ms-overflow-style:none}
 #about .kf-zen-vertical{direction:ltr;display:flex;flex-direction:row-reverse;flex-wrap:nowrap;width:max-content;max-width:none;gap:28px;margin:0;padding:4px}
 #about #kf-concept-title{flex:0 0 auto}
 #about .kf-zen-concept-copy{display:flex;flex-direction:row-reverse;flex-wrap:nowrap;gap:18px;margin-top:0;flex:0 0 auto}
 #about .kf-zen-concept-copy p{writing-mode:vertical-rl;text-orientation:mixed;inline-size:17em;height:17em;block-size:auto;width:auto;font-size:14px;line-height:1.65;letter-spacing:.05em;white-space:normal;overflow-wrap:anywhere;flex:0 0 auto;margin:0}
 #about .kf-zen-concept-scroll::-webkit-scrollbar{display:none;width:0;height:0}
 #about .kf-zen-concept-scroll:focus-visible{outline:2px solid #66795b;outline-offset:5px}
}
