
/* Concept */
#concept_txt, #about_list, #company_link, #award_list, #chart { position:relative; width:80%; height:auto; left:50%; padding-bottom:80px; transform:translateX(-50%); }
#concept_txt { margin-top:110px; padding:40px 0;  }
.concept_txt_jp, .concept_txt_en { position:relative; width:100%; height:auto; }
.concept_txt_jp { margin-bottom:60px; text-align: justify; text-justify: inter-ideograph; }

.about_list_inner, .company_link_inner, .award_list_inner, .chart_inner { position:relative; width:100%; }
.about_list_inner dl { position:relative; width:100%; display:flex; font-size:1.1rem; flex-wrap:wrap; align-items: flex-start; }
.about_list_inner dt { width:25%; padding:15px 0; border-top:1px solid #dedede; }
.about_list_inner dd { width:75%; margin:0; padding:15px 0; border-top:1px solid #dedede; }
.about_list_inner dt:last-of-type { border-bottom:1px solid #dedede; }
.about_list_inner dd:last-of-type { border-bottom:1px solid #dedede; }


.award_list_inner h2, .chart_lead h2 { text-align:center; border-top:1px solid #dedede; border-bottom:1px solid #dedede; padding:20px 0;  }
.award_list_inner ul { margin-bottom:40px; }
.award_list_inner li { margin-bottom:10px; }


.company_link_inner span { position:relative; font-size: 1.2rem; font-weight: bold; }
.company_link_inner span::before { content:''; position:absolute; width:100%; height:2px; left:0; bottom:-4px; background-color: #000; transform:scaleX(1); transform-origin:left; transition:transform 0.4s; }
.company_link_inner span:hover::before { transform:scaleX(0); transform-origin:right;  }
.company_link_inner svg { width:11px; height:9px; margin-left:2px; fill:#000; }

#chart { padding-bottom:140px; }
.chart_lead { margin-bottom:40px; }
.chart_lead  p { margin-bottom:20px; }
.q_box, .a_box { position:relative; width:100%; border-radius:20px; text-align:center; }
.q_box { background-color: #efefef; border:1px solid #ccc; padding:20px; }
.q_box h3 { margin-bottom: 4px; font-size: 1.6rem;}
.a_box { background-color: #212121; color:#fff; padding:25px 40px; }
.a_box_logo svg { position:relative ;width:50%; fill:#fff; margin:8px 0;  }
.a_box a { position:absolute; top:0; left:0; width:100%; height:100%; cursor:pointer; }
#a1, #a2 { transition:opacity .3s ease; }
#a1:hover, #a2:hover { opacity:0.6; }
.a_box_arw { position:absolute; top:50%; left:16px; transform:translateY(-50%); width:26px; height:26px;  }
.a_box_arw svg { width:100%; height:auto; fill:#fff; }
.q_box h4, .a_box h4 { margin-bottom:4px; } 
.q_button_area {  position:relative; width:100%; display:flex; flex-wrap:nowrap; justify-content: center; margin-top:12px; }
.q_button_area input[type=radio] { display: none; }
.q_button_area label { position:relative; width:35%; height:28px; margin:0 6px; border-radius:14px; border:1px solid #565656; font-size:1.1rem; color:#000; background-color: #f9f9f9; transition:all .3s ease; }
.q_button_area label span { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); display:block; }
.q_button_area label:hover, input[type="radio"]:checked + label { background-color: #000; color:#fff; cursor: pointer; }

#q2, #q2, #q3, #q4, #q5, #q6, #q7, #q8, #q9, #a1, #a2, #a3 { margin-top:30px; display:none; }
#q2::before, #q2::before, #q3::before, #q4::before, #q5::before, #q6::before, #q7::before, #q8::before, #q9::before, #a1::before, #a2::before, #a3::before { content:''; position:absolute; width:1px; height:30px; top:-30px; left:50%; transform:translateX(-50%); z-index:-1; background-color: #ccc;  }
.show { display:block !important; }

#night .about_list_inner dt { border-top:1px solid #565656; }
#night .about_list_inner dd { border-top:1px solid #565656; }
#night .about_list_inner dt:last-of-type { border-bottom:1px solid #565656; }
#night .about_list_inner dd:last-of-type { border-bottom:1px solid #565656; }
#night .company_link_inner span::before { background-color: #fff; }
#night .company_link_inner svg { fill:#fff; }
#night .award_list_inner h3 { border-top:1px solid #565656; border-bottom:1px solid #565656; }
#night .q_box { background-color: #212121; border:1px solid #565656; }
#night .q_button_area label { background-color:#212121; color:#fff; }
#night .q_button_area label:hover, #night input[type="radio"]:checked + label { background-color: #fff; color:#000; }
#night .a_box { background-color: #fff; color:#000; }
#night .a_box svg { fill:#000; }
#night .award_list_inner h2, #night .chart_lead h2 { border-top:1px solid #565656; border-bottom:1px solid #565656;  }



@media screen and (min-width:460px) {
     #concept_txt, #about_list, #company_link, #award_list, #chart { width:70%;}
}
@media screen and (min-width:680px) {
    .q_box { padding:30px; }
    .a_box { padding:40px; }
    .a_box_logo svg { width:140px; }
    .q_button_area { margin-top:20px; }
    .q_button_area label { width:130px; height:36px; border-radius:18px; }
}

@media screen and (min-width:960px) {
    #concept_txt, #about_list, #company_link, #award_list, #chart { padding-bottom:120px; }
    #concept_txt { margin-top:160px; padding:40px 0; }
    .concept_txt_jp, .concept_txt_en { width:46%; }
    .concept_visual { position:absolute; width:50vw; height:95%; top:40px; left:50%; }
    .concept_visual_inner { position:relative; width:100%; height:100%; overflow: hidden; }
    .concept_visual_inner img { position:absolute; width:auto; height:100%; top:50%; left:50%; transform:translate(-50%, -50%); opacity:0;  }
    .concept_visual_inner img:nth-of-type(1) { animation:SlideImgA 20s linear infinite; }
    .concept_visual_inner img:nth-of-type(2) { animation:SlideImgB 20s linear infinite; }
    .concept_visual_inner img:nth-of-type(3) { animation:SlideImgC 20s linear infinite; }
    .concept_visual_inner img:nth-of-type(4) { animation:SlideImgD 20s linear infinite; }
    .concept_visual_inner img:nth-of-type(5) { animation:SlideImgE 20s linear infinite; }
    .concept_visual_inner img:nth-of-type(6) { animation:SlideImgF 20s linear infinite; }

    #chart { padding-bottom:220px; }
    .award_list_inner h2, .chart_lead h2, #night .award_list_inner h2, #night .chart_lead h2 { text-align:left; border-bottom: none; padding-top:80px; padding-bottom:0; margin-bottom:0;  }
    .award_list_inner ul, .chart_lead p { padding-left:40%; }
    .award_list_inner ul:nth-of-type(1), .chart_lead p:nth-of-type(1) { margin-top:-25px; }
    .chart_lead { margin-bottom:60px; }
    .q_box, .a_box { width:60%; left:40%; }

    

}

@media screen and (min-width:1500px) {
    #concept_txt, #about_list, #company_link, #award_list, #chart { width:75%; padding-bottom:10vw; }
    #concept_txt { margin-top:12vw; padding:2.5vw 0; }
    .company_link_inner svg { width:0.8vw; height:0.6vw; margin-left:0.2vw; }
    .company_link_inner span::before { height:0.12vw; bottom:-0.3vw; }
    .award_list_inner h2, .chart_lead h2 { border-top:0.1vw solid #dedede; }
    #night .award_list_inner h3 { border-top:0.1vw solid #565656; }
    .award_list_inner h2, .chart_lead h2, #night .award_list_inner h2, #night .chart_lead h2 { padding-top:6vw; }
    .award_list_inner ul { margin-bottom:3vw; }
    .award_list_inner ul:nth-of-type(1), .chart_lead p:nth-of-type(1) { margin-top:-2vw; }
    #chart { padding-bottom:16vw; }
    .chart_lead p { margin-bottom:2vw; }
    .q_box { border:0.1vw solid #ccc; padding:2vw; }
    #night .q_box { border:0.1vw solid #565656; }
    .q_box, .a_box { border-radius:1.6vw; }
    .a_box { padding:3.2vw; }
    .a_box_logo svg { width:12vw; margin:1vw 0; }
    .a_box_arw { width:2vw; height:2vw; left:2vw; }
    .q_button_area { margin-top:1.5vw; }
    .q_button_area label { width:10vw; height:2.4vw; border-radius:1.2vw; font-size:0.8vw; margin:0 0.5vw; border:0.1vw solid #565656; }
    #q2, #q2, #q3, #q4, #q5, #q6, #q7, #q8, #q9, #a1, #a2, #a3 { margin-top:3vw; }
    #q2::before, #q2::before, #q3::before, #q4::before, #q5::before, #q6::before, #q7::before, #q8::before, #q9::before, #a1::before, #a2::before, #a3::before { width:0.1vw; height:3vw; top:-3vw; }


}
