@charset "utf-8";

/*-----------------------------------------------
    btnCta（共通）
    ※タイポは .btnCta / .txtBtn 内で完結させ、親要素から継承させない
-----------------------------------------------*/
.btnCta{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 40rem;
	height: 8rem;
	border-radius: 9999px;
	background: var(--keyColor);
	color: var(--whiteColor);
	font-size: var(--pcFontSize18);
	line-height: var(--pcLineHeight1);
	letter-spacing: var(--pcLetterSpacing18_100);
	font-weight: bold;
	font-feature-settings: normal;
	white-space: nowrap;
	text-align: center;
}
.btnCta .txtBtn{
	position: relative;
	color: var(--whiteColor);
	font-size: var(--pcFontSize18);
	line-height: var(--pcLineHeight1);
	letter-spacing: var(--pcLetterSpacing18_100);
	font-weight: bold;
	font-feature-settings: normal;
}
.btnCta .txtBtn::after{
	content: "";
	position: absolute;
	top: 50%;
	left: 100%;
	width: 1.5rem;
	height: 1.3rem;
	margin-left: 3rem;
	transform: translateY(-50%);
	background: url(../img/common/arrow-right.svg) center / contain no-repeat;
	filter: brightness(0) invert(1);
}
@media only screen and (max-width:1215px){
	.btnCta{
		width: calc((305 / 375) * var(--widthBase));
		height: calc((60 / 375) * var(--widthBase));
		font-size: var(--spFontSize15);
		letter-spacing: var(--spLetterSpacing16_50);
	}
	.btnCta .txtBtn{
		font-size: var(--spFontSize16);
		letter-spacing: var(--spLetterSpacing16_50);
	}
	.btnCta .txtBtn::after{
		width: 1.2rem;
		height: 1rem;
		margin-left: calc((13 / 375) * var(--widthBase));
	}
}

/*-----------------------------------------------
    txtBody（共通本文）
    ※ボタン内では使わない。.boxCopy 配下など本文専用で使用する
-----------------------------------------------*/
.txtBody{
	font-size: var(--pcFontSize18);
	line-height: var(--pcLineHeight18_40);
	letter-spacing: var(--pcLetterSpacing18_100);
	color: var(--textColor);
	font-feature-settings: "palt";
	letter-spacing: 0;
}
.txtBody + .txtBody{
	margin-top: 2.4rem;
}
@media only screen and (max-width:1215px){
	.txtBody{
		font-size: var(--spFontSize15);
		line-height: var(--spLineHeight15_32);
		letter-spacing: var(--spLetterSpacing0);
	}
	.txtBody + .txtBody{
		margin-top: calc((24 / 375) * var(--widthBase));
	}
}

/*-----------------------------------------------
    index / secCmnTit（共通見出し）
-----------------------------------------------*/
.secCmnTit{
	text-align: center;
}
.secCmnTit .titJp{
	font-size: var(--pcFontSize36);
	line-height: var(--pcLineHeight15);
	letter-spacing: var(--pcLetterSpacing36_100);
	color: var(--textColor);
	font-feature-settings: "palt";
}
.secCmnTit .titJp::after{
	content: "";
	display: block;
	width: 8rem;
	height: 0.2rem;
	margin: 1.6rem auto 0;
	background: var(--keyColor);
}
.secCmnTit .titEng{
	display: inline-block;
	font-size: var(--pcFontSize20);
	letter-spacing: var(--pcLetterSpacing20_100);
	color: var(--keyColor);
	margin-top: 2.3rem;
}
.secCmnTit .txt{
	font-size: var(--pcFontSize18);
	line-height: var(--pcLineHeight18_40);
	letter-spacing: var(--pcLetterSpacing18_100);
	color: var(--textColor);
	margin-top: 4.8rem;
	font-feature-settings: "palt";
}
.secCmnTit .txt + .txt{
	margin-top: 3.9rem;
}
@media only screen and (max-width:1215px){
	.secCmnTit .titJp{
		font-size: var(--spFontSize20);
		line-height: var(--spLineHeight20_30);
		letter-spacing: var(--spLetterSpacing20_100);
	}
	.secCmnTit .titJp::after{
		width: 5rem;
		height: 0.2rem;
		margin-top: 1.4rem;
	}
	.secCmnTit .titEng{
		font-size: var(--spFontSize15);
		letter-spacing: var(--spLetterSpacing15_100);
		margin-top: 1.6rem;
	}
	.secCmnTit .txt{
		font-size: var(--spFontSize15);
		line-height: var(--spLineHeight15_32);
		letter-spacing:0;
		margin-top: 2.6rem;
		font-feature-settings: "palt";
	}
	.secCmnTit .txt + .txt{
		margin-top: 3.2rem;
	}
}


