@charset "UTF-8";

/* 全体表示調整 */
.side {
  display: none !important;
}

.contents__inner {
  display: block !important;
}

main {
  width: 100% !important;
}

.touroku .u-bgc-silver {
  background-color: #f6f6f6 !important;
}

.touroku img {
  height: auto;
  width: 100%;
}

/* ===========================================
 * アイコン見出し
 * ======================================== */
.touroku-icon-heading {
  padding-left: 55px;
  background-size: auto 40px;
  line-height: 60px;
  background-repeat: no-repeat;
  background-position: left center;
}

.touroku-icon-heading.-about {
  background-image: url(../assets/touroku_icon01.png);
}

.touroku-icon-heading.-merit {
  background-image: url(../assets/touroku_icon02.png);
  padding-left: 70px;
}

.touroku-icon-heading.-method {
  background-size: auto 30px;
  background-image: url(../assets/touroku_icon03.png);
}

@media print, screen and (max-width: 768px) {
  .touroku-icon-heading {
    margin: 0 0 20px;
    font-size: 2rem;
    background-size: auto 30px;
    padding-left: 40px;
    line-height: 30px;
  }

  .touroku-icon-heading.-merit {
    background-size: auto 24px;
    padding-left: 40px;
  }

  .touroku-icon-heading.-method {
    background-size: auto 22px;
  }
}

/* ===========================================
 * 登録ボタン
 * ======================================== */
.touroku-btn-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 12px 16px;
}

.touroku-btn__link {
  font-size: 1.6rem;
  color: #444;
  font-family: "TBUDゴシック B", "TBUDGothic B";
  letter-spacing: 0;
  line-height: 1.5;
  text-align: center;
  padding: 20px 42px 20px 20px;
  position: relative;
  border: solid 1px #ccc;
  border-radius: 8px;
  transition: color 0.3s, background-color 0.3s;
  display: flex;
  align-items: center;
  gap: 10px;
  max-width: fit-content;
  width: 100%;
  height: 72px;
  transition: opacity 0.3s;
}

.touroku-btn__link::after {
  content: "";
  mask: url('data:image/svg+xml,<svg width="7" height="12" viewBox="0 0 7 12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5.17261 6.00368L0.243678 1.35873C0.0760276 1.20074 -0.00511529 1.01367 0.000249527 0.797542C0.00561435 0.58141 0.0923456 0.394559 0.260443 0.236989C0.428541 0.0794187 0.627039 0.000422987 0.855938 1.6763e-06C1.08484 -0.000419634 1.28311 0.0785761 1.45076 0.236989L6.59764 5.10312C6.73176 5.22952 6.83235 5.37171 6.89941 5.5297C6.96647 5.68769 7 5.84568 7 6.00368C7 6.16167 6.96647 6.31966 6.89941 6.47765C6.83235 6.63564 6.73176 6.77783 6.59764 6.90423L1.434 11.7704C1.26635 11.9284 1.07075 12.0048 0.84722 11.9998C0.623686 11.9947 0.428094 11.913 0.260443 11.7546C0.0927927 11.5961 0.00896737 11.4091 0.00896737 11.1934C0.00896737 10.9777 0.0927927 10.7908 0.260443 10.6328L5.17261 6.00368Z" fill="%23FF4800"/></svg>');
  mask-size: contain;
  mask-repeat: no-repeat;
  background-color: #ff4800;
  width: 7px;
  aspect-ratio: 7/12;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transition: background-color 0.3s;
}

.-web .touroku-btn__link::before {
  content: "";
  width: 41px;
  height: 32px;
  background-image: url(../assets/touroku_icon03_2.png);
}

.touroku-btn__pic {
  max-width: 40px;
}

.touroku-btn__link span {
  display: inline-block;
}

@media print, screen and (max-width: 768px) {
  .touroku-btn-wrap {
    flex-direction: column;
  }

  .touroku-btn__link {
    padding: 12px 42px 12px 20px;
    line-height: 1.2;
  }
}

