@import url(https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&family=Noto+Serif+JP:wght@200;300;400;500;600;700;900&display=swap);

* {box-sizing: border-box;}

.c-button {
    display: block;
    position: relative
}

.c-button::before {
    content: "";
    display: block;
    width: 0;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.1);
    opacity: 0;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s
}

.c-button:hover::before {
    width: 100%;
    opacity: 1
}

.c-button--darker::before {
    background: rgba(0, 0, 0, 0.2)
}

.p-value3 {
    width: 100%
}

.p-value3 picture,
.p-value3 img {
    width: 100%;
    height: auto
}

.p-value3__inner {
    width: 100%
}

@media (min-width: 769px) {
    .p-value3__inner {
        min-width: 1120px;
        margin: 0 auto
    }
}

.p-value3__s1 {
    background: #eff8fe
}

.p-value3__s1-header {
    margin: 0 auto;
    padding: 9.33333vw 0 0;
    width: 44vw
}

@media (min-width: 769px) {
    .p-value3__s1-header {
        padding: 50px 0 0;
        width: 345px
    }
}

.p-value3__frame {
    padding: 9.33333vw 0 0;
    background: #eff8fe
}

@media (min-width: 769px) {
    .p-value3__frame {
        padding: 35px 0 0
    }
}

.p-value3__frame-inner {
    margin: 0 auto
}

@media (max-width: 768px) {
    .p-value3__frame-inner {
        width: 86.66667vw
    }
}

@media (min-width: 769px) {
    .p-value3__frame-inner {
        max-width: 1080px
    }
}

.p-value3__frame-top {
    margin: 0 6.66667vw 5.33333vw;
    border-top: 2px solid #000
}

@media (min-width: 769px) {
    .p-value3__frame-top {
        margin: 0 30px 30px
    }
}

.p-value3__frame-bottom {
    margin: 6.66667vw 5.33333vw 0;
    border-bottom: 2px solid #000
}

@media (min-width: 769px) {
    .p-value3__frame-bottom {
        margin: 30px 30px 0
    }
}

.p-value3__frame-body {
    padding: 0 8vw 8vw;
    border-left: 2px solid #000;
    border-right: 2px solid #000
}

@media (min-width: 769px) {
    .p-value3__frame-body {
        padding: 10px 30px 70px
    }
}

.p-value3__s2-header {
    padding: 0 0 5.33333vw;
    width: 53.33333vw
}

@media (max-width: 768px) {
    .p-value3__s2-header {
        margin: 0 auto
    }
}

@media (min-width: 769px) {
    .p-value3__s2-header {
        padding: 0 0 30px;
        width: 575px
    }
}

.p-value3__s2-text1 {
    padding: 13.33333vw 0 0;
    border-top: 2px solid #000
}

@media (min-width: 769px) {
    .p-value3__s2-text1 {
        padding: 120px 150px 0
    }
}

@media (min-width: 769px) {
    .p-value3__s3 {
        padding: 0 110px
    }
}