/*-----------------------------------------------
    index / secHero
-----------------------------------------------*/
.secHero{
	position: relative;
	width: 100%;
	height: 90rem;
	overflow: hidden;
}
.secHero .boxBg{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: var(--bgBlack);
	background-size: cover;
	background-position: center;
}
.secHero .boxBg.lazyloaded{
	background-image: url(../img/index/bgTop.jpg);
}
.secHero .inner{
	position: absolute;
	top: 26.6rem;
	left: 16rem;
	z-index: 1;
}
.secHero .tit{
	margin: 0;
}
.secHero .tit .imgPc{
	display: block;
	width: 56.2rem;
	height: auto;
}
.secHero .tit .imgSp{
	display: none;
}
.secHero .btnCta{
	margin-top: 6rem;
	background: linear-gradient(180deg, var(--keyColor) 25%, var(--keyColorDark) 100%);
	width: 44rem;
	height: 8.8rem;
}
.secHero .btnCta .txtBtn{
	font-size: var(--pcFontSize20);
	letter-spacing: var(--pcLetterSpacing20_100);
}
@media only screen and (max-width:1215px){
	.secHero{
		height: calc((630 / 375) * var(--widthBase));
	}
	.secHero .boxBg.lazyloaded{
		background-image: url(../img/index/bgTop_sp.jpg);
	}
	.secHero .inner{
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	.secHero .tit{
		margin-top: calc((85 / 375) * var(--widthBase));
	}
	.secHero .tit .imgPc{
		display: none;
	}
	.secHero .tit .imgSp{
		display: block;
		width: calc((337 / 375) * var(--widthBase));
		height: auto;
	}
	.secHero .btnCta{
		position: absolute;
		width: calc((285 / 375) * var(--widthBase));
		height: calc((60 / 375) * var(--widthBase));
		bottom: calc((30 / 375) * var(--widthBase));
		left: 50%;
		margin-top: 0;
		transform: translateX(-50%);
	}
	.secHero .btnCta .txtBtn{
	font-size: var(--spFontSize15);
	letter-spacing: var(--spLetterSpacing15_50);
}
}

/*-----------------------------------------------
    index / secAward
-----------------------------------------------*/
.secAward{
	width: 100%;
	padding: 8rem 0 8.4rem;
	background: var(--bgBlack);
}
.secAward .inner{
	display: flex;
	justify-content: center;
	align-items: center;
}
.secAward .imgPc{
	display: block;
	width: 112.2rem;
	height: auto;
}
.secAward .imgSp{
	display: none;
}
@media only screen and (max-width:1215px){
	.secAward{
		padding: calc((51 / 375) * var(--widthBase)) 0 calc((53 / 375) * var(--widthBase));
	}
	.secAward .imgPc{
		display: none;
	}
	.secAward .imgSp{
		display: block;
		width: calc((345 / 375) * var(--widthBase));
		height: auto;
	}
}

/*-----------------------------------------------
    index / secThoughts
-----------------------------------------------*/
.secThoughts{
	width: 100%;
	padding: 10.9rem 0 10rem;
	background: var(--whiteColor);
	position: relative;
}
.secThoughts::after{
	content: "";
	position: absolute;
	display: block;
	width: 16rem;
	height: 100%;
	top: 0;
	right: 0;
	background: var(--bgBlack);
}
@media only screen and (max-width:1215px){
	.secThoughts{
		padding: calc((54 / 375) * var(--widthBase)) 0 4rem;
	}
	.secThoughts::after{
		display: none;
	}
}

/* secTicker */
.secTicker{
    overflow: hidden;
}
.secTicker .boxTicker {
    display: flex;
}
.secTicker .itemTicker:nth-child(odd) {
    animation: loop 80s -40s linear infinite;
    backface-visibility: hidden;
    will-change: transform;
    transform: translate3d(0, 0, 0);
}
.secTicker .itemTicker:nth-child(even) {
    animation: loop2 80s linear infinite;
}
@keyframes loop {
    0% {
        transform: translateX(100%);
    }
    to {
        transform: translateX(-100%);
    }
}
@keyframes loop2 {
    0% {
      transform: translateX(0);
    }
    to {
      transform: translateX(-200%);
    }
}
@media only screen and (max-width:1215px){
    .secTicker .imgTicker{
        width: auto;
        height: calc((140 / 375) * var(--widthBase));
    }
}

/*-----------------------------------------------
    index / secRenovation
-----------------------------------------------*/
.secRenovation{
	width: 100%;
	padding: 11rem 0 0;
	background: var(--whiteColor);
}
.secRenovation .boxContent{
	display: flex;
	align-items: flex-start;
	gap: 10rem;
	margin-top: 5.8rem;
}
.secRenovation .boxImg{
	flex: 1 1 auto;
	min-width: 0;
	max-width: 84rem;
	width: auto;
}
.secRenovation .boxImg .imgPc{
	display: block;
	width: 100%;
	height: auto;
}
.secRenovation .boxImg .imgSp{
	display: none;
}
.secRenovation .boxTxt{
	flex: 0 0 59.8rem;
	width: 59.8rem;
	max-width: 59.8rem;
	padding-top: 4rem;
}
.secRenovation .boxCopy{
	width: 100%;
}
.secRenovation .boxTxt .btnCta{
	width: 36rem;
	height: 7.2rem;
	margin-top: 4.8rem;
	font-size: var(--pcFontSize16);
	letter-spacing: var(--pcLetterSpacing16_100);
}
.secRenovation .btnCta .txtBtn{
	font-size: var(--pcFontSize16);
	letter-spacing: var(--pcLetterSpacing16_100);
}
.secRenovation .btnCta .txtBtn::after {
    margin-left: 1rem;
}
@media only screen and (max-width:1215px){
	.secRenovation{
		padding: calc((60 / 375) * var(--widthBase)) 0 0;
	}
	.secRenovation .boxContent{
		display: block;
		margin-top: calc((31 / 375) * var(--widthBase));
	}
	.secRenovation .boxImg{
		flex: none;
		width: calc((345 / 375) * var(--widthBase));
		max-width: none;
		min-width: 0;
		margin: 0 auto;
	}
	.secRenovation .boxImg .imgPc{
		display: none;
	}
	.secRenovation .boxImg .imgSp{
		display: block;
		width: 100%;
		height: auto;
	}
	.secRenovation .boxTxt{
		flex: none;
		width: 100%;
		max-width: 100%;
		padding-top: 0;
		margin-top: calc((22 / 375) * var(--widthBase));
	}
	.secRenovation .boxCopy{
		text-align: center;
	}
	.secRenovation .boxCopy .txtBody{
		letter-spacing: var(--spLetterSpacing15_100);
		text-align: left;
	}
	.secRenovation .boxTxt .btnCta{
		width: calc((305 / 375) * var(--widthBase));
		height: calc((60 / 375) * var(--widthBase));
		margin: calc((36 / 375) * var(--widthBase)) auto 0;
		font-size: var(--spFontSize16);
		letter-spacing: var(--spLetterSpacing16_50);
	}
	.secRenovation .btnCta .txtBtn{
		font-size: var(--spFontSize16);
		letter-spacing: var(--spLetterSpacing16_50);
	}
}

/*-----------------------------------------------
    index / secLineup
-----------------------------------------------*/
.secLineup{
	position: relative;
	width: 100%;
	padding: 0;
	background: var(--bgBlack);
	margin-top: 8rem;
	overflow: hidden;
}
.secLineup::before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 14rem;
	background: var(--whiteColor);
}
.secLineup .boxSlider{
	position: relative;
	z-index: 1;
	width: 100%;
	overflow: hidden;
}
.secLineup .boxTicker{
	display: flex;
}
.secLineup .itemTicker{
	display: flex;
	flex-shrink: 0;
	gap: 3rem;
	padding-right: 3rem;
}
.secLineup .itemTicker:nth-child(odd){
	animation: loop 50s -25s linear infinite;
	backface-visibility: hidden;
	will-change: transform;
	transform: translate3d(0, 0, 0);
}
.secLineup .itemTicker:nth-child(even){
	animation: loop2 50s linear infinite;
}
.secLineup .itemSlide{
	width: 37rem;
	height: auto;
	flex-shrink: 0;
}
.secLineup .img{
	width: 100%;
	height: 28rem;
	overflow: hidden;
}
.secLineup .img img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media only screen and (max-width:1215px){
	.secLineup{
		width: 100%;
		max-width: 100%;
		padding: 0 0 calc((20 / 375) * var(--widthBase));
		margin-top: 4.5rem;
	}
	.secLineup::before{
		height: calc((72 / 375) * var(--widthBase));
	}
	.secLineup .boxSlider{
		width: 100%;
		margin-inline: 0;
	}
	.secLineup .itemTicker{
		gap: calc((10 / 375) * var(--widthBase));
		padding-right: calc((10 / 375) * var(--widthBase));
	}
	.secLineup .itemSlide{
		width: calc((190 / 375) * var(--widthBase));
	}
	.secLineup .img{
		height: calc((144 / 375) * var(--widthBase));
	}
}

