@charset "utf-8";

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}

ol, ul {
    list-style: none;
}

blockquote, q {
    quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
    content: '';
    content: none;
}

a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

img {
    vertical-align: top;
    font-size: 0;
    line-height: 0;
    border: 0;
    max-width: 100%;
    height: auto;
}

@media only screen and (max-width: 767px) {
    .img-responsive {
        display: block;
        width: 100%;
        height: auto;
    }
}

html {
    overflow-y: scroll;
    font-size: 62.5%;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    -webkit-overflow-scrolling: touch;
    overflow: auto;
}

@media screen and (max-width: 1140px) and (min-width: 768px) {
    html {
        font-size: 0.86vw;
        /* font-size: 0.8771929vw; */
        /* font-size: 0.8vw; */
    }
}

@media screen and (max-width:767px) and (min-width:481px) {
    html {
        font-size: 1.30208vw;
    }
}

@media only screen and (max-width: 480px) {
    html {
        font-size: 55%;
        font-size: 2.35vw;
        /* font-size: 2.66667vw; */
    }
}

body {
    position: relative;
    line-height: 1.4;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    font-family: 'Noto Sans JP', sans-serif;
    font-style: normal;
    font-weight: 400;
    color: #191919;
    background: white;
    height: 100%;
    font-size: 1.6rem;
    line-height: 1.80769;
    letter-spacing: 2px;
    overflow: hidden;
}

* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

ul {
    list-style: none;
}

a {
    margin: 0;
    padding: 0;
    text-decoration: none;
    background: transparent;
    color: #000;
    outline: none;
    vertical-align: baseline;
}

button {
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    appearance: none;
}

.clear {
    clear: both;
}

.clearfix::after {
    display: block;
    visibility: hidden;
    clear: both;
    height: 0;
    content: '';
}

.sp {
    display: none;
}

@media only screen and (max-width: 767px) {
    .pc {
        display: none;
    }

    .sp {
        display: block;
    }
}

/* .container {
    width: -webkit-calc(100% - 60px);
    width: calc(100% - 60px);
    max-width: 1140px;
    margin: 0 auto;
}

@media only screen and (max-width: 767px) {
    .container {
        width: -webkit-calc(100% - 30px);
    }
} */

.container {
    padding-left: 15px;
    padding-right: 15px;
}

@media only screen and (min-width: 768px) {
    .container {
        width: -webkit-calc(100% - 6.0rem);
        width: calc(100% - 6.0rem);
        max-width: 1140px;
        margin: 0 auto;
        padding: 0;
    }
}

/* @media only screen and (max-width: 480px) {
    .container {
        width: -webkit-calc(100% - 15px);
    }
} */

/* .container {
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}

@media (min-width: 768px) {
    .container {
        width: 750px;
        padding-right: 15px;
        padding-left: 15px;
    }
}

@media (min-width: 992px) {
    .container {
        width: 970px;
    }
}

@media (min-width: 1200px) {
    .container {
        width: 1170px;
    }
} */

/*
heading******************************/

.title_x_large {
    font-size: 4.6rem;
    font-weight: bold;
}

.title_x_large span {
    display: block;
    font-size: 2.0rem;
    font-weight: normal;
}

.title_large {
    font-size: 2.8rem;
    font-weight: bold;
}

.title_large span {
    display: block;
    font-size: 1.4rem;
    font-weight: normal;
}

.title_medium {
    font-size: 2.0rem;
    font-weight: bold;
}

.title_small {
    font-size: 1.8rem;
    font-weight: normal;
}

/*
grid******************************/

.grid {
    letter-spacing: -.35em;
    margin: 0 -15px 0;
}

