@charset "UTF-8";
@media screen and (min-width: 768px) {
    .show_sp {
        display: none !important;
    }
}

@media screen and (max-width: 767px) {
    .show_tabpc {
        display: none !important;
    }
}

.show_pc {
    display: none !important;
}
@media screen and (min-width: 1000px) {
    .show_pc {
        display: block !important;
    }
}

/*============================================================*/
/* 共通 */
/*============================================================*/
html {
    scroll-padding-top: 7.2463768116vw;
}
@media screen and (min-width: 768px) {
    html {
        scroll-padding-top: 45px;
    }
}

p {
    font-feature-settings: "palt";
    margin-bottom: 0;
}
a {
    font-feature-settings: "palt";
    margin-bottom: 0;
    letter-spacing: 0.1em;
}

.ruby {
    font-size: 0.7em;
}

figure {
    margin-block-end: 0;
}

ul {
    padding-inline-start: 0;
}

sup {
    font-size: 0.7em;
}

.text-note {
    font-size: 0.7em;
}

.indent {
    text-indent: -1em;
    padding-left: 1em;
}

.underline {
    text-decoration: underline;
    text-underline-offset: .2em;
    text-decoration-color: #707070;
}

.main_content img {
    height: auto;
}

/* wave-line */
.wave-line {
    display: inline-block;
    background: url(../img/wave.svg) repeat-x left bottom 3px / auto;
    padding-bottom: 3px;
}


h3{
    font-feature-settings: "palt";
    margin-bottom: 0;
}
h2{
    font-feature-settings: "palt";
    margin-bottom: 0;
}


/*============================================================*/
/* KV */
/*============================================================*/

.main_content{
    font-family: "fot-tsukuardgothic-std", sans-serif;
    font-style: normal;
}


/*============================================================*/
/* campain */
/*============================================================*/

