@charset "utf-8";
/*PC*/
#cont #flow_stage{
	position:relative;
	width:620px;
	margin:0 auto;
	padding:0 0 230px;
	z-index:9800 !important;
	}
@media all and (-ms-high-contrast: none) {
#cont {
	position:relative;
	width:100%;
	margin:0;
	padding:0 40px 0 300px;
}
#cont #flow_stage{
	position:relative;
	width:660px;
	margin:0 auto;
	padding:0 20px 110px;
	z-index:9800 !important;
	overflow:hidden;
	transform:translateX(-20px);
	}
#preloader svg{
	animation:2s linear infinite rotation;
	}
}
@keyframes rotation{
  0%{ transform:rotate(0);}
  100%{ transform:rotate(360deg); }
}
#cont #flow_stage section{
	position:relative;
	width:567px;
	margin:0 0 0 auto;
	padding:0;
	transition: all 300ms cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transition-timing-function: cubic-bezier(0.030, 0.575, 0.175, 1.000); 
	opacity:1;
}
#cont #flow_stage section.hide{
	opacity:0;
}
#cont #flow_stage section.check{
	padding:0 0 240px;
}
#cont #flow_stage section .box{
	position:relative;
	width:100%;
	border-radius:14px;
	padding:30px 20px 75px;
	text-align:left;
	box-shadow: 0 8px 20px 0 rgba(0, 0, 0, .06);
	z-index:5;
	}
#cont #flow_stage section .box p.proviso {
	font-size: 1.6rem;
}
#cont #flow_stage section.check #btn_content_end{
	pointer-events: none;
}
#cont #flow_stage section.check .box{
	pointer-events: none;
}
#cont #flow_stage section.last .box{
	padding:30px 20px;
}
#cont #flow_stage section .q{
	position:relative;
	text-align:center;
}
#cont #flow_stage section .q>p{
	position:relative;
	display:inline-block;
	font-size:6.0rem;
	line-height:1;
	font-weight:500;
	letter-spacing:0em;
	font-family: 'Barlow';
}
#cont #flow_stage section .q p svg{
	width:52.3px;	
	height:auto;
}
#cont #flow_stage section .q span{
	position:relative;
	display:inline-block;
	font-size:6.0rem;
	line-height:1;
	font-weight:500;
	letter-spacing:0em;
	font-family: 'Barlow';
}
#cont #flow_stage section h2{
	white-space: -moz-pre-wrap;
	white-space: -pre-wrap;
	white-space: -o-pre-wrap;
	white-space: pre-wrap;
	word-wrap: break-word;
	position:relative;
	font-size:1.8rem;
	line-height:1.7;
	font-weight:400;
	letter-spacing:0.03em;
	text-align:left;
	padding:20px 0 10px;
	}
#cont #flow_stage section h2 strong{
	font-weight:700;
}
#cont #flow_stage section .box .btn_next{
	position:absolute;
	bottom:-75px;
	left:50%;
	transform:translateX(-50%);
	width:150px;
}
#cont #flow_stage section .box .btn_next a{
	position:relative;
	display:block;
	transition: all 300ms cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transition-timing-function: cubic-bezier(0.030, 0.575, 0.175, 1.000); 
	transform-origin:center center;
	cursor:default;
}
#cont #flow_stage section .box .btn_next a.active{
	cursor:pointer;
}
#cont #flow_stage section .box .btn_next a.active:hover {
	transform:scale(1.1);
}
#cont #flow_stage section .box .btn_next a.active:active{
	transition: all 100ms cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transition-timing-function: cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transform:scale(0.9) !important;
	}
#cont #flow_stage section .box .btn_next svg{
	width:150px;
	height:150px;
}
#cont #flow_stage section .btn_back{
	position:absolute;
	top:-65px;
	left:50%;
	transform:translateX(-50%);
	width:150px;
	z-index:5;
}
#cont #flow_stage section .btn_back a{
	position:relative;
	display:block;
	transition: all 300ms cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transition-timing-function: cubic-bezier(0.030, 0.575, 0.175, 1.000); 
	transform-origin:center center;
	cursor:pointer;
}
#cont #flow_stage section .btn_back a:hover {
	transform:scale(1.1);
}
#cont #flow_stage section .btn_back a:active{
	transition: all 100ms cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transition-timing-function: cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transform:scale(0.9) !important;
	}
