@charset "UTF-8";
/*---------------------*/
/*max-width: 1200px ←画面全体が縮小する幅*/
/*max-width: 979px ←タブレット版*/
/*max-width: 767px ←スマホ版*/
/*max-width: 425px ←スマホ版さらに小さい幅に対応*/
/*構成*/
/*
FONT
COMMON
MAIN
HEADER
ARTICLE
ELEMENT
COTENTS
L
UTILITY
*/
/*---------------------*/

/* ========== FONT ========== */



/* ========== COMMON ========== */

body {
    overflow-x: hidden;
}

/*可変幅表示にて使用*/
#page-body {
    overflow: hidden;
    width: 100%;
}

/* SMP表示での左右の余白を削除 */
@media (max-width: 979px) {
    #page-body {
        width: 100vw;
        margin: 0 -10px;
    }
}

@media (max-width: 767px) {
    #page-body {
        width: 100vw;
        margin: 0 -5px;
    }
}

/* カラー表示 */
#lp_main_wrap .black {
    background-color: #262626;
    color: #fff;
}

#lp_main_wrap .green {
    background-color: #507E8E;
    color: #fff;
}

#lp_main_wrap .cream {
    background-color: #EEECE8;
}

#lp_main_wrap .gray {
    background-color: #979FAA;
    color: #fff;
}

#lp_main_wrap .camel {
    background-color: #D2A481;
    color: #fff;
}

#lp_main_wrap .beige {
    background-color: #F3E7D9;
}


/* ========== MAIN ========== */

#lp_main_wrap {
    width: 100%;
    margin: 0 auto;
    word-wrap: break-word;
    color: #333;
    font-family: "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Noto Sans JP", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", MS PGothic, sans-serif;
    font-size: 16px;
    line-height: 2.25;
    letter-spacing: 0em;
    margin: 0 auto;
}

#lp_main_wrap * {
    box-sizing: border-box;
}

#lp_main_wrap li,
#lp_main_wrap dt,
#lp_main_wrap dd,
#lp_main_wrap img {
    line-height: 1;
    list-style: none;
}

#lp_main_wrap img {
    width: 100%;
}

#lp_main_wrap p {
    margin-bottom: 0;
}

#lp_main_wrap a,
#lp_main_wrap a::before,
#lp_main_wrap a::after {
    transition: all 0.5s ease 0s;
    color: inherit;
    opacity: 1;
    text-decoration: none;
}

#lp_main_wrap a:hover,
#lp_main_wrap a:active {
    color: inherit;
    opacity: 0.6;
    text-decoration: none;
}

@media (max-width: 767px) {
    #lp_main_wrap {
        line-height: 32px;
    }
}


/* ========== HEADER ========== */

/* lp_mv */
#lp_main_wrap .lp_mv {
    width: 100vw;
    margin: 0;
}

/* lp_mv */
#lp_main_wrap .lp_mv-pc img {
    width: 100%;
    max-width: 100%;
}

#lp_main_wrap .lp_mv-1440,
#lp_main_wrap .lp_mv-smp {
    display: none;
}

@media (max-width: 1440px) {
    #lp_main_wrap .lp_mv_1920 {
        display: none;
    }

    #lp_main_wrap .lp_mv-1440 {
        display: block;
    }
}

@media (max-width: 767px) {
    #lp_main_wrap .lp_mv-1440 {
        display: none;
    }

    #lp_main_wrap .lp_mv-smp {
        display: block;
    }
}



/* ========== ARTICLE ========== */

/* lp_main */
#lp_main_wrap .lp_main {
    margin: 0 auto;
    max-width: 1140px;
}

@media (max-width: 767px) {
    #lp_main_wrap .lp_main {
        width: 100%;
    }
}

/* ========== ELEMENT ========== */

/*slider*/
#lp_main_wrap .slider_item {
    width: 47.3%;
    position: relative;
}

