@charset "UTF-8";
/*------------------------------------------------------
# functions
-------------------------------------------------------*/
/*------------------------------------------------------
# media query
-------------------------------------------------------*/
:root {
  --color-g_1: #048436;
  --color_w_1: #ffffff;
  --color_lg_1: #F0F2E5;
  --color_lg_2: #f7f9f2;
  --color_lg_3: #f0f0d9;
  --color_y_1: #ffffce;
  --color_y_2: #fff000;
  --color_b_1: #b28147;
  --color_p_1: #f28661;
  --color_base_font: #454545;
}

@media only screen and (max-width: 750px) {
  html {
    overflow-x: hidden;
  }
}

body {
  font-family: "Noto Sans JP", sans-serif;
  font-feature-settings: "palt";
  color: var(--color_base_font);
  overflow-x: hidden;
}

.ri {
  width: 100%;
  height: auto;
}

.disp-sp,
.br-sp {
  display: none;
}
@media only screen and (max-width: 750px) {
  .disp-sp,
  .br-sp {
    display: block;
  }
}
.disp-pc,
.br-pc {
  display: block;
}
@media only screen and (max-width: 750px) {
  .disp-pc,
  .br-pc {
    display: none;
  }
}

.header {
  background: url("../../images/o2/kv_bg_01.png") no-repeat;
  background-position: 0 1.94375vw;
  background-size: cover;
}
@media only screen and (max-width: 750px) {
  .header {
    background-position: 0 73.3333333333vw;
    background-size: 195.4666666667vw auto;
  }
}
.header__in {
  position: relative;
  height: 53.8541666667vw;
}
@media only screen and (max-width: 750px) {
  .header__in {
    height: 179.7333333333vw;
  }
}
.header__title {
  position: absolute;
  top: -3.6092843327%;
  left: 19.6244791667%;
  /* width: 60.6770833333%; */
  width: 63.6770833333%;
  opacity: 0;
}
@media only screen and (max-width: 750px) {
  .header__title {
    /* top: 47.0623145401%; */
    top: 43.0623145401%;
    left: 50%;
    transform: translateX(-50%);
    width: 92%;
  }
}
.header__subtitle {
  position: absolute;
  top: 14.9013539652%;
  left: 19.9427083333%;
  width: 29.0104166667%;
  opacity: 0;
}
@media only screen and (max-width: 750px) {
  .header__subtitle {
    /* top: 35.8323442136%; */
    top: 31.8323442136%;
    left: 50%;
    transform: translateX(-50%);
    width: 86.7253333333%;
  }
}
.header__catchphrase {
  position: absolute;
  top: -9.9787234043%;
  left: -2.1822916667%;
  width: 19.84375%;
  opacity: 0;
}
@media only screen and (max-width: 750px) {
  .header__catchphrase {
    /* top: 11.4317507418%; */
    top: 7.4317507418%;
    left: 50%;
    transform: translateX(-50%);
    width: 40.3226666667%;
  }
}
.header__text {
  position: absolute;
  bottom: 0;
  left: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: 4.5833333333vw;
  background-color: var(--color-g_1);
  color: var(--color_w_1);
  font-weight: bold;
  font-size: 1.4583333333vw;
}
@media only screen and (max-width: 750px) {
  .header__text {
    height: 19.7333333333vw;
    font-size: 4.8vw;
    line-height: 1.5555555556;
    text-align: center;
  }
}

.footer {
  background-color: var(--color-g_1);
}
.footer__in {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
}
.footer__copyright {
  font-weight: 500;
  font-size: 18px;
  line-height: 1.5555555556;
  color: var(--color_w_1);
  text-align: center;
  padding: 25px 0 30px;
}
@media only screen and (max-width: 1140px) {
  .footer__copyright {
    font-size: 1.5789473684vw;
    padding: 2.1929824561vw 0 2.6315789474vw;
  }
}
@media only screen and (max-width: 750px) {
  .footer__copyright {
    font-size: 2.6666666667vw;
    line-height: 1;
    padding: 0 0 8vw;
  }
}

.trouble {
  position: relative;
  z-index: 2;
  padding: 105px 0;
}
@media only screen and (max-width: 750px) {
  .trouble {
    padding: 8vw 0;
  }
}
@media only screen and (max-width: 1004px) {
  .trouble {
    padding: 9.2105263158vw 0;
  }
}
.trouble__in {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
}
.trouble__title {
  opacity: 0;
  font-size: 38px;
  text-align: center;
  font-weight: bold;
  margin-bottom: 50px;
}
@media only screen and (max-width: 1004px) {
  .trouble__title {
    font-size: 3.3333333333vw;
    margin-bottom: 4.3859649123vw;
  }
}
@media only screen and (max-width: 750px) {
  .trouble__title {
    font-size: 5.3333333333vw;
    line-height: 1.4;
    margin-bottom: 8vw;
  }
}
@media only screen and (max-width: 1004px) {
  .trouble__panel {
    padding: 0 1.7543859649vw;
  }
}
@media only screen and (max-width: 750px) {
  .trouble__panel {
    overflow-x: scroll;
    padding: 0;
  }
}
.trouble__list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  max-width: content_trouble_widthpx;
  margin: 0 auto 50px;
}
@media only screen and (max-width: 1004px) {
  .trouble__list {
    margin: 0 auto 4.3859649123vw;
  }
}
@media only screen and (max-width: 750px) {
  .trouble__list {
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 199.4666666667vw;
    margin-bottom: 8vw;
    padding: 0 21.3333333333vw;
  }
}
.trouble__list li {
  opacity: 0;
  width: 307px;
}
@media only screen and (max-width: 1004px) {
  .trouble__list li {
    width: 26.9298245614vw;
  }
}
@media only screen and (max-width: 750px) {
  .trouble__list li {
    width: 48vw;
  }
}
.trouble__catchphrase-1 {
  opacity: 0;
  font-weight: bold;
  font-size: 38px;
  line-height: 1.5789473684;
  text-align: center;
  margin-bottom: 54px;
}
@media only screen and (max-width: 1004px) {
  .trouble__catchphrase-1 {
    font-size: 3.3333333333vw;
    margin-bottom: 4.7368421053vw;
  }
}
@media only screen and (max-width: 750px) {
  .trouble__catchphrase-1 {
    font-size: 5.3333333333vw;
    line-height: 1.4;
    margin-bottom: 8vw;
  }
}
.trouble__catchphrase-2 {
  opacity: 0;
  font-weight: bold;
  font-size: 38px;
  line-height: 1.5789473684;
  text-align: center;
  margin-bottom: 15px;
}
@media only screen and (max-width: 1004px) {
  .trouble__catchphrase-2 {
    font-size: 3.3333333333vw;
    margin-bottom: 1.3157894737vw;
  }
}
@media only screen and (max-width: 750px) {
  .trouble__catchphrase-2 {
    font-size: 5.3333333333vw;
    line-height: 1.4;
    margin-bottom: 1.8666666667vw;
  }
}
.trouble__catchphrase-3 {
  opacity: 0;
  font-weight: bold;
  font-size: 50px;
  line-height: 1.34;
  text-align: center;
  color: var(--color-g_1);
}
@media only screen and (max-width: 1004px) {
  .trouble__catchphrase-3 {
    font-size: 4.3859649123vw;
  }
}
@media only screen and (max-width: 750px) {
  .trouble__catchphrase-3 {
    font-size: 6.9333333333vw;
    line-height: 0.9230769231;
  }
}

