@charset "utf-8";

#header{
    height: 9rem;
}
#header .headerWrapper{
    padding: 0 0 0 3rem;
    display: flex;
}
#header .leftBox{
    display: flex;
    align-items: center;
    height: 9rem;
}
#header .headerLogo{
    position: relative;
    display: inline-block;
}
#header .leftTxtBox{
    padding: 0.5rem 0 0 11rem;
}
#header .headerTit{
    font-size: var(--pcFontSize15);
    line-height: var(--pcLineHeight15_225);
    letter-spacing: var(--pcLetterSpacing15_100);
}
#header .btnBox{
    width: 32rem;
    margin-left: auto;
}
#header .btnInner{
    height: 8.9rem;
    background: var(--textColor);
    text-decoration: none;
    color: var(--ColorWhite);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--pcFontSize17);
    letter-spacing: var(--pcLetterSpacing17_100);
    font-weight: bold;
}
#header .btnTxt{
    position: relative;
    padding-left: 3.8rem;
}
#header .btnTxt::after{
    position: absolute;
    content: "";
    width: 3.4rem;
    height: 2.8rem;
    left: -0.2rem;
    top: calc(50% - 1.4rem);
    background: url(../img/common/iconHeaderBtn.png?250521) center top / cover;
}
@media only screen and (max-width:1215px){
    #header{
        height: 4.5rem;
    }
    #header .headerWrapper{
        padding: 0 0 0 1rem;
        height: 4.5rem;
    }
    #header .leftBox{
        height: auto;
        align-items: flex-end;
        margin-left: 2%;
    }
    #header .headerLogo{
        width: 150px;
        height: auto;
    }
    #header .btnBox{
        width: 16rem;
        margin-left: auto;
    }
    #header .btnInner{
        height: 4.5rem;
        font-size: var(--spFontSize12);
        letter-spacing: var(--spLetterSpacing0);
    }
    #header .btnTxt{
        padding-left: 0;
    }
    #header .btnTxt::after{
        display: none;
    }
}
@media only screen and (max-width:340px){
    #header .btnBox{
        width: 15rem;
    }
}

/* footer */
#footer{
	background: var(--textColor);
    color: var(--ColorWhite);
	height: 8rem;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}
#footer .copy{
    font-size: var(--pcFontSize15);
    letter-spacing: var(--pcLetterSpacing15_100);
}
@media only screen and (max-width:1215px){
    #footer{
        height: 5rem;
    }
    #footer .copy{
        font-size: var(--spFontSize13);
        letter-spacing: var(--spLetterSpacing13_100);
    }
    #spfNavi + #footer{
		margin-bottom: 6.6rem;
	}
}

/*-----------------------------------------------
    index
-----------------------------------------------*/
/* secHero */
.secHero .boxSlider,
.secHero .boxThumb{
	position: relative;
}
.secHero .boxThumb .swiper-button-prev,
.secHero .boxThumb .swiper-button-next{
	width: 2.7rem;
	height: 5.4rem;
	margin: 0;
	z-index: 10;
	top: calc(50% - 2.7rem);
}
.secHero .boxSlider .swiper-button-prev::after,
.secHero .boxSlider .swiper-button-next::after,
.secHero .boxThumb .swiper-button-prev::after,
.secHero .boxThumb .swiper-button-next::after{
	display: none;
}
.secHero .boxThumb .swiper-button-prev{
	left: -6.5rem;
	background: url(../img/common/btnGalleryPrev.gif) center top / cover no-repeat;
}
.secHero .boxThumb .swiper-button-next{
	right: -6.5rem;
	background: url(../img/common/btnGalleryNext.gif) center top / cover no-repeat;
}
.secHero .boxSlider .swiper-button-disabled,
.secHero .boxThumb .swiper-button-disabled{
	display: none;
}
.secHero .boxSlider.disabled .swiper-button-prev,
.secHero .boxSlider.disabled .swiper-button-next,
.secHero .boxThumb.disabled .swiper-button-prev,
.secHero .boxThumb.disabled .swiper-button-next{
	display: none;
}
.secHero .imgSlider{
	display: block;
}
.secHero .boxSlider.disabled + .boxThumb{
	display: none;
}
.secHero .boxThumb{
	margin-top: 7rem
}
.secHero .boxThumb.disabled .swiper-wrapper{
	transform: translate3d(0, 0, 0) !important;
}
.secHero .boxThumb *::selection {
	background: transparent;
}
.secHero .boxThumb a{
	display: block;
	position: relative;
}
.secHero .boxThumb .swiper-slide .imgBox{
	width: 100%;
	height: 0;
	padding-top: 46.667%;
	position: relative;
	transition: all .2s;
    cursor: pointer;
}
.secHero .boxThumb .swiper-slide .imgBox::before,
.secHero .boxThumb .swiper-slide .imgBox::after{
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10;
	content: '';
	width: 0;
	height: 0;
	border: 0.3rem solid transparent;
}
.secHero .boxThumb .swiper-slide .imgBox.on::before,
.secHero .boxThumb .swiper-slide .imgBox.on::after,
.secHero .boxThumb .swiper-slide .imgBox:hover::before,
.secHero .boxThumb .swiper-slide .imgBox:hover::after{
	width: 100%;
	height: 100%;
}
.secHero .boxThumb .swiper-slide .imgBox.on::before,
.secHero .boxThumb .swiper-slide .imgBox:hover::before{
	border-top-color: var(--ColorGreen);
	border-right-color: var(--ColorGreen);
}
.secHero .boxThumb .swiper-slide .imgBox:hover::before{
	transition: width .3s, height .3s .3s;
}
.secHero .boxThumb .swiper-slide .imgBox.on::after,
.secHero .boxThumb .swiper-slide .imgBox:hover::after{
	border-bottom-color: var(--ColorGreen);
	border-left-color: var(--ColorGreen);
}
.secHero .boxThumb .swiper-slide .imgBox:hover::after{
	transition: height .3s, width .3s .3s;
}
@media only screen and (max-width:1600px){
	.secHero .boxSlider .swiper-button-prev{
		left: 5rem;
	}
	.secHero .boxSlider .swiper-button-next{
		right: 5rem;
	}
}
@media only screen and (max-width:1215px){
	.secHero .swiper-pagination{
		display: flex;
		display: -webkit-flex;
		align-items: center;
		-webkit-align-items: center;
		justify-content: center;
		-webkit-justify-content: center;
		width: 100%;
		position: static;
		margin-top: 2.1rem;
	}
	.secHero .swiper-pagination .swiper-pagination-bullet{
		margin: 0 0.5rem !important;
		opacity: 1;
		width: 0.6rem;
		height: 0.6rem;
		position: relative;
		background: #DBDBDB;
	}
	.secHero .swiper-pagination .swiper-pagination-bullet-active{
		background: var(--ColorGreen);
	}
}

