@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200..900&display=swap');
/* common start */
#E_chugen19 .block-top-event--header,
#E_chugen03 .block-top-event--header, 
#E_chugen04 .block-top-event--header, 
#E_chugen05 .block-top-event--header, 
#E_chugen06 .block-top-event--header, 
#E_chugen07 .block-top-event--header, 
#E_chugen08 .block-top-event--header, 
#E_chugen09 .block-top-event--header, 
#E_chugen10 .block-top-event--header {
    display: none;
}

.pc-none {
    display: none;
}

.pane-contents {
    background-color: #F4F8F8;
}

.page-event .pane-contents .container .pane-main {
    width: auto;
    position: relative;
}
.pane-main::before {
    content: "";
    background: url(bg_after.png) no-repeat top;
    background-size: contain;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 6%;
    left: 0;
    right: 0;
    z-index: -1;
}
html[data-browse-mode=S] .pane-main::before{
    content: none;
}

.pane-left-menu {
    display: none;
}
.ochugen-main{
    padding: 0 0 80px;
    background: #FFF;
}

    html[data-browse-mode=S] .ochugen-main{
        padding-bottom: 36px;
    }

.read-text,
.ochugen .ochugen-wrap.ochugen-main-annotation-wrap {
    max-width: 1200px;
    margin: 50px auto 0;
    text-align: center;
    font-family: "Noto Serif JP", serif;
}
.ochugen-wrap.ochugen-main-annotation-wrap{
    background-color: #fff;
    text-align: center;
    box-shadow: 3px 3px 8px rgba(0, 0, 0, 0.2);
    padding: 60px 0 50px;
}
html[data-browse-mode=S] .read-text{
        padding: 0 20px;
        font-size: 15px;
        text-align: left;
    }
    html[data-browse-mode=S] .ochugen .ochugen-wrap.ochugen-main-annotation-wrap{
        margin: 40px 20px;
        padding: 30px;
        max-width: 100%;
    }

.block-top-event--header {
    font-size: 28px;
    font-weight: 700;
    line-height: 1.42;
    text-align: center;
    position: relative;
    margin-bottom: 66px;
}

.ochugen-block-top-event--header {
    font-size: 37px;
    font-weight: 400;
    line-height: 1.42;
    text-align: center;
    position: relative;
    font-family: "Noto Serif JP", serif;
    max-width: fit-content;
    margin:auto auto 80px;

}
.ochugen-block-top-event--header::after{
    content: "";
    position: absolute;
    background: url(kingyo.png) no-repeat center center;
    background-size: contain;
    left: -120px;
    top: -90px;
    width: 198px;
    height: 165px;
    opacity: 0.8;
}
html[data-browse-mode=S] 
    .ochugen-block-top-event--header {
        font-size: 25px;
    }
    html[data-browse-mode=S] .ochugen-block-top-event--header::after{
        width: 118px;
        height: 114px;
        left: -45px;
        top: -45px;
        z-index: -1;
    }

 .ochugen-aitesaki,
 #mileup_select,
 #ochugen_select,
 .ochugen-kakakutai
 {
    /* margin: 0 auto 0 !important; */
    padding-top: 140px;
 }

/* common end */


/* ochugen-breadcrumb start */
.ochugen .ochugen-breadcrumb .ochugen-breadcrumb-path {
    padding: 10px;
    margin: 0;
}

.ochugen .ochugen-breadcrumb .ochugen-breadcrumb-path-list li {
    padding-right: 5px;
    display: inline-block;
    font-size: 12px;
    font-weight: normal;
    line-height: 1.6;
}

.ochugen .ochugen-breadcrumb .ochugen-breadcrumb-path-list-item-home {
    padding: 0 0 0 15px;
    position: relative;
}

/* ochugen-breadcrumb end */

/* ochugen-main-visual start */
html[data-browse-mode=P] .ochugen-main-visual.ochugen-wrap{
    background: url(main-visual.jpg?11) no-repeat center center / cover;
    height: 468px;
    width: 100%;
}
html[data-browse-mode=S] .ochugen-main-visual.ochugen-wrap{
    background: url(main-visual_SP.jpg?11) no-repeat center center / cover;
    height: auto;
    aspect-ratio: 1/1;
}

.read-text{
    font-size: 20px;
    line-height: 2;
}

.ochugen .ochugen-main .ochugen-main-visual .ochugen-main-visual-text-sm,
.ochugen .ochugen-main .ochugen-main-visual .ochugen-main-visual-text-lg,
.ochugen .ochugen-main .ochugen-main-visual .ochugen-main-visual-text-slim {
    display: block;
    color: #000;
}