/* ===========================================
 * 所有者登録とは？
 * ======================================== */
.touroku-about__inner {
  display: flex;
  align-items: center;
  gap: 20px 52px;
}

.touroku-about__pic {
  max-width: 356px;
  width: 100%;
}

@media print, screen and (max-width: 768px) {
  .touroku-about__inner {
    flex-direction: column;
  }

  .touroku-about__pic {
    margin-inline: auto;
  }
}

/* ===========================================
 * 所有者登録の目的
 * ======================================== */
.touroku-purpose-wrap {
  display: grid;
  grid-template-columns: repeat(auto-fit, 360px);
  justify-content: center;
  gap: 20px;
}

.touroku-purpose-item {
  padding: 20px;
}

.touroku-purpose-item__pic {
  width: auto !important;
  max-height: 102px;
  display: block;
  margin-inline: auto;
}

.touroku-purpose__target {
  display: grid;
  grid-template-columns: 36px auto;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 24px;
}

.touroku-purpose__target dt {
  font-size: 1.4rem;
  font-family: "TBUDゴシック B", "TBUDGothic B";
  line-height: 1;
  width: 36px;
  height: 36px;
  border: solid 1px #444;
  display: grid;
  place-content: center;
  letter-spacing: 0;
}

.touroku-purpose__target dd {
  font-size: 1.5rem;
  font-family: "TBUDゴシック B", "TBUDGothic B";
  line-height: 1.3;
  letter-spacing: 0;
  max-width: fit-content;
}

@media print, screen and (max-width: 768px) {
  .touroku-purpose-wrap {
    grid-template-columns: repeat(auto-fit, 330px);
  }
}

/* ===========================================
 * メリット スライドショー
 * ======================================== */
.touroku-merit-slider {
  max-width: 1040px;
  margin-inline: auto;
  margin-top: 32px;
  border: solid 1px #ccc;
}

.touroku-merit-slider .slick-track {
  display: flex;
}

.touroku-merit-slider-item {
  display: flex !important;
  flex-direction: column;
  height: auto !important;
}

.touroku-merit-slider-item__heading {
  font-size: 2.8rem;
  font-family: "TBUDゴシック B", "TBUDGothic B";
  letter-spacing: 0;
  line-height: 1.2;
  background-color: #ffefd7;
  width: 100%;
  display: flex;
  align-items: start;
  gap: 10px;
  padding: 12px 20px;
}

.touroku-merit-slider-item__heading .num {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  font-size: 2.4rem;
  color: #fff;
  background-color: #e7380c;
  flex-shrink: 0;
}

.touroku-merit-slider-item__heading span:nth-child(2) {
  margin-top: 2px;
}

.touroku-merit-slider-item__body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 30px 40px;
  flex: 1;
}

/* スライド1 */
.touroku-merit-slide01-col {
  display: grid;
  grid-template-columns: 52% 1fr;
  gap: 20px 40px;
  align-items: start;
}

.touroku-merit-slide01__box {
  background-color: #ffefd7;
  padding: 20px;
}

.touroku-merit-slide01__box .houtei-arrow-btn__link {
  padding: 15px 40px 15px 15px;
  background-color: #fff;
}

/* スライド2 */
.touroku-merit-slide02-col {
  display: grid;
  grid-template-columns: 1fr 32%;
  align-items: center;
  justify-content: center;
  gap: 20px 40px;
}

/* スライド3 */
.touroku-merit-slide03-col {
  display: grid;
  grid-template-columns: 52% 1fr;
  gap: 20px 40px;
  align-items: start;
}

/* スライド4 */
.touroku-merit-slide04-col {
  display: grid;
  grid-template-columns: 1fr 35%;
  align-items: center;
  justify-content: center;
  gap: 16px;
  font-size: 1.5rem;
}

