@charset "UTF-8";
@-webkit-keyframes bgfade {
  0% {
    background-color: transparent;
  }
  100% {
    background-color: rgba(0, 91, 172, 0.5);
  }
}
@keyframes bgfade {
  0% {
    background-color: transparent;
  }
  100% {
    background-color: rgba(0, 91, 172, 0.5);
  }
}

@-webkit-keyframes bgfade2 {
  0% {
    background-color: transparent;
  }
  100% {
    background-color: rgba(0, 156, 230, 0.5);
  }
}

@keyframes bgfade2 {
  0% {
    background-color: transparent;
  }
  100% {
    background-color: rgba(0, 156, 230, 0.5);
  }
}

svg.cir1 {
  margin: auto;
  display: block;
  -webkit-transform: translate(-50%, -50%) rotate(-90deg);
  transform: translate(-50%, -50%) rotate(-90deg);
  position: absolute;
  top: 50%;
  left: 50%;
}

@media screen and (max-width: 768px) {
  svg.cir1 {
    display: none;
  }
}

svg.cir1 circle {
  fill: transparent;
  stroke: #fff;
  stroke-dasharray: calc(75vh * 3.14 + 1px) calc(75vh * 3.14 + 1px);
  stroke-width: 2;
  -webkit-transform: translate(-40%, -40.1%) scale(1.2);
  transform: translate(-40%, -40.1%) scale(1.2);
}

@media screen and (max-width: 1024px) {
  svg.cir1 circle {
    -webkit-transform: translate(-17.5%, -18.1%) scale(0.9);
    transform: translate(-17.5%, -18.1%) scale(0.9);
  }
}

@-webkit-keyframes circle3 {
  0% {
    stroke-dasharray: 0 calc(550px * 3.14 + 1px);
  }
  99.9%,
  to {
    stroke-dasharray: calc(550px * 3.14 + 1px) calc(550px * 3.14 + 1px);
  }
}

@keyframes circle3 {
  0% {
    stroke-dasharray: 0 calc(550px * 3.14 + 1px);
  }
  99.9%,
  to {
    stroke-dasharray: calc(550px * 3.14 + 1px) calc(550px * 3.14 + 1px);
  }
}

svg.cir2 {
  margin: auto;
  display: none;
  -webkit-transform: translate(-50%, -50%) rotate(-90deg);
  transform: translate(-50%, -50%) rotate(-90deg);
  position: absolute;
  top: 50%;
  left: 50%;
}

@media screen and (max-width: 768px) {
  svg.cir2 {
    display: block;
  }
}

.cir2 circle {
  fill: transparent;
  stroke: #fff;
  stroke-dasharray: 0 calc(65vw * 3.14 + 1px);
  stroke-width: 2;
  -webkit-transform: translate(-40%, -40.1%) scale(1.2);
  transform: translate(-40%, -40.1%) scale(1.2);
}

@media screen and (max-width: 768px) {
  .cir2 circle {
    -webkit-transform: translate(-36.5%, -36.5%) scale(1);
    transform: translate(-36.5%, -36.5%) scale(1);
  }
}

@media screen and (max-width: 500px) {
  .cir2 circle {
    -webkit-transform: translate(-36.5%, -36.5%) scale(1);
    transform: translate(-36.5%, -36.5%) scale(1);
  }
}

.view .cir2 circle {
  -webkit-animation: circle2 1.4s ease-in-out 0.5s forwards;
  animation: circle2 1.4s ease-in-out 0.5s forwards;
}

@-webkit-keyframes circle2 {
  0% {
    stroke-dasharray: 0 calc(65vw * 3.14 + 1px);
  }
  99.9%,
  to {
    stroke-dasharray: calc(65vw * 3.14 + 1px) calc(65vw * 3.14 + 1px);
  }
}

@keyframes circle2 {
  0% {
    stroke-dasharray: 0 calc(65vw * 3.14 + 1px);
  }
  99.9%,
  to {
    stroke-dasharray: calc(65vw * 3.14 + 1px) calc(65vw * 3.14 + 1px);
  }
}

svg.safari {
  display: none;
}

.safari svg.cir1,
.safari svg.cir2 {
  display: none;
}

@media screen and (max-width: 768px) {
  .safari svg.cir1,
  .safari svg.cir2 {
    display: none;
  }
}

.safari svg.safari {
  margin: auto;
  display: block;
  -webkit-transform: translate(-50%, -50%) rotate(-90deg);
  transform: translate(-50%, -50%) rotate(-90deg);
  position: absolute;
  top: 50%;
  left: 50%;
}

.safari svg.safari circle {
  fill: transparent;
  stroke: #fff;
  stroke-dasharray: 0 calc(550px * 3.14 + 1px);
  stroke-width: 2;
  -webkit-transform: translate(-45%, -44.3%) scale(1.2);
  transform: translate(-45%, -44.3%) scale(1.2);
}