.ochugen .ochugen-main .ochugen-main-visual .ochugen-main-visual-text-sm,
.ochugen .ochugen-main .ochugen-main-visual .ochugen-main-visual-text-lg{
    font-family: '源ノ明朝';
}

.ochugen .ochugen-main .ochugen-main-visual .ochugen-main-visual-text-slim {
    font-family: '源ノ角ゴシック';
}

.ochugen .ochugen-main .ochugen-main-visual .ochugen-main-visual-text-sm {
    line-height: 1.45;
    font-size: 24px;
    letter-spacing: 0.02em;
}

.ochugen .ochugen-main .ochugen-main-visual .ochugen-main-visual-text-lg {
    line-height: 1.43;
    font-size: 48px;
    letter-spacing: 0.04em;
    margin-bottom: 84px;
}

.ochugen .ochugen-main .ochugen-main-visual .ochugen-main-visual-text-sm,
.ochugen .ochugen-main .ochugen-main-visual .ochugen-main-visual-text-lg {
    font-weight: 700;
}

.ochugen .ochugen-main .ochugen-main-visual .ochugen-main-visual-text-slim {
    font-weight: 400;
    font-size: 16px;
    color: #000;
}

.ochugen .ochugen-main .ochugen-main-annotation-pill {
    display: block;
    color: #E20000;
    font-size: 23px;
    font-family: "Noto Serif JP", serif;
    font-weight: bold;
    margin: 0 0 20px;
}

[data-browse-mode="S"] .ochugen .ochugen-main .ochugen-main-annotation-pill {
    font-size: 20px;
    line-height: 2;
}

.ochugen .ochugen-main .ochugen-main-annotation-text {
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 2;
    font-family: "Noto Serif JP", serif;
    font-size: 20px;
}
[data-browse-mode="S"] .ochugen .ochugen-main .ochugen-main-annotation-text {
    font-size: 14px;
    text-align: left;
    display: inline-block;
}
.ochugen .ochugen-main .freeship {
    background: #c30000;
    color: #fff;
    width: 235px;
    font-size: 16px;
    font-weight: 500;
    margin: 0 auto 10px;
    padding: 3px;
}

/* ochugen-main-visual end  */


/* ｼ start */
.ochugen-ninki-category {
    max-width: 1200px;
    margin: 0 auto;
    order: 3;
    padding: 0 0 100px;
}

.ochugen-ninki-category ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
}

.ochugen-ninki-category li {
    width: 220px;
    background: #fff;
}

.ochugen-ninki-category p {
    width: 220px;
    height: 72px;
    padding: 5px 10px 8px;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
}
/* end */

/* start */
.ochugen-kakakutai {
    order: 4;
    position: relative;
}
.ochugen-kakakutai::before{
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url(grid_bg.png) repeat center top;
    background-size: 100% auto;
}
[data-browse-mode="S"] .ochugen-kakakutai::before{
    display: none;
}
[data-browse-mode="S"] .ochugen-kakakutai .ochugen-block-top-event--header{
    margin-bottom: 40px;
}
[data-browse-mode="S"] .ochugen-kakakutai .ochugen-block-top-event--header::after{
    z-index: 0;
}
.ochugen-kakakutai-wrap{
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 0 60px;
}

[data-browse-mode="S"] .ochugen-kakakutai-wrap{
    padding-bottom: 40px;
}

.ochugen-kakakutai ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 32px;
}

.ochugen-kakakutai ul li a{
    transition: opacity .3s;
}

.ochugen-kakakutai ul li a:hover{
    opacity: 0.7;
}

.ochugen-kakakutai p {
    width: 276px;
    height: 90px;
    padding: 5px 10px;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    color: #000;
    background: #FFFFFF;
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    position: relative;
}

.ochugen-kakakutai .label {
    font-size: 15px;
    font-family: "Noto Serif JP", serif;
    line-height: 1.5;
    font-weight: 400;
}

[data-browse-mode="S"] .ochugen-kakakutai .label {
    font-size: 12px;
}

.ochugen-kakakutai .name {
    display: flex;
    flex-direction: column;
    position: relative;
    font-family: "Noto Serif JP", serif;
}

.ochugen-kakakutai .price {
    font-size: 16px;
    font-family: "Noto Serif JP", serif;
    font-weight: 400;
}

[data-browse-mode="S"] .ochugen-kakakutai .price {
    font-size: 13px;
}