/*-----------------------------------------------
    index / secMenu
-----------------------------------------------*/
.secMenu{
	width: 100%;
	padding: 9rem 0 0;
	background: var(--bgBlack);
	overflow: hidden;
}
.secMenu .boxTit{
	text-align: center;
}
.secMenu .boxTit .titEn{
	font-size: var(--pcFontSize36);
	line-height: var(--pcLineHeight1);
	letter-spacing: var(--pcLetterSpacing36_100);
	color: var(--whiteColor);
}
.secMenu .boxTit .titEn::after{
	content: "";
	display: block;
	width: 5rem;
	height: 0.2rem;
	margin: 1.6rem auto 0;
	background: var(--keyColor);
}
.secMenu .boxTit .titJp{
	font-size: var(--pcFontSize16);
	line-height: var(--pcLineHeight1);
	letter-spacing: var(--pcLetterSpacing16_100);
	color: var(--keyColor);
	margin-top: 2.3rem;
	font-feature-settings: "palt";
}
.secMenu .listMenu{
	display: grid;
	justify-content: center;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 2rem;
	width: 100%;
	margin-top: 5rem;
	list-style: none;
}
.secMenu .listMenu .item{
	width: 100%;
	min-width: 0;
}
.secMenu .listMenu .imgPc{
	display: block;
	width: 100%;
	height: auto;
}
.secMenu .listMenu .imgSp{
	display: none;
}
.secMenu .secMovie{
	position: relative;
	margin-top: 12rem;
}
.secMenu .secMovie .boxMovie{
	position: relative;
	z-index: 2;
	width: 120rem;
	height: 67.5rem;
	margin: 0 auto;
}
.secMenu .boxMovie iframe{
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
}
.secMenu .secMovie .boxTicker{
	position: relative;
	z-index: 1;
	display: flex;
	width: 100vw;
	margin: -8rem 0 0 calc(50% - 50vw);
	overflow: hidden;
	pointer-events: none;
}
.secMenu .boxTicker .itemTicker:nth-child(odd){
	animation: loop 80s -40s linear infinite;
	backface-visibility: hidden;
	will-change: transform;
	transform: translate3d(0, 0, 0);
}
.secMenu .boxTicker .itemTicker:nth-child(even){
	animation: loop2 80s linear infinite;
}
.secMenu .boxTicker .imgMenuTxt{
	display: block;
	width: 335.7rem;
	height: 19.5rem;
	max-width: none;
}
@media only screen and (max-width:1215px){
	.secMenu{
		padding: calc((22 / 375) * var(--widthBase)) 0 calc((50 / 375) * var(--widthBase));
		padding-bottom: 0;
	}
	.secMenu .boxTit .titEn{
		font-size: var(--spFontSize20);
		letter-spacing: var(--spLetterSpacing20_100);
	}
	.secMenu .boxTit .titEn::after{
		width: calc((30 / 375) * var(--widthBase));
		height: 0.2rem;
		margin-top: calc((12 / 375) * var(--widthBase));
	}
	.secMenu .boxTit .titJp{
		font-size: var(--spFontSize12);
		letter-spacing: var(--spLetterSpacing12_150);
		margin-top: calc((16 / 375) * var(--widthBase));
	}
	.secMenu .listMenu{
		grid-template-columns: repeat(3, calc((108 / 375) * var(--widthBase)));
		gap: calc((10 / 375) * var(--widthBase)) calc((11 / 375) * var(--widthBase));
		margin-top: calc((29 / 375) * var(--widthBase));
	}
	.secMenu .listMenu .item{
		width: calc((108 / 375) * var(--widthBase));
	}
	.secMenu .listMenu .imgPc{
		display: none;
	}
	.secMenu .listMenu .imgSp{
		display: block;
		width: 100%;
		height: auto;
	}
	.secMenu .secMovie{
		margin-top: calc((50 / 375) * var(--widthBase));
	}
	.secMenu .secMovie .boxMovie{
		width: 100%;
		height: auto;
		aspect-ratio: 16 / 9;
	}
	.secMenu .secMovie .boxTicker{
		margin-top: calc((-10 / 375) * var(--widthBase));
	}
	.secMenu .boxTicker .imgMenuTxt{
		width: calc((984 / 375) * var(--widthBase));
		height: calc((61 / 375) * var(--widthBase));
	}
}

