/* アンカーナビ
--------------------------------*/

body{
    overflow-y: hidden;
}

.anc_nav {

}

.anc_nav div.inner{
    background: #F2F4F0;
    text-align: center;
    border-bottom: #ccc 1px solid;
    position: relative;
}
.anc_nav article{
    transition: 0.3s;
}
.anc_nav.scroll article:has(.close){
    /* display: fixed; */
    opacity: 1;
    max-height : 1500px;
}

.anc_nav.scroll{

}

.anc_nav.scroll article:has(.close) > div.anv_nav_inr{

}

.anc_nav .inner.scroll article h3.title{
    display: none;
}

.anc_nav.scroll article ul{
    margin-top:0!important;
}

.anc_nav .inner.scroll article:not(.close){
    opacity: 0;
    max-height : 0;
}

.anc_nav .inner.scroll{
    border-bottom: 3px solid #FF9296;
}

.anc_nav .inner.scroll article:not(.close) > div.anv_nav_inr{
    display:none;
}

.anc_nav article.close > div.anv_nav_inr{
    display: fixed;
    visibility: visible;
}
.anc_nav article > div.anc_nav_inr{
    padding: clamp(50px,6.510vw,100px) 30px;
    opacity: 1;
    max-height : 1500px;
}

.anc_nav article > div.anc_nav_inr > div{
    width:100%;
    max-width:960px;
    margin:0 auto;
}

.anc_nav h3.title {
    font-size: clamp(2.4rem, 3.125vw, 4rem);
    font-weight: 600;
    position: relative;
}

.anc_nav h3.title:after {
    content: "";
    display: block;
    position: absolute;
    background: url("../../img/icon/circles.svg") no-repeat center;
    background-size: contain;
    aspect-ratio: 1 / 0.429;
    width: clamp(20px, 3.125vw, 40px);
    transform: translate(-50%, clamp(10px, 1.40625vw, 18px));
    bottom: 0;
    left: 50%;
}

.anc_nav ul {
    display: block;
    margin-top: clamp(50px,6.510vw,100px);
}

.anc_nav ul>li {
    display: block;
    margin-top: 10px;
}

.anc_nav ul>li:first-of-type {
    margin-top: 0;
}


.anc_nav ul>li>a {
    display: block;
    background: #fff;
    border: #90939C 1px solid;
    padding:clamp(10px,1.302vw,20px) 10px;
    font-size:clamp(1.6rem, 0.4rem + 2.5vw, 2rem);
    border-radius: 6px;
    line-height: 1.1;
    position: relative;
    font-weight: 500;
}

.anc_nav ul>li>a::after {
    position: absolute;
    content: '';
    display: block;
    right: 8px;
    top: calc(50% - 2px);
    width: 7px;
    height: 5px;
    background: url(../../img/faq/arrow.svg) no-repeat;
}

.anc_nav:not(.scroll) > #anc_nav_op{
    display:none;
}

#anc_nav_op {
    position: absolute;
    display: block;
    width: 108px;
    height: 36px;
    bottom: -37px;
    left: calc(50% - 54px);
    cursor:pointer;
    background:url(../../img/faq/menu_op.svg);
    background-size:contain;
}

#anc_nav_op.close{
    background: url(../../img/faq/menu_op_cls.svg)!important;
}

/* Faq
--------------------------------*/

div.wrp_faq {
    background: #FDFBEC;
    counter-reset: number 0;
    position: relative;
}

div.wrp_faq a{
    text-decoration: underline;
}
div.wrp_faq h2.title_idx {
    font-size: clamp(2.4rem, 3.125vw, 4rem);
    font-weight: 600;
    text-align: center;
    background: #fff;
    border-bottom: 2px #F6EDA0 solid;
    padding: clamp(20px,2.604vw,50px) 16px;
}

div.wrp_faq .answer_gp {
    padding: clamp(25px,6.667vw,100px) 16px;
    width:100%;
    max-width:1040px;
    margin:0 auto;
}

div.wrp_faq section {
    background: #fff;
    margin-top: clamp(25px,6.667vw,100px);
}

div.wrp_faq section:first-of-type {
    margin-top: 0;
}

div.wrp_faq section>h3 {
    background: #F6EDA0;
    padding: 20px 16px;
    font-weight: 600;
}

div.wrp_faq section>h3::before {
    display: block;
    color: #EB6153;
    counter-increment: number 1;
    /* number カウンタを増加 */
    content: "Q." counter(number);
    /* 表示形式を指定 */
    margin: 0 0 0.5em;
    text-align: center;
}

div.wrp_faq section>.wrp_answer {
    padding: clamp(20px,5.333vw,40px) clamp(16px,4.267vw,40px);
}

div.wrp_faq section>.wrp_answer > ul > li:before{
    content:"●";
}
div.wrp_faq section>.wrp_answer > ul > li{
    text-indent:-1em;
    padding-left:1em;
}


/* 320px以下用
---------------------------------------------------------------------*/

@media print,
screen and (max-width: 320px) {}


/* custom
---------------------------------------------------------------------*/

@media print,
screen and (min-width: 480px) {

    div.wrp_faq section>h3::before {
        display:inline;
        /* 表示形式を指定 */
        margin: 0 1.2em 0 0;
    }
}


/* TAB用768px～（TAB）
---------------------------------------------------------------------*/

@media print,
screen and (min-width: 768px) {

}




/* PC用1024px～（NPC）
---------------------------------------------------------------------*/

@media print,
screen and (min-width: 1024px) {

/* アンカーナビ
--------------------------------*/
    .anc_nav {

    }

    .anc_nav div.inner{
        border-bottom: #ccc 1px solid;
    }

    .anc_nav h3.title {
    }

    .anc_nav h3.title:after {

    }

    .anc_nav ul {
        display:flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }

    .anc_nav ul>li {
        margin-top: 16px;
        width:calc(50% - 20px);
    }

    .anc_nav ul>li:nth-of-type(1),
    .anc_nav ul>li:nth-of-type(2) {
        margin-top: 0;
    }


    .anc_nav ul>li>a {
        border: #90939C 1px solid;
        border-radius: 6px;
        line-height: 1.1;
    }

    .anc_nav ul>li>a::after {
        right: 16px;
        top: calc(50% - 4px);
        width: 14px;
        height: 8px;
    }

    #anc_nav_op {
        width: 216px;
        height: 72px;
        bottom: -73px;
        left: calc(50% - 108px);
    }

    /* Faq
--------------------------------*/

    div.wrp_faq {
    }

    div.wrp_faq h2.title_idx {
        font-weight: 600;
        border-bottom: 3px #F6EDA0 solid;
    }

    div.wrp_faq .answer_gp {
        /* padding: 100px 0; */
    }

    div.wrp_faq section {
    }

    div.wrp_faq section:first-of-type {
        margin-top: 0;
    }

    div.wrp_faq section>h3 {
        padding: 20px 40px;
        font-size:1.8rem;
    }

    div.wrp_faq section>h3::before {
    }

    div.wrp_faq section>.wrp_answer {
        /* padding: 40px; */
    }

}




/* PC用1280px～（PC）
---------------------------------------------------------------------*/

@media print,
screen and (min-width: 1280px) {}