
* {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	box-sizing: border-box;
}

/* ========================
   ベーススタイル
======================== */
#hightech_wear {
	width: 80%;
	margin: 0 auto;
	padding-top: 0;
}

#hightech_wear img {
	max-width: 100%;
	height: auto;
	padding: 0;
	display: block;
}

#hightech_wear a {
	text-decoration: none;
	color: inherit;
}

#hightech_wear p {
	color: #121212;
	font-size: 150%;
	margin: 3%;
	line-height: 1.4;
}

#hightech_wear .right {
	text-align: right;
	color: #121212;
	font-size: 150%;
	margin-bottom: 3%;
}

/* ========================
   見出しスタイル
======================== */
#hightech_wear h1 {
	text-align: center;
	margin-bottom: 20px;
}

#hightech_wear h2 {
	font-size: 180%;
	font-weight: bold;
	color: #121212;
	text-align: left;
	margin: 20px 0 15px;
}

/* セクションごとの個別余白調整例 */
#hightech_wear_b-1 h2 {
	margin: 0 0 0 55px;
}

#hightech_wear_b-1 .logo-flex{
	margin-bottom: 50px;
}

#hightech_wear h3 {
	font-size: 150%;
	font-weight: bold;
	color: #121212;
	margin: 10px 0;
	line-height: 1.3;
}

/* ========================
   トップセクション
======================== */
#hightech_wear .top {
	background: radial-gradient(#00a0d9 0, #fff 100%);
}

#hightech_wear .top h2 {
	font-size: 280%;
	line-height: 1.4;
	text-align: center;
	padding: 3%;
	margin: 0 0 10% 0;
}

/* ========================
   category（統一幅対応）
======================== */

/* 親グリッド */
#hightech_wear .category ul {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 16px;
	list-style: none;
	margin: 0;
	padding: 0;
	align-items: start;
}

/* li の横幅と高さを引き伸ばす */
#hightech_wear .category li {
	min-width: 0;
	width: 100%;          /* ★横幅をグリッドに100%合わせる */
	display: flex;
	align-items: stretch; /* 列内で高さを揃える */
}

/* カード本体 */
#hightech_wear .category .cat-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	border: 1px solid #000;
	padding: 12px;
	border-radius: 12px;
	background: #fff;
	width: 100%;          /* ★横幅を100%いっぱいに広げる */
	flex: 1 1 auto;       /* 高さを揃える */
	min-height: 160px;
	box-shadow: 0 1px 3px rgba(0,0,0,0.04);
	overflow: hidden;
}

/* テキストブロック */
#hightech_wear .category .cat-text {
	text-align: center;
	font-size: 24px;
	line-height: 1.2;
	color: #121212;
	font-weight: 700;
	word-break: keep-all;
}

/* 左アイコン＋テキストの行 */
#hightech_wear .category .cat-row {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 16px;
	width: 100%;
}

/* アイコン左の固定サイズ */
#hightech_wear .category .cat-icon-left {
	flex: 0 0 80px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
	overflow: hidden;
}

/* アイコン内画像のフィット */
#hightech_wear .category .cat-icon-left img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
}

/* 左アイコンとテキストのテキストは左寄せ */
#hightech_wear .category .cat-row .cat-text {
	text-align: left;
	font-size: 24px;
	font-weight: 700;
	flex: 1 1 auto;
}

/* 下段補助画像 */
#hightech_wear .category .cat-subimg {
	margin-top: 6px;
	width: 80%;
	max-width: 230px;
	display: block;
	object-fit: contain;
}

/* 縦中央ユースケース */
#hightech_wear .category .cat-vertical {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 100%;
	width: 100%;
}

/* hover */
#hightech_wear .category .cat-card:hover {
	box-shadow: 0 6px 18px rgba(0,0,0,0.08);
	transform: translateY(-2px);
	transition: all 180ms ease;
}

/* ========================
   その他パーツ
======================== */
#hightech_wear .title {
	margin-top: 5%;
	margin-bottom: 0;
}

#hightech_wear .logo-flex {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
}

#hightech_wear .product-list {
	list-style: none;
	margin: 0;
	padding: 0;
	margin-top: 50px;
	display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0px 24px; /* 上下の余白を40px、左右の余白を24pxに設定（数値は調整してください） */
    margin-top: 50px;
}

#hightech_wear .product-list li {
	min-width: 0;
}

#hightech_wear .btn-detail {
	display: block;
	text-align: center;
	background-color: #074584;
	color: #fff;
	font-size: 150%;
	font-weight: bold;
	padding: 3% 0;
	margin: 0 0 5% 0;
}

#hightech_wear .btn-detail:hover {
	opacity: 0.85;
}

#hightech_wear .here {
	text-align: center;
	color: #fff;
	background-color: #121212;
	font-size: 170%;
	padding: 3% 0;
	margin: 0 5%;
}

#hightech_wear hr {
	margin: 10% 0;
	border: 1px dashed #858585;
}

/* ========================
   PC（3列表示）
======================== */
@media screen and (min-width: 641px) {
	#hightech_wear {
		width: 100%;
	}

	#hightech_wear .top h2 {
		font-size: 300%;
		line-height: 1.2;
		color: #212121;
		font-weight: bold;
		text-align: center;
		margin: 10% 0;
		padding: 15% 0;
	}

	#hightech_wear h2 {
		font-size: 180%;
		text-align: center;
	}

	#hightech_wear h3 {
		font-size: 150%;
	}

	/* 3列で均等にする */
	#hightech_wear .category ul {
		grid-template-columns: repeat(3, 1fr);
		gap: 16px;
		/* justify-items: center; ★バグの原因のため削除しました */
	}

	/* li の flex を有効にして列内で高さを揃え、幅も100%にする */
	#hightech_wear .category li {
		display: flex;
		align-items: stretch;
		width: 100%;          /* ★PCでも確実に100%広がるように担保 */
	}

	#hightech_wear p {
		margin: 10px 0 20px;
	}

	/* 各liタグを基準位置にする設定 */