/* secTop */
.secTop{
    text-align: center;
    margin-top: 6.6rem;
}
.secTop .iconCostDate{
    margin-top: 6.5rem;
}
.secTop .boxFlex{
    display: flex;
    justify-content: center;
    gap: 4.3rem;
    margin-top: 6rem;
}
.secTop .imgGarage2{
    margin-top: -0.5rem;
    position: relative;
}
.secTop .imgGarage2Sub{
    position: absolute;
    top: -3.9rem;
    right: -21.5rem;
}
.secTop .txtNoteGarage{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_24);
    letter-spacing: var(--pcLetterSpacing14_50);
    margin-top: 1.5rem;
}
.secTop .boxTxtBottom{
    margin-top: 5.9rem;
    position: relative;
}
.secTop .boxTxtBottom::after{
    content: "";
    width: 114.3rem;
    height: 38.9rem;
    position: absolute;
    bottom: 6.2rem;
    left: 50%;
    transform: translateX(-50%);
}
.secTop .boxTxtBottom.lazyloaded::after{
    background: url(../img/index/bgTop.png) center top / cover;
}
.secTop .boxTxtBottom .txtAbout{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_29);
    letter-spacing: var(--pcLetterSpacing14_50);
}
.secTop .boxTxtBottom .bgYellow{
    background: var(--bgYellowColor);
}
.secTop .boxTxtBottom .txtTit{
    width: 35rem;
    padding: 1rem 0 0.8rem;
    font-size: var(--pcFontSize30);
    letter-spacing: var(--pcLetterSpacing30_500);
    color: var(--ColorWhite);
    background: var(--textColor);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 1;
    margin: 2rem auto 0;
}
.secTop .boxTxtBottom .txtTit::after{
    content: "";
    width: 35rem;
    height: 4.8rem;
    border: 0.1rem solid var(--textColor);
    position: absolute;
    bottom: -0.7rem;
    left: 0.6rem;
}
.secTop .boxTxtBottom .txtTitSub{
    font-size: var(--pcFontSize20);
    letter-spacing: var(--pcLetterSpacing20_500);
    margin-top: 2.1rem;
}
.secTop .boxTxtBottom .txtAboutBottom{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_29);
    letter-spacing: var(--pcLetterSpacing14_50);
    margin-top: 2.3rem;
}
@media only screen and (max-width:1215px){
    .secTop{
        margin-top: 3.9rem;
    }
    .secTop .imgTit{
        width: 30rem;
        margin: 0 auto;
    }
    .secTop .iconCostDate{
        width: 28.3rem;
        margin: 3rem auto 0;
    }
    .secTop .boxFlex{
        flex-direction: column;
        align-items: center;
        gap: 2.5rem;
        margin-top: 2.5rem;
    }
    .secTop .imgGarage{
        width: 32.2rem;
    }
    .secTop .txtNoteGarage{
        font-size: var(--spFontSize10);
        line-height: var(--spLineHeight10_14);
        letter-spacing: var(--spLetterSpacing0);
        margin-top: 1rem;
        padding: 0 2rem;
    }
    .secTop .boxTxtBottom{
        margin-top: 2.4rem;
    }
    .secTop .boxTxtBottom::after{
        display: none;
    }
    .secTop .boxTxtBottom .txtAbout{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_24);
        letter-spacing: var(--spLetterSpacing12_50);
    }
    .secTop .boxTxtBottom .txtTit{
        width: 22rem;
        height: 3rem;
        padding: 0.8rem 0 0.5rem;
        font-size: var(--spFontSize18);
        letter-spacing: var(--spLetterSpacing18_250);
        margin: 1.4rem auto 0;
    }
    .secTop .boxTxtBottom .txtTit::after{
        width: 22rem;
        height: 3rem;
        bottom: -0.6rem;
        left: 0.6rem;
    }
    .secTop .boxTxtBottom .txtTitSub{
        font-size: var(--spFontSize13);
        letter-spacing: var(--spLetterSpacing13_250);
        margin-top: 1.5rem;
    }
    .secTop .boxTxtBottom .txtAboutBottom{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_24);
        letter-spacing: var(--spLetterSpacing12_50);
        margin-top: 2.3rem;
    }
    .secTop .imgBottomSp{
        max-width: 32.9rem;
        margin: 1.4rem auto 0;
    }
}