#lp_main_wrap .slider_item .slick-dots {
    position: absolute;
    bottom: 2.5%;
    left: 40.5%;
}

#lp_main_wrap .slick-dotted.slick-slider {
    margin-bottom: 0;
}

#lp_main_wrap .slick-dots li {
    margin: 0;
    width: 12px;
}

#lp_main_wrap .slick-dots li img {
    width: 100.02%;
    overflow: hidden;
}

#lp_main_wrap .slick-dots li button:before {
    opacity: 1;
    color: #BBBBBB;
}

#lp_main_wrap .slick-dots li.slick-active button:before {
    opacity: 1;
    color: #fff;
}

@media (max-width: 767px) {
    #lp_main_wrap .slider_item {
        width: 100%;
    }

    #lp_main_wrap .slick-dotted .slick-slider {
        margin-bottom: 40px;
    }
}

/* ========== LEAD ========== */

/* lp_lead */
#lp_main_wrap .lp_lead {
    margin: 100px auto 150px;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 2.25;
    text-align: center;
}

#lp_main_wrap .lp_lead .lp_lead_inner {
    margin-bottom: 30px;
}

#lp_main_wrap .lp_lead h3 {
    font-weight: 700;
    font-size: 20px;
    letter-spacing: 0.08em;
    margin-bottom: 26px;
}

#lp_main_wrap .lp_lead span {
    color: #888888;
    font-size: 14px;
}

@media (max-width: 767px) {
    #lp_main_wrap .lp_lead {
        margin: 58px auto 80px;
        padding: 0 7% 0;
    }
    #lp_main_wrap .lp_lead h3 {
        font-size: 20px;
        line-height: 2;
        margin-bottom: 16px;
    }
    #lp_main_wrap .lp_lead span {
        display: inline-block;
        margin-top: 18px;
        line-height: 1.8;
    }
}

/* ========== NAV ========== */
#lp_main_wrap .lp_nav {
    color: #333;
    font-size: 13px;
    font-style: normal;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.06em;
}

#lp_main_wrap .lp_nav ul {
    width: 500px;
    display: flex;
    align-items: flex-start;
    align-content: space-between;
    gap: 40px;
    margin: 0 auto;
}

#lp_main_wrap .lp_nav a {
    line-height: 1.46;
}

#lp_main_wrap .lp_nav img {
    margin-bottom: 12px;
}
#lp_main_wrap img.nav_color {
    margin-top: 8px;
    margin-bottom: 0;
}
@media (max-width: 767px) {
    #lp_main_wrap .lp_nav ul {
        width: 100%;
        flex-wrap: wrap;
        row-gap: 33px;
        column-gap: 5px;
        justify-content: center;
    }
    #lp_main_wrap .lp_nav li {
        max-width: 140px;
        width: 49%;
    }
}


/* ========== SEC ========== */
#lp_main_wrap .lp_sec_wrap {
    max-width: 1140px;
    margin: 0 auto 150px;
}
#lp_main_wrap .lp_sec_wrap h3 {
    display: block;
    font-weight: 400;
    font-size: 36px;
    line-height: 1.3;
    letter-spacing: 0.05em;
    text-align: center;
    margin: 0 auto 50px;
    color: #333;
}
#lp_main_wrap .lp_sec_wrap .lp_sec_color_01 {
    width: 212px;
    height: 10px;
    margin: 10px 0 45px;
}
#lp_main_wrap .lp_sec_wrap .lp_sec_color_02 {
    width: 255px;
    height: 10px;
    margin: 10px 0 38px;
}
#lp_main_wrap .lp_sec_wrap .lp_sec_color_03 {
    width: 212px;
    height: 10px;
    margin: 10px 0 38px;
}

#lp_main_wrap .lp_sec_content_main {
    display: flex;
    align-items: center;
    margin-bottom: 80px;
}

#lp_main_wrap .flex-right {
    flex-direction: row-reverse;
}