@media print, screen and (max-width: 768px) {
  .touroku-merit-slide04-col {
    font-size: 1.4rem;
  }
}

/* スライド5 */
.touroku-merit-slide05-col {
  display: grid;
  grid-template-columns: 440px 1fr;
  align-items: center;
  gap: 40px;
}

.touroku-merit-slider .slick-arrow {
  width: 60px;
  height: 60px;
  background-color: #444;
  border-radius: 50%;
  z-index: 1;
  transition: opacity 0.3s;
}

.touroku-merit-slider .slick-arrow:hover {
  opacity: 0.6;
}

.touroku-merit-slider .slick-prev {
  left: -38px;
}

.touroku-merit-slider .slick-next {
  right: -38px;
}

.touroku-merit-slider .slick-prev::before,
.touroku-merit-slider .slick-next::before {
  content: "";
  background-color: #fff;
  width: 15px;
  aspect-ratio: 3/4;
  opacity: 1;
  display: block;
  margin-inline: auto;
}

.touroku-merit-slider .slick-prev::before {
  mask: url('data:image/svg+xml,<svg width="15" height="20" viewBox="0 0 15 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0.428977 10.8227L13.429 19.8227C13.579 19.9265 13.7546 19.9873 13.9367 19.9984C14.1188 20.0096 14.3004 19.9708 14.462 19.8861C14.6237 19.8015 14.759 19.6742 14.8535 19.5181C14.9479 19.362 14.9979 19.1831 14.998 19.0007V1.00066C14.9981 0.81814 14.9483 0.639064 14.8539 0.482844C14.7595 0.326624 14.6241 0.199219 14.4625 0.114434C14.3009 0.0296497 14.1191 -0.0092792 13.9369 0.00186647C13.7547 0.0130121 13.5791 0.0738072 13.429 0.177663L0.428977 9.17766C0.296536 9.27009 0.188374 9.39314 0.113688 9.53634C0.0390014 9.67954 0 9.83866 0 10.0002C0 10.1617 0.0390014 10.3208 0.113688 10.464C0.188374 10.6072 0.296536 10.7302 0.428977 10.8227Z" fill="white"/></svg>');
  mask-repeat: no-repeat;
  mask-size: contain;
  transform: translateX(-3px);
}

.touroku-merit-slider .slick-next::before {
  mask: url('data:image/svg+xml,<svg width="15" height="20" viewBox="0 0 15 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M14.5691 10.8227L1.56907 19.8227C1.41905 19.9265 1.24348 19.9873 1.06138 19.9984C0.87929 20.0096 0.697603 19.9708 0.535999 19.8861C0.374395 19.8015 0.239034 19.6742 0.144567 19.5181C0.0501013 19.362 0.000132561 19.1831 7.05719e-05 19.0007V1.00066C-5.05447e-05 0.81814 0.0497856 0.639064 0.144178 0.482844C0.238571 0.326624 0.37392 0.199219 0.535557 0.114434C0.697193 0.0296497 0.878952 -0.0092792 1.06113 0.00186647C1.24332 0.0130121 1.41897 0.0738072 1.56907 0.177663L14.5691 9.17766C14.7015 9.27009 14.8097 9.39314 14.8844 9.53634C14.959 9.67954 14.998 9.83866 14.998 10.0002C14.998 10.1617 14.959 10.3208 14.8844 10.464C14.8097 10.6072 14.7015 10.7302 14.5691 10.8227Z" fill="white"/></svg>');
  mask-repeat: no-repeat;
  mask-size: contain;
  transform: translateX(3px);
}