#cont #flow_stage section .btn_back img{
	width:100%;
	height:auto;
}
#cont #flow_stage section .next_bar{
	position:absolute;
	bottom:40px;
	left:50%;
	transform:translateX(-50%);
	width:4px;
	height:240px;
	transform-origin:center top;
	z-index:2;
}
#cont #flow_stage section .end_bar{
	position:absolute;
	bottom:42px;
	left:50%;
	transform:translateX(-50%);
	width:27px;
	height:203px;
	transform-origin:center top;
	z-index:2;
}
#cont #flow_stage section.last::before{
	content: "";
	display:block;
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:150px;
	z-index:3;
}
#cont #flow_stage section.last.check::before{
	transition: all 300ms cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transition-timing-function: cubic-bezier(0.030, 0.575, 0.175, 1.000); 
	bottom:245px;
}
#cont #flow_stage .pnavi-container section.pnavi-content-end p.end_bar img{
	width:100%;
	height:auto;
}
#cont #flow_stage section .box .a{
	position:relative;
	padding:16px 0 0;
}
#cont #flow_stage section .box .a .help_btn{
	position:absolute;
	display:block;
	top:35px;
	right:18px;
	width:20px;
	height:20px;
	transition: all 300ms cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transition-timing-function: cubic-bezier(0.030, 0.575, 0.175, 1.000); 
	transform-origin:center center;
	margin:0;
	padding:0;
	overflow:hidden;
}
#cont #flow_stage section .box .a .help_btn svg{
	width:100% !important;
	height:auto !important;
}
#cont #flow_stage section .box .a .help_btn:hover {
	transform:scale(1.3);
}
#cont #flow_stage section .box .a .help_btn:active{
	transition: all 100ms cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transition-timing-function: cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transform:scale(0.9) !important;
	}
input[type=radio]{
    display: inline-block;
    display: none;
    margin: 0;
}
input[type=radio] + label{
    position: relative;
    display: block;
	border-radius:14px;
}
input[type=radio] + label::before {
        content: "";
        position: absolute;
        top: 29px;
        left:15px;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: block;
        width: 26px;
        height: 26px;
        margin-top: -13px;
		border-radius: 13px;
    }
input[type=radio]:checked + label::after {
        content: "";
        position: absolute;
        top: 29px;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: block;
        left: 21px;
        width: 14px;
        height: 14px;
        margin-top: -7px;
        border-radius: 7px;
    }
input[type=radio]:checked + label::before {
}
input[type=radio]:checked + label{
}

input[type=checkbox] {
    display: inline-block;
        display: none;
        margin: 0;
}
input[type=checkbox] + label {
     position: relative;
    display: block;
	border-radius:14px;
}
    input[type=checkbox] + label::before {
        content: "";
        position: absolute;
        top: 29px;
        left: 15px;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: block;
        width: 26px;
        height: 26px;
        margin-top: -13px;
        background: #fff;
        border-radius: 6px;
    }
    input[type=checkbox]:checked + label::after {
        content: "";
        position: absolute;
        top: 29px;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: block;
        left: 18px; 
        width: 20px;
        height:10px;
        margin-top: -7px;
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-60deg);
        transform: rotate(-60deg);
    }
input[type=checkbox]:checked + label::before {
}
input[type=checkbox]:checked + label{
}
label p{
	font-size:1.5rem;
	line-height:1.4;
	font-weight:700;
	padding:17px 40px 20px 50px;
    cursor: pointer;	
}
.sub_txt label p{
	box-shadow: 0 8px 20px 0 rgba(0, 0, 0, .06);	
}
.sub_txt input[type=checkbox]:checked + label p{
	box-shadow:none;
}
label span{
	display:block;
	font-size:1.3rem;
	line-height:1.7;
	font-weight:400;
	padding:10px 15px 20px 15px;
	text-align: justify;
	text-justify: inter-ideograph;
}

#btn_content_end{
	position:relative;
	padding:50px 0 0;
	width:567px;
	margin:0 0 0 auto;
	z-index:4;
}
#btn_content_end a{
	position:relative;
	display:block;
	width:100%;
	border-radius:14px;
	padding:18px;
	text-align:center;
	font-size:1.8rem;
	line-height:1;
	font-weight:400;
	letter-spacing:0.03em;
	box-shadow: 0 8px 20px 0 rgba(0, 0, 0, .06);
	transition: all 300ms cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transition-timing-function: cubic-bezier(0.030, 0.575, 0.175, 1.000); 
	transform-origin:center center;
	cursor:default;
}
#btn_content_end a.active{
	background:#fa8600;
	cursor:pointer;
}
#btn_content_end a.active:hover {
	transform:scale(1.05);
}
#btn_content_end a.active:active{
	transition: all 100ms cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transition-timing-function: cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transform:scale(0.9) !important;
	}
#btn_content_end a span {
	position:absolute;
	display:block;
	left:auto;
	right:20px;
	top:50%;
	margin-top:-7px;
	text-decoration:  none;
	height: 15px;
	width: 15px;
}
#btn_content_end a span::before {
	content:  '';
	width: 12px;
	height: 12px;
	display:  block;
	transform: rotate(135deg);
	position:  absolute;
	top: 0;
	right:  0;
}
#result{
	position:relative;
	width:620px !important;
	margin:0 !important;
	overflow:visible;
	}
