@media screen and (min-width: 801px) {
  .hover-under-line, .btn-more a::after {
    content: "";
    width: 100%;
    height: 1px;
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
    background: #000;
    position: absolute;
    left: 0;
    bottom: 0;
  }
}
@media screen and (max-width: 800px) {
  .content-width {
    max-width: 84vw;
    margin: 0 auto;
    position: relative;
  }
}
@-webkit-keyframes hover-underline {
  0% {
    -webkit-transform-origin: right;
            transform-origin: right;
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
  50% {
    -webkit-transform-origin: right;
            transform-origin: right;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  50.1% {
    -webkit-transform-origin: left;
            transform-origin: left;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  100% {
    -webkit-transform-origin: left;
            transform-origin: left;
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
}
@keyframes hover-underline {
  0% {
    -webkit-transform-origin: right;
            transform-origin: right;
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
  50% {
    -webkit-transform-origin: right;
            transform-origin: right;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  50.1% {
    -webkit-transform-origin: left;
            transform-origin: left;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  100% {
    -webkit-transform-origin: left;
            transform-origin: left;
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
}
@media screen and (min-width: 801px) {
  .heading {
    font-size: 36px;
    text-align: center;
    line-height: 1.33;
    margin-bottom: 58px;
  }
  .category-title {
    margin-bottom: 34px;
  }
  section {
    overflow: hidden;
  }
  .visual {
    height: 394px;
    min-height: 394px;
  }
  .visual__box {
    height: 394px;
  }
  .visual__title img {
    padding: 58px 0 40px;
  }
  .concept__box {
    padding: 83px 45px 45px;
  }
  .concept__box:nth-of-type(odd) {
    background: #8F92A1;
  }
  .concept__box:nth-of-type(even) {
    background: #B8BAC7;
  }
  .concept__subtitle {
    font-size: 20px;
    line-height: 1.85;
    display: block;
    margin-bottom: 16px;
  }
  .concept__title {
    font-size: 27px;
    font-weight: bold;
    letter-spacing: 0.22em;
    line-height: 1.5;
    color: #fff;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
    margin-bottom: 20px;
  }
  .concept__title .dot-text {
    display: inline-block;
    vertical-align: 7px;
  }
  .concept__title .sup {
    font-size: 14px;
    display: inline-block;
    vertical-align: 9px;
  }
  .concept__text {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 2.333;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
    color: #fff;
    margin-bottom: 36px;
  }
  .concept__text .sup {
    font-size: 11px;
    display: inline-block;
    vertical-align: 9px;
  }
  .lineup__inner {
    padding: 72px 44px 80px;
  }
  .lineup__title {
    font-size: 24px;
    letter-spacing: 0.1em;
    font-weight: bold;
    line-height: 1.7;
    margin-bottom: 33px;
  }
  .lineup__image {
    position: relative;
    overflow: hidden;
  }
  .lineup__image.icon-voce::before {
    content: "";
    display: block;
    width: 100px;
    height: 145px;
    background: url(../img/common/icon_voce.svg) no-repeat;
    background-size: contain;
    position: absolute;
    top: 15px;
    left: 15px;
    z-index: 1;
  }
  .lineup__image.icon-cosume::after {
    content: "";
    display: block;
    width: 134px;
    height: 138px;
    background: url(../img/common/icon_cosume.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 10;
  }
  .lineup__image.icon-cosume02::after {
    content: "";
    display: block;
    width: 135px;
    height: 126px;
    background: url(../img/common/icon_cosume02.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 10;
  }
  .lineup__image.icon-cosume04::after {
    content: "";
    display: block;
    width: 118px;
    height: 104px;
    background: url(../img/common/icon_cosume04.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 10;
  }
  .lineup__item:not(:last-child) {
    margin-bottom: 62px;
  }
  .lineup__item a {
    display: block;
    width: 100%;
    height: 100%;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
  }
  .lineup__item a img {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
            transform: scale3d(1.1, 1.1, 1.1);
    will-change: transform;
    transition-property: -webkit-transform;
    -webkit-transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-transition-timing-function: cubic-bezier(0.2, 1, 0.2, 1);
            transition-timing-function: cubic-bezier(0.2, 1, 0.2, 1);
    -webkit-transition-duration: 2s;
            transition-duration: 2s;
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
  }
  .lineup__item a::before {
    content: "";
    display: block;
    -webkit-transition-property: opacity;
    transition-property: opacity;
    -webkit-transition-timing-function: cubic-bezier(0.2, 1, 0.2, 1);
            transition-timing-function: cubic-bezier(0.2, 1, 0.2, 1);
    -webkit-transition-duration: 2s;
            transition-duration: 2s;
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
    will-change: background-color;
    opacity: 0;
    z-index: 1;
    background-color: #191919;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
  }
  .lineup__item a:hover:before {
    opacity: 0.15;
  }
  .lineup__item a:hover img {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
  .lineup .btn-more {
    position: absolute;
    bottom: 40px;
  }
  .lineup a:hover .btn-more::after {
    -webkit-animation-name: hover-underline;
            animation-name: hover-underline;
    -webkit-animation-duration: 0.6s;
            animation-duration: 0.6s;
    -webkit-animation-timing-function: linear;
            animation-timing-function: linear;
  }
  .lineup .category-title {
    margin-bottom: 30px;
  }
  .lineup .category-title .subtext {
    font-size: 18px;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
    display: block;
    letter-spacing: 0.09em;
    margin-top: 13px;
  }
  .feature-box {
    border: 1px solid #fff;
    padding: 35px 0px 0;
  }
  .feature-box .small-list {
    margin: 35px 30px;
  }
  .feature-box .small-list li {
    font-size: 13px;
    line-height: 1.769;
    color: #fff;
  }
  .feature-title {
    font-size: 24px;
    letter-spacing: 0.1em;
    font-weight: bold;
    line-height: 1.5;
    color: #fff;
    text-align: center;
    margin-bottom: 27px;
  }
  .feature-title .sup {
    font-size: 13px;
    display: inline-block;
    vertical-align: 9px;
    margin: 0 2px;
  }
  #concept02 {
    padding: 72px 45px 50px;
  }
  #concept02 .concept__title {
    line-height: 1.7;
    letter-spacing: 0.18em;
    margin-bottom: 22px;
  }
  #concept02 .concept__text {
    line-height: 2.1;
    letter-spacing: 0.07em;
    margin-bottom: 38px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  #concept02 .concept__image {
    width: 282px;
    margin: 0 auto;
  }
  #concept03 {
    padding-top: 76px;
  }
  #concept03 .concept__title {
    line-height: 1.7;
  }
  #concept03 .concept__text {
    margin-bottom: 45px;
  }
  #concept03 .concept__subtitle {
    letter-spacing: 0.2em;
  }
  #concept03 .box {
    width: 360px;
    margin: 0 auto;
  }
  #concept03 .box + .box {
    margin-top: 120px;
    position: relative;
  }
  #concept03 .box + .box::before {
    content: "";
    display: block;
    width: 38px;
    height: 38px;
    background: url(../img/concept/multiply.svg) no-repeat;
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: -78px;
  }
  #concept03 .box__inner {
    padding: 53px 30px 49px;
  }
  #concept03 .box .title {
    font-size: 27px;
    line-height: 1;
    letter-spacing: 0.1em;
    font-weight: bold;
    text-align: center;
    color: #989BAB;
    margin-bottom: 29px;
  }
  #concept03 .box .subtitle {
    font-size: 16px;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
    color: #989BAB;
    display: inline-block;
    background-color: #F1F1F2;
    margin: 10px 40px 0;
    padding: 6px;
  }
  #concept03 .box .text {
    font-size: 17px;
    font-weight: bold;
    color: #989BAB;
    line-height: 2.176;
    margin: 0 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  #concept03 .box .image {
    width: 263px;
    margin: 0 auto;
    margin-bottom: 22px;
  }
  .box {
    background-color: #fff;
    border-radius: 8px;
  }
  .box__inner {
    padding: 42px 30px 40px;
  }
  .box .category-title {
    font-size: 22px;
    font-weight: bold;
    margin-bottom: 28px;
  }
  .box .category-text {
    font-size: 18px;
    letter-spacing: 0.02em;
    font-weight: bold;
    line-height: 2.11;
    margin-bottom: 13px;
  }
  .box .graph__list {
    margin: 0 20px;
  }
  .box .graph__item {
    font-size: 17px;
    font-weight: bold;
    line-height: 1;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
  }
  .box .graph__item strong {
    font-weight: bold;
    margin-left: 4px;
  }
  .box .graph__item:not(:last-child) {
    margin-bottom: 11px;
  }
  .box .graph__item:before {
    content: "";
    display: inline-block;
    width: 13px;
    height: 13px;
    margin-right: 4px;
  }
  .box .graph__item:nth-child(1)::before {
    background-color: #2F334F;
  }
  .box .graph__item:nth-child(2)::before {
    background-color: #434B79;
  }
  .box .graph__item:nth-child(3)::before {
    background-color: #505CA1;
  }
  .box .graph__item:nth-child(4)::before {
    background-color: #606FC2;
  }
  .box .graph__item:nth-child(5)::before {
    background-color: #7385E8;
  }
  .box .graph__image {
    width: 320px;
    margin-left: 38px;
    position: relative;
    margin-bottom: 28px;
  }
  .box .graph__image figcaption {
    font-size: 13px;
    font-weight: bold;
    line-height: 1.769;
    position: absolute;
    right: -43px;
    top: -21px;
    text-align: right;
  }
}
@media screen and (max-width: 800px) {
  .heading {
    font-size: 6.9333333333vw;
    line-height: 1.46;
    text-align: center;
    margin-bottom: 9.5vw;
  }
  .visual__box {
    height: 92vw !important;
  }
  .visual__title {
    width: 43.4666666667vw;
    padding-top: 0;
  }
  .category-title {
    line-height: 1.4;
    margin-bottom: 5vw;
  }
  .concept__box {
    padding: 11vw 4vw;
  }
  .concept__box:nth-of-type(odd) {
    background: #8F92A1;
  }
  .concept__box:nth-of-type(even) {
    background: #B8BAC7;
  }
  .concept__title {
    font-size: 5.0666666667vw;
    letter-spacing: 0;
    font-weight: bold;
    color: #fff;
    line-height: 1.7;
    margin: 0 4vw;
    margin-bottom: 7.3vw;
  }
  .concept__title .dot-text {
    display: inline-block;
    vertical-align: 1.2vw;
  }
  .concept__title .sup {
    font-size: 2.9333333333vw;
    vertical-align: 2.5vw;
  }
  .concept__subtitle {
    font-size: 4.2666666667vw;
    line-height: 1.8;
    display: block;
    margin-bottom: 4vw;
  }
  .concept__text {
    font-size: 3.4666666667vw;
    font-weight: 500;
    color: #fff;
    line-height: 2.4;
    margin: 0 1vw 0 3vw;
    margin-bottom: 7.5vw;
  }
  .concept__text .sup {
    font-size: 2.4vw;
    vertical-align: 1vw;
  }
  #concept02 {
    padding-bottom: 13vw;
  }
  #concept02 .concept__title {
    font-size: 6.4vw;
    letter-spacing: 0.06em;
    line-height: 1.75;
    margin-right: 0;
    margin-bottom: 5vw;
  }
  #concept02 .concept__text {
    margin-bottom: 8.5vw;
  }
  #concept02 .concept__image {
    width: 60vw;
    margin: 0 auto;
  }
  #concept03 {
    padding-top: 12vw;
    padding-bottom: 12vw;
  }
  #concept03 .concept__title {
    font-size: 6.4vw;
    line-height: 1.75;
    margin-right: 0;
    margin-bottom: 6vw;
  }
  #concept03 .concept__text {
    margin-bottom: 7.5vw;
  }
  #concept03 .box {
    padding-bottom: 8.8vw;
  }
  #concept03 .box + .box {
    margin-top: 27.4666666667vw;
    position: relative;
  }
  #concept03 .box + .box::before {
    content: "";
    display: block;
    width: 9.0666666667vw;
    height: 9.0666666667vw;
    background: url(../img/concept/multiply.svg) no-repeat;
    background-size: contain;
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: -18vw;
  }
  #concept03 .box + .box .text {
    margin: 0 0 0 9vw;
  }
  #concept03 .box .title {
    font-size: 5.3333333333vw;
    line-height: 1;
    letter-spacing: 0.1em;
    font-weight: bold;
    text-align: center;
    color: #989BAB;
    margin-bottom: 6vw;
  }
  #concept03 .box .subtitle {
    font-size: 3.2vw;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
    color: #989BAB;
    display: inline-block;
    background-color: #F1F1F2;
    margin-top: 1.6vw;
    padding: 1vw;
  }
  #concept03 .box .text {
    font-size: 3.4666666667vw;
    font-weight: bold;
    color: #989BAB;
    line-height: 2.1538;
    margin: 0 0 0 6.5vw;
  }
  #concept03 .box .image {
    width: 52vw;
    margin: 0 auto;
    margin-bottom: 4vw;
  }
  .lineup__inner {
    padding: 16vw 8vw 12vw;
  }
  .lineup__title {
    font-size: 5.0666666667vw;
    letter-spacing: 0.1em;
    font-weight: bold;
    line-height: 1.684;
    margin-bottom: 33px;
  }
  .lineup__image {
    position: relative;
    overflow: hidden;
  }
  .lineup__image.icon-voce::before {
    content: "";
    display: block;
    width: 18.6666666667vw;
    height: 27.2vw;
    background: url(../img/common/icon_voce.svg) no-repeat;
    background-size: contain;
    position: absolute;
    top: 2.6666666667vw;
    left: 2.6666666667vw;
    z-index: 1;
  }
  .lineup__image.icon-cosume::after {
    content: "";
    display: block;
    width: 24vw;
    height: 24.8vw;
    background: url(../img/common/icon_cosume.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 2.6666666667vw;
    left: 2.6666666667vw;
    z-index: 10;
  }
  .lineup__image.icon-cosume02::after {
    content: "";
    display: block;
    width: 24vw;
    height: 25.0666666667vw;
    background: url(../img/common/icon_cosume02.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 1.8666666667vw;
    left: 1.8666666667vw;
    z-index: 10;
  }
  .lineup__image.icon-cosume04::after {
    content: "";
    display: block;
    width: 23.4666666667vw;
    height: 20.8vw;
    background: url(../img/common/icon_cosume04.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 2.6666666667vw;
    left: 2.6666666667vw;
    z-index: 10;
  }
  .lineup__item:not(:last-child) {
    margin-bottom: 11vw;
  }
  .lineup__item a {
    display: block;
    width: 100%;
    height: 100%;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
  }
  .lineup__item a img {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
            transform: scale3d(1.1, 1.1, 1.1);
    will-change: transform;
    transition-property: -webkit-transform;
    -webkit-transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-transition-timing-function: cubic-bezier(0.2, 1, 0.2, 1);
            transition-timing-function: cubic-bezier(0.2, 1, 0.2, 1);
    -webkit-transition-duration: 2s;
            transition-duration: 2s;
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
  }
  .lineup__item a::before {
    content: "";
    display: block;
    -webkit-transition-property: opacity;
    transition-property: opacity;
    -webkit-transition-timing-function: cubic-bezier(0.2, 1, 0.2, 1);
            transition-timing-function: cubic-bezier(0.2, 1, 0.2, 1);
    -webkit-transition-duration: 2s;
            transition-duration: 2s;
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
    will-change: background-color;
    opacity: 0;
    z-index: 1;
    background-color: #191919;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
  }
  .lineup__item a:hover:before {
    opacity: 0.15;
  }
  .lineup__item a:hover img {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
  .lineup .btn-more {
    position: absolute;
    bottom: 40px;
  }
  .lineup a:hover .btn-more::after {
    -webkit-animation-name: hover-underline;
            animation-name: hover-underline;
    -webkit-animation-duration: 0.6s;
            animation-duration: 0.6s;
    -webkit-animation-timing-function: linear;
            animation-timing-function: linear;
  }
  .lineup .category-title {
    margin-bottom: 3.5vw;
  }
  .lineup .category-title .subtext {
    font-size: 3.2vw;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
    display: block;
    letter-spacing: 0;
    margin-top: 0.6vw;
  }
  .feature-box {
    width: 84vw;
    margin: 0 auto;
    border: 1px solid #fff;
    padding: 5.5vw 6vw 0;
  }
  .feature-box .small-list {
    margin: 7vw 0 6vw;
  }
  .feature-box .small-list li {
    font-size: 2.6666666667vw;
    letter-spacing: 0.04em;
    line-height: 2;
    color: #fff;
  }
  .feature-title {
    font-size: 4.8vw;
    letter-spacing: 0.1em;
    font-weight: bold;
    line-height: 1.5;
    color: #fff;
    text-align: center;
    margin-bottom: 4.6vw;
  }
  .feature-title .sup {
    font-size: 2.9333333333vw;
    display: inline-block;
    vertical-align: 1.5vw;
    margin-right: 0.3vw;
  }
  .box {
    padding: 11vw 5vw 7.1vw;
    border-radius: 2.1333333333vw;
    background-color: #fff;
  }
  .box .category-title {
    margin-bottom: 6.6vw;
  }
  .box .category-text {
    font-size: 4.2666666667vw;
    font-weight: bold;
    letter-spacing: 0;
    line-height: 1.6875;
    margin-bottom: 11vw;
  }
  .graph__image {
    width: 71.2vw;
    margin-left: 5vw;
    position: relative;
    margin-bottom: 7.5vw;
  }
  .graph__list {
    margin: 0 0 0 2.5vw;
  }
  .graph__item {
    font-size: 3.2vw;
    font-weight: bold;
    letter-spacing: 0;
    line-height: 1;
  }
  .graph__item:not(:last-child) {
    margin-bottom: 2.6vw;
  }
  .graph__item::before {
    content: "";
    display: inline-block;
    width: 2.6666666667vw;
    height: 2.6666666667vw;
    margin-right: 0.5vw;
  }
  .graph__item:nth-child(1)::before {
    background-color: #2F334F;
  }
  .graph__item:nth-child(2)::before {
    background-color: #434B79;
  }
  .graph__item:nth-child(3)::before {
    background-color: #505CA1;
  }
  .graph__item:nth-child(4)::before {
    background-color: #606FC2;
  }
  .graph__item:nth-child(5)::before {
    background-color: #7385E8;
  }
  .graph__item strong {
    font-weight: bold;
    margin-left: 2vw;
  }
  figcaption {
    font-size: 2.6666666667vw;
    font-weight: bold;
    line-height: 1.6;
    position: absolute;
    top: -29px;
    right: -15px;
    text-align: right;
  }
}
html.iPad .concept__box {
  padding-right: 20px;
  padding-left: 20px;
}
html.iPad .concept__title {
  font-size: 24px;
  letter-spacing: 0;
}
html.iPad .concept .category-text {
  font-size: 16px;
}
html.iPad .concept .graph__item {
  font-size: 14px;
  letter-spacing: 0;
}
html.iPad .lineup__inner {
  padding-right: 20px;
  padding-left: 20px;
}
html.iPad .lineup__title {
  letter-spacing: 0;
}
html.iPad .lineup .category-title {
  font-size: 19px;
  letter-spacing: 0;
}
html.iPad .lineup .category-title .subtext {
  letter-spacing: 0;
}
html.iPad #concept02 {
  padding-right: 20px;
  padding-left: 20px;
}
html.iPad #concept02 .concept__title {
  letter-spacing: 0;
}
html.iPad #concept03 .concept__subtitle {
  letter-spacing: 0;
}
html.iPad #concept03 .box {
  width: 100%;
}
html.iPad #concept03 .box__inner {
  padding-right: 20px;
  padding-left: 20px;
}
html.iPad #concept03 .box .text {
  margin: 0 10px;
}
html.iPad .feature-title {
  letter-spacing: 0;
}
html.iPad .feature-box {
  padding-right: 18px;
  padding-left: 18px;
}
html.iPad .feature-box .small-list {
  margin-right: 0;
  margin-left: 0;
}
html.iPad .box .category-text {
  font-size: 16px;
  letter-spacing: 0;
  margin-bottom: 40px;
}
html.iPad .box__inner {
  padding-right: 20px;
  padding-left: 20px;
}
html.iPad .box .graph__image {
  width: 100%;
  margin-left: 0;
  padding-top: 30px;
}
html.iPad .box .graph__image figcaption {
  right: 0;
}
html.iPad .box .graph__list {
  margin: 0;
}
html.iPad .box .graph__item {
  font-size: 14px;
}

