@charset "UTF-8";

/*===========================
  reset Css
===========================*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video { margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent; }
article,aside,canvas,details,figcaption,figure,
footer,header,hgroup,menu,nav,section,summary { display:block; }
ul ,li{ list-style:none; }
blockquote, q { quotes:none; }
blockquote:before, blockquote:after,
q:before, q:after { content:''; content:none; }
a { margin:0; padding:0; border:0; font-size:100%; background:transparent; }
ins { background-color:#ff9; color:#000; text-decoration:none; }
mark { background-color:#ff9; color:#000; font-style:italic; font-weight:bold; }
del { text-decoration: line-through; }
abbr[title], dfn[title] { border-bottom:1px dotted #000; cursor:help; }
table { border-collapse:collapse; border-spacing:0; }
hr { display:block; height:1px; border:0; border-top:1px solid #cccccc; margin:1em 0; padding:0; }
input, select { vertical-align:middle; }

/*===========================
  base.css
===========================*/
body{
    font:16px "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3", "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", sans-serif;
    -webkit-font-smoothing:antialiased;
    box-sizing:border-box;
    letter-spacing:0.03em;
    line-height:1.4;
}

a:link,
a:visited,
a:hover,
a:active{ text-decoration:none; }

img{ width:100%; height:auto; vertical-align:bottom; }
	
.clearfix::after{ content:""; display:block; clear:both; }

