@charset "utf-8";
/* ******************************************* */
/* Transfer A -> Flat Design Button */
/* ******************************************* */
.a2btn {
	display: inline-block;
    padding: 3px 1em;
    border-radius: 5px;
    background-color: var(--deep-indigo);
	color: white;
	font-size: 12px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	box-shadow: 2px 2px 5px rgba(0,0,0,0.6);
	margin:0.5em auto;
}
.a2btn span {
}
.a2link {
	display: inline-block;
	padding: 3px;
	background-color: transparent;
	color: var(--deep-indigo);
	font-size: 12px;
	font-weight: bold;
	text-align: center;
	text-decoration: underline;
	width: auto;
}
.ellipsis {
	display: inline-block;
}
.ellipsis p{
	overflow: hidden;
	text-overflow: ellipsis;
}
.h2btn {
	line-height:2em;
	height:2em;
}
.h3btn {
	line-height:3em;
	height:3em;
}
.h36btn {
	line-height:3.6em;
	height:3.6em;
}
.h4btn {
	line-height:4em;
	height:4em;
}
.h45btn {
	line-height:4.5em;
	height:4.5em;
}
.a2btn.w220btn {
	width: 220px;
}
.a2btn.w240btn {
	width: 240px;
}
.a2btn.w300btn {
	width: 300px;
}
.a2btn.fs16btn {
	font-size: 16px;
}
.a2btn.fs18btn {
	font-size: 18px;
}
.a2btn.fs20btn {
	font-size: 20px;
/*	height: 48px;*/
/*	line-height: 48px;*/
}
.a2btn.fs24btn {
	font-size: 24px;
}
.a2btn.fs28btn {
	font-size: 28px;
}
.a2btn.fs30btn {
	font-size: 30px;
}
.fcnoticebtn {
	color: var(--deep-indigo);
}
.fcwarnbtn {
	color: var(--deep-red);
}
.m025btn {
	margin:0.25em 0;
}
.m05_025btn {
	margin:0.5em 0 0.25em;
}
.m05_025btn_auto {
    margin:0.5em auto 0.25em;
}
.m025_1btn {
	margin:0.25em 0 1em;
}
.m05btn {
	margin:0.5em 0;
}
.m1btn {
	margin:1em 0;
}
.m1_025btn {
    margin:1em 0 0.25em;
}
.m2_025btn {
    margin:2em 0 0.25em;
}
.m15btn {
	margin:1.5em 0;
}
.m2btn {
	margin:2em 0;
}
.mt2btn {
	margin-top: 4px;
}
.lh13btn {
	font-size: 20px;
	height: 4.8em;
	line-height:1.6em;
}
.lh2btn {
	line-height:2em;
}
.line4btn {
    font-size: 18px;
    height: 4em;
    line-height: 1.0;
}
.line3btn {
    font-size: 24px;
    height: 3em;
    line-height: 1.0;
}
.line2btn {
    font-size: 24px;
    height: 3em;
    line-height: 1.5;
}
.msg_error_btn {
    font-size: 0.9em;
    font-weight: bold;
    color: var(--deep-red);
    line-height: 1.2;
}
.msg_warn_btn {
    font-size: 0.9em;
    font-weight: bold;
    color: var(--deep-orange);
    line-height: 1.2;
    text-align: center;
    width: 100%;
    margin: 0 auto;
}
.msg_notice_btn {
    font-size: 0.9em;
    font-weight: bold;
    color: var(--deep-indigo);
    line-height: 1.2;
    text-align: center;
    width: 100%;
    margin: 0 auto;
}
.polltimestamp {
    font-size: 0.9em;
    font-weight: bold;
    color: var(--deep-indigo);
    line-height: 1.2;
}
.ti1btn {
	padding-left: 1em;
	text-indent: -1em;
}
.pdf_dl {
	position: relative;
	top: -1px;
	width: 32px;
}
.lh2btn .pdf_dl {
	top: -20px;
}
.kizon-color {
	background-color: dodgerblue;
}
.shinki-color {
	background-color: gold;
}
.maker-color {
	background-color: var(--deep-green);
}
.common-color {
	background-color: var(--deep-orange);
}
.common-color span {
	color: white;
	font-weight: bold;
}
.pf-survey-color {
	background-color: var(--deep-indigo);
}
.pf-survey-color span {
	color: white;
	font-weight: bold;
}
.st-survey-color {
	background-color: var(--deep-red);
}
.st-survey-color span {
	color: white;
	font-weight: bold;
}
.download-color {
	background-color: gold;
}
.download-color span {
	color: darkslategray;
	font-weight: bold;
}
.pf-survey-download-color {
	background-color: var(--deep-green);
}
.pf-survey-download-color span {
	color: darkslategray;
	font-weight: bold;
}
.st-survey-download-color {
	background-color: var(--deep-green);
}
.st-survey-download-color span {
	color: darkslategray;
	font-weight: bold;
}
/* 戻るボタン */
.a2btn.btn_back {
	position: fixed;
	bottom: 20px;
	left: 2px;
	padding: 9px;
	border-radius: 18px;
	font-size: 18px;
}
/* 進むボタン */
.a2btn.btn_next {
	line-height:2em;
	font-size: 18px;
}
/* 最後へボタン */
.a2btn.btn_last {
	float: right;
}
.cpa2btn {
	width: 100%;
	text-align: center;
	font-weight: bold;
}
.cmd {
	font-size: 1em;
	line-height: 2em;
	margin-top: 2em;
}
.submit {
	font-size: 1em;
	/*line-height: 3em;*/
    height: 4em;
    display: table-cell;
    /*text-decoration-line: none;*/
    /*width: 278px;*/
    width: 314px;
}
.submit:disabled {
    background-color: lightgray;
}
@media (min-height: 429px) {
	.cmd {
		margin-top: 3em;
	}
}
.go_back {
	font-size: 1em;
	/*line-height: 1.5em;*/
	margin: 0;
	padding: 0.5em 1em;
}
.refiner_btn {
    font-size: 1em;
    padding: 9px 0.5em 6px;
    margin: -4px 0 0;
}
.hnav {
	/*font-size: 1em;*/
	font-size: 0.8em;
	/*line-height: 1.5em;*/
	margin: 0;
	/*padding: 0.5em 1em;*/
/*	padding: 0.5em 0.5em;*/
    padding: 0.6em 0.5em 0.4em;
	/*min-width: 88px;*/
	min-width: 4em;
}
@media (min-width: 768px) {
	.hnav {
/*		padding: 0.5em 1em;*/
		padding: 0.6em 1em 0.4em;
	}
}
/* ******************************************* */
/* Transfer Input[Radio] -> Flat Design Button */
/* ******************************************* */
.radio2btn {
	display: none;
}

