/* GDPR */
.html_hidden {overflow: hidden!important;}
.sel_div {opacity: 0.75!important;}

/* CSS Document */

body {	-webkit-text-size-adjust:100%; font-family: 'Barlow', sans-serif; overflow-x: hidden; }
img {	border:0; }

/* Reset ================================================================================= */

a { text-decoration:none; transition: all 0.4s ease-out 0s; }
a:hover { text-decoration:none; }

* { margin:0; padding:0; 
-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
-moz-box-sizing: border-box;    /* Firefox, other Gecko */
box-sizing: border-box;         /* Opera/IE 8+ */}

.content-Box { max-width:1200px; margin:0 auto; text-align:left; position:relative; clear:both;}

#content { font-size: 16px; line-height:26px; color: #333333; letter-spacing: 0.05rem; padding-top: 94px;}
#content p{ margin:0 0 30px 0; font-size: 16px; line-height:26px; }
p, td, li, label { font-size: 16px;line-height:26px;  }

.photo-fit img { object-fit: cover; width: 100%; height: 100%; position: absolute; z-index: 1; left: 0; top: 0;}

.photo {line-height: 0; height: 0; padding-bottom: 40%; overflow: hidden; position: relative; z-index: 1; margin-bottom: 0px;}
.imgCenter {position: absolute; top: 0; left: 0; right: 0; bottom: 0; line-height: 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; z-index: 2;}
.imgCenter img {max-height: 100%;}

.video-box { padding-bottom: 43.1%;}