/* secIdea */
.secIdea{
    text-align: center;
    clip-path: polygon(0 0, 100% 0%, 100% 83.5%, 50% 100%, 0 83.5%);
    padding: 12.1rem 0 25.7rem;
    margin-top: 11.2rem;
    position: relative;
    z-index: 1;
}
.secIdea.lazyloaded{
    background: url(../img/index/bgSpec.png);
}
.secIdea .boxList{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    position: relative;
    margin-top: 6rem;
}
.secIdea .boxList::after{
    content: "";
    width: 157.6rem;
    height: 18.3rem;
    position: absolute;
    top: -12.9rem;
    left: 50%;
    transform: translateX(-50%);
}
.secIdea .boxList.lazyloaded::after{
    background: url(../img/index/imgIdeaFlag.png) center top / cover;
}
.secIdea .item{
    margin-right: 2rem;
    position: relative;
}
.secIdea .item:nth-child(1){margin-left: 1rem;}
.secIdea .item:nth-child(4){margin-right: 1rem;}
.secIdea .item:nth-child(9){
    margin-right: 0;
}
.secIdea .item:nth-child(n+5){
    margin-top: 5rem;
}
.secIdea .item .txtIdea{
    width: 10rem;
    height: 10rem;
    border-radius: 50%;
    background: var(--ColorWhite);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--pcFontSize18);
    line-height: var(--pcLineHeight18_25);
    font-weight: bold;
    text-align: center;
    position: absolute;
    bottom: -2.4rem;
    left: -1rem;
}
.secIdea .item:nth-child(4) .txtIdea{
    font-size: var(--pcFontSize15);
    line-height: var(--pcLineHeight15_22);
}
@media only screen and (max-width:1215px){
    .secIdea{
        text-align: center;
        clip-path: polygon(0 0, 100% 0%, 100% 95%, 50% 100%, 0 95%);
        padding: 5rem 0 7.5rem;
        margin-top: 3.4rem;
        position: relative;
        z-index: 1;
    }
    .secIdea.lazyloaded{
        background: url(../img/index/bgSpec.png);
    }
    .secIdea .txtTit{
        width: 30.1rem;
        margin: 0 auto;
    }
    .secIdea .boxList{
        justify-content: normal;
        margin-top: 3rem;
    }
    .secIdea .boxList::after{
        content: "";
        width: 37.5rem;
        height: 4.9rem;
        top: -11rem;
    }
    .secIdea .boxList.lazyloaded::after{
        background: url(../img/index/imgIdeaFlag_sp.png) center top / cover;
    }
    .secIdea .item{
        width: calc((100% - 1.9rem) / 2);
        margin-right: 1.9rem;
    }
    .secIdea .item:nth-child(1){margin-left: 0;}
    .secIdea .item:nth-child(4){margin-right: 0;}
    .secIdea .item:nth-child(2n){
        margin-right: 0;
    }
    .secIdea .item:nth-child(n+3){
        margin-top: 2rem;
    }
    .secIdea .item .txtIdea{
        width: 6.5rem;
        height: 6.5rem;
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_15);
        bottom: -1rem;
        left: -1rem;
    }
    .secIdea .item:nth-child(4) .txtIdea{
        font-size: var(--spFontSize10);
        line-height: var(--spLineHeight10_12);
    }
}