/*===========================
    色指定
===========================*/
body,
a{ color:#303030; }

/* normal (black) */
.next_btn{ background-image:url("../img/arrow_black.svg"); border-color:#1d1d1d; }
.next_btn:hover{ background-color:#1d1d1d; }
.pagenav_line ul li.on{ background-image:linear-gradient(-45deg,#1b1b1b 25%,#595959 25%,#595959 50%, #1b1b1b 50%,#1b1b1b 75%,#595959 75%,#595959); }
.pagenav_dot ul li.present{ background-color:#414141; }
.pagenav_dot ul li span{ color:#888888; }
.faq_box .title{ color:#1d1d1d; }
.faq_box .title span{ border-bottom-color:#1d1d1d; }
.faq_box .title span::after{ border-color:transparent transparent #1d1d1d #1d1d1d; }
ul.rclist_02 li input:checked + label::after{ border:#3c3c3c 2px solid; }
ul.rclist_03 li.on,
ul.rclist_04 li.on{ background:#414141; }
.ico_request{ background:#303030; }
.result_box .title{ border-top:#1d1d1d 2px solid; border-bottom:#1d1d1d 2px solid; }
.result_box .title::before{ border-top:15px solid #1d1d1d; }
.result_box ul.type_list li{ border:#b9b9b9 1px solid; }
.result_box ul.type_list li.on{ background:#efe6c7; border:#1d1d1d 2px solid; color:#1d1d1d; }
.result_box .chart_box .tit::after{ background:#1d1d1d; }

/*===========================
    common
===========================*/
/*  btn
===========================*/
.next_btn{ display:inline-block; margin:0 auto; padding:18px 5px; background-repeat:no-repeat; background-position:right 10px center; background-size:16px auto; background-color:#ffffff; border-width:2px; border-style:solid; box-sizing:border-box; font-size:16px; font-weight:bold; }
.next_btn:hover{ background-image:url("../img/arrow_white.svg"); color:#ffffff; }
	
/*  form
===================================*/
input,
textarea{ -webkit-appearance:none; -moz-appearance:none; appearance:none; border:#bdbdbd 1px solid; border-radius:3px; box-sizing:border-box; font-size:16px; }
input{ line-height:1; }
textarea{ height:10em; line-height:1.6; }
input[type=checkbox],
input[type=radio]{ width:auto; min-width:auto; padding:0; margin:0 5px 0 0; vertical-align:1px; }
@media all and (-ms-high-contrast: none){ /* ieのみ*/
	input[type=checkbox],
	input[type=radio]{ vertical-align:middle; }
}
input[type=file]{ padding:0; border:none; font-size:14px; line-height:1; vertical-align:middle; }
input[type=button]{ width:auto; }
label{ -webkit-tap-highlight-color:transparent; }
select{ max-width:100%; -webkit-appearance:none; -moz-appearance:none; appearance:none; padding:13px 30px 15px 19px; background:url(../img/ico_arrow_selectbutton.svg) no-repeat right 8px center / 6px auto #ffffff; border:#bdbdbd 1px solid; border-radius:0; font-size:16px; }
select::-ms-expand{ display:none; }
.ico_request{ display:inline-block; margin:0 12px 0 0; padding:2px 10px; font-size:12px; font-weight:normal; color:#ffffff; line-height:1.2; }
/* Placeholder */
input::placeholder{ color:#b7b7b7; }
input:-ms-input-placeholder{ color:#b7b7b7; } /* IE */
input::-ms-input-placeholder{ color:#b7b7b7; } /* Edge */
/* outline */
input:focus,
select:focus,
textarea:focus{ box-shadow:0 0 0 2px #efefef; outline:none; }
input:active{ background:none; }


/*---------- PC版 ----------------------------------------------------------*/
@media screen and (min-width:769px){

    /*===========================
      base
    ===========================*/
    /*  contents
    ===========================*/
    #contents{ max-width:800px; margin:0 auto; padding:30px 20px 50px; }
    
    /*  win_close
    ===========================*/
    #win_close{ position:absolute; top:23px; right:20px; z-index:10; }
    #win_close a{ width:40px; height:40px; display:block; background:url("../img/btn_close_pc.svg") no-repeat center center / 35px auto #ffffff; border-radius:50%; box-shadow:0 0 5px rgba(0,0,0,0.1); }
    
    /*===========================
      parts
    ===========================*/
    /*  btn
    ===========================*/
    .next_btn{ width:275px; }
    
    /*  hover
    ===========================*/
    a:hover{
        -webkit-transition:0.2s ease-in-out;
        -moz-transition:0.2s ease-in-out;
        -o-transition:0.2s ease-in-out;
        transition:0.2s ease-in-out;
    }
    .next_btn:hover,
    ul.rclist_01 li:hover label .img::after,
    ul.rclist_02 li:hover label .img::after{
        -webkit-transition:0.2s ease-in-out;
        -moz-transition:0.2s ease-in-out;
        -o-transition:0.2s ease-in-out;
        transition:0.2s ease-in-out;
    }
    
    /*  form
    ===========================*/
    input,
    textarea{ min-width:544px; padding:21px 20px; }

    /*===========================
      module
    ===========================*/
    /*  toppage
    ===========================*/
    .toppage{ padding:70px 0; text-align:center; }
    .toppage .title{ margin:0 0 50px; font-size:32px; }
    .toppage .topimg{ margin:0 0 30px; }
    .toppage .topimg img{ width:auto; max-height:300px; }
    .toppage .btn_area{ margin:30px 0 0; }
    
    /*  btn_area
    ===========================*/
    .btn_area{ text-align:center; position:relative; }
    .btn_area .backlink{ position:absolute; top:24px; left:0; }
    .btn_area .backlink a{ padding:0 0 0 30px; background:url("../img/arrow_gray_left.svg") no-repeat 0 0 / 13px auto; font-size:12px; font-weight:bold; color:#666666; }
    
    /*  pagenav_line
    ===========================*/
    .pagenav_line{ margin:0 0 5px; }
    .pagenav_line ul{ width:100%; display:table; table-layout:fixed; padding:26px 0 0; }
    .pagenav_line ul li{ height:5px; display:table-cell; background:#e8e8e8; position:relative; }
    .pagenav_line ul li::after{ width:1px; height:9px; content:" "; display:block; background:#1b1b1b; position:absolute; right:0; bottom:7px; }
    .pagenav_line ul li.on{ background-size:4px 4px; }
    .pagenav_line ul li span{ display:block; font-size:12px; font-weight:bold; position:absolute; right:-32px; bottom:15px; }
    .pagenav_line ul li::after,
    .pagenav_line ul li span{ display:none; }
    .pagenav_line ul li.present::after,
    .pagenav_line ul li.present span{ display:block; }
    
    /*  pagenav_dot
    ===========================*/
    .pagenav_dot{ margin:0 0 5px; }
    .pagenav_dot ul{ width:100%; padding:26px 0 0; }
    .pagenav_dot ul::after{ content:""; display:block; clear:both; }
    .pagenav_dot ul li{ width:8px; height:8px; float:left; margin:0 5px 0 0; background:#e5e5e5; border-radius:50%; position:relative; }
    .pagenav_dot ul li span{ display:block; font-size:12px; font-weight:bold; position:absolute; left:-30px; bottom:15px; }
    .pagenav_dot ul li:nth-child(-n + 2) span{ left:0; }
    .pagenav_dot ul li span{ display:none; }
    .pagenav_dot ul li.present span{ display:block; }
    
    /*  faq_box
    ===========================*/
    .faq_box{ padding:40px 0; }
    .faq_box .title{ margin:0 0 55px; text-align:center; }
    .faq_box .title span{ display:inline-block; padding:0 0 12px; border-bottom-width:2px; border-style:solid; font-size:22px; font-weight:bold; position:relative; }
    .faq_box .title span::after{ width:6px; height:6px; content:" "; margin:0 auto; background-color:#ffffff; border-width:2px; border-style:solid; transform:rotate(-45deg); position:absolute; left:0; right:0; bottom:-5px; }
    .faq_box .main_img{ height:240px; margin:0 0 37px; text-align:center; }
    .faq_box .main_img img{ width:auto; max-height:100%; }
    
    /*-----  rclist_01 -----*/
    ul.rclist_01{ display:flex; display:-webkit-flex; display:-ms-flexbox; justify-content:center; flex-wrap:wrap; -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; margin:0 -1%; }
    ul.rclist_01 li{ width:31.33%; margin:0 1% 35px; position:relative; }
    ul.rclist_01 li input{ display:none; }
    ul.rclist_01 li label{ display:block; text-align:center; overflow:hidden; position:relative; }
    ul.rclist_01 li label .img{ width:100%; height:145px; display:block; background-repeat:no-repeat; background-position:center center; background-size:105% auto; border-radius:3px; position:relative; }
    ul.rclist_01 li label .img::after{ opacity:0; }
    ul.rclist_01 li label .img::after{ width:100%; height:100%; content:""; background:rgba(255,255,255,0.2); border-radius:3px; position:absolute; top:0; left:0; }
    ul.rclist_01 li label::after{ width:33px; height:34px; content:" "; background-repeat:no-repeat; background-position:0 center; background-size:100% auto; position:absolute; top:5px; right:5px; }
    ul.rclist_01 li input[type=checkbox] + label::after{ background-image:url("../img/checkbox_off.svg"); }
    ul.rclist_01 li input[type=radio] + label::after{ background-image:url("../img/radio_off.svg"); }
    ul.rclist_01 li label .txt{ display:inline-block; padding:13px 0 0; }
    /*  on hover */
    ul.rclist_01 li:hover label .img::after{ opacity:1; }
    ul.rclist_01 li.on input[type=checkbox] + label::after{ background-image:url("../img/checkbox_on.svg"); }
    ul.rclist_01 li.on input[type=radio] + label::after{ background-image:url("../img/radio_on.svg"); }

    /*-----  rclist_02 -----*/
    ul.rclist_02{ display:flex; display:-webkit-flex; display:-ms-flexbox; justify-content:center; flex-wrap:wrap; -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; margin:0 -1.1%; }
    ul.rclist_02 li{ width:22.8%; margin:0 1.1% 18px; position:relative; }
    ul.rclist_02 li input{ display:none; }
    ul.rclist_02 li label{ display:block; text-align:center; box-sizing:border-box; }
    ul.rclist_02 li label::after{ width:100%; height:100%; display:block; content:""; border:#bdbdbd 1px solid; border-radius:3px; position:absolute; top:0; left:0; }
    ul.rclist_02 li label .img{ width:100%; height:126px; display:block; background-repeat:no-repeat; background-position:center center; background-size:100% auto; border-radius:3px 3px 0 0; }
    ul.rclist_02 li label .img::after{ opacity:0; }
    ul.rclist_02 li label .img::after{ width:100%; height:100%; content:""; background:rgba(255,255,255,0.2); border-radius:3px; position:absolute; top:0; left:0; }
    ul.rclist_02 li label .txt{ display:inline-block; padding:14px 5px; }
    /*  hover */
    ul.rclist_02 li:hover label .img::after{ opacity:1; }
    
    /*-----  rclist_03 -----*/
    ul.rclist_03{ display:flex; display:-webkit-flex; display:-ms-flexbox; flex-wrap:wrap; -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; }
    ul.rclist_03 li{ width:49%; display:-webkit-box; display:-ms-flexbox; display:-webkit-flex; display:flex; -webkit-box-align:center; -ms-flex-align:center; -webkit-align-items:center; align-items:center; margin:0 2% 10px 0; padding:0 10px; background:#f2f2f2; border-radius:3px; box-sizing:border-box; overflow:hidden; position:relative; }
    ul.rclist_03 li:nth-child(2n){ margin-right:0; }
    ul.rclist_03 li input[type=checkbox],
    ul.rclist_03 li input[type=radio]{ display:none; }
    ul.rclist_03 li label{ width:100%; display:block; padding:15px 0 15px 47px; background-repeat:no-repeat; background-position:0 center; background-size:33px auto; box-sizing:border-box; }
    ul.rclist_03 li input[type=checkbox] + label{ background-image:url("../img/checkbox_off.svg"); }
    ul.rclist_03 li input[type=radio] + label{ background-image:url("../img/radio_off.svg"); }
    /*  on */
    ul.rclist_03 li.on{ color:#ffffff; }
    ul.rclist_03 li.on input[type=checkbox] + label{ background-image:url("../img/checkbox_on.svg"); }
    ul.rclist_03 li.on input[type=radio] + label{ background-image:url("../img/radio_on.svg"); }
    
    /*-----  rclist_04 -----*/
    ul.rclist_04{ overflow:hidden; }
    ul.rclist_04 li{ float:left; margin:6px 15px 6px 0; padding:0 23px 0 15px; background:#f2f2f2; border-radius:3px; overflow:hidden; box-sizing:border-box; }
    ul.rclist_04 li input[type=radio],
    ul.rclist_04 li input[type=checkbox]{ display:none; }
    ul.rclist_04 li label{ display:inline-block; padding:10px 0 10px 35px; background-repeat:no-repeat; background-position:0 center; background-size:25px auto; }
    ul.rclist_04 li input[type=checkbox] + label{ background-image:url("../img/checkbox_off.svg"); }
    ul.rclist_04 li input[type=radio] + label{ background-image:url("../img/radio_off.svg"); }
    /* on */
    ul.rclist_04 li.on{ color:#ffffff; }
    ul.rclist_04 li.on input[type=checkbox] + label{ background-image:url("../img/checkbox_on.svg"); }
    ul.rclist_04 li.on input[type=radio] + label{ background-image:url("../img/radio_on.svg"); }
    
    /*-----  inputarea_01 -----*/
    .inputarea_01{ text-align:center; }
    
    /*-----  inputarea_02 -----*/
    dl.inputarea_02{ width:100%; margin:0 0 12px; }
    dl.inputarea_02:last-child{ margin-bottom:0; }
    dl.inputarea_02 dt{ width:197px; float:left; padding:20px 0 0; font-size:14px; font-weight:bold; }
    dl.inputarea_02 dd{ padding:0 0 0 197px; }
    
    /*  result_box
    ===========================*/
    .result_box{ padding:50px 0 0; }
    .result_box .title{ margin:0 0 50px; padding:14px 0; text-align:center; font-size:26px; font-weight:bold; position:relative; }
    .result_box .title::before{ width:0; height:0; content:""; display:block; margin:0 auto; border-left:15px solid transparent; border-right:15px solid transparent; position:absolute; left:0; right:0; bottom:-15px; }
    .result_box .title::after{ width:0; height:0; content:""; display:block; margin:0 auto; border-left:12px solid transparent; border-right:12px solid transparent; border-top:12px solid #ffffff; position:absolute; left:0; right:0; bottom:-12px; }
    .result_box .btn_area{ margin:0 0 68px; }
    .result_box .btn_area .next_btn{ width:400px; padding:26px 0; font-size:19px; }
    
    /*-----  type_list -----*/
    .result_box ul.type_list{ width:100%; display:flex; display:-webkit-flex; display:-ms-flexbox; flex-wrap:wrap; -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; margin:0 0 75px; }
    .result_box ul.type_list li{ width:24%; margin:0 1.33% 0 0; text-align:center; border-radius:4px; box-sizing:border-box; font-size:14px; color:#999999; }
    .result_box ul.type_list li:nth-child(4n){ margin-right:0; }
    .result_box ul.type_list li span{ width:calc(100% / 4); height:100px; display:table-cell; padding:0 10px; vertical-align:middle; }
    .result_box ul.type_list li.on span{ background:#efe6c7; font-size:16px; font-weight:bold; color:#1d1d1d; }
    
    /*-----  chart_box -----*/
    .result_box .chart_box{ width:100%; display:flex; display:-webkit-flex; display:-ms-flexbox; flex-wrap:wrap; -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; margin:0 0 60px; }
    .result_box .chart_box .tit{ margin:0 0 30px; font-size:20px; font-weight:bold; }
    .result_box .chart_box .tit::after{ width:65px; height:2px; content:""; display:block; margin:15px auto 0; }
    .result_box .chart_box .chart_area{ width:51%; padding:0 30px 0 0; text-align:center; border-right:#1d1d1d 1px dashed; box-sizing:border-box; }
    .result_box .chart_box .goods_area{ width:49%; padding:0 20px 0 50px; text-align:center; box-sizing:border-box; }
    .result_box .chart_box .goods_area figure{ margin:0 0 30px; }
    
    /*-----  txt_list -----*/
    .result_box ul.txt_list{ margin:0 0 67px; border-bottom:#1d1d1d 1px dashed; }
    .result_box ul.txt_list li{ padding:25px 0; border-top:#1d1d1d 1px dashed; overflow:hidden; }
    .result_box ul.txt_list li figure{ width:20%; float:left; text-align:center; }
    .result_box ul.txt_list li figure img{ width:70%; }
    .result_box ul.txt_list li .txt_area{ width:80%; float:right; }
    .result_box ul.txt_list li .txt_area p{ line-height:1.6; }
    .result_box ul.txt_list li .txt_area .tit{ margin:0 0 20px; padding:3px 0 0 35px; background:url("../img/ico_check.svg") no-repeat 0 0 / 25px auto; font-size:18px; font-weight:bold; line-height:1.4; }
}

/*---------- SP版 ----------------------------------------------------------*/
@media screen and (max-width: 768px){
    
    body{ font-size:14px; }
    
    /*===========================
      base
    ===========================*/
    /*  contents
    ===========================*/
    #contents{ padding:18px 20px 50px; }
    
    /*  win_close
    ===========================*/
    #win_close{ position:absolute; top:18px; right:18px; z-index:10; }
    #win_close a{ width:30px; height:30px; display:block; background:url("../img/btn_close_sp.svg") no-repeat center center / 100% auto #ffffff; }
    
    /*===========================
      parts
    ===========================*/
    /*  btn
    ===========================*/
    .next_btn{ width:250px; text-align:center; font-size:12px; }
    
    /*  form
    ===========================*/
    input,
    textarea{ width:100%; padding:18px 15px; }
    
    /*===========================
      module
    ===========================*/
    /*  toppage
    ===========================*/
    .toppage{ padding:32px 15px; text-align:center; }
    .toppage .title{ margin:0 0 25px; font-size:25px; }
    .toppage .topimg{ margin:0 0 20px; }
    .toppage .btn_area{ margin:30px 0 0; }
    
    /*  btn_area
    ===========================*/
    .btn_area{ text-align:right; position:relative; }
    .btn_area.top{ text-align:center; }
    .btn_area .backlink{ position:absolute; top:16px; left:0; }
    .btn_area .backlink a{ padding:0 0 0 20px; background:url("../img/arrow_gray_left.svg") no-repeat 0 0 / 13px auto; font-size:12px; font-weight:bold; color:#666666; }
    
    /*  pagenav_line
    ===========================*/
    .pagenav_line{ margin:0 0 10px; padding:0 58px 0 0; }
    .pagenav_line ul{ width:100%; display:table; table-layout:fixed; padding:26px 0 0; }
    .pagenav_line ul li{ height:5px; display:table-cell; background:#e8e8e8; position:relative; }
    .pagenav_line ul li::after{ width:1px; height:9px; content:" "; display:block; background:#1b1b1b; position:absolute; right:0; bottom:7px; }
    .pagenav_line ul li.on{ background-size:4px 4px; }
    .pagenav_line ul li span{ display:block; font-size:10px; font-weight:bold; position:absolute; right:-24px; bottom:15px; }
    .pagenav_line ul li::after,
    .pagenav_line ul li span{ display:none; }
    .pagenav_line ul li.present::after,
    .pagenav_line ul li.present span{ display:block; }
    
    /*  pagenav_dot
    ===========================*/
    .pagenav_dot{ margin:0 0 10px; padding:0 58px 0 0; }
    .pagenav_dot ul{ width:100%; padding:26px 0 0; }
    .pagenav_dot ul::after{ content:""; display:block; clear:both; }
    .pagenav_dot ul li{ width:8px; height:8px; float:left; margin:0 5px 0 0; background:#e5e5e5; border-radius:50%; position:relative; }
    .pagenav_dot ul li span{ display:block; font-size:10px; font-weight:bold; position:absolute; left:-26px; bottom:15px; }
    .pagenav_dot ul li:nth-child(-n + 2) span{ left:0; }
    .pagenav_dot ul li span{ display:none; }
    .pagenav_dot ul li.present span{ display:block; }
    
    /*  faq_box
    ===========================*/
    .faq_box{ padding:27px 0; }
    .faq_box .title{ margin:0 0 35px; text-align:center; }
    .faq_box .title span{ display:inline-block; padding:0 0 5px; border-bottom-width:2px; border-style:solid; font-size:18px; font-weight:bold; position:relative; }
    .faq_box .title span::after{ width:10px; height:10px; content:" "; margin:0 auto;background-color:#ffffff; border-width:2px; border-style:solid;transform:rotate(-45deg); position:absolute; left:0; right:0; bottom:-7px; }
    .faq_box .main_img{ width:100%; margin:0 0 37px; text-align:center; }
    .faq_box .main_img img{ width:auto; max-width:100%; }z
    
    /*-----  rclist_01 -----*/
    ul.rclist_01{ display:flex; display:-webkit-flex; display:-ms-flexbox; justify-content:center; flex-wrap:wrap; -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; }
    ul.rclist_01 li{ width:47%; margin:0 3% 10px; position:relative; }
    ul.rclist_01 li:nth-child(2n+1){ margin-left:0; }
    ul.rclist_01 li:nth-child(2n){ margin-right:0; }
    ul.rclist_01 li input{ display:none; }
    ul.rclist_01 li label{ display:block; text-align:center; overflow:hidden; position:relative; }
    ul.rclist_01 li label .img{ width:100%; height:90px; display:block; background-repeat:no-repeat; background-position:center center; background-size:100% auto; border-radius:3px; position:relative; }
    /*ul.rclist_01 li label .img::after{ display:none; }*/
    ul.rclist_01 li label::after{ width:29px; height:29px; content:" "; background-repeat:no-repeat; background-position:0 center; background-size:100% auto; position:absolute; top:5px; right:5px; }
    ul.rclist_01 li input[type=checkbox] + label::after{ background-image:url("../img/checkbox_off.svg"); }
     ul.rclist_01 li input[type=radio] + label::after{ background-image:url("../img/radio_off.svg"); }
    /*  on */
    ul.rclist_01 li.on input[type=checkbox] + label::after{ background-image:url("../img/checkbox_on.svg"); }
    ul.rclist_01 li.on input[type=radio] + label::after{ background-image:url("../img/radio_on.svg"); }
    ul.rclist_01 li label .txt{ display:inline-block; padding:5px 0 0; }

    /*-----  rclist_02 -----*/
    ul.rclist_02{ display:flex; display:-webkit-flex; display:-ms-flexbox; justify-content:center; flex-wrap:wrap; -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; }
    ul.rclist_02 li{ width:47%; margin:0 3% 20px; position:relative; }
    ul.rclist_02 li:nth-child(2n+1){ margin-left:0; }
    ul.rclist_02 li:nth-child(2n){ margin-right:0; }
    ul.rclist_02 li input{ display:none; }
    ul.rclist_02 li label{ display:block; text-align:center; box-sizing:border-box; }
    ul.rclist_02 li label::after{ width:100%; height:100%; display:block; content:""; border:#bdbdbd 1px solid; border-radius:3px; position:absolute; top:0; left:0; }
    ul.rclist_02 li label .img{ width:100%; height:100px; display:block; background-repeat:no-repeat; background-position:center center; background-size:100% auto; border-radius:3px 3px 0 0; }
    ul.rclist_02 li label .txt{ display:inline-block; padding:14px 5px; }
    
    /*-----  rclist_03 -----*/
    ul.rclist_03{ display:flex; display:-webkit-flex; display:-ms-flexbox; flex-wrap:wrap; -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; }
    ul.rclist_03 li{ width:100%; display:-webkit-box; display:-ms-flexbox; display:-webkit-flex; display:flex; -webkit-box-align:center; -ms-flex-align:center; -webkit-align-items:center; align-items:center; margin:0 0 8px; padding:8px 10px; background:#f2f2f2; border-radius:5px; box-sizing:border-box; position:relative; }
    ul.rclist_03 li:nth-child(2n){ margin-right:0; }
    ul.rclist_03 li input[type=checkbox],
    ul.rclist_03 li input[type=radio]{ display:none; }
    ul.rclist_03 li label{ width:100%; display:block; padding:10px 0 10px 47px; background-repeat:no-repeat; background-position:0 center; background-size:32px auto;  box-sizing:border-box; }
    ul.rclist_03 li input[type=checkbox] + label{ background-image:url("../img/checkbox_off.svg"); }
    ul.rclist_03 li input[type=radio] + label{ background-image:url("../img/radio_off.svg"); }
    /*  on */
    ul.rclist_03 li.on{ color:#ffffff; }
    ul.rclist_03 li.on input[type=checkbox] + label{ background-image:url("../img/checkbox_on.svg"); }
    ul.rclist_03 li.on input[type=radio] + label{ background-image:url("../img/radio_on.svg"); }
    
    /*-----  rclist_04 -----*/
    ul.rclist_04{ padding:5px 0; overflow:hidden; }
    ul.rclist_04 li{ float:left; margin:0 10px 10px 0; padding:0 10px; background:#f2f2f2; border-radius:3px; overflow:hidden; box-sizing:border-box; }
    ul.rclist_04 li input[type=radio],
    ul.rclist_04 li input[type=checkbox]{ display:none; }
    ul.rclist_04 li label{ display:inline-block; padding:10px 0 10px 35px; background-repeat:no-repeat; background-position:0 center; background-size:25px auto; }
    ul.rclist_04 li input[type=radio] + label{ background-image:url("../img/radio_off.svg"); }
    ul.rclist_04 li input[type=checkbox] + label{ background-image:url("../img/checkbox_off.svg"); }
    /*  on */
    ul.rclist_04 li.on{ color:#ffffff; }
    ul.rclist_04 li.on input[type=radio] + label{ background-image:url("../img/radio_on.svg"); }
    ul.rclist_04 li.on input[type=checkbox] + label{ background-image:url("../img/checkbox_on.svg"); }
    
    /*-----  inputarea_01 -----*/
    .inputarea_01{ text-align:center; }
    
    /*-----  inputarea_02 -----*/
    dl.inputarea_02{ width:100%; margin:0 0 14px; }
    dl.inputarea_02:last-child{ margin-bottom:0; }
    dl.inputarea_02 dt{ margin:0 0 8px; font-size:14px; font-weight:bold; }
    
    /*  result_box
    ===========================*/
    .result_box{ padding:50px 0 0; }
    .result_box .title{ margin:0 0 18px; padding:11px 0; text-align:center; font-size:18px; font-weight:bold; position:relative; }
    .result_box .title::before{ width:0; height:0; content:""; display:block; margin:0 auto; border-width:10px; border-left:10px solid transparent; border-right:10px solid transparent; position:absolute; left:0; right:0; bottom:-10px; }
    .result_box .title::after{ width:0; height:0; content:""; display:block; margin:0 auto; border-left:7px solid transparent; border-right:7px solid transparent; border-top:7px solid #ffffff; position:absolute; left:0; right:0; bottom:-7px; }
    .result_box .btn_area .next_btn{ width:100%; margin:0 0 55px; padding:13px 0; font-size:16px; }
    
    /*-----  type_list -----*/
    .result_box ul.type_list{ width:100%; display:flex; display:-webkit-flex; display:-ms-flexbox; flex-wrap:wrap; -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; margin:0 0 35px; }
    .result_box ul.type_list li{ width:49%; margin:0 2% 10px 0; text-align:center; border-radius:4px; box-sizing:border-box; font-size:12px; color:#999999; }
    .result_box ul.type_list li:nth-child(2n){ margin-right:0; }
    .result_box ul.type_list li span{ width:calc(100% / 4); height:75px; display:table-cell; padding:0 10px; vertical-align:middle; }
    .result_box ul.type_list li.on{ border-width:1px; font-weight:bold; color:#1d1d1d; }
    
    /*-----  chart_box -----*/
    .result_box .chart_box{ width:100%; margin:0 0 40px; }
    .result_box .chart_box .tit{ margin:0 0 20px; font-size:16px; font-weight:bold; }
    .result_box .chart_box .chart_area{ margin:0 0 35px; text-align:center; }
    .result_box .chart_box .goods_area{ text-align:center; box-sizing:border-box; }
    .result_box .chart_box .goods_area figure{ margin:0 0 15px; text-align:center; }
    .result_box .chart_box .goods_area figure img{ width:85%; }
    
    /*-----  txt_list -----*/
    .result_box ul.txt_list{ margin:0 0 35px; border-bottom:#1d1d1d 1px dashed; }
    .result_box ul.txt_list li{ padding:20px 0; border-top:#1d1d1d 1px dashed; overflow:hidden; }
    .result_box ul.txt_list li figure{ width:18%; float:left; text-align:center; }
    .result_box ul.txt_list li .txt_area{ width:76%; float:right; }
    .result_box ul.txt_list li .txt_area p{ line-height:1.8; }
    .result_box ul.txt_list li .txt_area .tit{ margin:0 0 12px; padding:5px 0 0 35px; background:url("../img/ico_check.svg") no-repeat 0 0 / 27px auto; font-size:16px; font-weight:bold; line-height:1.4; }
}