#result::before{
	content: "";
	display:block;
	position:absolute;
	left:-20px;
	width:660px !important;
	height:calc(100% + 320px) !important;
}
#result .result_ttl{
	position:relative;
	text-align:center;
	padding:0 0 50px;
	}
#result .ttl{
	position:relative;
	font-size:2.6rem;
	line-height:1;
	font-weight:700;
	letter-spacing:0.03em;
	}
#result .quantity{
	position:relative;
	display:inline-block;
	margin:20px auto 0;
	border-radius:14px;
	padding:10px 50px 15px;
	overflow:visible;
	box-shadow: 0 8px 20px 0 rgba(0, 0, 0, .06);
	}
#result .quantity #parts{
	position:absolute;
	top:28px;
	right:-20px;
	width:21px;
	height:21px;
}
#result .quantity #parts img{
	width:100%;
	height:auto;
}
#result .quantity dl{
	position:relative;
	text-align:center;
}
#result .quantity dl dt{
	position:relative;
	display:inline-block;
	font-size:6.0rem;
	line-height:1;
	font-weight:500;
	font-family: 'Barlow';
	letter-spacing:0em;
	padding:0 5px 0 0;
}
#result .quantity dl dd{
	position:relative;
	display:inline-block;
	font-size:2.6rem;
	line-height:1;
	font-weight:400;
	letter-spacing:0em;
	transform:translateY(-10px);
}
#result .result_box{
	position:relative;
	width:100% !important;
	border-radius:14px;
	padding:20px 20px 30px;
	text-align:left;
	box-shadow: 0 8px 20px 0 rgba(0, 0, 0, .06);
	z-index:5;
	margin:0 0 30px;
	}
#result .result_box h3{
	font-size:2.4rem;
	line-height:1.4;
	font-weight:400;
	letter-spacing:0.03em;
	padding:0 40px 25px 0;
}

#result .result_box .btn_detail{
	position:absolute;
	top:20px;
	right:20px;
	text-align:center;
	}
#result .result_box .btn_detail svg{
	width:23px;
	height:23px
}
#result .result_box .btn_detail a svg{
	transition:.4s ease-out;
}
#result .result_box .btn_detail a:hover svg {
	opacity:.4;
}
#result .result_box .btn_detail span{
	position:relative;
	display:block;
	padding:5px 0 0;
	font-size:1.1rem;
	line-height:1;
	font-weight:700;
	letter-spacing:0.15em;
}
#result .result_box dl{
	position:relative;
	border-top:#E5E5E5 1px solid;
	display:table;
	width:100%;
}
#result .result_box dl dt{
	position:relative;
	display:table-cell;
	vertical-align:top;
	text-align:center;
	padding:15px 10px 10px 0;
	width:45px;
}
#result .result_box dl dt svg{
	width:19px;
	height:19px;
	margin:0 auto;
}
#result .result_box dl dt span{
	position:relative;
	display:block;
	padding:5px 0 0;
	font-size:1rem;
	line-height:1;
	font-weight:700;
	letter-spacing:0;
	text-align:center;
}
#result .result_box dl dd{
	position:relative;
	display:table-cell;
	vertical-align:top;
	text-align:left;
	font-size:1.5rem;
	line-height:1.7;
	font-weight:400;
	letter-spacing:0.03em;
	padding:15px 0 10px;
}

#result .result_box dl dd.pnavi-result-deadline {
	white-space: -moz-pre-wrap;
	white-space: -pre-wrap;
	white-space: -o-pre-wrap;
	white-space: pre-wrap;
	word-wrap: break-word;
}

#result .cap{
	position:relative;
	width:620px;
	margin:0;
	padding:0;
	font-size:1.5rem;
	line-height:1.7;
	font-weight:400;
	letter-spacing:0.03em;
	}
#result .cap a{
	text-decoration:underline;
}
#result .cap a:hover{
	text-decoration:none;
}
#btn_top_back{
	position:relative;
	padding:30px 0 0;
	z-index:4;
}
#btn_top_back a{
	position:relative;
	display:block;
	width:100%;
	border-radius:14px;
	padding:18px;
	text-align:center;
	font-size:1.8rem;
	line-height:1;
	font-weight:400;
	letter-spacing:0.03em;
	box-shadow: 0 8px 20px 0 rgba(0, 0, 0, .06);
	transition: all 300ms cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transition-timing-function: cubic-bezier(0.030, 0.575, 0.175, 1.000); 
	transform-origin:center center;
}
#btn_top_back a:hover {
	transform:scale(1.05);
}
#btn_top_back a:active{
	transition: all 100ms cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transition-timing-function: cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transform:scale(0.9) !important;
	}
#btn_top_back a span {
	position:absolute;
	display:block;
	left:auto;
	right:20px;
	top:50%;
	margin-top:-7px;
	text-decoration:  none;
	height: 15px;
	width: 15px;
}
#btn_top_back a span::before {
	content:  '';
	width: 12px;
	height: 12px;
	display:  block;
	transform: rotate(45deg);
	position:  absolute;
	top: 0;
	right:  0;
}
.hit_set{
	position:relative;
	}
