@charset "utf-8";
/*@charset "UTF-8";     コメント */
/*css初期設定 start*/
html {
	font-size: 62.5%;
	/*文字標準*/
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 400;
	font-style: normal;
	scroll-behavior: smooth;
}
.eng {
	font-family: "Segoe UI", "Frutige", "Dejavu Sans", "Helvetica Neue", "Arial", sans-serif;
	font-weight: 600;
	font-style: normal;
	letter-spacing: 2px;
}
p.small {
	font-size: clamp(13px, 1.6vw, 14px);
}
h4.eng {
	font-weight: 900;
}
h4.eng span {
	display: inline-block;
}
p {
	font-size: clamp(14px, 3vw, 16px);
}
a {
	text-decoration: none;
	/*リンクデコレーションリセット*/
}
/*大きさの計算*/
*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
/*hrリセット*/
hr {
	height: 0;
	margin: 0;
	padding: 0;
	border: 0;
}
body {
	width: 100%;
	margin: 0 auto;
	/*文字詰め*/
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
	/*スマホ横向き時のフォントサイズリセット*/
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	overflow: hidden;
	line-height: 1.7;
	background-color: #17212e;
	color: #fff;
}
/*iOSフォーム要素の初期化*/
input,
button,
textarea,
select {
	-webkit-appearance: none;
	appearance: none;
}
/*画像の調整*/
img {
	width: 100%;
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
span {
	display: inline-block;
}
@media (max-width: 840px) {
	.sp_top {
		display: block !important;
	}
	.pc_top {
		display: none !important;
	}
}
@media only screen and (min-width: 841px) {
	.sp_top {
		display: none !important;
	}
	.pc_top {
		display: block !important;
	}
	/* .br-sp {
    display: none;
  } */
	.presentBlock {
		width: 100%;
	}
}

@media (max-width: 1023px) {
	.sp {
		display: block !important;
	}
	.pc {
		display: none !important;
	}
}
@media only screen and (min-width: 1024px) {
	.sp {
		display: none !important;
	}
	.pc {
		display: block !important;
	}
	.br-sp {
		display: none;
	}
}
/*ヘッダーアイコンサイズ調整　sp*/
#header #name-and-logo img {
	height: 48px;
	width: 150px;
}
/*css初期設定 end*/

/*メインcss*/
.eng {
	font-family: segoe-ui, sans-serif;
	font-style: normal;
}
.mainWrap {
	display: block;
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
}
.leadSec {
	margin: 15% 0;
	line-height: 2 !important;
}
.leadSec_inner {
	margin: 0 auto;
	padding: 0 10%;
}
.leadSec h2 {
	line-height: 3 !important;
	text-align: center;
	font-size: clamp(16px, 2.3vw, 18px);
}
.leadSec p {
	line-height: 2.5 !important;
	font-size: clamp(14px, 2.2vw, 16px);
}
.leadSec h4 {
	text-align: center;
	line-height: 2 !important;
	font-size: clamp(16px, 2.33vw, 20px);
}
.presentSec {
	padding: 15% 0;
	background-color: #9f8754;
}
.presentSec .eng {
	font-weight: 900;
	font-size: clamp(24px, 5.33vw, 33px);
	font-size: clamp(20px, 2.4vw, 28px);
}
.presentSec .presentDesc {
	margin: 0 auto;
	padding: 0 3% 8%;
	text-align: center;
	font-weight: 500;
}
.presentSec .presentDesc p {
	width: 88%;
	max-width: 630px;
	margin: 0 auto;
	font-weight: 400;
}
.presentSec .presentDesc h2 {
	font-size: clamp(25px, 6.66vw, 39px);
}
.novelty {
	width: 70%;
	max-width: 500px;
	margin: 0 auto;
}
.novelty p {
	padding-top: 2%;
}

.novelty .end_txt {
	padding-top: 0;
	width: 63%;
	padding: 5%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	align-items: center;
	background-color: #17212e;
	z-index: 50;
	font-size: 1.4em;
	text-align: center;
}

.listSec {
	margin: 18% auto;
	text-align: center;
}
.listSec h4 {
	margin-bottom: 2%;
	font-size: clamp(25px, 6.66vw, 39px);
	font-weight: 900;
}
.listSec .listFlex {
	display: flex;
	width: 95%;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0 auto;
}
.listSec .listCard {
	margin: 0 3% 3% 0;
	width: calc((100% / 2) - (5% * 1 / 2));
	position: relative;
}

.listSec .listCard:first-child {
	width: 99%;
	margin: 0 0 5% 0;
}

