@charset "UTF-8";
/**
 * Common Style
 */
/* ハーフレディング打消し */
:root {
  --leading-trim: calc((1em - 1lh) / 2);
}

/* タイポグラフィ */
h1,
h2,
h3,
h4,
h5,
h6,
p {
  margin-block: var(--leading-trim);
}

/* ページ内リンク 固定ヘッダー対策 */
:root {
  scroll-padding-top: 85px;
  scroll-behavior: smooth;
}

/* 色の反転 */
.color-invert {
  filter: invert(100%);
}

/* 文字の折り返し */
a {
  color: var(--wp--preset--color--lonp-light-blue);
  overflow-wrap: break-word;
}
a:hover {
  text-decoration: underline;
}

/* 強調 */
strong {
  color: var(--wp--preset--color--lonp-orange-2);
  font-weight: 700;
}

/* トップに戻る */
#go-top {
  position: fixed;
  bottom: 20px;
  right: 0;
  transform: translateX(-50%);
  z-index: 100;
  width: 50px;
}

@media screen and (min-width: 992px) {
  #go-top {
    width: auto;
  }
}
/* リンク矢印  */
.link-arrow {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 26px;
  height: auto;
}
.link-arrow-20 {
  right: 30px;
  bottom: 10px;
}

.site-logo--set:hover {
  filter: brightness(1.1) saturate(2);
}

/* サイトヘッダー */
.site-header {
  position: fixed;
  width: 100%;
  max-width: 100vw;
}
.site-header .header-inner {
  padding-left: 10px;
  padding-right: 10px;
  justify-content: space-between;
  align-items: center;
}
.site-header .header-inner .site-logo--set img {
  width: clamp(250px, 25vw, 438px);
  transition: 0.2s;
}
.site-header .header-inner .site-navi {
  flex-wrap: nowrap;
  gap: clamp(10px, 1.5vw, 30px);
}
.site-header .header-inner .site-navi ul {
  padding-left: 0;
}
.site-header .header-inner .site-navi li a {
  padding: clamp(5px, 0.5vw, 10px);
}
.site-header .header-inner .wp-block-navigation__container {
  font-size: var(--wp--preset--font-size--small);
}
.site-header .header-inner .wp-block-buttons {
  gap: 10px;
}
.site-header .header-inner .wp-block-buttons .member-btn a {
  line-height: normal;
  padding: clamp(10px, 1vw, 20px);
  font-size: var(--wp--preset--font-size--medium);
}
.site-header .header-inner .wp-block-buttons .side-menu-btn a {
  line-height: normal;
  padding: clamp(10px, 1vw, 20px);
  font-size: var(--wp--preset--font-size--medium);
}

@media screen and (min-width: 992px) {
  body:not(.page-template-wp-custom-template).scrolled .site-header {
    background-color: white;
  }
  .site-header {
    height: 85px;
    padding-top: 13px;
  }
  .site-header .header-inner {
    padding-left: clamp(20px, 2vw, 50px);
    padding-right: clamp(20px, 2vw, 50px);
  }
}
body:not(.page-template-wp-custom-template).scrolled .site-header {
  background-color: white;
}

.page-template-wp-custom-template .site-header {
  background-color: #d9ddd2;
}

header:has(.site-header) + main {
  padding-top: 85px;
  overflow: hidden;
}

/* X-T9 ヘッダー位置修正 */
*[class*=scrolled-header-fixed] {
  width: 100%;
  left: 0;
  right: 0;
}

/* メニュー */
#side-menu {
  position: fixed;
  top: 0;
  right: -100%; /* 画面外に隠す */
  width: 100%;
  max-width: 100vw;
  height: 100vh;
  overflow-y: auto;
  opacity: 96%;
  transition: right 0.3s ease;
  z-index: 9999;
}

/* 開いた状態 */
#side-menu.is-open {
  right: 0;
}

#side-menu .close-btn .wp-block-button__link img {
  width: 14px;
}
#side-menu .close-btn .wp-block-button__link {
  padding: 0;
}
#side-menu .close-btn {
  margin-top: 15px;
}
#side-menu > .sidemenu-list {
  width: calc(100% - 60px);
  max-width: unset;
  margin-right: auto !important;
  margin-left: auto !important;
}
#side-menu .wp-block-navigation__container {
  width: 100%;
  padding-left: 0;
  margin-top: 20px;
}
#side-menu .wp-block-navigation__container li {
  border-bottom: 1px solid #8ba2b3;
  flex-basis: 60px;
  width: 100%;
  font-size: var(--wp--preset--font-size--medium);
}
#side-menu .wp-block-navigation__container li a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: start;
  align-items: center;
}
#side-menu .wp-block-navigation__submenu-container li {
  flex-basis: 50px;
}
#side-menu .navi-btn-wrap {
  width: calc(100% - 60px);
  gap: 30px;
  margin-top: 30px;
}
#side-menu .navi-btn {
  width: 100%;
  height: 59px;
}
#side-menu .navi-btn a {
  font-size: var(--wp--preset--font-size--large);
}

