@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Damion&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+1p&display=swap');




div#CONTENTS_BLOCK.full_width { /* コンテンツサイズフルサイズ */
	margin-bottom: 0;
	max-width: none;
	padding: 0;
}
/* CSSファイル名をリネーム後に、独自の内容を追加 */

body.fixed {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	overflow-y: scroll;
}
#page,
main {
	overflow: visible;
}

.m_plus {
	font-family: "M PLUS 1p", sans-serif;
}

@media all and (min-width: 768px) {
	.holdings-header,
	div#PAGEWIDE {
		min-width: 1280px;
	}
}

@media screen and (max-width: 767px) {
	#page,
	main {
		overflow: clip;
	}
	div#CONTENTS {
		min-width: inherit !important;
	}
}

/* fade */
.fadeZoom {
    opacity: 0;
    animation-duration: .7s;
    animation-timing-function: cubic-bezier(0.42, 0.00, 0.58, 1.00);
	animation-fill-mode: forwards;
	backface-visibility: hidden;
	will-change: transform;
}
.fadeZoom.visible {
    animation-name: bounceIn02;
}
@keyframes bounceIn02 {
    0% {
        opacity: 0;
        transform: scale3d(0,0,0);
    }
    50% {
        opacity: 1;
        transform: scale3d(1.05,1.05,1.05);
    }
    100% {
        opacity: 1;
        transform: scale3d(1,1,1);
    }
}
/* CONTENTS */
div#CONTENTS {
	min-width: 1280px;
	color: #000;
	font-family: "Zen Kaku Gothic New", sans-serif;
}
div#CONTENTS a {
	color: #000;
	transition: all ease 0.3s;
	text-decoration: none !important;
}
.main_box {
	margin: 0 auto;
	padding: 0 20px;
	box-sizing: border-box;
	max-width: 1168px;
}
.damion {
	font-family: "Damion", cursive;
}
.roboto {
	font-family: "Roboto", sans-serif;
}
.notoSans {
	font-family: "Noto Sans JP", sans-serif;
}
#CONTENTS .fv {
	overflow: hidden;
	position: relative;
	z-index: 1;
	border-bottom: 2px solid #000;
}
#CONTENTS .fv .fv_ttl {
	position: absolute;
	bottom: -3px;
	left: calc(50% - 256px);
	z-index: 5;
	transform: scale(.9) rotate(3deg);
	width: fit-content;
}
#CONTENTS .fv .fv_ttl .txt_span {
	display: flex;
	align-items: flex-start;
}
#CONTENTS .fv .fv_ttl .txt_span2 {
	margin: 0 0 0 40px;
}
#CONTENTS .fv .fv_ttl .fade_span,
#CONTENTS .fv .foo_bg {
    opacity: 0;
    animation-duration: .5s;
    animation-timing-function: cubic-bezier(0.42, 0.00, 0.58, 1.00);
	animation-fill-mode: forwards;
	backface-visibility: hidden;
	will-change: transform;
}
#CONTENTS .fv .foo_bg {
    animation-duration: .8s;
}
#CONTENTS .fv .fv_ttl .fade_span.visible,
#CONTENTS .fv .foo_bg.visible {
    animation-name: bounceIn;
}
@keyframes bounceIn {
    0% {
        opacity: 0;
        transform: scale3d(0,0,0);
    }
    50% {
        opacity: 1;
        transform: scale3d(1.1,1.1,1.1);
    }
    100% {
        opacity: 1;
        transform: scale3d(1,1,1);
    }
}
#CONTENTS .fv .fv_ttl .fv_img01 {
	width: 96px;
	margin-right: -15px;
}
#CONTENTS .fv .fv_ttl .fv_img02 {
	margin-top: 5px;
	width: 68px;
}
#CONTENTS .fv .fv_ttl .fv_img03 {
	width: 101px;
	margin: -64px -10px 0 0px;
}
#CONTENTS .fv .fv_ttl .fv_img04 {
	width: 96px;
	margin-top: -35px;
}
#CONTENTS .fv .fv_ttl .fv_img05 {
	width: 96px;
}
#CONTENTS .fv .fv_ttl .fv_img06 {
	width: 96px;
	margin: 9px 0 0 -7px;
}
#CONTENTS .fv .fv_ttl .fv_img07 {
	width: 96px;
	margin: -22px 6px 0 10px;
}
#CONTENTS .fv .fv_ttl .fv_img08 {
	width: 101px;
	margin: -108px 0 0 0;
}
#CONTENTS .fv .fv_ttl .fv_img09 {
	width: 86px;
	margin: -107px 0 0 3px;
}
#CONTENTS .fv .fv_ttl .fv_img10 {
	width: 77px;
	margin: -173px 0 0 20px;
}
#CONTENTS .fv .fv_ttl .fv_img11 {
	width: 48px;
	margin: -167px 0 0 23px;
}
/* #CONTENTS .fv:after {
	width: 50%;  
	height: 100%;
	background-color: #7A8BA5;
	position: absolute;  
	top: 0;
	right: 0;  
	z-index: -1;
	content: ""; 
} */
#CONTENTS .fv .main_box .sub_box {
	max-width: 530px;
	margin: 0 auto;
	padding-left: 18px;
}
#CONTENTS .fv .main_box {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	max-width: inherit;
	padding: 0;
}
#CONTENTS .fv .main_box .left_box,
#CONTENTS .fv .main_box .right_box {
	width: 50%;
	box-sizing: border-box;
	position: relative;
	padding: 101px 20px 63px;
	z-index: 1;
}
#CONTENTS .fv .main_box .text_img {
	position: absolute;
	width: 473px;
	top: -150px;
	right: -151px;
}
#CONTENTS .fv .main_box .left_box {
	position: relative;
	background-color: #F16B1C;
}
#CONTENTS .fv .main_box .text_img1 {
	position: absolute;
	z-index: 10;
	top: 46px;
	left: 156px;
	width: 186px;
}
#CONTENTS .fv .foo_ul {
	width: 512px;
	margin: 0 0 25px 0;
}
#CONTENTS .fv .foo_ul:not(.slick-initialized) li:not(:first-child) {
	display: none;
}
#CONTENTS .fv .foo_ul li {
	aspect-ratio: 1024 / 1044;
	position: relative;
	vertical-align: top;
}
#CONTENTS .fv .foo_ul li img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
#CONTENTS .fv .foo_box {
	position: relative;
	z-index: 1;
}
#CONTENTS .fv .foo_bg {
	width: 512px;
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
}
#CONTENTS .fv .left_box .foo_bg {
	left: 28px;
}
#CONTENTS .fv .main_box .right_box {
	margin-right: -150px;
	border-left: 2px solid #000;
	background-color: #7A8BA5;
}
#CONTENTS .fv .main_box .right_box .text_img1 {
	width: 336px;
	left: 50px;
}
#CONTENTS .fv .text_img2 {
	width: 135px;
	margin-top: 10px;
	display: block;
}
#CONTENTS .fv .right_box .sub_box {
	padding-left: 0;
	padding-right: 35px;
}
#CONTENTS .fv .left_box .sub {
	margin-left: 53px;
}
#CONTENTS .fv .right_box .sub .text_img2 {
	margin: 0 0 8px;
}
#CONTENTS .fv p {
	font-size: 12px;
	font-weight: 400;
	line-height: 140%; 
}
#CONTENTS .btm_img {
	z-index: 1;
	position: absolute;
	width: 100px;
	bottom: 62px;
	right: 40px;
}
#CONTENTS .concept {
	padding: 85px 0 96px;
	text-align: center;
}
#CONTENTS .concept .photo01 {
	position: absolute;
	width: 215px;
	top: -20px;
	left: 66px;
}
#CONTENTS .concept .photo02 {
	position: absolute;
	width: 154px;
	bottom: 0;
	right: 53px;
}
#CONTENTS .concept .main_box {
	max-width: 1300px;
	position: relative;
}
#CONTENTS .concept .text_img {
	margin: 0 auto 10px;
	width: 430px;
}
#CONTENTS .concept h2 {
	margin-bottom: 37px;
	font-size: 60px;
	font-weight: 900;
	line-height: 140%; 
	letter-spacing: 6px;
}
#CONTENTS .concept h2 span {
	color: #F16B1C;
	line-height: 140%;
	letter-spacing: 6px;
	-webkit-text-stroke-width: 1px;
	-webkit-text-stroke-color: #000;
}
#CONTENTS .concept p {
	font-size: 20px;
	font-weight: 500;
	line-height: 200%; 
	letter-spacing: 2px;
}
#CONTENTS .scroll {
	padding: 19px 5px;
	border-top: 2px solid #000;
	border-bottom: 2px solid #000;
}
#CONTENTS .scroll p {
	display: flex;
	font-size: 25px;
	font-weight: 700;
	line-height: 100%;
	gap: 0 30px;
}
#CONTENTS .scroll p .sub_span {
	margin-left: 15px;
}
#CONTENTS .product{
	padding: 79px 0 95px;
	background-color: #F16B1C;
	border-bottom: 2px solid #000;
}
#CONTENTS .com_ttl {
	margin: 0 auto 16px;
	width: fit-content;
}
#CONTENTS .com_ttl .title {
	width: fit-content;
	margin: 0 auto;
	padding: 10px 18px;
	box-sizing: border-box;
	text-align: center;
	font-size: 22px;
	font-weight: 700;
	line-height: 120%; 
	letter-spacing: 1.1px;
	border-radius: 60px;
	border: 2px solid #000;
	background: #FFF;
	position: relative;
}
#CONTENTS .com_ttl .title:after {
	width: 16px;  
	aspect-ratio: 32 / 27;
	background: url(../img/arrow01.png) no-repeat;
	background-size: 100% auto;
	position: absolute;  
	top: 100%;
	margin-top: -1px;
	left: 50%;
	transform: translateX(-50%) translateZ(0);
	content: ""; 
	z-index: 10;
}
#CONTENTS .com_ttl h2 {
	color: #FFF;
	text-align: center;
	-webkit-text-stroke-width: 3px;
	-webkit-text-stroke-color: #000;
	font-size: 100px;
	font-weight: 400;
	line-height: 100%; 
	text-transform: capitalize;
	paint-order: stroke;
	position: relative;
	z-index: 1;
	padding-bottom: 38px;
}
#CONTENTS .com_ttl h2 .line {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
	width: 358px;
}
#CONTENTS .product .inner_box {
	display: flex;
	flex-wrap: wrap;
	gap: 0 34px;
	margin-bottom: 29px;
}
#CONTENTS .product .inner_box .left_box {
	width: 560px;
	margin-top: -4px;
}
#CONTENTS .product .inner_box .left_box p {
	font-size: 12px;
	font-weight: 400;
	line-height: 140%;
}
#CONTENTS .fadeText span:not(:first-child) {
	display: none;
}
#CONTENTS .product .inner_box .left_box .sub {
	margin-bottom: -2px;
	display: flex;
	align-items: flex-start;
	width: fit-content;
}
#CONTENTS .product .inner_box .left_box .sub .text_img {
	width: 184px;
	margin: -19px 0 0 -8px;
}
#CONTENTS .product .inner_box .left_box .sub .left {
	flex: 1;
}
#CONTENTS .product .inner_box .left_box .sub .left p {
	font-size: 26px;
	font-weight: 700;
	line-height: 143%; 
}
#CONTENTS .product .inner_box .left_box .sub .left .ttl {
	margin-bottom: 10px;
	padding-bottom: 8px;
	width: fit-content;
	font-size: 58px;
	font-weight: 700;
	line-height: 105%;
	min-width: 339px;
	border-bottom: 5px solid #000;
}
/* #CONTENTS .product .inner_box .left_box .sub .left .ttl .ico {
	margin: 0 -8px;
} */
#CONTENTS .product .inner_box .left_box .sub .left .ttl small {
	font-size: 48px;
}
#CONTENTS .product .inner_box .right_box {
	flex: 1;
	margin-left: -30px;
}
#CONTENTS .product .product_list {
	display: flex;
	flex-wrap: wrap;
	gap: 39px 32px;
}
#CONTENTS .product .product_list li {
	width: calc((100% - 32px) / 2);
}
#CONTENTS .product .product_list p {
	font-size: 15px;
	font-weight: 400;
	line-height: 160%; 
}
#CONTENTS .product .product_list .ttl {
	margin-bottom: 15px;
	display: flex;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.5; 
	margin-top: -34px;
	min-height: 60px;
	align-items: flex-end;
}
#CONTENTS .product .product_list .ttl .num {
	flex-shrink: 0;
	width: 30px;
	aspect-ratio: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	background-color: #fff;
	color: #F16B1C;
	font-size: 21px;
	font-weight: 700;
	border-radius: 100%;
	margin: -3px 9px 0 0;
	line-height: 1;
	padding-bottom: 1px;
	box-sizing: border-box; 
	border: 1px solid #000;
}
#CONTENTS .product .product_list .photo {
	aspect-ratio: 266 / 164;
	position: relative;
	margin-bottom: 10px;
}
#CONTENTS .product .product_list .photo:after {
	border: 2px solid #000;
	border-radius: 15px;
	position: absolute;  
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;  
	content: ""; 
}
#CONTENTS .product .product_list .photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	border-radius: 15px;
}
#CONTENTS .product .foo_list {
	margin: 0 26px 0 -26px;
}
#CONTENTS .product .foo_list li {
	vertical-align: top;
}
#CONTENTS .product .foo_list .sub_box {
	position: relative;
}
#CONTENTS .product .foo_list .sub_box .num {
	display: block;
	width: 226px;
	position: absolute;
	left: calc(50% - 52px);
	top: 19px;
}
#CONTENTS .product .slider-box {
	position: relative;
	margin-bottom: 26px;
}
#CONTENTS .product .slider-box .com_ul li.on {
	outline-color: #fff !important;
}
#CONTENTS .product .slider-box .com_ul li.on::after {
	top: -8px;
	bottom: -8px;
	left: -8px;
	right: -8px;
	border-color: #fff !important;
}
#CONTENTS .dot_box {
	position: absolute;
	bottom: 11px;
	left: 6px;
	display: flex;
	gap: 0 20px;
	z-index: 1;
	align-items: center;
}
#CONTENTS .dot_box p {
	margin: 0 !important;
	font-size: 17px !important;
	font-weight: 700 !important;
	line-height: 100% !important;
}
#CONTENTS .com_ul {
	display: flex;
	gap: 17px;
}
#CONTENTS .com_ul li {
	cursor: pointer;
	border: 2px solid #fff;
	border-radius: 100%;
	width: 36px;
	aspect-ratio: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: #FFF;
	font-size: 21px;
	font-weight: 500;
	line-height: 100%; 
	box-sizing: border-box;
	position: relative;
	background-color: #F9550B;
}
#CONTENTS .com_ul li.on:after {
	border: 1px solid #fff;
	position: absolute;  
	top: -4px;
	bottom: -4px;
	left: -4px;
	right: -4px;  
	border-radius: 100%;
	content: ""; 
}
#CONTENTS .com_ul .green.on,
#CONTENTS .com_ul .green {
	outline-color: #356216;
	background-color: #356216;
}
#CONTENTS .com_ul .green.on::after {
	border-color: #356216;
}
#CONTENTS .com_ul .orange.on,
#CONTENTS .com_ul .orange {
	outline-color: #E25610;
	outline-color: #E25610;
}
#CONTENTS .com_ul .orange.on::after {
	border-color: #E25610;
}
#CONTENTS .com_ul .pink.on,
#CONTENTS .com_ul .pink {
	outline-color: #F7C9D6;
	background-color: #F7C9D6;
}
#CONTENTS .com_ul .pink.on::after {
	border-color: #F7C9D6;
}
#CONTENTS .com_ul .grey.on,
#CONTENTS .com_ul .grey {
	outline-color: #595656;
	background-color: #595656;
}
#CONTENTS .com_ul .grey.on::after {
	border-color: #595656;
}
#CONTENTS .com_ul .blue.on,
#CONTENTS .com_ul .blue {
	outline-color: #2380B8;
	background-color: #2380B8;
}
#CONTENTS .com_ul .blue.on::after {
	border-color: #2380B8;
}
#CONTENTS .com_ul .black.on,
#CONTENTS .com_ul .black {
	outline-color: #000;
	background-color: #000;
}
#CONTENTS .com_ul .black.on::after {
	border-color: #000;
}
#CONTENTS .com_ul .green2.on,
#CONTENTS .com_ul .green2 {
	outline-color: #798264;
	background-color: #798264;
}
#CONTENTS .com_ul .green2.on::after {
	border-color: #798264;
}
#CONTENTS .com_ul .light_orange.on,
#CONTENTS .com_ul .light_orange {
	outline-color: #E39E69;
	background-color: #E39E69;
}
#CONTENTS .com_ul .light_orange.on::after {
	border-color: #E39E69;
}
#CONTENTS .com_btn_list {
	display: flex;
	flex-wrap: wrap;
	gap: 36px;
	justify-content: center;
}
#CONTENTS .com_btn_list li {
	width: 286px;
}
#CONTENTS .com_btn_list a {
	position: relative;
	min-height: 52px;
	padding-right: 27px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	border-radius: 60px;
	border: 2px solid #000;
	background: #fff url(../img/icon01.png) no-repeat right 20px center;
	background-size: 14px auto;
	color: #F16B1C !important;
	text-align: center;
	font-size: 17px;
	font-weight: 900;
	line-height: 150%; 
	box-sizing: border-box;
	box-shadow: 7px 7px 0 #000;
}
#CONTENTS .com_btn_list a::before {
	width: 100%;  
	height: 100%;
	border-radius: 60px;
	background-color: rgba(255, 255, 255, 0.3);
	position: absolute;  
	top: 0;
	left: 0;
	content: ""; 
	opacity: 0;
	transition: all ease 0.3s;
}
#CONTENTS .com_btn_list .item a {
	background-image: url(../img/icon02.png);
	background-size: 20px auto;
}
#CONTENTS .com_btn_list.color a {
	color: #7A8BA5 !important;
	background-image: url(../img/icon03.png);
}
#CONTENTS .com_btn_list.color .item a {
	background-image: url(../img/icon04.png);
}
#CONTENTS .com_btn_list .item02 a {
	background-image: url(../img/icon05.png);
	background-size: 22px auto;
}
#CONTENTS .com_btn_list .item03 a {
	color: #000 !important;
	background-image: url(../img/icon06.png);
	background-size: 20px auto;
}
#CONTENTS .com_btn_list a.no {
	color: #A0A0A0 !important;
	pointer-events: none;
	background-image: url(../img/icon09.png);
}
#CONTENTS .com_btn_list .item04 a {
	color: #7A8BA5 !important;
	background-image: url(../img/icon07.png);
	background-size: 22px auto;
}
#CONTENTS .com_btn_list .orange a {
	color: #fff !important;
	background-color: #F16B1C;
	background-image: url(../img/icon08.png);
}
#CONTENTS .com_btn_list .glaucous a {
	color: #fff !important;
	background-color: #7A8BA5;
	background-image: url(../img/icon08.png);
}
#CONTENTS .product2 {
	padding: 82px 0 95px;
	background-color: #7A8BA5;
	margin-bottom: -1px;
}
#CONTENTS .product2 .inner_box .left_box .sub .left .ttl small {
	display: block;
	margin-top: -7px;
}
#CONTENTS .product2 .inner_box .left_box .sub {
	align-items: center;
}
#CONTENTS .product2 .inner_box .left_box .sub .text_img {
	margin-top: 34px;
}
#CONTENTS .product2 .foo_list {
	width: 512px;
	margin-inline: -2px 10px;
}
#CONTENTS .product2 .dot_box {
	bottom: 37px;
}
#CONTENTS .product2 .slider-box {
	margin-bottom: -5px;
}
#CONTENTS .product2 .foo_list .sub_box .num {
	width: 142px;
	top: 121px;
	left: calc(50% - 67px);
}
#CONTENTS .product2 .product_list .ttl .num {
	color: #7A8BA5;
}
#CONTENTS .history {
	padding: 39px 40px;
	background: #FDDB55;
}
#CONTENTS .history .bg01 {
	position: absolute;
	top: 20px;
	left: -110px;
	width: 70px;
}
#CONTENTS .history .bg02 {
	position: absolute;
	top: 185px;
	right: -159px;
	width: 283px;
}
#CONTENTS .history .bg03 {
	position: absolute;
	top: 615px;
	left: -143px;
	width: 140px;
}
#CONTENTS .history .bg04 {
	position: absolute;
	bottom: 278px;
	left: 348px;
	width: 60px;
}
#CONTENTS .history .bg05 {
	position: absolute;
	bottom: -23px;
	left: 525px;
	width: 107px;
}
#CONTENTS .history .content {
	position: relative;
	margin: 0 auto;
	max-width: 874px;
}
#CONTENTS .history .history_box {
	margin-top: -4px;
	position: relative;
	z-index: 1;
}
#CONTENTS .history .history_list {
	padding-top: 7px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	position: relative;
	z-index: 1;
}
#CONTENTS .history .history_list li {
	position: relative;
	border-radius: 20px;
}
#CONTENTS .history .history_list li .sub_box {
	width: 340px;
	padding: 37px 10px 40px;
	border-radius: 20px;
	border: 2px solid #000;
	box-sizing: border-box;
	min-height: 271px;
	position: relative;
	background: #fff;
}
#CONTENTS .history .history_list li .sub_box .date {
	width: 165px;
	position: absolute;
	top: -63px;
	left: -55px;
}
#CONTENTS .history .history_list li .photo01 {
	width: 219px;
	position: absolute;
	top: 16px;
	right: -157px;
}
#CONTENTS .history .history_list li .photo02 {
	width: 229px;
	position: absolute;
	top: 71px;
	right: -344px;
}
#CONTENTS .history .history_list li .photo03 {
	width: 322px;
	position: absolute;
	top: -137px;
	right: -155px;
}
#CONTENTS .history .history_list li .photo04 {
	width: 158px;
	position: absolute;
	top: -171px;
	right: -8px;
}
#CONTENTS .history .history_list li .sub_box:after {
	border-radius: 20px;
	border: 2px solid #000;
	background: #F16B1C;
	position: absolute;  
	top: 8px;
	bottom: -12px;
	left: 8px;
	right: -12px;  
	content: ""; 
	z-index: -1;
}
#CONTENTS .history .history_list .item02 {
	margin: 323px 23px 11px 0;
}
#CONTENTS .history .history_list li p {
	text-align: center;
	font-size: 16px;
	font-weight: 400;
	line-height: 170%; 
	letter-spacing: 1.6px;
}
#CONTENTS .history .history_list li h3 {
	position: relative;
	z-index: 1;
	margin-bottom: 15px;
	text-align: center;
	font-size: 24px;
	font-weight: 700;
	line-height: 140%; 
	letter-spacing: 2.4px;
}
#CONTENTS .history .roadLine {
	position: absolute;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	z-index: -1;
}
#CONTENTS .history .roadLine svg .cls-1 {
	fill: none;
    stroke: #fff;
    stroke-width: 104;
}
#CONTENTS .history .white_box {
	padding: 78px 0 107px;
	background-color: #fff;
	border-radius: 50px;
	border: 2px solid #000;
}
#CONTENTS .history .history_list .item02 .sub_box .date {
	width: 158px;
}
#CONTENTS .history .history_list .item02 .sub_box::after {
	background-color: #7A8BA5;
}
#CONTENTS .history .history_list li .movie_box {
	position: absolute;
	width: 346px;
	top: calc(100% - 22px);
	left: calc(100% - 194px);
}
#CONTENTS .history .history_list li .movie_box .movie {
	aspect-ratio: 692 / 390;
	margin-bottom: 10px;
	background-color: #fff;
	border-radius: 20px;
}
#CONTENTS .history .history_list li .movie_box .movie a {
	display: block;
	border-radius: 20px;
	overflow: hidden;
	position: relative;
}
#CONTENTS .history .history_list li .movie_box .movie img {
	width: 100%;
	display: block;
}
#CONTENTS .history .history_list li .movie_box .movie a:after {
	border: 2px solid #000;
	border-radius: 20px;
	position: absolute;  
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;  
	content: ""; 
}
#CONTENTS .history .history_list li .movie_box .movie iframe {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	border-radius: 16px;
}
#CONTENTS .history .history_list li .movie_box p {
	font-size: 15px;
	font-weight: 500;
	line-height: 140%; 
	padding-left: 10px;
	text-align: left;
	letter-spacing: 0;
	border-left: 7px solid #F16B1C;
}
#CONTENTS .function {
	border-bottom: 2px solid #000;
	padding: 141px 0 59px;
	position: relative;
	z-index: 1;
	background-color: #F16B1C;
}
#CONTENTS .function .com_ttl_inner {
	position: absolute;
	top: 80px;
	left: 50%;
	transform: translateX(-50%);
}
#CONTENTS .function .com_ttl_inner .com_ttl {
	padding-left: 1px;
}
#CONTENTS .function::before {
	background-color: #000;
	width: 2px;
	position: absolute;  
	top: 0;
	left: 50%;
	bottom: 0;
	content: ""; 
}
#CONTENTS .function::after {
	width: 50%;  
	height: 100%;
	background-color: #7A8BA5;
	position: absolute;  
	top: 0;
	right: 0;
	z-index: -1;
	content: ""; 
}
#CONTENTS .function_box {
	margin-bottom: 30px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#CONTENTS .function_box .limited_box {
	margin-bottom: 30px;
}
#CONTENTS .function_box p {
	font-size: 14px;
	font-weight: 500;
	line-height: 160%; 
}
#CONTENTS .function_box .function_list .txt {
	font-size: 14px;
	font-weight: 500;
	line-height: 1.5;
}
#CONTENTS .function_box .function_list .txt small {
	font-size: 13px;
}
#CONTENTS .function_box p:last-child {
	margin-bottom: 0 !important;
}
#CONTENTS .function_box p .num {
	font-size: 23px;
	font-weight: 600;
	vertical-align: -2px;
	margin: 0 8px 0 5px;
}
#CONTENTS .function_box .left_box {
	width: 520px;
}
#CONTENTS .function_box .right_box {
	width: 520px;
}
#CONTENTS .function_box .ttl_box {
	margin-bottom: 21px;
	width: fit-content;
	min-width: 300px;
	font-weight: 700;
	line-height: 150%; 
}
#CONTENTS .function_box .ttl_box .sub_txt {
	position: relative;
	margin-bottom: 8px;
	padding-bottom: 8px;
	font-size: 36px;
	font-weight: 700;
	line-height: 100%; 
	border-bottom: 3px solid #000;
}
#CONTENTS .function_box .ttl_box .txt_span2 {
	font-size: 17px;
	font-weight: 700;
}
#CONTENTS .function_box .ttl_box .txt_span2 .sub_span {
	font-size: 25px;
	font-weight: 600;
	line-height: 100%;
	margin-left: 21px;
	vertical-align: -3px;
}
#CONTENTS .function_box .function_js {
	margin-bottom: 19px;
	position: relative;
	padding-top: 44px;
	background: url(../img/bg02.png) no-repeat center top;
	background-size: 100% auto;
}
#CONTENTS .function_box .sub_function_js {
	padding: 13px 85px 70px;
	background: url(../img/bg03.png) no-repeat center bottom;
	background-size: 100% auto;
}
#CONTENTS .function_box .sub_function_js .next,
#CONTENTS .function_box .sub_function_js .prev {
	position: absolute;
	z-index: 5;
	top: 50%;
	cursor: pointer;
	transform: translateY(-50%);
	width: 13px;
}
#CONTENTS .function_box .sub_function_js .prev {
	left: 30px;
}
#CONTENTS .function_box .sub_function_js .next {
	right: 30px;
}
#CONTENTS .function_box .sub_function_js .dot_box {
	left: 50%;
	bottom: 25px;
	transform: translateX(-50%);
}
#CONTENTS .function_box .sub_function_js .com_ul {
	gap: 0 7px;
}
#CONTENTS .function_box .sub_function_js .com_ul li {
	font-size: 18px;
	/* outline: 1px solid #487D33; */
	outline-offset: 1px;
	width: 34px;
}
#CONTENTS .function_box .function_js .ttl {
	font-size: 17px;
	font-weight: 700;
	line-height: 160%;
	position: absolute;
	top: 13px;
	left: 30px;
}
#CONTENTS .function_box .function_js .foo_list li {
	aspect-ratio: 704 / 445;
	position: relative;
	vertical-align: top;
}
#CONTENTS .function_box .function_js .foo_list li img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
#CONTENTS .function_box .text_img {
	margin-bottom: 49px;
}
#CONTENTS .function_box .function_list {
	margin-bottom: 73px;
	display: flex;
	flex-wrap: wrap;
	gap: 30px 27px;
}
#CONTENTS .function_box .function_list li {
	width: calc((100% - (27px * 2 + 1px)) / 3);
}
#CONTENTS .function_box .function_list .photo {
	position: relative;
	margin-bottom: 10px;
}
#CONTENTS .function_box .function_list .photo img {
	width: 100%;
	border-radius: 10px;
	display: block;
	height: 100%;
	object-fit: cover;
}
#CONTENTS .function_box .function_list .photo:after {
	border: 2px solid #000;
	position: absolute;  
	border-radius: 10px;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;  
	content: ""; 
}
#CONTENTS .function_box .function_list p {
	margin-bottom: 5px;
	font-size: 17px;
	font-weight: 700;
	line-height: 150%; 
}
#CONTENTS .function_box .function_list .item02 .photo img {
	border-radius: 10px 25px 10px 25px;
}
#CONTENTS .function_box .function_list .item02 .photo::after {
	border-radius: 10px 25px 10px 25px;
}
#CONTENTS .function_box .function_list .item03 .photo img {
	border-radius: 50px;
}
#CONTENTS .function_box .function_list .item03 .photo::after {
	border-radius: 50px;
}
#CONTENTS .function_box .function_list .item {
	width: calc(100% - 27px - (calc((100% - (27px * 2 + 1px)) / 3)));
}
#CONTENTS .function_box .function_list .item .photo img {
	border-radius: 30px 10px 30px 10px;
}
#CONTENTS .function_box .function_list .item .photo::after {
	border-radius: 30px 10px 30px 10px;
}
#CONTENTS .function_box .installation_ttl {
	margin-bottom: 28px;
	font-size: 24px;
	font-weight: 700;
	padding-bottom: 5px;
	line-height: 150%; 
	width: fit-content;
	border-bottom: 3px solid currentColor;
}
#CONTENTS .function_box .installation_box {
	margin-bottom: 50px;
	padding: 23px 25px 14px;
	border-radius: 15px;
	border: 2px solid #000;
	background-color: #fff;
}
#CONTENTS .function_box .installation_box .photo {
	max-width: 332px;
	margin: 0 auto 17px;
	aspect-ratio: 664 / 420;
	position: relative;
}
#CONTENTS .function_box .installation_box .photo img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
#CONTENTS .function_box .installation_box p {
	padding-top: 7px;
	text-align: center;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.6;
	border-top: 2px dashed #000;
}
#CONTENTS .function_box .function_list2 {
	margin-bottom: 30px;
}
#CONTENTS .function_box .textList li {
	font-size: 12px;
	font-weight: 400;
	line-height: 140%; 
}
#CONTENTS .function_box .right_box .limited_box {
	width: fit-content;
	margin-left: auto;
}
#CONTENTS .function_box .note {
	font-size: 15px;
	font-weight: 500;
	line-height: 1.4;
	text-indent: -1em;
	padding: 2.2rem 0 0 1em;
}
#CONTENTS .range {
	padding: 171px 0 65px;
	background-color: #FFE8B3 !important;
	margin-bottom: -1px;
}
#CONTENTS .range::after {
	background-color: #C9D8DF;
}
#CONTENTS .range .function_box .right_box .limited_box {
	margin-inline: 0;
}
#CONTENTS .range .function_box .ttl_box {
	width: auto;
}
#CONTENTS .range .function_box .function_js {
	background-image: url(../img/bg04.png);
}
#CONTENTS .function_box .ttl_box .text_img {
	position: absolute;
	bottom: 7px;
	margin: 0 !important;
	right: 0;
	width: 203px;
}
#CONTENTS .range .function_box .text_img {
	margin-bottom: 60px;
}
#CONTENTS .range .function_box .text_img2 {
	width: 77px;
}
#CONTENTS .range .function_box .right_box .limited_box {
	width: auto;
}
#CONTENTS .lifestyle {
	padding: 80px 0 50px;
	border-bottom: 1px solid #000;
	background: #FDDB55 url(../img/lifestyle_bg.png) repeat left top;
	background-size: 60px auto; 
}
#CONTENTS .lifestyle .com_ttl {
	margin-bottom: -70px;
	position: relative;
    z-index: 2;
}
#CONTENTS .lifestyle_js_box {
	position: relative;
	margin-top: -4px;
}
#CONTENTS .lifestyle_js_box .next,
#CONTENTS .lifestyle_js_box .prev {
	position: absolute;
	top: calc(50% + min(40px,2.778vw));
	cursor: pointer;
	width: min(63px,4.375vw);
	z-index: 1;
	transform: translateY(-50%);
}
#CONTENTS .lifestyle_js_box .prev {
	left: calc(50% - min(483px,33.542vw));
}
#CONTENTS .lifestyle_js_box .next {
	right: calc(50% - min(483px,33.542vw));
}
#CONTENTS .lifestyle_list li {
	padding-block: 80px;
	width: min(804px,55.84vw) !important;
	margin: 0 min(50px,3.472vw);
	vertical-align: top;
	transition: .3s;
}
#CONTENTS .lifestyle_list .prev-slide li {
	transform: translateY(50px);
}
#CONTENTS .lifestyle_list .prev-prev-slide li {
	transform: translateY(100px);
}
#CONTENTS .lifestyle_list .next-slide li {
	transform: translateY(-50px);
}
#CONTENTS .lifestyle_list .next-next-slide li {
	transform: translateY(-100px);
}
#CONTENTS .lifestyle_js_box .num_list {
	position: absolute;
	bottom: 58px;
	right: calc(50% - min(350px,24.3vw));
}
#CONTENTS .lifestyle_js_box .num_list li {
	font-size: 35px;
	font-style: italic;
	font-weight: 700;
	letter-spacing: 3.5px;
}
#CONTENTS .choose-your-style {
	padding: 77px 0 66px;
	border-bottom: 2px solid #000;
	z-index: 1;
	position: relative;
	background-color: #F16B1C;
}
#CONTENTS .choose-your-style:after {
	width: 50%;  
	height: 100%;
	background-color: #7A8BA5;
	position: absolute;  
	top: 0;
	right: 0; 
	z-index: -1; 
	content: ""; 
}
#CONTENTS .choose-your-style::before {
	width: 2px;  
	height: 100%;
	background-color: #000;
	position: absolute;  
	top: 0;
	right: 50%;  
	content: ""; 
}
#CONTENTS .choose-your-style .com_ttl h2 .line {
	width: 683px;
}
#CONTENTS .choose_box {
	margin: -12px 0 29px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#CONTENTS .choose_box .ttl {
	width: fit-content;
	position: relative;
}
#CONTENTS .choose_box .ttl:after {
	width: 35px;  
	aspect-ratio: 70 / 86;
	background: url(../img/choose_img03.png) no-repeat;
	background-size: 100% auto;
	position: absolute;  
	top: calc(100% - 42px);
  	left: calc(100% - 66px);
	content: ""; 
}
#CONTENTS .choose_box .ttl::before {
	width: 59px;  
	aspect-ratio: 118 / 90;
	background: url(../img/choose_img01.png) no-repeat;
	background-size: 100% auto;
	position: absolute;  
	bottom: calc(100% + 32px);
	left: 148px;
	content: ""; 
}
#CONTENTS .choose_box .ttl .sub_span {
	padding: 20px;
	min-height: 72px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-size: 20px;
	font-weight: 700;
	line-height: 150%;
	letter-spacing: 2px;
	min-width: 350px;
	border-radius: 71px;
	box-sizing: border-box;
	border: 2px solid #000;
	background: #FFF;
}
#CONTENTS .choose_box .ttl .jp {
	margin: 0 0 -13px 115px;
	position: relative;
	z-index: 1;
}
#CONTENTS .choose_box .ttl .jp:after {
	width: 214px;  
	height: 16px;
	background-color: #fff;
	position: absolute;  
	bottom: -3px;
	left: 9px;
	content: ""; 
}
#CONTENTS .choose_sub_box {
	width: 50%;
}
#CONTENTS .choose_box .ttl .en:not(.icon) {
	font-size: 35px;
	font-style: normal;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0;
	padding: 15px;
}
#CONTENTS .choose_sub_box2 {
	text-align: right;
}
#CONTENTS .choose_sub_box2 .ttl .jp {
	margin-inline: 0 115px;
}
#CONTENTS .choose_sub_box2 .ttl .jp::after {
	left: auto;
	right: 9px;
}	
#CONTENTS .choose_sub_box2 .ttl {
	margin-left: auto;
}
#CONTENTS .choose_sub_box2 .ttl::after {
	left: auto;
	right: calc(100% - 66px);
	background-image: url(../img/choose_img04.png);
}
#CONTENTS .choose_sub_box2 .ttl::before {
	width: 59px;  
	aspect-ratio: 118 / 90;
	background: url(../img/choose_img02.png) no-repeat;
	background-size: 100% auto;
	position: absolute;  
	bottom: calc(100% + 25px);
	right: 145px;
	left: auto;
	content: ""; 
}
#CONTENTS .choose-your-style .white_box {
	margin-bottom: 62px;
	border-radius: 20px;
	padding: 40px 49px 58px;
	position: relative;
	z-index: 1;
	border: 2px solid #000;
	background: #FFF;	
}
#CONTENTS .choose_list li {
	padding: 20px 0;
	border-bottom: 2px dashed #000;
}
#CONTENTS .choose_list dl {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
#CONTENTS .choose_list dt {
	width: 170px;
	text-align: center;
	font-size: 15px;
	font-weight: 700;
	line-height: 140%; 
	letter-spacing: 0.75px;
	order: 1;
}
#CONTENTS .choose_list dd {
	margin-top: -2px;
	width: calc((100% - 170px) / 2);
	color: #F16B1C;
	text-align: right;
	font-size: 18px;
	font-weight: 700;
	line-height: 140%; 
	letter-spacing: 0.9px;
}
#CONTENTS .choose_list .color {
	color: #7A8BA5;
	order: 2;
	text-align: left;
}
#CONTENTS .choose_list dd .txt_span {
	display: block;
	font-size: 15px;
	font-weight: 500;
	line-height: 160%; 
	margin-top: 5px;
	letter-spacing: 0;
}
#CONTENTS .choose_list dd .txt_span .ico {
	font-size: 7px;
	vertical-align: 5px;
}
#CONTENTS .choose_list dd .txt_span small {
	display: block;
	font-size: 12px;
	font-weight: 500;
	line-height: 160%;
}
#CONTENTS .choose_list {
	margin-bottom: 18px;
}
#CONTENTS .choose-your-style .white_box p {
	font-size: 12px;
	font-weight: 400;
	line-height: 140%; 
}
#CONTENTS .link_sec {
	padding: 80px 0 102px;
}
#CONTENTS .link_sec .com_btn_list {
	margin-top: -14px;
}
#CONTENTS .link_sec p {
	max-width: 930px;
	margin: 0 auto;
	font-size: 15px;
	text-align: right;
	line-height: 1.4;
	padding: 3rem 4rem 0 0;
	font-weight: 500;
	letter-spacing: 0;
}
#CONTENTS .link_sec p span {
	display: inline-block;
	text-indent: -1em;
	padding-left: 1em;
}
#CONTENTS .history {
	background: #FDDB55;
	border-bottom: 1px solid #000;
}
.mfp-fade.mfp-bg {
	opacity: 0;
	-webkit-transition: all 0.15s ease-out; 
	-moz-transition: all 0.15s ease-out; 
	transition: all 0.15s ease-out;
}
.mfp-fade.mfp-bg.mfp-ready {
	opacity: 0.8;
}
.mfp-fade.mfp-bg.mfp-removing {
	opacity: 0;
}