/*-----------------------------------------------
    index / secBeforeAfter
-----------------------------------------------*/
.secBeforeAfter{
	width: 100%;
	padding: 9rem 0 0;
	background: var(--whiteColor);
}
.secBeforeAfter .titJp .txtAfter{
	color: var(--keyColor);
}
.secBeforeAfter .secCmnTit .titJp::after{
	width: 5rem;
	margin: 3rem auto 0;
}
.secBeforeAfter .listBeforeAfter{
	margin-top: 6rem;
}
.secBeforeAfter .boxItem{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: clamp(3rem, 4vw, 8rem);
}
.secBeforeAfter .boxItem + .boxItem{
	margin-top: 8rem;
	padding-top: 8rem;
	border-top: 1px solid var(--headerNavBorder);
}
.secBeforeAfter .boxItem:nth-child(even){
	flex-direction: row-reverse;
}
.secBeforeAfter .boxTxt{
	flex: 1 1 42rem;
	min-width: 42rem;
	max-width: 68rem;
	padding-top: 1rem;
	word-break: normal;
	overflow-wrap: break-word;
}
.secBeforeAfter .boxHead .tit{
	font-size: var(--pcFontSize30);
	line-height: var(--pcLineHeight30_40);
	letter-spacing: var(--pcLetterSpacing30_100);
	color: var(--textColor);
	font-weight: bold;
	font-feature-settings: "palt";
}
.secBeforeAfter .tit .num{
	color: var(--keyColor);
	margin-right: 1.2rem;
	font-weight: 400;
}
.secBeforeAfter .boxHead .titEng{
	font-size: var(--pcFontSize16);
	letter-spacing: var(--pcLetterSpacing16_100);
	color: var(--keyColor);
	margin-top: 1.5rem;
}
.secBeforeAfter .boxTxt .txt{
	font-size: var(--pcFontSize18);
	line-height: var(--pcLineHeight18_40);
	letter-spacing: var(--pcLetterSpacing18_100);
	color: var(--textColor);
	margin-top: 3.2rem;
}
.secBeforeAfter .listSummary{
	margin-top: 4.8rem;
}
.secBeforeAfter .listSummary .item{
	display: flex;
	align-items: stretch;
}
.listSummary .item + .item{
	margin-top: 2rem;
}
.secBeforeAfter .listSummary .label{
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 14rem;
	width: 14rem;
	min-height: 7rem;
	padding: 0.8rem 0.4rem;
	color: var(--whiteColor);
	font-size: var(--pcFontSize20);
	letter-spacing: var(--pcLetterSpacing20_100);
	text-align: center;
}
.secBeforeAfter .itemBefore .label{
	background: var(--bgBlack);
}
.secBeforeAfter .itemAfter .label{
	background: var(--keyColor);
}
.secBeforeAfter .listSummary .txtSummary{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex: 1 1 auto;
	min-width: 0;
	min-height: 4.8rem;
	padding: 0.8rem 1.9rem;
	font-size: var(--pcFontSize20);
	letter-spacing: var(--pcLetterSpacing20_100);
	text-align: left;
	background: var(--whiteColor);
}
.secBeforeAfter .itemBefore .txtSummary{
	border: 1px solid var(--bgBlack);
	color: var(--textColor);
}
.secBeforeAfter .itemAfter .txtSummary{
	border: 1px solid var(--keyColor);
	color: var(--keyColor);
}
.secBeforeAfter .boxTab{
	flex: 1 1 50rem;
	width: auto;
	max-width: 84rem;
	min-width: 0;
}
.secBeforeAfter .secTab{
	display: flex;
	width: 100%;
	gap: 2px;
	margin-bottom: 2px;
}
.secBeforeAfter .secTab .item{
	flex: 1 1 50%;
	width: 50%;
}
.secBeforeAfter .secTab .cmnTabBtn{
	display: flex;
	align-items: center;
	justify-content: center;
	height: 7rem;
	background: var(--tabInactiveColor);
	color: var(--whiteColor);
	font-size: var(--pcFontSize20);
	letter-spacing: var(--pcLetterSpacing20_100);
	text-align: center;
}
.secBeforeAfter .cmnTabItem:first-child .cmnTabBtn{
	border-radius: 0.5rem 0 0 0;
}
.secBeforeAfter .cmnTabItem:last-child .cmnTabBtn{
	border-radius: 0 0.5rem 0 0;
	background: var(--tabAfterInactiveColor);
}
.secBeforeAfter .cmnTabItem:first-child .cmnTabBtn.active{
	background: var(--bgBlack);
}
.secBeforeAfter .cmnTabItem:last-child .cmnTabBtn.active{
	background: var(--keyColor);
}
.secBeforeAfter .boxImg{
	width: 100%;
}
.secBeforeAfter .boxImg img{
	display: block;
	width: 100%;
	height: auto;
}
.secBeforeAfter .txtCatch{
	display: none;
}
@media only screen and (max-width:1215px){
	.secBeforeAfter{
		padding: calc((32 / 375) * var(--widthBase)) 0 0;
	}
	.secBeforeAfter .secCmnTit .titJp::after{
		width: 3rem;
		margin-top: 1rem;
	}
	.secBeforeAfter .listBeforeAfter{
		margin-top: calc((38 / 375) * var(--widthBase));
	}
	.secBeforeAfter .boxItem{
		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: 0;
	}
	.secBeforeAfter .boxItem + .boxItem{
		margin-top: calc((34 / 375) * var(--widthBase));
		padding-top: calc((38 / 375) * var(--widthBase));
	}
	.secBeforeAfter .boxItem:nth-child(even){
		flex-direction: column;
	}
	.secBeforeAfter .boxTxt{
		display: contents;
		max-width: none;
		padding-top: 0;
	}
	.secBeforeAfter .boxHead{
		order: 1;
	}
	.secBeforeAfter .boxTab{
		order: 2;
		flex: none;
		width: 100%;
		max-width: none;
		margin-top: calc((27 / 375) * var(--widthBase));
	}
	.secBeforeAfter .boxTxt .txt{
		order: 3;
		margin-top: calc((20 / 375) * var(--widthBase));
		font-size: var(--spFontSize13);
		line-height: var(--spLineHeight13_26);
		letter-spacing: var(--spLetterSpacing0);
	}
	.secBeforeAfter .listSummary{
		display: none;
	}
	.secBeforeAfter .boxHead .tit{
		font-size: var(--spFontSize20);
		line-height: 1;
		letter-spacing: var(--spLetterSpacing20_100);
	}
	.secBeforeAfter .tit .num{
		margin-right: calc((8 / 375) * var(--widthBase));
	}
	.secBeforeAfter .boxHead .titEng{
		font-size: var(--spFontSize12);
		letter-spacing: var(--spLetterSpacing12_150);
		margin-top: calc((12 / 375) * var(--widthBase));
	}
	.secBeforeAfter .secTab{
		gap: 1px;
		margin-bottom: 1px;
	}
	.secBeforeAfter .secTab .cmnTabBtn{
		height: calc((40 / 375) * var(--widthBase));
		font-size: var(--spFontSize14);
		letter-spacing: var(--spLetterSpacing14_50);
	}
	.secBeforeAfter .txtCatch{
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		min-height: calc((54 / 375) * var(--widthBase));
		margin-top: calc((15 / 375) * var(--widthBase));
		padding: calc((12 / 375) * var(--widthBase)) calc((10 / 375) * var(--widthBase));
		font-size: var(--spFontSize15);
		letter-spacing: 0.05em;
		text-align: center;
		background: var(--whiteColor);
	}
	.secBeforeAfter .secCmnTabContents:first-child .txtCatch{
		border: 1px solid var(--bgBlack);
		color: var(--textColor);
	}
	.secBeforeAfter .secCmnTabContents:nth-child(2) .txtCatch{
		border: 1px solid var(--keyColor);
		color: var(--keyColor);
	}
}

