@charset "UTF-8";
@-webkit-keyframes borderInOut {
  0% {
  opacity:0;
  -webkit-transform:scaleX(0);
  transform:scaleX(0);
  -webkit-transform-origin:left;
  transform-origin:left
  }
  5% {
  opacity:1;
  -webkit-transform:scaleX(0);
  transform:scaleX(0);
  -webkit-transform-origin:left;
  transform-origin:left
  }
  49% {
  opacity:1;
  -webkit-transform:scaleX(1);
  transform:scaleX(1);
  -webkit-transform-origin:left;
  transform-origin:left
  }
  50% {
  opacity:1;
  -webkit-transform:scaleX(1);
  transform:scaleX(1);
  -webkit-transform-origin:right;
  transform-origin:right
  }
  100% {
  opacity:1;
  -webkit-transform:scaleX(0);
  transform:scaleX(0);
  -webkit-transform-origin:right;
  transform-origin:right
  }
  }
  @keyframes borderInOut {
  0% {
  opacity:0;
  -webkit-transform:scaleX(0);
  transform:scaleX(0);
  -webkit-transform-origin:left;
  transform-origin:left
  }
  5% {
  opacity:1;
  -webkit-transform:scaleX(0);
  transform:scaleX(0);
  -webkit-transform-origin:left;
  transform-origin:left
  }
  49% {
  opacity:1;
  -webkit-transform:scaleX(1);
  transform:scaleX(1);
  -webkit-transform-origin:left;
  transform-origin:left
  }
  50% {
  opacity:1;
  -webkit-transform:scaleX(1);
  transform:scaleX(1);
  -webkit-transform-origin:right;
  transform-origin:right
  }
  100% {
  opacity:1;
  -webkit-transform:scaleX(0);
  transform:scaleX(0);
  -webkit-transform-origin:right;
  transform-origin:right
  }
  }
  @-webkit-keyframes contentWrapMove {
  0% {
  opacity:0;
  -webkit-transform:translateX(-100%);
  transform:translateX(-100%)
  }
  5% {
  opacity:1;
  -webkit-transform:translateX(-100%);
  transform:translateX(-100%)
  }
  100% {
  opacity:1;
  -webkit-transform:translateX(0);
  transform:translateX(0)
  }
  }
  @keyframes contentWrapMove {
  0% {
  opacity:0;
  -webkit-transform:translateX(-100%);
  transform:translateX(-100%)
  }
  5% {
  opacity:1;
  -webkit-transform:translateX(-100%);
  transform:translateX(-100%)
  }
  100% {
  opacity:1;
  -webkit-transform:translateX(0);
  transform:translateX(0)
  }
  }
  @-webkit-keyframes contentInnerStay {
  0% {
  -webkit-transform:translateX(100%);
  transform:translateX(100%)
  }
  5% {
  -webkit-transform:translateX(100%);
  transform:translateX(100%)
  }
  100% {
  -webkit-transform:translateX(0);
  transform:translateX(0)
  }
  }
  @keyframes contentInnerStay {
  0% {
  -webkit-transform:translateX(100%);
  transform:translateX(100%)
  }
  5% {
  -webkit-transform:translateX(100%);
  transform:translateX(100%)
  }
  100% {
  -webkit-transform:translateX(0);
  transform:translateX(0)
  }
  }
  @-webkit-keyframes drawBorderX {
  0% {
  -webkit-transform:scaleX(0) translate3d(0, 0, 0);
  transform:scaleX(0) translate3d(0, 0, 0);
  opacity:0
  }
  1% {
  -webkit-transform:scaleX(0) translate3d(0, 0, 0);
  transform:scaleX(0) translate3d(0, 0, 0);
  opacity:1
  }
  100% {
  -webkit-transform:scaleX(100%) translate3d(0, 0, 0);
  transform:scaleX(100%) translate3d(0, 0, 0);
  opacity:1
  }
  }
  @keyframes drawBorderX {
  0% {
  -webkit-transform:scaleX(0) translate3d(0, 0, 0);
  transform:scaleX(0) translate3d(0, 0, 0);
  opacity:0
  }
  1% {
  -webkit-transform:scaleX(0) translate3d(0, 0, 0);
  transform:scaleX(0) translate3d(0, 0, 0);
  opacity:1
  }
  100% {
  -webkit-transform:scaleX(100%) translate3d(0, 0, 0);
  transform:scaleX(100%) translate3d(0, 0, 0);
  opacity:1
  }
  }
  @-webkit-keyframes drawBorderY {
  0% {
  -webkit-transform:scaleY(0) translate3d(0, 0, 0);
  transform:scaleY(0) translate3d(0, 0, 0);
  opacity:0
  }
  1% {
  -webkit-transform:scaleY(0) translate3d(0, 0, 0);
  transform:scaleY(0) translate3d(0, 0, 0);
  opacity:1
  }
  100% {
  -webkit-transform:scaleY(100%) translate3d(0, 0, 0);
  transform:scaleY(100%) translate3d(0, 0, 0);
  opacity:1
  }
  }
  @keyframes drawBorderY {
  0% {
  -webkit-transform:scaleY(0) translate3d(0, 0, 0);
  transform:scaleY(0) translate3d(0, 0, 0);
  opacity:0
  }
  1% {
  -webkit-transform:scaleY(0) translate3d(0, 0, 0);
  transform:scaleY(0) translate3d(0, 0, 0);
  opacity:1
  }
  100% {
  -webkit-transform:scaleY(100%) translate3d(0, 0, 0);
  transform:scaleY(100%) translate3d(0, 0, 0);
  opacity:1
  }
  }
  @-webkit-keyframes sheftBorderPc {
  0% {
  -webkit-transform:translate(0, 0);
  transform:translate(0, 0)
  }
  100% {
  -webkit-transform:translate(-20px, -20px);
  transform:translate(-20px, -20px)
  }
  }
  @keyframes sheftBorderPc {
  0% {
  -webkit-transform:translate(0, 0);
  transform:translate(0, 0)
  }
  100% {
  -webkit-transform:translate(-20px, -20px);
  transform:translate(-20px, -20px)
  }
  }
  @-webkit-keyframes sheftBorderSp {
  0% {
  -webkit-transform:translate(0, 0);
  transform:translate(0, 0)
  }
  100% {
  -webkit-transform:translate(-10px, -10px);
  transform:translate(-10px, -10px)
  }
  }
  @keyframes sheftBorderSp {
  0% {
  -webkit-transform:translate(0, 0);
  transform:translate(0, 0)
  }
  100% {
  -webkit-transform:translate(-10px, -10px);
  transform:translate(-10px, -10px)
  }
  }
  @-webkit-keyframes fadeDownIn {
  0% {
  opacity:0;
  -webkit-transform:translate3d(0, -10px, 0);
  transform:translate3d(0, -10px, 0)
  }
  50% {
  opacity:.5;
  -webkit-transform:translate3d(0, 0, 0);
  transform:translate3d(0, 0, 0)
  }
  100% {
  opacity:1
  }
  }
  @keyframes fadeDownIn {
  0% {
  opacity:0;
  -webkit-transform:translate3d(0, -10px, 0);
  transform:translate3d(0, -10px, 0)
  }
  50% {
  opacity:.5;
  -webkit-transform:translate3d(0, 0, 0);
  transform:translate3d(0, 0, 0)
  }
  100% {
  opacity:1
  }
  }
  @-webkit-keyframes fadeUpIn {
  0% {
  opacity:0;
  -webkit-transform:translate3d(0, 30px, 0);
  transform:translate3d(0, 30px, 0)
  }
  100% {
  opacity:1;
  -webkit-transform:translate3d(0, 0, 0);
  transform:translate3d(0, 0, 0)
  }
  }
  @keyframes fadeUpIn {
  0% {
  opacity:0;
  -webkit-transform:translate3d(0, 30px, 0);
  transform:translate3d(0, 30px, 0)
  }
  100% {
  opacity:1;
  -webkit-transform:translate3d(0, 0, 0);
  transform:translate3d(0, 0, 0)
  }
  }
  @-webkit-keyframes appear {
  0% {
  opacity:0
  }
  100% {
  opacity:1
  }
  }
  @keyframes appear {
  0% {
  opacity:0
  }
  100% {
  opacity:1
  }
}

