@charset "UTF-8";

/* ===============================
	ユーティリティ
=============================== */
.right {
	text-align: right;
}

.bold {
	font-weight: 700;
}

.tc {
	text-align: center !important;
}

.tl {
	text-align: left !important;
}

.tr {
	text-align: right !important;
}

.red {
	color: red !important;
}

.blue {
	color: #00a0e9 !important;
}

.fs {
	font-size: .75em;
	line-height: 1.2;
}

.ma {
	margin-left: auto;
	margin-right: auto;
}

.mt05em {
	margin-top: .5em;
}

.mt1em {
	margin-top: 1em;
}

.mt2em {
	margin-top: 2em;
}

.mt3em {
	margin-top: 3em;
}

.bg-gray {
	background: #F5F5F5;
}

.visual {
   text-align: center;
}


/* ====================================
	製品共通：カラー設定
 ==================================== */
/* 注釈カラー */
a {
	color: #000;
	text-decoration: none;
}

a:hover {
	color: #000;
	text-decoration: underline;
}

sup {
	color: #00a0e9;
}

em {
	background: gold;
	font-weight: normal;
}

.base-width{
	padding-bottom: 2rem;
	/*border-bottom: 1px solid #d9d9d9;*/
}

.outer-base-width {
	padding-left: 1.5%;
	padding-right: 1.5%;
}

.text{
	font-size: 1.2rem;/*font-size: 1.1rem;*/
	line-height: 1.6;
}

/* フレックスコンテナ */
.flex-container {
	display: flex;
	flex-wrap: wrap;
}

.flex-item {
	width: 100%;
}

/* アロータイトル・左 */
.has-arrow-left {
	padding: 0 0 0 1em;
	background-image: url(/products/common/images/chevron-right-solid.svg);
	background-repeat: no-repeat;
	background-position: left 0 top .4em;
	background-size: auto .8em;
}

/* アローボタン・左 */
.btn-arrow {
	display: inline-block;
	text-align: center;
}

.btn-arrow a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 0.7em 1.5em 0.7em 2.5em;
	font-size: inherit;
	line-height: inherit;
	background-color: #535353;
	background-image: url(/products/common/images/chevron-right-solid-w.svg);
	background-repeat: no-repeat;
	background-position: left 0.7em center;
	background-size: auto 1em;
	color: #fff;
	text-decoration: none;
}

.flex-container.column3 .flex-item .img {
	display: block;
	padding-top: 69.51%;
	position: relative;
}

.flex-container.column3 .flex-item .img img {
	position: absolute;
	top: 0;
	left: 0;
}

/* タイトル */
.txt-ttl {
	text-align: center;
	margin-bottom: 1.4rem;
}
/* 画像タイトル */
.img-ttl {
	text-align: center;
}
/* 参照リンク */
a.btn-more {
	background-image: url(/products/common/images/chevron-right-solid.svg);
	background-repeat: no-repeat;
	background-position: left .5em center;
	background-size: auto .8em;
	display: inline-block;
	padding: .5em .75em .5em 1.5em;
	font-size: 1.6rem;
	line-height: 1;
	text-align: center;
	position: relative;
	text-decoration: none;
	margin-top: 4rem;
}

/* 帰属文 */
ul.list-kizoku li {
	display: none;
}

/* 画像保存禁止 */
.copyprotectImg {
	pointer-events: none !important;
}

/* フレックスコンテナ */
.flex-container {
	display: flex;
	flex-wrap: wrap;
}

.flex-item {
	width: 100%;
}

.flex-container.column4 .category {
	color: #a0a0a0;
}

.flex-container.column4 .flex-item .img {
	border: solid 1px #d9d9d9;
}

