@charset "UTF-8";
/* Scss Document */
/* 設定インポート */
/* Scss Document */
/* 色設定 */
/* $light-green: #7fba68; */
/* メディアクエリー */
.top-page .section-partner {
  margin: 0;
  padding: 0 0 100px;
  position: relative;
  overflow: hidden;
  /*
  keyframes animation
  */
  /* グローバル・パートナー：パートナー ポイント アニメーション */
}
.top-page .section-partner .video {
  display: block;
  margin: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: -2;
}
.top-page .section-partner .video video {
  min-width: 100%;
  min-height: 100%;
  z-index: -2;
}
.top-page .section-partner .title-semicircle-wrap .title-semicircle {
  border: 3px solid #fff;
  border-bottom: none;
  color: #fff;
}
.top-page .section-partner .title-semicircle-wrap .title-semicircle::after {
  background: #fff;
}
.top-page .section-partner h2 {
  color: #fff;
}
.top-page .section-partner .text-global-lead {
  color: #fff;
}
@media screen and (min-width: 768px) {
  .top-page .section-partner .text-global-lead {
    text-align: center;
  }
}
.top-page .section-partner h2.title-global {
  font-family: monospace;
  font-size: 2rem;
  color: #fff;
  font-weight: bolder;
  letter-spacing: 0.1rem;
  transform: scaleX(0.8);
}
.top-page .section-partner .global-map2 {
  margin: 0 auto;
  padding: 0;
  max-width: 1200px;
  /*max-height: 720px;*/
  position: relative;
  overflow: hidden;
}
.top-page .section-partner .global-map2 img.map-world {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 0;
}
.top-page .section-partner .global-map2 .g-partner-point_wrap .point {
  display: none;
  width: 14px;
  height: 14px;
  /*background: #87c139;*/
  background: #fff;
  border: 1px solid #87c139;
  /*-moz-box-shadow: 0px 0px 10px 5px rgba(135, 193, 57, 0.6);
  -webkit-box-shadow: 0px 0px 10px 5px rgba(135, 193, 57, 0.6);
  -ms-box-shadow: 0px 0px 10px 5px rgba(135, 193, 57, 0.6);*/
  box-shadow: 0px 0px 10px 5px rgba(135, 193, 57, 0.6);
  border-radius: 50%;
  position: absolute;
  z-index: 1;
}
.top-page .section-partner .global-map2 .g-partner-point_wrap .point.tokyo {
  width: 24px;
  height: 24px;
  top: 40.5%;
  left: 44.8%;
}
.top-page .section-partner .global-map2 .g-partner-point_wrap .point.active {
  display: inline;
  transition: all 0.8s ease;
}
.top-page .section-partner .global-map2 .g-partner-point_wrap .point span {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}
.top-page .section-partner .global-map2 .g-partner-point_wrap .point span .wrap_c {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  border: 1px solid #87c139;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
}
.top-page .section-partner .global-map2 .g-partner-point_wrap .point span .wrap_c.anime1 {
  animation: circleExpansion 3.5s ease 0s infinite alternate;
}
.top-page .section-partner .global-map2 .g-partner-point_wrap .point span .wrap_c.anime2 {
  animation: circleExpansion 3.5s ease 1.0s infinite alternate;
}
.top-page .section-partner .global-map2 .g-partner-point_wrap .point span .wrap_c.anime3 {
  animation: circleExpansion 3.5s ease 1.8s infinite alternate;
}
.top-page .section-partner .global-map2 .g-partner-point_wrap .point1 {
  top: 25.0%;
  left: 14.7%;
}
.top-page .section-partner .global-map2 .g-partner-point_wrap .point2 {
  top: 30.3%;
  left: 10.1%;
}
.top-page .section-partner .global-map2 .g-partner-point_wrap .point3 {
  top: 21.4%;
  left: 80.3%;
}
.top-page .section-partner .global-map2 .g-partner-point_wrap .point4 {
  top: 36%;
  left: 9.3%;
}
.top-page .section-partner .global-map2 .g-partner-point_wrap .point5 {
  top: 32.2%;
  left: 7.2%;
}
.top-page .section-partner .global-map2 .g-partner-point_wrap .point6 {
  top: 42.0%;
  left: 81.7%;
}
.top-page .section-partner .global-map2 .g-partner-point_wrap .point7 {
  top: 37.0%;
  left: 12.4%;
}
.top-page .section-partner .global-map2 .g-partner-point_wrap .point8 {
  top: 30.4%;
  left: 15.1%;
}
.top-page .section-partner .global-map2 .g-partner-curve_wrap {
  display: block;
  width: 100%;
  padding-top: 51.98%;
  margin: 0 auto;
  position: relative;
  /* curve */
  /* curve details L to R */
  /* curve details R to L */
  /* Draw Line animation. This is the class that animated additional to curve. */
  /* curve animation */
  /* curve animation for Safari */
}
.top-page .section-partner .global-map2 .g-partner-curve_wrap svg {
  width: 100%;
  height: auto;
  position: absolute;
  z-index: 2;
  top: 5.4%;
  left: 7.7%;
}
.top-page .section-partner .global-map2 .g-partner-curve_wrap .move_circle {
  opacity: 0;
}
.top-page .section-partner .global-map2 .g-partner-curve_wrap #g-partner-curve .curve {
  display: none;
}
.top-page .section-partner .global-map2 .g-partner-curve_wrap .curve {
  fill: transparent;
  stroke: none;
  stroke-dasharray: 2000;
  stroke-dashoffset: 0;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2.2;
  /*animation: drawTheLine 2.0s ease-in 0s forwards;*/
}
.top-page .section-partner .global-map2 .g-partner-curve_wrap .curve2 {
  fill: transparent;
  stroke: none;
  stroke-dasharray: 2000;
  stroke-dashoffset: 0;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2.2;
  /*filter: url(#shadow);
  opacity: 0.2;*/
}
.top-page .section-partner .global-map2 .g-partner-curve_wrap .line1 {
  animation: drawTheLine1 2.5s ease-in 0.5s forwards;
}
.top-page .section-partner .global-map2 .g-partner-curve_wrap .line2 {
  animation: drawTheLine1 2.0s ease-in 1.0s forwards;
}
.top-page .section-partner .global-map2 .g-partner-curve_wrap .line3 {
  animation: drawTheLine2 2.0s ease-in 1.3s forwards;
  /* R to L */
}
.top-page .section-partner .global-map2 .g-partner-curve_wrap .line4 {
  animation: drawTheLine1 2.0s ease-in 1.6s forwards;
}
.top-page .section-partner .global-map2 .g-partner-curve_wrap .line5 {
  animation: drawTheLine1 2.0s ease-in 1.9s forwards;
}
.top-page .section-partner .global-map2 .g-partner-curve_wrap .line6 {
  animation: drawTheLine2 2.0s ease-in 2.2s forwards;
  /* R to L */
}
.top-page .section-partner .global-map2 .g-partner-curve_wrap .line7 {
  animation: drawTheLine1 2.0s ease-in 2.5s forwards;
}
.top-page .section-partner .global-map2 .g-partner-curve_wrap .line8 {
  animation: drawTheLine1 2.0s ease-in 2.8s forwards;
}
@keyframes drawTheLine1 {
  0% {
    stroke-dashoffset: 2000;
    stroke: url(#grad1);
  }
  50% {
    stroke-dashoffset: 1000;
    stroke: url(#grad1);
  }
  100% {
    stroke-dashoffset: 0;
    stroke: url(#grad1);
  }
}
@keyframes drawTheLine2 {
  0% {
    stroke-dashoffset: 2000;
    stroke: url(#grad2);
  }
  50% {
    stroke-dashoffset: 1000;
    stroke: url(#grad2);
  }
  100% {
    stroke-dashoffset: 0;
    stroke: url(#grad2);
  }
}
@-webkit-keyframes drawTheLine1 {
  0% {
    stroke-dashoffset: 2000;
    stroke: #87c139;
  }
  50% {
    stroke-dashoffset: 1000;
    stroke: #87c139;
  }
  100% {
    stroke-dashoffset: 0;
    stroke: #87c139;
  }
}
@-webkit-keyframes drawTheLine2 {
  0% {
    stroke-dashoffset: 2000;
    stroke: #87c139;
  }
  50% {
    stroke-dashoffset: 1000;
    stroke: #87c139;
  }
  100% {
    stroke-dashoffset: 0;
    stroke: #87c139;
  }
}
@media screen and (max-width: 799.98px) {
  .top-page .section-partner .global-map2 .g-partner-point_wrap .point {
    width: 9px;
    height: 9px;
    box-shadow: 0px 0px 7px 3px rgba(135, 193, 57, 0.6);
  }
  .top-page .section-partner .global-map2 .g-partner-point_wrap .point.tokyo {
    width: 14px;
    height: 14px;
  }
}
@media screen and (max-width: 767.98px) {
  .top-page .section-partner .global-map2 .g-partner-point_wrap .point {
    width: 9px;
    height: 9px;
  }
  .top-page .section-partner .global-map2 .g-partner-point_wrap .point.tokyo {
    width: 14px;
    height: 14px;
  }
}
@media screen and (max-width: 499.98px) {
  .top-page .section-partner .global-map2 .g-partner-point_wrap .point {
    width: 7px;
    height: 7px;
    box-shadow: 0px 0px 5px 2px rgba(135, 193, 57, 0.4);
  }
  .top-page .section-partner .global-map2 .g-partner-point_wrap .point.tokyo {
    width: 9px;
    height: 9px;
  }
}
@media screen and (max-width: 399.98px) {
  .top-page .section-partner .global-map2 .g-partner-point_wrap .point {
    width: 5px;
    height: 5px;
    box-shadow: 0px 0px 3px 0px rgba(135, 193, 57, 0.3);
  }
  .top-page .section-partner .global-map2 .g-partner-point_wrap .point.tokyo {
    width: 7px;
    height: 7px;
  }
}
@keyframes circleExpansion {
  0% {
    transform: scale(1);
    opacity: 0.9;
  }
  100% {
    transform: scale(3.4);
    opacity: 0.06;
  }
}
@-webkit-keyframes circleExpansion {
  0% {
    transform: scale(1);
    opacity: 0.9;
  }
  100% {
    transform: scale(3.4);
    opacity: 0.06;
  }
}