.ochugen-kakakutai .price em{
    font-size: 26px;
    font-weight: 400;
}

[data-browse-mode="S"] .ochugen-kakakutai .price em{
    font-size: 21px;
    font-style: normal;
}


/*  end  */



/*  start */
.ochugen-aitesaki {
    position: relative;
    order: 1;
}
.ochugen-aitesaki::before{
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url(top_bg.png) repeat center top;
    background-size: 100% auto;
}
.ochugen-aitesaki__wrap{
    max-width: 1320px;
    margin: 0 auto;
    order: 2;
    padding: 0 0 100px;
    position: relative;
    z-index: 1;
}
html[data-browse-mode=S] .ochugen-aitesaki__wrap{
        width: 100%;
        padding-top: 80px
    }

.ochugen-aitesaki ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 32px;
}

.ochugen-aitesaki li {
    width: 239px;
    background: #fff;
}

.ochugen-aitesaki p {
    height: 56px;
    padding: 5px 10px 8px;
    font-family: "Noto Serif JP", serif;
    font-size: 20px;
    font-weight: 400;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
}
.ochugen-aitesaki .name{
    position: relative;
    align-items: flex-start;
}
.ochugen-aitesaki .name::before {
    content: ""; 
    position: absolute;
    background: url(yellow_allow.png) no-repeat center top;
    background-size: contain;
    width: 22px;
    height: 9px;
    top: 40px;
}
[data-browse-mode="S"] .ochugen-aitesaki .name::before {
    top: 32px;
}
/* end */


/*  start */
#ochugen_select {
    order: 4;
    position: relative;
    background: rgba(255,255,255,0.9);
    margin-top: 0px;
}
#ochugen_select::before{
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url(grid_bg.png) repeat center top;
    background-size: 100% auto;
    opacity: 0.6;
    z-index: 0;
}
.ochugen-contents-box{
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 0 60px;
    position: relative;
    z-index: 1;
}

html[data-browse-mode=P] .ochugen-contents-box .ochugen-block-top-event--header{
    margin-bottom: 4vw;
}
html[data-browse-mode=S] .ochugen-contents-box .ochugen-block-top-event--header{
    margin-bottom: 12vw;
}

.block-pickup-list-p--items > li {
    width: 200px;
}

/*  end */

#mileup_select {
    order: 3;
    position: relative; 
    padding-top: 0;
}
@media screen and (max-width: 1200px){
    #mileup_select {
        padding-top: 0px;
    }
}
#mileup_select::before{
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url(grid_bg.png) repeat center top;
    background-size: 100% auto;
}
.mileup-contents-box{
    display: none;
    max-width: 1200px;
    margin: 0 auto;
    padding: 114px 0 0;
    position: relative;
    z-index: 1;
}
html[data-browse-mode=S] .mileup-contents-box{
        max-width: 100%;
        padding: 0;
    }
#mileup_select_event_frame{
    text-align: center;
    width: 100%;
}
html[data-browse-mode=S] #mileup_select_event_frame{
    overflow-x: scroll;
}

#mileup_select_event_contents {
    padding: 40px;
    background: #fff;
    margin-top: 36px;
    box-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.3);
}

[data-browse-mode="S"] #mileup_select_event_contents {
    margin-left: 10px;
    padding: 20px 0 20px 40px;
}

#mileup_select_event_contents .append-event-frame {
    display: none;
}

#mileup_select_event_contents .append-event-frame.active {
    display: block;
}

#mileup_select_event_tab{
    display: inline-flex;
    justify-content: center;
    align-items: center;
    position: relative;
    list-style: none;
    background-color: #fff;
    border-radius: 30px;
    padding: 0;
}
html[data-browse-mode=S] #mileup_select_event_tab{
    width: 450px;
    margin: 0 20px;
}
#mileup_select_event_tab li {
    width: 120px;
    font-size: 25px;
    padding: 10px 0;
    text-align: center;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    position: relative;
    background-color: #fff;
    border-radius: 30px;
    line-height: 1;
}
[data-browse-mode="S"] #mileup_select_event_tab li {
    font-size: 15px;
    width: 90px;
}
#mileup_select_event_tab li.active {
    background-color: #00A1C7;
    color: #fff;
}
.mileup_button{
    display: flex;
    width: 100%;
    margin: 54px auto 0;
}
.search-btn{
    background-color: #F70009;
    border-radius: 40px;
    margin: auto;
    font-size: 20px;
    color: #fff;
    padding: 17px 130px;
    text-decoration: none;
}
html[data-browse-mode=S] .search-btn{
        padding: 4px 0;
        font-size: 16px;
        width: 80%;
        text-align: center;
    }
