@charset "UTF-8";

.features_hd {
}

.features_hd_wrap {
}

.features_hd_ttl {
}

.features_hd_ttl_wrap {
}

.features_hd_ttl_cnt {
}

.features_hd_pnkz {
}

.features_hd_pnkz_list {
}

.features {
}

.fsec {
	position: relative;
}

.fsec.f01 {
	padding-top: 110px;
}

.fsec.f02 {
	padding-top: 85px;
}

.fsec.f03 {
	padding-top: 110px;
}

.fsec.f04 {
	padding-top: 150px;
}

.fsec.f05 {
	padding-top: 150px;
}

.fsec_wrap {
	position: relative;
}

.fsec_wrap::before {
	content: "";
	display: block;
	position: absolute;
}

.fsec.f01 .fsec_wrap::before {
	right: 50%;
	bottom: 39px;
	z-index: -1;
	width: 372.61px;
	height: auto;
	background: url(../img/features/dot-item01@2x.png) center / cover;
	transform: translate(50% ,100%);
	aspect-ratio: 37261 / 23134;
}

.fsec.f02 .fsec_wrap::before {
	right: 19%;
	bottom: 39px;
	z-index: -1;
	width: 190px;
	height: auto;
	background: url(../img/features/dot-item02@2x.png) center / cover;
	transform: translate(0, 100%);
	aspect-ratio: 190 / 386;
}

.fsec.f03 .fsec_wrap::before {
	bottom: 120px;
	left: -39px;
	z-index: -1;
	width: 159px;
	height: auto;
	background: url(../img/features/dot-item03@2x.png) center / cover;
	transform: translate(0, 50%);
	aspect-ratio: 159 / 589;
}

.fsec.f04::before {
	content: "";
	display: block;
	position: absolute;
	right: 50%;
	bottom: 65px;
	z-index: -1;
	width: 510px;
	height: auto;
	background: url(../img/features/dot-item04@2x.png) center / cover;
	transform: translate(0% ,100%);
	aspect-ratio: 510 / 460;
}

.fsec_wrap.fsec_row {
	display: flex;
	flex-flow: row;
	gap: 40px;
}

.fsec_wrap.fsec_r-row {
	display: flex;
	flex-flow: row-reverse;
	gap: 40px;
}

.fsec_wrap.fsec_03col {
	padding: 0 100px;
}

.fsec_img {
}

.fsec_rowimg .fsec_img {
	width: 460px;
}

.fsec_cnt {
}

.fsec_rowimg .fsec_cnt {
	width: calc(100% - 500px);
}

.fsec_hd {
	position: relative;
	margin-bottom: 30px;
}

.f03 .fsec_hd,
.f05 .fsec_hd {
	margin-bottom: 65px;
	text-align: center;
}

.f03 .fsec_hd::before,
.f04 .fsec_hd::before,
.f05 .fsec_hd::before {
	content: "";
	display: block;
	position: absolute;
	height: auto;
}

.f03 .fsec_hd::before {
	bottom: -32px;
	left: -36px;
	width: 313px;
	background: url(../img/features/f03-hd-item@2x.png) center / cover;
	aspect-ratio: 313 / 296;
}

.f04 .fsec_hd::before {
	bottom: -10px;
	left: 322px;
	width: 254px;
	background: url(../img/features/f04-hd-item@2x.png) center / cover;
	aspect-ratio: 254 / 283;
}

.f05 .fsec_hd::before {
	bottom: -115px;
	left: 93px;
	width: 274px;
	background: url(../img/features/f05-hd-item@2x.png) center / cover;
	aspect-ratio: 274 / 357;
}

.fsec_hd_en {
	color: transparent;
	font-style: italic;
	font-size: 36px;
	text-shadow: 1px 2px 0 #c4ff00;

	-webkit-text-stroke-width: 1px;
	-webkit-text-stroke-color: #000000;
}

.fsec_hd_en span {
	font-size: 46px;
}

.fsec_hd_ttl {
	font-weight: bold;
	font-size: 30px;
}

.fsec_txt {
	font-weight: bold;
}

.f03_cnt {
}

.f03_cnt:last-child {
	margin-top: 70px;
}

.f03_img {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
	margin-bottom: 34px;
}

.f03_img_cnt {
}

.f03_txt {
}

.f03_txt_ttl {
	margin-bottom: 20px;
	font-weight: bold;
	font-size: 30px;
}

.f03_txt_cnt {
}

.f04_famous {
	margin-top: 150px;
}

.f04_famous_wrap {
	position: relative;
	padding: 60px;
	border: 1px solid #000000;
	background: url(../img/cmn/grid-bg@2x.png) center / 75px 75px repeat;
}

.f04_famous_ttl {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: -16.5px;
	left: -21px;
	width: 334px;
	height: 77px;
	background: url(../img/features/f04-famous-ttl@2x.png) center / cover;
	font-weight: bold;
	font-size: 24px;
	transform: rotate(-9deg);
}