@media screen and (min-width: 768px) {
  #side-menu {
    right: -320px; /* 画面外に隠す */
    width: 320px;
  }
  #side-menu .close-btn .wp-block-button__link img {
    width: 24px;
  }
  #side-menu .close-btn {
    margin-top: 30px;
    margin-right: 30px;
  }
  #side-menu .navi-btn-wrap {
    width: calc(100% - 60px);
    gap: 40px;
    margin-top: 40px;
  }
  #side-menu .navi-btn {
    width: 100%;
    height: 78px;
  }
}
/* フッター */
.footer-logo img {
  -o-object-fit: contain;
     object-fit: contain;
}

/* 背景 */
body {
  background: url("/wordpress/wp-content/themes/lonproof/assets/img/bg.png") no-repeat top center;
  background-size: contain;
  background-color: #fefff9;
}

/*
body.home {
  background:
    url("/wordpress/wp-content/themes/lonproof/assets/img/bg.png") no-repeat top center,
    url("/wordpress/wp-content/themes/lonproof/assets/img/bg_illust.png") no-repeat left -138px top 648px;
  background-size:
    contain,
    598px 466px;
  background-color: #fefff9;
}
  */
@media screen and (min-width: 768px) {
  .c-read {
    text-align: center;
  }
}

@media screen and (min-width: 768px) {
  .c-spacer {
    margin-bottom: 50px;
  }
}

/**
 * Block Style
 */
.is-style-heading-large {
  font-family: var(--wp--preset--font-family--noto-sans-jp);
  text-align: center;
  font-size: var(--wp--preset--font-size--xxx-large);
  width: 100%;
  position: relative;
}

.is-style-heading-large:after {
  position: absolute;
  content: "";
  width: 40px;
  height: 3px;
  background-color: var(--wp--preset--color--lonp-orange-1);
  bottom: -23px;
  left: calc(50% - 20px);
}

.is-style-heading-middle {
  padding-left: 65px;
  font-size: var(--wp--preset--font-size--xxx-large);
  font-weight: 700;
  width: 100%;
  position: relative;
  background: url(../img/icon-ttl.png) no-repeat 6px 12px;
  background-size: 39px 38px;
}

.is-style-heading-middle::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 3px;
  background-color: #e8e8e8;
  bottom: -20px;
  left: 0;
  z-index: 10;
}

.is-style-heading-middle::after {
  position: absolute;
  content: "";
  width: 40px;
  height: 3px;
  background-color: var(--wp--preset--color--lonp-orange-1);
  bottom: -20px;
  left: 0;
  z-index: 20;
}

.is-style-heading-small {
  font-family: var(--wp--preset--font-family--noto-sans-jp);
  font-size: var(--wp--preset--font-size--xxx-large);
  font-weight: 700;
  width: -moz-max-content;
  width: max-content;
  min-height: 70px;
  border-radius: 35px;
  background-color: var(--wp--preset--color--lonp-blue);
  color: #fff;
  padding-left: 43px;
  padding-right: 43px;
  text-align: center;
  line-height: 1.38;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: var(--wp--preset--spacing--60);
  margin-bottom: var(--wp--preset--spacing--60);
}

.is-style-heading-line {
  font-family: var(--wp--preset--font-family--noto-sans-jp);
  font-size: var(--wp--preset--font-size--x-large);
  letter-spacing: 0.2rem;
  font-weight: 700;
  width: -moz-max-content;
  width: max-content;
  text-align: center;
  position: relative;
  margin-right: auto;
  margin-left: auto;
}

.is-style-heading-line::before,
.is-style-heading-line::after {
  position: absolute;
  top: 5px;
  height: 1.6rem;
  content: "";
}

.is-style-heading-line::before {
  border-left: solid 3px;
  left: -20px;
  transform: rotate(-20deg);
}

.is-style-heading-line::after {
  border-right: solid 3px;
  right: -20px;
  transform: rotate(20deg);
}

.is-style-no-marker > li {
  list-style: none;
}

.is-style-marker-pink > li {
  margin-bottom: var(--wp--preset--spacing--40);
}
.is-style-marker-pink > li::marker {
  color: var(--wp--preset--color--lonp-orange-1);
}

