/*
Theme Name: CINEMA Frame
Description: 写真とタイポグラフィを主役にしたシネマティックなギャラリー型デザイン。大胆な特集ヘッダーと縦長ポスター表示。
Author: Original Theme Lab
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: cinema-frame
*/


:root{color-scheme:light}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}a{color:inherit;text-decoration:none}a:hover{opacity:.86}button,input,select{font:inherit}button{cursor:pointer}img{max-width:100%;height:auto}img.wp-post-image{display:block;width:100%;height:100%;object-fit:cover}p{line-height:1.8}main{min-width:0}h1,h2,h3{overflow-wrap:anywhere}blockquote{border-left:4px solid currentColor;padding:1px 20px;margin:24px 0}figure{max-width:100%}table{border-collapse:collapse;max-width:100%;width:100%}th,td{border:1px solid #d3d7dd;padding:10px}pre{max-width:100%;overflow-x:auto}iframe{max-width:100%}a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #ff8a53;outline-offset:3px}.skip-link{position:absolute;left:12px;top:-100px;background:#fff;padding:12px;z-index:1000}.skip-link:focus{top:12px}.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.alignwide{max-width:110%}.alignfull{max-width:none;width:100%}.article-body{font-size:16px;line-height:2.1;overflow-wrap:anywhere}.article-body h2{font-size:1.65em;line-height:1.4;margin:2.2em 0 .7em;scroll-margin-top:24px}.article-body h3{font-size:1.3em;margin:1.9em 0 .6em;scroll-margin-top:24px}.article-body a{text-decoration:underline;text-underline-offset:3px}.article-body li{margin-bottom:.4em}.article-body img{height:auto}.article-body .wp-block-image img{height:auto}.auto-toc[hidden]{display:none}.auto-toc ol{padding-left:22px;line-height:1.7;font-size:13px}.auto-toc li{margin-bottom:11px}.auto-toc .sub{margin-left:13px}.related li{margin-bottom:14px}.related ul{padding-left:20px}.pagination ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0}.pagination a,.pagination span{display:grid;place-items:center;min-width:34px;min-height:34px;padding:5px;border:1px solid currentColor}.theme-search{display:flex;gap:6px;max-width:540px}.theme-search input{flex:1;min-width:0;border:1px solid #b9c2d2;padding:13px 16px;border-radius:6px}.theme-search button{border:0;padding:12px 20px;border-radius:6px}.job-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:14px;align-items:end}.job-form label{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:700;min-width:0}.job-form select{width:100%;padding:13px 28px 13px 12px;background-color:#fff;border:1px solid #ccd3e0;border-radius:8px;min-height:48px}.job-form button{border:0;min-height:48px;padding:12px 17px;font-weight:800;white-space:nowrap}.job-notice{grid-column:1/-1;margin:0;font-weight:400;font-size:12px;line-height:1.7}.crumb{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:12px;line-height:1.6;margin-bottom:30px}.crumb span:last-child{overflow-wrap:anywhere}.image-fallback{width:100%;height:100%;background:linear-gradient(145deg,#e9edfb,#dde6fe);display:flex;flex-direction:column;justify-content:space-between;padding:20px;overflow:hidden}.image-fallback span{font-size:9px;letter-spacing:.2em}.image-fallback strong{font-weight:900;font-size:clamp(24px,4vw,50px);line-height:1.1}.pagination{margin-top:38px}.wp-block-embed iframe{width:100%}@media(max-width:850px){.job-form{grid-template-columns:repeat(2,minmax(0,1fr))}.job-form button{grid-column:1/-1}}@media(max-width:480px){.job-form{grid-template-columns:1fr}.job-form button{grid-column:auto}}


body{font-family:system-ui,-apple-system,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;background:#111319;color:#f7f5f1}.cnfm-header{position:relative;z-index:30;background:#121317;border-bottom:1px solid #35373c}.cnfm-header-bar{max-width:1500px;margin:auto;padding:18px 40px;display:flex;align-items:center;justify-content:space-between;gap:20px}.cnfm-brand{font-size:23px;font-weight:950;letter-spacing:-.065em}.cnfm-brand .mark{color:#f46e53;font-size:28px}.cnfm-head-actions{display:flex;align-items:center;gap:14px}.cnfm-head-cta{border:1px solid #fa7f64;color:#ff9379;padding:10px 18px;font-size:12px;font-weight:800}.cnfm-navigation{position:relative}.cnfm-navigation summary{padding:10px 14px;cursor:pointer;list-style:none;font-weight:900;letter-spacing:.12em;font-size:12px}.cnfm-navigation summary::-webkit-details-marker{display:none}.cnfm-navigation nav{position:absolute;top:44px;right:0;background:#24272b;border:1px solid #444;width:250px;z-index:100;padding:22px;box-shadow:0 22px 50px #0008}.cnfm-navigation ul{list-style:none;margin:0;padding:0;display:grid;gap:16px;font-size:14px}.cnfm-hero{position:relative;min-height:680px;overflow:hidden;background:radial-gradient(circle at 75% 45%,#614a4b,#1b1a22 70%)}.cnfm-hero-photo,.cnfm-hero-photo img,.cnfm-hero-shade{position:absolute;inset:0;width:100%;height:100%}.cnfm-hero-photo img{object-fit:cover;opacity:.6;filter:saturate(.8)}.cnfm-hero-photo .image-fallback{background:radial-gradient(circle at 78% 40%,#78595a,#23242e 80%);color:#d4b4ae}.cnfm-hero-photo .image-fallback strong{font-size:clamp(50px,11vw,170px);margin-left:auto;line-height:.86;opacity:.23}.cnfm-hero-shade{background:linear-gradient(90deg,rgba(8,9,13,.92) 0%,rgba(8,9,13,.61) 48%,rgba(8,9,13,.17) 100%)}.cnfm-hero-content{position:relative;z-index:1;max-width:1500px;padding:105px 80px 95px;margin:auto}.cnfm-hero-kicker{display:flex;justify-content:space-between;max-width:650px;font-size:11px;font-weight:900;letter-spacing:.18em;color:#ff8668}.cnfm-hero h1{font-size:clamp(42px,6.7vw,103px);letter-spacing:-.09em;line-height:1.16;max-width:850px;margin:30px 0}.cnfm-hero-content p{color:#e8deda;max-width:630px;font-size:16px}.cnfm-large-link{margin-top:35px;display:inline-flex;align-items:center;justify-content:space-between;min-width:300px;padding:23px 29px;background:#f47759;color:#121217;font-size:16px;font-weight:900}.cnfm-large-link span{font-size:25px}.cnfm-hero-side{position:absolute;right:20px;bottom:40px;writing-mode:vertical-rl;color:#f6bab0;letter-spacing:.3em;font-size:11px;z-index:1}.cnfm-section{max-width:1390px;padding:90px 36px;margin:auto}.cnfm-section-top{display:grid;grid-template-columns:1fr 3fr 1fr;gap:14px;align-items:end;border-bottom:1px solid #4d4c51;padding-bottom:25px;margin-bottom:35px}.cnfm-section-top>span{font-size:11px;letter-spacing:.14em;color:#f5886e}.cnfm-section-top h2{font-size:clamp(28px,4vw,56px);letter-spacing:-.07em;margin:0}.cnfm-section-top>a{text-align:right;font-size:12px;font-weight:900}.cnfm-posters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 17px}.cnfm-poster{position:relative;min-width:0}.cnfm-image{height:360px;display:block;position:relative;overflow:hidden;background:#2d343b}.cnfm-image img{filter:saturate(.78);transition:transform .4s}.cnfm-image:hover img{transform:scale(1.035)}.cnfm-image .image-fallback{background:linear-gradient(130deg,#bd654e,#30323e);color:#fff}.cnfm-image .image-fallback strong{font-size:45px}.cnfm-poster:nth-child(3n+2) .image-fallback{background:linear-gradient(120deg,#39525b,#777984)}.cnfm-poster:nth-child(3n+3) .image-fallback{background:linear-gradient(120deg,#5e4546,#ada08c)}.cnfm-poster-details{padding:19px 2px 25px;border-bottom:1px solid #46444a;position:relative;padding-right:40px}.cnfm-poster-meta{display:flex;gap:17px;flex-wrap:wrap;color:#a7a6a8;font-size:11px}.cnfm-poster-meta span{color:#ff9379}.cnfm-poster h3{font-size:21px;line-height:1.5;letter-spacing:-.04em;margin:14px 0}.cnfm-poster-arrow{position:absolute;right:5px;bottom:25px;color:#fd977d;font-size:23px}.cnfm-cta{background:#f3e8dc;color:#1f1e21;padding:90px max(36px,calc((100vw - 1320px)/2));display:grid;grid-template-columns:.9fr 1.4fr;gap:70px}.cnfm-cta-heading span{font-size:12px;font-weight:900;letter-spacing:.12em;color:#d46246}.cnfm-cta-heading h2{font-size:clamp(34px,4.5vw,65px);line-height:1.25;letter-spacing:-.08em}.cnfm-cta-heading h2 em{font-style:normal;color:#d15f46}.cnfm-cta-heading p{font-size:13px}.cnfm-cta .job-form{display:grid;grid-template-columns:1fr 1fr;padding:23px;background:#fff;border:1px solid #ecd4c4;align-content:center}.cnfm-cta .job-form button{background:#242329;color:white;grid-column:1/-1}.cnfm-cta .job-notice{color:#555}.cnfm-category-block{padding-top:100px;padding-bottom:110px}.cnfm-categories{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.cnfm-categories a{border:1px solid #444;min-height:115px;padding:22px;display:flex;justify-content:space-between;align-items:end;gap:8px}.cnfm-categories a:nth-child(odd){background:#1d2028}.cnfm-categories a span{font-size:20px;font-weight:850}.cnfm-categories small{color:#f5886e}.cnfm-footer{background:#090a0d;padding:50px 45px}.cnfm-footer-big{font-size:clamp(35px,6vw,90px);font-weight:950;letter-spacing:-.08em;line-height:1.18}.cnfm-footer-big span{color:#fb8369}.cnfm-footer-small{display:flex;flex-wrap:wrap;gap:25px;border-top:1px solid #343438;margin-top:35px;padding-top:20px;font-size:12px;color:#c6bcb8}.cnfm-archive,.cnfm-page{max-width:1390px;margin:55px auto 100px;padding:0 35px}.cnfm-archive-head{border-bottom:1px solid #43444a;padding-bottom:30px;margin-bottom:35px}.cnfm-archive-head>span,.cnfm-overline{color:#f6896d;font-size:12px;letter-spacing:.16em}.cnfm-archive-head h1{font-size:clamp(33px,5vw,75px);line-height:1.15;letter-spacing:-.065em}.theme-search button{background:#f47759;color:#111}.cnfm-single-hero{min-height:540px;position:relative;overflow:hidden;display:flex;align-items:end}.cnfm-single-photo,.cnfm-single-photo img,.cnfm-single-filter{position:absolute;inset:0;width:100%;height:100%}.cnfm-single-photo img{object-fit:cover}.cnfm-single-photo .image-fallback{background:linear-gradient(110deg,#804a44,#222932);color:white}.cnfm-single-filter{background:linear-gradient(0deg,rgba(8,9,12,.93),rgba(8,9,12,.32))}.cnfm-single-heading{position:relative;z-index:1;padding:75px max(35px,calc((100vw - 1250px)/2));width:100%}.cnfm-single-heading h1{font-size:clamp(35px,5.7vw,74px);line-height:1.24;max-width:950px;letter-spacing:-.055em;margin:15px 0 25px}.cnfm-meta-line{display:flex;gap:20px;font-size:12px}.cnfm-single-body{max-width:1180px;margin:0 auto;padding:60px 30px}.cnfm-single-lead{border-bottom:1px solid #514c4f;padding:0 0 45px;display:flex;justify-content:space-between;gap:30px;align-items:end}.cnfm-single-lead p{font-size:clamp(18px,2.4vw,28px);font-weight:600;max-width:780px;line-height:1.7}.cnfm-inline-cta{border:1px solid #f47759;color:#ff987a;padding:17px;white-space:nowrap}.cnfm-reading-grid{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:55px;margin-top:40px}.cnfm-article-body{color:#dedad7;max-width:100%;font-size:17px}.cnfm-article-body h2,.cnfm-article-body h3{color:#fff}.cnfm-article-body a{color:#ff9778}.cnfm-single-aside{position:sticky;top:25px;align-self:start;border-left:1px solid #4d4b52;padding-left:22px;color:#d8ccca;font-size:13px}.cnfm-single-aside>span{color:#f5886e;font-size:11px;letter-spacing:.15em}.cnfm-single-aside .related h2{font-size:14px}.cnfm-single-aside .related li{font-size:12px}.cnfm-page .article-body{max-width:820px}.pagination{color:#ff9778}@media(max-width:960px){.cnfm-hero{min-height:570px}.cnfm-hero-content{padding:75px 45px}.cnfm-posters{grid-template-columns:repeat(2,1fr)}.cnfm-cta{grid-template-columns:1fr;padding:65px 35px;gap:25px}.cnfm-categories{grid-template-columns:repeat(2,1fr)}.cnfm-reading-grid{grid-template-columns:1fr}.cnfm-single-aside{position:static}}@media(max-width:600px){.cnfm-header-bar{padding:12px 14px}.cnfm-brand{font-size:16px}.cnfm-head-cta{font-size:11px;padding:8px}.cnfm-navigation summary{font-size:11px}.cnfm-hero{min-height:500px}.cnfm-hero-content{padding:75px 24px}.cnfm-hero h1{font-size:43px}.cnfm-hero-side{display:none}.cnfm-large-link{min-width:0}.cnfm-section{padding:60px 20px}.cnfm-section-top{grid-template-columns:1fr auto}.cnfm-section-top>span{grid-column:1/-1}.cnfm-posters{grid-template-columns:1fr}.cnfm-image{height:370px}.cnfm-cta{padding:55px 20px}.cnfm-cta .job-form{grid-template-columns:1fr;padding:18px}.cnfm-categories a{min-height:95px;padding:14px}.cnfm-categories a span{font-size:14px}.cnfm-footer{padding:40px 20px}.cnfm-single-heading{padding:45px 25px}.cnfm-single-body{padding:35px 20px}.cnfm-single-lead{display:block}.cnfm-single-lead p{font-size:18px}.cnfm-inline-cta{display:inline-flex}.cnfm-archive,.cnfm-page{padding:0 20px}}