.mfp-fade.mfp-wrap .mfp-content {
	opacity: 0;
	-webkit-transition: all 0.15s ease-out; 
	-moz-transition: all 0.15s ease-out; 
	transition: all 0.15s ease-out;
}
.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
	opacity: 1;
}
.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
	opacity: 0;
}
@media (hover: hover) {
	#CONTENTS .history .history_list li .movie_box .movie a:hover {
		opacity: 0.7;
	}
	#CONTENTS .com_btn_list a:hover {
		transform: translate(7px,7px);
		box-shadow: none;
	}
	#CONTENTS .com_btn_list a:hover::before {
		opacity: 1;
	}
	#CONTENTS .function_box .sub_function_js .next:hover,
	#CONTENTS .function_box .sub_function_js .prev:hover {
		opacity: 0.7;
	}
	#CONTENTS .lifestyle_js_box .next:hover,
	#CONTENTS .lifestyle_js_box .prev:hover {
		opacity: 0.7;
	}
}

@media all and (min-width: 768px) {
	.holdings-footer {
		margin-bottom: 50px;
	}
	.sp {
		display: none !important;
	}
	#CONTENTS .g_navi {
		min-height: 50px;
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		display: flex;
		justify-content: center;
		align-items: center;
		gap: 20px 30px;
		border-top: 2px solid #000;
		background: #fff;
		transition: all cubic-bezier(0.55, 0.085, 0.675, 0.53) 0.4s;
		box-sizing: border-box;
		transform: translateY(50px);
		z-index: 100;
		font-family: "Roboto", sans-serif;
		font-size: 15px;
		font-weight: 700;
		text-transform: capitalize;
	}
	#CONTENTS .g_navi.show {
		transform: translateY(0);
	}
	#CONTENTS .g_navi li a:hover,
	#CONTENTS .g_navi li.on a {
		color: #F16B1C;
	}
}

