@charset "UTF-8";

body {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 22px;
    line-height: 1.5;
}

img {
    width: 100%;
    vertical-align: top;
}

iframe {
    width: 100%;
    height: 100%;
}

section {
    position: relative;
    overflow-x: hidden;
}

a img:hover {
    opacity: 0.7;
}

.show-sp {
    display: none;
}

.maker {
    background: linear-gradient(transparent 60%, #ff6 60%);
}

.font-sans {
    font-family: 'Noto Sans JP', sans-serif;
}

.font-serif {
    font-family: 'Noto Serif JP', serif;
}

.sec-common-head {
    font-size: 50px;
    color: #0b295e;
    font-weight: bold;
    text-align: center;
    line-height: 1.2;
}

.sec-common-head-top {
    font-size: 24px;
    color: #1861c0;
}

.acc {
    position: relative;
}

.acc-btn {
    cursor: pointer;
}

.acc-btn::after {
    content: "";
    display: block;
    background-image: url(../img/pc/acc_icon_arrow.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 20px;
    height: 11px;
    transition: 0.5s;
}

.active .acc-btn::after {
    transform: rotate(180deg);
}

.acc-cnt {
    display: none;
}

@media (max-width: 1500px) {
    body {
        font-size: calc(22vw / 1500 * 100);
    }

    .acc-btn::after {
        width: calc(20vw / 1500 * 100);
        height: calc(11vw / 1500 * 100);
    }
}

@media (max-width: 750px) {
    body {
        font-size: calc(22vw / 750 * 100);
    }

    .show-pc {
        display: none;
    }

    .show-sp {
        display: block;
    }

    .sec-common-head {
        font-size: calc(50vw / 750 * 100);
    }

    .sec-common-head-top {
        font-size: calc(24vw / 750 * 100);
    }

    .acc-btn::after {
        width: calc(20vw / 750 * 100);
        height: calc(11vw / 750 * 100);
    }

}

/* animetion */
.scroll-anime {
    opacity: 0;
}

.scroll-anime-start {
    animation-timing-function: ease-out;
    animation-duration: 1s;
    animation-delay: 0.1s;
    animation-fill-mode: forwards;
}

.scroll-anime-delay_b {
    animation-delay: 0.4s;
}

.scroll-anime-delay_c {
    animation-delay: 0.7s;
}

.scroll-anime-delay_d {
    animation-delay: 1s;
}

.scroll-anime-delay_e {
    animation-delay: 1.3s;
}

.scroll-skew {
    position: absolute;
    width: 150vw;
    height: calc(500vw / 1500 * 100);
    transform: rotate(-30deg) translateX(200vw);
    z-index: -1;
    animation-delay: 1s;
    animation-duration: 2s;
}

.scroll-anime-start.fade-in-top {
    animation-name: fadeInTop;
}

.scroll-anime-start.fade-in-bottom {
    animation-name: fadeInBottom;
}

.scroll-anime-start.fade-in-left {
    animation-name: fadeInLeft;
}

.scroll-anime-start.fade-in-right {
    animation-name: fadeInRight;
}

.scroll-anime-start.slide-in-top {
    animation-name: slideInTop;
}

.scroll-anime-start.slide-in-bottom {
    animation-name: slideInBottom;
}

.scroll-anime-start.slide-in-left {
    animation-name: slideInLeft;
}

.scroll-anime-start.slide-in-right {
    animation-name: slideInRight;
}

.scroll-anime-start.skew-left {
    animation-name: skewLeft;
}

@keyframes fadeInTop {
    0% {
        opacity: 0;
        transform: translateY(-30px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeInBottom {
    0% {
        opacity: 0;
        transform: translateY(30px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeInLeft {
    0% {
        opacity: 0;
        transform: translateX(-30px);
    }

    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes fadeInRight {
    0% {
        opacity: 0;
        transform: translateX(30px);
    }

    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes slideInTop {
    0% {
        opacity: 0;
        transform: translateY(-100vw);
    }

    50% {
        opacity: 0;
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes slideInBottom {
    0% {
        opacity: 0;
        transform: translateY(100vw);
    }

    50% {
        opacity: 0;
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes slideInLeft {
    0% {
        opacity: 0;
        transform: translateX(-100vw);
    }

    50% {
        opacity: 0;
    }

    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes slideInRight {
    0% {
        opacity: 0;
        transform: translateX(100vw);
    }

    50% {
        opacity: 0;
    }

    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes skewLeft {
    0% {
        transform: rotate(-30deg) translateX(200vw);
    }

    100% {
        transform: rotate(-30deg) translateX(0);
    }
}

@media (max-width: 750px) {
    .scroll-skew {
        height: calc(500vw / 750 * 100);
    }
}

/* header */
.header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;
}

.header-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 14px;
}

.header-left,
.header-right {
    display: flex;
    align-items: center;
}

.header-logo {
    width: 254px;
    margin: 0 30px;
}

.header-txt {
    color: #fff;
}

.header-tel {
    margin-right: 30px;
    color: #0b295e;
    line-height: 1;
}

.header-tel a {
    color: #0b295e;
    font-size: 34px;
    font-weight: bold;
}

.header-nav-list {
    display: flex;
}

.header-nav-mail {
    width: 112px;
}

.header-nav-line {
    width: 111px;
}

@media (max-width: 1500px) {
    .header-inner {
        font-size: calc(14vw / 1500 * 100);
    }

    .header-logo {
        width: calc(254vw / 1500 * 100);
        margin: 0 calc(30vw / 1500 * 100);
    }

    .header-tel {
        margin-right: calc(30vw / 1500 * 100);
    }

    .header-tel a {
        font-size: calc(34vw / 1500 * 100);
    }

    .header-nav-mail {
        width: calc(112vw / 1500 * 100);
    }

    .header-nav-line {
        width: calc(111vw / 1500 * 100);
    }
}

@media (max-width: 750px) {
    .header-inner {
        font-size: calc(14vw / 750 * 100);
    }

    .header-logo {
        width: calc(411vw / 750 * 100);
        margin: 0 calc(30vw / 750 * 100);
    }

    .header-tel {
        margin: auto;
    }

    .header-nav-tel {
        width: calc(159vw / 750 * 100);
    }
}

/* fixed_bnr */
.fixed_bnr_pc {
    position: fixed;
    top: 30%;
    right: 0;
    width: 54px;
    z-index: 10;
}

.fixed_bnr_pc-img {
    margin-bottom: 30px;
}

@media (max-width: 1500px) {
    .fixed_bnr_pc {
        position: fixed;
        top: 30%;
        right: 0;
        width: 54px;
        z-index: 10;
    }

    .fixed_bnr_pc-img {
        margin-bottom: 30px;
    }
}

/* fixed_bnr_sp */
@media (max-width: 750px) {
    .fixed_bnr_sp {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        width: calc(690vw / 750 * 100);
        margin: 0 auto;
        z-index: 15;
    }

    .fixed_bnr_sp .acc-btn::after {
        content: none;
    }

    .fixed_bnr_sp-acc-cnt {
        background-color: #0b295e;
        padding-bottom: calc(35vw / 750 * 100);
    }

    .fixed_bnr_sp-list {
        width: calc(615vw / 750 * 100);
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
    }

    .fixed_bnr_sp-item {
        width: calc(290vw / 750 * 100);
    }
    .fixed_bnr_sp-item.fixed_bnr_sp-item02 {
        width: calc(290vw / 750 * 100);
        margin: 0 .5rem;
    }
}

/* fv */
.fv {
    background-image: url(../img/pc/fv_bg.png);
    background-color: #e9edf0;
    background-size: contain;
    background-repeat: no-repeat;
    background-attachment: fixed;
    width: 100%;
   height: auto;
    padding-top: 10vw;
    box-sizing: border-box;
        padding-bottom: 2vw;
}

.fv-img {
    width: 1318px;
    margin: 0 auto;
}

@media (max-width: 1500px) {
    .fv {
        height: calc(781vw / 1500 * 100);
        padding-top: calc(111vw / 1500 * 100);
            padding-top: 10vw;
    }

    .fv-img {
        width: calc(1318vw / 1500 * 100);
        margin-right: 0;
        margin-left: auto;
    }
}

@media (max-width: 750px) {
    .fv {
        background-image: url(../img/sp/fv_bg.png);
        background-size: cover;
        height: calc(1150vw / 750* 100);
        padding-top: calc(60vw / 750* 100);
    }

    .fv-img {
                width: calc(719vw / 750 * 100);
        margin-right: 0;
        margin-left: auto;
    }
}

/* authority */
.authority {
    background-image: url(../img/pc/authority_bg.png);
    background-size: cover;
    background-repeat: no-repeat;
    width: 100%;
    height: 1265px;
}

.authority-head {
    width: 553px;
    margin: 0 auto;
    padding-top: 80px;
}

.authority-list {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    width: 720px;
    margin: 38px auto;
}

.authority-item {
    width: 240px;
    margin-bottom: 10px;
}

.authority-item-icon {
    width: 201px;
    margin: 0 auto 12px;
}

.authority-item-txt {
    font-size: 17px;
    font-weight: bold;
    color: #00364f;
    text-align: center;
}

.authority-bottom {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    background-image: url(../img/pc/authority_bottom_bg.png);
    background-size: 100% calc(110vw / 1500 * 100);
    background-position: bottom center;
    background-repeat: no-repeat;
}

.authority-bottom-img {
    width: 1020px;
    margin: 0 auto;
}

@media (max-width: 1500px) {
    .authority {
        height: calc(1225vw / 1500 * 100);
    }

    .authority-head {
        width: calc(553vw / 1500 * 100);
        padding-top: calc(80vw / 1500 * 100);
    }

    .authority-list {
        width: calc(720vw / 1500 * 100);
        margin: calc(38vw / 1500 * 100) auto;
    }

    .authority-item {
        width: calc(240vw / 1500 * 100);
        margin-bottom: calc(10vw / 1500 * 100);
    }

    .authority-item-icon {
        width: calc(201vw / 1500 * 100);
        margin: 0 auto calc(12vw / 1500 * 100);
    }

    .authority-item-txt {
        font-size: calc(17vw / 1500 * 100);
    }

    .authority-bottom-img {
        width: calc(1020vw / 1500 * 100);
    }
}

@media (max-width: 750px) {
    .authority {
        background-image: url(../img/sp/authority_bg.png);
        height: calc(1775vw / 750 * 100);
    }

    .authority-head {
        width: calc(693vw / 750 * 100);
        padding-top: calc(100vw / 750 * 100);
    }

    .authority-list {
        width: 100%;
        margin: calc(38vw / 750 * 100) auto;
    }

    .authority-item {
        width: calc(250vw / 750 * 100);
        margin-bottom: calc(10vw / 750 * 100);
    }

    .authority-item-icon {
        width: calc(201vw / 750 * 100);
        margin: 0 auto calc(12vw / 750 * 100);
    }

    .authority-item-txt {
        font-size: calc(17vw / 750 * 100);
    }

    .authority-bottom {
        background: none;
    }

    .authority-bottom-img {
        width: 100%;
        margin: 0 auto;
    }
}

/* margin */
.margin {
    height: 976px;
    overflow: hidden;
}

.margin-bg {
    position: absolute;
    background-color: #e8f5ff;
    width: 100%;
    height: 100%;
    z-index: -2;
}

.margin .scroll-skew {
    top: 0;
    left: -75.8%;
    background-color: #d0e7f9;
}

.margin-head {
    width: 655px;
    margin: 0 auto;
    padding-top: 115px;
}

.margin-graph {
    width: 633px;
    margin: 39px auto 0;
}

@media (max-width: 1500px) {
    .margin {
        height: calc(976vw / 1500 * 100);
        overflow: hidden;
    }

    .margin-bg {
        position: absolute;
        background-color: #e8f5ff;
        width: 100%;
        height: 100%;
        z-index: -2;
    }

    .margin .scroll-skew {
        top: 0;
        left: -75.5%;
    }

    .margin-head {
        width: calc(655vw / 1500 * 100);
        margin: 0 auto;
        padding-top: calc(115vw / 1500 * 100);
    }

    .margin-graph {
        width: calc(633vw / 1500 * 100);
        margin: calc(39vw / 1500 * 100) auto 0;
    }
}

@media (max-width: 750px) {
    .margin {
        height: calc(977vw / 750 * 100);
        margin-top: calc(-55vw / 750 * 100);
    }

    .margin .scroll-skew {
        top: -21%;
        left: -75.5%;
    }

    .margin-head {
        width: calc(661vw / 750 * 100);
        padding-top: calc(115vw / 750 * 100);
    }

    .margin-graph {
        width: calc(634vw / 750 * 100);
        margin: calc(39vw / 750 * 100) auto 0;
    }
}

/* customer */
.customer {
    width: 100%;
    height: 1282px;
    background-image: url(../img/pc/customer_bg.png);
    background-size: contain;
    background-position: bottom center;
    background-repeat: no-repeat;
}

.customer-head {
    position: relative;
    width: 100%;
    height: 334px;
    background-image: url(../img/pc/hiromi/customer_head_bg.png);
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
}

.customer-head-txt {
    position: absolute;
    top: 66.8%;
    left: 16.7%;
    color: #fff;
    font-weight: bold;
}

.customer-head-txt-line {
    display: inline-block;
    background-color: #0b295e;
    padding: 8px 20px;
    line-height: 1;
    box-sizing: border-box;
}

.customer-head-txt .small {
    font-size: 31px;
    margin-bottom: 20px;
}

.customer-head-txt .large {
    font-size: 53px;
}

.customer-graph {
    width: 682px;
    margin: 93px auto 30px;
}

.customer-txt {
    font-size: 16px;
    color: #747c7f;
    text-align: center;
    line-height: 3;
}

@media (max-width: 1500px) {
    .customer {
        height: calc(1282vw / 1500 * 100);
    }

    .customer-head {
        height: calc(334vw / 1500 * 100);
    }

    .customer-head-txt-line {
        padding: calc(8vw / 1500 * 100) calc(20vw / 1500 * 100);
    }

    .customer-head-txt .small {
        font-size: calc(31vw / 1500 * 100);
        margin-bottom: calc(20vw / 1500 * 100);
    }

    .customer-head-txt .large {
        font-size: calc(53vw / 1500 * 100);
    }

    .customer-graph {
        width: calc(682vw / 1500 * 100);
        margin: calc(93vw / 1500 * 100) auto calc(30vw / 1500 * 100);
    }

    .customer-txt {
        font-size: calc(16vw / 1500 * 100);
    }
}

@media (max-width: 750px) {
    .customer {
        height: calc(1521vw / 750 * 100);
        background-image: url(../img/sp/customer_bg.png);
    }

    .customer-head {
        height: calc(334vw / 750 * 100);
        background-image: url(../img/sp/hiromi/customer_head_bg.png);
    }

    .customer-head-txt {
        top: 66.4%;
        left: 0;
    }

    .customer-head-txt-line {
        padding: calc(8vw / 750 * 100) calc(20vw / 750 * 100);
    }

    .customer-head-txt .small {
        font-size: calc(31vw / 750 * 100);
        margin-bottom: calc(16vw / 750 * 100);
    }

    .customer-head-txt .large {
        font-size: calc(53vw / 750 * 100);
    }

    .customer-graph {
        width: calc(571vw / 750 * 100);
        margin: calc(93vw / 750 * 100) auto calc(55vw / 750 * 100);
    }

    .customer-txt {
        font-size: calc(24vw / 750 * 100);
        line-height: 2;
    }
}

/* uv */
.uv {
    margin-top: -240px;
}

.uv-list {
    width: 800px;
    margin: 48px auto;
}

.uv-box {
    width: 690px;
    margin-bottom: 50px;
    margin-left: 0;
    margin-right: auto;
    background-color: #edf3f8;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 40px;
    box-sizing: border-box;
}

.uv-box:nth-child(even) {
    margin-left: auto;
    margin-right: 0;
}

.uv-box-details-head {
    width: 489px;
    transform: translateX(-80px);
    margin-bottom: 15px;
}

.uv-box-details-txt {
    width: 425px;
    font-size: 15px;
    color: #00364f;
    line-height: 2.3;
}

.uv-box-img {
    width: 170px;
    transform: translateX(-40px);
    flex: 0 0 auto;
}

@media (max-width: 1500px) {
    .uv {
        margin-top: calc(-240vw / 1500 * 100);
    }

    .uv-list {
        width: calc(800vw / 1500 * 100);
        margin: calc(48vw / 1500 * 100) auto;
    }

    .uv-box {
        width: calc(690vw / 1500 * 100);
        margin-bottom: calc(50vw / 1500 * 100);
        padding: calc(40vw / 1500 * 100);
    }

    .uv-box:nth-child(even) {
        margin-left: auto;
        margin-right: 0;
    }

    .uv-box-details-head {
        width: calc(489vw / 1500 * 100);
        margin-bottom: calc(15vw / 1500 * 100);
    }

    .uv-box-details-txt {
        width: calc(425vw / 1500 * 100);
        font-size: calc(15vw / 1500 * 100);
    }

    .uv-box-img {
        width: calc(170vw / 1500 * 100);
    }
}

@media (max-width: 750px) {
    .uv {
        margin-top: calc(-75vw / 750 * 100);
    }

    .uv-list {
        width: 100%;
        margin: calc(48vw / 750 * 100) auto;
    }

    .uv-box {
        width: calc(690vw / 750 * 100);
        margin-bottom: calc(70vw / 750 * 100);
        margin-left: auto;
        margin-right: 0;
        padding: calc(30vw / 750 * 100) calc(40vw / 750 * 100);
        align-items: stretch;
    }

    .uv-box:nth-child(even) {
        margin-left: 0;
        margin-right: auto;
    }

    .uv-box:nth-child(even) .uv-box-details {
        transform: translateX(calc(30vw / 750 * 100));
    }

    .uv-box-details-head {
        width: calc(489vw / 750 * 100);
        transform: translateX(calc(-70vw / 750 * 100));
        margin-bottom: calc(10vw / 750 * 100);
    }

    .uv-box:nth-child(even) .uv-box-details-head {
        transform: translateX(calc(-40vw / 750 * 100));
    }

    .uv-box-details-txt {
        width: calc(425vw / 750 * 100);
        font-size: calc(22vw / 750 * 100);
    }

    .uv-box-img {
        width: calc(170vw / 750 * 100);
        transform: translateX(calc(-40vw / 750 * 100)) translateY(calc(24vw / 750 * 100));
    }

    .uv-box:nth-child(even) .uv-box-img {
        transform: translateX(calc(20vw / 750 * 100));
    }
}

/* cv_01 */
.cv_01 {
    height: 871px;
    margin-top: 76px;
    overflow: hidden;
}

.cv_01-bg {
    position: absolute;
    bottom: 0;
    background-color: #fffee7;
    width: 100%;
    height: 704px;
    z-index: -2;
}

.cv_01 .scroll-skew {
    top: 75%;
    left: -5.2%;
    background-color: #fffcaa;
    animation-delay: 2s;
}

.cv_01-img {
    width: 1000px;
    margin: 0 auto;
}

.cv_01-btn {
    width: 686px;
    margin: -34px auto 0;
}

@media (max-width: 1500px) {
    .cv_01 {
        height: calc(871vw / 1500 * 100);
        margin-top: calc(76vw / 1500 * 100);
    }

    .cv_01-bg {
        height: calc(704vw / 1500 * 100);
    }

    .cv_01-img {
        width: calc(1000vw / 1500 * 100);
    }

    .cv_01-btn {
        width: calc(686vw / 1500 * 100);
        margin: calc(-34vw / 1500 * 100) auto 0;
    }
}

@media (max-width: 750px) {
    .cv_01 {
        height: calc(772vw / 750 * 100);
        margin-top: calc(76vw / 750 * 100);
    }

    .cv_01-bg {
        height: calc(400vw / 750 * 100);
    }

    .cv_01 .scroll-skew {
        top: 75%;
        left: 2.8%;
    }

    .cv_01-img {
        width: 100%;
    }

    .cv_01-btn {
        width: calc(686vw / 750 * 100);
        margin: calc(-34vw / 750 * 100) auto 0;
    }
}

/* contact_01 */
.contact_01 {
    background-color: #ebf0f6;
    padding-bottom: 80px;
}

.contact_01-head {
    background-image: url(../img/pc/contact_01_head_bg.png);
    background-color: #1861c0;
    background-size: contain;
    background-position: top center;
    background-repeat: no-repeat;
    width: 100%;
    height: 475px;
}

.contact_01-head-cnt {
    width: 610px;
    margin: 0 auto;
    padding-top: 60px;
}

.contact_01-img {
    width: 744px;
    margin: 55px auto 35px;
}

.contact_01-box-area {
    position: relative;
    width: 1000px;
    margin: 30px auto;
}

.contact_01-box {
    position: relative;
    background-color: #fff;
    font-size: 18px;
    padding: 50px 0;
    color: #0b295e;
    z-index: 1;
}

.contact_01-box-area::before,
.contact_01-box-area::after {
    content: "";
    position: absolute;
    display: block;
    width: 196px;
    height: 113px;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: 0;
}

.contact_01-box-area::before {
    background-image: url(../img/pc/contact_01_bg_01.png);
    top: -10px;
    left: -10px;
}

.contact_01-box-area::after {
    background-image: url(../img/pc/contact_01_bg_02.png);
    bottom: -10px;
    right: -10px;
}


.contact_01-box-inner {
    width: 600px;
    margin: 0 auto;
}

.contact_01-box-txt {
    text-align: center;
    margin: 30px auto;
    font-size: 16px;
}

.contact_01-box-annotation {
    text-align: center;
    margin: 40px auto 70px;
    font-size: 20px;
    font-weight: bold;
    color: #0b295e;
    border-top: 1px solid #0b295e;
    border-bottom: 1px solid #0b295e;
    padding: 35px 0;
}

.contact_01-box-table {
    width: 100%;
    margin-top: 40px;
}

.contact_01-box-table-head,
.contact_01-box-table-data {
    display: block;
}

.contact_01-box-table-head {
    font-weight: bold;
    margin-bottom: 10px;
    padding: 0 5px;
}

.contact_01-box-table-head .required {
    color: #fff;
    background-color: #37aaee;
    padding: 2px 21px;
    border-radius: 5px;
    margin-left: 21px;
}

.contact_01-box-table-data {
    margin-bottom: 45px;
}

.contact_01-box-table tr:last-child .contact_01-box-table-data {
    margin-bottom: 0;
}

.contact_01-box-table-data input[type="text"],
.contact_01-box-table-data input[type="tel"],
.contact_01-box-table-data input[type="email"],
.contact_01-box-table-data select,
.contact_01-box-table-data textarea {
    background-color: #e3edf5;
    width: 100%;
    padding: 20px 25px;
    box-sizing: border-box;
    border-radius: 5px;
}

.contact_01-box-table-data select {
    background-color: #fafafa;
    border: 1px solid #ccc;
    cursor: pointer;
}

.contact_01-box-table-data-select {
    position: relative;
}

.contact_01-box-table-data-select::after {
    content: "";
    display: block;
    position: absolute;
    top: 40%;
    right: 5%;
    width: 10px;
    height: 10px;
    border-right: 1px solid #747c7f;
    border-bottom: 1px solid #747c7f;
    transform: rotate(45deg);
}

.contact_01-box-table-data textarea {
    height: 340px;
}

.contact_01-box-table-chk-list {
    display: flex;
    flex-wrap: wrap;
    padding-left: 15px;
    margin-top: 15px;
}

.contact_01-box-table-chk-item {
    margin-right: 40px;
    margin-bottom: 45px;
}

.contact_01-box-table-chk-item input[type="checkbox"],
.contact_01-box-table-chk-item input[type="radio"] {
    margin-right: 15px;
    transform: scale(2);
    cursor: pointer;
}

.contact_01-box-table-chk-item label {
    cursor: pointer;
}

.contact_01-box-btn {
    margin-top: 20px;
}

.contact_01-box-privacybox {
    height: 340px;
    margin-top: 50px;
    border: 1px solid #ccc;
    border-radius: 5px;
    padding: 30px 15px;
    overflow-y: scroll;
    font-size: 16px;
}

.contact_01-box-privacy h3 {
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    color: #0b295e;
    margin-bottom: 30px;
}

.contact_01-box-privacy h4 {
    font-weight: bold;
    margin: 30px 0 10px;
}

.privacy-btn {
    margin: 30px auto;
    text-align: center;
}

.privacy-btn label {
    display: block;
    cursor: pointer;
    margin-bottom: 10px;
}

.privacy-btn input[type="checkbox"] {
    margin-right: 15px;
    transform: scale(2);
}

.contact_01-box .error {
    color: red;
}

@media (max-width: 1500px) {
    .contact_01 {
        padding-bottom: calc(80vw / 1500 * 100);
    }

    .contact_01-head {
        height: calc(475vw / 1500 * 100);
    }

    .contact_01-head-cnt {
        width: calc(610vw / 1500 * 100);
        padding-top: calc(60vw / 1500 * 100);
    }

    .contact_01-img {
        width: calc(744vw / 1500 * 100);
        margin: calc(55vw / 1500 * 100) auto calc(35vw / 1500 * 100);
    }

    .contact_01-box-area {
        width: calc(1000vw / 1500 * 100);
        margin: calc(30vw / 1500 * 100) auto;
    }

    .contact_01-box {
        font-size: calc(18vw / 1500 * 100);
        padding: calc(50vw / 1500 * 100) 0;
    }

    .contact_01-box-area::before,
    .contact_01-box-area::after {
        width: calc(196vw / 1500 * 100);
        height: calc(113vw / 1500 * 100);
    }

    .contact_01-box-area::before {
        top: calc(-10vw / 1500 * 100);
        left: calc(-10vw / 1500 * 100);
    }

    .contact_01-box-area::after {
        bottom: calc(-10vw / 1500 * 100);
        right: calc(-10vw / 1500 * 100);
    }

    .contact_01-box-inner {
        width: calc(600vw / 1500 * 100);
    }

    .contact_01-box-txt {
        margin: calc(30vw / 1500 * 100) auto;
        font-size: calc(16vw / 1500 * 100);
    }

    .contact_01-box-annotation {
        margin: calc(40vw / 1500 * 100) auto calc(70vw / 1500 * 100);
        font-size: calc(20vw / 1500 * 100);
        border-top: calc(1vw / 1500 * 100) solid #0b295e;
        border-bottom: calc(1vw / 1500 * 100) solid #0b295e;
        padding: calc(35vw / 1500 * 100) 0;
    }

    .contact_01-box-table {
        margin-top: calc(40vw / 1500 * 100);
    }

    .contact_01-box-table-head {
        margin-bottom: calc(10vw / 1500 * 100);
        padding: 0 calc(5vw / 1500 * 100);
    }

    .contact_01-box-table-head .required {
        padding: calc(2vw / 1500 * 100) calc(21vw / 1500 * 100);
        border-radius: calc(5vw / 1500 * 100);
        margin-left: calc(21vw / 1500 * 100);
    }

    .contact_01-box-table-data {
        margin-bottom: calc(45vw / 1500 * 100);
    }

    .contact_01-box-table-data input[type="text"],
    .contact_01-box-table-data input[type="tel"],
    .contact_01-box-table-data input[type="email"],
    .contact_01-box-table-data select,
    .contact_01-box-table-data textarea {
        padding: calc(20vw / 1500 * 100) calc(25vw / 1500 * 100);
        border-radius: calc(5vw / 1500 * 100);
    }

    .contact_01-box-table-data select {
        border: calc(1vw / 1500 * 100) solid #ccc;
    }

    .contact_01-box-table-data-select::after {
        width: calc(10vw / 1500 * 100);
        height: calc(10vw / 1500 * 100);
        border-right: calc(1vw / 1500 * 100) solid #747c7f;
        border-bottom: calc(1vw / 1500 * 100) solid #747c7f;
    }

    .contact_01-box-table-data textarea {
        height: calc(340vw / 1500 * 100);
    }

    .contact_01-box-table-chk-list {
        padding-left: calc(15vw / 1500 * 100);
        margin-top: calc(15vw / 1500 * 100);
    }

    .contact_01-box-table-chk-item {
        margin-right: calc(40vw / 1500 * 100);
        margin-bottom: calc(45vw / 1500 * 100);
    }

    .contact_01-box-table-chk-item input[type="checkbox"],
    .contact_01-box-table-chk-item input[type="radio"] {
        margin-right: calc(15vw / 1500 * 100);
    }

    .contact_01-box-btn {
        margin-top: calc(20vw / 1500 * 100);
    }

    .contact_01-box-privacybox {
        height: calc(340vw / 1500 * 100);
        margin-top: calc(50vw / 1500 * 100);
        border: calc(1vw / 1500 * 100) solid #ccc;
        border-radius: calc(5vw / 1500 * 100);
        padding: calc(30vw / 1500 * 100) calc(15vw / 1500 * 100);
        font-size: calc(16vw / 1500 * 100);
    }

    .contact_01-box-privacy h3 {
        font-size: calc(24vw / 1500 * 100);
        margin-bottom: calc(30vw / 1500 * 100);
    }

    .contact_01-box-privacy h4 {
        margin: calc(30vw / 1500 * 100) 0 calc(10vw / 1500 * 100);
    }

    .privacy-btn label {
        margin-bottom: calc(10vw / 1500 * 100);
    }

    .privacy-btn {
        margin: calc(30vw / 1500 * 100) auto;
    }

    .privacy-btn input[type="checkbox"] {
        margin-right: calc(15vw / 1500 * 100);
    }
}

@media (max-width: 750px) {
    .contact_01 {
        padding-bottom: calc(80vw / 750 * 100);
    }

    .contact_01-head {
        background-image: url(../img/sp/contact_01_head_bg.png);
        background-color: transparent;
        height: calc(457vw / 750 * 100);
    }

    .contact_01-head-cnt {
        width: calc(610vw / 750 * 100);
        padding-top: calc(60vw / 750 * 100);
    }

    .contact_01-img {
        width: calc(740vw / 750 * 100);
        margin: calc(65vw / 750 * 100) auto calc(55vw / 750 * 100);
    }

    .contact_01-box-area {
        width: calc(690vw / 750 * 100);
        margin: calc(30vw / 750 * 100) auto;
    }

    .contact_01-box {
        font-size: calc(24vw / 750 * 100);
        padding: calc(15vw / 750 * 100) 0 calc(45vw / 750 * 100);
    }

    .contact_01-box-area::before,
    .contact_01-box-area::after {
        width: calc(196vw / 750 * 100);
        height: calc(113vw / 750 * 100);
    }

    .contact_01-box-area::before {
        top: calc(-10vw / 750 * 100);
        left: calc(-10vw / 750 * 100);
    }

    .contact_01-box-area::after {
        bottom: calc(-10vw / 750 * 100);
        right: calc(-10vw / 750 * 100);
    }

    .contact_01-box-inner {
        width: calc(600vw / 750 * 100);
    }

    .contact_01-box-txt {
        margin: calc(45vw / 750 * 100) auto;
        font-size: calc(23vw / 750 * 100);
        line-height: 2.1;
    }

    .contact_01-box-annotation {
        margin: calc(40vw / 750 * 100) auto calc(55vw / 750 * 100);
        font-size: calc(23vw / 750 * 100);
        border-top: calc(1vw / 750 * 100) solid #0b295e;
        border-bottom: calc(1vw / 750 * 100) solid #0b295e;
        padding: calc(30vw / 750 * 100) 0;
    }

    .contact_01-box-table {
        margin-top: calc(56vw / 750 * 100);
    }

    .contact_01-box-table-head {
        margin-bottom: calc(10vw / 750 * 100);
        padding: 0;
    }

    .contact_01-box-table-head .required {
        padding: calc(2vw / 750 * 100) calc(14vw / 750 * 100);
        border-radius: calc(5vw / 750 * 100);
        margin-left: calc(8vw / 750 * 100);
        font-size: calc(20vw / 750 * 100);
    }

    .contact_01-box-table-data {
        margin-bottom: calc(30vw / 750 * 100);
    }

    .contact_01-box-table-data input[type="text"],
    .contact_01-box-table-data input[type="tel"],
    .contact_01-box-table-data input[type="email"],
    .contact_01-box-table-data select,
    .contact_01-box-table-data textarea {
        padding: calc(20vw / 750 * 100) calc(25vw / 750 * 100);
        border-radius: calc(5vw / 750 * 100);
    }

    .contact_01-box-table-data select {
        border: calc(1vw / 750 * 100) solid #ccc;
    }

    .contact_01-box-table-data-select::after {
        top: 40%;
        right: 5%;
        width: calc(10vw / 750 * 100);
        height: calc(10vw / 750 * 100);
        border-right: calc(1vw / 750 * 100) solid #747c7f;
        border-bottom: calc(1vw / 750 * 100) solid #747c7f;
    }

    .contact_01-box-table-data textarea {
        height: calc(340vw / 750 * 100);
    }

    .contact_01-box-table-chk-list {
        padding-left: calc(15vw / 750 * 100);
        margin-top: calc(15vw / 750 * 100);
    }

    .contact_01-box-table-chk-item {
        margin-right: calc(26vw / 750 * 100);
        margin-bottom: calc(35vw / 750 * 100);
    }

    .contact_01-box-table-chk-item input[type="checkbox"],
    .contact_01-box-table-chk-item input[type="radio"] {
        margin-right: calc(12vw / 750 * 100);
        transform: none;
    }

    .contact_01-box-btn {
        margin-top: calc(10vw / 750 * 100);
    }

    .contact_01-box-privacybox {
        height: calc(340vw / 750 * 100);
        margin-top: calc(50vw / 750 * 100);
        border: calc(1vw / 750 * 100) solid #ccc;
        border-radius: calc(5vw / 750 * 100);
        padding: calc(30vw / 750 * 100) calc(15vw / 750 * 100);
        font-size: calc(16vw / 750 * 100);
    }

    .contact_01-box-privacy h3 {
        font-size: calc(24vw / 750 * 100);
        margin-bottom: calc(30vw / 750 * 100);
    }

    .contact_01-box-privacy h4 {
        margin: calc(30vw / 750 * 100) 0 calc(10vw / 750 * 100);
    }

    .privacy-btn {
        margin: calc(30vw / 750 * 100) auto;
    }

    .privacy-btn label {
        margin-bottom: calc(10vw / 750 * 100);
    }

    .privacy-btn input[type="checkbox"] {
        margin-right: calc(15vw / 750 * 100);
        transform: none;
    }
}

/* media */
.media {
    padding-top: 105px;
}

.media-head {
    width: 655px;
    margin: 0 auto 65px;
}

.media-list {
    width: 1500px;
    margin: 0 auto;
}

.media-box {
    background-size: contain;
    background-position: top center;
    background-repeat: no-repeat;
    width: 1260px;
    margin-left: auto;
    margin-right: 0;
    margin-bottom: 100px;
    box-sizing: border-box;
}

.media-box:nth-child(even) {
    margin-left: 0;
    margin-right: auto;
    padding-left: 188px;
}

.media-box:last-child {
    margin-bottom: 0;
}

.media-box-tv {
    background-image: url(../img/pc/media_tv_bg.png);
    height: 1292px;
    padding-top: 152px;
}

.media-box-net {
    background-image: url(../img/pc/media_net_bg.png);
    height: 1219px;
    padding-top: 164px;
}

.media-box-magazine {
    background-image: url(../img/pc/media_magazine_bg.png);
    height: 877px;
    padding-top: 200px;
}

.media-box-inner {
    margin-left: 58px;
    width: 953px;
}

.media-box:nth-child(even) .media-box-inner {
    width: 990px;
}

.media-box-tv-txt {
    position: relative;
    font-size: 28px;
    font-weight: bold;
    color: #00364f;
    text-align: center;
    margin: 65px auto 30px;
    z-index: 0;
}

.media-box-tv-txt::after {
    content: "";
    display: block;
    background-color: #fff;
    width: 280px;
    height: 15px;
    margin: 0 auto;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -1;
    transform: skew(-35deg) translateX(-6px);
}

.media-box-tv-movie {
    height: 449px;
}

.media-box-net-head {
    width: 796px;
    margin: 0 auto 30px;
}

.media-box-net-list {
    display: flex;
    justify-content: space-between;
}

.media-box-net-item {
    width: 491px;
}

.media-box-txt {
    font-size: 36px;
    font-weight: bold;
    text-align: center;
    color: #0b295e;
    margin: 60px auto;
}

.media-box-net .media-box-txt {
    margin: 60px auto;
}

.media-box-magazine .media-box-txt {
    margin: 0 auto 80px;
}

.media-box-magazine-list {
    display: flex;
    justify-content: space-between;
}

.media-box-magazine-item:nth-child(1) {
    width: 482px;
}

.media-box-magazine-item:nth-child(2) {
    width: 443px;
}

.media-box-magazine-notes {
    font-size: 14px;
    text-align: right;
    color: #00364f;
    margin-top: 30px;
}

@media (max-width: 1500px) {
    .media {
        padding-top: calc(105vw / 1500 * 100);
    }

    .media-head {
        width: calc(655vw / 1500 * 100);
        margin: 0 auto calc(65vw / 1500 * 100);
    }

    .media-list {
        width: calc(1500vw / 1500 * 100);
    }

    .media-box {
        background-size: cover;
        width: calc(1260vw / 1500 * 100);
        margin-bottom: calc(100vw / 1500 * 100);
    }

    .media-box:nth-child(even) {
        padding-left: calc(188vw / 1500 * 100);
    }

    .media-box-tv {
        height: calc(1292vw / 1500 * 100);
        padding-top: calc(152vw / 1500 * 100);
    }

    .media-box-net {
        height: calc(1219vw / 1500 * 100);
        padding-top: calc(164vw / 1500 * 100);
    }

    .media-box-magazine {
        height: calc(877vw / 1500 * 100);
        padding-top: calc(200vw / 1500 * 100);
    }

    .media-box-inner {
        margin-left: calc(58vw / 1500 * 100);
        width: calc(953vw / 1500 * 100);
    }

    .media-box:nth-child(even) .media-box-inner {
        width: calc(990vw / 1500 * 100);
    }

    .media-box-tv-txt {
        font-size: calc(28vw / 1500 * 100);
        margin: calc(65vw / 1500 * 100) auto calc(30vw / 1500 * 100);
    }

    .media-box-tv-txt::after {
        width: calc(280vw / 1500 * 100);
        height: calc(15vw / 1500 * 100);
    }

    .media-box-tv-movie {
        height: calc(449vw / 1500 * 100);
    }

    .media-box-net-head {
        width: calc(796vw / 1500 * 100);
        margin: 0 auto calc(30vw / 1500 * 100);
    }

    .media-box-net-item {
        width: calc(491vw / 1500 * 100);
    }

    .media-box-txt {
        font-size: calc(36vw / 1500 * 100);
        margin: calc(60vw / 1500 * 100) auto;
    }

    .media-box-net .media-box-txt {
        margin: calc(60vw / 1500 * 100) auto;
    }

    .media-box-magazine .media-box-txt {
        margin: 0 auto calc(80vw / 1500 * 100);
    }

    .media-box-magazine-item:nth-child(1) {
        width: calc(482vw / 1500 * 100);
    }

    .media-box-magazine-item:nth-child(2) {
        width: calc(443vw / 1500 * 100);
    }

    .media-box-magazine-notes {
        font-size: calc(14vw / 1500 * 100);
        margin-top: calc(30vw / 1500 * 100);
    }
}

@media (max-width: 750px) {
    .media {
        padding-top: calc(75vw / 750 * 100);
    }

    .media-head {
        width: calc(655vw / 750 * 100);
        margin: 0 auto calc(55vw / 750 * 100);
    }

    .media-list {
        width: 100%;
    }

    .media-box {
        width: calc(730vw / 750 * 100);
        margin-bottom: calc(100vw / 750 * 100);
    }

    .media-box:nth-child(even) {
        padding-left: 0;
    }

    .media-box-tv {
        background-image: url(../img/sp/media_tv_bg.png);
        height: calc(1479vw / 750 * 100);
        padding-top: calc(132vw / 750 * 100);
    }

    .media-box-net {
        background-image: url(../img/sp/media_net_bg.png);
        height: calc(2086vw / 750 * 100);
        padding-top: calc(142vw / 750 * 100);
    }

    .media-box-magazine {
        background-image: url(../img/sp/media_magazine_bg.png);
        height: calc(1220vw / 750 * 100);
        padding-top: calc(150vw / 750 * 100);
    }

    .media-box-inner {
        margin: 0 auto;
        width: calc(600vw / 750 * 100);
    }

    .media-box:nth-child(even) .media-box-inner {
        width: calc(657vw / 750 * 100);
    }

    .media-box-tv-txt {
        font-size: calc(28vw / 750 * 100);
        margin: calc(92vw / 750 * 100) auto calc(30vw / 750 * 100);
    }

    .media-box-tv-txt::after {
        width: calc(280vw / 750 * 100);
        height: calc(15vw / 750 * 100);
        transform: skew(-35deg) translateX(calc(-6vw / 750 * 100));
    }

    .media-box-tv-movie {
        height: calc(284vw / 750 * 100);
    }

    .media-box-net-head {
        width: calc(477vw / 750 * 100);
        margin: 0 auto calc(40vw / 750 * 100);
    }

    .media-box-net-list {
        display: block;
        transform: translateX(calc(20vw / 750 * 100));
    }

    .media-box-net-item {
        width: calc(651vw / 750 * 100);
        margin: 0 auto calc(15vw / 750 * 100);
    }

    .media-box-txt {
        font-size: calc(36vw / 750 * 100);
        margin: calc(60vw / 750 * 100) auto;
    }

    .media-box-net .media-box-txt {
        margin: calc(70vw / 750 * 100) auto calc(55vw / 750 * 100);
    }

    .media-box-magazine .media-box-txt {
        margin: 0 auto calc(30vw / 750 * 100);
    }

    .media-box-magazine-list {
        display: block;
    }

    .media-box-magazine-item:nth-child(1),
    .media-box-magazine-item:nth-child(2) {
        width: 100%;
    }

    .media-box-magazine-notes {
        font-size: calc(17vw / 750 * 100);
        margin-top: calc(40vw / 750 * 100);
    }
}

/* need */
.need {
    background-image: url(../img/pc/need_bg.png);
    background-size: cover;
    background-repeat: no-repeat;
    width: 1500px;
    height: 1620px;
    margin: 0 auto;
}

.need-head {
    padding-top: 105px;
    width: 691px;
    margin: 0 auto 50px;
}

.need-img_01 {
    width: 691px;
    margin: 0 auto;
}

.need-img_02 {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 1500px;
    margin: 0 auto;
}

@media (max-width: 1500px) {
    .need {
        width: calc(1500vw / 1500 * 100);
        height: calc(1620vw / 1500 * 100);
    }

    .need-head {
        padding-top: calc(105vw / 1500 * 100);
        width: calc(691vw / 1500 * 100);
        margin: 0 auto calc(50vw / 1500 * 100);
    }

    .need-img_01 {
        width: calc(691vw / 1500 * 100);
    }

    .need-img_02 {
        width: calc(1500vw / 1500 * 100);
    }
}

@media (max-width: 750px) {
    .need {
        background-image: url(../img/sp/need_bg.png);
        width: 100%;
        height: calc(1592vw / 750 * 100);
    }

    .need-head {
        padding-top: calc(75vw / 750 * 100);
        width: calc(691vw / 750 * 100);
        margin: 0 auto calc(50vw / 750 * 100);
    }

    .need-img_01 {
        width: 100%;
    }

    .need-img_02 {
        width: 100%;
    }
}

/* introduce */
.introduce {
    padding: 140px 0;
}

.introduce-head {
    width: 443px;
    height: 56px;
    margin: 0 auto;
    background-image: url(../img/pc/introduce_head_bg.png);
    background-size: contain;
    background-repeat: no-repeat;
    font-size: 38px;
    font-weight: bold;
    text-align: center;
    color: #00364f;
}

.introduce-list {
    width: 1500px;
    margin: 70px auto 0;
}

.introduce-box {
    position: relative;
    width: 1200px;
    margin-right: 0;
    margin-left: auto;
    margin-bottom: 60px;
}

.introduce-box:nth-child(even) {
    margin-right: auto;
    margin-left: 0;
}

.introduce-box:last-child {
    margin-bottom: 0;
}

.introduce-txt {
    position: absolute;
    font-size: 16px;
    width: 810px;
    margin: 0 auto;
    line-height: 2.2;
}

.introduce-box:nth-child(1) .introduce-txt {
    top: 68.8%;
    left: 8.6%;
}

.introduce-box:nth-child(2) .introduce-txt {
    width: 850px;
    top: 64.8%;
    left: 20.8%;
}

@media (max-width: 1500px) {
    .introduce {
        padding: calc(140vw / 1500 * 100) 0;
    }

    .introduce-head {
        width: calc(443vw / 1500 * 100);
        height: calc(56vw / 1500 * 100);
        font-size: calc(38vw / 1500 * 100);
    }

    .introduce-list {
        width: calc(1500vw / 1500 * 100);
        margin: calc(70vw / 1500 * 100) auto 0;
    }

    .introduce-box {
        width: calc(1200vw / 1500 * 100);
        margin-bottom: calc(60vw / 1500 * 100);
    }

    .introduce-txt {
        font-size: calc(16vw / 1500 * 100);
        width: calc(810vw / 1500 * 100);
    }

    .introduce-box:nth-child(2) .introduce-txt {
        width: calc(850vw / 1500 * 100);
    }
}

@media (max-width: 750px) {
    .introduce {
        padding: calc(95vw / 750 * 100) 0;
    }

    .introduce-head {
        width: calc(443vw / 750 * 100);
        height: calc(56vw / 750 * 100);
        background-image: url(../img/sp/introduce_head_bg.png);
        font-size: calc(38vw / 750 * 100);
    }

    .introduce-list {
        width: 100%;
        margin: calc(35vw / 750 * 100) auto 0;
    }

    .introduce-box {
        width: 100%;
        margin-bottom: calc(95vw / 750 * 100);
    }

    .introduce-txt {
        font-size: calc(24vw / 750 * 100);
        width: calc(620vw / 750 * 100);
        line-height: 2.1;
    }

    .introduce-box:nth-child(1) .introduce-txt {
        top: 49.3%;
        left: 13.6%;
    }

    .introduce-box:nth-child(2) .introduce-txt {
        width: calc(630vw / 750 * 100);
        top: 42.1%;
        left: 7.9%;
    }
}

/* contact_02 */
.contact_02 {
    background-image: url(../img/pc/contact_02_bg_large.png);
    background-position: top center;
    background-repeat: no-repeat;
    width: 100%;
    height: 2235px;
    margin: -290px auto 0;
    padding-top: 360px;
    box-sizing: border-box;
    pointer-events: none;
}

.contact_02-inner {
    width: 1000px;
    margin: 0 auto;
    pointer-events: all;
}

.contact_02-list {
    position: relative;
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    z-index: 0;
    padding-top: 25px;
    padding-left: 10px;
}

.contact_02-list::after {
    content: "";
    display: block;
    width: 100%;
    height: 508px;
    background-color: rgba(255, 255, 255, 0.3);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: -1;
}

.contact_02-item {
    width: 330px;
    margin-bottom: -5px;
}

.contact_02-list-notes {
    font-size: 15px;
    color: #fff;
    text-align: center;
}

.contact_02-campaign {
    background-color: #fff;
    margin-top: 55px;
    padding-bottom: 60px;
}

.contact_02-campaign-head {
    margin-bottom: 45px;
}

.contact_02-campaign-txt {
    font-size: 32px;
    font-weight: bold;
    text-align: center;
    color: #0b295e;
    margin: 20px auto 15px;
}

.contact_02-campaign-btn-tel {
    width: 646px;
    margin: 0 auto;
}

.contact_02-campaign-btn-list {
    width: 950px;
    margin: 0 auto;
    display: flex;
    justify-content: space-around;
    padding-left: 15px;
}

.contact_02-campaign-btn-item {
    width: 461px;
}

@media (max-width: 1500px) {
    .contact_02 {
        background-image: url(../img/pc/contact_02_bg.png);
        background-size: cover;
        width: calc(1500vw / 1500 * 100);
        height: calc(2235vw / 1500 * 100);
        margin: calc(-290vw / 1500 * 100) auto 0;
        padding-top: calc(360vw / 1500 * 100);
    }

    .contact_02-inner {
        width: calc(1000vw / 1500 * 100);
    }

    .contact_02-list {
        padding-top: calc(25vw / 1500 * 100);
        padding-left: calc(10vw / 1500 * 100);
    }

    .contact_02-list::after {
        height: calc(508vw / 1500 * 100);
    }

    .contact_02-item {
        width: calc(330vw / 1500 * 100);
        margin-bottom: calc(-5vw / 1500 * 100);
    }

    .contact_02-list-notes {
        font-size: calc(15vw / 1500 * 100);
    }

    .contact_02-campaign {
        margin-top: calc(55vw / 1500 * 100);
        padding-bottom: calc(60vw / 1500 * 100);
    }

    .contact_02-campaign-head {
        margin-bottom: calc(45vw / 1500 * 100);
    }

    .contact_02-campaign-txt {
        font-size: calc(32vw / 1500 * 100);
        margin: calc(20vw / 1500 * 100) auto calc(15vw / 1500 * 100);
    }

    .contact_02-campaign-btn-tel {
        width: calc(646vw / 1500 * 100);
    }

    .contact_02-campaign-btn-list {
        width: calc(950vw / 1500 * 100);
        padding-left: calc(15vw / 1500 * 100);
    }

    .contact_02-campaign-btn-item {
        width: calc(461vw / 1500 * 100);
    }
}

@media (max-width: 750px) {
    .contact_02 {
        background-image: url(../img/sp/contact_02_bg.png);
        height: calc(2173vw / 750 * 100);
        margin: calc(-85vw / 750 * 100) auto 0;
        padding-top: calc(105vw / 750 * 100);
    }

    .contact_02-inner {
        width: 100%;
    }

    .contact_02-list {
        width: calc(690vw / 750 * 100);
        margin: 0 auto;
        padding-top: calc(25vw / 750 * 100);
        padding-left: calc(10vw / 750 * 100);
    }

    .contact_02-list::after {
        width: 100%;
        height: calc(665vw / 750 * 100);
    }

    .contact_02-item {
        width: calc(330vw / 750 * 100);
        margin-bottom: calc(-5vw / 750 * 100);
    }

    .contact_02-list-notes {
        font-size: calc(14vw / 750 * 100);
        text-align: left;
        margin: calc(-8vw / 750 * 100) 0 0 calc(90vw / 750 * 100);
    }

    .contact_02-campaign {
        width: calc(690vw / 750 * 100);
        margin: calc(20vw / 750 * 100) auto 0;
        padding-bottom: calc(20vw / 750 * 100);
    }

    .contact_02-campaign-head {
        margin-bottom: calc(30vw / 750 * 100);
    }

    .contact_02-campaign-txt {
        font-size: calc(32vw / 750 * 100);
        margin: calc(20vw / 750 * 100) auto calc(15vw / 750 * 100);
    }

    .contact_02-campaign-btn-tel {
        width: calc(646vw / 750 * 100);
    }

    .contact_02-campaign-btn-list {
        width: calc(646vw / 750 * 100);
        padding-left: calc(15vw / 750 * 100);
        display: block;
    }

    .contact_02-campaign-btn-item {
        width: 100%;
    }
}

/* chk */
.chk {
    background-image: url(../img/pc/chk_bg.png);
    background-repeat: repeat;
    padding-top: 50px;
    margin-bottom: -330px;
}

.chk-head {
    width: 768px;
    margin: 0 auto;
}

.chk-list {
    width: 940px;
    margin: -45px auto 0;
}

.chk-box {
    margin-bottom: 100px;
    background-size: cover;
    background-repeat: no-repeat;
}

.chk-box_01 {
    background-image: url(../img/pc/hiromi-yane/chk_01_bg.png);
    height: 1055px;
}

.chk-box_02 {
    background-image: url(../img/pc/hiromi-yane/chk_02_bg.png);
    height: 1114px;
}

.chk-box_03 {
    background-image: url(../img/pc/hiromi-yane/chk_03_bg.png);
    height: 895px;
}

.chk-box_04 {
    background-image: url(../img/pc/hiromi-yane/chk_04_bg.png);
   height: 1055px;
    margin-bottom: 0;
}

.chk-box-inner {
    width: 780px;
    margin: 0 auto;
}

.chk-box-head {
    position: relative;
    font-size: 40px;
    font-weight: bold;
    text-align: center;
    color: #0b295e;
    padding-top: 100px;
}

.chk-box-head::after {
    content: "";
    display: block;
    width: 85px;
    height: 3px;
    margin: 0 auto;
    position: absolute;
    bottom: -25px;
    left: 0;
    right: 0;
}

.chk-box_01 .chk-box-head::after {
    background-color: #d94766;
}

.chk-box_02 .chk-box-head::after {
    background-color: #ef8120;
}

.chk-box_03 .chk-box-head::after {
    background-color: #3ab73d;
}

.chk-box_04 .chk-box-head::after {
    background-color: #72afe8;
}

.chk-box-list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: center;
    margin: 80px auto 60px;
}

.chk-box_01 .chk-box-list {
    margin: 80px auto 10px;
}

.chk-box_03 .chk-box-list {
    width: 450px;
    margin: 80px auto 10px;
}

.chk-box-item {
    width: 50%;
    font-size: 22px;
    display: flex;
    align-items: center;
    margin-bottom: 5px;
}

.chk-box_01 .chk-box-item {
    margin-bottom: 35px;
}

.chk-box_03 .chk-box-item {
    width: 100%;
    margin-bottom: 35px;
}

.chk-box-item::before {
    content: "";
    display: block;
    background-size: cover;
    background-repeat: no-repeat;
    width: 35px;
    margin-right: 15px;
    height: 35px;
}

.chk-box_01 .chk-box-item::before {
    background-image: url(../img/pc/chk_01_icon.png);
}

.chk-box_02 .chk-box-item::before {
    background-image: url(../img/pc/chk_02_icon.png);
}

.chk-box_03 .chk-box-item::before {
    background-image: url(../img/pc/chk_03_icon.png);
}

.chk-box_04 .chk-box-item::before {
    background-image: url(../img/pc/chk_04_icon.png);
}

.chk-box_01 .chk-box-item .accent {
    color: #d94766;
}

.chk-box_02 .chk-box-item .accent {
    color: #ef8120;
}

.chk-box_03 .chk-box-item .accent {
    color: #3ab73d;
}

.chk-box_04 .chk-box-item .accent {
    color: #72afe8;
}

.chk-box-btn {
    width: 596px;
    margin: 45px auto 0;
}

.chk-img {
    width: 1500px;
    margin: 0 auto;
}

@media (max-width: 1500px) {
    .chk {
        padding-top: calc(50vw / 1500 * 100);
        margin-bottom: calc(-330vw / 1500 * 100);
    }

    .chk-head {
        width: calc(768vw / 1500 * 100);
    }

    .chk-list {
        width: calc(940vw / 1500 * 100);
        margin: calc(-45vw / 1500 * 100) auto 0;
    }

    .chk-box {
        margin-bottom: calc(100vw / 1500 * 100);
    }

    .chk-box_01 {
        height: calc(1055vw / 1500 * 100);
    }

    .chk-box_02 {
        height: calc(945vw / 1500 * 100);
    }

    .chk-box_03 {
        height: calc(1055vw / 1500 * 100);
    }

    .chk-box_04 {
        height: calc(1090vw / 1500 * 100);
    }

    .chk-box-inner {
        width: calc(780vw / 1500 * 100);
    }

    .chk-box-head {
        font-size: calc(40vw / 1500 * 100);
        padding-top: calc(100vw / 1500 * 100);
    }

    .chk-box-head::after {
        width: calc(85vw / 1500 * 100);
        height: calc(3vw / 1500 * 100);
        bottom: calc(-25vw / 1500 * 100);
    }

    .chk-box-list {
        margin: calc(80vw / 1500 * 100) auto calc(60vw / 1500 * 100);
    }

    .chk-box_01 .chk-box-list {
        margin: calc(80vw / 1500 * 100) auto calc(10vw / 1500 * 100);
    }

    .chk-box_03 .chk-box-list {
        width: calc(450vw / 1500 * 100);
        margin: calc(80vw / 1500 * 100) auto calc(10vw / 1500 * 100);
    }

    .chk-box-item {
        font-size: calc(22vw / 1500 * 100);
        margin-bottom: calc(5vw / 1500 * 100);
    }

    .chk-box_01 .chk-box-item {
        margin-bottom: calc(35vw / 1500 * 100);
    }

    .chk-box_03 .chk-box-item {
        margin-bottom: calc(35vw / 1500 * 100);
    }

    .chk-box-item::before {
        width: calc(35vw / 1500 * 100);
        margin-right: calc(15vw / 1500 * 100);
        height: calc(35vw / 1500 * 100);
    }

    .chk-box-btn {
        width: calc(596vw / 1500 * 100);
        margin: calc(45vw / 1500 * 100) auto 0;
    }

    .chk-img {
        width: calc(1500vw / 1500 * 100);
    }
}

@media (max-width: 750px) {
    .chk {
        padding-top: 0;
        margin-bottom: calc(-105vw / 750 * 100);
    }

    .chk-head {
        width: 100%;
    }

    .chk-list {
        width: calc(690vw / 750 * 100);
        margin: 0 auto;
    }

    .chk-box {
        margin-bottom: calc(60vw / 750 * 100);
    }

    .chk-box_01 {
        background-image: url(../img/sp/hiromi-yane/chk_01_bg.png);
        height: calc(1251vw / 750 * 100);
    }

    .chk-box_02 {
        background-image: url(../img/sp/hiromi-yane/chk_02_bg.png);
        height: calc(1273vw / 750 * 100);
    }

    .chk-box_03 {
        background-image: url(../img/sp/hiromi-yane/chk_03_bg.png);
        height: calc(893vw / 750 * 100);
    }

    .chk-box_04 {
        background-image: url(../img/sp/hiromi-yane/chk_04_bg.png);
        height: calc(1263vw / 750 * 100);
    }

    .chk-box-inner {
        width: calc(590vw / 750 * 100);
    }

    .chk-box-head {
        font-size: calc(40vw / 750 * 100);
        padding-top: calc(100vw / 750 * 100);
    }

    .chk-box-head::after {
        width: calc(85vw / 750 * 100);
        height: calc(3vw / 750 * 100);
        bottom: calc(-25vw / 750 * 100);
    }

    .chk-box-list {
        display: block;
        width: calc(480vw / 750 * 100);
        margin: calc(80vw / 750 * 100) auto calc(60vw / 750 * 100);
    }

    .chk-box_01 .chk-box-list {
        margin: calc(80vw / 750 * 100) auto calc(60vw / 750 * 100);
    }

    .chk-box_03 .chk-box-list {
        width: calc(460vw / 750 * 100);
        margin: calc(80vw / 750 * 100) auto calc(70vw / 750 * 100);
    }

    .chk-box-item {
        width: 100%;
        font-size: calc(24vw / 750 * 100);
        margin-bottom: calc(35vw / 750 * 100);
    }

    .chk-box_01 .chk-box-item {
        margin-bottom: calc(35vw / 750 * 100);
    }

    .chk-box_03 .chk-box-item {
        width: 100%;
        margin-bottom: calc(35vw / 750 * 100);
    }

    .chk-box-item::before {
        width: calc(35vw / 750 * 100);
        height: calc(35vw / 750 * 100);
        margin-right: calc(34vw / 750 * 100);
    }

    .chk-box-btn {
        width: calc(596vw / 750 * 100);
        margin: calc(25vw / 750 * 100) auto 0;
    }

    .chk-img {
        width: 100%;
    }
}

/* danger */
.danger {
    background-image: url(../img/pc/danger_bg.png);
    background-size: cover;
    background-repeat: no-repeat;
    width: 100%;
    height: 1013px;
    margin: 0 auto;
    padding-top: 97px;
}

.danger-head {
   width: 1000px;
    margin: 0 auto;
}

.danger-img {
    width: 998px;
    margin: 60px auto 50px;
}

.danger-txt {
    font-size: 16px;
    text-align: center;
    color: #2f2f2f;
    line-height: 2.2;
}

.danger-txt .accent {
    font-weight: bold;
}

@media (max-width: 1500px) {
    .danger {
        height: calc(1013vw / 1500 * 100);
        padding-top: calc(97vw / 1500 * 100);
    }

    .danger-head {
        width: calc(617vw / 1500 * 100);
    }

    .danger-img {
        width: calc(998vw / 1500 * 100);
        margin: calc(60vw / 1500 * 100) auto calc(50vw / 1500 * 100);
    }

    .danger-txt {
        font-size: calc(16vw / 1500 * 100);
    }
}

@media (max-width: 750px) {
    .danger {
        background-image: url(../img/sp/danger_bg.png);
        height: calc(1260vw / 750 * 100);
        padding-top: calc(91vw / 750 * 100);
    }

    .danger-head {
        width: calc(700vw / 750 * 100);
    }

    .danger-img {
        width: calc(690vw / 750 * 100);
        margin: calc(65vw / 750 * 100) auto calc(50vw / 750 * 100);
    }

    .danger-txt {
        font-size: calc(24vw / 750 * 100);
        width: calc(430vw / 750 * 100);
        margin: calc(30vw / 750 * 100) calc(30vw / 750 * 100) 0;
        line-height: 2.1;
        text-align: left;
    }
}

/* faq */
.faq {
    overflow: hidden;
}

.faq-bg {
    position: relative;
    padding-top: 100px;
    height: 2689px;
    box-sizing: border-box;
    overflow: hidden;
}

.faq .scroll-skew {
    top: 0;
    left: -86.8%;
    background-color: #d0e7f9;
}

.faq .scroll-skew_02 {
    top: 47%;
    left: -24.8%;
    background-color: #d0e7f9;
}

.faq-list {
    width: 726px;
    margin: 100px auto 0px;
}

.faq-box {
    margin-bottom: 170px;
}

.faq-box:last-child {
    margin-bottom: 0;
}

.faq-box-img {
    width: 590px;
    margin: 30px auto;
}

.faq-box-txt {
    width: 590px;
    margin: 0 auto;
    font-size: 16px;
    line-height: 2;
}

.faq-qa-list {
    width: 690px;
    margin: 0 auto;
    border-bottom: 2px solid #ccc;
}

.faq-qa-box {
    border-top: 2px solid #ccc;
}

.faq-qa-box-q {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 26px;
    font-weight: bold;
    color: #1861c0;
    padding: 25px;
}

.faq-qa-box-a {
    display: flex;
    align-items: center;
    font-size: 16px;
    padding: 25px;
    background-color: #e3f0fa;
}

.faq-qa-box-q::before,
.faq-qa-box-a::before {
    content: "";
    display: block;
    background-size: contain;
    background-repeat: no-repeat;
    width: 61px;
    height: 61px;
    flex: 0 0 auto;
}

.faq-qa-box-q::before {
    background-image: url(../img/pc/faq_icon_q.png);
}

.faq-qa-box-a::before {
    background-image: url(../img/pc/faq_icon_a.png);
}

.faq-qa-box-q-txt {
    width: 515px;
}

.faq-qa-box-a-txt {
    padding-left: 25px;
}

@media (max-width: 1500px) {
    .faq-bg {
        padding-top: calc(100vw / 1500 * 100);
        height: calc(2689vw / 1500 * 100);
    }

    .faq-list {
        width: calc(726vw / 1500 * 100);
        margin: calc(100vw / 1500 * 100) auto calc(0vw / 1500 * 100);
    }

    .faq-box {
        margin-bottom: calc(170vw / 1500 * 100);
    }

    .faq-box-img {
        width: calc(590vw / 1500 * 100);
        margin: calc(30vw / 1500 * 100) auto;
    }

    .faq-box-txt {
        width: calc(590vw / 1500 * 100);
        font-size: calc(16vw / 1500 * 100);
    }

    .faq-qa-list {
        width: calc(690vw / 1500 * 100);
        border-bottom: calc(2vw / 1500 * 100) solid #ccc;
    }

    .faq-qa-box {
        border-top: calc(2vw / 1500 * 100) solid #ccc;
    }

    .faq-qa-box-q {
        font-size: calc(26vw / 1500 * 100);
        padding: calc(25vw / 1500 * 100);
    }

    .faq-qa-box-a {
        font-size: calc(16vw / 1500 * 100);
        padding: calc(25vw / 1500 * 100);
    }

    .faq-qa-box-q::before,
    .faq-qa-box-a::before {
        width: calc(61vw / 1500 * 100);
        height: calc(61vw / 1500 * 100);
    }

    .faq-qa-box-q-txt {
        width: calc(515vw / 1500 * 100);
    }

    .faq-qa-box-a-txt {
        padding-left: calc(25vw / 1500 * 100);
    }
}

@media (max-width: 750px) {
    .faq-bg {
        padding-top: calc(100vw / 750 * 100);
        height: calc(2753vw / 750 * 100);
    }

    .faq .scroll-skew {
        top: -10%;
        left: -36.8%;
    }

    .faq .scroll-skew_02 {
        top: 41.5%;
        left: -36.8%;
        width: 200vw;
        height: calc(650vw / 750 * 100);
    }

    .faq-list {
        width: 100%;
        margin: calc(100vw / 750 * 100) auto calc(0vw / 750 * 100);
    }

    .faq-box {
        margin-bottom: calc(75vw / 750 * 100);
    }

    .faq-box:last-child {
        margin-bottom: 0;
    }

    .faq-box-img {
        width: calc(590vw / 750 * 100);
        margin: calc(20vw / 750 * 100) auto;
    }

    .faq-box-txt {
        width: calc(590vw / 750 * 100);
        font-size: calc(24vw / 750 * 100);
        line-height: 2.2;
    }

    .faq-qa-list {
        width: calc(690vw / 750 * 100);
        border-bottom: calc(2vw / 750 * 100) solid #ccc;
    }

    .faq-qa-box {
        border-top: calc(2vw / 750 * 100) solid #ccc;
    }

    .faq-qa-box-q {
        font-size: calc(25vw / 750 * 100);
        padding: calc(25vw / 750 * 100);
    }

    .faq-qa-box-a {
        font-size: calc(24vw / 750 * 100);
        padding: calc(25vw / 750 * 100);
    }

    .faq-qa-box-q::before,
    .faq-qa-box-a::before {
        width: calc(61vw / 750 * 100);
        height: calc(61vw / 750 * 100);
    }

    .faq-qa-box-q-txt {
        width: calc(515vw / 750 * 100);
    }

    .faq-qa-box-a-txt {
        padding-left: calc(25vw / 750 * 100);
    }
}

/* area */
.area {
    padding: 140px 0 100px;
}

.area-img {
    width: 1500px;
    margin: 65px auto 0;
}

.area-inner {
    width: 690px;
    margin: 0 auto;
}

.area-txt {
    font-size: 15px;
    line-height: 2.1;
}

.area-acc-list {
    margin-top: 55px;
    border-bottom: 2px solid #ccc;
}

.area-acc-box {
    border-top: 2px solid #ccc;
}

.area-acc-box-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 26px;
    font-weight: bold;
    color: #1861c0;
    padding: 35px;
}

.area-acc-box-details {
    background-color: #e3f0fa;
    padding: 35px;
}

.area-acc-box-details-list {
    display: flex;
    flex-wrap: wrap;
    font-size: 14px;
}

.area-acc-box-details-item {
    margin-right: 1em;
    line-height: 2;
}

@media (max-width: 1500px) {
    .area {
        padding: calc(140vw / 1500 * 100) 0 calc(100vw / 1500 * 100);
    }

    .area-img {
        width: calc(1500vw / 1500 * 100);
        margin: calc(65vw / 1500 * 100) auto 0;
    }

    .area-inner {
        width: calc(690vw / 1500 * 100);
    }

    .area-txt {
        font-size: calc(15vw / 1500 * 100);
    }

    .area-acc-list {
        margin-top: calc(55vw / 1500 * 100);
        border-bottom: calc(2vw / 1500 * 100) solid #ccc;
    }

    .area-acc-box {
        border-top: calc(2vw / 1500 * 100) solid #ccc;
    }

    .area-acc-box-head {
        font-size: calc(26vw / 1500 * 100);
        padding: calc(35vw / 1500 * 100);
    }

    .area-acc-box-details {
        padding: calc(35vw / 1500 * 100);
    }

    .area-acc-box-details-list {
        font-size: calc(14vw / 1500 * 100);
    }
}

@media (max-width: 750px) {
    .area {
        padding: calc(140vw / 750 * 100) 0 calc(100vw / 750 * 100);
    }

    .area-img {
        width: 100%;
        margin: calc(70vw / 750 * 100) auto 0;
    }

    .area-inner {
        width: calc(690vw / 750 * 100);
    }

    .area-txt {
        font-size: calc(21vw / 750 * 100);
    }

    .area-acc-list {
        margin-top: calc(55vw / 750 * 100);
        border-bottom: calc(2vw / 750 * 100) solid #ccc;
    }

    .area-acc-box {
        border-top: calc(2vw / 750 * 100) solid #ccc;
    }

    .area-acc-box-head {
        font-size: calc(26vw / 750 * 100);
        padding: calc(35vw / 750 * 100);
    }

    .area-acc-box-details {
        padding: calc(35vw / 750 * 100);
    }

    .area-acc-box-details-list {
        font-size: calc(25vw / 750 * 100);
    }
}

/* price */
.price {
    background-color: #fff;
    padding-top: 50px;
}

.price-img {
    width: 1500px;
    margin: 30px auto 15px;
}

.price-inner {
    width: 1090px;
    margin: 0 auto;
}

.price-sub-head {
    font-size: 54px;
    font-weight: bold;
    text-align: center;
    color: #0e3271;
    margin-bottom: 30px;
}

.price-sub-head .small {
    font-size: 32px;
}

.price-list {
    display: flex;
    justify-content: space-between;
}

.price-box_01 {
    width: 363px;
}

.price-box_02 {
    width: 283px;
    margin-bottom: 0;
}

.price-list-notes {
    font-size: 16px;
    text-align: right;
    color: #747c7f;
    margin-bottom: 110px;
}

.price-acc-list {
    width: 1000px;
    margin: 0 auto 45px;
}

.price-acc-box {
    background-color: #d2e9f7;
    border-top: 3px solid #1861c0;
}

.price-acc-box-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 40px 55px;
    font-size: 26px;
    font-weight: bold;
    color: #1861c0;
}

.price-acc-box-details {
    padding-bottom: 20px;
}

.price-acc-box-details-list_02,
.price-acc-box-details-list_03 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 920px;
    margin: 0 auto;
}

.price-acc-box-details-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 920px;
    margin: 0 auto 35px;
    background-color: #fff;
}

.price-acc-box-details-item_02 {
    flex-wrap: wrap;
    width: 295px;
    margin: 0 auto;
}

.price-acc-box-details-item_03 {
    flex-wrap: wrap;
    width: 217px;
    margin: 0 auto;
}

.price-acc-box-details-item-img {
    width: 295px;
    flex: 0 0 auto;
}

.price-acc-box-details-item-img_03 {
    width: 217px;
}

.price-acc-box-details-item-txt {
    width: 100%;
    padding: 0 35px;
    font-size: 15px;
    color: #0b295e;
    line-height: 2.5;
}

.price-notes {
    width: 100%;
    background-color: #ebebeb;
    padding: 50px 0;
    margin-top: 65px;
}

.price-notes-list {
    width: 730px;
    margin: 0 auto;
}

.price-notes-item {
    margin-bottom: 25px;
    font-size: 15px;
    color: #747c7f;
}

.price-notes-item:last-child {
    margin-bottom: 0;
}

@media (max-width: 1500px) {
    .price {
        padding-top: calc(50vw / 1500 * 100);
    }

    .price-img {
        width: calc(1500vw / 1500 * 100);
        margin: calc(30vw / 1500 * 100) auto calc(15vw / 1500 * 100);
    }

    .price-inner {
        width: calc(1090vw / 1500 * 100);
    }

    .price-sub-head {
        font-size: calc(54vw / 1500 * 100);
        margin-bottom: calc(30vw / 1500 * 100);
    }

    .price-sub-head .small {
        font-size: calc(32vw / 1500 * 100);
    }

    .price-box_01 {
        width: calc(363vw / 1500 * 100);
    }

    .price-box_02 {
        width: calc(283vw / 1500 * 100);
    }

    .price-list-notes {
        font-size: calc(16vw / 1500 * 100);
        margin-bottom: calc(110vw / 1500 * 100);
    }

    .price-acc-list {
        width: calc(1000vw / 1500 * 100);
        margin: 0 auto calc(45vw / 1500 * 100);
    }

    .price-acc-box {
        border-top: calc(3vw / 1500 * 100) solid #1861c0;
    }

    .price-acc-box-head {
        padding: calc(40vw / 1500 * 100) calc(55vw / 1500 * 100);
        font-size: calc(26vw / 1500 * 100);
    }

    .price-acc-box-details {
        padding-bottom: calc(20vw / 1500 * 100);
    }

    .price-acc-box-details-list_02,
    .price-acc-box-details-list_03 {
        width: calc(920vw / 1500 * 100);
    }

    .price-acc-box-details-item {
        width: calc(920vw / 1500 * 100);
        margin: 0 auto calc(35vw / 1500 * 100);
    }

    .price-acc-box-details-item_02 {
        width: calc(295vw / 1500 * 100);
    }

    .price-acc-box-details-item_03 {
        width: calc(217vw / 1500 * 100);
    }

    .price-acc-box-details-item-img {
        width: calc(295vw / 1500 * 100);
    }

    .price-acc-box-details-item-img_03 {
        width: calc(217vw / 1500 * 100);
    }

    .price-acc-box-details-item-txt {
        padding: 0 calc(35vw / 1500 * 100);
        font-size: calc(15vw / 1500 * 100);
    }

    .price-notes {
        padding: calc(50vw / 1500 * 100) 0;
        margin-top: calc(65vw / 1500 * 100);
    }

    .price-notes-list {
        width: calc(730vw / 1500 * 100);
    }

    .price-notes-item {
        margin-bottom: calc(25vw / 1500 * 100);
        font-size: calc(15vw / 1500 * 100);
    }
}

@media (max-width: 750px) {
    .price {
        padding-top: calc(110vw / 750 * 100);
    }

    .price-img {
        width: 100%;
        margin: calc(40vw / 750 * 100) auto calc(43vw / 750 * 100);
    }

    .price-inner {
        width: calc(738vw / 750 * 100);
    }

    .price-sub-head {
        font-size: calc(54vw / 750 * 100);
        margin-bottom: calc(25vw / 750 * 100);
    }

    .price-sub-head .small {
        font-size: calc(30vw / 750 * 100);
    }

    .price-list {
        display: block;
    }

    .price-list_02 {
        display: flex;
        flex-wrap: wrap;
    }

    .price-box_01 {
        width: 100%;
    }

    .price-box_02 {
        width: 50%;
    }

    .price-list-notes {
        font-size: calc(16vw / 750 * 100);
        margin-bottom: calc(75vw / 750 * 100);
    }

    .price-acc-list {
        width: calc(690vw / 750 * 100);
        margin: 0 auto calc(45vw / 750 * 100);
    }

    .price-acc-box {
        border-top: calc(3vw / 750 * 100) solid #1861c0;
    }

    .price-acc-box-head {
        padding: calc(40vw / 750 * 100) calc(55vw / 750 * 100);
        font-size: calc(26vw / 750 * 100);
    }

    .price-acc-box-details {
        padding-bottom: calc(20vw / 750 * 100);
    }

    .price-acc-box-details-list_02,
    .price-acc-box-details-list_03 {
        display: block;
        width: calc(690vw / 750 * 100);
    }

    .price-acc-box-details-item {
        display: block;
        width: calc(635vw / 750 * 100);
        margin: 0 auto calc(35vw / 750 * 100);
    }

    .price-acc-box-details-item_02 {
        width: calc(635vw / 750 * 100);
    }

    .price-acc-box-details-item_03 {
        width: calc(635vw / 750 * 100);
    }

    .price-acc-box-details-item-img {
        width: 100%;
    }

    .price-acc-box-details-item-img_03 {
        width: 100%;
    }

    .price-acc-box-details-item-txt {
        width: 100%;
        padding: calc(30vw / 750 * 100) calc(35vw / 750 * 100);
        font-size: calc(25vw / 750 * 100);
        line-height: 1.7;
    }

    .price-notes {
        width: 100%;
        padding: calc(35vw / 750 * 100) 0;
        margin-top: calc(45vw / 750 * 100);
    }

    .price-notes-list {
        width: calc(650vw / 750 * 100);
    }

    .price-notes-item {
        margin-bottom: 0;
        font-size: calc(24vw / 750 * 100);
        line-height: 1.9;
    }
}

/* quote */
.quote {
    height: 1794px;
    overflow: hidden;
}

.quote .scroll-skew {
    top: 12.5%;
    left: -22.8%;
    background-color: #1861c0;
    height: 420px;
}

.quote .scroll-skew_02 {
    top: 98.9%;
    left: -24.8%;
    background-color: #1861c0;
}

.quote-inner {
    width: 1000px;
    margin: 0 auto;
}

.quote-head {
    font-size: 52px;
    font-weight: bold;
    color: #0e3271;
    line-height: 1.4;
    padding-top: 25px;
}

.quote-head .small {
    font-size: 32px;
    font-weight: normal;
}

.quote-list {
    margin-top: 80px;
}

.quote-box {
    position: relative;
    margin-bottom: 130px;
    box-shadow: 0px 8px 16px -2px rgba(48, 127, 255, 0.1), 0px 0px 5px 5px rgba(48, 127, 255, 0.1);
    padding: 60px 40px;
    background-color: #fff;
}

.quote-box-head {
    position: absolute;
    top: -6.3%;
    left: 3.6%;
    width: 223px;
}

.quote-box-inner {
    display: flex;
    justify-content: space-between;
    width: 920px;
    margin: 0 auto;
}

.quote-box-cnt {
    width: 440px;
    color: #0b295e;
    font-size: 16px;
    line-height: 2;
}

.quote-box-cnt-head {
    font-size: 25px;
    font-weight: bold;
    margin: 20px 0 0px;
}

.quote-box-cnt-table {
    border-bottom: 1px solid #acbbc0;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    font-size: 15px;
    line-height: 2;
}

.quote-box-cnt-img+.quote-box-cnt-table {
    border-top: 1px solid #acbbc0;
}

.quote-box-cnt-table-left {
    width: 125px;
    background-color: #e1effa;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 25px 0;
}

.quote-box-cnt-table-right {
    width: 320px;
    padding: 25px 0 25px 30px;
}

@media (max-width: 1500px) {
    .quote {
        height: calc(1794vw / 1500 * 100);
    }

    .quote .scroll-skew {
        height: calc(420vw / 1500 * 100);
    }

    .quote-inner {
        width: calc(1000vw / 1500 * 100);
    }

    .quote-head {
        font-size: calc(52vw / 1500 * 100);
        padding-top: calc(25vw / 1500 * 100);
    }

    .quote-head .small {
        font-size: calc(32vw / 1500 * 100);
    }

    .quote-list {
        margin-top: calc(80vw / 1500 * 100);
    }

    .quote-box {
        margin-bottom: calc(130vw / 1500 * 100);
        padding: calc(60vw / 1500 * 100) calc(40vw / 1500 * 100);
    }

    .quote-box-head {
        width: calc(223vw / 1500 * 100);
    }

    .quote-box-inner {
        width: calc(920vw / 1500 * 100);
    }

    .quote-box-cnt {
        width: calc(440vw / 1500 * 100);
        font-size: calc(16vw / 1500 * 100);
    }

    .quote-box-cnt-head {
        font-size: calc(25vw / 1500 * 100);
        margin: calc(20vw / 1500 * 100) 0 calc(0vw / 1500 * 100);
    }

    .quote-box-cnt-table {
        border-bottom: calc(1vw / 1500 * 100) solid #acbbc0;
        font-size: calc(15vw / 1500 * 100);
    }

    .quote-box-cnt-img+.quote-box-cnt-table {
        border-top: calc(1vw / 1500 * 100) solid #acbbc0;
    }

    .quote-box-cnt-table-left {
        width: calc(125vw / 1500 * 100);
        padding: calc(25vw / 1500 * 100) 0;
    }

    .quote-box-cnt-table-right {
        width: calc(320vw / 1500 * 100);
        padding: calc(25vw / 1500 * 100) 0 calc(25vw / 1500 * 100) calc(30vw / 1500 * 100);
    }
}

@media (max-width: 750px) {
    .quote {
        height: calc(3210vw / 750 * 100);
    }

    .quote .scroll-skew {
        top: 11.4%;
        left: -41.8%;
        height: calc(803vw / 750 * 100);
        width: 200vw;
    }

    .quote .scroll-skew_02 {
        top: 77%;
        left: -42.8%;
        height: calc(803vw / 750 * 100);
        width: 200vw;
    }

    .quote-inner {
        width: calc(650vw / 750 * 100);
    }

    .quote-head {
        font-size: calc(52vw / 750 * 100);
        padding-top: calc(35vw / 750 * 100);
    }

    .quote-head .small {
        font-size: calc(32vw / 750 * 100);
    }

    .quote-list {
        margin-top: calc(93vw / 750 * 100);
    }

    .quote-box {
        margin-bottom: calc(105vw / 750 * 100);
        padding: calc(70vw / 750 * 100) calc(40vw / 750 * 100);
    }

    .quote-box-head {
        top: -6.3%;
        left: 3.6%;
        width: calc(300vw / 750 * 100);
    }

    .quote-box-head02 {
        top: -5.3%;
        width: calc(440vw / 750 * 100);
    }

    .quote-box-inner {
        display: block;
        width: calc(505vw / 750 * 100);
    }

    .quote-box-cnt {
        width: 100%;
        font-size: calc(21vw / 750 * 100);
    }

    .quote-box-cnt-txt-area {
        display: flex;
        align-items: center;
        margin: calc(18vw / 750 * 100) auto;
    }

    .quote-box-cnt-head {
        font-size: calc(25vw / 750 * 100);
        margin: 0;
        width: calc(190vw / 750 * 100);
        flex: 0 0 auto;
    }

    .quote-box-cnt-table {
        border-bottom: calc(1vw / 750 * 100) solid #acbbc0;
        font-size: calc(15vw / 750 * 100);
    }

    .quote-box-cnt-img+.quote-box-cnt-table {
        border-top: calc(1vw / 750 * 100) solid #acbbc0;
    }

    .quote-box-cnt-table-left {
        width: calc(155vw / 750 * 100);
        padding: calc(25vw / 750 * 100) 0;
        font-size: calc(24vw / 750 * 100);
    }

    .quote-box-cnt-table-right {
        width: calc(350vw / 750 * 100);
        padding: calc(25vw / 750 * 100) 0 calc(25vw / 750 * 100) calc(30vw / 750 * 100);
        font-size: calc(20vw / 750 * 100);
        line-height: 2.1;
    }
}

/* case */
.case {
    background-color: #f0f4f7;
    height: 1749px;
    margin-bottom: -330px;
    overflow: hidden;
}

.case-top {
    background-image: url(../img/pc/case_img_02.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top center;
    width: 100%;
    height: 420px;
}

.case-bg {
    width: 1000px;
    height: 1220px;
    margin: 0 auto;
    background-color: #fff;
    transform: translateY(-100px);
    padding-top: 35px;
}

.case-img {
    width: 721px;
    margin: 36px auto;
}

.case-slider-area {
    position: absolute;
    top: 42.3%;
    left: 0;
    right: 0;
    width: 1500px;
    margin: 0 auto;
    overflow: hidden;
}

.case-slider-item {
    width: 500px;
    padding: 15px;
    box-sizing: border-box;
}

.case-slider-item img {
    box-shadow: 0px 8px 16px -2px rgba(10, 10, 10, 0.1), 0px 0px 15px 10px rgba(10, 10, 10, 0.02);
}

.prev-arrow,
.next-arrow {
    position: absolute;
    top: 50%;
    width: 25px;
    cursor: pointer;
    z-index: 1;
}

.prev-arrow {
    left: 32.5%;
}

.next-arrow {
    right: 32.5%;
}

.slick-dotted.slick-slider {
    margin-bottom: 30px;
    padding-bottom: 30px;
}

.slick-dots li button:before {
    font-size: 30px;
    width: 20px;
    height: 20px;
}

.slick-dots li.slick-active button:before {
    color: #0b295e;
}

@media (max-width: 1500px) {
    .case {
        height: calc(1749vw / 1500 * 100);
        margin-bottom: calc(-330vw / 1500 * 100);
    }

    .case-top {
        height: calc(420vw / 1500 * 100);
    }

    .case-bg {
        width: calc(1000vw / 1500 * 100);
        height: calc(1220vw / 1500 * 100);
        transform: translateY(calc(-100vw / 1500 * 100));
        padding-top: calc(35vw / 1500 * 100);
    }

    .case-img {
        width: calc(721vw / 1500 * 100);
        margin: calc(36vw / 1500 * 100) auto;
    }

    .case-slider-area {
        left: 0;
        right: 0;
        width: calc(1500vw / 1500 * 100);
    }

    .case-slider-item {
        width: calc(500vw / 1500 * 100);
        padding: calc(15vw / 1500 * 100);
    }

    .prev-arrow,
    .next-arrow {
        width: calc(25vw / 1500 * 100);
    }

    .slick-dotted.slick-slider {
        margin-bottom: calc(30vw / 1500 * 100);
        padding-bottom: calc(30vw / 1500 * 100);
    }

    .slick-dots li button:before {
        font-size: calc(30vw / 1500 * 100);
        width: calc(20vw / 1500 * 100);
        height: calc(20vw / 1500 * 100);
    }
}

@media (max-width: 750px) {
    .case {
        height: calc(1567vw / 750 * 100);
        margin-bottom: calc(-160vw / 750 * 100);
        background-color: #fff;
    }

    .case-top {
        background-image: url(../img/sp/case_img_02.png);
        height: calc(263vw / 750 * 100);
    }

    .case-bg {
        width: 100%;
        height: auto;
        transform: none;
        padding-top: calc(13vw / 750 * 100);
    }

    .case-img {
        width: calc(675vw / 750 * 100);
        margin: calc(24vw / 750 * 100) auto;
    }

    .case-slider-area {
        top: 38.3%;
        width: 100%;
    }

    .case-slider-item {
        width: calc(540vw / 750 * 100);
        padding: calc(15vw / 750 * 100);
        margin: 0 calc(15vw / 750 * 100);
    }

    .case-slider-item img {
        box-shadow: calc(0vw / 750 * 100) calc(8vw / 750 * 100) calc(16vw / 750 * 100) calc(-2vw / 750 * 100) rgba(10, 10, 10, 0.1), calc(0vw / 750 * 100) calc(0vw / 750 * 100) calc(15vw / 750 * 100) calc(10vw / 750 * 100) rgba(10, 10, 10, 0.02);
    }

    .prev-arrow,
    .next-arrow {
        top: 50%;
        width: calc(25vw / 750 * 100);
    }

    .prev-arrow {
        left: 9.9%;
    }

    .next-arrow {
        right: 9.9%;
    }

    .slick-dotted.slick-slider {
        margin-bottom: calc(30vw / 750 * 100);
        padding-bottom: calc(30vw / 750 * 100);
    }

    .slick-dots li {
        width: calc(20vw / 750 * 100);
        height: calc(20vw / 750 * 100);
        margin: 0 calc(5vw / 750 * 100);
    }

    .slick-dots li button {
        width: calc(20vw / 750 * 100);
        height: calc(20vw / 750 * 100);
        padding: calc(5vw / 750 * 100);
    }

    .slick-dots li button:before {
        font-size: calc(30vw / 750 * 100);
        width: calc(20vw / 750 * 100);
        height: calc(20vw / 750 * 100);
    }
}

/* flow */
.flow {
    padding: 75px 0;
}

.flow-list-area {
    position: relative;
    width: 1050px;
    margin: 108px auto 0;
    z-index: 0;
}

.flow-list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.flow-box {
    width: 316px;
    margin: 0 17px 105px;
    color: #0b295e;
    line-height: 2.4;
}

.flow-box:nth-child(4),
.flow-box:nth-child(5) {
    margin: 0 30px 0;
}

.flow-box-head {
    font-size: 26px;
    font-weight: bold;
    margin: 10px 0;
    line-height: 1.8;
}

.flow-box-txt {
    font-size: 15px;
}

.flow-list-bg {
    position: absolute;
    top: -4%;
    left: -2%;
    width: 1074px;
    z-index: -1;
}

@media (max-width: 1500px) {
    .flow {
        padding: calc(75vw / 1500 * 100) 0;
    }

    .flow-list-area {
        width: calc(1050vw / 1500 * 100);
        margin: calc(108vw / 1500 * 100) auto 0;
    }

    .flow-box {
        width: calc(316vw / 1500 * 100);
        margin: 0 calc(17vw / 1500 * 100) calc(105vw / 1500 * 100);
    }

    .flow-box:nth-child(4),
    .flow-box:nth-child(5) {
        margin: 0 calc(30vw / 1500 * 100) 0;
    }

    .flow-box-head {
        font-size: calc(26vw / 1500 * 100);
        margin: calc(10vw / 1500 * 100) 0;
    }

    .flow-box-txt {
        font-size: calc(15vw / 1500 * 100);
    }

    .flow-list-bg {
        width: calc(1074vw / 1500 * 100);
    }
}

@media (max-width: 750px) {
    .flow {
        padding: calc(65vw / 750 * 100) 0;
    }

    .flow-list-area {
        width: calc(600vw / 750 * 100);
        margin: calc(85vw / 750 * 100) auto 0;
    }

    .flow-list {
        display: block;
    }

    .flow-box {
        width: calc(600vw / 750 * 100);
        margin: 0 calc(5vw / 750 * 100) calc(70vw / 750 * 100);
    }

    .flow-box:nth-child(4) {
        margin: 0 calc(5vw / 750 * 100) calc(75vw / 750 * 100);
    }

    .flow-box:nth-child(5) {
        margin: 0 calc(5vw / 750 * 100);
    }

    .flow-box-head {
        font-size: calc(26vw / 750 * 100);
        margin: calc(20vw / 750 * 100) 0 calc(9vw / 750 * 100);
    }

    .flow-box-txt {
        font-size: calc(25vw / 750 * 100);
        line-height: 1.8;
    }

    .flow-list-bg {
        top: 0.1%;
        left: -9%;
        width: calc(19vw / 750 * 100);
    }
}

/* entrust */
.entrust-head {
    position: relative;
    background-image: url(../img/pc/entrust_head_bg.png);
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
    width: 100%;
    height: 462px;
}

.entrust-head-img {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 778px;
    margin: 0 auto;
}

.entrust-cnt {
    position: relative;
    background-image: url(../img/pc/entrust_cnt_bg.png);
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
    width: 100%;
    height: 1534px;
}

.entrust-cnt-img {
    width: 1070px;
    margin: 0 auto;
}

.entrust-cnt-bottom {
    position: absolute;
    bottom: 3.5%;
    left: 0;
    right: 0;
    width: 100%;
    height: 236px;
    background-image: url(../img/pc/entrust_bottom_bg.jpg);
    background-size: contain;
    background-position: top center;
    background-repeat: no-repeat;
    background-color: #0b295e;
    z-index: 0;
}

.entrust-cnt-bottom::after {
    content: "";
    display: block;
    width: 100%;
    height: 54px;
    background-color: #ebf0f6;
    position: absolute;
    bottom: -54px;
    z-index: -1;
}

.entrust-cnt-bottom-img {
    width: 692px;
    margin: 0 auto;
    transform: translateY(-55px);
}

@media (max-width: 1500px) {
    .entrust-head {
        height: calc(462vw / 1500 * 100);
    }

    .entrust-head-img {
        width: calc(778vw / 1500 * 100);
    }

    .entrust-cnt {
        height: calc(1534vw / 1500 * 100);
    }

    .entrust-cnt-img {
        width: calc(1070vw / 1500 * 100);
    }

    .entrust-cnt-bottom {
        height: calc(236vw / 1500 * 100);
    }

    .entrust-cnt-bottom::after {
        height: calc(54vw / 1500 * 100);
        bottom: calc(-54vw / 1500 * 100);
    }

    .entrust-cnt-bottom-img {
        width: calc(692vw / 1500 * 100);
        transform: translateY(calc(-55vw / 1500 * 100));
    }
}

@media (max-width: 750px) {
    .entrust-head {
        background: none;
        height: auto;
    }

    .entrust-head-img {
        position: static;
        width: 100%;
    }

    .entrust-cnt {
        background: none;
        height: auto;
    }

    .entrust-cnt-img {
        width: 100%;
    }

    .entrust-cnt-bottom {
        bottom: 7.1%;
        height: calc(236vw / 750 * 100);
        background-image: url(../img/pc/entrust_bottom_bg.jpg);
    }

    .entrust-cnt-bottom::after {
        height: calc(54vw / 750 * 100);
        bottom: calc(-54vw / 750 * 100);
    }

    .slick-dots {
        bottom: -3%;
    }

    .entrust-cnt-bottom-img {
        width: calc(592vw / 750 * 100);
        transform: translateY(calc(-55vw / 750 * 100));
    }
}

/* column */
.column {
    padding: 120px 0;
}

.column-list {
    width: 1000px;
    margin: 50px auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.column-box {
    width: 300px;
    margin-bottom: 110px;
}

.column-box-img {
    width: 100%;
    height: 220px;
    background-size: contain;
    background-repeat: no-repeat;
}

.column-box-head {
    font-size: 20px;
    font-weight: bold;
    color: #0b295e;
    margin-bottom: 15px;
}

.column-box-txt {
    font-size: 16px;
}

.column-btn {
    width: 576px;
    margin: -75px auto 0;
}

@media (max-width: 1500px) {
    .column {
        padding: calc(120vw / 1500 * 100) 0;
    }

    .column-list {
        width: calc(1000vw / 1500 * 100);
        margin: calc(50vw / 1500 * 100) auto;
    }

    .column-box {
        width: calc(300vw / 1500 * 100);
        margin-bottom: calc(110vw / 1500 * 100);
    }

    .column-box-img {
        width: 100%;
        height: calc(220vw / 1500 * 100);
    }

    .column-box-head {
        font-size: calc(20vw / 1500 * 100);
        margin-bottom: calc(15vw / 1500 * 100);
    }

    .column-box-txt {
        font-size: calc(16vw / 1500 * 100);
    }

    .column-btn {
        width: calc(576vw / 1500 * 100);
        margin: calc(-75vw / 1500 * 100) auto 0;
    }
}

@media (max-width: 750px) {
    .column {
        padding: calc(120vw / 750 * 100) 0 calc(50vw / 750 * 100);
    }

    .column-list {
        width: calc(640vw / 750 * 100);
        margin: calc(50vw / 750 * 100) auto;
    }

    .column-box {
        width: calc(300vw / 750 * 100);
        margin-bottom: calc(82vw / 750 * 100);
    }

    .column-box-img {
        width: 100%;
        height: calc(220vw / 750 * 100);
    }

    .column-box-head {
        font-size: calc(24vw / 750 * 100);
        margin-bottom: calc(15vw / 750 * 100);
        line-height: 2;
    }

    .column-box-txt {
        font-size: calc(18vw / 750 * 100);
    }

    .column-btn {
        width: calc(576vw / 750 * 100);
        margin: calc(-65vw / 750 * 100) auto 0;
    }
}

/* footer */
.footer {
    position: relative;
    width: 100%;
    margin-top: 50px;
    background-image: url(../img/pc/footer_bg.png.png);
    background-position: bottom right;
    background-repeat: no-repeat;
    background-color: #0b295e;
    color: #fff;
    font-size: 16px;
}

.footer-top {
    width: 1000px;
    margin: 0 auto;
    transform: translateY(-85px);
}

.footer-head {
    width: 430px;
    margin: 0 auto;
    color: #fff;
    background-color: #0b295e;
    transform: translateY(-135px);
}

.footer-company-details {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 710px;
    margin: -40px auto 55px;
}

.footer-company-details-img {
    width: 190px;
}

.footer-company-details-list {
    width: 480px;
    border-top: 1px solid #97a8b3;
}

.footer-company-details-item {
    display: flex;
    border-bottom: 1px solid #97a8b3;
    padding: 20px;
}

.footer-company-details-item-left {
    font-weight: bold;
    width: 190px;
    flex: 0 0 auto;
}

.footer-area-list {
    width: 1000px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.footer-area-box {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    width: 330px;
    margin-bottom: 70px;
    padding: 0 50px;
    box-sizing: border-box;
    line-height: 1.8;
    border-right: 1px solid #97a8b3;
}

.footer-area-box:nth-child(3n) {
    border: none;
}

.footer-area-box-details-head {
    font-weight: bold;
    margin-bottom: 1em;
}

.footer-area-box-details-txt {
    line-height: 2.2;
}

.footer-service-list {
    width: 890px;
    margin: 75px auto;
    display: flex;
    justify-content: space-between;
}

.footer-service-box {
    width: 380px;
}

.footer-service-box-head {
    font-weight: bold;
    text-align: center;
    margin-bottom: 15px;
}

.footer-link-list {
    display: flex;
    justify-content: center;
}

.footer-link-item {
    padding: 0 25px;
    border-right: 1px solid #97a8b3;
}

.footer-link-item:last-child {
    border: none;
}

.footer-copy {
    width: 1000px;
    margin: 25px auto 0;
    padding: 55px 0;
    text-align: center;
    color: #486495;
    border-top: 1px solid #163773;
}

@media (max-width: 1500px) {
    .footer {
        margin-top: calc(50vw / 1500 * 100);
        font-size: calc(16vw / 1500 * 100);
        background-image: none;
    }

    .footer-top {
        width: calc(1000vw / 1500 * 100);
        transform: translateY(calc(-85vw / 1500 * 100));
    }

    .footer-head {
        width: calc(430vw / 1500 * 100);
        transform: translateY(calc(-135vw / 1500 * 100));
    }

    .footer-company-details {
        width: calc(710vw / 1500 * 100);
        margin: calc(-40vw / 1500 * 100) auto calc(55vw / 1500 * 100);
    }

    .footer-company-details-img {
        width: calc(190vw / 1500 * 100);
    }

    .footer-company-details-list {
        width: calc(480vw / 1500 * 100);
        border-top: calc(1vw / 1500 * 100) solid #97a8b3;
    }

    .footer-company-details-item {
        border-bottom: calc(1vw / 1500 * 100) solid #97a8b3;
        padding: calc(20vw / 1500 * 100);
    }

    .footer-company-details-item-left {
        width: calc(190vw / 1500 * 100);
    }

    .footer-area-list {
        width: calc(1000vw / 1500 * 100);
    }

    .footer-area-box {
        width: calc(330vw / 1500 * 100);
        margin-bottom: calc(70vw / 1500 * 100);
        padding: 0 calc(50vw / 1500 * 100);
        border-right: calc(1vw / 1500 * 100) solid #97a8b3;
    }

    .footer-service-list {
        width: calc(890vw / 1500 * 100);
        margin: calc(75vw / 1500 * 100) auto;
    }

    .footer-service-box {
        width: calc(380vw / 1500 * 100);
    }

    .footer-service-box-head {
        margin-bottom: calc(15vw / 1500 * 100);
    }

    .footer-link-item {
        padding: 0 calc(25vw / 1500 * 100);
        border-right: calc(1vw / 1500 * 100) solid #97a8b3;
    }

    .footer-copy {
        width: calc(1000vw / 1500 * 100);
        margin: calc(25vw / 1500 * 100) auto 0;
        padding: calc(55vw / 1500 * 100) 0;
        border-top: calc(1vw / 1500 * 100) solid #163773;
    }
}

@media (max-width: 750px) {
    .footer {
        margin-top: calc(50vw / 750 * 100);
        font-size: calc(22vw / 750 * 100);
    }

    .footer-top {
        width: 100%;
        transform: none;
    }

    .footer-head {
        width: calc(430vw / 750 * 100);
        transform: translateY(calc(-50vw / 750 * 100));
    }

    .footer-company-details {
        width: calc(690vw / 750 * 100);
        margin: calc(50vw / 750 * 100) auto calc(55vw / 750 * 100);
    }

    .footer-company-details-img {
        width: calc(190vw / 750 * 100);
    }

    .footer-company-details-list {
        width: calc(480vw / 750 * 100);
        border-top: calc(1vw / 750 * 100) solid #97a8b3;
    }

    .footer-company-details-item {
        border-bottom: calc(1vw / 750 * 100) solid #97a8b3;
        padding: calc(15vw / 750 * 100) calc(20vw / 750 * 100);
    }

    .footer-company-details-item-left {
        width: calc(190vw / 750 * 100);
    }

    .footer-area-list {
        width: calc(690vw / 750 * 100);
        border-top: calc(1vw / 750 * 100) solid #97a8b3;
    }

    .footer-area-box {
        display: block;
        width: calc(690vw / 750 * 100);
        margin-bottom: 0;
        padding: calc(35vw / 750 * 100) 0;
        border-right: none;
        border-bottom: calc(1vw / 750 * 100) solid #97a8b3;
    }

    .footer-area-box:nth-child(3n) {
        border-bottom: calc(1vw / 750 * 100) solid #97a8b3;
    }

    .footer-area-box-details {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .footer-area-box-details-head {
        display: flex;
        justify-content: center;
        align-items: center;
        width: calc(275vw / 750 * 100);
        margin: auto;
    }

    .have-map .footer-area-box-details-head {
        transform: translateY(calc(20vw / 750 * 100));
    }

    .footer-area-box-details-txt {
        width: calc(415vw / 750 * 100);
    }

    .footer-area-box-btn {
        width: calc(299vw / 750 * 100);
        margin-right: 0;
        margin-left: auto;
    }

    .footer-service-list {
        width: calc(690vw / 750 * 100);
        margin: calc(95vw / 750 * 100) auto calc(110vw / 750 * 100);
    }

    .footer-service-box {
        width: calc(335vw / 750 * 100);
    }

    .footer-service-box-head {
        margin-bottom: calc(15vw / 750 * 100);
    }

    .footer-link-item {
        padding: 0 calc(25vw / 750 * 100);
        border-right: calc(1vw / 750 * 100) solid #97a8b3;
    }

    .footer-copy {
        width: auto;
        margin: calc(25vw / 750 * 100) auto 0;
        padding: calc(25vw / 750 * 100) 0 calc(75vw / 750 * 100);
        border: none;
    }
}


.not-line{
    width: calc(290vw / 750 * 100);
}

/*
2023/02/22　外構ページ用CSS*/

.tatenarabi{
    display:block;

}

.tatenarabi li{
    margin-bottom: calc(20vw / 1500 * 100);
}

.gaikou .fixed_bnr_sp-item{
    width: calc(615vw / 750 * 100);
    padding: 0 3px;
}
.gaikou .fixed_bnr_sp-list02 .fixed_bnr_sp-item{
    width: calc(400vw / 750 * 100);
    padding: 0;
    display: block;
    margin: 0 auto;
}

.gaiheki .fixed_bnr_sp-item {
    width: calc(615vw / 750 * 100);
    padding: 0 3px;
}

/*
2023/06/30　水回りページ用CSS*/
.kameiten{
    padding-bottom:80px;
}
.kameiten .kameiten_head{
    background-color:#0b295e;
    padding:20px;
    color:#ffffff;
    text-align: center;
    font-weight: bold;
}

.kameiten .kameiten_table{
    display:flex;
    margin-top:20px;
    margin-left: 30%;
}

.kameiten .kameiten_table .main-txt{
    font-weight: bold;
    padding-right: 30px;
    color:#0b295e;
}

@media (max-width: 750px) {

    .kameiten{
        padding-bottom:10px;
    }
    .kameiten .kameiten_head{
        background-color:#0b295e;
        padding:20px;
        color:#ffffff;
        text-align: center;
        font-weight: bold;
        font-size: 20px;
    }

    .kameiten .kameiten_table{
        display:flex;
        margin-top:20px;
        margin-left: 5%;
    }

    .kameiten .kameiten_table .main-txt{
        font-weight: bold;
        padding-right: 30px;
        color:#0b295e;
    }

}


.area-head {
    color: #0b295e !important;
}
.research {
    width: 62%;
    margin: 0 auto;
    font-size: .83vw;
    margin-top: -1rem;
    color: #000000;
}
@media screen and (max-width: 750px) {
    .research {
        width: 93%;
        font-size: 1.75vw;
        margin-top: 0;
    }
}

.contact_02-campaign-btn-list.contact_02-campaign-btn-list02 {
    display: flex;
    padding-left: 0;
}
.contact_02-campaign-btn-list.contact_02-campaign-btn-list02 .contact_02-campaign-btn-item {
    width: 61%;
    margin: 0 auto;
}

.promise {
    width: 100%;
    background-image: url(../img/pc/authority_bottom_bg.png);
    background-size: 100% calc(110vw / 1500 * 100);
    background-position: bottom center;
    background-repeat: no-repeat;
}
@media screen and (max-width:750px) {
    .promise {
        width: 100%;
        background-image: none;
    }
    .contact_02-campaign-btn-list.contact_02-campaign-btn-list02 {
        display: block;
    }
    .contact_02-campaign-btn-list.contact_02-campaign-btn-list02 .contact_02-campaign-btn-item {
        width: 100%;
        margin: 0 auto;
    }
}
@media screen and (max-width:750px) {
.new_header{
    padding-bottom:10px;
}

}