@charset 'utf-8';

@media screen and (min-width: 768px) {
    .pc-none {
        display: none;
    }
}

@media screen and (max-width: 1140px) {
    body {
        overflow-x: hidden;
    }

    .wrap {
        padding-left: 15px;
        padding-right: 15px;
    }

    .top-fv-sec .img {
        animation: revealAnimation 4s forwards cubic-bezier(.17, .67, .99, .83);
    }

    .top-fv-sec .img img {
        position: relative;
    }

    @keyframes revealAnimation {
        0% {
            clip-path: circle(0% at 100% 0);
        }

        50% {
            clip-path: circle(10% at 100% 0);
        }

        100% {
            clip-path: circle(150% at 50% 100%);
        }
    }

}

@media screen and (max-width: 991px) {
    .top-fv-sec p.copy {
        margin: 50px 0 0 0;
        font-size: 30px;
    }

    .top-fv-sec .img {
        width: 100%;
        left: -100px;
        top: 0;
    }

    .top-fv-sec::before {
        height: 120vh;
        width: 200vw;
        top: -300px;
        left: -300px;
    }

    .top-fv-sec p {
        font-size: 16px;
    }

    .top-fv-sec {
        height: calc(100vh - 400px);
        display: flex;
        align-items: center;
        justify-content: center;
        flex-flow: column;
    }

    .top-fv-sec .br {
        display: block;
    }

    .home h2.common_hedding {
        font-size: 24px;
    }

    .common_hedding span {
        font-size: 14px;
    }

    .top-intro-sec ul,
    .top-profile-sec ul,
    .top-service-sec ul {
        padding-bottom: 0;
    }

    .wrap_base-white {
        padding: 30px 12px;
    }

    .home .news-list__item-meta {
        /* flex-flow: row-reverse; */
        align-items: baseline;
        justify-content: start;
    }

    .home .wrap_base-white {
        margin-top: 15px;
    }

    .top-intro-sec ul li a,
    .top-profile-sec ul li dl {
        flex-flow: column;
        align-items: baseline;
    }

    .top-service-sec ul li:last-child p,
    .top-service-sec ul li:last-child {
        margin-bottom: 0;
    }

    .form-dl dl {
        flex-flow: column;
    }

    .lower-page section {
        padding-left: 15px;
        padding-right: 15px;
    }

    .wrap_base-area {
        padding: 0 15px;
    }

    .wrap.form {
        padding: 20px 0;
    }

    .news-nav ul {
        flex-wrap: wrap;
        margin-bottom: 35px;
    }

    .news-nav li {
        margin-left: 0;
        margin-bottom: 10px;
        width: 47%;
    }

    .news-nav li:nth-child(5),
    .news-nav li:last-child {
        margin-bottom: 0;
    }

    .news-list__item-link a {
        flex-flow: column;
    }

    .news-list__item-thumbnail+dl {
        margin-left: 0;
    }

    .news-list__item-meta {
        width: 200px;
        justify-content: flex-start;
    }

    .news-list__item-meta .news-list__item-meta__cat {
        margin-left: 0px;
    }

    .news-list__item-meta .news-list__item-meta__date {
       margin-right: 12px;
       font-weight: bold;
    }

    .top-intro-sec ul li {
        margin-bottom: 25px;
    }

    .news-archive-sec .news-list__item-meta {
        flex-flow: row-reverse;
    }

    /*
    .sp_footer-privacy {
        display: block;
        position: relative;

        width: 45px;
        bottom: 0;
        right: 0;
    }

    .pc_footer-privacy {
        display: none;
    } */

    .footer-privacy {
        bottom: 30px;
        width: 50px;
    }

    /* .sp_footer-wrap {
        display: flex;
        margin-top: 20px;
    } */

    /* .footer-copyright {
        margin-top: 0;
    } */

    .footer-menu ul {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }

    .footer-menu ul li {
        line-height: 2.6;
    }

    footer .wrap {
        padding: 0 30px;
    }

    .news-single-list ul {
        flex-wrap: wrap;
    }

    .news-shingle__connection+.news-shingle__connection {
        padding-bottom: 0;
    }

    .news-cta .common_btn {
        margin-top: 40px;
    }

    .news-cta .common_btn a {
        width: 80%;
    }

    .news-flex ul {
        margin-bottom: 40px;
    }

    .news-flex dl {
        width: 100%;
        max-width: 400px;
    }

    .news-single-sec p.text-align {
        text-align: left;
    }

    .news-single-sec .news-list__item-meta .news-list__item-meta__date {
        margin-left: 0;
    }

    .news-single-sec .news-list__item-meta .news-list__item-meta__cat {
        margin-left: 20px;
    }

    .br {
        display: none;
    }

    .post-content h3+p {
        width: 90%;
    }

    h2.common_hedding+p {
        width: 90%;
        margin: auto;
    }
}