.radio2btn+label{
/*    display: inline-block;*/
	cursor: pointer;
	margin: 6px 1px 0 0;
	padding: 0.5em;
	background-color: ghostwhite;
	border-radius: 0.25em;
	text-align: left;
	box-shadow: 1px 1px 2px rgba(0,0,0,0.8);

	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
}

.radio2btn:focus+label
,.radio2btn:hover+label {
	background-color: gold;
}
/*
.radio2btnDisabled+label,
.radio2btnDisabled:focus+label,
.radio2btnDisabled:hover+label {
	background-color: lightgray;
}
*/
.radio2btn:disabled+label,
.radio2btn:disabled:focus+label,
.radio2btn:disabled:hover+label {
	background-color: lightgray;
}

.radio2btn:checked+label {
	background-color: var(--deep-orange);
	color: white;
/*	margin: 6px 1px 0 0;*/
	box-shadow: -1px -1px 2px rgba(0,0,0,0.8);
}

.flex_left .radio2btn+label{
	margin: 0 1px 1px 0;
/*	padding: 0.5em 5px;*/
	border-radius: unset;
	text-align: center;
	justify-content: center;
}

.flex_left .radio2btn+label:first-of-type{
	padding-left: 0.75em;
	border-radius: 0.5em 0 0 0.5em;
}

.flex_left .radio2btn+label:last-of-type{
	padding-right: 0.75em;
	border-radius: 0 0.5em 0.5em 0;
}

.flex_left .radio2btn:checked+label {
	background-color: var(--deep-orange);
	color: white;
	margin: 1px 1px 0 0;
	box-shadow: -1px -1px 2px rgba(0,0,0,0.8);
}
/*
@media (max-width: 413px) {
	.radio2btn+label{
		padding: 0.5em 0.5em;
	}

	.flex_left .radio2btn+label:first-of-type{
		padding-left: 0.5em;
	}

	.flex_left .radio2btn+label:last-of-type{
		padding-right: 0.5em;
	}
}
*/
@media (max-width: 414px) {
	.compact2btn .radio2btn+label{
		padding: 0.5em 0.3em;
	}

	.flex_left.compact2btn .radio2btn+label:first-of-type{
		padding-left: 0.75em;
	}

	.flex_left.compact2btn .radio2btn+label:last-of-type{
		padding-right: 0.75em;
	}
}
@media (max-width: 414px) {
	.radio2btn+label{
		padding: 0.5em;
		width: 100%;
	}

	.flex_left .radio2btn+label:first-of-type{
		padding: 0.5em;
		border-radius: 0.25em;
	}

	.flex_left .radio2btn+label:last-of-type{
		padding: 0.5em;
		border-radius: 0.25em;
	}
}
/* ******************************************* */
/* Transfer Input[Checkbox] -> Flat Design Button */
/* ******************************************* */
.check2btn {
	display: none;
}