/*-----------------------------------------------
    index / boxFloor
-----------------------------------------------*/
.boxFloor{
	width: 100%;
	padding: 9rem 0 12rem;
	margin-top: 12rem;
	background: var(--bgFloor);
}
.boxFloor .secCmnTit .titLead{
	font-size: var(--pcFontSize30);
	line-height: 1.5;
	letter-spacing: var(--pcLetterSpacing30_100);
	color: var(--textColor);
	font-feature-settings: "palt";
}
.boxFloor .secCmnTit .titJp{
	margin-top: 0.5rem;
}
.boxFloor .titJp .txtAfter{
	color: var(--keyColor);
}
.boxFloor .secCmnTit .titJp::after{
	width: 5rem;
}
.boxFloor .secCmnTit .txt{
	margin-top: 4.2rem;
}
.boxFloor .listFloor{
	display: flex;
	justify-content: space-between;
	gap: 4rem;
	margin-top: 4.2rem;
}
.boxFloor .listFloor .item{
	flex: 1 1 78rem;
	max-width: 78rem;
	min-width: 0;
}
.boxFloor .boxImg{
	width: 100%;
	background: var(--whiteColor);
	box-shadow: 0 0.2rem 1.2rem rgba(0, 0, 0, 0.06);
}
.boxFloor .boxImg img{
	display: block;
	width: 100%;
	height: auto;
}
@media only screen and (max-width:1215px){
	.boxFloor{
		padding: calc((50 / 375) * var(--widthBase)) 0 calc((60 / 375) * var(--widthBase));
		margin-top: 5.2rem;
	}
	.boxFloor .secCmnTit .titLead{
		font-size: var(--spFontSize18);
		line-height: 1;
		letter-spacing: var(--spLetterSpacing18_100);
	}
	.boxFloor .secCmnTit .titJp{
		margin-top: 0.6rem;
	}
	.boxFloor .secCmnTit .titJp::after{
		width: 3rem;
	}
	.boxFloor .secCmnTit .txt{
		margin-top: calc((16 / 375) * var(--widthBase));
	}
	.boxFloor .listFloor{
		flex-direction: column;
		gap: calc((25 / 375) * var(--widthBase));
		margin-top: calc((20 / 375) * var(--widthBase));
	}
	.boxFloor .listFloor .item{
		flex: none;
		max-width: none;
		width: 100%;
	}
}

/*-----------------------------------------------
    index / secPoint
-----------------------------------------------*/
.secPoint{
	width: 100%;
	padding: 11rem 0 14rem;
	background: var(--whiteColor);
}
.secPoint .boxCards{
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	gap: 6rem;
	margin-top: 4.5rem;
}
.secPoint .boxCard{
	position: relative;
	display: flex;
	flex-direction: column;
	flex: 1 1 77rem;
	max-width: 77rem;
	padding: 5rem;
	background: var(--whiteColor);
	border-radius: 0.4rem;
	box-shadow: 0 0.1rem 0.7rem rgba(0, 0, 0, 0.18);
}
.secPoint .boxCard .titWatermark{
	position: absolute;
	top: 3rem;
	right: 2rem;
	z-index: 0;
	margin: 0;
	color: var(--pointWatermarkColor);
	font-size: var(--pcFontSize70);
	letter-spacing: var(--pcLetterSpacing70_100);
	font-weight: 400;
	pointer-events: none;
	white-space: nowrap;
}
.secPoint .boxCard .titCard{
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	font-size: var(--pcFontSize25);
	line-height: 1.4;
	letter-spacing: var(--pcLetterSpacing25_100);
	color: var(--textColor);
	font-weight: bold;
}
.secPoint .boxCard .titCard::before{
	content: "";
	display: block;
	flex: 0 0 1.5rem;
	width: 1.5rem;
	height: 1.5rem;
	margin-right: 1.2rem;
	border: 0.5rem solid var(--keyColor);
	border-radius: 50%;
	box-sizing: border-box;
}
.secPoint .listPoint{
	position: relative;
	z-index: 1;
	flex: 1 1 auto;
	margin-top: 3.2rem;
}
.listPoint .item + .item{
	margin-top: 2.4rem;
	padding-top: 2.4rem;
	border-top: 1px solid var(--optionalColor);
}
.secPoint .listPoint .titPoint{
	font-size: var(--pcFontSize20);
	line-height: var(--pcLineHeight12);
	letter-spacing: var(--pcLetterSpacing20_100);
	color: var(--keyColor);
}
.secPoint .listPoint .tit{
	margin-top: 0.6rem;
	font-size: var(--pcFontSize20);
	line-height: 1.5;
	letter-spacing: var(--pcLetterSpacing20_100);
	color: var(--textColor);
	font-weight: bold;
}
.secPoint .listPoint .txt{
	margin-top: 0.8rem;
	font-size: var(--pcFontSize16);
	line-height: var(--pcLineHeight20);
	letter-spacing: var(--pcLetterSpacing16_100);
	color: var(--textColor);
}
.secPoint .boxImg{
	position: relative;
	z-index: 1;
	flex: 0 0 auto;
	margin-top: 3.6rem;
}
.secPoint .boxImg img{
	display: block;
	width: 100%;
	height: auto;
}
@media only screen and (max-width:1215px){
	.secPoint{
		padding: calc((54 / 375) * var(--widthBase)) 0 calc((80 / 375) * var(--widthBase));
	}
	.secPoint .boxCards{
		display: block;
		margin-top: calc((28 / 375) * var(--widthBase));
	}
	.secPoint .boxCard{
		flex: none;
		max-width: none;
		width: 100%;
		padding: calc((27 / 375) * var(--widthBase)) calc((20 / 375) * var(--widthBase)) calc((35 / 375) * var(--widthBase));
	}
	.secPoint .boxCard + .boxCard{
		margin-top: calc((30 / 375) * var(--widthBase));
	}
	.secPoint .boxCard .titWatermark{
		top: calc((10 / 375) * var(--widthBase));
		right: calc((10 / 375) * var(--widthBase));
		font-size: var(--spFontSize40);
	}
	.secPoint .boxCard .titCard{
		font-size: var(--spFontSize18);
		letter-spacing: var(--spLetterSpacing18_100);
	}
	.secPoint .boxCard .titCard::before{
		flex: 0 0 calc((15 / 375) * var(--widthBase));
		width: calc((15 / 375) * var(--widthBase));
		height: calc((15 / 375) * var(--widthBase));
		margin-right: calc((8 / 375) * var(--widthBase));
		border-width: 0.55rem;
	}
	.secPoint .listPoint{
		margin-top: calc((15 / 375) * var(--widthBase));
	}
	.listPoint .item + .item{
		margin-top: calc((19 / 375) * var(--widthBase));
		padding-top: calc((17 / 375) * var(--widthBase));
	}
	.secPoint .listPoint .titPoint{
		font-size: var(--spFontSize16);
		letter-spacing: var(--spLetterSpacing16_50);
	}
	.secPoint .listPoint .tit{
		margin-top: calc((4 / 375) * var(--widthBase));
		font-size: var(--spFontSize16);
		letter-spacing: var(--spLetterSpacing16_50);
	}
	.secPoint .listPoint .txt{
		margin-top: calc((8 / 375) * var(--widthBase));
		font-size: var(--spFontSize13);
		line-height: var(--spLineHeight13_26);
		letter-spacing: var(--spLetterSpacing13_50);
		font-feature-settings: "palt";
	}
	.secPoint .boxImg{
		margin-top: calc((24 / 375) * var(--widthBase));
	}
}

