@charset "utf-8";

#conversion {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100;
  width: 75rem;
  margin: 0 auto;
  display: none;
  background: rgba(255, 255, 255, 0.7);
  padding-top: 1.5rem;
}

#conversion .gbBtnWText {
  margin-bottom: 0;
}

/*きらっと光る*/
.btnshine {
  position: relative;
  display: inline-block;
  color: #fff;
  text-decoration: none;
  outline: none;
  overflow: hidden;
  border-radius: 5.9rem;
}

/*キラッと光る*/
.btnshine::before {
  content: "";
  position: absolute;
  top: 0;
  left: -75%;
  width: 50%;
  height: 100%;
  background: linear-gradient(
    to right,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.3) 100%
  );
  transform: skewX(-25deg);
  z-index: 5;
}

/*hoverした際の移動のアニメーション*/
.btnshine::before {
  animation: shine 1.5s infinite;
}

@keyframes shine {
  100% {
    left: 125%;
  }
}

.fuwafuwa {
  animation: fuwafuwa 3s ease-in-out infinite alternate;
  display: inline-block;
  transition: 1.5s ease-in-out;
}

@keyframes fuwafuwa {
  0% {
    transform: translate(0, 0) rotate(-7deg);
  }

  50% {
    transform: translate(0, -7px) rotate(0deg);
  }

  100% {
    transform: translate(0, 0) rotate(7deg);
  }
}

.bounce {
  animation: bounce 2s ease-in-out;
}

@keyframes bounce {
  0% {
    transform: translateY(-45%);
    animation-timing-function: ease-in;
    opacity: 1;
  }

  24% {
    opacity: 1;
  }

  40% {
    transform: translateY(-24%);
    animation-timing-function: ease-in;
  }

  65% {
    transform: translateY(-12%);
    animation-timing-function: ease-in;
  }

  82% {
    transform: translateY(-6%);
    animation-timing-function: ease-in;
  }

  93% {
    transform: translateY(-4%);
    animation-timing-function: ease-in;
  }

  25%,
  55%,
  75%,
  87% {
    transform: translateY(0%);
    animation-timing-function: ease-out;
  }

  100% {
    transform: translateY(0%);
    animation-timing-function: ease-out;
    opacity: 1;
  }
}

sup {
  vertical-align: super;
  font-size: smaller;
  position: relative;
  top: -2rem;
}

.gBlock > p:first-child {
  background: url(../img/line01.webp) no-repeat center;
  background-size: 61.6rem auto;
  background-position: center;
}

.gBtn {
  display: block;
  margin: 0 auto;
  width: 68.5rem;
  margin-bottom: 1.8rem;
  padding: 3rem 0;
}

.gBtn a {
  display: flex;
  align-items: center;
  height: 12rem;
}

#modal {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-45%, -50%);
  width: auto;
  max-width: 90%;
  height: auto;
  max-height: 90%;
  z-index: 1000;
  cursor: pointer;
}

#modal img {
  max-width: 90%;
  max-height: 90%;
}

.close-modal {
  position: absolute;
  top: -1rem;
  right: 5.5rem;
  width: 5.6rem;
  background-color: none;
  cursor: pointer;
  z-index: 1001;
}
/* header */
header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.5rem 2.5rem;
  width: 75rem;
  position: fixed;
  top: 0;
  z-index: 15;
	background: #fff;
}

header .logo {
  width: 16.4rem;
  height: 3.7rem;
  display: block;
}

header a img{
  width: 22.6rem;
  height: 6rem;
}

/* fv */
.fv {
  background: url(../img/fvBg.webp);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center;
  padding: 4rem 0 3rem;
}

.fvImg02 {
  display: block;
  margin: -1.5rem auto 0;
  width: 71rem;
  height: 100%;
}

.fvImg03 {
  margin-top: -1rem;
}

.fvNote {
  margin-top: -2rem;
}
/* end fv */

/* issue */
.issue {
  background: url(../img/issueBg.webp);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center;
  padding: 2.5rem 0 0;
}

.issueTT01 p:first-child span::after {
  content: "•";
  color: #fff;
  position: absolute;
  top: -1.5rem;
  left: 50%;
  transform: translateX(-50%);
  font-size: 2rem;
}

.issueTxt01 {
  display: inline-block;
  position: relative;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  margin: 1rem 0 2rem;
}

.issueTxt01::after {
  content: "";
  position: absolute;
  position: absolute;
  bottom: -2.5rem;
  left: 50%;
  transform: translateX(-50%);
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 30px 15px 0 15px;
  border-color: #999999 transparent transparent transparent;
  transform: rotate(0deg);
}

.issueLst {
  width: 63rem;
  position: relative;
  display: block;
  margin: 2rem auto;
}

.issueTT02 {
  width: 41.5rem;
  display: block;
  margin: 0 auto;
}

