
/* 実績詳細ではテーマ側のアイキャッチを表示しない。
   一覧用のアイキャッチデータ自体は保持し、LBWのメイン写真は .lbw-single__visual で表示する。 */
.single-works .featured-image,
.single-works .post-image,
.single-works .page-header-image-single{
	display:none !important;
}

.lbw-single,
.lbw-works{
	--lbw-ink:#11110F;
	--lbw-muted:#6E665F;
	--lbw-border:#DED1C4;
	--lbw-surface:#FFFDF8;
	--lbw-cream:#F8EFE4;
	--lbw-teal:#16403E;
	--lbw-aqua:#0ABAB5;
	--lbw-gold:#DA8F38;
	color:var(--lbw-ink);
	font-family:"Zen Kaku Gothic New","Noto Sans JP",sans-serif;
}
.single-works .content-area{width:100%}
.single-works .inside-article{background:transparent}
.single-works .entry-header{
	width:min(1160px,calc(100% - 40px));
	margin:64px auto 32px;
}
.single-works .entry-title{
	font-size:clamp(30px,4vw,48px);
	font-weight:900;
	line-height:1.45;
	letter-spacing:.02em;
}
.lbw-single{
	width:min(1160px,calc(100% - 40px));
	margin:0 auto 96px;
}
.lbw-single__visual{
	display:grid;
	grid-template-columns:1fr;
	gap:20px;
	margin-bottom:48px;
}
.lbw-single__visual.is-before-after{grid-template-columns:1fr 1fr}
.lbw-single__visual figure{
	position:relative;
	margin:0;
	overflow:hidden;
	background:#eee6dc;
	aspect-ratio:4/3;
}
.lbw-single__visual img{
	width:100%;
	height:100%;
	display:block;
	object-fit:cover;
}
.lbw-photo-label{
	position:absolute;
	left:16px;
	top:16px;
	z-index:2;
	padding:7px 10px;
	background:rgba(17,17,15,.78);
	color:#fff;
	font-family:"Archivo",sans-serif;
	font-size:11px;
	font-weight:700;
	letter-spacing:.12em;
}
.lbw-single__body{max-width:860px}
.lbw-eyebrow,
.lbw-card__type{
	margin:0 0 12px;
	color:var(--lbw-gold);
	font-family:"Archivo",sans-serif;
	font-size:12px;
	font-weight:700;
	letter-spacing:.14em;
}
.lbw-lead{
	margin:0 0 36px;
	font-size:17px;
	line-height:1.95;
}
.lbw-specs{
	margin:0;
	border-top:1px solid var(--lbw-border);
}
.lbw-specs__row{
	display:grid;
	grid-template-columns:190px minmax(0,1fr);
	gap:24px;
	padding:18px 0;
	border-bottom:1px solid var(--lbw-border);
}
.lbw-specs dt{font-weight:700}
.lbw-specs dd{
	margin:0;
	color:var(--lbw-muted);
}
.lbw-single__cta{margin-top:40px}
.lbw-single__cta a{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:56px;
	padding:16px 30px;
	background:var(--lbw-teal);
	color:#fff;
	font-weight:700;
	text-decoration:none;
}
.lbw-tabs{
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	margin:0 0 40px;
	padding-bottom:18px;
	border-bottom:1px solid var(--lbw-border);
}
.lbw-tabs a{
	display:inline-flex;
	padding:10px 16px;
	color:var(--lbw-ink);
	text-decoration:none;
	border:1px solid var(--lbw-border);
	background:var(--lbw-surface);
}
.lbw-tabs a[aria-current="page"]{
	background:var(--lbw-teal);
	color:#fff;
	border-color:var(--lbw-teal);
}
.lbw-works-grid{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:44px 32px;
}
.lbw-card__link{
	display:block;
	color:inherit;
	text-decoration:none;
}
.lbw-card__image{
	aspect-ratio:4/3;
	overflow:hidden;
	background:#eee6dc;
}
.lbw-card__image img{
	width:100%;
	height:100%;
	display:block;
	object-fit:cover;
	transition:transform .35s ease;
}
.lbw-card__link:hover .lbw-card__image img{transform:scale(1.025)}
.lbw-card__noimage{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	height:100%;
	color:var(--lbw-muted);
	font-family:"Archivo",sans-serif;
	font-size:12px;
	letter-spacing:.1em;
}
.lbw-card__body{padding-top:16px}
.lbw-card__type{margin-bottom:8px}
.lbw-card h3{
	margin:0;
	font-size:19px;
	font-weight:700;
	line-height:1.6;
}
.lbw-card__desc{
	margin:10px 0 0;
	color:var(--lbw-muted);
	font-size:14px;
	line-height:1.8;
}
.lbw-no-results{
	grid-column:1/-1;
	margin:0;
	padding:32px 0;
	color:var(--lbw-muted);
}
@media (max-width:900px){
	.lbw-works-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:767px){
	.single-works .entry-header{margin-top:40px}
	.lbw-single{margin-bottom:72px}
	.lbw-single__visual.is-before-after{grid-template-columns:1fr}
	.lbw-specs__row{grid-template-columns:1fr;gap:6px}
	.lbw-works-grid{grid-template-columns:1fr;gap:36px}
	.lbw-tabs{gap:6px}
	.lbw-tabs a{padding:9px 12px;font-size:13px}
}


