@charset "UTF-8";
/* min / max maps（OK） */
/* mixins（map キー存在チェックを追加すると安全） */
/* 個別 alias（必要なら） */
/* 色の定義
--------------------------------------------------*/
/* テキストパーツ
--------------------------------------------------*/
.white {
  color: #FFFFFF;
}

.blue {
  color: #006CB7;
}

.sky-blue {
  color: #009BDF;
}

.light-sky-blue {
  color: #E8F8FF;
}

.black {
  color: #2F3134;
}

.gray {
  color: #7A9098;
}

.light-gray {
  color: #D9D9D9;
}

.lighter-gray {
  color: #F4F7FB;
}

.text-shadow {
  color: 0 0 4px rgba(0, 0, 0, 0.25);
}

/* フォントの定義
--------------------------------------------------*/
html, body, ul, ol, dl, li, dt, dd, p, div, span, img, svg, a, table, tr, th, td, figure, button {
  font-family: "Zen Kaku Gothic New", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Noto Sans JP", "Yu Gothic", "游ゴシック体", sans-serif;
  font-style: normal;
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.65;
  color: #2F3134;
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  html, body, ul, ol, dl, li, dt, dd, p, div, span, img, svg, a, table, tr, th, td, figure, button {
    font-size: 1.4rem;
  }
}

h1, h2, h3, h4 {
  font-family: inherit;
  font-style: normal;
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.65;
  color: #2F3134;
}

body {
  font-family: inherit;
  font-style: normal;
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.65;
}

html {
  font-size: 62.5%;
}

p {
  font-family: inherit;
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 1.65;
  letter-spacing: 0.08em;
  color: #2F3134;
}
@media screen and (min-width: 769px) {
  p {
    font-size: 1.6rem;
    line-height: 1.65;
  }
}

.lato-regular {
  font-family: "Lato", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.lato-bold {
  font-family: "Lato", sans-serif;
  font-weight: 700;
  font-style: normal;
}

/* reset
--------------------------------------------------*/
html, body, h1, h2, h3, h4, ul, ol, dl, li, dt, dd, p, div, span, img, svg, a, table, tr, th, td, figure {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

body, p {
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 1.4;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}
@media screen and (min-width: 769px) {
  body, p {
    font-size: 1.5rem;
    line-height: 1.5;
  }
}

h1, h2, h3, h4 {
  line-height: 1.2;
}
@media screen and (min-width: 769px) {
  h1, h2, h3, h4 {
    line-height: 1.4;
  }
}

article, header, footer, aside, figure, figcaption, nav, section {
  display: block;
}

ol, ul, li {
  list-style: none;
}

a {
  text-decoration: none;
  transition: 0.3s;
  cursor: pointer;
}

a:hover {
  opacity: 0.7;
}

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

:focus {
  border-style: none;
  outline: none;
}

/* ie11以下のテキストルール */
@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, body {
    font-family: Century, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  }
}
:focus {
  border-style: none;
  outline: none;
}

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

textarea {
  resize: vertical;
}

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

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

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

article {
  overflow-wrap: break-word;
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
a:hover,
a:focus,
a:active {
  opacity: 1;
  color: inherit;
  text-decoration: none;
}

/* 下層メインビジュアル
--------------------------------------------------*/
/*-----------------------------------------
※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。
-----------------------------------------*/
/*-----------------------------------------
SP（デフォルト）用スタイル
-----------------------------------------*/
/* ヘッダー全体 */
.site-header {
  background-color: #FFFFFF;
  height: 60px;
  display: flex;
  align-items: center;
  padding: 0;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  /* ロゴエリア */
  /* ===== SP：ドロワーナビ（デフォルト） ===== */
  /* ADDED：オーバーレイ（任意。HTMLに要素があれば有効） */
  /* ADDED：開いた状態（header に .nav-open を付与） */
  /* メニューボタン */
  /* タップ中のフィードバック：ほんの少し縮む＋白ベール */
}
@media screen and (min-width: 1000px) {
  .site-header {
    height: 80px;
  }
}
.site-header .header-inner {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  box-sizing: border-box;
}
.site-header .logo-area {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 8px 0 8px 10px;
  width: auto;
  height: auto;
  overflow: visible;
}
@media screen and (min-width: 1000px) {
  .site-header .logo-area {
    padding: 9px 0 15px 20px;
  }
}
.site-header .logo-area .logo-subtitle {
  font-size: clamp(8px, 2.5641025641vw, 10px);
  font-weight: 500;
  color: #7A9098;
  margin: 0 0 clamp(3px, 1.2820512821vw, 5px) 0;
  white-space: nowrap;
}
@media screen and (min-width: 1000px) {
  .site-header .logo-area .logo-subtitle {
    font-size: clamp(10px, 0.8571428571vw, 12px);
    margin: 0 0 clamp(5px, 0.4285714286vw, 6px) 0;
  }
}
.site-header .logo-area .logo-img {
  width: clamp(140px, 44.8717948718vw, 175px);
  height: auto;
  object-fit: contain;
}
@media screen and (min-width: 1000px) {
  .site-header .logo-area .logo-img {
    width: clamp(175px, 16.7857142857vw, 235px);
    height: auto;
  }
}
.site-header .global-nav {
  position: fixed;
  top: 60px;
  left: 0;
  right: 0;
  width: 100%;
  height: calc(100vh - 60px);
  background-color: #F4F7FB;
  transform: translateX(100%);
  transition: transform 0.3s ease;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  box-sizing: border-box;
  padding: 40px 20px 60px;
  scrollbar-gutter: stable both-edges;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  /* 縦レイアウト（SP） */
  /* 親メニュークリックで開いた時の色 */
}
@media screen and (min-width: 1000px) {
  .site-header .global-nav {
    position: static;
    width: auto;
    height: 80px;
    top: auto;
    left: auto;
    right: auto;
    transform: none;
    box-shadow: none;
    background-color: transparent;
    overflow: visible;
    padding: 0;
    margin-left: auto;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
  }
}
.site-header .global-nav ul {
  display: flex;
  flex-direction: column;
  gap: 20px;
  list-style: none;
  padding: 0;
  margin: 0;
  width: 100%;
}
@media screen and (min-width: 1000px) {
  .site-header .global-nav ul {
    flex-direction: row;
    gap: 0px;
    list-style: none;
    align-items: center;
    height: 80px;
    width: auto;
  }
}
.site-header .global-nav .main-menu li {
  position: relative;
  padding-bottom: 20px;
  border-bottom: 1px solid #D9D9D9;
  align-items: center;
  display: flex;
}
@media screen and (min-width: 1000px) {
  .site-header .global-nav .main-menu li {
    display: flex;
    align-items: center;
    border-bottom: none;
    gap: 0;
    padding: 0;
    width: auto;
  }
  .site-header .global-nav .main-menu li a[href="./privacy.html"],
  .site-header .global-nav .main-menu li a[href="./sitemap.html"] {
    display: none;
  }
}
.site-header .global-nav .main-menu li .current {
  color: #006CB7;
}
.site-header .global-nav .arrow-pc {
  margin-left: 8px;
}
@media screen and (min-width: 1000px) {
  .site-header .global-nav .special-menu .square-link {
    transition: 0.3s;
  }
  .site-header .global-nav .special-menu .square-link:hover {
    opacity: 0.6;
  }
  .site-header .global-nav .main-menu li.has-submenu button.submenu-toggle .arrow-pc {
    display: inline-block;
    width: 6px;
    height: 6px;
    margin-left: 11px;
    position: relative;
    transform: rotate(-45deg);
  }
  .site-header .global-nav .main-menu li.has-submenu button.submenu-toggle .arrow-pc::before, .site-header .global-nav .main-menu li.has-submenu button.submenu-toggle .arrow-pc::after {
    content: "";
    position: absolute;
    background-color: #7A9098;
    transition: background-color 0.5s ease;
  }
  .site-header .global-nav .main-menu li.has-submenu button.submenu-toggle .arrow-pc::before {
    width: 1px;
    height: 6px;
    top: 0;
    left: 0;
  }
  .site-header .global-nav .main-menu li.has-submenu button.submenu-toggle .arrow-pc::after {
    width: 6px;
    height: 1px;
    bottom: 0;
    left: 0;
  }
  .site-header .global-nav .main-menu li.has-submenu button.submenu-toggle:hover .arrow-pc::before, .site-header .global-nav .main-menu li.has-submenu button.submenu-toggle:hover .arrow-pc::after, .site-header .global-nav .main-menu li.has-submenu button.submenu-toggle:focus .arrow-pc::before, .site-header .global-nav .main-menu li.has-submenu button.submenu-toggle:focus .arrow-pc::after {
    background-color: #006CB7;
  }
}
.site-header .global-nav .main-menu .divider {
  display: none;
}
@media screen and (min-width: 1000px) {
  .site-header .global-nav .main-menu .divider {
    display: block;
    width: 1px;
    height: 20px;
    background-color: #D9D9D9;
    align-self: center;
    list-style: none;
    pointer-events: none;
  }
}
.site-header .global-nav .main-title,
.site-header .global-nav button.submenu-toggle {
  color: inherit;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 0;
  box-sizing: border-box;
  line-height: 1;
  font-size: 18px;
  transition: color 0.5s ease;
}
@media screen and (min-width: 1000px) {
  .site-header .global-nav .main-title,
  .site-header .global-nav button.submenu-toggle {
    font-size: clamp(12px, 1.1428571429vw, 16px);
    color: #2F3134;
    background: none;
    border: none;
    font-family: inherit;
    line-height: clamp(20px, 1.8571428571vw, 26px);
    display: flex;
    align-items: center;
    text-decoration: none;
    position: relative;
    transition: color 0.5s ease;
    padding: clamp(12px, 1vw, 30px);
  }
}
.site-header .global-nav .main-title:hover, .site-header .global-nav .main-title:focus,
.site-header .global-nav button.submenu-toggle:hover,
.site-header .global-nav button.submenu-toggle:focus {
  color: #006CB7;
}
.site-header .global-nav:hover .spmenu-plus, .site-header .global-nav:focus .spmenu-plus {
  color: #006CB7;
}
.site-header .global-nav .spmenu-arrow {
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  color: #7A9098;
}
@media screen and (min-width: 1000px) {
  .site-header .global-nav .spmenu-arrow {
    display: none;
  }
}
.site-header .global-nav .has-submenu {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.site-header .global-nav .submenu-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}
.site-header .global-nav .submenu-header .spmenu-plus {
  position: relative;
  width: 15px;
  height: 15px;
  color: #7A9098;
  cursor: pointer;
  /* 横棒 */
  /* 縦棒 */
}
@media screen and (min-width: 1000px) {
  .site-header .global-nav .submenu-header .spmenu-plus {
    display: none;
  }
}
.site-header .global-nav .submenu-header .spmenu-plus::before, .site-header .global-nav .submenu-header .spmenu-plus::after {
  content: "";
  position: absolute;
  background-color: currentColor;
}
.site-header .global-nav .submenu-header .spmenu-plus::before {
  top: 50%;
  left: 0;
  width: 15px;
  height: 1px;
  transform: translateY(-50%);
}
.site-header .global-nav .submenu-header .spmenu-plus::after {
  left: 50%;
  top: 0;
  width: 1px;
  height: 15px;
  transform: translateX(-50%);
}
.site-header .global-nav .has-submenu.open {
  /* プラスアイコンも青に */
}
.site-header .global-nav .has-submenu.open .submenu-header .submenu-toggle {
  color: #006CB7;
}
.site-header .global-nav .has-submenu.open .submenu-header .spmenu-plus {
  color: #006CB7;
}
.site-header .global-nav .has-submenu.open .submenu-header .spmenu-plus::after {
  display: none;
}
.site-header .global-nav button.submenu-toggle {
  appearance: none;
  -webkit-appearance: none;
  background: none;
  border: 0;
  margin: 0;
  cursor: pointer;
}
.site-header .global-nav .submenu {
  display: none;
  flex-direction: column;
  padding: 20px 2px 0 2px;
  gap: 13px;
  list-style: none;
}
.site-header .global-nav .submenu li {
  padding: 0;
  border-bottom: none;
}
.site-header .global-nav .submenu li a {
  position: relative;
  padding-left: 12px;
  color: #7A9098;
  text-decoration: none;
  font-size: 14px;
  transition: color 0.25s ease;
}
.site-header .global-nav .submenu li a::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 6px;
  height: 1px;
  background-color: #D9D9D9;
  transition: background-color 0.25s ease;
}
.site-header .global-nav .submenu li a:hover {
  color: #006CB7;
}
.site-header .global-nav .submenu li a:hover::before {
  background-color: #006CB7;
}
.site-header .global-nav {
  display: none;
}
@media screen and (min-width: 1000px) {
  .site-header .global-nav {
    display: block;
    position: static;
    width: auto;
    height: 80px;
    top: auto;
    left: auto;
    right: auto;
    transform: none;
    box-shadow: none;
    background-color: transparent;
    overflow: visible;
    padding: 0;
    margin-left: auto;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
  }
  .site-header .global-nav ul {
    display: flex;
    flex-direction: row;
    gap: 0px;
    list-style: none;
    padding: 0;
    margin: 0;
    align-items: center;
    height: 80px;
    width: auto;
  }
  .site-header .global-nav .main-menu li {
    display: flex;
    align-items: center;
    border-bottom: none;
    gap: 0;
    padding: 0;
    width: auto;
  }
  .site-header .global-nav .main-menu li.has-submenu {
    position: relative;
    /* 親メニューをホバーしたらサブメニュー表示 */
  }
  .site-header .global-nav .main-menu li.has-submenu .submenu {
    position: absolute;
    top: calc(100% - 11px);
    left: 50%;
    transform: translateX(-50%);
    background-color: #FFFFFF;
    border-radius: 10px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    display: flex;
    flex-direction: column;
    list-style: none;
    padding: 30px 30px;
    transition: opacity 0.5s ease, visibility 0.5s ease;
    width: 244px;
    height: auto;
    gap: 0;
    align-items: flex-start;
  }
  .site-header .global-nav .main-menu li.has-submenu .submenu li {
    text-align: left;
    white-space: nowrap;
    margin-bottom: 20px;
    transition: color 0.5s ease;
  }
  .site-header .global-nav .main-menu li.has-submenu .submenu li:last-child {
    margin-bottom: 0;
  }
  .site-header .global-nav .main-menu li.has-submenu .submenu li a {
    font-size: clamp(12px, 1.1428571429vw, 16px);
    color: #7A9098;
    text-decoration: none;
    transition: color 0.5s ease;
  }
  .site-header .global-nav .main-menu li.has-submenu .submenu li::before {
    transition: background-color 0.5s ease;
  }
  .site-header .global-nav .main-menu li.has-submenu .submenu li:hover a {
    color: #006CB7;
  }
  .site-header .global-nav .main-menu li.has-submenu:hover > .submenu, .site-header .global-nav .main-menu li.has-submenu:focus-within > .submenu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
  .site-header .global-nav #submenu-value {
    width: max-content;
  }
  .site-header .global-nav .special-menu .square-link > .contact-link:active {
    background-color: #009BDF;
    background-color: inherit;
    border: none;
  }
  .site-header .global-nav .special-menu .square-link > .contact-link:active .special-text {
    color: #FFFFFF;
  }
  .site-header .global-nav .special-menu .square-link > .contact-link:active .icon {
    content: inherit;
  }
}
.site-header .nav-overlay {
  position: fixed;
  inset: 60px 0 0 0; /* ヘッダー下から */
  background: #D9D9D9;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  z-index: 999;
}
.site-header.nav-open .global-nav {
  transform: translateX(0);
}
.site-header.nav-open .nav-overlay {
  opacity: 1;
  visibility: visible;
}
.site-header .special-menu {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (min-width: 1000px) {
  .site-header .special-menu {
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
    width: clamp(100px, 11.4285714286vw, 160px);
    margin: 0;
    padding: 0;
    list-style: none;
    gap: 0;
  }
  .site-header .special-menu .square-link {
    width: 80px;
    height: 80px;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    text-align: center;
    color: #FFFFFF;
    cursor: pointer;
  }
}
.site-header .special-menu .square-link:first-child {
  display: none;
}
@media screen and (min-width: 1000px) {
  .site-header .special-menu .square-link:first-child {
    display: block;
    background-color: #006CB7;
  }
  .site-header .special-menu .square-link:first-child a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    width: 100%;
    height: 100%;
    gap: 3px;
    padding: 0 0 12px 0;
  }
  .site-header .special-menu .square-link:first-child img.icon {
    width: 33px;
    height: 29px;
  }
  .site-header .special-menu .square-link:first-child .special-text {
    color: #FFFFFF;
    font-weight: 700;
    font-size: 11px;
  }
}
.site-header .special-menu .square-link:nth-child(2) {
  margin: 30px auto 0;
  width: clamp(240px, 88vw, 300px);
  height: 60px;
  /* 矢印 */
  /* 押してる間だけ */
}
@media screen and (min-width: 1000px) {
  .site-header .special-menu .square-link:nth-child(2) {
    margin: 0;
    width: 80px;
    height: 80px;
  }
}
.site-header .special-menu .square-link:nth-child(2) a {
  background-color: #009BDF;
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  height: 100%;
  color: #FFFFFF;
  font-size: 16px;
  text-decoration: none;
  padding: 0 20px 0 36px;
  box-sizing: border-box;
  transition: all 0.5s ease;
}
@media screen and (min-width: 1000px) {
  .site-header .special-menu .square-link:nth-child(2) a {
    padding: 23px 0 12px 0;
    justify-content: center;
    border-radius: 0;
  }
}
.site-header .special-menu .square-link:nth-child(2) .contact-left {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}
@media screen and (min-width: 1000px) {
  .site-header .special-menu .square-link:nth-child(2) .contact-left {
    flex-direction: column;
    gap: 6px;
  }
}
.site-header .special-menu .square-link:nth-child(2) img.icon {
  width: 23px;
  height: 19px;
  flex-shrink: 0;
}
@media screen and (min-width: 1000px) {
  .site-header .special-menu .square-link:nth-child(2) img.icon {
    width: 27px;
    height: 22px;
  }
}
.site-header .special-menu .square-link:nth-child(2) .special-text {
  font-size: 16px;
  font-weight: 700;
  color: #FFFFFF;
}
@media screen and (min-width: 1000px) {
  .site-header .special-menu .square-link:nth-child(2) .special-text {
    font-size: 11px;
  }
}
.site-header .special-menu .square-link:nth-child(2) .arrow-small {
  color: #FFFFFF;
  display: inline-block;
  width: 8px;
  height: 8px;
  position: relative;
  transform: rotate(-135deg);
  flex-shrink: 0;
  transition: background-color 0.5s ease;
}
.site-header .special-menu .square-link:nth-child(2) .arrow-small::before, .site-header .special-menu .square-link:nth-child(2) .arrow-small::after {
  content: "";
  position: absolute;
  background-color: currentColor;
}
.site-header .special-menu .square-link:nth-child(2) .arrow-small::before {
  width: 1px;
  height: 100%;
  left: 0;
  top: 0;
}
.site-header .special-menu .square-link:nth-child(2) .arrow-small::after {
  width: 100%;
  height: 1px;
  left: 0;
  bottom: 0;
}
@media screen and (min-width: 1000px) {
  .site-header .special-menu .square-link:nth-child(2) .arrow-small {
    display: none;
  }
}
.site-header .special-menu .square-link:nth-child(2) a:active {
  background-color: #FFFFFF;
  color: #009BDF;
  border: 1px solid #009BDF;
}
.site-header .special-menu .square-link:nth-child(2) a:active .special-text,
.site-header .special-menu .square-link:nth-child(2) a:active .arrow-small {
  color: #009BDF;
}
.site-header .special-menu .square-link:nth-child(2) a:active .icon {
  content: url(../img/common/contact-sp.svg);
}
.site-header .recruit-sp {
  margin-top: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (min-width: 1000px) {
  .site-header .recruit-sp {
    display: none;
  }
}
.site-header .recruit-sp a {
  display: block;
  width: 300px;
  height: 150px;
  border-radius: 5px;
  overflow: hidden;
}
.site-header .recruit-sp a img {
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
}
.site-header .recruit-sp a:active {
  transform: scale(0.985);
}
.site-header .recruit-sp a:active::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.18);
  border-radius: 10px;
  pointer-events: none;
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/*-----------------------------------------
SP（デフォルト）用スタイル
-----------------------------------------*/
.footer-section {
  width: auto;
  height: auto;
  padding: 30px 0;
  background-color: #F4F7FB;
  border-top: 1px solid #D9D9D9;
  margin-top: 60px;
}
@media screen and (max-width: 768px) {
  .footer-section {
    padding: 30px 0px;
    margin-top: 40px;
  }
}
.footer-section .footer-box {
  background-color: #FFFFFF;
  border-radius: 20px;
  padding: 60px 5% 40px;
  flex-direction: row;
  align-items: flex-start;
  justify-content: space-between;
  display: flex;
  column-gap: 20px;
  width: 90%;
  max-width: 1400px;
  margin: auto;
  height: auto;
}
@media screen and (max-width: 999px) {
  .footer-section .footer-box {
    padding: 40px 25px 30px;
    flex-direction: column;
    align-items: center;
  }
}
.footer-section .footer-main {
  width: 300px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (min-width: 769px) {
  .footer-section .footer-main {
    align-items: flex-start;
  }
}
.footer-section .footer-main .footer-logo {
  width: 238px;
  height: auto;
}
@media screen and (min-width: 769px) {
  .footer-section .footer-main .footer-logo {
    width: 288px;
  }
}
.footer-section .footer-main .footer-line {
  width: 100px;
  height: 1px;
  background: #D9D9D9;
  margin-top: 20px;
}
@media screen and (min-width: 769px) {
  .footer-section .footer-main .footer-line {
    margin-top: 34px;
  }
}
.footer-section .footer-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  gap: 10px;
  margin: 20px 0 30px;
}
@media screen and (min-width: 769px) {
  .footer-section .footer-content {
    align-items: flex-start;
    margin: 30px 0;
  }
}
.footer-section .footer-content .footer-list {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
}
.footer-section .footer-content .footer-list .img-address {
  width: 14px;
  height: auto;
  flex-shrink: 0;
}
.footer-section .footer-content .footer-list .img-tell {
  width: 16px;
  height: auto;
  flex-shrink: 0;
}
.footer-section .footer-content .footer-list .footer-address {
  font-size: 16px;
  line-height: 1.75;
}
.footer-section .footer-content .footer-list .footer-address {
  pointer-events: none;
}
@media (max-width: 768px) {
  .footer-section .footer-content .footer-list .footer-address {
    pointer-events: auto;
  }
}
.footer-section .footer-btn {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.footer-section .footer-map {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 30px;
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 1000px) {
  .footer-section .footer-map {
    align-items: flex-end;
    justify-content: space-between;
    margin-top: 0;
    gap: 37px;
  }
}
.footer-section .footer-sitemap {
  display: block;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  width: auto;
  height: 100%;
  gap: 60px;
}
.footer-section .footer-sitemap:last-child {
  margin-right: 0;
}
@media screen and (max-width: 1199px) {
  .footer-section .footer-sitemap {
    gap: 30px;
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 999px) {
  .footer-section .footer-sitemap {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  .footer-section .footer-lists {
    display: flex;
    flex-direction: column;
    gap: 13px;
  }
  .footer-section .footer-title {
    font-size: 18px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1199px) {
  .footer-section .footer-title {
    font-size: clamp(15px, 1.5vw, 18px);
  }
}
@media screen and (min-width: 769px) {
  .footer-section .footer-sitelist {
    display: flex;
    flex-direction: column;
    gap: 13px;
    list-style: none;
  }
  .footer-section .footer-sitelist li {
    position: relative;
    padding-left: 12px;
  }
  .footer-section .footer-sitelist li a {
    font-size: 14px;
    color: #7A9098;
    transition: 0.3s;
  }
}
@media screen and (min-width: 769px) and (max-width: 1199px) {
  .footer-section .footer-sitelist li a {
    font-size: clamp(12px, 1.17vw, 14px);
  }
}
@media screen and (min-width: 769px) {
  .footer-section .footer-sitelist li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 12px;
    width: 6px;
    border-top: 1px solid #D9D9D9; /* 1px線をborderで描画 */
    transition: 0.3s;
  }
  .footer-section .footer-sitelist li:hover a {
    color: #006CB7;
  }
  .footer-section .footer-sitelist li:hover::before {
    border-top: 1px solid #006CB7; /* 1px線をborderで描画 */
  }
  .footer-section .footer-value {
    display: flex;
    flex-direction: column;
    gap: 13px;
  }
  .footer-section .footer-maintitle {
    display: flex;
    flex-direction: column;
    gap: 13px;
  }
  .footer-section .footer-maintitle p.footer-title a {
    text-decoration: none;
    transition: color 0.5s ease;
  }
  .footer-section .footer-maintitle p.footer-title a:hover {
    color: #006CB7;
  }
}
.footer-section .copy-en {
  font-size: 12px;
  line-height: 1.75;
}

/* 流用パーツ
--------------------------------------------------*/
.pc-view {
  display: none;
}
@media screen and (min-width: 769px) {
  .pc-view {
    display: block;
  }
}
@media screen and (min-width: 768px) and (max-width: 850px) {
  .pc-view.blank {
    display: none;
  }
}

.sp-view {
  display: block;
}
@media screen and (min-width: 769px) {
  .sp-view {
    display: none;
  }
}

.sp_br {
  display: none;
}
@media screen and (max-width: 768px) {
  .sp_br {
    display: block;
  }
}

.br_350 {
  display: none;
}
@media screen and (max-width: 350px) {
  .br_350 {
    display: block;
  }
}

.lg_br {
  display: none;
}
@media screen and (max-width: 999px) {
  .lg_br {
    display: block;
  }
}

.pc_br {
  display: block;
}
@media screen and (max-width: 768px) {
  .pc_br {
    display: none;
  }
}

/* 共通パーツ
--------------------------------------------------*/
/* ボタン
--------------------------------------------------*/
.btn {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 20px;
  font-weight: bold;
  border-radius: 5px;
  text-decoration: none;
  cursor: pointer;
  position: relative;
  width: 100%;
  max-width: 300px;
  height: 60px;
  font-size: 1.6rem;
  line-height: 1.75;
  transition: all 0.5s ease;
}
.btn--out_link {
  background: #009BDF;
  color: #FFFFFF;
  border: 1px solid #009BDF;
}
.btn--out_link:hover {
  background: #FFFFFF;
  color: #009BDF;
  border: 1px solid #009BDF;
}
.btn--skyblue {
  background: #009BDF;
  color: #FFFFFF;
  border: 1px solid #009BDF;
}
.btn--skyblue:hover {
  background: #FFFFFF;
  color: #009BDF;
  border: 1px solid #009BDF;
}
.btn--skyblue::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  border: 1px solid currentColor;
  border-radius: 50%;
  box-sizing: border-box;
  transition: border-color 0.3s ease;
}
.btn--skyblue::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 28px;
  width: 5px;
  height: 5px;
  border-right: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  transform: translateY(-50%) rotate(-45deg);
  transition: border-color 0.3s ease;
}

.out_link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 20px;
  font-weight: bold;
  border-radius: 5px;
  text-decoration: none;
  cursor: pointer;
  position: relative;
  width: 100%;
  max-width: 300px;
  height: 60px;
  font-size: 1.6rem;
  line-height: 1.75;
  transition: all 0.5s ease;
  color: #FFFFFF;
  background: #009BDF;
  border: 1px solid #009BDF;
}
.out_link:link, .out_link:visited {
  color: #FFFFFF;
}
.out_link::after {
  border: none;
  border-radius: 0;
  transition: 0.3s;
  position: absolute;
  display: inline-block;
  content: "";
  width: 10px;
  height: 10px;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  background: #FFFFFF;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: 100%;
  mask-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_レイヤー_1' data-name='レイヤー_1' xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 10 10'%3E%3C!-- Generator: Adobe Illustrator 29.7.1, SVG Export Plug-In . SVG Version: 2.1.1 Build 8) --%3E%3Cdefs%3E%3Cstyle%3E .st0 %7B fill: %23fff; %7D %3C/style%3E%3C/defs%3E%3Cpath class='st0' d='M.8,10c-.2,0-.4,0-.6-.2-.2-.2-.2-.4-.2-.6V.8c0-.2,0-.4.2-.6.2-.2.4-.2.6-.2h3.5c.1,0,.2,0,.3.1,0,0,.1.2.1.3s0,.2-.1.3c0,0-.2.1-.3.1H.8v8.3h8.3v-3.5c0-.1,0-.2.1-.3,0,0,.2-.1.3-.1s.2,0,.3.1c0,0,.1.2.1.3v3.5c0,.2,0,.4-.2.6s-.4.2-.6.2H.8ZM9.2,1.4L3.9,6.7c0,0-.2.1-.3.1s-.2,0-.3-.1c0,0-.1-.2-.1-.3s0-.2.1-.3L8.6.8h-2.6c-.1,0-.2,0-.3-.1,0,0-.1-.2-.1-.3s0-.2.1-.3c0,0,.2-.1.3-.1h3.6c.1,0,.2,0,.3.1,0,0,.1.2.1.3v3.6c0,.1,0,.2-.1.3,0,0-.2.1-.3.1s-.2,0-.3-.1c0,0-.1-.2-.1-.3V1.4Z'/%3E%3C/svg%3E");
}
.out_link:hover {
  background: #FFFFFF;
  color: #009BDF;
}
.out_link:hover::after {
  background: #009BDF;
}
.out_link::before {
  display: none;
}