.search-btn:hover{
    opacity: 0.4;
    transition: 0.2s;
}

/*  start */
.ochugen-trivia {
    order: 6;
    position: relative;
    padding: 100px 0 158px;

} 
.ochugen-trivia::before{
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url(nami_bg.png) repeat center top;
    background-size: 100% auto;
}
.ochugen-trivia-wrap{
    width: 1200px;
    margin: 0 auto;
    margin-top: 80px;
    position: relative;
}

    html[data-browse-mode=S] .ochugen-trivia-wrap{
        width: 100%;
        margin-top: 0;
    }
    html[data-browse-mode=S] .ochugen-trivia .ochugen-trivia-text-area{
        background: none;
        background-color: #fff;
    }


.ochugen-trivia .ochugen-trivia-title {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.458;
    text-align: center;
}

.ochugen-trivia .ochugen-trivia-text-area {
    padding: 210px 155px 40px;
    background: url("ochugen-trivia.png") no-repeat top center;
    background-size: 100%;
}
    html[data-browse-mode=S] .ochugen-trivia .ochugen-trivia-text-area::before{
        content: "";
        background: url(ochugen-trivia_sp.png) no-repeat top center;
        background-size: 100%;
        width: 241px;
        height: 204px;
        display: block;
        position: absolute;
        top: -5%;
        right: 0;
        left: 0;
        margin: auto;
    }

.ochugen-trivia .ochugen-trivia-text-area-title {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 16px;
    padding-bottom: 11px;
    line-height: 1.44;
    position: relative;
}
.ochugen-trivia .ochugen-trivia-text-area-title::after{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    border-bottom: 1px solid #9B8641;
    content: "";
}

.ochugen-trivia .ochugen-trivia-text {
    font-size: 14px;
    font-weight: 400;
    line-height: 1.714;
    margin-bottom: 40px;
}
/* end  */


/* start */
.ochugen-list {
    order: 6;
    background: #FFF;
    margin: 0 auto;
    position: relative;
    padding: 80px 0;
}

html[data-browse-mode="P"] .ochugen-list .column h2 {
    font-size: 24px;
    font-weight: 700;
    text-align: center;
    border: 0;
    padding: 0;
    margin: 0 0 30px;
}

html[data-browse-mode="P"] .ochugen-list .column {
    width: 1200px;
    margin: 0 auto;
    padding: 40px 20px 20px;
    background: #E9F1F1;
}

html[data-browse-mode="P"] .ochugen-list .column ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    background: #FFF;
    padding: 30px 40px;
}

html[data-browse-mode="P"] .ochugen-list .column li {
    width: 500px;
}

html[data-browse-mode="P"] .ochugen-list .column li a {
    position: relative;
    display: block;
    border-bottom: 1px solid #E0E0E0;
    padding: 19px 40px 19px 10px;
    font-size: 16px;
}

html[data-browse-mode="P"] .ochugen-list .column li a:after {
    content: '';
    position: absolute;
    top: 21px;
    right: 22px;
    width: 10px;
    height: 10px;
    border-right: 2px solid #B40714;
    border-bottom: 2px solid #B40714;
    transform: rotate(-45deg);
}

html[data-browse-mode="P"] .ochugen-list .column li a:hover {
    opacity: .8;
}

html[data-browse-mode="S"] .ochugen-list .column {
    margin: 0 -15px 0;
    padding: 32px 15px 15px;
    background: #E9F1F1;
  }
  html[data-browse-mode="S"] .ochugen-list .column h2 {
    font-size: 20px;
    text-align: center;
    margin: 0 0 6.74vw;
    border: 0;
  }
  html[data-browse-mode="S"] .ochugen-list .column ul {
    background: #FFF;
    padding: 10px;
    margin: 0 2.33vw 0;
  }
  html[data-browse-mode="S"] .ochugen-list .column li {
    border-bottom: 1px solid #E0E0E0;
  }
  html[data-browse-mode="S"] .ochugen-list .column li a {
    position: relative;
    display: block;
    padding: 11px 10px;
  }
  html[data-browse-mode="S"] .ochugen-list .column li a:after {
    content: '';
    position: absolute;
    top: 21px;
    right: 12px;
    width: 8px;
    height: 8px;
    border-right: 2px solid #B40714;
    border-bottom: 2px solid #B40714;
    transform: rotate(-45deg);
  }
