@charset "UTF-8";
/* CSS Document */
/* ------------------------------------------------------------------------
event
------------------------------------------------------------------------ */
/*------------------------ event 共通  ------------------------*/
.core_content{
    color: #000;
    counter-reset: number 0;
}
.core_content a:active,
.core_content a:active p,
.core_content a:active div,
.core_content a:active div p{
    color: #12A89E;
}
.bsc_mg{
    margin-bottom: 80px;
}
.mgb_10{
    margin-bottom: 10px;
}
.mgb_30{
    margin-bottom: 30px;
}
.w_full{
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
}
.max_900{
    max-width: 900px;
    margin: 0 auto;
}
span.line{
    background: linear-gradient(transparent 80%, #EF4138 80%);
}
.individual span.line{
    background: linear-gradient(transparent 80%, #D95252 80%);
}
.flex50{
    display: flex;
    flex-wrap: nowrap;
    margin-top: 20px;
}
.flex50 .flex50inner{
    width: 50%;
}
.name{
    font-size: 1.8rem;
}
.price{
    font-size: 1.5rem;
}
.bsc_hr{
    margin: 20px 0;
}
.img_bdr{
    border: solid 1px #ccc;
    vertical-align: top;
    display: inline-block;
}
/* slanting_heading */
.slanting_heading{
    text-align: center;
}
.slanting_heading_inner{
    display: inline-block;
    padding: 0 25px;
    position: relative;
    font-size: 1.6rem;
    font-weight: 700;
}
.slanting_heading_inner:before,
.slanting_heading_inner::after{
    position: absolute;
    content: "";
    background: #000;
    width: 3px;
    height: 20px;
    top: calc(50% - 5px);
}
.slanting_heading_inner::before{
    transform: rotate(-35deg);
    left: 0;
}
.slanting_heading_inner::after{
    transform: rotate(35deg);
    right: 0;
}
/* dot */
.dot{
    position: relative;
    margin-bottom: 5px;
    font-weight: 500;
    padding-left: 10px;
    text-indent: -10px;
}
.dot::before{
    content: "";
    display: inline-block;
    background-color: #000;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    margin-right: 5px;
    vertical-align: middle;
}
/* dot_line_heading */
.dot_line_heading{
    position: relative;
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 8px;
}
.dot_line_heading::before{
    content: "";
    display: block;
    position: absolute;
    background-color: #EF4138;
    width: 100%;
    height: 1px;
    left: 0;
    bottom: 10px;
}
.individual .dot_line_heading::before{
    background-color: #D95252;
}
.dot_line_heading .dot_line_heading_inner{
    position: relative;
    display: inline;
    padding: 3px;
    background-color: #fff;
    z-index: 1;
}
.dot_line_heading .dot_line_heading_inner::before{
    content: "";
    display: inline-block;
    background-color: #EF4138;
    height: 8px;
    border-radius: 50%;
    margin-right: 3px;
}
.individual .dot_line_heading_inner::before{
    background-color: #D95252;
}
/* square */
.square{
    position: relative;
    padding-left: 10px;
    text-indent: -10px;
}
.square::before{
    content: "";
    display: inline-block;
    background-color: #313131;
    width: 3px;
    height: 18px;
    margin-right: 5px;
    margin-bottom: 3px;
    vertical-align: middle;
}
/* text */
.bsc_txt{
    font-size: 1.5rem;
    line-height: 140%;
    text-align: justify;
}
.normal_txt{
    font-weight: 500;
    margin-bottom: 10px;
}
/*------------ event 共通 PC  ------------*/
@media screen and (min-width: 950px) {
    .core_content a:hover,
    .core_content a:hover p,
    .core_content a:hover div,
    .core_content a:hover div p{
        color: #12A89E;
    }
    .individual .core_content a:hover,
    .individual .core_content a:hover p,
    .individual .core_content a:hover div,
    .individual .core_content a:hover div p{
        color: #D95252;
    }
    .flex50_pc{
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
    }
    .flex50_pc .flex50inner_pc{
        width: calc(50% - 20px);
    }
}
/* -------------------------------
link_btn 
---------------------------------- */
.link_btn a{
    display: block;
    color: #fff;
    border: 2px solid #12A89E;
    background-color: #12A89E;
    box-shadow: 3px 3px 0 0 rgb(239 65 56 / 100%);
    border-radius: 30px;
    transition: opacity .25s ease;
    cursor: pointer;
    max-width: 450px;
    font-size: 1.6rem;
    letter-spacing: 0.5px;
    padding: 10px;
    margin: 0 auto;
    font-weight: 700;
    text-align: center;
    text-decoration: none;
}
.individual .link_btn a{
    color: #D95252;
    border: 2px solid #D95252;
    background-color: #fff;
    box-shadow: 3px 3px 0 0 rgb(217 82 82 / 100%);
}
.link_btn a:active{
    background-color: #fff;
    color: #12a89e;
}
.individual .link_btn a:active{
    background-color: #D95252;
    color: #fff;
    box-shadow: 3px 3px 0 0 rgb(170 170 170 / 100%);
}
/*------------ link_btn PC  ------------*/
@media screen and (min-width: 950px) {
    .link_btn a:hover{
        background-color: #fff;
        color: #12a89e;
    }
    .individual .link_btn a:hover{
        background-color: #D95252;
        color: #fff;
        box-shadow: 3px 3px 0 0 rgb(170 170 170 / 100%);
    }
}
/* -------------------------------
main_img
---------------------------------- */
.main_img_area {
    margin-top: 5px;
    margin-bottom: 30px;
}
.main_img_area .main_img{
    height: 180px;
    background-image: linear-gradient(90deg, rgba(233, 177, 171, 1), rgba(240, 226, 226, 1));
}
.main_img_area .main_img_inner{
    position: relative;
    background-image: url(../images/event/bg_check_main.png);
    background-repeat: repeat;
    width: 100%;
    height: 100%;
    background-size: 70px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}
.title_heading{
    font-size: 3rem;
    line-height: 120%;
    padding: 10px 25px;
    letter-spacing: -1px;
    font-weight: 700;
    background-color: #fff;
    color: #D95252;
    display: inline-block;
    z-index: 1;
}
.title_heading span.s_title_txt{
    font-size: 1.8rem;
}
/*------------ main_img PC  ------------*/
@media screen and (min-width: 950px) {
    .main_img_area .main_img{
        height: 250px;
    }
    .title_heading{
        font-size: 4rem;
    }
    .title_heading span.s_title_txt{
        font-size: 3rem;
    }
    .main_img_area .main_img_inner::before,
    .main_img_area .main_img_inner::after{
        position: absolute;
        content: "";
        background-size: contain;
        width: 200px;
        height: 200px;
        z-index: 0;
    }
    .main_img_area .main_img_inner::before{
        background-image: url(../images/event/bg_main01.png);
        left: 20px;
    }
    .main_img_area .main_img_inner::after{
        background-image: url(../images/event/bg_main02.png);
        right: 10px;
    }
}
/* -------------------------------
in_page_link 
---------------------------------- */
ul.in_page_link {
    position: relative;
    display: flex;
    flex-wrap: nowrap;
    gap: 0px;
}
ul.in_page_link li.link_item{
    flex: 0 0 50%;
}
ul.in_page_link a{
    background-color: #12a89e;
    border: 2px solid #12A89E;
    text-decoration: none;
    color: #fff;
    text-align: center;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 110%;
    padding: 5px;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    height: 60px;
}
.individual ul.in_page_link a{
    background-color: #D95252;
    border: 2px solid #D95252;
}
ul.in_page_link a::after{
    content: "";
    display: block;
    height: calc(tan(60deg) * 8px / 2);
    width: 8px;
    clip-path: polygon(0 0, 100% 0, 50% 80%);
    background-color: #fff;
    margin: 0 auto;
    margin-top: 5px;
}
ul.in_page_link li.link_item:not(:last-child) a{
    border-right: 1px solid #fff;
}
ul.in_page_link li.link_item a:active{
    border: 1px solid #12A89E;
    background-color: #fff;
    color: #12A89E;
}
.individual ul.in_page_link li.link_item a:active{
    border: 1px solid #D95252;
    background-color: #fff;
    color: #D95252;
}
ul.in_page_link li.link_item a:active::after{
    background-color: #12A89E;
}
.individual ul.in_page_link li.link_item a:active::after{
    background-color: #D95252;
}
/*------------ .in_page_link PC  ------------*/
@media screen and (min-width: 950px) {
    ul.in_page_link a{
        padding-top: 15px;
    }
    ul.in_page_link li.link_item a:hover{
        border: 1px solid #12A89E;
        background-color: #fff;
        color: #12A89E;
    }
    .individual ul.in_page_link li.link_item a:hover{
        border: 1px solid #D95252;
        background-color: #fff;
        color: #D95252;
    }
    ul.in_page_link li.link_item a:hover::after{
        background-color: #12A89E;
    }
    .individual ul.in_page_link li.link_item a:hover::after{
        background-color: #D95252;
    }
}
.sub_img{
    max-width: 700px;
    margin: 0 auto;
    background-color: #FBE1E0;
    border: 10px solid #FDCED1;
    margin-bottom: 10px;
}
/* -------------------------------
categorization_heading
---------------------------------- */
.categorization_heading{
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
    font-size: 2.5rem;
    font-weight: 700;
    text-align: center;
    position: relative;
    padding: 20px 0;
    margin-bottom: 20px;
}
.categorization_heading::before,
.categorization_heading::after{
    content: "";
    background-image:url(../images/event/bg_wave.svg) ;
    background-size: 30px;
    background-repeat: repeat-x;
    height: 13px;
    width: 100%;
    position: absolute;
    left: 0;
}
.individual .categorization_heading::before,
.individual .categorization_heading::after{
    background-image:url(../images/event/bg_wave02.svg) ;
}
.categorization_heading::before{
    top: 0;
}
.categorization_heading::after{
    bottom: 0;
}
.categorization_heading .categorization_heading_inner{
    position: relative;
    vertical-align: middle;
    display: inline-block;
    margin-bottom: 5px;
}
.individual .categorization_heading .categorization_heading_inner{
    margin-top: 5px;
}
.categorization_heading .categorization_heading_inner::before{
    content: "";
    position: absolute;
    top: calc(50% - 20px);
    left: -40px;
    background-image:url(../images/event/icon_flag.svg) ;
    background-repeat: no-repeat;
    background-size: contain;
    width: 35px;
    height: 40px;
    
}
.categorization_heading .categorization_heading_inner::after{
    content: "";
    position: absolute;
    top: calc(50% - 13px);
    right: -40px;
    background-image:url(../images/event/icon_megaphone.svg) ;
    background-repeat: no-repeat;
    background-size: contain;
    width: 33px;
    height: 26px;
    display: inline-block;
}
.individual .categorization_heading .categorization_heading_inner::before{
    background-image:url(../images/event/icon_cookie.svg) ;
    width: 35px;
    height: 40px;
}
.individual .categorization_heading .categorization_heading_inner::after{
    background-image:url(../images/event/icon_cupcake.svg) ;
    width: 28px;
    height: 35px;
    top: calc(50% - 17px);
    right: -35px;
}
/* -------------------------------
main_heading
---------------------------------- */
.main_heading{
    font-size: 2.3rem;
    font-weight: 700;
    line-height: 120%;
    border: 1px solid #EF4138;
    padding: 8px;
    background-image:url(../images/event/bg_check.png) ;
    background-repeat: repeat;
    background-size: 20px;
    box-shadow: 3px 3px 0px 0px rgba(239, 65, 56, 1);
    margin-bottom: 20px;
}
.main_heading::before{
    content: "";
    background-image: url(../images/event/icon_wave_01.svg);
    background-repeat: no-repeat;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 3px;
    background-size: contain;
    margin-bottom: -3px;
}
.individual .main_heading{
    border: 1px solid #D95252;
    background-image:url(../images/event/bg_check_02.png) ;
    box-shadow: none;
    border: none;
    border-top: 2px solid #E9B1AB;
    border-bottom: 2px solid #E9B1AB;
}
.individual .main_heading::before{
    display: none;
}
/* -------------------------------
sub_heading
---------------------------------- */
.sub_heading{
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 10px;
    text-indent: -15px;
    margin-left: 15px;
    line-height: 120%;
}
.sub_heading::before{
    content: "";
    display: inline-block;
    background: #EF4138;
    height: calc(tan(60deg) * 16px / 2);
    width: 12px;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    margin-right: 3px;
}
.individual .sub_heading::before{
    background: #E9B1AB;
}
/* -------------------------------
slide_container 共通
---------------------------------- */
.slide_container{
    position: relative;
}
.slide_container .slide_wrapper {
    position: relative;
    height: 425px;
    margin: 0 auto;
    overflow-x: auto;
    overflow-y: hidden;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
}
ul.slide_list{
    display: inline-grid;
    grid-auto-flow: column;
    grid-template-rows: repeat(1, auto);
    grid-auto-columns: 200px;
    gap: 20px;
}
ul.slide_list li.slide_item{
    position: relative;
}
ul.slide_list li.slide_item a{
    text-decoration: none;
}
ul.slide_list li.slide_item a .item_info{
    font-size: 1.5rem;
    line-height: 130%;
}
li.slide_item a .item_info .name{
    font-weight: 700;
    margin-bottom: 5px;
}
li.slide_item a .item_info .txt{
    text-align: justify;
}
li.slide_item a .item_info .price{
    margin-bottom: 10px;
}
/*------------ slide_container SP  ------------*/
@media screen and (max-width: 949px) {
    ul.slide_list{
        margin-left: 20px;
        margin-right: 20px;
    }
}
/*------------ slide_container PC  ------------*/
@media screen and (min-width: 950px) {
    .event .slide_container .slide_wrapper{
        overflow-x: hidden;
        margin-right:0;
        margin-left: 0;
    }
    .event .slide_container .slide_wrapper .slide_outer{
        position: absolute;
        left: 0;
        top: 0;
    }
    .event .slide_container ul.slide_list{
        grid-auto-columns: 180px;
    }
    .event .slide_container .slide_btn_set .slide_btn{
        border: 3px solid #12A89E;
        background-color: #12A89E;
    }
    .individual.event .slide_container .slide_btn_set .slide_btn{
        border: 3px solid #D95252;
        background-color: #D95252;
    }
    .event .slide_container .slide_btn_set .slide_btn.prev{
        left: 5px;
    }
    .event .slide_container .slide_btn_set .slide_btn.next{
        right: 5px;
    }
    .event .slide_container .slide_btn_set .slide_btn span.arrow_btn {
        border-top: 3px solid #fff;
        border-right: 3px solid #fff;
    }
    .event .slide_container .slide_btn_set .slide_btn:hover{
        border: 3px solid #12A89E;
        background-color: #fff;
        opacity: 1;
    }
    .individual.event .slide_container .slide_btn_set .slide_btn:hover{
        border: 3px solid #D95252;
    }
    .event .slide_container .slide_btn_set .slide_btn:hover span.arrow_btn{
        border-top: 3px solid #12A89E;
        border-right: 3px solid #12A89E;
    }
    .individual.event .slide_container .slide_btn_set .slide_btn:hover span.arrow_btn{
        border-top: 3px solid #D95252;
        border-right: 3px solid #D95252;
    }
}
/*------------- .slide_container.rkg -------------*/
.slide_container.rkg ul.slide_list{
    counter-reset: number 0;
    grid-auto-columns: 290px;
}
.slide_container.rkg ul.slide_list li.slide_item{
    border-right: 3px solid #EF4138;
    border-bottom: 3px solid #EF4138;
    padding: 15px;
}
.individual .slide_container.rkg ul.slide_list li.slide_item{
    border-right: 2px solid #E9B1AB;
    border-bottom: 2px solid #E9B1AB;
}
.slide_container.rkg ul.slide_list li::before{
    position: absolute;
    content: "";
    background-image: url(/images/event/icon_wave_03.svg);
    background-size: contain;
    background-repeat: no-repeat;
    top: 5px;
    left: 5px;
    width: 65px;
    height: 68px;
}
.individual .slide_container.rkg ul.slide_list li::before{
    background-image: url(/images/event/icon_wave_03_02.svg);
}
.slide_container.rkg ul.slide_list li::after{
    position: absolute;
    counter-increment: number 1;
    content: counter(number) " ";
    top: 5px;
    left: 29px;
    font-size: 40px;
    font-weight: 900;
    text-align: center;
    color: #EF4138;
    z-index: 1;
}
.individual .slide_container.rkg ul.slide_list li::after{
    color: #D95252;
}
.slide_container.rkg ul.slide_list li:first-of-type::before{
    background-image: url(/images/event/icon_wave_02.svg);
}
.individual .slide_container.rkg ul.slide_list li:first-of-type::before{
    background-image: url(/images/event/icon_wave_02_02.svg);
}
.slide_container.rkg ul.slide_list li:first-of-type::after{
    color: #fff;
}
.slide_container.rkg ul.slide_list li.slide_item a .item_img{
    max-width: 200px;
    margin: 0 auto;
}
.slide_container.rkg ul.slide_list li.slide_item a .item_info{
    text-align: center;
}
.slide_container.rkg ul.slide_list li.slide_item a .name{
    font-size: 1.8rem;
}
.slide_container.rkg ul.slide_list li.slide_item a .price{
    font-weight: 700;
}
/*------------- .slide_container.bsc -------------*/
.slide_container.bsc{
    padding-top: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #EF4138;
}
.individual .slide_container.bsc{
    border-bottom: 1px solid #AAAAAA;
}
.slide_container.bsc ul.slide_list li.slide_item a .name{
    font-size: 1.6rem;
}
/*------------- .slide_container.pku_img -------------*/
.slide_container.pku_img ul.slide_list{
    grid-auto-columns: 310px;
}
/*------------- .slide_container.pku_design -------------*/
.slide_container.pku_design ul.slide_list{
    grid-auto-columns: 225px;
}
/*------------- .slide_container.pku_design -------------*/
.pickup .item_info{
    font-size: 1.5rem;
}
.pickup .item_info .price{
    font-weight: 700;
    margin-bottom: 10px;
}
.pickup .item_info .txt{
    margin-bottom: 10px;
}
.pickup .item_info .link_btn{
    margin-bottom: 20px;
}
/* -------------------------------
pickup
---------------------------------- */
.pickup .pickup_detail{
    margin-bottom: 60px;
}
/* -------------------------------
txt_area_line
---------------------------------- */
.txt_area_line{
    padding: 0 15px 15px 5px;
    border-right: 3px solid #EF4138;
    border-bottom: 3px solid #EF4138;
    margin-bottom: 30px;
}
.individual .txt_area_line{
    padding: 0 15px 15px 5px;
    border-right: 3px solid #D95252;
    border-bottom: 3px solid #D95252;
    margin-bottom: 30px;
}
.txt_area_line .txt_outer{
    font-size: 1.6rem;
    line-height: 120%;
}
/*------------ txt_area_line PC  ------------*/
@media screen and (min-width: 950px) {
    .txt_area_line_outer{
        display: flex;
        flex-wrap: wrap;
    }
    .txt_area_line_outer .txt_area_line{
        width: calc(50% - 20px);
    }
    .txt_area_line_outer .txt_area_line:nth-of-type(odd){
        margin-right: 40px;
    }
}
/* -------------------------------
example
---------------------------------- */
/*.exp .voice */
.slide_container.exp ul.slide_list{
    grid-auto-columns: 270px;
}
.slide_container.exp .voice,
.slide_container.exp_general .voice{
    position: relative;
    padding: 10px;
    margin-bottom: 20px;
    background: #FFF5F5;
    text-align: justify;
}
.slide_container.exp .voice::before {
    content: "";
    position: absolute;
    top: 100%;
    left: calc(50% - 7px);
    background: #FFF5F5;
    height: calc(tan(60deg) * 15px / 2);
    width: 15px;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.slide_container.exp .voice .sub_heading{
    font-size: 1.3rem;
}
.slide_container.exp .voice .sub_heading::before {
    height: calc(tan(60deg) * 14px / 2);
    width: 10px;
}
/*.exp .item_img */
.slide_container.exp .item_img{
    text-align: center;
    background-color: #f7f7f7;
    padding: 10px;
    margin-bottom: 8px;
}
.slide_container.exp .item_img.cj img{
    max-width: 130px;
}
.slide_container.exp .item_img.sd img{
    max-width: 150px;
}
/*.exp item_info */
.slide_container.exp .item_info{
    font-weight: 700;
}
.slide_container.exp .item_info .name{
    font-size: 1.6rem;
    margin-bottom: 5px;
}
.slide_container.exp .item_info .use,
.slide_container.exp .item_info .product{
    font-size: 1.3rem;
}
.slide_container.exp .item_info .use{
    margin-bottom: 6px;
}
.slide_container.exp .item_info span.info_strong{
    font-size: 1.1rem;
    color: #fff;
    background-color: #ef4138;
    padding: 0 3px 3px;
    display: inline-block;
    margin-right: 5px;
}
.individual .slide_container.exp .item_info span.info_strong{
    background-color: #D95252;
}
/* -------------exp_general----------- */
.slide_container.exp_general{
    margin-bottom: 50px;
}
.slide_container.exp_general ul.slide_list{
    grid-auto-columns: 210px;
}
.slide_container.exp_general .voice{
    font-weight: 700;
    margin-bottom: 0;
    margin-top: 20px;
}
.slide_container.exp_general .voice::before {
    content: "";
    position: absolute;
    top: -12px;
    left: calc(50% - 7px);
    background: #FFF5F5;
    height: calc(tan(60deg) * 15px / 2);
    width: 15px;
    clip-path: polygon(50% 0, 100% 100%, 0 100%);
}
.slide_container.exp_general .name{
    font-size: 1.3rem;
    margin-top: 5px;
}

/* -------------------------------
goods
---------------------------------- */
ul.goods_list{
    display: inline-grid;
    grid-template-columns: repeat(2,1fr);
    gap: 20px;
}
ul.goods_list li.goods_item{
    position: relative;
}
ul.goods_list li.goods_item a{
    text-decoration: none;
}
ul.goods_list li.goods_item a .item_info{
    font-size: 1.5rem;
    line-height: 130%;
}
li.goods_item a .item_info .name{
    font-weight: 700;
    margin-bottom: 5px;
}
li.goods_item a .item_info .txt{
    text-align: justify;
}
li.goods_item a .item_info .price{
    margin-bottom: 10px;
}
/*------------ goods PC ------------*/
@media screen and (min-width: 950px) {
    ul.goods_list{
        grid-template-columns: repeat(5,1fr);
    }
}
/* -------------------------------
flow
---------------------------------- */
.flow .flow_area{
	text-align: center;
}
.flow .flow_area p{
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 120%;
}
/* flow_menu_wrapper */
.flow_menu_wrapper{
    margin-bottom: 30px;
}
.flow_menu_wrapper .flow_menu{
    display: flex;
    flex-wrap: nowrap;
}
.flow_menu_wrapper .flow_menu .flow_menu_item{
    position: relative;
    width: calc(50% - 8px);
    cursor: pointer;
    display: inline-block;
    background-color: #12A89E;
    border: 1px solid #12A89E;
    font-size: 1.5rem;
    color: #fff;
    margin-right: 15px;
    padding: 5px;
    border-radius: 5px;
}
.flow_menu_wrapper .flow_menu .flow_menu_item:last-of-type{
    margin-right: 0;
}
.flow_menu_wrapper .flow_menu .flow_menu_item.active{
    cursor:auto;
    background-color: #fff;
    border: 1px solid #ef4138;
    color: #ef4138;
}
.individual .flow_menu_wrapper .flow_menu .flow_menu_item.active{
    border: 1px solid #D95252;
    color: #D95252;
}
.flow_menu_wrapper .flow_menu .flow_menu_item.active::after{
    content: "";
    position: absolute;
    background: #ef4138;
    height: calc(tan(60deg) * 14px / 2);
    width: 18px;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    bottom: -16px;
    right: calc(50% - 9px);
}
.individual .flow_menu_wrapper .flow_menu .flow_menu_item.active::after{
    background: #D95252;
}
/* flow_wrapper */
.flow .flow_wrapper{
    display: none;
}
.flow .flow_wrapper.active{
    display: block;
}
.flow .flow_outer{
    margin: 0 auto;
    margin-top: 40px;
    display:flex;
    flex-wrap: wrap;
}
.flow .flow_outer .flow_inner{
    position: relative;
    width: calc(50% - 20px);
    line-height: 120%;
    background: #FFF5F5;
    border-radius: 14px;
    padding: 8px;
    margin-right: 20px;
}
.flow .flow_outer .flow_inner:last-of-type {
    margin-right: 0;
}
.flow .flow_outer .flow_inner::before {
    content: "";
    position: absolute;
    background: #FFF5F5;
    height: calc(tan(60deg) * 20px / 2);
    width: 10px;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    top: calc(50% - 9px);
    right: -10px;
}
.flow .flow_outer .flow_inner:last-of-type::before {
    content: "";
    background: transparent;
}
.flow .flow_inner .circle {
    color: #fff;
    background-color: #EF4138;
    border-radius: 50%;
    font-size: 1.8rem;
    width: 35px;
    height: 35px;
    line-height: 35px;
    text-align: center;
    font-weight: 700;
    top: -20px;
    left: 40%;
    position: absolute;
    z-index: 1;
}
.individual .flow .flow_inner .circle {
    background-color: #D95252;
}
.flow .flow_inner .flow_info{
    margin-top: 9%;
}
.flow .flow_info .flow_txt{
    display:flex;
    align-items: center;
    justify-content: center;
    height: 55px;
}
/* flow1 */
.flow #flow1 .flow_inner{
    margin-bottom: 40px;
}
/* time_limit */
.flow .time_limit{
    display:flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    text-align: left;
}
.flow .time_limit_inner{
    width: 100%;
    padding-top: 5px;
}
.flow .time_limit_estimation{
    margin-bottom: 40px;
}
.flow .time_limit_delivery{
    margin-bottom: 20px;
}
.flow .time_limit p{
    font-size: 14px;
    font-weight: normal;
    position: relative;
    line-height: 130%;
    font-weight: 500;
}
.flow .time_limit p::before {
    content: '\25B2';
    font-size: 1rem;
    line-height: 1.4;
    display: block;
    text-align: center;
}
/*flow txt_area_line */
.flow .txt_area_line{
    margin-top: 40px;
}
/* .solo */
@media screen and (min-width: 950px) {
    .flow .flow_wrapper.solo {
        width: 100%;
    }
    .flow .flow_wrapper.solo .flow_outer .flow_inner {
        position: relative;
        width: calc(25% - 20px);
    }
}

/*------------ flow PC ------------*/
@media screen and (min-width: 950px) {
    .flow_menu_wrapper .flow_menu .flow_menu_item{
        width: 40%;
        margin: 0 5%;
        cursor:auto;
        background-color: #fff;
        border: 1px solid #ef4138;
        color: #ef4138;
    }
    .flow_menu_wrapper .flow_menu .flow_menu_item::after{
        content: "";
        position: absolute;
        background: #ef4138;
        height: calc(tan(60deg) * 14px / 2);
        width: 18px;
        clip-path: polygon(0 0, 100% 0, 50% 100%);
        bottom: -16px;
        right: calc(50% - 9px);
    }
    .individual .flow_menu_wrapper .flow_menu .flow_menu_item{
        border: 1px solid #D95252;
        color: #D95252;
    }
    .individual .flow_menu_wrapper .flow_menu .flow_menu_item::after{
        background: #D95252;
    }
    .flow_menu_wrapper .flow_menu .flow_menu_item:last-of-type {
        margin-right: auto;
    }
    .flow .flow_container{
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
    }
    .flow .flow_wrapper{
        display: block;
        width: 40%;
        margin: 0 5%;
    }
}
/* -------------------------------
toggle
---------------------------------- */
.toggle_wrapper .toggle_item{
    border-top: 1px solid #ef4138;
    cursor: pointer;
}
.toggle_wrapper .toggle_item:last-of-type{
    border-bottom: 1px solid #ef4138;
}
.individual .toggle_wrapper .toggle_item{
    border-top: 1px solid #AAAAAA;
    cursor: pointer;
}
.individual .toggle_wrapper .toggle_item:last-of-type{
    border-bottom: 1px solid #AAAAAA;
}
/* toggle_q */
.toggle_wrapper .toggle_item .toggle_q{
    position: relative;
    padding: 8px 0;
    padding-right: 20px;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 130%;
}
.toggle_wrapper .toggle_item .toggle_q::after{
    content: "";
    position: absolute;
    background: #000;
    height: calc(tan(60deg) * 8px / 2);
    width: 10px;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    top: calc(50% - 2px);
    right: 8px;
}
.toggle_wrapper .toggle_item.open .toggle_q{
    color: #ef4138;
}
.toggle_wrapper .toggle_item.open .toggle_q::after{
    clip-path: polygon(50% 0, 100% 100%, 0 100%);
    background: #ef4138;
}
.individual .toggle_wrapper .toggle_item.open .toggle_q{
    color: #D95252;
}
.individual .toggle_wrapper .toggle_item.open .toggle_q::after{
    background: #D95252;
}
/* toggle_a */
.toggle_wrapper .toggle_item .toggle_a{
    font-size: 1.5rem;
    padding: 8px;
    text-align: justify;
    border-top: 1px solid #E5E5E5;
}
.toggle_wrapper .toggle_item .toggle_a .toggle_a_contents:not(:first-of-type){
    margin-top: 15px;
}
.toggle_wrapper .toggle_item .toggle_a span.toggle_a_heading{
    font-weight: 700;
    margin-bottom: 8px;
    display: block;
}
/*---------------- toggle_nmbs  --------------*/
ul.toggle_wrapper.toggle_nmbs{
    counter-reset: number 0;
}
ul.toggle_wrapper.toggle_nmbs li.toggle_item{
    position: relative;
}
ul.toggle_wrapper.toggle_nmbs li.toggle_item::after{
    position: absolute;
    counter-increment: number 1;
    content: counter(number) " ";
    top: 6px;
    left: 9px;
    font-size: 1.6rem;
    font-weight: 900;
    text-align: center;
    color: #fff;
    z-index: 1;
}
ul.toggle_wrapper.toggle_nmbs li.toggle_item::before{
    position: absolute;
    content: "";
    background-image: url(/images/event/icon_wave_01.svg);
    background-size: contain;
    background-repeat: no-repeat;
    top: 7px;
    left: 0;
    width: 25px;
    height: 25px;
}
.individual ul.toggle_wrapper.toggle_nmbs li.toggle_item::before{
    background-image: url(/images/event/icon_wave_01_02.svg);
}
ul.toggle_wrapper.toggle_nmbs li.toggle_item .toggle_q{
    padding-left: 30px;
}
/*------------ toggle_nmbs PC ------------*/
@media screen and (min-width: 950px) {
    ul.toggle_wrapper.toggle_nmbs li.toggle_item::before{
        top: 15px;
    }
    ul.toggle_wrapper.toggle_nmbs li.toggle_item::after{
        top: 14px;
    }
    .toggle_wrapper .toggle_item .toggle_q{
        padding: 16px 0;
    }
    .toggle_wrapper .toggle_item .toggle_a{
        margin-bottom: 20px;
    }
}
/*---------------- faq --------------*/
.faq .toggle_wrapper .toggle_item .toggle_q::before{
    content: "Q";
    background-color: #ef4138;
    border-radius: 50%;
    color: #fff;
    text-align: center;
    display: inline-block;
    width: 25px;
    height: 25px;
    margin-right: 3px;
    background-size: contain;
}
.individual .faq .toggle_wrapper .toggle_item .toggle_q::before{
    background-color: #D95252;
}
/*---------------- related --------------*/
.related .related_unit{
    margin-bottom: 30px;
}
.related .related_unit a{
    text-decoration: none;
}
.related .related_unit a:active div{
    color: #12A89E;
}
.individual .related .related_unit a:active div{
    color: #D95252;
}
.related .related_unit .related_img{
    margin-top: 10px;
}
.related .slanting_heading{
    min-height: 45px;
}
.related .slanting_heading_inner:before,
.related .slanting_heading_inner::after{
    background: #ef4138;
}
.individual .related .slanting_heading_inner:before,
.individual .related .slanting_heading_inner::after{
    background: #D95252;
}
/*------------ related PC ------------*/
@media screen and (min-width: 950px) {
    .related .related_wrapper{
        display: flex;
        flex-wrap: wrap;
    }
    .related .related_unit{
        width: calc(33% - 13px);
        margin-right: 20px;
    }
    .related .related_unit a:hover div{
        color: #12A89E;
    }
    .individual .related .related_unit a:hover div{
        color: #D95252;
    }
    .related .related_unit:nth-of-type(3n){
        margin-right: 0px;
    }
}
/* -------------------------------
recommend
---------------------------------- */
.recommend{
    margin-bottom: 60px;
}
.recommend .recommend_item{
    margin-bottom: 30px;
}
.recommend a{
    text-decoration: none;
    width: 100%;
}
.recommend .item_img{
    margin: 0 auto;
    max-width: 250px;
}
.recommend .item_info{
    font-size: 1.6rem;
    line-height: 130%;
    text-align: justify;
    margin-bottom: 10px;
}
.recommend .name{
    font-size: 1.8rem;
    font-weight: 700;
    margin-bottom: 5px;
}
.recommend .price{
    font-weight: 700;
    margin-bottom: 10px;
}
/*------------ related PC ------------*/
@media screen and (min-width: 600px) {
    .recommend .recommend_item_outer{
        display: flex;
        flex-wrap: wrap;
        grid-auto-columns: 280px;
    }
    .recommend .recommend_item_outer .recommend_item{
        width: calc(50% - 25px);
    }
    .recommend .recommend_item_outer .recommend_item:nth-of-type(odd){
        margin-right: 50px;
    }
}