@media screen and (min-width: 801px) and (max-width: 1280px) {
  .concept__box {
    padding-right: 16px;
    padding-left: 16px;
  }
  .concept__title {
    font-size: clamp(24px, 3.3vw, 26px);
    letter-spacing: 0;
  }
  .concept__text {
    font-size: clamp(16px, 1.9vw, 16px) !important;
    letter-spacing: 0;
  }
  .concept .category-text {
    font-size: clamp(16px, 2.2vw, 18px);
  }
  .concept .graph__item {
    font-size: 14px;
    letter-spacing: 0;
  }
  .lineup__inner {
    padding-right: 16px;
    padding-left: 16px;
  }
  .lineup__title {
    letter-spacing: 0;
  }
  .lineup .category-title {
    font-size: 19px;
  }
  .lineup .category-title .subtext {
    letter-spacing: 0.05em;
  }
  #concept02 {
    padding-right: 16px;
    padding-left: 16px;
  }
  #concept03 .concept__subtitle {
    letter-spacing: 0.1em;
  }
  #concept03 .box {
    width: 100%;
  }
  #concept03 .box__inner {
    padding-right: 16px;
    padding-left: 16px;
  }
  #concept03 .box .text {
    margin: 0 23px;
  }
  .feature-title {
    letter-spacing: 0;
  }
  .feature-box {
    padding-right: 18px;
    padding-left: 18px;
  }
  .feature-box .small-list {
    margin-right: 0;
    margin-left: 0;
  }
  .box .category-text {
    letter-spacing: 0;
    margin-bottom: 40px;
  }
  .box__inner {
    padding-right: 16px;
    padding-left: 16px;
  }
  .box .graph__image {
    width: 100%;
    max-width: 370px;
    margin: 0 auto 28px;
    padding-top: 30px;
  }
  .box .graph__image figcaption {
    right: 0;
  }
  .box .graph__list {
    margin: 0;
  }
  .box .graph__item {
    font-size: clamp(14px, 1.9vw, 15px);
  }
}