@charset "utf-8";

:root {
	/* base */
	--cts-gutter: clamp(32px, -0.212rem + 8.91vw, 65px);/*375-768*/
	--cts-width: 1310px;

	/* font */
	--dp-font-jp: "Zen Kaku Gothic New", serif;
	/* Zen Kaku Gothic New
	300 to 900
	*/

	--cts-font: "Outfit", sans-serif;
	/* Outfit
	100 to 900
	*/

	--cts-font2: "Noto Sans JP", sans-serif;
	/* Noto Sans JP
	100 to 900
	*/

	--dp-h2-size: clamp(45px,calc(1.023rem + 3.97vw),75px);
	--dp-h3-size: clamp(15px,calc(.955rem + .73vw),22px);
	--dp-h4-size: clamp(1px,calc(.886rem + .48vw),20px);
	--dp-p-l-size: clamp(14px, 0.806rem + 0.3vw, 16px);/* 本文 Large */
	--dp-p-note-size: clamp(10px,calc(.597rem + .12vw),11px);/* 本文 Notes */
	--dp-price-s-size: clamp(16px,calc(.886rem + .48vw),20px);/* 価格 Small */
	--dp-price-tax-s-size: clamp(12px,calc(.693rem + .24vw),14px);/* 円・税 Small */

	--cts-font-size: clamp(12px, 0.636rem + 0.48vw, 16px);
	--cts-font-ls: .025em;/*letter-spacing*/

	/* color */
	--cts-white1: #FFFFFF;
	--cts-gray1:  #E9E9E9;
	--cts-gray2:  #BABABA;
	--cts-gray3:  #646464;
	--cts-gray4:  #F3F3F3;
	--cts-gray5:  #F9F9F9;
	--cts-gray6:  #808080;
	--cts-black1: #000000;
	--cts-black2: #2B2B2B;
	--cts-black3: #070707;
	--cts-black4: #1A1A1A;
	--cts-red1:    #DA0413;
	--cts-red2:   #DF0413;
}