#lp_main_wrap .lp_sec_img {
    width: 540px;
}

#lp_main_wrap .lp_sec_text {
    padding: 50px 70px 0 80px;
    width: 600px;
}

#lp_main_wrap .lp_sec_text .credit_name {
    font-weight: 700;
    font-size: 40px;
    line-height: 1.3;
    letter-spacing: 0.05em;
    margin-bottom: 0px;
    text-align: left;
}

#lp_main_wrap .lp_sec_text .credit_name_sub {
    font-size: 22px;
    margin-bottom: 15px;
    font-weight: 700;
    letter-spacing: 0.05em;
}

#lp_main_wrap .lp_sec_text .credit_name span {
    font-size: 20px;
    vertical-align: bottom;
}

#lp_main_wrap .lp_sec_text .credit_price {
    display: inline-block;
    font-weight: 700;
    font-size: 20px;
    letter-spacing: 0.05em;
    margin: 40px 0;
    border-bottom: solid 1px;
    line-height: 1.2;
    text-underline-offset: 30%;
}

#lp_main_wrap .lp_sec_text .credit_info span {
    color: #888888;
}

@media (max-width: 767px) {
    #lp_main_wrap .lp_sec_wrap {
        width: 100%;
        margin: 0 auto 80px;
    }

    #lp_main_wrap .lp_sec_wrap:nth-of-type(2),
    #lp_main_wrap .lp_sec_wrap:nth-of-type(4) {
        margin-bottom: 80px;
    }

    #lp_main_wrap .lp_sec_img {
        width: 100%;
        min-width: 0;
    }

    #lp_main_wrap .lp_sec_wrap h3 {
        font-size: 30px;
        margin-bottom: 40px;
    }

    #lp_main_wrap .lp_sec_wrap .lp_sec_color {
        margin-bottom: 30px;
    }

    #lp_main_wrap .lp_sec_content_main {
        display: block;
        margin-bottom: 40px;
    }

    #lp_main_wrap .lp_sec_text {
        padding: 13% 8% 0;
        font-size: 14px;
        width: 100%;
    }

    #lp_main_wrap .lp_sec_text .credit_name_sub {
        font-size: 20px;
    }

    #lp_main_wrap .lp_sec_text .credit_name {
        font-size: 32px;
        line-height: 1.31;
        margin-top: 0;
    }

    #lp_main_wrap .lp_sec_text .credit_price {
        margin: 30px 0 20px;
    }
    #lp_main_wrap .lp_sec_wrap .lp_sec_color_01,
    #lp_main_wrap .lp_sec_wrap .lp_sec_color_02,
    #lp_main_wrap .lp_sec_wrap .lp_sec_color_03 {
        margin-bottom: 33px;
    }
}


/*section btn*/
#lp_main_wrap .sec_btn {
    width: 100%;
    max-width: 600px;
    height: 70px;
    display: block;
    position: relative;
    border: solid 1px #333;
    font-size: 20px;
    font-weight: 700;
    color: #333;
    letter-spacing: 0.1em;
    text-align: center;
    line-height: 70px;
    margin: 80px auto 0;
}

#lp_main_wrap .sec_btn::after {
    display: block;
    content: '';
    width: 10px;
    height: 10px;
    position: absolute;
    top: calc(50% - 4px);
    right: 20px;
    border-top: solid 1.5px #333;
    border-right: solid 1.5px #333;
    transform: rotate(45deg);
}

#lp_main_wrap .sec_btn:hover {
    color: #fff;
    background-color: #333;
}

#lp_main_wrap .sec_btn:hover::after {
    border-top: solid 1.5px #fff;
    border-right: solid 1.5px #fff;
}

#lp_main_wrap .lp_sec_content_lineup ul {
    display: flex;
    gap: 8px;
    justify-content: center;
    margin: 0 auto;
    width: 92%;
}

#lp_main_wrap .lp_sec_content_lineup ul li {
    width: 330px;
}