/* テーブルスタイル01 add 2021/04/16 --------------------- */
table.t-style01{
	border-collapse: collapse;
	table-layout: fixed;
	margin: 0 auto;
	padding: 0;
	width: 100%;
	line-height: 1;
	word-break: break-word;
	word-wrap: break-word;
}
table.t-style01 tbody th, table.t-style01 tbody td {
	padding: 0.5em;
	border: 1px solid #ccc;
}
table.t-style01 tbody th {
	background: #eeeeee;
	font-weight: 500;
}
table.t-style01 thead th {
	padding: 0.5em;
	border-top: 1px solid #585858;
	border-bottom: 1px solid #585858;
	border-left: 1px solid #585858;
	border-right: 1px solid #ccc;	
	background: #585858;
	font-weight: 500;
	color: #fff;
}
table.t-style01 thead tr th:nth-last-child(1) {
	border-right: 1px solid #585858;	
}

/* ====================================
	スマートフォン専用スタイル
===================================== */
@media only screen and (max-width: 767px) {
	.pc-only {
		display: none;
	}
	.mts {
		margin-top: 2rem;
	}
	.mtm {
		margin-top: 4rem;
	}
	main[data-footer-type] {
		padding-bottom: 4rem;
	}

	/* ユーティリティ *//* （products/common/css/global.css） */
	ul.star { /* リスト（青字・※n）add 2021/04/16 */
		padding-left: 2em;
	}
	ul.star li { /* add 2021/04/16 */
		text-indent: -2em;
	}
	ul.star li span {
		margin-right: 0.5em;
	}
	ul.star-double li span { /* リスト（青字・※nn） */
		margin-right: 0.5em;
	}
	ul.ast li:BEFORE { /* リスト（青字・＊） */
		content: "\ff0a";
		margin-right: 0.5em;
	}
	ul.kome li:BEFORE { /* リスト（黒字・※） */
		content: "\203b";
		margin-right: 0.5em;
	}
	ul.normal { /* リスト（・） */
		list-style: none;
	}
	ul.normal li:BEFORE {
		content: "\30fb";
		margin-right: 0.5em;
	}
	ul.disc { /* リスト（●）add 2021/4/16 */
		padding-left: 1.5em;
	}
	ul.disc li { /* add 2021/4/16 */
		text-indent: -1.5em;
	}
	ul.disc li:BEFORE {
		content: "\25cf";
		margin-right: 0.5em;
	}
	ul.square { /* リスト（■）add 2021/4/16 */
		padding-left: 1.5em;
	}
	ul.square li {
		text-indent: -1.5em;
	}
	ul.square li:BEFORE {
		content: "\25A0";
		margin-right: 0.5em;
	}
	ul.single li span { /* リスト（黒字・1文字） */
		margin-right: 0.5em;
	}
	.caption {
		font-size: 0.9rem;/*font-size: 1.2rem;*/
	}
	.pagetop {
		font-size: 1rem;
	}
	
	/* ページトップへ戻る */
	#pageTop.default a {
		width: 40px;
		height: 30px;
	}
	
	/* 画像サイズ */
	img.pc-w80 {
		max-width: 100%;
	}
	img.pc-w60 {
		max-width: 100%;
	}
	img.pc-w40 {
		max-width: 100%;
	}
	img.sp-w80 {
		max-width: 80%;
	}
	img.sp-w60 {
		max-width: 60%;
	}
	img.sp-w40 {
		max-width: 40%;
	}

	/* コンテンツ */
	.contents-width {
		margin: auto;
		width: 100%;
	}
	
	/* タイトル */
	.txt-ttl {
		font-size: 1.6rem;
	}
	
	/* フレックスコンテナ：スマホ2列 */
	.flex-container.sp-column2 {
		justify-content: space-between;
		font-size: 1.5rem;
	}
	.flex-container.sp-column2 .ttl {
		margin-top: 0.5em;
		font-size: 1.2rem;/*font-size: 1.6rem;*/
		font-weight: bold;
	}
	.flex-container.sp-column2 .text {
		margin-top: 0.5em;
		font-size: 1rem;/*font-size: 1.4rem;*/
	}
	.flex-container.sp-column2 .category {
		margin-top: 0.5em;
		font-size: 1rem;
		line-height: 1.4;
	}
	.flex-container.sp-column2>.flex-item {
		width: 48%;
		margin-top: 3rem;
	}
	.flex-container.sp-column2>.flex-item:nth-of-type(-n+2) {
		margin-top: 0;
	}

	/* フレックスコンテナ：3列 */
	.flex-container.column3 .category {
		display: inline-block;
		min-width: 13rem;
		margin-top: 1rem;
		padding: 0.3em;
		font-size: 1.2rem;
		text-align: center;
	}
	.flex-container.column3 .text {
		margin-top: 0.8em;
	}

	/* 帰属文 */
	#kizoku {
		margin-top: 2rem;
	}	
}

