@charset "UTF-8";
/*========================================
reset
========================================*/
html, body, div, span, h1, h2, h3, h4, h5, h6, p, a, img,
dl, dt, dd, ol, ul, li, form, label, table, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary {
  margin: 0px;
  padding: 0px;
  border: 0px;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  outline: none;
}

article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary {
  display: block;
}

ul, ol {
  list-style: none;
}

table {
  border-spacing: 0px;
  empty-cells: show;
}

img {
  vertical-align: bottom;
  font-size: 0;
  line-height: 0;
}

/* clearfix */
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

.clearfix {
  zoom: 1;
  overflow: hidden;
}

/*========================================
_base
========================================*/
a {
  color: #00003c;
}

img {
  max-width: 100%;
}

img:not([width]) {
  width: 100%;
}

html {
  font-size: 62.5%;
}

body {
  font-size: 1.4rem;
  -webkit-text-size-adjust: 100%;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
}

body.no_scroll {
  overflow: hidden;
}

.wrap {
  width: 100%;
  color: #00003c;
  line-height: 1.5em;
  margin: 0 auto;
  position: relative;
}
@media screen and (max-width: 750px) {
  .wrap {
    margin-bottom: 20%;
  }
}

@media (min-width: 750px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
@media screen and (max-width: 750px) {
  img:not([width]) {
    max-width: 750px;
  }
  .wrap {
    max-width: 750px;
  }
}
.u-pcOnly {
  display: block;
}
@media screen and (max-width: 750px) {
  .u-pcOnly {
    display: none;
  }
}

.u-spOnly {
  display: none;
}
@media screen and (max-width: 750px) {
  .u-spOnly {
    display: block;
  }
}

.u-tab {
  display: none;
}
@media screen and (max-width: 850px) {
  .u-tab {
    display: block;
  }
}

/*========================================
l-hd
========================================*/
.l-hd {
  width: 100%;
  background: linear-gradient(#4d4d4d, #000000);
  filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.7));
}
.l-hd__logo {
  width: 30%;
  max-width: 240px;
}
@media screen and (max-width: 750px) {
  .l-hd__logo {
    width: 40%;
  }
}

/*========================================
l-ft
========================================*/
.l-ft {
  width: 100%;
}

.l-ft-bnr {
  width: 90%;
  max-width: 720px;
  margin: 0 auto;
  padding: min(6%, 50px) 0;
}
.l-ft-bnr:hover {
  filter: brightness(110%);
  transition: all 0.3s;
}

.l-ft-cont {
  width: 100%;
  background-color: #00003c;
  padding: 0 0 min(6%, 60px);
}
.l-ft-cont__logo {
  width: 23%;
  max-width: 230px;
  margin: 0 auto;
  padding: min(2%, 40px) 0;
}
@media screen and (max-width: 750px) {
  .l-ft-cont__logo {
    width: 58%;
    max-width: 100%;
    margin: 0;
    padding: 6% 4% 4%;
  }
}
.l-ft-cont__link {
  display: flex;
  justify-content: center;
  gap: 3%;
}
@media screen and (max-width: 750px) {
  .l-ft-cont__link {
    display: block;
    width: 84%;
    margin: 0 auto;
  }
}
.l-ft-cont__link-list {
  font-size: min(1.4vw, 14px);
  line-height: 1.6;
  border-left: #FFF 1px solid;
}
@media screen and (max-width: 750px) {
  .l-ft-cont__link-list {
    font-size: 3vw;
    margin-bottom: 1.5em;
  }
}
.l-ft-cont__link-item {
  padding: 0.4em 1em;
}
.l-ft-cont__link-item a {
  color: #FFF;
  text-decoration: none;
}
.l-ft-cont__link-item a:hover {
  text-decoration: underline;
}

.l-ft-copyright {
  width: 100%;
  background-color: #f2f2f2;
  text-align: center;
  padding: 0.5em 0;
}