/*  end */



/* 1200px  */
@media screen and (max-width: 1200px) {


    /* common start */
    .block-event-page--accessory {
        width: 100%;
    }

    .ochugen .ochugen-wrap {
        max-width: 100vw;
    }

    .block-top-event--header {
        font-size: 2.333vw;
        margin-bottom: 5.5vw;
    }

    .block-top-event--header::after {
        bottom: 4.167vw;
    }

    .ochugen-block-top-event--header {
        margin-bottom: 5.5vw;
    }

    .ochugen-block-top-event--header::after {
        bottom: -0.833vw;
    }
/* ochugen-breadcrumb end */

/* ochugen-main-visual start */

.ochugen .ochugen-main .ochugen-main-visual .ochugen-main-visual-text-sm {
    line-height: 1.45;
    font-size: 1.667vw;
}

.ochugen .ochugen-main .ochugen-main-visual .ochugen-main-visual-text-lg {
    line-height: 1.43;
    font-size: 4vw;
    margin-bottom: 10.333vw;
}

.ochugen .ochugen-main .ochugen-main-visual .ochugen-main-visual-text-slim {
    font-size: 1.333vw;
}


/* ochugen-main-visual end  */


/* start */
.ochugen-ninki-category {
    max-width: 100vw;
    padding: 0 0 8.333vw;
}

.ochugen-ninki-category ul {
    gap: 1.667vw;
}

.ochugen-ninki-category li {
    width: 18.333vw;
}

.ochugen-ninki-category p {
    width: 18.333vw;
    height: 6vw;
    padding: 0.417vw 0.833vw 0.667vw;
    font-size: 1.5vw;
}
/*  end */

/* start */
.ochugen-kakakutai {
    padding: 60px 0 10px;
}

.ochugen-kakakutai ul {
    gap: 2.667vw;
    padding: 0 10px;
}
.ochugen-kakakutai li {
    width: calc((100% / 2) - 2.667vw);
    padding: 0 0 2.667vw;
}
.ochugen-kakakutai p {
    width: 100%;
    padding: 0.417vw 0.833vw;
    font-size: 23px;
}

/*  end  */



/*  start */
.ochugen-aitesaki {
    max-width: 100vw;
    padding: 0 0 8.333vw;
}

.ochugen-aitesaki ul {
    gap: 2.667vw;
}

.ochugen-aitesaki li {
    width: 45vw;
}

.ochugen-aitesaki p {
    width: 100%;
    height: 12vw;
    padding: 0.417vw 0.833vw 0.667vw;
    font-size: 18px;
}
/*  end */

/*  start */
.ochugen-trivia {
    width: 100vw;
    margin: 0 auto;
    padding: 22.44vw  4.667vw 1.667vw;
}

.ochugen-trivia .ochugen-trivia-text-area {
    padding:115px 6.333vw 8.333vw;
    background-color: #fff;
    position: relative;
}

.ochugen-trivia .ochugen-trivia-text-area-title {
    font-family: "Noto Serif JP", serif;
    margin-bottom: 1.333vw;
}

.ochugen-trivia .ochugen-trivia-text {
    font-size: 16px;
    font-family: "Noto Serif JP", serif;
    line-height: 1.714;
    margin-bottom: 6.333vw;
}
/* end  */


/* start */
.ochugen-list {
    width: 100vw;
    padding: 0;
}    
  }

.block-top-event--goods + .more-button {
    top: 30px;
}

.more-button a {
    border: 0px;
    border-radius: 4em;
    background: #CC0000;
    color: #fff;
    width: 170px;
    height: 40px;
    margin: auto;
}
.more-button a:after {
    border-right: 2px solid #FFFFFF;
    border-top: 2px solid #FFFFFF;
}


.top-button a{
    display: block;
    margin: auto;
    padding: 25px;
    font-size: 22px;
    width: 432px;
    background-color: #B52323;
    border-radius: 10px;
    color: #fff;
    text-align: center;
    text-decoration: none;
}

    html[data-browse-mode=S] .top-button a{
    width: 100%;
    padding: 15px 10px;
    font-size: 15px;
}

.top-button a:hover{
    opacity: 0.4;
    transition: 0.2s;
}
#ochugen_select_event_frame{
    overflow: hidden;
}

/*---------早期マイル-------*/

.souki-mile{
    background-color: #7FC4D1;
    order: 5;
    padding: 80px 0 100px;
    position: relative;
    z-index: 1;
}
html[data-browse-mode=S] .souki-mile{
        padding:20px;
        position: relative;
    }