/* ====================================
	PC&タブレット、印刷専用スタイル
===================================== */
@media print , screen and (min-width: 768px) {
	
	main[data-footer-type] {
		padding-bottom: 8rem;
	}
	.mts {
		margin-top: 4rem;
	}
	.mtm {
		margin-top: 6rem;
	}
	
	/* ユーティリティ *//* （products/common/css/global.css） */
	ul.star { /* リスト（青字・※n） */
		padding-left: 2em;
	}
	ul.star li {
		text-indent: -2em;
	}
	ul.star li span {
		margin-right: 0.5em;
	}
	ul.star-double { /* リスト（青字・※nn） */
		padding-left: 2.5em;
	}
	ul.star-double li {
		text-indent: -2.5em;
	}
	ul.star-double li span {
		margin-right: 0.5em;
	}
	ul.ast { /* リスト（青字・＊） */
		padding-left: 1.5em;
	}
	ul.ast li {
		text-indent: -1.5em;
	}
	ul.ast li:BEFORE {
		content: "\ff0a";
		margin-right: 0.5em;
	}
	ul.kome { /* リスト（黒字・※） */
		padding-left: 1.5em;
	}
	ul.kome li {
		text-indent: -1.5em;
	}
	ul.kome li:BEFORE {
		content: "\203b";
		margin-right: 0.5em;
	}
	ul.normal { /* リスト（・） */
		padding-left: 1.5em;
		list-style: none;
	}
	ul.normal li {
		text-indent: -1.5em;
	}
	ul.normal li:BEFORE {
		content: "\30fb";
		margin-right: 0.5em;
	}
	ul.disc { /* リスト（●） */
		padding-left: 1.5em;
	}
	ul.disc li {
		text-indent: -1.5em;
	}
	ul.disc li:BEFORE {
		content: "\25cf";
		margin-right: 0.5em;
	}
	ul.square { /* リスト（■）add 2021/4/16 */
		padding-left: 1.5em;
	}
	ul.square li {
		text-indent: -1.5em;
	}
	ul.square li:BEFORE {
		content: "\25A0";
		margin-right: 0.5em;
	}
	ul.single { /* リスト（黒字・1文字） */
		padding-left: 1.5em;
	}
	ul.single li {
		text-indent: -1.5em;
	}
	ul.single li span {
		margin-right: 0.5em;
	}
	.caption {
		font-size: 0.9rem;/*font-size: 1.2rem;*/
	}
	
	/* ページトップへ戻る */
	#pageTop.default a {
		width: 60px;
		height: 40px;
	}

	/* 画像サイズ */
	img.pc-w80 {
		max-width: 80%;
	}
	img.pc-w60 {
		max-width: 60%;
	}
	img.pc-w40 {
		max-width: 40%;
	}
	
	/* キャプションサイズ */
	ul.pc-w80 {
		max-width: 80%;
	}
	ul.pc-w60 {
		max-width: 60%;
	}
	ul.pc-w40 {
		max-width: 40%;
	}
	
	/* PC・hover設定 */
	#globalPageTitle a:hover, #globalHeader a:hover {
		opacity: 0.5;
	}
	#breadcrumb a:hover {
		opacity: 0.6;
	}
	
	/* パンくず改行させない */
	.breadcrumb-text {
		white-space: nowrap;
		overflow: hidden;
	}
	
	/* コンテンツ */
	.contents-width {
		margin: auto;
		width: 90%;
	}
	
	/* タイトル */
	.txt-ttl {
		font-size: 1.8rem;
	}
	
	/* フレックスコンテナ：3列 */
	.flex-container.column3 {
		font-size: 1.5rem;
	}
	.flex-container.column3 .category {
		width: 12em;
		margin-top: 1rem;
		padding: 0.3em;
		font-size: 1.2rem;
		text-align: center;
	}
	.flex-container.column3 .text {
		margin-top: 0.8em;
	}
	.flex-container.column3>.flex-item {
		width: 31%;
		margin-left: 3.5%;
		margin-top: 2rem;
	}
	.flex-container.column3>.flex-item:nth-of-type(3n-2) {
		margin-left: 0;
	}
	.flex-container.column3>.flex-item:nth-of-type(-n+3) {
		margin-top: 0;
	}

	/* フレックスコンテナ：4列 */
	.flex-container.column4 {
		margin-top: 5rem;
	}
	.flex-container.column4 {
		font-size: 1.5rem;
	}
	.flex-container.column4 .ttl {
		margin-top: 0.5em;
		font-size: 1.2rem;	/*font-size: 1.6rem;*/
		font-weight: bold;
	}
	.flex-container.column4 .text {
		margin-top: 0.5em;
		/*font-size: 1.4rem;*/
	}
	.flex-container.column4 .category {
		margin-top: 0.5em;
		font-size: 1.2rem;
		line-height: 1.4;
	}
	.flex-container.column4>.flex-item {
		width: 23.5%;
		margin-left: 2%;
		margin-top: 2rem;
	}
	.flex-container.column4>.flex-item:nth-of-type(4n-3) {
		margin-left: 0;
	}
	.flex-container.column4>.flex-item:nth-of-type(-n+4) {
		margin-top: 0;
	}
}