@media (min-width: 769px) {
    .p-value3__s3-row {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
}

@media (min-width: 769px) {
    .p-value3__s3-row--even {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse
    }
}

.p-value3__s3-header {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 62.66667vw
}

@media (max-width: 768px) {
    .p-value3__s3-header {
        margin: 24vw auto 0
    }
}

@media (min-width: 769px) {
    .p-value3__s3-header {
        padding: 15px;
        width: 45.22613%
    }
}

.p-value3__s3-header--1 {
    width: 57.86667vw
}

@media (min-width: 769px) {
    .p-value3__s3-header--1 {
        width: 37.81407%
    }
}

.p-value3__s3-header--2 {
    width: 69.86667vw
}

@media (min-width: 769px) {
    .p-value3__s3-header--2 {
        width: 33.29146%
    }
}

.p-value3__s3-header--3 {
    width: 52.26667vw
}

@media (min-width: 769px) {
    .p-value3__s3-header--3 {
        width: 34.04523%
    }
}

.p-value3__s3-header--4 {
    width: 69.06667vw
}

@media (min-width: 769px) {
    .p-value3__s3-header--4 {
        width: 45.1005%
    }
}

@media (min-width: 769px) {
    .p-value3__s3-col {
        width: 52.27273%
    }
}

.p-value3__s3-image {
    margin: 6.66667vw 0 0;
    font-size: 13px;
    line-height: 1.5;
}

@media (min-width: 769px) {
    .p-value3__s3-image {
        margin: 25px 0 0
    }
}

.p-value3__s3-row {
    margin: 13.33333vw 0 0
}

@media (min-width: 769px) {
    .p-value3__s3-row {
        margin: 5.46875vw 0 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }
}

@media (max-width: 768px) {
    .p-value3__s3-text {
        margin: 13.33333vw 0 0
    }
}
.p-value3__s3-text small {
    font-size: 12px;
    line-height: 1.6;
}

.p-value3__s4-header {
    margin: 22.66667vw auto 0;
    width: 29.33333vw
}

@media (min-width: 769px) {
    .p-value3__s4-header {
        margin: 150px auto 0;
        width: 215px
    }
}

.p-value3__s4-text1 {
    margin: 10.66667vw auto 0;
    width: 68vw
}

@media (min-width: 769px) {
    .p-value3__s4-text1 {
        margin: 60px auto 0;
        width: 375px
    }
}

.p-value3__s4-text2 {
    margin: 10.66667vw auto 0;
    width: 49.33333vw
}

@media (min-width: 769px) {
    .p-value3__s4-text2 {
        margin: 50px auto 0;
        width: 210px
    }
}

.p-value3__s5 {
    padding: 18.66667vw 13.33333vw 20vw;
    background: #eff8fe
}

@media (min-width: 769px) {
    .p-value3__s5 {
        padding: 135px 0 100px
    }
}

@media (min-width: 769px) {
    .p-value3__s5-banners {
        margin: 0 auto;
        max-width: 1080px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }
}

.p-value3__s5-banner {
    display: block
}

@media (min-width: 769px) {
    .p-value3__s5-banner {
        width: 47.68519%
    }
}

@media (max-width: 768px) {
    .p-value3__s5-banner:nth-of-type(n+2) {
        margin: 10.66667vw 0 0
    }
}


/* update css */

.p-value3 {
    font-family: 'Shippori Mincho', serif;
}

.c-value3En {
    font-family: 'Vollkorn', serif;
}

.p-value3__s1-header {
    width: auto;
    text-align: center;
    font-size: 14px;
}
@media (min-width: 769px) {
    .p-value3__s1-header {
        font-size: 28px;
    }
}

.p-value3__s1-header strong {
    font-size: 30px;
    font-weight: 400;
}

.p-value3__s1-header .num {
    font-size: 45px;
    line-height: 1;
}

.p-value3__s2-header {
    text-align: center;
}

@media (min-width: 769px) {
    .p-value3__s2-header {
        display: flex;
        text-align: left;
    }
}

.p-value3__s2-header .value {
    font-size: 20px;
    display: inline-block;
    border-bottom: 1px solid #000;
    padding-bottom: 14px;
}
@media (min-width: 769px) {
    .p-value3__s2-header .value {
        border-right: 2px solid #000;
        border-bottom: none;
        width: 183px;
        font-size: 34px;
        display: flex;
        align-items: center;
    }
}

.p-value3__s2-header .num {
    font-size: 30px;
    line-height: 1;
}
@media (min-width: 769px) {
    .p-value3__s2-header .num {
        font-size: 54px;
    }
}

@media (min-width: 769px) {
    .p-value3__s2-title {
        padding-left: 54px;
    }
}

.p-value3__s2-title .copy {
    font-size: 14px;
    margin-top: 20px;
    margin-bottom: 0;
}
@media (min-width: 769px) {
    .p-value3__s2-title .copy {
        margin-top: 0;
        font-size: 21px;
    }
}

.p-value3__s2-title .title {
    font-size: 27px;
    margin-top: 6px;
    margin-bottom: 0;
}
@media (min-width: 769px) {
    .p-value3__s2-title .title {
        font-size: 48px;
    }
}

.p-value3__s2-text1 p {
    margin-top: 0;
    margin-bottom: 0;
    text-align: center;
    font-size: 14px;
    line-height: 2.5;
}
@media (min-width: 769px) {
    .p-value3__s2-text1 p {
        font-size: 18px;
    }
}


.p-value3__s3-header {
    text-align: center;
}

.p-value3__s3-header .title {
    display: flex;
    align-items: center;
    flex-direction: column;
    margin-top: 0;
}
@media (min-width: 769px) {
    .p-value3__s3-header .title {
        font-size: 22px;
    }
}

.p-value3__s3-header .num {
    font-size: 42px;
    line-height: 1;
    font-style: italic;
    padding-bottom: 14px;
    display: block;
    border-bottom: 1px solid #000;
}
@media (min-width: 769px) {
    .p-value3__s3-header .num {
        font-size: 62px;
    }
}

.p-value3__s3-header .maintitle {
    font-size: 17px;
    line-height: 2;
}
@media (min-width: 769px) {
    .p-value3__s3-header .maintitle {
        font-size: 21px;
    }
}

.p-value3__s3-text {
    font-size: 14px;
    line-height: 2.1;
}
@media (min-width: 769px) {
    .p-value3__s3-text {
        font-size: 16px;
    }
}

.c-button {
    position: relative;
    text-align: center;
    text-decoration: none;
    color: #000;
    padding: 10px 0 20px;
}
@media (min-width: 769px) {
    .c-button {
        padding: 14px 0;
        transition: opacity .3s ease;
    }
    .c-button:hover {
        opacity: 0.6;
        transition: opacity .3s ease;
    }
}

.c-button::before,.c-button::after {
    position: absolute;
    content: "";
    background-color: #000;
    width: calc(100% - 20px);
    height: 2px;
    left: 10px;
    opacity: 1;
}

.c-button::before {
    top: 0;
}

.c-button::after {
    bottom: 0;
}

.c-button:hover::before {
    width: calc(100% - 20px);
}

.c-button__wrap {
    position: relative;
}
@media (min-width: 769px) {
    .c-button__wrap {
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 24px 0;
    }
}

.c-button__wrap::before,.c-button__wrap::after {
    position: absolute;
    content: "";
    background-color: #000;
    height: calc(100% - 20px);
    width: 2px;
    top: 10px;
}

.c-button__wrap::before {
    left: 0;
}

.c-button__wrap::after {
    right: 0;
}

.c-button__wrap .value {
    font-size: 20px;
}
@media (min-width: 769px) {
    .c-button__wrap .value {
        font-size: 30px;
    }
}

.c-button__wrap .value .num {
    font-size: 36px;
    line-height: 1;
}
@media (min-width: 769px) {
    .c-button__wrap .value .num {
        font-size: 58px;
    }
}

.c-button__wrap .title {
    margin: 20px 20px 0 20px;
    font-size: 13px;
    padding-top: 26px;
    border-top: 2px solid #c0c0c0;
}
@media (min-width: 769px) {
    .c-button__wrap .title {
        padding-top: 0;
        border-top: none;
        border-left: 2px solid #c0c0c0;
        padding-left: 20px;
        font-size: 16px;
        margin: 0 20px;
    }
}

.c-button__wrap .title strong {
    font-size: 28px;
    font-weight: 400;
}
@media (min-width: 769px) {
    .c-button__wrap .title strong {
        margin-top: 10px;
        display: block;
    }
}

.u-sp {
    display: none;
}
@media (max-width: 768px) {
    .u-sp {
        display: block;
    }
}

@media (min-width: 769px) {
    .u-pc {
        display: block;
    }
}