/*==================================================
reCAPTCHAバッジを非表示
==================================================*/
.grecaptcha-badge {
  visibility: hidden;
}

/*========================================
common
========================================*/
.c-bg-gray {
  width: 100%;
  background-color: #f2f2f2;
}

/*========================================
c-floatbnr
========================================*/
.c-floatbnr {
  width: 10%;
  max-width: 100px;
  position: fixed;
  right: 0;
  top: 25%;
  z-index: 9000;
}
@media screen and (max-width: 750px) {
  .c-floatbnr {
    width: 96%;
    max-width: 720px;
    top: auto;
    bottom: 10px;
    left: 2%;
  }
}
.c-floatbnr__list {
  position: absolute;
  width: 60%;
  height: 100%;
  right: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 2.5%;
}
@media screen and (max-width: 750px) {
  .c-floatbnr__list {
    width: 97%;
    right: 1.5%;
    bottom: 8%;
    flex-direction: row;
    align-items: flex-end;
    gap: 1.5%;
  }
}
.c-floatbnr__mail {
  width: 100%;
}
.c-floatbnr__mail:hover {
  filter: brightness(150%);
  transition: all 0.3s;
}
@media screen and (max-width: 750px) {
  .c-floatbnr__mail {
    width: 50%;
  }
}
.c-floatbnr__tel {
  width: 750%;
  translate: 0;
  transition: all 0.1s;
}
.c-floatbnr__tel:hover {
  translate: -84%;
  transition: all 0.4s;
}
@media screen and (max-width: 750px) {
  .c-floatbnr__tel {
    width: 50%;
  }
  .c-floatbnr__tel:hover {
    translate: 0;
  }
}

/*========================================
c-ofr
========================================*/
.c-ofr {
  width: 100%;
  background-color: #e6e6e6;
}
.c-ofr__inner {
  max-width: 1000px;
  margin: 0 auto;
  position: relative;
}
.c-ofr__icon {
  width: 7%;
  position: absolute;
  left: 46.5%;
  top: min(-7%, -25px);
}
@media screen and (max-width: 750px) {
  .c-ofr__icon {
    width: 16%;
    left: 42%;
    top: -9%;
  }
}
.c-ofr__ttl {
  font-size: min(3vw, 30px);
  line-height: 1.5;
  font-weight: 600;
  text-align: center;
  padding: 1.5em 0 1em;
}
@media screen and (max-width: 750px) {
  .c-ofr__ttl {
    font-size: 6vw;
    padding: 1.8em 0 0.8em;
  }
}
.c-ofr__list {
  width: 92%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  padding-bottom: 9%;
}
@media screen and (max-width: 750px) {
  .c-ofr__list {
    width: 72%;
    display: block;
  }
}
.c-ofr__list-mail {
  width: 48%;
  background-color: #00003c;
  border-radius: 10px;
}
@media screen and (max-width: 750px) {
  .c-ofr__list-mail {
    width: 100%;
    margin-bottom: 6%;
  }
}
.c-ofr__list-mail:hover {
  background: #00aaaa;
  transition: all 0.2s;
}
.c-ofr__list-tel {
  width: 48%;
  background-color: #FFF;
  border-radius: 10px;
}
@media screen and (max-width: 750px) {
  .c-ofr__list-tel {
    width: 100%;
  }
}

.c-link-txt {
  font-size: 20px;
  line-height: 1.5;
  font-weight: 500;
  padding: 3em 0 0;
}
@media screen and (max-width: 750px) {
  .c-link-txt {
    font-size: 4.5vw;
    padding: 2em 0 0;
  }
}
.c-link-txt a {
  text-underline-offset: 8px;
}
@media screen and (max-width: 750px) {
  .c-link-txt a {
    text-underline-offset: 4px;
  }
}
.c-link-txt a:hover {
  color: #00aaaa;
  transition: all 0.2s;
}
.c-link-txt img {
  width: 24px;
}
@media screen and (max-width: 750px) {
  .c-link-txt img {
    width: 4.5vw;
  }
}