/* secWorks */
.secWorks{
    position: relative;
    padding: 30.2rem 0 11.1rem;
    margin-top: -18rem;
    background: var(--bgGrayColor);
}
.secWorks .iconBottom{
    position: absolute;
    top: 0.7rem;
    right: 38rem;
    z-index: 10;
}
.secWorks .txtTit{
    font-size: var(--pcFontSize32);
    letter-spacing: var(--pcLetterSpacing32_100);
    text-align: center;
}
.secWorks .txtMin{
    font-size: var(--pcFontSize28);
}
.secWorks .boxWorksNext{
    position: relative;
    margin-top: 7.2rem;
    padding-top: 3.1rem;
}
.secWorks .boxWorksNext::after{
    content: "";
    width: 100%;
    height: 0.8rem;
    position: absolute;
    top: 0;
    left: 0;
}
.secWorks .boxWorksNext.lazyloaded::after{
    background: url(../img/index/imgVoiceBottom.png) center top / cover;
}
.secWorks .boxFlex{
    display: flex;
    align-items: flex-start;
    margin-top: 5.7rem;
}
.secWorks .boxTabContent{
    width: 99rem;
}
.secWorks .boxTabContent .tabContent{
    display: none;
}
.secWorks .boxTabContent .tabContent.active{
    display: block;
}
.secWorks .txtWorksTit{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_29);
    letter-spacing: var(--pcLetterSpacing14_50);
    text-align: center;
    margin-top: 1.3rem;
}
.secWorks .boxTabList{
    width: calc(100% - 101.8rem);
    display: flex;
    flex-wrap: wrap;
    margin-left: 2.8rem;
}
.secWorks .tab{
    width: calc((100% - 1rem) / 2);
    margin-right: 1rem;
    cursor: pointer;
}
.secWorks .tab.active .boxImg{
    width: 100%;
    position: relative;
}
.secWorks .tab.active .boxImg::after{
    content: '';
    width: calc(100% + 0.8rem);
    height: calc(100% + 0.8rem);
    border: 0.4rem solid var(--ColorGreen);
    position: absolute;
    top: -0.4rem;
    left: -0.4rem;
    z-index: 10;
}
.secWorks .boxTabList .tab:nth-child(2n){
    margin-right: 0;
}
.secWorks .boxTabList .tab:nth-child(n+3){
    margin-top: 1rem;
}
.secWorks .boxVoiceTit{
    display: flex;
    align-items: center;
    margin-top: 1.7rem;
}
.secWorks .txtVoiceNum{
    width: 11.3rem;
}
.secWorks .boxRightTxt{
    display: flex;
    flex-direction: column;
    margin-left: 3.7rem;
}
.secWorks .txVoiceTit{
    font-size: var(--pcFontSize20);
    line-height: var(--pcLineHeight20_28);
    letter-spacing: var(--pcLetterSpacing20_100);
}
.secWorks .txtVoiceTitSub{
    font-size: var(--pcFontSize16);
    letter-spacing: var(--pcLetterSpacing16_100);
    margin-top: 1.7rem;
}
.secWorks .txtVoiceAbout{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_29);
    letter-spacing: var(--pcLetterSpacing14_50);
    margin-top: 1rem;
}
@media only screen and (max-width:1215px){
    .secWorks{
        padding: 10.6rem 0 4.4rem;
        margin-top: -5.5rem;
    }
    .secWorks .iconBottom{
        width: 13rem;
        top: -14rem;
        right: 2.9rem;
    }
    .secWorks .txtTit{
        font-size: var(--spFontSize18);
        letter-spacing: var(--spLetterSpacing18_100);
    }
    .secWorks .txtMin{
        font-size: var(--spFontSize16);
    }
    .secWorks .boxWorksNext{
        margin-top: 2.1rem;
        padding-top: 1rem;
    }
    .secWorks .boxWorksNext::after{
        width: 92%;
        height: 1.4rem;
        left: 50%;
        transform: translateX(-50%);
    }
    .secWorks .boxWorksNext.lazyloaded::after{
        background: url(../img/index/imgVoiceBottom_sp.png) center top;
    }
    .secWorks .boxFlex{
        flex-direction: column;
        margin-top: 2.9rem;
    }
    .secWorks .boxTabContent{
        width: 100%;
    }
    .secWorks .txtWorksTit{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_21);
        letter-spacing: var(--spLetterSpacing0);
        margin-top: 0.6rem;
        padding: 0 4%;
    }
    .secWorks .boxTabList{
        width: 97.867%;
        margin: 1.4rem auto 0;
    }
    .secWorks .tab{
        width: calc((100% - 1.2rem) / 5);
        margin-right: 0.3rem;
    }
    .secWorks .tab.active .boxImg::after{
        width: calc(100% + 0.4rem);
        height: calc(100% + 0.4rem);
        border: 0.2rem solid var(--ColorGreen);
        top: -0.2rem;
        left: -0.2rem;
    }
    .secWorks .boxTabList .tab:nth-child(2n){
        margin-right: 0.3rem;
    }
    .secWorks .boxTabList .tab:nth-child(5n){
        margin-right: 0;
    }
    .secWorks .boxTabList .tab:nth-child(n+3){
        margin-top: 0;
    }
    .secWorks .boxTabList .tab:nth-child(n+6){
        margin-top: 0.3rem;
    }
    .secWorks .boxVoiceTit{
        margin-top: 1.8rem;
    }
    .secWorks .txtVoiceNum{
        width: 5.2rem;
        padding-bottom: 1.1rem;
        position: relative;
    }
    .secWorks .txtVoiceNum::after{
        content: "";
        width: 2rem;
        height: 0.2rem;
        background: var(--keyColor);
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
    }
    .secWorks .boxRightTxt{
        margin-left: 1.6rem;
        width: calc(100% - 5.2rem - 1.6rem);
    }
    .secWorks .txVoiceTit{
        font-size: var(--spFontSize16);
        line-height: var(--spLineHeight16_24);
        letter-spacing: var(--spLetterSpacing16_100);
    }
    .secWorks .txtVoiceTitSub{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_20);
        letter-spacing: var(--spLetterSpacing13_100);
        margin-top: 0.5rem;
    }
    .secWorks .txtVoiceAbout{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_21);
        letter-spacing: var(--spLetterSpacing0);
        margin-top: 1.1rem;
    }
}

