html {
  font-size: 16px;
  margin-top: 5px !important;
}

body {
  font-family: "Noto Sans JP", "sans-serif";
}

a[href^="tel:"] {
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  a[href^="tel:"] {
    pointer-events: auto;
  }
}

a {
  transition: opacity 0.3s;
}
a:hover {
  opacity: 0.7;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

ul,
ol {
  padding: 0;
}

body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

html {
  scroll-behavior: smooth;
}

body {
  line-height: 1.5;
  min-height: 100vh;
  text-rendering: optimizeSpeed;
}

ul,
ol {
  list-style: none;
}

a:not([class]) {
  -webkit-text-decoration-skip: ink;
  text-decoration-skip-ink: auto;
}

a {
  text-decoration: none;
}

img {
  display: block;
  width: 100%;
  max-width: 100%;
}

article > * + * {
  margin-top: 1em;
}

input,
button,
textarea,
select {
  font: inherit;
}

img:not([alt]) {
  filter: blur(10px);
}

input,
button,
select,
textarea {
  font: inherit;
  border: none;
  border-radius: 0;
  outline: none;
  background: transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

textarea {
  resize: none;
}

input[type="checkbox"],
input[type="radio"] {
  display: none;
}

input[type="submit"],
input[type="button"],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

.header {
  width: 100%;
  z-index: 5000;
  position: relative;
  top: 0;
  left: 0;
  background-color: rgba(255, 255, 255, 0.9);
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}

.header__inner {
  height: 100%;
}
@media only screen and (max-width: 1024px) {
  .header__inner {
    padding-top: 19px;
    padding-bottom: 18px;
  }
}

.header__logo {
  z-index: 7000;
  position: relative;
  line-height: 1.67;
  font-size: 15px;
  margin-top: 15px;
}
@media only screen and (max-width: 1024px) {
  .header__logo {
    width: 250px;
    height: auto;
  }
}
.header__logo a {
  display: flex;
  align-items: center;
  -moz-column-gap: 10px;
  column-gap: 10px;
  text-align: center;
}
@media only screen and (max-width: 1024px) {
  .header__logo a {
    white-space: nowrap;
    font-size: clamp(12px, 2.5vw, 19px);
    line-height: 1.42;
  }
}
@media only screen and (max-width: 780px) {
  .header__logo a {
    font-size: 12px;
  }
}
.header__logo:after {
  background-image: url(../images/common/nichijiren_icon.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  position: absolute;
  display: block;
  width: 4.8vw;
  max-width: 77px;
  height: 3.8vw;
  max-height: 61px;
  bottom: 0;
  right: -88px;
}
@media only screen and (max-width: 1024px) {
  .header__logo:after {
    right: -251px;
  }
}
@media only screen and (max-width: 780px) {
  .header__logo:after {
    right: -75px;
    width: 40px;
    height: 32px;
  }
}
@media only screen and (max-width: 425px) {
  .header__logo:after {
    width: 31px;
    height: 25px;
    right: -64px;
    bottom: 0;
  }
}

.header__logo img {
  width: 73px;
  aspect-ratio: 340/71;
}
@media only screen and (max-width: 1024px) {
  .header__logo img {
    width: 53.4px;
    aspect-ratio: 53.4/53;
    height: 100%;
  }
}
@media only screen and (max-width: 780px) {
  .header__logo img {
    width: 31px;
  }
}

.header__top {
  display: flex;
  justify-content: space-between;
  margin-left: 40px;
}
@media only screen and (max-width: 1024px) {
  .header__top {
    margin-left: 5.1vw;
  }
}
@media only screen and (max-width: 425px) {
  .header__top {
    margin-left: 3vw;
  }
}

.header__top-menu {
  display: flex;
  align-items: baseline;
}
.header__top-menu li {
  background-color: #365a99;
}
.header__top-menu li a {
  color: #fff;
  font-size: clamp(16px, 1.4vw, 18px);
}
.header__top-menu li + li {
  /* margin-left: 1px; */
  border-left: 1px solid #fff;
}
.header__top-menu li:nth-of-type(1) {
  padding: 15px 28px;
}
.header__top-menu li:nth-of-type(2) {
  padding: 15px 16px;
}
.header__top-menu li:nth-of-type(3) {
  padding: 15px 23px;
}

.header__top-menu.lg-none {
  display: flex;
}
@media only screen and (max-width: 1024px) {
  .header__top-menu.lg-none {
    display: none;
  }
}

.header__menu {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  height: 100%;
}

.header__items {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 22px;
}

.header__item {
  display: block;
  background-color: #f0f3f5;
  padding-top: 12px;
  padding-bottom: 12px;
  width: 100%;
  text-align: center;
}

.header__item + .header__item {
  margin-left: 2px;
}

.header__link {
  font-weight: 400;
  font-family: "Noto Sans JP", "sans-serif";
  font-size: clamp(14px, 1.2vw, 18px);
}

.hamburger {
  position: fixed;
  z-index: 9999;
  width: 42px;
  height: 30px;
  top: 52px;
  right: 35px;
  cursor: pointer;
}
@media only screen and (max-width: 1024px) {
  .hamburger {
    top: 30px;
  }
}
@media only screen and (max-width: 425px) {
  .hamburger {
    right: 7px;
    top: 46px;
  }
}

.hamburger span {
  height: 5px;
  position: absolute;
  background-color: #4472c4;
}

.hamburger-span01 {
  top: 0;
  width: 40px;
}
@media only screen and (max-width: 425px) {
  .hamburger-span01 {
    width: 35px;
  }
}

.hamburger-span02 {
  top: 44%;
  width: 24px;
}
@media only screen and (max-width: 425px) {
  .hamburger-span02 {
    width: 20px;
  }
}

.hamburger-span03 {
  width: 24px;
  top: 85%;
}
@media only screen and (max-width: 425px) {
  .hamburger-span03 {
    width: 20px;
  }
}

.js-hamburger.is-active .hamburger-span01 {
  transform: rotate(45deg);
  top: 50%;
}

.js-hamburger.is-active .hamburger-span02 {
  display: none;
}

.js-hamburger.is-active .hamburger-span03 {
  transform: rotate(-45deg);
  top: 50%;
  width: 40px;
}
@media only screen and (max-width: 425px) {
  .js-hamburger.is-active .hamburger-span03 {
    width: 35px;
  }
}

.drawer__menu {
  width: 100%;
  height: 100%;
  z-index: 9000;
  position: fixed;
  top: 0;
  left: 0;
  background-color: white;
}

.js-drawer {
  transform: translateX(100vw);
  transition: all 0.3s linear;
}

.js-drawer.is-active {
  transform: translateX(0);
}

.drawer__inner {
  padding-bottom: 100px;
  height: calc(88% + 1px);
  overflow-y: auto;
  overscroll-behavior-y: none;
}

.drawer__item {
  border-bottom: 1px solid #e6e6e6;
  position: relative;
}
.drawer__item:after {
  content: "";
  position: absolute;
  border: 0;
  border-top: solid 5px #0074be;
  border-right: solid 5px #0074be;
  display: inline-block;
  transform: rotate(45deg) translateY(-50%);
  width: 20px;
  height: 20px;
  top: 50%;
  right: 50px;
}

.drawer__item a {
  font-size: clamp(16px, 4vw, 35px);
  padding-left: 6.4vw;
  padding-right: 6.4vw;
  padding-block: 7vw;
  display: block;
}

.button.button--login {
  background-color: #99beff;
  color: #44546a;
}

.drawer__buttons {
  margin-top: 9.6vw;
  padding-left: 5.1vw;
  padding-right: 5.1vw;
}
@media only screen and (max-width: 1024px) {
  .drawer__buttons li {
    display: flex;
    justify-content: center;
  }
}

.drawer__button.button {
  width: 100%;
}
.drawer__button.button:after {
  content: none;
}
.drawer__button.button:before {
  content: none;
}

.drawer__buttons li + li {
  display: flex;
  margin-top: 5.1vw;
}

.drawer__shadow.header__logo {
  padding-top: 19px;
  padding-bottom: 18px;
  width: 100%;
  background-color: #fff;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}

.footer {
  background: #f0f3f5;
}

.footer__inner {
  display: flex;
  -moz-column-gap: 5.4vw;
  column-gap: 5.4vw;
  padding: 85px 183px 56px 183px;
}
@media only screen and (max-width: 1024px) {
  .footer__inner {
    flex-direction: column;
    padding: 10.2vw 183px 8.9vw 183px;
  }
}

.footer__left {
  display: flex;
  -moz-column-gap: 9vw;
  column-gap: 9vw;
}
@media only screen and (max-width: 1024px) {
  .footer__left {
    flex-direction: column;
  }
}

.footer__left-menu:nth-child(1) {
  padding-bottom: 18px;
}

@media only screen and (max-width: 780px) {
  .footer__left-menu:nth-child(1) .footer__menu-item {
    margin-top: 5.5vw;
  }
  .footer__left-menu:nth-child(1) .footer__menu-item ul {
    margin-top: 5.5vw;
  }
}

.footer__left-menu:nth-child(2) {
  display: flex;
  flex-direction: column;
}
@media only screen and (max-width: 1024px) {
  .footer__left-menu:nth-child(2) {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    row-gap: 5.5vw;
    -moz-column-gap: 8.9vw;
    column-gap: 8.9vw;
    padding-top: 55px;
    border-top: 1px solid #c9c9c9;
  }
}

@media only screen and (max-width: 780px) {
  .footer__left-menu:nth-child(2) .footer__menu-item {
    width: 44%;
  }
}

@media only screen and (max-width: 1024px) {
  .footer__left-menu_sp .footer__menu-item a {
    font-size: clamp(13px, 3vw, 27px);
  }
}

.footer__menu-item a {
  color: #44546a;
  line-height: 1.85;
  font-size: clamp(14px, 1.4vw, 16px);
}
@media only screen and (max-width: 1024px) {
  .footer__menu-item a {
    font-size: clamp(14px, 4vw, 34px);
  }
}

.footer__sub-item a {
  color: #333333;
  line-height: 2.11;
  font-size: clamp(13px, 1.4vw, 14px);
  display: inline-flex;
  align-items: center;
}
@media only screen and (max-width: 1024px) {
  .footer__sub-item a {
    font-size: clamp(13px, 3vw, 27px);
  }
}
.footer__sub-item a:before {
  content: "";
  border: 0;
  border-top: solid 2px #000;
  border-right: solid 2px #000;
  display: inline-block;
  transform: rotate(45deg) translateY(-50%);
  width: 7px;
  height: 7px;
  margin-top: 7px;
  margin-right: 12px;
}

@media only screen and (max-width: 1024px) {
  .footer__right {
    margin-top: 11.7vw;
    margin-inline: auto;
  }
}
.footer__right li {
  background-color: #4eaae5;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 320px;
}
@media only screen and (max-width: 1024px) {
  .footer__right li {
    width: 64.1vw;
    max-width: 500px;
    min-width: 270px;
  }
}
.footer__right li a {
  padding-top: 15px;
  padding-bottom: 15px;
  width: 100%;
  text-align: center;
}
@media only screen and (max-width: 1024px) {
  .footer__right li a {
    font-size: clamp(14px, 4vw, 32px);
    padding-top: 3.84vw;
    padding-bottom: 3.84vw;
  }
}

.footer__right li + li {
  margin-top: 16px;
}
.footer__right li:last-child {
  background-color: #99beff;
}
.footer__right li:first-child a,
.footer__right li:nth-child(2) a {
  line-height: 1;
}

.footer__right-link {
  color: #fff;
  font-size: clamp(18px, 1.5vw, 14px);
}
.footer__right-link span {
  color: #fff;
  font-size: 13px;
  line-height: 1;
}

.footer__right-link--login {
  color: #44546a;
}

.footer__bottom {
  background-color: #365a99;
  height: 66px;
  display: flex;
  align-items: center;
  position: relative;
}
.footer__bottom:after {
  background-image: url(../images/common/nichijiren_icon3.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  position: absolute;
  display: block;
  width: 4.8vw;
  height: 3.5vw;
  bottom: 121px;
  right: 7%;
}
@media only screen and (max-width: 780px) {
  .footer__bottom:after {
    content: none;
  }
}
@media only screen and (max-width: 1024px) {
  .footer__bottom {
    padding-top: 50px;
    padding-bottom: 41px;
    height: auto;
  }
}

.footer__bottom-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-left: 183px;
  padding-right: 225px;
}
@media only screen and (max-width: 1024px) {
  .footer__bottom-inner {
    row-gap: 2.5vw;
    flex-direction: column;
  }
}
.footer__bottom-inner p {
  color: #fff;
}
@media only screen and (max-width: 1024px) {
  .footer__bottom-inner p {
    font-size: clamp(12px, 3vw, 20px);
  }
}

.footer__copy {
  color: #fff;
}
@media only screen and (max-width: 1024px) {
  .footer__copy {
    font-size: clamp(13px, 3vw, 24px);
    text-align: center;
  }
}

.fv {
  width: 100%;
}
.fv img {
  width: 100%;
  height: 100%;
  aspect-ratio: 1600/509;
}
@media only screen and (max-width: 780px) {
  .fv img {
    width: auto;
    height: 89.6vw;
    aspect-ratio: 780/699;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 30%;
    object-position: 30%;
  }
}

.top-menu {
  margin-top: 60px;
}

@media only screen and (max-width: 780px) {
  .top-menu__inner.inner {
    padding-left: 0;
    padding-right: 0;
  }
}

.top-menu__items {
  padding: 27px 50px 27px 50px;
  background-color: #365a99;
  display: flex;
  align-items: center;
  justify-content: space-between;
  -moz-column-gap: 10px;
  column-gap: 10px;
}
@media only screen and (max-width: 780px) {
  .top-menu__items {
    flex-direction: column;
    row-gap: 20px;
    padding-left: 5.1vw;
    padding-right: 5.1vw;
  }
}

.top-menu__item {
  background-color: #fff;
  padding-top: 13px;
  padding-bottom: 12px;
  width: 14.37vw;
  height: 159px;
}
@media only screen and (max-width: 780px) {
  .top-menu__item {
    width: 100%;
    height: auto;
    padding-top: 6.4vw;
    padding-bottom: 6.4vw;
  }
}
.top-menu__item a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  height: 100%;
}
@media only screen and (max-width: 780px) {
  .top-menu__item a {
    flex-direction: row-reverse;
    justify-content: flex-start;
    -moz-column-gap: 7vw;
    column-gap: 7vw;
  }
}

.top-menu__link p {
  font-weight: 700;
  text-align: center;
  font-size: clamp(14px, 2vw, 18px);
  line-height: 1.3;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 780px) {
  .top-menu__link p {
    font-size: clamp(16px, 4vw, 40px);
    text-align: left;
    width: 54%;
  }
}

.top-menu__img {
  flex-shrink: 1;
}
.top-menu__img img {
  width: 50%;
  margin-inline: auto;
}

@media only screen and (max-width: 780px) {
  .top-menu__item:nth-child(1) .top-menu__img img {
    width: 16vw;
  }
}

@media only screen and (max-width: 780px) {
  .top-menu__item:nth-child(2) .top-menu__img img {
    width: 14.5vw;
  }
}

@media only screen and (max-width: 780px) {
  .top-menu__item:nth-child(3) .top-menu__img img {
    width: 10.5vw;
  }
}

@media only screen and (max-width: 780px) {
  .top-menu__item:nth-child(4) .top-menu__img img {
    width: 11.5vw;
  }
}

@media only screen and (max-width: 780px) {
  .top-menu__item:nth-child(5) .top-menu__img img {
    width: 11.6vw;
  }
}

.top-news__section {
  padding-top: 70px;
  padding-bottom: 70px;
}
@media only screen and (max-width: 780px) {
  .top-news__section {
    padding-top: 14.1vw;
    padding-bottom: 14.1vw;
  }
}

.top-news__content {
  padding-left: 50px;
  padding-right: 50px;
}
@media only screen and (max-width: 780px) {
  .top-news__content {
    padding-left: 0;
    padding-right: 0;
  }
}

.top-news__title {
  font-weight: 700;
  font-size: clamp(18px, 2vw, 22px);
  padding-bottom: 17px;
  border-bottom: 1px solid #707070;
  position: relative;
}
@media only screen and (max-width: 780px) {
  .top-news__title {
    font-size: clamp(18px, 5vw, 35px);
    padding-bottom: 2.1vw;
  }
}
.top-news__title:after {
  background-image: url(../images/common/nichijiren_icon2.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  position: absolute;
  display: block;
  width: 4.8vw;
  height: 3.5vw;
  bottom: 11px;
  left: 90px;
}
@media only screen and (max-width: 780px) {
  .top-news__title:after {
    content: none;
  }
}

.top-news__items {
  margin-top: 30px;
}
.top-news__items li {
  display: flex;
  align-items: center;
  padding-top: 20px;
  padding-bottom: 20px;
  -moz-column-gap: 39px;
  column-gap: 39px;
  border-bottom: 1px solid #707070;
}
@media only screen and (max-width: 780px) {
  .top-news__items li {
    display: block;
    margin-top: 12px;
  }
}

.news-wrap {
  display: flex;
  align-items: center;
  -moz-column-gap: 45px;
  column-gap: 45px;
}
@media only screen and (max-width: 780px) {
  .news-wrap {
    -moz-column-gap: 2.6vw;
    column-gap: 2.6vw;
  }
}

.news-date {
  font-size: clamp(14px, 1vw, 16px);
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 780px) {
  .news-date {
    font-size: clamp(14px, 3vw, 20px);
  }
}

.news-cate {
  font-size: clamp(14px, 1vw, 16px);
  letter-spacing: 0.05em;
  display: block;
  background-color: #365a99;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 9px;
  padding-bottom: 9px;
  width: 163px;
}
@media only screen and (max-width: 780px) {
  .news-cate {
    font-size: clamp(14px, 3vw, 20px);
    width: 120px;
    padding-top: 3px;
    padding-bottom: 3px;
  }
}

.news-title {
  font-size: clamp(14px, 1vw, 16px);
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 780px) {
  .news-title {
    font-size: clamp(14px, 3vw, 20px);
    display: block;
    margin-top: 10px;
  }
}

.top-news__button {
  margin-top: 50px;
  margin-inline: auto;
  width: 450px;
}

.insurance_kenchiku__section {
  padding-top: 100px;
  padding-bottom: 100px;
}
@media only screen and (max-width: 780px) {
  .insurance_kenchiku__section {
    padding-top: 12.8vw;
    padding-bottom: 12.8vw;
  }
}

.insurance_kenchiku__section .kenchiku__title {
  padding-left: 50px;
}

.login_button_wrap {
  position: fixed;
  right: 0;
  top: 228px;
  z-index: 4000;
}
@media only screen and (max-width: 780px) {
  .login_button_wrap {
    margin-top: 12.56vw;
    position: relative;
    right: auto;
    top: auto;
  }
}
.login_button_wrap .login-button {
  height: 65px;
  position: relative;
  right: auto;
  top: auto;
  padding-top: 23px;
  padding-bottom: 23px;
  justify-content: center;
  padding-left: 0;
}
.login_button_wrap .login-button p:after {
  top: 41%;
  width: 14px;
  height: 14px;
}
@media only screen and (max-width: 780px) {
  .login_button_wrap .login-button {
    margin: 0px;
    width: 68.7vw;
    margin-inline: auto;
    padding-left: 12vw;
    padding-right: 12vw;
    height: 15.3vw;
  }
}
.login_button_wrap .login-button + .login-button {
  margin-top: 10px;
}
@media only screen and (max-width: 780px) {
  .login_button_wrap .login-button + .login-button {
    margin-top: 3.2vw;
  }
}

.kenchiku__notice {
  margin-top: 89px;
  padding: 30px 30px 37px 30px;
  background-color: #e6edf4;
  border-radius: 7px;
  margin-right: 0px;
  position: relative;
  width: 623px;
  margin-left: auto;
}
@media only screen and (max-width: 780px) {
  .kenchiku__notice {
    padding: 10.2vw;
    margin-right: 0;
    margin-left: 0;
    width: 100%;
    margin-top: 12.4vw;
  }
}
.kenchiku__notice::after {
  content: "";
  position: absolute;
  bottom: -28px;
  left: 48px;
  border: 28px solid transparent;
  border-left: 51px solid #e6edf4;
  transform: rotate(3deg);
}
@media only screen and (max-width: 780px) {
  .kenchiku__notice::after {
    transform: rotate(-61deg);
    bottom: -7px;
  }
}

.kenchiku__notice_title {
  color: #44546a;
  font-size: clamp(16px, 2vw, 20px);
  font-weight: bold;
  padding-bottom: 15px;
  line-height: 1;
  letter-spacing: 0.05em;
  border-bottom: 1px solid #707070;
  display: inline-flex;
  align-items: center;
  width: 100%;
}
@media only screen and (max-width: 780px) {
  .kenchiku__notice_title {
    font-size: clamp(16px, 4.7vw, 36px);
  }
}
.kenchiku__notice_title:before {
  background-image: url(../images/under/alert-circle.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  width: 21.33px;
  height: 21.33px;
  margin-right: 8px;
}
@media only screen and (max-width: 780px) {
  .kenchiku__notice_title:before {
    width: 35px;
    height: 35px;
  }
}

.kenchiku__notice_text {
  margin-top: 15px;
  font-size: clamp(13px, 3vw, 15px);
  color: #000;
  line-height: 1.5;
  font-weight: 300;
}
@media only screen and (max-width: 780px) {
  .kenchiku__notice_text {
    font-size: clamp(14px, 3.5vw, 32px);
    margin-top: 23px;
  }
}

.kenchiku__about {
  padding: 50px;
  margin-top: 50px;
}
@media only screen and (max-width: 780px) {
  .kenchiku__about {
    padding-top: 100px;
    padding-left: 25px;
    padding-right: 25px;
  }
}

.kenchiku__about-title {
  color: #44546a;
  font-size: clamp(16px, 2vw, 24px);
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 780px) {
  .kenchiku__about-title {
    font-size: clamp(18px, 5.4vw, 46px);
  }
}

.kenchiku__about-text {
  margin-top: 21px;
  font-size: clamp(15px, 2vw, 18px);
  color: #000;
  line-height: 1.85;
}
@media only screen and (max-width: 780px) {
  .kenchiku__about-text {
    font-size: clamp(14px, 3.5vw, 32px);
    margin-top: 7.6vw;
  }
}

.plan_wrapper {
  background-color: #e6edf4;
  padding: 54px 50px;
}
@media only screen and (max-width: 780px) {
  .plan_wrapper {
    margin-top: 10vw;
    padding: 50px 0;
  }
}

.plan_kihon__wrapper {
  padding: 58px 89px 76px 89px;
  background-color: #fafafa;
}
@media only screen and (max-width: 780px) {
  .plan_kihon__wrapper {
    padding: 60px 15px;
  }
}

.kihon__title-wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media only screen and (max-width: 780px) {
  .kihon__title-wrap {
    justify-content: center;
    flex-direction: column;
  }
  .kihon__title-wrap .jirei_button {
    margin-left: 0;
    margin-top: 10px;
  }
}

.plan_kihon__title {
  color: #44546a;
  font-size: clamp(18px, 3vw, 28px);
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 780px) {
  .plan_kihon__title {
    font-size: clamp(18px, 5.4vw, 46px);
  }
}

h3.plan_kihon__title {
  display: inline-flex;
  align-items: center;
}
@media only screen and (max-width: 780px) {
  h3.plan_kihon__title {
    flex-direction: column;
  }
}
h3.plan_kihon__title:before {
  background-image: url(../images/under/kihon_icon.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  width: 61px;
  height: 61px;
  margin-right: 12px;
}
@media only screen and (max-width: 780px) {
  h3.plan_kihon__title:before {
    margin-bottom: 5.8vw;
    margin-right: 0;
    width: 12vw;
    height: 12vw;
  }
}
h3.plan_kihon__title:after {
  background-image: url(../images/under/kyotu.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  width: 159px;
  height: 28px;
  margin-left: 12px;
}
@media only screen and (max-width: 780px) {
  h3.plan_kihon__title:after {
    margin-top: 3.4vw;
    margin-left: 0;
    width: 44.6vw;
    height: 7.8vw;
  }
}

.plan_kihon__example > p:nth-of-type(2) {
  margin-top: 24px;
}
@media only screen and (max-width: 780px) {
  .plan_kihon__example > p:nth-of-type(2) {
    margin-top: 12.8vw;
  }
}

.plan_kihon__example_title {
  font-size: clamp(15px, 2vw, 24px);
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.05em;
  margin-top: 17px;
}
@media only screen and (max-width: 780px) {
  .plan_kihon__example_title {
    font-size: clamp(15px, 4vw, 42px);
    text-align: center;
    margin-top: 25px;
  }
}

.plan_kihon__example_index {
  background-color: #f0f3f5;
  padding: 15px;
  font-size: clamp(14px, 2vw, 20px);
  font-weight: bold;
  line-height: 1.2;
  letter-spacing: 0.05em;
  padding-left: 2em;
  text-indent: -1em;
}
@media only screen and (max-width: 780px) {
  .plan_kihon__example_index {
    font-size: clamp(14px, 3.5vw, 32px);
    padding: 3.2vw 3.84vw 3.2vw 6.84vw;
    line-height: 1.4;
  }
}
.plan_kihon__example_index .blue {
  color: #44546a;
  font-size: clamp(14px, 3.5vw, 19px);
  font-weight: bold;
  line-height: 1.2;
  letter-spacing: 0.05em;
}
.plan_kihon__example_index .underline {
  font-size: clamp(14px, 3.5vw, 19px);
  font-weight: bold;
  line-height: 1.2;
  letter-spacing: 0.05em;
  text-decoration: underline;
}

/* .plan_kihon__example_index:nth-of-type(6) {
  display: inline-flex;
  width: 100%;
  align-items: center;
}
@media only screen and (max-width: 780px) {
  .plan_kihon__example_index:nth-of-type(6) {
    flex-direction: column;
    align-items: flex-start;
  }
} */
/* .plan_kihon__example_index:nth-of-type(6):after {
  background-image: url(../images/under/kaiin.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  width: 83px;
  height: 23.5px;
  margin-left: 12px;
}
@media only screen and (max-width: 780px) {
  .plan_kihon__example_index:nth-of-type(6):after {
    width: 27.7vw;
    height: 7.8vw;
    margin-top: 40px;
  }
  .plan_kihon__example_index:nth-of-type(6):after {
    margin-top: 10px;
  }
} */

.plan_kihon__example_index:nth-of-type(6):after,
.plan_kihon__example_index:nth-of-type(7):after {
  background-image: url(../images/under/kaiin.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: inline-flex;
  vertical-align: sub;
  margin-left: 10px;
  width: 83px;
  height: 23.5px;
}
@media only screen and (max-width: 780px) {
  .plan_kihon__example_index:nth-of-type(6):after,
  .plan_kihon__example_index:nth-of-type(7):after {
    width: 27.7vw;
    height: 7.8vw;
  }
}

.plan_kihon__example_index + .plan_kihon__example_index {
  margin-top: 10px;
}

.plan_kihon__point {
  max-width: 700px;
  width: 100%;
  border: #707070 1px solid;
  padding: 23px 20px 30px 20px;
  margin-inline: auto;
  margin-top: 46px;
}
@media only screen and (max-width: 780px) {
  .plan_kihon__point {
    padding: 8.9vw 5.1vw;
    width: 93%;
  }
}

.plan_kihon__point-title {
  font-size: clamp(16px, 2vw, 20px);
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.05em;
  padding-bottom: 17px;
  border-bottom: 1px solid #707070;
  display: inline-flex;
  align-items: center;
  width: 100%;
}
@media only screen and (max-width: 780px) {
  .plan_kihon__point-title {
    font-size: clamp(16px, 5vw, 36px);
  }
}
.plan_kihon__point-title:before {
  background-image: url(../images/under/finger.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  width: 24px;
  height: 18px;
  margin-right: 9px;
}
@media only screen and (max-width: 780px) {
  .plan_kihon__point-title:before {
    width: 44px;
    height: 33px;
  }
}

.plan_kihon__point-text {
  margin-top: 10px;
  line-height: 2.08;
  font-size: clamp(13px, 2vw, 16px);
  font-weight: 500;
}
@media only screen and (max-width: 780px) {
  .plan_kihon__point-text {
    font-size: clamp(14px, 3.5vw, 32px);
  }
}

.plan_kihon__gyomu {
  margin-top: 26px;
}
@media only screen and (max-width: 780px) {
  .plan_kihon__gyomu {
    margin-top: 10.5vw;
  }
}
.plan_kihon__gyomu img {
  margin-top: 20px;
  width: 572px;
  aspect-ratio: 573/300;
  margin-inline: auto;
  pointer-events: none;
}
@media only screen and (max-width: 780px) {
  .plan_kihon__gyomu img {
    margin-top: 47px;
    width: 100%;
    aspect-ratio: auto;
  }
}

.plan_kihon__gyomu_title {
  padding-bottom: 16px;
  border-bottom: 1px solid #707070;
}

.plan_kihon__gyomu_text {
  margin-top: 16px;
}
@media only screen and (max-width: 780px) {
  .plan_kihon__gyomu_text {
    font-size: clamp(14px, 3.5vw, 32px);
  }
}

.plan_kihon__note {
  margin-top: 37px;
}

.plan_kihon__note_title {
  padding-bottom: 16px;
  border-bottom: 1px solid #707070;
  display: inline-flex;
  align-items: center;
  width: 100%;
}
.plan_kihon__note_title:before {
  background-image: url(../images/under/alert-circle.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  margin-right: 8px;
}
@media only screen and (max-width: 780px) {
  .plan_kihon__note_title:before {
    width: 35px;
    height: 35px;
  }
}

.plan_kihon__note_text {
  margin-top: 30px;
  line-height: 2.08;
  font-size: clamp(13px, 2vw, 16px);
  font-weight: 300;
}
@media only screen and (max-width: 780px) {
  .plan_kihon__note_text {
    font-size: clamp(14px, 3.5vw, 32px);
  }
}

.plan_option__wrapper {
  padding: 58px 89px 51px 89px;
  background-color: #fafafa;
  margin-top: 32px;
}
@media only screen and (max-width: 780px) {
  .plan_option__wrapper {
    padding: 15px;
  }
}

.plan_option__title {
  font-size: clamp(18px, 3vw, 28px);
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #0074be;
  display: inline-flex;
  align-items: center;
}
@media only screen and (max-width: 780px) {
  .plan_option__title {
    flex-direction: column;
    row-gap: 3.8vw;
    font-size: clamp(18px, 5.4vw, 46px);
  }
}
.plan_option__title:before {
  background-image: url(../images/under/option_icon.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  width: 62px;
  height: 62px;
  margin-right: 12px;
}
@media only screen and (max-width: 780px) {
  .plan_option__title:before {
    width: 12vw;
    height: 12vw;
  }
}

.plan_option__items {
  padding: 51px;
  background-color: #e6edf4;
  border-radius: 8px;
}
@media only screen and (max-width: 780px) {
  .plan_option__items {
    padding: 20px 15px;
  }
}

.plan_option__items:first-of-type {
  margin-top: 47px;
}
@media only screen and (max-width: 780px) {
  .plan_option__items:first-of-type {
    margin-top: 8.3vw;
  }
}

.plan_option__item {
  background-color: #fff;
  padding: 20px 16px 20px 16px;
}
@media only screen and (max-width: 780px) {
  .plan_option__item {
    padding: 6.4vw 7.69vw;
  }
}

.plan_option__item + .plan_option__item {
  margin-top: 12px;
}
@media only screen and (max-width: 780px) {
  .plan_option__item + .plan_option__item {
    margin-top: 20px;
  }
}

.plan_option__item-title {
  font-size: clamp(16px, 2vw, 22px);
  font-weight: bold;
  line-height: 1.2;
  letter-spacing: 0.05em;
  padding-bottom: 17px;
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-indent: -1em;
  padding-left: 1em;
}
@media only screen and (max-width: 780px) {
  .plan_option__item-title {
    font-size: clamp(16px, 5vw, 42px);
    padding-bottom: 10px;
    text-indent: 0;
    padding-left: 0;
  }
}

.plan_option__item-title span.span-first {
  padding-left: 5px;
  color: #0074be;
  font-weight: bold;
  font-size: 16px;
}
@media only screen and (max-width: 780px) {
  .plan_option__item-title span.span-first {
    display: block;
  }
}

.plan_option__item-title span.span-second {
  border: 1px solid #0074be;
  color: #0074be;
  font-weight: bold;
  font-size: 16px;
  padding-left: 10px;
  padding-right: 10px;
}

.plan_option__item-title:after {
  /* background-image: url(../images/under/kaiin.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  position: absolute;
  display: inline;
  width: 65.4px;
  height: 18px;
  bottom: 14px; */
}

@media only screen and (max-width: 780px) {
  .plan_option__item-title.plan_option__item-title--plus:after {
    bottom: -110%;
  }
}

.plan_option__item-title span.span-first:before {
  background-image: url(../images/under/kaiin.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  /* position: absolute; */
  display: inline-block;
  width: 67px;
  height: 18px;
  /* bottom: 14px; */
  margin-right: 10px;
}

@media only screen and (max-width: 780px) {
  .plan_option__item-title span.span-first:before {
    width: 27.7vw;
    height: 7.8vw;
    display: block;
  }
}

@media only screen and (max-width: 780px) {
  .plan_option__items.plan_option__items--plus .plan_option__item .plan_option__item-title:after {
    left: 0;
  }
}
.plan_option__items.plan_option__items--plus .plan_option__item .plan_option__item-text {
  padding-left: 0;
}

.option_title__wrap {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 780px) {
  .option_title__wrap {
    display: block;
  }
}

.plan_option__items:first-of-type .plan_option__item:first-child .plan_option__item-title span:before {
  background-image: url(../images/under/kyotu.png);
  width: 103px;
  height: 18px;
  right: -110px;
}
@media only screen and (max-width: 780px) {
  .plan_option__items:first-of-type .plan_option__item:first-child .plan_option__item-title span:before {
    width: 44.6vw;
    height: 7.8vw;
    bottom: -205%;
    left: 10%;
  }
}

.plan_option__items:first-of-type .plan_option__item:nth-of-type(2) .plan_option__item-title span:before {
  background-image: url(../images/under/kyotu.png);
  width: 103px;
  height: 18px;
  right: -110px;
}
@media only screen and (max-width: 780px) {
  .plan_option__items:first-of-type .plan_option__item:nth-of-type(2) .plan_option__item-title span:before {
    width: 44.6vw;
    height: 7.8vw;
    bottom: -205%;
    left: 10%;
  }
}

.plan_option__item-text {
  margin-top: 1em;
  line-height: 1.375;
  font-size: clamp(13px, 2vw, 18px);
  font-weight: 300;
  padding-left: 1.1em;
}
@media only screen and (max-width: 780px) {
  .plan_option__item-text {
    font-size: clamp(14px, 3.5vw, 32px);
    margin-top: 14vw;
    padding-left: 3.4vw;
    line-height: 1.71;
  }
}

.plan_option__item-text span {
  font-size: 14px;
}
@media only screen and (max-width: 780px) {
  .plan_option__item-text span {
    font-size: clamp(14px, 3.5vw, 32px);
    font-weight: 300;
  }
}

.kenchiku__button {
  display: flex;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 1.8vw;
  column-gap: 1.8vw;
  margin-top: 100px;
  position: relative;
}
@media only screen and (max-width: 780px) {
  .kenchiku__button {
    flex-direction: column;
    row-gap: 3.2vw;
    margin-top: 15vw;
  }
}
.kenchiku__button .button {
  background-color: #99beff;
  color: #44546a;
  width: 375px;
  padding-top: 40px;
  padding-bottom: 40px;
}
@media only screen and (max-width: 780px) {
  .kenchiku__button .button {
    width: 68.7vw;
    max-width: 536px;
    padding-top: 5vw;
    padding-bottom: 5vw;
  }
}

/* .kenchiku__button .button:before {
  background-color: #44546a;
} */
.kenchiku__button .button:after {
  background-image: url(../images/under/arrow_black.svg);
  top: 44%;
}

@media only screen and (max-width: 780px) {
  .kenchiku__button .button:after {
    top: 40%;
  }
}

.kenchiku__button .button:first-of-type:before {
  background-image: url(../images/common/nichijiren_icon7.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  position: absolute;
  display: block;
  width: 4.8vw;
  height: 3.5vw;
  bottom: 0;
  left: -28%;
}
@media only screen and (max-width: 1024px) {
  .kenchiku__button .button:first-of-type:before {
    content: none;
  }
}

.plus-circle {
  width: 68.44px;
  height: 100%;
  aspect-ratio: 1/1;
  margin-inline: auto;
  margin-top: 16px;
  margin-bottom: 16px;
}

.joken {
  margin-top: 85px;
  max-width: 1113px;
  margin-inline: auto;
}
@media only screen and (max-width: 780px) {
  .joken {
    margin-top: 10.5vw;
  }
}

.joken__caption {
  font-size: clamp(14px, 2vw, 18px);
  line-height: 1.85;
  color: #000;
  font-weight: 300;
  display: inline-flex;
  align-items: center;
}
@media only screen and (max-width: 780px) {
  .joken__caption {
    font-size: clamp(14px, 3.5vw, 32px);
    align-items: baseline;
  }
}
.joken__caption:before {
  background-image: url(../images/under/alert-circle.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  position: relative;
  top: 5px;
  display: block;
  width: 22px;
  height: 22px;
  margin-right: 8px;
}
@media only screen and (max-width: 780px) {
  .joken__caption:before {
    width: 5.4vw;
    height: 5.4vw;
    flex-shrink: 0;
  }
}

.joken__item {
  overflow-x: hidden;
}

.joken__item_theme:nth-of-type(1) {
  margin-top: 20px;
}

.joken__item_theme {
  padding-top: 20px;
  padding-bottom: 20px;
  padding-left: 30px;
  font-size: clamp(15px, 2vw, 20px);
  color: #44546a;
  background-color: #e6edf4;
  position: relative;
  cursor: pointer;
}
@media only screen and (max-width: 780px) {
  .joken__item_theme {
    font-size: clamp(16px, 4vw, 36px);
  }
}
.joken__item_theme::before {
  content: "";
  position: absolute;
  display: block;
  width: 3px;
  height: 22px;
  background-color: #333333;
  top: 37%;
  right: 39px;
}
.joken__item_theme:after {
  content: "";
  position: absolute;
  display: block;
  width: 21px;
  height: 3px;
  background-color: #333333;
  top: 50%;
  right: 30px;
}

.joken__item_theme.is-active:before {
  content: none;
}

.joken__item_desc {
  font-size: clamp(14px, 2vw, 16px);
  line-height: 1.85;
  color: #000;
  font-weight: 300;
  margin-top: 30px;
  margin-bottom: 50px;
  padding-left: 30px;
  display: none;
  height: 100%;
}
@media only screen and (max-width: 780px) {
  .joken__item_desc {
    font-size: clamp(15px, 4vw, 30px);
    width: 100%;
    overflow-x: hidden;
  }
}
@media only screen and (max-width: 780px) {
  .joken__item_desc img {
    width: 100%;
    min-width: 600px;
  }
}

@media only screen and (max-width: 780px) {
  .joken__item_desc th,
  .joken__item_desc td {
    width: 100% !important;
    height: auto !important;
    display: block;
    text-align: left;
  }
}
@media only screen and (max-width: 780px) {
  .joken__item_desc table:nth-of-type(2) {
    margin-top: 1em;
  }
}

.joken__button.button {
  background-color: #99beff;
  color: #44546a;
  width: 375px;
  margin-top: 70px;
  margin-inline: auto;
}

.joken__button.button:after {
  background-image: url(../images/under/arrow_black.svg);
}
@media only screen and (max-width: 780px) {
  .joken__button.button {
    width: 64.1vw;
    margin-top: 40px;
  }
}

@media only screen and (max-width: 780px) {
  .joken__sekkei_wrap {
    width: 100%;
    overflow: scroll;
  }
}

.joken__sekkei {
  aspect-ratio: 1038/503;
  margin-top: 45px;
}

.caution {
  max-width: 1024px;
  width: 100%;
  margin-inline: auto;
  margin-top: 70px;
}
@media only screen and (max-width: 780px) {
  .caution {
    padding-left: 3.2vw;
    padding-right: 3.2vw;
  }
}

.caution__title {
  width: 100%;
  color: #44546a;
  font-size: clamp(18px, 3vw, 28px);
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.05em;
  padding-bottom: 16px;
  border-bottom: 1px solid #707070;
  display: inline-flex;
  align-items: center;
}
@media only screen and (max-width: 780px) {
  .caution__title {
    font-size: clamp(16px, 4.7vw, 36px);
  }
}
.caution__title:before {
  background-image: url(../images/under/alert-circle.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  margin-right: 8px;
}
@media only screen and (max-width: 780px) {
  .caution__title:before {
    width: 35px;
    height: 35px;
  }
}

.caution__text {
  margin-top: 30px;
  line-height: 2.08;
  font-size: clamp(14px, 2vw, 16px);
  color: #000;
  font-weight: 300;
  padding-left: 1em;
  text-indent: -1em;
}
@media only screen and (max-width: 780px) {
  .caution__text {
    font-size: clamp(14px, 3.5vw, 32px);
  }
}

.caution__text + .caution__text {
  margin-top: 0.5em;
}

.insurance_member__section {
  padding-top: 100px;
  padding-bottom: 100px;
}
@media only screen and (max-width: 780px) {
  .insurance_member__section {
    padding-top: 12.8vw;
    padding-bottom: 12.8vw;
  }
}

.kenchiku_non-member__title.page-title {
  display: inline-flex;
  align-items: center;
  position: relative;
}
@media only screen and (max-width: 780px) {
  .kenchiku_non-member__title.page-title {
    flex-direction: column;
    align-items: flex-start;
    row-gap: 10px;
  }
}
.kenchiku_non-member__title.page-title:after {
  background-image: url(../images/under/hikaiin.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  width: 77.4px;
  height: 30px;
  margin-left: 12px;
}
@media only screen and (max-width: 780px) {
  .kenchiku_non-member__title.page-title:after {
    width: 24.7vw;
    height: 9.1vw;
  }
}
.kenchiku_non-member__title.page-title:before {
  background-image: url(../images/common/nichijiren_icon4.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  position: absolute;
  display: block;
  width: 77px;
  height: 61px;
  bottom: -10px;
  left: 673px;
}
@media only screen and (max-width: 780px) {
  .kenchiku_non-member__title.page-title:before {
    content: none;
  }
}

.kenchiku_member__title.page-title {
  display: inline-flex;
  align-items: center;
  position: relative;
}
@media only screen and (max-width: 780px) {
  .kenchiku_member__title.page-title {
    flex-direction: column;
    align-items: flex-start;
    row-gap: 10px;
  }
}
.kenchiku_member__title.page-title:after {
  background-image: url(../images/under/kaiin2.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  width: 52px;
  height: 28px;
  margin-left: 12px;
}
@media only screen and (max-width: 780px) {
  .kenchiku_member__title.page-title:after {
    background-image: url(../images/under/kaiin.svg);
    width: 32.5vw;
    height: 9.2vw;
  }
}
.kenchiku_member__title.page-title:before {
  background-image: url(../images/common/nichijiren_icon5.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  position: absolute;
  display: block;
  width: 77px;
  height: 56px;
  bottom: -10px;
  left: 655px;
}
@media only screen and (max-width: 780px) {
  .kenchiku_member__title.page-title:before {
    content: none;
  }
}

.kenchiku_read {
  font-size: clamp(15px, 2vw, 18px);
  line-height: 1.85;
  color: #000;
  margin-top: 60px;
}
@media only screen and (max-width: 780px) {
  .kenchiku_read {
    font-size: clamp(14px, 3.5vw, 32px);
    padding-left: 0;
  }
}

.kenchiku__content {
  margin-top: 70px;
}

.kenchiku__wrapper:nth-of-type(2) {
  margin-top: 100px;
}

.kenchiku_common__title {
  background-color: #4472c4;
  color: #fff;
  padding: 23px 90px;
  font-size: clamp(22px, 3vw, 32px);
  letter-spacing: 0.05em;
  font-weight: 700;
}
@media only screen and (max-width: 780px) {
  .kenchiku_common__title {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    font-size: clamp(18px, 5.4vw, 46px);
    padding: 6.4vw 7vw;
  }
}

.kenchiku_common__wrap {
  padding-left: 90px;
  padding-right: 90px;
}
@media only screen and (max-width: 780px) {
  .kenchiku_common__wrap {
    padding-left: 0;
    padding-right: 0;
  }
}

.kenchiku_common__items {
  margin-top: 40px;
}

.kenchiku_common__item + .kenchiku_common__item {
  margin-top: 71px;
}
@media only screen and (max-width: 780px) {
  .kenchiku_common__item + .kenchiku_common__item {
    margin-top: 12.8vw;
  }
}

.kenchiku_common__theme {
  padding-bottom: 16px;
  border-bottom: 1px solid #707070;
  font-size: clamp(20px, 3vw, 28px);
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1;
  color: #44546a;
}
@media only screen and (max-width: 780px) {
  .kenchiku_common__theme {
    font-size: clamp(18px, 5.4vw, 46px);
  }
}

.kenchiku_common__theme.common__icon {
  position: relative;
}
.kenchiku_common__theme.common__icon:after {
  background-image: url(../images/common/nichijiren_icon3.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  position: absolute;
  display: block;
  width: 77px;
  height: 56px;
  bottom: 6px;
  left: 130px;
}
@media only screen and (max-width: 780px) {
  .kenchiku_common__theme.common__icon:after {
    content: none;
  }
}

.kenchiku_common__desc {
  margin-top: 11px;
  font-size: clamp(14px, 1.5vw, 16px);
  font-weight: 300;
  line-height: 2.08;
  padding-left: 1em;
  text-indent: -1em;
}
@media only screen and (max-width: 780px) {
  .kenchiku_common__desc {
    font-size: clamp(14px, 3.5vw, 32px);
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
}

.kenchiku_common__desc.kenchiku_common_2025 {
  font-weight: 700;
  color: #c21010;
}

.kenchiku_common__desc .nowrap {
  white-space: nowrap;
}
@media only screen and (max-width: 1440px) {
  .kenchiku_common__desc .nowrap {
    white-space: normal;
  }
}

.kenchiku_common__desc.no_indent {
  padding-left: 0;
  text-indent: 0;
}

.kenchiku_common__desc.under_line {
  padding-bottom: 3.7vw;
  border-bottom: 1px solid #707070;
  margin-top: 20px;
}

.kenchiku_common__button.button {
  width: 450px;
  margin-top: 40px;
  margin-inline: auto;
}
@media only screen and (max-width: 780px) {
  .kenchiku_common__button.button {
    width: 82vw;
    max-width: 100%;
    padding-right: 40px;
    font-size: clamp(15px, 4.5vw, 32px);
  }

  .kenchiku_common__button.button:after {
    right: 6.5%;
  }
}

@media only screen and (max-width: 780px) {
  .no_indent.kenchiku_common__caption {
    margin-top: 12.8vw;
  }
}

.kenchiku_common__item_chart {
  margin-top: 90px;
}

.kenchiku_common__item_chart.kenchiku_common__item_chart--update {
  margin-top: 42px;
}

.kenchiku_common__item_chart ul {
  width: 100%;
  padding-left: 8vw;
  padding-right: 8vw;
  margin-inline: auto;
}
@media only screen and (max-width: 780px) {
  .kenchiku_common__item_chart ul {
    padding-left: 0;
    padding-right: 0;
  }
}
.kenchiku_common__item_chart ul li {
  letter-spacing: 0.05em;
  font-weight: 700;
  font-size: clamp(16px, 2vw, 20px);
  line-height: 1;
  position: relative;
  color: #080808;
  display: flex;
  align-items: center;
  white-space: nowrap;
}
@media only screen and (max-width: 1440px) {
  .kenchiku_common__item_chart ul li {
    white-space: normal;
  }
}
@media only screen and (max-width: 780px) {
  .kenchiku_common__item_chart ul li {
    font-size: clamp(19px, 2vw, 32px);
    align-items: baseline;
  }
}
@media only screen and (max-width: 425px) {
  .kenchiku_common__item_chart ul li {
    font-size: 15px;
  }
}
.kenchiku_common__item_chart ul li span {
  color: #4472c4;
  display: block;
  width: 32px;
  height: 32px;
  border: 2px solid #4472c4;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(13px, 2vw, 16px);
  margin-right: 43px;
  font-weight: bold;
  flex-shrink: 0;
}
@media only screen and (max-width: 780px) {
  .kenchiku_common__item_chart ul li span {
    width: 70px;
    height: 70px;
    font-size: 32px;
    flex-shrink: 0;
    margin-right: 20px;
  }
}
@media only screen and (max-width: 425px) {
  .kenchiku_common__item_chart ul li span {
    width: 40px;
    height: 40px;
    font-size: 15px;
    margin-right: 20px;
  }
}
.kenchiku_common__item_chart ul li::before,
.kenchiku_common__item_chart ul li::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}
.kenchiku_common__item_chart ul li::before {
  left: 15px;
  bottom: -90px;
  width: 2px;
  height: 62px;
  background: #4472c4;
}
@media only screen and (max-width: 780px) {
  .kenchiku_common__item_chart ul li::before {
    left: 34px;
    bottom: -117px;
    height: 51px;
  }
}
@media only screen and (max-width: 425px) {
  .kenchiku_common__item_chart ul li::before {
    left: 19px;
    bottom: -78px;
    height: 43px;
  }
}
.kenchiku_common__item_chart ul li::after {
  left: 10.5px;
  bottom: -141px;
  width: 10px;
  height: 10px;
  border-right: 2px solid #4472c4;
  border-bottom: 2px solid #4472c4;
  transform: rotate(45deg);
}
@media only screen and (max-width: 780px) {
  .kenchiku_common__item_chart ul li::after {
    left: 30px;
    bottom: -160px;
  }
}
@media only screen and (max-width: 425px) {
  .kenchiku_common__item_chart ul li::after {
    left: 14.5px;
    bottom: -109px;
  }
}
.kenchiku_common__item_chart ul li + li {
  margin-top: 60px;
}
@media only screen and (max-width: 780px) {
  .kenchiku_common__item_chart ul li + li {
    margin-top: 50px;
  }
}
@media only screen and (max-width: 425px) {
  .kenchiku_common__item_chart ul li + li {
    margin-top: 40px;
  }
}
.kenchiku_common__item_chart ul li.form_nav::before {
  bottom: -141px;
  height: 116px;
}
@media only screen and (max-width: 780px) {
  .kenchiku_common__item_chart ul li.form_nav::before {
    height: 168px;
    bottom: -239px;
  }
}
@media only screen and (max-width: 425px) {
  .kenchiku_common__item_chart ul li.form_nav::before {
    height: 95px;
    bottom: -132px;
  }
}
.kenchiku_common__item_chart ul li.form_nav:after {
  bottom: -246px;
}
@media only screen and (max-width: 780px) {
  .kenchiku_common__item_chart ul li.form_nav:after {
    left: 30px;
    bottom: -400px;
  }
}
@media only screen and (max-width: 425px) {
  .kenchiku_common__item_chart ul li.form_nav:after {
    bottom: -214px;
    left: 15px;
  }
}
.kenchiku_common__item_chart ul li:last-child:before,
.kenchiku_common__item_chart ul li:last-child:after {
  content: none;
}

.kenchiku_common__news-wrap {
  margin-top: 22px;
  padding-left: 15px;
  padding-right: 15px;
}
@media only screen and (max-width: 780px) {
  .kenchiku_common__news-wrap {
    padding-left: 0;
    padding-right: 0;
  }
}

.kenchiku_common__news {
  padding-top: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #707070;
}

.kenchiku_common__news-date {
  letter-spacing: 0.05em;
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
}
@media only screen and (max-width: 780px) {
  .kenchiku_common__news-date {
    font-size: clamp(12px, 3vw, 20px);
  }
}

.kenchiku_common__news-title {
  letter-spacing: 0.05em;
  font-weight: 500;
  line-height: 1.85;
  font-size: clamp(14px, 1.5vw, 16px);
}
@media only screen and (max-width: 780px) {
  .kenchiku_common__news-title {
    font-size: clamp(16px, 3vw, 24px);
  }
}

.kenchiku_common__news-desc ~ p {
  letter-spacing: 0.05em;
  font-weight: 300;
  line-height: 1.85;
  font-size: clamp(14px, 1.5vw, 16px);
}
@media only screen and (max-width: 780px) {
  .kenchiku_common__news-desc ~ p {
    font-size: clamp(15px, 3vw, 22px);
    margin-top: 25px;
  }
}

.login_wrap {
  width: 560px;
  padding: 40px 0 24px 0;
  border: 1px solid #4472c4;
  display: flex;
  justify-content: center;
  flex-direction: column;
  margin-inline: auto;
  margin-top: 46px;
}
@media only screen and (max-width: 780px) {
  .login_wrap {
    width: 100%;
  }
}
.login_wrap ul {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
.login_wrap ul li {
  font-size: 18px;
}
@media only screen and (max-width: 780px) {
  .login_wrap ul li {
    font-size: clamp(15px, 4vw, 36px);
  }
}
.login_wrap a {
  background-color: #99beff;
  color: #44546a;
  margin-inline: auto;
}

.login_wrap a:after {
  background-image: url(../images/under/arrow_black.svg);
}

.hikaiin_caotion {
  letter-spacing: 0.05em;
  font-weight: 500;
  line-height: 1.85;
  font-size: clamp(14px, 1.5vw, 18px);
  margin-top: 32px;
}
@media only screen and (max-width: 780px) {
  .hikaiin_caotion {
    font-size: clamp(14px, 3.5vw, 32px);
  }
}

.kenchiku_common_note.kenchiku_common__desc {
  margin-top: 32px;
  padding-left: 0;
  text-indent: 0;
  padding-left: 1em;
  text-indent: -1em;
}

.kaiin_defference {
  width: 100%;
  height: 100%;
  aspect-ratio: 1024/511;
}
@media only screen and (max-width: 780px) {
  .kaiin_defference {
    max-width: 730px;
    min-width: 730px;
  }
}

.scroll_wrap {
  width: 100%;
  overflow-x: scroll;
}

::-webkit-scrollbar {
  display: none;
  -webkit-appearance: none;
}

.kenchiku_common__item_chart.kenchiku_common__item_chart_nonmember li:nth-of-type(2) {
  margin-top: 20px;
}
@media only screen and (max-width: 780px) {
  .kenchiku_common__item_chart.kenchiku_common__item_chart_nonmember li:nth-of-type(2) {
    margin-top: 55px;
  }
}
@media only screen and (max-width: 425px) {
  .kenchiku_common__item_chart.kenchiku_common__item_chart_nonmember li:nth-of-type(2) {
    margin-top: 20px;
  }
}
.kenchiku_common__item_chart.kenchiku_common__item_chart_nonmember .kenchiku_common__button {
  margin-top: 20px;
  width: 2.8vw;
  min-width: 300px;
  max-width: 450px;
}
@media only screen and (max-width: 780px) {
  .kenchiku_common__item_chart.kenchiku_common__item_chart_nonmember .kenchiku_common__button {
    width: 46vw;
    min-width: 250px;
    padding-top: 20px;
    margin-top: 46px;
    padding-bottom: 20px;
    font-size: 20px;
  }
}
@media only screen and (max-width: 425px) {
  .kenchiku_common__item_chart.kenchiku_common__item_chart_nonmember .kenchiku_common__button {
    width: 56vw;
    padding-top: 15px;
    margin-top: 20px;
    padding-bottom: 15px;
    min-width: auto;
    font-size: 14px;
  }
}

.kenchiku__ikou_chart {
  margin-top: 32px;
  display: flex;
  -moz-column-gap: 38px;
  column-gap: 38px;
  row-gap: 30px;
  justify-content: center;
  flex-wrap: wrap;
}

.ikou_chart__left {
  min-width: 430px;
  width: 48%;
  padding: 40px 0 22px 0;
  display: flex;
  align-items: center;
  flex-direction: column;
  border: 1px solid #4472c4;
}
@media only screen and (max-width: 780px) {
  .ikou_chart__left {
    width: 100%;
    min-width: 100%;
    border: 4px solid #4472c4;
    padding: 10.2vw 6.92vw 5.7vw 6.92vw;
  }
}
.ikou_chart__left img {
  width: 125px;
  margin-inline: auto;
}
@media only screen and (max-width: 780px) {
  .ikou_chart__left img {
    width: 21.3vw;
    margin: 0;
  }
}
.ikou_chart__left .button {
  width: 28vw;
  max-width: 450px;
}
@media only screen and (max-width: 780px) {
  .ikou_chart__left .button {
    width: 69.1vw;
    margin-top: 9.74vw;
  }
}

.ikou_chart__text_wrap {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.ikou_chart__text {
  letter-spacing: 0.05em;
  font-weight: 500;
  line-height: 1.85;
  font-size: clamp(14px, 1.5vw, 18px);
}
@media only screen and (max-width: 780px) {
  .ikou_chart__text {
    font-size: clamp(15px, 5vw, 36px);
    padding-left: 1em;
    text-indent: -1em;
  }
}

.ikou_chart__text.no_indent {
  padding-left: 0;
  text-indent: 0;
}

@media only screen and (max-width: 780px) {
  .ikou_chart__text + .ikou_chart__text {
    margin-top: 2.9vw;
    line-height: 1.52;
  }
}

.ikou_chart.kenchiku_common__button {
  margin-top: 36px;
}

.ikou_chart__right {
  width: 48%;
  min-width: 430px;
  padding: 40px 0 22px 0;
  display: flex;
  align-items: center;
  flex-direction: column;
  border: 1px solid #4472c4;
}
@media only screen and (max-width: 780px) {
  .ikou_chart__right {
    width: 100%;
    min-width: 100%;
    border: 4px solid #4472c4;
    padding: 10.2vw 6.92vw 5.7vw 6.92vw;
  }
}
.ikou_chart__right .button {
  width: 28vw;
  max-width: 450px;
}
@media only screen and (max-width: 780px) {
  .ikou_chart__right .button {
    width: 69.1vw;
  }
}

.ikou_chart__text.ikou_chart__text--accent {
  font-weight: 700;
  line-height: 1.665;
  font-size: clamp(15px, 2vw, 20px);
  text-align: center;
  margin-top: 37px;
}
@media only screen and (max-width: 780px) {
  .ikou_chart__text.ikou_chart__text--accent {
    width: 69.1vw;
    font-size: clamp(15px, 4vw, 36px);
    width: 100%;
    text-align: center;
  }
}

.ikou_chart__text.ikou_chart__text_qr {
  margin-top: 10px;
}

@media only screen and (max-width: 780px) {
  .qr_wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    -moz-column-gap: 11vw;
    column-gap: 11vw;
    width: 100%;
    margin-top: 5.1vw;
  }
}

.kenchiku_common__theme.kenchiku_common__theme--update {
  margin-top: 10vw;
}

.arrow_down {
  width: 125px;
  margin-inline: auto;
  margin-top: 32px;
}

.case__section {
  padding-top: 100px;
  padding-bottom: 50px;
}
@media only screen and (max-width: 780px) {
  .case__section {
    padding-top: 12.8vw;
    padding-bottom: 6.4vw;
  }
}

.case__title.page-title.is-active {
  display: block;
}

.case__title.page-title {
  display: none;
}

.case__lead_bg {
  margin-top: 55px;
  padding-left: 50px;
  padding-right: 50px;
}
@media only screen and (max-width: 780px) {
  .case__lead_bg {
    padding-left: 0;
    padding-right: 0;
    width: 100vw;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
  }
}

.case__lead {
  padding: 27px 5.6vw;
  background-color: #f0f3f5;
  display: none;
}
@media only screen and (max-width: 780px) {
  .case__lead {
    padding: 5.1vw 6.4vw;
    font-size: clamp(14px, 3.5vw, 32px);
  }
}

.case__lead.is-active {
  display: block;
}

.case__content {
  padding-left: 50px;
  padding-right: 50px;
  margin-top: 12.5vw;
}

.tab__list {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  -moz-column-gap: 14px;
  column-gap: 14px;
}
@media only screen and (max-width: 780px) {
  .tab__list {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    padding-left: 2.5vw;
    padding-right: 2.5vw;
  }
}

.tab__button {
  font-size: clamp(16px, 3vw, 24px);
  letter-spacing: 0.05em;
  display: block;
  width: 390px;
  text-align: center;
  padding-top: 12px;
  padding-bottom: 12px;
  border-top-left-radius: 13px;
  border-top-right-radius: 13px;
  color: #acacac;
  border: 2px solid #acacac;
  border-bottom: none;
}
@media only screen and (max-width: 780px) {
  .tab__button {
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

.tab__button.is-active {
  padding-top: 24px;
  padding-bottom: 21px;
}
@media only screen and (max-width: 780px) {
  .tab__button.is-active {
    padding-top: 15px;
    padding-bottom: 13px;
  }
}

.trouble__button.tab__button.is-active {
  color: #333333;
  border: 2px solid #333333;
  border-bottom: 4px solid #fff;
  position: relative;
  bottom: -3px;
  z-index: 5;
}

.accident__button.tab__button.is-active {
  color: #4472c4;
  border: 2px solid #4472c4;
  border-bottom: 4px solid #fff;
  position: relative;
  bottom: -3px;
  z-index: 5;
}

.case__tab_contents {
  max-width: 1053px;
}

.tab__content {
  display: none;
  padding-top: 100px;
}
@media only screen and (max-width: 780px) {
  .tab__content {
    padding-top: 8.8vw;
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    padding-left: 6.4vw;
    padding-right: 6.4vw;
  }
}

.tab__content.is-active {
  display: block;
}

.tab__content:nth-of-type(1) {
  border-top: 2px solid #4472c4;
}

.tab__content:nth-of-type(2) {
  border-top: 2px solid #333333;
}

.tab__items {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 40px;
  column-gap: 40px;
  row-gap: 30px;
}
.tab__items::after {
  content: "";
  display: block;
  width: 20vw;
  min-width: 300px;
}
@media only screen and (max-width: 780px) {
  .tab__items {
    flex-direction: column;
  }
}

.accident_items .tab__item {
  width: 30.6666666667%;
  position: relative;
  border-radius: 4px;
  border: 1px solid #707070;
  background-color: #fff;
}
@media only screen and (max-width: 780px) {
  .accident_items .tab__item {
    width: 100%;
    padding: 6.2vw 5.7vw;
  }
}
.accident_items .tab__item span {
  text-align: center;
  width: 87px;
  display: block;
  position: absolute;
  top: -10px;
  left: -12px;
  background-color: #4472c4;
  color: #fff;
  border-radius: 3px;
  font-size: clamp(11px, 1.4vw, 16px);
  padding-top: 3px;
  padding-bottom: 3px;
}
@media only screen and (max-width: 780px) {
  .accident_items .tab__item span {
    font-size: clamp(13px, 3vw, 25px);
    width: 18.7vw;
  }
}
.accident_items .tab__item a {
  padding: 2.5vw 1.5vw;
  display: block;
  font-weight: 700;
  color: #808080;
  border-radius: 3px;
  font-size: clamp(11px, 1.4vw, 16px);
}
@media only screen and (max-width: 780px) {
  .accident_items .tab__item a {
    font-size: clamp(14px, 3.5vw, 32px);
  }
}
.accident_items .tab__item:after {
  content: "";
  position: absolute;
  display: block;
  width: 1.8vw;
  height: 100%;
  background-color: #959595;
  bottom: 0;
  right: 0;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}
@media only screen and (max-width: 780px) {
  .accident_items .tab__item:after {
    width: 9vw;
  }
}
.accident_items .tab__item:before {
  content: "";
  position: absolute;
  border: 0;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  display: inline-block;
  transform: rotate(45deg) translateY(-50%);
  width: 8px;
  height: 8px;
  top: 50%;
  right: 4.5%;
  z-index: 3;
}
@media only screen and (max-width: 780px) {
  .accident_items .tab__item:before {
    width: 1.9vw;
    height: 1.9vw;
    border-top: solid 3px #fff;
    border-right: solid 3px #fff;
  }
}

.trouble_items .tab__item {
  width: 30.6666666667%;
  position: relative;
  border-radius: 4px;
  border: 1px solid #707070;
  padding: 2.5vw 1.5vw;
  background-color: #fff;
}
@media only screen and (max-width: 780px) {
  .trouble_items .tab__item {
    width: 100%;
    padding: 10.2vw 5.7vw;
  }
}
.trouble_items .tab__item span {
  text-align: center;
  width: 82px;
  display: block;
  position: absolute;
  top: -10px;
  left: -12px;
  background-color: #333333;
  color: #fff;
  border-radius: 3px;
  font-size: clamp(11px, 1.4vw, 13px);
  padding-top: 3px;
  padding-bottom: 3px;
}
@media only screen and (max-width: 780px) {
  .trouble_items .tab__item span {
    font-size: clamp(13px, 3vw, 25px);
    width: 18vw;
  }
}
.trouble_items .tab__item a {
  font-weight: 700;
  color: #333333;
  border-radius: 3px;
  font-size: clamp(11px, 1.4vw, 16px);
}
@media only screen and (max-width: 780px) {
  .trouble_items .tab__item a {
    font-size: clamp(14px, 3.5vw, 32px);
  }
}
.trouble_items .tab__item:after {
  content: "";
  position: absolute;
  display: block;
  width: 1.87vw;
  height: 100%;
  background-color: #333333;
  bottom: 0;
  right: 0;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}
@media only screen and (max-width: 780px) {
  .trouble_items .tab__item:after {
    width: 9vw;
  }
}
.trouble_items .tab__item:before {
  content: "";
  position: absolute;
  border: 0;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  display: inline-block;
  transform: rotate(45deg) translateY(-50%);
  width: 8px;
  height: 8px;
  top: 50%;
  right: 4.5%;
  z-index: 3;
}
@media only screen and (max-width: 780px) {
  .trouble_items .tab__item:before {
    width: 1.9vw;
    height: 1.9vw;
    border-top: solid 3px #fff;
    border-right: solid 3px #fff;
  }
}

.case_article__section {
  padding-top: 100px;
  padding-bottom: 100px;
}
@media only screen and (max-width: 780px) {
  .case_article__section {
    padding-top: 12.8vw;
    padding-bottom: 12.8vw;
  }
}

.case_article__content {
  padding-left: 50px;
  padding-right: 50px;
}
@media only screen and (max-width: 780px) {
  .case_article__content {
    padding-left: 6.4vw;
    padding-right: 6.4vw;
  }
}

.case_article__category {
  font-size: clamp(20px, 4vw, 30px);
  letter-spacing: 0.05em;
  display: inline-block;
}

.case_article__index {
  display: inline-block;
  font-size: clamp(14px, 1.4vw, 16px);
  letter-spacing: 0.05em;
}

.case_article__title {
  font-weight: 700;
  font-size: clamp(18px, 5.4vw, 46px);
  letter-spacing: 0.05em;
  line-height: 1.195;
}

.article_case__table {
  margin-top: 112px;
}

.case_article__page_button {
  margin-top: 108px;
  display: flex;
  justify-content: space-between;
}

.case_article__page_prev {
  display: inline-flex;
  align-items: center;
  text-decoration: underline;
}
.case_article__page_prev::after {
  background-image: url(../images/under/prev.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  width: 23px;
  height: 23px;
  margin-left: 10px;
}

.case_article__page_next {
  display: inline-flex;
  align-items: center;
  text-decoration: underline;
}
.case_article__page_next::before {
  background-image: url(../images/under/next.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  width: 23px;
  height: 23px;
  margin-right: 10px;
}

.button.case_article__button {
  margin-top: 100px;
  margin-inline: auto;
  width: 450px;
}

.case_table dl div {
  display: flex;
  padding: 20px 45px;
  border-bottom: 1px solid #707070;
}
.case_table dl dt {
  width: 300px;
  font-size: clamp(14px, 3vw, 18px);
}
@media only screen and (max-width: 780px) {
  .case_table dl dt {
    width: 40%;
  }
}
.case_table dl dd {
  flex: 1;
  font-weight: 700;
}
@media only screen and (max-width: 780px) {
  .case_table dl dd {
    width: 60%;
    flex: auto;
  }
}

.case_article__items.kenchiku_common__items .wp-block-heading {
  padding-bottom: 16px;
  border-bottom: 1px solid #707070;
  font-size: clamp(20px, 3vw, 28px);
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1;
  color: #44546a;
}
@media only screen and (max-width: 780px) {
  .case_article__items.kenchiku_common__items .wp-block-heading {
    font-size: clamp(18px, 5.4vw, 46px);
  }
}
.case_article__items.kenchiku_common__items p {
  margin-top: 11px;
  font-size: clamp(14px, 1.5vw, 16px);
  font-weight: 300;
  line-height: 2.08;
}
@media only screen and (max-width: 780px) {
  .case_article__items.kenchiku_common__items p {
    font-size: clamp(14px, 3.5vw, 32px);
    padding-left: 1em;
    text-indent: -1em;
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
}
.case_article__items.kenchiku_common__items p + .wp-block-heading {
  margin-top: 30px;
}

.inspection__section {
  padding-top: 100px;
  padding-bottom: 100px;
}
@media only screen and (max-width: 780px) {
  .inspection__section {
    padding-top: 12.8vw;
    padding-bottom: 12.8vw;
  }
}

.inspection__title.page-title {
  display: inline-flex;
  align-items: center;
}
@media only screen and (max-width: 780px) {
  .inspection__title.page-title {
    flex-direction: column;
    align-items: flex-start;
    row-gap: 10px;
  }
}
.inspection__title.page-title:after {
  background-image: url(../images/under/kaiin.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  width: 85px;
  height: 25.4px;
  margin-left: 12px;
}
@media only screen and (max-width: 780px) {
  .inspection__title.page-title:after {
    width: 32.5vw;
    height: 9.2vw;
  }
}

.inspection__title-sub {
  font-size: clamp(22px, 3vw, 28px);
  color: #000;
  margin-top: 30px;
}
@media only screen and (max-width: 780px) {
  .inspection__title-sub {
    font-size: clamp(18px, 5.4vw, 46px);
    margin-top: 10px;
  }
}

.inspetion__wrap.kenchiku_common__wrap {
  margin-top: 78px;
  padding-left: 86px;
  padding-right: 86px;
}
@media only screen and (max-width: 780px) {
  .inspetion__wrap.kenchiku_common__wrap {
    margin-top: 7.7vw;
    padding-left: 0;
    padding-right: 0;
  }
}

.inspection__lead {
  font-size: clamp(15px, 2vw, 18px);
  line-height: 1.85;
}
@media only screen and (max-width: 780px) {
  .inspection__lead {
    font-size: clamp(14px, 3.5vw, 32px);
  }
}

.inspection__items.kenchiku_common__items {
  margin-top: 93px;
  overflow: hidden;
}
@media only screen and (max-width: 780px) {
  .inspection__items.kenchiku_common__items {
    margin-top: 15vw;
  }
}

.inspection_common__items {
  margin-top: 53px;
  padding-left: 2vw;
  padding-right: 2vw;
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 37px;
  column-gap: 37px;
  row-gap: 24px;
}
@media only screen and (max-width: 780px) {
  .inspection_common__items {
    margin-top: 30px;
    padding-left: 0;
    padding-right: 0;
    row-gap: 5.1vw;
    flex-direction: column;
  }
}

.inspection__item {
  display: flex;
  width: 48%;
  height: 135px;
  border-radius: 12px;
}
@media only screen and (max-width: 780px) {
  .inspection__item {
    height: auto;
    width: 100%;
  }
}

.kenchiku_common__desc-wrap {
  display: flex;
  -moz-column-gap: 40px;
  column-gap: 40px;
}
@media only screen and (max-width: 780px) {
  .kenchiku_common__desc-wrap {
    margin-top: 0;
    flex-direction: column;
  }
}

.inspection_table div {
  margin-top: 10px;
  display: flex;
}
.inspection_table div dt {
  width: 120px;
  font-size: clamp(13px, 1.3vw, 16px);
  font-weight: 300;
  color: #000;
  line-height: 1.4;
}
.inspection_table div dd {
  flex: 1;
  font-size: clamp(13px, 1.3vw, 16px);
  font-weight: 300;
  color: #000;
  line-height: 1.4;
  text-indent: 0;
  padding-left: 0;
}

.inspection__item_title {
  width: 15.83%;
  font-size: clamp(14px, 2vw, 19px);
  font-weight: bold;
  background-color: #4472c4;
  color: #fff;
  line-height: 1.05;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  align-items: center;
  border-top-left-radius: 12px;
  border-bottom-left-radius: 12px;
}
@media only screen and (max-width: 780px) {
  .inspection__item_title {
    font-size: clamp(16px, 4vw, 32px);
    text-align: center;
    justify-content: flex-start;
    padding-top: 8.8vw;
  }
}
.inspection__item_title span {
  margin-top: 10px;
  display: block;
  color: #fff;
  width: 70%;
  padding-top: 10px;
  border-top: 1px solid #fff;
  text-align: center;
}
.inspection__item_title:after {
  content: "";
  position: absolute;
  display: block;
  width: 54.1%;
  height: 10px;
  background-color: #fff;
  bottom: -10px;
  left: 0;
}
@media only screen and (max-width: 780px) {
  .inspection__item_title:after {
    content: none;
  }
}

.inspection__item_desc {
  width: 84.17%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(13px, 1.3vw, 16px);
  font-weight: 300;
  background-color: #e6edf4;
  color: #000;
  line-height: 1.4;
  border-top-right-radius: 12px;
  border-bottom-right-radius: 12px;
  padding: 10px 13px;
}
@media only screen and (max-width: 780px) {
  .inspection__item_desc {
    font-size: clamp(14px, 3.5vw, 32px);
    padding: 24px;
  }
}

.saigai__section {
  padding-top: 100px;
  padding-bottom: 130px;
}
@media only screen and (max-width: 780px) {
  .saigai__section {
    padding-top: 12.8vw;
    padding-bottom: 12.8vw;
  }
}

.saigai__wrap.kenchiku_common__wrap {
  margin-top: 100px;
  padding-left: 87px;
  padding-right: 88px;
}
@media only screen and (max-width: 780px) {
  .saigai__wrap.kenchiku_common__wrap {
    margin-top: 17.8vw;
    padding-left: 0;
    padding-right: 0;
  }
}

.saigai__title.page-title {
  display: inline-flex;
  align-items: center;
}
@media only screen and (max-width: 780px) {
  .saigai__title.page-title {
    flex-direction: column;
    align-items: flex-start;
    row-gap: 10px;
  }
}
.saigai__title.page-title:after {
  background-image: url(../images/under/kaiin.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  width: 83px;
  height: 23.4px;
  margin-left: 12px;
}
@media only screen and (max-width: 780px) {
  .saigai__title.page-title:after {
    width: 32.5vw;
    height: 9.2vw;
  }
}

.saigai__about-title {
  font-size: clamp(22px, 3vw, 28px);
  letter-spacing: 0.05em;
  font-weight: 700;
  line-height: 1;
}
@media only screen and (max-width: 780px) {
  .saigai__about-title {
    font-size: clamp(18px, 5.4vw, 46px);
  }
}

.saigai__about-desc {
  margin-top: 20px;
  font-size: clamp(14px, 2vw, 18px);
  line-height: 1.85;
}
@media only screen and (max-width: 780px) {
  .saigai__about-desc {
    font-size: clamp(14px, 3.5vw, 32px);
  }
}

.saigai__about-cards {
  margin-top: 30px;
  display: flex;
  -moz-column-gap: 1vw;
  column-gap: 1vw;
}
@media only screen and (max-width: 780px) {
  .saigai__about-cards {
    flex-direction: column;
    padding-left: 2.5vw;
    padding-right: 2.5vw;
    row-gap: 17px;
    margin-top: 21vw;
  }
}

.saigai__about-card {
  width: 33.3333333333%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 16px 1.6vw;
  border: 4px solid #4472c4;
}
@media only screen and (max-width: 780px) {
  .saigai__about-card {
    width: 100%;
    padding: 5.7vw 3.8vw;
    row-gap: 10vw;
  }
}
.saigai__about-card p {
  font-size: clamp(13px, 1.4vw, 16px);
  line-height: 1.85;
}
@media only screen and (max-width: 780px) {
  .saigai__about-card p {
    font-size: clamp(15px, 4vw, 36px);
  }
}
.saigai__about-card img {
  margin-inline: auto;
  margin-top: 5px;
}

.saigai__about-card:nth-child(1) img {
  width: 11.7vw;
  aspect-ratio: 187/153;
}
@media only screen and (max-width: 780px) {
  .saigai__about-card:nth-child(1) img {
    width: 42.3vw;
  }
}

.saigai__about-card:nth-child(2) img {
  width: 11.7vw;
}
@media only screen and (max-width: 780px) {
  .saigai__about-card:nth-child(2) img {
    width: 42.3vw;
  }
}

.saigai__about-card:nth-child(3) img {
  width: 6.3vw;
}
@media only screen and (max-width: 780px) {
  .saigai__about-card:nth-child(3) img {
    width: 23.7vw;
  }
}

.saigai_about__button {
  margin-top: 30px;
}

.saigai_point {
  margin-top: 64px;
}
@media only screen and (max-width: 780px) {
  .saigai_point {
    margin-top: 12.8vw;
  }
}

.saigai_point__items {
  margin-top: 57px;
}
@media only screen and (max-width: 780px) {
  .saigai_point__items {
    margin-top: 14.6vw;
  }
}

.saigai_point__item + .saigai_point__item {
  margin-top: 45px;
}
@media only screen and (max-width: 780px) {
  .saigai_point__item + .saigai_point__item {
    margin-top: 6.4vw;
  }
}

.saigai_point__item.kyugyo_point__item + .saigai_point__item.kyugyo_point__item {
  margin-top: 28px;
}

.saigai_point__item:nth-child(2) {
  margin-top: 28px;
}

.saigai_point__item-title {
  font-size: clamp(22px, 3vw, 28px);
  letter-spacing: 0.05em;
  padding-bottom: 13px;
  border-bottom: 1px solid #898989;
  line-height: 1.21;
  font-weight: 700;
  padding-left: 2em;
  text-indent: -2em;
}
@media only screen and (max-width: 780px) {
  .saigai_point__item-title {
    font-size: clamp(16px, 5vw, 44px);
    border-bottom: 3px solid #898989;
    line-height: 1.7;
  }
}
.saigai_point__item-title span {
  margin-right: 1em;
}

.saigai_point__hosyo {
  display: flex;
  margin-top: 23px;
  -moz-column-gap: 1.4vw;
  column-gap: 1.4vw;
  justify-content: center;
  background-color: #e6edf4;
  padding: 50px 25px;
}
@media only screen and (max-width: 780px) {
  .saigai_point__hosyo {
    flex-direction: column;
    row-gap: 17px;
    padding: 5.2vw;
    width: 92vw;
    margin-right: calc(50% - 46vw);
    margin-left: calc(50% - 46vw);
  }
}

.hosyo__item {
  width: 33.3333333333%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border: 5px solid #4472c4;
  padding: 27px 1vw 16px 1vw;
  flex-direction: column;
  background-color: #fff;
}
@media only screen and (max-width: 780px) {
  .hosyo__item {
    width: 100%;
  }
}
@media only screen and (max-width: 780px) {
  .hosyo__item img {
    margin-top: 6.41vw;
  }
}

.hosyo__item:nth-child(1) img {
  width: 7.4vw;
}
@media only screen and (max-width: 780px) {
  .hosyo__item:nth-child(1) img {
    width: 32.6vw;
  }
}

.hosyo__item:nth-child(2) img {
  width: 9.1vw;
  margin-top: 14px;
}
@media only screen and (max-width: 780px) {
  .hosyo__item:nth-child(2) img {
    width: 32vw;
    margin-top: 6.41vw;
  }
}

.hosyo__item:nth-child(3) img {
  width: 9.1vw;
}
@media only screen and (max-width: 780px) {
  .hosyo__item:nth-child(3) img {
    width: 32vw;
    margin-top: 6.41vw;
  }
}

.hosyo__item-text p:nth-of-type(1) {
  font-size: clamp(15px, 2vw, 18px);
  line-height: 1;
  color: #44546a;
  text-align: center;
}
@media only screen and (max-width: 780px) {
  .hosyo__item-text p:nth-of-type(1) {
    font-size: clamp(15px, 4vw, 36px);
  }
}
.hosyo__item-text p:nth-of-type(2) {
  font-size: clamp(13px, 1.4vw, 16px);
  line-height: 2.08;
  margin-top: 20px;
}
@media only screen and (max-width: 780px) {
  .hosyo__item-text p:nth-of-type(2) {
    font-size: clamp(14px, 3.5vw, 32px);
  }
}

.saigai_point__service {
  display: flex;
  margin-top: 23px;
  -moz-column-gap: 2.3vw;
  column-gap: 2.3vw;
  justify-content: center;
  background-color: #e6edf4;
  padding: 50px 25px;
}
@media only screen and (max-width: 780px) {
  .saigai_point__service {
    flex-direction: column;
    row-gap: 17px;
    padding: 5.2vw;
    width: 92vw;
    margin-right: calc(50% - 46vw);
    margin-left: calc(50% - 46vw);
  }
}

.service__item {
  width: 50%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  border: 4px solid #4472c4;
  padding: 35px 1vw 16px 1vw;
  background-color: #fff;
}
@media only screen and (max-width: 780px) {
  .service__item {
    width: 100%;
  }
}

.service__item-text p:nth-of-type(1) {
  font-size: clamp(16px, 2vw, 24px);
  line-height: 1;
  color: #44546a;
  padding-bottom: 5px;
  border-bottom: 1px solid #4472c4;
  text-align: center;
}
@media only screen and (max-width: 780px) {
  .service__item-text p:nth-of-type(1) {
    font-size: clamp(16px, 4.7vw, 36px);
  }
}
.service__item-text p:nth-of-type(2) {
  font-size: clamp(13px, 2vw, 20px);
  line-height: 2.08;
  margin-top: 35px;
  letter-spacing: 1.665;
}
@media only screen and (max-width: 780px) {
  .service__item-text p:nth-of-type(2) {
    font-size: clamp(14px, 3.5vw, 32px);
    margin-top: 6.15vw;
  }
}

.service__item:nth-child(1) img {
  width: 7.4vw;
  margin-top: 25px;
}
@media only screen and (max-width: 780px) {
  .service__item:nth-child(1) img {
    width: 29.48vw;
    margin-top: 6.41vw;
  }
}

.service__item:nth-child(2) img {
  width: 7vw;
}
@media only screen and (max-width: 780px) {
  .service__item:nth-child(2) img {
    width: 25.4vw;
    margin-top: 6.41vw;
  }
}

.service_item__button.kenchiku_common__button {
  margin-top: 32px;
  margin-bottom: 35px;
}

.saigai_point__item-desc {
  margin-top: 20px;
  font-size: clamp(14px, 2vw, 16px);
  color: #000;
  line-height: 2.08;
  font-weight: 300;
}
@media only screen and (max-width: 780px) {
  .saigai_point__item-desc {
    font-size: clamp(14px, 3.5vw, 32px);
  }
}

.saigai__caption {
  margin-top: 107px;
  font-size: clamp(14px, 2vw, 16px);
  color: #000;
  line-height: 2.08;
  font-weight: 300;
  max-width: 847px;
  margin-inline: auto;
}
@media only screen and (max-width: 780px) {
  .saigai__caption {
    font-size: clamp(14px, 3.5vw, 32px);
    margin-top: 17.1vw;
  }
}

.saigai__message {
  width: 48.75vw;
  max-width: 780px;
  line-height: 1.85;
  font-size: clamp(14px, 2vw, 16px);
  color: #000;
  font-weight: 300;
  letter-spacing: 0.05em;
  padding: 15px 23px;
  border: 1px solid #707070;
  margin-top: 45px;
  margin-inline: auto;
}
@media only screen and (max-width: 780px) {
  .saigai__message {
    font-size: clamp(14px, 3.5vw, 32px);
    padding: 7.7vw;
    margin-top: 12vw;
    width: 100%;
  }
}

.saigai_point__button.button {
  margin-top: 52px;
  line-height: 1.3;
}

.contact__banner {
  background: #f0f3f5;
  max-width: 780px;
  padding-top: 56px;
  padding-bottom: 30px;
  display: flex;
  align-items: center;
  flex-direction: column;
  margin-inline: auto;
}
@media only screen and (max-width: 780px) {
  .contact__banner {
    padding-top: 6.4vw;
    padding-bottom: 6.4vw;
  }
}
.contact__banner p {
  font-size: clamp(16px, 3vw, 22px);
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 2.08;
  text-align: center;
}
@media only screen and (max-width: 780px) {
  .contact__banner p {
    font-size: clamp(14px, 3.5vw, 32px);
  }
}
.contact__banner p span {
  color: #4472c4;
  font-weight: 700;
  letter-spacing: 0.05em;
}

.contact__banner.saigai_contact__banner {
  margin-top: 64px;
  padding-left: 20px;
  padding-right: 20px;
}

.contact_banner___button.button {
  width: 37.5vw;
  margin-top: 25px;
  background-color: #fff;
  color: #4472c4;
  border: 2px solid #4472c4;
}
@media only screen and (max-width: 780px) {
  .contact_banner___button.button {
    width: 80%;
    padding-top: 3.7vw;
    padding-bottom: 3.7vw;
    border: 3px solid #4472c4;
  }
}
.contact_banner___button.button:after {
  border-color: #fff;
}
@media only screen and (max-width: 780px) {
  .contact_banner___button.button:after {
    right: 6%;
  }
}

.caution.saigai__caution {
  margin-top: 83px;
}
@media only screen and (max-width: 780px) {
  .caution.saigai__caution {
    margin-top: 10.2vw;
  }
}

.kyugyo__wrap.kenchiku_common__wrap {
  margin-top: 100px;
}
@media only screen and (max-width: 780px) {
  .kyugyo__wrap.kenchiku_common__wrap {
    padding-left: 3.2vw;
    padding-right: 3.2vw;
    margin-top: 7.7vw;
  }
}

.other_plan,
.other_plan_caption {
  font-size: clamp(14px, 1.5vw, 16px);
  line-height: 1.75;
}
@media only screen and (max-width: 780px) {
  .other_plan,
  .other_plan_caption {
    font-size: clamp(14px, 3.5vw, 32px);
  }
}

.other_plan {
  margin-top: 37px;
  padding-left: 3.12vw;
  padding-right: 3.12vw;
}
@media only screen and (max-width: 780px) {
  .other_plan {
    margin-top: 6.4vw;
  }
}

.other_plan_caption {
  margin-top: 40px;
  padding-left: 3.12vw;
  padding-right: 3.12vw;
}
@media only screen and (max-width: 780px) {
  .other_plan_caption {
    margin-top: 6.9vw;
    padding-left: 0;
    padding-right: 0;
  }
}

@media only screen and (max-width: 780px) {
  .saigai__about-card.kyugyo__about-card {
    row-gap: 9.6vw;
  }
}

.saigai__about-card.kyugyo__about-card:nth-child(1) img {
  width: 12.6vw;
}
@media only screen and (max-width: 780px) {
  .saigai__about-card.kyugyo__about-card:nth-child(1) img {
    width: 48.7vw;
  }
}

.saigai__about-card.kyugyo__about-card:nth-child(2) img {
  width: 7.8vw;
}
@media only screen and (max-width: 780px) {
  .saigai__about-card.kyugyo__about-card:nth-child(2) img {
    width: 34.2vw;
  }
}

.saigai__about-card.kyugyo__about-card:nth-child(3) img {
  width: 11vw;
}
@media only screen and (max-width: 780px) {
  .saigai__about-card.kyugyo__about-card:nth-child(3) img {
    width: 48.7vw;
  }
}

.consult__caption {
  margin-top: 136px;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 780px) {
  .consult__caption {
    margin-top: 10.7vw;
    font-size: clamp(14px, 3.5vw, 32px);
  }
}

.consult_message {
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.consult_message .nowrap {
  white-space: nowrap;
}
@media only screen and (max-width: 1440px) {
  .consult_message .nowrap {
    white-space: normal;
  }
}
@media only screen and (max-width: 780px) {
  .consult_message {
    font-size: clamp(14px, 3.5vw, 32px);
    padding: 0 1.9vw;
  }
}

.saigai_point.consult_service {
  margin-top: 94px;
}
@media only screen and (max-width: 780px) {
  .saigai_point.consult_service {
    margin-top: 6.4vw;
  }
}

.consult_point__items .saigai_point__item-title {
  padding-left: 0;
  text-indent: 0;
}

.consult_wrap.kenchiku_common__wrap {
  margin-top: 50px;
}
@media only screen and (max-width: 780px) {
  .consult_wrap.kenchiku_common__wrap {
    margin-top: 10.2vw;
    padding-left: 3.2vw;
    padding-right: 3.2vw;
  }
}

.consult_sonpo_link {
  margin-top: 2.5em;
  display: block;
  color: #004bb1;
  text-decoration: underline;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media only screen and (max-width: 780px) {
  .consult_sonpo_link {
    font-size: clamp(14px, 3.5vw, 32px);
  }
}

.saigai_point__item-desc.consult__item-desc {
  margin-top: 2.5em;
}

.news__section {
  padding-top: 100px;
  padding-bottom: 165px;
}
@media only screen and (max-width: 780px) {
  .news__section {
    padding-top: 12.8vw;
    padding-bottom: 21.1vw;
  }
}

.news__content {
  margin-top: 64px;
}

.news__categories {
  max-width: 748px;
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 15px;
  column-gap: 15px;
  row-gap: 15px;
  margin-left: auto;
}
@media only screen and (max-width: 780px) {
  .news__categories {
    justify-content: center;
  }
}
.news__categories .news__category {
  width: 163px;
  background-color: #f0f3f5;
  color: #000;
  font-size: clamp(14px, 2vw, 18px);
  padding-top: 9px;
  padding-bottom: 9px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.news__category.is-active {
  background-color: #4eaae5;
  color: #fff;
}

.news__items.top-news__items {
  margin-top: 64px;
}
.news__items.top-news__items li {
  align-items: baseline;
  padding-left: 5.6vw;
  padding-right: 5.6vw;
}

.news__items.top-news__items .news-cate {
  background-color: #4eaae5;
  color: #fff;
  font-size: clamp(14px, 2vw, 18px);
}

.news__pagenation {
  margin-top: 107px;
  text-align: center;
}
.news__pagenation a {
  font-size: 17px;
}

.news_article__section {
  padding-top: 100px;
  padding-bottom: 165px;
}
@media only screen and (max-width: 780px) {
  .news_article__section {
    padding-top: 12.8vw;
    padding-bottom: 21.1vw;
  }
}

.news_article__title {
  font-size: clamp(22px, 5vw, 46px);
  letter-spacing: 0.05em;
  line-height: 1.195;
  font-weight: bold;
}

.news_article__info {
  margin-top: 5px;
  display: flex;
  -moz-column-gap: 15px;
  column-gap: 15px;
  align-items: center;
}

.news_article__date {
  font-size: 14px;
  color: #0d0d0d;
}

.news_article__category {
  background-color: #4eaae5;
  color: #fff;
  padding: 5px;
  font-size: 13px;
  display: block;
}

.news_article__content {
  padding-left: 15.6vw;
  padding-right: 15.6vw;
  margin-top: 112px;
}
@media only screen and (max-width: 780px) {
  .news_article__content {
    padding-left: 6.4vw;
    padding-right: 6.4vw;
    margin-top: 50px;
  }
}

.wp-block-image img {
  margin-inline: auto;
  margin-top: 35px;
  width: 528px !important;
  height: 100% !important;
  aspect-ratio: 528/297;
}

.news_article__content p {
  letter-spacing: 0.1em;
  font-size: clamp(14px, 2vw, 16px);
  margin-top: 35px;
}

.news_article__pagenation {
  margin-top: 150px;
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 780px) {
  .news_article__pagenation {
    margin-top: 80px;
  }
}
.news_article__pagenation a {
  font-size: clamp(14px, 2vw, 18px);
}

.button.news_article__button {
  width: 450px;
  background-color: #4eaae5;
  color: #fff;
  margin-top: 47px;
  margin-inline: auto;
}
@media only screen and (max-width: 780px) {
  .button.news_article__button {
    width: 64.1vw;
  }
}
.button.news_article__button:before {
  background-color: #fff;
}
.button.news_article__button:after {
  border-color: #4eaae5;
}

.page-numbers + .page-numbers {
  margin-left: 5px;
}

.kenchiku_common__item.flow__item .kenchiku_common__theme {
  color: #333333;
  font-size: clamp(18px, 3vw, 24px);
  padding-bottom: 13px;
  padding-left: 2em;
  text-indent: -2em;
}
@media only screen and (max-width: 780px) {
  .kenchiku_common__item.flow__item .kenchiku_common__theme {
    font-size: clamp(16px, 5vw, 44px);
    line-height: 1.5;
  }
}
.kenchiku_common__item.flow__item .kenchiku_common__theme span {
  margin-right: 1em;
}

.hot_line_img {
  width: 450px;
  height: 100%;
  aspect-ratio: 429/36;
  margin-top: 70px;
  margin-inline: auto;
}

.insident_img {
  width: 363px;
  height: 100%;
  aspect-ratio: 363/272;
  margin-top: 30px;
  margin-inline: auto;
}

.taisyo_flow_img {
  width: 1127px;
  height: 100%;
  aspect-ratio: 1127/1480;
  margin-top: 30px;
  margin-inline: auto;
}
@media only screen and (max-width: 780px) {
  .taisyo_flow_img {
    margin-top: 10.2vw;
  }
}

.form_button span {
  font-size: clamp(13px, 1.5vw, 16px);
  color: #fff;
}
@media only screen and (max-width: 780px) {
  .form_button span {
    font-size: clamp(14px, 3.5vw, 32px);
  }
}

.form_button.button {
  padding-top: 10px;
  padding-bottom: 10px;
  text-align: center;
  display: block;
}

.form_button.button + .form_button.button {
  margin-top: 7px;
}

.button.flow_box {
  cursor: pointer;
  font-size: clamp(15px, 3vw, 20px);
}
@media only screen and (max-width: 780px) {
  .button.flow_box {
    font-size: clamp(14px, 3.5vw, 32px);
    padding-top: 6.4vw;
    padding-bottom: 6.4vw;
    font-weight: 700;
    margin-top: 10.2vw;
  }
}
.button.flow_box:after {
  background-image: none;
  border-bottom: solid 2px #fff;
  border-right: solid 2px #fff;
  display: inline-block;
  transform: rotate(45deg) translateY(-50%);
  width: 11px;
  height: 11px;
  top: 45%;
}
@media only screen and (max-width: 780px) {
  .button.flow_box:after {
    width: 15px;
    height: 17px;
    border-bottom: solid 4px #fff;
    border-right: solid 4px #fff;
  }
}
.button.flow_box:before {
  content: none;
}

.flow_img {
  display: none;
}

.kenchiku_common__desc.contact-info__desc {
  padding-left: 0;
  text-indent: 0;
}

@media only screen and (max-width: 780px) {
  .contact-info__items.kenchiku_common__items {
    margin-top: 28.2vw;
  }
}

.contact_info__item .kenchiku_common__desc {
  padding-left: 1em;
  text-indent: -0.7em;
}

.faq__section {
  padding-top: 100px;
  padding-bottom: 100px;
}
@media only screen and (max-width: 780px) {
  .faq__section {
    padding-top: 12.8vw;
    padding-bottom: 12.8vw;
  }
}

.faq__title.page-title {
  position: relative;
}
.faq__title.page-title:after {
  background-image: url(../images/common/nichijiren_icon6.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  position: absolute;
  display: block;
  width: 77px;
  height: 56px;
  bottom: -10px;
  left: 350px;
}
@media only screen and (max-width: 780px) {
  .faq__title.page-title:after {
    content: none;
  }
}

.faq__categories {
  padding-right: 90px;
  padding-left: 90px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  -moz-column-gap: 16px;
  column-gap: 16px;
  row-gap: 16px;
  margin-top: 64px;
}
@media only screen and (max-width: 780px) {
  .faq__categories {
    padding-left: 0;
    padding-right: 0;
  }
}
.faq__categories:after {
  content: "";
  width: 329px;
  display: block;
}

.faq__category {
  width: 329px;
  padding: 25px 1.87vw;
  color: #fff;
  background-color: #365a99;
  font-size: clamp(14px, 2vw, 16px);
}
@media only screen and (max-width: 780px) {
  .faq__category {
    font-size: clamp(14px, 3.5vw, 32px);
    width: 100%;
  }
}

.kenchiku__content.faq__content {
  margin-top: 121px;
}

.faq__item + .faq__item {
  margin-top: 8px;
}
@media only screen and (max-width: 780px) {
  .faq__item + .faq__item {
    margin-top: 4.3vw;
  }
}

.faq__items {
  margin-top: 50px;
}

.faq__theme {
  padding: 15px 50px;
  background-color: #e6edf4;
  color: #44546a;
  font-size: clamp(15px, 2vw, 18px);
  position: relative;
  cursor: pointer;
}
@media only screen and (max-width: 780px) {
  .faq__theme {
    font-size: clamp(16px, 4.7vw, 36px);
    padding: 2.56vw 3.8vw;
    padding-right: 37px;
  }
}
.faq__theme:before,
.faq__theme:after {
  position: absolute;
  content: "";
  top: 50%;
  background-color: #333333;
  z-index: 5;
}
.faq__theme:before {
  right: 20px;
  width: 20px;
  height: 3px;
  transform: translate(0, -50%);
}
.faq__theme:after {
  right: 30px;
  width: 3px;
  height: 20px;
  transform: translate(50%, -50%);
}

.faq__theme.is-active::after {
  opacity: 0;
}

.faq__desc {
  padding: 30px 49.8px 48px 48.9px;
  color: #000;
  font-size: clamp(13px, 2vw, 16px);
  display: none;
  height: 100%;
}
@media only screen and (max-width: 780px) {
  .faq__desc {
    font-size: clamp(14px, 4.5vw, 30px);
    padding: 3.8vw;
  }
}

.faq__desc span {
  display: block;
  margin-top: 20px;
  text-align: center;
}
@media only screen and (max-width: 780px) {
  .faq__desc span {
    text-align: left;
  }
}

.faq__desc span.indent {
  text-align: left;
  margin-top: 0;
  display: inline-block;
  text-indent: -1em;
  padding-left: 1em;
}

.faq__desc .underline {
  text-decoration: underline;
}
.faq__desc .strong {
  font-weight: 700;
}

.faq__desc p,
.faq__desc dt,
.faq__desc dd {
  color: #000;
  font-size: clamp(13px, 2vw, 16px);
}

.faq__desc div {
  display: flex;
  align-items: center;
  border-bottom: 1px solid #707070;
  padding-bottom: 18px;
  padding-top: 18px;
  padding-left: 21px;
  padding-right: 20px;
}
@media only screen and (max-width: 780px) {
  .faq__desc div {
    padding-left: 0px;
    padding-right: 0px;
  }
}

.faq__desc dl {
  margin-top: 36px;
}

.faq__desc dt {
  width: 200px;
}
@media only screen and (max-width: 780px) {
  .faq__desc dt {
    width: 150px;
  }
}

.faq__desc dd {
  flex: 1;
  padding-left: 2.5vw;
}
@media only screen and (max-width: 780px) {
  .faq__desc dd {
    padding-left: 35px;
  }
}

.faq__wrapper + .faq__wrapper {
  margin-top: 35px;
}

.faq__wrap {
  margin-top: 66px;
}

.faq__wrap + .faq__wrap {
  margin-top: 34px;
}

.faq_contact__banner.contact__banner {
  margin-top: 40px;
}
@media only screen and (max-width: 780px) {
  .faq_contact__banner.contact__banner {
    padding-left: 10px;
    padding-right: 10px;
  }
}

.faq__button.button {
  margin-top: 58px;
  margin-inline: auto;
  width: 450px;
}
@media only screen and (max-width: 780px) {
  .faq__button.button {
    width: 82vw;
    max-width: 100%;
    padding-top: 7vw;
    padding-bottom: 7vw;
  }
}

* {
  color: #333333;
  font-family: "Noto Sans JP", "sans-serif";
  font-weight: 500;
}

.inner {
  width: 100%;
  max-width: 1350px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 25px;
  padding-right: 25px;
}
@media only screen and (max-width: 780px) {
  .inner {
    padding-left: 3.2vw;
    padding-right: 3.2vw;
    max-width: 100%;
  }
}

.inner_under {
  width: 100%;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 50px;
  padding-right: 50px;
}
@media only screen and (max-width: 780px) {
  .inner_under {
    padding-left: 3.2vw;
    padding-right: 3.2vw;
    max-width: 100%;
  }
}

@media only screen and (max-width: 780px) {
  .sp__inner {
    padding-left: 3.2vw;
    padding-right: 3.2vw;
    width: 100%;
  }
}

.button {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 23px;
  padding-bottom: 23px;
  background-color: #4eaae5;
  font-size: clamp(14px, 2vw, 20px);
  color: #fff;
  position: relative;
  cursor: pointer;
}
@media only screen and (max-width: 780px) {
  .button {
    font-size: clamp(15px, 4.1vw, 32px);
    padding-top: 3.7vw;
    padding-bottom: 3.7vw;
    width: 64.1vw;
    max-width: 500px;
    min-width: 270px;
  }
}
.button:before {
  /* content: "";
  position: absolute;
  display: inline-block;
  width: 14.8px;
  height: 14.8px;
  top: 51%;
  right: 30px;
  background-color: #fff;
  border-radius: 50%;
  transform: translateY(-50%);
}
@media only screen and (max-width: 780px) {
  .button:before {
    width: 4.1vw;
    height: 4.1vw;
    right: 11%;
  } */
}
.button:after {
  content: "";
  position: absolute;
  display: inline-block;
  width: 14px;
  height: 14px;
  top: 41%;
  right: 38px;
  background-image: url(../images/under/arrow.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media only screen and (max-width: 780px) {
  .button:after {
    right: 14%;
    width: 21px;
    height: 21px;
    top: 34%;
  }
}
@media only screen and (max-width: 425px) {
  .button:after {
    width: 14px;
    height: 14px;
    top: 37%;
  }
}

.jirei_button {
  width: 73px;
  height: 33px;
  display: flex;
  align-items: center;
  padding-top: 5px;
  padding-bottom: 5px;
  padding-left: 13px;
  background-color: #99beff;
  font-size: clamp(13px, 1.5vw, 14px);
  color: #44546a;
  position: relative;
  line-height: 1;
  border-radius: 2px;
}
@media only screen and (max-width: 780px) {
  .jirei_button {
    margin-left: 18px;
    height: 25px;
  }
}
.jirei_button:before {
  content: "";
  position: absolute;
  display: inline-block;
  width: 12.6px;
  height: 12.6px;
  top: 51%;
  right: 15px;
  background-color: #44546a;
  border-radius: 50%;
  transform: translateY(-50%);
}
.jirei_button:after {
  content: "";
  position: absolute;
  border: 0;
  border-top: solid 2px #99beff;
  border-right: solid 2px #99beff;
  display: inline-block;
  transform: rotate(45deg) translateY(-50%);
  width: 6px;
  height: 6px;
  top: 50%;
  right: 21px;
}

.md-none {
  display: block;
}
@media only screen and (max-width: 780px) {
  .md-none {
    display: none;
  }
}

.lg-none {
  display: block;
}
@media only screen and (max-width: 1024px) {
  .lg-none {
    display: none;
  }
}

.lg-show {
  display: none;
}
@media only screen and (max-width: 1024px) {
  .lg-show {
    display: block;
  }
}

.pc-none {
  display: none;
}
@media only screen and (max-width: 780px) {
  .pc-none {
    display: block;
  }
}

.login-button {
  width: 259px;
  height: 112px;
  padding-left: 2vw;
  background-color: #99beff;
  display: flex;
  align-items: center;
  position: fixed;
  right: 0;
  top: 245px;
  z-index: 4000;
}
@media only screen and (max-width: 780px) {
  .login-button {
    position: relative;
    top: auto;
    right: auto;
    margin: 30px;
    width: 69.1vw;
    margin-inline: auto;
    padding-left: 12vw;
    padding-right: 12vw;
    height: 15.3vw;
  }
}
.login-button p {
  color: #44546a;
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 780px) {
  .login-button p {
    font-size: clamp(15px, 4.5vw, 32px);
  }
}

.login-button p:after {
  content: "";
  position: absolute;
  display: inline-block;
  width: 21px;
  height: 21px;
  top: 41%;
  right: 9px;
  background-image: url(../images/under/arrow_black.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

@media only screen and (max-width: 780px) {
  .login-button p:after {
    top: 36%;
  }
}

@media only screen and (max-width: 425px) {
  .login-button p:after {
    width: 14px;
    height: 14px;
    top: 38%;
    right: 19px;
  }
}

.page-title {
  font-size: clamp(22px, 5vw, 46px);
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: bold;
}
@media only screen and (max-width: 780px) {
  .page-title {
    font-size: clamp(22px, 7.5vw, 58px);
    line-height: 1.44;
  }
}

.breadcrumb {
  width: 100%;
  max-width: 1240px;
  padding-left: 15px;
  padding-right: 25px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}
@media only screen and (max-width: 780px) {
  .breadcrumb {
    padding-left: 3.2vw;
    padding-right: 3.2vw;
    max-width: 100%;
  }
}
.breadcrumb span {
  font-size: 14px;
  margin-left: 5px;
  margin-right: 5px;
}
@media only screen and (max-width: 780px) {
  .breadcrumb span {
    font-size: clamp(13px, 3vw, 24px);
  }
}
.breadcrumb a {
  text-decoration: underline;
}

.button.hot_line_button {
  width: 450px;
  margin-top: 20px;
  margin-inline: auto;
}
@media only screen and (max-width: 780px) {
  .button.hot_line_button {
    width: 82vw;
    max-width: 100%;
    padding-right: 40px;
    font-size: clamp(15px, 4.5vw, 32px);
  }

  .button.hot_line_button:after {
    right: 6.5%;
  }
}
/*# sourceMappingURL=style.css.map */
