/*カテゴリーボタン*/
@media screen and (min-width: 641px) {
    #top-information #info-tab{
        max-width: 77%;
    }
    #top-information #info-tab ul{
        gap:5px;
        flex-wrap: wrap;
        margin-left: auto;
    }
    #top-information #info-tab ul a{
        border-right: 1px solid #808080;
        font-size: 14px;
    }
    #top-information #info-tab li {
        height: 40px;
        line-height: 1.2 !important;
    }
}
@media screen and (max-width: 640px) {
    #top-information #info-tab ul{
        flex-wrap: wrap;
    }
    #top-information #info-tab a {
        width: 30%;
        min-width: 30%;
    }
    #top-information #info-tab ul a:nth-of-type(3n) ~ a {
        border-top: none;
    }
}

/*本体*/
#qa * {
    box-sizing: border-box;
}
#qa {
    margin-bottom: min(25vw, 120px);
}
@media screen and (min-width: 641px) {
    #qa{
        width: min(94%,1100px);
        margin-left: auto;
        margin-right: auto;
    }
}
.qa-unit {
/*
    border-bottom: 1px solid #000;
    padding-bottom: min(6vw, 40px);
*/
    border-bottom: 1px solid;
}
a.qa_index {
    cursor: text;
    pointer-events: none;
}
.qa-unit dl {
    width: 100%;
}
.qa-unit dt {
    font-size: min(4.5vw, 22px);
    background: #09459e;
    color: #fff;
    padding: 15px 1em;
    line-height: 1.2;
    margin-top: min(15vw, 60px);
}

.result_q{
    display: flex;
    color: #09459e;
    padding-top: ;
    padding-right: 3.5em;
    padding-bottom: min(5vw, 15px);
    cursor: pointer;
    position: relative;
    padding:min(11vw, 20px) 2.5em min(5vw, 15px) 0.75em;
}
.result_q span{
    color: inherit !important;
}
.result_q,
.result_q p{
    font-size: min(4vw, 18px) !important;
    line-height: 1.4;
}
.result_q p{
    margin-bottom: 0;
}
.result_q::before {
    content: "Q.";
    margin-right: 5px;
}
.result_q::after {
    content: "＋";
    position: absolute;
    right: 0.5em;
    font-size: 1.5em;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 1em;
    height: 1em;
    line-height: 1;
    text-align: center;
}
.result_q.a_open::after {
    content: "−";
}
.result_a {
    display: flex;
    background: #ebf0f6;
    padding: 0.85em 1em;
    width: 100%;
    transition: all ease 200ms;
}
.result_a,
.result_a p{
    font-size: min(4vw, 15px) !important;	
    line-height: 1.6;
    margin-bottom: 0;
    word-break: break-all;
}
.result_a::before {
    content: "A.";
    font-size: min(4.5vw, 20px);
    color: #09459e;
    margin-right: 5px;
    margin-bottom: 0;
}
.result_a p {
    margin-top: min(0.6vw, 3px);
}
.result_a a {
    color: blue;
}
.result_a:not(.a_open) {
    height: 0;
    overflow: hidden;
    padding-top: 0;
    padding-bottom: 0;
}
.qa_index span[style*="font-size"]{
    font-size: inherit !important;    
}

/*ナウローディング*/
.qa_loading {
  width: 50px;
  height: 50px;
  border: 5px solid #ddd;
  border-top: 5px solid #09459e;
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
    margin: 50px auto 0;
}
@keyframes spin {
  to { transform: rotate(360deg); }
}

/*リンク*/
#dl-frame{
    margin-left: auto;
    margin-right: auto;
    width: min(94%, 1043px);    
    box-sizing: border-box;
    padding-left: 1em;
    padding-right: 1em;
}
#dl-link li {
    height: auto;
    line-height: 1.3;
    font-size: min(4.5vw, 18px);
    padding: 0.75em 0;
}
@media screen and (max-width: 640px) {
#dl-frame{
    text-align: left;
}
.even-div li {
    border-radius: 50px;
    overflow: hidden;
}
}