/* secReason */
.secReason{
    margin-top: 12.2rem;
}
.secReason .txtTit{
    font-size: var(--pcFontSize24);
    letter-spacing: var(--pcLetterSpacing24_100);
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.secReason .txtBottom{
    font-size: var(--pcFontSize32);
    letter-spacing: var(--pcLetterSpacing32_100);
    margin-top: 0.8rem;
}
.secReason .txtNum{
    font-size: var(--pcFontSize48);
    color: var(--keyColor);
    padding-right: 0.8rem;
}
.secReason .boxList{
    display: flex;
    margin-top: 7.6rem;
}
.secReason .item{
    width: calc((100% - 8rem) / 3);
    margin-right: 4rem;
    position: relative;
}
.secReason .item:last-child{
    margin-right: 0;
}
.secReason .txtReasonNum{
    width: 6.4rem;
    position: absolute;
    top: -2.4rem;
    left: 50%;
    transform: translateX(-50%);
}
.secReason .boxTxt{
    height: auto;
    position: relative;
    color: var(--ColorWhite);
    background: var(--textColor);
    padding: 3rem 3rem 2.2rem;
    min-height: 29.6rem;
}
.secReason .imgTxtReason{
    width: 10.6rem;
    position: absolute;
    top: 0.7rem;
    left: -1rem;
}
.secReason .txtReasonTit{
    font-size: var(--pcFontSize20);
    letter-spacing: var(--pcLetterSpacing20_100);
    text-align: center;
}
.secReason .txtReasonAbout{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_29);
    letter-spacing: var(--pcLetterSpacing14_50);
    margin-top: 2.1rem;
}
@media only screen and (max-width:1215px){
    .secReason{
        margin-top: 5.1rem;
    }
    .secReason .txtTit{
        font-size: var(--spFontSize16);
        letter-spacing: var(--spLetterSpacing16_100);
    }
    .secReason .txtBottom{
        font-size: var(--spFontSize18);
        letter-spacing: var(--spLetterSpacing18_100);
        margin-top: 0.4rem;
    }
    .secReason .txtNum{
        font-size: var(--spFontSize30);
        padding-right: 0.3rem;
    }
    .secReason .boxList{
        flex-direction: column;
        margin-top: 4.7rem;
    }
    .secReason .item{
        width: 100%;
        margin-right: 0;
        margin-bottom: 3.7rem;
    }
    .secReason .item:last-child{
        margin-bottom: 0;
    }
    .secReason .txtReasonNum{
        width: 4.7rem;
        top: -2rem;
    }
    .secReason .boxTxt{
        padding: 2rem 1.5rem 1.5rem;
        min-height: auto;
    }
    .secReason .imgTxtReason{
        width: 7.8rem;
        top: -0.8rem;
        left: 1.3rem;
    }
    .secReason .txtReasonTit{
        font-size: var(--spFontSize16);
        letter-spacing: var(--spLetterSpacing16_100);
    }
    .secReason .txtReasonAbout{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_21);
        letter-spacing: var(--spLetterSpacing12_50);
        margin-top: 1.3rem;
    }
}