/* LP共通汎用
____________________*/
#container a, #container a span {
    color: inherit;
    text-decoration: none;
}
.pagetop {
	display: none;	
}
#pagetop {
	display: none;
	position: fixed;
	bottom: 30px;
	right: 55px;
}
#pagetop a {
	color: #fff;
	background-color: #333;
	border-radius: 5px;
	display: block;
	font-size: 12px;
	line-height: 1.5em;
	padding: 5px 10px;
	text-align: center;
	text-decoration: none;
}
figure {
	margin: 0;
	text-align: center;
}
img {
	image-rendering: -webkit-optimize-contrast;
}
.c-breadcrumb--gray {
	display: flex;
	align-items: center;
}
.bnr_link_win11_wrap {
    margin: 0 auto;
}
.bnr_link_win11 img {
    transition: opacity 0.3s;
    width: 300px;
}
.bnr_link_win11 img:hover {
	opacity: 0.75;
}
@media screen and (min-width: 768px), print and (min-width: 768px) {
	.c-breadcrumb__list.u-pc-width,
	.bnr_link_win11_wrap.u-pc-width {
		padding-inline: 30px;
	}
	.bnr_link_win11_wrap.u-pc-width {
		width: auto;
	}
}
@media screen and (max-width: 1000px) {
	.c-breadcrumb--gray {
		display: inherit;
	}
	.bnr_link_win11_wrap {
		width: 100%;
		margin: 10px auto 0;
		padding-block-end: 10px;
	}
	.bnr_link_win11 {
		width: 100%;
		margin-top: 0;
		text-align: center;
	}
}
.contents__wrap {
	width: 100%;
	margin-inline: auto;
	background: var(--cts-color9);
	font-size: var(--cts-font-size);
	font-family: var(--dp-font-jp);
	color: var(--cts-black2);
	/* overflow: hidden; */
}
.contents__wrap img {
	max-width: 100%;
	vertical-align: bottom;
}
.pc {
	display: block !important;
}
.sp {
	display: none !important;
}
.flash:hover {
	animation-name: hover-flash;
	animation-duration: 1s;
	opacity: .85;
}
@keyframes hover-flash {
	0% {
		opacity: .3;
	}
	100% {
		opacity: .85;
	}
}
.contents__inner {
	width: 100%;
	max-width: var(--cts-width);
	margin-inline: auto;
	padding-inline: var(--cts-gutter);
	box-sizing: border-box;
	position: relative;
}
.contents__inner .area_nav {
	color: var(--cts-color);
	font-family: var(--cts-font);
	font-size: 18px;
	font-weight: 500;
	letter-spacing: 4px;
	display: flex;
	align-items: center;
	gap: 30px;
	position: absolute;
	left: -60px;
	top: 190px;
	writing-mode: vertical-rl;
	z-index: 5;
}
.contents__inner .area_nav::after {
	content: "";
	width: 2px;
	height: 50px;
	background: var(--cts-color);
	position: relative;;
}
/* コンテンツ
____________________*/
::selection {
	color: var(--cts-white1);
	background-color: var(--cts-red1);
}
.contents__wrap {
	padding-block-end: 0;
	position: relative;
}
.ttl-h2 {
	color: var(--cts-black1);
	font-size: 25px;
	font-family: var(--cts-font);
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1;
}
.read-txt {
	font-size: clamp(16px, 0.545rem + 1.61vw, 17px);
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.8;
	text-align: left;
	margin-top: 40px;
}
.note-txt {
	color:var(--cts-gray3);
	font-size: 13px;
	font-weight: 500;
	line-height: 1.7;
	margin-top: 43px;
}
.txt-appeal {
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1;
	margin-top: 30px;
}
.modaal-container {
	background: none !important;
}
/* sub_nav
____________________*/
.sub_nav_wrap {
	position: absolute;
	width: 150px;
	display: none;
	background: none;
	z-index: +1;
}
.sub_nav_wrap.fixed {
	position: sticky;
	top: 0;
	left: 3.258%;
	width: fit-content;
	padding-top: 80px;
	padding-bottom: 50px;
	z-index: 999;
}
.sub_nav__inner {
	padding: 0;
}
.sub_nav_logo {
	width: 57.5px;
}
.sub_nav_logo img {
	width: 100%;
}
.header__menu {
	margin-top: 50px;
}
.submenu__list {
	display: flex;
	justify-content: center;
	flex-direction: column;
	gap: 25px;
	padding: 0;
}
.submenu__list .menu__item a {
    position: relative;
    width: fit-content;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    color: var(--cts-black4); /* 適切な色を指定 */
    font-size: clamp(14px, 0.652rem + 0.36vw, 18px);
    font-family: var(--cts-font);
    font-weight: 800;
    line-height: 1;
    letter-spacing: .1em;
    transition: color .3s;
    text-align: left;
    text-decoration: none;
}
.submenu__list .menu__item.current a {
    color: var(--cts-black4);
}
/* 下線のアニメーション */
.submenu__list .menu__item.current a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -8px; /* テキストのすぐ下に配置 */
    width: 100%;
    height: 1px; /* 下線の太さ */
    background-color: var(--cts-black1); /* 選択時のカラー */
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.3s ease-in-out;
}
.submenu__list .menu__item.current a:hover::after,
.submenu__list .menu__item.current a::after {
    transform: scaleX(1);
}
.submenu__list .menu__item a.white,
.submenu__list .menu__item.current a.white {
	color: var(--cts-white1);
}
.submenu__list .menu__item.current a.white::after {
	background-color: var(--cts-white1);
}
.submenu-btn {
	display: none;
}
/* mv
____________________*/
.contents--mv {
	width: 100%;
	padding: 0;
}
.contents--mv img {
	width: 100%;
	padding: 0;
	position: relative;
	vertical-align: bottom;
}
/* contents--special-case
___________________________*/
.contents--special-case {
	margin: 0;
	padding-top: 320px;
	padding-bottom: 200px;
	position: relative;
	z-index: 1;
}
.contents--special-case .top-slide_wrap {
	width: 100%;
	position: absolute;
	top: 130px;
	z-index: 1;
}
.contents--special-case .special-case-slide,
.contents--special-case .special-case-slide2 {
    width: 100%;
    overflow: hidden;
}
.contents--special-case .special-case-slide2 {
	margin-top: 40px;
}
.special-case-slide li,
.special-case-slide2 li {
	max-width: 1255px;
    list-style: none;
	margin-right: 70px;
}
.special-case-slide img,
.special-case-slide2 img {
    width: 100%;
    height: auto;
}
.special-case {
	position: relative;
	z-index: 2;
}
.special-case .inner-flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
	z-index: 2;
}
.special-case .inner-left,
.special-case .inner-right {
	width: 100%;
}
.special-case .inner-left {
	max-width: 540px;
}
.special-case .inner-right {
	max-width: 550px;
	background: var(--cts-gray1);
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 1;
}
.inner-right .case-picture {
	width: 100%;
	position: relative;
	z-index: 3;
}
.special-case .inner-right .decoration-1,
.special-case .inner-right .decoration-2 {
	color: var(--cts-red1);
	font-size: clamp(5px, -1.652rem + 3.36vw, 10px);
	font-family: var(--cts-font);
	font-weight: 300;
	line-height: 1.4;
	position: absolute;
	z-index: 2;
}
.special-case .inner-right .decoration-1 {
	right: -3px;
    top: 50px;
    transform: rotate(90deg);
}
.special-case .inner-right .decoration-2 {
	left: 30px;
    bottom: 20px;
}
.cr-txt-logo {
	width: 251px;
}
.special-case .ttl-h2 {
	margin-top: 20px;
}
.slide-decoration {
	width: 100%;
	overflow: hidden;
}
.slide-decoration li {
	max-width: 111px;
	margin-right: 80px;
}
.slide-decoration2 li {
	max-width: 120px;
	margin-right: 80px;
}
.slide-decoration li img {
	width: 100%;
	height: auto;
}
/* contents--clear-panel
___________________________*/
.contents--clear-panel {
	padding-top: 200px;
	padding-bottom: 275px;
	overflow: hidden;
}
.clear-panel .inner-block {
	width: 100%;
	position: relative;
	z-index: 1;
}
.clear-panel .inner-block .inner-left {
	flex: none;
	width: 370px;
	position: absolute;
	left: 0;
	bottom: 10px;
	z-index: 3;
}
.clear-panel .inner-block .inner-right {
	width: calc(100% -240px);
	margin-left: 240px;
	position: relative;
	z-index: 2;
}
.clear-panel .inner-block .inner-right::after {
	content: "";
	width: 150%;
	height: 100%;
	display: block;
	background: var(--cts-gray1);
	position: absolute;
    left: 210px;
	top: 110px;
	z-index: -1;
}
.clear-panel .inner-block .inner-right .panel-picture {
	width: 100%;
	display: block;
	position: relative;
	z-index: 2;
}
.clear-panel .inner-block .inner-right .decoration-1, .clear-panel .inner-block .inner-right .decoration-2 {
    color: var(--cts-red1);
    font-size: clamp(5px, -1.652rem + 3.36vw, 10px);
    font-family: var(--cts-font);
    font-weight: 300;
    line-height: 1.4;
    position: absolute;
    z-index: 2;
}
.clear-panel .inner-block .inner-right .decoration-1 {
	right: -120px;
    top: 170px;
    transform: rotate(90deg);
}
.clear-panel .inner-block .inner-right .decoration-2 {
    left: 250px;
    bottom: -80px;
}
/* contents--head-design
___________________________*/
.contents--head-design {
	margin: 0;
	padding-top: 200px;
	padding-bottom: 200px;
	position: relative;
	z-index: 1;
}
.head-image {
	width: 100%;
	max-width: 1700px;
	margin-inline: auto;
	background: var(--cts-gray4);
	position: relative;
	z-index: 2;
}
.head-image .head-picture {
	position: relative;
	z-index: 3;
}
.head-image .decoration-1 {
	color: var(--cts-red1);
	font-size: clamp(5px, -1.652rem + 3.36vw, 10px);
	font-family: var(--cts-font);
	font-weight: 300;
	line-height: 1.4;
	position: absolute;
    top: 143%;
    right: 0;
	transform: translate(-50%,-50%);
	z-index: 2;
}
.head-design .inner-flex {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 75px;
	padding-top: 70px;
}
.head-design .inner-left,
.head-design .inner-right {
	width: 100%;
}
.head-design .inner-left {
	max-width: 165px;
}
.head-design .inner-right .read-txt {
	margin-top: 0;
}
.tag-list {
	display: flex;
	flex-wrap: wrap;
	gap: 15px 10px;
	margin-top: 15px;
}
.tag-list li {
	display: inline-block;
}
.tag-list li a {
	color: var(--cts-white1);
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	background: var(--cts-red2);
	border: 2px solid var(--cts-red2);
	border-radius: 9999px;
	padding: 4px 15px;
	display: block;
	transition: border-radius 0.1s ease-in-out, background-color 0.4s, color 0.4s;
}
.tag-list li a:hover {
	color: var(--cts-red2);
	background: var(--cts-white1);
}
/* contents--led-color
___________________________*/
.contents--led-color {
	margin: 0;
	padding-top: 200px;
	padding-bottom: 200px;
}
.led-color .inner-flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.led-color .inner-left,
.led-color .inner-right {
	width: 100%;
}
.led-color .inner-left {
	max-width: 670px;
	background: var(--cts-gray5);
	position: relative;
}
.led-color .inner-left .decoration-1 {
    color: var(--cts-red1);
    font-size: clamp(5px, -1.652rem + 3.36vw, 10px);
    font-family: var(--cts-font);
    font-weight: 300;
    line-height: 1.4;
    position: absolute;
	top: 30px;
    left: 30px;
    z-index: 1;
}
.led-picture {
	width: 100%;
    position: relative; /* 修正 */
    display: inline-block;
}
.led-picture .led-on,
.led-picture .led-off {
    width: 100%;
    transition: opacity 0.3s ease-in-out;
}
.led-picture .led-on {
	position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    opacity: 1; /* 修正 */
}