@media screen and (max-width: 768px) {
  .safari svg.safari circle {
    -webkit-transform: translate(-21.5%, -20.5%) scale(0.9);
    transform: translate(-21.5%, -20.5%) scale(0.9);
  }
}

@media screen and (max-width: 500px) {
  .safari svg.safari circle {
    -webkit-transform: translate(14.5%, 14.5%) scale(0.45);
    transform: translate(14.5%, 14.5%) scale(0.45);
  }
}

.view .safari circle {
  -webkit-animation: circle3 1.4s ease-in-out 0.5s forwards;
  animation: circle3 1.4s ease-in-out 0.5s forwards;
}

.safari .about-strength_message h2 {
  font-size: 3.4rem;
}

@media screen and (max-width: 500px) {
  .safari .about-strength_message h2 {
    font-size: 2rem;
  }
}

.about-groups {
  position: relative;
  border-bottom: 1px solid rgba(200, 200, 200, 0.5);
}

.about-groups .desc {
  padding-top: 0;
}

@media screen and (max-width: 500px) {
  .about-groups .desc {
    padding-bottom: 50px;
  }
}

.about-groups .desc-head {
  margin-top: 0;
}

.about-groups .desc-txt {
  padding-right: 40px;
}

@media screen and (max-width: 500px) {
  .about-groups .w-75 {
    width: 100%;
  }
}

.about-groups_bg {
  position: absolute;
  left: 2%;
  top: 4%;
  width: 25%;
  z-index: -1;
  opacity: 0.2;
}

@media screen and (max-width: 500px) {
  .about-groups_bg {
    top: 170px;
  }
}

.about-groups_lists {
  padding: 3% 0;
  position: relative;
  z-index: 3;
}

.about-groups_list {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 33.33%;
  flex: 0 0 33.33%;
  max-width: 33.33%;
  margin-bottom: 3%;
}