#hightech_wear .category ul li {
	position: relative; /* ★これが必要（三角形の配置の基準にします） */
}

/* 右下にCSSで三角形を描写 */
#hightech_wear .category ul li::after {
	content: "";
	position: absolute;
	right: 10px;  /* 右からの余白 <h2> */
	bottom: 10px; /* 下からの余白 <h2> */
	
	/* CSSで三角形を作る仕組み */
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 15px 0 15px 25px;; /* 三角形のサイズ（縦10px、横8px） */
	border-color: transparent transparent transparent #074584; /* ご指定の色 */
	
	pointer-events: none; /* 三角形自体がクリックの邪魔をしないようにする設定 */
}
}

/* h2のマージン調整 */
.virus-guard{
	margin-top: 50px!important;
}

.virus-reduction{
	margin-top: 50px!important;
}

.stretch-lightweight{
	margin: 0!important;
}

.teflon-waterproof{
	margin-top: 50px!important;
}

.comfort-stretch{
	margin-top: 50px!important;
}

.photocatalyst-effect{
	margin-top: 50px!important;
}

.virus-inactivation{
	margin-top: 50px!important;
}

.hr{
	margin: 5% 0!important;
}

/* ========================
   スマホ
======================== */
@media screen and (max-width: 640px) {

	h2{
		background-color:transparent;
		padding-left: 0;
	}

	#hightech_wear .product-list{
		display: block;
		margin-top: 25px;
	}

	#hightech_wear .logo-flex{
		display: block;
	}

	#hightech_wear .logo-flex h2{
		margin-top: 20px;
	}

	#hightech_wear_b-1 h2{
		margin: 0;
	}

	#hightech_wear_b-1 .logo-flex{
		margin-bottom: 20px;
	}

	#hightech_wear p{
		font-size: 130%;
	}

	/* ========================================================
   スマホ用（max-width: 640px）の「category」崩壊修正
======================================================== */

/* 1. スマホ時はテキストサイズを小さくして枠内に収める */
#hightech_wear .category .cat-text {
    font-size: 14px !important; /* 2列に収まるサイズに調整 */
    line-height: 1.3;
    word-break: normal; /* 折り返しを許可 */
}

/* 2. 「横並び（row）」から「縦並び（column）」に変更し、画像を下に配置 */
#hightech_wear .category .cat-row {
    flex-direction: column; /* 上下並びに切り替え */
    gap: 8px; /* テキストと画像の間の隙間 */
    text-align: center;
}

/* 3. 左寄せになっていたテキストを中央寄せにする */
#hightech_wear .category .cat-row .cat-text {
    text-align: center;
}

/* 4. アイコン画像のサイズ・余白をスマホ用に最適化 */
#hightech_wear .category .cat-icon-left {
    flex: 0 0 auto;
    width: 50px;  /* スマホで見栄えの良いサイズに縮小（お好みで調整してください） */
    height: auto;
    order: 2;     /* ★これによってHTMLの記述順に関わらず、画像をテキストの下（2番目）に配置します */
}

/* 5. カード全体の最小高さをスマホ用に少し縮める（隙間が空きすぎるのを防ぐ） */
#hightech_wear .category .cat-card {
    min-height: 130px;
    padding: 12px 8px; /* 左右のパディングを少し狭めてテキスト領域を確保 */
}

/* 6. 最初から縦並び（1つ目のカード等）のテキストサイズも合わせる */
#hightech_wear .category .cat-vertical .cat-text {
    font-size: 14px !important;
}

/* 7. アサヒカセイのロゴ入りカードの画像サイズも微調整 */
#hightech_wear .category .cat-subimg {
    width: 90%;
}

/* 8. PC用の右下矢印（三角形）がスマホで邪魔をしないように非表示にする */
#hightech_wear .category ul li::after {
    display: none !important;
}

/* ========================
   h2調整
======================== */

	.virus-guard{
		margin-top: 10px !important;
		font-size: 150%;
	}

	.virus-reduction{
		margin-top: 30px !important;
		font-size: 150%;
	}

	.teflon-waterproof{
		margin-top: 25px !important;
		font-size: 150%;
	}

	.comfort-stretch{
		margin-top: 20px !important;
		font-size: 150%;
	}

	.photocatalyst-effect{
		margin-top: 30px !important;
		font-size: 150%;
	}

/* ========================
   （2列）
======================== */
	#hightech_wear {
		width: 100%;
		font-family: "ゴシックMB101", "リュウミン", "中ゴシックBBB";
	}

	#hightech_wear .category ul {
		grid-template-columns: repeat(2, 1fr);
		gap: 12px;
		align-items: stretch;
	}

	#hightech_wear .top h2 {
		font-size: 150%;
		line-height: 1.2;
		color: #212121;
		font-weight: bold;
		text-align: center;
		padding: 2% 0 0 0;
	}

	#hightech_wear h2 {
		font-size: 170%;
		line-height: 1.2;
		color: #121212;
		font-weight: bold;
		text-align: center;
	}

	#hightech_wear h3 {
		font-size: 120%;
		line-height: 1.3;
		margin: 3px 0;	
	}

	#hightech_wear .logo-flex {
		justify-content: center;
		gap: 10px;
	}

	#hightech_wear .logo-flex img {
		width: 80%;
		margin: 0 auto;
	}

	#hightech_wear .logo-flex .guard {
		width: 80%;
		margin: 0 auto;
		max-width: initial;
	}

	#hightech_wear .logo-flex .improvement {
		width: 55%;
	}


}