.souki-mile-wrap {
    display: block;
    padding: 10px;
    max-width: 1320px;
    margin: 0 auto;
    font-size: 18px;
    background-color: #FFFFFF;
}
.souki-mile-inner{
    padding:78px  143px;
    border: 2px solid #B1983F;
    display: flex;
    flex-wrap: wrap;
}

    html[data-browse-mode=S]  .souki-mile-inner{
        padding: 30px 20px;
    }

.souki-mile-inner .read-text{
    width: 600px;
    margin: 16px auto 28px;
    font-family: "Noto Serif JP", serif;
}
.souki-mile-inner img{
    margin: auto;
    text-align: center;
}
.campaing-info-inner{
    display: none;
}
.campaing-info-inner p{
    font-size: 20px;
}
[data-browse-mode="S"] .campaing-info-inner p{
    font-size: 16px;
}
.campaing-info-inner p:nth-child(n+2){
    margin-top: 36px;
}
.campaing-info-inner span{
    font-size: 16px;
}
[data-browse-mode="S"] .campaing-info-inner span{
    font-size: 14px;
}
.campaing-info-inner ul {
    font-size: 16px;
    margin-top: 62px;
}
.campaing-info-inner.open{
    display: block;
    padding: 40px 56px;
    border: 1px solid #DAD0C3;
}
html[data-browse-mode=S] .campaing-info-inner.open{
    padding: 30px 15px;
    border: 1px solid #DAD0C3;
}
.campaing-period{
    text-align: center;
    width: 100%;
    position: relative;
    padding: 27px;
    border:1px solid #B1983F;
    font-family: "Noto Serif JP", serif;
    margin-bottom: 35px;
}

[data-browse-mode="S"] .campaing-period{
    padding: 27px 10px;
    font-size: 16px;
    line-height: 1.8;
}

.campaing-info-modal{
    font-family: "Noto Serif JP", serif;
    background-color: #DAD0C3;
    padding: 8px 0;
    width: 100%;
    display: flex;
    text-align: center;
    margin-top: 60px;
    position: relative;
    justify-content: center;
}
.campaing-info-modal::before,
.campaing-info-modal::after{
    content: '';
    width: 16px;
    height: 2px;
    display: block;
    background: #976F11;
    position: absolute;
    top: calc(50% - 0.8px);
    right: 20px;
    transition: 0.3s;
}
.campaing-info-modal::after{
    rotate: -90deg;
}
.campaing-info-modal:has(~ .open)::after{
    rotate: 0deg;
}

/*--------JAL社員セレクトのやつ--------*/
.ochugen-aitesaki .select-wrap p{
    width: inherit;
    height: inherit;
    margin: 0;
    padding: 0;
}

.ochugen-aitesaki .pickup-item{
    width: calc(637px - 20px);
    /* height: fit-content; */
    background-color: #fff;
    padding: 10px;
    border: 1px solid #3C9AD9;
}
.ochugen-aitesaki .select-wrap .pickup-list{
    flex-wrap: nowrap;
    padding: 0;
}

    html[data-browse-mode=S]  .ochugen-aitesaki .select-wrap{
        padding: 0 24px;
    }
    html[data-browse-mode=S]  .ochugen-aitesaki .select-wrap .pickup-list{
        flex-wrap: wrap;
    }

.ochugen-aitesaki .pickup-item__wrap{
    padding: 30px;
    border: 1px solid #3C9AD9;
    display: block;
    height: 100%;
}
.ochugen-aitesaki .pickup-item__wrap .image{
    width: 237px;
    height: 237px;
    display: block;
}
.ochugen-aitesaki .pickup-item__wrap .image img{
    width: 100%;
    height: 100%;
}

html[data-browse-mode=S]  .ochugen-aitesaki .pickup-item__wrap{
    padding: 36px 15px;
}
html[data-browse-mode=S]  .ochugen-aitesaki .pickup-item__wrap .image{
    /*width: 145px;
    height: 145px;*/
    margin: 0 auto !important;
}

.ochugen-aitesaki .pickup-item h4{
    font-size: 21px;
    font-weight: 700;
}

html[data-browse-mode=S] .ochugen-aitesaki .pickup-item h4{
    font-size: 16px;
}