@media screen and (max-width: 767px) {
	.pc {
		display: none !important;
	}
	html.touch-device body, 
	html.touch-device #page {
		min-width: auto;
	}
	#CONTENTS .com_ttl {
		width: auto;
	}
	#CONTENTS .fv .main_box {
		display: block;
	}
	#CONTENTS .fv .main_box .onlySpSwiper,
	#CONTENTS .fv .main_box .onlySpSwiper .swiper-wrapper,
	#CONTENTS .fv .main_box .onlySpSwiper .swiper-slide {
		height: calc(100dvh - 127px);
	}
	#CONTENTS .fv .main_box .left_box {
		border-right: none;
		border-bottom: 2px solid #000;
	}
	#CONTENTS .fv .main_box .left_box,
	#CONTENTS .fv .main_box .right_box {
		padding: 15px 20px;
		display: flex;
		align-items: center;
		justify-content: center;
		width: auto;
		height: 100%;
		/* min-height: 500px; */
		box-sizing: border-box;
	}
	#CONTENTS .fv .main_box .right_box {
		margin: 0;
		border-left: none;
	}
	#CONTENTS .fv .main_box .text_img {
		width: min(38.2vw,18.2vh,148px);
		right: 0;
		top: 0;
	}
	#CONTENTS .fv .main_box .text_img1 {
		width: min(35.6vw,18vh,140px);
		top: min(5.85vw,3vh,23px);
		left: 22px;
	}
	#CONTENTS .fv .main_box .sub_box {
		margin: 0 -4px 0 -19px;
		max-width: inherit;
		padding: 0;
		width: calc(100% + 23px);
	}
	#CONTENTS .fv .foo_ul {
		text-align: center;
		width: auto;
		margin-bottom: 7px;
		margin-left: 12px;
	}
	#CONTENTS .fv .sub {
		position: absolute;
		bottom: 15px;
		left: 0;
		margin-left: 24px;
	}
	#CONTENTS .fv .sub {
		max-width: 230px;
		margin-left: 22px !important;
	}
	#CONTENTS .fv .text_img2{
		margin: 16px 0 0;
		width: min(31vw,16vh,122px);
	}
	#CONTENTS .fv p {
		font-size: min(2.3vw,1.5vh,9px);
		font-weight: 400;
		line-height: 140%;
	}
	#CONTENTS .fv .main_box .left_box {
		border-right: none;
		border-bottom: none;
	}
	#CONTENTS .fv .main_box .right_box .text_img1 {
		width: min(62.8vw,31vh,247px);
		left: 24px;
	}
	#CONTENTS .fv .right_box .sub {
		margin-left: 24px;
	}
	#CONTENTS .fv .foo_ul li {
		max-width: min(92.1vw,47vh,362px);
		max-height: min(45vh);
		aspect-ratio: 362 / 370;
	}
	#CONTENTS .fv .foo_bg {
		width: auto;
		right: 0;
		left: 12px !important;
	}
	#CONTENTS .fv .foo_bg img {
		margin: 0 auto;
		max-width: min(92.1vw,47vh,362px);
		max-height: min(45vh);
		aspect-ratio: 362 / 370;
		display: block;
	}
	#CONTENTS .fv .fv_ttl {
		left: calc(50% + 5px);
		bottom: min(20.4vw,10vh,80px);
		position: absolute;
		z-index: 100;
		transform: translateX(-50%) rotate(3deg);
		pointer-events: none;
	}
	#CONTENTS .fv .fv_ttl .txt_span2 {
		margin-left: 20px;
	}
	#CONTENTS .fv .fv_ttl .fv_img01 {
		width: 52px;
		margin: -4px -5px 0 0;
	}
	#CONTENTS .fv .fv_ttl .fv_img02 {
		margin-top: -4px;
		width: 36px;
	}
	#CONTENTS .fv .fv_ttl .fv_img03 {
		width: 55px;
		margin: -42px -8px 0 0px;
	}
	#CONTENTS .fv .fv_ttl .fv_img04 {
		margin-top: -26px;
		width: 52px;
	}
	#CONTENTS .fv .fv_ttl .fv_img05 {
		width: 50px;
	}
	#CONTENTS .fv .fv_ttl .fv_img06 {
		width: 53px;
		margin: 4px 0 0 -7px;
	}
	#CONTENTS .fv .fv_ttl .fv_img07 {
		margin: -14px 2px 0 5px;
		width: 55px;
	}
	#CONTENTS .fv .fv_ttl .fv_img08 {
		margin: -62px 0 0 0;
		width: 55px;
	}
	#CONTENTS .fv .fv_ttl .fv_img09 {
		margin: -62px 0 0 3px;
		width: 45px;
	}
	#CONTENTS .fv .fv_ttl .fv_img10 {
		margin: -98px 0 0 10px;
		width: 41px;
	}
	#CONTENTS .fv .fv_ttl .fv_img11 {
		margin: -96px 0 0 10px;
		width: 26px;
	}
	#CONTENTS .btm_img {
		width: min(20.9vw,10vh,82px);
		bottom: 28px;
		right: 24px;
		position: absolute;
		pointer-events: none;
		z-index: 100;
	}
	#CONTENTS .fv .right_box .sub .text_img2 {
		margin-bottom: 11px;
	}
	#CONTENTS .concept {
		padding: 47px 0 22px;
	}
	#CONTENTS .concept .text_img {
		width: auto;
		margin: 0 auto 7px;
		max-width: 330px;
	}
	#CONTENTS .concept .photo01 {
		position: static;
		top: -68px;
		left: 14px;
		width: 145px;
	}
	#CONTENTS .concept h2 {
		margin-bottom: 12px;
		font-size: min(7.9vw,31px);
		font-size: 31px;
		font-weight: 900;
		line-height: 140%; 
		letter-spacing: 1.2px;
	}
	#CONTENTS .concept h2 span {
		font-size: min(7.9vw,31px);
		font-size: 31px;
		font-weight: 900;
		line-height: 140%;
		letter-spacing: 1.2px;
	}
	#CONTENTS .concept p {
		margin-inline: -15px;
		font-size: 19.5px;
		font-weight: 500;
		line-height: 200%;
		letter-spacing: -0.02em;
	}
	#CONTENTS .concept .photo02 {
		width: 90px;
		bottom: -88px;
		right: 6px;
		position: static;
	}
	#CONTENTS .concept .spBox {
		padding-top: 5px;
		display: flex;
		justify-content: center;
	}
	#CONTENTS .scroll p {
		font-size: 15px;
		font-weight: 700;
		line-height: 100%; 
		gap: 0 13px;
	}
	#CONTENTS .scroll {
		padding: 18px 5px 16px;
	}
	#CONTENTS .scroll p .sub_span {
		margin-left: 5px;
	}
	#CONTENTS .product {
		padding: 53px 0;
	}
	#CONTENTS .product2 {
		margin-bottom: -2px;
		padding-top: 47px;
	}
	#CONTENTS .com_ttl .title {
		margin-bottom: 7px;
		padding: 9px 18px;
		font-size: 16px;
		font-weight: 700;
		line-height: 120%;
		letter-spacing: 0.8px;
	}
	#CONTENTS .com_ttl h2 {
		padding-bottom: 7px;
		-webkit-text-stroke-width: 2px;
		font-size: min(13.1vw,51.304px);
		font-weight: 400;
		line-height: 100%; 
		text-transform: capitalize;
	}
	#CONTENTS .com_ttl h2 .line {
		width: 152px;
	}
	#CONTENTS .com_ttl h2 .line img {
		display: block;
	}
	#CONTENTS .product .inner_box {
		margin-bottom: 27px;
		display: block;
		padding-top: 28px;
	}
	#CONTENTS .product .inner_box .left_box {
		width: auto;
		margin: 0 0 8px;
	}
	#CONTENTS .product .inner_box .right_box {
		margin: 0 8px;
	}
	#CONTENTS .product .inner_box .sp_box {
		display: flex;
		flex-wrap: wrap;
	}
	#CONTENTS .product .inner_box .sp_box > div {
		margin-bottom: 0;
		width: 100%;
	}
	#CONTENTS .product .inner_box .left_box .sub {
		order: 2;
		margin: -56px 10px 20px 18px;
		display: block;
	}
	#CONTENTS .product .inner_box .left_box .sub .text_img {
		display: none;
	}
	#CONTENTS .product .inner_box .left_box .sub .left .ttl {
		position: relative;
		z-index: 1;
		font-size: min(6.9vw,27px);
		font-size: 27px;
		font-weight: 700;
		line-height: 105%; 
		min-width: inherit;
		width: fit-content;
		border-width: 2px;
	}
	#CONTENTS .product .inner_box .left_box .sub .left .ttl small {
		display: inline-block;
		font-size: min(6.4vw,27px);
		font-size: 27px;
	}
	#CONTENTS .product .inner_box .left_box .sub .left p {
		font-size: min(3.6vw,14px);
		font-size: 14px;
		font-weight: 700;
		line-height: 143%; 
	}
	#CONTENTS .product2 .inner_box .left_box .sub .left .ttl {
		font-size: 26px;
	}
	#CONTENTS .product .foo_list {
		margin: 0 -9.4% 26px -4%;
	}
	#CONTENTS .product .foo_list .sub_box .num {
		width: 41.4%;
		top: 4.2%;
		left: calc(50% - 9.2%);
	}
	#CONTENTS .product .slider-box .com_ul li.on::after {
		top: -6px;
		bottom: -6px;
		left: -6px;
		right: -6px;
	}
	#CONTENTS .dot_box {
		justify-content: center;
		left: auto;
		right: min(6.4vw,25px);
		bottom: -17px;
		gap: 0 13px;
	}
	#CONTENTS .dot_box p {
		order: -1;
		font-size: 14px !important;
		font-weight: 700 !important;
	}
	#CONTENTS .com_ul li {
		width: 26px;
		border-width: 1px;
		font-size: 15.609px;
		font-weight: 500;
		line-height: 100%; 
	}
	#CONTENTS .com_ul li.on::after {
		transform: translateZ(0);
		/* outline-offset: 4px; */
		top: -3px;
		bottom: -3px;
		left: -3px;
		right: -3px;
	}
	#CONTENTS .com_ul {
		gap: 14px;
	}
	#CONTENTS .product .product_list {
		flex-direction: column;
		margin-bottom: 25px;
		gap: 25px 32px;
	}
	#CONTENTS .product .product_list li {
		width: 100%;
	}
	#CONTENTS .product .product_list p {
		font-size: 16px;
		font-weight: 400;
		line-height: 160%; 
	}
	#CONTENTS .product .product_list .ttl {
		min-height: inherit;
		align-items: flex-start;
		margin: 0 0 14px;
		font-size: 18px;
		font-weight: 700;
		line-height: 115%; 
	}
	#CONTENTS .product .product_list .ttl .num {
		margin: -5px 11px 0 0;
		padding-bottom: 0;
	}
	#CONTENTS .product .product_list .photo {
		aspect-ratio: 313 / 162;
		margin-bottom: 13px;
	}
	#CONTENTS .product .text {
		font-size: 12px;
		font-weight: 400;
		line-height: 140%; 
	}
	#CONTENTS .com_btn_list {
		gap: 10px 0;
		flex-direction: column;
	}
	#CONTENTS .com_btn_list li {
		width: 100%;
		margin: 0 auto;
		max-width: min(80vw,314px);
	}
	#CONTENTS .com_btn_list a {
		min-height: 50px;
		padding-right: 0;
		font-size: min(4.1vw,16px);
		font-weight: 900;
		box-shadow: 3px 3px 0 #000;
	}
	#CONTENTS .product .slider-box .text_img {
		z-index: 1;
		position: absolute;
		width: min(29.1vw,114px);
		top: max(-9.5vw,-39px);
		left: 0;
	}
	#CONTENTS .product2 .foo_list {
		width: auto;
		margin: 0 -5.2% 12% -2.2%;
	}
	#CONTENTS .product .foo_list .sub_box img{
		width: 100%;
	}
	#CONTENTS .product2 .dot_box {
		bottom: -16px;
	}
	#CONTENTS .product2 .foo_list .sub_box .num {
		width: 27.4%;
		top: 25.5%;
		left: calc(50% - 12.7%);
	}
	#CONTENTS .product2 .slider-box .text_img {
		top: -41px;
	}
	#CONTENTS .history {
		border-bottom: none;
		padding: 24px 15px;
	}
	#CONTENTS .history .roadLine {
		top: 173px;
	}
	#CONTENTS .history .roadLine svg .cls-1 {
		stroke-width: 80;
	}
	#CONTENTS .history .white_box {
		padding: 31px 15px 40px;
		border-radius: 24px;
		border: 2px solid #000;
		background: #FFF;
	}
	#CONTENTS .history .com_ttl {
		margin-bottom: 33px;
	}
	#CONTENTS .history .com_ttl .title {
		min-width: min(76vw,297px);
	}
	#CONTENTS .history .history_list {
		flex-direction: column;
		margin: 0 25px 0 19px;
	}
	#CONTENTS .history .history_list li {
		margin: 0 0 6px;
		width: 100%;
	}
	#CONTENTS .history .history_list li:last-child {
		margin-bottom: 0 !important;
	}
	#CONTENTS .history .history_list li .sub_box {
		min-height: inherit;
		width: auto;
		padding: min(8.14vw,32px) min(5.1vw,20px);
	}
	#CONTENTS .history .history_list li .sub_box .date {
		width: min(30.1vw,112px);
		top: max(-5.9vw,-22px);
 		left: -10px;
	}
	#CONTENTS .history .history_list li h3 {
		margin-bottom: 12px;
		font-size: 18px;
		font-weight: 700;
		line-height: 140%; 
		letter-spacing: 1.8px;
	}
	#CONTENTS .history .history_list li p {
		font-size: min(3.6vw,14px);
		font-weight: 400;
		line-height: 160%; 
		margin-inline: -15px;
		letter-spacing: 0.7px;
	}
	#CONTENTS .history .history_list li .sub_box::after {
		top: 3px;
		bottom: -8px;
		left: 3px;
		right: -8px;
	}
	#CONTENTS .history .history_list li .photo01 {
		position: static;
		margin: 10px 0 max(-13vw,-50px) 16px;
		width: min(35.1vw,138px);
	}
	#CONTENTS .history .history_list .item02 {
		margin: 0 0 80px;
	}
	#CONTENTS .history .history_list li .photo02 {
		position: static;
		margin: 0 min(5.1vw,11px) -10px auto;
		width: min(38.2vw,150px);
	}
	#CONTENTS .history .history_list .item02 .sub_box .date {
		width: min(28vw,110px);
	}
	#CONTENTS .history .history_list li .photo03 {
		width: min(46.3vw,182px);
		top: -79px;
  		right: -25px;
	}
	#CONTENTS .history .history_list li .movie_box {
		position: static;
		width: auto;
		margin: 19px 7px 0;
	}
	#CONTENTS .history .history_list li .movie_box .movie {
		border-width: 1px;
		aspect-ratio: 16 / 8.8;
	}
	#CONTENTS .history .history_list li .movie_box .movie a {
		border-radius: 10px;
		border-radius: 15px;
	}
	#CONTENTS .history .history_list li .movie_box .movie a::after {
		border-radius: 12px;
	}
	#CONTENTS .history .history_list .item02 {
		margin: 72px 0 20px;
	}
	#CONTENTS .history .history_list li .movie_box .movie iframe {
		border-radius: 10px;
		display: block;
	}
	#CONTENTS .history .history_list li .movie_box p {
		margin-right: -10px;
		margin-left: 0;
		font-size: 11px;
		font-weight: 500;
		line-height: 120%; 
		border-width: 5px;
		padding-left: 8px;
	}
	#CONTENTS .history .history_list li .photo04 {
		width: min(21.5vw,80px);
		top: -68px;
		right: min(3.3vw,12px);
	}
	#CONTENTS .history .history_list .item03 .sub_box .date {
		top: -31px;
	}
	#CONTENTS .history .bg01 {
		width: min(10.2vw,40px);
		left: auto;
		right: min(4.6vw,18px);
		top: min(19.6vw,77px);
	}
	#CONTENTS .history .bg02 {
		display: none;
	}
	#CONTENTS .history .photo05 {
		width: min(28.9vw,113px);
		margin: -39px 0 -54px 12px;
	}
	#CONTENTS .history .history_list .photo_sp {
		margin: 0 -5px -10px auto;
		width: 95px;
	}
	#CONTENTS .history .history_list .photo_sp2 {
		width: 45px;
		margin-left: 5px;
	}
	#CONTENTS .history .history_list .item03 {
		margin-top: 5px;
	}
	#CONTENTS .function {
		padding: 0;
		background-color: #7A8BA5;
	}
	#CONTENTS .color_box {
		padding: 30px 0 55px;
	}
	#CONTENTS .function .com_ttl .title {
		min-width: min(75.6vw,297px);
	}
	#CONTENTS .function .com_ttl_inner {
		position: static;
		margin-bottom: 38px;
		transform: none;
	}
	#CONTENTS .function::before {
		display: none;
	}
	#CONTENTS .function::after {
		display: none;
	}
	#CONTENTS .function .main_box {
		padding: 0;
	}
	#CONTENTS .function_box {
		margin-bottom: 0;
		display: block;
	}
	#CONTENTS .function_box .left_box {
		width: auto;
		padding: 55px min(2.6vw,10px) 55px;
		border-bottom: 2px solid #000;
		background-color: #F16B1C;
	}
	#CONTENTS .function_box .right_box {
		width: auto;
		padding: 52px min(2.6vw,10px) 12px;
		background-color: #7A8BA5;
	}
	#CONTENTS .function_box .ttl_box {
		min-width: inherit;
		position: relative;
		margin-bottom: 10px;
		border-bottom: 2px solid #000;
		display: flex;
		padding-bottom: 7px;
		align-items: center;
		gap: 9px;
	}
	#CONTENTS .function_box .ttl_box .sub_txt {
		white-space: nowrap;
		position: static;
		border: none;
		margin-bottom: 0;
		padding: 0 5px 0 0;
		font-size: min(6.85vw,26.928px);
		font-size: 26.928px;
		font-weight: 700;
		line-height: 105%; 
		border-right: 1px solid #000;
	}
	#CONTENTS .function_box .ttl_box .txt_span2 {
		white-space: nowrap;
		font-size: 12.968px;
		font-weight: 700;
	}
	#CONTENTS .function_box .ttl_box .txt_span2 .sub_span {
		font-size: 16.957px;
		font-weight: 600;
		margin-left: 10px;
		vertical-align: -1px;
	}
	#CONTENTS .function_box .ttl {
		font-size: 12.968px;
		font-weight: 500;
		line-height: 160%; 
	}
	#CONTENTS .function_box .ttl small {
		font-size: 12.363px;
	}
	#CONTENTS .function_box p .num {
		font-size: 19.024px;
		font-weight: 600;
		line-height: 100%; 
		vertical-align: -1px;
		margin: 0 3px 0 6px;
	}
	#CONTENTS .function_box .sub_function_js {
		padding: 21px 42px 58px;
		background-image: url(../img/bg07_sp.png);
	}
	#CONTENTS .function_box .function_js .ttl {
		max-width: min(71.6vw,281px);
		font-size: min(4.6vw,18px);
		font-size: 18px;
		font-weight: 700;
		line-height: 160%; 
		top: 6px;
  		left: 15px;
	}
	#CONTENTS .function_box .function_js {
		margin-bottom: 16px;
		background-image: url(../img/bg06_sp.png);
		padding-top: max(9.7vw,34px);
	}
	#CONTENTS .function_box .sub_function_js .com_ul li {
		width: 25px;
		font-size: 14.566px;
		font-weight: 500;
		border: none;
	}
	#CONTENTS .function_box .sub_function_js .dot_box {
		bottom: 20px;
	}
	#CONTENTS .function_box .sub_function_js .com_ul li.on {
		outline-offset: 2px;
	}
	#CONTENTS .function_box .sub_function_js .next, #CONTENTS .function_box .sub_function_js .prev {
		width: 10px;
	}
	#CONTENTS .function_box .sub_function_js .prev {
		left: 15px;
	}
	#CONTENTS .function_box .sub_function_js .next {
		right: 15px;
	}
	#CONTENTS .function_box .text_img {
		margin-bottom: 30px;
	}
	#CONTENTS .function_box .text_img img {
		width: 100%;
	}
	#CONTENTS .function_box .function_list {
		margin-bottom: 37px;
		gap: 15px 15px;
	}
	#CONTENTS .function_box .function_list li {
		width: calc((100% - (15px * 2 + 1px)) / 3);
	}
	#CONTENTS .function_box .function_list p {
		margin-right: -5px;
		font-size: 14px;
		font-weight: 700;
		line-height: 130%; 
	}
	#CONTENTS .function_box .function_list .photo img {
		border-radius: 7px;
	}
	#CONTENTS .function_box .function_list .photo::after {
		border-radius: 7px;
		border-width: 0.6vw;
	}
	#CONTENTS .function_box .function_list .photo {
		margin-bottom: 8px;
	}
	#CONTENTS .function_box .function_list .item02 .photo img {
		border-radius: 6.689px 16.723px;
	}
	#CONTENTS .function_box .function_list .item02 .photo::after {
		border-radius: 6.689px 16.723px;
	}
	#CONTENTS .function_box .function_list .item03 .photo img {
		border-radius: 33.446px;
	}
	#CONTENTS .function_box .function_list .item03 .photo::after {
		border-radius: 33.446px;
	}
	#CONTENTS .function_box .function_list .item .photo img {
		border-radius: 19.995px 6.665px;
	}
	#CONTENTS .function_box .function_list .item .photo::after {
		border-radius: 19.995px 6.665px;
	}
	#CONTENTS .function_box .installation_ttl {
		font-size: 19.948px;
		font-weight: 700;
		line-height: 150%; 
		border-width: 2px;
		padding-bottom: 9px;
		margin-bottom: 30px;
	}
	#CONTENTS .function_box .installation_box {
		padding: 27px 15px 11px;
		margin-bottom: 23px;
	}
	#CONTENTS .function_box .installation_box .photo {
		aspect-ratio: 269 / 148;
		margin: 0px auto 17px;
		max-width: inherit;
	}
	#CONTENTS .function_box .installation_box p {
		font-size: 12.035px;
		font-weight: 700;
		line-height: 160%;
	}
	#CONTENTS .function_box .function_list2 {
		gap: 15px 7px;
		margin-bottom: 15px;
	}
	#CONTENTS .function_box .function_list2 li {
		width: calc((100% - (7px * 2 + 1px)) / 3);
	}
	#CONTENTS .function_box .function_list2 p {
		letter-spacing: 0;
		font-size: min(3.5vw,13.63px);
		font-size: 12.63px;
		margin-right: -5px;
	}
	#CONTENTS .function_box .function_list .txt {
		font-size: 11px;
		letter-spacing: -0.1px;
		margin-right: -7px;
		font-weight: 500;
		line-height: 130%; 
	}
	#CONTENTS .function_box .function_list .txt small {
		font-size: 12px;
	}
	#CONTENTS .function_box .textList {
		margin-bottom: 42px;
	}
	#CONTENTS .function_box .textList:last-child {
		margin-bottom: 0;
	}
	#CONTENTS .function_box .textList li {
		font-size: 12px;
		font-weight: 400;
		line-height: 140%; 
	}
	#CONTENTS .function_box .right_box .limited_box {
		width: auto;
	}
	#CONTENTS .function .com_btn_list:not(.left_box .com_btn_list) .item04 {
		order: -1;
	}
	#CONTENTS .function_box .note {
		position: relative;
		font-size: 13px;
	}
	#CONTENTS .function_box2 .right_box {
		padding-top: 0;
		padding-bottom: 55px;
	}
	#CONTENTS .function_box2 .right_box .note {
		padding-top: 0;
		margin-top: -20px;
	}
	#CONTENTS .range {
		border-bottom-width: 1px;
		padding-top: 55px;
	}
	#CONTENTS .range .function_box .left_box {
		padding-top: 0;
		bottom: 5px;
		background-color: transparent;
	}
	#CONTENTS .range .function_box .ttl_box {
		padding-right: min(36vw,140px);
		padding-bottom: 10px;
	}
	#CONTENTS .range .com_ttl_inner {
		margin-bottom: 20px;
	}
	#CONTENTS .function_box .ttl_box .text_img {
		width: min(33.6vw,132px);
	}
	#CONTENTS .range .function_box .function_js .ttl {
		top: 10px;
		font-size: min(4.1vw,16px);
	}
	#CONTENTS .range .function_box .function_js {
		padding-top: max(9.4vw,34px);
		background-image: url(../img/bg02_sp.png) !important;
	}
	#CONTENTS .range .function_box .sub_function_js {
		padding: 17px 32px 54px;
	}
	#CONTENTS .function_box .sub_function_js .com_ul {
		gap: 0px 12px;
	}
	#CONTENTS .range .function_box .text_img {
		margin-bottom: 40px;
	}
	#CONTENTS .range .function_box .right_box {
		padding-top: 47px;
		background-color: #C9D8DF;
		padding-bottom: 55px;
	}
	#CONTENTS .range .function_box .text_img2 {
		width: 50px;
	}
	#CONTENTS .lifestyle {
		background-size: 34px auto;
		padding: 57px 0 35px;
	}
	#CONTENTS .lifestyle .com_ttl {
		margin-bottom: -28px;
	}
	#CONTENTS .lifestyle_list li {
		margin: 0 4px;
		padding-block: 60px;
		width: min(84vw,330px) !important;
	}
	#CONTENTS .lifestyle_list .prev-slide li {
		transform: translateY(20px);
	}
	#CONTENTS .lifestyle_list .prev-prev-slide li {
		transform: translateY(40px);
	}
	#CONTENTS .lifestyle_list .next-slide li {
		transform: translateY(-20px);
	}
	#CONTENTS .lifestyle_list .next-next-slide li {
		transform: translateY(-40px);
	}
	#CONTENTS .lifestyle_js_box .next, #CONTENTS .lifestyle_js_box .prev {
		position: static;
		display: inline-block;
		width: 42px;
		margin: -20px 5px 0;
	}
	#CONTENTS .lifestyle_js_box  {
		text-align: center;
	}
	#CONTENTS .choose-your-style {
		padding: 53px 0 0;
	}
	#CONTENTS .choose-your-style .main_box {
		padding: 0;
	}
	#CONTENTS .choose_box {
		display: block;
		margin: 0;
	}
	#CONTENTS .choose_sub_box {
		width: auto;
		padding: 0 25px 17px;
	}
	#CONTENTS .choose_ttl_box {
		max-width: 350px;
		margin: 0 auto;
	}
	#CONTENTS .choose-your-style::before {
		display: none;
	}
	#CONTENTS .choose-your-style::after {
		display: none;
	}
	#CONTENTS .choose-your-style .com_ttl .title {
		min-width: min(58.6vw,230px);
	}
	#CONTENTS .choose-your-style .com_ttl h2 .line {
		width: min(85.3vw,335px);
	}
	#CONTENTS .choose_box .ttl .sub_span {
		min-width: 178px;
		padding: 5px;
		min-height: 37px;
		font-size: 11.162px;
		font-weight: 700;
		line-height: 150%; 
		letter-spacing: 1.116px;
		border-width: 1px;
	}
	#CONTENTS .choose_box .ttl .en:not(.icon) {
		padding: 5px;
		font-size: 17.859px;
		font-weight: 700;
	}
	#CONTENTS .choose_box .ttl .jp {
		margin: 0 0 -7px 58px;
	}
	#CONTENTS .choose_box .ttl .jp::after {
		height: 7px;
		width: 111px;
		bottom: -2px;
		left: 3px;
	}
	#CONTENTS .choose_box .ttl::after {
		width: 17px;
		top: calc(100% - 22px);
		left: calc(100% - 34px);
	}
	#CONTENTS .choose_box .ttl::before {
		bottom: auto;
		top: -13px;
		left: calc(100% + 32px);
		width: 41px;
		aspect-ratio: 82 / 128;
		background-image: url(../img/choose_img01_sp.png);
	}
	#CONTENTS .choose-your-style .white_box {
		margin: 0 min(6.4vw,25px) 25px;
		padding: 6px 20px 18px;
		border-radius: 13.014px;
		border: 1px solid #000;
		background: #FFF;
	}
	#CONTENTS .choose_list dt {
		width: 118px;
		box-sizing: border-box;
		order: -1;
		font-size: min(3.6vw,14px);
		font-size: 14px;
		font-weight: 700;
		line-height: 14px; 
		letter-spacing: 0.6px;
		padding-right: min(3.3vw,13px);
	}
	#CONTENTS .choose_list dd {
		flex: 1;
		width: calc(100% - 118px);
		font-size: min(3.6vw,14px);
		font-size: 14px;
		text-align: left;
		font-weight: 700;
		letter-spacing: 0.6px;
	}
	#CONTENTS .choose_list li {
		padding: 13px 0;
		border-bottom: 2px dotted #000;
	}
	#CONTENTS .choose_list dd .txt_span {
		margin-top: 0;
		font-size: 11px;
		font-weight: 500;
		line-height: 1.22; 
	}
	#CONTENTS .choose_list dd .txt_span small {
		font-size: 9px;
		font-weight: 500;
		line-height: 11px;
	}
	#CONTENTS .choose_list {
		margin-bottom: 13px;
	}
	#CONTENTS .choose-your-style .white_box p {
		font-size: 11px;
		font-weight: 400;
		line-height: 1.33;
	}
	#CONTENTS .choose-your-style .com_ttl {
		margin-bottom: 30px;
	}
	#CONTENTS .choose_sp {
		padding: 47px 0 36px;
		margin-top: 37px;
		border-top: 2px solid #000;
		background-color: #7A8BA5;
	}
	#CONTENTS .choose_sp .choose_box .ttl .jp {
		margin-left: 0;
		margin-right: 58px;
	}
	#CONTENTS .choose_sub_box2 .ttl .jp::after {
		left: auto;
		right: 3px;
	}
	#CONTENTS .choose_sub_box2 .ttl::after {
		left: auto;
		right: calc(100% - 33px);
	}
	#CONTENTS .choose_sub_box2 .ttl::before {
		left: auto !important;
		top: -17px;
		right: calc(100% + 25px);
		background-image: url(../img/choose_img02_sp.png);
	}
	#CONTENTS .link_sec {
		padding: 55px 0;
	}
	#CONTENTS .link_sec .com_btn_list {
		margin-top: 28px;
		gap: 16px 0;
	}
	#CONTENTS .link_sec .com_btn_list .item03 {
		order: 2;
	}
	#CONTENTS .link_sec p {
		text-align: left;
		max-width: min(80vw,314px);
		max-width: inherit;
		padding: 3rem 2rem;
		margin: 0 auto;
	}

}