@media print, screen and (max-width: 768px) {
  .touroku-merit-slider {
    margin-top: 24px;
  }

  .touroku-merit-slider-item__heading {
    font-size: 1.8rem;
    padding: 8px 12px;
    gap: 8px;
  }

  .touroku-merit-slider-item__heading .num {
    width: 28px;
    height: 28px;
    font-size: 1.4rem;
    letter-spacing: 0;
    border: solid 2px #ff0000;
  }

  .touroku-merit-slider-item__heading span:nth-child(2) {
    margin-top: 4px;
  }

  .touroku-merit-slider-item__body {
    justify-content: start;
    padding: 16px 12px;
  }

  .touroku-merit-slide01-col,
  .touroku-merit-slide02-col,
  .touroku-merit-slide03-col,
  .touroku-merit-slide04-col,
  .touroku-merit-slide05-col {
    grid-template-columns: 1fr;
  }

  .touroku-merit-slider .slick-arrow {
    width: 30px;
    height: 30px;
  }

  .touroku-merit-slider .slick-prev {
    left: -10px;
  }

  .touroku-merit-slider .slick-next {
    right: -10px;
  }

  .touroku-merit-slider .slick-prev::before,
  .touroku-merit-slider .slick-next::before {
    width: 8px;
  }

  .touroku-merit-slider .slick-prev::before {
    transform: translateX(-2px);
  }

  .touroku-merit-slider .slick-next::before {
    transform: translateX(2px);
  }
}

/* ===========================================
 * 所有者登録のみボタン
 * ======================================== */
.touroku-only-btn-wrap {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 10px 20px;
}

.touroku-only-btn__link {
  color: #444;
  text-align: center;
  display: grid;
  grid-template-columns: 40px auto;
  justify-content: center;
  gap: 8px;
  width: 100%;
  padding: 20px 30px;
  border: 1px solid #d2d2d2;
  line-height: 1.5;
  border-radius: 8px;
  position: relative;
  background-color: #fff;
  transition: background-color 0.3s, color 0.3s;
}

.touroku-only-btn__link::after {
  content: "";
  mask: url('data:image/svg+xml,<svg width="7" height="12" viewBox="0 0 7 12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5.17261 6.00368L0.243678 1.35873C0.0760276 1.20074 -0.00511529 1.01367 0.000249527 0.797542C0.00561435 0.58141 0.0923456 0.394559 0.260443 0.236989C0.428541 0.0794187 0.627039 0.000422987 0.855938 1.6763e-06C1.08484 -0.000419634 1.28311 0.0785761 1.45076 0.236989L6.59764 5.10312C6.73176 5.22952 6.83235 5.37171 6.89941 5.5297C6.96647 5.68769 7 5.84568 7 6.00368C7 6.16167 6.96647 6.31966 6.89941 6.47765C6.83235 6.63564 6.73176 6.77783 6.59764 6.90423L1.434 11.7704C1.26635 11.9284 1.07075 12.0048 0.84722 11.9998C0.623686 11.9947 0.428094 11.913 0.260443 11.7546C0.0927927 11.5961 0.00896737 11.4091 0.00896737 11.1934C0.00896737 10.9777 0.0927927 10.7908 0.260443 10.6328L5.17261 6.00368Z" fill="%23FF4800"/></svg>');
  mask-size: contain;
  mask-repeat: no-repeat;
  background-color: #ff4800;
  width: 8px;
  aspect-ratio: 7/12;
  position: absolute;
  right: 26px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transition: background-color 0.3s;
}

.touroku-only-btn__link:hover {
  background-color: #ff4800;
  color: #fff;
  opacity: 1;
}

.touroku-only-btn__link:hover::after {
  background-color: #fff;
}

.touroku-only-btn__link::before {
  transition: background 0.3s;
}

.touroku-only-btn.-internet .touroku-only-btn__link::before {
  content: "";
  background: url(../assets/touroku_icon03_2.png) no-repeat center center;
  background-size: auto 25px;
  width: 40px;
  height: 25px;
  display: inline-block;
}

.touroku-only-btn.-internet .touroku-only-btn__link:hover::before {
  background: url(../assets/touroku_icon03_2_h.png) no-repeat center center;
  background-size: auto 25px;
  width: 40px;
  height: 25px;
  display: inline-block;
}