/*========================================
c-archive-menu
========================================*/
.c-archive-menu {
  width: 100%;
  border-top: #f2f2f2 1px solid;
  padding-top: min(7%, 70px);
}
@media screen and (max-width: 750px) {
  .c-archive-menu {
    padding-top: 10%;
  }
}
.c-archive-menu__list {
  width: 92%;
  max-width: 1000px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  font-size: min(1.6vw, 20px);
  line-height: 1.4;
  gap: 2.5em 3.5%;
}
@media screen and (max-width: 750px) {
  .c-archive-menu__list {
    font-size: 3vw;
    gap: 1.5em 5%;
    justify-content: flex-start;
  }
}
.c-archive-menu__item {
  width: 31%;
  max-width: 315px;
}
@media screen and (max-width: 750px) {
  .c-archive-menu__item {
    width: 47.5%;
  }
}
.c-archive-menu__item a {
  display: block;
  position: relative;
  font-weight: 600;
  color: #78f032;
  text-decoration: none;
}
.c-archive-menu__item:hover {
  opacity: 0.8;
  transition: all 0.2s;
}
.c-archive-menu__name {
  width: 100%;
  min-height: 3em;
  display: flex;
  align-items: center;
  position: absolute;
  left: 0;
  bottom: 0;
  background: url(../images/common/icon_arw.webp) right 5% center no-repeat;
  background-size: 24px;
  background-color: rgba(0, 0, 60, 0.8);
  padding: 0.5em 0;
}
@media screen and (max-width: 750px) {
  .c-archive-menu__name {
    background-size: 3vw;
    font-weight: 500;
    padding: 0.1em 0 0.3em;
  }
}
.c-archive-menu__name-txt {
  padding-left: 1em;
}

/*========================================
c-menu
========================================*/
.c-menu {
  width: 92%;
  max-width: 1000px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  font-size: min(1.6vw, 20px);
  line-height: 1.4;
  gap: 2.5em 3.5%;
}
@media screen and (max-width: 750px) {
  .c-menu {
    font-size: 3vw;
    gap: 1.5em 5%;
  }
}
.c-menu__item {
  width: 31%;
}
@media screen and (max-width: 750px) {
  .c-menu__item {
    width: 47.5%;
  }
}
.c-menu__item a {
  display: block;
  position: relative;
  font-weight: 600;
  color: #78f032;
  text-decoration: none;
}
.c-menu__item:hover {
  opacity: 0.8;
  transition: all 0.2s;
}
.c-menu__name {
  width: 100%;
  min-height: 3em;
  display: flex;
  align-items: center;
  position: absolute;
  left: 0;
  bottom: 0;
  background: url(../images/common/icon_arw.webp) right 5% center no-repeat;
  background-size: 24px;
  background-color: rgba(0, 0, 60, 0.8);
  padding: 0.5em 0;
}
@media screen and (max-width: 750px) {
  .c-menu__name {
    background-size: 3vw;
    font-weight: 500;
    padding: 0.1em 0 0.3em;
  }
}
.c-menu__name-txt {
  padding-left: 1em;
}

/*========================================
ページネーション
========================================*/
.nav-links .page-numbers {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  text-align: center;
}

.wp-pagenavi {
  text-align: center;
}

.nav-links a.page-numbers,
.nav-links .current,
.nav-links a.prev,
.nav-links a.next,
.nav-links .dots {
  width: 40px;
  height: 40px;
  text-align: center;
  line-height: 40px;
  background: #fff;
  color: #A2A2A2;
  margin-right: 10px;
  font-size: 14px;
  font-weight: 500;
  border: 1px solid #A2A2A2;
  text-decoration: none;
}

.nav-links a.page-numbers:hover {
  color: #00003c;
  border-color: #00003c;
}

.nav-links .current {
  color: #00003c;
  border: #00003c 1px solid;
}

/* 前への「＜」、次への「＞」 */
.nav-links a.prev,
.nav-links a.next {
  color: #A2A2A2;
  text-decoration: none;
  position: relative;
}

