@import url(./font.css);

:root {
    --main-color: #293490;
    --hover-main-color: #151e6c;
}

html {
    font-size: 1vw;
    overflow-x: hidden;
}

body {
    overflow-x: hidden;
}

.post, .page {
    margin: 0;
}

ul, li {
    list-style: none;
    margin: 0;
    padding: 0;
}

a,
a:visited ,
a:hover {
    text-decoration: none!important;
    color: #000;
}

p, h1, h2, h3, h4, h5, h6 {
    margin-bottom: 0!important;
    font-family: "Zen-regular", sans-serif;
    font-weight: 400;
    font-style: normal;
}

.bold {
    font-weight: bold;
}

.post, .page, .archive, .single, span, a {
    margin: 0;
    font-family: "Zen-regular", sans-serif;
    font-weight: 400;
    font-style: normal;
}

.zen-b {
    font-family: 'Zen-bold', sans-serif;
    font-weight: bold;
    font-style: normal;
}

.logo-area span {
    text-indent: -9999px;
    display: block;
    position: absolute;
}
/* PCのデザイン */
@media (min-width: 768px) {
    .view-more-btn-col.col1 p {
        font-size: 0.8rem;
        letter-spacing: 0.05rem;
    }

    .view-more-btn-col.col2 {
        width: 2.1rem;
        height: 2.1rem;
        border-radius: 1.1rem;
        margin-left: 0.8rem;
        transition: .5s;
    }

    .view-more-btn-col.col2 .tri {
        clip-path: polygon(0 0, 0 100%, 100% 50%);
    }

    .view-more-btn:hover .view-more-btn-col.col2 {
        margin-left: 1.2rem;
    }

    .text-main-color {
        color: var(--main-color);
    }

    .main-color {
        background-color: var(--main-color);
    }

    .arrow {
        position: relative;
        display: inline-block;
        width: 2.1rem;
        height: 2.1rem;
    }

    .arrow::before,
    .arrow::after {
        content: "";
        position: absolute;
        top: calc(50% - 1px);
        right: 0.7rem;
        width: 0.75rem;
        height: 0.1rem;
        border-radius: 9999px;
        transform-origin: calc(100% - 0px) 50%;
    }

    .arrow.arrow-white::before,
    .arrow.arrow-white::after {
        background-color: #fff;
    }

    .arrow.arrow-main-color::before,
    .arrow.arrow-main-color::after {
        background-color: var(--main-color);
    }

    .arrow::before {
        transform: rotate(38deg);
    }

    .arrow::after {
        transform: rotate(-38deg);
    }

    .common--title1-main h2 {
        font-size: 4.65rem;
        letter-spacing: 1.4rem;
    }

    .common--title1-sub {
        margin-top: 1.1rem;
    }

    .common--title1-sub h3 {
        font-size: 1rem;
        letter-spacing: 0.05rem;
    }

    .common--title2-main h2 {
        font-size: 4.65rem;
        letter-spacing: 1.4rem;
    }

    .common--title2-sub {
        margin-top: 1.3rem;
    }

    .common--title2-sub h3 {
        font-size: 1.35rem;
        letter-spacing: 0.075rem;
    }

    .common--title3 h2 {
        font-size: 4.65rem;
        letter-spacing: 1.4rem;
    }

    .common-title3-row {
        margin-top: 0.5rem;
        margin-left: 38.3rem;
    }

    .common-title3-row2 {
        margin-top: 0.9rem;
    }

    .common-title3-col.col1 {
        margin-right: 2.4rem;
    }

    .common-title3-col.col1 p {
        font-size: 1rem;
        letter-spacing: 0.025rem;
    }

    .common-title3--text {
        margin-top: 1.4rem;
    }

    .common-title3--text p {
        font-size: 0.9rem;
        letter-spacing: 0.02rem;
        line-height: 2rem;
    }

    .common--title3-tag {
        margin-top: 2.8rem;
        gap: 1.3rem;
    }

    .common--title3-tag-col {
        border-radius: 1rem;
        border: solid 1px #fff;
        padding: 0.2rem 2.5rem;
    }

    .common--title4-main h2 {
        font-size: 4.65rem;
        letter-spacing: 1.4rem;
    }

    .common--title4-sub h4 {
        font-size: 1rem;
        letter-spacing: 0.05rem;
    }

    .common--title4-main2 h3 {
        letter-spacing: 0.75rem;
        font-size: 1.85rem;
    }

    .common-title5 h2 {
        font-size: 4.65rem;
        letter-spacing: 1.4rem;
    }

    .common-title5 .subtitle {
        margin-top: 1rem;
        margin-left: 0.3rem;
    }

    .common-title5 .subtitle p {
        font-size: 0.9rem;
        letter-spacing: 0.12rem;
    }

    .common--title6-main {
        margin-left: 1.3rem;
    }

    .common--title6-main h2 {
        font-size: 4.65rem;
        letter-spacing: 1.4rem;
    }

    .common--title6-sub {
        margin-top: 1.1rem;
    }

    .common--title6-sub h3 {
        font-size: 0.9rem;
        letter-spacing: 0.13rem;
    }

    /* company-contact */
    .company-contact--row {
        width: 90%;
        margin: 8rem auto 0rem;
        padding-bottom: 10.5rem;
    }

    /* .company-contact--row {
        width: 90%;
        margin: 12.5rem auto 10.5rem;
    } */

    .company-contact--col {
        background-image: url(../img/company-bg.png);
        background-size: cover;
        background-position: center;
        width: 47%;
        height: 41.7rem;
    }

    .company-contact--col-title {
        width: 30rem;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
    }

    .company-contact--col-title h2 {
        color: #fff;
        font-size: 4.5rem;
        letter-spacing: 0.6rem;
    }

    .company-contact--col-title h3 {
        color: #fff;
        margin-top: 1.5rem;
        font-size: 1.2rem;
        letter-spacing: 0.1rem;
    }

    .circle-container {
        width: 100%;
        height: 100%;
        position: relative;
    }

    .circle {
        transform: rotate(90deg);
        transform-origin: 50% 50%;
        margin: 5%;
    }

    .circle circle {
        stroke-dasharray: 314.16;
        stroke-dashoffset: 314.16;
        transition: stroke-dashoffset 0.3s ease;
        opacity: 0;
        transition: .3s;
    }

    .circle-container:hover circle {
        stroke-dashoffset: 0;
        opacity: 1;
    }

    /* company-contact end */

    /* page-works */
    .page--works-title {
        padding-top: 9.8rem;
        margin-left: 18.6rem;
    }

    .page--works-title h2{
        font-size: 4.65rem;
        letter-spacing: 1.4rem;
    }

    .page--works-subtitle {
        margin-top: 1rem;
        margin-left: 0.3rem;
    }

    .page--works-subtitle p {
        font-size: 0.9rem;
        letter-spacing: 0.12rem;
    }

    .page--works-text {
        margin-top: 2.2rem;
        margin-left: 18.3rem;
    }

    .page--works-text p {
        font-size: 1.2rem;
        letter-spacing: 0.24rem;
        line-height: 2.6rem;
    }

    .page--works-view {
        margin-top: 4rem;
    }

    .page--works-view a {
        animation: color 0.5s ease-in-out forwards;
        font-size: 0.8rem;
        letter-spacing: 0.05rem;
    }

    .page--works-view .img-box {
        height: 14.6rem;
        background-color: #fff;
        border-radius: 2rem;
    }

    .page--works-view h3 {
        margin-top: 1rem;
        font-size: 1.4rem;
        letter-spacing: 0.1rem;
        line-height: 2rem;
    }

    .page--works-view .works .slide img{
        transition: .5s;
    }

    .page--works-view .works .slide:hover img{
        scale: 1.05;
    }

    .works--categories div {
        margin-right: 0.5rem;
    }

    .top-works--more-btn {
        width: 10rem;
        margin: 5.8rem auto 0;
    }

    .top-business-works--content.reached .top-works--more-btn a {
        animation: color 0.5s ease-in-out forwards;
    }

    .page--works-more-btn {
        width: 10rem;
        margin: 5.8rem auto 0;
    }

    .page--flow {
        width: 78.5%;
        margin: 6.3rem auto 0;
    }

    .page--flow-title h2 {
        font-size: 3rem;
        letter-spacing: 0.42rem;
    }

    .page--flow-row {
        margin-top: 1.99rem;
    }

    .page--flow-col p {
        padding: 1.3rem 0;
        font-size: 1.076rem;
        letter-spacing: 0.1rem;
    }

    .page--flow-col.col1 {
        width: 14.5%;
    }

    .page--flow-col.col2 {
        width: 18%;
    }

    .page--flow-col.col3 {
        width: 16.5%;
    }

    .page--flow-col.col4 {
        width: 16.5%;
    }

    .page--flow-col.col5 {
        width: 18%;
    }

    .page--flow-col.col6 {
        width: 16.5%;
    }

    .page--flow-row .page--flow-col:not(:last-child)::before, .page--flow-row .page--flow-col:not(:last-child)::after {
        background-color: var(--main-color);
    }

    .page--flow-row .page--flow-col:not(:last-child)::before {
        transform: rotate(45deg);
    }

    .page--flow-row .page--flow-col:not(:last-child)::after {
        transform: rotate(-45deg);
    }

    .page--flow-row .page--flow-col:not(:last-child)::before,
    .page--flow-row .page--flow-col:not(:last-child)::after {
        content: "";
        position: absolute;
        top: calc(50% - 1px);
        right: -1.8rem;
        width: 3rem;
        height: 0.1rem;
        border-radius: 9999px;
        transform-origin: calc(100% - 0px) 50%;
        z-index: 1;
    }

    .page--flow-row2 {
        margin-top: 1rem;
    }

    .page--flow-row2 .page--flow-col {
        padding: 0 0.2rem;
    }

    .page--flow-row2 .page--flow-col:not(:last-child) {
        border-right: solid 1px #fff;
    }

    .page--flow-col.col1 .page--flow-col-icon {
        background-image: url(../img/service01-icon1.png);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        width: 40%;
        height: 5rem;
        margin: 1.8rem auto 0.7rem;
    }

    .page--flow-col.col2 .page--flow-col-icon {
        background-image: url(../img/service01-icon2.png);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        width: 40%;
        height: 5rem;
        margin: 1.8rem auto 0.7rem;
    }

    .page--flow-col.col3 .page--flow-col-icon {
        background-image: url(../img/service01-icon3.png);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        width: 40%;
        height: 5rem;
        margin: 1.8rem auto 0.7rem;
    }

    .page--flow-col.col4 .page--flow-col-icon {
        background-image: url(../img/service01-icon4.png);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        width: 40%;
        height: 5rem;
        margin: 1.8rem auto 0.7rem;
    }

    .page--flow-col.col5 .page--flow-col-icon {
        background-image: url(../img/service01-icon5.png);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        width: 40%;
        height: 5rem;
        margin: 1.8rem auto 0.7rem;
    }

    .page--flow-col.col6 .page--flow-col-icon {
        background-image: url(../img/service01-icon6.png);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        width: 40%;
        height: 5rem;
        margin: 1.8rem auto 0.7rem;
    }

    .page--flow-col h3 {
        font-size: 0.9rem;
        letter-spacing: 0.1rem;
    }

    .page--flow-col-text p {
        padding: 1.1rem 0 0;
        font-size: 0.7rem;
        line-height: 1.3rem;
    }
    /* page-works end */

    /* page-service */
    .page-service--content {
        width: 78%;
        margin: 0 auto 4.5rem;
        padding-top: 21.1rem;
    }

    .page-service--main {
        margin-top: 5.6rem;
    }

    .page-service--main-title h2 {
        font-size: 3.9rem;
        letter-spacing: 0.6rem;
        line-height: 6rem;
    }

    .page-service--main-text {
        margin-top: 4.2rem;
    }

    .page-service--main-text p {
        font-size: 1.2rem;
        letter-spacing: 0.235rem;
        line-height: 2.6rem;
        text-wrap: nowrap;
    }

    .page-service--main2 {
        width: 88.5%;
        margin: 0 auto 8.7rem;
    }

    .page-service--row {
        width: 88.5%;
        margin: 6.5rem auto 0;
        gap: 4.2rem 6.5%;
    }

    .page-service--row-col {
        width: 46.7%;
    }

    .page-service--row-col .page-service--row-col-img {
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        width: 100%;
        height: 24.3rem;
    }

    .page-service--row-col-title {
        margin-top: 0.7rem;
    }

    .page-service--row-col-title h2 {
        letter-spacing: 0.2rem;
    }

    .page-service--row-col-title.title2 + .page-service--row-col-text {
        margin-top: 0.2rem;
        margin-left: 0.3rem;
    }

    .page-service--row-col-title + .page-service--row-col-text {
        margin-top: 0.5rem;
        margin-left: 0.3rem;
    }

    .page-service--row-col-text p {
        font-size: 0.85rem;
        letter-spacing: 0.065rem;
        line-height: 1.65rem;
    }
    /* page-service end */

    /* business下層ページスライダー */
    .service--img-box {
        border-radius: 2rem;
    }

    .service--img-box .swiper-wrapper {
        transition-timing-function: linear !important;
    }

    .page--notfound-bg {
        background-image: url(../img/contact-bg.jpg);
        background-size: cover;
        width: 100%;
        height: 100rem;
    }

    .page--notfound {
        margin: 5rem 0 15rem;
    }

    .page--notfound a {
        margin-top: 5rem;
        display: inline-block;
        font-size: 1.2rem;
    }
}

