a {
    color: #3399CC;
}

.back-list {
    color: #3399CC;
    text-align: center;
    text-decoration: none;
    margin-bottom: 80px;
    font-size: 100%;
}

a.back-list-previous{
    margin-right: 5%;
}

a.back-list-next{
    margin-left: 5%;

}

span.topics-living{
  display: -webkit-inline-box;
   -webkit-box-orient: vertical;
   -webkit-line-clamp: 2;
  overflow: hidden;
  padding: 0.3em 0.6em;
  border: solid 1px;
  border-radius: 6px;
  font-size: 80%;
  vertical-align: bottom;
  /* display: inline-block;   */
  margin: 0 auto;
  margin-bottom: 8px;
  white-space: initial;
  word-break: break-all;
}

.enquate-limit{
    display: block;
    /* text-align: right; */
    color :red;
    padding-top: 5px;
    font-size: 85%;
}

/* メインカラー */
.main-bgcolor {
  background-color: #dfdfdf;
}

.main-border {
  border: solid 1px #dfdfdf;
}

.main-strong-border {
  border: solid 1px #dfdfdf;
}

.main-strong-fill {
  fill: #dfdfdf;
}

.row.main-content{
  border-color: #dfdfdf;
}
.pc-top-menu-footer{
  background-color: #dfdfdf;
}

/* ベースカラー */
.base-bgcolor {
  background-color: #f6f6f6;
}

/* アクセントカラー */
.accent-bgcolor {
  background-color: #dfdfdf;
  color: #FFF !important;
}

.accent-color {
  color: #dfdfdf;
}

.accent-border {
  border-color: #dfdfdf !important;
}

/* ボタン系 */
.pc-top-user,
button.questionnaire-answer{
  background-color: #09b7a2;
  border-color: #09b7a2;
}
.pc-top-user:hover {
  background-color: #dfdfdf;
  border-color: #dfdfdf;
}
.pc-top-user:focus, .pc-top-user.focus{
  background-color: #dfdfdf;
  border-color: #dfdfdf;
  box-shadow: 0 0 0 0.2rem rgba(112, 153, 15, 0.5);
}
.pc-top-user.disabled, .pc-top-user:disabled{  
  background-color: #dfdfdf;
  border-color: #dfdfdf;
}
.pc-top-user:not(:disabled):not(.disabled):active, .pc-top-user:not(:disabled):not(.disabled).active,
.show > .pc-top-user.dropdown-toggle {
  background-color: #dfdfdf;
  border-color: #dfdfdf;
}
.pc-top-user:not(:disabled):not(.disabled):active:focus, .pc-top-user:not(:disabled):not(.disabled).active:focus,
.show > .pc-top-user.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(112, 153, 15, 0.5);
}

.modal-body {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.modal-body::-webkit-scrollbar {
  display: none;
}


.nav-item.sp-ham-menu {
    font-size: 12px;
}

li.sp-ham-menu-collapse {
    font-size: 12px;
}

/* スマホメニュー */
.text-modal-close,
li > .nav-link  {
  color: #0F2350;
}
li.sp-top-user {
  background-color: #f7ab7c;
}
li.sp-ham-menu, li.sp-ham-menu-collapse{
  border-color: #f7ab7c;
}

.top-topics-list-mg {
    margin: 4px 12px;
}

/* クレヨンの下線画像 */
img.top-category-line{  
  content: url("../image/pic/crayon_line.png");
}

/* セレクトボックス */
.select{
  outline-color: #dfdfdf;
}
.dropdown--extend::after{
  border-color: #dfdfdf;
}

/* チェックボックス・ラジオボタン */
  /* 押下前 */
  input[type=checkbox].checkbox,input[type=radio].raddio-button{
    border-color: #dfdfdf;
  }
  /* 押下時 */
  input[type=checkbox].checkbox:checked,input[type=checkbox].checkbox:indeterminate,input[type=radio].raddio-button:checked:before{
    background: #09b7a2;
  }

/* テキストボックス・日付選択・テキストエリア */
.textbox,
.absence-date-wrapper,
.textarea,
.questionnaire-form{
  border-color: #dfdfdf !important;
  border-radius: 6px;
}

/* 日付選択のカレンダー */
.table-sm.table thead tr:first-of-type{
  border-color: #dfdfdf;
}
.table-sm td.day.active.today,
.table-sm td.day.active,
.table-sm td.day.active:hover{
  background-color: #dfdfdf;
}
.table-sm td.day.today::before{
  border-bottom-color: #dfdfdf;
}
.table-sm th.dow {
  color: #dfdfdf;
}

/* 各確認画面 */
.confirm div.questionnaire-contents,
.pw-confirm{
  background-color: #dfdfdf;
}
.confirm div.questionnaire-contents,
.confirm form div div.inner,
.pw-confirm,
.pw-confirm2{
  border-color: #dfdfdf;
}

/* 連絡履歴 */
.accordion-box,
hr.accordion-answer-line{
  border-color: #dfdfdf;
}
.classification span::before,
.classification span::after{
  background: #dfdfdf;
  border-color: #dfdfdf;
}

/* ▲TOPボタン */
.re-topB {  
	background-color:#dfdfdf; /*丸ボタンの色*/
}

/* ページャーホバー */
.pagination-lg .page-item .page-link:hover{  
  background-color: rgba(168, 230, 23, 0.4);
}

#topics-detail-contents.mt-4{
  display: none;
}