.campain_main{
    background: linear-gradient(0deg, #FFFFE6 0%, #FFFFE8 20%,  #FFFFFF 100%);
    
    
}
.campain_main-inner{
    
    background-image: url(../img/lead_image.png);
    background-position: center center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover ;
}

/*============================================================*/
/* lead */
/*============================================================*/
.lead{
    margin: 0 auto;
    
    padding-top: 4vw;
    padding-inline: min(5vw, 30px);
    

}


.lead_main{
    max-width: 1080px;
    text-align: center;
    margin-inline: auto;
}
.lead_title{
    
}


.lead_title-text01{
    position: relative;
}
.lead_title-text02{
    position: absolute;
    width: min(18vw, 118px);
    top: 0%;
    right: 13%;
}

.lead_item{
    margin-left: 1px;

}

.lead_camp-title{
    padding-bottom: 2vw;
}

.lead_camp-title--text01{
    text-align: center;
    margin: 0 auto;
    font-size: clamp(14px, 3.2vw, 24px);
    color: #333333;
    letter-spacing: 0.05em;
    background: #FFFFFF;
    padding: 6px 28px 10px 18px;
    margin-inline: 13em;
    font-weight: 600;
    border-radius: 30px;
    filter: drop-shadow(0px 2px 4px rgb(128, 91, 17, 41%));
    margin-bottom: 16px;
    padding-left: 1.6em;
}
.lead_camp-title p{
    
    
}

.lead_camp-title--text01 span{
    font-size: 50%;
    vertical-align: 54%;
}
.lead_camp-title--text02{
    font-size: clamp(16px, 3.2vw, 24px);
    color: #333333;
    font-weight: 600;
    margin-bottom: 10px;
    letter-spacing: 0.05em;
}
.lead_camp-title--text03 {
    font-size: clamp(28px, 4.2vw, 50px);
    color: #D10B04;
    font-weight: 600;
    margin-bottom: 24px;
    
    
}

.lead_camp-title--text03_ul{
background: linear-gradient(transparent 80%, #FFFF8C 80% ,#FFFF8C 90%, rgb(255,255,140,0) 90%);
}


.lead_camp-title_attention{
    margin-inline: auto;
    max-width: 316px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    margin-bottom: 24px;
}

.lead_camp-title_attention--text{
    font-size: 16px;
    font-weight: 600;
    width: 154px;
    color: #D10B04;
    background: #FFFFFF;
    border: 1px solid #D10B04;
    padding: 4px 0px 4px 2px;
}


.lead_desc{
    font-family: "Yu Mincho", "游明朝", YuMincho, "游明朝体", serif;
    color: #333333;
    font-size: clamp(14px, 3.2vw, 20px);
    font-weight: 500;
    letter-spacing: 0.16em;
    line-height: 2em;
}




@media screen and (max-width: 1080px) {

.lead_title-text02{
    position: absolute;
    width: min(18vw, 118px);
    top: 0%;
    right: 6%;
}
    .lead_camp-title--text01 {
        
        padding: 6px 1em 7px 1em;
    }

}

@media screen and (max-width: 767px) {
    .campain_main-inner{
    
    background-image: url(../img/lead_image-sp.png);
   
}



    .lead_title-text01{
        padding: 6px 15px 7px 10px;
    }
    .lead_title-text02{
        
        top: 2%;
        right: -4%;
    }

    .lead_item{
        transform: translateX(-0.7rem);
        margin-bottom: 24px;
    }

    .lead_camp-title{
        padding: 0 0 2vw;
    }

    .lead_camp-title--text01{
         margin-inline: 2em;
         padding: 6px 18px 7px 18px;
    }
    
    .lead_camp-title--text03 {
        margin-bottom: 18px;
        
        
    }

    .lead_camp-title--text03_ul{
    background: linear-gradient(transparent 80%, #FFFF8C 80% ,#FFFF8C 90%, rgb(255,255,140,0) 90%);
    }


    .lead_camp-title_attention{
        max-width: 208px;
        gap: 6px;
    }

    .lead_camp-title_attention--text{
        font-size: 12px;
        width: 102px;
    }


    .lead_desc{
        margin-bottom: 20px;
        letter-spacing: 0.05em;
    }


}


/*============================================================*/
/* nav */
/*============================================================*/

.camp_nav{
    margin-inline: auto;
    max-width: 702px;
    padding-inline: min(6vw, 0);
}


.camp_nav_main{
    
    text-align: center;
    margin-bottom: 0 auto;
}

.camp_nav-main--title{
    text-align: center;
    color: #906631;
    font-size: clamp(18px, 3.2vw, 32px);
    letter-spacing: 0.16em;
    margin-bottom: min(8vw, 6px);
    line-height: 2em;
}
.camp_nav-main--title h3{
    font-weight: bold;
    display: inline-block;
    margin-inline: auto;
    position: relative;
    padding-inline: min(8vw, 64px);
    

}

.camp_nav-main--title h3::after {
    right: 0;
    transform: rotate(-70deg);
    content: "";
    position: absolute;
    top: 52%;
    display: inline-block;
    width: min(6vw, 42px);
    height: 2px;
    background-color: #906631;

}
.camp_nav-main--title h3::before {
    left: 0;
    transform: rotate(70deg);
    content: "";
    position: absolute;
    top: 52%;
    display: inline-block;
    width: min(6vw, 42px);
    height: 2px;
    background-color: #906631;

}


.camp_nav-main--price_img{
    margin-inline: auto;
    max-width: 702px;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    margin-bottom: 24px;
    column-gap: 6px;
}


.camp_nav-main--price_note{
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", sans-serif;
    font-size: 12px;
    font-weight: 500;
}

.underline{
    text-decoration: underline;
}

@media screen and (max-width: 767px) {

    .camp_nav{
    padding-inline: 6vw;
    padding-top: 0;
}
    .camp_nav-main--price_note{
    
    font-size: 10px;
    
}



}

/*============================================================*/
/* desc */
/*============================================================*/

.desc{
    margin-inline: auto;
    max-width: 890px;
    padding: 6vw 4vw 6vw;
    
}



.desc-main_note p{
    font-size: clamp(12px, 3.2vw, 20px);
    max-width: 580px;
    font-weight: bold;
    background: #ffffff;
    text-align: center;
    margin-inline: auto;
    padding-block: 1em;
}
.desc-main_note{
    filter: drop-shadow(0px 2px 4px rgb(128, 91, 17, 41%));
}
.desc-main_note-arrow {
    text-align: center;
    clip-path: polygon(54% 0, 46% 0, 50% 20%);
    background-size: 100% auto;
    padding: 15px 0 45px;
    background: #ffffff;

}

.desc-main h3{
    font-size: clamp(15px, 3.2vw, 24px);
    font-weight: bold;
    letter-spacing: 0.05em;
    display: inline-block;
    margin-inline: auto;
    padding-inline: min(4vw, 64px);
}


.desc-main_point01{
    
    padding-bottom: 34px;
    
}






.desc-main_point01-cont01--map figure{
    margin-bottom: 1em;
}
.desc-main_point01-cont01--map figure{
    margin-bottom: 1em;
}

.desc-main_point01-cont01--map p{
    font-size: clamp(14px, 3.2vw, 18px);
    letter-spacing: 0.16em;
    padding-left: 0.6em;
    line-height: 1.6em;
}


.desc-main_point01-cont01--block{
    display: grid;
    grid-template-columns: 1fr max-content;
    
    column-gap: 28px;
    align-items: end;
}



.desc-main_point01-cont02{
    text-align: center;
    color: #906631;
    font-size: clamp(18px, 3.2vw, 24px);
    letter-spacing: 0.16em;
    margin-bottom: min(8vw, 6px);
    line-height: 2em;
}






.desc-main_point01-cont01--block02{
    margin-inline: auto;
    max-width: 714px;
    
    margin-bottom: 6px;
}

.desc-main_point01-cont02_menu-innner--item{
    position: relative;
    padding-inline: 16px;
    padding-bottom: 26px;
    background: linear-gradient(transparent 6%, #FBADBA 6%);
}

.desc-main_point01-cont01-item_note{
    text-align: right;
    font-size: 12px;
}


.desc-main_point01-cont02_menu-innner{

    margin-inline: auto;
    max-width: 750px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 18px;
    
    padding-bottom: 18px;
}



.item_tag{
    position: absolute;
    top: 54%;
    left: -12%;
}


.hr {
        display: block;
        margin: 0 auto;
        width: 360px;

        border: 1.6px solid #B69B55;
        margin-block: 2vw;
    }


.desc-main_text{
    margin: 0 auto;
    max-width: 502px;
    position: relative;
    margin-bottom: 0.2em;
}
.desc-main_text ::after{
     right: -6px;
    content: "";
    position: absolute;
    top: 8%;
    display: inline-block;
    
    width: 2.4em;
    height: 2.4em;
    background-image: url(../img/title-b.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}
.desc-main_text ::before{
    left: -6px;
    content: "";
    position: absolute;
    top: 8%;
    display: inline-block;
    transform: scale(-1, 1);
    width: 2.4em;
    height: 2.4em;
    background-image: url(../img/title-b.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}




.desc-main_point02{
    
    padding-bottom: 6vw;
}




.desc-main_point02-cont01--map_item{
    margin-bottom: 23px;
}

.desc-main_point02-cont01--map figure{
    margin-bottom: 1em;
}
.desc-main_point02-cont01--map figure{
    margin-bottom: 1em;
}

.desc-main_point02-cont01--map p{
    font-size: clamp(14px, 3.2vw, 18px);
    letter-spacing: 0.16em;
    padding-left: 0.6em;
    line-height: 1.6em;
}


.desc-main_point02-cont01--block{
    display: grid;
    grid-template-columns: 1fr max-content;
    
    column-gap: 28px;
    align-items: end;
    
}



.desc-main_point02-cont02{
    text-align: center;
    color: #906631;
    font-size: clamp(18px, 3.2vw, 24px);
    letter-spacing: 0.16em;
    margin-bottom: min(8vw, 6px);
    line-height: 2em;
}






.desc-main_point02-cont01--block02{
    margin-left: 10px;
}

.desc-main_point02-cont02_menu{
    
    
}

.desc-main_point02-cont01-item_note{
    text-align: right;
    font-size: 12px;
}


.desc-main_point02-cont02_menu-innner{

    margin-inline: auto;
    max-width: 750px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 18px;
    
    padding-bottom: 18px;
}


.desc-main_point02-cont02_menu-innner--item{
    position: relative;
    padding-inline: 16px;
    padding-bottom: 26px;
    background: linear-gradient(transparent 6%, #9FDAC8 6%);
}
.item_tag{
    position: absolute;
    top: 54%;
    left: -9%;
    z-index: 1;
}



@media screen and (max-width: 767px) {
    .desc{
        padding-block: 16vw;
    }

    .desc-main_note p{
        
    }
    .desc-main_note{
            padding-inline: 6vw;
    }
    .desc-main_note-arrow {
        clip-path: polygon(54% 0, 46% 0, 50% 60%);
    
        padding: 15px 0 0px;

    }


    .desc-main_point01{
        padding-inline: 6vw;
        padding-top: 9vw;
        padding-bottom: 0;
    }
    .desc-main_point01-cont01--block{
        row-gap: 13px;
        grid-template-columns: 1fr;
        
}
    .desc-main_point01-cont01--map figure{
    margin-bottom: 0;
    }
    .desc-main_point01-cont01--map figure{
        margin-bottom: 0;
    }
    .desc-main_point01-cont02_menu-innner{
        row-gap: 6px;
        grid-template-columns: 1fr;
    }
    .desc-main_point02-cont01--map{
        padding-right: 40px;
    }
    .desc-main_point02-cont01--map_item{
        margin-inline: auto;
        width: 50%;
    }
    .desc-main_point01-cont02_menu{
        
    }

    

    .desc-main_point02{
        padding-inline: 6vw;
        padding-block: min(4vw, 70px);
    }



    .desc-main_point02-cont01--block{
        row-gap: 16px;
        grid-template-columns: 1fr;
        
    
}
    .desc-main_point02-cont01--block02{
        
    }
    .desc-main_point02-cont02_menu-innner{
        row-gap: 6px;
        grid-template-columns: 1fr;
    }
    .desc-main_point02-cont01--map_item{
        margin-inline: auto;
        width: 50%;
    }
    .desc-main_point02-cont02_menu{
        
    }
    .item_tag{
        left: -8%;
        width: 32%;
        top: 52%;
    }
    .hr{
        width: 45%;
        border: 1px solid #B69B55;
        margin-block: 4vw;
    }

    .desc-main_point01-cont01-item_note{
        font-size: 10px;
    }




    .desc-main_text ::after {
        top: 5%;
    }
        .desc-main_text ::before {
        top: 5%;
    }
}






.sp1_cart {
    text-align: center;
    margin-top: 16px;
    margin-left: 28px;
}
.cart_end {
    margin-top: 16px;
}


.cart_end-btn form {
    text-align: center;
    margin-top: 22px;
    margin-left: 24px;
}

.cart_num {
    margin-right: 30px;
}

.cart .select_wrapper:first-of-type {
    width: 104px;
    
}

.cart .select_wrapper {
    background-color:transparent;
}

.cart .select_wrapper select {
    color: #333;
    width: 80%;
    font-size: 18px;
    border: 1px solid #333;
    padding: 1rem 2.4rem 1rem 1.5rem;
    font-weight: 700;
    text-align: center;
    background-position: center right 16px;
}

.cart button {
    position: relative;
    color: #FFF;
    background: linear-gradient(90deg, #D10B04 0%, #FF746E 100%);
    line-height: 1;
    width: 330px;
    font-size: 20px;
    font-weight: bold;
    padding: 21px 0;
    transition: all .3s;
    border-radius: 32px;
    margin-left: -24px;
}
.cart button:hover {
    opacity: .7;
}
.cart_btn {
    display: inline-block;
    position: relative;
    margin-left: 40px;
}
.cart_btn:before {
    content: "";
    width: 18px;
    height: 16px;
    background: url(../img/cart_icon.svg) no-repeat center/100% auto;
    position: absolute;
    right: calc(100% + 25px);
    top: 50%;
    margin-top: -8px;
}



.code__btn {
    text-align: center;
    padding: 50px 0 0;
}

.code__btn a {
    font-size: 20px;
    width: 440px;
    padding: 16px 0 18px;
    border-radius: 50px;
    margin: auto;
    display: block;
    color: #F42A7F;
    background: #fff;
    transition: all .2s;
    font-weight: 700;
    position: relative;
}

.code__btn a:hover {
    opacity: .7;
}

.code__btn img {
    display: inline-block;
    width: 10px;
    transform: translateX(-5px);
    position: absolute;
    top: 50%;
    right: 20px;
    width: 10px;
    margin-top: -10px;
}

.cart-stop{
        font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", sans-serif;
    background-color: #fff;
    color: #D10B04;
    font-size: 18px;
    width: 90%;
    margin-right: 49px;
    font-weight: bold;
        margin-left: -28px;
        margin-inline: auto;
    letter-spacing: 0.04em;
}


@media screen and (max-width: 767px) {
    .cart-stop{
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", sans-serif;
    background-color: #fff;
    color: #D10B04;
    font-size: 18px;
    width: 92%;
    margin-right: 49px;
    font-weight: bold;
    margin-left: -28px;
    margin-inline: auto;
        margin-right: 3vw;
    }

    .cart .select_wrapper:first-of-type {
        width: 42%;
        
    }

    .cart .select_wrapper select {
        color: #333;
        width: 80%;
        font-size: 3.4vw;
        padding: 3.3vw 7vw 2.8vw 3vw;
        
    }

    .cart button {
        width: 94%;
        font-size: 4vw;
        padding: 5vw 0;
        border-radius: 9.8vw;
    }
    

    .cart_btn {
        
        margin-left: 8vw;
    }
    .cart_btn:before {
        width: calc(16 / 414 * 100vw);
        height: calc(16 / 414 * 100vw);
        right: calc(100% + calc(18 / 414 * 100vw));
        margin-top: calc(-9 / 414 * 100vw);
    }
    .dts_cart-note {
        font-size: calc(12 / 414 * 100vw);
        max-width: none;
    }

}
