@charset "UTF-8";

/* wrap.container */
body {
    font-family: "Montserrat", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Verdana", "メイリオ", "Meiryo, Osaka", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.bg_popup {
    background-image: url(https://www.infolens.com/wp-content/uploads/2022/06/bg_wood.jpg);
    background-repeat: repeat-y;
    background-size: contain;
}

.wrap_section_pu {
	position: relative;
    max-width: 1000px;
    margin: auto;
    margin-top: 4rem;
    padding: 3rem;
    background-color: #ffffff;
}

#goods .row {
    margin-bottom: 2rem;
}


.wrap_venue {
    border-top: solid 1px #222222;
    margin-top: 5rem;
    padding-top: 3rem;
}

.kansen {
    margin: 3rem auto;
}

.kansen.wrap_section_pu {
    margin: 2rem auto;
}

.kansen_toggle {
    font-weight: 500;
    display: block;
    text-align: center;
}

.kansen_toggle,
.kansen_toggle:hover,
.kansen_toggle:active,
.kansen_toggle:focus,
.kansen_toggle:visited {
    color: #222222;
}


/* header */
.for_english {
    background-color: #222222;
    color: #ffffff;
    text-align: center;
    padding: 1.5rem 0;
    display: none;
}


/* img */
.img_ribbon {
    width: 49%;
}

.img_pin {
	text-align: center;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%,-20%);
}

/* slider img */
.slider_img_header_pu {
    margin-top: 3rem;
}

.slide-arrow {
    z-index: 100;
}

.slick-list {
    max-width: 100%;
}

.slick-slide {
    margin: 0 1rem;
}

.slider_img_header_pu .img_event {
    width: 100%;
    height: auto;
}

.prev-arrow {
    left: 1rem;
}

.slick-dotted.slick-slider {
    margin-bottom: 1rem;
}

/* btn link */
.btn_apply_pu {
    display: block;
    position: relative;
    color: #ffffff;
    background-color: #F1302C;
    max-width: 250px;
    margin-left: auto;
    margin-top: 2rem;
    padding: 1rem 1.5rem;
}

.btn_apply_pu.center {
    margin: auto;
    margin-top: 2rem;
}

.btn_apply_pu:hover {
    color: #ffffff;
    opacity: 0.7;
}

.disabled {
    pointer-events: none;
    background-color: #808080;
    text-align: center;
}

.btn_disabled {
    pointer-events: none;
    background-color: #808080;
}

.btn_arrow {
    position: absolute;
    right: 1.5rem;
}

/* nav */
.nav_pu {
    display: flex;
    justify-content: center;
    color: #ffffff;
    background-color: #222222;
}

.nav_li_pu {
    display: inline-block;
    margin: 0 2rem;
    padding: 2rem 1rem;
    font-size: 28px;
    font-weight: 500;
    color: #ffffff;
}

.nav_li_pu:hover {
    color: #F1302C;
}

/* catch */
.catch_pu {
    max-width: 1200px;
    margin: 5rem auto;
    text-align: center;
    color: #ffffff;
}

.subcatch_pu {
    max-width: 1200px;
    margin: 4rem auto 0;
    font-size: 32px;
    font-weight: 500;
    color: #ffffff;
}

/* heading */
h2 {
    text-align: center;
    margin: 3rem 0 2rem;
}

h2::before {
    display: block;
    content: url(https://www.infolens.com/wp-content/uploads/2022/06/kari_nessie_icon-e1655439594785.png);
    vertical-align: middle;
}

#info h3 {
    text-align: center;
    margin-bottom: 0.25rem;
}

#special h3 {
    margin-bottom: 2rem;
}

#goods h3 {
    font-size: 22px;
    margin-bottom: 0.5rem;
}

.heading_kansen {
    display: block;
    text-align: center;
    font-size: 1.5rem;
    margin-bottom: 1rem;
}

/* font text */
.caution_pu {
    font-size: 14px;
}

.txt_red {
    color: #F1302C;
    font-weight: 700;
}

.txt_center {
    display: block;
    text-align: center;
}

.txt_right {
    display: block;
    text-align: right;
}

.txt_marginright {
    margin-right: 0.75rem;
    display: block;
}

.txt_copyright {
    color: #ffffff;
}

.fa-angle-right:before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.address_pu {
    margin-top: 1.5rem;
    line-height: 1.25rem;
}

/* faq toggle */
.question_pu {
    margin: 1rem 0;
}

.question_pu a {
    display: block;
    background-color: #F0F0E0;
    font-weight: 500;
    padding: 1.5rem;
    padding-right: 2.5rem;
    color: #222222;
}

#faq .question_pu a:hover,
#faq .question_pu a:focus,
#faq .question_pu a:active,
#faq .question_pu a:visited {
    color-interpolation-filters: #222222;
}

.question_pu a[aria-expanded="false"] {
    background-image: url(./assets/images/apex_popup/plus.svg);
    background-repeat: no-repeat;
    background-position: right 1rem center;
}

.question_pu a[aria-expanded="true"] {
    background-image: url(./assets/images/apex_popup/minus.svg);
    background-repeat: no-repeat;
    background-position: right 1rem center;
}

.answer_pu.collaspe:not(.show) {
    display: none;
}

.answer_pu {
    padding: 2rem;
    padding-top: 1rem;
}


/* footer */
.footer_pu {
    background: transparent;
    margin-bottom: 0;
    padding: 5rem 0rem;
    max-width: 1000px;
    color: #ffffff;
}

.list_nav_footer a {
    color: #ffffff;
}

/*767px以下*/
@media screen and (max-width: 767px) {

    /* wrap container */
    .wrap_section_pu {
        margin: 3rem 1rem;
        padding: 1.5rem 0.75rem;
    }

    /* heading */
    .catch_pu {
        margin: 3rem 0.5rem;
    }

    .subcatch_pu {
        font-size: 20px;
        line-height: 1.5rem;
        margin: 1rem;
    }

    h2 {
        margin-top: 3rem;
        margin-bottom: 1rem;
    }

    h3 {
        text-align: center;
    }

    h4 {
        font-size: 18px;
    }

    /* font txt */
    p {
        margin-bottom: 1.5rem;
    }

    /* nav */
    .nav_pu {
        flex-wrap: wrap;
        text-align: center;
    }

    .nav_li_pu {
        font-size: 18px;
        padding: 1rem;
    }

    .nav_pu li {
        width: 50%;
    }

    /* slide */
    .slick-slide {
        height: 240px;
    }

    /* info */
    .wrap_venue {
        margin-top: 3rem;
    }

    /* iframe */
    iframe {
        width: 100%;
        height: 300px;
    }

    /* faq */
    .question_pu {
        margin-bottom: 0;
    }

    .question_pu a {
        padding: 1rem 0.75rem;
    }

    .answer_pu {
        padding: 1rem;
        padding-top: 0.75rem;
    }

    /* footer */
    .footer_pu {
        padding: 2rem 1rem;
    }
	
	.kansen.wrap_section_pu {
    margin: 2rem 1rem;
}
}

/*768px以上*/
@media screen and (min-width: 768px) {
    .slick-slide {
        height: 240px;
    }
}