/* SPのデザイン */
@media (max-width: 767px) {
    .view-more-btn-col.col1 p {
        font-size: 3.5rem;
        letter-spacing: 0.1rem;
    }

    .view-more-btn-col.col2 {
        width: 4rem;
        height: 4rem;
        border-radius: 2rem;
        margin-left: 1.5rem;
        transition: .5s;
    }

    .view-more-btn-col.col2 .tri {
        clip-path: polygon(0 0, 0 100%, 100% 50%);
    }

    /* .view-more-btn:hover .view-more-btn-col.col2 {
        margin-left: 2rem;
    } */

    .text-main-color {
        color: var(--main-color);
    }

    .main-color {
        background-color: var(--main-color);
    }

    .arrow {
        position: relative;
        display: inline-block;
        width: 4rem;
        height: 4rem;
    }

    .arrow::before,
    .arrow::after {
        content: "";
        position: absolute;
        top: calc(50% - 1px);
        right: 1.25rem;
        width: 1.6rem;
        height: 0.3rem;
        border-radius: 9999px;
        transform-origin: calc(100% - 0px) 50%;
    }

    .arrow.arrow-white::before,
    .arrow.arrow-white::after {
        background-color: #fff;
    }

    .arrow.arrow-main-color::before,
    .arrow.arrow-main-color::after {
        background-color: var(--main-color);
    }

    .arrow::before {
        transform: rotate(38deg);
    }

    .arrow::after {
        transform: rotate(-38deg);
    }

    .common--title1-main h2 {
        font-size: 8.5rem;
        letter-spacing: 2.5rem;
    }

    .common--title1-sub {
        margin-top: 2.5rem;
    }

    .common--title1-sub h3 {
        font-size: 3rem;
        letter-spacing: 0.1rem;
    }

    .common--title2-main h2 {
        font-size: 8.5rem;
        letter-spacing: 2.5rem;
    }

    .common--title2-sub {
        margin-top: 2.5rem;
    }

    .common--title2-sub h3 {
        font-size: 3rem;
        letter-spacing: 0.15rem;
    }

    .common--title3 h2 {
        font-size: 8.5rem;
        letter-spacing: 2.5rem;
    }

    .common-title3-row {
        margin-top: 2rem;
    }

    .common-title3-row2 {
        margin-top: 0.9rem;
    }

    .common-title3-col.col1 {
        margin-bottom: 4.5rem;
    }

    .common-title3-col.col1 p {
        font-size: 3rem;
        letter-spacing: 0.1rem;
    }

    .common-title3--text {
        width: 90%;
        margin: 5rem auto;
    }

    .common-title3--text p {
        font-size: 3rem;
        letter-spacing: 0.1rem;
        line-height: 6rem;
    }

    .common--title3-tag {
        margin-top: 2.5rem;
        gap: 2.5rem;
        flex-wrap: wrap;
    }

    .common--title3-tag-col {
        border-radius: 3rem;
        border: solid 1px #fff;
        padding: 1rem 4.5rem;
    }

    .common--title3-tag-col p {
        font-size: 2.25rem;
    }

    .common--title4-main h2 {
        font-size: 8.5rem;
        letter-spacing: 2.5rem;
    }

    .common--title4-sub h4 {
        font-size: 3rem;
        letter-spacing: 0.1rem;
    }

    .common--title4-main2 h3 {
        letter-spacing: 1.5rem;
        font-size: 5rem;
    }

    .common-title5 h2 {
        font-size: 8.5rem;
        letter-spacing: 2.5rem;
    }

    .common-title5 .subtitle {
        margin-top: 1rem;
        margin-left: 2rem;
    }

    .common-title5 .subtitle p {
        font-size: 3rem;
        letter-spacing: 0.1rem;
    }

    .common--title6-main {
        margin-left: 1.3rem;
    }

    .common--title6-main h2 {
        font-size: 8.5rem;
        letter-spacing: 2.5rem;
    }

    .common--title6-sub {
        margin-top: 1.1rem;
    }

    .common--title6-sub h3 {
        font-size: 3rem;
        letter-spacing: 0.1rem;
    }

    /* company-contact */
    .company-contact--row {
        width: 90%;
        margin: 8rem auto 0rem;
        padding-bottom: 10rem;
    }

    /* .company-contact--row {
        width: 90%;
        margin: 12.5rem auto 10.5rem;
    } */

    .company-contact--col {
        background-image: url(../img/company-bg.png);
        background-size: cover;
        background-position: center;
        width: 80%;
        margin: 6rem auto;
        height: 71rem;
    }

    .company-contact--col-title {
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
    }

    .company-contact--col-title h2 {
        color: #fff;
        font-size: 8.5rem;
        letter-spacing: 0.6rem;
    }

    .company-contact--col-title h3 {
        color: #fff;
        margin-top: 1.5rem;
        font-size: 3rem;
        letter-spacing: 0.1rem;
    }

    .circle-container {
        width: 100%;
        height: 100%;
        position: relative;
    }

    .circle {
        transform: rotate(90deg);
        transform-origin: 50% 50%;
        margin: 5%;
    }

    .circle circle {
        stroke-dasharray: 314.16;
        stroke-dashoffset: 314.16;
        transition: stroke-dashoffset 0.3s ease;
        opacity: 0;
        transition: .3s;
    }

    .circle-container:hover circle {
        stroke-dashoffset: 0;
        opacity: 1;
    }

    /* company-contact end */

    /* page-works */
    .page--works-title {
        padding-top: 20rem;
        text-align: center;
    }

    .page--works-title h2{
        font-size: 8.5rem;
        letter-spacing: 2.5rem;
    }

    .page--works-subtitle {
        margin-top: 1rem;
        margin-left: 0.3rem;
    }

    .page--works-subtitle p {
        font-size: 3.5rem;
        letter-spacing: 0.1rem;
    }

    .page--works-text {
        text-align: center;
        margin: 8rem auto 0;
        width: 80%;
    }

    .page--works-text p {
        font-size: 3.5rem;
        letter-spacing: 0.1rem;
        line-height: 6rem;
    }

    .page--works-view {
        margin: 10rem auto 0;
        width: 80%;
    }

    .works--not-found {
        margin: 30rem 0;
    }

    .works--not-found p {
        font-size: 3rem;
    }

    .page--works-view .works {
        overflow: visible;
    }

    .page--works-view a {
        animation: color 0.5s ease-in-out forwards;
        font-size: 3rem;
        letter-spacing: 0.1rem;
    }

    .page--works-view .img-box {
        height: 58rem;
        background-color: #fff;
        border-radius: 4rem;
    }

    .page--works-view h3 {
        margin-top: 5rem;
        font-size: 3.5rem;
        letter-spacing: 0.1rem;
        line-height: 6rem;
    }

    .page--works-view .works .slide img{
        transition: .5s;
    }

    .page--works-view .works .slide:hover img{
        scale: 1.05;
    }

    .works--categories div {
        margin-right: 1.5rem;
    }

    .top-works--more-btn {
        width: 10rem;
        margin: 5.8rem auto 0;
    }

    .page--works-more-btn {
        width: 25%;
        margin: 15rem auto 0;
    }

    .page--flow {
        width: 90%;
        margin: 15rem auto;
    }

    .page--flow-title h2 {
        font-size: 8.5rem;
        letter-spacing: 0.4rem;
    }

    .page--flow-row {
        margin-top: 1.99rem;
    }

    .page--flow-col p {
        padding: 1.3rem 0;
        font-size: 1.076rem;
        letter-spacing: 0.1rem;
    }

    .page--flow-col {
        width: 90%;
        margin: auto;
    }

    .page--flow-col:not(:last-child) {
        border-bottom: solid 1px #fff;
    }

    .page--flow-row .page--flow-col:not(:last-child)::before, .page--flow-row .page--flow-col:not(:last-child)::after {
        background-color: var(--main-color);
    }

    .page--flow-row .page--flow-col:not(:last-child)::before {
        transform: rotate(45deg);
    }

    .page--flow-row .page--flow-col:not(:last-child)::after {
        transform: rotate(-45deg);
    }

    .page--flow-row .page--flow-col:not(:last-child)::before,
    .page--flow-row .page--flow-col:not(:last-child)::after {
        content: "";
        position: absolute;
        top: calc(50% - 1px);
        right: -1.8rem;
        width: 3rem;
        height: 0.1rem;
        border-radius: 9999px;
        transform-origin: calc(100% - 0px) 50%;
        z-index: 1;
    }

    .page--flow-row2 {
        margin-top: 5rem;
    }

    .page--flow-row2 .page--flow-col {
        padding: 7.5rem 0rem;
    }

    .page--flow-col .page--flow-col-icon {
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        height: 15rem;
        margin: 7.5rem auto;
    }

    .page--flow-col.col1 .page--flow-col-icon {
        background-image: url(../img/service01-icon1.png);
    }

    .page--flow-col.col2 .page--flow-col-icon {
        background-image: url(../img/service01-icon2.png);
    }

    .page--flow-col.col3 .page--flow-col-icon {
        background-image: url(../img/service01-icon3.png);
    }

    .page--flow-col.col4 .page--flow-col-icon {
        background-image: url(../img/service01-icon4.png);
    }

    .page--flow-col.col5 .page--flow-col-icon {
        background-image: url(../img/service01-icon5.png);
    }

    .page--flow-col.col6 .page--flow-col-icon {
        background-image: url(../img/service01-icon6.png);
    }

    .page--flow-col h3 {
        font-size: 5rem;
        letter-spacing: 0.25rem;
    }

    .page--flow-col-text p {
        padding: 3.5rem 0 0;
        font-size: 3rem;
        line-height: 6rem;
    }
    /* page-works end */

    /* page-service */
    .page-service--content {
        width: 90%;
        margin: 0 auto 20rem;
        padding-top: 40rem;
    }

    .page-service--main {
        margin-top: 5.6rem;
    }

    .page-service--main-title h2 {
        font-size: 3.9rem;
        letter-spacing: 0.6rem;
        line-height: 6rem;
    }

    .page-service--main-text {
        margin-top: 4.2rem;
    }

    .page-service--main-text p {
        font-size: 3rem;
        letter-spacing: 0.1rem;
        line-height: 6rem;
    }

    .page-service--main2 {
        width: 90%;
        margin: 0 auto 20rem;
    }

    .page-service--row {
        width: 90%;
        margin: 15rem auto 0;
        gap: 10rem 0;
    }

    .page-service--row-col {
        width: 100%;
    }

    .page-service--row-col .page-service--row-col-img {
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        width: 100%;
        height: 50.5rem;
    }

    .page-service--row-col-title {
        margin-top: 2.5rem;
    }

    .page-service--row-col-title h2 {
        letter-spacing: 0.25rem;
        font-size: 5rem;
        line-height: 7rem;
    }

    .page-service--row-col-title + .page-service--row-col-text {
        margin-top: 1.5rem;
    }

    .page-service--row-col-text p {
        font-size: 3rem;
        letter-spacing: 0.1rem;
        line-height: 6rem;
    }
    /* page-service end */

    /* business下層ページスライダー */
    .service--img-box {
        border-radius: 2rem;
    }

    .service--img-box .swiper-wrapper {
        transition-timing-function: linear !important;
    }

    /* 404 */
    .page--notfound-bg {
        background-image: url(../img/contact-bg.jpg);
        background-size: cover;
        width: 100%;
    }

    .page--notfound {
        margin: 5rem 0 15rem;
    }

    .page--notfound h2 {
        font-size: 5rem;
        line-height: 10rem;
    }

    .page--notfound a {
        margin-top: 15rem;
        display: inline-block;
        font-size: 3.5rem;
    }
}