/* About Us ボタンコンポーネント */
.about-btn-list {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 12px;
  padding: 40px 0;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .about-btn-list {
    flex-direction: column;
    gap: 8px;
    padding: 30px 0;
  }
}

.about-btn {
  width: calc(50% - 6px);
}
@media screen and (max-width: 768px) {
  .about-btn {
    max-width: 520px;
    margin: auto;
    width: 100%;
  }
}
.about-btn a {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  background-color: #FFFFFF;
  border-radius: 10px;
  border: 1px solid #D9D9D9;
  text-decoration: none;
  width: 100%;
  padding: 18.5px 20px;
  height: auto;
  transition: 0.3s;
  /* 矢印ボタン */
}
.about-btn a .about-btn-title {
  font-size: clamp(16px, 1.71vw, 24px);
  color: #006CB7;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .about-btn a .about-btn-title {
    font-size: 18px;
  }
}
.about-btn a .about-btn-arrow {
  position: relative;
  width: 20px;
  height: 20px;
  margin-left: 30px;
  flex-shrink: 0;
}
.about-btn a .about-btn-arrow::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid #006CB7;
  border-radius: 50%;
  transition: 0.3s;
  z-index: 1;
}
.about-btn a .about-btn-arrow::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 6px;
  width: 5px;
  height: 5px;
  border-right: 1px solid #006CB7;
  border-bottom: 1px solid #006CB7;
  transform: translateY(-50%) rotate(-45deg);
  transition: 0.3s;
  z-index: 2;
}
.about-btn a:hover {
  background-color: #006CB7;
}
.about-btn a:hover .about-btn-title {
  color: #FFFFFF;
}
.about-btn a:hover .about-btn-arrow::after {
  border: 1px solid #FFFFFF;
}
.about-btn a:hover .about-btn-arrow::before {
  border-right: 1px solid #FFFFFF;
  border-bottom: 1px solid #FFFFFF;
}
@media screen and (max-width: 768px) {
  .about-btn a {
    padding: 14px;
  }
}
.about-btn a .about-btn-content {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 15px;
}
.about-btn a .about-btn-content .img-wrapper {
  position: relative;
  width: 108px;
  height: 72px;
  border-radius: 8px;
  overflow: hidden;
  flex-shrink: 0;
  /* フィルター用のオーバーレイ */
}
.about-btn a .about-btn-content .img-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
@media screen and (max-width: 768px) {
  .about-btn a .about-btn-content .img-wrapper {
    width: 80px;
    height: 53px;
    border-radius: 6px;
  }
  .about-btn a .about-btn-content .img-wrapper img {
    width: 80px;
    height: 53px;
  }
}
.about-btn a .about-btn-content .img-wrapper::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: #B7BDC7;
  opacity: 0.2;
  mix-blend-mode: multiply;
  border-radius: 6px;
  pointer-events: none;
}

.sec_about_lower {
  background-color: #F4F7FB;
  width: 90%;
  max-width: 1400px;
  margin: auto;
  border-radius: 20px;
}
@media screen and (max-width: 768px) {
  .sec_about_lower {
    width: 100%;
  }
}
.sec_about_lower .about-btn-list {
  padding: 40px 5%;
}

/* 円形矢印 */
.box-arrow {
  position: relative;
  width: 20px;
  height: 20px;
  display: inline-block;
  flex-shrink: 0;
}
.box-arrow::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid #006CB7;
  border-radius: 50%;
  transition: all 0.3s ease;
  z-index: 1;
}
.box-arrow::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 6px;
  width: 5px;
  height: 5px;
  border-right: 1px solid #006CB7;
  border-bottom: 1px solid #006CB7;
  transform: translateY(-50%) rotate(-45deg);
  transition: all 0.3s ease;
  z-index: 2;
}

/* 外部リンクボタン */
.btn-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 20px;
  font-weight: 700;
  border-radius: 5px;
  text-decoration: none;
  cursor: pointer;
  width: 100%;
  max-width: 300px;
  height: 60px;
  font-size: 1.6rem;
  line-height: 1.75;
  transition: all 0.5s ease;
  background-color: #FFFFFF;
}
.btn-link .link-btn-name {
  flex: 1;
  color: #006CB7;
  transition: color 0.3s ease;
}
.btn-link .link-arrow {
  width: 20px;
  height: 20px;
  margin-left: 10px;
  transition: opacity 0.3s ease;
  position: relative;
}
.btn-link .link-white-arrow {
  width: 20px;
  height: 20px;
  margin-left: 10px;
  transition: opacity 0.3s ease;
  position: relative;
  display: none;
}
.btn-link.btn--white:hover {
  background-color: #009BDF;
}
.btn-link.btn--white:hover .link-btn-name {
  color: #FFFFFF;
}
.btn-link.btn--white:hover .link-arrow {
  display: none;
}
.btn-link.btn--white:hover .link-white-arrow {
  display: block;
}

/* フッターお問い合わせボタン */
.btn-footer {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: clamp(200px, 76.9230769231vw, 300px);
  height: 60px;
  padding: 18px 16px 18px 32px;
  border-radius: 5px;
  text-decoration: none;
  cursor: pointer;
  position: relative;
  transition: background-color 0.5s ease, border 0.5s ease;
  /* hover時 */
}
.btn-footer .link-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}
.btn-footer .link-side {
  display: flex;
  align-items: center;
  gap: 10px;
}
.btn-footer .link-side .icon-wrapper {
  position: relative;
  width: 23px;
  height: 19px;
  flex-shrink: 0;
}
.btn-footer .link-side .icon-wrapper .icon-default,
.btn-footer .link-side .icon-wrapper .icon-hover {
  position: absolute;
  top: 0;
  left: 0;
  width: 23px;
  height: 19px;
  transition: opacity 0.5s ease;
}
.btn-footer .link-side .icon-wrapper .icon-hover {
  opacity: 0;
}
.btn-footer .link-side .link-btn-name {
  color: #FFFFFF;
  font-weight: bold;
  transition: color 0.5s ease;
}
.btn-footer .arrow-small {
  color: #FFFFFF;
  display: inline-block;
  width: 8px;
  height: 8px;
  position: relative;
  transform: rotate(-135deg);
  flex-shrink: 0;
  transition: color 0.5s ease;
  margin-right: 8px;
}
.btn-footer .arrow-small::before, .btn-footer .arrow-small::after {
  content: "";
  position: absolute;
  background-color: currentColor;
}
.btn-footer .arrow-small::before {
  width: 1px;
  height: 100%;
  left: 0;
  top: 0;
}
.btn-footer .arrow-small::after {
  width: 100%;
  height: 1px;
  left: 0;
  bottom: 0;
}
.btn-footer:hover .link-side .icon-default {
  opacity: 0;
}
.btn-footer:hover .link-side .icon-hover {
  opacity: 1;
}

/* お問い合わせボタン固有色 */
.btn--footer-contact {
  background-color: #009BDF;
  border: 1px solid transparent;
}
.btn--footer-contact:hover {
  background-color: #FFFFFF;
  border: 1px solid #009BDF;
}
.btn--footer-contact:hover .link-btn-name,
.btn--footer-contact:hover .arrow-small {
  color: #009BDF;
}

/* 採用サイトボタン用 */
.btn-footer-recruit {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: clamp(200px, 76.9230769231vw, 300px);
  height: 60px;
  padding: 18px 16px 18px 32px;
  border-radius: 5px;
  text-decoration: none;
  cursor: pointer;
  position: relative;
  transition: background-color 0.5s ease, border 0.5s ease;
  /* 矢印用 */
}
.btn-footer-recruit .link-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}
.btn-footer-recruit .link-side {
  display: flex;
  align-items: center;
  gap: 10px;
}
.btn-footer-recruit .link-side .icon-wrapper {
  position: relative;
  width: 27px;
  height: 23px;
  flex-shrink: 0;
}
.btn-footer-recruit .link-side .icon-wrapper .icon-default,
.btn-footer-recruit .link-side .icon-wrapper .icon-hover {
  position: absolute;
  top: 0;
  left: 0;
  width: 27px;
  height: 23px;
  transition: opacity 0.5s ease;
}
.btn-footer-recruit .link-side .icon-wrapper .icon-hover {
  opacity: 0;
}
.btn-footer-recruit .link-side .link-btn-name {
  color: #FFFFFF;
  font-weight: bold;
  transition: color 0.5s ease;
}
.btn-footer-recruit .link-arrow,
.btn-footer-recruit .link-hover-arrow {
  width: 20;
  height: 20px;
  transition: opacity 0.5s ease;
  flex-shrink: 0;
}
.btn-footer-recruit .link-hover-arrow {
  opacity: 0;
  position: absolute;
  right: 16px;
}
.btn-footer-recruit .link-arrow {
  opacity: 1;
  position: absolute;
  right: 16px;
}
.btn-footer-recruit:hover .link-side .icon-default {
  opacity: 0;
}
.btn-footer-recruit:hover .link-side .icon-hover {
  opacity: 1;
}
.btn-footer-recruit:hover .link-arrow {
  opacity: 0;
}
.btn-footer-recruit:hover .link-hover-arrow {
  opacity: 1;
}

/* 採用サイトボタン固有色 */
.btn--footer-recruit {
  background-color: #006CB7;
  border: 1px solid transparent;
}
.btn--footer-recruit:hover {
  background-color: #FFFFFF;
  border: 1px solid #006CB7;
}
.btn--footer-recruit:hover .link-btn-name {
  color: #006CB7;
}

/* タイトル
--------------------------------------------------*/
.title_wrap_center .en_title {
  text-align: center;
  font-size: 14px;
  color: #7A9098;
  padding-bottom: 7px;
  font-weight: 400;
  display: block;
  font-family: "Lato", sans-serif;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .title_wrap_center .en_title {
    padding-bottom: 7px;
    font-weight: 400;
  }
}
.title_wrap_center .sec_title {
  text-align: center;
  color: #006CB7;
  font-size: 42px;
  line-height: 1.75;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .title_wrap_center .sec_title {
    font-size: 28px;
  }
}
.title_wrap_center .line {
  width: 100px;
  height: 2px;
  background: #FFFFFF;
  margin: 14px auto auto;
}
@media screen and (min-width: 769px) {
  .title_wrap_center .line {
    width: 100px;
    height: 1px;
    background: #D9D9D9;
  }
}
.title_wrap_center .description {
  font-size: 20px;
  line-height: 1.75;
  margin: 30px auto 40px auto;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .title_wrap_center .description {
    font-size: 16px;
    margin: 20px auto 30px auto;
  }
}
.title_wrap_center .description .pc_br {
  display: block;
}
.title_wrap_center .description br {
  display: none;
}
@media screen and (max-width: 768px) {
  .title_wrap_center .description br {
    display: block;
  }
}

/* 共通タイトル（backup, reform準拠） */
.title_wrap .catch {
  font-size: 24px;
  font-weight: 700;
  color: #006CB7;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .title_wrap .catch {
    font-size: 20px;
  }
}
.title_wrap .line {
  width: 100px;
  height: 1px;
  background-color: #D9D9D9;
  margin: 10px auto 30px;
}
@media screen and (max-width: 768px) {
  .title_wrap .line {
    margin: 10px auto 20px;
  }
}

/*下層のタイトル
--------------------------------------------------*/
@media screen and (max-width: 768px) {
  .page_lower .title_wrap_center .en_title {
    text-align: left;
    padding-bottom: 0;
  }
}
@media screen and (max-width: 768px) {
  .page_lower .title_wrap_center .sec_title {
    text-align: left;
  }
}

.title_wrap-left .title_header {
  width: 100%;
  display: flex;
  align-items: baseline;
  gap: 10px;
}
.title_wrap-left .sec_title {
  color: #006CB7;
  font-size: 42px;
  line-height: 1.75;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .title_wrap-left .sec_title {
    font-size: 28px;
  }
}
.title_wrap-left .en_title {
  font-size: 14px;
  color: #7A9098;
  padding-bottom: 7px;
  font-family: "Lato", sans-serif;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .title_wrap-left .en_title {
    padding-bottom: 7px;
    font-weight: 400;
  }
}
.title_wrap-left .line {
  width: 100px;
  height: 2px;
  background: #FFFFFF;
  margin-top: 14px;
}
@media screen and (min-width: 769px) {
  .title_wrap-left .line {
    width: 100px;
    height: 1px;
    background: #D9D9D9;
  }
}

.container {
  padding: 100px 0 0;
}
@media screen and (max-width: 999px) {
  .container {
    padding: 78px 0 0;
  }
}