#result_multiple_hit,
#result_single_hit{
/*	display:none;*/
	}
#result_single_hit .quantity{
	padding:30px 50px 35px;
	}
#result_single_hit .quantity dl dd{
	transform:translateY(0);
}
#result_non_hit .quantity{
	padding:5px 50px 10px;
	}
#result_non_hit .quantity dl dd{
	line-height:1.3;
	transform:translateY(0);
}
#result_non_hit #result .result_box{
	padding:20px 20px 20px;
}
#result_non_hit .result_box .non_txt{
	font-size:1.5rem;
	line-height:1.7;
	font-weight:400;
	letter-spacing:0.03em;
}
#flow_bar{
	display:block;
	position:fixed;
	top:150px;
	left:50%;
	transform:translateX(-200px);
	width:40px;
	height:50px;
	z-index:1;
	text-align:center;
	}
#flow_bar .number{
	position:relative;
	display:block;
	height:20px;
	font-size:1.4rem;
	line-height:1;
	font-weight:500;
	font-family: 'Barlow';
	letter-spacing:0em;	
	text-align:center;
	}
#bar_set{
	position:absolute;
	top:20px;
	left:0px;
	width:40px;
	}
#bar_set #max_bar{
	position:absolute;
	top:0;
	left:50%;
	transform:translateX(-50%);
	width:4px;
	height:10px;
	border-radius:5px;
	/*
	transition: all 300ms cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transition-timing-function: cubic-bezier(0.030, 0.575, 0.175, 1.000); 
	*/
}
#bar_set #current_bar{
	position:absolute;
	top:0;
	left:50%;
	transform:translateX(-50%);
	width:6px;
	height:10px;
	border-radius:5px;
}
#bar_set #max_bar.onstage{
transition:.3s ease-out;
}
#bar_set #current_bar.onstage{
transition:.6s ease-out;
}
#preloader{
	position:absolute;
	background:#fff;
	width: 100%;
	height: 100%;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index:9825;
	overflow:hidden !important;
}
#preloader svg{
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	width:54px;
	height:54px;
	transform-origin:center center;
}
.help_overlay {
  position: fixed;
  width: 100vw;
  height: 100vh;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 99998;
  overflow:hidden !important;
  }
#help_window{
	opacity:0;
	}
.help_overlay .bg{
  position:absolute;
  width: 100%;
  height: 100%;
  }
.window_cont{
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  width:760px;
  padding:90px 20px;
  border-radius:16px;
  text-align:center;
  }
.window_cont h4{
	position:relative;
	display:inline-block;
	font-size:2.0rem;
	line-height:28px;
	font-weight:700;
	letter-spacing:0.03em;
	min-height:28px;
	padding:0 0 0 40px;
}
.window_cont h4 span{
	position:absolute;
	top:0;
	left:0;
	width:28px;
	height:28px;
}
.window_cont h4 span svg{
	 width:100%;
	 height:auto;
 }
.container{
	position:relative;
	width:680px;
	height:280px;
	margin:20px auto 0;
	padding:0;
	overflow:scroll;
	}
.scroll-area{
	position:relative;
	width:100%;
	height:100%;
	padding:0 35px 0 0;
	margin:0;
	font-size:1.5rem;
	line-height:1.7;
	font-weight:400;
	letter-spacing:0.03em;
	text-align: justify;
	text-justify: inter-ideograph;
	white-space: pre-wrap;
	}
  .window_cont .btn_Close{
	 position:absolute;
	 display:block;
	 z-index: 99999;
	 top:20px;
	 right:20px;
	 width:62px;
	 cursor:pointer;
}
 .window_cont .btn_Close svg{
	 width:100%;
	 height:auto;
	transition: all 300ms cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transition-timing-function: cubic-bezier(0.030, 0.575, 0.175, 1.000); 
	transform-origin:center center;
 }
.window_cont .btn_Close:hover svg{
	transform:scale(1.15);
}
.window_cont .btn_Close:active svg{
	transition: all 100ms cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transition-timing-function: cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transform:scale(0.9) !important;
	}
/*tab～PC（小）*/
@media screen and (max-width:979px) {
#flow_bar{
	display:block;
	position:fixed;
	top:150px;
	left:50%;
	transform:translateX(-320px);
	width:40px;
	height:50px;
	z-index:9700;
	text-align:center;
	}
}
@media all and (-ms-high-contrast: none) and (max-width:979px) {
	#cont {
	position:relative;
	width:100%;
	margin:0;
	padding:0 40px 60px;
}
}
/*SP*/
@media screen and (max-width:767px) {
#cont #flow_stage{
	position:relative;
	width:100%;
	margin:0 auto;
	padding:0 0 8vw;
	}
