@charset 'utf-8';
/*
 * name:top.css
 * author:sovanda nulo
*/

/* top
------------------------------------------------ */

.section { position: relative; padding: 100px 0; background: #fff; z-index: 4; }
.section--title { text-align: center; margin-bottom: 50px; }
.section--title .Jp { font-size: 15px; font-size: 1.5rem; font-weight: bold; line-height: 1.2; letter-spacing: .1em; margin-bottom: 5px; }
.section--title .En { font-family: 'Lato-Regular'; font-size: 50px; font-size: 5rem; line-height: 1.2; letter-spacing: .08em; color: #1D2088; }
.section--title:after { content: ''; display: block; margin: 10px auto 0; width: 45px; height: 15px; transition: linear 1s; background: url(../../img/share/bg-s-title.png) no-repeat; background-size: 100%; opacity: 0; }
.section--title small { font-size: 50px; font-size: 5rem; }
.section--title.inviewed-tlt:after { opacity: 1; }

/* section visual */
#visual { position: relative; overflow: hidden; z-index: 4; background: #fff; }
#visual:after { content: ''; display: block; position: absolute; left: 0; bottom: 0; width: 100%; height: 180px; background-image: linear-gradient(180deg, rgba( 0, 0, 0, 0), rgba( 0, 0, 0, .7)); }
.visual--logo { width: 520px; position: absolute; left: 50%; top: 50%; margin-top:-15px; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
.visual-slide { position: relative; z-index: -1; }
.visual-slide--image { width: 100%; height: calc(100vh - 50px); height: 100%; min-height: 430px; background-repeat: no-repeat; background-size: cover; background-position: right bottom; -webkit-transition: 0s linear; -o-transition: 0s linear; transition: 0s linear; }
.visual-slide--image.is-active { -webkit-animation: kvScale 0s linear; animation: kvScale 0s linear; overflow:hidden; }
.visual-slide .slick-active .visual-slide--image { -webkit-animation: kvScale 5s ease-out; animation: kvScale 5s ease-out; overflow:hidden; }
.visual-slide .slick-slide:nth-child(1) .visual-slide--image {background-image: url(../../img/top/visual-01.jpg); overflow:hidden; }
/*.visual-slide .slick-slide:nth-child(2) .visual-slide--image { background-image: url(../../img/top/visual-02.jpg); }
.visual-slide .slick-slide:nth-child(3) .visual-slide--image { background-image: url(../../img/top/visual-03.jpg); }*/

.visual-scroll {  }
.visual-scroll dt { font-family: 'Lato-Regular'; font-size: 16px; font-size: 1.6rem; font-weight: bold; color: #fff; letter-spacing: 0.14em; position: absolute; bottom: 55px; left: 50%; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); z-index: 1; }
.visual-scroll dd::before,
.visual-scroll dd::after { content: ''; width: 1px; display: block; position: absolute; left: 50%; bottom: 0; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); background: #fff; }
.visual-scroll dd::before { background: #1BB8CE; height: 15px; z-index: 2; -webkit-animation: scroll_bar 2s linear infinite; animation: scroll_bar 2s linear infinite; }
.visual-scroll dd::after { height: 50px; z-index: 1; }

/* section message */
#message { z-index: 4; }
.message--desc { font-size: 18px; font-size: 1.8rem; line-height: 1.66667; text-align: center; }

/* section object */
#object { background: #F6F6F6; z-index: 4; }
.object__block {  }
.object__lists { display: flex; flex-wrap: wrap; align-items: flex-start; }
.object__lists:not(:last-child) { padding-bottom: 50px; margin-bottom: 50px; border-bottom: 1px solid #E8E9E9; }
.object__lists--pic { width: 365px; }
.object__lists__desc { width: calc( 100% - 415px ); margin-left: 50px; }
.object__lists__desc dt { font-size: 30px; font-size: 3rem; font-weight: bold; line-height: 1; }
.object__lists__desc dd { margin-top: 28px; }
.object__lists__desc dd ul {  }
.object__lists__desc dd ul li { font-size: 16px; font-size: 1.6rem; line-height: 1.6875; position: relative; padding-left: 20px; }
.object__lists__desc dd ul li:before { content: ''; display: inline-block; position: absolute; left: 0; top: 8px; width: 10px; height: 10px; background: #A1D3DF; -webkit-border-radius: 50%; border-radius: 50%; }
.object__lists__desc dd ul li:not(:last-child) { margin-bottom: 15px; }

/* section business */
#business { position: relative; display: block; overflow: hidden; z-index: 3; /*background: url(../../img/top/bg-business.jpg) repeat-y top center; background-size: 1918px;*/ }
#business .wrap { z-index: 2; }
.business--desc {  }
.business__block { padding: 45px 50px 48px; background: rgba(255, 255, 255, .9); max-width: 648px; -webkit-border-radius: 10px; border-radius: 10px; -webkit-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.15); -moz-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.15); box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.15); -webkit-box-sizing: border-box; box-sizing: border-box; }
.business__block:nth-child(2n) { margin-left: auto; }
.business__block:not(:last-child) { margin-bottom: 50px; }
.business__block dt { font-size: 30px; font-size: 3rem; font-weight: bold; line-height: 1.3; margin-bottom: 25px; }
.business__block dd { font-size: 16px; font-size: 1.6rem; line-height: 1.6875; }
.business__block .bb-pic { max-width: 340px; display: block; margin: 48px auto 0; }
.business__block .bb-pic figcaption { margin-top: 10px; }

.business__title--shadow { text-shadow:0px 1px 3px white, 0 0 1em white, 0 0 0.2em white; }
/*.business__block.inview-up { -webkit-transform: translate3d(0,0,0) scale(1.0); transform: translate3d(0,0,0) scale(1.0); opacity: 1; }*/

.background { position: fixed; left: 50%; top: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 1918px; height: auto; z-index: 0; }
.background-two { display: none; left: 50%; top: 1684px; -webkit-transform: translate(-50%, 0); transform: translate(-50%, 0); }
.background-three { left: 50%; top: 3368px; -webkit-transform: translate(-50%, 0); transform: translate(-50%, 0); }
.background-arrive { position: absolute; left: 50%; top: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 100%; height: 50px; }
.background-two .background-arrive { top: 50px; -webkit-transform: translate(-50%, 0); transform: translate(-50%, 0); }
.background .oop { opacity: 0; -webkit-transition-property: opacity; transition-property: opacity; -webkit-transition-duration: 3s; transition-duration: 3s; -webkit-transition-timing-function: cubic-bezier(.215, .61, .355, 1); transition-timing-function: cubic-bezier(.215, .61, .355, 1); -webkit-transition-delay: 0s; transition-delay: 0s; }
.background .oop-02 { transition-delay: .5s; }
.background .oop-03 { transition-delay: 1s; }
.background .oop-04 { transition-delay: 1.5s; }
.background .oop-05 { transition-delay: 2s; }
.background .oop-06 { transition-delay: 2.5s; }
.background .oop-07 { transition-delay: 3s; }
.background .oop-08 { transition-delay: 3.5s; }
.background .oop-09 { transition-delay: 4s; }
.background .oop-10 { transition-delay: 4.5s; }
.background .oop-11 { transition-delay: 5s; }
.background .oop-12 { transition-delay: 5.5s; }
.background .oop-13 { transition-delay: 6s; }
.backgrounded .oop { opacity: 1; }
.background .svg-pc { opacity: 1; }
.background .svg-mb { opacity: 0; }

/* section company */
#company { background: #F6F6F6; }
.company__desc { display: block; overflow: hidden; }
.company__block:first-child { width: calc( 44.7% - 25px ); float: left; }
.company__block:last-child { width: calc( 55.3% - 25px ); float: right; }
.company__block--lists { font-size: 16px; font-size: 1.6rem; line-height: 1.6875; display: flex; flex-wrap: wrap; }
.company__block--lists:not(:last-child) { margin-bottom: 25px; }
.company__block--lists dt { font-weight: bold; color: #666666; width: 78px; }
.company__block--lists dd { position: relative; width: calc( 100% - 108px ); margin-left: 30px; }
.company__block--lists dd:before { content: ''; display: inline-block; position: absolute; left: -29.2px; top: 4px; width: 1.2px; height: 20px; background: #999999; }
.company__block--lists .bl-maps { max-width: 153px; margin-top: 15px; text-align: center; }
.company__block--lists .bl-maps a { padding: 10px 0 11px; display: block; border: 1.2px solid #707070; transition: linear .3s; -webkit-border-radius: 6px; border-radius: 6px; }
.company__block--lists .bl-maps a:before { content: ''; display: inline-block; vertical-align: -4px; margin-right: 10px; width: 11px; height: 17px; background: url(../../img/top/marker-b.png) no-repeat; background-size: 100%; transition: linear .3s; }
.company__block--lists .bl-maps a:hover { background: #000; border-color: #000; color: #fff; }
.company__block--lists .bl-maps a:hover:before { background: url(../../img/top/marker-w.png) no-repeat; background-size: 100%; }
.company__block--lists .bl-more {  }
.company__block--lists .bl-more li { position: relative; padding-left: 11px; }
.company__block--lists .bl-more li:before { content: ''; display: inline-block; position: absolute; left: 0; top: 11px; width: 5px; height: 5px; background: #333333; -webkit-border-radius: 50%; border-radius: 50%; }
.company__block--lists .bl-more li:not(:last-child) { margin-bottom: 12px; }

.company__block:last-child dt { width: 94px; }
.company__block:last-child dd { width: calc( 100% - 124px ); }
.company__block:last-child .company__block--lists:last-child dd:before { height: 100%; }


@-webkit-keyframes kvScale {
  0% {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes kvScale {
  0% {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@-webkit-keyframes scroll_bar {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-50%) translateY(-40px);
    transform: translateX(-50%) translateY(-40px);
  }
  10% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-50%) translateY(0);
    transform: translateX(-50%) translateY(0);
  }
}

@keyframes scroll_bar {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-50%) translateY(-40px);
    transform: translateX(-50%) translateY(-40px);
  }
  10% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-50%) translateY(0);
    transform: translateX(-50%) translateY(0);
  }
}


/* Responsive
------------------------------------------------ */
@media screen and (max-width: 768px) {

  .section { padding: 50px 0; }
  .section--title { margin-bottom: 28px; }
  .section--title:after { width: 36px; height: 12px; }
  .section--title .Jp { font-size: 13px; font-size: 1.3rem; margin-bottom: 5px; }
  .section--title .En { font-size: 30px; font-size: 3rem; }
  .section--title small { font-size: 30px; font-size: 3rem; }

  /* section visual */
  #visual { position: relative; }
  #visual:after { height: 150px; background-image: linear-gradient(180deg, rgba( 0, 0, 0, 0), rgba( 0, 0, 0, .7)); }
  .visual--logo { width: 70%; margin-top:-50px; }
  .visual-slide--image { background-position: center center; }

  .visual-slide .slick-slide:nth-child(1) .visual-slide--image {background-image: url(../../img/top/visual-01_sp.jpg); }
  .visual-scroll {  }
  .visual-scroll dt { font-size: 12px; font-size: 1.2rem; bottom: 55px; }

  /* section message */
  .message--desc { font-size: 15px; font-size: 1.5rem; line-height: 1.7; }

  /* section object */
  .object__lists { display: block; }
  .object__lists:not(:last-child) { padding-bottom: 40px; margin-bottom: 40px; }
  .object__lists--pic { width: 100%; }
  .object__lists__desc { width: 100%; margin: 30px 0 0; }
  .object__lists__desc dt { font-size: 17px; font-size: 1.7rem; text-align: center; }
  .object__lists__desc dd { margin-top: 18px; }
  .object__lists__desc dd ul li { font-size: 14px; font-size: 1.4rem; padding-left: 15px; }
  .object__lists__desc dd ul li:before { top: 7px; }
  .object__lists__desc dd ul li:not(:last-child) { margin-bottom: 12px; }

  /* section business */
  #business { /*background: url(../../img/top/bg-business.jpg) repeat-y top center; background-size: 1918px;*/ }
  .business__block { padding: 28px 20px 30px; max-width: 100%; width: calc( 100% - 30px ); -webkit-border-radius: 5px; border-radius: 5px; -webkit-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.15); -moz-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.15); box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.15); -webkit-box-sizing: border-box; box-sizing: border-box; }
  .business__block:nth-child(2n) { margin-left: auto; }
  .business__block:not(:last-child) { margin-bottom: 40px; }
  .business__block dt { font-size: 17px; font-size: 1.7rem; margin-bottom: 12px; }
  .business__block dd { font-size: 14px; font-size: 1.4rem; }
  .business__block .bb-pic { margin-top: 20px; }

  .background { width: 1020px; height: auto; }
  .background:after,
  .background:before { content: ''; display: block; position: absolute; width: 50%; height: 100%; top: 0; z-index: 1; }
  .background:after { right: 0; background: linear-gradient(-90deg, rgba(255,255,255,1) 50%, rgba(255,255,255,0) 100%); }
  .background:before { left: 0; background: linear-gradient(90deg, rgba(255,255,255,1) 50%, rgba(255,255,255,0) 100%) }
  .background-two { display: none; left: 50%; top: 946px; -webkit-transform: translate(-50%, 0); transform: translate(-50%, 0); }
  .background-three { display: none; left: 50%; top: 1842px; -webkit-transform: translate(-50%, 0); transform: translate(-50%, 0); }
  .background-two .background-arrive { top: 50%; -webkit-transform: translate(-50%, 50%); transform: translate(-50%, 50%); }
  .background-three .background-arrive { top: 50px; -webkit-transform: translate(-50%, 0); transform: translate(-50%, 0); }
  .background .svg-pc { opacity: 0; }
  .background .svg-mb { opacity: 1; }

  /* section company */
  #company {  }
  #company .section--title small { display: block; }
  .company__block:first-child { width: 100%; float: none; margin-bottom: 20px; }
  .company__block:last-child { width: 100%; float: none; }
  .company__block--lists { font-size: 14px; font-size: 1.4rem; }
  .company__block--lists:not(:last-child) { margin-bottom: 20px; }
  .company__block--lists dt { width: 75px; }
  .company__block--lists dd { width: calc( 100% - 90px ); margin-left: 15px; }
  .company__block--lists dd:before { left: -15.2px; top: 2.5px; width: 1.2px; }
  .company__block--lists .bl-maps { max-width: 140px; margin-top: 10px; }
  .company__block--lists .bl-maps a { padding: 9px 0 10px; -webkit-border-radius: 4px; border-radius: 4px; }
  .company__block--lists .bl-more li { padding-left: 10px; }
  .company__block--lists .bl-more li:before { top: 10px; }
  .company__block--lists .bl-more li:not(:last-child) { margin-bottom: 5px; }

  .company__block:last-child dt,.company__block:nth-child(2) dt { width: 75px; }
  .company__block:last-child dd,.company__block:nth-child(2) dd { width: calc( 100% - 90px ); }
  .company__block:first-child .company__block--lists:nth-child(2) dd:before { height: 100%; }
}


@media screen and (max-width: 375px) {
  .message--desc { font-size: 4vw; }
}
