@charset "utf-8";
/* アプリ紹介ページ（/app/shakestrum/, /app/crossword/）共通 */

#appPage{
	background:#FFF;
	padding:40px;
	color:#333;
	font-size:14px;
	line-height:1.8;
}
#appPage #breadcrumb{
	font-size:12px;
	margin-bottom:24px;
}
#appPage h1,
#appPage h2,
#appPage h3{
	font-weight:bold;
}

/* 上部：アイコン＋名前＋ストアボタン */
.app-hero{
	display:flex;
	align-items:center;
	gap:28px;
	margin-bottom:36px;
}
.app-hero .app-icon{
	width:140px;
	height:140px;
	border-radius:22%;
	flex-shrink:0;
	box-shadow:0 2px 10px rgba(0,0,0,.18);
}
.app-hero h1{
	font-size:26px;
	line-height:1.3;
	margin:0 0 6px 0;
}
.app-hero .catch{
	font-size:15px;
	color:#666;
	margin:0 0 16px 0;
}
.store-btns{
	display:flex;
	flex-wrap:wrap;
	gap:10px;
}
.store-btns a{
	display:inline-flex;
	flex-direction:column;
	justify-content:center;
	min-width:150px;
	padding:7px 18px;
	border-radius:9px;
	background:#111;
	color:#FFF !important;
	text-decoration:none !important;
	line-height:1.2;
}
.store-btns a small{
	font-size:10px;
	opacity:.8;
}
.store-btns a b{
	font-size:17px;
}
.store-btns a:hover{
	background:#333;
}
/* 公式バッジ（badge-googleplay-ja.png は配布画像の上下の透明な余白を切り落としたもの。両方同じ高さで並べる） */
.store-btns{
	align-items:center;
}
.store-btns a.badge,
.store-btns a.badge:hover{
	display:inline-block;
	min-width:0;
	padding:0;
	background:none;
	border-radius:0;
	line-height:0;
}
.store-btns .b-apple{
	height:44px;
	width:auto;
}
.store-btns .b-google{
	height:44px;
	width:auto;
}
.store-btns .free{
	align-self:center;
	font-size:12px;
	color:#888;
}

/* スクリーンショット（横スクロール） */
.shots{
	display:flex;
	gap:14px;
	overflow-x:auto;
	padding:4px 2px 14px 2px;
	margin-bottom:36px;
	scroll-snap-type:x mandatory;
	-webkit-overflow-scrolling:touch;
}
.shots img{
	width:200px;
	height:auto;
	flex-shrink:0;
	border-radius:14px;
	box-shadow:0 1px 6px rgba(0,0,0,.2);
	scroll-snap-align:start;
}

/* 本文 */
.app-body h2{
	font-size:18px;
	border-left:5px solid var(--accent, #5BBA00);
	padding-left:10px;
	margin:36px 0 14px 0;
}
.app-body h3{
	font-size:15px;
	margin:20px 0 6px 0;
}
.app-body p{
	margin:0 0 12px 0;
}
.app-body ul.dots{
	margin:0 0 12px 0;
	padding-left:1.4em;
}
.app-body ul.dots li{
	list-style:disc;
	margin-bottom:4px;
}
.app-body dl.spec{
	display:grid;
	grid-template-columns:8em 1fr;
	gap:6px 12px;
	margin:0;
}
.app-body dl.spec dt{
	color:#888;
}
.app-body dl.spec dd{
	margin:0;
}
.app-body .en{
	margin-top:44px;
	padding-top:8px;
	border-top:1px solid #EEE;
}
.app-links{
	margin-top:40px;
	padding-top:16px;
	border-top:1px solid #EEE;
	font-size:13px;
}
.app-links a{
	margin-right:18px;
}

/* スマホ */
@media (max-width:640px){
	#page #header{
		margin-bottom:20px;
	}
	#appPage{
		padding:22px 16px;
	}
	.app-hero{
		flex-direction:column;
		align-items:flex-start;
		gap:16px;
	}
	.app-hero .app-icon{
		width:96px;
		height:96px;
	}
	.app-hero h1{
		font-size:22px;
	}
	.store-btns{
		width:100%;
	}
	.store-btns .free{
		flex-basis:100%;
	}
	.shots img{
		width:160px;
	}
	.app-body dl.spec{
		grid-template-columns:6.5em 1fr;
	}
}