.touroku-only-btn.-hagaki .touroku-only-btn__link::before {
  content: "";
  background: url(../assets/touroku_icon03_3.png) no-repeat center center;
  background-size: auto 25px;
  width: 40px;
  height: 25px;
  display: inline-block;
}

.touroku-only-btn.-hagaki .touroku-only-btn__link:hover::before {
  background: url(../assets/touroku_icon03_3_h.png) no-repeat center center;
  background-size: auto 25px;
  width: 40px;
  height: 25px;
  display: inline-block;
}

.touroku-only-btn__onepoint {
  padding: 0.7rem 0.7rem 0.7rem 1rem;
  color: #fff;
  font-size: 1.1em;
  line-height: 1;
  text-align: center;
  background-color: #e8380d;
  border-radius: 5px;
  width: -moz-fit-content;
  width: fit-content;
  position: absolute;
  top: -2rem;
  left: -1.5rem;
  display: inline-block;
}

.touroku-only-btn__onepoint::after {
  content: "";
  margin: auto;
  background: #e8380d;
  width: 20px;
  height: 17.3205080757px;
  -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  position: absolute;
  left: 0;
  right: 0;
  bottom: -10px;
  display: inline-block;
}

@media print, screen and (max-width: 768px) {
  .touroku-only-btn__link {
    gap: 4px;
  }

  .touroku-only-btn__link {
    padding: 15px 25px;
  }

  .touroku-only-btn__onepoint {
    font-size: 0.9em;
  }
}

/* ===========================================
 * マイページと所有者登録の一括登録
 * ======================================== */
.touroku-mypage {
  background-color: #fcf1e6;
}

.touroku-mypage-btn {
  max-width: 900px;
  width: 100%;
  margin-inline: auto;
}

.touroku-mypage-btn__link {
  border: 1px solid #d2d2d2;
  border-radius: 8px;
  padding: 20px 30px;
  background-color: #fff;
  position: relative;
  display: block;
}

.touroku-mypage-btn__link:hover {
  border-color: #e8380d;
  color: #fff;
  opacity: 1;
  background: #fff;
}

.touroku-mypage-btn__pic {
  display: block;
  text-align: center;
}

.touroku-mypage-btn__pic img {
  max-width: 440px;
}

.touroku-mypage-btn__onepoint {
  padding: 0.7rem 0.7rem 0.7rem 1rem;
  color: #fff;
  font-size: 1.1em;
  line-height: 1;
  text-align: center;
  background-color: #e8380d;
  border-radius: 5px;
  width: -moz-fit-content;
  width: fit-content;
  position: absolute;
  top: -2rem;
  left: -1.5rem;
  display: inline-block;
}

.touroku-mypage-btn__onepoint::after {
  content: "";
  margin: auto;
  background: #e8380d;
  width: 20px;
  height: 17.3205080757px;
  -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  position: absolute;
  left: 0;
  right: 0;
  bottom: -10px;
  display: inline-block;
}