.sec_lower_kv {
  border-radius: 20px;
  width: calc(100% - 40px);
  height: 330px;
  margin: auto auto;
  background-image: url(../img/philosophy/kv_philosophy.webp);
  background-size: cover;
  background-position: center;
  position: relative;
}
@media screen and (max-width: 768px) {
  .sec_lower_kv {
    border-radius: 10px;
    height: 120px;
    width: calc(100% - 20px);
  }
}
.sec_lower_kv .title_wrap {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 60px;
  z-index: 3;
  width: calc(100% - 60px);
}
@media screen and (max-width: 768px) {
  .sec_lower_kv .title_wrap {
    left: 0;
    padding: 0 0;
    right: 0;
    margin: auto;
    width: calc(90% + 18px);
  }
}
.sec_lower_kv .title_wrap .page_title {
  color: #FFFFFF;
  font-size: 42px;
  line-height: 1.1;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .sec_lower_kv .title_wrap .page_title {
    font-size: 28px;
  }
}
@media screen and (max-width: 370px) {
  .sec_lower_kv .title_wrap .page_title {
    font-size: 22px;
  }
}
.sec_lower_kv .title_wrap .breadcrumbs {
  display: flex;
  column-gap: 15px;
  justify-content: start;
  align-items: center;
  margin: 10px auto auto 0;
  width: 90%;
  position: relative;
  z-index: 2;
  flex-wrap: wrap;
  row-gap: 2px;
}
@media screen and (max-width: 768px) {
  .sec_lower_kv .title_wrap .breadcrumbs {
    display: none;
  }
}
.sec_lower_kv .title_wrap .breadcrumbs a, .sec_lower_kv .title_wrap .breadcrumbs span {
  color: #FFFFFF;
}
.sec_lower_kv .title_wrap .breadcrumbs .arrow {
  position: relative;
  width: 10px;
  display: inline-block;
}
.sec_lower_kv .title_wrap .breadcrumbs .arrow::after {
  position: absolute;
  bottom: 2px;
  content: "";
  display: inline-block;
  vertical-align: middle;
  color: #FFFFFF;
  line-height: 1;
  width: 6px;
  height: 6px;
  border: 1px solid currentColor;
  border-left: 0;
  border-bottom: 0;
  box-sizing: border-box;
  transform: translateY(-25%) rotate(45deg);
  transition: 0.3s;
}

.page_jisedai .page_title, .page_business .page_title, .page_csr .page_title {
  color: #006CB7 !important;
}
.page_jisedai .breadcrumbs a, .page_jisedai .breadcrumbs span, .page_business .breadcrumbs a, .page_business .breadcrumbs span, .page_csr .breadcrumbs a, .page_csr .breadcrumbs span {
  color: #2F3134 !important;
}
.page_jisedai .breadcrumbs .arrow::after, .page_business .breadcrumbs .arrow::after, .page_csr .breadcrumbs .arrow::after {
  color: #2F3134 !important;
}

.sec_sub_kv {
  width: calc(100% - 40px);
  height: 217px;
  margin: auto auto;
  position: relative;
  background-image: none;
}
@media screen and (max-width: 768px) {
  .sec_sub_kv {
    height: 122px;
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .sec_sub_kv .title_wrap {
    width: 90%;
  }
}
.sec_sub_kv .bg {
  width: calc(100% - 290px);
  background-color: #E8F8FF;
  height: 100%;
  position: absolute;
  right: 0;
  border-radius: 20px;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .sec_sub_kv .bg {
    width: calc(100% - 116px);
    border-radius: 10px;
  }
}
.sec_sub_kv:before {
  position: absolute;
  content: "";
  background-image: url(../img/sub/b_block.webp);
  width: 174px;
  height: 217px;
  left: 0;
  top: 0;
  z-index: 2;
  background-size: cover;
}
@media screen and (max-width: 768px) {
  .sec_sub_kv:before {
    background-image: url(../img/sub/sp_b_block.webp);
    width: 51px;
    height: 121px;
  }
}
.sec_sub_kv::after {
  position: absolute;
  content: "";
  background-image: url(../img/sub/w_block.webp);
  width: 216px;
  height: 191px;
  right: 50px;
  bottom: 0;
  z-index: 2;
  background-size: cover;
}
@media screen and (max-width: 768px) {
  .sec_sub_kv::after {
    background-image: url(../img/sub/sp_w_block.webp);
    width: 96px;
    height: 103px;
    right: 20px;
  }
}
.sec_sub_kv .page_title {
  color: #006CB7 !important;
  text-shadow: 0px 0px 4px rgba(0, 0, 0, 0) !important;
  font-weight: 700 !important;
}
.sec_sub_kv .breadcrumbs a, .sec_sub_kv .breadcrumbs span {
  color: #2F3134 !important;
  text-shadow: 0px 0px 4px rgba(0, 0, 0, 0) !important;
}
.sec_sub_kv .arrow::after {
  color: #2F3134 !important;
}

.page_message .sec_lower_kv {
  background-image: url(../img/message/kv_message.webp);
  background-position: center left;
}

.page_company .sec_lower_kv {
  background-image: url(../img/company/kv_company.webp);
}

.page_history .sec_lower_kv {
  background-image: url(../img/history/kv_history.webp);
}

.page_jisedai .sec_lower_kv {
  background-image: url(../img/jisedai/kv_jisedai.webp);
}

.page_business .sec_lower_kv {
  background-image: url(../img/business/kv_business.webp);
}

.page_trade .sec_lower_kv {
  background-image: url(../img/business/kv_trade.webp);
}

.page_rent .sec_lower_kv {
  background-image: url(../img/business/kv_rent.webp);
}

.page_sales .sec_lower_kv {
  background-image: url(../img/business/kv_sales.webp);
}

.page_csr .sec_lower_kv {
  background-image: url(../img/csr/kv_csr.webp);
}

.page_reform .sec_lower_kv {
  background-image: url(../img/business/kv_reform.webp);
}

.page_asset .sec_lower_kv {
  background-image: url(../img/business/kv_asset.webp);
}

.page_support .sec_lower_kv {
  background-image: url(../img/value/kv_support.webp);
}

.page_backup .sec_lower_kv {
  background-image: url(../img/value/kv_backup.webp);
}

.page_after .sec_lower_kv {
  background-image: url(../img/value/kv_after-support.webp);
}

/* 下層SPパンクズ ------------------------------------------------ */
.lower_breadcrumbs_sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .lower_breadcrumbs_sp {
    display: flex;
    column-gap: 15px;
    justify-content: start;
    align-items: center;
    margin: 10px auto auto;
    width: 90%;
    position: relative;
    z-index: 2;
    flex-wrap: wrap;
    row-gap: 2px;
  }
  .lower_breadcrumbs_sp a, .lower_breadcrumbs_sp span {
    color: #2F3134;
    font-size: 12px;
  }
  .lower_breadcrumbs_sp .arrow {
    position: relative;
    width: 10px;
    display: inline-block;
  }
  .lower_breadcrumbs_sp .arrow::after {
    position: absolute;
    bottom: 0px;
    content: "";
    display: inline-block;
    vertical-align: middle;
    color: #2F3134;
    line-height: 1;
    width: 6px;
    height: 6px;
    border: 1px solid currentColor;
    border-left: 0;
    border-bottom: 0;
    box-sizing: border-box;
    transform: translateY(-25%) rotate(45deg);
    transition: 0.3s;
  }
}

/* 採用情報 ------------------------------------------------ */
.recruit-section {
  background-color: #006CB7;
  border-radius: 20px;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  width: 90%;
  max-width: 1400px;
  margin: 80px auto 0;
}
@media screen and (max-width: 999px) {
  .recruit-section {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin: 60px auto 0;
    height: auto;
  }
}
.recruit-section .img_area {
  width: 55%;
  border-radius: 20px 0 0 20px;
  background-image: url(../img/top/recruit-banner.webp);
  background-size: cover;
  background-position: center;
  height: 400px;
}
@media screen and (max-width: 999px) {
  .recruit-section .img_area {
    background-image: url(../img/top/recruit-banner-sp.webp);
    width: 100%;
    height: auto;
    border-radius: 20px 20px 0 0;
    aspect-ratio: 1/0.526; /* 幅:高さ = 1:0.526 */
  }
}
.recruit-section .recruit-inner {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  position: relative;
  z-index: 2;
  width: 45%;
  padding: 10px 20px 30px;
  height: 100%;
  padding: 0 5% 0;
}
@media screen and (max-width: 999px) {
  .recruit-section .recruit-inner {
    align-items: center;
    justify-content: center;
    width: 90%;
    padding: 30px 20px 30px;
  }
}
.recruit-section .recruit-inner .recruit-header {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
}
.recruit-section .recruit-inner .recruit-header .recruit-main {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  align-items: baseline;
  justify-content: flex-start;
  gap: 17px;
}
@media screen and (max-width: 768px) {
  .recruit-section .recruit-inner .recruit-header .recruit-main {
    gap: 15px;
  }
}
.recruit-section .recruit-inner .recruit-header .recruit-title {
  font-size: 69px;
  line-height: 1;
  color: #FFFFFF;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .recruit-section .recruit-inner .recruit-header .recruit-title {
    font-size: 48px;
  }
}
.recruit-section .recruit-inner .recruit-header .recruit-subtitle {
  font-size: 14px;
  color: #FFFFFF;
  padding-bottom: 19px;
}
@media screen and (min-width: 769px) {
  .recruit-section .recruit-inner .recruit-header .recruit-subtitle {
    padding-bottom: 31px;
  }
}
.recruit-section .recruit-inner .recruit-header .recruit-line {
  width: 100px;
  height: 1px;
  background-color: #FFFFFF;
}
.recruit-section .recruit-inner .recruit-description {
  font-size: 16px;
  color: #FFFFFF;
  margin: 30px 0 40px;
  display: flex;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .recruit-section .recruit-inner .recruit-description {
    font-size: 14px;
    margin: 20px 0 30px;
  }
  .recruit-section .recruit-inner .recruit-description .none {
    display: none;
  }
}

/* 右回転
--------------------------------------------------*/
@keyframes rotation_right {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* 左回転
--------------------------------------------------*/
@keyframes rotation_left {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(-360deg);
  }
}
/*-----------------------------------------
SP（デフォルト）用スタイル
-----------------------------------------*/
/* KVセクション全体 */
.kv-section {
  position: relative;
  width: calc(100% - 40px);
  aspect-ratio: 350/545;
  margin: 100px 20px 0;
  aspect-ratio: 1360/440;
}
@media screen and (max-width: 768px) {
  .kv-section {
    margin: 78px 20px 0;
    aspect-ratio: 350/545;
    height: calc(100svh - 80px);
  }
}
@media screen and (max-width: 768px) and (orientation: landscape) {
  .kv-section {
    height: 360px;
  }
}
.kv-section .kv-inner {
  width: 100%;
  height: 100%;
  min-height: 360px;
  position: relative;
  padding-bottom: 0;
}
@media screen and (max-width: 768px) {
  .kv-section .kv-inner {
    padding-bottom: 5px;
    height: calc(100svh - 80px);
  }
}
.kv-section .kv-inner .kv-img {
  width: 100%;
  height: 100%;
  border-radius: 20px;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  background-image: url(../img/top/kv.webp);
  background-size: cover;
  background-position: center;
}
@media screen and (max-width: 768px) {
  .kv-section .kv-inner .kv-img {
    border-radius: 10px;
    background-image: url(../img/top/kv-sp.webp);
  }
}
.kv-section .kv-inner .kv-text {
  width: auto;
  height: auto;
  position: absolute;
  top: clamp(20px, 15.4vw, 60px);
  left: clamp(8px, 3.8vw, 15px);
  right: clamp(3px, 1.8vw, 7px);
  display: flex;
  flex-direction: column;
  gap: 1.5vh;
}
@media screen and (min-width: 769px) {
  .kv-section .kv-inner .kv-text {
    width: auto;
    height: clamp(50px, 15.7142857143vw, 220px);
    top: clamp(25.6px, 8vw, 112px);
    left: clamp(9.14px, 2.8571428571vw, 40px);
    right: auto;
    gap: clamp(6.86px, 2.1428571429vw, 30px);
  }
}
.kv-section .kv-inner .kv-text .kv-title {
  font-size: clamp(20px, 8.2vw, 32px);
  width: 100%;
  line-height: 1.5;
  color: #006CB7;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .kv-section .kv-inner .kv-text .kv-title {
    font-size: clamp(26px, 3vw, 42px);
    width: 100%;
  }
}
.kv-section .kv-inner .kv-text .kv-subtitle {
  font-size: clamp(12px, 3.6vw, 14px);
  color: #2F3134;
  line-height: 1.75;
}
@media screen and (min-width: 769px) {
  .kv-section .kv-inner .kv-text .kv-subtitle {
    font-size: clamp(14px, 1.2857142857vw, 18px);
  }
}
.kv-section .kv-inner .kv-text .kv-subtitle img {
  display: inline-block;
  vertical-align: text-bottom;
  width: clamp(70px, 22.3vw, 87px);
  height: clamp(18px, 5.6vw, 22px);
  margin: 0 5px;
}
@media screen and (min-width: 769px) {
  .kv-section .kv-inner .kv-text .kv-subtitle img {
    width: 7.2142857143vw;
    height: 1.7857142857vw;
    margin: 0 0.7142857143vw;
  }
}
.kv-section .kv-inner .news_bnr {
  position: absolute;
  bottom: -1px;
  right: 0;
}
@media screen and (max-width: 768px) {
  .kv-section .kv-inner .news_bnr {
    width: calc(100% - 20px);
  }
}
.kv-section .kv-inner .recruit-banner {
  display: none;
}
@media screen and (min-width: 769px) {
  .kv-section .kv-inner .recruit-banner {
    display: block;
    width: 232px;
    height: 132px;
    z-index: 999;
    overflow: hidden;
    border-radius: 10px;
    position: relative;
    margin: auto 30px 20px auto;
  }
  .kv-section .kv-inner .recruit-banner a {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
  }
  .kv-section .kv-inner .recruit-banner a::after {
    content: "";
    background-color: #FFFFFF;
    width: 220px;
    height: 120px;
    bottom: 0;
    left: 0;
    position: absolute;
    z-index: 1;
    border-radius: 10px;
  }
  .kv-section .kv-inner .recruit-banner img {
    width: 220px;
    height: 120px;
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    border-radius: 10px;
    transition: 0.3s;
    z-index: 2;
  }
  .kv-section .kv-inner .recruit-banner::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.15);
    opacity: 0;
    transition: opacity 0.5s ease;
    pointer-events: none;
  }
  .kv-section .kv-inner .recruit-banner:hover img {
    opacity: 0.6;
  }
  .kv-section .kv-inner .recruit-banner .close-btn {
    display: block;
    width: 24px;
    height: 24px;
    position: absolute;
    top: 0;
    right: 0;
    padding: 0;
    border: none;
    background: none;
    cursor: pointer;
  }
  .kv-section .kv-inner .recruit-banner .close-btn img {
    width: 100%;
    height: 100%;
    display: block;
    transition: 0.3s;
  }
}
.kv-section .kv-inner .kv-news {
  width: auto;
  height: auto;
  background-color: #FFFFFF;
  border-radius: 10px 0 0 0;
  padding: 15px 15px 6px 15px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
}
@media screen and (min-width: 769px) {
  .kv-section .kv-inner .kv-news {
    padding: clamp(10px, 3.85vw, 15px) clamp(20px, 8.97vw, 35px);
    bottom: -1px;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: clamp(12px, 5.1282051282vw, 20px);
    width: 610px;
  }
}
.kv-section .kv-inner .kv-news h2.news-label {
  display: none;
}
@media screen and (min-width: 769px) {
  .kv-section .kv-inner .kv-news h2.news-label {
    display: flex;
    align-items: center;
    font-size: 16px;
    color: #009BDF;
    position: relative;
    padding-right: 20px;
    width: 70px;
  }
  .kv-section .kv-inner .kv-news h2.news-label h2.news-label::after {
    content: "";
    display: block;
    width: 1px;
    height: 40px;
    background-color: #D9D9D9;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
  }
}
.kv-section .kv-inner .kv-news .news-list {
  width: calc(100% - 70px);
  position: relative;
}
@media screen and (max-width: 768px) {
  .kv-section .kv-inner .kv-news .news-list {
    width: 100%;
  }
}
.kv-section .kv-inner .kv-news .news-list::before {
  position: absolute;
  content: "";
  width: 1px;
  height: 40px;
  background-color: #D9D9D9;
  left: -20px;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .kv-section .kv-inner .kv-news .news-list::before {
    display: none;
  }
}
.kv-section .kv-inner .kv-news .news-list .news-item {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
@media screen and (min-width: 769px) {
  .kv-section .kv-inner .kv-news .news-list .news-item {
    gap: 2px;
  }
}
.kv-section .kv-inner .kv-news .news-list .news-item .news-meta {
  display: flex;
  align-items: center;
  gap: 10px;
}
@media screen and (min-width: 769px) {
  .kv-section .kv-inner .kv-news .news-list .news-item .news-meta {
    font-size: 16px;
  }
}
.kv-section .kv-inner .kv-news .news-list .news-item .news-meta .news-date {
  color: #7A9098;
}
@media screen and (min-width: 769px) {
  .kv-section .kv-inner .kv-news .news-list .news-item .news-meta .news-date {
    font-size: 16px;
  }
}
.kv-section .kv-inner .kv-news .news-list .news-item .news-meta .news-tag {
  font-size: 12px;
  color: #006CB7;
  border: 1px solid #D9D9D9;
  border-radius: 9px;
  padding: 0 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 14px;
  height: 18px;
}
.kv-section .kv-inner .kv-news .news-list .news-item .news-title {
  text-align: left;
  display: block;
  line-height: 1.45;
  display: -webkit-box;
  -webkit-line-clamp: 2; /* 2行まで表示 */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  overflow-wrap: break-word; /* 推奨: 現在はこちらを使う */
}
@media screen and (min-width: 769px) {
  .kv-section .kv-inner .kv-news .news-list .news-item .news-title {
    font-size: 16px;
    line-height: 1.75;
  }
}

/* 事業紹介----------------------------------------------- */
.business-section {
  width: 90%;
  max-width: 1400px;
  margin: 60px auto auto;
  position: relative;
}
@media screen and (max-width: 768px) {
  .business-section {
    width: 100%;
  }
}
.business-section::before {
  content: "";
  position: absolute;
  top: 0;
  left: auto;
  right: 0;
  width: 68.89%;
  height: 520px;
  background: #E8F8FF;
  border-radius: 20px;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .business-section::before {
    top: 0;
    right: 0;
    left: 0;
    width: calc(100% - 20px);
    height: 523px;
  }
}
.business-section .inner {
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 20px;
  padding: 0 5%;
  padding: 50px 5% 0;
}
@media screen and (max-width: 768px) {
  .business-section .inner {
    display: block;
  }
}
.business-section .txt_wrap {
  width: 54% !important;
}
@media screen and (max-width: 768px) {
  .business-section .txt_wrap {
    width: 100% !important;
  }
}
.business-section .description {
  font-size: 20px;
  line-height: 1.75;
  margin: 30px auto 40px auto;
  text-align: left;
}
@media screen and (max-width: 999px) {
  .business-section .description {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  .business-section .description {
    margin: 20px auto 30px auto;
  }
}
.business-section .description .pc_br {
  display: block;
}
.business-section .description br {
  display: none;
}
@media screen and (max-width: 768px) {
  .business-section .description br {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .business-section .btn {
    margin: auto;
  }
}
.business-section .img_box {
  width: 46%;
  max-width: 520px;
}
@media screen and (max-width: 768px) {
  .business-section .img_box {
    width: 90%;
    margin: 30px auto auto;
  }
}
.business-section .img_box .img_pc {
  display: block;
}
@media screen and (max-width: 768px) {
  .business-section .img_box .img_pc {
    display: none;
  }
}
.business-section .img_box .img_sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .business-section .img_box .img_sp {
    display: block;
  }
}

/* 藤和ハウスのバリュー --------------------------------*/
.value-section {
  width: 90%;
  max-width: 1400px;
  margin: 200px auto auto;
}
@media screen and (max-width: 768px) {
  .value-section {
    margin-top: 70px;
    width: 100%;
  }
}
.value-section .line {
  background: #D9D9D9;
}
.value-section .value-box-wrapper {
  background-color: #F4F7FB;
  display: flex;
  flex-direction: column;
  padding: 40px 5%;
  border-radius: 20px;
}
@media screen and (max-width: 768px) {
  .value-section .value-box-wrapper {
    padding: 30px 20px;
  }
}
.value-section .value-box-wrapper .value-box-list {
  display: flex;
  flex-direction: row;
  column-gap: 1.43vw;
}
@media screen and (max-width: 768px) {
  .value-section .value-box-wrapper .value-box-list {
    flex-direction: column;
    row-gap: 20px;
  }
}
.value-section .value-box-wrapper .value-box-list .value-box {
  flex: 1 1 300px;
  background-color: #FFFFFF;
  border: 1px solid #D9D9D9;
  border-radius: 10px;
  padding: 20px 1.43vw;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .value-section .value-box-wrapper .value-box-list .value-box {
    padding: 20px 15px;
    max-width: 520px;
    margin: auto;
  }
}
.value-section .value-box-wrapper .value-box-list .value-box a {
  display: block;
  width: 100%;
  transition: 0.3s;
}
.value-section .value-box-wrapper .value-box-list .value-box a:hover {
  opacity: 0.6;
}
.value-section .value-box-wrapper .value-box-list .value-box a .box_title {
  font-size: clamp(16px, 1.4vw, 20px);
  color: #006CB7;
  margin-bottom: 15px;
  display: inline-block;
  position: relative;
}
@media screen and (max-width: 768px) {
  .value-section .value-box-wrapper .value-box-list .value-box a .box_title {
    font-size: 20px;
    margin-bottom: 10px;
  }
}
.value-section .value-box-wrapper .value-box-list .value-box a .box_title .arrow {
  margin-left: 5px;
  position: relative;
  width: clamp(16px, 2vw, 20px);
  height: clamp(16px, 2vw, 20px);
  display: inline-block;
  display: inline-block;
  vertical-align: middle;
}
.value-section .value-box-wrapper .value-box-list .value-box a .box_title .arrow::after {
  position: absolute;
  display: inline-block;
  content: "";
  width: clamp(16px, 2vw, 20px);
  height: clamp(16px, 2vw, 20px);
  right: 0px;
  bottom: 2px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
  background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_レイヤー_1' data-name='レイヤー_1' xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 20 20'%3E%3C!-- Generator: Adobe Illustrator 29.7.1, SVG Export Plug-In . SVG Version: 2.1.1 Build 8) --%3E%3Cdefs%3E%3Cstyle%3E .st0 %7B fill: %23006cb7; %7D .st1 %7B fill: %23fff; stroke: %23006cb7; %7D %3C/style%3E%3C/defs%3E%3Cpath class='st1' d='M10,.5h0c5.2,0,9.5,4.3,9.5,9.5h0c0,5.2-4.3,9.5-9.5,9.5h0C4.8,19.5.5,15.2.5,10h0C.5,4.8,4.8.5,10,.5Z'/%3E%3Crect class='st0' x='9.5' y='5.2' width='1' height='6' transform='translate(-2.9 9.5) rotate(-45)'/%3E%3Crect class='st0' x='7' y='11.3' width='6' height='1' transform='translate(-5.4 10.5) rotate(-45)'/%3E%3C/svg%3E");
}
.value-section .value-box-wrapper .value-box-list .value-box a .value-sp {
  width: 100%;
  height: auto;
  margin-bottom: 15px;
  border-radius: 10px;
}
@media screen and (min-width: 769px) {
  .value-section .value-box-wrapper .value-box-list .value-box a .value-sp {
    display: none;
  }
}
.value-section .value-box-wrapper .value-box-list .value-box a .value-pc {
  display: none;
}
@media screen and (min-width: 769px) {
  .value-section .value-box-wrapper .value-box-list .value-box a .value-pc {
    display: block;
    width: 100%;
    height: auto;
    margin-bottom: 15px;
    border-radius: 10px;
  }
}
.value-section .value-box-wrapper .value-box-list .value-box a .value-box-description {
  font-size: 16px;
}

/* 会社情報------------------------------------------------------ */
.about-section {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: #E8F8FF;
  border-radius: 20px;
  box-sizing: border-box;
  padding: 40px 5%;
  margin: 80px auto;
  width: 90%;
  max-width: 1400px;
  /* ボタンはhtmlでコンポーネントを呼び出す */
}
@media screen and (max-width: 768px) {
  .about-section {
    width: 100%;
    max-width: none;
    padding: 30px 20px;
    margin: 30px 0;
  }
}
.about-section .line {
  background-color: #FFFFFF;
}

/* CSR------------------------------------------------------- */
.csr-section {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
  padding: 55px 40px 40px;
  width: 90%;
  max-width: 1400px;
  box-sizing: border-box;
  margin: 60px auto 0;
  height: auto;
  /* 背景画像 */
}
@media screen and (max-width: 768px) {
  .csr-section {
    margin: 40px auto 40px;
    padding: 40px 5% 40px;
  }
}
.csr-section a {
  transition: 0.3s;
}
.csr-section a:hover {
  opacity: 0.6;
}
.csr-section .csr-bg-wrapper {
  position: absolute;
  inset: 0;
  border-radius: 20px;
  overflow: hidden;
  z-index: 0;
  height: 100%;
  width: 100%;
  background-image: url(../img/top/csr.webp);
  background-size: cover;
  background-position: center;
}
@media screen and (max-width: 768px) {
  .csr-section .csr-bg-wrapper {
    background-image: url(../img/top/csr-sp.webp);
  }
}
.csr-section .csr-bg-wrapper .csr-overlay {
  position: absolute;
  inset: 0;
  background-color: #0D3A7F;
  opacity: 0.3;
}
.csr-section .csr-main {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  z-index: 1;
  width: 100%;
  height: auto;
}
.csr-section .csr-main .csr-subtitle {
  font-size: 14px;
  color: #FFFFFF;
  font-weight: 400;
  text-align: center;
}
.csr-section .csr-main .csr-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}
@media screen and (min-width: 769px) {
  .csr-section .csr-main .csr-inner {
    gap: 8px;
  }
}
.csr-section .csr-main .csr-inner .csr-title {
  font-size: 32px;
  line-height: 1.75;
  color: #FFFFFF;
  text-align: center;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .csr-section .csr-main .csr-inner .csr-title {
    font-size: clamp(24px, 4.17vw, 32px);
  }
}
@media screen and (min-width: 769px) {
  .csr-section .csr-main .csr-inner .box-arrow {
    width: 22px;
    height: 22px;
  }
}
.csr-section .csr-main .csr-inner .box-arrow::after {
  border-color: #FFFFFF;
}
.csr-section .csr-main .csr-inner .box-arrow::before {
  border-color: #FFFFFF;
}
.csr-section .csr-description {
  position: relative;
  z-index: 1;
  font-size: 20px;
  line-height: 1.75;
  margin-top: 20px;
  text-align: center;
  color: #FFFFFF;
}
@media screen and (max-width: 768px) {
  .csr-section .csr-description {
    font-size: clamp(14px, 2.08vw, 16px);
  }
}
.csr-section .csr-pc {
  display: none;
}
@media screen and (min-width: 769px) {
  .csr-section .csr-pc {
    display: block;
  }
}
@media screen and (min-width: 769px) {
  .csr-section .csr-sp {
    display: none;
  }
  .csr-section .csr-none {
    display: none;
  }
}