/* v2.1 Photo Gallery */
.lbw-gallery{
	margin-top:48px;
	padding-top:36px;
	border-top:1px solid var(--lbw-border);
}
.lbw-gallery__eyebrow{
	margin:0 0 16px;
	color:var(--lbw-gold);
	font-family:"Archivo",sans-serif;
	font-size:12px;
	font-weight:700;
	letter-spacing:.14em;
}
.lbw-gallery__stage{
	width:100%;
	background:#eee6dc;
	aspect-ratio:16/10;
	overflow:hidden;
}
.lbw-gallery__open{
	appearance:none;
	border:0;
	padding:0;
	margin:0;
	width:100%;
	height:100%;
	display:block;
	cursor:zoom-in;
	background:transparent;
}
.lbw-gallery__stage-image{
	display:block;
	width:100%;
	height:100%;
	object-fit:contain;
	background:#11110F;
}
.lbw-gallery__thumbs{
	display:flex;
	gap:10px;
	margin-top:12px;
	overflow-x:auto;
	padding-bottom:6px;
	scrollbar-width:thin;
}
.lbw-gallery__thumb{
	flex:0 0 112px;
	aspect-ratio:4/3;
	padding:0;
	border:2px solid transparent;
	background:#eee6dc;
	cursor:pointer;
	overflow:hidden;
}
.lbw-gallery__thumb.is-active{border-color:var(--lbw-teal)}
.lbw-gallery__thumb img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
}
.lbw-lightbox[hidden]{display:none!important}
.lbw-lightbox{
	position:fixed;
	inset:0;
	z-index:999999;
	dis:grid;
	grid-template-columns:64px minmax(0,1fr) 64px;
	align-items:center;
	background:rgba(10,14,14,.94);
	padding:48px 20px;
}
.lbw-lightbox__stage{
	min-width:0;
	max-width:1400px;
	max-height:88vh;
	margin:auto;
}
.lbw-lightbox__stage img{
	display:block;
	max-width:100%;
	max-height:88vh;
	width:auto;
	height:auto;
	margin:auto;
	object-fit:contain;
}
.lbw-lightbox__close,
.lbw-lightbox__prev,
.lbw-lightbox__next{
	appearance:none;
	border:0;
	background:transparent;
	color:#fff;
	cursor:pointer;
	font-family:Arial,sans-serif;
}
.lbw-lightbox__close{
	position:absolute;
	top:14px;
	right:20px;
	font-size:42px;
	line-height:1;
}
.lbw-lightbox__prev,.lbw-lightbox__next{font-size:56px;line-height:1}
body.lbw-lightbox-open{overflow:hidden}
@media (max-width:767px){
	.lbw-gallery{margin-top:36px;padding-top:28px}
	.lbw-gallery__stage{aspect-ratio:4/3}
	.lbw-gallery__thumb{flex-basis:88px}
	.lbw-lightbox{grid-template-columns:44px minmax(0,1fr) 44px;padding:54px 8px 28px}
	.lbw-lightbox__prev,.lbw-lightbox__next{font-size:44px}
}