.listSec .listCard:nth-child(3),
.listSec .listCard:nth-child(5) {
	margin-right: 0;
}
.listSec .listCard a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 10;
}
.itemSec .itemBoxOuter.outerBg_light {
	background-color: #9f8754;
}
.itemSec .itemBoxOuter.item05 {
	background-color: #cec6a9;
}
.itemSec .itemBoxOuter {
	padding: 10% 5%;
}
.itemSec .itemBox .firstBox .heading {
	font-size: clamp(18px, 3.16vw, 28px);
	margin-bottom: 2%;
	text-align: center;
}
.itemSec .itemBox .firstBox .centerBorder {
	display: block;
	width: 50%;
	height: 27px;
	border-right: 1.5px solid #fff;
}
.itemSec .itemBox .firstBox > p {
	text-align: center;
}
.itemSec .itemBox .firstBox .title {
	font-size: clamp(28px, 3.46vw, 38px);
	font-weight: 900;
	text-align: center;
	margin-top: 1%;
	margin-bottom: 3%;
	line-height: 1.4;
}
.itemBox .secondBox {
	width: 100%;
	max-width: 600px;
	margin: 0 auto;
	display: flex;
	flex-direction: column-reverse;
	justify-content: space-between;
}
.itemBox .secondBox .boxInnerRight {
	display: flex;
	flex-direction: column-reverse;
	justify-content: space-between;
}
.thirdBox {
	margin: 0 auto;
	text-align: center;
}
.thirdBox > h5 {
	font-size: clamp(15px, 3.46vw, 28px);
	text-align: center;
	margin-top: 15%;
	margin-bottom: 3%;
}
.thirdBox .listFlex {
	display: flex;
	justify-content: space-evenly;
}
.thirdBox .listFlex img {
	margin-right: 5px;
	margin-bottom: 5px;
	width: calc((100% / 2) - (5px * 2 / 3));
}
.thirdBox.item06_block img {
	width: clamp(165px, 43vw, 366px);
	height: auto;
	margin: 0 auto;
}
.thirdBox .textBox {
	margin: 5% auto 1%;
}
.thirdBox .textBox .eng,
.thirdBox .textBox h5.itemName {
	font-size: clamp(16px, 2.86vw, 20px);
	text-align: center;
}
.thirdBox a.buyBtn {
	width: 50%;
	max-width: 250px;
	display: inline-block;
	border: 1px solid #fff;
	color: #fff;
	text-align: center;
	margin: 1em auto;
	padding: 0.1em;
	font-size: clamp(14px, 2.86vw, 18px);
	text-decoration: none;
}

.swiper01 {
	width: 80%;
	max-width: 650px;
	margin: 15% auto;
}
.swiper01-02 {
	opacity: 0;
}

.modelImage {
	width: 80%;
	max-width: 650px;
	margin: 15% auto;
}
.cvSec {
	display: flex;
	flex-direction: column;
	width: 90%;
	margin: 0 auto;
	justify-content: center;
	align-items: center;
	height: auto;
	padding: 12% 0;
	gap: 10px;
}
a.cvBtn {
	width: 80%;
	max-width: 380px;
	border: 2px solid white;
	background-color: white;
	text-align: center;
	text-decoration: none;
	color: black;
	padding: 8px;
	border: 1px solid #000;
	font-size: 1.6rem;
	font-weight: 600;
}

/* itemCredit 基本共通*/
/* swiper基礎設定 */
.swiper-initialized {
	display: block;
}
/* スライドの動き等速 */
.swiper-wrapper {
	height: auto;
	transition-timing-function: ease-out;
}
/* 画像のサイズ調整 */
.swiper-slide img {
	height: auto;
	width: 100%;
}
.swiper-notification {
	display: none;
}
/* swiper基礎設定 */
/* フェードイン(初期値) */
.js-fadeLeft {
	opacity: 0; /* 最初は非表示 */
	transform: translateX(100px); /* 下に30pxの位置から */
	transition: opacity 0.8s, transform 0.8s; /* 透過率と縦方向の移動を0.8秒 */
}
/* フェードイン(スクロールした後) */
.js-fadeLeft.is-inview {
	opacity: 1; /* 表示領域に入ったら表示 */
	transform: translateX(0); /* 30px上に移動する */
	transition-delay: 0.5s; /* フェード開始を0.5秒遅らせる */
}
.js-fadeRight {
	opacity: 0; /* 最初は非表示 */
	transform: translateX(-100px); /* 下に30pxの位置から */
	transition: opacity 0.8s, transform 0.8s; /* 透過率と縦方向の移動を0.8秒 */
}
/* フェードイン(スクロールした後) */
.js-fadeRight.is-inview {
	opacity: 1; /* 表示領域に入ったら表示 */
	transform: translateX(0); /* 30px上に移動する */
	transition-delay: 0.5s; /* フェード開始を0.5秒遅らせる */
}

/* アイテム06　スライダー */
.swiper {
	max-width: 100%;
}
.swiper-slide {
	margin-top: 0;
}
.swiper-slide img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	margin-top: 0 !important;
}
.swiper-button-next::after,
.swiper-button-prev::after {
	font-size: 30px;
	color: #fff;
}
.swiper-button-prev,
.swiper-rtl .swiper-button-next {
	left: 1%;
	right: auto;
}
.swiper-button-next,
.swiper-rtl .swiper-button-prev {
	right: 1%;
	left: auto;
}
.swiper-button-next,
.swiper-button-prev {
	top: var(--swiper-navigation-top-offset, 40%);
	opacity: 0.8;
}
.swiper-pagination-bullet {
	background-color: #fff;
}
.slide_per1 .swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
	bottom: 2% !important;
}
.slide_item .swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
	bottom: 13.5% !important;
}