.led-picture .led-off {
	position: relative;
    z-index: 1;
}
.led-color .inner-right {
	text-align: center;
}
.led-color .read-txt {
	text-align: center;
}
.switch {
	position: relative;
	display: inline-block;
	width: 83px;
	height: 30px;
	margin-top: 15px;
}
.switch input {
	opacity: 0;
	width: 0;
	height: 0;
}
.toggle-track {
	position: absolute;
	cursor: pointer;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: red;
	border-radius: 25px;
	transition: 0.3s;
}
.toggle-track::before {
	position: absolute;
	content: "";
	height: 22px;
	width: 22px;
	left: 4px;
	bottom: 3.5px;
	background-color: white;
	border-radius: 50%;
	transition: 0.3s;
}
input:checked + .toggle-track {
	background-color: var(--cts-gray2);
}
input:checked + .toggle-track::before {
	transform: translateX(52px);
}
/* rigid-card-support
____________________*/
.contents--rigid-card-support {
	margin: 0;
	padding-top: 200px;
	padding-bottom: 200px;
}
.rigid-card-support .inner-flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.rigid-card-support .inner-left,
.rigid-card-support .inner-right {
	width: 100%;
}
.rigid-card-support .inner-left {
	max-width: 375px;
}
.target-model-wrap {
	width: 100%;
	max-width: 250px;
	background: var(--cts-red1);
	margin-top: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 22px 10px;
    box-sizing: border-box;
}
.target-model {
	color: var(--cts-white1);
	display: flex;
	align-items: center;
	justify-content: center;
}
.target-model dt {
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1;
	padding-right: 15px;
}
.target-model dd {
	font-size: 15px;
	font-weight: 700;
	line-height: 1.6;
	letter-spacing: 0.05em;
	border-left: 1px solid var(--cts-white1);
	padding-left: 15px;
}
.rigid-card-support .inner-right {
	max-width: 790px;
	display: flex;
	justify-content: center;
	position: relative;
	z-index: 2;
}
.rigid-card-support .inner-right::after {
	content: "";
	width: 100%;
	height: 44%;
	background: var(--cts-gray5);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: -1;
}
.rigid-card-support .inner-right .rigid-card-support-picture {
	width: 77.3%;
    display: block;
}
/* photo-gallery
____________________*/
.contents--photo-gallery {
	padding: 0;
	margin: 0;
}
.photo-gallery {
	max-width: inherit;
	padding-inline: inherit;
}
.photo-gallery .inner-flex {
	display: flex;
}
.photo-gallery .inner-left {
	width: 33.6%;
	background: var(--cts-red1);
	display: flex;
	justify-content: flex-end;
	align-items: center;
	padding: 70px;
	box-sizing: border-box;
}
.photo-gallery .ttl-h2 {
	color: var(--cts-white1);
}
.photo-gallery .inner-right {
	width: 66.4%;
	background: var(--cts-gray5);
    padding: 50px 0; /* 左右の余白を設定 */
	overflow: hidden;
	box-sizing: border-box;
	position: relative;
	z-index: 1;
}
.photo-gallery .inner-right .decoration-1,
.photo-gallery .inner-right .decoration-2 {
	color: var(--cts-red1);
    font-size: clamp(5px, -1.652rem + 3.36vw, 10px);
    font-family: var(--cts-font);
    font-weight: 300;
    line-height: 1.4;
	position: absolute;
	display: block;
}
.photo-gallery .inner-right .decoration-1 {
    top: 85px;
    left: 130px;
    z-index: 2;
}
.photo-gallery .inner-right .decoration-2 {
    right: 100px;
    bottom: 100px;
    transform: rotate(90deg);
}
.slide-gallery {
    width: 100%; /* スライダーの幅 */
}
.slide-gallery img {
    display: block;
    margin: 0 auto; /* 画像を中央寄せ */
    max-width: 480px;
    height: auto;
}
/* Prev / Nextボタン */
.slick-prev, .slick-next {
    width: 50px;
    height: 50px;
    border: 1px solid red;
    border-radius: 50%;
    background: none;
    position: absolute;
    top: 53%;
    transform: translateY(-50%);
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
	transition: border-radius 0.1s ease-in-out, background-color 0.4s, color 0.4s;
}
/* 左矢印 */
.slick-prev {
    left: 80px; /* 左の位置調整 */
}
/* 右矢印 */
.slick-next {
    right: 80px; /* 右の位置調整 */
}
.slick-prev::before, .slick-next::before {
    content: "";
    width: 9px;
	height: 9px;
	border-right: 1.8px solid var(--cts-red1);
	border-bottom: 1.8px solid var(--cts-red1);
    display: block;
}
.slick-prev::before {
    transform: rotate(135deg);
	margin-left: 5px;
}
.slick-next::before {
    transform: rotate(-45deg);
	margin-right: 5px;
}
.slick-prev:hover,
.slick-next:hover {
	background: var(--cts-red1);
}
.slick-prev:hover::before,
.slick-next:hover::before {
	border-color: var(--cts-white1);
}
/* dotのスタイル */
.slick-dots {
    text-align: center;
    position: absolute;
    bottom: -30px; /* スライダーの下に配置 */
    width: 100%;
}
.slick-dots li {
	width: 10px;
	height: 10px;
    display: inline-block;
    margin: 0 5px;
}
.slick-dots li button {
	width: 10px;
	height: 10px;
}
/* ●（黒丸）のデザイン */
.slick-dots li button::before {
    content: '●'; /* ● を使用 */
	width: 10px;
	height: 10px;
    font-size: 8px;
	line-height: 1;
    color: var(--cts-gray2); /* 非アクティブ時 */
    opacity: 1; /* デフォルトでは透明度をなくす */
}