/* secCoordination */
.secCoordination{
    margin-top: 12rem;
    padding: 12rem 0 12rem;
    background: var(--bgGrayColor);
    text-align: center;
}
.secCoordination .txtTit{
    font-size: var(--pcFontSize32);
    letter-spacing: var(--pcLetterSpacing32_100);
}
.secCoordination .txtAbout{
    font-size: var(--pcFontSize24);
    letter-spacing: var(--pcLetterSpacing24_100);
    margin-top: 4.1rem;
    display: flex;
    justify-content: center;
}
.secCoordination .txtAbout2{
    margin-top: 2.6rem;
}
.secCoordination .txtColor{
    font-size: var(--pcFontSize48);
    letter-spacing: var(--pcLetterSpacing48_100);
    color: var(--keyColor);
    padding: 0 0.8rem 0;
    margin-top: -1.8rem;
}
.secCoordination .boxImg{
    margin-top: 5.2rem;
}
@media only screen and (max-width:1215px){
    .secCoordination{
        margin-top: 5rem;
        padding: 5rem 0 5rem;
    }
    .secCoordination .txtTit{
        font-size: var(--spFontSize18);
        letter-spacing: var(--spLetterSpacing18_100);
    }
    .secCoordination .txtAbout{
        font-size: var(--spFontSize16);
        letter-spacing: var(--spLetterSpacing16_100);
        margin-top: 2.1rem;
    }
    .secCoordination .txtAbout2{
        margin-top: 0.9rem;
    }
    .secCoordination .txtColor{
        font-size: var(--spFontSize24);
        letter-spacing: var(--spLetterSpacing24_100);
        padding: 0 0.3rem 0;
        margin-top: -0.5rem;
    }
    .secCoordination .boxImg{
        margin-top: 2.5rem;
    }
}

/* secSpec */
.secSpec{
    padding: 11rem 0 12rem;
}
.secSpec.lazyloaded{
    background: url(../img/index/bgSpec.png);
}
.secSpec .txtTit{
    font-size: var(--pcFontSize32);
    line-height: var(--pcLineHeight32_50);
    letter-spacing: var(--pcLetterSpacing32_100);
    text-align: center;
}
.secSpec .boxList{
    display: flex;
    flex-wrap: wrap;
    margin-top: 5rem;
}
.secSpec .item{
    width: calc((100% - 3.9rem) / 2);
    margin-right: 3.9rem;
    border: 0.1rem solid var(--textColor);
    background: var(--ColorWhite);
    display: flex;
    padding: 3.1rem 3.1rem 2.9rem;
}
.secSpec .item:nth-child(2n){
    margin-right: 0;
}
.secSpec .item:nth-child(n+3){
    margin-top: 3.9rem;
}
.secSpec .boxTxt{
    width: calc(100% - 28rem);
    margin-right: 3rem;
    padding-top: 1.5rem;
}
.secSpec .txtSpecTit{
    font-size: var(--pcFontSize20);
    letter-spacing: var(--pcLetterSpacing20_100);
}
.secSpec .txtAbout{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_29);
    margin-top: 1rem;
}
@media only screen and (max-width:1215px){
    .secSpec{
        padding: 4.4rem 0 5rem;
    }
    .secSpec .txtTit{
        font-size: var(--spFontSize18);
        line-height: var(--spLineHeight18_30);
        letter-spacing: var(--spLetterSpacing18_100);
    }
    .secSpec .boxList{
        flex-direction: column;
        margin-top: 2.2rem;
    }
    .secSpec .item{
        width: 100%;
        margin-right: 0;
        flex-direction: row-reverse;
        padding: 2rem 1.6rem 1.3rem;
    }
    .secSpec .item:nth-child(n+2){
        margin-top: 0;
        border-top: none;
    }
    .secSpec .boxImg{
        width: 12.5rem;
    }
    .secSpec .boxTxt{
        width: calc(100% - 14.1rem);
        margin-right: 0;
        margin-left: 1.6rem;
        padding-top: 0;
        margin-top: -0.3rem;
    }
    .secSpec .txtSpecTit{
        font-size: var(--spFontSize14);
        line-height: var(--spLineHeight14_23);
        letter-spacing: var(--spLetterSpacing14_100);
    }
    .secSpec .txtAbout{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_21);
        margin-top: 0.5rem;
    }
}

/* secOption */
.secOption{
    background: var(--bgGrayColor);
    padding: 12rem 0 12rem;
}
.secOption .txtTit{
    font-size: var(--pcFontSize24);
    letter-spacing: var(--pcLetterSpacing24_100);
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.secOption .txtBig{
    font-size: var(--pcFontSize32);
    letter-spacing: var(--pcLetterSpacing32_100);
    margin-top: 1.5rem;
}
.secOption .txtAbout{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_29);
    letter-spacing: var(--pcLetterSpacing14_50);
    text-align: center;
    margin-top: 2rem;
}
.secOption .boxList{
    display: flex;
    margin-top: 5.1rem;
}
.secOption .boxList .item{
    width: calc((100% - 8rem) / 3);
    margin-right: 4rem;
}
.secOption .boxList .item:last-child{
    margin-right: 0;
}
@media only screen and (max-width:1215px){
    .secOption{
        padding: 5.1rem 0 5rem;
    }
    .secOption .txtTit{
        font-size: var(--spFontSize16);
        letter-spacing: var(--spLetterSpacing16_100);
    }
    .secOption .txtBig{
        font-size: var(--spFontSize18);
        letter-spacing: var(--spLetterSpacing18_100);
        margin-top: 0.9rem;
    }
    .secOption .txtAbout{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_21);
        letter-spacing: var(--spLetterSpacing12_50);
        margin-top: 1.5rem;
    }
    .secOption .boxList{
        flex-direction: column;
        margin-top: 2.4rem;
    }
    .secOption .boxList .item{
        width: 100%;
        margin-right: 0;
        margin-bottom: 2rem;
    }
    .secOption .boxList .item:last-child{
        margin-bottom: 0;
    }
}