.is-style-circle-number {
  padding-left: 1.5em;
}
.is-style-circle-number > li {
  list-style: none;
  position: relative;
}
.is-style-circle-number > li::before {
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  margin-left: -1.5em;
}
.is-style-circle-number > li:first-child::before {
  content: "①";
}
.is-style-circle-number > li:nth-child(2)::before {
  content: "②";
}
.is-style-circle-number > li:nth-child(3)::before {
  content: "③";
}
.is-style-circle-number > li:nth-child(4)::before {
  content: "④";
}
.is-style-circle-number > li:nth-child(5)::before {
  content: "⑤";
}
.is-style-circle-number > li:nth-child(6)::before {
  content: "⑥";
}
.is-style-circle-number > li:nth-child(7)::before {
  content: "⑦";
}
.is-style-circle-number > li:nth-child(8)::before {
  content: "⑧";
}
.is-style-circle-number > li:nth-child(9)::before {
  content: "⑨";
}
.is-style-circle-number > li:nth-child(10)::before {
  content: "⑩";
}
.is-style-circle-number > li:nth-child(11)::before {
  content: "⑪";
}
.is-style-circle-number > li:nth-child(12)::before {
  content: "⑫";
}
.is-style-circle-number > li:nth-child(13)::before {
  content: "⑬";
}
.is-style-circle-number > li:nth-child(14)::before {
  content: "⑭";
}
.is-style-circle-number > li:nth-child(15)::before {
  content: "⑮";
}
.is-style-circle-number > li:nth-child(16)::before {
  content: "⑯";
}
.is-style-circle-number > li:nth-child(17)::before {
  content: "⑰";
}
.is-style-circle-number > li:nth-child(18)::before {
  content: "⑱";
}
.is-style-circle-number > li:nth-child(19)::before {
  content: "⑲";
}
.is-style-circle-number > li:nth-child(20)::before {
  content: "⑳";
}

.is-style-parenthesis-number {
  counter-reset: number;
  padding-left: 1.5em;
}
.is-style-parenthesis-number > li {
  position: relative;
  list-style: none;
  counter-increment: number;
}
.is-style-parenthesis-number > li::before {
  content: "(" counter(number) ") ";
  display: inline-block;
  position: absolute;
  text-align: right;
  top: 0;
  left: 0;
  margin-left: -1.5em;
}

ul.is-style-right-arrow > li {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
ul.is-style-right-arrow > li::before {
  content: "▶";
  font-size: smaller;
  color: var(--wp--preset--color--lonp-blue);
}
ul.is-style-right-arrow > li a {
  padding-left: 0.25em;
}

.wp-block-button.is-style-red-button {
  width: 100%;
}
.wp-block-button.is-style-red-button .wp-block-button__link {
  border-radius: 10px;
  background: linear-gradient(90deg, rgb(223, 19, 19) 0%, rgb(222, 101, 9) 100%);
  padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--50);
  font-family: var(--wp--preset--font-family--zen-maru-gothic);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-size: medium;
}

@media screen and (min-width: 768px) {
  .wp-block-button.is-style-red-button {
    width: -moz-max-content;
    width: max-content;
  }
  .wp-block-button.is-style-red-button .wp-block-button__link {
    font-size: x-large;
  }
}
.wp-block-button.is-style-red-button .wp-block-button__link:hover {
  filter: brightness(1.1) saturate(2);
}

.wp-block-button.is-style-blue-button {
  width: 100%;
}
.wp-block-button.is-style-blue-button .wp-block-button__link {
  border-radius: 10px;
  background: linear-gradient(90deg, rgb(29, 88, 251) 0%, rgb(23, 71, 167) 100%);
  padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--50);
  font-family: var(--wp--preset--font-family--zen-maru-gothic);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-size: medium;
}

@media screen and (min-width: 768px) {
  .wp-block-button.is-style-blue-button {
    width: -moz-max-content;
    width: max-content;
  }
  .wp-block-button.is-style-blue-button .wp-block-button__link {
    font-size: x-large;
  }
}
.wp-block-button.is-style-blue-button .wp-block-button__link:hover {
  filter: brightness(1.1) saturate(2);
}

.wp-block-button.is-style-blue-button-s {
  width: 100%;
}
.wp-block-button.is-style-blue-button-s .wp-block-button__link {
  border-radius: 20px;
  background: linear-gradient(90deg, rgb(29, 88, 251) 0%, rgb(23, 71, 167) 100%);
  padding: 0 var(--wp--preset--spacing--40);
  font-family: var(--wp--preset--font-family--zen-maru-gothic);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-size: small;
}

@media screen and (min-width: 768px) {
  .wp-block-button.is-style-blue-button-s {
    width: -moz-max-content;
    width: max-content;
  }
  .wp-block-button.is-style-blue-button-s .wp-block-button__link {
    font-size: small;
  }
}
.wp-block-button.is-style-blue-button-s .wp-block-button__link:hover {
  filter: brightness(1.1) saturate(2);
}

.wp-block-button.is-style-green-button {
  width: 100%;
}
.wp-block-button.is-style-green-button .wp-block-button__link {
  border-radius: 10px;
  background: #00984b;
  padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--50);
  font-family: var(--wp--preset--font-family--zen-maru-gothic);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-size: medium;
}

@media screen and (min-width: 768px) {
  .wp-block-button.is-style-green-button {
    width: -moz-max-content;
    width: max-content;
  }
  .wp-block-button.is-style-green-button .wp-block-button__link {
    font-size: x-large;
  }
}
.wp-block-button.is-style-green-button .wp-block-button__link:hover {
  filter: brightness(1.1) saturate(2);
}