.ochugen-aitesaki .pickup-item .lead{
    border: 1px solid #FCB800;
    background-color: #FADB88;
    padding: 8px 0;
    font-size: 23px;
    font-weight: 700;
    width: 100%;
    height: auto;
    text-align: center;
    margin:0 auto 7px ;
}
[data-browse-mode="S"] .ochugen-aitesaki .pickup-item .lead{
    margin-bottom: 16px;
}
html[data-browse-mode=P] .ochugen-aitesaki .pickup-item .flex-box{
    display: flex;
    flex-wrap: wrap;
}
html[data-browse-mode=P] .ochugen-aitesaki .pickup-item .flex-box.sp-only{
    display: none;
}
html[data-browse-mode=S] .ochugen-aitesaki .pickup-item .flex-box{
    display: block;
}
html[data-browse-mode=S] .ochugen-aitesaki .pickup-item .flex-box.pc-only{
    display: none;
}
html[data-browse-mode=P] .ochugen-aitesaki h3{
    margin-top: 100px;
}

.pickup-point-wrap{
    width: 100%;
    margin-top: 16px;
}
.price-wrap{
    width: calc(100% - 260px);
    margin-left: auto;
}
[data-browse-mode="S"] .price-wrap {
    width: 100%;
    text-align: right;
    margin-bottom: 20px;
}
html[data-browse-mode=P] .price-wrap .price{
    width: 100%;
}

.flex-box__inner{
    margin-left: 23px;
    width: calc(100% -  260px);
}
html[data-browse-mode=S] .flex-box__inner{
    margin-left: 0px;
    margin-top: 16px;
    width: 100%;
}
.ochugen-aitesaki .comment-wrap{
    display: inline-flex;
    width: 100%;
    text-align: center;
    justify-content: center;
}
.ochugen-aitesaki .jal-staff{
    display: flex;
    align-items: center;
}
.ochugen-aitesaki .staff-wrap{
    margin-right: 5px;
}
.ochugen-aitesaki .staff-wrap p{
    margin-top: 13px;
    font-size: 12px;
    font-weight: 800;
}
.ochugen-aitesaki .jal-staff img{
    width: 112px;
    height: 112px;
    border-radius: 50%;
}
html[data-browse-mode=S]  .ochugen-aitesaki .jal-staff img{
    width: 70px;
    height: 70px;
    border-radius: 50%;
}
.obi{
    display: block;
    background-color: #26608E;
    color: #fff;
    font-size: 11px;
    font-weight: 800;
    padding: 2px 8px;
}
html[data-browse-mode=S] .obi{
    font-size: 11px;
}

.ochugen-aitesaki .pickup-point.pickup-point{
    position: relative;
    font-size: 19px;
    font-family: "Noto Serif JP", serif;
    text-align: center;
    width: 100%;
    height: inherit;
    padding: 0;
    font-weight: normal;
    margin-top: 16px;
    display: block;
}

html[data-browse-mode=S] .ochugen-aitesaki .pickup-point.pickup-point{
    text-align: center;
    width: 100%;
    position: relative;
    font-size: 14px;
}
html[data-browse-mode=S] .ochugen-aitesaki .pickup-point__comment.pickup-point__comment{
    text-align: center;
    width: 100%;
    position: relative;
    font-size: 15px;
}
html[data-browse-mode=S] h3{
    font-size: 18px;
    margin-top: 30px;
}

.pickup-point::before,
.pickup-point::after{
    content: "";
    height: 1px;
    width: 29px;
    position: absolute;
    background-color: #000000;
}
.pickup-point::before{
    right: 80%;
    top: 55%;
}
.pickup-point::after{
    left: 80%;
    top: 55%;
}
html[data-browse-mode=S] .pickup-point::before,
html[data-browse-mode=S] .pickup-point::after{
    content: "";
    height: 1px;
    width: 20px;
    position: absolute;
    background-color: #000000;
}
html[data-browse-mode=S] .pickup-point::before{
    right: 88%;
    top: 55%;
}
html[data-browse-mode=S] .pickup-point::after{
    left: 88%;
    top: 55%;
}

.ochugen-aitesaki .select-wrap .pickup-point__comment.pickup-point__comment{
    width: 100%;
    height: fit-content;
    margin: 23px auto 16px ;
    font-family: "Noto Sans JP", 'Noto Sans Japanese', sans-serif, "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 17px;
    font-weight: normal;
    text-align: left;
}
html[data-browse-mode=S].pickup-point__comment.pickup-point__comment {
    font-size: 15px;
}