#cont #flow_stage section{
	position:relative;
	width:calc(100% - 20px);
	margin:0 0 0 auto;
	padding:0;
	transition: all 300ms cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transition-timing-function: cubic-bezier(0.030, 0.575, 0.175, 1.000); 
	opacity:1;
}
#result{
	position:relative;
	width:100% !important;
	margin:0 !important;
	padding:0 !important;
	overflow:visible;
	}
#result::before{
	content: "";
	display:block;
	position:absolute;
	left:-20px;
	width:100vw !important;
	height:calc(100% + 53vw) !important;
}

#cont #flow_stage section.last::before{
	content: "";
	display:block;
	position:absolute;
	bottom:0;
	left:0;
	width:calc(100%) !important;
	height:150px;
	z-index:3;
}
#btn_content_end{
	position:relative;
	width:100%;
	margin:0;
	padding:50px 0 0;
	z-index:4;
}
#flow_bar{
	display:block;
	position:fixed;
	top:150px;
	left:10px;
	transform:translateX(0);
	width:20px;
	height:50px;
	z-index:9700;
	text-align:center;
	}
#flow_bar .number{
	position:relative;
	display:block;
	height:20px;
	font-size:1.4rem;
	line-height:1;
	font-weight:400;
	font-family: 'Barlow';
	letter-spacing:0em;	
	text-align:center;
	}
#bar_set{
	position:absolute;
	top:20px;
	left:0px;
	width:20px;
	}
#bar_set #max_bar{
	position:absolute;
	top:0;
	left:50%;
	transform:translateX(-50%);
	width:4px;
	height:10px;
	border-radius:5px;
}
#bar_set #current_bar{
	position:absolute;
	top:0;
	left:50%;
	transform:translateX(-50%);
	width:6px;
	height:10px;
	border-radius:5px;
}
#result .cap{
	position:relative;
	width:100%;
	margin:0;
	padding:0 0 0 20px;
	font-size:1.5rem;
	line-height:1.7;
	font-weight:400;
	letter-spacing:0.03em;
	}
.window_cont{
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  width:90.3vw !important;
  padding:9.6vw 9.3vw 30vw;
  border-radius:16px;
  text-align:left;
  }
.window_cont h4{
	position:relative;
	display:inline-block;
	font-size:2.0rem;
	line-height:28px;
	font-weight:700;
	letter-spacing:0.03em;
	min-height:28px;
	padding:0 0 0 40px;
}
.window_cont h4 span{
	position:absolute;
	top:0;
	left:0;
	width:28px;
}
.window_cont h4 span svg{
	 width:100%;
	 height:auto;
 }
.container{
	position:relative;
	width:100%;
	height:68.1vw;
	margin:20px auto 0;
	padding:0;
	overflow:scroll;
	}
.scroll-area{
	position:relative;
	width:100%;
	height:100%;
	margin:0;
	padding:0 7.2vw 0 0;
	font-size:1.5rem;
	line-height:1.7;
	font-weight:400;
	letter-spacing:0.03em;
	text-align: justify;
	text-justify: inter-ideograph;
	white-space: pre-wrap;
	}
  .window_cont .btn_Close{
	 position:absolute;
	 z-index: 99999;
	 top:auto;
	 bottom:9.6vw;
	 right:auto;
	 left:50%;
	 width:62px;
	 cursor:pointer;
	transition: all 300ms cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transition-timing-function: cubic-bezier(0.030, 0.575, 0.175, 1.000); 
	transform-origin:center center;
	transform:translateX(-50%);
}
#cont #flow_stage section .box .a .help_btn{
	position:absolute;
	display:block;
	top:17px;
	right:0;
	width:56px;
	height:56px;
	transition: all 300ms cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transition-timing-function: cubic-bezier(0.030, 0.575, 0.175, 1.000); 
	transform-origin:center center;
	margin:0;
	padding:18px;
	overflow:hidden;
}
#cont #flow_stage section .box .btn_next a.active:hover {
	transform:scale(.9) !important;
}
#cont #flow_stage section .box .btn_next a.active:active{
	transform:scale(.9) !important;
	}
#cont #flow_stage section .btn_back a:hover {
	transform:scale(.9) !important;
}
#cont #flow_stage section .btn_back a:active{
	transform:scale(.9) !important;
	}
#btn_content_end a.active:hover {
	transform:scale(.9) !important;
}
#btn_content_end a.active:active{
	transform:scale(.9) !important;
	}
#result .result_box .btn_detail a:active svg {
	transform:scale(.9) !important;
}
#btn_top_back a:hover {
	transform:scale(.9) !important;
}
#btn_top_back a:active{
	transform:scale(.9) !important;
	}
#cont #flow_stage section .box .a .help_btn:hover {
	transform:scale(.9) !important;
}
#cont #flow_stage section .box .a .help_btn:active{
	transform:scale(.9) !important;
	}