.banner { padding-bottom: 120px;}
.banner-pc { }
.banner-rwd { display: none;}
.loop {padding: 0;}
.loop .owl-dots { display: none;}
.loop .owl-item {position: relative;}
.loop .owl-nav { position: absolute; bottom:10%; left: 4%; width: 120px; z-index: 11;}
.loop .owl-prev, .loop .owl-next { position:absolute; z-index:100; top:calc(50% - 0px); background:#fff !important; width: 48px; height: 48px; border-radius: 100% !important; border: 1px solid #666666 !important;}
.loop .owl-prev { left:0px; }
.loop .owl-next { right:0px;}
.loop .owl-prev:before, .loop .owl-next:before { font-family: 'Font Awesome 5 Free';font-weight: 900 !important;font-size:70px; color: #fff; opacity: 0.7;transition: all 0.4s ease-out 0s;width: 20px; height: 20px; background-size: contain; display: block; border-width: 2px 2px 0 0; border-style: solid; border-color: #666666; position: relative;}
.loop .owl-prev:before { background-image:url(../images/left-arrow.png); content: ""; transform: rotate(-135deg); left: 18px; }
.loop .owl-next:before { background-image:url(../images/right-arrow.png); content: ""; transform: rotate(45deg); left: 8px;}
.loop .owl-prev:hover:before, .loop .owl-next:hover:before { opacity: 1;}
.loop .owl-stage-outer {z-index: 2;}
.loop .owl-dots { position: absolute; z-index: 100; bottom: 14px; width: 100%; text-align: center !important; padding: 0 50px; }
.loop .owl-dots .owl-dot span, .loop  .owl-dots .owl-dot span { background: #666666 !important; width: 13px !important; height: 13px !important; border: 0px solid #4c4c4c;}
.loop .owl-dots .owl-dot.active span, .loop  .owl-dots .owl-dot:hover span { background: #ffffff !important; }

.banner-section { display: flex; flex-direction: row; flex-wrap: nowrap; justify-content: space-between; position: relative;}
.banner-section iframe{pointer-events: none;}
.banner-data { position: absolute; z-index: 2; top:15%; left: 5%; background: rgba(82,82,82,.95); padding: 40px; width: 100%; max-width: 530px; font-size: 40px; font-weight: bold; color: #fff; line-height: 120%; min-height: 320px;}
.banner-data:after { content: ""; position: absolute; top:-25px; left: -25px; width: 100%; height: 100%; z-index: 1; border: 1px solid #ababab;}
.banner-data span { display: block; padding-bottom: 15px;}
.banner-data-info { font-weight: 300; font-size: 22px; padding-bottom: 15px; line-height: 110%;}
.btn01 a { display: inline-block; width: 92px; line-height: 40px;text-align: center; border: 1px solid #fff; font-size: 15px; color: #fff !important; position: relative; z-index: 3; font-weight: normal;}
.btn01 a:hover { color: #fff; background: #e89115; width: 100px;}
.banner-pto { width: 80%; margin: 0 0 0 auto;}

.title01 { display: flex; flex-direction: column; flex-wrap: nowrap; padding-bottom: 30px; padding-left: 5%; padding-right: 5%; position: relative; z-index: 3;}
.title01 > div:nth-of-type(1) { display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; padding-bottom: 10px;}
.title01 > div:nth-of-type(1) > div { padding-bottom: 10px; line-height: 100%;}
.title01 > div:nth-of-type(1) > div:nth-of-type(1) { font-size: 50px; font-weight: 700; padding-right: 40px; text-transform: uppercase;}
.title01 > div:nth-of-type(1) > div:nth-of-type(1) span { color: #e89115;}
.title01 > div:nth-of-type(1) > div:nth-of-type(2) { font-size: 20px; font-weight: 700;display: none;}
.title01 > div:nth-of-type(2) { width: 1px; height: 57px; background: #333333; left: 5%; position: relative;}

.owl-container {}
.owl-scrollbar {
    margin: 20px auto 0 auto;
    border-radius: 10px;
    height: 5px;
    width: 90%;
    background: #f1f1f1;
    /*border: 1px solid #e4e4e4;
    box-shadow: inset 0 0 10px -9px rgba(30, 30, 30, .4);*/
    position: relative;
}
.owl-nav { width: 85%; margin: 0 auto;}
.owl-scrollbar .owl-scroll-handle {
    height: 5px;
    width: 40px;
    /*border-radius: 50%;*/
    display: inline-block;
    background: #333;
    position: absolute;
    top: 0px;
    left: 0px;
}
.owl-scrollbar .owl-scroll-handle:hover {
    /*transform: scale(2);*/
    transition: transform .2s ease-in-out;
}
.owl-scrollbar .owl-scroll-progress {
    background: #333;
    height: 5px;
    /*border-radius: 10px;*/
    position: absolute;
    top: 0;
    left: 0;
}
.loop2 { padding-bottom: 15px;}
.loop2 .owl-nav { position: absolute; bottom:0; left: 5%; width: 120px; z-index: 11;}
.loop2 .owl-prev, .loop2 .owl-next { position:absolute; z-index:100; top:calc(50% - 0px); background:transparent !important; width: 48px; height: 48px; border-radius: 100% !important; border: 0px solid #666666 !important;}
.loop2 .owl-prev { left:0px; }
.loop2 .owl-next { right:0px;}
.loop2 .owl-prev:before, .loop2 .owl-next:before { font-family: 'Font Awesome 5 Free';color: #333; opacity: 0.7;transition: all 0.4s ease-out 0s;width: 20px; height: 20px; background-size: contain; display: block; border-width: 0; border-style: solid; border-color: #666666; position: relative; font-size: 44px; font-weight: 100 !important;}
.loop2 .owl-prev:before { content: "<"; }
.loop2 .owl-next:before { content: ">"; }

.new-pro { border: 1px solid #e4e4e4; padding: 45px 8%;transition: all 0.4s ease-out 0s; display: block; position: relative;}
.new-pro:hover { border: 2px solid #e89115; box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.2);}
.new-pro:hover .new-pro-btn { background: #e89115;}
.new-pro-pto { padding-bottom: 75%; margin-bottom: 15px;}
.new-pro-name { font-size: 16px; color: #888888; min-height: 115px; line-height: 120%; text-align:left;}
.new-pro-name span { font-size: 24px; color: #333333; display: block; font-weight: 700; padding: 10px 0 0 0;}
.new-pro-btn { position: absolute; bottom: 0px; right: 0px; width: 75px; height: 45px;transition: all 0.4s ease-out 0s; background: #111111; line-height: 45px; clip-path: polygon(0% 18px, 20px 0%, 100% 0%, 100% 100%, 0% 100%); display: flex; flex-direction: row; flex-wrap: nowrap; justify-content: center; align-items: center; transform-origin: 100% 100%;}
.new-pro-btn img { width: 30px !important;}

.new-pro-morebtn { position: relative; margin-top: 0px; margin-bottom: 100px; padding-right: 5%; padding-left: 5%;}
.align-right { text-align: right;}
.btn02 a { min-width: 280px; line-height: 55px; color: #ffffff !important;text-align: left; padding: 0 0 0 25px; font-size: 18px; display: inline-block; background: #e89115; text-transform: uppercase; position: relative;}
.btn02 a:hover { color: #fff;}
.btn02 a:hover span { right: -15px;}
.btn02 a:hover span:before, .btn02 a:hover span:after { background: #e89115;}
.btn02 a span { display: inline-block; position: absolute; right: 20%; top:55%; width: 23px;transition: all 0.4s ease-out 0s;}
.btn02 a span:before, .btn02 a span:after { content: ""; position: absolute; background: #fff;transition: all 0.4s ease-out 0s;}
.btn02 a span:before { width: 26px; height: 1px; background: #fff; left: 0; bottom: 0px;}
.btn02 a span:after { width: 1px; height: 10px; transform: rotate(135deg); right: 0; top:-9px;}

.idx-about-section { padding: 220px 0 80px 5%; position: relative; margin-bottom: 120px;}
.idx-about-section:after { content: ""; position: absolute; z-index: -1; width: 80%; height: 72%; background: #7e7e7e; left: 0; bottom: 0;}
.idx-about-pto { position: absolute; top: 0; right: 0; width: 56%;}

.title02 { display: flex; flex-direction: row; flex-wrap: nowrap; align-items: center; transform: 0 0; transform: rotate(90deg); width: 300px; position: absolute; top:125px; left: 0%;}
.title02 > div:nth-of-type(1) { font-size: 50px; font-weight: 700; padding-right: 40px; text-transform: uppercase;}
.title02 > div:nth-of-type(1) span { color: #e89115;}
.title02 > div:nth-of-type(2) { width: 57px; height: 1px; background: #fff; position: relative;}

.idx-about-content { padding-top: 80px; color: #fff; padding-left: 10%; position: relative; z-index: 2;}
.idx-about-content-top { width: 30%; padding-bottom: 30px;}
.idx-about-content-top b { font-size: 26px; font-weight: 700; padding-bottom: 25px; line-height: 120%; display: block;}
.idx-about-slogon { font-size: 3vw; font-weight: 700; padding:0 0 45px 0; line-height: 88%; display: block; position: relative; z-index: 3; width: 60%; margin: 0;}

.loop3 { padding-bottom: 30px; padding-left: 5%; padding-right: 5%;}
.loop3 .owl-nav { position: absolute; bottom:0; left: 5%; width: 120px; z-index: 11;}
.loop3 .owl-prev, .loop3 .owl-next { position:absolute; z-index:100; top:calc(50% - 0px); background:transparent !important; width: 48px; height: 48px; border-radius: 100% !important; border: 0px solid #666666 !important;}
.loop3 .owl-prev { left:0px; }
.loop3 .owl-next { right:0px;}
.loop3 .owl-prev:before, .loop3 .owl-next:before { font-family: 'Font Awesome 5 Free';color: #333; opacity: 0.7;transition: all 0.4s ease-out 0s;width: 20px; height: 20px; background-size: contain; display: block; border-width: 0; border-style: solid; border-color: #666666; position: relative; font-size: 44px; font-weight: 100 !important;}
.loop3 .owl-prev:before { content: "<"; }
.loop3 .owl-next:before { content: ">"; }

.application-pto { margin-bottom: 20px; padding-bottom: 60%;}
.application-name { font-size: 24px; font-weight: 700; text-align:center;}

.idx-video-section { position: relative; z-index: 2; padding: 80px 5% 0 5%; margin-top: -35px; display: flex; flex-direction: row; flex-wrap: wrap;}
.idx-video-section > div:nth-of-type(1) { width: 60%;}
.idx-video-section > div:nth-of-type(2) { width: 40%; padding: 65px 0 0 5%; color: #fff;}
.idx-video-section > div:nth-of-type(2) b { font-size: 26px; font-weight: 700; display: block; line-height: 120%; padding-bottom: 22px;}
.idx-video-content { height: 270px; padding-bottom: 25px;}
.idx-video-section:after { position: absolute; content: ""; z-index: -1; width: 100%; height: 532px; top: 0; left: 0; background: url("../images/idx-video-bg.jpg") no-repeat top center; background-size: cover; }

.idx-video-btn { position: absolute; right: 5%; top:500px;}
.video-container {position: relative;padding-bottom: 51.5%;padding-top: 30px;height: 0;overflow: hidden;}
.video-container iframe {position: absolute;top: 0;left: 0;width: 100%;height: 100%; border-width: 0;}

.idx-news-section { position: relative;  background: url("../images/idx-news-bg.png") no-repeat right bottom; background-size: 51%; padding: 230px 0 60px 0; margin-top: -125px;}
.idx-news-section:after { position: absolute; content: ""; z-index: -1; width: 100%; height: 490px; bottom: 0; left: 0; background: #e89115;}

.demo-section { padding-left: 5%; padding-right: 5%;}

.idx-news-content { display: flex;flex-direction: row; flex-wrap: wrap; justify-content: space-between;}
.idx-news-content > div:nth-of-type(1) { width: 30%;}
.idx-news-content > div:nth-of-type(2) { width: 60%; padding-top: 140px; color: #fff;}
.news-date { padding-bottom: 20px;}
.news-title { padding-bottom: 20px;display: block; font-weight: 700; font-size: 30px; color: #fff !important;}
.news-data { min-height: 90px; padding-bottom: 20px;}
.news-btn { display: flex;flex-direction: row; flex-wrap: nowrap; align-items: center;}
.news-btn:hover > span { transform: scale(0.7); background: #fff;}
.news-btn:hover > span:after { border-color: #e89115;}
.news-btn > div { display: inline-block; color:#fff !important; font-weight: 500; margin-right: 10px;}
.news-btn > span { display: inline-block; width: 60px; height: 60px; border: 1px solid #fff; position: relative;transition: all 0.4s ease-out 0s; border-radius: 100%;}
.news-btn > span:after { content: ""; position: absolute; width: 10px; height: 10px; border-width: 1px 1px 0 0; border-color: #fff; border-style: solid; transform:rotate(45deg); top:25px; left: 20px;transition: all 0.4s ease-out 0s;}

.loop4 .owl-dots {}
.loop4 .owl-item {position: relative; }
.loop4 .owl-nav { position: absolute; top:calc(50% - 30px); left: 0; width: 100%; z-index: 11;}
.loop4 .owl-prev, .loop4 .owl-next { position:absolute; z-index:100; top:calc(50% - 0px); /*width: 50px !important; height: 50px !important; border-radius: 100% !important; background: rgba(255,255,255,.35) !important;*/}
.loop4 .owl-prev { left:30px; }
.loop4 .owl-next { right:30px;}
.loop4 .owl-prev:before, .loop4 .owl-next:before { font-family: 'Font Awesome 5 Free';font-weight: 900 !important;font-size:70px; color: #fff; opacity: 1;transition: all 0.4s ease-out 0s;width: 48px; height: 48px; background-size: contain; display: block; border-width: 6px 6px 0 0; border-style: solid; border-color: #fff; position: relative;}
.loop4 .owl-prev:before { content: ""; transform: rotate(-135deg);  }
.loop4 .owl-next:before { content: ""; transform: rotate(45deg); }
.loop4 .owl-prev:hover, .loop4 .owl-next:hover { background: none !important;}
.loop4 .owl-prev:hover:before, .loop4 .owl-next:hover:before { opacity: 0.8;}
.loop4 .owl-stage-outer {z-index: 2;}
.loop4 .owl-dots { position: absolute; z-index: 100; bottom: 25px; width: 100%; text-align: right !important; padding: 0 0px; }
.loop4 .owl-dots .owl-dot span, .loop4  .owl-dots .owl-dot span { background: rgba(255,255,255,.3) !important; width: 14px !important; height: 14px !important; display: block; border-radius: 100% !important; margin: 0 5px;}
.loop4 .owl-dots .owl-dot.active span, .loop4  .owl-dots .owl-dot:hover span { background: rgba(255,255,255,1) !important; }

@media only screen and (max-width:  1279px) {
	#content { padding-top: 60px;}
	
    .banner { padding-bottom: 50px;}
	.banner-pc { display: none;}
	.banner-rwd { display: block;}
    .banner-section { flex-direction: column; justify-content: flex-end;}
    .banner-pto { width: 100%; }
    .banner-data { position: relative; top:auto; left:auto; padding: 10px 20px 10px 20px; max-width: 100%; font-size: 25px;min-height: inherit; text-align: center;}
    .banner-data span { padding-bottom: 5px; font-size: 20px; }
	.banner-data-info { font-size: 18px; display: none;}
    .banner-data:after { display: none;}
    .loop .owl-nav { bottom:12%; left: calc(50% - 60px); display: none;}
	.loop .owl-prev, .loop .owl-next { transform: scale(0.7);}
	.btn01 a { line-height: 30px;}
	
	.title01 > div:nth-of-type(1) > div:nth-of-type(1) { font-size: 34px; padding-right: 20px;}
	.title01 > div:nth-of-type(1) > div:nth-of-type(2) { font-size: 18px; font-weight: 400;}
	.title01 > div:nth-of-type(2) { height: 40px;}
    
	.idx-about-section { padding: 0 5% 50px 5%; margin-bottom: 50px;}
	.idx-about-section:after { width: 100%; height: 95%;}
	.title02 { transform: rotate(0deg); width: 300px; position: relative; top:auto; left: auto;}
	.title02 > div:nth-of-type(2) { background: #333;}
	.title02 > div:nth-of-type(2) { width: 40px;}
	.title02 > div:nth-of-type(1) { font-size: 34px; padding-right: 20px;}
	.idx-about-pto { position: relative; top: auto; right: auto; width: 100%;}
	.idx-about-content { padding-top: 40px; padding-left: 0; padding-bottom: 40px; }
	.idx-about-content-top { width: 100%; padding-bottom: 30px;}
	.idx-about-slogon { width: 100%; font-size: 30px;}
	
	.idx-video-section > div:nth-of-type(1) { width: 100%; order: 2;}
	.idx-video-section > div:nth-of-type(2) { width: 100%; order: 1; padding: 0px 0 0 0%; }
	.idx-video-content { height: auto;}
	.idx-video-btn { position: relative; right: auto; top:auto; order: 3; width: 100%; margin: 30px 0;}
	
}
@media only screen and (max-width: 980px) {
	.loop2 { padding: 0 5%;}
    
	.new-pro-morebtn { margin-top: 70px; margin-bottom: 40px;}
	
	.idx-news-section { padding-top: 140px; padding-bottom: 80px;}
	.idx-news-content > div:nth-of-type(1) { width: 100%; margin-bottom: 20px;}
	.idx-news-content > div:nth-of-type(1) img { max-width: 400px; margin: 0 auto;}
	.idx-news-content > div:nth-of-type(2) { width: 100%; padding-top: 0px; }
	
	.loop4 .owl-dots { text-align: center !important; bottom: -40px;}
}
@media only screen and (max-width: 768px) {
	.new-pro-btn { transform: scale(0.6);}

}
@media only screen and (max-width: 640px) {
    .loop .owl-nav { bottom:16%;}
	
}
@media only screen and (max-width: 570px) {
}

@media only screen and (max-width: 414px) {
	.btn02 a { width: 100%;}
    .loop .owl-nav { bottom:22%;}
	

}

@media only screen and (max-width: 320px) {

}