/* ニュース--------------------------------------------------- */
.news-section {
  width: 90%;
  max-width: 1400px;
  margin: 80px auto 40px;
}
@media screen and (max-width: 768px) {
  .news-section {
    margin: 40px auto;
  }
}
.news-section .news-inner {
  display: flex;
  flex-direction: row;
  align-items: first baseline;
  justify-content: space-between;
  width: 100%;
  gap: auto;
}
@media screen and (max-width: 999px) {
  .news-section .news-inner {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    width: 100%;
    gap: 30px;
  }
}
.news-section .news-inner .line {
  background: #D9D9D9;
}
.news-section .news-inner .news-list {
  width: 67.8571428571%;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media screen and (max-width: 999px) {
  .news-section .news-inner .news-list {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 20px;
  }
}
.news-section .news-inner .news-list .news-item {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding-bottom: 20px;
  border-bottom: 1px solid #D9D9D9;
}
@media screen and (min-width: 769px) {
  .news-section .news-inner .news-list .news-item {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding-bottom: 20px;
    border-bottom: 1px solid #D9D9D9;
  }
}
.news-section .news-inner .news-list .news-item:last-child {
  border-bottom: none;
}
.news-section .news-inner .news-list .news-item .news-meta {
  display: flex;
  align-items: center;
  gap: 10px;
}
.news-section .news-inner .news-list .news-item .news-meta .news-date {
  color: #7A9098;
}
.news-section .news-inner .news-list .news-item .news-meta .news-tag {
  font-size: 12px;
  color: #006CB7;
  border: 1px solid #D9D9D9;
  border-radius: 9px;
  padding: 0 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 18px;
  line-height: 14px;
}
.news-section .news-inner .news-list .news-item .news-title {
  line-height: 1.45;
  text-align: left;
  overflow-wrap: break-word; /* 推奨: 現在はこちらを使う */
}

/*-----------------------------------------
代表挨拶
-----------------------------------------*/
.page_message .sec_message {
  margin: 100px auto 100px;
  width: 90%;
  max-width: 1120px;
  display: flex;
  column-gap: 70px;
}
@media screen and (max-width: 999px) {
  .page_message .sec_message {
    display: block;
    margin: 60px auto 80px;
  }
}
@media screen and (max-width: 768px) {
  .page_message .sec_message {
    margin: 40px auto 80px;
  }
}
.page_message .sec_message .left, .page_message .sec_message .right {
  width: calc(50% - 35px);
}
@media screen and (max-width: 999px) {
  .page_message .sec_message .left, .page_message .sec_message .right {
    width: 100%;
  }
}
.page_message .sec_message .left .title {
  font-size: 27px;
  line-height: 1.75;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .page_message .sec_message .left .title {
    font-size: 18px;
  }
}
.page_message .sec_message .left .name {
  font-size: 18px;
  line-height: 1.75;
  font-weight: 700;
  margin-top: 15px;
}
@media screen and (max-width: 768px) {
  .page_message .sec_message .left .name {
    font-size: 16px;
  }
}
@media screen and (max-width: 999px) {
  .page_message .sec_message .right {
    margin-top: 40px;
  }
}

/*-----------------------------------------
会社概要
-----------------------------------------*/
.page_company .sec_overview {
  margin: 60px auto 80px;
  width: 90%;
  max-width: 800px;
}
@media screen and (max-width: 768px) {
  .page_company .sec_overview {
    margin: 40px auto 60px;
  }
}
.page_company .sec_overview dl {
  display: flex;
}
@media screen and (max-width: 389px) {
  .page_company .sec_overview dl {
    display: block;
  }
}
.page_company .sec_overview dl dt {
  width: 200px;
  font-weight: 700;
  color: #006CB7;
  border-bottom: 2px solid #006CB7;
  padding: 20px;
  font-size: 16px;
}
@media screen and (max-width: 768px) {
  .page_company .sec_overview dl dt {
    width: 120px;
    padding: 20px 0;
    font-size: 14px;
  }
}
@media screen and (max-width: 389px) {
  .page_company .sec_overview dl dt {
    width: 100%;
    padding: 10px 0;
  }
}
.page_company .sec_overview dl dd {
  width: calc(100% - 200px);
  padding: 20px 0 20px 80px;
  border-bottom: 1px solid #D9D9D9;
  font-size: 16px;
}
@media screen and (max-width: 768px) {
  .page_company .sec_overview dl dd {
    width: calc(100% - 120px);
    padding: 20px 0 20px 20px;
    font-size: 14px;
  }
}
@media screen and (max-width: 389px) {
  .page_company .sec_overview dl dd {
    width: 100%;
    padding: 10px 0 20px 0;
    border-bottom: 0;
  }
}
.page_company .sec_overview dl dd a {
  color: #006CB7;
  border-bottom: 1px solid #006CB7;
  transition: 0.3s;
}
.page_company .sec_overview dl dd a:hover {
  opacity: 0.6;
}
.page_company .sec_overview .bank dd {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  column-gap: 40px;
}
.page_company .sec_overview .bank dd p {
  width: 140px;
}

/*-----------------------------------------
企業理念
-----------------------------------------*/
.page_philosophy .sec_intro_txt {
  margin: 80px auto auto;
  width: 90%;
}
@media screen and (max-width: 768px) {
  .page_philosophy .sec_intro_txt {
    margin: 40px auto auto;
  }
}
.page_philosophy .sec_intro_txt .title_wrap_center {
  margin: auto auto 40px;
}
@media screen and (max-width: 768px) {
  .page_philosophy .sec_intro_txt .title_wrap_center {
    margin: auto auto 20px;
  }
}
.page_philosophy .sec_intro_txt .txt, .page_philosophy .sec_intro_txt .blue {
  font-size: 22px;
  font-weight: 700;
  text-align: center;
  line-height: 1.75;
}
@media screen and (max-width: 768px) {
  .page_philosophy .sec_intro_txt .txt, .page_philosophy .sec_intro_txt .blue {
    font-size: clamp(16px, 2.6vw, 20px);
  }
}
.page_philosophy .sec_intro_txt .blue {
  color: #006CB7;
}
.page_philosophy .sec_mission {
  margin: 80px auto auto;
  width: 90%;
  max-width: 1120px;
}
@media screen and (max-width: 768px) {
  .page_philosophy .sec_mission {
    margin: 60px auto auto;
  }
}
.page_philosophy .sec_mission ul {
  display: flex;
  gap: 20px;
  margin: 40px auto 80px;
}
@media screen and (max-width: 768px) {
  .page_philosophy .sec_mission ul {
    margin: 20px auto 60px;
    flex-direction: column;
  }
}
.page_philosophy .sec_mission ul li {
  background-color: #F4F7FB;
  border-radius: 10px;
  padding: 20px;
  width: calc((100% - 40px) / 3);
}
@media screen and (max-width: 768px) {
  .page_philosophy .sec_mission ul li {
    width: 100%;
  }
}
.page_philosophy .sec_mission ul li .num {
  background-color: #FFFFFF;
  border-radius: 6px;
  color: #006CB7;
  font-weight: 900;
  font-family: "Lato", sans-serif;
  display: inline-block;
  padding: 0px 10px;
  margin-bottom: 5px;
}
.page_philosophy .sec_mission ul li .title {
  font-size: 24px;
  font-weight: 700;
  color: #006CB7;
  margin-bottom: 6px;
}
@media screen and (max-width: 768px) {
  .page_philosophy .sec_mission ul li .title {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  .page_philosophy .sec_mission ul li .txt {
    font-size: 14px;
  }
}

/*-----------------------------------------
会社沿革
-----------------------------------------*/
.page_history .sec_chronology {
  margin: 80px auto 80px;
  width: 90%;
  max-width: 800px;
}
@media screen and (max-width: 768px) {
  .page_history .sec_chronology {
    margin: 40px auto 60px;
  }
}
.page_history .timeline {
  position: relative;
}
@media screen and (max-width: 768px) {
  .page_history .timeline {
    margin: 30px auto auto;
  }
}
.page_history .timeline::after {
  position: absolute;
  content: "";
  width: 1px;
  height: calc(100% - 40px);
  background-color: #006CB7;
  top: 20px;
  left: 165px;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .page_history .timeline::after {
    left: 0;
  }
}
.page_history .timeline dl {
  display: flex;
  align-items: flex-start;
  margin-top: 30px;
}
.page_history .timeline dl:first-of-type {
  margin-top: 0;
}
@media screen and (max-width: 768px) {
  .page_history .timeline dl {
    display: block;
    padding-left: 20px;
  }
}
.page_history .timeline dl dt {
  color: #006CB7;
  width: 166px;
  font-size: 48px;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .page_history .timeline dl dt {
    font-size: 28px;
    width: 100%;
    display: flex;
    align-items: center; /* 縦方向の中央揃え */
  }
}
.page_history .timeline dl dt .era_name {
  color: #006CB7;
  font-weight: 700;
  font-size: 16px;
  display: block;
  margin-top: 6px;
}
@media screen and (max-width: 768px) {
  .page_history .timeline dl dt .era_name {
    display: inline;
    margin-top: 0;
  }
}
.page_history .timeline dl dd {
  width: calc(100% - 166px - 60px);
  padding: 14px 0 14px 60px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .page_history .timeline dl dd {
    width: 100%;
    padding: 10px 0 10px 0px;
  }
}
.page_history .timeline dl dd::before {
  position: absolute;
  content: "";
  background-color: #006CB7;
  width: 10px;
  height: 10px;
  border-radius: 2px;
  z-index: 2;
  left: -5px;
  top: 20px;
}
@media screen and (max-width: 768px) {
  .page_history .timeline dl dd::before {
    left: -25px;
    top: -20px;
  }
}

/*-----------------------------------------
事業概要
-----------------------------------------*/
.page_business .sec_business {
  margin: 80px auto;
  width: 90%;
  max-width: 1120px;
}
@media screen and (max-width: 768px) {
  .page_business .sec_business {
    margin: 0px auto 40px;
  }
}
.page_business .sec_business .business_content {
  padding: 60px 0;
  border-bottom: 1px solid #D9D9D9;
  display: flex;
  column-gap: 60px;
  flex-direction: row-reverse;
}
@media screen and (max-width: 768px) {
  .page_business .sec_business .business_content {
    display: block;
    padding: 60px 0;
  }
  .page_business .sec_business .business_content:first-of-type {
    padding: 40px 0 60px;
  }
}
.page_business .sec_business .business_content:last-of-type {
  border-bottom: none;
}
.page_business .sec_business .business_content .right {
  width: 37.5%;
}
@media screen and (max-width: 768px) {
  .page_business .sec_business .business_content .right {
    display: none;
  }
}
.page_business .sec_business .business_content .right img {
  border-radius: 10px;
}
.page_business .sec_business .business_content .left {
  width: calc(62.5% - 60px);
}
@media screen and (max-width: 768px) {
  .page_business .sec_business .business_content .left {
    width: 100%;
  }
  .page_business .sec_business .business_content .left img {
    margin-top: 20px;
    border-radius: 10px;
    margin: 20px auto auto;
    max-width: 420px;
    width: 100%;
  }
}
.page_business .sec_business .business_content .left .title {
  font-weight: 700;
  color: #006CB7;
  margin-bottom: 20px;
}
.page_business .sec_business .business_content .left .description {
  margin-bottom: 10px;
}
.page_business .sec_business .business_content .left .description:last-of-type {
  margin-bottom: 0;
}
.page_business .sec_business .business_content .left .btn {
  margin: 40px 0 auto auto;
}
@media screen and (max-width: 768px) {
  .page_business .sec_business .business_content .left .btn {
    margin: 30px auto auto;
  }
}

/*-----------------------------------------
不動産売買仲介事業
-----------------------------------------*/
.page_trade .sec_overview {
  margin: 80px auto 80px;
  width: 90%;
  max-width: 1120px;
}
@media screen and (max-width: 768px) {
  .page_trade .sec_overview {
    margin: 40px auto 40px;
  }
}
.page_trade .sec_overview .txt_wrap {
  margin: auto auto 60px;
  max-width: 840px;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .page_trade .sec_overview .txt_wrap {
    margin: auto auto 30px;
  }
}
.page_trade .sec_overview .catch {
  font-size: 24px;
  font-weight: 700;
  color: #006CB7;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .page_trade .sec_overview .catch {
    font-size: 20px;
  }
}
.page_trade .sec_overview .line {
  width: 100px;
  height: 1px;
  background: #D9D9D9;
  margin: 15px auto 30px;
}
@media screen and (max-width: 768px) {
  .page_trade .sec_overview .line {
    width: 60px;
  }
}
.page_trade .sec_overview .txt {
  margin-bottom: 10px;
}
.page_trade .sec_overview .txt:last-of-type {
  margin-bottom: 0;
}
.page_trade .sec_overview .service_list {
  margin: 60px auto auto;
  display: flex;
  column-gap: 2.3%;
}
@media screen and (max-width: 768px) {
  .page_trade .sec_overview .service_list {
    display: block;
    margin: 30px auto auto;
  }
}
.page_trade .sec_overview .service_list li {
  width: 31.8%;
  border: 1px solid #D9D9D9;
  border-radius: 10px;
  padding: 25px;
}
@media screen and (max-width: 768px) {
  .page_trade .sec_overview .service_list li {
    width: 100%;
    max-width: 420px;
    margin: auto auto 20px;
  }
}
.page_trade .sec_overview .service_list li .name {
  font-size: 20px;
  font-weight: 700;
  color: #006CB7;
  text-align: center;
}
.page_trade .sec_overview .service_list li .icon {
  border-radius: 8px;
  margin: 20px auto;
  width: 100px;
}
.page_trade .sec_overview .out_link {
  margin: 60px auto auto;
}
@media screen and (max-width: 768px) {
  .page_trade .sec_overview .out_link {
    margin: 30px auto auto;
  }
}
.page_trade .sec_wire {
  margin: 80px auto 80px;
  width: 90%;
  max-width: 1120px;
}
@media screen and (max-width: 768px) {
  .page_trade .sec_wire {
    margin: 80px auto 40px;
  }
}
.page_trade .sec_wire .block_01, .page_trade .sec_wire .block_02, .page_trade .sec_wire .block_03 {
  display: flex;
  column-gap: 60px;
  padding: 60px 0;
  border-bottom: 1px solid #D9D9D9;
}
@media screen and (max-width: 768px) {
  .page_trade .sec_wire .block_01, .page_trade .sec_wire .block_02, .page_trade .sec_wire .block_03 {
    display: block;
  }
}
.page_trade .sec_wire .block_01 .left, .page_trade .sec_wire .block_02 .left, .page_trade .sec_wire .block_03 .left {
  width: calc(100% - 420px - 60px);
}
@media screen and (max-width: 999px) {
  .page_trade .sec_wire .block_01 .left, .page_trade .sec_wire .block_02 .left, .page_trade .sec_wire .block_03 .left {
    width: calc(100% - 280px - 60px);
  }
}
@media screen and (max-width: 768px) {
  .page_trade .sec_wire .block_01 .left, .page_trade .sec_wire .block_02 .left, .page_trade .sec_wire .block_03 .left {
    width: 100%;
  }
}
.page_trade .sec_wire .block_01 .left .title, .page_trade .sec_wire .block_02 .left .title, .page_trade .sec_wire .block_03 .left .title {
  color: #006CB7;
  font-weight: 700;
  font-size: 24px;
}
@media screen and (max-width: 768px) {
  .page_trade .sec_wire .block_01 .left .title, .page_trade .sec_wire .block_02 .left .title, .page_trade .sec_wire .block_03 .left .title {
    font-size: 20px;
  }
}
.page_trade .sec_wire .block_01 .left .txt, .page_trade .sec_wire .block_02 .left .txt, .page_trade .sec_wire .block_03 .left .txt {
  margin-top: 10px;
}
.page_trade .sec_wire .block_01 .left .out_link, .page_trade .sec_wire .block_02 .left .out_link, .page_trade .sec_wire .block_03 .left .out_link {
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .page_trade .sec_wire .block_01 .left .out_link, .page_trade .sec_wire .block_02 .left .out_link, .page_trade .sec_wire .block_03 .left .out_link {
    margin: 30px auto auto;
  }
}
.page_trade .sec_wire .block_01 .left .sp_img, .page_trade .sec_wire .block_02 .left .sp_img, .page_trade .sec_wire .block_03 .left .sp_img {
  display: none;
}
@media screen and (max-width: 768px) {
  .page_trade .sec_wire .block_01 .left .sp_img, .page_trade .sec_wire .block_02 .left .sp_img, .page_trade .sec_wire .block_03 .left .sp_img {
    width: 100%;
    max-width: 420px;
    margin: 15px auto auto;
    display: block;
    border-radius: 10px;
  }
}
.page_trade .sec_wire .block_01 .right, .page_trade .sec_wire .block_02 .right, .page_trade .sec_wire .block_03 .right {
  width: 420px;
}
@media screen and (max-width: 999px) {
  .page_trade .sec_wire .block_01 .right, .page_trade .sec_wire .block_02 .right, .page_trade .sec_wire .block_03 .right {
    width: 280px;
  }
}
@media screen and (max-width: 768px) {
  .page_trade .sec_wire .block_01 .right, .page_trade .sec_wire .block_02 .right, .page_trade .sec_wire .block_03 .right {
    display: none;
  }
}
.page_trade .sec_wire .block_01 .right img, .page_trade .sec_wire .block_02 .right img, .page_trade .sec_wire .block_03 .right img {
  border-radius: 10px;
}
.page_trade .sec_wire .block_03 {
  border-bottom: none;
}

/*-----------------------------------------
不動産売買仲介事業
-----------------------------------------*/
.page_rent .sec_rent {
  margin: 80px auto 100px;
  width: 90%;
  max-width: 1120px;
  display: flex;
  column-gap: 60px;
}
@media screen and (max-width: 768px) {
  .page_rent .sec_rent {
    margin: 40px auto 100px;
  }
}
.page_rent .left {
  width: calc(100% - 420px - 60px);
}
@media screen and (max-width: 999px) {
  .page_rent .left {
    width: calc(100% - 280px - 60px);
  }
}
@media screen and (max-width: 768px) {
  .page_rent .left {
    width: 100%;
  }
}
.page_rent .left .title {
  color: #006CB7;
  font-weight: 700;
  font-size: 24px;
}
@media screen and (max-width: 768px) {
  .page_rent .left .title {
    font-size: 20px;
  }
}
.page_rent .left .txt {
  margin-top: 10px;
}
.page_rent .left .out_link {
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .page_rent .left .out_link {
    margin: 30px auto auto;
  }
}
.page_rent .left .sp_img {
  display: none;
}
@media screen and (max-width: 768px) {
  .page_rent .left .sp_img {
    width: 100%;
    max-width: 420px;
    margin: 15px auto auto;
    display: block;
    border-radius: 10px;
  }
}
.page_rent .right {
  width: 420px;
}
@media screen and (max-width: 999px) {
  .page_rent .right {
    width: 280px;
  }
}
@media screen and (max-width: 768px) {
  .page_rent .right {
    display: none;
  }
}
.page_rent .right img {
  border-radius: 10px;
}

/*-----------------------------------------
不動産分譲事業
-----------------------------------------*/
.page_sales {
  /* 概要セクション */
  /* 特徴セクション */
}
.page_sales .sec_overview {
  margin: 80px auto;
  width: 90%;
  max-width: 1120px;
}
@media screen and (max-width: 768px) {
  .page_sales .sec_overview {
    margin: 40px auto 60px;
  }
}
.page_sales .sec_overview .title_wrap .catch {
  font-size: 24px;
  font-weight: 700;
  color: #006CB7;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .page_sales .sec_overview .title_wrap .catch {
    font-size: 20px;
  }
}
.page_sales .sec_overview .title_wrap .line {
  width: 100px;
  height: 1px;
  background-color: #D9D9D9;
  margin: 20px auto 60px;
}
@media screen and (max-width: 999px) {
  .page_sales .sec_overview .title_wrap .line {
    margin: 20px auto 20px;
  }
}
.page_sales .sec_overview .flex {
  display: flex;
  column-gap: 60px;
}
@media screen and (max-width: 999px) {
  .page_sales .sec_overview .flex {
    display: block;
  }
}
.page_sales .sec_overview .flex .txt_wrap {
  width: calc(100% - 475px - 60px);
}
@media screen and (max-width: 999px) {
  .page_sales .sec_overview .flex .txt_wrap {
    width: 100%;
  }
}
.page_sales .sec_overview .flex .change {
  width: 475px;
  background-color: #F4F7FB;
  border-radius: 10px;
  padding: 30px 0;
}
@media screen and (max-width: 999px) {
  .page_sales .sec_overview .flex .change {
    width: 100%;
    max-width: 475px;
    margin: 15px auto auto;
  }
}
.page_sales .sec_overview .flex .change .title {
  font-size: 20px;
  font-weight: 700;
  color: #006CB7;
  text-align: center;
  margin-bottom: 20px;
}
.page_sales .sec_overview .flex .change .list {
  margin: auto;
  width: 270px;
  position: relative;
}
.page_sales .sec_overview .flex .change .list::before {
  position: absolute;
  content: "";
  width: 1px;
  height: calc(100% - 10px - 10px);
  background-color: #D9D9D9;
  left: 6px;
  top: 6px;
}
.page_sales .sec_overview .flex .change .list .item {
  padding-left: 30px;
  position: relative;
}
.page_sales .sec_overview .flex .change .list .item::after {
  position: absolute;
  content: "";
  background-color: #D9D9D9;
  width: 12px;
  height: 12px;
  border-radius: 2px;
  left: 0;
  top: 6px;
}
.page_sales .sec_overview .flex .change .list .item:last-of-type {
  font-size: 22px;
  font-weight: 700;
  color: #006CB7;
}
@media screen and (max-width: 768px) {
  .page_sales .sec_overview .flex .change .list .item:last-of-type {
    font-size: 18px;
  }
}
.page_sales .sec_overview .flex .change .list .item:last-of-type::after {
  background-color: #006CB7;
  top: 13px;
}
@media screen and (max-width: 768px) {
  .page_sales .sec_overview .flex .change .list .item:last-of-type::after {
    top: 9px;
  }
}
.page_sales .sec_overview .point {
  margin: 60px auto auto;
}
.page_sales .sec_overview .point .strong {
  font-size: 20px;
  font-weight: 700;
  color: #006CB7;
  margin-bottom: 5px;
}
.page_sales .sec_overview .point .point_list {
  margin: 30px auto auto;
  display: flex;
  column-gap: 2.3%;
}
@media screen and (max-width: 768px) {
  .page_sales .sec_overview .point .point_list {
    display: block;
    margin: 30px auto auto;
  }
}
.page_sales .sec_overview .point .point_list li {
  width: 31.8%;
  border: 1px solid #D9D9D9;
  border-radius: 10px;
  padding: 25px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .page_sales .sec_overview .point .point_list li {
    width: 100%;
    max-width: 420px;
    margin: auto auto 20px;
  }
}
.page_sales .sec_overview .point .point_list li .name {
  font-size: 20px;
  font-weight: 700;
  color: #006CB7;
  text-align: center;
}
.page_sales .sec_overview .point .point_list li .icon {
  border-radius: 8px;
  margin: 20px auto;
  width: 100px;
  align-self: center;
}
.page_sales .sec_overview .sales_neocrest {
  margin: 60px auto auto;
  border: 1px solid #D9D9D9;
  border-radius: 10px;
  padding: 30px 20px;
  display: flex;
  align-items: center;
  column-gap: 40px;
}
@media screen and (max-width: 768px) {
  .page_sales .sec_overview .sales_neocrest {
    display: block;
  }
}
.page_sales .sec_overview .sales_neocrest .txt_wrap {
  width: 100%;
}
.page_sales .sec_overview .sales_neocrest .txt_wrap .strong {
  font-size: 20px;
  font-weight: 700;
  color: #006CB7;
  margin-bottom: 5px;
}
.page_sales .sec_overview .sales_neocrest .btn {
  width: 300px;
}
@media screen and (max-width: 768px) {
  .page_sales .sec_overview .sales_neocrest .btn {
    font-size: 14px;
    width: 100%;
    margin: 30px auto auto;
  }
}
.page_sales .sec_features {
  margin: 80px auto 110px;
  padding: 80px 0;
  width: calc(100% - 40px);
  background-color: #F4F7FB;
  border-radius: 20px;
}
@media screen and (max-width: 768px) {
  .page_sales .sec_features {
    margin: 80px auto 80px;
    width: 100%;
  }
}
.page_sales .sec_features .title_wrap .catch {
  font-size: 24px;
  font-weight: 700;
  color: #006CB7;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .page_sales .sec_features .title_wrap .catch {
    font-size: 20px;
  }
}
.page_sales .sec_features .title_wrap .line {
  width: 100px;
  height: 1px;
  background-color: #D9D9D9;
  margin: 20px auto 60px;
}
@media screen and (max-width: 999px) {
  .page_sales .sec_features .title_wrap .line {
    margin: 20px auto 40px;
  }
}
.page_sales .sec_features .list {
  display: flex;
  flex-direction: column;
  gap: 30px;
  width: 90%;
  max-width: 1120px;
  margin: auto;
}
.page_sales .sec_features .list .item {
  display: flex;
  align-items: center;
  column-gap: 40px;
}
@media screen and (max-width: 999px) {
  .page_sales .sec_features .list .item {
    display: block;
  }
}
.page_sales .sec_features .list .item .left {
  width: calc(100% - 40px - 350px);
}
@media screen and (max-width: 999px) {
  .page_sales .sec_features .list .item .left {
    width: 100%;
  }
}
.page_sales .sec_features .list .item .left .number {
  background-color: #006CB7;
  color: #FFFFFF;
  font-family: "Lato", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 14px;
  padding: 2px 12px;
  border-radius: 20px;
  display: inline-block;
  margin-bottom: 10px;
}
.page_sales .sec_features .list .item .left .subtitle {
  font-size: 20px;
  font-weight: 700;
  color: #006CB7;
  margin-bottom: 5px;
}
@media screen and (max-width: 768px) {
  .page_sales .sec_features .list .item .left .subtitle {
    margin-bottom: 10px;
  }
}
.page_sales .sec_features .list .item .left img {
  display: none;
}
@media screen and (max-width: 768px) {
  .page_sales .sec_features .list .item .left img {
    display: block;
    border-radius: 20px;
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 768px) {
  .page_sales .sec_features .list .item .right {
    display: none;
  }
}
.page_sales .sec_features .list .item .right img {
  border-radius: 10px;
}
@media screen and (max-width: 999px) {
  .page_sales .sec_features .list .item .right img {
    margin: 20px auto 40px;
  }
}

/*-----------------------------------------
リフォーム事業
-----------------------------------------*/
.page_reform {
  /* 共通タイトル */
  /* 概要 */
  /* メニュー */
  /* 小さなトラブル対応 */
  /* お家診断 */
}
.page_reform .title_wrap .catch {
  font-size: 24px;
  font-weight: 700;
  color: #006CB7;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .page_reform .title_wrap .catch {
    font-size: 20px;
  }
}
.page_reform .title_wrap .line {
  width: 100px;
  height: 1px;
  background-color: #D9D9D9;
  margin: 10px auto 30px;
}
@media screen and (max-width: 768px) {
  .page_reform .title_wrap .line {
    margin: 10px auto 20px;
  }
}
.page_reform .sec_intro {
  margin: 80px auto;
  width: 90%;
  max-width: 1120px;
}
@media screen and (max-width: 768px) {
  .page_reform .sec_intro {
    margin: 40px auto 60px;
  }
}
.page_reform .sec_intro .txt_wrap {
  margin-top: 30px;
}
.page_reform .sec_intro .txt_wrap .txt {
  margin-bottom: 10px;
}
.page_reform .sec_intro .txt_wrap .txt:last-of-type {
  margin-bottom: 0;
}
.page_reform .sec_intro .img_wrap {
  margin-top: 30px;
}
.page_reform .sec_intro .img_wrap img {
  border-radius: 20px;
}
@media screen and (max-width: 768px) {
  .page_reform .sec_intro .img_wrap img {
    border-radius: 10px;
  }
}
.page_reform .sec_menu {
  margin: 80px auto auto;
  width: 90%;
  max-width: 1120px;
}
@media screen and (max-width: 768px) {
  .page_reform .sec_menu {
    margin: 60px auto;
  }
}
.page_reform .sec_menu .lead {
  text-align: center;
  margin: 0 auto 30px;
}
.page_reform .sec_menu .list {
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}
@media screen and (max-width: 999px) {
  .page_reform .sec_menu .list {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 768px) {
  .page_reform .sec_menu .list {
    grid-template-columns: 1fr;
  }
}
.page_reform .sec_menu .list .item {
  background: #fff;
  border: 1px solid #D9D9D9;
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  text-align: center;
  min-height: 170px;
}
@media screen and (max-width: 768px) {
  .page_reform .sec_menu .list .item {
    min-height: auto;
  }
}
.page_reform .sec_menu .list .item .subtitle {
  font-size: 18px;
  font-weight: 700;
  color: #006CB7;
  margin: 0;
  background-color: #E8F8FF;
  padding: 12px 0;
  text-align: center;
  border-radius: 10px 10px 0 0;
}
@media screen and (max-width: 999px) {
  .page_reform .sec_menu .list .item .subtitle {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  .page_reform .sec_menu .list .item .subtitle {
    font-size: 18px;
  }
}
.page_reform .sec_menu .list .item .desc {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px 20px;
  margin: 0;
  letter-spacing: 0;
  font-size: 14px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .page_reform .sec_menu .list .item .desc {
    padding: 15px 10px;
  }
}
.page_reform .sec_trouble {
  margin: 80px auto;
  width: 90%;
  max-width: 1120px;
}
@media screen and (max-width: 768px) {
  .page_reform .sec_trouble {
    margin: 60px auto;
  }
}
.page_reform .sec_trouble .lead {
  text-align: center;
  margin: 0 auto 30px;
}
.page_reform .sec_trouble .grid {
  list-style: none;
  padding: 0;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  justify-content: center;
  gap: 10px;
}
@media screen and (max-width: 768px) {
  .page_reform .sec_trouble .grid {
    grid-template-columns: repeat(2, 1fr);
    justify-content: center;
  }
}
.page_reform .sec_trouble .grid li {
  min-width: 200px;
  border: 1px solid #D9D9D9;
  border-radius: 5px;
  padding: 20px 10px;
  background: #fff;
  font-size: 14px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .page_reform .sec_trouble .grid li {
    min-width: 200px;
    width: auto;
    padding: 0 5px;
    height: 66px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
@media screen and (max-width: 449px) {
  .page_reform .sec_trouble .grid li {
    min-width: auto;
  }
}
.page_reform .sec_trouble .img_wrap {
  margin: 80px auto auto;
}
@media screen and (max-width: 768px) {
  .page_reform .sec_trouble .img_wrap {
    margin: 30px auto auto;
  }
}
.page_reform .sec_trouble .img_wrap img {
  border-radius: 20px;
}
@media screen and (max-width: 768px) {
  .page_reform .sec_trouble .img_wrap img {
    border-radius: 10px;
  }
}
.page_reform .sec_check {
  margin: 80px auto 110px;
  width: 90%;
  max-width: 1120px;
}
@media screen and (max-width: 768px) {
  .page_reform .sec_check {
    margin: 60px auto 80px;
  }
}
.page_reform .sec_check .lead {
  text-align: center;
  max-width: 900px;
  margin: 0 auto 20px;
}
.page_reform .sec_check .grid {
  list-style: none;
  padding: 0;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, 200px);
  justify-content: center;
  gap: 10px;
}
@media screen and (max-width: 768px) {
  .page_reform .sec_check .grid {
    grid-template-columns: repeat(2, 1fr);
    justify-content: center;
  }
}
.page_reform .sec_check .grid li {
  min-width: 200px;
  border: 1px solid #D9D9D9;
  border-radius: 5px;
  padding: 20px 10px;
  background: #fff;
  font-size: 14px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .page_reform .sec_check .grid li {
    width: auto;
    padding: 0 5px;
    height: 66px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
@media screen and (max-width: 449px) {
  .page_reform .sec_check .grid li {
    min-width: auto;
  }
}

/*-----------------------------------------
不動産運用事業
-----------------------------------------*/
.page_asset {
  /* 共通タイトル */
  /* 事例 */
  /* 収益物件取引実績 */
}
.page_asset .title_wrap .catch {
  font-size: 24px;
  font-weight: 700;
  color: #006CB7;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .page_asset .title_wrap .catch {
    font-size: 20px;
  }
}
.page_asset .title_wrap .line {
  width: 100px;
  height: 1px;
  background-color: #D9D9D9;
  margin: 10px auto 40px;
}
@media screen and (max-width: 768px) {
  .page_asset .title_wrap .line {
    margin: 10px auto 30px;
  }
}
.page_asset .sec_cases {
  margin: 80px auto 8px;
  width: 90%;
  max-width: 840px;
}
@media screen and (max-width: 768px) {
  .page_asset .sec_cases {
    margin: 40px auto 80px;
  }
}
.page_asset .sec_cases .txt_wrap {
  margin: auto auto 30px;
}
.page_asset .sec_cases .flex {
  display: flex;
  column-gap: 10px;
  row-gap: 30px;
  flex-wrap: wrap;
  justify-content: flex-start;
}
@media screen and (max-width: 930px) {
  .page_asset .sec_cases .flex {
    width: 554px;
    margin: auto;
  }
}
@media screen and (max-width: 768px) {
  .page_asset .sec_cases .flex {
    display: flex;
    width: 100%;
  }
}
.page_asset .sec_cases .flex .item {
  width: calc((100% - 20px) / 3);
  min-width: 272px;
  background-color: #F4F7FB;
  border-radius: 10px;
  padding: 20px;
}
@media screen and (max-width: 768px) {
  .page_asset .sec_cases .flex .item {
    margin-bottom: 30px;
    width: 100%;
    max-width: 420px;
    margin: auto;
  }
  .page_asset .sec_cases .flex .item:last-of-type {
    margin-bottom: 0;
  }
}
.page_asset .sec_cases .flex .item img {
  border-radius: 10px;
}
.page_asset .sec_cases .flex .item img.pc {
  display: block;
}
@media screen and (max-width: 768px) {
  .page_asset .sec_cases .flex .item img.pc {
    display: none;
  }
}
.page_asset .sec_cases .flex .item img.sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .page_asset .sec_cases .flex .item img.sp {
    display: block;
  }
}
.page_asset .sec_cases .flex .item .name {
  font-size: 20px;
  color: #006CB7;
  margin-top: 20px;
}
.page_asset .sec_cases .flex .item .addr {
  color: #006CB7;
  font-size: 14px;
}
.page_asset .sec_cases .flex .item .tag {
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
  margin-top: 10px;
}
.page_asset .sec_cases .flex .item .tag p {
  padding: 0 10px;
  min-width: 90px;
  background-color: #FFFFFF;
  color: #006CB7;
  border: 1px solid #006CB7;
  border-radius: 22px;
  text-align: center;
  font-size: 12px;
}
.page_asset .sec_results {
  margin: 80px auto;
  width: 90%;
  max-width: 840px;
}
@media screen and (max-width: 768px) {
  .page_asset .sec_results {
    margin: 60px auto;
  }
}
.page_asset .sec_results .results_wrap .subtitle {
  font-size: 20px;
  font-weight: 700;
  color: #006CB7;
  padding-left: 22px;
  position: relative;
  background-color: #F4F7FB;
  padding: 10px 15px 10px 37px;
}
.page_asset .sec_results .results_wrap .subtitle::before {
  position: absolute;
  content: "";
  background-color: #006CB7;
  width: 12px;
  height: 12px;
  border-radius: 2px;
  left: 15px;
  top: 22px;
}
.page_asset .sec_results .results_wrap .list {
  display: flex;
  justify-content: space-between;
  margin: 20px 10px 60px;
  flex-wrap: wrap;
  row-gap: 10px;
}
@media screen and (max-width: 768px) {
  .page_asset .sec_results .results_wrap .list {
    display: block;
  }
}
.page_asset .sec_results .results_wrap .list li {
  width: 49%;
}
@media screen and (max-width: 768px) {
  .page_asset .sec_results .results_wrap .list li {
    width: 100%;
    margin-bottom: 10px;
  }
  .page_asset .sec_results .results_wrap .list li:last-of-type {
    margin-bottom: 0;
  }
}

/*-----------------------------------------
次世代育成支援対策・女性活躍 推進ページ（jisedai）
-----------------------------------------*/
.page_jisedai {
  /* 共通レイアウト */
}
.page_jisedai .sec_plan_jisedai, .page_jisedai .sec_plan_woman {
  margin: 80px auto;
  width: 80%;
  max-width: 1260px;
  /* タイトル・導入 */
  /* 計画期間 */
  /* 目標ブロック */
  /* 画像（右カラム） */
  /* 公表項目 */
}
@media screen and (max-width: 999px) {
  .page_jisedai .sec_plan_jisedai, .page_jisedai .sec_plan_woman {
    margin: 60px auto;
  }
}
@media screen and (max-width: 768px) {
  .page_jisedai .sec_plan_jisedai, .page_jisedai .sec_plan_woman {
    margin: 40px auto;
    width: 90%;
  }
}
.page_jisedai .sec_plan_jisedai .content, .page_jisedai .sec_plan_woman .content {
  display: flex;
  column-gap: 40px;
  align-items: flex-start;
}
@media screen and (max-width: 999px) {
  .page_jisedai .sec_plan_jisedai .content, .page_jisedai .sec_plan_woman .content {
    display: block;
  }
}
.page_jisedai .sec_plan_jisedai .left, .page_jisedai .sec_plan_woman .left {
  width: calc(58% - 40px);
}
@media screen and (max-width: 999px) {
  .page_jisedai .sec_plan_jisedai .left, .page_jisedai .sec_plan_woman .left {
    width: 100%;
  }
}
.page_jisedai .sec_plan_jisedai .right, .page_jisedai .sec_plan_woman .right {
  width: 42%;
}
@media screen and (max-width: 999px) {
  .page_jisedai .sec_plan_jisedai .right, .page_jisedai .sec_plan_woman .right {
    width: 100%;
    max-width: 475px;
    margin: 20px auto auto;
  }
}
.page_jisedai .sec_plan_jisedai .title, .page_jisedai .sec_plan_woman .title {
  font-size: 26px;
  line-height: 1.7;
  font-weight: 700;
  color: #006CB7;
}
@media screen and (max-width: 768px) {
  .page_jisedai .sec_plan_jisedai .title, .page_jisedai .sec_plan_woman .title {
    font-size: 22px;
  }
}
.page_jisedai .sec_plan_jisedai .intro, .page_jisedai .sec_plan_woman .intro {
  margin-top: 16px;
  line-height: 1.9;
}
.page_jisedai .sec_plan_jisedai .period, .page_jisedai .sec_plan_woman .period {
  margin-top: 20px;
}
.page_jisedai .sec_plan_jisedai .period .square, .page_jisedai .sec_plan_woman .period .square {
  color: #006CB7;
  font-weight: 700;
  padding-left: 20px;
  position: relative;
}
.page_jisedai .sec_plan_jisedai .period .square::after, .page_jisedai .sec_plan_woman .period .square::after {
  position: absolute;
  content: "";
  width: 12px;
  height: 12px;
  border-radius: 2px;
  background-color: #006CB7;
  left: 0;
  top: 8px;
}
.page_jisedai .sec_plan_jisedai .period p, .page_jisedai .sec_plan_woman .period p {
  margin-top: 4px;
}
.page_jisedai .sec_plan_jisedai .goal_wrap, .page_jisedai .sec_plan_woman .goal_wrap {
  margin-top: 40px;
}
.page_jisedai .sec_plan_jisedai .goal_wrap .goal, .page_jisedai .sec_plan_woman .goal_wrap .goal {
  background-color: #FFFFFF;
  border-radius: 10px;
  display: flex;
  column-gap: 40px;
}
@media screen and (max-width: 768px) {
  .page_jisedai .sec_plan_jisedai .goal_wrap .goal, .page_jisedai .sec_plan_woman .goal_wrap .goal {
    display: block;
  }
}
.page_jisedai .sec_plan_jisedai .goal_wrap .goal .label, .page_jisedai .sec_plan_woman .goal_wrap .goal .label {
  color: #006CB7;
  background-color: #F4F7FB;
  font-weight: 700;
  font-size: 16px;
  width: 200px;
  display: flex;
  justify-content: center;
  padding-top: 30px;
  border-top: 1px solid #006CB7;
  border-bottom: 1px solid #006CB7;
}
@media screen and (max-width: 768px) {
  .page_jisedai .sec_plan_jisedai .goal_wrap .goal .label, .page_jisedai .sec_plan_woman .goal_wrap .goal .label {
    width: 100%;
    padding: 20px 0;
  }
}
.page_jisedai .sec_plan_jisedai .goal_wrap .goal .txt_wrap, .page_jisedai .sec_plan_woman .goal_wrap .goal .txt_wrap {
  width: calc(100% - 200px - 40px);
  padding: 30px 0;
  border-top: 1px solid #D9D9D9;
  border-bottom: 1px solid #D9D9D9;
}
@media screen and (max-width: 768px) {
  .page_jisedai .sec_plan_jisedai .goal_wrap .goal .txt_wrap, .page_jisedai .sec_plan_woman .goal_wrap .goal .txt_wrap {
    width: 100%;
    padding: 20px 0;
    border-top: none;
    border-bottom: none;
    margin-bottom: 40px;
  }
}
.page_jisedai .sec_plan_jisedai .goal_wrap .goal .txt_wrap h5, .page_jisedai .sec_plan_woman .goal_wrap .goal .txt_wrap h5 {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 6px;
  margin-bottom: 10px;
}
.page_jisedai .sec_plan_jisedai .goal_wrap .goal .txt_wrap li, .page_jisedai .sec_plan_woman .goal_wrap .goal .txt_wrap li {
  margin-bottom: 10px;
  text-indent: -1em;
  padding-left: 1em;
}
.page_jisedai .sec_plan_jisedai .goal_wrap .goal .txt_wrap li:last-of-type, .page_jisedai .sec_plan_woman .goal_wrap .goal .txt_wrap li:last-of-type {
  margin-bottom: 0;
}
.page_jisedai .sec_plan_jisedai .goal_wrap .goal:last-of-type .label, .page_jisedai .sec_plan_woman .goal_wrap .goal:last-of-type .label {
  border-top: none;
}
@media screen and (max-width: 768px) {
  .page_jisedai .sec_plan_jisedai .goal_wrap .goal:last-of-type .label, .page_jisedai .sec_plan_woman .goal_wrap .goal:last-of-type .label {
    border-top: 1px solid #006CB7;
  }
}
.page_jisedai .sec_plan_jisedai .goal_wrap .goal:last-of-type .txt_wrap, .page_jisedai .sec_plan_woman .goal_wrap .goal:last-of-type .txt_wrap {
  border-top: none;
}
.page_jisedai .sec_plan_jisedai .goal_wrap .announce li, .page_jisedai .sec_plan_woman .goal_wrap .announce li {
  margin-bottom: 0;
  text-indent: 0em !important;
  padding-left: 0em !important;
}
.page_jisedai .sec_plan_jisedai .image, .page_jisedai .sec_plan_woman .image {
  width: 100%;
}
.page_jisedai .sec_plan_jisedai .image img, .page_jisedai .sec_plan_woman .image img {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 10px;
}
.page_jisedai .sec_plan_jisedai .publication, .page_jisedai .sec_plan_woman .publication {
  margin-top: 18px;
  display: grid;
  grid-template-columns: 90px 1fr;
  gap: 12px;
}
@media screen and (max-width: 768px) {
  .page_jisedai .sec_plan_jisedai .publication, .page_jisedai .sec_plan_woman .publication {
    grid-template-columns: 80px 1fr;
  }
}
.page_jisedai .sec_plan_jisedai .publication .label, .page_jisedai .sec_plan_woman .publication .label {
  background-color: #006CB7;
  color: #FFFFFF;
  border-radius: 6px;
  display: grid;
  place-items: center;
  font-weight: 700;
}
.page_jisedai .sec_plan_jisedai .publication .text, .page_jisedai .sec_plan_woman .publication .text {
  align-self: center;
}
.page_jisedai .sec_plan_woman {
  margin: 110px auto;
}
@media screen and (max-width: 768px) {
  .page_jisedai .sec_plan_woman {
    margin: 80px auto 40px;
  }
}

/*-----------------------------------------
CSR の取り組み
-----------------------------------------*/
.page_csr {
  /* ページ共通余白 */
}
.page_csr .sec_csr {
  margin: 80px auto;
  width: 90%;
  max-width: 840px;
  /* 導入 */
  /* 年表 */
}
@media screen and (max-width: 768px) {
  .page_csr .sec_csr {
    margin: 40px auto 60px;
  }
}
.page_csr .sec_csr .csr_intro .lead {
  margin-top: 16px;
  line-height: 1.65;
}
.page_csr .sec_csr .csr_history {
  margin-top: 80px;
}
@media screen and (max-width: 768px) {
  .page_csr .sec_csr .csr_history {
    margin-top: 40px;
  }
}
.page_csr .sec_csr .csr_history .subtitle {
  font-size: 20px;
  font-weight: 700;
  color: #006CB7;
  padding-left: 22px;
  position: relative;
  background-color: #F4F7FB;
  padding: 10px 15px 10px 37px;
}
.page_csr .sec_csr .csr_history .subtitle::before {
  position: absolute;
  content: "";
  background-color: #006CB7;
  width: 12px;
  height: 12px;
  border-radius: 2px;
  left: 15px;
  top: 22px;
}
.page_csr .sec_csr .csr_history .history_item {
  display: flex;
  width: calc(100% - 40px);
  margin: auto;
}
@media screen and (max-width: 768px) {
  .page_csr .sec_csr .csr_history .history_item {
    width: 100%;
  }
}
@media screen and (max-width: 389px) {
  .page_csr .sec_csr .csr_history .history_item {
    display: block;
  }
}
.page_csr .sec_csr .csr_history .history_item .year {
  font-weight: 700;
  color: #006CB7;
  border-bottom: 2px solid #006CB7;
  padding: 22px;
  width: 204px;
}
@media screen and (max-width: 999px) {
  .page_csr .sec_csr .csr_history .history_item .year {
    width: 119px;
    padding: 22px 0;
  }
}
@media screen and (max-width: 389px) {
  .page_csr .sec_csr .csr_history .history_item .year {
    width: 100%;
    padding: 15px 0;
  }
}
.page_csr .sec_csr .csr_history .history_item .word {
  font-weight: 700;
  color: #006CB7;
  display: inline-block;
}
.page_csr .sec_csr .csr_history .history_item ul {
  padding: 22px 0 22px 92px;
  width: calc(100% - 204px);
  border-bottom: 1px solid #D9D9D9;
}
@media screen and (max-width: 999px) {
  .page_csr .sec_csr .csr_history .history_item ul {
    padding: 22px 0 22px 22px;
    width: calc(100% - 119px);
  }
}
@media screen and (max-width: 389px) {
  .page_csr .sec_csr .csr_history .history_item ul {
    width: 100%;
    padding: 10px 0 10px 0;
    border-bottom: none;
    margin-bottom: 20px;
  }
}
.page_csr .sec_csr .csr_history .history_item ul li {
  text-indent: -1em;
  padding-left: 1em;
}

/*-----------------------------------------
トータルサポート体制
-----------------------------------------*/
.page_support {
  /* 概要 */
  /* サポート一覧 */
}
.page_support .sec_overview {
  margin: 80px auto auto;
  width: 90%;
  max-width: 840px;
}
@media screen and (max-width: 768px) {
  .page_support .sec_overview {
    margin: 40px auto auto;
  }
}
.page_support .sec_overview .title_wrap .catch {
  font-size: 24px;
  font-weight: 700;
  color: #006CB7;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .page_support .sec_overview .title_wrap .catch {
    font-size: 22px;
  }
}
.page_support .sec_overview .title_wrap .line {
  width: 100px;
  height: 1px;
  background-color: #D9D9D9;
  margin: 10px auto 30px;
}
@media screen and (max-width: 768px) {
  .page_support .sec_overview .title_wrap .line {
    margin: 10px auto 20px;
  }
}
.page_support .sec_overview .txt_wrap .txt {
  margin-bottom: 0;
}
.page_support .sec_support_list {
  margin: 60px auto 80px;
  width: 90%;
  max-width: 840px;
}
@media screen and (max-width: 768px) {
  .page_support .sec_support_list {
    margin: 20px auto 80px;
  }
}
.page_support .sec_support_list .list .item {
  background: #fff;
  border-bottom: 1px solid #D9D9D9;
  padding: 32px 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  column-gap: 25px;
}
.page_support .sec_support_list .list .item:last-child {
  border-bottom: none;
}
@media screen and (max-width: 768px) {
  .page_support .sec_support_list .list .item {
    padding: 30px 0;
    display: block;
  }
}
.page_support .sec_support_list .list .item .content {
  width: calc(100% - 300px - 25px);
}
@media screen and (max-width: 768px) {
  .page_support .sec_support_list .list .item .content {
    width: 100%;
  }
}
.page_support .sec_support_list .list .item .content .title {
  font-size: 20px;
  font-weight: 700;
  color: #006CB7;
  margin: 0 0 12px;
  line-height: 1.4;
}
@media screen and (max-width: 768px) {
  .page_support .sec_support_list .list .item .content .title {
    font-size: 18px;
    margin-bottom: 10px;
  }
}
.page_support .sec_support_list .list .item .out_link {
  margin: 30px auto auto;
}

/*-----------------------------------------
藤和ハウスのセレクト（バックアップサービス）
-----------------------------------------*/
.page_backup {
  /* 共通タイトル（reform準拠） */
  /* 概要（reformの.sec_intro相当のトーン） */
  /* セレクト一覧 */
}
.page_backup .title_wrap .catch {
  font-size: 24px;
  font-weight: 700;
  color: #006CB7;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .page_backup .title_wrap .catch {
    font-size: 20px;
  }
}
.page_backup .title_wrap .line {
  width: 100px;
  height: 1px;
  background-color: #D9D9D9;
  margin: 10px auto 30px;
}
@media screen and (max-width: 768px) {
  .page_backup .title_wrap .line {
    margin: 10px auto 20px;
  }
}
.page_backup .sec_overview {
  margin: 80px auto;
  width: 90%;
  max-width: 840px;
}
@media screen and (max-width: 768px) {
  .page_backup .sec_overview {
    margin: 40px auto 40px;
  }
}
.page_backup .sec_select_list {
  margin: 60px auto 110px;
  width: 90%;
  max-width: 840px;
}
@media screen and (max-width: 768px) {
  .page_backup .sec_select_list {
    margin: 40px auto 80px;
  }
}
.page_backup .sec_select_list .subtitle {
  font-size: 20px;
  font-weight: 700;
  color: #006CB7;
  padding-left: 22px;
  position: relative;
  background-color: #F4F7FB;
  padding: 10px 15px 10px 37px;
}
.page_backup .sec_select_list .subtitle::before {
  position: absolute;
  content: "";
  background-color: #006CB7;
  width: 12px;
  height: 12px;
  border-radius: 2px;
  left: 15px;
  top: 22px;
}
@media screen and (max-width: 768px) {
  .page_backup .sec_select_list .subtitle {
    font-size: 16px;
  }
  .page_backup .sec_select_list .subtitle::before {
    top: 17px;
  }
}
.page_backup .sec_select_list .list {
  list-style: none;
  padding: 0;
  margin: 20px auto auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, 200px);
  justify-content: center;
  gap: 10px;
}
@media screen and (max-width: 768px) {
  .page_backup .sec_select_list .list {
    grid-template-columns: repeat(2, 1fr);
  }
}
.page_backup .sec_select_list .list li {
  width: 200px;
  height: 84px;
  border: 1px solid #D9D9D9;
  border-radius: 5px;
  padding: 0 10px;
  background: #fff;
  text-align: center;
  font-size: 14px;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .page_backup .sec_select_list .list li {
    font-size: 12px;
    width: auto;
    padding: 16px 8px;
  }
}

