#question,
#answer {
    width: 100%;
    margin: auto;
}
#answer {
    margin-top: 0;
}

#question dl dd {
    margin-left: 0;
    width: 100%;
    max-width: 840px;
	margin: 15px auto 0;
}

#question dl dd p,
#question dl dd.survey-question {
    font-weight: 700;
    font-size: 18px;
    margin-bottom: 1.00em;
	letter-spacing: 0.05em;
}
#question dl dd span { /* 必須部分 */
	font-size: 80%;
	vertical-align: 0.1em;
}
#question dl dd pre {
	white-space: pre-wrap;
    margin-bottom: 1em;
    margin-top: -0.5em;
    line-height: 1.6;
}

#answer input[type="text"],
textarea {
    border-radius: 4px;
    border: solid #fff 5px;
    font-size: 14px;
    padding:14px 0;
	box-sizing: border-box;
}

textarea {
	padding: 0 0 20px 0;
}

.fa_textbox .fa-container p input,
#answer #input_email input[type="text"],
#answer #input_confirmation_email input[type="text"]{
	width: 100% !important;
}

#answer #input_email p/*,
#answer p input[type="text"]*/{ 
	width: 100% !important;
}
#answer #email_id_ja p  { /* 確認のため、入力してください。 */
	width: 100% !important;
	text-align: left;
	margin: 1.00em 0 !important;
}

.fa_textbox #answer .survey-answer-item table {
	width: 100%;
	border-spacing: 0 1em;
	border-collapse: collapse !important;
}
.fa_textbox #answer .survey-answer-item table tr td input[type="text"] {
	width: 100%;
}
.fa_textbox #answer .survey-answer-item .fa-container {
	margin: -1em auto 0;
}
.fa_textbox #answer p {
	width: 100%;	
}

.fa_textbox #answer p select.ques-select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 10px 30px 10px 10px;
	background: url(../images/caret-down-solid.svg) right 1rem top no-repeat #fff;
	background-size: 20px, 100%;
	border: solid #fff 5px;
	width: 100%;
	max-width: 100%;
	font-size: 16px;
	border-radius: 5px;
}
table.address {
	margin: 0 !important;
	width: 100%;
}
table.address th {
	width: 10vh;
}
table.address td input {
	width: 100% !important;
}
table.address td select.ques-select {
	border-radius: 5px;
    border: #fff;
    width: 100%;
	max-width: 100%;
}

label.survey-answer-11-1 {
    box-sizing: border-box;
    width: 100% !important;
    font-size: 16px;
    border-radius: 5px !important;
}
.sa_card_image #answer input[type="radio"]+label:hover,
.sa_card_text #answer input[type="radio"]+label:hover {
	border-color: #888;
}
.sa_card_text #answer input[type="radio"]:checked+label {
	border-color: #f08c00;
}


#nextbtn input, #nextbtn button {
	box-shadow: none;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 3px;
	background-color: #f08c00;
}
#nextbtn input:hover:not([disabled]) {
	opacity: 0.8;
}



/* プルダウンのレイアウトの修正　*/
.fa_address #answer .survey-answer-item .address .ques-select {
	background: url(../images/caret-down-solid.svg) right 0.5rem top 0.5rem no-repeat, #fff;
	background-size: 14px, 100%;
}

.fa_date #answer .survey-answer-item .fa_date #answer .ques-select {
	background: url(../images/caret-down-solid.svg) right 0.5rem top 0.5rem no-repeat, #fff;
	background-size: 14px, 100%;
}

.corporate_name #answer .survey-answer-item .corp-select-box .corporation-box .corporation-select-box p .ques-select {
	background: url(../images/caret-down-solid.svg) right 0.5rem top 0.5rem no-repeat, #fff;
	background-size: 14px, 100%;
}

.sa_card_text #answer input[type="radio"]+label{
    background-image: none;
    margin: 0;
    box-shadow: none;
    border: none;
    background-color: transparent;
    padding: 13px 0 0px 30px;
		height: 20px !important;
}

.sa_card_text #answer input[type="checkbox"]+label {
	background-image: none;
	margin: 0;
	box-shadow: none;
	border: none;
	background-color: transparent;
	padding: 13px 0 0px 30px;
	height: 20px !important;
}

.sa_card_text #answer input[type="radio"]:checked+label,
.sa_card_text #answer input[type="checkbox"]:checked+label {
    background-image: none;
    border-color: #000;
}

.sa_card_text #answer input[type="radio"]{
    opacity: 1;
    height: 20px;
}

.sa_card_text #answer input[type="checkbox"] {
	opacity: 1;
  height: 35px;
}

.sa_card_text #answer ul li {
    width: auto;
}

.survey-contents-supplement {
    color: black;
}

#survey-app .survey-section {
    margin-bottom: 40px;
}

