@charset "UTF-8";

.page-faq .content-01 .answer-body .common-button-01 { font-size:14px;}
.page-faq .content-01 .answer-body { font-size:16px;}
.page-faq .content-01 .faq-01,
.page-faq .content-01 .question .item-01,
.page-faq .content-01 .question .item-02,
.page-faq .content-02 .items-container>figure { font-size:20px;}
.page-faq .content-01 .question,
.page-faq .content-01 .answer { font-size:32px;}
.page-faq .content-02 .items-container>figure img { position:absolute; object-fit:cover; left:0; top:0; width:100%; height:100%;}
.page-faq .content-01 .faq-items-01,
.page-faq .content-01>.common-button-01 { animation-duration:1000ms; opacity:0; animation-iteration-count:1; animation-timing-function:ease-in-out; animation-fill-mode:forwards;}
.page-faq .content-01 { width:100%; padding-top:120px; padding-bottom:160px; transition-property:background-color; transition-duration:1000ms; background-color:rgba(231,235,240,0);}
.page-faq .content-01 .faq-items-01 { transition-delay:400ms; max-width:960px; width:90%; margin-left:auto; margin-right:auto;}
.page-faq .content-01.a { background-color:#e7ebf0;}
.page-faq .content-01.a .faq-items-01 { animation-name:fade_in;}
.page-faq .content-01.a .faq-items-01+.common-button-01 { animation-name:fade_in;}
.page-faq .content-01 .faq-01 { width:100%; background-color:#fff; border-radius:1em;}
.page-faq .content-01 .faq-01+.faq-01 { margin-top:20px;}
.page-faq .content-01 .question { padding-top:1.0313em; padding-bottom:1.0313em; width:100%; text-align:left; transition:opacity 400ms;}
.page-faq .content-01 .question:active { opacity:.6;}
.page-faq .content-01 .question>* { cursor:pointer;}
.page-faq .content-01 .question .question-inner { display:flex; align-items:center; width:89.5833%; margin-right:auto; margin-left:auto;}
.page-faq .content-01 .question .question-inner::before { position:relative; width:1.5469em; line-height:1; content:"Q"; color:var(--color-navy-01); top:-0.1094em; display:block;}
.page-faq .content-01 .question .item-01 { position:relative; max-width:calc(100% - 4.5em); top:-0.05em; letter-spacing:.08em; color:var(--color-navy-01); line-height:1.4286; flex-grow:1;}
.page-faq .content-01 .question .item-01 * { line-height:1.4286; color:var(--color-navy-01);}
.page-faq .content-01 .question .item-02 { width:1.2em; margin-left:auto;}
.page-faq .content-01 .question .item-02>p { aspect-ratio:1 / 1; position:relative; width:100%; transition:transform 400ms;}
.page-faq .content-01 .question .item-02>p::before,
.page-faq .content-01 .question .item-02>p::after { content:""; display:block; background-color:var(--color-navy-01); width:100%; height:0.2em; position:absolute; left:0; top:50%;}
.page-faq .content-01 .question .item-02>p::before { transform:translateY(-50%) scaleY(0.5); transition:width 200ms,left 200ms,opacity 200ms,background-color 200ms;}
.page-faq .content-01 .question .item-02>p::after { transform:translateY(-50%) rotate(90deg) scaleY(0.5); transition:transform 400ms,background-color 200ms;}
.page-faq .content-01 .question.active .item-02>p { transform:rotate(180deg);}
.page-faq .content-01 .question.active .item-02>p::before { width:0; left:50%; opacity:0;}
.page-faq .content-01 .question.active .item-02>p::after { transform:translateY(-50%) rotate(180deg) scaleY(0.5);}
.page-faq .content-01 .question:not(.active)+.answer { height:0;}
.page-faq .content-01 .question:not(.active)+.answer .answer-inner { opacity:0;}
.page-faq .content-01 .answer { width:89.5833%; margin-right:auto; margin-left:auto; overflow:hidden; position:relative; top:-0.0938em;}
.page-faq .content-01 .answer-inner { display:flex; position:relative; transition-property:opacity; transition-duration:400ms; padding-top:0.9688em; padding-bottom:1.0313em; width:100%;}
.page-faq .content-01 .answer-inner::before { content:"A"; color:var(--color-blue-01); top:-0.0625em; margin-left:0.0625em; position:relative; width:1.5469em; line-height:1;}
.page-faq .content-01 .answer-inner::after { content:""; display:block; background-color:var(--color-navy-01); position:absolute; left:0; top:0; width:100%; height:2px; transform:scaleY(0.5); transform-origin:top left;}
.page-faq .content-01 .answer-body { width:100%; letter-spacing:.08em; line-height:1.75;}
.page-faq .content-01 .answer-body * { line-height:1.75;}
.page-faq .content-01 .answer-body>p { margin-top:1em; margin-bottom:1.0313em;}
.page-faq .content-01 .answer-body>:first-child { margin-top:0;}
.page-faq .content-01 .answer-body>:last-child { margin-bottom:0;}
.page-faq .content-01 .answer-body .notes-01 { display:block; width:100%; padding-left:1.2em; position:relative;}
.page-faq .content-01 .answer-body .notes-01::before { content:"※"; position:absolute; left:0; top:0;}
.page-faq .content-01 .answer-body .common-button-01 { width:19.2857em;}
.page-faq .content-01 .answer-body .common-button-01:last-child { padding-bottom:0.6429em;}
.page-faq .content-01 .answer-body .common-button-01 a strong { letter-spacing:.05em;}
.page-faq .content-01>.common-button-01 { transition-delay:400ms; margin-top:50px; margin-right:auto; margin-left:auto;}
.page-faq .content-02 { width:100%; padding-top:120px; padding-bottom:200px;}
.page-faq .content-02 .items-container { width:100%; display:flex; justify-content:flex-end;}
.page-faq .content-02 .items-container>article { max-width:585px; width:47.5%; padding-top:12px; font-size:1rem;}
.page-faq .content-02 .items-container>article .item-01 { letter-spacing:.08em; margin-top:46px; width:100%; line-height:1.875;}
.page-faq .content-02 .items-container>figure { overflow:hidden; width:calc(50% - 35px); border-radius:1em 0 0 1em; position:relative;}
.page-faq .content-02 .items-container .common-button-01 { margin-top:45px;}

@media (min-width:768.1px) {
.page-faq .content-01 .answer-body .common-button-01 a { height:3em; border-radius:3em;}
.page-faq .content-01 .answer-body .common-button-01 a strong { top:-0.06em;}
.page-faq .content-01 .answer-body .common-button-01 a svg { transform:translateY(-53%); width:1.2857em;}
}

@media (max-width:1400px) {
.page-faq .content-01 { padding-top:8.5714%; padding-bottom:11.4286%;}
.page-faq .content-01 .faq-01+.faq-01 { margin-top:1.4286vw;}
.page-faq .content-01>.common-button-01 { margin-top:3.5714%;}
.page-faq .content-02 { padding-top:8.5714%; padding-bottom:14.2857%;}
.page-faq .content-02 .items-container>figure { width:47.5%;}
}

@media (max-width:1250px) {
.page-faq .content-02 .items-container>article { padding-top:0.96vw;}
.page-faq .content-02 .items-container>article .item-01 { margin-top:3.6vw;}
.page-faq .content-02 .items-container .common-button-01 { margin-top:3.6vw;}
}

@media (max-width:768px) {
.page-faq .content-01 { padding-top:13.0208%; padding-bottom:18.2292%;}
.page-faq .content-01 .faq-items-01 { width:88.2813%;}
.page-faq .content-01 .faq-01 { font-size:1rem; border-radius:0.8333em;}
.page-faq .content-01 .faq-01+.faq-01 { margin-top:3.2552vw;}
.page-faq .content-01 .question { padding-top:0.8696em; padding-bottom:0.8696em;}
.page-faq .content-01 .question .question-inner { width:88.2006%;}
.page-faq .content-01 .question .question-inner::before { width:1.413em;}
.page-faq .content-01 .question .item-01 { max-width:calc(100% - 4.2857em);}
.page-faq .content-01 .question .item-02 { width:1.2857em;}
.page-faq .content-01 .question .item-02>p::before,
.page-faq .content-01 .question .item-02>p::after { height:0.2143em;}
.page-faq .content-01 .answer-inner { padding-top:0.8043em; padding-bottom:0.8043em;}
.page-faq .content-01 .answer-body { font-size:1rem; line-height:1.75;}
.page-faq .content-01 .answer-body * { line-height:1.75;}
.page-faq .content-01 .answer-body br { display:none;}
.page-faq .content-01 .answer-body>p { margin-top:1.0417em; margin-bottom:1.0833em;}
.page-faq .content-01 .answer-body>:first-child { margin-top:0;}
.page-faq .content-01 .answer-body>:last-child { margin-top:0;}
.page-faq .content-01 .answer-body .common-button-01 { width:19.5em;}
.page-faq .content-01 .answer-body .common-button-01 a { padding-right:1.5em; height:3.3em; border-radius:3.3em;}
.page-faq .content-01 .answer-body .common-button-01 a svg { transform:translateY(-55%); width:1.8em;}
.page-faq .content-01>.common-button-01 { margin-top:9.1146%;}
.page-faq .content-02 { padding-top:0; padding-bottom:20.8333%;}
.page-faq .content-02 .items-container { flex-direction:column; justify-content:flex-start;}
.page-faq .content-02 .items-container .common-content-header-01 { text-align:center;}
.page-faq .content-02 .items-container>article { margin-top:15.625%; padding-top:0; order:2; width:100%; max-width:none;}
.page-faq .content-02 .items-container>article .item-01 { margin-top:4.8177%; margin-right:auto; margin-left:auto; width:77.8646%; text-align:justify; text-justify:inter-ideograph; word-break:break-all; line-height:1.75;}
.page-faq .content-02 .items-container>article .item-01 br { display:none;}
.page-faq .content-02 .items-container>figure { order:1; width:100%; aspect-ratio:384 / 245; border-radius:0;}
.page-faq .content-02 .items-container .common-button-01 { margin-top:5.8594%; margin-right:auto; margin-left:auto;}
}

@media (max-width:480px) {
.page-faq .content-01 .answer-body .common-button-01 a strong { top:-0.03em;}
}

@media (max-width:320px) {
.page-faq .content-01 .answer-body .common-button-01 { font-size:9px;}
.page-faq .content-01 .question .item-01,
.page-faq .content-01 .question .item-02 { font-size:12px;}
.page-faq .content-01 .question,
.page-faq .content-01 .answer { font-size:19px;}
}

@media (min-width:768.1px) and (max-width:1250px) {
.page-faq .content-01 .answer-body .common-button-01 { font-size:calc(9px + (1vw - 7.68px) * 1.0373);}
.page-faq .content-01 .answer-body { font-size:calc(10px + (1vw - 7.68px) * 1.2448);}
.page-faq .content-01 .faq-01,
.page-faq .content-01 .question .item-01,
.page-faq .content-01 .question .item-02,
.page-faq .content-02 .items-container>figure { font-size:calc(12px + (1vw - 7.68px) * 1.6598);}
.page-faq .content-01 .question,
.page-faq .content-01 .answer { font-size:calc(20px + (1vw - 7.68px) * 2.4896);}
}

@media (min-width:320.1px) and (max-width:768px) {
.page-faq .content-01 .answer-body .common-button-01 { font-size:calc(9px + (1vw - 3.2px) * 2.4554);}
.page-faq .content-01 .question .item-01,
.page-faq .content-01 .question .item-02 { font-size:calc(12px + (1vw - 3.2px) * 3.5714);}
.page-faq .content-01 .question,
.page-faq .content-01 .answer { font-size:calc(19px + (1vw - 3.2px) * 6.0268);}
}

@media (hover:hover) and (pointer:fine) {
.page-faq .content-01 .question:hover { opacity:.6;}
}