.window_cont .btn_Close:hover svg{
	transform:scale(.9) !important;
}
.window_cont .btn_Close:active svg{
	transform:scale(.9) !important;
	}
#preloader svg{
	margin-top:-60px !important;
}
#result .quantity{
	padding:10px 20px 15px;
	}
#result_single_hit .quantity{
	padding:30px 20px 35px !important;
	}
#result_non_hit .quantity{
	padding:5px 20px 10px !important;
	}
}
/*SP 旧端末 調整*/
@media screen and (max-width:380px) {
#cont #flow_stage section .q p{
}
#cont #flow_stage section .q p svg{
	width:40px;
	height:auto;
}
#cont #flow_stage section .q p span.pnavi-question-order{
	font-size:6.0rem;
}
#cont #flow_stage section .q span{
	font-size:4.4rem;
}
#cont #flow_stage section h2{
	font-size:1.5rem;
	}
#cont #flow_stage section h2 strong{
	font-weight:700;
}
label p{
	font-size:1.3rem;
	line-height:1.4;
	font-weight:700;
	padding:20px 40px 20px 50px;
    cursor: pointer;	
}
.sub_txt label p{
	box-shadow: 0 8px 20px 0 rgba(0, 0, 0, .06);	
}
.sub_txt input[type=checkbox]:checked + label p{
	box-shadow:none;
}
label span{
	display:block;
	font-size:1.2rem;
	line-height:1.7;
	font-weight:400;
	padding:10px 15px 20px 15px;
	text-align: justify;
	text-justify: inter-ideograph;
}

#result .ttl{
	position:relative;
	font-size:1.8rem;
	line-height:1;
	font-weight:700;
	letter-spacing:0.03em;
	}
#result .quantity dl dt{
	font-size:4.0rem;
}
#result .quantity dl dd{
	font-size:2.0rem;
	transform:translateY(-5px);
}
#result .result_box h3{
	font-size:1.8rem;
	line-height:1.4;
	font-weight:400;
	letter-spacing:0.03em;
	padding:0 35px 25px 0;
}
#result .cap{
	font-size:1.2rem;
	}
#result_single_hit .quantity{
	padding:35px 20px 30px !important;
	}
#result_non_hit .quantity{
	padding:10px 20px 5px !important;
	}
}

.dynamic-logic2-debug-window {
    position: fixed;
    width: 100%;
    height: 400px;
    background-color: rgba(0, 0, 0, 0.7);
		font-size: 9px;
		bottom: 0;
		z-index: 100000;
		color: #ffffff;
		font-family: monospace;
		line-height: normal;
}

.dynamic-logic2-debug-window.closed {
	height: 20px;
}

.debug-tool-bar {
	position: relative;
	width: 100%;
	height: 20px;
	background-color: #404040;
	vertical-align: middle;
	display: flex;
	justify-content: space-between;
}

.debug-tool-bar button {
	font-size: 9px;
}

.dynamic-logic2-debug-window .tab-content {
	display: flex;
	height: 380px;
}

.dynamic-logic2-editor-view div {
	flex: 1;
	overflow: scroll;
}

.dynamic-logic2-editor-view textarea {
	width: 100%;
	height: 100%;
}

.dynamic-logic2-debug-view div {
	flex: 1;
	overflow: scroll;
}

