.subtop, .subtop *{ box-sizing:border-box; }
*{ box-sizing:border-box; }
.subtop{ position:relative; z-index:1; overflow:hidden; background-color:#333; }
#st_bdo{ position:absolute; z-index:1; top:0; bottom:0; left:0; right:0; }

.st_box{ position:relative; z-index:1; height: 100vh;}
.st_txt{position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); text-align:center; word-break:keep-all; width: 690px; height: 332px; display: flex; flex-direction: column; align-items: center; justify-content: center; background-color: #fff; border-radius: 0 180px; color: #241d14;}
.st_txt > h2{ font-size:45px; font-weight:700; margin-bottom:1rem;}
.st_txt > p{ font-size:15px; font-weight:400; line-height:1.8; }

.st_txt > h2.ani{transition-duration: 1s; transition-property: opacity, filter, -webkit-filter; transition-timing-function: cubic-bezier(.165,.84,.44,1); will-change: auto; opacity: 0; filter: blur(1rem) brightness(1.3);}
.st_txt > h2.ani.act{filter: blur(0) brightness(1); opacity: 1;}
.st_txt > p.ani{transition-duration: 1s; transition-delay: .3s; transition-property: opacity, filter, -webkit-filter; transition-timing-function: cubic-bezier(.165,.84,.44,1); will-change: auto; opacity: 0; filter: blur(1rem) brightness(1.3);}
.st_txt > p.ani.act{filter: blur(0) brightness(1); opacity: 1;}

.scroll{width: 100%; text-align: center; padding: 0 15px; position: absolute; left: 0; bottom: 1rem;}
.scroll > p{font-size: 16px; color: #fff;}
.sr-line{width: 1px; height: 100px; background-color: rgba(255, 255, 255, 0.2); margin: 0 auto 10px; position: relative; overflow: hidden;}
.sr-line::after{content: ""; width: 1px; height: 100%; position: absolute; top: -100%; left: 0; background-color: #fff; animation: line 5s infinite ease-in-out;}

@keyframes line{
    0%{top: -100%;}
    100%{top: 100%;}
}

article{ padding:4rem 0; }
.art_con{ width:100%; margin:0 auto; position: relative;}
.art_con_full{ width:100%; box-sizing: border-box;}
.article-full{padding: 0;}

.document_popup_menu{display: none;}



@media(max-width:1699px){
	.art_con{padding: 0 3rem;}
}
@media(max-width:1199px){
	.st_box{ padding:0 15px; display: flex; align-items: center;}
	.art_con{padding: 0 15px;}
    .st_txt{width: 100%; height: auto; padding: 2rem 15px; position: relative; top: auto; left: auto; transform: translate(0,0); border-radius: 0 40px;}
    .st_txt > h2{font-size: 22px;}
    .st_txt > p{font-size: 14px;}

    .scroll{bottom: calc(82px + 1rem);}
    .sr-line{height: 50px;}
}