.wp-block-button.is-style-violet-button {
  width: 100%;
}
.wp-block-button.is-style-violet-button .wp-block-button__link {
  border-radius: 10px;
  background: linear-gradient(90deg, rgb(138, 1, 153) 0%, rgb(196, 29, 215) 100%);
  padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--50);
  font-family: var(--wp--preset--font-family--zen-maru-gothic);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-size: medium;
}

@media screen and (min-width: 768px) {
  .wp-block-button.is-style-violet-button {
    width: -moz-max-content;
    width: max-content;
  }
  .wp-block-button.is-style-violet-button .wp-block-button__link {
    font-size: x-large;
  }
}
.wp-block-button.is-style-violet-button .wp-block-button__link:hover {
  filter: brightness(1.1) saturate(2);
}

.is-style-solid-roundcorner-blue {
  max-width: 980px;
  margin-right: auto;
  margin-left: auto;
  border-radius: 20px;
  background-color: var(--wp--preset--color--lonp-aqua);
  padding: var(--wp--preset--spacing--60);
}
.is-style-solid-roundcorner-blue ul,
.is-style-solid-roundcorner-blue p {
  max-width: 820px;
  margin-right: auto;
  margin-left: auto;
}

.is-style-solid-roundcorner-whiteshadow {
  max-width: 980px;
  margin-right: auto;
  margin-left: auto;
  border-radius: 20px;
  background-color: white;
  padding: var(--wp--preset--spacing--60);
  box-shadow: 0px 3px 10px rgba(0, 0, 0, 0.2);
}
.is-style-solid-roundcorner-whiteshadow ul,
.is-style-solid-roundcorner-whiteshadow p {
  max-width: 820px;
  margin-right: auto;
  margin-left: auto;
}

.is-style-blue-round {
  display: inline-block;
}
.is-style-blue-round .wp-block-button__link {
  padding-top: 0;
  padding-right: var(--wp--preset--spacing--50);
  padding-bottom: 0;
  padding-left: var(--wp--preset--spacing--50);
  font-size: var(--wp--preset--font-size--small);
  color: var(--wp--preset--color--lonp-white);
  background-color: var(--wp--preset--color--lonp-blue);
  border: 1px solid var(--wp--preset--color--lonp-blue);
  border-radius: 20px;
}
.is-style-blue-round .wp-block-button__link:hover {
  color: var(--wp--preset--color--lonp-blue);
  background-color: var(--wp--preset--color--lonp-white);
}

.is-style-orange-round {
  display: inline-block;
}
.is-style-orange-round .wp-block-button__link {
  padding-top: 0;
  padding-right: var(--wp--preset--spacing--50);
  padding-bottom: 0;
  padding-left: var(--wp--preset--spacing--50);
  font-size: var(--wp--preset--font-size--small);
  color: var(--wp--preset--color--lonp-white);
  background-color: var(--wp--preset--color--lonp-orange-1);
  border: 1px solid var(--wp--preset--color--lonp-orange-1);
  border-radius: 20px;
}
.is-style-orange-round .wp-block-button__link:hover {
  color: var(--wp--preset--color--lonp-orange-1);
  background-color: var(--wp--preset--color--lonp-white);
}

/**
 * Front-page
 */
/* メインビジュアル */
.mv-section {
  position: relative;
}

@media (min-width: 782px) {
  .mv-main {
    height: 545px;
    max-height: calc(100vh - 320px);
  }
}
.mv-image-wrapper,
.mv-image {
  height: 100%;
}
.mv-image-wrapper img,
.mv-image img {
  max-height: 100%;
}

.mv-title {
  font-size: 44px;
}
@media (min-width: 782px) {
  .mv-title {
    font-size: 90px;
  }
}

.mv-subtitle {
  font-size: 1rem;
}
@media (min-width: 782px) {
  .mv-subtitle {
    font-size: 2rem;
  }
}

.mv-over {
  position: absolute;
  top: 50%;
  left: -15%;
}

.features {
  align-items: stretch;
}
.features > div {
  flex-basis: 100%;
}
@media (min-width: 782px) {
  .features > div {
    flex-basis: auto;
  }
}
.features .features-div {
  width: 1px;
  background-color: var(--wp--preset--color--lonp-light-blue);
}

.information-wrapper {
  position: relative;
}

.information-container {
  padding-block: 40px;
  padding-inline: 15px;
}

.information-title {
  font-size: 46px;
  text-align: center;
}

@media (min-width: 782px) {
  .information-container {
    padding-block: 100px;
    padding-inline: 160px;
  }
  .information-title {
    font-size: 95px;
    text-align: left;
  }
}
.information-over {
  position: absolute;
  top: -20%;
  left: calc(50% + 250px);
  width: 860px;
}