/* secAward */
.secAward{
    background: var(--bgGrayColor);
    margin-top: 12rem;
    padding: 4.9rem 1rem 5rem;
}
.secAward .boxTop{
    display: flex;
    justify-content: center;
    align-items: center;
}
.secAward .boxTxt{
    margin-left: 4.2rem;
}
.secAward .txtTit{
    font-size: var(--pcFontSize32);
    letter-spacing: var(--pcLetterSpacing32_100);
    color: var(--ColorGreen);
}
.secAward .txtBottom{
    font-size: var(--pcFontSize20);
    letter-spacing: var(--pcLetterSpacing20_100);
    margin-top: 1.6rem;
}
.secAward .txtMin{
    font-size: var(--pcFontSize12);
}
.secAward .txtSub{
    font-size: var(--pcFontSize12);
    letter-spacing: var(--pcLetterSpacing12_100);
    margin-top: 1.2rem;
}
.secAward .boxList{
    display: flex;
    justify-content: center;
    margin-top: 3.1rem;
}
.secAward .item{
    width: 36rem;
    padding: 3.3rem 0 2.9rem;
    background: var(--ColorGreen);
    color: var(--ColorWhite);
    margin-right: 3rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
}
.secAward .item:last-child{
    margin-right: 0;
}
.secAward .item .txtItemTop{
    font-size: var(--pcFontSize18);
    letter-spacing: var(--pcLetterSpacing18_100);
}
.secAward .item .txtItemBottom{
    font-size: var(--pcFontSize26);
    letter-spacing: var(--pcLetterSpacing26_100);
    margin-top: 1.4rem;
}
.secAward .item .txtItemBottomMin{
    font-size: var(--pcFontSize12);
    position: absolute;
    bottom: 0.8rem;
    left: 50%;
    transform: translateX(-50%);
}
@media only screen and (max-width:1215px){
    .secAward{
        margin-top: 5rem;
        padding: 3rem 1.5rem 3rem;
    }
    .secAward .boxImg{
        width: 14.5rem;
        margin: 0 auto;
    }
    .secAward .boxTop{
        flex-direction: column;
    }
    .secAward .boxTxt{
        margin-left: 0;
        margin-top: 1.5rem;
        text-align: center;
    }
    .secAward .txtTit{
        font-size: var(--spFontSize24);
        line-height: var(--spLineHeight24_35);
        letter-spacing: var(--spLetterSpacing24_100);
    }
    .secAward .txtBottom{
        font-size: var(--spFontSize14);
        line-height: var(--spLineHeight14_24);
        letter-spacing: var(--spLetterSpacing14_100);
        margin-top: 0.8rem;
    }
    .secAward .txtMin{
        font-size: var(--spFontSize12);
    }
    .secAward .txtSub{
        font-size: var(--spFontSize12);
        letter-spacing: var(--spLetterSpacing12_50);
        margin-top: 0.4rem;
    }
    .secAward .boxList{
        flex-direction: column;
        margin-top: 2rem;
    }
    .secAward .item{
        width: 100%;
        padding: 2.5rem 0 2.2rem;
        margin-right: 0;
        margin-bottom: 1rem;
    }
    .secAward .item:last-child{
        margin-bottom: 0;
    }
    .secAward .item .txtItemTop{
        font-size: var(--spFontSize14);
        letter-spacing: var(--spLetterSpacing14_100);
    }
    .secAward .item .txtItemBottom{
        font-size: var(--spFontSize18);
        letter-spacing: var(--spLetterSpacing18_100);
        margin-top: 1.2rem;
    }
    .secAward .item .txtItemBottomMin{
        font-size: var(--spFontSize10);
        bottom: 0.5rem;
    }
}

