section{ overflow:hidden; background-color:#f7f7f7; }
section, section *{ box-sizing:border-box; }
section > .fp-tableCell > .sc_con{ width:100%; margin:0 auto; }

#fp-nav.right{ right:40px; top:auto!important; bottom:40px; }
#fp-nav ul li{ margin:7px 0; }

@media(max-width:991px){
    #fp-nav.right{ right:15px; bottom:15px; }
}

/* sc01 */
#sc01 > .fp-tableCell{ position:relative; z-index:1; }
#sc01 .sc_con{ min-height:100dvh; }
#sc01Sli{ position:absolute; z-index:1; top:0; bottom:0; left:-100%; right:-100%;  }
#sc01Sli > .swiper-wrapper{ transition-timing-function:linear; }
.sc01Sli{ position:relative; z-index:1; background-color:#333; }
.sc01Sli > .sc01_si{ position:absolute; top:0; left:0; width:130%; height:100%; transform:translate(-30%, 0); background-position:center; background-size:cover; background-repeat:no-repeat; }
.sc01Sli > .sc01_si{ -webkit-mask-image:linear-gradient(to right, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 23%); }
.sc01Sli.sli01 > .sc01_si{ background-image:url(../img/main/01-03.jpg); }
.sc01Sli.sli02 > .sc01_si{ background-image:url(../img/main/01-04.jpg); }
.sc01Sli.sli03 > .sc01_si{ background-image:url(../img/main/01-05.jpg); }
.sc01Sli.sli04 > .sc01_si{ background-image:url(../img/main/01-06.jpg); }

.sc01_fr{ position:relative; z-index:1; width:100%; height:100%; background-color:rgba(247,247,247,.6); padding:200px 40px 100px; display:flex; align-items:center; }
.sc01_bi{ content:''; position:absolute; z-index:1; top:50%; left:50%; width:min(400px, 70%); transform:translate(-50%, -53%); }
.sc01_tt{ position:relative; z-index:2; max-width:800px; width:100%; margin:0 auto; text-align:center; word-break:keep-all; }
.sc01_tt > h4{ font-family:'mb', serif; font-size:18px; font-weight:300; color:#333; line-height:1.3em; margin:0 0 20px; }
.sc01_tt > h2{ margin:0 auto 40px; }
.sc01_tt > h2 > img{ max-width:450px; width:90%; margin:0 auto; }
.sc01_tt > p{ font-family:'pt', sans-serif; font-size:16px; font-weight:300; color:#333; line-height:1.7em; max-width:400px; width:100%; margin:0 auto 20px; }
.sc01_tt > button{ display:inline-flex; align-items:center; border:2px solid #333; border-radius:50px; background-color:transparent; padding:13px; font-family:'pt', sans-serif; font-size:14px; font-weight:300; color:transparent; line-height:1em; cursor:pointer; }
.sc01_tt > button#opened{ color:#333; }
.sc01_tt > button > i{ font-size:22px; color:#333; }
.sc01_tt > button > span{ padding:0; width:0; white-space:nowrap; overflow:hidden; transition:0.4s all; }
.sc01_tt > button:hover, .sc01_tt > button#opened:hover{ border:2px solid #98846c; background-color:#98846c; color:#fff; }
.sc01_tt > button:hover > i{ color:#fff; }
.sc01_tt > button:not(#opened):hover > span, .sc01_tt > button#opened > span{ padding:0 10px; width:107px; }

.sc01_bi{ opacity:0; transition:0s opacity 1s; }
.sc01_tt > h4{ transform:translate(0, 30px); opacity:0; transition:0s opacity 1s, 0s transform 1s; }
.sc01_tt > h2{ transform:translate(0, 30px); opacity:0; transition:0s opacity 1s, 0s transform 1s; }
.sc01_tt > p{ transform:translate(0, 30px); opacity:0; transition:0s opacity 1s, 0s transform 1s; }
.sc01_tt > button{ transform:translate(0, 30px); opacity:0; transition:0s opacity 1s, 0s transform 1s, 0.5s border, 0.5s color, 0.5s background-color; }

#sc01.active .sc01_bi{ opacity:0.05; transition:1s opacity 0.8s; }
#sc01.active .sc01_tt > h4{ transform:translate(0, 0); opacity:1; transition:1s opacity 1.0s, 1s transform 1.0s; }
#sc01.active .sc01_tt > h2{ transform:translate(0, 0); opacity:1; transition:1s opacity 1.2s, 1s transform 1.2s; }
#sc01.active .sc01_tt > p{ transform:translate(0, 0); opacity:1; transition:1s opacity 1.4s, 1s transform 1.4s; }
#sc01.active .sc01_tt > button{ transform:translate(0, 0); opacity:1; transition:1s opacity 1.6s, 1s transform 1.6s, 0.5s border, 0.5s color, 0.5s background-color; }

.sc01_bw{ position:relative; z-index:1; width:100%; height:100%; overflow:hidden; }
.sc01_bdo{ position:absolute; z-index:1; top:50%; left:50%; min-width:100%; width:auto; max-width:177.7777777777778dvh; min-height:100%; height:auto; max-height:56.25vw; transform:translate(-50%, -50%); }
.sc01_bdo.mo{ display:none; }

@media(max-width:991px){
    .sc01_fr{ padding:145px 15px 80px; }
}
@media(max-width:768px){
    .sc01_bdo{ max-width:56.25dvh; max-height:177.7777777777778vw; }
    .sc01_bdo.pc{ display:none; }
    .sc01_bdo.mo{ display:block; }
}
@media(max-width:600px){
	#sc01Sli{ left:-150%; right:-150%; }
}




#sc02 .sc_con{ display:flex; min-height:100dvh; padding:150px 40px 100px; }
.sc02_pw{ display:flex; flex-flow:row wrap; width:100%; }
.sc02_pt{ display:flex; width:50%; }

#sc02Sli1, #sc02Sli2{ width:100%; }
.sc02Sli1, .sc02Sli2{ display:flex; background-color:#ededed; overflow:hidden; }
.sc02Sli2{ align-items:center; }

.sc02_si{ width:100%; background-position:center; background-size:cover; background-repeat:no-repeat; }
.sc02_sx{ width:100%; padding:80px 40px; word-break:keep-all; }
.sc02_sx > h3{ font-family:'pt',sans-serif; font-size:40px; font-weight:700; color:#000; line-height:1em; margin-bottom:10px; }
.sc02_sx > h4{ font-family:'pt',sans-serif; font-size:24px; font-weight:400; color:#333; line-height:1em; }
.sc02_sx > hr{ margin:30px 0; }
.sc02_sx > .po{ margin-top:30px; }
.sc02_sx > .po > li{ display:flex; gap:10px; font-family:'pt',sans-serif; font-size:16px; font-weight:400; color:#333; line-height:1.5em; }
.sc02_sx > .po > li:not(:last-child){ margin-bottom:10px; }
.sc02_sx > .po > li > b{ color:#98846c; white-space:nowrap; }
.sc02_sx > .de{ margin-top:30px; }
.sc02_sx > .de > li{ position:relative; z-index:1; padding-left:15px; font-family:'pt',sans-serif; font-size:16px; font-weight:400; color:#333; line-height:1.5em; }
.sc02_sx > .de > li:before{ content:''; position:absolute; top:9px; left:0; width:5px; height:5px; border-radius:100%; background-color:#98846c; }
.sc02_sx > .de > li:not(:last-child){ margin-bottom:10px; }

.sc02_ctr{ position:absolute; z-index:60; top:50%; left:20px; transform:translate(0, -50%); display:flex; flex-direction:column; gap:10px; text-align:center; }
.sc02_ctr > i{ font-size:20px; color:#333; cursor:pointer; }
.sc02_ctr > #sc02_pg{ display:flex; flex-direction:column; align-items:center; gap:10px; }
.sc02_ctr > #sc02_pg > .pg_num{ font-size:16px; font-weight:400; color:#333; line-height:1em; }
.sc02_ctr > #sc02_pg > .pg_bar{ width:50%; height:1px; background-color:#333; }

@media(max-width:991px){
    #sc02 .sc_con{ padding:120px 15px 0; }
    
    .sc02_pt{ width:100%; }
    .sc02Sli2{ align-items:flex-start; }
    .sc02_si{ padding-top:max(60%, 450px); }
    .sc02_sx{ padding:60px 30px; }
    
    .sc02_ctr{ top:auto; bottom:20px; left:50%; transform:translate(-50%, 0); flex-direction:row; }
    .sc02_ctr > #sc02_pr, .sc02_ctr > #sc02_nx{ transform:rotate(-90deg); }
    .sc02_ctr > #sc02_pg{ flex-direction:row; }
    .sc02_ctr > #sc02_pg > .pg_bar{ width:1px; height:50%; }
}
@media(max-width:768px){
    #sc02 .sc_con{ padding:60px 15px 0; }

    .sc02_sx > h3{ font-size:32px; }
    .sc02_sx > h4{ font-size:16px; }
    .sc02_sx > hr{ margin:20px 0; }
    .sc02_sx > .po > li{ font-size:14px; }
}



#sc03 .sc_con{ display:flex; flex-direction:column; justify-content:center; align-items:center; min-height:100dvh; padding:150px 40px 100px; }
.sc03_tt{  text-align:center; margin:0 auto 60px; }
.sc03_tt > h3{ font-family:'pt',sans-serif; font-size:50px; font-weight:700; color:#333; line-height:1em; margin-bottom:10px; }
.sc03_tt > p{ font-family:'pt',sans-serif; font-size:16px; font-weight:300; color:#333; line-height:1.5em; }
.sc03_wd{ width:min(1400px, 100%); margin:0 auto; position:relative; z-index:1; overflow:hidden; }
.sc03_wd > a{ position:absolute; z-index:99; top:0; bottom:0; left:0; right:0; display:block; position:relative; z-index:99999; }
#iFrameResizer1{ display:none; }

@media(max-width:991px){
    #sc03 .sc_con{ padding:120px 15px 80px; }
    #iFrameResizer0{ display:none; }
    #iFrameResizer1{ display:block; }
}
@media(max-width:768px){
    #sc03 .sc_con{ padding:60px 15px; }

    .sc03_tt{ margin:0 auto 30px; }
    .sc03_tt > h3{ font-size:40px; }
    .sc03_tt > p{ font-size:14px; }
}



/* sc04 */
#sc04{ background-image:url(../img/main/04-00.jpg); background-position:center; background-size:cover; background-repeat:no-repeat; position:relative; z-index:1; }

.sc04_fr{ position:relative; z-index:1; width:100%; height:100%; background-color:rgba(247,247,247,0.75); backdrop-filter:grayscale(0.5) sepia(0.5); padding:200px 40px 100px; display:flex; align-items:center; }
.sc04_tt{ position:relative; z-index:2; max-width:800px; width:100%; margin:0 auto; text-align:center; word-break:keep-all; }
.sc04_tt > h2{ font-family:'pt', sans-serif; font-size:clamp(59px, 13.42105263157895vw, 102px); font-weight:100; color:#333; line-height:0.73em; margin:0 auto 40px; }
.sc04_tt > p{ font-family:'pt', sans-serif; font-size:16px; font-weight:300; color:#333; line-height:1.7em; max-width:400px; width:100%; margin:0 auto 20px; }
.sc04_tt > button{ display:inline-flex; align-items:center; border:2px solid #333; border-radius:50px; background-color:transparent; padding:13px; font-family:'pt', sans-serif; font-size:14px; font-weight:300; color:transparent; line-height:1em; cursor:pointer; }
.sc04_tt > button > i{ font-size:22px; color:#333; }
.sc04_tt > button > span{ padding:0; width:0; white-space:nowrap; overflow:hidden; transition:0.4s all; }
.sc04_tt > button:hover{ border:2px solid #98846c; background-color:#98846c; color:#fff; }
.sc04_tt > button:hover > i{ color:#fff; }
.sc04_tt > button:hover > span{ padding:0 10px; width:107px; }

.sc04_tt > button#opened{ color:#333; }
.sc04_tt > button > i{ font-size:22px; color:#333; }
.sc04_tt > button > span{ padding:0; width:0; white-space:nowrap; overflow:hidden; transition:0.4s all; }
.sc04_tt > button:hover, .sc04_tt > button#opened:hover{ border:2px solid #98846c; background-color:#98846c; color:#fff; }
.sc04_tt > button:hover > i{ color:#fff; }
.sc04_tt > button:not(#opened):hover > span, .sc04_tt > button#opened > span{ padding:0 10px; width:107px; }

.sc04_tt > h2{ transform:translate(0, 30px); opacity:0; transition:0s opacity 1s, 0s transform 1s; }
.sc04_tt > p{ transform:translate(0, 30px); opacity:0; transition:0s opacity 1s, 0s transform 1s; }
.sc04_tt > button{ transform:translate(0, 30px); opacity:0; transition:0s opacity 1s, 0s transform 1s, 0.5s border, 0.5s color, 0.5s background-color; }

#sc04.active .sc04_tt > h2{ transform:translate(0, 0); opacity:1; transition:1s opacity 0.8s, 1s transform 0.8s; }
#sc04.active .sc04_tt > p{ transform:translate(0, 0); opacity:1; transition:1s opacity 1.0s, 1s transform 1.0s; }
#sc04.active .sc04_tt > button{ transform:translate(0, 0); opacity:1; transition:1s opacity 1.2s, 1s transform 1.2s, 0.5s border, 0.5s color, 0.5s background-color; }

@media(max-width:991px){
    .sc04_fr{ padding:145px 15px 80px; }
}



/* bdo */
.sc_bw{ position:fixed; z-index:99999999; top:0; bottom:0; left:0; right:0; background-color:rgba(0,0,0,.75); animation:0.3s bdo_fadeIn ease-out; display:flex; justify-content:center; align-items:center; }
.sc_bc{ position:absolute; z-index:1; top:10px; right:10px; width:40px; height:40px; }
.sc_bc:before{ content:''; position:absolute; z-index:1; top:50%; left:50%; width:1px; height:30px; background-color:#fff; transform:translate(-50%, -50%) rotate(45deg); }
.sc_bc:after{ content:''; position:absolute; z-index:1; top:50%; left:50%; width:1px; height:30px; background-color:#fff; transform:translate(-50%, -50%) rotate(-45deg); }
.sc_bw video{ max-width:90%; max-height:90%; }

@keyframes bdo_fadeIn{ 0%{ opacity:0; } 100%{ opacity:1; } }