/* お問い合わせ */
/* メインリンクセクション */
.main-link-section .link-item {
  position: relative;
  flex-basis: 100%;
}
@media (min-width: 782px) {
  .main-link-section .link-item {
    flex-basis: 270px;
    min-height: 300px;
  }
}
.main-link-section .link-item .link-item-contents {
  flex-direction: row;
  flex-wrap: nowrap;
}
@media (min-width: 782px) {
  .main-link-section .link-item .link-item-contents {
    flex-direction: column;
    flex-wrap: wrap;
  }
}
.main-link-section .link-item:hover {
  transform: translateY(5px) scale(0.98);
  transition: all 0.3s;
}

.information-item:hover > * {
  transform: translateY(5px) scale(0.98);
  transition: all 0.3s;
}

.information-link:hover {
  filter: invert(10%);
  transition: all 0.3s;
}

/* 詳しく知りたい方へ */
.for-detail {
  position: relative;
}
.for-detail .detail-title {
  position: absolute;
  width: 100%;
  top: -0.5em;
}

/* 水の模様 */
.float-water {
  position: absolute;
  z-index: -1;
}
.float-water.water01 {
  top: 0;
  right: 0;
}
.float-water.water02 {
  top: 50%;
  left: 0;
}
.float-water.water03 {
  bottom: -50px;
  right: -50px;
}

/**
 * Profile
 */
.profile-navi {
  position: relative;
}

.profile-navi-ttl {
  font-weight: 200;
  position: absolute;
  top: -20%;
  left: 50%;
  transform: translateX(-50%);
  line-height: 1;
}

.profile-index {
  display: grid;
  grid-template-columns: repeat(2, auto);
  grid-template-rows: 1fr;
  align-items: center;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .profile-index {
    grid-template-columns: repeat(4, auto);
  }
}
.profile-index p {
  width: -moz-max-content;
  width: max-content;
}

.lonp-action {
  grid-template-columns: 1fr;
  max-width: 1294px;
}
@media screen and (min-width: 768px) {
  .lonp-action {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.lonp-action > div {
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
}
.lonp-action > div > div p {
  font-weight: 200;
}
.lonp-action > div > div h3 {
  margin-bottom: 0;
}
.lonp-action-01 {
  background: url(../img/profile-act-01-bg.png) no-repeat top center;
  background-size: contain;
}

.lonp-action-02 {
  background: url(../img/profile-act-02-bg.png) no-repeat top center;
  background-size: contain;
}

.lonp-action-03 {
  background: url(../img/profile-act-03-bg.png) no-repeat top center;
  background-size: contain;
}

.lonp-action-04 {
  background: url(../img/profile-act-04-bg.png) no-repeat top center;
  background-size: contain;
}

.lonp-profile,
.lonp-history,
.lonp-chart,
.lonp-list {
  padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--50) !important;
  word-break: auto-phrase;
}
@media screen and (min-width: 768px) {
  .lonp-profile,
  .lonp-history,
  .lonp-chart,
  .lonp-list {
    padding-top: var(--wp--preset--spacing--70) !important;
    padding-bottom: var(--wp--preset--spacing--90) !important;
    padding-left: var(--wp--preset--spacing--80) !important;
    padding-right: var(--wp--preset--spacing--80) !important;
  }
}
.lonp-profile dl > div,
.lonp-history dl > div,
.lonp-chart dl > div,
.lonp-list dl > div {
  display: flex;
  flex-wrap: wrap;
  padding-top: var(--wp--preset--spacing--40);
  padding-bottom: var(--wp--preset--spacing--40);
}
.lonp-profile dl > div dt,
.lonp-history dl > div dt,
.lonp-chart dl > div dt,
.lonp-list dl > div dt {
  margin: 1em 0 0.5em;
}
.lonp-profile dl > div dd,
.lonp-history dl > div dd,
.lonp-chart dl > div dd,
.lonp-list dl > div dd {
  flex-basis: 100%;
  margin-left: 0;
}
@media screen and (min-width: 768px) {
  .lonp-profile dl > div,
  .lonp-history dl > div,
  .lonp-chart dl > div,
  .lonp-list dl > div {
    padding-top: var(--wp--preset--spacing--60);
    padding-bottom: var(--wp--preset--spacing--60);
    display: grid;
    border-bottom: 1px solid #d4d4d4;
  }
  .lonp-profile dl > div dt,
  .lonp-history dl > div dt,
  .lonp-chart dl > div dt,
  .lonp-list dl > div dt {
    margin: 0;
  }
}

.lonp-profile dl > div {
  grid-template-columns: 12em 1fr;
}

.lonp-history dl > div {
  grid-template-columns: 14em 8em 1fr;
  line-height: 1.6;
}
.lonp-chart dl > div {
  grid-template-columns: 12em 1fr;
}

.lonp-list dl > div {
  grid-template-columns: 8em 1fr;
}

/**
 * Waterproof
 */
.waterproof-navi {
  position: relative;
}

.waterproof-navi-ttl {
  font-weight: 200;
  position: absolute;
  top: -20%;
  left: 50%;
  transform: translateX(-50%);
  line-height: 1;
}

.waterproof-index {
  display: grid;
  grid-template-columns: repeat(1, auto);
  grid-template-rows: 1fr;
  align-items: center;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .waterproof-index {
    grid-template-columns: repeat(3, auto);
  }
}
.waterproof-index p {
  width: -moz-max-content;
  width: max-content;
}

.waterproof-rooftop {
  max-width: 800px;
}

.waterproof-feature {
  max-width: 1120px;
}

.waterproof-flow-group {
  max-width: 980px;
}

.waterproof-flow {
  max-width: 980px;
}

@media screen and (min-width: 768px) {
  .waterproof-flow-contact ul {
    display: flex;
    flex-wrap: wrap;
  }
  .waterproof-flow-contact li {
    width: 50%;
  }
}

/**
 * Link
 */
.lonp-link {
  padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--50) !important;
  word-break: auto-phrase;
}
@media screen and (min-width: 768px) {
  .lonp-link {
    padding-top: var(--wp--preset--spacing--70) !important;
    padding-bottom: var(--wp--preset--spacing--90) !important;
    padding-left: var(--wp--preset--spacing--80) !important;
    padding-right: var(--wp--preset--spacing--80) !important;
  }
}
.lonp-link dl > div {
  display: flex;
  flex-wrap: wrap;
  padding-top: var(--wp--preset--spacing--40);
  padding-bottom: var(--wp--preset--spacing--40);
}
.lonp-link dl > div dt {
  margin: 1em 0 0.5em;
  font-weight: 700;
}
.lonp-link dl > div dd {
  flex-basis: 100%;
  margin-left: 0;
}
@media screen and (min-width: 768px) {
  .lonp-link dl > div {
    padding-top: var(--wp--preset--spacing--60);
    padding-bottom: var(--wp--preset--spacing--60);
    display: grid;
    border-bottom: 1px solid #d4d4d4;
  }
  .lonp-link dl > div dt {
    margin: 0;
  }
}