.col {
    display: inline-block;
    letter-spacing: normal;
    padding: 0 15px;
    vertical-align: top;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

/*
column******************************/

.column {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

/*
width******************************/

.width1 {
    width: 8.33333333333%;
}

@media only screen and (max-width: 767px) {
    .width1 {
        width: 100%;
    }
}

.width2 {
    width: 16.6666666667%;
}

@media only screen and (max-width: 767px) {
    .width2 {
        width: 100%;
    }
}

.width3 {
    width: 25.0%;
}

@media only screen and (max-width: 767px) {
    .width3 {
        width: 100%;
    }
}

.width4 {
    width: 33.3333333333%;
}

@media only screen and (max-width: 767px) {
    .width4 {
        width: 100%;
    }
}

.width5 {
    width: 41.6666666667%;
}

@media only screen and (max-width: 767px) {
    .width5 {
        width: 100%;
    }
}

.width6 {
    width: 50.0%;
}

@media only screen and (max-width: 767px) {
    .width6 {
        width: 100%;
    }
}

.width7 {
    width: 58.3333333333%;
}

@media only screen and (max-width: 767px) {
    .width7 {
        width: 100%;
    }
}

.width8 {
    width: 66.6666666667%;
}

@media only screen and (max-width: 767px) {
    .width8 {
        width: 100%;
    }
}

.width9 {
    width: 75.0%;
}

@media only screen and (max-width: 767px) {
    .width9 {
        width: 100%;
    }
}

.width10 {
    width: 83.3333333333%;
}

@media only screen and (max-width: 767px) {
    .width10 {
        width: 100%;
    }
}

.width11 {
    width: 91.6666666667%;
}

@media only screen and (max-width: 767px) {
    .width11 {
        width: 100%;
    }
}

.width12 {
    width: 100%;
}

/*
追加******************************/

.set_center {
    text-align: center;
}

.set_left {
    text-align: left;
}

.set_right {
    text-align: right;
}

.cursor {
    cursor: pointer;
}

.d_flex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.inner {
    width: 680px;
    margin: 0 auto;
}

@media screen and (max-width: 767px) {
    .inner {
        width: 86%;
        padding: 0 15px;
    }
}

.inner_320 {
    width: 320px;
    margin: 0 auto;
}

@media screen and (max-width: 767px) {
    .inner_320 {
        width: 86%;
        padding: 0 15px;
    }
}

.inner_890 {
    width: 890px;
    margin: 0 auto;
}

@media screen and (max-width: 992px) {
    .inner_890 {
        width: 90%;
        padding: 0 15px;
    }
}

.text {
    font-size: 1.6rem;
    line-height: 1.75;
}

.btn {
    padding-top: 3.6rem;
}

.note {
    font-size: 1.4rem;
}

.w_100vw {
    width: 100vw;
}

.txt-shadow {
    text-shadow: 5px 7px 0 rgb(0 0 0 / 27%);
}

/*
bl_******************************/

.bl_download {
    max-width: 1108px;
    margin: auto;
}

.bl_download_title_content {
    text-align: center;
}

.bl_download_title {
    position: relative;
    display: inline-block;
}

.bl_download_title::before {
    position: absolute;
    content: '';
    background: url(../images/fukidashi_left_large.png) no-repeat;
    width: 4.5rem;
    height: 10.0rem;
    background-size: 4.5rem 10.0rem;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    left: -2.6rem;
    bottom: 0;
}

@media screen and (max-width: 480px) {
    .bl_download_title::before {
        width: 3.15rem;
        height: 7.0rem;
        background-size: 3.15rem 7.0rem;
    }
}

.bl_download_title::after {
    position: absolute;
    content: '';
    background: url(../images/fukidashi_right_large.png) no-repeat;
    width: 4.5rem;
    height: 10.0rem;
    background-size: 4.5rem 10.0rem;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    right: -6.6rem;
    bottom: 0;
}

@media screen and (max-width: 480px) {
    .bl_download_title::after {
        width: 3.15rem;
        height: 7.0rem;
        background-size: 3.15rem 7.0rem;
    }
}

.bl_download_title_main {
    font-size: 4.2rem;
    font-size: clamp(2.94rem, 2.1875vw, 4.2rem);
    font-weight: bold;
}

@media screen and (max-width: 480px) {
    .bl_download_title_main {
        font-size: 2.94rem;
    }
}

.bl_download_title_sub {
    font-size: 2.7rem;
    font-weight: bold;
}

@media screen and (max-width: 480px) {
    .bl_download_title_sub {
        font-size: 1.89rem;
    }
}

.bl_download_grid {
    display: grid;
    column-gap: 3.4rem;
    row-gap: 3.4rem;
    grid-template-columns: repeat(2, 1fr);
    margin-top: 2.5rem;
}

@media screen and (max-width: 767px) {
    .bl_download_grid {
        grid-template-columns: repeat(1, 1fr);
    }
}

.bl_download_btn {
    text-align: center;
}

.bl_point_panel {
    position: relative;
    max-width: 886px;
    margin: 0 auto;
    background: #F28727;
    margin-top: 8.4rem;
    padding: 7.0rem 8.0rem;
}

@media screen and (max-width: 767px) {
    .bl_point_panel {
        padding: 7.0rem 3.0rem;
    }
}

.bl_point_panel::after {
    position: absolute;
    content: '';
    background: url(../images/point01.png) no-repeat;
    width: 37.2rem;
    height: 17.5rem;
    background-size: 37.2rem 17.5rem;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    top: -5.7rem;
    right: -22.3rem;
}

@media screen and (max-width: 1140px) {
    .bl_point_panel::after {
        background-size: 80%;
        right: -28.3rem;
    }
}

@media screen and (max-width: 480px) {
    .bl_point_panel::after {
        background-size: 62%;
        right: -34.3rem;
        top: -4.5rem;
    }
}

.bl_point_panel-02 {
    background: #437629;
}

.bl_point_panel-02::after {
    background: url(../images/point02.png) no-repeat;
}

@media screen and (max-width: 1140px) {
    .bl_point_panel-02::after {
        background-size: 80%;
        right: -28.3rem;
    }
}

@media screen and (max-width: 480px) {
    .bl_point_panel-02::after {
        background-size: 62%;
        right: -34.3rem;
        top: -4.5rem;
    }
}

.bl_point_title_main {
    font-size: 3.6rem;
    font-size: clamp(2.88rem, 1.875vw, 3.6rem);
    font-weight: bold;
    color: #fff;
    text-align: center;
}

.bl_point_title_sub {
    font-size: 2.4rem;
    font-size: clamp(1.92rem, 1.25vw, 2.4rem);
    font-weight: bold;
    color: #fff;
    padding-top: 5.6rem;
    text-align: center;
}

.bl_point_text {
    font-size: 1.8rem;
    font-weight: bold;
    color: #fff;
    padding-top: 2.1rem;
}

/*
header******************************/

.header {
    position: relative;
}

.header_content {
    position: absolute;
    z-index: 20;
}

@media screen and (max-width: 1400px) {
    .header_content {
        width: 20.0rem;
    }
}

@media screen and (max-width: 480px) {
    .header_content {
        width: 16rem;
    }
}

.header_title {
    font-size: 2.0rem;
    font-weight: bold;
    padding-top: 2.3rem;
    padding-left: 2.3rem;
}

@media screen and (max-width: 1400px) {
    .header_title {
        padding-left: 1.3rem;
    }
}

.header_desc {
    font-size: 1.4rem;
    padding-top: 0.5rem;
    padding-left: 2.3rem;
}

@media screen and (max-width: 1400px) {
    .header_desc {
        font-size: 1.0rem;
        padding-left: 1.3rem;
    }
}

@media screen and (max-width: 480px) {
    .header_desc {
        white-space: nowrap;
    }
}

.global-goals {
    margin-top: 1.3rem;
    padding: 1.3rem 4.3rem;
    background-color: #fff;
}

@media screen and (max-width: 480px) {
    .global-goals {
        padding: 1.3rem 2.3rem;
        width: 15rem;
        display: inline-block;
    }
}

.global-goals img {
    width: 15.2rem;
}

@media screen and (max-width: 1400px) {
    .global-goals img {
        width: 12.16rem;
    }
}

.header_link {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 30;
}

@media screen and (max-width: 480px) {
    .header_link {
        position: fixed;
        top: inherit;
        right: 0;
        bottom: 0;
        z-index: 30;
    }
}

.header_link ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

@media screen and (max-width: 1600px) {
    .header_link ul {
        width: 60.6rem;
    }
}

@media screen and (max-width: 767px) {
    .header_link ul {
        width: 55.6rem;
    }
}

@media screen and (max-width: 480px) {
    .header_link ul {
        width: 100%;
    }
}

/*
top-kv******************************/

.top-kv {
    position: relative;
    background: url(../images/top-kv_pc.png) no-repeat;
    width: 100%;
    height: 89rem;
    background-size: cover;
    background-position: center;
}

@media screen and (max-width: 480px) {
    .top-kv {
        background: url(../images/top-kv_sp.png) no-repeat;
        height: 67.8rem;
        background-position: bottom center;
    }
}

.top-kv::after {
    position: relative;
    content: "";
    background: #6AE1FF;
}

.top-kv_inner {
    width: 114rem;
    margin: auto;
}

@media screen and (max-width: 480px) {
    .top-kv_inner {
        width: 100%;
    }
}

.top-kv_flex {
    width: 114rem;
    height: 89rem;
    margin: auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: end;
    -ms-flex-align: end;
    align-items: end;
}

@media screen and (max-width: 480px) {
    .top-kv_flex {
        display: block;
        width: 100%;
        padding-top: 1.0rem;
    }
}

.top-kv_left {
    width: 55%;
    padding-bottom: 28.1rem;
}

@media screen and (max-width: 480px) {
    .top-kv_left {
        width: 100%;
        padding-bottom: 0;
    }
}

.top-kv_right {
    width: 45%;
}

@media screen and (max-width: 480px) {
    .top-kv_right {
        width: 100%;
    }
}

.top-kv_logo {
    width: 27.2rem;
    margin: auto;
}

@media screen and (max-width: 1600px) {
    .top-kv_logo {
        width: 21.76rem;
    }
}

@media screen and (max-width: 480px) {
    .top-kv_logo {
        width: 14.76rem;
    }
}

.top-kv_catch {
    width: 59.7rem;
    margin: auto;
    padding-top: 3.3rem;
}

@media screen and (max-width: 1600px) {
    .top-kv_catch {
        width: 47.76rem;
    }
}

@media screen and (max-width: 480px) {
    .top-kv_catch {
        width: 29.76rem;
    }
}

.top-kv_title {
    padding-top: 1.3rem;
    font-size: 3.3rem;
    font-weight: bold;
    text-align: center;
}

@media screen and (max-width: 1600px) {
    .top-kv_title {
        font-size: 2.64rem;
        text-align: center;
    }

    .top-kv_text {
        padding: 0 6rem;
    }

}

@media screen and (max-width: 480px) {
    .top-kv_title {
        font-size: 1.64rem;
    }
}

.preview {
    width: 65.8rem;
    position: relative;
}

@media screen and (max-width: 1600px) {
    .preview {
        width: 48.48rem;
    }
}

@media screen and (max-width: 767px) {
    .preview {
        width: 40.48rem;
        left: -26.1rem;
    }
}

@media screen and (max-width: 480px) {
    .preview {
        width: 38.7rem;
        left: 3rem;
        top: 0.5rem;
    }
}

@media screen and (max-width: 395px) {
    .preview {
        width: 38.7rem;
        left: 3rem;
        top: 1.5vw;
    }
}

/*
sub-kv******************************/

.sub-kv {
    position: relative;
    background: url(../images/top-kv_pc.png) no-repeat;
    width: 100%;
    height: 30.0rem;
    background-size: cover;
    background-position: top center;
}

/*
top-point******************************/

.top-point {
    padding: 4.0rem 0 7.0rem;
    background: #EAF7F8;
}

.top-point_flex {
    margin: auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: start;
    -ms-flex-align: start;
    align-items: start;
}

@media screen and (max-width: 1600px) {
    .top-point_flex {
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

@media screen and (max-width: 767px) {
    .top-point_flex {
        display: block;
    }
}

.top-point_left {
    width: 70%;
}

@media screen and (max-width: 1600px) {
    .top-point_left {
        width: 50%;
    }
}

@media screen and (max-width: 767px) {
    .top-point_left {
        width: 100%;
    }
}

.top-point_right {
    width: 30%;
}

@media screen and (max-width: 1600px) {
    .top-point_right {
        width: 50%;
    }
}

@media screen and (max-width: 767px) {
    .top-point_right {
        width: 100%;
        padding-top: 5.0rem;
    }
}

.top-point_title_main {
    font-size: 5.6rem;
    font-size: clamp(3.92rem, 2.916vw, 5.6rem);
    font-weight: bold;
    position: relative;
}

.top-point_title_main::after {
    position: absolute;
    content: '';
    background: url(../images/icon-point.png) no-repeat;
    width: 9.4rem;
    height: 8.4rem;
    background-size: 70%;
    margin-left: 0rem;
}

@media screen and (min-width: 768px) {
    .top-point_title_main::after {
        position: absolute;
        content: '';
        background: url(../images/icon-point.png) no-repeat;
        width: 9.4rem;
        height: 8.4rem;
        background-size: 4.895vw 4.375vw;
        margin-left: 0.989vw;
    }
}


@media screen and (min-width: 1921px) {
    .top-point_title_main::after {
        position: absolute;
        content: '';
        background: url(../images/icon-point.png) no-repeat;
        width: 9.4rem;
        height: 8.4rem;
        background-size: 9.4rem 8.4rem;
        margin-left: 1.9rem;
    }
}





.top-point_title_sub {
    font-size: 3.6rem;
    font-size: clamp(2.52rem, 1.875vw, 3.6rem);
    font-weight: bold;
    padding-top: 0.3rem;
}

.top-point_text {
    font-size: 1.8rem;
    padding-top: 0.8rem;
}

.top-point_image {
    width: 53.9rem;
    margin: auto;
}

@media screen and (max-width: 767px) {
    .top-point_image {
        max-width: 53.9rem;
    }
}

@media screen and (max-width: 480px) {
    .top-point_image {
        width: 100%;
    }
}

.top-point_arrow_small {
    width: 22.6rem;
    margin: auto;
}

@media screen and (max-width: 767px) {
    .top-point_arrow_small {
        width: 29.46544vw;
    }
}

/*
top-campaign******************************/

.campaign-body {
    font-family: Arial, sans-serif;
    background-color: #cdefff; /* 全体の背景色 */
}

/* キャンペーンの全体幅を調整する */
.campaign-container {
    max-width: 100%; /* デフォルトではコンテンツが全幅 */
    margin: 0 auto; /* 中央揃え */
}

@media (min-width: 1140px) {
    .campaign-container {
        max-width: 900px; /* 横幅が1400pxを超えた場合にコンテンツの幅を800pxに収める */
    }
}

.campaign-heading-large {
    font-size: 1.5em; /* 大きいフォントサイズ */
    font-weight: bold;
    text-align: center;
    margin-top: 15px; /* 上側の余白 */
    margin-bottom: 15px; /* 下側の余白 */
    margin-left: 20px; /* 左側の余白 */
    margin-right: 20px; /* 右側の余白 */
    white-space: nowrap; /* 改行せずに1行で表示 */
    color: #1e90ff; /* フォントカラー */
}

.campaign-heading-medium {
    font-size: 1.3em; /* 中くらいのフォントサイズ */
    font-weight: bold;
    text-align: center;
    margin-left: 20px; /* 左側の余白 */
    margin-right: 20px; /* 右側の余白 */


}
.campaign-text-large {
    font-size: 2em;
    margin-left: 20px; /* 左側の余白 */
    margin-right: 20px; /* 右側の余白 */

}
.campaign-text-medium {
    font-size: 1.5em;
    margin-left: 20px; /* 左側の余白 */
    margin-right: 20px; /* 右側の余白 */

}
.campaign-text-small {
    font-size: 1.1em;
    margin-top: 20px; /* 上側の余白 */
    margin-bottom: 20px; /* 下側の余白 */
    margin-left: 20px; /* 左側の余白 */
    margin-right: 20px; /* 右側の余白 */

}
.campaign-bold {
    font-weight: bold;
    margin-left: 20px; /* 左側の余白 */
    margin-right: 20px; /* 右側の余白 */

}
.campaign-img {
    max-width: 100%;
    height: auto;
}
.campaign-hr {
    border: 0.5px solid #000;
}
.campaign-paragraph {
    background-color: #f0f8ff; /* 段落の背景色 */
    border-radius: 15px; /* 角を丸くする */
    padding: 10px; /* 内側の余白加 */
    margin-top: 10px; /* 上側の余白 */
    margin-bottom: 10px; /* 下側の余白 */
    margin-left: 15px; /* 左側の余白 */
    margin-right: 15px; /* 右側の余白 */

}

/*
top-app******************************/

.top-app {
    padding: 4.0rem 0 27.0rem;
}

.top-app_download_btn {
    max-width: 56.3rem;
    margin: auto;
    padding-top: 4.6rem;
}

/*
top-service******************************/

.top-service {
    padding: 14rem 0 3.0rem;
    background: #468C91;
}

.top-service_inner {
    width: -webkit-calc(100% - 6.0rem);
    width: calc(100% - 6.0rem);
    max-width: 886px;
    margin: 0 auto;
    border: 6px solid #fff;
    padding: 0 7.5rem 5.0rem;
    text-align: center;
    position: relative;
}

@media screen and (max-width: 767px) {
    .top-service_inner {
        padding: 0 3.0rem 5.0rem;
    }
}

.top-service_inner::before {
    position: absolute;
    content: '';
    background: url(../images/people_01.png) no-repeat;
    width: 21.4rem;
    height: 22.4rem;
    background-size: 21.4rem 22.4rem;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    top: -27.7rem;
    left: -2.3rem;
}

.top-service_inner::after {
    position: absolute;
    content: '';
    background: url(../images/people_02.png) no-repeat;
    width: 50.0rem;
    height: 25.7rem;
    background-size: 50.0rem 25.7rem;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    top: -32.7rem;
    right: -66.3rem;
}

.top-service_heading {
    font-size: 5.6rem;
    font-size: clamp(3.92rem, 2.916vw, 5.6rem);
    font-weight: bold;
    color: #fff;
    text-align: center;
    margin: auto;
    margin-top: -6.0rem;
    background: #468C91;
    display: inline-block;
    padding: 0 4.3rem;

}

@media screen and (max-width: 767px) {
    .top-service_heading {
        padding: 0 1.3rem;
    }
}

.top-service_text {
    font-size: 1.8rem;
    font-weight: bold;
    color: #fff;
    padding-top: 2.5rem;
    text-align: left;
}

.top-service_arrow_large {
    position: relative;
    padding-bottom: 23rem;
    margin: auto;
    background: #EAF7F8;
}

.top-service_arrow_large img {
    width: 100vw;
}

.top-service_arrow_large::before {
    position: absolute;
    content: '';
    background: url(../images/people_03.png) no-repeat;
    width: 51.3rem;
    height: 28.4rem;
    background-size: 51.3rem 28.4rem;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    top: 4.3rem;
    left: 50%;
}

@media screen and (max-width: 1400px) {
    .top-service_arrow_large::before {
        top: 0.5rem;
    }
}

@media screen and (max-width: 480px) {
    .top-service_arrow_large::before {
        top: -2.5rem;
    }
}

/*
top-otoku******************************/

.top-otoku {
    background: #EAF7F8;
    padding: 2rem 0 9.0rem;
}

.top-otoku_point {
    margin-bottom: 10.0rem;
}

/*
top-riyo******************************/

.top-riyo {
    padding: 9.0rem 0 5.0rem;
    position: relative;
    z-index: 10;
}

.top-riyo_inner {
    width: -webkit-calc(100% - 6.0rem);
    width: calc(100% - 6.0rem);
    max-width: 767px;
    margin: 0 auto;
}

.top-riyo_top {
    background: #E88227;
    padding: 5.5rem 3.0rem 4.5rem;
    border-radius: 6.3rem 6.3rem 0 0;
}

@media screen and (max-width: 480px) {
    .top-riyo_top {
        border-radius: 3.15rem 3.15rem 0 0;
    }
}

.top-riyo_title_main {
    font-size: 4.2rem;
    font-size: clamp(2.94rem, 2.1875vw, 4.2rem);
    color: #fff;
    font-weight: bold;
    text-align: center;
}

@media screen and (max-width: 480px) {
    .top-riyo_title_main br {
        display: none;
    }
}

.top-riyo_title_sub {
    font-size: 3.2rem;
    color: #fff;
    font-weight: bold;
    text-align: center;
    padding-top: 1.5rem;
}

.top-riyo_top_underline {
    padding-top: 1.8rem;
    max-width: 69.7rem;
}

.top-riyo_bottom {
    background: #E88227;
    padding: 5.5rem 3.5rem 4.5rem;
    /* border-radius: 0 0 6.3rem 6.3rem; */
    border-radius: 6.3rem;
}

@media screen and (max-width: 480px) {
    .top-riyo_bottom {
        /* border-radius: 0 0 3.15rem 3.15rem; */
        border-radius: 3.15rem;
    }
}

.top-riyo_point {
    position: relative;
    width: 20.1rem;
    margin: auto;
    margin-top: 17.0rem;
}

.top-riyo_point::after {
    position: absolute;
    content: '';
    background: url(../images/riyo_kpoint_fukidashi.png) no-repeat;
    width: 23.0rem;
    height: 16.6rem;
    background-size: 23.0rem 16.6rem;
    top: -10.3rem;
    right: -12.6rem;
}

@media screen and (max-width: 480px) {
    .top-riyo_point::after {
        background-size: 80%;
    }
}


.top-riyo_list {
    display: grid;
    column-gap: 2.3rem;
    row-gap: 2.3rem;
    grid-template-columns: repeat(3, 1fr);
    margin-top: 2.3rem;
}

@media screen and (max-width: 767px) {
    .top-riyo_list {
        display: grid;
        column-gap: 2.3rem;
        row-gap: 2.3rem;
        grid-template-columns: repeat(2, 1fr);
        margin-top: 2.3rem;
    }
}

@media screen and (max-width: 480px) {
    .top-riyo_list {
        display: grid;
        column-gap: 2.3rem;
        row-gap: 2.3rem;
        grid-template-columns: repeat(1, 1fr);
        margin-top: 2.3rem;
    }
}

.top-riyo_item {
    text-align: center;
    background: #fff;
    border-radius: 2.6rem;
    padding: 2.0rem 0 2.0rem;
    background: rgb(255 255 255 / 30%);
}

.top-riyo_item_text {
    font-size: 2.4rem;
    font-weight: bold;
    padding-top: 2.2rem;
    line-height: 1.2;
}

/*
top-example******************************/

.top-example {
    margin-top: -34.0rem;
    padding: 34.0rem 0 8.8rem;
    background: #EAF7F8;
    position: relative;
    z-index: 0;
}

@media screen and (max-width: 767px) {
    .top-example {
        margin-top: -32.0rem;
    }
}

.top-example_point {
    background: #fff;
    position: relative;
}

.top-example_point::after {
    position: absolute;
    content: '';
    background: url(../images/people_06.png) no-repeat;
    width: 26.8rem;
    height: 32.5rem;
    background-size: 26.8rem 32.5rem;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    top: inherit;
    bottom: 3.3rem;
    right: -31.3rem;
}

@media screen and (max-width: 1360px) {
    .top-example_point::after {
        right: -17.3rem;
    }
}

@media screen and (max-width: 767px) {
    .top-example_point::after {
        right: -23.3rem;
        background-size: 70%;
        bottom: -21rem;
    }
}

.top-example_point .bl_point_title_main {
    font-size: 4.2rem;
    font-size: clamp(2.94rem, 2.1875vw, 4.2rem);
    font-weight: bold;
    color: #000;
    text-align: left;
}

.top-example_point .bl_point_title_sub {
    font-size: 2.4rem;
    font-weight: bold;
    color: #000;
    padding-top: 5.6rem;
    text-align: center;
}

.top-example_point .bl_point_text {
    font-size: 1.8rem;
    font-weight: bold;
    color: #000;
    padding-top: 2.1rem;
    position: relative;
    z-index: 10;
}

/*
top-voice******************************/

.top-voice {
    padding: 10.0rem 0 10.0rem;
    position: relative;
}

.top-voice_inner {
    position: relative;
    width: -webkit-calc(100% - 6.0rem);
    width: calc(100% - 6.0rem);
    max-width: 886px;
    margin: 0 auto;
    background: #EAF7F8;
    padding: 7.0rem 8.0rem 30.0rem;
}

.top-voice_inner::after {
    position: absolute;
    content: '';
    background: url(../images/point_voice.png) no-repeat;
    width: 46.3rem;
    height: 27.0rem;
    background-size: 46.3rem 27.0rem;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    bottom: -15.7rem;
    right: -40.3rem;
    z-index: 20;
}

@media screen and (max-width: 1140px) {
    .top-voice_inner::after {
        background-size: 63%;
        right: -43.3rem;
        bottom: -24rem;
    }
}

@media screen and (max-width: 480px) {
    .top-voice_inner::after {
        background-size: 53%;
        right: -47.3rem;
        top: inherit;
        bottom: -24rem;
    }
}

.top-voice_heading_content {
    text-align: center;
}

.top-voice_heading {
    position: relative;
    display: inline-block;
    font-size: 5.6rem;
    font-size: clamp(3.36rem, 2.916vw, 5.6rem);
}

.top-voice_heading::before {
    position: absolute;
    content: '';
    background: url(../images/fukidashi_left_small.png) no-repeat;
    width: 4.5rem;
    height: 7.6rem;
    background-size: 4.5rem 7.6rem;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    left: -3.6rem;
    bottom: 0;
}

@media screen and (max-width: 480px) {
    .top-voice_heading::before {
        width: 3.15rem;
        height: 5.32rem;
        background-size: 3.15rem 5.32rem;
    }
}

.top-voice_heading::after {
    position: absolute;
    content: '';
    background: url(../images/fukidashi_right_small.png) no-repeat;
    width: 4.5rem;
    height: 7.6rem;
    background-size: 4.5rem 7.6rem;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    right: -7.6rem;
    bottom: 0;
}

@media screen and (max-width: 480px) {
    .top-voice_heading::after {
        width: 3.15rem;
        height: 5.32rem;
        background-size: 3.15rem 5.32rem;
    }
}

/*
top-kameiten******************************/

.top-kameiten {
    padding: 9.0rem 0 4.2rem;
    position: relative;
    background: #468C91;
}

.top-kameiten_inner {
    position: relative;
    width: -webkit-calc(100% - 6.0rem);
    width: calc(100% - 6.0rem);
    max-width: 886px;
    margin: 0 auto;
    background: #EAF7F8;
    padding: 3.6rem 13.5rem 4.4rem;
    margin-top: 3.0rem;
}

@media screen and (max-width: 480px) {
    .top-kameiten_inner {
        padding: 3.6rem 3.0rem 4.4rem;
    }
}

.top-kameiten_heading {
    font-size: 5.6rem;
    font-size: clamp(3.92rem, 2.916vw, 5.6rem);
    font-weight: bold;
    color: #fff;
    text-align: center;
}

.top-kameiten_arrow_large {
    margin: auto;
}

.top-kameiten_arrow_large img {
    width: 100vw;
}

/*
top-faq******************************/

.top-faq {
    padding: 6.8rem 0 11.0rem;
    position: relative;
}

@media screen and (max-width: 480px) {
    .top-faq {
        padding: 7.8rem 0 23rem;
    }
}

.top-faq_inner {
    position: relative;
    max-width: 886px;
    margin: 0 auto;
    margin-top: 3.0rem;
    margin-bottom: 5.0rem;
}

.top-faq_heading {
    font-size: 5.6rem;
    font-size: clamp(3.92rem, 2.916vw, 5.6rem);
    font-weight: bold;
    color: #323333;
    text-align: center;
}

/* アコーディオンメニュー  */

.cp_actab {
    position: relative;
    overflow: hidden;
    width: 100%;
    font-size: 1.6rem;
    line-height: 1.4;
    background: #EAF7F8;
    padding: 0 4.4rem 0 3.4rem;
}

@media only screen and (max-width: 480px) {
    .cp_actab {
        padding: 0 1.5rem 0 1.5rem;
    }
}

.cp_actab:not(:first-child) {
    margin-top: 1.2rem;
}

.cp_actab input {
    position: absolute;
    z-index: -1;
    opacity: 0;
}

.cp_actab label {
    position: relative;
    display: block;
    padding: 5.0rem 6.8rem 4.8rem 1.8rem;
    cursor: pointer;
    /* text-indent: -0.5rem; */
}

@media only screen and (max-width: 480px) {
    .cp_actab label {
        padding: 5.0rem 3.8rem 4.8rem 1.8rem;
    }
}

.cp_actab .cp_actab-content {
    overflow: hidden;
    max-height: 0;
    -webkit-transition: max-height 0.35s;
    transition: max-height 0.35s;
    color: #333333;
    /* text-indent: -0.5rem; */
}

.cp_actab .cp_actab-content p {
    padding: 5.0rem 6.8rem 4.8rem 1.8rem;
    line-height: 1.8;
    border-top: 1px solid #AAAAAA;
}

@media only screen and (max-width: 480px) {
    .cp_actab .cp_actab-content p {
        padding: 5.0rem 3.8rem 4.8rem 1.8rem;
    }
}

.cp_actab .cp_actab-content p.answer_img {
    padding: 5.0rem 0 4.8rem 1.8rem;
    width: 14%;
}

@media only screen and (max-width: 767px) {
    .cp_actab .cp_actab-content p.answer_img {
        padding: 5.0rem 0 4.8rem 1.8rem;
        width: 18%;
    }
}

@media only screen and (max-width: 480px) {
    .cp_actab .cp_actab-content p.answer_img {
        padding: 5.0rem 0 4.8rem 1.8rem;
        width: 32%;
    }
}

.cp_actab .cp_actab-content p.answer_text {
    padding: 5.0rem 0 4.8rem 0;
    width: 86%;
}

@media only screen and (max-width: 767px) {
    .cp_actab .cp_actab-content p.answer_text {
        padding: 5.0rem 0 4.8rem 0;
        width: 82%;
    }
}

@media only screen and (max-width: 480px) {
    .cp_actab .cp_actab-content p.answer_text {
        padding: 5.0rem 0 4.8rem 0;
        width: 68%;
    }
}

.question_img {
    width: 14%;
}

@media only screen and (max-width: 767px) {
    .question_img {
        width: 18%;
    }
}

@media only screen and (max-width: 480px) {
    .question_img {
        width: 32%;
    }
}

.question_text {
    width: 86%;
}

@media only screen and (max-width: 767px) {
    .question_text {
        width: 82%;
    }
}

@media only screen and (max-width: 480px) {
    .question_text {
        width: 68%;
    }
}

/* :checked */

.cp_actab input:checked~.cp_actab-content {
    max-height: 100em;
}

/* Icon */

.cp_actab label::after {
    line-height: 3;
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 3em;
    height: 3em;
    -webkit-transition: all 0.35s;
    transition: all 0.35s;
    text-align: center;
}

.cp_actab input[type=checkbox]+label::after {
    content: '';
    background: url(../images/faq_arrow.png) no-repeat;
    position: absolute;
    width: 3.2rem;
    height: 1.5rem;
    background-size: 3.2rem 1.5rem;
    top: 5.4rem;
    /* line-height: 3; */
    right: 0rem;
}

@media only screen and (max-width: 480px) {
    .cp_actab input[type=checkbox]+label::after {
        right: -1px;
    }
}

.cp_actab input[type=checkbox]:checked+label::after {
    transform: rotate(180deg);
}

.question {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 1.8rem;
    font-weight: bold;
}

.question img {
    width: 9.3rem;
    margin-right: 2.2rem;
}

.answer {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: start;
    -ms-flex-align: start;
    align-items: start;
    font-size: 1.8rem;
    font-weight: bold;
}

.answer img {
    width: 8.2rem;
    margin-right: 3.3rem;
}

.answer_text {
    word-break: break-all;
}


/* pressRelease */

.pressRelease {
    padding-top: 7.6rem;
}

.pressRelease_title_content {
    text-align: center;
}

.pressRelease_title {
    position: relative;
    display: inline-block;
}

.pressRelease_title::before {
    position: absolute;
    content: '';
    background: url(../images/fukidashi_left_small.png) no-repeat;
    width: 4.5rem;
    height: 7.6rem;
    background-size: 4.5rem 7.6rem;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    left: -3.6rem;
    bottom: 0;
}

@media screen and (max-width: 480px) {
    .pressRelease_title::before {
        width: 3.15rem;
        height: 5.32rem;
        background-size: 3.15rem 5.32rem;
        left: -1.6rem;
    }
}

.pressRelease_title::after {
    position: absolute;
    content: '';
    background: url(../images/fukidashi_right_small.png) no-repeat;
    width: 4.5rem;
    height: 7.6rem;
    background-size: 4.5rem 7.6rem;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    right: -6.6rem;
    bottom: 0;
}

@media screen and (max-width: 480px) {
    .pressRelease_title::after {
        width: 3.15rem;
        height: 5.32rem;
        background-size: 3.15rem 5.32rem;
        right: -4.6rem;
    }
}

.pressRelease_title_main {
    font-size: 4.2rem;
    font-size: clamp(2.94rem, 2.1875vw, 4.2rem);
    font-weight: bold;
}

@media screen and (max-width: 480px) {
    .pressRelease_title_main {
        font-size: 2.94rem;
    }
}

.pressRelease_title_sub {
    font-size: 2.7rem;
    font-weight: bold;
}

@media screen and (max-width: 480px) {
    .pressRelease_title_sub {
        font-size: 1.89rem;
    }
}

.pressRelease_grid {
    display: grid;
    column-gap: 3.4rem;
    row-gap: 3.4rem;
    grid-template-columns: repeat(1, 1fr);
    margin-top: 2.5rem;
    position: relative;
}

@media screen and (max-width: 767px) {
    .pressRelease_grid {
        grid-template-columns: repeat(1, 1fr);
    }
}

.pressRelease_grid::after {
    position: absolute;
    content: '';
    background: url(../images/people_06.png) no-repeat;
    width: 26.8rem;
    height: 32.5rem;
    background-size: 26.8rem 32.5rem;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    top: inherit;
    bottom: -21.7rem;
    right: -31.3rem;
    z-index: 10;
}

@media screen and (max-width: 1360px) {
    .pressRelease_grid::after {
        right: -17.3rem;
    }
}

@media screen and (max-width: 767px) {
    .pressRelease_grid::after {
        right: -23.3rem;
        background-size: 70%;
        bottom: -32rem;
    }
}

@media screen and (max-width: 480px) {
    .pressRelease_grid::after {
        bottom: -35rem;
    }
}

.pressRelease_btn {
    text-align: center;
    width: 50%;
    margin: auto;
}

@media screen and (max-width: 767px) {
    .pressRelease_btn {
        width: 100%;
    }
}

/*
top-guide******************************/

.top-guide {
    position: relative;
    padding: 7.0rem 0 8.0rem;
    background: url(../images/bg_guide.png) no-repeat center;
    background-size: cover;
}

.top-guide_heading {
    font-size: 5.6rem;
    font-size: clamp(3.92rem, 2.916vw, 5.6rem);
    font-weight: bold;
    color: #fff;
    text-align: center;
}

.top-guide_title {
    font-size: 5.6rem;
    font-weight: bold;
    color: #323333;
    text-align: center;
}

.top-guide_title_content {
    position: relative;
    margin: auto;
    text-align: center;
    max-width: 53.7rem;
}

.top-guide_title {
    position: relative;
    display: block;
}

.top-guide_title::before {
    position: absolute;
    content: '';
    background: url(../images/fukidashi_left_large_wh.png) no-repeat;
    width: 4.5rem;
    height: 10.0rem;
    background-size: 4.5rem 10.0rem;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    left: 6.2rem;
    bottom: 0;
}

@media screen and (max-width: 480px) {
    .top-guide_title::before {
        width: 3.15rem;
        height: 7.0rem;
        background-size: 3.15rem 7.0rem;
    }
}

.top-guide_title::after {
    position: absolute;
    content: '';
    background: url(../images/fukidashi_right_large_wh.png) no-repeat;
    width: 4.5rem;
    height: 10.0rem;
    background-size: 4.5rem 10.0rem;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    right: 1.6rem;
    bottom: 0;
}

@media screen and (max-width: 480px) {
    .top-guide_title::after {
        width: 3.15rem;
        height: 7.0rem;
        background-size: 3.15rem 7.0rem;
    }
}

.top-guide_title_main {
    font-size: 4.2rem;
    font-size: clamp(2.94rem, 2.1875vw, 4.2rem);
    font-weight: bold;
    color: #fff;
}

.top-guide_title_sub {
    font-size: 2.7rem;
    font-weight: bold;
    color: #fff;
}

@media screen and (max-width: 480px) {
    .top-guide_title_sub {
        font-size: 1.89rem;
    }
}

.top-guide_list {
    display: grid;
    column-gap: 3.4rem;
    row-gap: 3.4rem;
    grid-template-columns: repeat(2, 1fr);
    margin-top: 2.5rem;
    padding-bottom: 5.2rem;
}

@media screen and (max-width: 767px) {
    .top-guide_list {
        grid-template-columns: repeat(1, 1fr);
    }
}

.top-guide_btn {
    text-align: center;
    padding-top: 1.3rem;
}

.top-guide_arrow {
    width: 3.8rem;
    margin: auto;
}

/*
top-contact******************************/

.top-contact {
    position: relative;
    padding: 5.0rem 0 17.0rem;
    background: #E88227;
}

.top-contact_heading {
    font-size: 5.6rem;
    font-size: clamp(3.92rem, 2.916vw, 5.6rem);
    font-weight: bold;
    color: #fff;
    text-align: center;
}

.top-contact_inner {
    width: -webkit-calc(100% - 6.0rem);
    width: calc(100% - 6.0rem);
    max-width: 584px;
    margin: 0 auto;
    padding-top: 5.5rem;
    position: relative;
}

.top-contact_inner::before {
    position: absolute;
    content: '';
    background: url(../images/people_07.png) no-repeat;
    width: 82.5rem;
    height: 28.2rem;
    background-size: 82.5rem 28.2rem;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    bottom: -23.7rem;
    left: -28.3rem;
    z-index: 10;
}

.top-contact_inner::after {
    position: absolute;
    content: '';
    background: url(../images/people_08.png) no-repeat;
    width: 85.4rem;
    height: 28.2rem;
    background-size: 85.4rem 28.2rem;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    bottom: -23.7rem;
    right: -126.3rem;
    z-index: 10;
}

@media screen and (max-width: 1000px) {
    .top-contact_inner::after {
        right: -112.3rem;
    }
}

@media screen and (max-width: 480px) {
    .top-contact_inner::after {
        right: -118.3rem;
    }
}

.top-contact_form_document {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 55px;
}

/*
top-aboutus******************************/

.top-aboutus {
    position: relative;
    padding: 9.6rem 0 20.0rem;
    background: url(../images/bg_aboutus.png) no-repeat center;
    background-size: cover;
}

.top-aboutus_heading {
    font-size: 5.6rem;
    font-size: clamp(3.92rem, 2.916vw, 5.6rem);
    font-weight: bold;
    color: #fff;
    text-align: center;
}

.top-aboutus_inner {
    width: -webkit-calc(100% - 6.0rem);
    width: calc(100% - 6.0rem);
    max-width: 678px;
    margin: 0 auto;
    padding-top: 6.5rem;
}

.top-aboutus_box:not(:first-child) {
    padding-top: 5.5rem;
}

.top-aboutus_title {
    font-size: 2.4rem;
    color: #fff;
    font-weight: bold;
}

.top-aboutus_table {
    margin-top: 2.3rem;
}

.top-aboutus_table ul {
    border-top: 2px dashed #fff;
}

.top-aboutus_table ul li {
    padding: 2.3rem 0px 2.3rem;
    font-size: 2.0rem;
    font-weight: bold;
    line-height: 1.8;
    color: #fff;
    border-bottom: 2px dashed #fff;
    word-break: break-all;
}

.top-aboutus_table ul li a {
    display: block;
    color: #fff;
}

/*
footer******************************/

.footer {
    position: relative;
}

.footer_copyright {
    font-size: 1.4rem;
    letter-spacing: 0.2em;
    text-align: center;
    color: #fff;
    margin-top: -8.0rem;
    padding-bottom: 3.0rem;
}

/*
page-thanks******************************/

.page-thanks {
    position: relative;
    padding: 5.0rem 0 17.0rem;
    background: #E88227;
}

.page-thanks_text {
    display: flex;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    font-size: 1.8rem;
    line-height: 2.0;
    padding-bottom: 5.0rem;
}

.page-newsDetail_btn-back {
    width: 23.3rem;
    margin: auto;
    padding-top: 5.0rem;
    padding-bottom: 5.0rem;
}