/*inview*/
/*トップに戻るボタン*/
/*フローティングボタン*/
.float-button__wrap {
	display: none; /*最初は隠す*/
	width: 90px;
	height: auto;
	position: fixed;
	bottom: 16px;
	/* 20250410フッター修正 */
	right: 10px;
	z-index: 10000;
}
.float-button__wrap a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
}
.mainSection {
	display: block;
	width: 100%;
	margin: 0 auto;
}
/*トップに戻るボタン*/

@media (any-hover: hover) {
	.listSec .listCard:hover {
		opacity: 0.8;
		transition: 0.2s ease-in-out;
	}
	.thirdBox a.buyBtn:hover {
		color: #17212e;
		background-color: #fff;
		transition: 0.2s ease-in-out;
	}
	.outerBg_light .thirdBox a.buyBtn:hover {
		color: #9f8754;
	}
	a.cvBtn:hover {
		opacity: 0.8;
		transition: 0.2s ease-in-out;
	}
}
@media screen and (max-width: 468px) {
	.leadSec_inner span {
		display: inline;
	}
}

@media screen and (min-width: 600px) {
	.listSec .listFlex {
		width: 95%;
		gap: 15px;
	}
	.listSec .listCard,
	.listSec .listCard:first-child {
		margin-right: 0;
		margin-bottom: 0;
		width: calc((100% / 3) - 10px);
		position: relative;
	}
}

/*width:740以上*/
@media (min-width: 740px) {
	.leadSec_inner {
		margin: 0 auto;
		padding: 0 3%;
		text-align: center;
	}
	.presentSec .balloon img {
		width: 100%;
	}
	.presentBlock span {
		width: 100%;
	}
}
/*width:841p以上*/
@media (min-width: 841px) {
	#header #name-and-logo img {
		height: 48px;
		width: 201px;
	}
	.leadSec {
		margin: 8% 0;
	}
	.presentSec {
		padding: 5%;
	}
	.presentSec .presentDesc {
		padding-bottom: 3%;
	}
	.presentSec .presentDesc p {
		width: 100%;
	}
	.presentBlock {
		padding: 1%;
	}
	.presentBlock img {
		width: 100%;
	}
	.listSec {
		margin: 8% auto 9%;
	}
	.listSec .listFlex {
		width: 95%;
		max-width: 1024px;
		gap: 15px;
	}
	.listSec .listCard:nth-child(4) {
		margin-right: 0;
	}
	.itemSec .itemBoxOuter {
		padding-top: 8%;
	}
	.itemSec .itemBox .firstBox .centerBorder {
		height: 49px;
	}
	.itemSec .itemBox .firstBox .heading {
		margin-bottom: 1%;
	}
	.itemBox .firstBox p {
		display: block;
		width: 100%;
		max-width: 1024px;
		margin: 0 auto;
	}
	.itemBox .secondBox {
		width: 100%;
		max-width: 1024px;
		margin: 0 auto;
		flex-direction: row;
		flex-wrap: nowrap;
	}
	.secondBox .boxInnerLeft {
		width: 50%;
	}
	.secondBox .boxInnerRight {
		width: 50%;
	}
	.thirdBox > h5 {
		margin-top: 10%;
		margin-bottom: 2%;
	}
	.thirdBox {
		width: 100%;
		max-width: 840px;
	}
	.thirdBox .listFlex img {
		margin-right: 5px;
		margin-bottom: 5px;
		width: calc((100% / 3) - (5px * 2 / 3));
	}
	.thirdBox .textBox {
		display: flex;
		justify-content: center;
		/* gap: 5%; */
		gap: 2em;
	}
	.thirdBox .textBox .item_credit {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 2em;
	}
	.thirdBox .textBox.item06 {
		flex-direction: column;
	}

	.swiper01,
	.modelImage {
		margin: 5% auto 8%;
		max-width: 650px;
	}
	.cvSec {
		width: 60%;
		margin-bottom: 60px;
		padding: 6% 0;
		flex-direction: row;
		gap: 20px;
	}
	.js-fadeRight {
		opacity: 0; /* 最初は非表示 */
		transform: translateY(100px); /* 下から100pxの位置 */
	}

	.js-fadeRight.is-inview {
		opacity: 1; /* 表示領域に入ったら表示 */
		transform: translateY(0); /* 元の位置に戻す */
		transition-delay: 0.5s; /* フェード開始を0.5秒遅らせる */
	}
}
@media (min-width: 1024px) {
	.presentSec .presentDesc p {
		max-width: 100%;
	}
}