.lonp-link dl > div {
  grid-template-columns: 20em 1fr;
}

/**
 * Contact
 */
.contact-form-group {
  max-width: 800px;
}

/*============================
.snow-monkey-form
============================*/
.snow-monkey-form {
  padding-top: var(--wp--preset--spacing--50);
  padding-bottom: var(--wp--preset--spacing--50);
}

.wp-block-snow-monkey-forms-item.smf-item {
  padding-bottom: var(--wp--preset--spacing--40);
}

.smf-checkboxes-control__control {
  display: flex;
  justify-content: center;
  align-items: center;
}

.smf-form .smf-checkbox-control {
  align-items: center;
  cursor: pointer;
}

.smf-action {
  display: flex;
  justify-content: center;
  align-items: center;
}

.smf-action .smf-button-control__control {
  border: none;
  border-radius: 10px;
  background: linear-gradient(90deg, rgb(29, 88, 251) 0%, rgb(23, 71, 167) 100%);
  padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--50);
  font-family: var(--wp--preset--font-family--zen-maru-gothic);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-size: medium;
  color: white;
}

.smf-action .smf-button-control__control:hover {
  filter: brightness(1.1) saturate(2);
}

.snow-monkey-form[data-screen=confirm] .smf-item__label {
  font-weight: 700;
}
.snow-monkey-form[data-screen=confirm] .form-privacy {
  display: none;
}
.snow-monkey-form[data-screen=confirm] .wp-block-snow-monkey-forms-item.smf-item {
  border-bottom: 1px solid lightgray;
  margin-bottom: 10px;
}

/**
 * Login
 */
.swpm-login-widget-form input:where(:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit])),
.swpm-login-widget-form textarea,
.swpm-login-widget-form select,
.swpm-pw-reset-widget-form input:where(:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit])),
.swpm-pw-reset-widget-form textarea,
.swpm-pw-reset-widget-form select,
.swpm-validate-form input:where(:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit])),
.swpm-validate-form textarea,
.swpm-validate-form select {
  width: 100%;
  border: 1px solid lightgray;
  border-radius: 5px;
}
.swpm-login-widget-form input[type=submit],
.swpm-pw-reset-widget-form input[type=submit],
.swpm-validate-form input[type=submit] {
  width: 100%;
  max-width: 300px;
  border-radius: 10px;
  background: linear-gradient(90deg, rgb(29, 88, 251) 0%, rgb(23, 71, 167) 100%);
  padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--50);
  font-family: var(--wp--preset--font-family--zen-maru-gothic);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-size: medium;
}
.swpm-login-widget-form input[type=submit]:hover,
.swpm-pw-reset-widget-form input[type=submit]:hover,
.swpm-validate-form input[type=submit]:hover {
  filter: brightness(1.1) saturate(2);
}