.pop_box {
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 99999;
	transition: .3s;
	opacity: 0;
	visibility: hidden;
	background: rgba(255, 255, 255, .8);
}
.pop_box.show {
	opacity: 1;
	visibility: visible;
}
.pop_box .pop_inner {
	padding: 0;
    position: absolute;
	left: 20px;
	right: 20px;
	top: 0;
	bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
.pop_box .close {
	cursor: pointer;
	position: absolute;
	top: -10px;
	right: -11px;
	width: 42px;
	z-index: 1;
}
.pop_box .pop_sub_box {
	margin: auto;
	max-width: 1130px;
	max-height: 93%;
	width: 100%;
	display: flex;
	position: relative;
}
.pop_box .inner_box {
	position: relative;
	width: 100%;
	border-radius: 10px;
	background: #fff;
	padding: 77px 130px;
	box-sizing: border-box;
	max-height: 100%;
    /* overflow-y: auto; */
	border-radius: 30px;
	border: 2px solid #000;
	background: #FFF;
}
.pop_box .inner {
	height: calc(100% - 60px);
	margin-right: -7px;
}
.pop_box .inner ::-webkit-scrollbar {
	display: none;
}
.pop_box .inner .simplebar-scrollbar::before {
	opacity: 1;
	left: 0;
	right: 0;
	top: 0;
	background-color: #ccc;
}
.pop_box .inner .simplebar-track.simplebar-vertical {
	top: 10px;
	bottom: 10px;
	right: 0;
	width: 9px;
	box-sizing: border-box;
	background-color: #ECECEC;
	border-radius: 50px;
}
.pop_box .inner .simplebar-scrollbar {
	border-radius: 50px;
}
.pop_box .close {
	cursor: pointer;
	position: absolute;
	top: -15px;
	right: -15px;
	width: 50px;
}
.pop_box .pop_ttl {
	width: fit-content;
	margin: 0 auto 30px;
	text-align: center;
	color: #F16B1C;
	font-size: 22px !important;
	font-weight: 900;
	line-height: 150% !important;  
	padding-bottom: 4px;
	border-bottom: 2px solid #000;
}
.limited_dl {
	margin-bottom: 20px !important;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
}
.limited_dl dt {
	padding: 10px 0 10.5px;
	width: 381px;
	font-family: "Noto Sans JP";
	font-size: 13px;
	font-style: normal;
	font-weight: 500;
	line-height: 150%; 
	display: flex;
	align-items: center;
	border-bottom: 1px solid #B0B0B0;
	box-sizing: border-box;
}
.limited_dl dd {
	padding: 10px 20px 10.5px 0;
	font-weight: 400;
	font-size: 13px;
	line-height: 150%; 
	width: calc(100% - 381px);
	box-sizing: border-box;
	border-bottom: 1px solid #B0B0B0;
}
.limited_dl .dt_style {
	margin-left: 80px;
	width: 300px;
}
.limited_dl .dd_style {
	width: calc(100% - 300px - 80px);
}
.limited_dl .sub_list {
	margin: 3px 0 3px 5px;
}
.limited_dl .sub_list li {
	padding-left: 15px;
	line-height: 1.5;
	position: relative;
}
.limited_dl .sub_list li::before {
	position: absolute;  
	top: 0;
	color: currentColor;
	left: 3px;
	content: "•"; 
}
.pop_inner p {
	padding-right: 10px;
	font-size: 13px !important;
	font-weight: 400;
	line-height: 154% !important;
}
.pop_box2 .pop_ttl {
	color: #7A8BA5;
}

.holdings-footer.fix .holdings-footer__pagetop {
    bottom: 70px;
}
@media all and (min-width: 768px) {
	.pop_box .close:hover {
		opacity: 0.7;
	}
	#CONTENTS .fv .left_box .foo_ul {
		margin-left: 28px;
	}
	#CONTENTS .range .function_box .sub_function_js {
		padding: 8px 72px 61px;
	}
}