/* ====================================
	タブレット、印刷専用スタイル
===================================== */
@media print , screen and (min-width: 768px) and (max-width: 1079px) {
	.pc-only {
		display: none;
	}
}

/* ====================================
	PC専用スタイル
===================================== */
@media only screen and (min-width: 1080px) {	
}

/* ====================================
	スクリーン専用スタイル
===================================== */
@media screen {
	[data-check="checking"] {
		background: #ffccd5 !important;
	}
	
	.base-width {
		max-width: 1200px;
		margin-left: auto;
		margin-right: auto;
	}
	
	/* ページトップへ戻る *//* （products/common/css/global.css） */
	#pageTop {
		position: relative;
	}
	#pageTop.default {
		height: 7rem;
	}
	#pageTop.default .page-top-container {
		padding-bottom: 2rem;
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
	}
	#pageTop.fix .page-top-container {
		position: fixed;
		z-index: 10;
		pointer-events: none;
	}
	#pageTop.default a {
		display: flex;
		justify-content: center;
		align-items: center;
		/*width: 40px;*/
		/*height: 30px;*/
		margin-left: auto;
		font-weight: 900;
		font-size: 1.8rem;
		line-height: 1;
		background: rgba(161, 161, 161, 0.8);
		color: #fff;
		text-decoration: none;
		border-radius: 0.5rem;
		transition: opacity 0.5s ease 0s;
		-webkit-transition: opacity 0.5s ease 0s;
		-moz-transition: opacity 0.5s ease 0s;
		-ms-transition: opacity 0.5s ease 0s;
		pointer-events: auto;
	}
	#pageTop.default a.hovering {
		opacity: 0.6;
	}
}

/* ====================================
	印刷専用スタイル
===================================== */
@media print {
	.page-navi-fix-wrap {
		display: none;
	}
	body {
		width: 960px;
		margin-left: auto;
		margin-right: auto;
	}
}