.pickup-point__notice{
    font-size: 14px;
    margin: 14px auto 25px;
}
.pickup-item__link{
    display: block;
    color: #000;
    margin-top: 16px;
    text-decoration: underline;
}
.pickup-item .price{
    font-size: 40px;
    font-weight: 700 !important;
    display: block;
    padding: 0;
    align-items: self-end;
    font-family: "Noto Sans JP";
}
html[data-browse-mode=S] .pickup-item .price{
    font-size: 24px;
    text-align: right;
    padding-right: 10px;
}

.pickup-item .price .tax-notice{
    font-size: 20px;
    font-weight: normal;
}
html[data-browse-mode=S] .pickup-item .price .tax-notice{
    font-size: 12px;
}

.ochugen-aitesaki .pickup-item .button a{
    padding: 13px 0;
    background-color: #F70009;
    color: #fff;
    font-size: 19px;
    font-weight: 800;
    text-align: center;
    margin: 25px auto 8px;
    width: 90%; 
    display: block;
    border-radius: 30px;
    position: relative;
    transition: opacity .3s;
}
.ochugen-aitesaki .pickup-item .button a:hover{
    opacity: 0.7;
}
[data-browse-mode="S"] .ochugen-aitesaki .pickup-item .button a{
    font-size: 15px;
}
.ochugen-aitesaki .pickup-item .button a::after{
    content: "";
    width: 12px;
    height: 12px;
    border-top: 2px solid #FFF;
    border-right: 2px solid #FFF;
    position: absolute;
    top: 50%;
    right: 25px;
    transform: translateY(-50%) rotate(45deg);
}


#footer_pagetop {
    position: fixed;
    top: auto;
    bottom: 15px;
    right: 8px;
    z-index: 5;
}
/*#footer_pagetop a{
    background: url(move_top.png) no-repeat center center;
    background-size: contain;
    width: 191px;
    height: 180px;
    display: block;
    position: relative;
    transition: 0.3s;
}
#footer_pagetop a::after{
    content: none;
}*/
/*html[data-browse-mode=S] #footer_pagetop a{
        background: url(move_top.png) no-repeat center center;
        background-size: contain;
        width: 91px;
        height: 80px;
        display: block;
        position: relative;
        transition: 0.3s;
    }
    html[data-browse-mode=S] #footer_pagetop a:after{
        content: none;
    }*/

h3{
    font-size: 28px;
    font-family: "Noto Serif JP", serif;
    font-weight: normal;
    position: relative;
    padding-bottom: 20px;
    text-align: center;
    margin: 30px auto;
}
h3:before{
    content: '';
    position: absolute;
    background: url(text_line.png) no-repeat center center;
    top: 90%;
    width: 100%;
    height: 20%;
    background-size: contain;
    display: block;
}


/*-- 対象ショップから探す --*/
html[data-browse-mode] .sec-shop {
    background-color: #fff;
    padding: 48px 35px;
}
html[data-browse-mode=S] .sec-shop {
    padding: 23px 7px;
    margin-inline: 20px;
    width: 420px;
    overflow-x: scroll;
}
html[data-browse-mode] .shop-list {
    margin: unset;
    width: 100%;
}html[data-browse-mode="S"] .sec-shop .shop-list {
    gap: 20px 20px;
    width: 646px;
}
.sec-shop .shop-list {
    display: flex;
    flex-wrap: wrap;
    gap: 26px 30px;
    max-width: 1200px;
}
.sec-shop .shop-list li {
    position: relative;
    width: calc((100% - 90px) / 4);
}

.sec-shop a {
    color: inherit;
    text-decoration: none;
    transition: all 0.3s;
    cursor: pointer;
}
.sec-shop img {
    max-width: 100%;
    vertical-align: top;
}
figure.shop-img img {
    border: 1px solid #d5d5d5;
    border-top: none;
}
.sec-shop .shop-list li .shop-name {
    margin-top: 6px;
    font-size: 12px;
    line-height: 1.4;
}
[data-browse-mode="S"] .sec-shop .shop-list li .shop-name {
    font-size: 10px;
}

.block-event-page--accessory,
#block_of_itemhistory{
    display: none
}


.ochugen-top-button{
    background: #FFF;
    position: relative;
    z-index: 1;
    padding-bottom: 80px;
}
.ochugen-top-button a{
    font-size: 24px;
    font-weight: bold;
    display: block;
    width: 490px;
    height: 80px;
    border-radius: 40px;
    border: 1px solid #707070;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
}
[data-browse-mode="S"] .ochugen-top-button{
    padding: 30px 20px 50px;
}
[data-browse-mode="S"] .ochugen-top-button a{
    font-size: 15px;
    width: 100%;
    height: 45px;
}