.dynamic-logic2-debug-view .debug-propositions-view {
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.dynamic-logic2-debug-view .debug-procedures-view {
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.dynamic-logic2-debug-view .debug-view-content {
	position: relative;
	overflow: scroll;
	-ms-overflow-style: none;
}

.dynamic-logic2-debug-view ul li:nth-child(2n) {
	background-color: rgba(255, 255, 255, 0.1);
}

.dynamic-logic2-debug-view ul li.tr-proposition-must {
	color: #ffff00;
	font-weight: bold;
}

.dynamic-logic2-debug-view ul li.tr-proposition-true {
	color: #00ff00;
	font-weight: bold;
}

.dynamic-logic2-debug-view ul li.tr-proposition-false {
	color: #ff5555;
	font-weight: bold;
}

.dynamic-logic2-debug-view ul li.tr-procedure-unknown {
}

.dynamic-logic2-debug-view ul li.tr-procedure-eligible {
	color: #00ff00;
	font-weight: bold;
}

.dynamic-logic2-debug-view ul li.tr-procedure-not_eligible {
	color: #808080;
	font-weight: normal;
}
.dynamic-logic2-debug-view ul input + div:hover {
	background-color: rgba(255, 255, 255, 0.3);
}
.dynamic-logic2-debug-view ul input:checked + div {
	color: #ffffff;
	background-color: rgb(4, 150, 235);
	overflow: hidden;
}
.dynamic-logic2-debug-view ul li div {
	display: flex;
	overflow: hidden;
}
.dynamic-logic2-debug-view ul li div span {
	flex: 1;
}
.dynamic-logic2-debug-view ul li div span:nth-child(2) {
	flex: 8;
}
.dynamic-logic2-debug-view ul li div span:nth-child(3) {
	text-align: center;
}
.debug-tool-bar input[type=radio]:checked + label{
	background-color: #404040;
	color: white;
}

.debug-tool-bar input[type=radio] + label {
	display: inline-block;
	border-radius: 0;
	background-color: #a0a0a0;
	color: #000000;
	padding: 0 10px;
}

.debug-tool-bar input[type=radio] + label::before {
	display: none !important;
}

.debug-tool-bar input[type=radio] + label::after {
	display: none !important;
}

.debug-pne-source-editor {
	width: 100%;
	height: 100%;
	font-size: 12px;
	font-family: Consolas,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New, monospace;
}

.static-logic-debug-view {
	display: flex;
	height: 100%;
}

.debug-pne-source-view {
	flex: 1
}

.debug-pne-console-view {
	flex: 1
}

.dynamic-logic2-debug-window a {
	color: #00ffff;
	text-decoration: underline;
}

.dynamic-logic2-debug-window .criteria-view ul {
	padding-left: 15px;
}
.dynamic-logic2-debug-window .criteria-view li {
	list-style: disc;
	padding-left: 5px;
}
.dynamic-logic2-debug-window ul.counters-view li div span {
	flex: 1;
}
@media all and (-ms-high-contrast: none) and (max-width:767px) {
#cont {
	position:relative;
	width:100%;
	margin:0;
	padding:0 20px 12vw;
}
#cont #flow_stage{
	position:relative;
	width:100%;
	margin:0 auto;
	padding:0 0 8vw;
	overflow:hidden;
	transform:translateX(0);
	}
}

/*申請書作成支援フォーム*/

.btn_to_form{
	position:relative;
	padding:30px 0 0;
	z-index:4;
}
.btn_to_form a{
	position:relative;
	display:block;
	width:100%;
	border-radius:14px;
	padding:18px;
	text-align:center;
	font-size:1.8rem;
	line-height:1;
	font-weight:400;
	letter-spacing:0.03em;
	box-shadow: 0 8px 20px 0 rgba(0, 0, 0, .06);
	transition: all 300ms cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transition-timing-function: cubic-bezier(0.030, 0.575, 0.175, 1.000); 
	transform-origin:center center;
	cursor:default;
}
.btn_to_form a{
	background:#fa8600;
	cursor:pointer;
	pointer-events:auto !important;
}
.btn_to_form a:hover {
	transform:scale(1.05);
}
.btn_to_form a:active{
	transition: all 100ms cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transition-timing-function: cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transform:scale(0.9) !important;
	}
.btn_to_form a span {
	position:absolute;
	display:block;
	left:auto;
	right:20px;
	top:50%;
	margin-top:-9px;
	text-decoration:  none;
	height: 15px;
	width: 15px;
}
.btn_to_form a span svg {
	width:100%;
	height:auto;
}
#result label{
	/*cursor:pointer;*/
	}
#result input[type=checkbox] + p {
     position: relative;
    display: block;
	padding:0 0 0 40px;
}
#result input[type=checkbox] + p::before {
        content: "";
        position: absolute;
        top: 18px;
        left: 0;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: block;
        width: 26px;
        height: 26px;
        margin-top: -13px;
        background: #fff;
        border-radius: 6px;
    }
#result input[type=checkbox]:checked + p::after {
        content: "";
        position: absolute;
        top: 18px;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: block;
        left: 3px; 
        width: 20px;
        height:10px;
        margin-top: -7px;
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-60deg);
        transform: rotate(-60deg);
    }
#result input[type=checkbox]:checked + p::before {
}
#result input[type=checkbox]:checked + p{
	font-weight:700;
}
.hit_set .attention{
	position:relative;
	text-align:center;
	font-size:1.5rem;
	line-height:1.7;
	font-weight:700;
	letter-spacing:0.03em;
	padding:25px 0 0;
	}
#result .online{
	position:relative;
	text-align:left;
	padding:0 0 5px;
}
#result .online span{
	position:relative;
	display:inline-block;
	border-radius: 30px;
	padding:6px 11px 8px;
	text-align:center;
	font-size:1.2rem;
	line-height:1;
	font-weight:700;
	}
/*SP*/
@media screen and (max-width:767px) {
#btn_top_back{
	position:relative;
	padding:20px 0 0;
	z-index:4;
}
.btn_to_form{
	position:relative;
	width:100%;
	margin:0;
	padding:30px 0 0;
	z-index:4;
}	
.btn_to_form a:hover {
	transform:scale(.9) !important;
}
.btn_to_form a:active{
	transform:scale(.9) !important;
	}
}
/*印刷　URLコピー*/
#result .result_ttl.add{
	padding:0 0 30px;
	}