@media screen and (max-width: 991px) {
    body {
        min-width: 320px;
        /* padding-top: 135px; */
        padding-top: 69px;
    }

    body.header-logo-only,
    body.header-simple {
        padding-top: 69px;
    }

    /* ニュース */
    .news-img {
        height: auto;
    }

    .news-shingle__connection ul {
        flex-wrap: wrap;
    }

    /* HEADER */
    .header-top-nav {
        display: none;
    }

    .header-nav {
        display: none;
    }

    .header-content {
        /* background-color: #fff; */
        padding: 10px 15px 10px 7px;
        align-items: center;
    }

    .header-logo-item:nth-of-type(1) img {
        width: 220px;
    }

    .header-logo-item:nth-of-type(2) img {
        width: 100px;
    }

    .header-menu__nav {
        display: none;
    }

    .header-menu__account {
        align-items: center;
    }

    .header-menu__account-item span {
        display: none;
    }

    .header-menu__account-item--cart__count {
        display: block !important;
        font-size: 12px;
        width: 17px;
        height: 17px;
        padding-top: 2px;
        right: 0;
    }

    .header-menu__account-item--cart {
        margin-left: 0;
    }

    .header-menu__account-item svg {
        width: 24px;
        height: 30px;
    }

    .header-menu__account-item--cart a {
        background-color: transparent;
    }

    .header-menu__account-item--cart svg path {
        fill: #707070;
    }

    .header-menu__account-item--cart svg {
        width: 34px;
        height: 30px;
        transform: initial;
    }

    .header-menu__account-item a {
        padding-top: 13px;
    }

    /* BREADCRUMBS */
    .breadcrumbs-wrap {
        padding: 5px 0;
        margin-bottom: 15px;
    }


    /* PAGE */
    .page-title {
        margin-bottom: 20px;
    }

    /* TOP */
    .header-top-nav ul li.n1 img {
        width: 122px;
    }

    .header-top-nav ul li.n2 img {
        width: 138px;
    }

    .header-top-nav ul li.n3 img {
        width: 120px;
    }

    .header-top-nav ul li.n4 img {
        width: 141px;
    }

    .header-top-nav {
        padding-top: 0;
    }

    .top-intro-sec {
        padding-top: 18px;
    }

    .top-intro-sec__ttl {
        margin-bottom: 24px;
    }

    .top-intro-sec__grid {
        grid-template-columns: repeat(1, 1fr);
    }

    .top-intro-sec__grid-item__flex-text br {
        display: none;
    }

    .top-intro-sec__grid-item__flex {
        justify-content: flex-start;
        padding-left: 10px;
    }

    .top-index__flex-main {
        max-width: calc(100% - 180px);
        padding-left: 30px;
    }


    /* BRAND */
    .brand-sec__cont-list {
        display: block;
    }

    .brand-intro-sec {
        margin-top: -15px;
    }

    .brand-intro-sec__bg.left {
        width: 120px;
        top: auto;
        bottom: 0;
        left: auto;
        right: 0;
        transform: rotate(-180deg);
    }

    .brand-intro-sec__bg.right {
        width: 200px;
        bottom: auto;
        top: 0;
        transform: rotateX(-180deg);
    }

    .brand-intro-sec__box {
        display: none;
    }

    .brand-cat-sec .wrap {
        padding: 0;
    }

    .brand-cat-sec__list li a b {
        font-size: 18px;
    }

    .brand-cat-sec__list li a {
        font-size: 14px;
    }

    .brand-about-sec__flex-img {
        max-width: 100%;
        margin-bottom: 15px;
        text-align: center;
    }

    .brand-about-sec__flex-box {
        max-width: 100%;
        padding-left: 0;
    }
}

@media screen and (max-width: 880px) {
    .top-service-sec ul li {
        max-width: 360px;
    }

    .top-service-sec .wrap_base-white {
        padding-bottom: 0;
    }

    .top-service-sec .flex {
        flex-flow: column;
        padding: 40px 12px 140px;
        background-position: bottom;
        background-size: 130%;
        background-color: rgba(255, 255, 255, 0.4);
        background-blend-mode: lighten;
    }

    .top-service_content-detail {
        max-width: 100%;
    }

    .footer-logo {
        position: relative;
        margin-top: 20px;
        margin-bottom: 0;
        left: auto;
        bottom: auto;
        text-align: center;
    }

    .footer-copyright {
        margin-top: 10px;
    }
}