.f04_famous_cnt {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	gap: 40px 27px;
	position: relative;
	z-index: 2;
}

.f04_famous_cnt figure {
}

.f04_famous_cnt figure img {
	margin-bottom: 14px;
}

.f04_famous_cnt figure figcaption {
	display: flex;
	align-items: center;
	gap: 5px;
	font-weight: bold;
}

.f04_famous_cnt figure figcaption::before {
	content: "";
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #c4ff00;
}

.f05_wrap {
	display: flex;
	flex-flow: column;
	gap: 30px;
	position: relative;
	z-index: 2;
}

.f05_cnt {
	display: flex;
	gap: 40px;
}

.f05_img {
	flex-shrink: 0;
	width: 460px;
}

.f05_img_cnt {
}

.f05_txt {
	width: calc(100% - 500px);
}

.f05_txt_ttl {
	margin-bottom: 20px;
	font-weight: bold;
	font-size: 30px;
}

.f05_txt_cnt {
	font-weight: bold;
}

@media screen and (max-width:1240px) {
}

@media screen and (max-width:768px) {
	.features_hd {
	}

	.features_hd_wrap {
	}

	.features_hd_ttl {
	}

	.features_hd_ttl_wrap {
	}

	.features_hd_ttl_cnt {
	}

	.features_hd_pnkz {
	}

	.features_hd_pnkz_list {
	}

	.features {
		overflow: hidden;
	}

	.fsec {
	}

	.fsec.f01 {
		padding-top: 60px;
	}

	.fsec.f02 {
		padding-top: 30px;
	}

	.fsec.f03 {
		padding-top: 20px;
	}

	.fsec.f04 {
		padding-top: 85px;
	}

	.fsec.f05 {
		padding-top: 40px;
	}

	.fsec_wrap {
	}

	.fsec_wrap::before {
	}

	.fsec.f01 .fsec_wrap::before {
	}

	.fsec.f02 .fsec_wrap::before {
	}

	.fsec.f03 .fsec_wrap::before {
	}

	.fsec.f04::before {
	}

	.fsec_wrap.fsec_row {
		flex-flow: column;
		gap: 17px;
	}

	.fsec_wrap.fsec_r-row {
		flex-flow: column;
		gap: 17px;
	}

	.fsec_wrap.fsec_03col {
		padding: 0;
	}

	.fsec_img {
		width: 100%;
	}

	.fsec_rowimg .fsec_img {
		width: 100%;
	}

	.fsec_cnt {
	}

	.fsec_rowimg .fsec_cnt {
		width: 100%;
	}

	.fsec_hd {
		margin-bottom: 15px;
	}

	.f03 .fsec_hd,
	.f05 .fsec_hd {
		margin-bottom: 15px;
		text-align: start;
	}

	.f03 .fsec_hd::before,
	.f04 .fsec_hd::before,
	.f05 .fsec_hd::before {
		position: unset;
	}

	.f03 .fsec_hd::before {
		margin: 0 auto;
	}

	.f04 .fsec_hd::before {
		margin: 0 auto;
	}

	.f05 .fsec_hd::before {
		margin: 0 auto;
	}

	.fsec_hd_en {
		line-height: 1;
	}

	.fsec_hd_en span {
	}

	.fsec_hd_ttl {
		font-size: 22px;
	}

	.fsec_txt {
	}

	.f03_cnt {
	}

	.f03_cnt:last-child {
		margin-top: 30px;
	}

	.f03_img {
		grid-template-columns: 1fr;
		gap: 11px;
		margin-bottom: 20px;
	}

	.f03_img_cnt {
	}

	.f03_txt {
	}

	.f03_txt_ttl {
		margin-bottom: 15px;
		font-size: 24px;
	}

	.f03_txt_cnt {
	}

	.f04_famous {
		margin-top: 30px;
	}

	.f04_famous_wrap {
		padding: 80px 20px 20px;
	}

	.f04_famous_ttl {
	}

	.f04_famous_cnt {
		grid-template-columns: 1fr 1fr;
		gap: 10px 20px;
	}

	.f04_famous_cnt figure {
	}

	.f04_famous_cnt figure img {
		margin-bottom: 2px;
	}

	.f04_famous_cnt figure figcaption {
	}

	.f04_famous_cnt figure figcaption::before {
	}

	.f05_wrap {
	}

	.f05_cnt {
		flex-flow: column;
		gap: 10px;
	}

	.f05_img {
		width: 100%;
	}

	.f05_img_cnt {
	}

	.f05_txt {
		width: 100%;
	}

	.f05_txt_ttl {
		margin-bottom: 10px;
		font-size: 24px;
	}

	.f05_txt_cnt {
	}
}
