@charset "utf-8";

/*
===== products_index ===========================*/

/* .c-headline_01
--------------------*/

#products_index .c-headline_01 .bg {
	background: url(/assets/products/img/index_bg_main.jpg) no-repeat 50% 50%;
	background-size: cover;
}

#products_index .c-headline_01 h1 {
	padding-left: 32px;
	padding-right: 32px;
}

#products_index .c-headline_01 h1 em {
	font-size: 46px;
}

@media (max-width: 768px) {
	#products_index .c-headline_01 .bg {
		background: url(/assets/products/img/index_bg_main_sp.jpg) no-repeat 50% 50%;
		background-size: cover;
	}

	#products_index .c-headline_01 h1 {
		padding-left: 15px;
		padding-right: 15px;
	}

	#products_index .c-headline_01 h1 em {
		font-size: 30px;
	}
}

/* p-list
--------------------*/
#products_index .p-list {
	padding: 0 0 108px;
}

#products_index .p-list h2 {
	margin: 64px 0 0;
}

#products_index .p-list .wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 32px 24px;
	margin: 64px 0 0;
}

#products_index .p-list .item {
	width: calc((100% - 72px) / 4);
}

#products_index .p-list .item a {
	position: relative;
	display: flex;
	flex-direction: column;
	height: 100%;
	background: #ffffff;
	border-radius: 10px;
	overflow: hidden;
}

#products_index .p-list .item dl {
	margin: 0 16px;
	padding: 16px 0;
	background: url(/assets/img/common/line_dot_01.png) repeat-x 0 100%;
	background-size: auto 1px;
}

#products_index .p-list .item dl.no_caption {
	padding-bottom: 80px;
	background: none;
}

#products_index .p-list .item dt {
	font-size: 16px;
	font-weight: 700;
}

#products_index .p-list .item dd {
	margin: 8px 0 0;
	font-size: 14px;
	font-weight: 400;
}

#products_index .p-list .item p {
	padding: 16px 60px 24px 24px;
	font-size: 12px;
	font-weight: 400;
}

#products_index .p-list .item a:after {
	content: "";
	display: block;
	position: absolute;
	right: 16px;
	bottom: 16px;
	width: 34px;
	height: 34px;
	background: url(/assets/img/common/bullet_arrow_02_y.svg) no-repeat 100% 50%;
	background-size: 34px auto;
	transition: .3s all;
}

#products_index .p-list .item a:before {
	content: "";
	display: block;
	position: absolute;
	right: 16px;
	bottom: 16px;
	width: 34px;
	height: 34px;
	background: url(/assets/img/common/bullet_arrow_02_n.svg) no-repeat 100% 50%;
	background-size: 34px auto;
	transition: .3s all;
	opacity: 0;
}

#products_index .p-list .c-nav_03 {
	margin: 64px 0 0;
}

@media (min-width: 769px) {
	#products_index .p-list .item a:hover {
		background: #F8E133;
	}

	#products_index .p-list .item a:hover:after {
		opacity: 0;
	}

	#products_index .p-list .item a:hover:before {
		opacity: 1;
	}
}

@media (max-width: 1024px) {
	#products_index .p-list .item {
		width: calc((100% - 48px) / 3);
	}
}

@media (max-width: 768px) {
	#products_index .p-list {
		padding: 0 0 56px;
	}

	#products_index .p-list h2 {
		margin: 32px 0 0;
	}

	#products_index .p-list .wrap {
		gap: 24px 20px;
		margin: 32px 0 0;
	}

	#products_index .p-list .item {
		width: calc((100% - 20px) / 2);
	}

	#products_index .p-list .item dl {
		margin: 0 8px;
		padding: 16px 0;
	}

	#products_index .p-list .item dl.no_caption {
		padding-bottom: 32px;
	}

	#products_index .p-list .item dd {
		margin: 8px 0 0;
	}

	#products_index .p-list .item p {
		padding: 16px 8px 40px;
	}

	#products_index .p-list .item a:after {
		right: 8px;
		bottom: 8px;
		width: 24px;
		height: 24px;
		background: url(/assets/img/common/bullet_arrow_02_y.svg) no-repeat 100% 50%;
		background-size: 24px auto;
	}

	#products_index .p-list .c-nav_03 {
		margin: 56px 0 0;
	}
}

/*
===== products_detail ===========================*/

/* p-main
--------------------*/
#products_detail .p-main {
	padding: 94px 0 40px;
	background: #112240;
}

#products_detail .p-main .wrap {
	display: flex;
	gap: calc((94 / 1200) * 100%);
}

#products_detail .p-main .wrap figure {
	width: calc((552 / 1200) * 100%);
	padding: 0 0 24px;
}

#products_detail .p-main .wrap figure img {
	border-radius: 20px;
}

#products_detail .p-main .wrap > div {
	flex: 1;
	color: #ffffff;
}

#products_detail .p-main .wrap h1 {
	color: #F8E133;
}

#products_detail .p-main .wrap h1 em {
	display: block;
	margin: 32px 0 0;
	font-size: 40px;
	font-weight: 700;
	line-height: calc(54 / 40);
}

#products_detail .p-main .wrap h1 span {
	display: block;
	margin: 16px 0 0;
	font-size: 20px;
	font-weight: 700;
	line-height: calc(28 / 20);
}

#products_detail .p-main .wrap h1 div {
	display: flex;
	gap: 16px;
}

#products_detail .p-main .wrap h1 i {
	display: block;
	width: fit-content;
	margin: 16px 0 0;
	padding: 8px 16px;
	background: #029E62;
	border-radius: 10px;
	color: #ffffff;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.6;
}

#products_detail .p-main .wrap h1 + p {
	margin: 48px 0 0;
	font-weight: 700;
	line-height: 2;
}