@media screen and (max-width: 770px) {
    .top-service-sec ul {
        gap: 20px;
    }

    .top-service-sec ul p {
        margin-bottom: 0;
    }

    .news-flex {
        flex-direction: column;
    }

    .news-flex .news-img,
    .post-content .news-flex p {
        margin-bottom: 15px;
    }


    h2.common_hedding+p {
        width: 100%;
        margin: auto;
    }

    h2.common_hedding+p.mb-2 {
        margin-bottom: 20px;
    }

    ul li {
        font-size: 14px;
    }


}

@media screen and (max-width: 767px) {
    body {
        /* padding-top: 147px; */
        padding-top: 0;
    }

    body.header-logo-only,
    body.header-simple {
        padding-top: 48px;
    }

    p,
    a.form-number-link {
        font-size: 14px;
    }

    .sp-none {
        display: none;
    }

    main.login-page,
    main.password-reset-page,
    main.estimate-page,
    main.not-found-page,
    main.contact-page,
    main.cart-page {
        padding-top: 50px;
    }


    /* estimate-page add 追加 */
    main.estimate-page {
        margin-top: 0;
    }


    /* PARTS */
    .form-submit input[type="submit"],
    .form-submit input[type="button"],
    .form-submit input[type="submit"].md,
    .form-submit input[type="button"].md {
        font-size: 16px;
        min-width: auto;
        width: 100%;
        display: block;
        /* padding: 14px 0; */
    }

    .view-more a,
    .view-more.md a {
        font-size: 16px;
        padding: 14px 0;
        width: 100%;
        display: block;
        border-radius: 6px;
    }

    .add-cart-btn button {
        padding: 7px 23px;
    }

    .post-content {
        font-size: 14px;
    }

    .post-content table thead th:first-child {
        width: auto;
    }

    .post-content table th,
    .post-content table td {
        font-size: 14px;
        padding: 8px 15px;
    }

    .post-content h2 {
        margin: 60px 0 20px;
    }

    .post-content h3 {
        font-size: 18px;
        margin: 40px 0 15px;
    }

    .post-content p,
    .post-content ul {
        margin: 15px 0;
        line-height: 1.9;
    }


    /* BREADCRUMBS */
    .breadcrumbs span,
    .breadcrumbs span a {
        font-size: 12px;
    }

    .breadcrumbs-wrap,
    .breadcrumbs span.divide {
        padding: 0;
    }


    /* HEADER */
    .header-logo-item:nth-of-type(1) img {
        width: 150px;
        display: block;
    }

    .header-logo-item:nth-of-type(2) img {
        width: 64px;
        display: block;
    }

    .header-menu__account-item svg {
        width: 17px;
        height: 21px;
    }

    .header-menu__account-item--cart svg {
        width: 27px;
        height: 24px;
    }

    .header-menu__account-item__icon {
        height: auto;
    }

    .header-menu__account-item {
        width: auto;
        height: auto;
    }

    .header-menu__account-item a {
        padding-top: 0;
    }

    .nav-toggle {
        margin-left: 13px;
        margin-top: 4px;
    }

    .header-menu__account-item--cart {
        margin-left: 9px;
    }

    .header-logo-item:not(:last-child) {
        margin-right: 20px;
    }

    .header-menu__account-item--cart__count {
        right: -6px;
        top: -8px;
    }


    /* DRAWER */
    #drawer {
        height: calc(100vh - 47px);
        top: 47px;
        overflow-y: scroll;
    }


    /* FOOTER */
    #footer {
        padding-top: 25px;
    }

    .footer-menu a {
        font-size: 13px;
    }

    .footer-menu li:not(:last-child)::after {
        padding: 0;
        position: relative;
        bottom: -1px;
    }

    .footer-link {
        grid-template-columns: repeat(1, 1fr);
        gap: 20px;
    }

    .footer-link .sin-ul>li:not(:last-child) {
        margin-bottom: 20px;
    }


    /* PAGE */
    .page-title {
        font-size: 22px;
    }

    main.login-page,
    main.password-reset-page,
    main.estimate-page,
    main.not-found-page,
    main.contact-page {
        padding-top: 27px;
    }

    .post-content h2::before,
    .common-line-title::before {
        width: 120px;
    }

    .post-content h2,
    .common-line-title,
    .news-single-sec .news-shingle__connection .common_hedding {
        font-size: 20px;
    }


    .news-flex dl dt {
        font-size: 18px;
    }

    .drawer-menu a {
        font-size: 16px;
    }


    /* CONTACT */
    .contact-sec__text {
        margin-bottom: 30px;
    }

    .contact-sec__form {
        margin-top: 26px;
    }

    .contact-sec .common-line-title:not(:first-of-type) {
        margin-top: 80px;
    }

    .contact-sec__form-text {
        margin-top: 25px;
        text-align: left;
    }

    .contact-sec__form-text br {
        display: none;
    }

    .contact-sec__form-agree {
        text-align: left;
        margin-top: 20px;
    }

    .error-message-box {
        margin-top: 0;
        margin-bottom: 80px;
        padding: 4px 8px;
    }

    .contact-confirm-sec .contact-sec__text {
        font-size: 16px;
    }

    .contact-complete-sec .common-line-title {
        margin-bottom: 26px;
    }

    .contact-complete-sec__banner {
        margin-top: 65px;
    }

    .contact-complete-sec__view-more {
        margin-top: 40px;
    }


    /* FORM */
    .form .form-pref,
    .form .form-pref.sm {
        max-width: 100%;
    }

    .form dl dt {
        font-size: 14px;
    }

    .form input[type="text"],
    .form input[type="tel"],
    .form input[type="email"],
    .form input[type="number"],
    .form input[type="password"],
    .form select,
    .form textarea {
        font-size: 14px;
    }

    .form dl:not(:last-child) {
        margin-bottom: 22px;
    }

    .form .agree-checkbox+label {
        font-size: 14px;
    }

    .form .agree-checkbox+label::before {
        width: 16px;
        height: 16px;
        top: 2px;
    }

    .form .agree-checkbox+label::after {
        top: 6px;
        left: 2px;
    }

    .form dd {
        font-size: 14px;
    }

    .form-submit-flex {
        display: block;
    }

    .form-submit-flex input[type="button"] {
        margin-bottom: 10px;
        margin-right: 0;
    }

    .form-submit {
        margin-top: 60px;
    }

    .form-attention {
        font-size: 13px;
    }

    .form input[type="radio"]+label {
        font-size: 14px;
        padding-left: 22px;
    }

    .form input[type="radio"]+label::before {
        width: 16px;
        height: 16px;
        top: 2px;
    }

    .form input[type="radio"]+label::after {
        top: 5px;
        left: 3px;
    }


    /* REGISTER */
    .progress-sec {
        padding: 30px 0 35px;
        margin-bottom: 35px;
    }

    .progress-sec__ul-li__num {
        width: 30px;
        height: 30px;
        font-size: 22px;
    }

    .progress-sec__ul-li__text {
        font-size: 10px;
    }

    .progress-sec__ul-li__num::before {
        width: 150%;
        top: 12px;
        right: -10px;
    }

    .progress-sec .page-title {
        margin-bottom: 18px;
    }

    .register-sec .common-line-title {
        margin-bottom: 27px;
    }

    .register-sec__form-submit {
        margin-top: 25px;
    }

    .register-sec__ttl {
        font-size: 16px;
    }

    .register-sec__view-more {
        margin-top: 60px;
    }


    /* LOGIN */
    .login-sec__form-wrap {
        display: block;
    }

    .form-wrap {
        padding: 30px 15px 60px;
    }

    .login-sec__box:nth-of-type(1) {
        border-right: none;
        padding-right: 0;
        border-bottom: 1px solid #CDCDCD;
        padding-bottom: 60px;
    }

    .login-sec__box:nth-of-type(2) {
        padding-left: 0;
        padding-top: 30px;
    }

    .login-sec__box-ttl {
        font-size: 20px;
        margin-bottom: 20px;
    }

    .login-sec__box-form-submit {
        margin-top: 15px;
    }

    .password-reset-sec__form-submit,
    .estimate-sec__form-submit {
        margin-top: 30px;
    }

    .login-sec__box-view-more {
        margin-top: 25px;
    }

    .form-wrap__text {
        margin-bottom: 30px;
    }

    .form-wrap__ttl {
        font-size: 16px;
        margin-bottom: 30px;
    }


    /* MYPAGE */
    .mypage-menu-toggle {
        font-size: 18px;
    }

    .mypage .common-line-title {
        margin-bottom: 27px;
    }

    .mypage-customer-info__dl {
        display: block;
        line-height: 1.5;
    }

    .mypage-customer-info__dl:not(:last-child) {
        margin-bottom: 5px;
    }

    .mypage-customer-info__dl dt,
    .mypage-customer-info__dl dd {
        display: inline;
        font-size: 14px;
    }

    .mypage-customer-order,
    .mypage-customer-estimate,
    .mypage-banner {
        padding-top: 75px;
    }

    .mypage-customer-order__box-item__date {
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .mypage-customer-order__card {
        position: relative;
        padding-left: 123px;
        margin-bottom: 35px;
    }

    .mypage-customer-order__card-thumb {
        position: absolute;
        top: 0;
        left: 0;
    }

    .mypage-customer-order__card-box {
        width: 100%;
        padding: 0;
    }

    .mypage-customer-order__card-box__btns {
        width: 100%;
        padding-right: 60px;
        position: relative;
        margin-top: 10px;
    }

    .mypage-customer-order__card-box__name {
        font-size: 16px;
        line-height: 1.375;
    }

    .mypage-customer-order__card-box__quantity,
    .mypage-customer-order__card-box__price {
        font-size: 16px;
    }

    .mypage-customer-order__box-item__info {
        padding: 20px 0;
    }

    .mypage-customer-order__card-box__btns .mypage-customer-order__card-box__btns-favorite {
        position: absolute;
        top: 5px;
        right: 15px;
    }

    .mypage-customer-order__card-box__btns-item a {
        font-size: 16px;
        padding: 2px 0;
    }

    .mypage-customer-order__box-item__info-price {
        margin-top: 5px;
        font-size: 16px;
    }

    .mypage-customer-order__box-item__info-price span {
        font-size: 22px;
    }

    .mypage-customer-favorite__card__comments {
        margin-top: 15px;
    }

    .mypage-customer-favorite .add-comment-form.form input[type="text"],
    .add-comment-form.form input[type="text"] {
        font-size: 14px;
        max-width: calc(100% - 70px);
        margin-right: 18px;
    }

    .mypage-customer-order__box-link a,
    .password-reset-sec__link a,
    .contact-sec__link a,
    .register-sec__link a {
        font-size: 14px;
    }

    .mypage-customer-order__box-link a::before,
    .mypage-customer-modify-complete__link a::before,
    .password-reset-sec__link a::before,
    .contact-sec__link a::before,
    .register-sec__link a::before {
        top: 5px;
    }

    .mypage-customer-order__box-link {
        border-top: 1px solid #CDCDCD;
        padding-top: 8px;
    }

    .mypage-customer-modify-complete__text {
        font-size: 16px;
    }

    .mypage-customer-modify-complete__attention li {
        font-size: 14px;
    }

    .mypage-customer-modify-complete__attention li::before {
        top: 10px;
    }

    .mypage-customer-modify-complete__view-more {
        margin-top: 60px;
    }



    /* MYPAGE FAVORITE */
    .mypage-customer-favorite__card-thumb {
        width: 110px;
    }

    .mypage-customer-favorite__card-flex {
        max-width: calc(100% - 110px);
        display: block;
        padding-left: 10px;
        position: relative;
        padding-bottom: 55px;
    }

    .mypage-customer-favorite__card-box__name {
        font-size: 16px;
        line-height: 1.375;
    }

    .mypage-customer-favorite__card-box__price span {
        font-size: 22px;
    }

    .mypage-customer-favorite__card-box__price {
        font-size: 12px;
        margin-top: 0;
    }

    .mypage-customer-favorite__card-btns {
        justify-content: flex-start;
        margin-top: 10px;
    }

    .mypage-customer-favorite__card {
        padding: 20px 0;
    }

    .mypage-customer-favorite .mypage-customer-favorite__card__comments {
        margin-top: 0;
        position: absolute;
        bottom: 0;
        left: -110px;
        width: calc(100vw - 30px);
    }


    /* 404 */
    .not-found-sec .not-found-sec__ttl {
        padding: 0 20px;
    }


    /* NEWS */
    .news-list__item-meta {
        width: 225px;
    }

    .news-list__item {
        display: block;
        padding: 15px;
    }

    .news-list__item-link {
        width: 100%;
        margin-top: 8px;
    }

    .news-list__item-meta__cat {
        font-size: 12px;
    }

    .news-single-sec__post-content {
        padding: 30px 0 0;
    }

    .news-single-sec__view-more {
        margin-top: 60px;
    }



    /* PRODUCT */
    .product-archive-card__box-tag {
        margin: 5px 0 0;
    }

    .product-archive-card__thumb {
        width: 110px;
    }

    .product-archive-card__box {
        width: calc(100% - 110px);
        padding-left: 10px;
        position: relative;
        padding-bottom: 66px;
    }

    .product-archive-card__box-tag span {
        font-size: 12px;
    }

    .product-archive-card__box-brand {
        font-size: 20px;
        display: inline;
    }

    .product-archive-card__box-name {
        font-size: 20px;
        line-height: 1.5;
        display: inline;
    }

    .product-archive-card__box-price {
        margin-top: 3px;
    }

    .product-archive-card__box-price__normal dt,
    .product-archive-card__box-price__normal dd {
        font-size: 12px;
    }

    .product-archive-card__box-price__normal dd span {
        font-size: 14px;
    }

    .product-archive-card__box-price__special dt,
    .product-archive-card__box-price__special dd {
        font-size: 12px;
    }

    .product-archive-card__box-price__special dd span {
        font-size: 21px;
    }

    .product-archive-card__box-price__normal dt,
    .product-archive-card__box-price__special dt {
        width: auto;
        margin-right: 10px;
    }

    .product-archive-card__box-price__special dt {
        position: relative;
        bottom: -2px;
    }

    .product-single-sec .product-archive-card__box-price__special dt {
        bottom: -6px;
    }

    .product-archive-card__box-price__special {
        margin-top: 15px;
    }

    .product-archive-sec .product-archive-card__box-quantity {
        margin: 0;
        position: absolute;
        bottom: 0;
        left: -110px;
        width: calc(100vw - 30px);
        justify-content: space-between;
    }

    .product-archive-card__box-quantity__cart .favorite-btn {
        margin-left: 10px;
    }

    .product-archive-card__box-quantity__cart {
        margin-left: 13px;
    }

    .product-archive-card__box-quantity__item-counter input {
        width: 60px;
        height: 46px;
        font-size: 22px;
    }

    .product-archive-card {
        padding: 22px 0;
    }


    /* PRODUCT SINGLE */
    .product-single-sec {
        margin-top: 35px;
    }

    .product-single-sec .product-banner {
        margin-top: -20px;
    }

    .product-single-sec .product-banner+.product-banner {
        margin-top: -15px;
    }

    .product-single-sec__flex-thumb {
        padding: 0 22px;
    }

    .product-single-sec .product-archive-card__box-price__special dd span {
        font-size: 32px;
    }

    .product-single-sec__post-content,
    .product-single-sec__combo,
    .product-single-sec__check {
        margin-top: 80px;
    }

    .product-single__card {
        width: 140px;
    }

    .product-single-sec__view-more a {
        padding: 14px 0;
    }

    .product-single-sec__body table th,
    .product-single-sec__body table td {
        font-size: 14px;
        padding: 7px 9px;
    }

    .product-single-sec__body table th {
        width: 145px;
    }

    .product-single-sec__body table td {
        width: calc(100% - 145px);
    }


    /* MYPAGE HISTORY */
    .mypage-customer-history-detail__info-box {
        width: 100vw;
        margin: 0 -15px 0;
        padding: 10px 15px;
        display: block;
        position: relative;
    }

    .mypage-customer-history-detail__info-box .mypage-customer-history-detail__info-btn__item {
        position: absolute;
        top: 15px;
        right: 15px;
    }

    .mypage-customer-history-detail__info-btn__item a {
        width: 117px;
        background-color: #fff;
    }

    .mypage-customer-history-detail__info-btn__item.lg a {
        width: 140px;
    }

    .mypage-customer-history-detail__info-box__dl dl dt,
    .mypage-customer-history-detail__info-box__dl dl dd {
        font-size: 14px;
    }

    .mypage-customer-history-detail__info-box__price table th,
    .mypage-customer-history-detail__info-box__price table td {
        font-size: 14px;
    }

    .mypage-customer-history-detail__info-box__price table tr:last-child td {
        font-size: 20px;
    }

    .mypage-customer-history-detail__info-box__price table tr:last-child td small {
        font-size: 14px;
    }

    .mypage-customer-history-detail__info-box__price {
        width: 100%;
        margin-top: 25px;
    }

    .mypage-customer-history-detail__list-box__cont-voucher__list-item dl {
        display: block;
    }

    .mypage-customer-history-detail__list-box__cont-voucher__list-item dl dt,
    .mypage-customer-history-detail__list-box__cont-voucher__list-item dl dd {
        font-size: 14px;
    }

    .mypage-customer-history-detail__list-box__download {
        display: none;
    }

    .mypage-customer-history-detail__list-box__cont-voucher__list-item {
        width: 100vw;
        /* margin: 0 -15px; */
        margin: 0 -15px 15px;
        padding: 10px 15px;
    }



    /* FAQ */
    .faq-sec__cat {
        padding: 15px 0;
    }

    .faq-sec__cat-ttl {
        font-size: 18px;
    }

    .faq-sec__cat-list li a {
        font-size: 15px;
    }

    .faq-sec__cat-list li:not(:last-child) {
        margin-bottom: 0;
    }

    .faq-sec__cont-box {
        padding-top: 60px;
    }

    .faq-sec__cont-box__item-question {
        font-size: 15px;
    }

    .faq-sec__cont-box__item-question::before,
    .faq-sec__cont-box__item-answer::before {
        font-size: 20px;
        left: -25px;
    }

    .faq-sec__cont-box__item {
        padding: 16px 60px 16px 45px;
    }


    /* CART */
    .cart-page__flex-side {
        max-width: 100vw;
        width: 100vw;
        margin: 0 -15px 35px;
    }

    .cart-page__flex-side__sticky {
        padding: 30px 15px;
    }

    .cart-page__flex-side .mypage-customer-history-detail__info-box__price {
        margin-top: 0;
    }

    .cart-page__flex-main {
        width: 100vw;
        margin: 0 -15px;
        max-width: 100vw;
        padding: 25px 15px;
    }

    .cart-page .mypage-customer-order__card-box {
        width: 100%;
        padding-right: 0;
    }

    .cart-page__flex-main__quantity {
        max-width: 100%;
        margin-top: 15px;
    }

    .cart-page__flex-main__quantity-remove {
        display: block;
        margin-left: auto;
    }

    .cart-page__flex-main__total {
        margin-top: -20px;
    }

    .cart-page__flex-main__total dl {
        justify-content: space-between;
    }

    .cart-page__flex-main__total dt {
        font-size: 14px;
    }

    .cart-page__flex-main__total dd {
        font-size: 20px;
    }

    .cart-page__flex-main__total dd small {
        font-size: 14px;
    }

    .cart-page__view-more {
        margin-top: 35px;
    }

    .cart-page__view-more__item {
        text-align: center;
    }

    .cart-page__view-more__item:not(:last-child) {
        margin-bottom: 10px;
    }

    .cart-page__no-item__text {
        font-size: 14px;
        text-align: left;
    }

    .cart-page__no-item__view-more {
        margin-top: 60px;
    }

    .cart-order-sec__flex-main__ttl {
        margin: 60px 0 30px;
    }

    .cart-order-sec__radio-item__text {
        margin-left: 20px;
    }

    .cart-order-sec__flex {
        margin-top: 60px;
        /* display: block; */
        flex-direction: column-reverse;
        gap: 15px;
    }

    .cart-order-sec__flex>*:not(:last-child) {
        margin-bottom: 13px;
    }

    .cart-order-sec__flex-main__confirm-box__item-text.sm {
        font-size: 12px;
    }

    .cart-order-sec__flex-main__confirm-box__item-text {
        font-size: 15px;
    }

    .cart-order-sec__flex-main .cart-page__flex-main {
        max-width: 100vw;
    }

    #cart-order-modal {
        padding: 50px 15px 30px;
    }

    #cart-order-modal .common-line-title {
        margin-bottom: 30px;
    }

    .cart-order-sec__complete-banner {
        margin-top: 55px;
    }

    .cart-order-sec__complete-view-more {
        margin-top: 35px;
    }

    .cart-order-sec__complete-text.lg {
        font-size: 16px;
    }

    .cart-order-sec__complete-estimate-btn a {
        font-size: 16px;
        display: block;
        padding: 14px 0;
    }

    .cart-order-sec__complete-estimate-btn {
        margin: 55px 0;
    }

    .cart-order-sec__radio-item__att {
        font-size: 13px;
    }


    /* TOP */
    #header.open .header-top-nav {
        display: none;
    }

    .header-top-nav {
        padding-bottom: 0;
    }

    .header-top-nav ul {
        grid-template-columns: repeat(2, 1fr);
        position: relative;
    }

    .header-top-nav ul::before {
        content: "";
        width: 7px;
        height: 7px;
        background-color: #fff;
        position: absolute;
        transform: translate(-50%, -50%);
        top: 50%;
        left: 50%;
    }

    .header-top-nav ul li+li:nth-of-type(2n + 1) {
        border-left: none;
    }

    .header-top-nav ul li:nth-of-type(n + 3) {
        border-top: 1px solid #CDCDCD;
    }

    .header-top-nav ul li.sp-none {
        display: none;
    }

    .header-top-nav ul li {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 50px;
    }

    .header-top-nav ul li.n1 img {
        width: 82px;
    }

    .header-top-nav ul li.n2 img {
        width: 98px;
    }

    .header-top-nav ul li.n3 img {
        width: 80px;
    }

    .header-top-nav ul li.n4 img {
        width: 101px;
    }

    .top-index__flex-side {
        max-width: 100%;
    }

    .top-index__flex-main {
        max-width: 100%;
        padding-left: 0;
    }

    .top-index__flex-side__link,
    .top-index__flex-side__bnr {
        display: none;
    }

    .top-index__flex-main__bnr {
        margin: 20px 0 38px;
        grid-template-columns: repeat(1, 1fr);
        gap: 6px;
    }

    .top-index__flex-side .top-index__flex-main__bnr {
        margin-top: 0;
    }

    .top-intro-sec__ttl {
        font-size: 16px;
    }

    .top-intro-sec__grid-item__flex-icon img {
        width: 50px;
    }

    .top-intro-sec__grid-item__flex-text {
        font-size: 16px;
    }

    .top-intro-sec__grid-item__flex {
        gap: 13px;
    }

    .top-intro-sec__grid-item::before {
        width: 33px;
        height: 33px;
    }

    .top-intro-sec__grid {
        gap: 10px;
    }

    .top-important-sec {
        padding-top: 35px;
    }

    .top-important-sec__flex {
        display: block;
        margin-bottom: 10px;
    }

    .top-important-sec__flex-cat {
        font-size: 12px;
        padding: 0 8px;
        float: left;
        margin-right: 15px;
    }

    .top-important-sec__flex-text {
        font-size: 14px;
    }

    .top-important-sec__box {
        padding: 17px;
    }

    .top-index {
        padding-top: 38px;
    }

    .top-index__flex-main__product-ttl,
    .top-index__flex-main__contents-ttl {
        font-size: 20px;
    }

    .top-index__flex-main__product-box__slider-nav img {
        width: 28px;
    }

    .top-index__flex-main__product-box {
        width: 100vw;
        margin: 0 -15px;
        padding: 15px 0 15px 15px;
    }

    .top-index__flex-main__product,
    .top-index__flex-main__contents,
    .top-index__flex-main__news {
        margin-top: 30px;
    }

    .top-index__flex-main__contents-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px 10px;
    }

    .view-more.top-index__flex-main__contents-view-more a {
        line-height: 1;
        padding: 9px 0;
    }



    /* BRAND */
    .brand-intro-sec__logo {
        margin-bottom: 17px;
    }

    .brand-intro-sec__logo img {
        height: 55px;
    }

    .brand-intro-sec__title {
        font-size: 18px;
    }

    .brand-intro-sec__text {
        font-size: 14px;
    }

    .brand-intro-sec__bg.left {
        width: 55px;
    }

    .brand-intro-sec__bg.right {
        width: 167px;
    }

    .brand-intro-sec {
        min-height: 195px;
        padding: 40px 0 10px;
    }

    .brand-cat-sec__list li a b {
        font-size: 16px;
        display: block;
    }

    .brand-cat-sec__list li a {
        font-size: 10px;
        line-height: 1.2;
        height: 50px;
        padding: 0;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .brand-cat-sec__list li a span::after {
        display: none;
    }

    .brand-sec__cont {
        margin-top: 60px;
    }

    .brand-sec__cont-ttl span {
        font-size: 20px;
    }

    .brand-sec__cont-ttl {
        margin-bottom: 25px;
    }

    .brand-about-sec {
        padding-top: 55px;
    }

    .brand-about-sec__ttl {
        font-size: 20px;
    }

    .post-content h3+ul {
        margin: 15px 0;
    }

    .brand-about-sec__flex-box__ttl {
        font-size: 16px;
    }


    /* 利用規約 */
    .terms-sec {
        padding-bottom: 0;
    }

    .terms-sec__content {
        margin-top: 0;
    }

    .terms-sec__sin-ol li,
    .terms-sec__ul li {
        font-size: 13px;
    }

    .terms-sec__sin-ol>li {
        font-size: 15px;
    }

    .terms-sec__ul li::before {
        top: 9px;
        width: 4px;
        height: 4px;
    }

    .terms-sec__sec-ol>li {
        padding-left: 33px;
    }

    .terms-sec__sec-ol>li::before {
        margin-left: -33px;
    }

    .mypage .btn.btn-top_12 {
        margin-top: 60px;
    }


    /* .connection-list__item {
        max-width: initial;
        width: 48%;
    } */

    .connection-list__item img {
        width: 100%;
    }

    .connection-list__item {
        margin-bottom: 20px;
    }

    .news-shingle__connection {
        margin-bottom: 40px;
    }

    .lower-layer_heading {
        padding: 30px 0;
        height: 150px;
    }

    .lower-layer_heading p {
        margin-top: 0;
    }

    .page-title {
        margin-bottom: 0;
    }

    section {
        margin-top: 40px;
    }

    .wrap_base-white {
        margin-top: 30px;
        margin-bottom: 30px
    }

    .sp-br {
        display: block;
        margin-left: 0;
        ;
    }

    .news-single-list ul,
    .news-single-list__function ul,
    .news-shingle__connection ul {
        grid-template-columns: repeat(2, 1fr);
        column-gap: 15px;
        row-gap: 25px;
    }

    .news_title {
        font-size: 24px;
    }

    .news-cta {
        padding: 0 20px 40px;
    }

    .post-content .news-flex {
        margin: 60px auto 0;
    }

    .post-content .news-flex dt {
        text-align: center;
    }

    .news_use-list .news-flex .news-img {
        width: 100px;
    }

}



@media (min-width: 768px) {

    .col-md-6 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
    }

    .d-md-none {
        display: none !important;
    }
}


@media (min-width: 992px) {
    .d-lg-none {
        display: none;
    }

    .d-lg-block {
        display: block !important;
    }

    .col-lg-4 {
        -ms-flex: 0 0 33.333333%;
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }

}

@media screen and (max-width: 400px) {

    .feature-box h3+p {
        width: 100%;
    }
}