/*# snapshot追加 */

.parts-txtarea-detail {
  width: 100%;
  border: 0px;
  border-radius: 8px;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.parts-txtarea-detail:focus {
  order: 0px;
  outline: none !important;
}
.form-title {
  padding-top: 5px;
  font-size: 18px;
  margin-bottom: 10px;
  margin-top: 30px;
  margin-right: 5px;
}

.parts-radio-row3 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.parts-radio-row3 input[type="radio"] {
  opacity: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: absolute;
}

.parts-radio-row3 input[type="radio"]:focus + span::before {
  -webkit-box-shadow: 0 0 4px #26b692;
          box-shadow: 0 0 4px #26b692;
}

.parts-radio-row3 input[type="radio"]:checked + span::after {
  opacity: 1;
}

.parts-radio-row3 label {
  width: 33%;
  font-size: 15px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.parts-radio-row3 .text {
  display: inline-block;
  position: relative;
  padding-left: 26px;
  line-height: 2.2;
  margin-right: 1em;
}

.parts-radio-row3 .text:hover {
  cursor: pointer;
}

.parts-radio-row3 .text:before {
  position: absolute;
  top: 9px;
  left: 0;
  width: 18px;
  height: 18px;
  border: 1px solid #26b692;
  background: #fff;
  content: "";
  border-radius: 500px;
}

.parts-radio-row3 .text:after {
  position: absolute;
  top: 13px;
  left: 4px;
  width: 10px;
  height: 10px;
  border-radius: 200px;
  background-color: #26b692;
  content: "";
  opacity: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.err-msg {
  color:red;
}

.parts-txt-col {
  width: 100%;
  border: 2px solid #26b692;
  border-radius: 8px;
  padding: 0.5em;
  margin-top:1em;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}


.row-btn {
  margin-bottom: 40px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.row-btn a {
  border-radius: 500px;
  display: block;
  height: 45px;
  line-height: 45px;
  color: #fff;
  text-align: center;
}

.row-btn a:first-child {
  background-color: #26b692;
  width: 45%;
}

.row-btn a:last-child {
  width: 45%;
  background-color: #26b692;
}

.new-btn {
  border-top: 1px solid #ccc;
  margin-top: 20px;
  padding-top: 20px;
  padding-bottom: 20px;
}

.new-btn a {
  width: 100%;
  height: 50px;
  line-height: 50px;
  padding: 0;
  background-color: #26b692;
}

.row-input {
  display : flex; 
  justify-content: space-between;
}

.row-select-box {
  width: 90%; 
  height: 40px;
  margin:0.5em;
}

.row-show {
  width: 95%; 
  height: 40px;
}

.parts-show-row {
  width: 90%; 
  height: 40px;
  border: 2px solid #26b692;
  border-radius: 8px;
  padding: 1em;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}



.contact-name {
  margin-bottom: 30px;
}

.contact-name h3 {
  background-color: #f6f2ec;
  font-size: 18px;
  padding: 0.25em 0.5em;
  margin-bottom: 20px;
}

.contact-name-container {
  padding: 15px 0;
  border-bottom: 1px solid #ccc;
}

.contact-name-kana {
  margin-bottom: 20px;
}

.contact-name-kana h3 {
  background-color: #f6f2ec;
  font-size: 18px;
  padding: 0.25em 0.5em;
  margin-bottom: 20px;
}

.contact-name-kana-container {
  padding: 15px 0;
  border-bottom: 1px solid #ccc;
}

.contact-address {
  margin-bottom: 20px;
}

.contact-address h3 {
  background-color: #f6f2ec;
  font-size: 18px;
  padding: 0.25em 0.5em;
  margin-bottom: 20px;
}

.contact-address-container {
  padding: 15px 0;
  border-bottom: 1px solid #ccc;
}

.topic-content {
  margin-bottom: 20px;
}

.topic-content h3 {
  background-color: #f6f2ec;
  font-size: 18px;
  padding: 0.25em 0.5em;
  margin-bottom: 20px;
}

.topic-content-container {
  padding: 15px 0;
  border-bottom: 1px solid #ccc;
}

.topic-select {
  margin-bottom: 20px;
}

.contact-content {
  margin-bottom: 20px, 20px;
}

.contact-content h3 {
  background-color: #f6f2ec;
  font-size: 18px;
  padding: 0.25em 0.5em;
  margin-bottom: 20px;
}

.contact-content-container {
  padding: 15px 0;
  border-bottom: 1px solid #ccc;
}

.contact {
  text-align: center;
  margin: 35px 0!important;
  display: flex;
  justify-content: space-between;
}
.contact-btn {
  display: inline-block;
  padding: 0.5em 0.7em;
  background-color: #ef86a8;
  color: #fff;
  border-radius: 500px;
  border: none;
  width: 75%;
}


.row-select-box {
  width: 90%; 
  height: 40px;
  margin:0.5em;
}

.row-show {
  width: 95%; 
  height: 40px;
}

.parts-show-row {
  width: 90%; 
  height: 40px;
  border: 2px solid #26b692;
  border-radius: 8px;
  padding: 1em;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.row-input-b-line {
  display : flex; 
  justify-content: space-between;
  border-bottom: 1px solid #ccc;
}

.target-name {
  color: #06c755;
}

.u-name {
  color: black;
}

.service-list__info_col03 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 0.25em;
}

.service-list__info_col03 .name {
  font-weight: 700;
  font-size: 16px;
}

.service-list__info_col03 .point {
  font-size: 13px;
}

.service-list__info_col03 .point span {
  background-color: #706f6f;
  color: white;
  font-weight: 700;
  display: inline-block;
  padding: 0 0.5em;
  margin-left: 0.52em;
}

.service-list__info_col03 .point_open span {
  background-color: #706f6f;
  color: white;
  font-weight: 800;
  display: inline-block;
  padding: 0 0.5em;
  margin-left: 0.52em;
}

.reserve-btn {
  margin-bottom: 40px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.reserve-btn a {
  border-radius: 500px;
  display: block;
  height: 45px;
  line-height: 45px;
  color: #fff;
  text-align: center;
}

.reserve-btn a:first-child {
  background-color: #444;
  width: 30%;
}

.reserve-btn a:nth-child(2) {
  background-color: #06c755;
  width: 30%;
}

.reserve-btn a:last-child {
  width: 30%;
  background-color: #ef86a8;
}

.mark {
  background-color: lightgray; 
  border-radius:50px;
  padding:0.4em;
}

.mb-30 {
  margin-bottom: 30px;
}
.mb-5 {
  margin-bottom: 10px;
}

.ml-10 {
  margin-left: 10px;
}

.pt-15 {
  padding-top: 15px;
}

.textarea-size {
  width: 100%; 
  height: 100%;
  margin-top: 1em;
}

#file_01,#mask_file_01{
	display:none;
}
.file_mask span{
	display:block;
	background-image:url(images/btn_upload.png);
	background-position:left top;
	height:81px;
	width:354px;
	cursor:pointer;
}
.file_mask span:hover{
	background-position:left bottom;
}

.message-title {
  border: 0;
  width: 100%;
  border-radius: 10px;
  padding: 1em 1em;
  font-size: 5px;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}


.admin-menu {
  margin-bottom: 30px;
}

.admin-menu ul {
  /* display: -webkit-box; */
  /* display: -webkit-flex; */
  display: -ms-flexbox;
  /* display: flex; */
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 10px;
}

.admin-menu ul li {
  width: 100%;
}

.admin-menu ul li a {
  background-color:#26b692;
  padding: 20px 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 10px;
  text-decoration: none;
  position: relative;
  margin-bottom: 20px;

}

.admin-menu ul li a img {
  height: 25px;
  -o-object-fit: contain;
     object-fit: contain;
  margin-bottom: 10px;
}

.admin-menu ul li a span {
  font-weight: bold;
  font-size: 15px;
  color: white;
}

.admin-menu ul li a .badge {
  position: absolute;
  width: 25px;
  height: 25px;
  background-color: #e45353;
  color: #fff;
  font-size: 11px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  border-radius: 500px;
  top: 0;
  right: 0;
  -webkit-transform: translate(25%, -25%);
          transform: translate(25%, -25%);
}

.admin-menu ul li a .badge:empty {
  display: none;
}

.admin-menu ul li:nth-child(4) a, .admin-menu ul li:nth-child(5) a {
  background-color: #fceaf0;
}

.row-input-2 {
  display : flex; 
  justify-content: space-around;
}

.parts-select-row2 {
  width: 100%;
  border: 2px solid #26b692;
  border-radius: 8px;
  padding: 0.5em;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: relative;
  background: transparent;
}


.message-anser {
  background-color: rgb(202, 199, 199);
  margin: 30px 0;
  text-align: center;
  color: white;
  padding: 1em 1em;
  font-weight: 700;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.message-anser__day {
  font-size: 14px;
  color: black;
}

.message-anser__btn input {
  background-color: #26b692;
  color: #fff;
  font-size: 14px;
  padding: 0.2em 0.95em;
  border-radius: 500px;
  border: 0;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.delete_btn {
  background-color: #e45353;
  color: white;
}


.detail-btn {
  background-color: #538de4;
  color: white;
}

.message_btn {
  display: inline-block;
  padding: 0.5em 0.7em;
  background-color: #26b692;
  color: #fff;
  border-radius: 50px;
  outline: none;
  border: none;
}

.reserve_close_btn {
  display: inline-block;
  padding: 0.5em 0.7em;
  background-color: #e45353;
  color: #fff;
  border-radius: 50px;
  outline: none;
  border: none;
}


.thread-textarea {
  width: 100%;
  height: 60px;
  border: 0;
  border-radius: 10px;
  padding: 1em 1em;
  font-size: 5px;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.message-supporter__name {
  text-align: right;
  margin-bottom: 10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: row;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
          -webkit-box-align: center;
          -webkit-align-items: center;
              -ms-flex-align: center;
                  align-items: center;
}

.message-supporter__name_img {
  width: 36px;
  position: relative;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  margin-right: 10px;
}

.message-supporter__name_img:after {
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%;
}

.message-supporter__name_img img, .message-supporter__name_img video {
  position: absolute;
  left: 0;
  top: 1;
  width: 100% !important;
  height: 100% !important;
  -o-object-fit: cover;
     object-fit: cover;
  font-family: "object-fit: cover;";
}

.message-supporter__name_img img {
  border-radius: 500px;
}

.message-supporter__name_info {
  font-weight: 700;
  font-size: 16px;
  line-height: 1;
}

/* カスタムページネーション */
.pagination {
  display: -ms-flexbox;
  display: flex;
  padding-left: 0;
  list-style: none;
  border-radius: 0.25rem;
}
.pagination-lg .page-link {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
  line-height: 1.5;
}

.pagination-lg .page-item:first-child .page-link {
  border-top-left-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
}

.pagination-lg .page-item:last-child .page-link {
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
}

.pagination-sm .page-link {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
}

.pagination-sm .page-item:first-child .page-link {
  border-top-left-radius: 0.2rem;
  border-bottom-left-radius: 0.2rem;
}

.pagination-sm .page-item:last-child .page-link {
  border-top-right-radius: 0.2rem;
  border-bottom-right-radius: 0.2rem;
}

.page-item:first-child .page-link {
  margin-left: 0;
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.page-item:last-child .page-link {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}

.page-item.active .page-link {
  z-index: 1;
  color: #ffffff;
  background-color: #00c1de;
  border-color: #00c1de;
}

.page-item.disabled .page-link {
  color: #6c757d;
  pointer-events: none;
  cursor: auto;
  background-color: #ffffff;
  border-color: #dee2e6;
}
.page-link {
  position: relative;
  display: block;
  padding: 0.5rem 0.75rem;
  margin-left: -1px;
  line-height: 1.25;
  color: #00c1de;
  background-color: #ffffff;
  border: 1px solid #dee2e6;
}

.page-link:hover {
  z-index: 2;
  color: #00c1de;
  text-decoration: none;
  background-color: #e9ecef;
  border-color: #dee2e6;
}

.page-link:focus {
  z-index: 2;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.page-item:first-child .page-link {
  margin-left: 0;
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.page-item:last-child .page-link {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}

.page-item.active .page-link {
  z-index: 1;
  color: #ffffff;
  background-color: #00c1de;
  border-color: #00c1de;
}

.page-item.disabled .page-link {
  color: #6c757d;
  pointer-events: none;
  cursor: auto;
  background-color: #ffffff;
  border-color: #dee2e6;
}

.pagination-lg .page-link {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
  line-height: 1.5;
}

.pagination-lg .page-item:first-child .page-link {
  border-top-left-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
}

.pagination-lg .page-item:last-child .page-link {
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
}

.pagination-sm .page-link {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
}

.pagination-sm .page-item:first-child .page-link {
  border-top-left-radius: 0.2rem;
  border-bottom-left-radius: 0.2rem;
}

.pagination-sm .page-item:last-child .page-link {
  border-top-right-radius: 0.2rem;
  border-bottom-right-radius: 0.2rem;
}

.corsor-hand {
  cursor: pointer;
  cursor: hand;
}

.rank {
  background-color: #706f6f;
  color: white;
  font-weight: 700;
  display: inline-block;
  padding: 0 0.5em;
  border-radius: 10px;
  margin-left: 0.52em;
  margin-bottom: 5px;
}

.disabled_btn {
  opacity: 0.5;
  cursor: default;
  color: dimgray!important;
  background-color: lightgray!important;
}

.disabled_btn:hover {
  opacity: 0.5;
  cursor: default;
  color: dimgray!important;
  background-color: lightgray!important;
}

.bbs-wrap ul li .info {
  justify-content: left;
}

.bbs-wrap ul li .info span:first-child {
  margin-right: auto;
}

.community-menu {
  flex-direction: column;
  align-items: flex-end;
}

.community-menu__input{
  width: 100%!important;
}

.community-menu__input textarea {
  width: 100%!important;
}

#image-preview {
  max-height: 80px;
}

.message-menu-center {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.mt-10 {
  margin-top: 10px;
}

.community-img {
  max-width: 100%;
  max-height: 300px;
}


.service-detail,
.service-my-message,
.service-con-text,
.community-body-text,
.request-body-text,
.message-free-text,
.review-detail {
  white-space: pre-wrap;
}

.community-menu-bottom {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;

}

.message-list-bottom > .back-btn,
.reserve-list-bottom > .back-btn,
.admin-users-detail-bottom > .back-btn,
.admin-reserve-detail-bottom > .back-btn,
.service-list-bottom > .back-btn,
.request-search-bottom > .back-btn,
.community-search-bottom > .back-btn,
.community-detail-bottom > .back-btn {
  margin: 0 auto 40px auto;
}

.back-btn {
  border-radius: 500px;
  display: block;
  height: 45px;
  line-height: 45px;
  color: #fff;
  text-align: center;
  background-color: #444;
  width: 33%;
}

.send-btn {
  border-radius: 500px;
  display: block;
  height: 45px;
  line-height: 45px;
  color: #fff;
  text-align: center;
  background-color: #ffb71b;
  border: none;
  width: 63%;
}

.approval-text {
  font-size: 14px;
  color: #896953;
  font-weight: 700;
}

/* メッセージ画面アクセス時の見積ポップアップのちらつきを防ぐ */
.message-irai {
  display: none;
}

.service-list-tile-bottom {
  justify-content: flex-start;
}

.service-list-tile-bottom-left {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}

.service-list-tile-bottom-left > div {
  margin-top: 5px;
}

.service-list-tile-bottom > div:last-child {
  margin-left: auto;
  flex: 1 0 auto;
  align-self: flex-end;
  text-align: right;
}

.mr-5 {
  margin-right: 5px;
}

.service-list__info_col03 .point_check {
  font-size: 13px;
}

.service-list__info_col03 .point_check span {
  background-color: #e45353;
  color: #fff;
  font-weight: 700;
  display: inline-block;
  padding: 0 0.5em;
  margin-left: 0.52em;
  border-radius:13px;
}

.admin-user-table-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-left: 32px;
  padding-right: 32px;
}

.admin-user-table-header button {
  display: inline-block;
  padding: 0.5em 1em;
  background-color: #26b692;
  color: #fff;
  border-radius: 500px;
  border: none;
}

.required-title {
    display: inline-block;
    background-color: #00c1de;
    color: #fff;
    border-radius: 5px;
    line-height: 1;
    padding: 0.4em 0.5em;
    font-weight: 400;
    font-size: 13px;
    margin-left: 0.5em;
}

.supporter-success {
    background-color: #b3ffd5;
    font-size: 18px;
    padding: 0.25em 0.5em;
    margin-bottom: 10px;
}


.parts-number-size {
    width: 90%;
    border-radius: 8px;
    padding: 0.5em;
}

.newsign-file label img {
    content: "";
    display: block;
    max-height: 100%;
    max-width: 100%;
    background-size: contain;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    margin: auto;
}

.message-menu__input {
  width: 100%!important;
}

.bbs-list .service-list__info_col01 .area:before {
  background: url(../images/arrow.svg) center no-repeat!important;
}

.bbs main h2:before {
  background: url(../images/icon_community.svg) center no-repeat!important;
}

.community-title {
  width: 79%;
}

.thread-category-select {
  position: relative;
  width: 20%;
}

.thread-category-select select {
  width: 100%;
  border: none;
  border-radius: 8px;
  padding: 1em;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: relative;
  font-size: 16px;
}

@media screen and (max-width: 640px) {
  .community-title {
    width: 100%;
  }

  .thread-category-select {
    width: 100%;
  }

  .thread-category-select select {
    padding: 0.5em;
    font-size: 14px;
  }
}

.thread-category-select:before {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 0.8em;
  width: 0;
  height: 0;
  padding: 0;
  content: "";
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid black;
  pointer-events: none;
  z-index: 999;
}

.community-menu-top {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.message-menu {
  z-index: 10;
  flex-direction: row;
}

.bbs-list .service-list__info_col01 .syubetu {
  display: inline-block;
  font-size: 13px;
  color: #8b6a53;
  border: 1px solid #8b6a53;
  padding: 0.1em 0.5em;
  font-weight: normal;
}

.bbs-list .service-list__info_col01 {
  justify-content: flex-start;
  text-decoration: none!important;
}

.bbs-list .service-list__info_col01 .area {
  margin-right: auto;
  text-decoration: underline;
}

.loading-disabled { 
  pointer-events: none; 
  opacity: 0.5;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  text-decoration: none; 
}

.user-menu ul li a span {
  font-weight: bold;
  font-size: 8px;
  color: #333;
}

.supporter-list-tile {
  border: none!important;
  margin-bottom: 0px!important;
}

.supporter-list-tile dt h4{
  font-size: 13px!important;
}

.supporter-list-tile dt h4:before {
  background: url(../images/arrow_circle.svg) center no-repeat!important;
  width: 1.1em!important;
  height: 1.1em!important;
  vertical-align: middle!important;
}

.supporter-list-tile dd .price01,
.supporter-list-tile dd .price02,
.supporter-list-tile dd .unit {
  font-size: 13px!important;
}

@media screen and (max-width: 640px) {
  .supporter-list-tile {
    border-bottom: 1px solid #ffb71b!important;
    margin-bottom: 0.8em!important;
    padding-bottom: 0.8em!important;
  }
  .supporter-list-tile dt{
    display: flex!important;
    flex-wrap: wrap!important;
    align-items: center!important;
  }
  .supporter-list-tile dt h4{
    margin-bottom: 0!important;
    margin-right: 0.5em!important;
  }
}

.servise-search-filter-checkbox {
  display: flex;
  flex-wrap: wrap;
}

.parts-check .servise-search-filter-checkbox .text:before {
  top: 7px;
}
.parts-check .servise-search-filter-checkbox .text:after {
  top: 11px;
}

form.register .register-info-ss {
  border: 1px solid #eee;
  padding: 0.5em;
  margin-bottom: 1em;
}
form.register .register-info-ss .row-select-box {
  margin: 5px 0;
}
form.register .register-info-ss .row-input {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
form.register .register-info-ss .row-input label {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

form.register .register-info-ss .row-input label select, form.register .register-info .row-input label input {
  width: 100%;
  margin: 5px 0;
}
form.register .register-info-ss .row-input label dt {
  width: 150px;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
form.register .register-info-ss .row-input label dd {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}


.parts-radio-row3-ss {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    /* -webkit-flex-wrap: wrap; */
    -ms-flex-wrap: wrap;
    /* flex-wrap: wrap; */
}

@media screen and (max-width: 640px) {
  form.register .parts-radio-row3-ss {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin-bottom: 10px;
  }
  form.register .parts-radio-row3 > label {
    width: 100%;
  }
}
.parts-radio-row3-ss .text:before {
  border: 1px solid #00c1de;
}

.parts-radio-row3-ss .text:after {
  background-color: #00c1de;
}

.parts-radio-row3-ss input[type="radio"] {
  opacity: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: absolute;
}

.parts-radio-row3-ss input[type="radio"]:focus + span::before {
  -webkit-box-shadow: 0 0 4px #00c1de;
          box-shadow: 0 0 4px #00c1de;
}

.parts-radio-row3-ss input[type="radio"]:checked + span::after {
  opacity: 1;
}

.parts-radio-row3-ss label {
  width: 33%;
  font-size: 15px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.parts-radio-row3-ss .text {
  display: inline-block;
  position: relative;
  padding-left: 26px;
  line-height: 2.2;
  margin-right: 1em;
}

.parts-radio-row3-ss .text:hover {
  cursor: pointer;
}

.parts-radio-row3-ss .text:before {
  position: absolute;
  top: 9px;
  left: 0;
  width: 18px;
  height: 18px;
  border: 1px solid #00c1de;
  background: #fff;
  content: "";
  border-radius: 500px;
}

.parts-radio-row3-ss .text:after {
  position: absolute;
  top: 13px;
  left: 4px;
  width: 10px;
  height: 10px;
  border-radius: 200px;
  background-color: #00c1de;
  content: "";
  opacity: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.service-list .request-point {
  margin-bottom: 10px;
}
.service-list .request-point .point {
  margin-right: 0px;
  font-size: 14px;
}
.earnings-total {
  display: flex;
}
.earnings-total .today {
  width: 50%;
}
.earnings-total .month {
  width: 50%;
}
.total-price {
  font-weight: bold;
  font-size: 2em;
}
.earnings-search-filter .price {
  width: 40%;
}
.earnings-search-filter .created {
  width: 40%;
}
.earnings-table {
  text-align: left;
  width: 100%;
}
.earnings-table th {
  border-bottom: 1px #212529 solid;
  padding: 1em 24px 1em 0;
}
.earnings-table td {
  border-bottom: 1px #dee2e6 solid;
  padding: 1em 24px 1em 0;
  vertical-align: middle;
}

@media screen and (max-width: 640px) {
  .earnings-search-filter dl {
    flex-wrap: wrap;
  }
  .earnings-search-filter .price {
    width: 35%;
    margin-top: 7px;
    margin-bottom: 7px;
  }
  .earnings-search-filter .created {
    width: 40%;
    margin-top: 7px;
    margin-bottom: 7px;
  }
}

.new-input-mail-bottom {
  display: flex;
  justify-content: space-between;
}
.new-input-mail-bottom .back-btn {
  width: 33%;
}
.new-input-mail-bottom button {
  width: 65%!important;
  height: 45px;
}

.contact .back-btn {
  width: 33%;
}
.contact .contact-btn {
  width: 65%!important;
}

.update-delivery-date {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin: 10px 0;
}
#update-delivery-date-button{
  background-color: #ef86a8;
  color: #fff;
  font-size: 16px;
  padding: 0.2em 1.5em;
  border-radius: 500px;
  border: 0;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.message-update-delivery {
  display: block;
  z-index: 9999;
  background-color: #00000070;
  position: fixed;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
}

/* 支払いページ用*/
.payments-total {
  display: flex;
}
.payments-total .today {
  width: 50%;
}
.payments-total .month {
  width: 50%;
}
.payments-search-filter .price {
  width: 40%;
}
.payments-search-filter .created {
  width: 40%;
}
.payments-table {
  text-align: left;
  width: 100%;
}
.payments-table th {
  border-bottom: 1px #212529 solid;
  padding: 1em 24px 1em 0;
}
.payments-table td {
  border-bottom: 1px #dee2e6 solid;
  padding: 1em 24px 1em 0;
  vertical-align: middle;
}

@media screen and (max-width: 640px) {
  .payments-search-filter dl {
    flex-wrap: wrap;
  }
  .payments-search-filter .price {
    width: 35%;
    margin-top: 7px;
    margin-bottom: 7px;
  }
  .payments-search-filter .created {
    width: 40%;
    margin-top: 7px;
    margin-bottom: 7px;
  }
  .yen-image-size {
    height:25px;
    width: 20px;
  }
}

.reserve-detail-cancel-btn {
  display: inline-block;
  padding: 0.5em 0.7em;
  background-color: #ffb71b;
  color: #fff;
  border-radius: 500px;
  border: none;
}

main.admin-message .message-menu__input {
  width: calc(100% - 40px - 10px)!important;
}

@media screen and (max-width: 640px) {
  main.message .message-menu {
    padding-right: 10px;
    padding-left: 10px;
  }
  main.message .message-menu__input {
    width: calc(100% - 40px - 60px - 20px)!important;
  }
  main.admin-message .message-menu__input {
    width: calc(100% - 40px - 10px)!important;
  }
}

body.message {
  width: 640px;
}

.user-messe__col01.hidden {
  display: none;
}

.more-btn.hidden {
  display: none;
}

.more-btn {
  display: block;
  width: 200px;
  max-width: 100%;
  text-align: center;
  padding: 0.65em 0.5em;
  background-color: #00c1de;
  border-radius: 500px;
  color: #fff;
  margin: 1em 0;
  border: none;
}

main.admin-message {
  margin-bottom: 190px;
}
.admin-message .admin-message-listtile .service-list__info_col01,
.bbs-list .community-listtile .service-list__info_col01 {
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
}
.admin-message .admin-message-listtile .admin-message-top-right,
.bbs-list .community-listtile .community-top-right {
  margin-left: auto;
}
.admin-message .admin-message-listtile .delete_btn {
  margin-left: 10px;
}
.admin-message .open-date-input::-webkit-calendar-picker-indicator {
  font-size: 15px;
}
.admin-message-listtile {
  width: 560px;
}
@media screen and (max-width: 640px) {
  .admin-message-listtile {
    width: 335px;
  }
}

.message-free-text {
  width: 100%;
  word-wrap: break-word;
}

.message-body-bottom {
  display: flex;
  justify-content: space-between;
}

.bbs-list .community-listtile .community-top-right {
  display: flex;
  align-items: flex-end;
}
.bbs-list .community-listtile .community-top-right .syubetu {
  height: 27px;
}

.policy_list li {
	list-style-type: disc;
	margin-left: 24px;
}

.service_policy_list li{
  list-style: none;
  margin-left: 24px;
}

.supporter-review-container.hidden {
  display: none;
}

.fincode_password_btn {
  display: inline-block;
  background-color: #ef86a8;
  color: #fff;
  border-radius: 5px;
  line-height: 1;
  padding: 0.4em 0.5em;
  font-weight: 400;
  font-size: 13px;
  margin-left: 0.5em;
}

/* アコーディオン */
.snap-toggle {
  display: none;
  }
.snap-option {
position: relative;
margin-bottom: 1em;
}
.snap-title,
.snap-content {
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
transform: translateZ(0);
transition: all 0.3s;
}
.snap-title {
display: block;
}
.snap-title::after,
.snap-title::before {
content: "";
position: absolute;
right: 1.25em;
top: 1.0em;
width: 2px;
height: 0.75em;
background-color: #999;
transition: all 0.3s;
}
.snap-title::after {
transform: rotate(90deg);
}
.snap-content {
max-height: 0;
overflow: hidden;
}
.snap-content p {
margin: 0;
padding: 0.5em 1em 1em;
font-size: 0.9em;
line-height: 1.5;
}

.snap-toggle:checked + .snap-title + .snap-content {
max-height: 9999px;
transition: all 1.5s;
}
.snap-toggle:checked + .snap-title::before {
transform: rotate(90deg) !important;
}

/* パスワード目のマーク */
.password-wrap dl dd {
  position: relative;
}

.password-wrap dl dd img {
  position: absolute;
  top: 50%;
  right: 10px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 15px;
}

/* システム管理者からのメッセージ 公開日 */
.admin-notice-date {
  display: block;
  text-align: right;
}

body {
  overscroll-behavior-y: none;
}

/* アイコンの枠線 */
img.no_image_icon_user {
  border: 3px solid #00c1de;
  position:relative;
}

.image_icon_edit {
  position:absolute;
  right: -22px;
  top: 37px;
  background-color: #00c1de;
  color: #fff;
  border-radius: 5px;
  line-height: 1;
  padding: 0.4em 0.5em;
  font-weight: 400;
  font-size: 13px;
  margin-left: 0.5em;
}

/* 注釈文 */
.commentary_text {
  color: #808080;
  font-size: 13px;
}

.bank_information {
  color: red;
}

/* サポータの申請 */
.applicant_supporter a{
  margin: 0 auto;
}

/* サポータ一覧 */
.list_supporters {
  flex-direction: column;
}

.list_supporters .point{
  margin-bottom: 4px;
}

dt.supporter-service_l_container {
  margin-bottom: 4px;
}

.name.supporter-index-table {
  display: flex;
  flex-direction: column;
}

.supporter-index-table-rank {
  background-color: #706f6f;
  color: white;
  font-weight: 700;
  width: fit-content;
  padding: 0 0.5em;
  border-radius: 10px;
  font-size: 14px;
}

/* ログインユーザTOP */
.point.good.login_user_top, .point.bad.login_user_top {
  font-size: 15px;
}

/* 予約済一覧 */
.mark.request_mark {
  font-size: 12px;
}

.work_completion_report {
  background-color: #e45353;
  color: #fff;
  font-weight: 700;
  display: inline-block;
  padding: 3px 0.5em;
  margin-bottom: 0.52em;
  border-radius: 13px;
  font-size: 11px;
}

/* 管理者からのメッセージ */
input.message-title.admin-message {
  padding: 1em;
  font-size: 11px;
}