/*-----------------------------------------
アフターサポート
-----------------------------------------*/
.page_after {
  /* セクションの共通幅 */
  /* 友の会 概要 */
  /* 会員特典 */
  /* 会員専用ホームページ＆アプリ */
}
.page_after .sec_login,
.page_after .sec_site_app,
.page_after .sec_benefits,
.page_after .sec_tomonokai {
  margin: 80px auto;
  width: 90%;
  max-width: 840px;
}
@media screen and (max-width: 768px) {
  .page_after .sec_login,
  .page_after .sec_site_app,
  .page_after .sec_benefits,
  .page_after .sec_tomonokai {
    margin: 40px auto;
  }
}
@media screen and (max-width: 768px) {
  .page_after .sec_tomonokai {
    margin: 40px auto 60px;
  }
}
.page_after .sec_tomonokai .wrap .txt {
  font-size: 16px;
}
.page_after .sec_tomonokai .wrap .txt + .txt {
  margin-top: 10px;
}
@media screen and (max-width: 768px) {
  .page_after .sec_tomonokai .wrap .txt {
    font-size: 14px;
  }
}
.page_after .sec_tomonokai .wrap .name_txt {
  font-size: 18px;
  font-weight: 700;
  text-align: right;
  margin-top: 30px;
}
@media screen and (max-width: 768px) {
  .page_after .sec_tomonokai .wrap .name_txt {
    font-size: 16px;
  }
}
.page_after .bg_sec_benefits {
  background-color: #F4F7FB;
  padding: 80px 0;
  border-radius: 20px;
  margin: auto 20px;
}
@media screen and (max-width: 768px) {
  .page_after .bg_sec_benefits {
    padding: 60px 0;
    margin: auto auto;
  }
}
.page_after .bg_sec_benefits .sec_benefits {
  margin: auto;
}
.page_after .sec_benefits .list {
  list-style: none;
  padding: 0;
  margin: 20px 0 0;
}
.page_after .sec_benefits .benefit {
  border-radius: 6px;
  padding: 16px;
  margin: 60px auto auto;
}
@media screen and (max-width: 768px) {
  .page_after .sec_benefits .benefit {
    margin: 40px auto auto;
    padding: 0;
  }
}
.page_after .sec_benefits .benefit .content .title {
  font-size: 18px;
  font-weight: 700;
  margin: 0 0 10px;
  color: #006CB7;
}
@media screen and (max-width: 768px) {
  .page_after .sec_benefits .benefit .content .title {
    font-size: 16px;
  }
}
.page_after .sec_benefits .benefit .content .desc {
  margin: 0 0 30px;
}
.page_after .sec_benefits .lawyer .points {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .page_after .sec_benefits .lawyer .points {
    justify-content: flex-start;
    column-gap: 9px;
    row-gap: 12px;
  }
}
@media screen and (max-width: 449px) {
  .page_after .sec_benefits .lawyer .points {
    max-width: 229px;
    width: 100%;
    margin: auto;
  }
}
.page_after .sec_benefits .lawyer .points li {
  background-color: #FFFFFF;
  border: 1px solid #D9D9D9;
  color: #006CB7;
  width: 145px;
  height: 145px;
  border-radius: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .page_after .sec_benefits .lawyer .points li {
    width: 110px;
    height: 110px;
    text-align: center;
  }
}
.page_after .sec_benefits .fp .points {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .page_after .sec_benefits .fp .points {
    column-gap: 9px;
    row-gap: 12px;
    justify-content: flex-start;
  }
}
.page_after .sec_benefits .fp .points li {
  background-color: #FFFFFF;
  border: 1px solid #D9D9D9;
  color: #006CB7;
  width: 145px;
  height: 145px;
  border-radius: 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-weight: 700;
  font-size: 26px;
  line-height: 1.3;
}
@media screen and (max-width: 768px) {
  .page_after .sec_benefits .fp .points li {
    font-size: 22px;
    width: calc((100% - 9px) / 2);
    height: 150px;
  }
}
.page_after .sec_benefits .fp .points li .s_txt {
  display: block;
  color: #006CB7;
  font-weight: 700;
}
.page_after .sec_benefits .gift .points {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: center;
}
.page_after .sec_benefits .gift .points li {
  background-color: #FFFFFF;
  border: 1px solid #D9D9D9;
  border-radius: 10px;
  width: calc((100% - 24px) / 3);
  min-width: 250px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  padding: 30px 10px;
}
@media screen and (max-width: 768px) {
  .page_after .sec_benefits .gift .points li {
    width: 100%;
  }
}
.page_after .sec_benefits .gift .points li p {
  font-weight: 700;
  color: #006CB7;
  margin-bottom: 20px;
}
.page_after .sec_benefits .gift .points li img {
  width: 100px;
  height: 100px;
  border-radius: 8px;
}
.page_after .sec_site_app {
  /* ログイン/新規登録 */
}
.page_after .sec_site_app .hp_flex {
  display: flex;
  column-gap: 12%;
  flex-direction: row-reverse;
}
@media screen and (max-width: 768px) {
  .page_after .sec_site_app .hp_flex {
    display: block;
  }
}
.page_after .sec_site_app .hp_flex .ph {
  width: 250px;
  height: auto;
}
@media screen and (max-width: 768px) {
  .page_after .sec_site_app .hp_flex .ph {
    width: 100%;
    max-width: 420px;
    margin: 20px auto auto;
  }
}
.page_after .sec_site_app .hp_flex .txt_wrap {
  width: calc(100% - 250px - 12%);
}
.page_after .sec_site_app .hp_flex .txt_wrap .txt + .txt {
  margin-top: 10px;
}
@media screen and (max-width: 768px) {
  .page_after .sec_site_app .hp_flex .txt_wrap {
    width: 100%;
  }
}
.page_after .sec_site_app .login {
  margin: 80px auto auto;
}
.page_after .sec_site_app .login .sub_title {
  color: #006CB7;
  font-size: 18px;
  font-weight: 700;
  background-color: #F4F7FB;
  padding: 3px 10px;
}
.page_after .sec_site_app .login .login_wrap .flex {
  display: flex;
  column-gap: 60px;
  margin: 20px auto;
}
@media screen and (max-width: 768px) {
  .page_after .sec_site_app .login .login_wrap .flex {
    display: block;
  }
}
.page_after .sec_site_app .login .login_wrap .flex .ph {
  width: 200px;
  height: auto;
}
@media screen and (max-width: 768px) {
  .page_after .sec_site_app .login .login_wrap .flex .ph {
    width: 100%;
    max-width: 420px;
    margin: auto auto 20px;
  }
}
.page_after .sec_site_app .login .login_wrap .flex .txt {
  width: calc(100% - 60px - 200px);
}
@media screen and (max-width: 768px) {
  .page_after .sec_site_app .login .login_wrap .flex .txt {
    width: 100%;
  }
}
.page_after .sec_site_app .login .login_wrap .links {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 40px;
  padding: 30px 0;
}
.page_after .sec_site_app .login .login_wrap .links + .links {
  border-top: 1px solid #D9D9D9;
}
@media screen and (max-width: 768px) {
  .page_after .sec_site_app .login .login_wrap .links {
    display: block;
  }
}
.page_after .sec_site_app .login .login_wrap .links .txt {
  width: calc(100% - 40px - 300px);
  color: #006CB7;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .page_after .sec_site_app .login .login_wrap .links .txt {
    width: 100%;
    margin-bottom: 20px;
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .page_after .sec_site_app .login .login_wrap .links .out_link {
    margin: auto;
  }
}
.page_after .sec_site_app .login .login_wrap .note {
  margin-top: 20px;
  font-size: 12px;
  color: #F0564B;
}