.function_btn_set{
	position:relative;
	text-align:center;
	padding:0 0 30px;
}
.function_btn_set a{
	position:relative;
	display:inline-block;
}
.function_btn_set a svg{
	height:32px !important;
	/* width:auto !important; */
}
.function_btn_set a span{
	position:relative;
	display:block;
	text-align:center;
	font-size:1.2rem;
	line-height:1;
	font-weight:700;
	padding:14px 0 0;
}
.function_btn_set p{
	position:relative;
	display:inline-block;
	margin:0 45px;
	width:1px;
	height:58px;
}

.function_btn_set a svg{
	transition:.4s ease-out;
}
.function_btn_set a:hover svg {
	opacity:.4;
}

.function_btn_set_btm{
	position:relative;
	text-align:center;
	padding:20px 0 30px;
}
.function_btn_set_btm a{
	position:relative;
	display:inline-block;
	width:78px;
	height:78px;
	border-radius:78px;
	margin:0 16px;
	padding:15px 0 0;
	transition: all 300ms cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transition-timing-function: cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transform-origin:center center;
	box-shadow: 0 8px 20px 0 rgba(0, 0, 0, .06);
	text-align:center;
}
.function_btn_set_btm a svg{
	height:25px !important;
	width:auto !important;
}
.function_btn_set_btm a span{
	position:relative;
	display:block;
	text-align:center;
	font-size:1.2rem;
	line-height:1;
	font-weight:700;
	padding:8px 0 0;
}
.function_btn_set_btm a svg{
	transition:.4s ease-out;
}
.function_btn_set_btm a:hover svg {
	opacity:.4;
}
.function_txt{
	position:relative;
	font-size:1.2rem;
	line-height:1.7;
	font-weight:400;
	letter-spacing:0.03em;
	text-align:center;
	}
.end_overlay {
  position: fixed;
  width: 100vw;
  height: 100vh;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 99998;
  overflow:hidden !important;
  }
#end_window{
	display:none;
	}
.end_overlay .bg{
  position:absolute;
  width: 100%;
  height: 100%;
  }
.window_cont_end{
  position:absolute;
  display:inline-block;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  max-width:90vw;
  padding:30px 30px 40px;
  border-radius:16px;
  text-align:center;
  }
.window_cont_end .txt{
	position:relative;
	font-size:1.8rem;
	line-height:1.7;
	font-weight:700;
	letter-spacing:0.03em;
}
   .window_cont_end .btn_Close{
	 position:relative;
	 display:block;
	 width:62px;
	 margin:30px auto 0;
	 cursor:pointer;
}
 .window_cont_end .btn_Close svg{
	 width:100%;
	 height:auto;
	transition: all 300ms cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transition-timing-function: cubic-bezier(0.030, 0.575, 0.175, 1.000); 
	transform-origin:center center;
 }
.window_cont_end .btn_Close:hover svg{
	transform:scale(1.15);
}
.window_cont_end .btn_Close:active svg{
	transition: all 100ms cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transition-timing-function: cubic-bezier(0.030, 0.575, 0.175, 1.000);
	transform:scale(0.9) !important;
	}
@media screen and (max-width:767px) {
.window_cont_end{	
  width:90.3vw !important;
}
.window_cont_end .txt{
	position:relative;
	font-size:1.4rem;
}
.window_cont_end .btn_Close:hover svg{
	transform:scale(.9) !important;
}
.window_cont_end .btn_Close:active svg{
	transform:scale(.9) !important;
	}
}
/*印刷設定*/
@media print{
#cont {
	padding:0 20px !important;
}
#cont #flow_stage section{
	position:relative;
	margin:0 auto !important;
}
#result{
	padding:20px 0 0 !important;
	}
.dynamic-logic2-debug-window,
#flow_bar,
#character,
#cont #flow_stage section .next_bar,
#cont #flow_stage section .end_bar,
#cont #flow_stage section .box .btn_next,
#cont #flow_stage section .btn_back,
.function_btn_set_btm,
.function_btn_set,
#btn_top_back,
#btn_content_end,
#result .quantity #parts,
.function_txt,
#character_result,
.help_btn,
.btn_detail{
	display:none !important;
	opacity:0;
	}
#cont #flow_stage section .box{
	padding:30px 20px 0;
	box-shadow: 0 8px 20px 0 rgba(0, 0, 0,0);
	}
.sub_txt label p,
#result .quantity,
#result .result_box{
	box-shadow: 0 8px 20px 0 rgba(0, 0, 0,0);
	}
#cont #flow_stage section.check{
	padding:0 0 20px;
	pointer-events: none;
}

input[type=radio] + label{
	display:none;
}
input[type=radio]:checked + label{
	display:block !important;
}
input[type=checkbox] + label {
	display:none;
}
input[type=checkbox]:checked + label{
	display:block !important;
}
}
/*
#cont #flow_stage section,
.hit_set{
	display:block !important;
	opacity:1 !important;
	}
*/