@charset "utf-8";

/*レスポンシブ対応本文スタイル */
.press-release {
	max-width: 800px;
	margin: 0 auto;
	padding: 0 20px 60px;
	line-height: 1.8;
  color: #1E1E1E;
	
}
.press-release h1 {
margin: 0 0 20px;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.5;
	  font-family:  "Noto Sans JP",YuGothic,"Yu Gothic",system-ui,sans-serif;
}
.press-release h2 {
margin: 32px 0 20px;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.5;
	  font-family:  "Noto Sans JP",YuGothic,"Yu Gothic",system-ui,sans-serif;
}
.press-release h3 {
margin: 32px 0 20px;
  font-size: 20px;
  font-style: normal;
  font-weight: 600;
  line-height: 125%;
	  font-family:  "Noto Sans JP",YuGothic,"Yu Gothic",system-ui,sans-serif;
}
.press-release p {
	margin: 15px 0;
}
.press-release img {
	max-width: 100%;
	height: auto;
	display: block;
	margin:  0;
}
.press-release hr {
  margin-top: 32px;
  margin-bottom: 72px;
	 border-top: 1px solid #ddd;
}
	
.press-release pre {
	background: #f7f7f7;
	padding: 15px;
	overflow-x: auto;
}
.press-release .product-colors {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 10px 0;
}
.press-release .product-colors img {
	width: 80px;
	height: auto;
	flex-shrink: 0;
}
/* カラーギャラリー */
.product-colors {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 10px !important;
	margin: 10px 0 !important;
}
.color-card {
	flex: 1 0 calc(25% - 10px);
	display: flex;
	flex-direction: column;
	align-items: center;
}
.color-card img {
	width: 100%;
	height: auto;
	object-fit: cover;
	border-radius: 5px;
	display: block;
}
.color-label {
	margin-top: 6px;
	color: #555;
	text-align: center;
}
.hybrid-gallery {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	justify-content: center;
	margin: 20px 0;
}
.hybrid-card {
	flex: 1 0 calc(50% - 10px);
	max-width: 400px;
	text-align: center;
}
.hybrid-card img {
	width: 100%;
	height: auto;
	display: block;
}
.hybrid-card .color-label {
	color: #555;
	margin-top: 6px;
}

/* スマホ対応 */
@media screen and (max-width: 768px) {
.hybrid-card {
	flex: 1 0 100%;
}
}
.feature-item {
	display: flex;
	align-items: top;
	gap: 30px;
	margin: 50px 0;
}
.feature-item .feature-img {
	flex: 1 1 50%;
}
.feature-item .feature-img img {
	width: 100%;
	height: auto;
box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
}
.feature-item .feature-text {
	flex: 1 1 40%;
}
.feature-item .feature-text h3 {
	margin-top: 0;
	margin-bottom: 10px;
}

/* スマホ対応：縦並びに切り替え */
@media screen and (max-width: 768px) {
.feature-item {
	flex-direction: column;
}
.feature-item .feature-img, .feature-item .feature-text {
	flex: 1 1 100%;
}
}
.swipe-gallery {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 16px;
	margin: 20px 0;
}
.swipe-gallery .swipe-item img {
	width: 100%;
	height: auto;
	display: block;
	object-fit: cover;
}

/* レスポンシブ対応：スマホでは 1列表示 */
@media screen and (max-width: 600px) {
.swipe-gallery {
	grid-template-columns: 1fr;
}
}
/* タイプブロックの余白 */
.type-block {
	margin-bottom: 40px;
}
/* カラーリスト */
.pr-list {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	margin-top: 16px;
}
/* PCで4列固定 */
.pr-list__item {
  flex: 0 0 23%; /* ギャップ込みで25%弱に調整 */
  max-width: 160px; /* お好みで調整 */
  text-align: center;
  display: flex;
  flex-direction: column;

}

/* 画像を枠いっぱいに収める */
.pr-list__item__img img {
  width: 100%;
  height: auto;
  object-fit: contain;
			margin-top: 10px;

}
.pr-list__item__name {
	font-weight: 600;
	font-size: 1.5rem;
 margin: 2px 0 !important;
  line-height: 1.2 !important;
}
.pr-list__item__position {
	font-size: 1rem;
 margin: 2px 0 !important;
  line-height: 1.2 !important;
}

/* レスポンシブ対応 */
@media screen and (max-width: 768px) {
.pr-list__item {
	flex: 1 0 calc(50% - 10px); /* タブレットで2列 */
}
}

@media screen and (max-width: 480px) {
.pr-list__item {
	flex: 1 0 100%; /* スマホは1列 */
}
}

/* ライトボックスオーバーレイ */
.lightbox-overlay {
  position: fixed;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background: rgba(0,0,0,0.8);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  cursor: pointer;
}

/* 表示状態 */
.lightbox-overlay.show {
  opacity: 1;
  visibility: visible;
}

/* 画像本体（中央固定） */
.lightbox-overlay img {
  max-width: 60%;
  max-height: 60%;
  box-shadow: 0 0 20px #000;
  border-radius: 4px;
  
  /* ✔ これが中央に出るために重要！ */
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0.8);
  
  transition: transform 0.3s ease;
}

/* 表示時にズームイン */
.lightbox-overlay.show img {
  transform: translate(-50%, -50%) scale(1);
}

/* 画像の枠 */
.img-v250 img {
box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
	margin: 40 0 20 0;
}