@media screen and (max-width: 767px) {
	.pop_box .pop_sub_box {
		max-height: 86%;
		max-width: inherit;
	}
	.limited_dl {
		display: block;
	}
	.limited_dl dt {
		padding-right: 10px;
		padding-bottom: 0;
		width: auto !important;
		border-bottom: none;
	}
	.limited_dl dd {
		padding-right: 10px;
		padding-top: 0;
		width: auto !important;
	}
	.limited_dl .dt_style {
		margin-left: 0;
	}
	.menu {
		position: fixed;
		top: 7px;
		/* position: absolute;
		top: 105px; */
		right: 0;
		z-index: 900;
		width: 58px;
		cursor: pointer;
		display: none;
	}
	.menu.fixed {
		position: fixed;
		top: 7px;
	}
	.menu_box {
		padding: 0 30px 50px;
		width: 281px;
		box-sizing: border-box;
		position: fixed;
		right: -100%;
		top: 7px;
		bottom: 8px;
		overflow-y: auto;
		z-index: 1001;
		border-radius: 28px 0 0 28px;
		border-top: 1.5px solid #000;
		border-bottom: 1.5px solid #000;
		border-left: 1.5px solid #000;
		background: #FFF;
		box-shadow: 0 7px 0 #000;
		transition: all 0.3s;
	}
	.menu_box.on {
		right: 0;
	}
	.menu_box .close {
		cursor: pointer;
		position: absolute;
		top: -1px;
		right: 0;
		width: 58px;
	}
	.menu_box .close.fixed {
		position: fixed;
		top: 7px;
	}
	.menu_box .g_navi {
		padding: 65px 0 24px;
	}
	.menu_box .g_navi a {
		display: block;
		padding: 19px 30px 20px 0;
		color: #000 !important;
		font-size: 20px;
		font-weight: 700;
		text-transform: capitalize;
		border-bottom: 1px solid #000;
		background: url(../img/next02.png) no-repeat right center;
		background-size: 27px auto;
	}	
	.menu_box .text_img {
		width: 187px;
		margin: 0 auto;
	}
	.cover {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 1000;
		background-color: rgba(0, 0, 0, 0.2);
		transition: all 0.3s;
		opacity: 0;
		visibility: hidden;
	}
	.cover.on {
		visibility: visible;
		opacity: 1;
	}
	.pop_box .inner_box {
		padding: 50px 10px;
	}
	.pop_box .inner .simplebar-track.simplebar-vertical {
		width: 7px;
	}
	.pop_box .close {
		width: 40px;
		top: -20px;
	}
	.pop_box .pop_ttl {
		font-size: min(5.6vw,22px) !important;
	}
}

