@charset "utf-8";


@import url("/ssi/css/detail.css");
/* アンケート一覧 */
#main_body table.tbl_ques {
	width: 100%;
	margin: 0;
	border-width: 2px;
}

#main_body table.tbl_ques caption {
	text-align: left;
}

#main_body table.tbl_ques th {
	font-weight: bold;
	text-align: center;
}

#main_body table.tbl_ques th.title {
	width: 50%;
}

#main_body table.tbl_ques th.date {
	width: 18%;
}

#main_body table.tbl_ques th.date2 {
	width: 18%;
}

#main_body table.tbl_ques th.button {
	width: 14%;
}

#main_body table.tbl_ques td.t_center {
	text-align: center;
}

#main_body table.tbl_ques td a {
	padding: 5px 10px;
	background-color: #333;
	color: #fff;
	text-decoration: none;
	transition: .3s background-color;
}
@media (any-hover: hover) {
	#main_body table.tbl_ques td a:hover {
		background-color: var(--primary-color);
	}
}

div[class*=question] #main_body table.tbl_ques td input {
	display: block;
	margin: 0;
	padding: 10px;
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	min-width: auto;
}

/* アンケート詳細 */
#main_body fieldset {
	border: none;
}

#main_body textarea {
	white-space: normal !important;
	word-break: normal;
}

div.q2 br {
	display: none;
}

div[class*=question_detail] #main_body fieldset {
	margin: 0 0 40px;
	margin: 0 0 var(--content-margin-normal, 40px);
}

div[class*=question_detail] #main_body fieldset legend, div[class*=question_detail] #main_body .q2 {
	display: block;
	width: 100%;
	margin: 0;
	padding: 15px;
	background-color: #d8edd8;
	font-size: 1.8rem;
	font-weight: bold;
}

div[class*=question_detail] #main_body fieldset label {
	margin-right: 1em;
}

div[class*=question_detail] #main_body select {
	height: 2em;
}

div[class*=question_detail] #main_body input[type=text] {
	max-width: 100%;
	height: 2em;
	box-sizing: border-box;
	border: 1px solid #666;
}

div[class*=question_detail] #main_body textarea {
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #666;
}

div[class*=question_detail] #main_body img {
	max-width: 100%;
	height: auto !important;
	vertical-align: top;
}

div[class*=question_detail] #main_body form > img {
	margin-top: 1em;
	margin-bottom: 1em;
}

div[class*=question_detail] #main_body div.detail_free > *:first-child {
	margin-top: 0 !important;
}

div[class*=question_detail] #main_body div.detail_free > *:last-child {
	margin-bottom: 0 !important;
}

div[class*=confirm_quest_hankyou] #hyouka_area_submit, div[class*=question_detail] #main_body form p[align=left], div[class*=question_detail] #main_body form p[style="text-align:left;"] {
	text-align: center;
	margin: 60px 0 0;
	margin: var(--content-margin-wide, 60px) 0 0;
	display: -webkit-flex;
	display:         flex;
	-webkit-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-justify-content: center;
	        justify-content: center;
	-webkit-align-items: flex-start;
	        align-items: flex-start;
	gap: 20px;
}

div[class*=question] #main_body input[type=submit], div[class*=question] #main_body input[type=button] {
	display: inline-block;
	background-color: #333;
	border: 0;
	color: #fff;
	font-size: 1.8rem;
	line-height: 1.8rem;
	padding: 15px 20px;
	text-align: center;
	width: 260px;
	max-width: calc(50% - 10px);
	transition: .3s background-color;
}
@media (any-hover: hover) {
	div[class*=question] #main_body input[type=submit]:hover, div[class*=question] #main_body input[type=button]:hover {
		background-color: var(--primary-color);
	}
}

/* アンケート詳細2（別テンプレート／ヘッダ・フッタなし） */
div[class*=question_detail2] #footstep_wrap {
	display: none !important;
}

/* アンケート結果グラフ */
#main_body img[src*="img/graph.gif"] {
	height: 20px !important;
	vertical-align: middle;
}

/* お問い合わせフォーム */
#mail_form_message, #cookie_err_message {
	margin: 1em 0;
	color: #c00;
}

#main_body table#mail_form_tbl {
	width: 100%;
	margin: 0;
	border-width: 2px;
}

#main_body table#mail_form_tbl caption {
	text-align: left;
}

#main_body table#mail_form_tbl th {
	width: 25%;
	text-align: left;
}

#main_body table#mail_form_tbl td {
	width: 75%;
}

#main_body table#mail_form_tbl td input[type=text] {
	width: 100%;
	height: 2em;
	box-sizing: border-box;
	border: 1px solid #666;
}

#main_body table#mail_form_tbl td input[type=text]#mail_to, #main_body table#mail_form_tbl td input[type=text]#mail_to2 {
	width: 80%;
}

#main_body table#mail_form_tbl td textarea {
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #666;
}

#main_body table#mail_form_tbl td fieldset {
	border: none;
	margin: 0;
	padding: 0;
}