.swpm-login-form-inner {
  padding-top: var(--wp--preset--spacing--50);
  padding-bottom: var(--wp--preset--spacing--50);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.swpm-remember-me {
  padding-top: var(--wp--preset--spacing--60);
  width: 100%;
}

.swpm-before-login-submit-section {
  padding-top: var(--wp--preset--spacing--40);
}

.swpm-login-submit {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.swpm-forgot-pass-link {
  padding-top: var(--wp--preset--spacing--60);
  width: 100%;
}

.swpm-join-us-link {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .swpm-login-form-inner {
    flex-direction: row;
    max-width: 500px;
    margin-right: auto;
    margin-left: auto;
  }
  .swpm-username-label {
    width: 30%;
  }
  .swpm-label {
    width: 50%;
  }
  .swpm-username-input {
    width: 70%;
  }
  .swpm-password-label {
    width: 30%;
  }
  .swpm-password-input {
    width: 70%;
  }
}
/**
 * Member Store List
 */
.member-list-index {
  padding-left: 60px;
  grid-template-columns: 1fr 1fr;
}
@media screen and (min-width: 768px) {
  .member-list-index {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}

.member-store dl > div {
  display: flex;
  border-bottom: 1px solid #d4d4d4;
}
.member-store dl > div dt,
.member-store dl > div dd {
  flex-basis: 50%;
}

#jpn-map svg {
  max-width: 100%;
}
#jpn-map {
  /* 地図にマウスオーバーしたら色を変える */
}
#jpn-map a:hover g path {
  fill: green;
}
#jpn-map a:hover g rect ~ path {
  fill: white;
}

/* 
#imagemap {
  margin: 0px auto;
  padding: 0px;
  background: url(../img/jpn_map.png) top left no-repeat;
  width: 550px;
  height: 450px;
  position: relative;
}
#imagemap li {
  margin: 0px;
  padding: 0px;
  position: absolute;
  list-style: none;
  font-size: 14px;
}
#imagemap a {
  position: absolute;
}
#hokkaido {
  top: 0px;
  left: 380px;
}
#hokkaido a {
  width: 150px;
  height: 125px;
}
#hokkaido a:hover {
  background: url(../img/jpn_map.png) -380px -450px no-repeat;
}
#tohoku {
  top: 125px;
  left: 360px;
}
#tohoku a {
  width: 118px;
  height: 134px;
}
#tohoku a:hover {
  background: url(../img/jpn_map.png) -360px -1025px no-repeat;
}
#kanto {
  top: 260px;
  left: 335px;
}
#kanto a {
  width: 128px;
  height: 135px;
}
#kanto a:hover {
  background: url(../img/jpn_map.png) -335px -1610px no-repeat;
}
#shinnetu {
  top: 205px;
  left: 329px;
}
#shinnetu a {
  width: 60px;
  height: 151px;
}
#shinnetu a:hover {
  background: url(../img/jpn_map.png) -259px -2005px no-repeat;
}
#hokuriku {
  top: 205px;
  left: 260px;
}
#hokuriku a {
  width: 80px;
  height: 100px;
}
#hokuriku a:hover {
  background: url(../img/jpn_map.png) -259px -2005px no-repeat;
}
#tokai {
  top: 260px;
  left: 259px;
}
#tokai a {
  width: 102px;
  height: 152px;
}
#tokai a:hover {
  background: url(../img/jpn_map.png) -259px -2511px no-repeat;
}
#kansai {
  top: 276px;
  left: 206px;
}
#kansai a {
  width: 94px;
  height: 137px;
}
#kansai a:hover {
  background: url(../img/jpn_map.png) -206px -2976px no-repeat;
}
#chugoku {
  top: 276px;
  left: 134px;
}
#chugoku a {
  width: 85px;
  height: 73px;
}
#chugoku a:hover {
  background: url(../img/jpn_map.png) -134px -3426px no-repeat;
}
#shikoku {
  top: 360px;
  left: 125px;
}
#shikoku a {
  width: 97px;
  height: 52px;
}
#shikoku a:hover {
  background: url(../img/jpn_map.png) -124px -3960px no-repeat;
}
#kyushu {
  top: 276px;
  left: 13px;
}
#kyushu a {
  width: 120px;
  height: 141px;
}
#kyushu a:hover {
  background: url(../img/jpn_map.png) -13px -4326px no-repeat;
}
*/
.member-area-ttl {
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
  padding-top: var(--wp--preset--spacing--40);
  padding-right: var(--wp--preset--spacing--60);
  padding-bottom: var(--wp--preset--spacing--40);
  padding-left: var(--wp--preset--spacing--60);
  background-color: var(--wp--preset--color--lonp-blue);
  color: white;
}

.member-query {
  background-color: white;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
}
.member-query ul {
  padding: 20px;
}
.member-query ul li {
  border-bottom: 1px solid gainsboro;
  padding-bottom: 20px;
  padding-top: 20px;
}
.member-query ul li > div {
  flex-direction: column;
  gap: 5px;
}
.member-query ul li > div > div {
  gap: 5px;
  width: 100%;
}
.member-query ul li > div > div > div {
  gap: 0;
  flex-wrap: wrap;
}
.member-query ul li > div > div > div + div {
  flex-wrap: nowrap;
  width: 100%;
}
.member-query ul li .member-zip {
  margin-right: 20px;
  width: 120px;
}
.member-query ul li .member-address {
  width: 100%;
  padding-left: 60px;
}
.member-query ul li .wp-block-buttons > div {
  width: 100%;
}
.member-query .wp-block-post-title {
  width: 100%;
}