.l-page { letter-spacing: .2em }
.c-border-in-out { display: inline-block; z-index: 0; position: relative; color: transparent; white-space: nowrap }
.c-border-in-out--block { display: block }
.c-border-in-out__content { display: inline-block; position: absolute; top: 50% !important;
    left: 50% !important;
    -webkit-transform: translate(-50%, -50%) !important;
    -moz-transform: translate(-50%, -50%) !important;
    -ms-transform: translate(-50%, -50%) !important;
    -o-transform: translate(-50%, -50%) !important;
    transform: translate(-50%, -50%) !important; }
.c-border-in-out__content--rect { width: 100% }
.c-border-in-out__content:after { z-index: 0; content: ''; height: 10%; display: inline-block; position: absolute; left: 0; top: 50%; right: 0; bottom: 0; background-color: #000; -webkit-transform: translateY(-50%); transform: translateY(-50%) }
.c-border-in-out__content-in1 { width: 100%; display: block; overflow: hidden }
.c-border-in-out__content-in2 { width: 100%; display: block; white-space: nowrap }
.c-border-in-out__content-in2 img, .c-border-in-out__content-in2 svg { width: 100%; display: block }
.c-border-in-out--yellow .c-border-in-out__content:after { background-color: #eba845 }
.c-border-in-out--yellow .c-border-in-out__content-in2 { color: #eba845 }
.c-border-in-out--yellow-green .c-border-in-out__content:after { background-color: #0295F5 }
.c-border-in-out--yellow-green .c-border-in-out__content-in2 { color: #0295F5 }
.c-border-in-out__content:after { opacity: 0; -webkit-transform: scaleX(0); transform: scaleX(0) }
.c-border-in-out__content-in1 { -webkit-transform: translateX(-100%); transform: translateX(-100%); opacity: 0 }
.c-border-in-out__content-in2 { -webkit-transform: translateX(100%); transform: translateX(100%) }
.c-border-in-out.is-animate .c-border-in-out__content:after, .c-border-in-out.is-shown .c-border-in-out__content:after { -webkit-animation-name: borderInOut; animation-name: borderInOut; -webkit-animation-duration: .8s; animation-duration: .8s; -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards }
.c-border-in-out.is-animate .c-border-in-out__content-in1, .c-border-in-out.is-shown .c-border-in-out__content-in1 { -webkit-animation-name: contentWrapMove; animation-name: contentWrapMove; -webkit-animation-duration: .8s; animation-duration: .8s; -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards }
.c-border-in-out.is-animate .c-border-in-out__content-in2, .c-border-in-out.is-shown .c-border-in-out__content-in2 { -webkit-animation-name: contentInnerStay; animation-name: contentInnerStay; -webkit-animation-duration: .8s; animation-duration: .8s; -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards }
.c-anime-dl-1 { -webkit-animation-delay: .75s; animation-delay: .75s }
.c-anime-dl-af1:after { -webkit-animation-delay: .35s; animation-delay: .35s }
.c-anime-dl-border1 { -webkit-animation-delay: 1.1s; animation-delay: 1.1s }
.c-anime-dl-2 { -webkit-animation-delay: .9s; animation-delay: .9s }
.c-anime-dl-af2:after { -webkit-animation-delay: .5s; animation-delay: .5s }
.c-border-box { width: 100%; display: block; position: relative; z-index: 100 }

@-webkit-keyframes moveScrollPointer {
  0% {
  -webkit-transform:translate3d(0, 0, 0);
  transform:translate3d(0, 0, 0)
  }
  100% {
  -webkit-transform:translate3d(0, 35px, 0);
  transform:translate3d(0, 35px, 0)
  }
  }
  @keyframes moveScrollPointer {
  0% {
  -webkit-transform:translate3d(0, 0, 0);
  transform:translate3d(0, 0, 0)
  }
  100% {
  -webkit-transform:translate3d(0, 35px, 0);
  transform:translate3d(0, 35px, 0)
  }
  }
  @-webkit-keyframes scrollPointerInOut {
  0% {
  -webkit-transform:scale(0);
  transform:scale(0)
  }
  10% {
  -webkit-transform:scale(1);
  transform:scale(1)
  }
  60% {
  -webkit-transform:scale(1);
  transform:scale(1)
  }
  100% {
  -webkit-transform:scale(0);
  transform:scale(0)
  }
  }
  @keyframes scrollPointerInOut {
  0% {
  -webkit-transform:scale(0);
  transform:scale(0)
  }
  10% {
  -webkit-transform:scale(1);
  transform:scale(1)
  }
  60% {
  -webkit-transform:scale(1);
  transform:scale(1)
  }
  100% {
  -webkit-transform:scale(0);
  transform:scale(0)
  }
}

.p-index-section__header { text-align: center }

@media all and (min-width:768px) {
.bg2 .p-index-section__header { margin-top: 0; margin-bottom: 50px; }
.p-index-section__header { margin-top: 110px; margin-bottom: 50px; }
}

@media all and (max-width:767px) {
.bg2 .p-index-section__header { margin-top: 0; margin-bottom: 40px; }
.p-index-section__header { margin-top: 40px; margin-bottom: 40px; }
}
.p-index-section__header-en { font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; text-transform: uppercase; letter-spacing: .2em }

@media all and (min-width:1025px) {
.p-index-section__header-en { font-size: 40px; font-size: 2.5rem }
}

@media all and (min-width:768px) and (max-width:1024px) {
.p-index-section__header-en { font-size: 40px; font-size: 2.5rem }
}

@media all and (max-width:767px) {
.p-index-section__header-en { font-size: 25px; font-size: 1.5625rem }
}

@media all and (max-width:767px) and (max-width:414px) {
.p-index-section__header-en { font-size: 7.8125vw }
}

@media all and (max-width:767px) and (min-width:415px) {
.p-index-section__header-en { font-size: 32.34375px }
}
.p-index-section__header-en-in { color: #000 }
.p-index-section__header-ja { font-weight: bold }

@media all and (min-width:1025px) {
.p-index-section__header-ja { font-size: 26px; font-size: 1.75rem }
#contact .p-index-section__header-ja { font-size: 20px; font-size: 1.25rem }
}

@media all and (min-width:768px) and (max-width:1024px) {
.p-index-section__header-ja { font-size: 24px; font-size: 1.5rem }
#contact .p-index-section__header-ja { font-size: 20px; font-size: 1.25rem }
}

@media all and (max-width:767px) {
.p-index-section__header-ja { font-size: 18px; font-size: 1rem }
#contact .p-index-section__header-ja { font-size: 14px; font-size: .875rem }
}

@media all and (max-width:767px) and (max-width:414px) {
.p-index-section__header-ja { font-size: 5vw }
#contact .p-index-section__header-ja { font-size: 4.375vw }
}

@media all and (max-width:767px) and (min-width:415px) {
.p-index-section__header-ja { font-size: 18.1125px }
}
.p-index-section__header-ja-in { color: #000 }
.p-index-section__header--message { margin-top: 0 }

@media all and (max-width:767px) {
.p-index-section__header--message { margin-bottom: 60px }
}
.p-index-section__header--business .p-index-section__header-en-in { color: #0295F5 }
.p-index-section__header--business .p-index-section__header-ja-in { color: #0295F5 }

@media all and (min-width:1025px) {
.p-index-section__header--member .p-index-section__header-en { font-size: 40px; font-size: 2.5rem }
}

@media all and (min-width:768px) and (max-width:1024px) {
.p-index-section__header--member .p-index-section__header-en { font-size: 40px; font-size: 2.5rem }
}

@media all and (max-width:767px) {
.p-index-section__header--member .p-index-section__header-en { font-size: 30px; font-size: 1.875rem }
}

@media all and (max-width:767px) and (max-width:414px) {
.p-index-section__header--member .p-index-section__header-en { font-size: 9.375vw }
}

@media all and (max-width:767px) and (min-width:415px) {
.p-index-section__header--member .p-index-section__header-en { font-size: 38.8125px }
}
.p-index-section__header--member .p-index-section__header-en-in { color: #58c1db }
.p-index-section__header--member .p-index-section__header-ja-in { color: #58c1db }

.c-border-in-out__content{ z-index: 1;}