/*-----------------------------------------
コンタクト
-----------------------------------------*/
.page_contact .sec_con_intro, .page_confirm .sec_con_intro, .page_complete .sec_con_intro {
  max-width: 840px;
  width: 90%;
  margin: 80px auto auto;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_con_intro, .page_confirm .sec_con_intro, .page_complete .sec_con_intro {
    margin: 40px auto auto;
  }
}
.page_contact .sec_con_intro .strong, .page_confirm .sec_con_intro .strong, .page_complete .sec_con_intro .strong {
  font-weight: 700;
  font-size: 24px;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_con_intro .strong, .page_confirm .sec_con_intro .strong, .page_complete .sec_con_intro .strong {
    font-size: 20px;
  }
}
.page_contact .sec_con_intro p, .page_confirm .sec_con_intro p, .page_complete .sec_con_intro p {
  text-align: center;
}
.page_contact .sec_con_intro .time, .page_confirm .sec_con_intro .time, .page_complete .sec_con_intro .time {
  font-weight: 700;
  margin-top: 10px;
}
.page_contact .sec_con_intro .current_list, .page_confirm .sec_con_intro .current_list, .page_complete .sec_con_intro .current_list {
  display: flex;
  align-items: center;
  column-gap: 12px;
  justify-content: center;
  margin: 50px auto auto;
}
@media screen and (max-width: 449px) {
  .page_contact .sec_con_intro .current_list, .page_confirm .sec_con_intro .current_list, .page_complete .sec_con_intro .current_list {
    column-gap: 8px;
  }
}
.page_contact .sec_con_intro .current_list p, .page_confirm .sec_con_intro .current_list p, .page_complete .sec_con_intro .current_list p {
  font-size: 18px;
  font-weight: 700;
  color: #D9D9D9;
  position: relative;
  padding-left: 21px;
}
@media screen and (max-width: 449px) {
  .page_contact .sec_con_intro .current_list p, .page_confirm .sec_con_intro .current_list p, .page_complete .sec_con_intro .current_list p {
    font-size: 16px;
    padding-left: 16px;
  }
}
.page_contact .sec_con_intro .current_list p::before, .page_confirm .sec_con_intro .current_list p::before, .page_complete .sec_con_intro .current_list p::before {
  content: "";
  position: absolute;
  background-color: #D9D9D9;
  width: 12px;
  height: 12px;
  border-radius: 2px;
  left: 0;
  top: 10px;
}
@media screen and (max-width: 449px) {
  .page_contact .sec_con_intro .current_list p::before, .page_confirm .sec_con_intro .current_list p::before, .page_complete .sec_con_intro .current_list p::before {
    top: 9px;
    width: 10px;
    height: 10px;
  }
}
.page_contact .sec_con_intro .current_list p.current, .page_confirm .sec_con_intro .current_list p.current, .page_complete .sec_con_intro .current_list p.current {
  color: #2F3134;
}
.page_contact .sec_con_intro .current_list p.current::before, .page_confirm .sec_con_intro .current_list p.current::before, .page_complete .sec_con_intro .current_list p.current::before {
  background-color: #009BDF;
}
.page_contact .sec_con_intro .current_list .hyphen, .page_confirm .sec_con_intro .current_list .hyphen, .page_complete .sec_con_intro .current_list .hyphen {
  width: 24px;
  height: 2px;
  display: block;
  background-color: #D9D9D9;
}
@media screen and (max-width: 449px) {
  .page_contact .sec_con_intro .current_list .hyphen, .page_confirm .sec_con_intro .current_list .hyphen, .page_complete .sec_con_intro .current_list .hyphen {
    width: 15px;
  }
}
.page_contact .sec_con_intro .current_list .hyphen.current, .page_confirm .sec_con_intro .current_list .hyphen.current, .page_complete .sec_con_intro .current_list .hyphen.current {
  background-color: #009BDF;
}
.page_contact .sec_form, .page_confirm .sec_form, .page_complete .sec_form {
  max-width: 840px;
  width: 90%;
  margin: 80px auto 110px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_form, .page_confirm .sec_form, .page_complete .sec_form {
    margin: 60px auto 110px;
  }
}
.page_contact .sec_form .txt_error, .page_confirm .sec_form .txt_error, .page_complete .sec_form .txt_error {
  color: #D44800;
  text-align: center;
  display: none;
  margin-bottom: 20px;
}
.page_contact .sec_form .txt_error.active, .page_confirm .sec_form .txt_error.active, .page_complete .sec_form .txt_error.active {
  display: block;
}
.page_contact .sec_form .mw_wrapper dl, .page_confirm .sec_form .mw_wrapper dl, .page_complete .sec_form .mw_wrapper dl {
  margin-bottom: 30px;
}
.page_contact .sec_form .mw_wrapper dt, .page_confirm .sec_form .mw_wrapper dt, .page_complete .sec_form .mw_wrapper dt {
  font-weight: 700;
  margin-bottom: 12px;
  font-size: 18px;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_form .mw_wrapper dt, .page_confirm .sec_form .mw_wrapper dt, .page_complete .sec_form .mw_wrapper dt {
    font-size: 16px;
  }
}
.page_contact .sec_form .mw_wrapper dt .mark, .page_confirm .sec_form .mw_wrapper dt .mark, .page_complete .sec_form .mw_wrapper dt .mark {
  background-color: #009BDF;
  color: #FFFFFF;
  font-size: 12px;
  padding: 0 5px;
  border-radius: 2px;
  margin-left: 12px;
}
.page_contact .sec_form .mw_wrapper dt .note_txt, .page_confirm .sec_form .mw_wrapper dt .note_txt, .page_complete .sec_form .mw_wrapper dt .note_txt {
  color: #009BDF;
  font-size: 12px;
  margin-top: 4px;
}
.page_contact .sec_form .mw_wrapper dd input, .page_contact .sec_form .mw_wrapper dd select, .page_contact .sec_form .mw_wrapper dd textarea, .page_contact .sec_form .mw_wrapper dd input[type=checkbox], .page_confirm .sec_form .mw_wrapper dd input, .page_confirm .sec_form .mw_wrapper dd select, .page_confirm .sec_form .mw_wrapper dd textarea, .page_confirm .sec_form .mw_wrapper dd input[type=checkbox], .page_complete .sec_form .mw_wrapper dd input, .page_complete .sec_form .mw_wrapper dd select, .page_complete .sec_form .mw_wrapper dd textarea, .page_complete .sec_form .mw_wrapper dd input[type=checkbox] {
  background-color: #F4F7FB;
  border-radius: 5px;
  padding: 10px 16px;
  width: 100%;
  border: 1px solid #D9D9D9;
  transition-duration: 300ms;
  font-size: 18px;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_form .mw_wrapper dd input, .page_contact .sec_form .mw_wrapper dd select, .page_contact .sec_form .mw_wrapper dd textarea, .page_contact .sec_form .mw_wrapper dd input[type=checkbox], .page_confirm .sec_form .mw_wrapper dd input, .page_confirm .sec_form .mw_wrapper dd select, .page_confirm .sec_form .mw_wrapper dd textarea, .page_confirm .sec_form .mw_wrapper dd input[type=checkbox], .page_complete .sec_form .mw_wrapper dd input, .page_complete .sec_form .mw_wrapper dd select, .page_complete .sec_form .mw_wrapper dd textarea, .page_complete .sec_form .mw_wrapper dd input[type=checkbox] {
    font-size: 16px;
  }
}
.page_contact .sec_form .mw_wrapper dd input::placeholder, .page_contact .sec_form .mw_wrapper dd textarea::placeholder, .page_confirm .sec_form .mw_wrapper dd input::placeholder, .page_confirm .sec_form .mw_wrapper dd textarea::placeholder, .page_complete .sec_form .mw_wrapper dd input::placeholder, .page_complete .sec_form .mw_wrapper dd textarea::placeholder {
  color: #D9D9D9;
  letter-spacing: 0.08em;
}
.page_contact .sec_form .mw_wrapper dd input:focus, .page_contact .sec_form .mw_wrapper dd textarea:focus, .page_confirm .sec_form .mw_wrapper dd input:focus, .page_confirm .sec_form .mw_wrapper dd textarea:focus, .page_complete .sec_form .mw_wrapper dd input:focus, .page_complete .sec_form .mw_wrapper dd textarea:focus {
  border: 1px solid #006CB7;
}
.page_contact .sec_form .mw_wrapper dd input:focus::placeholder, .page_contact .sec_form .mw_wrapper dd textarea:focus::placeholder, .page_confirm .sec_form .mw_wrapper dd input:focus::placeholder, .page_confirm .sec_form .mw_wrapper dd textarea:focus::placeholder, .page_complete .sec_form .mw_wrapper dd input:focus::placeholder, .page_complete .sec_form .mw_wrapper dd textarea:focus::placeholder {
  color: transparent;
}
.page_contact .sec_form .mw_wrapper dd textarea, .page_confirm .sec_form .mw_wrapper dd textarea, .page_complete .sec_form .mw_wrapper dd textarea {
  height: 300px;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_form .mw_wrapper dd textarea, .page_confirm .sec_form .mw_wrapper dd textarea, .page_complete .sec_form .mw_wrapper dd textarea {
    height: 150px;
  }
}
.page_contact .sec_form .mw_wrapper dd .error, .page_confirm .sec_form .mw_wrapper dd .error, .page_complete .sec_form .mw_wrapper dd .error {
  color: #D44800;
  font-size: 12px;
  margin-top: 4px;
  display: block;
}
.page_contact .sec_form .mw_wrapper .address_wrap dd, .page_confirm .sec_form .mw_wrapper .address_wrap dd, .page_complete .sec_form .mw_wrapper .address_wrap dd {
  display: block;
}
.page_contact .sec_form .mw_wrapper .address_wrap .p-country-name, .page_confirm .sec_form .mw_wrapper .address_wrap .p-country-name, .page_complete .sec_form .mw_wrapper .address_wrap .p-country-name {
  display: none;
}
.page_contact .sec_form .mw_wrapper .address_wrap .post_code, .page_confirm .sec_form .mw_wrapper .address_wrap .post_code, .page_complete .sec_form .mw_wrapper .address_wrap .post_code {
  margin-bottom: 12px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.page_contact .sec_form .mw_wrapper .address_wrap .post_code .post_mark, .page_confirm .sec_form .mw_wrapper .address_wrap .post_code .post_mark, .page_complete .sec_form .mw_wrapper .address_wrap .post_code .post_mark {
  font-size: 18px;
  margin-top: 12px;
}
.page_contact .sec_form .mw_wrapper .address_wrap .post_code .wrap_input, .page_confirm .sec_form .mw_wrapper .address_wrap .post_code .wrap_input, .page_complete .sec_form .mw_wrapper .address_wrap .post_code .wrap_input {
  width: calc(100% - 1em - 12px);
}
.page_contact .sec_form .mw_wrapper .address_wrap .address, .page_confirm .sec_form .mw_wrapper .address_wrap .address, .page_complete .sec_form .mw_wrapper .address_wrap .address {
  display: flex;
  justify-content: end;
}
.page_contact .sec_form .mw_wrapper .address_wrap .address .wrap_input, .page_confirm .sec_form .mw_wrapper .address_wrap .address .wrap_input, .page_complete .sec_form .mw_wrapper .address_wrap .address .wrap_input {
  width: calc(100% - 1em - 12px);
}
.page_contact .sec_form .mw_wrapper .select_wrap select, .page_confirm .sec_form .mw_wrapper .select_wrap select, .page_complete .sec_form .mw_wrapper .select_wrap select {
  color: #006CB7;
}
.page_contact .sec_form .mw_wrapper .select_wrap dd, .page_confirm .sec_form .mw_wrapper .select_wrap dd, .page_complete .sec_form .mw_wrapper .select_wrap dd {
  position: relative;
}
.page_contact .sec_form .mw_wrapper .select_wrap dd::after, .page_confirm .sec_form .mw_wrapper .select_wrap dd::after, .page_complete .sec_form .mw_wrapper .select_wrap dd::after {
  border: none;
  border-radius: 0;
  transition: 0.3s;
  position: absolute;
  display: inline-block;
  content: "";
  width: 12px;
  height: 12px;
  right: 20px;
  top: 18px;
  background: #006CB7;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: 100%;
  mask-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_レイヤー_1' data-name='レイヤー_1' xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 10 10'%3E%3C!-- Generator: Adobe Illustrator 29.8.1, SVG Export Plug-In . SVG Version: 2.1.1 Build 2) --%3E%3Cdefs%3E%3Cstyle%3E .st0 %7B fill: %237a9098; %7D %3C/style%3E%3C/defs%3E%3Crect class='st0' x='3.8' y='6.3' width='6' height='1' transform='translate(-2.8 6.8) rotate(-45)'/%3E%3Crect class='st0' x='2.7' y='3.8' width='1' height='6' transform='translate(-3.8 4.3) rotate(-45)'/%3E%3C/svg%3E");
}
.page_contact .sec_form .mw_wrapper .privacy, .page_confirm .sec_form .mw_wrapper .privacy, .page_complete .sec_form .mw_wrapper .privacy {
  margin-top: 60px;
}
.page_contact .sec_form .mw_wrapper .privacy .error, .page_confirm .sec_form .mw_wrapper .privacy .error, .page_complete .sec_form .mw_wrapper .privacy .error {
  text-align: center !important;
}
.page_contact .sec_form .mw_wrapper .privacy dt, .page_confirm .sec_form .mw_wrapper .privacy dt, .page_complete .sec_form .mw_wrapper .privacy dt {
  text-align: center;
  margin-bottom: 20px;
}
.page_contact .sec_form .mw_wrapper .privacy dt .privacy_link, .page_confirm .sec_form .mw_wrapper .privacy dt .privacy_link, .page_complete .sec_form .mw_wrapper .privacy dt .privacy_link {
  font-size: 18px;
  font-weight: 700;
  border-bottom: 1px solid #2F3134;
  transition: 0.3s;
}
.page_contact .sec_form .mw_wrapper .privacy dt .privacy_link:hover, .page_confirm .sec_form .mw_wrapper .privacy dt .privacy_link:hover, .page_complete .sec_form .mw_wrapper .privacy dt .privacy_link:hover {
  opacity: 0.6;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_form .mw_wrapper .privacy dt .privacy_link, .page_confirm .sec_form .mw_wrapper .privacy dt .privacy_link, .page_complete .sec_form .mw_wrapper .privacy dt .privacy_link {
    font-size: 16px;
  }
}
.page_contact .sec_form .mw_wrapper .privacy dt .icon, .page_confirm .sec_form .mw_wrapper .privacy dt .icon, .page_complete .sec_form .mw_wrapper .privacy dt .icon {
  position: relative;
  width: 16px;
  height: 16px;
  margin: 0 2px;
  display: inline-block;
}
.page_contact .sec_form .mw_wrapper .privacy dt .icon::after, .page_confirm .sec_form .mw_wrapper .privacy dt .icon::after, .page_complete .sec_form .mw_wrapper .privacy dt .icon::after {
  transition: 0.3s;
  position: absolute;
  display: inline-block;
  content: "";
  width: 14px;
  height: 14px;
  right: 0;
  left: 0;
  margin: auto;
  top: 60%;
  transform: translateY(-50%);
  background: #006CB7;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: 100%;
  mask-size: contain;
  mask-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_レイヤー_1' data-name='レイヤー_1' xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 10 10'%3E%3C!-- Generator: Adobe Illustrator 29.7.1, SVG Export Plug-In . SVG Version: 2.1.1 Build 8) --%3E%3Cdefs%3E%3Cstyle%3E .st0 %7B fill: %23fff; %7D %3C/style%3E%3C/defs%3E%3Cpath class='st0' d='M.8,10c-.2,0-.4,0-.6-.2-.2-.2-.2-.4-.2-.6V.8c0-.2,0-.4.2-.6.2-.2.4-.2.6-.2h3.5c.1,0,.2,0,.3.1,0,0,.1.2.1.3s0,.2-.1.3c0,0-.2.1-.3.1H.8v8.3h8.3v-3.5c0-.1,0-.2.1-.3,0,0,.2-.1.3-.1s.2,0,.3.1c0,0,.1.2.1.3v3.5c0,.2,0,.4-.2.6s-.4.2-.6.2H.8ZM9.2,1.4L3.9,6.7c0,0-.2.1-.3.1s-.2,0-.3-.1c0,0-.1-.2-.1-.3s0-.2.1-.3L8.6.8h-2.6c-.1,0-.2,0-.3-.1,0,0-.1-.2-.1-.3s0-.2.1-.3c0,0,.2-.1.3-.1h3.6c.1,0,.2,0,.3.1,0,0,.1.2.1.3v3.6c0,.1,0,.2-.1.3,0,0-.2.1-.3.1s-.2,0-.3-.1c0,0-.1-.2-.1-.3V1.4Z'/%3E%3C/svg%3E");
}
.page_contact .sec_form .mw_wrapper .privacy dd, .page_confirm .sec_form .mw_wrapper .privacy dd, .page_complete .sec_form .mw_wrapper .privacy dd {
  text-align: center;
}
.page_contact .sec_form .mw_wrapper .privacy input[type=checkbox].check, .page_confirm .sec_form .mw_wrapper .privacy input[type=checkbox].check, .page_complete .sec_form .mw_wrapper .privacy input[type=checkbox].check {
  display: none;
}
.page_contact .sec_form .mw_wrapper .privacy .privacy_wrapper label, .page_confirm .sec_form .mw_wrapper .privacy .privacy_wrapper label, .page_complete .sec_form .mw_wrapper .privacy .privacy_wrapper label {
  display: inline-block;
}
.page_contact .sec_form .mw_wrapper .privacy .check + span, .page_confirm .sec_form .mw_wrapper .privacy .check + span, .page_complete .sec_form .mw_wrapper .privacy .check + span {
  padding-left: 28px;
  display: inline-block;
  position: relative;
  line-height: 1;
  font-size: 18px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_form .mw_wrapper .privacy .check + span, .page_confirm .sec_form .mw_wrapper .privacy .check + span, .page_complete .sec_form .mw_wrapper .privacy .check + span {
    padding-left: 24px;
    padding-top: 0;
    font-size: 15px;
  }
}
.page_contact .sec_form .mw_wrapper .privacy .check + span::after,
.page_contact .sec_form .mw_wrapper .privacy .check + span::before, .page_confirm .sec_form .mw_wrapper .privacy .check + span::after,
.page_confirm .sec_form .mw_wrapper .privacy .check + span::before, .page_complete .sec_form .mw_wrapper .privacy .check + span::after,
.page_complete .sec_form .mw_wrapper .privacy .check + span::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  transition-duration: 100ms;
}
.page_contact .sec_form .mw_wrapper .privacy .check + span::before, .page_confirm .sec_form .mw_wrapper .privacy .check + span::before, .page_complete .sec_form .mw_wrapper .privacy .check + span::before {
  background-color: #FFFCFC;
  border-radius: 3px;
  left: 0;
  top: 2px;
  border: #D9D9D9 1px solid;
  height: 16px;
  width: 16px;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_form .mw_wrapper .privacy .check + span::before, .page_confirm .sec_form .mw_wrapper .privacy .check + span::before, .page_complete .sec_form .mw_wrapper .privacy .check + span::before {
    top: 1px;
    height: 14px;
    width: 14px;
  }
}
.page_contact .sec_form .mw_wrapper .privacy .check + span::after, .page_confirm .sec_form .mw_wrapper .privacy .check + span::after, .page_complete .sec_form .mw_wrapper .privacy .check + span::after {
  border: none;
  border-right: 1px solid #006CB7;
  border-bottom: 1px solid #006CB7;
  height: 10px;
  left: 7px;
  opacity: 0;
  top: 3px;
  transform: rotate(45deg);
  width: 5px;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_form .mw_wrapper .privacy .check + span::after, .page_confirm .sec_form .mw_wrapper .privacy .check + span::after, .page_complete .sec_form .mw_wrapper .privacy .check + span::after {
    height: 8px;
    left: 6px;
    opacity: 0;
    top: 3px;
    width: 3px;
  }
}
.page_contact .sec_form .mw_wrapper .privacy .check:checked + span::after, .page_confirm .sec_form .mw_wrapper .privacy .check:checked + span::after, .page_complete .sec_form .mw_wrapper .privacy .check:checked + span::after {
  opacity: 1;
}
.page_contact .sec_form .mw_wrapper .privacy .error, .page_confirm .sec_form .mw_wrapper .privacy .error, .page_complete .sec_form .mw_wrapper .privacy .error {
  text-align: left;
}
.page_contact .sec_form .mw_wrapper .privacy .open-area, .page_confirm .sec_form .mw_wrapper .privacy .open-area, .page_complete .sec_form .mw_wrapper .privacy .open-area {
  display: none;
}
.page_contact .sec_form .mw_wrapper .btn_wrap, .page_confirm .sec_form .mw_wrapper .btn_wrap, .page_complete .sec_form .mw_wrapper .btn_wrap {
  margin-top: 60px;
}
.page_contact .sec_form .mw_wrapper .btn_wrap .con_btn, .page_confirm .sec_form .mw_wrapper .btn_wrap .con_btn, .page_complete .sec_form .mw_wrapper .btn_wrap .con_btn {
  transition: 0.3s;
  margin: auto;
  width: 298px;
  height: 58px;
  border: 1px solid #009BDF;
  background-color: #009BDF;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 5px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .page_contact .sec_form .mw_wrapper .btn_wrap .con_btn, .page_confirm .sec_form .mw_wrapper .btn_wrap .con_btn, .page_complete .sec_form .mw_wrapper .btn_wrap .con_btn {
    width: 100%;
    max-width: 298px;
  }
}
.page_contact .sec_form .mw_wrapper .btn_wrap .con_btn::after, .page_confirm .sec_form .mw_wrapper .btn_wrap .con_btn::after, .page_complete .sec_form .mw_wrapper .btn_wrap .con_btn::after {
  transition: 0.3s;
  position: absolute;
  display: inline-block;
  content: "";
  width: 18px;
  height: 18px;
  right: 20px;
  margin: auto;
  top: 50%;
  transform: translateY(-50%);
  background: #FFFFFF;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: 100%;
  mask-size: contain;
  mask-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_レイヤー_1' data-name='レイヤー_1' xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 18 19'%3E%3C!-- Generator: Adobe Illustrator 29.8.1, SVG Export Plug-In . SVG Version: 2.1.1 Build 2) --%3E%3Cdefs%3E%3Cstyle%3E .st0 %7B fill: %23fff; %7D .st1 %7B fill: none; stroke: %23fff; %7D %3C/style%3E%3C/defs%3E%3Crect class='st0' x='8.5' y='4.7' width='1' height='6' transform='translate(-2.8 8.6) rotate(-45)'/%3E%3Crect class='st0' x='6' y='10.8' width='6' height='1' transform='translate(-5.3 9.7) rotate(-45)'/%3E%3Ccircle class='st1' cx='9' cy='9.5' r='8.5'/%3E%3C/svg%3E");
}
.page_contact .sec_form .mw_wrapper .btn_wrap .con_btn input, .page_confirm .sec_form .mw_wrapper .btn_wrap .con_btn input, .page_complete .sec_form .mw_wrapper .btn_wrap .con_btn input {
  color: #FFFFFF;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  width: 100%;
  height: 100%;
  padding: 10px;
  letter-spacing: 0.08em;
}
.page_contact .sec_form .mw_wrapper .btn_wrap .con_btn + .back, .page_confirm .sec_form .mw_wrapper .btn_wrap .con_btn + .back, .page_complete .sec_form .mw_wrapper .btn_wrap .con_btn + .back {
  display: none;
  margin-top: 20px;
  background-color: #D9D9D9;
  border: 1px solid #D9D9D9;
}
.page_contact .sec_form .mw_wrapper .btn_wrap .con_btn + .back::after, .page_confirm .sec_form .mw_wrapper .btn_wrap .con_btn + .back::after, .page_complete .sec_form .mw_wrapper .btn_wrap .con_btn + .back::after {
  right: auto;
  left: 20px;
  transform: translateY(-50%) rotate(180deg);
}
.page_contact .sec_form .mw_wrapper .btn_wrap .con_btn + .back:hover, .page_confirm .sec_form .mw_wrapper .btn_wrap .con_btn + .back:hover, .page_complete .sec_form .mw_wrapper .btn_wrap .con_btn + .back:hover {
  background-color: #FFFFFF;
}
.page_contact .sec_form .mw_wrapper .btn_wrap .con_btn + .back:hover input, .page_confirm .sec_form .mw_wrapper .btn_wrap .con_btn + .back:hover input, .page_complete .sec_form .mw_wrapper .btn_wrap .con_btn + .back:hover input {
  color: #009BDF;
}
.page_contact .sec_form .mw_wrapper .btn_wrap .con_btn + .back:hover::after, .page_confirm .sec_form .mw_wrapper .btn_wrap .con_btn + .back:hover::after, .page_complete .sec_form .mw_wrapper .btn_wrap .con_btn + .back:hover::after {
  background: #009BDF;
}
.page_contact .sec_form .mw_wrapper .btn_wrap .con_btn:hover, .page_confirm .sec_form .mw_wrapper .btn_wrap .con_btn:hover, .page_complete .sec_form .mw_wrapper .btn_wrap .con_btn:hover {
  background-color: #FFFFFF;
}
.page_contact .sec_form .mw_wrapper .btn_wrap .con_btn:hover input, .page_confirm .sec_form .mw_wrapper .btn_wrap .con_btn:hover input, .page_complete .sec_form .mw_wrapper .btn_wrap .con_btn:hover input {
  color: #009BDF;
}
.page_contact .sec_form .mw_wrapper .btn_wrap .con_btn:hover::after, .page_confirm .sec_form .mw_wrapper .btn_wrap .con_btn:hover::after, .page_complete .sec_form .mw_wrapper .btn_wrap .con_btn:hover::after {
  background: #009BDF;
}