/*-----------------------------------------------
    index / secVoice
-----------------------------------------------*/
.secVoice{
	padding: 11rem 0 14rem;
	background: var(--bgVoice);
}
.secVoice .listVoice{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	column-gap: 6rem;
	row-gap: 5rem;
	margin-top: 4.2rem;
}
.secVoice .listVoice .item{
	display: flex;
	align-items: center;
	gap: 4rem;
}
.secVoice .listVoice .boxIcon{
	flex: 0 0 12rem;
	width: 12rem;
}
.secVoice .boxIcon img{
	width: 100%;
	height: auto;
}
.secVoice .listVoice .boxBalloon{
	position: relative;
	flex: 1 1 auto;
	min-width: 0;
	padding: 4.6rem 3.6rem 4.6rem 3.5rem;
	background: var(--whiteColor);
	border-radius: 999px;
	box-shadow: 0 0.1rem 0.8rem rgba(0, 0, 0, 0.15);
}
.secVoice .listVoice .boxBalloon::before{
	content: "";
	position: absolute;
	top: 50%;
	left: -2.2rem;
	width: 0;
	height: 0;
	margin-top: -1.4rem;
	border-style: solid;
	border-width: 1.2rem 2.2rem 1.2rem 0;
	border-color: transparent var(--whiteColor) transparent transparent;
	filter: drop-shadow(-0.2rem 0.1rem 0.2rem rgba(0, 0, 0, 0.04));
}
.secVoice .boxBalloon .txt{
	font-size: var(--pcFontSize16);
	line-height: var(--pcLineHeight16_36);
	letter-spacing: var(--pcLetterSpacing16_50);
	color: var(--textColor);
	text-align: center;
	font-feature-settings: "palt";
}
.secVoice .boxBalloon .txtMark{
	background: linear-gradient(transparent 58%, var(--voiceMarkColor) 58%);
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
}
@media only screen and (max-width:1215px){
	.secVoice{
		padding: calc((54 / 375) * var(--widthBase)) 0 calc((78 / 375) * var(--widthBase));
	}
	.secVoice .listVoice{
		grid-template-columns: 1fr;
		column-gap: 0;
		row-gap: calc((25 / 375) * var(--widthBase));
		margin-top: calc((26 / 375) * var(--widthBase));
	}
	.secVoice .listVoice .item{
		gap: calc((16 / 375) * var(--widthBase));
	}
	.secVoice .listVoice .item:nth-child(even){
		flex-direction: row-reverse;
	}
	.secVoice .listVoice .boxIcon{
		flex: 0 0 calc((75 / 375) * var(--widthBase));
		width: calc((75 / 375) * var(--widthBase));
	}
	.secVoice .listVoice .boxBalloon{
		padding: calc((18 / 375) * var(--widthBase)) calc((12 / 375) * var(--widthBase));
		border-radius: calc((12 / 375) * var(--widthBase));
		box-shadow: 0 calc((3 / 375) * var(--widthBase)) calc((6 / 375) * var(--widthBase)) rgba(0, 0, 0, 0.18);
	}
	.secVoice .listVoice .boxBalloon::before{
		top: calc((82 / 375) * var(--widthBase));
		left: calc((-20 / 375) * var(--widthBase));
		margin-top: 0;
		border-width: calc((12 / 375) * var(--widthBase)) calc((25 / 375) * var(--widthBase)) calc((12 / 375) * var(--widthBase)) 0;
	}
	.secVoice .item:nth-child(3) .boxBalloon::before{
		top: calc((108 / 375) * var(--widthBase));
		margin-top: calc((-12 / 375) * var(--widthBase));
	}
	.secVoice .item:nth-child(even) .boxBalloon::before{
		left: auto;
		right: calc((-20 / 375) * var(--widthBase));
		border-width: calc((12 / 375) * var(--widthBase)) 0 calc((12 / 375) * var(--widthBase)) calc((25 / 375) * var(--widthBase));
		border-color: transparent transparent transparent var(--whiteColor);
		filter: drop-shadow(0.2rem 0.1rem 0.2rem rgba(0, 0, 0, 0.04));
	}
	.secVoice .boxBalloon .txt{
		font-size: var(--spFontSize13);
		line-height: var(--spLineHeight13_26);
		letter-spacing: var(--spLetterSpacing13_50);
	}
}

/*-----------------------------------------------
    index / secFlow
-----------------------------------------------*/
.secFlow{
	width: 100%;
	padding: 11rem 0 14rem;
	background: var(--bgGray);
}
.secFlow .listFlow{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	column-gap: 3rem;
	row-gap: 5.1rem;
	width: 100%;
	margin-top: 6.8rem;
	list-style: none;
}
.secFlow .listFlow .item{
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	width: calc((100% - 15rem) / 6);
	max-width: 24.2rem;
	height: 24.5rem;
	padding: 7rem 1.2rem 4.5rem;
	background: var(--whiteColor);
	border-radius: 0.2rem;
}
.secFlow .listFlow .item:not(:last-child)::after{
	content: "";
	position: absolute;
	top: 50%;
	right: -2rem;
	z-index: 1;
	width: 0;
	height: 0;
	margin-top: -0.5rem;
	border-style: solid;
	border-width: 0.8rem 0 0.8rem 1.2rem;
	border-color: transparent transparent transparent var(--keyColor);
}
.secFlow .listFlow .num{
	position: absolute;
	top: 1.8rem;
	left: 1.8rem;
	font-size: var(--pcFontSize30);
	letter-spacing: var(--pcLetterSpacing30_100);
	color: var(--keyColor);
}
.secFlow .listFlow .boxIcon{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 6.7rem;
	height: 6rem;
	margin: 0 auto 1.6rem;
}
.secFlow .boxIcon img{
	display: block;
	width: 100%;
	height: auto;
}
.secFlow .listFlow .tit{
	min-height: 4.2rem;
	font-size: var(--pcFontSize20);
	line-height: var(--pcLineHeight20_32);
	letter-spacing: var(--pcLetterSpacing20_100);
	color: var(--textColor);
	font-weight: bold;
	text-align: center;
	font-feature-settings: "palt";
}
@media only screen and (max-width:1215px){
	.secFlow{
		padding: calc((54 / 375) * var(--widthBase)) 0 calc((80 / 375) * var(--widthBase));
	}
	.secFlow .listFlow{
		column-gap: calc((15 / 375) * var(--widthBase));
		row-gap: calc((22 / 375) * var(--widthBase));
		margin-top: calc((40 / 375) * var(--widthBase));
	}
	.secFlow .listFlow .item{
		width: calc((105 / 375) * var(--widthBase));
		height: calc((138 / 375) * var(--widthBase));
		padding: calc((38 / 375) * var(--widthBase)) calc((6 / 375) * var(--widthBase)) calc((14 / 375) * var(--widthBase));
		border-radius: 0.5rem;
	}
	.secFlow .listFlow .item:not(:nth-child(6)):not(:last-child)::after{
		display: none;
	}
	.secFlow .listFlow .item:not(:nth-child(3n)):not(:last-child)::after{
		content: "";
		display: block;
		position: absolute;
		top: 50%;
		right: calc((-10 / 375) * var(--widthBase));
		z-index: 1;
		width: 0;
		height: 0;
		margin-top: calc((-4 / 375) * var(--widthBase));
		border-style: solid;
		border-width: calc((4 / 375) * var(--widthBase)) 0 calc((4 / 375) * var(--widthBase)) calc((6 / 375) * var(--widthBase));
		border-color: transparent transparent transparent var(--keyColor);
	}
	.secFlow .listFlow .num{
		top: calc((10 / 375) * var(--widthBase));
		left: calc((10 / 375) * var(--widthBase));
		font-size: var(--spFontSize18);
	}
	.secFlow .listFlow .boxIcon{
		width: calc((33 / 375) * var(--widthBase));
		height: calc((30 / 375) * var(--widthBase));
		margin-bottom: calc((14 / 375) * var(--widthBase));
	}
	.secFlow .listFlow .tit{
		min-height: calc((32 / 375) * var(--widthBase));
		font-size: var(--spFontSize13);
		letter-spacing: var(--spLetterSpacing0);
	}
	.secFlow .listFlow .item:not(:last-child)::after{
		display: none;
	}
}