@media screen and (max-width: 500px) {
  .about-groups_list {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .about-groups_list:first-child {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
}

.about-groups_list .ttl-ruby {
  padding-left: 25px;
}

@media screen and (max-width: 768px) {
  .about-groups_list .ttl-ruby {
    padding-left: 12px;
  }
}

@media screen and (max-width: 500px) {
  .about-groups_list .ttl-ruby {
    padding-left: 7px;
  }
}

.about-groups_list .ttl-ruby span {
  font-size: 1.6rem;
  font-weight: normal;
}

@media screen and (max-width: 768px) {
  .about-groups_list .ttl-ruby span {
    font-size: 1.4rem;
  }
}

.about-groups_list:nth-child(2) .about-groups_logo::after {
  background-color: #472183;
}

.about-groups_list:nth-child(3) .about-groups_logo::after {
  background-color: #e8bb00;
}

.about-groups_list:nth-child(4) .about-groups_logo::after {
  background-color: #248953;
}

.about-groups_list:nth-child(5) .about-groups_logo::after {
  background-color: #1a4171;
}

.about-groups_list:nth-child(6) .about-groups_logo::after {
  background-color: #bf1c1b;
}

.about-groups_list:nth-child(7) .about-groups_logo::after {
  background-color: #d47914;
}

.about-groups_list:nth-child(8) .about-groups_logo::after {
  background-color: #603813;
}

.about-groups_list:nth-child(9) .about-groups_logo::after {
  background-color: #003176;
}

.about-groups_list:nth-child(8) .about-groups_logo img {
  height: 2.2vw;
  margin-top: 10px;
}

@media screen and (max-width: 1024px) {
  .about-groups_list:nth-child(8) .about-groups_logo img {
    margin-top: 8px;
  }
}

@media screen and (max-width: 768px) {
  .about-groups_list:nth-child(8) .about-groups_logo img {
    margin-top: 6px;
  }
}

@media screen and (max-width: 500px) {
  .about-groups_list:nth-child(8) .about-groups_logo img {
    height: 5.2vw;
    margin-top: 7px;
  }
}

.about-groups_list:nth-child(9) .about-groups_logo img {
  height: 2.5vw;
  margin-top: 6px;
}

@media screen and (max-width: 1024px) {
  .about-groups_list:nth-child(9) .about-groups_logo img {
    height: 2.4vw;
  }
}

@media screen and (max-width: 768px) {
  .about-groups_list:nth-child(9) .about-groups_logo img {
    margin-top: 4px;
  }
}

@media screen and (max-width: 500px) {
  .about-groups_list:nth-child(9) .about-groups_logo img {
    height: 5.7vw;
    margin-top: 5px;
  }
}

.about-groups_logo {
  display: inline-block;
  position: relative;
  overflow: hidden;
}

.about-groups_logo::after {
  position: absolute;
  width: 100%;
  height: 2px;
  background-color: #065bab;
  left: 0;
  bottom: 0;
  content: "";
  -webkit-transform-origin: left;
  transform-origin: left;
  -webkit-transition: -webkit-transform 0.5s
    cubic-bezier(0.05, 0.39, 0.76, 0.89) 0.5s;
  transition: -webkit-transform 0.5s cubic-bezier(0.05, 0.39, 0.76, 0.89) 0.5s;
  transition: transform 0.5s cubic-bezier(0.05, 0.39, 0.76, 0.89) 0.5s;
  transition: transform 0.5s cubic-bezier(0.05, 0.39, 0.76, 0.89) 0.5s,
    -webkit-transform 0.5s cubic-bezier(0.05, 0.39, 0.76, 0.89) 0.5s;
}

.about-groups_logo div {
  padding: 10px 6px 10px 12px;
  -webkit-transition: 0.5s cubic-bezier(0.05, 0.39, 0.76, 0.89) 0.8s;
  transition: 0.5s cubic-bezier(0.05, 0.39, 0.76, 0.89) 0.8s;
}

@media screen and (max-width: 1024px) {
  .about-groups_logo div {
    padding: 8px 6px 8px 4px;
  }
}

.about-groups_logo img {
  height: 3vw;
}

@media screen and (max-width: 500px) {
  .about-groups_logo img {
    height: 7vw;
  }
}

.about-reason {
  padding-bottom: 3%;
}

.about-strength {
  background-color: #eee;
}

.about-strength .desc-head span {
  -webkit-transition: 0.8s cubic-bezier(0.05, 0.39, 0.76, 0.89) 0.3s;
  transition: 0.8s cubic-bezier(0.05, 0.39, 0.76, 0.89) 0.3s;
}

@media screen and (max-width: 500px) {
  .about-strength .w-50 {
    width: 100%;
  }
  .about-strength .w-50 .desc-head {
    padding-left: calc(12.5% + 10px);
    padding-right: 12.5%;
  }
  .about-strength .w-50 .desc-txt {
    padding-left: calc(12.5% + 10px);
    padding-right: 12.5%;
  }
  .about-strength .w-50:nth-child(3) .desc-head {
    text-align: center;
  }
}

.about-strength_thumb {
  position: relative;
  height: 75vw;
}

.about-strength_thumb img {
  position: absolute;
  height: 75vw;
  width: 100%;
}

.about-strength_message {
  position: absolute;
  top: 50%;
  left: 50%;
  height: 65vh;
  width: 65vh;
  max-width: 700px;
  max-height: 700px;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 5% 0;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

@media screen and (min-width: 1100px) and (max-height: 780px) {
  .about-strength_message {
    height: 550px;
    width: 550px;
    padding: 7% 0;
  }
}

@media screen and (max-height: 600px) {
  .about-strength_message {
    height: 500px;
    width: 500px;
  }
}

@media screen and (max-width: 768px) {
  .about-strength_message {
    height: 65vw;
    width: 65vw;
  }
}

@media screen and (max-width: 500px) {
  .about-strength_message {
    font-size: 4.8vw;
    height: 60vw;
    width: 60vw;
  }
}

.about-strength_message h2 {
  color: #fff;
  font-size: 4vh;
  text-shadow: 0 0 8px rgba(0, 0, 0, 0.4);
  font-weight: bold;
  width: 6.4em;
}

@media screen and (min-width: 1100px) and (max-height: 780px) {
  .about-strength_message h2 {
    font-size: 2.8rem;
  }
}

@media screen and (max-height: 600px) {
  .about-strength_message h2 {
    font-size: 2.6rem;
  }
}

@media screen and (max-width: 768px) {
  .about-strength_message h2 {
    font-size: 3.6vw;
  }
}

@media screen and (max-width: 500px) {
  .about-strength_message h2 {
    font-size: 4.4vw;
    width: 6.5em;
  }
}

.about-strength .desc-head {
  margin-top: 0;
}

.about-strength .desc-head span {
  font-size: 1.8rem;
}

.about-strength .more-btn {
  margin-top: 40px;
  width: 100%;
}

@media screen and (max-width: 500px) {
  .about-strength .more-btn {
    margin-top: 35px;
    width: 50%;
    margin-left: auto;
    margin-right: auto;
  }
}

.about-strength_thumb {
  position: relative;
}

.expert-reason_head h2 {
  overflow: hidden;
}

.expert-reason_head h2 div {
  -webkit-transform: translateX(-103%);
  transform: translateX(-103%);
  -webkit-transition: 0.8s cubic-bezier(0.05, 0.39, 0.76, 0.89) 1s;
  transition: 0.8s cubic-bezier(0.05, 0.39, 0.76, 0.89) 1s;
}

.view.expert-reason_head h2 div {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
}

/*Windows 対応*/
.win .about-groups_logo img {
  height: 34px;
}

.win .about-groups_list:nth-child(8) .about-groups_logo img {
  height: 28px;
  margin-top: 6px;
}
/*# sourceMappingURL=about.min.css.map */