#mail_form_btn_wrap {
	text-align: center;
	margin: 60px 0 0;
	margin: var(--content-margin-wide, 60px) 0 0;
	display: -webkit-flex;
	display:         flex;
	-webkit-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-justify-content: center;
	        justify-content: center;
	-webkit-align-items: flex-start;
	        align-items: flex-start;
	gap: 20px;
}

#mail_form_btn_wrap input[type=submit] {
	display: inline-block;
	background: #333;
	background: var(--btn-background, #333);
	border: 0;
	color: #fff;
	color: var(--btn-color, #fff);
	text-decoration: none;
	font-size: 1.5rem;
	font-size: var(--fontsize-main-small, 1.5rem);
	line-height: 1.8rem;
	padding: 15px 20px;
	text-align: center;
	transition: .3s background-color;
	width: 260px;
	max-width: calc(50% - 10px);
}
@media (any-hover: hover) {
	#mail_form_btn_wrap input[type=submit]:hover, #mail_form_btn_wrap input[type=submit]:focus {
		background: #048004;
		background: var(--btn-hover-background, #048004);
	}
}

#mail_form_btn_wrap p {
	width: 100%;
	margin: 0;
	font-size: 1.5rem;
	font-size: var(--fontsize-main-small, 1.5rem);
}

/* お問い合わせフォーム（必須・いずれか必須表示切り替え） */
#main_body table#mail_form_tbl th .hidden {
	display: none !important;
}
/*お問い合わせ（お問い合わせ内容の文字数カウント）*/
#main_body table#mail_form_tbl .body_num_count {
	display: block;
	text-align: right;
	margin: 10px 0px 10px;
	line-height: 1;
}

span#body_num {
	font-weight: bold;
}

/* お問い合わせフォームの任意チェックボックス項目 */
.optional_checkbox_name_label span:not(span:last-child) {
	margin-right: 1em;
}


/* ==================================================
スマートフォン
================================================== */
@media screen and (max-width: 1080px) {
	/* アンケート一覧 */
	#main_body table.tbl_ques {
		margin-top: 20px;
		margin-top: var(--content-margin-narrow, 20px);
	}
	#main_body table.tbl_ques th {
		font-size: 1.1rem;
		padding: 4px;
	}
	#main_body table.tbl_ques th.title {
		width: 42%;
	}
	#main_body table.tbl_ques th.date {
		width: 22%;
	}
	#main_body table.tbl_ques th.date2 {
		width: 22%;
	}
	#main_body table.tbl_ques th.button {
		width: 14%;
	}
	#main_body table.tbl_ques td {
		font-size: 1.3rem;
		padding: 4px;
	}
	div[class*=question] #main_body table.tbl_ques td input {
		font-size: 1.1rem;
		padding: 5px;
	}
	/* アンケート詳細 */
	div[class*=question_detail] #main_body input[type=text] {
		width: 100%;
	}
	div[class*=question_detail] #main_body textarea {
		width: 100%;
	}
	div[class*=question_detail] #main_body h2 {
		margin: 20px 0;
		margin: var(--content-margin-narrow, 20px) 0;
	}
	div[class*=question_detail] #main_body img {
		max-width: 100%;
		height: auto !important;
		vertical-align: top;
	}
	div[class*=confirm_quest_hankyou] #hyouka_area_submit, div[class*=question_detail] #main_body form p[align=left], div[class*=question_detail] #main_body form p[style="text-align:left;"] {
		gap: 10px;
	}
	div[class*=question] #main_body input[type=submit], div[class*=question] #main_body input[type=button] {
		width: calc(40% - 5px);
		min-width: auto;
		padding: 10px;
	}
	/* お問い合わせフォーム */
	#main_body table#mail_form_tbl tbody, #main_body table#mail_form_tbl tr, #main_body table#mail_form_tbl th, #main_body table#mail_form_tbl td {
		display: block;
		width: 100%;
		box-sizing: border-box;
		border: none;
	}
	#main_body table#mail_form_tbl th {
		font-size: 1.2rem;
		padding: 5px 10px;
		text-align: left;
		border-top: 1px solid #333;
		border-top: 1px solid var(--table-bordercolor, #333);
	}
	#main_body table#mail_form_tbl tr:first-child th {
		border-top: none;
	}
	#main_body table#mail_form_tbl td {
		font-size: 1.3rem;
		padding: 10px;
		border-top: 1px dotted #ccc;
	}
	#main_body table#mail_form_tbl td:only-child {
		border-top: none;
	}
	#main_body table#mail_form_tbl td textarea {
		vertical-align: middle;
	}
	#main_body table#mail_form_tbl td input[type=text]#mail_to, #main_body table#mail_form_tbl td input[type=text]#mail_to2 {
		width: 100%;
	}
	#mail_form_btn_wrap {
		gap: 10px;
	}
	#mail_form_btn_wrap input[type=submit] {
		width: calc(40% - 5px);
		min-width: auto;
		padding: 10px;
	}
	#mail_form_btn_wrap p {
		font-size: 1.3rem;
		font-size: var(--fontsize-main-small, 1.3rem);
	}
}
/* ==================================================
スマートフォン ここまで
================================================== */