.feature {
  position: relative;
  z-index: 1;
  background: var(--color_lg_1);
  padding: 190px 0 383px;
}
@media only screen and (max-width: 1140px) {
  .feature {
    padding: 16.6666666667vw 0 383px;
  }
}
@media only screen and (max-width: 750px) {
  .feature {
    padding: 8vw 0;
  }
}
.feature::before {
  content: "";
  display: block;
  position: absolute;
  top: -187px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  background: url("../../images/o2/deco_feature_01.png") no-repeat;
  background-size: contain;
  width: 1100px;
  height: 275px;
}
@media only screen and (max-width: 1140px) {
  .feature::before {
    top: -16.4035087719vw;
    width: 96.4912280702vw;
    height: 24.1228070175vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature::before {
    content: none;
  }
}
.feature__in {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
}
.feature__title {
  opacity: 0;
  font-size: 38px;
  text-align: center;
  font-weight: bold;
  margin-bottom: 50px;
}
@media only screen and (max-width: 1140px) {
  .feature__title {
    font-size: 3.3333333333vw;
    margin-bottom: 4.3859649123vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature__title {
    font-size: 5.3333333333vw;
    line-height: 1.4;
    margin-bottom: 8vw;
  }
}
@media only screen and (max-width: 1140px) {
  .feature__panel {
    padding: 0 1.7543859649vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature__panel {
    overflow-x: scroll;
    padding: 0;
  }
}
.feature__list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  max-width: 965px;
  margin: 0 auto 50px;
}
@media only screen and (max-width: 1140px) {
  .feature__list {
    margin: 0 auto 4.3859649123vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature__list {
    width: 201.6vw;
    margin-bottom: 8vw;
    padding: 0 25.8666666667vw;
  }
}
.feature__list li {
  opacity: 0;
  width: 295px;
  min-height: 526px;
  border-radius: 300px;
  background-color: var(--color_w_1);
  padding: 14px;
}
@media only screen and (max-width: 1140px) {
  .feature__list li {
    width: 25.8771929825vw;
    min-height: 46.1403508772vw;
    padding: 1.2280701754vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature__list li {
    width: 48vw;
    min-height: 102.1333333333vw;
    padding: 2.4vw;
  }
}
.feature__list li figure {
  position: relative;
  width: 100%;
  margin-bottom: 22px;
}
@media only screen and (max-width: 1140px) {
  .feature__list li figure {
    margin-bottom: 1.9298245614vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature__list li figure {
    margin-bottom: 2.9333333333vw;
  }
}
.feature__list li figure::after {
  content: "";
  position: absolute;
  top: 0;
  left: -10px;
  width: 80px;
  height: 80px;
}
@media only screen and (max-width: 1140px) {
  .feature__list li figure::after {
    left: -0.8771929825vw;
    width: 7.0175438596vw;
    height: 7.0175438596vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature__list li figure::after {
    top: 0;
    left: -1.3333333333vw;
    width: 11.2vw;
    height: 11.2vw;
  }
}
.feature__list li:nth-of-type(1) figure::after {
  background: url("../../images/o2/ico_feature_num_01.png") no-repeat;
  background-size: contain;
}
.feature__list li:nth-of-type(2) figure::after {
  background: url("../../images/o2/ico_feature_num_02.png") no-repeat;
  background-size: contain;
}
.feature__list li:nth-of-type(3) figure::after {
  background: url("../../images/o2/ico_feature_num_03.png") no-repeat;
  background-size: contain;
}
.feature__list li h3 {
  width: 194px;
  font-weight: bold;
  font-size: 22px;
  line-height: 1.6818181818;
  text-align: center;
  color: var(--color-g_1);
  margin: 0 auto 15px;
}
@media only screen and (max-width: 1140px) {
  .feature__list li h3 {
    width: 17.0175438596vw;
    font-size: 1.9298245614vw;
    margin: 0 auto 1.3157894737vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature__list li h3 {
    width: 43.4666666667vw;
    font-size: 4.8vw;
    line-height: 1.3333333333;
    margin-bottom: 1.6vw;
  }
}
.feature__list li p {
  width: 194px;
  font-weight: 500;
  font-size: 18px;
  line-height: 1.5555555556;
  margin: 0 auto;
}
@media only screen and (max-width: 1140px) {
  .feature__list li p {
    width: 17.0175438596vw;
    font-size: 1.5789473684vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature__list li p {
    width: 32vw;
    font-size: 3.7333333333vw;
    line-height: 1.7142857143;
  }
}
.feature__catchphrase-1 {
  opacity: 0;
  font-weight: bold;
  font-size: 38px;
  line-height: 1.5789473684;
  text-align: center;
}
@media only screen and (max-width: 1004px) {
  .feature__catchphrase-1 {
    font-size: 3.3333333333vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature__catchphrase-1 {
    font-size: 4.5333333333vw;
    line-height: 1.6470588235;
  }
}

.inspection {
  position: relative;
  z-index: 1;
  background-color: var(--color_lg_1);
  padding: 120px 0 100px;
}
@media only screen and (max-width: 1004px) {
  .inspection {
    padding: 10.5263157895vw 0 8.7719298246vw;
  }
}
@media only screen and (max-width: 750px) {
  .inspection {
    padding: 17.0666666667vw 0 8vw;
  }
}
.inspection__in {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
}
.inspection__title {
  opacity: 0;
  position: absolute;
  top: -46px;
  left: 50%;
  transform: translateX(-50%);
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  width: 1100px;
  min-height: 92px;
  border-radius: 46px;
  background-color: var(--color_w_1);
  font-weight: bold;
  font-size: 36px;
  line-height: 1.3333333333;
  color: var(--color-g_1);
  text-align: center;
}
@media only screen and (max-width: 1140px) {
  .inspection__title {
    top: -4.0350877193vw;
    width: 96.4912280702vw;
    min-height: 8.0701754386vw;
    border-radius: 4.0350877193vw;
    font-size: 3.1578947368vw;
  }
}
@media only screen and (max-width: 750px) {
  .inspection__title {
    top: -8.9333333333vw;
    width: 86.6666666667vw;
    min-height: 17.8666666667vw;
    border-radius: 8.9333333333vw;
    font-size: 4.8vw;
    line-height: 1.3333333333;
  }
}
.inspection__list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 910px;
  margin: 0 auto 70px;
}
@media only screen and (max-width: 1140px) {
  .inspection__list {
    width: 79.8245614035vw;
    margin: 0 auto 6.1403508772vw;
  }
}
@media only screen and (max-width: 750px) {
  .inspection__list {
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
    margin: 0;
    padding: 0 16.5333333333vw;
  }
}
@media only screen and (max-width: 750px) {
  .inspection__list li {
    margin-bottom: 8vw;
  }
}
.inspection__catchphrase {
  opacity: 0;
  font-weight: bold;
  font-size: 38px;
  line-height: 1.5789473684;
  color: var(--color-g_1);
  text-align: center;
}
@media only screen and (max-width: 1004px) {
  .inspection__catchphrase {
    font-size: 3.3333333333vw;
  }
}
@media only screen and (max-width: 750px) {
  .inspection__catchphrase {
    font-size: 5.3333333333vw;
    line-height: 1.4;
  }
}

.box-inspection {
  opacity: 0;
  width: 402px;
}
@media only screen and (max-width: 1140px) {
  .box-inspection {
    width: 35.2631578947vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-inspection {
    width: 100%;
  }
}
.box-inspection__title {
  text-align: center;
  margin-bottom: 37px;
}
@media only screen and (max-width: 1140px) {
  .box-inspection__title {
    margin-bottom: 3.2456140351vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-inspection__title {
    margin-bottom: 5.3333333333vw;
  }
}
.box-inspection__title-01 img {
  width: 360px;
}
@media only screen and (max-width: 1140px) {
  .box-inspection__title-01 img {
    width: 31.5789473684vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-inspection__title-01 img {
    width: 51.7333333333vw;
  }
}
.box-inspection__title-02 img {
  width: 212px;
}
@media only screen and (max-width: 1140px) {
  .box-inspection__title-02 img {
    width: 18.5964912281vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-inspection__title-02 img {
    width: 31.4666666667vw;
  }
}
.box-inspection__lead {
  min-height: 536px;
  background-color: var(--color_b_1);
  border-radius: 20px;
}
@media only screen and (max-width: 1140px) {
  .box-inspection__lead {
    min-height: 47.0175438596vw;
    border-radius: 1.7543859649vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-inspection__lead {
    min-height: initial;
    border-radius: 5.3333333333vw;
    padding-bottom: 4vw;
  }
}
.box-inspection__figure {
  margin-bottom: 6px;
}
@media only screen and (max-width: 1140px) {
  .box-inspection__figure {
    margin-bottom: 0.5263157895vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-inspection__figure {
    position: relative;
    z-index: 1;
    margin-bottom: -2.6666666667vw;
  }
}
.box-inspection__catchphrase {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  width: 323px;
  min-height: 44px;
  background-color: var(--color_w_1);
  border-radius: 22px;
  font-weight: bold;
  font-size: 28px;
  line-height: 1.3571428571;
  color: var(--color_b_1);
  text-align: center;
  margin: 0 auto 17px;
}
@media only screen and (max-width: 1140px) {
  .box-inspection__catchphrase {
    width: 28.3333333333vw;
    min-height: 3.8596491228vw;
    border-radius: 1.9298245614vw;
    font-size: 2.4561403509vw;
    margin: 0 auto 1.4912280702vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-inspection__catchphrase {
    position: relative;
    z-index: 2;
    width: 54.1333333333vw;
    min-height: 7.2vw;
    border-radius: 3.6vw;
    font-size: 4vw;
    line-height: 1.3333333333;
    margin: 0 auto 2.6666666667vw;
  }
}
.box-inspection__detail {
  font-weight: 500;
  font-size: 18px;
  line-height: 1.5555555556;
  color: var(--color_w_1);
  text-align: left;
  padding: 0 40px;
}
@media only screen and (max-width: 1140px) {
  .box-inspection__detail {
    font-size: 1.5789473684vw;
    padding: 0 3.5087719298vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-inspection__detail {
    font-size: 3.7333333333vw;
    line-height: 1.7142857143;
    padding: 0 6.6666666667vw;
  }
}

.box-comp {
  display: -ms-flexbox;
  display: flex;
  width: 910px;
  margin: 0 auto 36px;
}
@media only screen and (max-width: 1140px) {
  .box-comp {
    width: 79.8245614035vw;
    margin: 0 auto 3.1578947368vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-comp {
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
    margin-bottom: 8vw;
    padding: 0 6.6666666667vw;
  }
}
.box-comp__title {
  -ms-flex-order: 2;
  order: 2;
  width: 302px;
  height: 246px;
  background-color: var(--color_w_1);
  font-weight: bold;
  font-size: 36px;
  line-height: 1.1666666667;
  text-align: center;
  padding-top: 66px;
}
@media only screen and (max-width: 1140px) {
  .box-comp__title {
    width: 26.4912280702vw;
    height: 21.5789473684vw;
    font-size: 3.1578947368vw;
    padding-top: 5.7894736842vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-comp__title {
    -ms-flex-order: 1;
    order: 1;
    width: 100%;
    height: auto;
    background-color: transparent;
    font-size: 5.3333333333vw;
    line-height: 1;
    padding-top: 0;
    margin-bottom: 4.5333333333vw;
  }
}
.box-comp__title span {
  font-weight: 500;
  font-size: 18px;
  line-height: 1.5555555556;
}
@media only screen and (max-width: 1140px) {
  .box-comp__title span {
    font-size: 1.5789473684vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-comp__title span {
    font-size: 3.7333333333vw;
    line-height: 1;
  }
}
.box-comp__detail {
  width: 304px;
  height: 246px;
  background-color: var(--color_w_1);
  text-align: center;
  padding: 27px 0 30px;
}
@media only screen and (max-width: 1140px) {
  .box-comp__detail {
    width: 26.6666666667vw;
    height: 21.5789473684vw;
    padding: 2.3684210526vw 0 2.6315789474vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-comp__detail {
    width: 100%;
    height: auto;
    min-height: 30.9333333333vw;
  }
}
.box-comp__detail-straight {
  -ms-flex-order: 1;
  order: 1;
  border-radius: 123px 0 0 123px;
  padding-left: 78px;
}
@media only screen and (max-width: 1140px) {
  .box-comp__detail-straight {
    border-radius: 10.7894736842vw 0 0 10.7894736842vw;
    padding-left: 6.8421052632vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-comp__detail-straight {
    -ms-flex-order: 2;
    order: 2;
    border-radius: 15.4666666667vw;
    margin-bottom: 2.6666666667vw;
    padding: 3.2vw 0 2.1333333333vw;
  }
}
.box-comp__detail-omnidirectional {
  -ms-flex-order: 3;
  order: 3;
  border-radius: 0 123px 123px 0;
  padding-right: 78px;
}
@media only screen and (max-width: 1140px) {
  .box-comp__detail-omnidirectional {
    border-radius: 0 10.7894736842vw 10.7894736842vw 0;
    padding-right: 6.8421052632vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-comp__detail-omnidirectional {
    -ms-flex-order: 3;
    order: 3;
    border-radius: 15.4666666667vw;
    padding: 3.2vw 0 2.1333333333vw;
  }
}
.box-comp__subject {
  font-weight: bold;
  font-size: 30px;
  line-height: 1.1333333333;
  color: var(--color-g_1);
  margin-bottom: 16px;
}
@media only screen and (max-width: 1140px) {
  .box-comp__subject {
    font-size: 2.6315789474vw;
    margin-bottom: 1.4035087719vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-comp__subject {
    font-size: 4.8vw;
    line-height: 1.3333333333;
    margin-bottom: 1.8666666667vw;
  }
}
.box-comp__result {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  height: 26px;
  background-color: var(--color_y_2);
  font-weight: 500;
  font-size: 20px;
  line-height: 1;
  border-radius: 13px;
  margin-bottom: 6px;
}
@media only screen and (max-width: 1140px) {
  .box-comp__result {
    height: 2.2807017544vw;
    font-size: 1.7543859649vw;
    border-radius: 1.1403508772vw;
    margin-bottom: 0.5263157895vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-comp__result {
    width: 30.1333333333vw;
    height: 4.8vw;
    font-size: 3.7333333333vw;
    line-height: 1;
    border-radius: 2.4vw;
    margin: 0 auto 1.0666666667vw;
  }
}
.box-comp__num {
  font-weight: bold;
  font-size: 48px;
  line-height: 1.5833333333;
}
@media only screen and (max-width: 1140px) {
  .box-comp__num {
    font-size: 4.2105263158vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-comp__num {
    font-size: 8vw;
    line-height: 1;
  }
}
.box-comp__num-win {
  font-size: 64px;
  line-height: 1.25;
  color: var(--color_p_1);
}
@media only screen and (max-width: 1140px) {
  .box-comp__num-win {
    font-size: 5.6140350877vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-comp__num-win {
    font-size: 10.6666666667vw;
    line-height: 1;
  }
}

.feature-pile {
  position: relative;
  z-index: 1;
  background: url("../../images/o2/bg_feature_pile_01.png");
  background-size: 100% auto;
  padding: 432px 0 44px;
}
@media only screen and (max-width: 1140px) {
  .feature-pile {
    padding: 37.8947368421vw 0 3.8596491228vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature-pile {
    padding: 114.9333333333vw 0 13.3333333333vw;
  }
}
.feature-pile::before {
  content: "";
  display: block;
  position: absolute;
  top: -282px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  background: url("../../images/o2/bg_feature_pile_mv_pc_01.png") no-repeat;
  background-size: contain;
  width: 1554px;
  height: 610px;
}
@media only screen and (max-width: 1140px) {
  .feature-pile::before {
    top: -24.7368421053vw;
    width: 136.3157894737vw;
    height: 53.5087719298vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature-pile::before {
    top: 0;
    background: url("../../images/o2/bg_feature_pile_mv_01.png") no-repeat;
    background-size: contain;
    width: 100%;
    height: 106.9333333333vw;
  }
}
.feature-pile__in {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
}
.feature-pile__title {
  opacity: 0;
  font-weight: bold;
  font-size: 48px;
  line-height: 1.3958333333;
  color: var(--color_w_1);
  text-align: center;
  margin-bottom: 80px;
}
@media only screen and (max-width: 1140px) {
  .feature-pile__title {
    font-size: 4.2105263158vw;
    margin-bottom: 7.0175438596vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature-pile__title {
    font-size: 5.3333333333vw;
    line-height: 1.4;
    margin-bottom: 9.0666666667vw;
  }
}
.feature-pile__list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: start;
  align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  margin: 0 auto 50px;
}
@media only screen and (max-width: 1140px) {
  .feature-pile__list {
    margin: 0 auto 4.3859649123vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature-pile__list {
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 0 6.6666666667vw;
  }
}
.feature-pile__list li {
  opacity: 0;
  width: 300px;
  min-height: 479px;
  margin: 0 31px 56px;
}
@media only screen and (max-width: 1140px) {
  .feature-pile__list li {
    width: 26.1403508772vw;
    min-height: 42.0175438596vw;
    margin: 0 2.7192982456vw 4.9122807018vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature-pile__list li {
    width: 100%;
    min-height: initial;
    margin: 0 0 13.3333333333vw;
  }
}
.feature-pile__list li figure {
  position: relative;
  width: 100%;
  margin-bottom: 28px;
  padding: 0 23px;
}
@media only screen and (max-width: 1140px) {
  .feature-pile__list li figure {
    margin-bottom: 2.4561403509vw;
    padding: 0 2.0175438596vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature-pile__list li figure {
    width: 45.8666666667vw;
    margin: 0 auto 5.3333333333vw;
    padding: 0;
  }
}
.feature-pile__list li p {
  width: 100%;
  font-weight: 500;
  font-size: 20px;
  line-height: 1.6;
  color: var(--color_w_1);
  margin: 0 auto;
}
@media only screen and (max-width: 1140px) {
  .feature-pile__list li p {
    font-size: 1.7543859649vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature-pile__list li p {
    font-size: 3.7333333333vw;
    line-height: 1.7142857143;
  }
}

.feature-add {
  position: relative;
  z-index: 1;
  /* background: url("../../images/o2/bg_function_01.png") no-repeat center bottom;
  background-size: 1920px auto;
  padding: 103px 0 574px; */
  padding-block: 100px;
}
@media only screen and (max-width: 1140px) {
  .feature-add {
    /* background-size: 168.4210526316vw auto;
    padding: 9.0350877193vw 0 50.350877193vw; */
    padding-block: 9.0350877193vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature-add {
    /* background-size: 205.8666666667vw auto;
    padding: 8vw 0 60vw; */
    padding-block: 8vw;
  }
}
.feature-add__in {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
}
.feature-add__title {
  font-weight: bold;
  font-size: 38px;
  line-height: 1.7631578947;
  text-align: center;
  margin-bottom: 50px;
}
.feature-add__title--green {
  color: var(--color-g_1);
  margin-bottom: .5em;
}
@media only screen and (max-width: 1140px) {
  .feature-add__title {
    font-size: 3.3333333333vw;
    margin-bottom: 4.3859649123vw;
  }
  .feature-add__title--green {
    margin-bottom: 4vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature-add__title {
    font-size: 5.3333333333vw;
    line-height: 1.4;
    margin-bottom: 8vw;
  }
  .feature-add__title--green {
    margin-bottom: 4vw;
  }
}
.feature-add__list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: start;
  align-items: flex-start;
  /* width: 808px; */
  width: 682px;
  margin: 0 auto;
}
.feature-add__list-lg {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: start;
  align-items: flex-start;
  width: 1098px;
  margin: 0 auto 100px;
}
@media only screen and (max-width: 1140px) {
  .feature-add__list {
    width: 70.8771929825vw;
  }
  .feature-add__list-lg {
    width: 80.8771929825vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature-add__list,
  .feature-add__list-lg {
    width: 100%;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 0 6.6666666667vw;
  }
}
.feature-add__list li {
  opacity: 0;
  width: 170px;
}
.feature-add__list-lg li {
  opacity: 0;
  width: 509px;
}
@media only screen and (max-width: 1140px) {
  .feature-add__list li {
    width: 14.9122807018vw;
  }
  .feature-add__list-lg li {
    width: 45.350877193vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature-add__list li {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 6.6666666667vw;
  }
  .feature-add__list-lg li {
    width: 100%;
    margin-bottom: 6.6666666667vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature-add__list li:last-child {
    margin-bottom: 0;
  }
  .feature-add__list-lg li:last-child {
    margin-bottom: 0;
  }
}
.feature-add__list li figure {
  width: 161px;
  margin: 0 auto 30px;
}
@media only screen and (max-width: 1140px) {
  .feature-add__list li figure {
    width: 14.1228070175vw;
    margin: 0 auto 2.6315789474vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature-add__list li figure {
    width: 20vw;
    margin: 0;
  }
}
.feature-add__list li p {
  font-weight: 500;
  font-size: 18px;
  line-height: 1.5555555556;
  text-align: left;
}
@media only screen and (max-width: 1140px) {
  .feature-add__list li p {
    font-size: 1.5789473684vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature-add__list li p {
    width: 63.2vw;
    font-size: 3.7333333333vw;
    line-height: 1.4285714286;
  }
}

.feature-conv {
  background-color: var(--color_lg_2);
  padding: 103px 0 0;
}
@media only screen and (max-width: 1140px) {
  .feature-conv {
    padding: 9.0350877193vw 0 0;
  }
}
@media only screen and (max-width: 750px) {
  .feature-conv {
    background-color: var(--color_w_1);
    padding: 8vw 0;
  }
}
.feature-conv__in {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
}
.feature-conv__title {
  font-weight: bold;
  font-size: 38px;
  line-height: 1.5789473684;
  text-align: center;
  margin-bottom: 50px;
}
@media only screen and (max-width: 1140px) {
  .feature-conv__title {
    font-size: 3.3333333333vw;
    margin-bottom: 4.3859649123vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature-conv__title {
    font-size: 5.3333333333vw;
    line-height: 1.4;
    margin-bottom: 8vw;
  }
}
.feature-conv__title p {
  font-weight: 500;
  font-size: 18px;
  line-height: 1.5555555556;
}
@media only screen and (max-width: 1140px) {
  .feature-conv__title p {
    font-size: 1.5789473684vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature-conv__title p {
    font-size: 2.4vw;
  }
}
.feature-conv__list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: start;
  align-items: flex-start;
  width: 632px;
  margin: 0 auto;
}
@media only screen and (max-width: 1140px) {
  .feature-conv__list {
    width: 55.4385964912vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature-conv__list {
    width: 100%;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 0 6.6666666667vw;
  }
}
.feature-conv__list li {
  opacity: 0;
  width: 170px;
}
@media only screen and (max-width: 1140px) {
  .feature-conv__list li {
    width: 14.9122807018vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature-conv__list li {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 6.6666666667vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature-conv__list li:last-child {
    margin-bottom: 0;
  }
}
.feature-conv__list li figure {
  width: 116px;
  margin: 0 auto 30px;
}
@media only screen and (max-width: 1140px) {
  .feature-conv__list li figure {
    width: 10.1754385965vw;
    margin: 0 auto 2.6315789474vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature-conv__list li figure {
    width: 15.4666666667vw;
    margin: 0;
  }
}
.feature-conv__list li p {
  font-weight: 500;
  font-size: 18px;
  line-height: 1.5555555556;
  text-align: left;
}
@media only screen and (max-width: 1140px) {
  .feature-conv__list li p {
    font-size: 1.5789473684vw;
  }
}
@media only screen and (max-width: 750px) {
  .feature-conv__list li p {
    width: 66.9333333333vw;
    font-size: 3.7333333333vw;
    line-height: 1.4285714286;
  }
}

.comparison {
  background-color: var(--color_lg_2);
  padding: 103px 0 100px;
}
@media only screen and (max-width: 1140px) {
  .comparison {
    padding: 9.0350877193vw 0 8.7719298246vw;
  }
}
@media only screen and (max-width: 750px) {
  .comparison {
    padding: 8vw 0;
  }
}
.comparison__in {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
}
.comparison__title {
  font-weight: bold;
  font-size: 38px;
  line-height: 1.5789473684;
  text-align: center;
  margin-bottom: 50px;
}
@media only screen and (max-width: 1140px) {
  .comparison__title {
    font-size: 3.3333333333vw;
    margin-bottom: 4.3859649123vw;
  }
}
@media only screen and (max-width: 750px) {
  .comparison__title {
    font-size: 5.3333333333vw;
    line-height: 1.4;
    margin-bottom: 8vw;
  }
}
.comparison__list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: start;
  align-items: flex-start;
  width: 100%;
  margin: 0 auto;
}
@media only screen and (max-width: 1140px) {
  .comparison__list {
    padding: 0 1.7543859649vw;
  }
}
@media only screen and (max-width: 750px) {
  .comparison__list {
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 0 0 0 6.6666666667vw;
  }
}
.comparison__list > li {
  opacity: 0;
  width: 530px;
  border-radius: 300px 300px 66px 66px;
  padding: 29px 25px 38px;
}
@media only screen and (max-width: 1140px) {
  .comparison__list > li {
    width: 46.4912280702vw;
    border-radius: 26.3157894737vw 26.3157894737vw 5.7894736842vw 5.7894736842vw;
    padding: 2.5438596491vw 2.1929824561vw 3.3333333333vw;
  }
}
@media only screen and (max-width: 750px) {
  .comparison__list > li {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    /* height: 51.4666666667vw; */
    height: 51.4666666667vw;
    border-radius: 26.6666666667vw 0 0 26.6666666667vw;
    padding: 2.6666666667vw 2.6666666667vw 2.6666666667vw 29.0666666667vw;
  }
}
.comparison__list > li:nth-of-type(1) {
  background-color: var(--color_lg_3);
}
@media only screen and (max-width: 750px) {
  .comparison__list > li:nth-of-type(1) {
    margin-bottom: 2.6666666667vw;
  }
}
.comparison__list > li:nth-of-type(2) {
  background-color: var(--color_w_1);
}
.comparison__list > li figure {
  margin-bottom: 30px;
}
@media only screen and (max-width: 1140px) {
  .comparison__list > li figure {
    margin-bottom: 2.6315789474vw;
  }
}
@media only screen and (max-width: 750px) {
  .comparison__list > li figure {
    position: absolute;
    top: 50%;
    left: -5.0666666667vw;
    transform: translateY(-50%);
    width: 28.8vw;
    margin: 0.5333333333vw 4.8vw 0 0;
  }
}

@media only screen and (max-width: 750px) {
  .defi-comparison {
    width: 64.8vw;
    overflow-x: scroll;
  }
}
@media only screen and (max-width: 750px) {
  .defi-comparison__in {
    display: -ms-flexbox;
    display: flex;
    width: 517.8666666667vw;
  }
}
@media only screen and (max-width: 750px) {
  .defi-comparison__items-material {
    width: 52vw;
    height: 45.8666666667vw;
    margin-right: 5.3333333333vw;
  }
}
@media only screen and (max-width: 750px) {
  .defi-comparison__items-composition {
    width: 113.0666666667vw;
    height: 45.8666666667vw;
    margin-right: 5.3333333333vw;
  }
}
@media only screen and (max-width: 750px) {
  .defi-comparison__items-function {
    width: 92.8vw;
    height: 45.8666666667vw;
    margin-right: 5.3333333333vw;
  }
}
@media only screen and (max-width: 750px) {
  .defi-comparison__items-feature {
    width: 244vw;
    height: 45.8666666667vw;
  }
}
.defi-comparison__title {
  font-weight: bold;
  font-size: 22px;
  line-height: 1.6818181818;
  text-align: center;
  color: var(--color-g_1);
  background-color: var(--color_w_1);
  border-radius: 19px;
}
@media only screen and (max-width: 1140px) {
  .defi-comparison__title {
    font-size: 1.9298245614vw;
    border-radius: 1.6666666667vw;
  }
}
@media only screen and (max-width: 750px) {
  .defi-comparison__title {
    font-size: 3.7333333333vw;
    line-height: 1.7142857143;
    border-radius: 3.2vw;
  }
}
.defi-comparison__title-lg {
  background-color: var(--color_lg_3);
}
.defi-comparison__title-con {
  text-align: center;
}
.defi-comparison__title-con img {
  width: 286px;
  margin: 0 auto;
}
@media only screen and (max-width: 1140px) {
  .defi-comparison__title-con img {
    width: 25.0877192982vw;
  }
}
@media only screen and (max-width: 750px) {
  .defi-comparison__title-con img {
    width: 55.2vw;
    margin: 0;
  }
}
.defi-comparison__title-sturf,
.defi-comparison__title-note {
  text-align: center;
}
.defi-comparison__title-sturf img {
  width: 278px;
  margin: 0 auto;
}
.defi-comparison__title-note img {
  width: 394px;
  margin: 0 auto;
}
@media only screen and (max-width: 1140px) {
  .defi-comparison__title-sturf img {
    width: 24.3859649123vw;
  }
  .defi-comparison__title-note img {
    width: 34.8333333333vw;
    margin: 0 auto;
  }
}
@media only screen and (max-width: 750px) {
  .defi-comparison__title-sturf img {
    width: 53.6vw;
    margin: 0;
  }
  .defi-comparison__title-note img {
    width: 91.6vw;
    margin: 0;
  }
}
.defi-comparison__material {
  min-height: 100px;
  font-weight: 500;
  font-size: 18px;
  line-height: 1.5555555556;
  text-align: left;
  padding: 22px 0 20px;
}
@media only screen and (max-width: 1140px) {
  .defi-comparison__material {
    min-height: 8.7719298246vw;
    font-size: 1.5789473684vw;
    padding: 1.9298245614vw 0 1.7543859649vw;
  }
}
@media only screen and (max-width: 750px) {
  .defi-comparison__material {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    height: 33.6vw;
    min-height: initial;
    font-size: 3.7333333333vw;
    line-height: 1.4285714286;
    text-align: center;
    padding: 0;
  }
}
.defi-comparison__composition {
  padding: 22px 0 20px;
}
@media only screen and (max-width: 1140px) {
  .defi-comparison__composition {
    padding: 1.9298245614vw 0 1.7543859649vw;
  }
}
@media only screen and (max-width: 750px) {
  .defi-comparison__composition {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 4.2666666667vw 0 0;
  }
}
.defi-comparison__composition-text1 {
  font-weight: 500;
  font-size: 18px;
  line-height: 1.5555555556;
  text-align: center;
  margin-bottom: 32px;
}
@media only screen and (max-width: 1140px) {
  .defi-comparison__composition-text1 {
    font-size: 1.5789473684vw;
    margin-bottom: 2.8070175439vw;
  }
}
@media only screen and (max-width: 750px) {
  .defi-comparison__composition-text1 {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 56.5333333333vw;
    font-size: 3.7333333333vw;
    line-height: 1.4285714286;
    margin: 0 9.3333333333vw 0 0;
  }
}
.defi-comparison__composition-text2 {
  font-weight: bold;
  font-size: 22px;
  line-height: 1.6818181818;
  text-align: center;
  color: var(--color-g_1);
}
@media only screen and (max-width: 1140px) {
  .defi-comparison__composition-text2 {
    font-size: 1.9298245614vw;
  }
}
@media only screen and (max-width: 750px) {
  .defi-comparison__composition-text2 {
    width: 100%;
    /* font-size: 5.3333333333vw; */
    font-size: 4.3333333333vw;
    line-height: 1.85;
  }
}
.defi-comparison__composition-img {
  display: block;
  width: 178px;
  margin: 0 auto 34px;
}
@media only screen and (max-width: 1140px) {
  .defi-comparison__composition-img {
    width: 15.6140350877vw;
    margin: 0 auto 2.9824561404vw;
  }
}
@media only screen and (max-width: 750px) {
  .defi-comparison__composition-img {
    width: 22.9333333333vw;
    margin: 0;
  }
}
.defi-comparison__composition-img-sturf {
  width: 178px;
}
@media only screen and (max-width: 1140px) {
  .defi-comparison__composition-img-sturf {
    width: 15.6140350877vw;
  }
}
@media only screen and (max-width: 750px) {
  .defi-comparison__composition-img {
    width: 22.9333333333vw;
    margin: 0;
  }
}
.defi-comparison__function {
  padding: 28px 0 5px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  /* -ms-flex-pack: justify;
  justify-content: space-between; */
  justify-content: flex-start;
}
@media only screen and (max-width: 1140px) {
  .defi-comparison__function {
    padding: 2.4561403509vw 0 0.4385964912vw;
  }
}
@media only screen and (max-width: 750px) {
  .defi-comparison__function {
    width: calc(100% + 4vw);
    margin: 0 -2vw;
    padding: 0;
  }
}
.defi-comparison__function img {
  width: 76px;
  margin: 0 10px 23px;
}
.defi-comparison__box-sturf-note {
  align-content: center;
  margin: 0 10px 23px;
}
@media only screen and (max-width: 1140px) {
  .defi-comparison__function img {
    width: 6.6666666667vw;
    margin: 0 0.8771929825vw 2.0175438596vw;
  }
  .defi-comparison__box-sturf-note {
    font-size: .8em;
    margin: 0 0.8771929825vw 2.0175438596vw;
  }
}
@media only screen and (max-width: 750px) {
  .defi-comparison__function img {
    /* width: 15.2vw; */
    width: 11vw;
    /* margin: 5.3333333333vw 2vw 0; */
    margin: 4vw 1vw 0;
  }
  .defi-comparison__box-sturf-note {
    font-size: .6em;
    margin: 0 1vw;
    margin-top: 4vw;
  }
}
.defi-comparison__feature {
  padding: 28px 0 22px;
}
@media only screen and (max-width: 1140px) {
  .defi-comparison__feature {
    padding: 2.4561403509vw 0 1.9298245614vw;
  }
}
@media only screen and (max-width: 750px) {
  .defi-comparison__feature {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 5.3333333333vw 0 0;
  }
}
.defi-comparison__box-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  min-height: 190px;
  background-color: var(--color_w_1);
  border: 1px solid var(--color-g_1);
  border-radius: 20px;
  font-weight: 500;
  font-size: 18px;
  line-height: 1.6666666667;
  margin-bottom: 22px;
  padding: 0 30px;
}
@media only screen and (max-width: 1140px) {
  .defi-comparison__box-list {
    min-height: 16.6666666667vw;
    border-radius: 1.7543859649vw;
    font-size: 1.5789473684vw;
    margin-bottom: 1.9298245614vw;
    padding: 0 2.6315789474vw;
  }
}
@media only screen and (max-width: 750px) {
  .defi-comparison__box-list {
    width: 143.4666666667vw;
    min-height: 30.9333333333vw;
    font-size: 3.7333333333vw;
    line-height: 1.4285714286;
    border-radius: 5.3333333333vw;
    margin-bottom: 0;
    padding: 0 5.3333333333vw;
  }
}
.defi-comparison__box-list ul {
  width: 100%;
}
@media only screen and (max-width: 750px) {
  .defi-comparison__box-list ul {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.defi-comparison__box-list ul li {
  position: relative;
  list-style-type: none;
}
@media only screen and (max-width: 750px) {
  .defi-comparison__box-list ul li {
    min-width: calc(50% - 0.6em);
  }
}
.defi-comparison__box-list ul li::before {
  content: "・";
  margin-right: 0.2em;
}
.defi-comparison__box-sturf {
  background-color: var(--color_y_1);
}
@media only screen and (max-width: 750px) {
  .defi-comparison__box-sturf .defi-comparison__box-list {
    font-size: 3.7333333333vw;
    line-height: 1.4285714286;
  }
}
@media only screen and (max-width: 750px) {
  .defi-comparison__box-detail {
    width: 94.9333333333vw;
    margin-left: 1.5em;
  }
}
.defi-comparison__detail {
  min-height: 108px;
  font-weight: 500;
  font-size: 18px;
  line-height: 1.5555555556;
  text-align: left;
  padding: 24px 0 0;
}
@media only screen and (max-width: 1140px) {
  .defi-comparison__detail {
    min-height: 9.4736842105vw;
    font-size: 1.5789473684vw;
    padding: 2.1052631579vw 0 0;
  }
}
@media only screen and (max-width: 750px) {
  .defi-comparison__detail {
    min-height: initial;
    font-size: 3.7333333333vw;
    line-height: 1.4285714286;
  }
}
.defi-comparison__detail-n {
  min-height: 175px;
  padding: 0;
}
@media only screen and (max-width: 1140px) {
  .defi-comparison__detail-n {
    min-height: 15.6140350877vw;
    padding: 0;
  }
}
@media only screen and (max-width: 750px) {
  .defi-comparison__detail-n {
    min-height: initial;
    padding: 0;
  }
}

.recommend {
  background-color: var(--color_w_1);
  padding: 100px 0 0;
}
@media only screen and (max-width: 1140px) {
  .recommend {
    padding: 8.7719298246vw 0 0;
  }
}
@media only screen and (max-width: 750px) {
  .recommend {
    padding: 8vw 0;
  }
}
.recommend__in {
  width: 100%;
  margin: 0 auto;
}
.recommend__title {
  opacity: 0;
  font-weight: bold;
  font-size: 38px;
  line-height: 1.4736842105;
  text-align: center;
  margin-bottom: 50px;
}
@media only screen and (max-width: 1140px) {
  .recommend__title {
    font-size: 3.3333333333vw;
    margin-bottom: 4.3859649123vw;
  }
}
@media only screen and (max-width: 750px) {
  .recommend__title {
    font-size: 5.3333333333vw;
    line-height: 1.4;
    margin-bottom: 8vw;
  }
}
.recommend__list {
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width: 750px) {
  .recommend__list {
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.recommend__list li {
  width: 50%;
}
@media only screen and (max-width: 750px) {
  .recommend__list li {
    width: 100%;
  }
}
.recommend__list li figure {
  position: relative;
}
.recommend__list li figure figcaption {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  /* height: 186px; */
  height: 230px;
  color: var(--color_w_1);
  padding: 15px 20px 0;
}
@media only screen and (max-width: 1920px) {
  .recommend__list li figure figcaption {
    /* height: 9.6875vw; */
    height: 11.9736842105vw;
    padding: 0.78125vw 1.0416666667vw 0;
  }
}
@media only screen and (max-width: 750px) {
  .recommend__list li figure figcaption {
    /* height: 30.6666666667vw; */
    height: 37.6666666667vw;
    padding: 2.6666666667vw 5.3333333333vw;
  }
}
.recommend__list li figure figcaption span {
  position: relative;
  display: inline-block;
  font-weight: bold;
  font-size: 38px;
  line-height: 1.7631578947;
  text-align: left;
  padding-bottom: 10px;
}
@media only screen and (max-width: 1920px) {
  .recommend__list li figure figcaption span {
    font-size: 1.9791666667vw;
    padding-bottom: 0.5208333333vw;
  }
}
@media only screen and (max-width: 750px) {
  .recommend__list li figure figcaption span {
    font-size: 5.3333333333vw;
    line-height: 1.4;
    padding-bottom: 2.6666666667vw;
  }
}
.recommend__list li figure figcaption span::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 494px;
  height: 1px;
  background-color: var(--color_w_1);
}
@media only screen and (max-width: 1920px) {
  .recommend__list li figure figcaption span::after {
    width: 25.7291666667vw;
  }
}
@media only screen and (max-width: 750px) {
  .recommend__list li figure figcaption span::after {
    width: 69.3333333333vw;
  }
}
.recommend__list li figure figcaption p {
  font-weight: bold;
  font-size: 22px;
  line-height: 1.6818181818;
  text-align: left;
  padding-top: 12px;
}
@media only screen and (max-width: 1920px) {
  .recommend__list li figure figcaption p {
    font-size: 1.1458333333vw;
    padding-top: 0.625vw;
  }
}
@media only screen and (max-width: 750px) {
  .recommend__list li figure figcaption p {
    font-size: 3.7333333333vw;
    line-height: 1.7142857143;
    padding-top: 2.6666666667vw;
  }
}

.price {
  background-color: var(--color_lg_2);
  padding: 86px 0 0;
}
@media only screen and (max-width: 1140px) {
  .price {
    padding: 7.5438596491vw 0 0;
  }
}
@media only screen and (max-width: 750px) {
  .price {
    background-color: var(--color_w_1);
    padding: 0;
  }
}
.price__in {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
}
.price__title {
  opacity: 0;
  font-weight: bold;
  font-size: 38px;
  line-height: 1.5789473684;
  text-align: center;
  margin-bottom: 50px;
}
@media only screen and (max-width: 1140px) {
  .price__title {
    font-size: 3.3333333333vw;
    margin-bottom: 4.3859649123vw;
  }
}
@media only screen and (max-width: 750px) {
  .price__title {
    font-size: 5.3333333333vw;
    line-height: 1.4;
    margin-bottom: 8vw;
  }
}

.box-price {
  opacity: 0;
  background: url("../../images/o2/bg_price_pc_01.png") no-repeat center center;
  background-size: cover;
  width: 1100px;
  /* height: 300px; */
  height: 400px;
  margin: 0 auto;
  padding: 32px 0 0;
  border-radius: 40px;
  overflow: hidden;
}
@media only screen and (max-width: 1140px) {
  .box-price {
    /* background-size: contain; */
    width: 96.4912280702vw;
    /* height: 26.3157894737vw; */
    height: 36.3157894737vw;
    padding: 2.8070175439vw 0 0;
  }
}
@media only screen and (max-width: 750px) {
  .box-price {
    background: url("../../images/o2/bg_price_01.png") no-repeat center center;
    /* background-size: contain; */
    background-size: cover;
    border-radius: 0;
    width: 100%;
    /* height: 99.4666666667vw; */
    height: auto;
    /* padding: 9.8666666667vw 0 0; */
    padding: 9.8666666667vw 0;
  }
}
.box-price__title {
  font-weight: bold;
  font-size: 38px;
  line-height: 1.7631578947;
  color: var(--color_w_1);
  text-align: center;
  margin-bottom: 10px;
}
@media only screen and (max-width: 1140px) {
  .box-price__title {
    font-size: 3.3333333333vw;
    margin-bottom: 0.8771929825vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-price__title {
    font-size: 5.3333333333vw;
    line-height: 1.4;
    margin-bottom: 8vw;
  }
}
.box-price__plan-title {
  text-align: center;
  img {
    width: 100%;
    height: auto;
  }
}
.box-price__list {
  /* display: -ms-flexbox;
  display: flex; */
  display: block grid;
  grid-template-columns: 1fr 1fr 1fr;
  align-items: center;
  gap: 10px;
  padding-inline: 80px;
}
@media only screen and (max-width: 1140px) {
  .box-price__list {
    padding-inline: 40px;
  }
}
@media only screen and (max-width: 750px) {
  .box-price__list {
    /* -ms-flex-direction: column;
    flex-direction: column; */
    grid-template-columns: 1fr;
    gap: 25px;
    padding-inline: 0;
  }
}
.box-price__list li {
  position: relative;
  /* width: 50%; */
  /* padding: 10px 0; */
}
.box-price__list li:nth-child(1) {
  order: 2;
  img {
    margin-top: 50px;
  }
}
.box-price__list li:nth-child(2) {
  order: 1;
}
.box-price__list li:nth-child(3) {
  order: 3;
}
.box-price__list li:nth-child(4) {
  order: 5;
}
.box-price__list li:nth-child(5) {
  order: 4;
  .box-price__plan {
    display: none;
  }
}
.box-price__list li:nth-child(6) {
  order: 6;
  .box-price__plan {
    display: none;
  }
}

@media only screen and (max-width: 1140px) {
  .box-price__list li {
    /* padding: 0.8771929825vw 0; */
  }
}
@media only screen and (max-width: 750px) {
  .box-price__list li {
    /* width: 48vw;
    margin: 0 auto 5.3333333333vw;
    padding: 0; */
  }
  .box-price__list li:nth-child(1),
  .box-price__list li:nth-child(2),
  .box-price__list li:nth-child(3),
  .box-price__list li:nth-child(4),
  .box-price__list li:nth-child(5),
  .box-price__list li:nth-child(6) {
    order: 1;
    padding-inline: 24vw;
  }
  .box-price__list li:nth-child(1),
  .box-price__list li:nth-child(4) {
    padding-inline: 18vw;
  }
  .box-price__list li:nth-child(1) {
    img {
      margin-top: 0;
    }
  }
  .box-price__list li:nth-child(4) {
    margin-top: 5vw;
  }
  .box-price__list li:nth-child(5),
  .box-price__list li:nth-child(6) {
    .box-price__plan {
      display: block;
    }
  }
}
/* .box-price__list li:nth-of-type(1)::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  border-left: 6px dotted var(--color_w_1);
}
@media only screen and (max-width: 750px) {
  .box-price__list li:nth-of-type(1)::after {
    content: none;
  }
} */
.box-price__plan {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 243px;
  height: 38px;
  font-weight: bold;
  font-size: 22px;
  line-height: 1;
  color: var(--color_w_1);
  text-align: center;
  border: 2px solid var(--color_w_1);
  border-radius: 20px;
  margin: 0 auto 22px;
}
@media only screen and (max-width: 1140px) {
  .box-price__plan {
    width: 21.3157894737vw;
    height: 3.3333333333vw;
    font-size: 1.9298245614vw;
    margin: 0 auto 1.9298245614vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-price__plan {
    width: 100%;
    height: 8vw;
    font-size: 3.7333333333vw;
    line-height: 1.7142857143;
    margin: 0 auto 5.3333333333vw;
  }
}
.box-price__tax-exc {
  font-weight: bold;
  font-size: 38px;
  line-height: 1.5263157895;
  color: var(--color_w_1);
  text-align: center;
}
@media only screen and (max-width: 1140px) {
  .box-price__tax-exc {
    font-size: 3.3333333333vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-price__tax-exc {
    font-size: 6.9333333333vw;
    line-height: 1.0769230769;
    margin-bottom: 1.6vw;
  }
}
.box-price__tax-inc {
  font-weight: bold;
  font-size: 18px;
  line-height: 1.5555555556;
  color: var(--color_w_1);
  text-align: center;
}
@media only screen and (max-width: 1140px) {
  .box-price__tax-inc {
    font-size: 1.5789473684vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-price__tax-inc {
    font-size: 3.7333333333vw;
    line-height: 1.7142857143;
  }
}

.contact {
  background-color: var(--color_lg_2);
  padding: 80px 0 0;
}
@media only screen and (max-width: 1140px) {
  .contact {
    padding: 7.5438596491vw 0 0;
  }
}
@media only screen and (max-width: 750px) {
  .contact {
    background-color: var(--color_w_1);
    padding: 8vw 0 0;
  }
}
.contact__in {
  width: 100%;
  margin: 0 auto;
}
.contact__catchphrase {
  opacity: 0;
  font-weight: bold;
  font-size: 38px;
  line-height: 1.5789473684;
  text-align: center;
  margin-bottom: 50px;
}
@media only screen and (max-width: 1140px) {
  .contact__catchphrase {
    font-size: 3.3333333333vw;
    margin-bottom: 4.3859649123vw;
  }
}
@media only screen and (max-width: 750px) {
  .contact__catchphrase {
    font-size: 5.3333333333vw;
    line-height: 1.4;
    margin-bottom: 8vw;
  }
}
.contact__boxarea {
  position: relative;
  z-index: 1;
  padding-bottom: 30px;
}
@media only screen and (max-width: 1140px) {
  .contact__boxarea {
    padding-bottom: 2.6315789474vw;
  }
}
@media only screen and (max-width: 750px) {
  .contact__boxarea {
    padding: 0 0.5333333333vw 5.3333333333vw;
  }
}
.contact__boxarea::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -1;
  width: 100%;
  height: 264px;
  background-color: var(--color-g_1);
}
@media only screen and (max-width: 1140px) {
  .contact__boxarea::after {
    height: 23.1578947368vw;
  }
}
@media only screen and (max-width: 750px) {
  .contact__boxarea::after {
    height: 76vw;
  }
}
.contact__foottext {
  font-weight: bold;
  font-size: 38px;
  line-height: 1.7631578947;
  color: var(--color_w_1);
  text-align: center;
}
@media only screen and (max-width: 1140px) {
  .contact__foottext {
    font-size: 3.3333333333vw;
  }
}
@media only screen and (max-width: 750px) {
  .contact__foottext {
    font-size: 4.8vw;
    line-height: 1.5555555556;
  }
}
.contact-b {
  background-color: var(--color_w_1);
}
.contact-b .contact__boxarea {
  padding-bottom: 0;
}
.contact-b .contact__boxarea::after {
  height: 140px;
}
@media only screen and (max-width: 1140px) {
  .contact-b .contact__boxarea::after {
    height: 12.2807017544vw;
  }
}
@media only screen and (max-width: 750px) {
  .contact-b .contact__boxarea::after {
    bottom: -1px;
    height: 45.3333333333vw;
  }
}
.contact-b .contact__boxarea .box-contact {
  margin: 0 auto;
}
@media only screen and (max-width: 1140px) {
  .contact-b .contact__boxarea .box-contact {
    margin: 0 auto;
  }
}

.box-contact {
  display: -ms-flexbox;
  display: flex;
  background: url("../../images/o2/bg_contact_pc_01.png") no-repeat center center;
  background-size: 1118px auto;
  width: 1118px;
  height: 296px;
  margin: 0 auto 30px;
  padding: 55px 25px 0 74px;
}
@media only screen and (max-width: 1140px) {
  .box-contact {
    background-size: 98.0701754386vw auto;
    width: 98.0701754386vw;
    height: 25.9649122807vw;
    margin: 0 auto 2.6315789474vw;
    padding: 4.8245614035vw 2.1929824561vw 0 6.4912280702vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-contact {
    -ms-flex-direction: column;
    flex-direction: column;
    background: url("../../images/o2/bg_contact_01.png") no-repeat top center;
    background-size: contain;
    width: 99.4666666667vw;
    height: 141.8666666667vw;
    margin: 0 auto;
    padding: 8vw 6.1333333333vw 0;
  }
}
.box-contact__title {
  width: 194px;
  margin-right: 54px;
}
@media only screen and (max-width: 1140px) {
  .box-contact__title {
    width: 17.0175438596vw;
    margin-right: 4.7368421053vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-contact__title {
    width: 45.8666666667vw;
    margin: 0 auto 5.3333333333vw;
  }
}
.box-contact__lead {
  width: 750px;
  margin: 8px 0;
}
@media only screen and (max-width: 1140px) {
  .box-contact__lead {
    width: 65.7894736842vw;
    margin: 0.701754386vw 0;
  }
}
@media only screen and (max-width: 750px) {
  .box-contact__lead {
    width: 100%;
    margin: 0;
  }
}
.box-contact__btns {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 17px;
}
@media only screen and (max-width: 1140px) {
  .box-contact__btns {
    margin-bottom: 1.4912280702vw;
  }
}
.box-contact__btns li {
  width: 240px;
}
@media only screen and (max-width: 1140px) {
  .box-contact__btns li {
    width: 21.0526315789vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-contact__btns li {
    width: 100%;
  }
}
@media only screen and (max-width: 750px) {
  .box-contact__btns {
    -ms-flex-direction: column;
    flex-direction: column;
    width: 68.8vw;
    margin: 0 auto 5.3333333333vw;
  }
  .box-contact__btns li:not(:last-child) {
    margin-bottom: 5.3333333333vw;
  }
}
.box-contact__btns a {
  display: inline-block;
}
.box-contact__btns a:hover {
  opacity: 0.9;
}

.evidence {
  background-color: var(--color_w_1);
  padding: 100px 0 50px;
}
@media only screen and (max-width: 1140px) {
  .evidence {
    padding: 8.7719298246vw 0 4.3859649123vw;
  }
}
@media only screen and (max-width: 750px) {
  .evidence {
    padding: 0 0 13.3333333333vw;
  }
}
.evidence__in {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
}
@media only screen and (max-width: 750px) {
  .evidence__boxs {
    padding-bottom: 6.6666666667vw;
  }
}
.evidence__box-l, .evidence__box-c, .evidence__box-r {
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 50px;
}
@media only screen and (max-width: 1140px) {
  .evidence__box-l, .evidence__box-c, .evidence__box-r {
    margin-bottom: 4.3859649123vw;
  }
}
@media only screen and (max-width: 750px) {
  .evidence__box-l, .evidence__box-c, .evidence__box-r {
    -ms-flex-direction: column;
    flex-direction: column;
    margin-bottom: 8vw;
  }
}
.evidence__box-l {
  -ms-flex-pack: start;
  justify-content: flex-start;
}
@media only screen and (max-width: 1140px) {
  .evidence__box-l {
    padding-left: 1.7543859649vw;
  }
}
@media only screen and (max-width: 750px) {
  .evidence__box-l {
    padding-left: 0;
  }
}
.evidence__box-c {
  -ms-flex-pack: center;
  justify-content: center;
}
.evidence__box-r {
  -ms-flex-pack: end;
  justify-content: flex-end;
}
@media only screen and (max-width: 1140px) {
  .evidence__box-r {
    padding-right: 1.7543859649vw;
  }
}
@media only screen and (max-width: 750px) {
  .evidence__box-r {
    padding-right: 0;
  }
}

.head-evidence {
  position: relative;
  min-height: 478px;
  margin-bottom: 50px;
}
@media only screen and (max-width: 1140px) {
  .head-evidence {
    min-height: 41.9298245614vw;
    margin-bottom: 4.3859649123vw;
  }
}
@media only screen and (max-width: 750px) {
  .head-evidence {
    width: 100%;
    margin-bottom: 16vw;
  }
}
.head-evidence__lead {
  opacity: 0;
  width: 50%;
  padding: 50px 55px 0 0;
}
@media only screen and (max-width: 1140px) {
  .head-evidence__lead {
    padding: 4.3859649123vw 4.8245614035vw 0 1.7543859649vw;
  }
}
@media only screen and (max-width: 750px) {
  .head-evidence__lead {
    width: 100%;
    padding: 8vw 6.6666666667vw 0;
  }
}
.head-evidence__title {
  font-weight: bold;
  font-size: 36px;
  color: var(--color-g_1);
  text-align: left;
  margin-bottom: 30px;
}
@media only screen and (max-width: 1140px) {
  .head-evidence__title {
    font-size: 3.1578947368vw;
    margin-bottom: 2.6315789474vw;
  }
}
@media only screen and (max-width: 750px) {
  .head-evidence__title {
    font-size: 5.8666666667vw;
    line-height: 1.2727272727;
    text-align: center;
    margin-bottom: 8vw;
  }
}
.head-evidence__detail {
  font-weight: 500;
  font-size: 18px;
  line-height: 1.5555555556;
  text-align: left;
}
@media only screen and (max-width: 1140px) {
  .head-evidence__detail {
    font-size: 1.5789473684vw;
  }
}
@media only screen and (max-width: 750px) {
  .head-evidence__detail {
    font-size: 3.7333333333vw;
    line-height: 1.7142857143;
  }
}
.head-evidence__figure {
  position: absolute;
  top: 0;
  left: 50%;
  width: 962px;
}
@media only screen and (max-width: 1140px) {
  .head-evidence__figure {
    width: 84.3859649123vw;
  }
}
@media only screen and (max-width: 750px) {
  .head-evidence__figure {
    position: initial;
    width: 100%;
  }
}
.head-evidence-r {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
  justify-content: flex-end;
}
@media only screen and (max-width: 750px) {
  .head-evidence-r {
    display: block;
    width: 100%;
  }
}
.head-evidence-r .head-evidence__lead {
  width: 50%;
  padding: 50px 0 0 55px;
}
@media only screen and (max-width: 1140px) {
  .head-evidence-r .head-evidence__lead {
    padding: 4.3859649123vw 1.7543859649vw 0 4.8245614035vw;
  }
}
@media only screen and (max-width: 750px) {
  .head-evidence-r .head-evidence__lead {
    width: 100%;
    padding: 8vw 6.6666666667vw 0;
  }
}
.head-evidence-r .head-evidence__figure {
  left: initial;
  right: 50%;
}

.box-evidence {
  opacity: 0;
  display: -ms-flexbox;
  display: flex;
  width: 872px;
  min-height: 264px;
  background-color: var(--color_lg_2);
  border-radius: 132px;
  padding: 16px 78px 16px 18px;
}
@media only screen and (max-width: 1140px) {
  .box-evidence {
    width: 76.4912280702vw;
    min-height: 11.5789473684vw;
    border-radius: 11.5789473684vw;
    padding: 1.4035087719vw 6.8421052632vw 1.4035087719vw 1.5789473684vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-evidence {
    background-color: var(--color_w_1);
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
    min-height: initial;
    border-radius: 0;
    padding: 0 6.6666666667vw;
  }
}
.box-evidence__figure {
  width: 232px;
  margin-right: 42px;
}
@media only screen and (max-width: 1140px) {
  .box-evidence__figure {
    width: 20.350877193vw;
    margin-right: 3.6842105263vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-evidence__figure {
    width: 50.6666666667vw;
    margin: 0 auto 5.3333333333vw;
  }
}
.box-evidence__lead {
  width: 502px;
  padding: 26px 0 0;
}
@media only screen and (max-width: 1140px) {
  .box-evidence__lead {
    width: 44.0350877193vw;
    padding: 2.2807017544vw 0 0;
  }
}
@media only screen and (max-width: 750px) {
  .box-evidence__lead {
    width: 100%;
    padding: 0;
  }
}
.box-evidence__title {
  font-weight: bold;
  font-size: 30px;
  line-height: 1.1333333333;
  color: var(--color-g_1);
  text-align: left;
  margin-bottom: 30px;
}
@media only screen and (max-width: 1140px) {
  .box-evidence__title {
    font-size: 2.6315789474vw;
    margin-bottom: 2.6315789474vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-evidence__title {
    font-size: 4.8vw;
    line-height: 1.3333333333;
    text-align: center;
    margin-bottom: 5.3333333333vw;
  }
}
.box-evidence__detail {
  font-weight: 500;
  font-size: 18px;
  line-height: 1.5555555556;
  text-align: left;
}
@media only screen and (max-width: 1140px) {
  .box-evidence__detail {
    font-size: 1.5789473684vw;
  }
}
@media only screen and (max-width: 750px) {
  .box-evidence__detail {
    font-size: 3.7333333333vw;
    line-height: 1.7142857143;
  }
}

.flow {
  background: url("../../images/o2/bg_flow_pc_01.jpg") no-repeat top center;
  background-size: 1920px auto;
  width: 100%;
  min-height: 855px;
  padding: 100px 0 0;
}
@media only screen and (max-width: 1140px) {
  .flow {
    background-size: 168.4210526316vw auto;
    min-height: 75vw;
    padding: 8.7719298246vw 0 0;
  }
}
@media only screen and (max-width: 750px) {
  .flow {
    background: url("../../images/o2/bg_flow_01.jpg") no-repeat top center;
    background-size: contain;
    min-height: 154.6666666667vw;
    padding: 8vw 0 0;
  }
}
.flow__in {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
}
.flow__title {
  opacity: 0;
  font-weight: bold;
  font-size: 36px;
  line-height: 1.4444444444;
  color: var(--color_w_1);
  text-align: center;
  margin-bottom: 50px;
}
@media only screen and (max-width: 1140px) {
  .flow__title {
    font-size: 3.1578947368vw;
    margin-bottom: 4.3859649123vw;
  }
}
@media only screen and (max-width: 750px) {
  .flow__title {
    font-size: 5.3333333333vw;
    line-height: 1.4;
    margin-bottom: 5.3333333333vw;
  }
}
@media only screen and (max-width: 1140px) {
  .flow__panel {
    margin-bottom: 4.3859649123vw;
    padding: 0 1.7543859649vw;
  }
}
@media only screen and (max-width: 750px) {
  .flow__panel {
    overflow-x: scroll;
    padding: 0;
  }
}
.flow__list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (max-width: 750px) {
  .flow__list {
    width: 275.7333333333vw;
    padding: 0 22.1333333333vw;
  }
}
.flow__list li {
  opacity: 0;
  position: relative;
  background: url("../../images/o2/bg_flow_box_pc_01.png") no-repeat top center;
  background-size: contain;
  width: 258px;
  height: 553px;
  padding: 87px 26px 0;
}
@media only screen and (max-width: 1140px) {
  .flow__list li {
    width: 22.6315789474vw;
    height: 48.5087719298vw;
    padding: 7.6315789474vw 2.2807017544vw 0;
  }
}
@media only screen and (max-width: 750px) {
  .flow__list li {
    background: url("../../images/o2/bg_flow_box_01.png") no-repeat top center;
    background-size: contain;
    width: 54.6666666667vw;
    height: 122.6666666667vw;
    padding: 17.6vw 6.6666666667vw 6.6666666667vw;
  }
}
.flow__list li::after {
  content: "";
  position: absolute;
  top: 14px;
  left: 14px;
  width: 68px;
  height: 68px;
}
@media only screen and (max-width: 1140px) {
  .flow__list li::after {
    top: 1.2280701754vw;
    left: 1.2280701754vw;
    width: 5.9649122807vw;
    height: 5.9649122807vw;
  }
}
@media only screen and (max-width: 750px) {
  .flow__list li::after {
    top: 2.9333333333vw;
    left: 2.9333333333vw;
    width: 14.4vw;
    height: 14.4vw;
  }
}
.flow__list li:nth-of-type(1)::after {
  background: url("../../images/o2/ico_flow_num_01.png") no-repeat top center;
  background-size: contain;
}
.flow__list li:nth-of-type(2)::after {
  background: url("../../images/o2/ico_flow_num_02.png") no-repeat top center;
  background-size: contain;
}
.flow__list li:nth-of-type(3)::after {
  background: url("../../images/o2/ico_flow_num_03.png") no-repeat top center;
  background-size: contain;
}
.flow__list li:nth-of-type(4)::after {
  background: url("../../images/o2/ico_flow_num_04.png") no-repeat top center;
  background-size: contain;
}
.flow__list li figure {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 152px;
  margin-bottom: 12px;
}
@media only screen and (max-width: 1140px) {
  .flow__list li figure {
    height: 13.3333333333vw;
    margin-bottom: 1.0526315789vw;
  }
}
@media only screen and (max-width: 750px) {
  .flow__list li figure {
    height: 31.4666666667vw;
    margin-bottom: 2.6666666667vw;
  }
}
.flow__list li p {
  font-weight: 500;
  font-size: 18px;
  line-height: 1.5555555556;
  text-align: left;
}
@media only screen and (max-width: 1140px) {
  .flow__list li p {
    font-size: 1.5789473684vw;
  }
}
@media only screen and (max-width: 750px) {
  .flow__list li p {
    font-size: 3.7333333333vw;
    line-height: 1.7142857143;
  }
}
.flow__ico-01 {
  width: 82px;
  height: auto;
}
@media only screen and (max-width: 1140px) {
  .flow__ico-01 {
    width: 7.1929824561vw;
  }
}
@media only screen and (max-width: 750px) {
  .flow__ico-01 {
    width: 17.6vw;
  }
}
.flow__ico-02 {
  width: 114px;
  height: auto;
}
@media only screen and (max-width: 1140px) {
  .flow__ico-02 {
    width: 10vw;
  }
}
@media only screen and (max-width: 750px) {
  .flow__ico-02 {
    width: 24.5333333333vw;
  }
}
.flow__ico-03 {
  width: 162px;
  height: auto;
}
@media only screen and (max-width: 1140px) {
  .flow__ico-03 {
    width: 14.2105263158vw;
  }
}
@media only screen and (max-width: 750px) {
  .flow__ico-03 {
    width: 28.8vw;
  }
}
.flow__ico-04 {
  width: 76px;
  height: auto;
}
@media only screen and (max-width: 1140px) {
  .flow__ico-04 {
    width: 6.6666666667vw;
  }
}
@media only screen and (max-width: 750px) {
  .flow__ico-04 {
    width: 16vw;
  }
}

.review {
  padding: 100px 0 0;
}
@media only screen and (max-width: 1140px) {
  .review {
    padding: 8.7719298246vw 0 0;
  }
}
@media only screen and (max-width: 750px) {
  .review {
    padding: 8vw 0 0;
  }
}
.review__in {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
}
.review__title {
  font-weight: bold;
  font-size: 38px;
  line-height: 1.5789473684;
  text-align: center;
  margin-bottom: 50px;
}
@media only screen and (max-width: 1140px) {
  .review__title {
    font-size: 3.3333333333vw;
    margin-bottom: 4.3859649123vw;
  }
}
@media only screen and (max-width: 750px) {
  .review__title {
    font-size: 5.3333333333vw;
    line-height: 1.4;
    margin-bottom: 5.3333333333vw;
  }
}
@media only screen and (max-width: 1140px) {
  .review__list {
    padding: 0 1.7543859649vw;
  }
}
@media only screen and (max-width: 750px) {
  .review__list {
    margin: 0 6.6666666667vw;
    padding: 0;
  }
}
.review__list li {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 30px;
}
@media only screen and (max-width: 1140px) {
  .review__list li {
    margin-bottom: 2.6315789474vw;
  }
}
@media only screen and (max-width: 750px) {
  .review__list li {
    margin-bottom: 4vw;
  }
}
.review__list li:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 1140px) {
  .review__list li:last-child {
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 750px) {
  .review__list li:last-child {
    margin-bottom: 0;
  }
}
.review__list li figure {
  width: 116px;
  margin-right: 25px;
}
@media only screen and (max-width: 1140px) {
  .review__list li figure {
    width: 10.1754385965vw;
    margin-right: 2.1929824561vw;
  }
}
@media only screen and (max-width: 750px) {
  .review__list li figure {
    width: 17.3333333333vw;
    margin-right: 2.1333333333vw;
  }
}
.review__lead {
  position: relative;
  background: url("../../images/o2/bg_review_line_pc_01.png") no-repeat top center;
  background-size: contain;
  width: 936px;
  min-height: 98px;
  margin: 8px 0;
  padding: 26px 66px 0;
}
@media only screen and (max-width: 1140px) {
  .review__lead {
    width: 82.1052631579vw;
    min-height: 8.5964912281vw;
    margin: 0.701754386vw 0;
    padding: 2.2807017544vw 5.7894736842vw 0;
  }
}
@media only screen and (max-width: 750px) {
  .review__lead {
    background: url("../../images/o2/bg_review_line_01.png") no-repeat top center;
    background-size: contain;
    width: 67.2vw;
    min-height: 20.5333333333vw;
    margin: 0;
    padding: 3.7333333333vw 2.6666666667vw 1.3333333333vw 8vw;
  }
}
.review__lead p {
  position: relative;
  z-index: 2;
  font-weight: 500;
  font-size: 20px;
  line-height: 2;
  text-align: left;
}
@media only screen and (max-width: 1140px) {
  .review__lead p {
    font-size: 1.7543859649vw;
  }
}
@media only screen and (max-width: 750px) {
  .review__lead p {
    font-size: 3.2vw;
    line-height: 1.7142857143;
  }
}

.ani-mv_bg {
  animation: mvBg 0.2s linear 0.2s forwards;
}

@keyframes mvBg {
  0% {
    background-position: 0 1.94375vw;
  }
  100% {
    background-position: 0 0;
  }
}
@media only screen and (max-width: 750px) {
  @keyframes mvBg {
    0% {
      background-position: 0 73.3333333333vw;
    }
    100% {
      background-position: 0 68vw;
    }
  }
}
.ani-mv_title {
  animation: mvShow 0.2s linear 0.4s forwards;
}

.ani-mv_subtitle {
  animation: mvShow 0.2s linear 0.5s forwards;
}

.ani-mv_catchphrase {
  animation: mvShow 0.2s linear 0.5s forwards;
}

@keyframes mvShow {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.ani-trouble_text-1 {
  animation: textShow1 0.6s linear 0s forwards;
}
.ani-trouble_list-1 {
  animation: listShow1 0.6s linear 0s forwards;
}
.ani-trouble_list-2 {
  animation: listShow3 0.6s linear 0s forwards;
}
.ani-trouble_list-3 {
  animation: listShow4 0.6s linear 0s forwards;
}
.ani-trouble_text-2 {
  animation: textShow1 0.6s linear 0s forwards;
}
.ani-trouble_text-3 {
  animation: textShow1 0.6s linear 0s forwards;
}

.ani-feature_text-1 {
  animation: textShow1 0.6s linear 0s forwards;
}
.ani-feature_list-1 {
  animation: listShow1 0.6s linear 0s forwards;
}
.ani-feature_list-2 {
  animation: listShow3 0.6s linear 0s forwards;
}
.ani-feature_list-3 {
  animation: listShow4 0.6s linear 0s forwards;
}
.ani-feature_text-2 {
  animation: textShow1 0.6s linear 0s forwards;
}

.ani-inspection_text-1 {
  animation: textShow2 0.6s linear 0.6s forwards;
}
.ani-inspection_text-2 {
  animation: textShow1 0.6s linear 1.86s forwards;
}
.ani-inspection_list-1 {
  animation: listShow1 0.6s linear 1.2s forwards;
}
.ani-inspection_list-2 {
  animation: listShow3 0.6s linear 1.2s forwards;
}

.ani-feature-pile_text-1 {
  animation: textShow1 0.6s linear 0.6s forwards;
}
.ani-feature-pile_list-1 {
  animation: boxShow1 0.6s linear 1.2s forwards;
}
.ani-feature-pile_list-2 {
  animation: boxShow1 0.6s linear 1.8s forwards;
}

.ani-feature-add_text-1 {
  animation: textShow1 0.6s linear 0.6s forwards;
}
.ani-feature-add_list-1 {
  animation: listShow1 0.6s linear 1.2s forwards;
}
.ani-feature-add_list-2 {
  animation: listShow2 0.6s linear 1.2s forwards;
}
.ani-feature-add_list-3 {
  animation: listShow3 0.6s linear 1.2s forwards;
}
.ani-feature-add_list-4 {
  animation: listShow4 0.6s linear 1.2s forwards;
}

.ani-feature-conv_text-1 {
  animation: textShow1 0.6s linear 0.6s forwards;
}
.ani-feature-conv_list-1 {
  animation: listShow1 0.6s linear 1.2s forwards;
}
.ani-feature-conv_list-2 {
  animation: listShow2 0.6s linear 1.2s forwards;
}
.ani-feature-conv_list-3 {
  animation: listShow3 0.6s linear 1.2s forwards;
}

.ani-comparison_text-1 {
  animation: textShow1 0.6s linear 0.6s forwards;
}
.ani-comparison_list-1 {
  animation: listShow1 0.6s linear 1.2s forwards;
}
.ani-comparison_list-2 {
  animation: listShow2 0.6s linear 1.2s forwards;
}

.ani-recommend_text-1 {
  animation: textShow1 0.6s linear 0.6s forwards;
}

.ani-price_text-1 {
  animation: textShow1 0.6s linear 0.6s forwards;
}
.ani-price_box-1 {
  animation: boxShow1 0.6s linear 1.2s forwards;
}

.ani-contact_text-1 {
  animation: textShow1 0.6s linear 0.6s forwards;
}

.ani-evidence_box-1 {
  animation: boxShowR 0.6s linear 0.6s forwards;
}
.ani-evidence_box-2 {
  animation: boxShowR 0.6s linear 1.2s forwards;
}
.ani-evidence_box-3 {
  animation: boxShowR 0.6s linear 1.8s forwards;
}
.ani-evidence_box-4 {
  animation: boxShowL 0.6s linear 2.4s forwards;
}
.ani-evidence_box-5 {
  animation: boxShowL 0.6s linear 3s forwards;
}
.ani-evidence_box-6 {
  animation: boxShowL 0.6s linear 3.6s forwards;
}
.ani-evidence_box-7 {
  animation: boxShowL 0.6s linear 4.2s forwards;
}

.ani-flow_text-1 {
  animation: textShow1 0.6s linear 0.6s forwards;
}
.ani-flow_list-1 {
  animation: listShow1 0.6s linear 1.2s forwards;
}
.ani-flow_list-2 {
  animation: listShow2 0.6s linear 1.2s forwards;
}
.ani-flow_list-3 {
  animation: listShow3 0.6s linear 1.2s forwards;
}
.ani-flow_list-4 {
  animation: listShow4 0.6s linear 1.2s forwards;
}

@keyframes textShow1 {
  0% {
    opacity: 0;
    transform: translateY(10px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes textShow2 {
  0% {
    opacity: 0;
    transform: translate(-50%, 10px);
  }
  100% {
    opacity: 1;
    transform: translate(-50%, 0);
  }
}
@keyframes boxShow1 {
  0% {
    opacity: 0;
    transform: translateY(10px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes boxShowL {
  0% {
    opacity: 0;
    transform: translateX(-10px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes boxShowR {
  0% {
    opacity: 0;
    transform: translateX(10px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes listShow1 {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes listShow2 {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes listShow3 {
  0% {
    opacity: 0;
    transform: translateY(40px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes listShow4 {
  0% {
    opacity: 0;
    transform: translateY(50px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}