.page_confirm .sec_con_intro .txt_wrap {
  display: none;
}
.page_confirm .sec_form .mw_wrapper dl {
  border-bottom: 1px solid #D9D9D9;
}
.page_confirm .sec_form .mw_wrapper dt .note_txt {
  display: none;
}
.page_confirm .sec_form .mw_wrapper dd {
  font-size: 18px;
  font-weight: 700;
  padding-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .page_confirm .sec_form .mw_wrapper dd {
    font-size: 16px;
  }
}
.page_confirm .sec_form .mw_wrapper .address_wrap .post_code, .page_confirm .sec_form .mw_wrapper .address_wrap .address {
  justify-content: start;
}
.page_confirm .sec_form .mw_wrapper .address_wrap .post_code {
  margin-bottom: 0;
}
.page_confirm .sec_form .mw_wrapper .address_wrap .post_mark {
  font-size: 18px;
  font-weight: 700;
  margin-top: 0 !important;
}
@media screen and (max-width: 768px) {
  .page_confirm .sec_form .mw_wrapper .address_wrap .post_mark {
    font-size: 16px !important;
  }
}
.page_confirm .sec_form .mw_wrapper .address_wrap .wrap_input {
  font-size: 18px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .page_confirm .sec_form .mw_wrapper .address_wrap .wrap_input {
    font-size: 16px;
  }
}
.page_confirm .sec_form .mw_wrapper .select_wrap dd::after {
  display: none;
}
.page_confirm .sec_form .mw_wrapper .privacy {
  display: none;
}
.page_confirm .sec_form .mw_wrapper .btn_wrap .back {
  display: flex !important;
}