/*-----------------------------------------------
    index / secArea
-----------------------------------------------*/
.secArea{
	width: 100%;
	padding: 11rem 0 0;
	background: var(--whiteColor);
}
.secArea .boxImg{
	margin-top: 3.4rem;
	text-align: center;
}
.secArea .boxImg img{
	width: 120rem;
	max-width: 100%;
	height: auto;
}
@media only screen and (max-width:1215px){
	.secArea{
		padding: 5.5rem 0 2rem;
	}
	.secArea .boxImg{
		margin-top: 2.6rem;
	}
	.secArea .boxImg img{
		width: 100%;
	}
}

/*-----------------------------------------------
    index / secFunction
-----------------------------------------------*/
.secFunction{
	width: 100%;
	padding: 11rem 0 14rem;
	background: var(--whiteColor);
}
.secFunction .listFunction{
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 7rem 5rem;
	margin-top: 8.4rem;
	width: 100%;
}
.secFunction .listFunction .item{
	position: relative;
	width: 100%;
	min-height: 33.8rem;
	padding: 8rem 3rem 3.2rem;
	background: var(--bgGray);
	box-sizing: border-box;
	text-align: center;
}
.secFunction .listFunction .item:nth-child(9){
	grid-column: 2;
}
.secFunction .listFunction .item:nth-child(10){
	grid-column: 3;
}
.secFunction .listFunction .boxHead{
	padding-bottom: 1rem;
	border-bottom: 1px solid var(--optionalColor);
}
.secFunction .listFunction .boxIcon{
	position: absolute;
	top: -4rem;
	left: 50%;
	z-index: 1;
	width: 10rem;
	transform: translateX(-50%);
}
.secFunction .boxIcon img{
	display: block;
	width: 100%;
	height: auto;
}
.secFunction .listFunction .tit{
	font-size: var(--pcFontSize20);
	line-height: var(--pcLineHeight20);
	letter-spacing: var(--pcLetterSpacing20_100);
	color: var(--textColor);
	font-weight: bold;
}
.secFunction .listFunction .txt{
	margin-top: 1.4rem;
	font-size: var(--pcFontSize16);
	line-height: var(--pcLineHeight16_32);
	letter-spacing: var(--pcLetterSpacing16_100);
	color: var(--textColor);
	text-align: left;
}
@media only screen and (max-width:1215px){
	.secFunction{
		padding: calc((55 / 375) * var(--widthBase)) 0 calc((80 / 375) * var(--widthBase));
	}
	.secFunction .listFunction{
		display: block;
		margin-top: calc((25 / 375) * var(--widthBase));
	}
	.secFunction .listFunction .item{
		width: 100%;
		min-height: 0;
		padding: calc((20 / 375) * var(--widthBase)) calc((20 / 375) * var(--widthBase)) calc((19 / 375) * var(--widthBase));
		text-align: left;
	}
	.secFunction .listFunction .item:nth-child(9),
	.secFunction .listFunction .item:nth-child(10){
		grid-column: auto;
	}
	.secFunction .item + .item{
		margin-top: calc((20 / 375) * var(--widthBase));
	}
	.secFunction .listFunction .boxHead{
		display: flex;
		align-items: center;
		gap: calc((16 / 375) * var(--widthBase));
		padding-bottom: calc((16 / 375) * var(--widthBase));
	}
	.secFunction .listFunction .boxIcon{
		position: static;
		top: auto;
		left: auto;
		flex: 0 0 calc((45 / 375) * var(--widthBase));
		width: calc((45 / 375) * var(--widthBase));
		transform: none;
	}
	.secFunction .listFunction .tit{
		font-size: var(--spFontSize16);
		line-height: var(--spLineHeight14);
		letter-spacing: var(--spLetterSpacing16_100);
	}
	.secFunction .listFunction .txt{
		margin-top: calc((12 / 375) * var(--widthBase));
		font-size: var(--spFontSize13);
		line-height: var(--spLineHeight13_26);
		letter-spacing: var(--spLetterSpacing13_100);
		text-align: left;
	}
}