#lp_main_wrap .lp_sec_content_lineup p {
    font-weight: 700;
    font-size: 15px;
    line-height: 1.125em;
    letter-spacing: 0.05em;
    text-align: center;
    padding: 3%;
}

@media (max-width: 767px) {
    #lp_main_wrap .sec_btn {
        margin: 40px auto 0;
        width: 86%;
        font-size: 15px;
        line-height: 1.5;
        padding: 0.8em;
    }

    #lp_main_wrap .lp_sec_content_lineup ul {
        flex-wrap: wrap;
        justify-content: left;
        padding: 0 8% 0;
        width: 100%;
        gap: 5px;
    }

    #lp_main_wrap .lp_sec_content_lineup ul li {
        width: calc((100% - 5px) / 2);
    }

    #lp_main_wrap .sec_btn::after {
        top: calc(50% - 3px);
        width: 6px;
        height: 6px;
    }
    #lp_main_wrap .lp_sec_content_lineup p {
        font-size: 14px;
        line-height: 1.28;
    }

}

/* お届け時の注意 */
#lp_main_wrap .lp_attention {
    text-align: center;
    line-height: 2.28;
    font-size: 14px;
    color: #888;
    margin-bottom: 80px;
}

#lp_main_wrap .lp_attention h4 {
    color: #333;
    font-size: 18px;
    font-weight: 700;
    line-height: 2;
    margin-bottom: 10px;
    letter-spacing: 0.05em;
}

#lp_main_wrap .lp_attention li {
    line-height: 2.28;
}
@media (max-width: 767px) {
    #lp_main_wrap .lp_attention {
        padding: 0 7% 0;
        margin-bottom: 30px;
    }
}
/*下部ボタン*/
#lp_main_wrap .lp_btn {
    width: 100%;
    margin: 0 auto 80px;
    padding: 0;
    text-align: center;
}

#lp_main_wrap .lp_btn .lp_btn_inner {
    width: 90%;
    max-width: 1170px;
    margin: 0 auto;
}

#lp_main_wrap .lp_btn a {
    display: block;
    position: relative;
    width: 100%;
    max-width: 600px;
    background: #666666;
    margin: 0 auto 20px;
    padding: 2% 1%;
    text-align: center;
    font-size: 20px;
    font-weight: 500;
    color: #fff;
    line-height: 1;
    border: solid 1px #666666;
    letter-spacing: 0.1em;
}

#lp_main_wrap .lp_btn a:hover {
    background: #fff;
    color: #666666;
}

#lp_main_wrap .lp_btn a::after {
    display: block;
    content: '';
    width: 11px;
    height: 11px;
    position: absolute;
    top: calc(50% - 6px);
    right: 19px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    transform: rotate(45deg);
}

#lp_main_wrap .lp_btn a:hover::after {
    border-top: solid 1px #666666;
    border-right: solid 1px #666666;
}

@media (max-width: 767px) {
    #lp_main_wrap .lp_btn .lp_btn_inner {
        width: 85%;
    }

    #lp_main_wrap .lp_btn a {
        height: 60px;
        margin: 0 auto 20px;
        padding: 0;
        font-size: 15px;
        line-height: 60px;
        letter-spacing: 0.1em;
    }

    #lp_main_wrap .lp_btn a::after {
        width: 6px;
        height: 6px;
        top: calc(50% - 5px);
    }
}






/* ========== UTILITY ========== */
#lp_main_wrap .lp_viewsmp {
    display: none;
}

#lp_main_wrap .lp_viewpc {
    display: block;
}
#lp_main_wrap .attention-txt-pc {
    margin: 120px auto 20px;
}

@media (max-width: 767px) {
    #lp_main_wrap .lp_viewsmp {
        display: block;
    }

    #lp_main_wrap .lp_viewpc {
        display: none;
    }

    #lp_main_wrap .attention-txt-pc {
    margin: 80px auto 30px;
}
}