#ArticleDetail .back-list {
  display: none;
}

.foot_link a {
  color: #fff !important;
}

.breadcrumbs a{
  color: #282828 !important;
}


label {
  display: block;
  margin-bottom: 0;
  font-size: 1rem;
}

ol, ul, dl {
  margin-bottom: 0;
}

#ArticleDetailContentsArea > div:nth-of-type(2),
.questionnaire-tittle {
    font-size: 1.75rem;
    font-weight: 500;
    border-bottom: 2px solid #dfdfdf;
    padding: 0.5em 0em;
    margin-bottom: 1.25em !important;
    position: relative;
    z-index: 0;
}

#ArticleDetailContentsArea > div:nth-of-type(2)::before,
.questionnaire-tittle::before {
    position: absolute;
    z-index: 5;
    display: inline-block;
    content: "";
    width: 7em;
    height: 2px;
    background: #09b7a2;
    inset: auto auto -2px 0;
}

@media screen and (max-width: 767px) {
  #ArticleDetailContentsArea > div:nth-of-type(2)::before,
  .questionnaire-tittle::before {
    width: 3em;
  }
}

#ArticleDetailContentsArea > div:nth-of-type(2) > b {
  font-size: 1.75rem !important;
  font-weight: 500;
}

@media screen and (max-width: 767px) {
  #ArticleDetailContentsArea > div:nth-of-type(2) > b {
    font-size: 1.35rem !important;
    padding: 0 !important;
  }
}

#ArticleDetail {
  margin: 40px 0;
}

/* 問い合わせ画面の背景色 */
div.base-bgcolor:has(#CommonSelectForm) {
  background-color: #fff;
}


/* 説明 */
#CommonSelectForm .setsumei{
	margin-bottom: 1em;
	/* margin-top: 1em; */
  padding-bottom: 25px;
  border-bottom: 1px solid rgb(223, 223, 223);
}
/* スマホ */
@media (max-width: 767px) {
  #CommonSelectForm .setsumei{
  padding-bottom: 20px;
  }
}
#CommonSelectForm .setsumei p{
	color: #333333;
}
@media (max-width: 767px) {
  #CommonSelectForm .setsumei p{
    font-size: 1rem;
  }
}
#CommonSelectForm .setsumei a{
	color: #c9151e;
  border-bottom: 1px solid #c9151e;
}
#CommonSelectForm .setsumei a:hover{
  border-bottom: none;
}
#CommonSelectForm .setsumei ul{
	margin: 0.8em 2em;
}
#CommonSelectForm .setsumei ul li{
	list-style-position: outside;
	list-style-type: disc;
	color: #444444;
}

.policy-check {
  margin: 2.6rem auto 0 auto;
  padding: 1.5em;
  border-radius: 5px;
  background-color: #f6f6f6;
}

/* 問い合わせ画面 */
/* 確認する・登録するボタン */
#submit {
  /* width: fit-content; */
  /* min-width: 320px; */
  width: 35%;
  border: solid 1px #c8c8c8;
  color: #000;
  background: #ffffff;
  font-size: 1.25rem;
  font-weight: 700 !important;
  padding: 0.75em 3.5em 0.75em 2em;
  min-height: 3.5em;
  align-items: center;
  position: relative;
  z-index: 10;
  text-decoration: none;
  border-radius: 3em;
  transition: all 0.3s;
  overflow: hidden;
  text-align: start;
  margin-right: 30px;
}

.confirm #submit {
  width: 65% !important;
}