@media screen and (max-width: 392px) {
	#CONTENTS .fv .fv_ttl {
		transform: translateX(-50%) scale(0.8) rotate(3deg);
	}
	/* #CONTENTS .range .function_box .function_js .ttl {
		font-size: min(3.2vw,14px);
	} */
	#CONTENTS .choose_box .ttl::before {
		left: calc(100% + 15px);
	}
	#CONTENTS .choose_sub_box2 .ttl::before {
		right: calc(100% + 15px);
	}
	/* #CONTENTS .function_box .function_js {
		padding-top: max(7.0vw,22px);
	} */
	/* #CONTENTS .function_box .installation_box p {
		font-size: min(2.9vw,12.035px);
	}
	#CONTENTS .function_box .function_list .txt {
		font-size: min(2.2vw,10px);
	}
	#CONTENTS .function_box .function_list .txt small {
		font-size: min(2.2vw,10px);
	} */
	#CONTENTS .choose-your-style .white_box {
		margin-inline: min(8vw,44.5px);
	}
	/* #CONTENTS .function_box .ttl_box .sub_txt {
		font-size: min(5.0vw,24.928px);
	} */
	 
	#CONTENTS .function_box .ttl_box .sub_txt {
		font-size: 22px;
	}
	#CONTENTS .function_box .ttl_box .text_img:not(.text_img2) {
		width: min(27vw,132px);
	}
	#CONTENTS .product .inner_box .left_box .sub .left p {
		font-size: min(3.6vw,14px);
	}

}

@media screen and (max-width: 374px) {
	#CONTENTS .dot_box {
		right: -0.6vw;
	}
	#CONTENTS .range .function_box .ttl_box {
		padding-right: min(31vw,140px);
	}
	#CONTENTS .history .history_list li .photo01 {
		margin-left: 0;
	}
	
}

/* @media all and (max-height: 650px) {
	#CONTENTS .fv .foo_ul li {
		height: 35vh;
	}
	#CONTENTS .fv .foo_bg img {
		height: 35vh;
	}
} */

@media all and (max-height: 450px) {
	#CONTENTS .fv .fv_ttl {
		transform: translateX(-50%) scale(0.6);
	}
}