.check2btn+label{
/*  display: block;*/
	cursor: pointer;
	margin: 6px 1px 0 0;
	padding: 0.5em;
	background-color: ghostwhite;
	border-radius: 0.25em;
	text-align: left;
	box-shadow: 1px 1px 2px rgba(0,0,0,0.8);

	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-content: center;
	align-items: center;

	max-width: 345px;
}

.check2btn:focus+label
,.check2btn:hover+label {
	background-color: gold;
}

.check2btnDisabled+label,
.check2btnDisabled:focus+label,
.check2btnDisabled:hover+label {
	background-color: lightgray;
}

.check2btn:checked+label {
	background-color: var(--deep-orange);
	color: white;
/*	margin: 4px 0 0 0;*/
	box-shadow: -1px -1px 2px rgba(0,0,0,0.8);

/*	margin: 6px 1px 0 0;*/
}

.flex_left .check2btn+label{
/*	margin: 3px 3px 1px 0;*/

	margin: 0 1px 1px 0;
	padding: 0.5em 5px;
	border-radius: unset;
	text-align: center;
	justify-content: center;
	min-width: 345px;
}
.flex_left .check2btn:checked+label {
/*	margin: 4px 3px 0 0;*/

	background-color: var(--deep-orange);
	color: white;
	margin: 1px 1px 0 0;
	box-shadow: -1px -1px 2px rgba(0,0,0,0.8);
}


.rechk{
    display: none;
}
.rechk+label{
    display: none;
    cursor: pointer;
    display: inline-block;
    position: relative;
    padding-left: 25px;
    padding-right: 10px;
}
.rechk+label::before{
    content: "";
    position: absolute;
    display: block;
    box-sizing: border-box;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    left: 0;
    top: 50%;
    border: 1px solid;
    border-color:  #585753;
    background-color: #FFF;
}
.rechk:checked+label::after{
    content: "";
    position: absolute;
    display: block;
    box-sizing: border-box;
    width: 18px;
    height: 9px;
    margin-top: -9px;
    top: 50%;
    left: 3px;
    transform: rotate(-45deg);
    border-bottom: 3px solid;
    border-left: 3px solid;
    border-color:  #585753;
}

.rechk:checked + label::after {
  /* width: 18px; */
  /* height: 9px; */
  /* margin-top: -9px; */
  /* top: 50%; */
  /* transform: rotate(-45deg); */
  /* border-bottom: 3px solid; */
  /* border-left: 3px solid; */
  /* border-color: #585753; */
  width: 1em;
  height: 0.5em;
  margin-top: -0.4em;
 /* top: 0.5em; */
  top: 0.75em;
  left: -1.55em;
  transform: rotate(-50deg);
  border-bottom: 6px solid;
  border-left: 6px solid;
  border-color: var(--deep-orange);
}

.rechk + label::before {
  /* width: 20px; */
  /* height: 20px; */
  /* margin-top: -10px; */
  /* top: 50%; */
  /* border: 1px solid; */
  width: 1em;
  height: 1em;
  margin-top: -0.4em;
  /* top: 0.5em; */
  top: 0.75em;
  left: -1.55em;
  border: 3px solid;
  box-shadow: 2px 2px 5px rgba(0,0,0,0.3);
}

.rechk + label {
  /* padding-left: 25px; */
  /* padding-right: 10px; */
  /* margin: 0.5em; */
  /* padding: 0 0 0 2.2em; */
  margin: 0.5em 0.5em 0.5em 1.5em;
  padding: 0.25em 0.75em 0.25em 1.75em;
  text-indent: -1em;
  width: 80%;
  border: 5px solid transparent;
}

.flex_left > .rechk + label {
  width: auto;
}

.rechk:checked + label {
  border: 5px solid var(--deep-orange);
  border-radius: 0.5em;
}

.rechk:disabled+label {
	color: lightgray;
}

.btn_disabled {
    background-color: lightgray;
}
