@charset 'utf-8';

main .visual{ position: relative; }
main .visual .slideBox{ height: 100vh; overflow: hidden; }
main .visual .slideBox .slick-slide{ height: 100vh; position: relative;}
main .visual .slideBox .slick-slide .bg{ }
main .visual .slideBox .slick-slide video{ position: absolute;  top: 50%;  left: 50%;  transform: translate(-50%,-50%); min-width: 100%;  min-height: 100%;}
main .visual .slideBox .slick-slide .txtBox{ position: absolute; bottom: 155px; left: 5.7291666666666664%; z-index: 5; padding-bottom: 10px;  overflow: hidden;}
main .visual .slideBox .slick-slide .txtBox h5{ color:#fff; }
main .visual .slideBox .slick-slide .txtBox h2{ color:#fff; margin: 40px auto 70px; }
main .visual .slideBox .slick-slide .txtBox button{}
main .visual .slideBox .slick-slide.slick-active h5{ animation: fadeLeft 1.3s 0.5s both; }
main .visual .slideBox .slick-slide.slick-active h2{ animation: fadeLeft 1.3s 0.7s both;  }
main .visual .slideBox .slick-slide.slick-active button{ animation: fadeLeft 1.3s 1s both;  }
main .visual .slideBox .slick-slide .dimmed{ position: absolute; top: 50%;  left: 50%;  transform: translate(-50%,-50%); width: 100%; height: 100%; background: rgba(0,0,0,0.3);}
main .visual .slideBox .slick-dots{ position: absolute;  top: 50%;  right: 5.2083333333333336%;  transform: translateY(-50%);  z-index: 50;}
main .visual .slideBox .slick-dots .dot{ font-size: 12px; color:#fff;  font-family: 'Roboto Condensed', sans-serif;}
main .visual .slideBox .slick-dots li{ position: relative; }
main .visual .slideBox .slick-dots li:not(:last-child){ margin: 0 0 60px 0;}
main .visual .slideBox .slick-dots li:after{ content:''; display:block; position: absolute;  top: 50%;  left: 50%;  transform: translate(-50%,-50%); width: 65px; height: 65px; border:1px solid #fff; border-radius:50%; opacity: 0; transition:all 0.5s; cursor:pointer; }
main .visual .slideBox .slick-dots li.slick-active:after{ opacity: 1;}

main .aboutus{ height: 105vh; background: url("/img/main/aboutus_bg.jpg") no-repeat 30% 50%; background-size:cover; position: relative; }
main .aboutus .txtBox{ position: absolute; transform:translate(-50%,-50%); top: 50%; left: 96%; width: 100%;}
main .aboutus .txtBox h2{ color:#fff; line-height: 1.5; font-weight: 500;}
main .aboutus .txtBox p{ color:#fff; line-height: 1.8; margin: 40px  auto 60px; }

main .area{ background: #000; text-align: center; padding: 225px 0 150px;}
main .area .txtBox{ color:#fff; }
main .area .txtBox .title{}
main .area .txtBox h4{ font-weight: 500; margin: 75px auto 40px;}
main .area .txtBox .txt{ line-height: 1.8;}
main .area .slideBox{ width: 100%; max-width:1690px; margin-top: 85px; cursor: none;}
main .area .slideBox .Aswiper{ width: 100%; overflow: visible;}
main .area .slideBox .Aswiper .swiper-slide{ height: 590px; position: relative; transition:all 0.5s; }
main .area .slideBox .Aswiper .swiper-slide .txt{ margin: 60px auto 0; color:#fff; line-height: 1.5; }
main .area .slideBox .Aswiper .swiper-slide button{ position: absolute; bottom: 0px; transform: translateX(-50%); left: 50%;  transition:all 0.7s; opacity: 0;}
main .area .slideBox .Aswiper .swiper-slide:hover{ box-shadow:  0 0  50px rgba(119,119,119,0.4); }
main .area .slideBox .Aswiper .swiper-slide:hover button{ bottom: 65px; opacity: 1; }

main .portfolio{ background: #000; padding-bottom: 240px;}
main .portfolio h4{ text-align: center; color:#fff; margin: 0 0 105px;}
main .portfolio .logoBox{ display:flex; justify-content:space-between; }

main .request{ overflow: hidden; position: relative; background: url("/img/main/request_bg.jpg") no-repeat 50% 50%; background-size:cover; padding: 283px 0 308px;}
main .request .txtBox{ text-align: center; color:#fff; }
main .request .txtBox h3{ margin: 75px auto 45px; }
main .request .txtBox p.info{ line-height: 1.8; margin-bottom: 75px;}
main .request .txtBox button{ margin:  0 auto;}
main .request .txtBox button.learnmore img{ margin-left: 24.5px;}


/* new 25.09.19 */
main.new * { font-family: "Noto Serif", serif; letter-spacing:0; }
main.new .aboutus .txtBox > div { margin:40px 0 60px; }
main.new .aboutus .txtBox > div p:not(:last-child) { margin:0 0 30px 0; }
main.new .office { padding:0 5.7291666666666664%; height: 105vh; background: url("/img/main/office_bg.jpg") no-repeat center center / cover; position: relative; display:flex; align-items:center; }
main.new .office .box { display:flex; gap:0 80px; width:100%; }
main.new .office .box .txtbox { width:calc(49% - 40px); }
main.new .office .box .imgbox { width:calc((100% - 49%) - 40px); }
main.new .office .box .txtbox dl { margin-bottom:60px; }
main.new .office .box .txtbox dt { color:#fff; font-weight: 500; line-height:1.3; }
main.new .office .box .txtbox dd { margin-top:40px; }
main.new .office .box .txtbox dd p:not(:last-child) { margin-bottom:30px; }
main.new .office .box .txtbox dd p { color:#fff; font-weight: 400; line-height:1.8; }
main.new .operator { padding:200px 5.7291666666666664%; background: #0D0F10; }
main.new .operator .boxWrap{ width:100%; }
main.new .operator .boxWrap h4 { color:#fff; text-align:center; }
main.new .operator .boxWrap .list { margin-top:75px; }
main.new .operator .boxWrap .list .box:not(:last-child) { margin-bottom:80px; }
main.new .operator .boxWrap .list .box { display:flex; align-items:center; gap:0 100px; }
main.new .operator .boxWrap .list .box .imgbox { position: relative; }
main.new .operator .boxWrap .list .box .imgbox strong { color:#fff; font-weight: 700; position: absolute; right:0; bottom:0; height:60px; padding:0 20px; display:inline-flex; align-items:center; justify-content:center; background: rgba(0, 0, 0, 0.66); backdrop-filter: blur(6.666666507720947px); }
main.new .operator .boxWrap .list .box .txtbox h5 { color:#fff; font-weight: 400; }
main.new .operator .boxWrap .list .box .txtbox .stit { margin-top:8px; color:#fff; font-weight: 400; line-height:1.8; }
main.new .operator .boxWrap .list .box .txtbox .txt { margin-top:40px; }
main.new .operator .boxWrap .list .box .txtbox .txt p:not(:last-child) { margin-bottom:30px; }
main.new .operator .boxWrap .list .box .txtbox .txt p { color:#fff; font-weight: 400; line-height:1.8; }
main.new .operator .boxWrap .list .box:nth-child(2n) { flex-direction: row-reverse; }
main.new .portfolio p.title { text-align: center; color:#fff; font-weight: 400; padding-top:210px; }
main.new .portfolio h4 { text-align: center; color:#fff; line-height:1.3; letter-spacing:-0.015em; margin: 75px 0 40px; }
main.new .portfolio p.txt { text-align: center; color:#fff; font-weight: 400; line-height:1.8; letter-spacing:-0.025em;  margin: 0 0 90px; }