/* アクティブ（選択中）のdot */
.slick-dots li.slick-active button::before {
    color: var(--cts-red2); /* アクティブ時は黒色 */
    font-size: 8px; /* 少し大きくする */
}
/* contents--benefit
____________________*/
.contents--benefit {
	margin: 0;
	padding-top: 200px;
	padding-bottom: 200px;
	position: relative;
}
.benefit .inner-flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.benefit .inner-flex:nth-of-type(2) {
	flex-direction: row-reverse;
	padding-top: 100px;
	margin-top: 100px;
	border-top: 1px solid var(--cts-gray6);
}
.benefit .inner-left {
	width: 45.75%;
}
.benefit .inner-right {
	width: 54.25%;
}
.benefit-number {
	color: var(--cts-red2);
	font-size: 18px;
	font-family: var(--cts-font);
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1;
}
.benefit .ttl-h2 {
	margin-top: 30px;
}
.benefit .inner-flex .benefit-picture {
	display: block;
}
.benefit .inner-flex:nth-of-type(2) .benefit-picture {
	width: 63.2%;
	margin-inline: auto;
}
.gatagata img {
    transition: transform 0.1s ease-in-out;
}
/* contents--lineup
____________________*/
.contents--lineup {
	color: var(--cts-white1);
	background: var(--cts-black3);
	margin: 0;
	padding-top: 200px;
	padding-bottom: 100px;
	position: relative;
	z-index: 1;
}
.lineup {
	max-width: 1445px;
	padding-right: 75px;
	position: relative;
	z-index: 2;
}