/* 設問文 */
#question dl dd p,
#question dl dd.survey-question {
  margin-bottom: 10px; /* 2024.03.14 設問文下の余白を狭く */
  font-size:14px; /* 2024.03.14 modify */
}
#question dl dd span { /* 必須部分 */
  font-size: 80%;
  vertical-align: 0.1em;
  display: inline-block;
}

/* 業種 */
#question dl dd pre {
  padding-bottom: 0.5em;
}
.fa_textbox #answer p {
  margin-top: 0; /* 2024.03.14 add */
  margin-bottom: 0.5em;
}

/* 住所 */
table.address {  
  margin: 0;
  width: 100%;
}
table.address th {
  width: 20%;
}
table.address td input {
  width: 100% !important;
}

/* 電話 */
#answer ul {
  margin-top: 20px;
  margin-bottom: 0;
}

/* 送信ボタン */
#nextbtn .survey-prev,
input#survey_next_btn {
  border: none;background: none;
  background-color: #f08c00;
  width: 100%;
  height: 60px;
  color: #ffffff;
  cursor: pointer;
  border-radius: 0;
  font-weight: normal;
  font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'メイリオ', 'Meiryo', sans-serif;
}
#nextbtn input:hover:not([disabled]) {
    opacity: 0.8;
    background-color: #f08c00;
}
#survey-app #nextbtn input[disabled] {
  background-color: #f08c00;
  opacity: .3;
}

/* reCAPTCHA用 */
input#survey_recaptcha_btn {
  border: none;background: none;
  background-color: #f08c00;
  width: 100%;
  height: 60px;
  color: #ffffff;
  cursor: pointer;
  border-radius: 0;
  font-weight: normal;
  font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'メイリオ', 'Meiryo', sans-serif;
}

/* エラー */
#answer .survey-err ul {
  margin-top: 0;
  line-height: 0.8;
}
#answer .survey-err ul li {
  line-height: normal;
  margin-bottom: 5px;
  font-size: 12px;
}

/* SA、MA横並び */
.sa_card_text #answer .col_2 ul {
  width: 600px;
  display: grid !important;
  grid-template-columns: auto auto;
  gap: 20px 0;
}
.sa_card_text #answer .col_2 label span.survey-label {
  display: inline-block;
  max-width: 260px !important;
  word-wrap: break-word;
}
.sa_card_text #answer .col_2 label p {
  position: static !important;
  top: 0 !important;
  margin-top: 0 !important;
}

.sa_card_text #answer .col_3 ul {
  width: 600px;
  display: grid !important;
  grid-template-columns: auto auto auto;
  gap: 20px 0;
}
.sa_card_text #answer .col_3 label span.survey-label {
  display: inline-block;
  max-width: 140px !important;
  word-wrap: break-word;
}
.sa_card_text #answer .col_3 label p {
  position: static !important;
  top: 0 !important;
  margin-top: 0 !important;
}

.agreement_container {
  display: flex;
  align-items: center;
}
.sa_card_text #answer.agreement_container label.agreement-label {
  padding-left: 6px;
  padding-top: 6px;
}
.sa_card_text #answer.agreement_container #agreement_button {
  position: static;
  height: 20px;
}

#answer .survey-answer-item .list_view {
  margin-top: 0px;
}
#answer .survey-answer-item .list_view li {
  display: grid;
  place-content: center;
  grid-template-columns: 20px auto;
  gap: 10px 0;
  margin-bottom: 10px;
}
#answer .survey-answer-item .list_view li label {
  position: static !important;
  height: auto !important;
  padding-left: 6px;
  padding-top: 0px;
  word-wrap: break-word;
  display: inline-block;
  align-self: center;
}
#answer .survey-answer-item .list_view li input {
  align-self: center;
  position: static !important;
  margin-top: 0;
}
#answer .survey-answer-item .list_view li p {
  display: inline-block;
  position: static !important;
  height: auto;
  max-width: 320px;
  overflow: visible !important;
  margin-top: 0px !important;
}
#answer .survey-answer-item .list_view li p span {
  display: inline-block;
  width: 300px;
}
#answer .survey-answer-item .list_view li .other_text {
  margin-left: 20px;
}
#answer .survey-answer-item .list_view li > div {
  grid-column: 2;
}
#answer .survey-answer-item .list_view li > div .other_text input[type=text],
#answer .survey-answer-item .list_view li > div .other_text textarea {
  width: 95% !important;
}
#answer .survey-answer-item .list_view li  > div .other_text {
  margin-left: 0;
}

.bef_text{
	color: black;
  margin-top: 10px;
}

.sa_card_image .survey-question-image {
  margin-bottom: 30px;
}

.sa_card_image #answer .survey-answer-item .list_view li {
  place-content: initial;
  display: list-item;;
}

#nextbtn {
  padding-bottom: 20px;
}