/* secModelhouse */
.secModelhouse{
    margin-top: 12rem;
}
.secModelhouse .boxFlex{
    display: flex;
}
.secModelhouse .boxTxt{
    margin-left: 5.9rem;
    padding-top: 2.2rem;
}
.secModelhouse .txtTit{
    font-size: var(--pcFontSize20);
    letter-spacing: var(--pcLetterSpacing20_100);
}
.secModelhouse .txtEng{
    font-size: var(--pcFontSize48);
    letter-spacing: var(--pcLetterSpacing48_100);
    margin-top: 1.5rem;
}
.secModelhouse .txtBottom{
    font-size: var(--pcFontSize14);
    letter-spacing: var(--pcLetterSpacing14_50);
    margin-top: 1.5rem;
}
.secModelhouse .txtInformation{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_29);
    letter-spacing: var(--pcLetterSpacing14_50);
    margin-top: 3.4rem;
}
.secModelhouse .txtMap{
    color: var(--textColor);
    text-decoration: none
}
.secModelhouse .boxMap{
    margin-top: 0;
}
.secModelhouse .btnReserve{
    width: 38rem;
    height: 8rem;
    background: var(--btnReservationColor);
    font-size: var(--pcFontSize24);
    letter-spacing: var(--pcLetterSpacing24_100);
    color: var(--ColorWhite);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 5.8rem auto 0;
}
@media only screen and (max-width:1215px){
    .secModelhouse{
        margin-top: 5rem;
    }
    .secModelhouse .boxFlex{
        flex-direction: column;
    }
    .secModelhouse .boxTxt{
        margin-left: 0;
        padding-top: 0;
        text-align: center;
    }
    .secModelhouse .txtTit{
        font-size: var(--spFontSize14);
        letter-spacing: var(--spLetterSpacing14_100);
    }
    .secModelhouse .txtEng{
        font-size: var(--spFontSize21);
        letter-spacing: var(--spLetterSpacing21_100);
        margin-top: 0.9rem;
    }
    .secModelhouse .txtBottom{
        font-size: var(--spFontSize12);
        letter-spacing: var(--spLetterSpacing12_50);
        margin-top: 1.1rem;
    }
    .secModelhouse .boxImg{
        margin-top: 2.9rem;
    }
    .secModelhouse .txtInformation{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_21);
        letter-spacing: var(--spLetterSpacing12_50);
        text-align: left;
        margin-top: 1.7rem;
    }
    .secModelhouse .txtMap{
        color: var(--textColor);
        text-decoration: none
    }
    .secModelhouse .boxMap{
        margin: 0.4rem auto 0;
        width: 83.48%;
    }
    .secModelhouse .btnReserve{
        width: 100%;
        max-width: 34.5rem;
        height: 6.5rem;
        font-size: var(--spFontSize18);
        letter-spacing: var(--spLetterSpacing18_100);
        margin: 1rem auto 0;
    }
}

/* secPanorama */
.secPanorama{
    margin-top: 12rem;
}
.secPanorama .txtTit{
    font-size: var(--pcFontSize32);
    letter-spacing: var(--pcLetterSpacing32_100);
    text-align: center;
}
.secPanorama .boxPanorama{
    position: relative;
    width: 100rem;
    height: 0;
    padding-top: 40.625%;
    margin: 5.5rem auto 0;
}
.secPanorama .boxPanorama iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
@media only screen and (max-width:1215px){
    .secPanorama{
        margin-top: 5.1rem;
    }
    .secPanorama .txtTit{
        font-size: var(--spFontSize18);
        letter-spacing: var(--spLetterSpacing18_100);
    }
    .secPanorama .boxPanorama{
        width: 100%;
        padding-top: 100%;
        margin: 2.8rem auto 0;
    }
}

/* secReservation */
.secReservation{
    padding: 12rem 0 0;
    text-align: center;
}
.secReservation{
    padding: 6.5rem 0 0;
}
.secReservation .boxCard{
    display: block;
    position: relative;
    width: 80rem;
    max-width: 100%;
    margin: 0 auto;
    padding: 6rem;
    font-weight: bold;
    background: var(--btnReservationColor);
}
.secReservation .boxCard .icoCard{
    position: absolute;
    top: 4.5rem;
    right: 5.5rem;
    width: 9.4rem;
    height: 7.7rem;
}
.secReservation .boxCard .txt01{
    font-size: var(--pcFontSize30);
    letter-spacing: var(--pcLetterSpacing30_50);
    color: var(--ColorWhite);
}
.secReservation .boxCard .txt02{
    margin: 1em 0 0;
    font-size: var(--pcFontSize20);
    letter-spacing: var(--pcLetterSpacing20_50);
    color: var(--ColorWhite);
}
.secReservation .boxNote{
    width: 100rem;
    margin: 7rem auto 0;
    font-size: var(--pcFontSize15);
    line-height: var(--pcLineHeight15_32);
    letter-spacing: var(--pcLetterSpacing15_90);
    text-align: left;
}
.secReservation .txtLink{
    color: var(--textLinkColor);
    text-decoration: underline;
    text-decoration-color: var(--textLinkColor);
    text-underline-offset: 0.3rem;
}
@media only screen and (max-width:1215px){
    .secReservation{
        padding: 3rem 0 0;
    }
    .secReservation .boxCard{
        width: 100%;
        padding: 2.6rem 1rem 2.8rem;
    }
    .secReservation .boxCard .icoCard{
        top: 15%;
        left: 84%;
        width: 3.9rem;
        height: auto;
    }
    .secReservation .boxCard .txt01{
        font-size: var(--spFontSize14);
    }
    .secReservation .boxCard .txt02{
        font-size: var(--spFontSize11);
        margin: 1rem 0 0;
    }
    .secReservation .boxNote{
        width: 100%;
        margin: 1.5rem auto 0;
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_18);
        letter-spacing: var(--spLetterSpacing11_90);
    }
}

.secFlow_form{
    text-align: left;
}

.secFlow_form .txtRed{
    color: #dd3e49;
}