.touroku-mypage-btn__external {
  position: absolute;
  right: 20px;
  font-size: 2em;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

@media print, screen and (max-width: 768px) {
  .touroku-mypage-btn__link {
    padding: 10px 48px 16px;
  }

  .touroku-mypage-btn__onepoint {
    padding: 0.7rem 0.7rem 0.7rem 1rem;
    font-size: 0.9em;
  }

  .touroku-mypage-btn__external {
    font-size: 1.4em;
    right: 10px;
  }

  .touroku-mypage-btn__pic img {
    max-width: 440px;
  }
}

/* ===========================================
 * 登録情報の取り扱い
 * ======================================== */
.tenken-handling-box .u-ovy-s {
  height: 180px;
}

/* ===========================================
 * 追従ボタン
 * ======================================== */
.touroku-follow-menu {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: #e9380c;
  padding: 15px 10px;
  z-index: 5;
}

.js-follow-menu.none-floating {
  display: none !important;
}

.touroku-follow-menu__content {
  max-width: 830px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}

.touroku-follow-btn__link {
  position: relative;
  background-color: #fff;
  border: 1px solid #d2d2d2;
  color: #404544;
  font-size: 1.6rem;
  text-align: center;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 65px;
  margin: 0 10px;
  padding: 12px 30px;
  border-radius: 8px;
  transition: background-color 0.3s, border-color 0.3s, color 0.3s;
}

.touroku-follow-btn__link:hover {
  background-color: #e9380c;
  border-color: #fff;
  color: #fff;
  opacity: 1;
}

.touroku-follow-btn__link::after {
  content: "";
  mask: url('data:image/svg+xml,<svg width="7" height="12" viewBox="0 0 7 12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5.17261 6.00368L0.243678 1.35873C0.0760276 1.20074 -0.00511529 1.01367 0.000249527 0.797542C0.00561435 0.58141 0.0923456 0.394559 0.260443 0.236989C0.428541 0.0794187 0.627039 0.000422987 0.855938 1.6763e-06C1.08484 -0.000419634 1.28311 0.0785761 1.45076 0.236989L6.59764 5.10312C6.73176 5.22952 6.83235 5.37171 6.89941 5.5297C6.96647 5.68769 7 5.84568 7 6.00368C7 6.16167 6.96647 6.31966 6.89941 6.47765C6.83235 6.63564 6.73176 6.77783 6.59764 6.90423L1.434 11.7704C1.26635 11.9284 1.07075 12.0048 0.84722 11.9998C0.623686 11.9947 0.428094 11.913 0.260443 11.7546C0.0927927 11.5961 0.00896737 11.4091 0.00896737 11.1934C0.00896737 10.9777 0.0927927 10.7908 0.260443 10.6328L5.17261 6.00368Z" fill="%23FF4800"/></svg>');
  mask-size: contain;
  mask-repeat: no-repeat;
  background-color: #ff4800;
  width: 7px;
  aspect-ratio: 7/12;
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transition: background-color 0.3s;
}

.touroku-follow-btn__link:hover::after {
  background-color: #fff;
}

@media print, screen and (max-width: 768px) {
  .touroku-follow-menu {
    padding: 8px 10px;
    gap: 12px;
  }

  .touroku-follow-btn__link {
    line-height: 1.2;
    margin: 0;
    min-height: auto;
    padding: 4px;
    height: 100%;
  }
}

/* ===========================================
 * 点検キャンペーンモーダル
 * ======================================== */
.campaign_modal {
  width: min(80%, 600px);
  position: fixed;
  display: none;
  z-index: 9999;
}

.campaign_modal_close_btn {
  position: absolute;
  display: block;
  background-color: transparent;
  top: 0;
  right: 0;
  transform: translateX(35%) translateY(-28%);
  z-index: 1;
  cursor: pointer;
}

@media print, screen and (max-width: 768px) {
  .campaign_modal_close_btn svg {
    max-width: 45px;
  }
}

.campaign_modal_content {
  max-width: 600px;
  margin-inline: auto;
  background-color: #fff;
  border-radius: 20px;
  border: solid 4px #e8380c;
  border-radius: 20px;
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 25%);
  padding: 34px 0;
  max-height: 85vh;
  overflow: scroll;
}

.campaign_modal_inner {
  padding: 0 38px;
}

@media screen and (max-width: 768px) {
  .campaign_modal_inner {
    padding: 0 24px;
  }
}

.campaign_modal_btn {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 240px));
  justify-content: center;
  gap: 12px 20px;
}

.campaign_modal_overlay {
  background-color: rgb(0, 0, 0);
  width: 100%;
  height: 120%;
  position: fixed;
  top: 0px;
  left: 0px;
  display: none;
  opacity: 0.8;
  z-index: 3000;
}