/*-----------------------------------------------
    index / secBnr
-----------------------------------------------*/
.secBnr{
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	padding: 7rem 0 7.9rem;
	background: var(--bgBlack);
	overflow: hidden;
	text-align: center;
}
.secBnr .titEng{
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 0;
	margin: 0;
	color: var(--whiteColor03);
	font-size: var(--pcFontSize200);
	line-height: 1;
	letter-spacing: var(--pcLetterSpacing200_100);
	white-space: nowrap;
	pointer-events: none;
	transform: translate(-50%, -50%);
}
.secBnr .inner{
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.secBnr .txtLead{
	color: var(--whiteColor);
	font-size: var(--pcFontSize20);
	line-height: var(--pcLineHeight20_36);
	letter-spacing: var(--pcLetterSpacing20_100);
}
.secBnr .btnCta{
	margin-top: 3rem;
}
@media only screen and (max-width:1215px){
	.secBnr{
		padding: calc((41 / 375) * var(--widthBase)) 0 calc((40 / 375) * var(--widthBase));
	}
	.secBnr .titEng{
		font-size: var(--spFontSize30);
		color: var(--whiteColor01);
		top: 10.8rem;
	}
	.secBnr .txtLead{
		font-size: var(--spFontSize16);
		line-height: var(--spLineHeight16_24);
		letter-spacing: var(--spLetterSpacing16_100);
	}
	.secBnr .btnCta{
		margin-top: calc((30 / 375) * var(--widthBase));
	}
}

/*-----------------------------------------------
    index / secFaq
-----------------------------------------------*/
.secFaq{
	width: 100%;
	padding: 12.4rem 0 20.7rem;
	background: var(--whiteColor);
}
.secFaq .boxMainList{
	width: 120rem;
	max-width: 100%;
	margin: 6rem auto 0;
	list-style: none;
}
.secFaq .itemMain{
	padding: 3.2rem 5rem 2.8rem;
	margin-bottom: 3rem;
	background: var(--whiteColor);
	border-radius: 0.5rem;
	box-shadow: 0 0.1rem 0.7rem rgba(0, 0, 0, 0.18);
}
.secFaq .itemMain:last-child{
	margin-bottom: 0;
}
.secFaq .linkMain{
	position: relative;
	display: flex;
	align-items: center;
	gap: 2.6rem;
	padding: 0 0 1.1rem;
	margin: 0;
	font-size: var(--pcFontSize16);
	line-height: var(--pcLineHeight16_32);
	letter-spacing: var(--pcLetterSpacing16_50);
	color: var(--keyColor);
	font-weight: 400;
	cursor: default;
	font-feature-settings: "palt";
}
.secFaq .linkMain.cursorPointer:hover{
	opacity: 1;
}
.secFaq .linkMain::before{
	content: "Q";
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 4.5rem;
	height: 4.5rem;
	border-radius: 50%;
	background: var(--keyColor);
	color: var(--whiteColor);
	font-size: var(--pcFontSize25);
	line-height: 1;
	font-weight: 400;
	letter-spacing: 0;
	font-family: 'Poppins';
}
.secFaq .boxSubList{
	display: block;
	position: relative;
	padding: 2.4rem 0 0 7.1rem;
	margin: 0;
	border-top: none;
	list-style: none;
}
.secFaq .boxSubList::before{
	content: "";
	position: absolute;
	top: 0;
	left: 7.1rem;
	right: 0;
	border-top: 0.1rem solid var(--faqBorderColor);
}
.secFaq .txtSub{
	font-size: var(--pcFontSize16);
	line-height: var(--pcLineHeight16_32);
	letter-spacing: var(--pcLetterSpacing16_50);
	color: var(--textColor);
}
@media only screen and (max-width:1215px){
	.secFaq{
		padding: calc((54 / 375) * var(--widthBase)) 0 calc((80 / 375) * var(--widthBase));
	}
	.secFaq .boxMainList{
		width: 100%;
		margin-top: calc((34 / 375) * var(--widthBase));
	}
	.secFaq .itemMain{
		padding: calc((18 / 375) * var(--widthBase)) calc((16 / 375) * var(--widthBase));
		margin-bottom: calc((12 / 375) * var(--widthBase));
		border-radius: calc((5 / 375) * var(--widthBase));
	}
	.secFaq .linkMain{
		gap: calc((10 / 375) * var(--widthBase));
		padding: 0;
		padding-bottom: 0;
		font-size: var(--spFontSize13);
		line-height: var(--spLineHeight13_20);
		letter-spacing: var(--spLetterSpacing13_50);
		cursor: pointer;
		/* 線の領域は常時確保し、色だけ切り替えてレイアウトジャンプを防ぐ */
		border-bottom: 0.1rem solid transparent;
		transition: padding-bottom 0.4s ease, border-bottom-color 0.4s ease;
		/* プラス横線（::beforeはQバッジ用のため背景で固定表示） */
		background-image: linear-gradient(var(--tabInactiveColor), var(--tabInactiveColor));
		background-size: calc((18 / 375) * var(--widthBase)) 0.2rem;
		/* テキスト（コンテンツボックス）に対して上下中央。開閉のpadding影響を受けない */
		background-position: right center;
		background-repeat: no-repeat;
		background-origin: content-box;
	}
	.secFaq .linkMain.cursorPointer:hover{
		opacity: 0.8;
	}
	.secFaq .linkMain::before{
		width: calc((30 / 375) * var(--widthBase));
		height: calc((30 / 375) * var(--widthBase));
		font-size: var(--spFontSize18);
	}
	.secFaq .linkMain::after{
		content: "";
		flex-shrink: 0;
		width: calc((18 / 375) * var(--widthBase));
		height: 0.2rem;
		margin-left: auto;
		background: var(--tabInactiveColor);
		display: block;
		transition: transform 0.4s ease;
		transform: rotate(90deg);
	}
	.secFaq .linkMain.on{
		padding-bottom: calc((16 / 375) * var(--widthBase));
		border-bottom-color: var(--faqBorderColor);
	}
	.secFaq .linkMain.on::after{
		transform: rotate(360deg);
	}
	.secFaq .boxSubList{
		display: none;
		padding: calc((16 / 375) * var(--widthBase)) 0 0;
		border-top: none;
	}
	.secFaq .boxSubList::before{
		display: none;
	}
	.secFaq .txtSub{
		font-size: var(--spFontSize13);
		line-height: var(--spLineHeight13_26);
		letter-spacing: var(--spLetterSpacing0);
	}
}

/*-----------------------------------------------
    index / secContact
-----------------------------------------------*/
.secContact{
	width: 100%;
	padding: 4rem 0 14rem;
	background: var(--formBgColor);
}
.secContact .wrapper{
	width: 120rem;
	max-width: calc(100% - 100px);
	margin: 0 auto;
}
.secCmnTit .titJp .spOnly,
.secCmnTit .txt .spOnly,
.secFormWrap .titLead .spOnly,
.boxPrivacy .line02 .spOnly{
	display: none;
}
.isFormOk .secContact{
	padding: 14rem 0 14rem;
}
@media only screen and (max-width:1215px){
	.secContact{
		padding: 5.5rem 0 6rem;
	}
	.secContact .wrapper{
		width: 100%;
		max-width: 40rem;
		padding: 0 1.5rem;
		margin: 0 auto;
	}
	.secCmnTit .titJp .spNone,
	.secCmnTit .txt .spNone,
	.secFormWrap .titLead .spNone,
	.boxPrivacy .line02 .spNone{
		display: none;
	}
	.secCmnTit .titJp .spOnly,
	.secCmnTit .txt .spOnly,
	.secFormWrap .titLead .spOnly,
	.boxPrivacy .line02 .spOnly{
		display: inline;
	}
	.isFormOk .secContact{
		padding: 6rem 0 6rem;
	}
}