@media (max-width: 1370px) {
    .out-container {max-width: 960px;}
    .top-banner {padding: 100px 0 130px;}
    .top-banner .top-banner-text .top-banner-item h2 {font-size: 24px;}
    .top-banner .top-banner-text .top-banner-item p {font-size: 15px;}
    .top-banner .top-banner-desc p {font-size: 22px; padding: 12px 50px 14px;}
    .top-banner .top-banner-thumb {margin-top: 55px;}
}
@media (max-width: 992px) {
    .top-banner .top-banner-text .top-banner-item h2 {font-size: 21px;}
    .container {max-width: 700px;}
    .inner-container {max-width: 640px;}
    .contact-banner .contact-links a {width: 280px;}
    .contact-banner .img-ill {display: none;}
    .content-07 a,
    .content-03 a {font-size: 20px;}
    .main-section .left-bg,
    .main-section .right-bg {width: calc(50% - 320px);}
    .top-banner {padding: 80px 0 100px;}
    .top-banner .top-banner-desc {max-width: 534px; margin: 0 auto;}
    .top-banner .top-banner-desc p {font-size: 16px; padding: 12px 40px 14px;}
    .sp-phone-banner a .banner-ill {width: 120px;}

    .top-banner .top-banner-text div.mt-50 {margin-top: 15px;}
}
@media (max-width: 767px) {
    header .pc-menu {display: none;}
    .top-banner .top-banner-thumb img{width: 180px; margin-bottom: 20px;}
    .top-banner .top-banner-text {padding-left: 2px;}
    .top-banner .top-banner-text .d-flex {display: none;}
    .fixed-links {width: 100%; bottom: 0; top: unset; transform: unset; display: flex;}
    .fixed-links a {margin: 0; border-radius: 0; font-size: 16px; width: auto; flex: 1; height: 68px;}
    .fixed-links a img {width: 25px;}
    .top-banner .top-banner-text .top-banner-item {flex: 0 0 calc(100% - 25px); position: relative;}
    .top-banner .top-banner-text .top-banner-item p {display: none;}
    .top-banner .top-banner-text .top-banner-item .item-img img {width: 80%;}
    .top-banner .top-banner-text .top-banner-item .item-img {margin: -10px 0;}
    .top-banner .top-banner-text .top-banner-item .t-center {position: absolute; right: -20px; top: 50%; transform: translateY(-50%); margin: 0;}
    .top-banner .top-banner-text .top-banner-item:first-of-type {margin-bottom: 20px;}
    .top-banner {padding: 25px 0;}
    .contact-banner {display: none;}
    .inner-container {padding: 0 8px;}
    .main-section .left-bg, .main-section .right-bg {width: 100px;}
    .mt-50 {margin-top: 30px;}
    .content-07 a, .content-03 a {width: 45%; font-size: 14px; padding: 12px 10px 15px;}
    .content-03 .more-link-div {bottom: 23%; left: 52%;}
    .content-07 a span svg,
    .content-03 a span svg {width: 8px;}
    .content-07 a span,
    .content-03 a span {right: 7px; font-size: 0;}
    .btn-hover:hover span {right: 10px;}
    /* .content-07 .d-flex img,
    .content-04 .d-flex img {flex: 0 0 48%; margin-bottom: 10px;} */
    .content-04 .d-flex {padding: 0 5px;}
    .content-04 .d-flex img {width: 40px;}
    .content-04 .d-flex .item p {font-size: 14px; line-height: 20px; height: 40px;}
    .content-04 .d-flex .item {padding: 10px 0;}

    .content-07 .d-flex img {height: 40px;}
    .content-07 .d-flex .item p {font-size: 12px; line-height: 15px; height: 30px;}
    .content-07 .d-flex .item {padding: 15px 3px 10px;}
    .content-07 a {width: 70%;}
    .content-05 div.t-center {padding: 0 10px 0 5px;}
    .content-05 img {margin-top: -5px;}
    .content-09 img {width: calc(100% + 9px);}
    .content-11 img {width: calc(100% + 2px); margin-left: -2px;}
    .voice-item .voice-name {font-size: 18px; padding: 7px 0;}
    .voice-item .voice-content {padding: 10px 0; font-size: 14px; width: 100%;}
    .voice-item .voice-image {
        padding: 5px;
        width: 100%;
    }

    footer {padding-bottom: 80px;}
    .footer-info {flex-wrap: wrap;}
    .footer-info a {flex: 0 0 100%; text-align: center;}
    .footer-info p {flex: 0 0 100%; text-align: center; margin-top: 20px;}

    .sp-show {display: block;}
    .pc-show {display: none;}
    .top-banner .top-banner-thumb {margin-top: 15px; flex: 0 0 100px;}
    .main-section .right-bg {top: 150px;}
    .top-banner {background-image: url(../images/top-banner-bg-sp.jpg); background-size: cover;}

    .content-04 .sub-01 {padding: 0 16px;}
    .sp-phone-banner a .banner-ill {width: 65px; left: 15px;}

    .top-sp-show {display: inline-block !important;}
    .top-pc-show {display: none !important;}

    .top-banner .top-banner-desc {display: flex !important;}
    .top-banner .top-banner-desc p {font-size: 14px; padding: 7px 5px 10px; flex: 0 0 31%; text-align: center;}
    .top-banner .out-container {padding: 0 5px;}

    .page-top {bottom: 62px; right: 15px;}
    .page-top img {width: 65px;}

    .top-banner h1 {margin-top: 5px !important;}

    .top-banner-text .sp-show.logo-img img {width: 170px;}
    .top-banner .out-container {padding: 0 8px;}

    .top-banner-text .mark-left,
    .top-banner-text .mark-right {position: absolute; bottom: 50px; width: 90px !important;}

    .top-banner-text .mark-left {left: 0px;}
    .top-banner-text .mark-right {right: 0px;}
    .top-banner-text .sp-mark-3 {margin-right: -7px;}

    .content-18 .video-text img {width: 180px;}
    .content-18 .video-text {margin-top: 5px;}
}