.lbw-card__area{
	margin:6px 0 0;
	color:var(--lbw-muted);
	font-size:13px;
	line-height:1.6;
}
.lbw-region-link{
	margin:24px 0 0;
	font-size:14px;
}
.lbw-region-link a{
	color:var(--lbw-teal);
	text-decoration:underline;
	text-underline-offset:3px;
}
.lbw-region-page{
	--lbw-ink:#11110F;
	--lbw-muted:#6E665F;
	--lbw-border:#DED1C4;
	--lbw-surface:#FFFDF8;
	--lbw-cream:#F8EFE4;
	--lbw-teal:#16403E;
	--lbw-aqua:#0ABAB5;
	--lbw-gold:#DA8F38;
	background:#FFFDF8;
	color:var(--lbw-ink);
	font-family:"Zen Kaku Gothic New","Noto Sans JP",sans-serif;
}
.lbw-region-container{
	width:min(1280px,100%);
	margin:0 auto;
	padding-left:48px;
	padding-right:48px;
}
.lbw-region-hero{
	padding:96px 0 88px;
	background:var(--lbw-cream);
	border-bottom:1px solid var(--lbw-border);
}
.lbw-region-eyebrow{
	margin:0 0 16px;
	color:var(--lbw-gold);
	font-family:"Archivo",sans-serif;
	font-size:12px;
	font-weight:700;
	letter-spacing:.14em;
}
.lbw-region-hero h1,
.lbw-region-heading h2,
.lbw-region-guide h2{
	margin:0;
	font-weight:900;
	line-height:1.45;
	letter-spacing:.02em;
}
.lbw-region-hero h1{font-size:clamp(34px,5vw,54px)}
.lbw-region-lead{
	max-width:760px;
	margin:24px 0 0;
	font-size:17px;
	line-height:2;
}
.lbw-region-area-note{
	max-width:760px;
	margin:20px 0 0;
	padding-top:20px;
	border-top:1px solid var(--lbw-border);
	color:var(--lbw-muted);
	font-size:14px;
	line-height:1.9;
}
.lbw-region-section{padding:88px 0 104px}
.lbw-region-heading{max-width:760px;margin-bottom:40px}
.lbw-region-heading h2,.lbw-region-guide h2{font-size:32px}
.lbw-region-heading>p:last-child,.lbw-region-guide p{
	margin:16px 0 0;
	color:var(--lbw-muted);
	line-height:1.9;
}
.lbw-region-guide{
	padding:72px 0;
	background:var(--lbw-cream);
	border-top:1px solid var(--lbw-border);
}
.lbw-region-guide__grid{
	display:grid;
	grid-template-columns:1fr auto;
	gap:56px;
	align-items:center;
}
.lbw-region-guide__actions{display:flex;gap:12px;flex-wrap:wrap}
.lbw-region-primary,.lbw-region-secondary{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:56px;
	padding:16px 26px;
	font-weight:700;
	text-decoration:none;
}
.lbw-region-primary{background:var(--lbw-teal);color:#fff}
.lbw-region-secondary{border:1px solid var(--lbw-border);background:#fff;color:var(--lbw-ink)}
@media(max-width:1279px){
	.lbw-region-container{padding-left:32px;padding-right:32px}
}
@media(max-width:767px){
	.lbw-region-container{padding-left:20px;padding-right:20px}
	.lbw-region-hero{padding:64px 0 56px}
	.lbw-region-section{padding:64px 0 72px}
	.lbw-region-guide{padding:56px 0}
	.lbw-region-guide__grid{grid-template-columns:1fr;gap:28px}
	.lbw-region-guide__actions{display:grid}
}

.lbw-region-summary{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:12px;
	margin-top:28px;
}
.lbw-region-summary__item{
	padding:20px 22px;
	border:1px solid var(--lbw-border,#DED1C4);
	background:#FFFDF8;
}
.lbw-region-summary__item span{
	display:block;
	margin-bottom:7px;
	color:var(--lbw-muted,#6E665F);
	font-size:12px;
	font-weight:700;
	letter-spacing:.05em;
}
.lbw-region-summary__item strong{
	display:block;
	font-size:16px;
	line-height:1.7;
}
@media (max-width:767px){
	.lbw-region-summary{grid-template-columns:1fr;}
}