#products_detail .p-main .wrap ul {
	margin: 24px 0 0;
}

#products_detail .p-main .wrap dl {
	padding: 24px 0;
	border-top: 1px solid rgba(255,255,255,0.2);
}

#products_detail .p-main .wrap dt {
	font-size: 14px;
}

#products_detail .p-main .wrap dd {
	margin: 8px 0 0;
	font-size: 18px;
	font-weight: bold;
}

#products_detail .p-main .wrap dd span {
	display: block;
	font-size: 14px;
}

#products_detail .p-main .wrap dd span.cap {
	margin-top: -2px;
}

#products_detail .p-main .wrap li.col2 {
	display: flex;
	gap: calc((32 / 552) * 100%);
}

#products_detail .p-main .wrap li.col2 dl {
	flex: 1;
}

#products_detail .p-main .wrap li:nth-of-type(3),
#products_detail .p-main .wrap li:nth-of-type(4) {
	border-top: 1px solid rgba(255,255,255,0.2);
}

#products_detail .p-main .wrap li:nth-of-type(3) dl,
#products_detail .p-main .wrap li:nth-of-type(4) dl {
	border-top: none;
}

#products_detail .p-main .wrap li dl em {
	text-decoration: underline;
}

#products_detail .p-main .wrap li p {
	padding: 24px 0;
	font-size: 14px;
}

#products_detail .p-main .wrap li p.note {
	margin-left: 1em;
	text-indent: -1em;
}

#products_detail .p-main .wrap li a {
	color: #ffffff;
	text-decoration: underline;
}

@media (max-width: 1024px) {
	#products_detail .p-main .wrap {
		display: block;
	}

	#products_detail .p-main .wrap figure {
		width: 552px;
		margin: 0 auto;
	}

	#products_detail .p-main .wrap > div {
		margin: 48px 0 0;
	}
}

@media (max-width: 768px) {
	#products_detail .p-main {
		padding: 32px 0;
	}

	#products_detail .p-main .wrap figure {
		width: 100%;
		max-width: 335px;
		padding: 0;
	}

	#products_detail .p-main .wrap figure img {
		border-radius: 20px;
	}

	#products_detail .p-main .wrap > div {
		margin: 24px 0 0;
	}

	#products_detail .p-main .wrap h1 {
		margin: 0;
	}

	#products_detail .p-main .wrap h1 em {
		margin: 0;
		font-size: 30px;
		line-height: calc(42 / 30);
	}

	#products_detail .p-main .wrap h1 div {
		margin: -24px 0 0;
	}

	#products_detail .p-main .wrap h1 i {
		margin: 32px 0 24px;
	}

	#products_detail .p-main .wrap h1 + p {
		margin: 32px 0 0;
	}

	#products_detail .p-main .wrap dd {
		font-size: 16px;
		line-height: calc(22 / 16);
	}

	#products_detail .p-main .wrap dd span.cap {
		margin-top: 0;
	}
}

/* p-info
--------------------*/
#products_detail .p-info {
	padding: 64px 0 108px;
}

#products_detail .p-info .l-inner {
	max-width: 1064px;
}

#products_detail .p-info ul.wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 64px 3.2%;
	margin: 64px 0 0;
}

#products_detail .p-info ul.wrap > li {
	width: 22.6%;
	padding: 16px 0 0;
	border-top: 1px solid rgba(0,0,0,0.3);
}

#products_detail .p-info ul.wrap > li:nth-of-type(2) {
	width: 74.2%;
}

#products_detail .p-info ul.wrap dt {
	font-weight: 700;
	line-height: calc(22 / 16);
}

#products_detail .p-info ul.wrap dt span {
	display: inline-block;
	font-size: 14px;
}

#products_detail .p-info ul.wrap dd {
	margin: 16px 0 0;
	line-height: calc(22 / 16);
}

#products_detail .p-info ul.wrap dd .c-note_01 {
	margin: 16px 0 0;
}

#products_detail .p-info ul.wrap li:nth-of-type(5) dd .c-note_01 {
	margin: 8px 0 0;
}

#products_detail .p-info ul.wrap > li dl + dl {
	margin: 16px 0 0;
	padding: 16px 0 0;
	border-top: 1px solid rgba(0,0,0,0.3);
}

#products_detail .p-info .p-link {
	display: flex;
	flex-wrap: wrap;
	justify-content: left;
	align-items: center;
	gap: 32px;
	margin: 64px 0 0;
}

#products_detail .p-info .p-link li {
	width: 312px;
}

#products_detail .p-info .p-link li a {
	width: 100%;
}

@media (max-width: 1024px) {
	#products_detail .p-info ul.wrap > li {
		width: 48.4%;
	}

	#products_detail .p-info ul.wrap > li:nth-of-type(2) {
		width: 48.4%;
	}
}

@media (max-width: 768px) {
	#products_detail .p-info {
		padding: 32px 0 56px;
	}

	#products_detail .p-info ul.wrap {
		gap: 0 20px;
		margin: 40px 0 0;
	}

	#products_detail .p-info ul.wrap > li {
		width: 100%;
		padding: 16px 0 32px;
	}

	#products_detail .p-info ul.wrap > li:nth-of-type(2) {
		width: 100%;
	}

	#products_detail .p-info ul.wrap > li:nth-of-type(3),
	#products_detail .p-info ul.wrap > li:nth-of-type(4) {
		width: calc((100% - 20px) / 2);
	}

	#products_detail .p-info .p-link {
		display: block;
		max-width: 312px;
		margin: 24px auto 0;
	}

	#products_detail .p-info .p-link li {
		width: 100%;
		max-width: 312px;
	}

	#products_detail .p-info .p-link li + li {
		margin: 20px 0 0;
	}
}