.lineup .ttl-h2 {
	width: 29.3%;
	margin: 0 auto 0;
}
.lineup .inner-flex {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 60px;
}
/* .lineup .inner-left {
	width: calc(62.5% - 60px);	
}
.lineup .inner-right {
    width: 37.5%;
} */
.lineup .inner-left {
	width: 100%;
}
.lineup-list {
	max-width: 1180px;
    margin: 0 auto;
	margin-top: 20px;
	display: flex;
	flex-wrap: wrap;
	gap: 0 32px;
}
.lineup-list-item {
	width: calc((100% - 32px) / 2);
	border-bottom: 1px solid var(--cts-white1);
}
.lineup-list-item:last-child {
	border: none;
}
.lineup-list-item > a {
	padding: 30px 22px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 15px;
	box-sizing: border-box;
	transition: ease-in-out, background-color 0.4s, color 0.4s;
}
.txt-box {
	width: 100%;
	max-width: 480px;
}
.model-name {
	font-size: clamp(13px, 0.652rem + 0.36vw, 17px);
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.03em;
}
.spec-data {
	font-size: clamp(13px, 0.652rem + 0.36vw, 15px);
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 0.03em;
	margin-top: 10px;
}
.price-box {
	flex: none;
	width: 125px;
}
.model-price {
	font-size: clamp(16px, 0.652rem + 0.36vw, 17px);
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.03em;
}
.link-box {
	width: 50px;
	flex: none;
}
.link-btn {
	width: 50px;
	height: 50px;
	border: 1px solid var(--cts-white1);
	border-radius: 50%;
	box-sizing: border-box;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	z-index: 1;
	transition: ease-in-out, background-color 0.4s, color 0.4s;
}
.link-btn::before {
    content: "";
    width: 9px;
	height: 9px;
	border-right: 1.8px solid var(--cts-white1);
	border-bottom: 1.8px solid var(--cts-white1);
    display: block;
	transform: rotate(-45deg);
	transition: ease-in-out, background-color 0.4s, color 0.4s;
}
.lineup-list-item > a:hover .link-btn {
	background: var(--cts-white1);
}
.lineup-list-item > a:hover .link-btn::before {
	border-color: var(--cts-black3);
}
.lineup .inner-flex2 {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 50px;
	border-top: 1px solid var(--cts-white1);
	margin-top: 110px;
	padding-top: 110px;
}
.lineup .inner-left2 {
	width: 22.5%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.lineup .inner-right2 {
	width: calc(77.5% - 50px);
}
.lineup .logo-cr {
	width: 82%;
	display: block;
}
.lineup .read-txt {
	font-size: clamp(14px, 0.652rem + 0.36vw, 16px);
	font-weight: 700;
	line-height: 2.2;
	letter-spacing: 0.03em;
}
.lineup .read-txt:nth-of-type(n+2) {
	margin-top: 2em;
}
.sns-wrap {
	margin-top: 175px;
}
.link-logo {
	width: 279px;
	display: block;
	margin-inline: auto;
	transition: .5s all;
}
.link-logo:hover {
	transform: scale(1.05, 1.05);
}
.sns-list {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 25px;
	margin-top: 50px;
}
.sns-list-item {
	transition: .5s all;
}
.sns-list-item:nth-of-type(1) {
	width: 25.5px;
}
.sns-list-item:nth-of-type(2) {
	width: 30.5px;
}
.sns-list-item:nth-of-type(3) {
	width: 28.5px;
}
.sns-list-item:hover {
	transform: scale(1.2, 1.2);
}
.contents--lineup .slide-decoration2 {
	margin-top: 145px;
}
.movie-contents-wrap {
	width: 100%;
	max-width: 960px;
	margin: 200px auto 0;
}
.movie-contents-wrap .ttl-h3 {
    color: var(--cts-white1);
    font-size: 25px;
    font-family: var(--cts-font);
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 1;
	text-align: center;
}
.movie-wrap {
	width: 100%;
	aspect-ratio: 16 / 9;
	margin-top: 50px;
}
.movie-wrap iframe {
	width: 100%;
	height: 100%;
}
.movie-name {
	font-size: 15px;
	font-weight: 500;
	text-align: center;
	line-height: 1.6;
	letter-spacing: 0.05em;
	margin-top: 30px;
}
.bnr-wrap {
	width: 100%;
	max-width: 900px;
	margin: 50px auto 0;
}
.bnr-note {
	font-size: clamp(11px, -0.652rem + 2.36vw, 12px);
	font-weight: 500;
	line-height: 1.7;
	letter-spacing: 0.03em;
	text-align: center;
	margin-top: 20px;
}
@media (max-width: 768px) {/*375-768*/
/* コンテンツ
____________________*/
.pc {
	display: none !important;
}
.sp {
	display: block !important;
}
.note-txt {
	margin-top: 30px;
}
.txt-appeal {
	text-align: center;
}
.slide-decoration.slick-initialized .slick-slide,
.slide-decoration2.slick-initialized .slick-slide {
	width: fit-content !important;
	margin-right: 80px;
}
/* sub_nav
____________________*/
.sub_nav_wrap {
	width: 100%;
	/* background: var(--cts-color1); */
}
.sub_nav_wrap.fixed {
	top: 0;
	left: 0;
	width: 100%;
	padding: 0;
}
.sub_nav__inner {
	position: relative;
	z-index: 10;
	height: 50px;
}
.sub_nav__inner::after {
	content: '';
    position: absolute;
	z-index: -1;
	top: 35px;
	left: 50%;
    transform: translate(-50%,-50%);
	width: 120px;
	height: 64px;
}
.sub_nav_logo {
	display: none;
}
.header__menu {
	position: absolute;
	z-index: 5;
	top: 6px;
	width: 100%;
	height: calc(100vh - 40px);
	background: #fff;
	opacity: 0;
	visibility: hidden;
	transition: opacity .2s ease;
}
.sub_nav__inner.active .header__menu {
	opacity: 1;
	visibility: visible;
	background: var(--cts-gray1);
}
.submenu__list {
	flex-direction: column;
	gap: 16px;
	padding: 26px 33px;
	box-sizing: border-box;
}
.submenu__list .menu__item.current {
	background: var(--cts-color4);
}
.submenu__list .menu__item a {
	color: var(--cts-red2);
	background: none;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	min-height: 56px;
	border: 1px solid var(--cts-red2);
	border-radius: 9999px;
	padding: inherit;
	position: relative;
}
.submenu__list .menu__item.current a {
	color: var(--cts-white1);
	background: var(--cts-red2);
}
.submenu__list .menu__item a::before {
	content: none;
}
.submenu__list .menu__item a::after {
	content: "";
    width: 9px;
    height: 9px;
    border-right: 1.8px solid var(--cts-red1);
    border-bottom: 1.8px solid var(--cts-red1);
    display: block;
	position: absolute;
	top: 50%;
	right: 25px;
	transform: translate(0,-50%) rotate(45deg);
	z-index: 3;
}
.submenu__list .menu__item.current a::after {
	content: "";
	width: 9px;
	height: 9px;
	background: none;
	border-right: 1.8px solid var(--cts-white1);
	border-bottom: 1.8px solid var(--cts-white1);
	display: block;
	position: absolute;
	top: 50%;
	bottom: inherit;
	left: inherit;
	right: 25px;
	transform: translate(0, -50%) rotate(45deg);
	transform-origin: inherit;
	z-index: 3;
}
.submenu__list .menu__item a.white {
	color: var(--cts-red2);
}
.submenu__list .menu__item.current a.white {
	color: var(--cts-white1);
}
.submenu__list .menu__item.current a.white::after {
	background: none;
}
.submenu-btn {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 56px;
	padding: 9px;
	cursor: pointer;
	box-sizing: border-box;
	background: var(--cts-gray1);
	border-bottom: 1px solid var(--cts-black1);
}
.active .submenu-btn {
	border-bottom-color: var(--cts-red2);
}
.submenu-btn span:nth-child(-n+3) {
	position: absolute;
	display: block;
	width: 33px;
	height: 2px;
	background: var(--cts-black1);
}
.submenu-btn span:nth-child(1) {
	top: 14px;
	transition: all .2s ease;
}
.sub_nav__inner.active .submenu-btn span:nth-child(1) {
	background: var(--cts-red2);
	top: 24px;
	transform: rotate(30deg);
}
.submenu-btn span:nth-child(2) {
	top: 22px;
	transition: opacity .2s ease;
}
.sub_nav__inner.active .submenu-btn span:nth-child(2) {
	opacity: 0;
}
.submenu-btn span:nth-child(3) {
	top: 30px;
	transition: all .2s ease;
}
.sub_nav__inner.active .submenu-btn span:nth-child(3) {
	background: var(--cts-red2);
	top: 24px;
	transform: rotate(-30deg);
}
.submenu-btn span:nth-child(4) {
	font-size: 10px;
	color: var(--cts-red2);
	display: block;
	margin: 25px 0 0;
}
.submenu-btn span:nth-child(4):after {
	color: var(--cts-black1);
	content: "MENU";
	font-size: 11px;
	font-family: var(--cts-font2);
	letter-spacing: 1.5px;
}
.sub_nav__inner.active .submenu-btn span:nth-child(4):after {
	content: "CLOSE";
	color: var(--cts-color1);
	letter-spacing: normal;
}
/* mv
____________________*/
.contents--mv {
}
/* contents--special-case
__________________________*/
.contents--special-case {
	padding-top: 100px;
	padding-bottom: 100px;
}
.contents--special-case .top-slide_wrap {
	top: 50px;
}
.contents--special-case .special-case-slide2 {
	margin-top: 15px;
}
.special-case-slide li, .special-case-slide2 li {
	margin-right: 24px;
}
.special-case .inner-flex {
	flex-direction: column-reverse;
}
.special-case .inner-left {
	margin-top: 50px;
	max-width: inherit;
}
.special-case .inner-right {
	max-width: inherit;
}
.cr-txt-logo {
	width: 279px;
}
.special-case .inner-right .decoration-1 {
	top: 27px;
	right: 3px;
}
.special-case .inner-right .decoration-2 {
	left: 15px;
    bottom: 17px;
}
.special-case .ttl-h2 {
	margin-top: 15px;
}
/* contents--clear-panel
___________________________*/
.contents--clear-panel {
	padding-top: 70px;
	padding-bottom: 70px;
}
.clear-panel .inner-block {
	display: flex;
	flex-direction: column-reverse;
}
.clear-panel .inner-block .inner-left {
	width: 100%;
	position: relative;
	bottom: inherit;
	margin-top: 60px;
}
.clear-panel .inner-block .inner-right {
	margin-left: 0;
	margin-right: 4%;
	box-sizing: border-box;
}
.clear-panel .inner-block .inner-right::after {
	top: 15%;
    left: 22%;
}
.clear-panel .inner-block .inner-right .decoration-1 {
	right: -15%;
	top: 25%;
}
.clear-panel .inner-block .inner-right .decoration-2 {
    left: 26%;
    bottom: -9%;
}
/* head-design
________________*/
.contents--head-design {
	padding-top: 70px;
	padding-bottom: 70px;
}
.head-design .inner-flex {
	padding-top: 35px;
	flex-direction: column;
	gap: 35px;
}
/* led-color
________________*/
.contents--led-color {
	padding-top: 70px;
	padding-bottom: 70px;
}
.led-color .inner-flex {
	align-items: flex-start;
	flex-direction: column;
}
.led-color .inner-left {
	margin-top: 50px;
}
.led-color .ttl-h2 {
	text-align: left;
}
.led-color .read-txt {
	text-align: left;
}
.led-color .inner-left .decoration-1 {
	top: 15px;
    left: 15px;
}
/* rigid-card-support
_______________________*/
.contents--rigid-card-support {
	padding-top: 70px;
	padding-bottom: 70px;
}
.rigid-card-support {
	padding-inline: 0;
}
.rigid-card-support .inner-flex {
	flex-direction: column-reverse;
}
.rigid-card-support .inner-left {
	max-width: inherit;
	margin-top: 40px;
	padding-inline: var(--cts-gutter);
}
.target-model-wrap {
	margin-inline: auto;
}
/* contents--photo-gallery
_____________________________*/
.photo-gallery .inner-flex {
	flex-direction: column;
}
.photo-gallery .inner-left {
	width: 100%;
	padding: 30px var(--cts-gutter);
	justify-content: flex-start;
}
.photo-gallery .inner-right {
	width: 100%;
	padding: 25px 0;
}
.photo-gallery .inner-right .decoration-1 {
	top: 20px;
    left: 50px;
}
.photo-gallery .inner-right .decoration-2 {
	right: 40px;
    bottom: 60px;
}
.slide-gallery.slick-initialized{
	width: 100%;
	margin-inline: auto;
}
.slide-gallery.slick-initialized .slick-slide {
	margin-inline: 60px;
}
.slick-prev, .slick-next {
	width: 47px;
	height: 47px;
}
.slick-prev {
	left: 30px;
}
.slick-next {
	right: 30px;
}
.slick-dots li {
	width: 6px;
    height: 6px;
}
.slick-dots li button {
    width: 6px;
    height: 6px;
}
.slick-dots li button::before {
	width: 6px;
	height: 6px;
	font-size: 6px;
}
.slick-dots li.slick-active button::before {
	font-size: 6px;
}
.slide-gallery img {
	max-width: 200px;
}
/* contents--benefit
_____________________________*/
.contents--benefit {
    padding-top: 70px;
    padding-bottom: 70px;
}
.benefit .inner-flex {
	flex-direction: column-reverse;
}
.benefit .inner-left {
	width: 100%;
	margin-top: 40px;
}
.benefit .inner-right {
	width: 100%;
}
.benefit .inner-flex:nth-of-type(2) {
	flex-direction: column-reverse;
	padding-top: 40px;
    margin-top: 40px;
}
.benefit .inner-flex:nth-of-type(2) .benefit-picture {
    width: 73.3%;
}
/* contents--lineup
_____________________________*/
.contents--lineup {
    padding-top: 80px;
	padding-bottom: 50px;
}
.lineup {
	padding-inline: var(--cts-gutter);
}
.lineup .ttl-h2 {
	width: 90.8%;
}
.lineup .inner-flex {
	flex-direction: column-reverse;
	gap: 30px;
}
.lineup .inner-left {
	width: 100%;
}
.lineup .inner-right {
	width: 100%;
}
.lineup-picture {
	width: 74.3%;
	margin-inline: auto;
	display: block;
}
.lineup-list {
	flex-direction: column;
	margin-top: 10px;
}
.lineup-list-item {
	width: 100%;
}
.lineup-list-item > a {
	flex-wrap: wrap;
	gap: 5px;
	padding: 25px 0;
}
.txt-box {
	width: 100%;
	max-width: 480px;
}
.model-name {
	letter-spacing: 0;
}
.link-box {
	width: 34px;
}
.link-btn {
	width: 34px;
	height: 34px;
}
.link-btn::before {
    width: 5px;
    height: 5px;
}
.lineup .inner-flex2 {
	flex-direction: column;
	margin-top: 60px;
	padding-top: 70px;
}
.lineup .inner-left2 {
	width: 100%;
}
.lineup .inner-right2 {
	width: 100%;
}
.lineup .logo-cr {
	width: 33%;
}
.lineup .read-txt {
	letter-spacing: 0.01em;
}
.link-logo {
	width: 245px;
}
.sns-wrap {
	margin-top: 70px;
}
.contents--lineup .slide-decoration2 {
	margin-top: 70px;
}
.movie-name {
	margin-top: 15px;
}
.movie-contents-wrap {
	margin-top: 80px;
}
.movie-wrap {
	margin-top: 30px;
}
}
@media (max-width: 479px) {
	.contents--mv .pc {
		display: none;
	}
	.contents--mv .sp {
		display: block;
	}
}

/*　アニメーション
____________________*/
.fade-in { opacity: 0; transition: opacity 0.6s ease, transform 0.6s ease; }
.fade-in-center { transform: translate(0, 0); }      /* 位置変更なし */
.fade-in-top { transform: translateY(-70px); }      /* 上から */
.fade-in-bottom { transform: translateY(70px); }    /* 下から */
.fade-in-right { transform: translateX(70px); }     /* 右から */
.fade-in-left { transform: translateX(-70px); }     /* 左から */
.fade-in-zoom-in { transform: scale(0.2); }          /* ズームイン：最初は小さく表示される */
.fade-in-zoom-out { transform: scale(1.6); }         /* ズームアウト：最初は大きく表示される */
.fade-in.is-visible { opacity: 1; transform: translate(0, 0); } /* 元の位置に戻る */