.member-url-btn:has(a[href=""]) {
  display: none;
}

@media screen and (min-width: 768px) {
  .member-query ul li > div {
    flex-direction: row;
  }
  .member-query ul li > div > div {
    gap: 10px;
    width: 60%;
  }
  .member-query ul li > div > div > div {
    flex-wrap: nowrap;
  }
  .member-query ul li .member-zip {
    width: auto;
  }
  .member-query ul li .member-address {
    width: auto;
    padding-left: 0;
  }
  .member-query ul li .wp-block-buttons > div {
    /*            width: 200px; */
  }
  .member-query .wp-block-post-title {
    max-width: 400px;
    width: 40%;
  }
}
/**
 * Member LJ 会報誌
 */
.lj-grid .wp-block-image img {
  width: 80px;
}

.lj-latest .wp-block-lazyblock-pdf-thumb img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 300px;
}

/**
 * Member 映像
 */
.member-video-dl > div {
  display: flex;
  flex-direction: column;
  margin-bottom: 0.5em;
}
.member-video-dl > div > dt {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .member-video-dl > div {
    flex-direction: row;
    flex-wrap: wrap;
  }
  .member-video-dl > div > dt {
    width: 20em;
  }
  .member-video-dl > div > dd {
    width: auto;
    margin-left: 0;
  }
}
/**
 * Member 公開情報（その他資料）
 */
.c-member-pdf img {
  border: 1px solid lightgray;
  height: 250px;
  width: auto;
}
.c-member-pdf .pdf-text {
  font-size: var(--wp--preset--font-size--small);
}

/**
 * Portfolio
 */
.portfolio-index {
  grid-template-columns: repeat(1, auto);
  grid-template-rows: 1fr;
  align-items: center;
  justify-content: center;
}

@media screen and (min-width: 768px) {
  .portfolio-index {
    grid-template-columns: repeat(2, auto);
  }
}
/* 検索 */
.vkfs__taxonomy label {
  /*	word-break: auto-phrase; */
  word-break: keep-all;
}

.vkfs__labels {
  justify-content: center;
}

.vkfs__outer-wrap {
  flex-basis: 260px !important;
}

.portfolio-wrapper {
  overflow-x: auto;
}

.portfolio-header {
  width: -moz-fit-content;
  width: fit-content;
  gap: 0;
  padding-block: 0.5em;
  padding-inline: 0.5em;
  text-align: center;
  font-weight: bold;
  border-top: 1px solid gray;
  border-bottom: 1px solid gray;
}
.portfolio-header p {
  flex-shrink: 0;
}

.portfolio-body li {
  width: -moz-fit-content;
  width: fit-content;
  border-bottom: 2px dotted lightgray;
}

.portfolio-items {
  gap: 0;
  padding-block: 0.25em;
  padding-inline: 0.5em;
}
.portfolio-items div, .portfolio-items h2, .portfolio-items p {
  flex-shrink: 0;
}

.taxonomy-portfolio-type {
  flex-basis: 100px;
}

.portfolio-items .taxonomy-portfolio-type {
  text-align: center;
}

.portfolio-title {
  flex-basis: 275px;
}

.taxonomy-portfolio-pref {
  flex-basis: 70px;
}

.portfolio-items .taxonomy-portfolio-pref {
  text-align: center;
}

.taxonomy-portfolio-sheet {
  flex-basis: 180px;
}

.taxonomy-portfolio-method {
  flex-basis: 180px;
}

.portfolio-method-symbol {
  flex-basis: 115px;
}

.portfolio-area {
  flex-basis: 100px;
}

.portfolio-items .portfolio-area {
  padding-right: 1em;
}

.taxonomy-portfolio-year {
  flex-basis: 50px;
}

.portfolio-items .taxonomy-portfolio-year {
  text-align: center;
}

.taxonomy-portfolio-month {
  flex-basis: 50px;
}

.portfolio-items .taxonomy-portfolio-month {
  text-align: right;
  padding-right: 1em;
}

.wp-block-post-terms {
  word-break: auto-phrase;
}

/**
 * CAD
 */
.cad-download {
  border: 1px solid var(--wp--preset--color--lonp-blue);
  background-color: var(--wp--preset--color--lonp-aqua);
  padding: var(--wp--preset--spacing--40);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--wp--preset--spacing--30);
  flex-direction: column;
  align-items: center;
  border-radius: 10px;
}

h4.cad-name {
  font-size: var(--wp--preset--font-size--medium);
}

@media print {
  header.wp-block-template-part,
  footer.wp-block-template-part {
    display: none;
  }
}/*# sourceMappingURL=style.css.map */