.page_complete .complete_txt .strong {
  font-weight: 700;
  font-size: 24px;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .page_complete .complete_txt .strong {
    font-size: 20px;
  }
}
.page_complete .complete_txt p {
  text-align: center;
}
.page_complete .complete_txt .time {
  font-weight: 700;
  margin-top: 10px;
}
.page_complete .complete_txt .top_btn {
  margin: 60px auto auto;
  width: 298px;
  height: 58px;
  border: 1px solid #009BDF;
  background-color: #009BDF;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px;
  border-radius: 5px;
  position: relative;
  color: #FFFFFF;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .page_complete .complete_txt .top_btn {
    width: 100%;
    max-width: 298px;
  }
}
.page_complete .complete_txt .top_btn::after {
  transition: 0.3s;
  position: absolute;
  display: inline-block;
  content: "";
  width: 18px;
  height: 18px;
  right: 20px;
  margin: auto;
  top: 50%;
  transform: translateY(-50%);
  background: #FFFFFF;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: 100%;
  mask-size: contain;
  mask-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_レイヤー_1' data-name='レイヤー_1' xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 18 19'%3E%3C!-- Generator: Adobe Illustrator 29.8.1, SVG Export Plug-In . SVG Version: 2.1.1 Build 2) --%3E%3Cdefs%3E%3Cstyle%3E .st0 %7B fill: %23fff; %7D .st1 %7B fill: none; stroke: %23fff; %7D %3C/style%3E%3C/defs%3E%3Crect class='st0' x='8.5' y='4.7' width='1' height='6' transform='translate(-2.8 8.6) rotate(-45)'/%3E%3Crect class='st0' x='6' y='10.8' width='6' height='1' transform='translate(-5.3 9.7) rotate(-45)'/%3E%3Ccircle class='st1' cx='9' cy='9.5' r='8.5'/%3E%3C/svg%3E");
}
.page_complete .complete_txt .top_btn:hover {
  background-color: #FFFFFF;
  color: #009BDF;
}
.page_complete .complete_txt .top_btn:hover::after {
  background: #009BDF;
}

/*-----------------------------------------
サイトマップ
-----------------------------------------*/
.page_sitemap .sec_sitemap {
  width: 90%;
  max-width: 840px;
  margin: 80px auto 110px;
  display: flex;
  flex-wrap: wrap;
  column-gap: 80px;
  row-gap: 30px;
}
@media screen and (max-width: 999px) {
  .page_sitemap .sec_sitemap {
    column-gap: 60px;
  }
}
@media screen and (max-width: 768px) {
  .page_sitemap .sec_sitemap {
    display: block;
    margin: 30px auto 60px;
  }
}
.page_sitemap .sec_sitemap .group {
  width: calc((100% - 80px) / 2);
}
@media screen and (max-width: 999px) {
  .page_sitemap .sec_sitemap .group {
    width: calc((100% - 60px) / 2);
  }
}
@media screen and (max-width: 768px) {
  .page_sitemap .sec_sitemap .group {
    width: 100%;
    margin-bottom: 30px;
  }
}
.page_sitemap .sec_sitemap .group .parent {
  color: #006CB7;
  font-weight: 700;
  border-bottom: #D9D9D9 1px solid;
  font-size: 20px;
  padding: 20px 0;
  display: block;
}
.page_sitemap .sec_sitemap .group .parent.link {
  position: relative;
  transition: 0.3s;
}
.page_sitemap .sec_sitemap .group .parent.link:hover {
  opacity: 0.6;
}
.page_sitemap .sec_sitemap .group .parent.link::after {
  border: none;
  border-radius: 0;
  transition: 0.3s;
  position: absolute;
  display: inline-block;
  content: "";
  width: 20px;
  height: 20px;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
  background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_レイヤー_1' data-name='レイヤー_1' xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 20 21'%3E%3C!-- Generator: Adobe Illustrator 29.8.1, SVG Export Plug-In . SVG Version: 2.1.1 Build 2) --%3E%3Cdefs%3E%3Cstyle%3E .st0 %7B fill: %23006cb7; %7D .st1 %7B fill: %23fff; %7D %3C/style%3E%3C/defs%3E%3Ccircle class='st0' cx='10' cy='10.5' r='10'/%3E%3Crect class='st1' x='9.5' y='5.2' width='1.1' height='6.7' transform='translate(-3.1 9.6) rotate(-45)'/%3E%3Crect class='st1' x='6.7' y='11.9' width='6.7' height='1.1' transform='translate(-5.9 10.7) rotate(-45)'/%3E%3C/svg%3E");
}
.page_sitemap .sec_sitemap .group .child {
  color: #006CB7;
  padding-left: 12px;
  position: relative;
  display: block;
  margin-bottom: 10px;
  transition: 0.3s;
}
.page_sitemap .sec_sitemap .group .child:hover {
  opacity: 0.6;
}
.page_sitemap .sec_sitemap .group .child::before {
  content: "";
  position: absolute;
  width: 6px;
  left: 0;
  top: 13px;
  border-top: 1px solid #006CB7; /* 線をborderで指定 */
}
.page_sitemap .sec_sitemap .group .child:first-of-type {
  margin-top: 20px;
}
@media screen and (max-width: 768px) {
  .page_sitemap .sec_sitemap .group .child {
    font-size: 14px;
  }
}
.page_sitemap .sec_sitemap .group .child.out {
  position: relative;
}
.page_sitemap .sec_sitemap .group .child.out::after {
  border: none;
  border-radius: 0;
  transition: 0.3s;
  position: absolute;
  display: inline-block;
  content: "";
  width: 10px;
  height: 10px;
  left: 5.25em;
  top: 50%;
  transform: translateY(-50%);
  background: #006CB7;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: 100%;
  mask-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_レイヤー_1' data-name='レイヤー_1' xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 10 10'%3E%3C!-- Generator: Adobe Illustrator 29.7.1, SVG Export Plug-In . SVG Version: 2.1.1 Build 8) --%3E%3Cdefs%3E%3Cstyle%3E .st0 %7B fill: %23fff; %7D %3C/style%3E%3C/defs%3E%3Cpath class='st0' d='M.8,10c-.2,0-.4,0-.6-.2-.2-.2-.2-.4-.2-.6V.8c0-.2,0-.4.2-.6.2-.2.4-.2.6-.2h3.5c.1,0,.2,0,.3.1,0,0,.1.2.1.3s0,.2-.1.3c0,0-.2.1-.3.1H.8v8.3h8.3v-3.5c0-.1,0-.2.1-.3,0,0,.2-.1.3-.1s.2,0,.3.1c0,0,.1.2.1.3v3.5c0,.2,0,.4-.2.6s-.4.2-.6.2H.8ZM9.2,1.4L3.9,6.7c0,0-.2.1-.3.1s-.2,0-.3-.1c0,0-.1-.2-.1-.3s0-.2.1-.3L8.6.8h-2.6c-.1,0-.2,0-.3-.1,0,0-.1-.2-.1-.3s0-.2.1-.3c0,0,.2-.1.3-.1h3.6c.1,0,.2,0,.3.1,0,0,.1.2.1.3v3.6c0,.1,0,.2-.1.3,0,0-.2.1-.3.1s-.2,0-.3-.1c0,0-.1-.2-.1-.3V1.4Z'/%3E%3C/svg%3E");
}

/*-----------------------------------------
プライバシーポリシー
-----------------------------------------*/
.page_privacy .wrapper {
  width: 90%;
  max-width: 840px;
  margin: 80px auto 130px;
}
@media screen and (max-width: 768px) {
  .page_privacy .wrapper {
    margin: 40px auto 80px;
  }
}
.page_privacy .txt_link {
  border-bottom: #009BDF 1px solid;
  color: #009BDF;
  transition: 0.3s;
}
.page_privacy .txt_link:hover {
  opacity: 0.6;
}
.page_privacy .intro .signature {
  text-align: right;
  margin: 10px auto auto;
}
.page_privacy .sec_privacy {
  margin-top: 60px;
}
.page_privacy .sec_privacy .title {
  font-weight: 700;
  font-size: 18px;
  margin-bottom: 10px;
}
.page_privacy .sec_privacy .list {
  margin-top: 30px;
}
.page_privacy .sec_privacy .list .item {
  margin-bottom: 30px;
}
.page_privacy .sec_privacy .list .item:last-of-type {
  margin-bottom: 0;
}
.page_privacy .sec_privacy .link_list {
  margin: 30px auto;
}
.page_privacy .sec_privacy .link_list a {
  border-bottom: #009BDF 1px solid;
  color: #009BDF;
  transition: 0.3s;
  position: relative;
  padding-right: 16px;
}
.page_privacy .sec_privacy .link_list a::after {
  border: none;
  border-radius: 0;
  transition: 0.3s;
  position: absolute;
  display: inline-block;
  content: "";
  width: 12px;
  height: 12px;
  right: 0;
  bottom: 3px;
  background: #009BDF;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: 100%;
  mask-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_レイヤー_1' data-name='レイヤー_1' xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 10 10'%3E%3C!-- Generator: Adobe Illustrator 29.7.1, SVG Export Plug-In . SVG Version: 2.1.1 Build 8) --%3E%3Cdefs%3E%3Cstyle%3E .st0 %7B fill: %23fff; %7D %3C/style%3E%3C/defs%3E%3Cpath class='st0' d='M.8,10c-.2,0-.4,0-.6-.2-.2-.2-.2-.4-.2-.6V.8c0-.2,0-.4.2-.6.2-.2.4-.2.6-.2h3.5c.1,0,.2,0,.3.1,0,0,.1.2.1.3s0,.2-.1.3c0,0-.2.1-.3.1H.8v8.3h8.3v-3.5c0-.1,0-.2.1-.3,0,0,.2-.1.3-.1s.2,0,.3.1c0,0,.1.2.1.3v3.5c0,.2,0,.4-.2.6s-.4.2-.6.2H.8ZM9.2,1.4L3.9,6.7c0,0-.2.1-.3.1s-.2,0-.3-.1c0,0-.1-.2-.1-.3s0-.2.1-.3L8.6.8h-2.6c-.1,0-.2,0-.3-.1,0,0-.1-.2-.1-.3s0-.2.1-.3c0,0,.2-.1.3-.1h3.6c.1,0,.2,0,.3.1,0,0,.1.2.1.3v3.6c0,.1,0,.2-.1.3,0,0-.2.1-.3.1s-.2,0-.3-.1c0,0-.1-.2-.1-.3V1.4Z'/%3E%3C/svg%3E");
}
.page_privacy .sec_privacy .link_list a:hover {
  opacity: 0.6;
}
@media screen and (max-width: 999px) {
  .page_privacy .sec_privacy .link_list li {
    margin-bottom: 10px;
  }
  .page_privacy .sec_privacy .link_list li:last-of-type {
    margin-bottom: 0;
  }
}
.page_privacy .sec_privacy .pdf_link {
  background-color: #009BDF;
  border-radius: 6px;
  padding: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  margin: 30px auto;
  transition: 0.3s;
}
.page_privacy .sec_privacy .pdf_link span {
  color: #FFFFFF;
  font-weight: 700;
  text-align: center;
  border-bottom: 1px solid #FFFFFF;
  margin-right: 20px;
  position: relative;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .page_privacy .sec_privacy .pdf_link span {
    font-size: 12px;
    margin-right: 15px;
  }
}
@media screen and (max-width: 330px) {
  .page_privacy .sec_privacy .pdf_link span {
    font-size: 11px;
  }
}
.page_privacy .sec_privacy .pdf_link span::after {
  transition: 0.3s;
  border: none;
  border-radius: 0;
  transition: 0.3s;
  position: absolute;
  display: inline-block;
  content: "";
  width: 16px;
  height: 16px;
  right: -20px;
  bottom: 4px;
  background: #FFFFFF;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: 100%;
  mask-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_レイヤー_1' data-name='レイヤー_1' xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 17 16'%3E%3C!-- Generator: Adobe Illustrator 29.7.1, SVG Export Plug-In . SVG Version: 2.1.1 Build 8) --%3E%3Cdefs%3E%3Cstyle%3E .st0 %7B fill: %23fff; %7D %3C/style%3E%3C/defs%3E%3Cpath class='st0' d='M2.8,14.5h1.5v1.5h-1.5c-1.1,0-2-.9-2-2V2C.8.9,1.6,0,2.8,0h5.2c.5,0,1,.2,1.4.6l2.8,2.8c.4.4.6.9.6,1.4v4.7h-1.5v-4.5h-2.5c-.6,0-1-.4-1-1V1.5H2.8c-.3,0-.5.2-.5.5v12c0,.3.2.5.5.5ZM6.2,11h1c1,0,1.8.8,1.8,1.8s-.8,1.8-1.8,1.8h-.5v1c0,.3-.2.5-.5.5s-.5-.2-.5-.5v-4c0-.3.2-.5.5-.5ZM7.2,13.5c.4,0,.8-.3.8-.8s-.3-.8-.8-.8h-.5v1.5h.5ZM10.2,11h1c.8,0,1.5.7,1.5,1.5v2c0,.8-.7,1.5-1.5,1.5h-1c-.3,0-.5-.2-.5-.5v-4c0-.3.2-.5.5-.5ZM11.2,15c.3,0,.5-.2.5-.5v-2c0-.3-.2-.5-.5-.5h-.5v3h.5ZM13.8,11.5c0-.3.2-.5.5-.5h1.5c.3,0,.5.2.5.5s-.2.5-.5.5h-1v1h1c.3,0,.5.2.5.5s-.2.5-.5.5h-1v1.5c0,.3-.2.5-.5.5s-.5-.2-.5-.5v-4Z'/%3E%3C/svg%3E");
}
@media screen and (max-width: 768px) {
  .page_privacy .sec_privacy .pdf_link span::after {
    bottom: 2px;
    right: -15px;
    width: 12px;
    height: 12px;
  }
}
.page_privacy .sec_privacy .pdf_link:hover {
  opacity: 0.6;
}
.page_privacy .sec_contact .title {
  font-weight: 700;
  font-size: 18px;
  margin-bottom: 10px;
  color: #006CB7;
}
.page_privacy .sec_contact .tel, .page_privacy .sec_contact .mail_link {
  border-bottom: #009BDF 1px solid;
  color: #009BDF;
}
.page_privacy .privacy_image {
  width: 80px;
  margin: 30px auto auto 0;
  display: block;
  transition: 0.3s;
}
.page_privacy .privacy_image:hover {
  opacity: 0.6;
}
.page_privacy .revision {
  margin: 30px auto 100px;
}
.page_privacy .revision .txt {
  text-align: right;
}

/*-----------------------------------------
404エラー
-----------------------------------------*/
.page_error .sec_error {
  margin: 80px auto 80px;
  width: 90%;
  max-width: 800px;
}
@media screen and (max-width: 768px) {
  .page_error .sec_error {
    margin: 40px auto 60px;
  }
}
.page_error .sec_error .title_jp {
  font-size: 24px;
  font-weight: 700;
  color: #006CB7;
  text-align: center;
  margin-bottom: 10px;
}
.page_error .sec_error .txt {
  text-align: center;
}
@media screen and (max-width: 768px) {
  .page_error .sec_error .txt {
    text-align: left;
  }
}
.page_error .sec_error .btn {
  margin: 20px auto auto;
}/*# sourceMappingURL=style.css.map */