#submit::after {
  content: "→";
  color: #fff;
  display: block;
  position: absolute;
  height: fit-content;
  z-index: 10;
  font-size: 1.0em;
  inset: 0 32px 0 auto;
  margin: auto;
  transform: translateY(-1px);
}
#submit::before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1 !important;
  height: fit-content;
  z-index: 10;
  inset: 0 25px 0 auto;
  background: #09b7a2;
  height: 1.65em;
  width: 1.65em;
  border-radius: 3em;
  margin: auto;
  transition: .3s width, .3s height, .3s right;
}

@media (any-hover: hover) {
	#submit:hover {
		color: #fff;
	}
	#submit:hover::before  {
		width: 100%;
		height: 100%;
		right: 0;
	}
}

/* 戻るボタン */
button.btn-back {
  /* display: flex;
  min-width: 320px; */
  width: 100% !important;
  border: solid 1px #c8c8c8 !important;
  color: #000;
  background: #ffffff !important;
  font-size: 1.25rem;
  font-weight: 700 !important;
  padding: 0.75em 3.5em 0.75em 2em;
  min-height: 3.5em;
  align-items: center;
  position: relative;
  z-index: 10;
  text-decoration: none;
  border-radius: 3em;
  transition: all 0.3s;
  overflow: hidden;
  text-align: start;
  margin-left: 45px;
}
button.btn-back::after {
	content: "→";
	color: #000;
	display: block;
	position: absolute;
	height: fit-content;
	z-index: 10;
	font-size: 0.8em;
	inset: 0 32px 0 auto;
	margin: auto;
	transform: translateY(-1px);
}
button.btn-back::before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1 !important;
  height: fit-content;
  z-index: 10;
  inset: 0 25px 0 auto;
  background: #c8c8c8;
  height: 1.65em;
  width: 1.65em;
  border-radius: 3em;
  margin: auto;
  transition: .3s width, .3s height, .3s right;
}

@media (any-hover: hover) {
	button.btn-back:hover {
		color: #fff;
	}
  button.btn-back:hover::before {
    width: 100%;
    height: 100%;
    right: 0;
	}
}

form#CommonSelectForm .form-group input.textbox.short + div.text-center,
form#CommonSelectForm .form-group input.input-tel + div.text-center {
  height: 10px !important;
}

form#CommonSelectForm .dateymdkikan .while-dateymdkikan {
  height: 20px !important;
}

form#CommonSelectForm .form-group input.textbox.short + div.text-center,
form#CommonSelectForm .dateymdkikan .while-dateymdkikan,
form#CommonSelectForm .form-group input.input-tel + div.text-center
{
  vertical-align: middle !important;
}

.questionnaire-contents{
  font-size: 1.125rem;
}

/* フッターの下が空く問題対応 */
/* 残りのスペースをすべてmain要素が埋めるようにする */
main {
  flex-grow: 1; 
}


.form_link_box .form_link_btn :is(a, p) {
  display: flex;
  align-items: center;
  min-height: 3.5em;
  font-size: 1.25rem;
  font-weight: 700;
  color: #000;
  border: solid 1px #c8c8c8;
  background: #ffffff;
  padding: 0.75em 3.5em;
  text-decoration: none;
  border-radius: 3em;
  transition: color .3s, background .3s;
  cursor: pointer;
}
.form_link_box .form_link_btn p {
  color: #fff;
  background: #09b7a2;
}
.form_link_box {
  display: flex;
  justify-content: center;
  align-items: start;
  flex-wrap: wrap;
  gap: 0.625em 1.5em;
  margin-bottom: 2.25em;
  margin-top: 6rem;
}

.form_link_btn p,
.form_link_btn a {
  margin: 0;
}

[id^="feature_inquiry"] {
  padding:0 !important;
}

@media (max-width: 767px) {
  input,
  button,
  select,
  optgroup,
  textarea,
  .form-group,
  .dropArea,
  .dummy-text,
  button.btn-back,
  #top-error-message
  {
    font-size: 0.9rem;
  }

  [id^="image_browse_button"],
  [id^="file_browse_button"],
  .form-error-message {
    font-size: 0.9rem !important;
  }

  #submit {
    width: 70%;
    font-size: 0.9rem;
  }

  button.btn-back {
    margin-left: 40px;
    width: 100% !important;
  }

  .form_link_box {
    margin-top: 3rem;
  }

  .form_link_box .form_link_btn :is(a, p) {
    font-size: 1rem;
  }

  .form_link_btn p,
  .form_link_btn a {
    margin: 0;
  }

  [id^="feature_inquiry"] {
    padding:25px 45px 20px 45px !important;
  }
}