.nav-links .dots {
  background: transparent;
  border: none;
}

/*========================================
c-owner-appeal
========================================*/
.c-owner-appeal {
  background-color: #f9f9f9;
  padding: 50px 20px;
  text-align: center;
}
.c-owner-appeal__inner {
  max-width: 800px;
  margin: 0 auto;
  background: #fff;
  border-radius: 12px;
  padding: 5%;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
  border: 1px solid #eee;
}
.c-owner-appeal__head {
  margin-bottom: 2em;
}
@media screen and (max-width: 750px) {
  .c-owner-appeal__head {
    margin-bottom: 1.5em;
  }
}
.c-owner-appeal__ttl {
  font-size: min(3.5vw, 30px);
  font-weight: 900;
  color: #0aa;
  line-height: 1.4;
  font-feature-settings: "palt";
}
@media screen and (max-width: 750px) {
  .c-owner-appeal__ttl {
    font-size: 7vw;
  }
}
.c-owner-appeal__subttl {
  font-size: min(2vw, 18px);
  line-height: 1.5;
  font-weight: 500;
  margin-top: 0.5em;
}
@media screen and (max-width: 750px) {
  .c-owner-appeal__subttl {
    font-size: 4.5vw;
  }
}
.c-owner-appeal__content {
  text-align: left;
}
.c-owner-appeal__lead {
  background: #fdfaf4;
  display: flex;
  justify-content: space-between;
  align-items: center;
  overflow: hidden;
  border-radius: 8px;
  border: 1px solid #eee;
}
@media screen and (max-width: 750px) {
  .c-owner-appeal__lead {
    display: block;
  }
}
.c-owner-appeal__figure {
  width: 45%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 750px) {
  .c-owner-appeal__figure {
    width: 80%;
    margin: 0 auto;
    padding-bottom: 6%;
  }
}
.c-owner-appeal__checklist {
  list-style-type: none;
  padding-left: 0;
  margin: 0;
  padding: 5%;
}
.c-owner-appeal__checklist li {
  position: relative;
  padding-left: 30px;
  font-size: min(1.9vw, 17px);
  font-weight: bold;
  line-height: 1.7;
  color: #d90000;
}
@media screen and (max-width: 750px) {
  .c-owner-appeal__checklist li {
    font-size: 4vw;
    line-height: 1.5;
  }
}
.c-owner-appeal__checklist li + li {
  margin-top: 10px;
}
.c-owner-appeal__checklist li::before {
  content: "✔";
  position: absolute;
  left: 0;
  top: 0;
  font-size: 18px;
  color: #d90000;
}
.c-owner-appeal__solution {
  font-size: min(2.2vw, 22px);
  font-weight: bold;
  text-align: center;
  line-height: 1.5;
  margin-top: 1em;
}
@media screen and (max-width: 750px) {
  .c-owner-appeal__solution {
    font-size: 4.5vw;
  }
}
.c-owner-appeal__solution strong {
  color: #0aa;
  font-size: 1.2em;
}
.c-owner-appeal__merit {
  font-size: min(1.8vw, 16px);
  line-height: 1.6;
  margin-top: 1em;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .c-owner-appeal__merit {
    font-size: 4vw;
    margin-top: 0.5em;
  }
}
.c-owner-appeal__btn {
  margin-top: 2em;
  text-align: center;
}
.c-owner-appeal__btn a {
  display: inline-block;
  background: #00003c;
  /* 既存サイトのCTAカラー（推測） */
  color: #78f032;
  font-size: min(2vw, 20px);
  line-height: 1.4;
  font-weight: 600;
  padding: 0.8em 50px 0.9em;
  border-radius: 4px;
  text-decoration: none;
  transition: transform 0.2s, box-shadow 0.2s;
}
@media screen and (max-width: 750px) {
  .c-owner-appeal__btn a {
    font-size: 4vw;
  }
}
.c-owner-appeal__btn a:hover {
  background: #0aa;
}