.issueTxt02::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 60rem;
  height: 14.4rem;
  background: url(../img/issueTxt02Bg.webp);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center;
}

.issueCircle {
  width: 59.4rem;
  display: block;
  margin: 6rem auto 4rem;
  height: 100%;
}

.issueContentTxt {
  display: inline-block;
  position: absolute;
  width: 63.5rem;
  padding: 2rem 0 4rem;
  top: -3rem;
  left: 50%;
  transform: translateX(-50%);
  background: url(../img/issueContentTxtBg.webp);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center;
}

.issueContentTxt02 {
  display: block;
  margin: -27rem auto 2rem auto;
  width: 63rem;
  /* height: 100%; */
}
/* end issue */

/* chart */
.chart {
  background: url(../img/chartBg.webp);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center;
  padding-top: 4rem;
}

.chartCircle {
  display: block;
  position: relative;
  margin: -6rem auto -1rem;
  width: 13.5rem;
  height: 100%;
}

.chartTT {
  display: block;
  position: relative;
  margin: 0 auto;
  top: -0.5rem;
  width: 69.9rem;
  height: 100%;
  z-index: 5;
}

.chartContent {
  padding-bottom: 7.5rem;
  margin-top: -6.5rem;
}

.chartContentTT{
  display: block;
  margin: 0 auto;
  width: 57.5rem;
  height: 100%;
}

/* .chartContentTT p:last-child::before {
  content: "";
  position: absolute;
  right: -8rem;
  bottom: 0;
  transform: translateX(-50%);
  width: 31.2rem;
  height: 1.37rem;
  background: url(../img/chartContentTTFt.webp);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center;
}

.chartContentTT p:last-child span {
  position: relative;
}

.chartContentTT p:last-child b {
  margin-left: -2rem;
}

.chartContentTT p:last-child span::after {
  content: "•";
  color: #fff721;
  position: absolute;
  top: -1rem;
  left: 50%;
  transform: translateX(-50%);
  font-size: 2rem;
} */

.chartContentImg {
  display: block;
  margin: 1.8rem auto 0;
  width: 67rem;
  height: 100%;
}
/* end chart */

/* consult */
.consult {
  background: url(../img/consultBg.webp);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center;
}

.consultTriangle {
  width: 27.2rem;
  position: absolute;
  top: -7.5rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 5;
}

.consultTT {
  display: inline-block;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}

.consultImg {
  display: block;
  margin: 0 auto;
  width: 67rem;
  height: 100%;
}
/* end consult */

/* voice */
.voice {
  padding: 3rem 0;
}

.voiceTT {
  display: block;
  margin: 0 auto 5rem;
  width: 46.7rem;
  height: 100%;
}

.voiceSliderItem img {
  display: block;
  margin: 0 auto;
  width: 67rem;
  height: 100%;
}

.voiceSliderTxt {
  width: 63rem;
  position: absolute;
  bottom: 5.5rem;
  left: 50%;
  transform: translateX(-50%);
}

.voiceSliderItem01 .voiceSliderTxt {
  bottom: 10.5rem;
}

.voiceSliderTxt span {
  color: #29abe2;
  background: #ffffc4;
}

.voiceSliderItem01 .voiceSliderNote {
  bottom: 2rem;
}

.voiceSliderNote {
  position: absolute;
  bottom: 4rem;
  right: 7rem;
}

.voiceSliderArr {
  width: 3.3rem;
  height: 8.6rem;
  cursor: pointer;
  position: absolute;
  top: 50%;
  transform: translateX(-50%);
}

.voiceSliderNext {
  right: .5rem;
}

.voiceSliderPrev {
  left: 3.5rem;
}

.voiceSlider .slick-dots {
  position: absolute;
  bottom: -5rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
}

.voiceSlider .slick-dots li {
  display: inline-block;
  margin: 0 5px;
}

.voiceSlider .slick-dots li button {
  font-size: 0; 
  background: #ccc; 
  border: 2px solid #fff;
  border-radius: 50%;
  width: 1.4rem;
  height: 1.4rem;
  padding: 0;
}

.voiceSlider .slick-dots li.slick-active button {
  background: #004492; /* Màu cho dot đang active */
}
/* end voice */

/* reason */
.reason {
  background: url(../img/reasonBg.webp);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center;
}

.reasonTT {
  display: block;
  margin: 0 auto;
  width: 47.7rem;
  height: 100%;
  padding: 10rem 0 9rem 0;
}

.reasonItem {
  background-color: #fff;
}

.reasonItemNum {
  display: block;
  position: relative;
  top: -3rem;
  left: 50%;
  transform: translateX(-50%);
  width: 13rem;
  height: 100%;
}

.reasonItemTT {
  margin-top: -2rem;
}

.reasonImg {
  display: block;
  margin: 3.5rem auto 5rem;
  width: 63rem;
  height: 100%;
}
/* end reason */
