@charset "UTF-8";
/*///////////////////////////////////////////////////
//
//            ▼ ベース設定 ▼
//
///////////////////////////////////////////////////*/
html {
  color: #000;
  font-size: calc(12px + 4 * (100vw - 768px) / 632);
  font-family: "Noto Sans JP", sans-serif;
  /*font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;*/
  /*font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;*/
  /*font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
  /*font-family: '小塚ゴシック Pro','Kozuka Gothic Pro',sans-serif;*/
  line-height: 2;
}

@media screen and (min-width: 1400px) {
  html {
    font-size: 16px;
  }
}
a {
  color: #000;
  display: block;
}

#wrapper {
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
  height: auto;
}

section,
.section {
  width: 100%;
  height: auto;
  position: relative;
}

.l_container {
  width: 95%;
  margin: 0 auto;
  max-width: 1680px;
}

.container {
  width: 90%;
  margin: 0 auto;
  max-width: 1160px;
}

.m_container {
  width: 90%;
  margin: 0 auto;
  max-width: 1080px;
}

.s_container {
  width: 90%;
  margin: 0 auto;
  max-width: 960px;
}

/* @media screen and (min-width:1540px) {
	.l_container {
		max-width: 1680px;
	}

	.container {
		max-width: 1480px;
	}
}

@media screen and (min-width:1280px) and (max-width:1539px) {
	html {
		font-size: 15px;
	}

	.container {
		max-width: 1280px;
	}
}

@media screen and (min-width:768px) and (max-width:1279px) {
	html {
		font-size: 14px;
	}

	.container {
		max-width: none;
	}
} */
.is_sp {
  display: none;
}

.is_tab {
  display: none;
}

@media screen and (min-width: 768px) and (max-width: 1184px) {
  .is_hidden_tab {
    display: none !important;
  }
  .is_tab {
    display: block !important;
  }
}
.objectCover {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
  font-family: "object-fit: cover;object-position: 50% 50%;";
}

.objectContain {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
  font-family: "object-fit: contain;object-position: 50% 50%;";
}

.point_reader {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.preload * {
  transition: none;
}

a[href*="tel:"] {
  text-decoration: none;
}

/*///////////////////////////////////////////////////
//
//            ▼ 共通 ▼
//
///////////////////////////////////////////////////*/
h1,
h2,
h3,
h4,
.en {
  font-family: "Shippori Mincho B1", serif;
}

.top h1,
.top h2,
.top h3,
.top h4 {
  font-weight: 500;
}

.btn {
  position: relative;
  overflow: hidden;
  width: 17.705625rem;
  height: 3.40125rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #0066ad;
  transition: ease 0.6s;
}
.btn span {
  position: relative;
  z-index: 3;
  color: #fff;
  line-height: 1;
  font-size: 0.875rem;
  letter-spacing: 0.005em;
  transition: ease 0.6s;
}
.btn path {
  transition: ease 0.6s;
}
.btn:hover span {
  color: #0066ad;
}

.top_ttl .line {
  font-size: 0.8125rem;
  color: #0066ad;
  line-height: 1;
}
.top_ttl .en {
  margin: 0.6rem 0 0;
  font-size: 1.3125rem;
  font-weight: 600;
  color: #0066ad;
  line-height: 1;
}
.top_ttl h2 {
  font-size: 1.9375rem;
  margin: 1.5625rem 0 0;
  color: #333333;
}

.top_wrap {
  margin: 0 auto;
  max-width: 1400px;
  width: 95%;
}
.top_wrap .top_box_outer {
  margin: 0 auto;
  position: relative;
  max-width: 1034px;
}

.top_in {
  padding: 0 4rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .top_in {
    padding: 0 2rem;
  }
}

/*== 背景が流れる（左から右） */
.bgleft:before {
  content: "";
  /*絶対配置で位置を指定*/
  position: absolute;
  top: 0;
  left: 1px;
  z-index: 2;
  /*色や形状*/
  background: #fff;
  width: 100%;
  height: 101%;
  /*アニメーション*/
  transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform: scale(0, 1);
  transform-origin: right top;
}

/*hoverした際の形状*/
.bgleft:hover:before {
  left: 0px;
  transform-origin: left top;
  transform: scale(1.1, 1.1);
}

/*///////////////////////////////////////////////////
//
//            ▼ ナビ ▼
//
///////////////////////////////////////////////////*/
header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 50000;
  background: #fff;
  border-bottom: solid 1px #bcbcbc;
}
header .header_inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-left: 0.36875rem;
}
@media screen and (min-width: 768px) and (max-width: 1184px) {
  header .header_inner {
    height: 3.76rem;
  }
}
header .header_inner a span {
  font-size: 0.9375rem;
  font-weight: 400;
  line-height: 1;
}
@media screen and (min-width: 1026px) and (max-width: 1279.5px) {
  header .header_inner a span {
    font-size: 0.89rem;
  }
}
header .header_inner .box01 {
  display: flex;
  align-items: center;
  justify-content: center;
}
header .header_inner .box01 .logo {
  display: flex;
  align-items: center;
  width: 9.669375rem;
}
header .header_inner .box01 .logo a {
  width: 100%;
}
header .header_inner .box01 .logo a img {
  display: block;
  width: 100%;
  height: auto;
}
header .header_inner .box01 .c_name {
  font-size: 1rem;
  margin-top: 0.6rem;
}
header .header_inner .box02 {
  display: flex;
  align-items: center;
}
header .header_inner .box02 nav {
  display: flex;
  align-items: center;
  justify-content: center;
}
header .header_inner .box02 nav ul {
  display: flex;
  align-items: center;
}
header .header_inner .box02 nav ul li {
  height: 4.0625rem;
}
header .header_inner .box02 nav ul li .toggle02 {
  display: none;
}
header .header_inner .box02 nav ul li .nav_link {
  padding: 0 1.425rem;
  width: 100%;
  height: 100%;
  position: relative;
  display: flex;
  align-items: center;
  transition: 0.3s;
}
header .header_inner .box02 nav ul li .nav_link::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 100%;
  transform: translateY(-50%);
  width: 0.69px;
  height: 1.9375rem;
  background: #dfdfdf;
}
header .header_inner .box02 nav ul li .nav_link span {
  color: #000;
  position: relative;
  transition: 0.3s;
}
header .header_inner .box02 nav ul li .nav_link span svg path {
  transition: 0.3s;
}
header .header_inner .box02 nav ul li:hover .nav_link {
  background: #104883;
}
header .header_inner .box02 nav ul li:hover .nav_link span {
  color: #fff;
}
header .header_inner .box02 nav ul li:hover .nav_link span svg path {
  fill: #fff;
  stroke: #fff;
}
header .header_inner .box02 nav ul li .nav_hover {
  transition: opacity 0.3s;
  opacity: 0;
  display: none;
}
header .header_inner .box02 nav ul li:hover .nav_hover {
  opacity: 1;
  position: absolute;
  top: 4.0625rem;
  left: 0;
  width: 100%;
  height: 19.6875rem;
  display: flex;
  align-items: center;
  gap: 2.3125rem;
  background: #ebebeb;
  border: solid #104883;
  border-width: 2px 0 0;
  box-sizing: content-box;
}
header .header_inner .box02 nav ul li:hover .nav_hover .txt {
  width: 24.0625rem;
  height: 19.6875rem;
  background: #104883;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border: solid #ebebeb;
  border-width: 0 0 3px;
}
header .header_inner .box02 nav ul li:hover .nav_hover .txt .txt_inner {
  padding-bottom: 0.9375rem;
}
header .header_inner .box02 nav ul li:hover .nav_hover .txt .line {
  color: #fff;
  font-size: 0.8125rem;
}
header .header_inner .box02 nav ul li:hover .nav_hover .txt .en {
  margin: 0.4375rem 0 0;
  position: relative;
  font-weight: 600;
  color: #fff;
  font-size: 1.3125rem;
  line-height: 1;
}
header .header_inner .box02 nav ul li:hover .nav_hover .txt .ttl {
  margin: 1.6625rem 0 0;
  font-weight: 600;
  color: #fff;
  font-size: 1.9375rem;
  line-height: 1;
}
header .header_inner .box02 nav ul li:hover .nav_hover .txt .link_txt {
  margin: 2.6875rem 0 0;
  display: flex;
  align-items: center;
  justify-self: center;
  gap: 1.75rem;
}
header .header_inner .box02 nav ul li:hover .nav_hover .txt .link_txt span {
  transition: 0.3s;
  font-weight: 600;
  color: #fff;
  font-size: 0.875rem;
  line-height: 1.4;
}
header .header_inner .box02 nav ul li:hover .nav_hover .txt .link_txt .under_line {
  position: relative;
}
header .header_inner .box02 nav ul li:hover .nav_hover .txt .link_txt .under_line::before {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 0%;
  height: 1px;
  background: #fff;
  transition: 0.3s;
}
header .header_inner .box02 nav ul li:hover .nav_hover .txt .link_txt:hover span {
  opacity: 0.7;
}
header .header_inner .box02 nav ul li:hover .nav_hover .txt .link_txt:hover span::before {
  width: 100%;
}
header .header_inner .box02 nav ul li:hover .nav_hover .inner {
  width: 17rem;
  transition: 0.3s;
}
header .header_inner .box02 nav ul li:hover .nav_hover .inner figure {
  height: 12.424375rem;
  overflow: hidden;
}
header .header_inner .box02 nav ul li:hover .nav_hover .inner figure img {
  transition: 0.3s;
}
header .header_inner .box02 nav ul li:hover .nav_hover .inner .inner_txt {
  margin: 1.125rem 0 0;
}
header .header_inner .box02 nav ul li:hover .nav_hover .inner .inner_txt .case {
  margin-bottom: 5px;
  font-weight: 700;
  color: #000;
  font-size: 0.75rem;
  line-height: 1;
}
header .header_inner .box02 nav ul li:hover .nav_hover .inner .inner_txt p {
  font-weight: 400;
  color: #000;
  font-size: 1rem;
}
@media screen and (min-width: 1026px) and (max-width: 1279.5px) {
  header .header_inner .box02 nav ul li:hover .nav_hover .inner .inner_txt p {
    font-size: 0.9rem;
  }
}
header .header_inner .box02 nav ul li:hover .nav_hover .inner .inner_txt p span {
  position: relative;
  transition: 0.3s;
}
header .header_inner .box02 nav ul li:hover .nav_hover .inner .inner_txt p span::after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 0%;
  height: 1px;
  background: #000;
  transition: 0.3s;
}
header .header_inner .box02 nav ul li:hover .nav_hover .inner:hover {
  opacity: 0.7;
}
header .header_inner .box02 nav ul li:hover .nav_hover .inner:hover figure img {
  transform: scale(1.05);
}
header .header_inner .box02 nav ul li:hover .nav_hover .inner:hover p span:after {
  width: 100%;
}
header .header_inner .box02 nav ul .nav01.nav_blue .nav_link {
  background: #104883;
}
header .header_inner .box02 nav ul .nav01.nav_blue .nav_link span {
  color: #fff;
}
header .header_inner .box02 nav ul .nav02.nav_blue .nav_link {
  background: #104883;
}
header .header_inner .box02 nav ul .nav02.nav_blue .nav_link span {
  color: #fff;
}
header .header_inner .box02 nav ul .nav03.nav_blue .nav_link {
  background: #104883;
}
header .header_inner .box02 nav ul .nav03.nav_blue .nav_link span {
  color: #fff;
}
header .header_inner .box02 nav ul .nav04.nav_blue .nav_link {
  background: #104883;
}
header .header_inner .box02 nav ul .nav04.nav_blue .nav_link span {
  color: #fff;
}
header .header_inner .box02 nav ul .nav05.nav_blue .nav_link {
  background: #104883;
}
header .header_inner .box02 nav ul .nav05.nav_blue .nav_link span {
  color: #fff;
}
header .header_inner .box02 nav ul .nav_r a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.9125rem;
}
header .header_inner .box02 nav ul .nav_r a::before {
  display: none;
}
header .header_inner .box02 nav ul .nav_r a span svg {
  width: 1.063125rem;
  height: 1.018125rem;
}
header .header_inner .box02 nav ul .nav_r a span svg path {
  fill: #929292;
  stroke: #929292;
}
header .header_inner .box02 nav ul .nav_r a .link {
  display: flex;
  align-items: center;
}
header .header_inner .box02 nav .h_contact01 {
  width: 8.77125rem;
  height: 4.0625rem;
  background: #000;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.3s;
}
header .header_inner .box02 nav .h_contact01 span {
  color: #fff;
}
header .header_inner .box02 nav .h_contact01:hover {
  background: #104883;
}
header .header_inner .box02 nav .header_search_wrap .header_search {
  width: 3.5625rem;
  height: 4.0625rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #545454;
  box-sizing: content-box;
  transition: 0.3s;
}
header .header_inner .box02 nav .header_search_wrap .header_search span svg {
  width: 1.4775rem;
}
header .header_inner .box02 nav .header_search_wrap .header_search span svg path {
  fill: #fff;
  stroke: #fff;
}
header .header_inner .box02 nav .header_search_wrap .nav_hover {
  transition: opacity 0.3s;
  opacity: 0;
}
header .header_inner .box02 nav .header_search_wrap:hover .header_search {
  background: #104883;
}
header .header_inner .box02 nav .header_search_wrap:hover .nav_hover {
  opacity: 1;
  position: absolute;
  top: 4.0625rem;
  left: 0;
  width: 100%;
  height: 16.8125rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8.125rem;
  background: #104883;
}
header .header_inner .box02 nav .header_search_wrap:hover .nav_hover .txt {
  display: flex;
  flex-direction: column;
}
header .header_inner .box02 nav .header_search_wrap:hover .nav_hover .txt .line {
  color: #fff;
  font-size: 0.8125rem;
}
header .header_inner .box02 nav .header_search_wrap:hover .nav_hover .txt .en {
  margin: 0.4375rem 0 0;
  position: relative;
  font-weight: 600;
  color: #fff;
  font-size: 1.3125rem;
  line-height: 1;
}
header .header_inner .box02 nav .header_search_wrap:hover .nav_hover .txt .ttl {
  margin: 1.6625rem 0 0;
  font-weight: 600;
  color: #fff;
  font-size: 1.9375rem;
  line-height: 1;
}
header .header_inner .box02 nav .header_search_wrap:hover .nav_hover .inner_wrap p {
  color: #fff;
  font-size: 0.875rem;
  line-height: 1;
}
header .header_inner .box02 nav .header_search_wrap:hover .nav_hover .inner_wrap .inner_in {
  margin: 1.5625rem 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.64375rem;
}
header .header_inner .box02 nav .header_search_wrap:hover .nav_hover .inner_wrap .inner_in .search_box {
  background: #a2b5c2;
  border-radius: 0.459375rem;
  width: 26.46875rem;
  height: 3.9925rem;
  border: 0.94px solid #fff;
}
header .header_inner .box02 nav .header_search_wrap:hover .nav_hover .inner_wrap .inner_in .search_btn {
  width: 14.2025rem;
  height: 3.42rem;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}
header .header_inner .box02 nav .header_search_wrap:hover .nav_hover .inner_wrap .inner_in .search_btn span {
  font-size: 0.875rem;
  line-height: 1;
}
@media screen and (min-width: 768px) and (max-width: 1184px) {
  header .header_inner .box02 nav {
    position: fixed;
    overflow-y: scroll;
    top: 3.76rem;
    right: -100%;
    width: 100%;
    height: calc(100% - 3rem);
    background: #ebebeb;
    transition: 0.3s;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: min(14.285714vw, 204px);
    padding-bottom: 7rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1184px) and (min-width: 768px) and (max-width: 768px) {
  header .header_inner .box02 nav {
    display: block;
  }
}
@media screen and (min-width: 768px) and (max-width: 1184px) {
  header .header_inner .box02 nav.active {
    right: 0;
  }
  header .header_inner .box02 nav ul {
    width: 26.1rem;
    display: flex;
    flex-direction: column;
    align-items: start;
  }
}
@media screen and (min-width: 768px) and (max-width: 1184px) and (min-width: 768px) and (max-width: 768px) {
  header .header_inner .box02 nav ul {
    margin: 3rem auto 0;
  }
}
@media screen and (min-width: 768px) and (max-width: 1184px) {
  header .header_inner .box02 nav ul li {
    width: 100%;
    height: auto;
    border-bottom: solid 1px #c5c5c5;
  }
  header .header_inner .box02 nav ul li .nav_link {
    width: 100%;
    padding: 1.1rem 0 1.1rem 0.8rem;
  }
  header .header_inner .box02 nav ul li .nav_link::before {
    content: "〉";
    position: absolute;
    top: 50%;
    left: 100%;
    transform: translate(-100%, -50%);
    width: 3.1875rem;
    height: 100%;
    font-size: 0.9725rem;
    color: #fff;
    font-weight: 400;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000;
  }
  header .header_inner .box02 nav ul li .nav_link span {
    font-size: 1.06rem;
    color: #000;
  }
  header .header_inner .box02 nav ul .nav01:hover .nav_link,
  header .header_inner .box02 nav ul .nav02:hover .nav_link,
  header .header_inner .box02 nav ul .nav_r:hover .nav_link,
  header .header_inner .box02 nav ul .nav03:hover .nav_link,
  header .header_inner .box02 nav ul .nav04:hover .nav_link,
  header .header_inner .box02 nav ul .nav05:hover .nav_link {
    opacity: 0.7;
    background: transparent;
  }
  header .header_inner .box02 nav ul .nav01:hover .nav_link span,
  header .header_inner .box02 nav ul .nav02:hover .nav_link span,
  header .header_inner .box02 nav ul .nav_r:hover .nav_link span,
  header .header_inner .box02 nav ul .nav03:hover .nav_link span,
  header .header_inner .box02 nav ul .nav04:hover .nav_link span,
  header .header_inner .box02 nav ul .nav05:hover .nav_link span {
    color: #000;
  }
  header .header_inner .box02 nav ul .nav03 .nav_hover,
  header .header_inner .box02 nav ul .nav04 .nav_hover,
  header .header_inner .box02 nav ul .nav05 .nav_hover {
    display: none !important;
  }
  header .header_inner .box02 nav ul .nav03 .toggle01,
  header .header_inner .box02 nav ul .nav04 .toggle01,
  header .header_inner .box02 nav ul .nav05 .toggle01 {
    cursor: pointer;
  }
  header .header_inner .box02 nav ul .nav03 .toggle01::before,
  header .header_inner .box02 nav ul .nav04 .toggle01::before,
  header .header_inner .box02 nav ul .nav05 .toggle01::before {
    content: "ー";
    background: #d6d6d6;
    background: linear-gradient(to bottom, #ebebeb 0%, #ebebeb 7%, #d6d6d6 8%);
  }
  header .header_inner .box02 nav ul .nav03 .toggle01::after,
  header .header_inner .box02 nav ul .nav04 .toggle01::after,
  header .header_inner .box02 nav ul .nav05 .toggle01::after {
    content: "＋";
    position: absolute;
    top: 50%;
    left: 100%;
    transform: translate(-100%, -50%);
    transform-origin: center;
    width: 3.1875rem;
    height: 100%;
    font-size: 0.9725rem;
    color: #fff;
    font-weight: 400;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000;
    transition: 0.3s;
  }
  header .header_inner .box02 nav ul .nav03 .toggle01.active02::after,
  header .header_inner .box02 nav ul .nav04 .toggle01.active02::after,
  header .header_inner .box02 nav ul .nav05 .toggle01.active02::after {
    opacity: 0;
    transform: translate(-100%, -50%);
  }
  header .header_inner .box02 nav ul .nav03 .toggle02,
  header .header_inner .box02 nav ul .nav04 .toggle02,
  header .header_inner .box02 nav ul .nav05 .toggle02 {
    display: none;
    justify-content: center;
    flex-direction: column;
    padding: 0 0.4375rem;
    background: #d6d6d6;
    margin-bottom: 0.3rem;
  }
  header .header_inner .box02 nav ul .nav03 .toggle02 .menu,
  header .header_inner .box02 nav ul .nav04 .toggle02 .menu,
  header .header_inner .box02 nav ul .nav05 .toggle02 .menu {
    position: relative;
    padding: 0.98rem 0 0.98rem 0.5625rem;
    border-bottom: solid 1px #ebebeb;
  }
  header .header_inner .box02 nav ul .nav03 .toggle02 .menu:hover,
  header .header_inner .box02 nav ul .nav04 .toggle02 .menu:hover,
  header .header_inner .box02 nav ul .nav05 .toggle02 .menu:hover {
    opacity: 0.7;
  }
  header .header_inner .box02 nav ul .nav03 .toggle02 .menu:last-of-type,
  header .header_inner .box02 nav ul .nav04 .toggle02 .menu:last-of-type,
  header .header_inner .box02 nav ul .nav05 .toggle02 .menu:last-of-type {
    border-bottom: none;
  }
  header .header_inner .box02 nav ul .nav03 .toggle02 .menu::before,
  header .header_inner .box02 nav ul .nav04 .toggle02 .menu::before,
  header .header_inner .box02 nav ul .nav05 .toggle02 .menu::before {
    content: "〉";
    position: absolute;
    top: 50%;
    left: 100%;
    transform: translate(-86%, -50%);
    width: 3rem;
    height: 100%;
    font-size: 0.9725rem;
    color: #fff;
    font-weight: 400;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000;
  }
  header .header_inner .box02 nav ul .nav03 .toggle02 .menu span,
  header .header_inner .box02 nav ul .nav04 .toggle02 .menu span,
  header .header_inner .box02 nav ul .nav05 .toggle02 .menu span {
    font-size: 0.93rem;
    color: #000;
  }
  header .header_inner .box02 nav ul .nav03 .active02,
  header .header_inner .box02 nav ul .nav04 .active02,
  header .header_inner .box02 nav ul .nav05 .active02 {
    display: block;
  }
  header .header_inner .box02 nav ul .nav01.nav_blue .nav_link {
    background: transparent;
  }
  header .header_inner .box02 nav ul .nav01.nav_blue .nav_link span {
    color: #000;
  }
  header .header_inner .box02 nav ul .nav02.nav_blue .nav_link {
    background: transparent;
  }
  header .header_inner .box02 nav ul .nav02.nav_blue .nav_link span {
    color: #000;
  }
  header .header_inner .box02 nav ul .nav03.nav_blue .nav_link {
    background: transparent;
  }
  header .header_inner .box02 nav ul .nav03.nav_blue .nav_link span {
    color: #000;
  }
  header .header_inner .box02 nav ul .nav04.nav_blue .nav_link {
    background: transparent;
  }
  header .header_inner .box02 nav ul .nav04.nav_blue .nav_link span {
    color: #000;
  }
  header .header_inner .box02 nav ul .nav_r .nav_link {
    justify-content: flex-start;
  }
  header .header_inner .box02 nav .h_contact02 {
    margin: 3.3125rem auto 0;
    width: 16.045625rem;
    height: 3.85375rem;
    background: #000;
  }
  header .header_inner .box02 nav .h_contact02 span {
    font-size: 0.875rem;
  }
  header .header_inner .box02 nav .tel {
    margin: 1.375rem auto 0;
    width: 16.045625rem;
    height: 3.85375rem;
    background: #0066ad;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  header .header_inner .box02 nav .tel span {
    font-size: 0.875rem;
    color: #fff;
  }
  header .header_inner .box02 nav .nav_inner {
    margin-top: 3rem;
  }
  header .header_inner .box02 nav .nav_inner .h_contact02 {
    overflow: hidden;
    position: relative;
    margin: 0rem auto 0;
    width: 17.5rem;
    height: 4.4rem;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  header .header_inner .box02 nav .nav_inner .h_contact02 span {
    position: relative;
    z-index: 3;
    color: #fff;
    font-size: 1.03rem;
    transition: ease 0.6s;
  }
  header .header_inner .box02 nav .nav_inner .h_contact02:hover span {
    color: #000;
  }
  header .header_inner .box02 nav .nav_inner .h_tel {
    overflow: hidden;
    position: relative;
    margin: 1.25rem auto 0;
    width: 17.5rem;
    height: 4.4rem;
    background: #0066ad;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  header .header_inner .box02 nav .nav_inner .h_tel span {
    position: relative;
    z-index: 3;
    color: #fff;
    font-size: 0.96rem;
    transition: ease 0.6s;
  }
  header .header_inner .box02 nav .nav_inner .h_tel:hover span {
    color: #0066ad;
  }
  header .header_inner .box02 nav .nav_inner .tab_logo {
    margin: 5rem 0 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  header .header_inner .box02 nav .nav_inner .tab_logo .logo01 figure {
    width: 12.48125rem;
    height: 3.963125rem;
    display: flex;
    align-items: center;
    justify-content: center;
    mix-blend-mode: multiply;
  }
  header .header_inner .box02 nav .nav_inner .tab_logo .logo01 figure img {
    width: 100%;
  }
  header .header_inner .box02 nav .nav_inner .tab_logo .logo01 .c_name {
    font-size: 1.03rem;
    text-align: center;
  }
  header .header_inner .box02 nav .nav_inner .tab_logo .logo02 figure {
    width: 8.7rem;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  header .header_inner .box02 nav .nav_inner .tab_logo .logo02 figure img {
    width: 100%;
  }
  header .header_inner .box02 nav .nav_inner ul {
    margin: 3.6875rem auto 0;
    display: grid;
    grid-template-columns: repeat(2, auto);
    grid-template-rows: repeat(3, auto);
    grid-gap: 10px 0px;
    list-style: none;
    width: -moz-fit-content;
    width: fit-content;
  }
  header .header_inner .box02 nav .nav_inner ul li {
    border-bottom: none;
    width: -moz-fit-content;
    width: fit-content;
  }
  header .header_inner .box02 nav .nav_inner ul li a {
    display: inline-block;
    transition: 0.3s;
  }
  header .header_inner .box02 nav .nav_inner ul li a span {
    font-size: 0.96rem;
  }
  header .header_inner .box02 nav .nav_inner ul li a:hover {
    opacity: 0.7;
  }
}
header .header_inner .menu_open {
  width: 3.76rem;
  height: 3.76rem;
  position: relative;
  background: #ebebeb;
  cursor: pointer;
}
header .header_inner .menu_open span {
  position: absolute;
  top: 50%;
  left: 50%;
  background: #000000;
  width: 40%;
  height: 0.89px;
  transition: 0.3s;
}
header .header_inner .menu_open span:nth-of-type(1) {
  transform: translate(-50%, -50%) translateY(7px);
}
header .header_inner .menu_open span:nth-of-type(2) {
  transform: translate(-50%, -50%);
}
header .header_inner .menu_open span:nth-of-type(3) {
  transform: translate(-50%, -50%) translateY(-7px);
}
header .header_inner .menu_open.active span:nth-of-type(1) {
  transform: translate(-50%, -50%) rotate(45deg);
}
header .header_inner .menu_open.active span:nth-of-type(2) {
  opacity: 0;
}
header .header_inner .menu_open.active span:nth-of-type(3) {
  transform: translate(-50%, -50%) rotate(-45deg);
}

/*///////////////////////////////////////////////////
//
//            ▼ フッター ▼
//
///////////////////////////////////////////////////*/
footer {
  position: relative;
  z-index: 1;
  background: #000;
  padding: 0 0 1.5rem;
}
footer .footer_in {
  margin: 0 auto;
  width: 92%;
  max-width: 1188px;
}
footer .footer_in .f_logo {
  width: 31.125rem;
  height: 8.625rem;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2.6875rem;
}
footer .footer_in .f_logo .logo01 {
  width: 14.375rem;
  height: 5.1875rem;
}
footer .footer_in .f_logo .logo02 {
  width: 9.3125rem;
  height: 3.75625rem;
}
footer .footer_in .box_outer {
  margin: 3rem 0 0;
  display: flex;
  justify-content: space-between;
  width: 100%;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  footer .footer_in .box_outer {
    gap: 0.125rem;
  }
}
footer .footer_in .box01 .c_name {
  margin: 0 0 2.6375rem;
  font-size: 1.4375rem;
  font-weight: 600;
  line-height: 1;
  color: #fff;
  font-family: "Shippori Mincho B1", serif;
}
footer .footer_in .box01 .access {
  margin: 2.625rem 0 0;
}
footer .footer_in .box01 .access:not(:first-of-type) {
  margin-top: 2.0625rem;
}
footer .footer_in .box01 .access p {
  letter-spacing: 0.05em;
  font-size: 0.875rem;
  font-weight: 400;
  color: #fff;
  line-height: 1.2;
}
footer .footer_in .box01 .access p:not(:first-of-type) {
  margin-top: 6px;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  footer .footer_in .box01 .access p {
    font-size: 0.625rem;
  }
}
footer .footer_in .box01 .access .bold {
  margin: 0 0 1.4375rem;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0em;
  line-height: 1.2;
}
footer .footer_in .box02 .inner01 {
  display: flex;
  justify-content: center;
  gap: 3.25rem;
}
footer .footer_in .box02 .inner01 ul {
  display: flex;
  flex-direction: column;
  gap: 0.8125rem;
}
footer .footer_in .box02 .inner01 ul li {
  line-height: 1.4;
}
footer .footer_in .box02 .inner01 ul li a {
  transition: 0.3s;
  display: inline-block;
}
footer .footer_in .box02 .inner01 ul li a span {
  font-size: 1rem;
  font-weight: 400;
  color: #fff;
  letter-spacing: 0.05em;
  line-height: 1.2;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  footer .footer_in .box02 .inner01 ul li a span {
    font-size: 0.6875rem;
  }
}
footer .footer_in .box02 .inner01 ul li a:hover {
  opacity: 0.7;
}
footer .footer_in .box02 .inner01 ul li ul li {
  margin: 0 0 0 1.25rem;
}
footer .footer_in .box02 .inner01 ul li ul li:first-of-type {
  margin-top: 0.8125rem;
}
footer .footer_in .box02 .inner01 ul li ul li a span {
  font-size: 0.875rem;
  line-height: 1.2;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  footer .footer_in .box02 .inner01 ul li ul li a span {
    font-size: 0.625rem;
  }
}
footer .footer_in .box02 .inner01 ul .blank01 {
  margin-top: 2.6875rem;
}
footer .footer_in .box02 .inner01 ul .blank01 .nav_r {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
}
footer .footer_in .box02 .inner01 ul .blank01 .nav_r .link {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  footer .footer_in .box02 .inner01 ul .blank01 .nav_r .link svg {
    width: 0.875rem;
  }
}
footer .footer_in .box02 .inner01 ul .blank01 .nav_r .link svg path {
  fill: #fff;
  stroke: #fff;
}
footer .footer_in .box02 .inner01 ul .blank02 {
  margin-top: 3.125rem;
}
footer .footer_in .box02 .inner02 {
  margin: 3.625rem 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.125rem;
}
footer .footer_in .box02 .inner02 .f_contact {
  width: 20.073125rem;
  background: #0066ad;
  gap: 0.775rem;
}
footer .footer_in .box02 .inner02 .f_contact .mail {
  padding: 0.1rem 0 0;
}
footer .footer_in .box02 .inner02 .f_contact span {
  font-weight: 400;
  display: flex;
  align-items: center;
  justify-content: center;
  letter-spacing: 0.05em;
}
footer .footer_in .box02 .inner02 .f_contact span svg {
  width: 1.3975rem;
}
footer .footer_in .box02 .inner02 .f_contact span svg path {
  fill: #fff;
  stroke: #fff;
}
footer .footer_in .box02 .inner02 .f_contact:hover span svg path {
  fill: #0066ad;
  stroke: #0066ad;
}
footer .footer_in .box02 .inner02 .f_tel {
  background: #0066ad;
  width: 17.705625rem;
}
footer .footer_in .box02 .inner02 .f_tel span {
  font-size: 0.875rem;
  font-weight: 400;
  letter-spacing: 0.05em;
}
footer .copyright {
  margin: 6.875rem 0 0;
}
footer .copyright p {
  font-size: 0.875rem;
  font-family: "Shippori Mincho B1", serif;
  color: #fff;
  text-align: center;
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.05em;
}
footer .move_page_top {
  background: #000;
  width: 3.625rem;
  height: 3.625rem;
  transition: all 0.3s;
  display: flex;
  align-items: center;
  justify-content: center;
}
footer .move_page_top svg {
  width: 1.97875rem;
  height: 1.16625rem;
}
footer .move_page_top svg path {
  fill: #fff;
  stroke: #fff;
}
footer .move_page_top:hover {
  opacity: 0.8;
}
footer .to_top {
  position: fixed;
  right: 10px;
  bottom: 10px;
}

/*///////////////////////////////////////////////////
//
//            ▼ CTA ▼
//
///////////////////////////////////////////////////*/
.cta {
  position: relative;
  z-index: 1;
  padding: 0 0 4.75rem;
  background: #fff;
}
.cta .cta_outer {
  padding: 7.375rem 0;
  background: url(../images/common/cta_bg.jpg) center center/cover no-repeat;
}
.cta .top_box_outer {
  display: flex;
  align-items: center;
  gap: 9.8%;
}
.cta .ttl h2 {
  font-size: 0.8125rem;
  font-weight: 600;
  color: #fff;
  line-height: 1.2;
}
.cta .ttl .en {
  font-size: 2.1025rem;
  font-weight: 500;
  color: #fff;
  line-height: 1.1979785969;
  letter-spacing: 0.05em;
}
.cta .inner {
  padding: 2rem 0 0;
  display: flex;
  align-items: center;
  gap: 4.87%;
}
.cta .inner .f_contact {
  gap: 1.0625rem;
}
.cta .inner .btn {
  background: #fff;
}
.cta .inner .btn span {
  font-size: 0.875rem;
  color: #000;
}
.cta .inner .btn span svg {
  width: 1.3975rem;
}
.cta .inner .btn span svg path {
  fill: #000;
  stroke: #000;
  transition: ease 0.6s;
}
.cta .inner .btn:hover span {
  color: #fff;
}
.cta .inner .btn:hover span svg {
  width: 1.3975rem;
}
.cta .inner .btn:hover span svg path {
  fill: #fff;
  stroke: #fff;
}
.cta .inner .bgleft:before {
  /*色や形状*/
  background: #000;
}

.mv {
  position: fixed;
  z-index: 0;
  left: 0;
  width: 100%;
  height: 100.5025rem;
  margin: 4.0625rem 0 0;
}
@media screen and (min-width: 768px) and (max-width: 1184px) {
  .mv {
    margin: 3.76rem 0 0;
  }
}
.mv figure {
  height: 100%;
}
.mv figure img {
  height: 100%;
}

.bg_w_wrap {
  position: relative;
  z-index: 0;
  padding: 4.0625rem 0 5.125rem;
  overflow: hidden;
  /*///////////////////////////////////////////////////
  //
  //            ▼ トップ02 ▼
  //
  ///////////////////////////////////////////////////*/
  /*///////////////////////////////////////////////////
  //
  //            ▼ トップ03 ▼
  //
  ///////////////////////////////////////////////////*/
}
@media screen and (min-width: 768px) and (max-width: 1184px) {
  .bg_w_wrap {
    padding-top: 3.76rem;
  }
}
.bg_w_wrap .bg_w_wrap02 {
  position: absolute;
  z-index: 0;
  top: 0%;
  left: 0%;
  width: 100%;
  height: 100%;
  background: url(../images/top/bg_blur_w.png) center center/cover no-repeat;
  -webkit-backface-visibility: hidden;
  /* チラつき防止用 */
}
.bg_w_wrap .bg_w_wrap02 .bg_w_wrap_blur {
  opacity: 0;
  /* Javascriptでスクロール時にブラーをかけるため、初期状態はみえなくする */
  position: absolute;
  z-index: 1;
  top: 0%;
  left: -1%;
  width: 101%;
  height: 100%;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
.bg_w_wrap .bg_w_wrap02 img {
  height: 100%;
}
.bg_w_wrap .bg_center {
  margin: 0 auto;
  max-width: 1400px;
  width: 95%;
  position: relative;
  z-index: 1;
}
.bg_w_wrap .bg_b_in {
  margin: 19.0625rem auto 0;
  max-width: 1200px;
  background: url(../images/top/bg_blur_b.png) center center/cover no-repeat;
  padding: 7.5625rem 4rem 0;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .bg_w_wrap .bg_b_in {
    padding: 7.5625rem 2rem 0;
  }
}
.bg_w_wrap .top {
  position: relative;
  z-index: 3;
}
.bg_w_wrap .top01 {
  padding: 0 0 0 5.9375rem;
}
.bg_w_wrap .top01 .box h2 {
  display: flex;
  flex-direction: column;
  gap: 2.3125rem;
}
.bg_w_wrap .top01 .box h2 span {
  font-size: 5.125rem;
  font-weight: 600;
  color: #fff;
  line-height: 1;
  letter-spacing: 0.05em;
}
.bg_w_wrap .top01 .box p {
  width: 27rem;
  margin: 4rem 0 0;
  font-family: "Shippori Mincho B1", serif;
  line-height: 2.25;
  color: #fff;
}
.bg_w_wrap .top01 .box .btn_wrap {
  margin: 2.85625rem 0 0;
}
.bg_w_wrap .top01 .box .btn_wrap .btn {
  width: 15.125rem;
}
.bg_w_wrap .top02 {
  margin: 2.3125rem auto 0;
  display: flex;
  justify-content: space-between;
  max-width: 1034px;
}
.bg_w_wrap .top02 .box01 p {
  width: 15.9375rem;
  margin: 1.5rem 0 0;
  color: #333333;
  font-weight: 400;
  font-family: "Shippori Mincho B1", serif;
}
.bg_w_wrap .top02 .box02 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3%;
  width: 64%;
}
.bg_w_wrap .top02 .box02 .inner {
  width: 57.275%;
  transition: 0.3s;
}
.bg_w_wrap .top02 .box02 .inner figure {
  overflow: hidden;
}
.bg_w_wrap .top02 .box02 .inner figure img {
  transition: 0.3s;
}
.bg_w_wrap .top02 .box02 .inner p {
  font-weight: 300;
  color: #707070;
}
.bg_w_wrap .top02 .box02 .inner:hover {
  opacity: 0.8;
}
.bg_w_wrap .top02 .box02 .inner:hover figure img {
  transform: scale(1.05);
}
.bg_w_wrap .top03 {
  margin: 4.875rem auto 0;
  display: flex;
  justify-content: space-between;
  max-width: 1034px;
}
.bg_w_wrap .top03 .box01 p {
  width: 15.9375rem;
  margin: 1.5rem 0 0;
  color: #333333;
  font-weight: 400;
  font-family: "Shippori Mincho B1", serif;
}
.bg_w_wrap .top03 .box02 {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 3px;
  width: 82.399%;
  margin-right: -18%;
}
.bg_w_wrap .top03 .box02 .inner {
  height: 16.1875rem;
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  transition: 0.3s;
}
.bg_w_wrap .top03 .box02 .inner::before {
  padding: 0 0 0 1rem;
  content: "〉";
  position: absolute;
  top: 50%;
  left: 1%;
  transform: translate(-50%, -50%);
  width: min(4vw, 56px);
  height: min(3.887vw, 54.41px);
  font-size: 0.875rem;
  background: #0066ad;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  z-index: 1;
  letter-spacing: -0.425em;
}
.bg_w_wrap .top03 .box02 .inner figure {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.bg_w_wrap .top03 .box02 .inner figure img {
  height: 100%;
  transition: 0.3s;
}
.bg_w_wrap .top03 .box02 .inner:hover {
  opacity: 0.8;
}
.bg_w_wrap .top03 .box02 .inner:hover figure img {
  transform: scale(1.05);
}
.bg_w_wrap .top03 .box02 .inner h3 {
  position: absolute;
  top: 50%;
  left: min(4.5vw, 60px);
  transform: translateY(-50%);
  z-index: 1;
  font-size: 2.0625rem;
  color: #fff;
  font-weight: 500;
  line-height: 1.6;
}
@media screen and (min-width: 1026px) and (max-width: 1279.5px) {
  .bg_w_wrap .top03 .box02 .inner h3 {
    font-size: 1.8rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .bg_w_wrap .top03 .box02 .inner h3 {
    font-size: 1.5rem;
  }
}
.bg_w_wrap .top03 .box02 .inner p {
  position: absolute;
  top: 50%;
  transform: translate(0%, -50%);
  left: min(32.7vw, 460px);
  width: 24.5vw;
  max-width: 343px;
  z-index: 1;
  letter-spacing: -0.03em;
  font-size: 0.875rem;
  line-height: 2.5;
  font-weight: 300;
  color: #fff;
}

/*///////////////////////////////////////////////////
//
//            ▼ トップ04 ▼
//
///////////////////////////////////////////////////*/
.top04 {
  background: #f5f9fe;
  margin: -1.6rem 0 0;
  padding: 8.5rem 0;
}
.top04 .top04_in .box01 {
  display: flex;
  align-items: flex-end;
  gap: 3.875rem;
}
.top04 .top04_in .box01 p {
  color: #333333;
  font-family: "Shippori Mincho B1", serif;
}
.top04 .top04_in .box02 {
  margin: 5rem 0 0;
  display: flex;
  gap: 3.8%;
  width: 106.19%;
}
@media screen and (min-width: 768px) and (max-width: 1279.5px) {
  .top04 .top04_in .box02 {
    width: 100%;
  }
}
.top04 .top04_in .box02 .inner {
  width: 21.87%;
  width: 22.87%;
  transition: 0.3s;
}
.top04 .top04_in .box02 .inner figure {
  overflow: hidden;
}
.top04 .top04_in .box02 .inner figure img {
  transition: 0.3s;
}
.top04 .top04_in .box02 .inner h3 {
  margin: 0.4rem 0 0;
  font-size: 1.3125rem;
  font-weight: 600;
  letter-spacing: 0.05em;
}
.top04 .top04_in .box02 .inner:hover {
  opacity: 0.8;
}
.top04 .top04_in .box02 .inner:hover figure img {
  transform: scale(1.05);
}

/*///////////////////////////////////////////////////
//
//            ▼ トップ05 ▼
//
///////////////////////////////////////////////////*/
.top05 {
  background: #fff;
  padding: 1.38125rem 0 0;
  height: 38.7rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .top05 {
    height: 33.3rem;
  }
}
.top05 .top05_in .box01 {
  margin-bottom: min(11.4285714vw, 148px);
  width: 31.75rem;
  position: relative;
  z-index: 1;
  padding: 2.875rem 3.75rem 2.875rem 0;
  background: #fff;
}
.top05 .top05_in .box01 p {
  margin-top: 1.5rem;
  color: #333333;
  font-family: "Shippori Mincho B1", serif;
}
.top05 .top05_in .box01 .btn_wrap {
  margin: 2.375rem 0 0;
}
.top05 .top05_in .box01 .btn_wrap .btn {
  width: 17.705625rem;
}
.top05 figure {
  position: absolute;
  top: 15%;
  right: 0%;
  width: 50.25rem;
  max-width: 804px;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .top05 figure {
    width: 43.25rem;
  }
}

/*///////////////////////////////////////////////////
//
//            ▼ トップ06 ▼
//
///////////////////////////////////////////////////*/
.top06 {
  background: #fff;
  padding: 6.25rem 0 9.375rem;
  margin: -0.0625rem 0 0;
}
.top06 .top06_in .top_box_outer {
  display: flex;
  gap: 9.7%;
}
.top06 .top06_in .box02 {
  width: 65.3%;
}
.top06 .top06_in .box02 ul li {
  border: solid #c5c5c5;
  border-width: 0.68px 0 0 0;
  padding: 1.75rem 0;
}
.top06 .top06_in .box02 ul li:last-of-type {
  border-width: 0.68px 0 0.68px 0;
}
.top06 .top06_in .box02 ul li a {
  display: flex;
  gap: 8.8888%;
  padding: 0 3px;
  transition: 0.3s;
}
.top06 .top06_in .box02 ul li a .time {
  font-size: 0.9375rem;
  color: #333333;
  line-height: 1.2;
  font-weight: 400;
  letter-spacing: 0.05em;
}
.top06 .top06_in .box02 ul li a p {
  font-size: 0.9375rem;
  color: #333333;
  line-height: 1.2;
  font-weight: 400;
}
.top06 .top06_in .box02 ul li a:hover {
  opacity: 0.7;
}
.top06 .top06_in .box02 ul .no_article {
  color: #333;
  margin: 2.5rem 0 0 0.5rem;
}
.top06 .top06_in .box02 .btn_wrap {
  margin: 1.1875rem 0 0 9px;
}
.top06 .top06_in .box02 .btn_wrap .btn02 {
  display: inline-block;
  position: relative;
  font-size: 0.875rem;
  color: #333333;
  letter-spacing: 0.05em;
  transition: 0.3s;
}
.top06 .top06_in .box02 .btn_wrap .btn02::before {
  content: "〉";
  position: absolute;
  top: 50%;
  left: 100%;
  transform: translate(-50%, -50%);
  font-size: 0.875rem;
  color: #333333;
  margin: 0 0 0 1.5625rem;
}
.top06 .top06_in .box02 .btn_wrap .btn02::after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 0%;
  height: 1px;
  background: #000;
  transition: 0.3s;
}
.top06 .top06_in .box02 .btn_wrap .btn02:hover {
  opacity: 0.8;
}
.top06 .top06_in .box02 .btn_wrap .btn02:hover::after {
  width: 100%;
}

/*///////////////////////////////////////////////////
//
//            ▼ 下層共通 ▼
//
///////////////////////////////////////////////////*/
.introduction {
  max-width: 1920px;
  margin: 0 auto 1.375rem;
}
.introduction .introduction_box {
  display: flex;
  align-items: center;
  gap: 0.625rem;
}
.introduction .introduction_box .item {
  width: calc((100% - 1.25rem) / 3);
}
.introduction .introduction_box .item a {
  position: relative;
}
.introduction .introduction_box .item a figure {
  overflow: hidden;
  transition: 0.3s;
}
.introduction .introduction_box .item a figure img {
  width: 100%;
  height: 100%;
  transition: 0.3s;
}
.introduction .introduction_box .item a .txt_box {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: -moz-max-content;
  width: max-content;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1;
  text-align: center;
  color: #fff;
  z-index: 1;
}
.introduction .introduction_box .item a .txt_box span {
  font-size: 1.3125rem;
}
.introduction .introduction_box .item a .txt_box p {
  font-size: 1.5rem;
  font-family: "Shippori Mincho B1", serif;
  margin: 1.125rem 0 0;
}
.introduction .introduction_box .item a:hover figure {
  opacity: 0.8;
}
.introduction .introduction_box .item a:hover figure img {
  transform: scale(1.05);
}

.lower_mv {
  position: relative;
}
.lower_mv::before, .lower_mv::after {
  content: "";
  position: absolute;
  top: 74.5%;
  height: 1px;
  transform: translateY(-50%);
}
.lower_mv::before {
  left: 0;
  width: 100%;
  background: #bdbdbd;
}
.lower_mv::after {
  left: 8.5%;
  width: 2.5rem;
  background: #0066ad;
}
.lower_mv figure img {
  width: 100%;
  left: 100%;
}
.lower_mv .ttl_box {
  position: absolute;
  top: 55%;
  left: 8.5%;
  transform: translateY(-50%);
}
.lower_mv .ttl_box span {
  display: block;
  font-size: 1.125rem;
  font-weight: 500;
  font-family: "Shippori Mincho B1", serif;
  letter-spacing: 0.05em;
  line-height: 1;
  color: #fff;
}
.lower_mv .ttl_box h1 {
  font-size: 2.3125rem;
  font-weight: 500;
  letter-spacing: 0.009em;
  line-height: 1;
  color: #fff;
  margin: 0.975rem 0 0;
}

.breadcramb {
  border-bottom: solid 1px #bcbcbc;
  margin: 4.0625rem 0 0;
}
@media screen and (min-width: 768px) and (max-width: 1184px) {
  .breadcramb {
    margin: 3.76rem 0 0;
  }
}
.breadcramb .breadcramb_container {
  width: 95.43%;
  margin: 0 auto;
}
.breadcramb .breadcramb_container ul {
  display: flex;
  gap: 1.375rem;
  padding: 0.625rem 0 0.5rem;
}
.breadcramb .breadcramb_container ul li {
  font-size: 0.75rem;
}
.breadcramb .breadcramb_container ul li a {
  padding: 0 1.8125rem 0 0;
  position: relative;
  transition: 0.3s;
}
.breadcramb .breadcramb_container ul li a::before {
  position: absolute;
  content: ">";
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  font-size: 0.75rem;
  color: #000;
}
.breadcramb .breadcramb_container ul li a:hover {
  color: #dcdcdc;
}

.headword {
  width: 90%;
  max-width: 1160px;
  margin: 0 auto;
  padding: 3.125rem 0;
}
.headword p {
  font-size: 1.5rem;
  font-weight: 500;
  font-family: "Shippori Mincho B1", serif;
  letter-spacing: 0.05em;
  line-height: 1.83;
}

.related_links {
  border-top: solid 1px #104883;
  padding: 2.75rem 0 3.75rem;
}
.related_links .related_links_box {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1.5rem;
}
@media screen and (min-width: 768px) and (max-width: 1184px) {
  .related_links .related_links_box {
    gap: 1rem;
  }
}
.related_links .related_links_box .item {
  width: 22.16%;
  max-width: 16.098125rem;
}
@media screen and (min-width: 768px) and (max-width: 1184px) {
  .related_links .related_links_box .item {
    width: 25%;
  }
}
.related_links .related_links_box .item a {
  transition: 0.3s;
}
.related_links .related_links_box .item a figure {
  height: 6.84375rem;
  transition: 0.3s;
}
.related_links .related_links_box .item a figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.related_links .related_links_box .item a .link_txt {
  margin: 1.08125rem 0 0;
}
.related_links .related_links_box .item a .link_txt p {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1;
}
@media screen and (min-width: 768px) and (max-width: 1184px) {
  .related_links .related_links_box .item a .link_txt p {
    font-size: 0.75rem;
  }
}
.related_links .related_links_box .item a .link_txt p span {
  margin-right: 1.75rem;
  position: relative;
}
@media screen and (min-width: 768px) and (max-width: 1184px) {
  .related_links .related_links_box .item a .link_txt p span {
    margin-right: 1rem;
  }
}
.related_links .related_links_box .item a .link_txt p span::before {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 0%;
  height: 1px;
  background: #000;
  transition: 0.3s;
}
.related_links .related_links_box .item a:hover figure {
  opacity: 0.8;
}
.related_links .related_links_box .item a:hover .link_txt p span::before {
  width: 100%;
}
.related_links .related_links_box .item:first-of-type {
  width: 23.19%;
  max-width: 16.8125rem;
  margin: 1.25rem 0 0;
  padding-left: 0.875rem;
}
@media screen and (min-width: 768px) and (max-width: 1184px) {
  .related_links .related_links_box .item:first-of-type {
    width: 18%;
    padding-left: 0;
  }
}
.related_links .related_links_box .item:first-of-type h2 {
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1;
}
.related_links .related_links_box .item:first-of-type .link_txt {
  margin-top: 2.2875rem;
}
.related_links .related_links_box .item:first-of-type .link_txt a {
  display: inline-block;
  transition: 0.3s;
}
.related_links .related_links_box .item:first-of-type .link_txt a p {
  display: inline-block;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1;
}
@media screen and (min-width: 768px) and (max-width: 1184px) {
  .related_links .related_links_box .item:first-of-type .link_txt a p {
    font-size: 0.75rem;
  }
}
.related_links .related_links_box .item:first-of-type .link_txt a p span {
  margin-right: 1.75rem;
  position: relative;
}
@media screen and (min-width: 768px) and (max-width: 1184px) {
  .related_links .related_links_box .item:first-of-type .link_txt a p span {
    margin-right: 1rem;
  }
}
.related_links .related_links_box .item:first-of-type .link_txt a p span::before {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 0%;
  height: 1px;
  background: #000;
  transition: 0.3s;
}
.related_links .related_links_box .item:first-of-type .link_txt a:hover p span::before {
  width: 100%;
}

/*///////////////////////////////////////////////////
//
//            ▼ 研究開発支援02 ▼
//            ▼ 実験設備の維持管理・工事請負02 ▼
//            ▼ 研究用特殊機器などの設計・製作02 ▼
//
///////////////////////////////////////////////////*/
.rd-support02 {
  padding: 0 0 3.625rem;
}
.rd-support02 .rd-support02_content {
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;
  background: #efefef;
  padding: 6.3125rem 0 6.1rem;
  position: relative;
}
.rd-support02 .rd-support02_content::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 7.5rem;
  height: 100%;
  background: #fff;
}
.rd-support02 .rd-support02_content .txt_box {
  width: 50.93%;
  max-width: 44.5625rem;
  padding: 0 6.375rem 0 11.75rem;
  margin: 2.5rem 0 0;
}
@media screen and (min-width: 768px) and (max-width: 1184px) {
  .rd-support02 .rd-support02_content .txt_box {
    padding: 0 3.75rem 0 8rem;
  }
}
.rd-support02 .rd-support02_content .txt_box .txt_item h2 {
  font-size: 1.9375rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1;
  padding: 0 0 1.3125rem;
  position: relative;
}
.rd-support02 .rd-support02_content .txt_box .txt_item h2::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0.8125rem;
  height: 1px;
  background: #0066ad;
}
.rd-support02 .rd-support02_content .txt_box .txt_item .txt {
  font-size: 1.125rem;
  font-weight: 400;
  font-family: "Shippori Mincho B1", serif;
  letter-spacing: 0.05em;
  line-height: 1.78;
  color: #333333;
  margin: 1.45625rem 0 0;
}
.rd-support02 .rd-support02_content .txt_box .txt_item:last-of-type {
  margin: 7.73125rem 0 0;
}
@media screen and (min-width: 768px) and (max-width: 1184px) {
  .rd-support02 .rd-support02_content .txt_box .txt_item h2 {
    font-size: 1.8125rem;
  }
  .rd-support02 .rd-support02_content .txt_box .txt_item .txt {
    font-size: 1rem;
  }
}
.rd-support02 .rd-support02_content .img_box {
  width: 49.07%;
  position: relative;
  z-index: 1;
}
.rd-support02 .rd-support02_content .img_box figure img {
  width: 100%;
  height: 100%;
}
.rd-support02 .rd-support02_content .img_box figure:first-of-type {
  max-width: 38.25375rem;
  margin: 0 4.625rem 0 0;
}
.rd-support02 .rd-support02_content .img_box figure:last-of-type {
  position: absolute;
  top: calc(100% - 1.5rem);
  right: 0;
  max-width: 28.25rem;
  margin: 0 0 0 14.625rem;
}
.rd-support02 .rd-support02_introduction {
  padding: 0 0 7.1875rem;
  margin: -0.0625rem 0 0;
  position: relative;
}
.rd-support02 .rd-support02_introduction::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 7.5rem;
  height: 100%;
  background: #efefef;
}
.rd-support02 .rd-support02_introduction::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 7.1875rem;
  background: #efefef;
}
.rd-support02 .rd-support02_introduction .rd-support02_introduction_in {
  padding: 7.84375rem 5.875rem 5.25rem 5.25rem;
}
@media screen and (min-width: 768px) and (max-width: 1184px) {
  .rd-support02 .rd-support02_introduction .rd-support02_introduction_in {
    width: 77%;
    padding: 7.84375rem 3.375rem 5.25rem;
  }
}
.rd-support02 .rd-support02_introduction .rd-support02_introduction_in h2 {
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1;
  color: #0066ad;
}
.rd-support02 .rd-support02_introduction .rd-support02_introduction_in .rd-support02_introduction_box {
  display: flex;
  flex-wrap: wrap;
  row-gap: 3.75rem;
  margin: 2.5rem 0 0;
}
.rd-support02 .rd-support02_introduction .rd-support02_introduction_in .rd-support02_introduction_box .item {
  width: calc(50% - 2.5rem);
}
.rd-support02 .rd-support02_introduction .rd-support02_introduction_in .rd-support02_introduction_box .item:nth-of-type(odd) {
  margin-right: 5rem;
}
@media screen and (min-width: 768px) and (max-width: 1184px) {
  .rd-support02 .rd-support02_introduction .rd-support02_introduction_in .rd-support02_introduction_box .item {
    width: calc(50% - 1.25rem);
  }
  .rd-support02 .rd-support02_introduction .rd-support02_introduction_in .rd-support02_introduction_box .item:nth-of-type(odd) {
    margin-right: 2.5rem;
  }
}
.rd-support02 .rd-support02_introduction .rd-support02_introduction_in .rd-support02_introduction_box .item figure img {
  width: 100%;
  height: 100%;
}
.rd-support02 .rd-support02_introduction .rd-support02_introduction_in .rd-support02_introduction_box .item .txt {
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: -0.1em;
  line-height: 1.6;
  margin: 1.25rem 0 0;
}

/*///////////////////////////////////////////////////
//
//            ▼ 実験設備の維持管理・工事請負02 ▼
//
///////////////////////////////////////////////////*/
.experimental-equipment02.rd-support02 .headword p {
  width: 100%;
}
.experimental-equipment02.rd-support02 .rd-support02_content {
  padding-bottom: 10rem;
}

/*///////////////////////////////////////////////////
//
//            ▼ 研究用特殊機器などの設計・製作02 ▼
//
///////////////////////////////////////////////////*/
.research-equipment02.rd-support02 .headword p {
  width: 100%;
}
.research-equipment02.rd-support02 .rd-support02_content {
  padding-bottom: 14.375rem;
}

/*///////////////////////////////////////////////////
//
//            ▼ 強み02 ▼
//
///////////////////////////////////////////////////*/
.feature02 {
  padding: 6.6875rem 0 17.25rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .feature02 {
    padding: 6.6875rem 0 13.25rem;
  }
}
.feature02 .ttl span {
  display: block;
  font-family: "Shippori Mincho B1", serif;
  font-size: 1.955625rem;
  letter-spacing: 0.05em;
  color: #0066ad;
  text-align: center;
}
.feature02 .ttl h2 {
  margin: 2.2rem 0 0;
  font-size: 2.52rem;
  letter-spacing: 0.05em;
  color: #000;
  text-align: center;
  font-weight: 500;
}
.feature02 .box_outer {
  margin: 8.3125rem 0 0;
}
.feature02 .box_outer .box {
  position: relative;
}
.feature02 .box_outer .box .box_in {
  margin: 0 auto;
  width: 90%;
  max-width: 1131px;
}
.feature02 .box_outer .box .box_in .img {
  position: absolute;
}
.feature02 .box_outer .box .box_in .inner {
  position: relative;
  z-index: 1;
}
.feature02 .box_outer .box .box_in .inner .sub_ttl {
  position: relative;
}
.feature02 .box_outer .box .box_in .inner .sub_ttl .num {
  position: absolute;
  width: 11.470625rem;
  height: 7.515625rem;
}
.feature02 .box_outer .box .box_in .inner .sub_ttl h3 {
  position: relative;
  z-index: 1;
  font-size: 1.75rem;
  letter-spacing: 0.05em;
  color: #000;
  font-weight: 500;
}
.feature02 .box_outer .box .box_in .inner p {
  margin: 2.5rem 0 0;
  font-family: "Shippori Mincho B1", serif;
  font-size: 1.125rem;
  letter-spacing: 0.05em;
  color: #333333;
}
.feature02 .box_outer .box01 {
  max-width: 1400px;
  margin: 0 auto 0;
}
.feature02 .box_outer .box01 .box_in .img {
  width: 52.5625rem;
  top: 1%;
  right: 0%;
}
.feature02 .box_outer .box01 .box_in .inner {
  z-index: 2;
  background: #fff;
  width: 33.3125rem;
  padding: 0 3.3125rem 2rem 5rem;
}
.feature02 .box_outer .box01 .box_in .inner .sub_ttl .num {
  top: -34%;
  left: -20%;
  width: 10.111875rem;
  height: 7.515625rem;
}
.feature02 .box_outer .bg_blue {
  background: #104883;
  margin: 14.75rem auto 0;
  padding: 8.4375rem 0 17.25rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .feature02 .box_outer .bg_blue {
    margin: 22.75rem auto 0;
    padding: 8.4375rem 0 13.25rem;
  }
}
.feature02 .box_outer .box02 {
  max-width: 1400px;
  margin: 0 auto;
}
.feature02 .box_outer .box02 .box_in .img {
  top: -36%;
  left: 8%;
  width: 41.4975rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .feature02 .box_outer .box02 .box_in .img {
    top: -60%;
  }
}
.feature02 .box_outer .box02 .box_in .inner {
  margin: 0 0 0 auto;
  background: #104883;
  width: 36.25rem;
  padding: 7.6875rem 0 2.125rem 8.8125rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .feature02 .box_outer .box02 .box_in .inner {
    padding: 6.6875rem 0 2.125rem 8.8125rem;
  }
}
.feature02 .box_outer .box02 .box_in .inner .sub_ttl .num {
  top: -33%;
  left: -20%;
}
.feature02 .box_outer .box02 .box_in .inner .sub_ttl h3 {
  color: #fff;
}
.feature02 .box_outer .box02 .box_in .inner p {
  color: #fff;
}
.feature02 .box_outer .box03 {
  max-width: 1400px;
  margin: 15.0625rem auto 0;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .feature02 .box_outer .box03 {
    margin: 8.0625rem auto 0;
  }
}
.feature02 .box_outer .box03 .box_in .img {
  width: 49.25rem;
  right: 0%;
  top: -108%;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .feature02 .box_outer .box03 .box_in .img {
    width: 37rem;
    top: -67%;
  }
}
.feature02 .box_outer .box03 .box_in .inner {
  z-index: 2;
  width: 43.75rem;
  padding: 0 0 0 2.8125rem;
}
.feature02 .box_outer .box03 .box_in .inner .sub_ttl .num {
  top: -34%;
  left: -7%;
  width: 11.3rem;
}
.feature02 .box_outer .box03 .box_in .inner p {
  margin-top: 0;
  padding: 3rem 7.375rem 0 0;
  background: #fff;
}

/*///////////////////////////////////////////////////
//
//            ▼ 事業紹介01 ▼
//
///////////////////////////////////////////////////*/
.lower_mv02 {
  padding: 3.1875rem 0 0;
  border: solid #bcbcbc;
  border-width: 0 0 1px;
}
.lower_mv02 .box_wrap {
  margin: 0 auto;
  max-width: 1170px;
  width: 90%;
}
.lower_mv02 .box_wrap .ttl span {
  font-family: "Shippori Mincho B1", serif;
  font-size: 1rem;
  font-weight: 600;
  color: #0066ad;
  letter-spacing: 0.05em;
  line-height: 1;
}
.lower_mv02 .box_wrap .ttl h1 {
  margin: 0.9375rem 0 0;
  padding: 0 0 2.6875rem;
  position: relative;
  font-size: 2.25rem;
  font-weight: 400;
  color: #000;
  letter-spacing: 0.05em;
  line-height: 1;
}
.lower_mv02 .box_wrap .ttl h1::before {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0%;
  width: 2.506875rem;
  height: 1px;
  background: #0066ad;
}

/*///////////////////////////////////////////////////
//
//            ▼ 事業紹介02 ▼
//
///////////////////////////////////////////////////*/
.service02,
.case-studies02 {
  margin: 0 auto;
  max-width: 1170px;
  width: 90%;
}
.service02 .box01,
.case-studies02 .box01 {
  margin: 5rem 0 0;
}
.service02 .box01 h2,
.case-studies02 .box01 h2 {
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.75;
}
.service02 .box01 .logo_box,
.case-studies02 .box01 .logo_box {
  margin: 2.5rem 0 0;
  display: flex;
  align-items: center;
  gap: 2rem;
}
.service02 .box01 .logo_box .logo01,
.case-studies02 .box01 .logo_box .logo01 {
  width: 9.875rem;
}
.service02 .box01 .logo_box .logo02,
.case-studies02 .box01 .logo_box .logo02 {
  width: 14.3125rem;
}
.service02 .box01 .logo_box .logo03,
.case-studies02 .box01 .logo_box .logo03 {
  width: 15.0625rem;
}
.service02 .box01 .logo_box .logo04,
.case-studies02 .box01 .logo_box .logo04 {
  width: 15.0625rem;
}
.service02 .box01 p,
.case-studies02 .box01 p {
  margin: 1.875rem 0 0;
  font-size: 1.125rem;
  color: #333333;
  letter-spacing: 0.05em;
  font-weight: 300;
  font-family: "Shippori Mincho B1", serif;
}
.service02 .box02,
.case-studies02 .box02 {
  padding: 7.5rem 0 14rem;
}
.service02 .box02 .inner,
.case-studies02 .box02 .inner {
  border: solid 0.96px #104883;
  display: flex;
  justify-content: space-between;
  gap: 2rem;
}
.service02 .box02 .inner:not(:first-of-type),
.case-studies02 .box02 .inner:not(:first-of-type) {
  margin: 3.5625rem 0 0;
}
.service02 .box02 .inner .txt,
.case-studies02 .box02 .inner .txt {
  padding: 3.75rem 0 2.75rem 4.3125rem;
  width: 34.875rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .service02 .box02 .inner .txt,
  .case-studies02 .box02 .inner .txt {
    padding: 4.3125rem 0 2.75rem 2.3125rem;
  }
}
.service02 .box02 .inner .txt .ttl h3,
.case-studies02 .box02 .inner .txt .ttl h3 {
  font-size: 1.9375rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-weight: 500;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .service02 .box02 .inner .txt .ttl h3,
  .case-studies02 .box02 .inner .txt .ttl h3 {
    font-size: 1.8rem;
  }
}
.service02 .box02 .inner .txt .ttl .line,
.case-studies02 .box02 .inner .txt .ttl .line {
  margin: 0.5625rem 0 0;
  font-size: 0.8125rem;
  line-height: 1;
  color: #0066ad;
}
.service02 .box02 .inner .txt p,
.case-studies02 .box02 .inner .txt p {
  margin: 1.375rem 0 0;
  font-size: 1.125rem;
  letter-spacing: 0.05em;
  color: #333333;
  font-family: "Shippori Mincho B1", serif;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .service02 .box02 .inner .txt p,
  .case-studies02 .box02 .inner .txt p {
    font-size: 1rem;
  }
}
.service02 .box02 .inner .txt .btn_wrap,
.case-studies02 .box02 .inner .txt .btn_wrap {
  margin: 2.25rem 0 0;
}
.service02 .box02 .inner .txt .btn_wrap .btn,
.case-studies02 .box02 .inner .txt .btn_wrap .btn {
  padding: 0 0 0 1.25rem;
  width: 23.88125rem;
  height: 4.173125rem;
  justify-content: start;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .service02 .box02 .inner .txt .btn_wrap .btn,
  .case-studies02 .box02 .inner .txt .btn_wrap .btn {
    width: 24.88125rem;
  }
}
.service02 .box02 .inner .txt .btn_wrap .btn span,
.case-studies02 .box02 .inner .txt .btn_wrap .btn span {
  font-size: 1rem;
  font-weight: 400;
}
.service02 .box02 .inner .txt .btn_wrap .btn::after,
.case-studies02 .box02 .inner .txt .btn_wrap .btn::after {
  content: "〉";
  position: absolute;
  z-index: 3;
  font-size: 1rem;
  color: #fff;
  top: 50%;
  right: 2%;
  transform: translate(-50%, -50%);
  transition: 0.3s;
}
.service02 .box02 .inner .txt .btn_wrap .btn:hover::after,
.case-studies02 .box02 .inner .txt .btn_wrap .btn:hover::after {
  color: #0066ad;
}
.service02 .box02 .img,
.case-studies02 .box02 .img {
  width: 31.25rem;
}

/*///////////////////////////////////////////////////
//
//            ▼ 取引事例02 ▼
//
///////////////////////////////////////////////////*/
.case-studies02 .box_outer .box01 h2 {
  line-height: 2;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .case-studies02 .box_outer .box01 h2 {
    font-size: 1.27rem;
  }
}
.case-studies02 .box_outer .box02 {
  padding-top: 5.5rem;
}
.case-studies02 .box_outer .box02 .inner .inner_in {
  display: contents;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .case-studies02 .box_outer .box02 .inner .txt .ttl h3 {
    font-size: 1.6rem;
  }
}
.case-studies02 .box_outer .box02 .inner .txt .num {
  margin: 1rem 0 0;
  font-size: 1.045rem;
  font-weight: 400;
  color: #0066ad;
  line-height: 1;
  font-family: "Shippori Mincho B1", serif;
  letter-spacing: 0.05em;
}
.case-studies02 .box_outer .box02 .inner .txt .info {
  margin: 2.5625rem 0 0;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.7142857143;
}
.case-studies02 .box_outer .box02 .inner .txt .name {
  margin: 1.5rem 0 0;
  display: flex;
  align-items: center;
  gap: 2rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .case-studies02 .box_outer .box02 .inner .txt .name {
    gap: 1.5rem;
  }
}
.case-studies02 .box_outer .box02 .inner .txt .name span {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1;
}
.case-studies02 .box_outer .box02 .inner .txt .btn_wrap {
  margin-top: 2.625rem;
}
.case-studies02 .box_outer .box02 .inner .txt .btn_wrap .btn {
  padding: 0 0 0 2.25rem;
  width: 17.75rem;
  height: 4.173125rem;
}
.case-studies02 .box_outer .box02 .inner .txt .btn_wrap .btn::after {
  right: 7%;
}
.case-studies02 .box_outer .box02 .img_wrap {
  padding: 2px;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .case-studies02 .box_outer .box02 .img_wrap .img {
    width: 28.25rem;
  }
}

/*///////////////////////////////////////////////////
//
//            ▼ 取引事例詳細02 ▼
//
///////////////////////////////////////////////////*/
.case02 .box_outer .box01 {
  margin: 0 auto;
  max-width: 1170px;
  width: 90%;
  padding: 5.625rem 0 0;
}
.case02 .box_outer .box01 h2 {
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.8333333333;
}
.case02 .box_outer .box01 .inner {
  margin: 3.4375rem 0 0;
  padding: 2.3rem 0;
  border: solid #bcbcbc;
  border-width: 1px 0;
}
.case02 .box_outer .box01 .inner .info {
  font-size: 1.125rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1.2222222222;
  font-family: "Shippori Mincho B1", serif;
}
.case02 .box_outer .box01 .inner .name {
  margin: 1.25rem 0 0;
  font-size: 1.125rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1;
  font-family: "Shippori Mincho B1", serif;
}
.case02 .box_outer .box02 {
  padding: 5.625rem 0 0;
}
.case02 .box_outer .box02 .inner_wrap {
  position: relative;
}
.case02 .box_outer .box02 .inner {
  margin: 0 auto;
  max-width: 1170px;
  width: 90%;
}
.case02 .box_outer .box02 .inner .txt h2 {
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-bottom: 1.75rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .case02 .box_outer .box02 .inner .txt h2 {
    font-size: 1.4rem;
  }
}
.case02 .box_outer .box02 .inner .txt p {
  font-size: 1.125rem;
  font-weight: 300;
  letter-spacing: 0.05em;
  line-height: 1.7777777778;
  font-family: "Shippori Mincho B1", serif;
  color: #333333;
}
.case02 .box_outer .box02 .inner .txt p + p {
  margin-top: 2.4rem;
}
.case02 .box_outer .box02 .inner .img {
  position: absolute;
}
.case02 .box_outer .box02 .inner01 .txt {
  max-width: 1073px;
}
.case02 .box_outer .box02 .inner02 {
  margin-top: 9.75rem;
  padding-top: 1.8125rem;
}
.case02 .box_outer .box02 .inner02 .txt {
  width: 34.875rem;
  margin: 0 5.3125rem 0 auto;
}
@media screen and (min-width: 1026px) and (max-width: 1279.5px) {
  .case02 .box_outer .box02 .inner02 .txt {
    margin: 0px 2.3125rem 0 auto;
  }
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .case02 .box_outer .box02 .inner02 .txt {
    margin: 0px 2.3125rem 0 auto;
    width: 27.875rem;
  }
}
.case02 .box_outer .box02 .inner02 .img01 {
  top: 0%;
  left: 0%;
  width: 39.28571vw;
  max-width: 550px;
}
.case02 .box_outer .box02 .inner03 {
  margin-top: 27rem;
}
@media screen and (min-width: 1026px) and (max-width: 1279.5px) {
  .case02 .box_outer .box02 .inner03 {
    margin-top: 22rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .case02 .box_outer .box02 .inner03 {
    margin-top: 12rem;
  }
}
.case02 .box_outer .box02 .inner03 .txt {
  width: 29rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .case02 .box_outer .box02 .inner03 .txt {
    width: 25.6875rem;
  }
}
.case02 .box_outer .box02 .inner03 .img02 {
  top: -25%;
  right: 0;
  width: 26.5rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .case02 .box_outer .box02 .inner03 .img02 {
    top: -11%;
    width: 25.5rem;
  }
}
.case02 .box_outer .box02 .inner04 {
  margin-top: 6.9375rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .case02 .box_outer .box02 .inner04 {
    margin-top: 5.9375rem;
  }
}
.case02 .box_outer .box02 .inner04 .txt {
  width: 44rem;
}
@media screen and (min-width: 1026px) and (max-width: 1279.5px) {
  .case02 .box_outer .box02 .inner04 .txt {
    width: 41.4375rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .case02 .box_outer .box02 .inner04 .txt {
    width: 32.4375rem;
  }
}
.case02 .box_outer .box02 .inner04 .img03 {
  top: 13%;
  right: 6%;
  width: 37.875rem;
}
@media screen and (min-width: 1026px) and (max-width: 1279.5px) {
  .case02 .box_outer .box02 .inner04 .img03 {
    right: 3%;
    width: 33.875rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .case02 .box_outer .box02 .inner04 .img03 {
    top: 20%;
    right: 3%;
    width: min(29.875rem, 340px);
  }
}
.case02 .box_outer .box02 .inner04 .img04 {
  top: 59%;
  right: 0;
  width: 23rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .case02 .box_outer .box02 .inner04 .img04 {
    top: 49.8%;
    width: 23rem;
  }
}
.case02 .box_outer .img05 {
  margin: 7.25rem 0 0;
  width: 86.5vw;
  max-width: 1211px;
}
.case02 .box_outer .box03 {
  margin: 6.25rem auto 8.5625rem;
  max-width: 1159px;
  width: 90%;
}
.case02 .box_outer .box03 .inner {
  border: solid 0.96px #104883;
  display: flex;
  justify-content: space-between;
  gap: 2rem;
}
.case02 .box_outer .box03 .inner .txt {
  padding: 4.375rem 0 0 4.875rem;
  width: 34.875rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .case02 .box_outer .box03 .inner .txt {
    padding: 2.375rem 0 0 3.875rem;
  }
}
.case02 .box_outer .box03 .inner .txt .ttl h2 {
  font-size: 1.9375rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-weight: 500;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .case02 .box_outer .box03 .inner .txt .ttl h2 {
    font-size: 1.6rem;
  }
}
.case02 .box_outer .box03 .inner .txt .ttl .line {
  font-size: 1.045rem;
  line-height: 1;
  color: #0066ad;
}
.case02 .box_outer .box03 .inner .txt .num {
  margin: 1.8rem 0 0;
  font-size: 1.045rem;
  font-weight: 400;
  color: #0066ad;
  line-height: 1;
  font-family: "Shippori Mincho B1", serif;
  letter-spacing: 0.05em;
}
.case02 .box_outer .box03 .inner .txt .info {
  margin: 4.5625rem 0 0;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.7142857143;
}
.case02 .box_outer .box03 .inner .txt .info + .info {
  margin-top: 0.5rem;
}
.case02 .box_outer .box03 .inner .txt .name {
  margin: 0.5rem 0 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.71;
}
.case02 .box_outer .box03 .inner .img06 {
  width: 31.1875rem;
  overflow: hidden;
}
.case02 .box_outer .box03 .inner .img06 img {
  transition: 0.3s;
}
.case02 .box_outer .box03 .inner:hover .img06 img {
  transform: scale(1.05);
  opacity: 0.8;
}
.case02.case02_02 .box_outer .box02 .inner03 {
  margin-top: 24rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .case02.case02_02 .box_outer .box02 .inner03 {
    margin-top: 13.75rem;
  }
}
.case02.case02_02 .box_outer .box02 .inner03 .txt {
  width: 30rem;
}
.case02.case02_02 .box_outer .box02 .inner03 .img02 {
  top: -20%;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .case02.case02_02 .box_outer .box02 .inner03 .img02 {
    top: -11%;
  }
}
.case02.case02_02 .box_outer .box02 .inner04 .txt {
  width: 45rem;
}
.case02.case02_02 .box_outer .box02 .inner04 .img04 {
  top: 53%;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .case02.case02_02 .box_outer .box02 .inner04 .img04 {
    top: 50%;
    width: min(23rem, 188px);
  }
}

/*///////////////////////////////////////////////////
//
//            ▼ 取引事例詳細02_02 ▼
//
///////////////////////////////////////////////////*/
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .case02_02 .box_outer .box02 .inner .txt h2 {
    font-size: 1.22rem;
  }
}
.case02_02 .box_outer .box03 .inner .txt .info {
  margin-top: 2rem;
}
.case02_02 .box_outer .box03 .inner .txt .info + .info {
  margin-top: 0.5rem;
}
.case02_02 .box_outer .box03 .inner .txt .name {
  display: flex;
  align-items: center;
  gap: 2rem;
}

/*///////////////////////////////////////////////////
//
//            ▼ 代表挨拶02 ▼
//
///////////////////////////////////////////////////*/
.message02 {
  margin: 0 0 10.5rem;
}
.message02 .headword {
  padding: 6.75rem 0 4.0625rem;
}
.message02 .headword p {
  text-align: center;
}
.message02 .message02_in {
  width: 90%;
  max-width: 1020px;
  margin: 0 auto;
}
.message02 .message02_in figure {
  width: 100%;
}
.message02 .message02_in figure img {
  width: 100%;
  height: 100%;
}
.message02 .message02_in h2 {
  font-size: 1.125rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1;
  margin: 5.875rem 3.125rem 0;
}
.message02 .message02_in .txt_box {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin: 3rem 3.125rem 0;
}
.message02 .message02_in .txt_box p {
  font-size: 0.875rem;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 300;
  letter-spacing: 0.05em;
  line-height: 2.29;
  color: #333;
}
.message02 .message02_in .txt_box p span {
  display: block;
  margin-top: 2.29em;
}
.message02 .message02_in .txt_box p:first-of-type {
  width: 44.131%;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .message02 .message02_in .txt_box p:first-of-type {
    width: 47.5%;
  }
}
.message02 .message02_in .txt_box p:last-of-type {
  width: 45.218%;
}

/*///////////////////////////////////////////////////
//
//            ▼ 西川さんコード記入箇所 ▼
//
///////////////////////////////////////////////////*/
/*///////////////////////////////////////////////////
//
//            ▼ 企業情報02 ▼
//
///////////////////////////////////////////////////*/
.corporate02 {
  padding: 5.875rem 0 7rem;
}
.corporate02 .corporate02_in .copy h2 {
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1.8333333333;
  margin-bottom: 3rem;
}
.corporate02 .corporate02_in .copy p {
  font-size: 1rem;
  font-family: "Shippori Mincho B1", serif;
  letter-spacing: 0.05em;
  color: #333333;
}
.corporate02 .corporate02_in .menu_box {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  -moz-column-gap: 1.625rem;
       column-gap: 1.625rem;
  margin-top: 6.375rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .corporate02 .corporate02_in .menu_box {
    -moz-column-gap: 1rem;
         column-gap: 1rem;
  }
}
.corporate02 .corporate02_in .menu_box li {
  border: solid 1px #104883;
}
.corporate02 .corporate02_in .menu_box li a {
  height: 100%;
  transition: 0.3s;
}
.corporate02 .corporate02_in .menu_box li a:hover {
  opacity: 0.7;
}
.corporate02 .corporate02_in .menu_box li a .txt_wrap {
  padding: 1.625rem 2.125rem 2.875rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .corporate02 .corporate02_in .menu_box li a .txt_wrap {
    padding: 1.625rem 1.375rem 3.125rem;
  }
}
.corporate02 .corporate02_in .menu_box li a .txt_wrap h3 {
  position: relative;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.05em;
  padding-bottom: 1.25rem;
  margin-bottom: 1.875rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .corporate02 .corporate02_in .menu_box li a .txt_wrap h3 {
    font-size: 1.375rem;
  }
}
.corporate02 .corporate02_in .menu_box li a .txt_wrap h3::after {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  width: 0.8125rem;
  height: 1px;
  background: #0066ad;
}
.corporate02 .corporate02_in .menu_box li a .txt_wrap h3 span {
  position: relative;
  display: block;
}
.corporate02 .corporate02_in .menu_box li a .txt_wrap h3 span::before, .corporate02 .corporate02_in .menu_box li a .txt_wrap h3 span::after {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 50%;
  right: 0;
  transform: translateY(-50%) translateY(0.0625rem);
  width: 1.75rem;
  height: 1.75rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .corporate02 .corporate02_in .menu_box li a .txt_wrap h3 span::before, .corporate02 .corporate02_in .menu_box li a .txt_wrap h3 span::after {
    width: 1.625rem;
    height: 1.625rem;
  }
}
.corporate02 .corporate02_in .menu_box li a .txt_wrap h3 span::before {
  content: "";
  background: #0066ad;
}
.corporate02 .corporate02_in .menu_box li a .txt_wrap h3 span::after {
  content: "〉";
  transform: translateY(-50%) translateY(0.125rem) translateX(0.25rem);
  color: #fff;
  font-size: 0.875rem;
  line-height: 1;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .corporate02 .corporate02_in .menu_box li a .txt_wrap h3 span::after {
    font-size: 0.8125rem;
  }
}
.corporate02 .corporate02_in .menu_box li a .txt_wrap p {
  font-size: 0.875rem;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 400;
  line-height: 2.2857142857;
  letter-spacing: 0.05em;
  color: #333333;
}

/*///////////////////////////////////////////////////
//
//            ▼ 会社概要02 ▼
//
///////////////////////////////////////////////////*/
.outline h2 {
  position: relative;
  font-size: 3rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-align: center;
  padding-bottom: 1rem;
  margin-bottom: 2.25rem;
}
.outline h2::after {
  position: absolute;
  content: "";
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 2.5rem;
  height: 1px;
  background: #104883;
}
.outline h2.white {
  color: #fff;
}
.outline h2.white::after {
  background: #fff;
}
.outline h2.small_ttl {
  font-size: 1.9375rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-align: left;
}
.outline h2.small_ttl::after {
  left: 0;
  transform: none;
  width: 0.8125rem;
  background: #0066ad;
}

.outline02 {
  padding: 8rem 0 9.125rem;
}
.outline02 .outline02_in ol li {
  font-size: 1.5rem;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-align: center;
}
.outline02 .outline02_in ol li + li {
  margin-top: 1.25rem;
}
.outline02 .outline02_in .logo {
  margin: 6.75rem auto 0;
  max-width: 20.625rem;
  width: 100%;
}

/*///////////////////////////////////////////////////
//
//            ▼ 会社概要03 ▼
//
///////////////////////////////////////////////////*/
.outline03 {
  background: url(../images/outline/outline03_bg.jpg) center center/cover no-repeat;
  padding: 6.75rem 0 8rem;
}
.outline03::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(35, 78, 163, 0.69);
}
.outline03 .outline03_in {
  position: relative;
  z-index: 2;
}
.outline03 .outline03_in ol {
  background: rgba(255, 255, 255, 0.81);
  padding: 6.625rem 4.875rem 4rem 6.25rem;
  margin-top: 3rem;
}
.outline03 .outline03_in ol li {
  font-size: 1.5rem;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 600;
  letter-spacing: 0.05em;
  list-style-type: decimal;
}
.outline03 .outline03_in ol li + li {
  margin-top: 4rem;
}

/*///////////////////////////////////////////////////
//
//            ▼ 会社概要04 ▼
//
///////////////////////////////////////////////////*/
.outline04 {
  padding: 7.5rem 0 7.25rem;
}
.outline04 .outline04_in .box {
  display: flex;
}
.outline04 .outline04_in .box .left_item {
  width: clamp(170px, 25.1428571429vw, 352px);
}
.outline04 .outline04_in .box .left_item .link_txt {
  font-size: 0.875rem;
  line-height: 1.2;
}
.outline04 .outline04_in .box .left_item .link_txt span {
  position: relative;
  display: inline-block;
}
.outline04 .outline04_in .box .left_item .link_txt span::before, .outline04 .outline04_in .box .left_item .link_txt span::after {
  position: absolute;
}
.outline04 .outline04_in .box .left_item .link_txt span::before {
  content: "";
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  background: #000;
  transition: 0.3s;
}
.outline04 .outline04_in .box .left_item .link_txt span::after {
  content: "＞";
  top: 50%;
  left: calc(100% + 1em);
  transform: translateY(-50%);
}
.outline04 .outline04_in .box .left_item .link_txt:hover span::before {
  width: 100%;
}
.outline04 .outline04_in .box .about_tb {
  width: calc(100% - clamp(170px, 25.1428571429vw, 352px));
}
.outline04 .outline04_in .box .about_tb tr th,
.outline04 .outline04_in .box .about_tb tr td {
  font-size: 1rem;
  font-weight: 400;
  border-bottom: solid 1px #707070;
  padding: 1.5rem 0;
}
.outline04 .outline04_in .box .about_tb tr th {
  width: clamp(130px, 16.1428571429vw, 226px);
  text-align: left;
  vertical-align: top;
}
.outline04 .outline04_in .box .about_tb tr th.ls_1 {
  letter-spacing: 1em;
}
.outline04 .outline04_in .box .about_tb tr td {
  width: calc(100% - clamp(130px, 16.1428571429vw, 226px));
}
.outline04 .outline04_in .box .about_tb tr td .address_wrap {
  display: flex;
  -moz-column-gap: 1em;
       column-gap: 1em;
}
.outline04 .outline04_in .box .about_tb tr td .address_wrap .zip {
  white-space: nowrap;
}
.outline04 .outline04_in .box .about_tb tr td a {
  position: relative;
  display: inline-block;
  transition: 0.3s;
}
.outline04 .outline04_in .box .about_tb tr td a::before {
  position: absolute;
  content: "";
  bottom: 2px;
  left: 0;
  width: 0;
  height: 1px;
  background: #000;
  transition: 0.3s;
}
.outline04 .outline04_in .box .about_tb tr td a:hover::before {
  width: 100%;
}

/*///////////////////////////////////////////////////
//
//            ▼ 会社概要05 ▼
//
///////////////////////////////////////////////////*/
.outline05 {
  border-top: solid 1px #000;
  padding: 6.3125rem 0 7.75rem;
}
.outline05 .outline05_in .box {
  display: flex;
}
.outline05 .outline05_in .box .left_item {
  width: clamp(170px, 25.1428571429vw, 352px);
}
.outline05 .outline05_in .box .outline_list {
  width: calc(100% - clamp(170px, 25.1428571429vw, 352px));
  border: solid 1px #707070;
  padding: 3.5rem 4.375rem 4.75rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.5px) {
  .outline05 .outline05_in .box .outline_list {
    padding: 3.5rem 3rem 4.75rem;
  }
}
.outline05 .outline05_in .box .outline_list .item {
  display: flex;
  align-items: flex-start;
  -moz-column-gap: 0.25em;
       column-gap: 0.25em;
  font-size: 1rem;
}
.outline05 .outline05_in .box .outline_list .item + .item {
  margin-top: 1.625rem;
}
.outline05 .outline05_in .box .outline_list .item dt {
  white-space: nowrap;
}

/*///////////////////////////////////////////////////
//
//            ▼ 事務所一覧02 ▼
//
///////////////////////////////////////////////////*/
.access02 {
  padding: 6.75rem 0 4.75rem;
}
.access02 .copy {
  margin-bottom: 5rem;
}
.access02 .copy p {
  font-size: 1.5rem;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 600;
  letter-spacing: 0.05em;
}
.access02 .access02_in {
  border-top: solid 1px #000;
  padding: 5.625rem 0 7.625rem;
}
.access02 .access02_in.first {
  border-top: none;
}
.access02 .access02_in .box {
  display: flex;
}
.access02 .access02_in .box .left_item {
  width: clamp(276px, 26.1428571429vw, 366px);
}
.access02 .access02_in .box .left_item h2 {
  position: relative;
  font-size: 1.9375rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1;
  padding-bottom: 2rem;
}
.access02 .access02_in .box .left_item h2::after {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  width: 0.8125rem;
  height: 1px;
  background: #0066ad;
}
.access02 .access02_in .box .right_item {
  width: calc(100% - clamp(276px, 26.1428571429vw, 366px));
}
.access02 .access02_in .box .right_item .img_wrap {
  display: grid;
  gap: 0.4375rem 0.25rem;
  margin-bottom: 0.5rem;
}
.access02 .access02_in .box .right_item .img_wrap .img01 {
  grid-column: 1/3;
  grid-row: 1/2;
}
.access02 .access02_in .box .right_item .img_wrap .img02 {
  grid-column: 1/2;
  grid-row: 2/3;
}
.access02 .access02_in .box .right_item .img_wrap .img03 {
  grid-column: 2/3;
  grid-row: 2/3;
}
.access02 .access02_in .box .right_item .access_list li {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 2em;
       column-gap: 2em;
  border-bottom: solid 1px #707070;
  padding: 1.875rem 0.5rem;
  font-size: 1rem;
}
.access02 .access02_in .box .right_item .access_list li:first-of-type {
  border-top: solid 1px #707070;
}
.access02 .access02_in .box .right_item .access_list li .address_wrap .zip {
  display: inline-block;
  margin-right: 1em;
}
.access02 .access02_in .box .right_item .access_list li .btn_wrap .btn {
  overflow: unset;
  width: unset;
  height: unset;
  background: unset;
  text-align: left;
  display: block;
}
.access02 .access02_in .box .right_item .access_list li .btn_wrap .btn span {
  display: inline-block;
  font-size: 0.875rem;
  line-height: 1.2;
  color: #000;
  padding-left: 1em;
}
.access02 .access02_in .box .right_item .access_list li .btn_wrap .btn span::before, .access02 .access02_in .box .right_item .access_list li .btn_wrap .btn span::after {
  position: absolute;
}
.access02 .access02_in .box .right_item .access_list li .btn_wrap .btn span::before {
  content: "〉";
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.access02 .access02_in .box .right_item .access_list li .btn_wrap .btn span::after {
  content: "";
  bottom: 0;
  left: 1em;
  width: 0;
  height: 1px;
  background: #000;
  transition: 0.3s;
}
.access02 .access02_in .box .right_item .access_list li .btn_wrap .btn:hover span::after {
  width: calc(100% - 1em);
}
.access02 .access02_in .box .right_item .gmap {
  position: relative;
  margin-top: 1rem;
  padding-bottom: 50%;
  height: 0;
  overflow: hidden;
}
.access02 .access02_in .box .right_item .gmap iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}

/*///////////////////////////////////////////////////
//
//            ▼ 井村さんコード記入箇所 ▼
//
///////////////////////////////////////////////////*/
/*///////////////////////////////////////////////////
//
//            ▼ お知らせ02 ▼
//
///////////////////////////////////////////////////*/
.news02 .box {
  max-width: 970px;
  width: 100%;
  margin: 6.675rem auto 9.2625rem;
}
.news02 .box .box_in li {
  border-top: solid 0.68px #c5c5c5;
}
.news02 .box .box_in li a {
  display: flex;
  gap: 5.9%;
  margin: 2.1rem 0 1.775rem;
}
.news02 .box .box_in li a time {
  font-size: 0.9375rem;
  color: #104883;
}
.news02 .box .box_in li a h2 {
  font-size: 0.9375rem;
  color: #333333;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 300;
}
.news02 .box .box_in .no_article {
  text-align: center;
}
.news02 .box .pagination {
  width: 100%;
  margin: 12.3625rem 0 0;
}
.news02 .box .pagination ul {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 2.1125rem;
}
.news02 .box .pagination ul .pager {
  font-size: 1.125rem;
}
.news02 .box .pagination ul .pager a,
.news02 .box .pagination ul .pager span {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  display: inline;
  color: #707070;
  padding: 0rem 0.6rem;
  transition: 0.3s;
}
.news02 .box .pagination ul .pager a::before, .news02 .box .pagination ul .pager a::after,
.news02 .box .pagination ul .pager span::before,
.news02 .box .pagination ul .pager span::after {
  content: "";
  position: absolute;
  width: 1px;
  height: 65%;
  background: #707070;
  top: 50%;
  transform: translateY(-50%);
  transition: 0.3s;
}
.news02 .box .pagination ul .pager a::before,
.news02 .box .pagination ul .pager span::before {
  left: 0%;
}
.news02 .box .pagination ul .pager a::after,
.news02 .box .pagination ul .pager span::after {
  right: 0%;
}
.news02 .box .pagination ul .pager a:hover {
  color: #333;
}
.news02 .box .pagination ul .pager a:hover::before, .news02 .box .pagination ul .pager a:hover::after {
  background: #333;
}
.news02 .box .pagination ul .pager span {
  color: #333;
}
.news02 .box .pagination ul .pager span::before, .news02 .box .pagination ul .pager span::after {
  background: #333;
}
.news02 .box .pagination .prev,
.news02 .box .pagination .next,
.news02 .box .pagination .first,
.news02 .box .pagination .last {
  width: 4.09375rem;
  height: 4.09375rem;
  border: solid 1px #0066ad;
  color: #0066ad;
  font-size: 0.9375rem;
}
.news02 .box .pagination .prev a,
.news02 .box .pagination .next a,
.news02 .box .pagination .first a,
.news02 .box .pagination .last a {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #0066ad;
  transition: 0.3s;
  position: relative;
}
.news02 .box .pagination .prev a::before,
.news02 .box .pagination .next a::before,
.news02 .box .pagination .first a::before,
.news02 .box .pagination .last a::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 1.125rem;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 500;
  color: #fff;
  transition: 0.3s;
}
.news02 .box .pagination .prev a:hover,
.news02 .box .pagination .next a:hover,
.news02 .box .pagination .first a:hover,
.news02 .box .pagination .last a:hover {
  background: #fff;
}
.news02 .box .pagination .prev a:hover::before,
.news02 .box .pagination .next a:hover::before,
.news02 .box .pagination .first a:hover::before,
.news02 .box .pagination .last a:hover::before {
  color: #0066ad;
}
.news02 .box .pagination .prev a::before {
  content: "＜";
}
.news02 .box .pagination .next a::before {
  content: "＞";
}
.news02 .box .pagination .first a,
.news02 .box .pagination .last a {
  color: #0066ad;
  background: #fff;
}
.news02 .box .pagination .first a:hover,
.news02 .box .pagination .last a:hover {
  color: #fff;
  background: #0066ad;
}

/*///////////////////////////////////////////////////
//
//            ▼ お知らせ詳細02 ▼
//
///////////////////////////////////////////////////*/
.news_detail02 .box {
  width: 100%;
  max-width: 1023px;
  margin: 4.01875rem auto 10.2625rem;
}
.news_detail02 .box .ttl_wrap {
  margin: 0 0 2rem;
}
.news_detail02 .box .ttl_wrap .date {
  color: #104883;
}
.news_detail02 .box .ttl_wrap h2 {
  font-size: 1.125rem;
}
.news_detail02 .box .pagenation {
  margin: 5.7125rem 0 0;
}
.news_detail02 .box .pagenation ul {
  display: flex;
  justify-content: center;
  gap: 1rem;
}
.news_detail02 .box .pagenation ul li:first-of-type a {
  color: #104883;
  transition: 0.3s;
}
.news_detail02 .box .pagenation ul li:first-of-type a:hover {
  opacity: 0.7;
}
.news_detail02 .box .pagenation ul li:last-of-type a {
  color: #104883;
  transition: 0.3s;
}
.news_detail02 .box .pagenation ul li:last-of-type a:hover {
  opacity: 0.7;
}

/*///////////////////////////////////////////////////
//
//            ▼ 投稿エリア ▼
//
///////////////////////////////////////////////////*/
.post_area {
  letter-spacing: 0.25rem;
}
.post_area p {
  margin: 1.5rem 0;
  font-size: 0.9375rem;
}
.post_area h2 {
  font-size: 1.8rem;
  margin: 3rem 0 2.5rem;
}
.post_area h3 {
  font-size: 1.5rem;
  margin: 2, 5rem 0 2rem;
}
.post_area h4 {
  font-size: 1.25rem;
  margin: 2rem 0 1.5rem;
}
.post_area h5 {
  font-size: 1.1rem;
  margin: 1rem 0;
  margin: 1.5rem 0;
}
.post_area h6 {
  font-size: 1rem;
  margin: 1.5rem 0;
}
.post_area ul {
  margin: 1.5rem 0 1.5rem 2rem;
}
.post_area ul.blocks-gallery-grid {
  margin: 3rem 0 0;
}
.post_area ul li {
  list-style: disc;
}
.post_area ol {
  margin: 1.5rem 0 1.5rem 2rem;
}
.post_area ol li {
  list-style: decimal;
}
.post_area feature {
  font-weight: bold;
}
.post_area blockquote {
  background: #eee;
  padding: 2rem;
  position: relative;
}
.post_area blockquote::before, .post_area blockquote::after {
  position: absolute;
  content: "“";
  font-size: 3rem;
}
.post_area blockquote::before {
  top: 0;
  left: 0;
}
.post_area blockquote::after {
  bottom: 0;
  right: 0;
  transform: rotate(180deg);
}
.post_area blockquote cite {
  font-size: 0.8rem;
  color: #999;
}
.post_area a {
  display: inline;
  color: #aaa;
}
.post_area img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  margin: 3rem auto 2rem;
}
.post_area table {
  width: 100%;
  margin: 1.5rem 0 2rem;
}
.post_area table th,
.post_area table td {
  border: solid 1px #e2e2e2;
  padding: 0.25rem 1rem;
}

/*///////////////////////////////////////////////////
//
//            ▼ お問い合わせ ▼
//            ▼ 確認ページ ▼
//            ▼ 完了ページ ▼
//
///////////////////////////////////////////////////*/
.contact02 {
  padding: 5.625rem 0 10.45rem;
}
.contact02 .heading_box {
  max-width: 970px;
  width: 100%;
  margin: 0 auto;
}
.contact02 .heading_box .txt {
  font-size: 1rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  line-height: 1.5;
  color: #707070;
}
.contact02 .heading_box .step_box {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2.125rem;
  margin: 3.5rem 0 0;
}
.contact02 .heading_box .step_box .step_item {
  width: 100%;
  max-width: 14.5rem;
  min-width: 200px;
  font-size: 1rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  line-height: 1.5;
  text-align: center;
  color: #fff;
  background: #c1c1c1;
  padding: 1.125rem;
}
.contact02 .heading_box .step_box .step_item.current {
  background: #104883;
}
.contact02 .form_box {
  max-width: 970px;
  width: 100%;
  margin: 3.375rem auto 0;
}
.contact02 .form_box .item {
  display: flex;
  align-items: center;
  margin: 2.25rem 0 0;
}
.contact02 .form_box .item .inner:first-of-type {
  width: 17.5rem;
}
.contact02 .form_box .item .inner:first-of-type label {
  font-size: 1rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  line-height: 1;
  color: #707070;
}
.contact02 .form_box .item .inner:first-of-type label .required {
  text-align: center;
  color: #fff;
  background: #0066ad;
  padding: 0.0625rem 0.875rem 0.125rem;
  margin-left: 1.5625rem;
  font-size: 0.875rem;
  line-height: 1;
  color: #fff;
  border-radius: 0.125rem;
  margin-left: 1.75rem;
}
.contact02 .form_box .item .inner:last-of-type {
  width: calc(100% - 17.5rem);
  max-width: 32.1875rem;
  padding-left: 4.5rem;
}
.contact02 .form_box .item .inner:last-of-type input {
  color: #000;
}
.contact02 .form_box .item .inner:last-of-type input,
.contact02 .form_box .item .inner:last-of-type textarea {
  width: 100%;
  font-size: 16px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  line-height: 1.5;
  border: solid 1px #707070;
  padding: 1.125rem;
}
.contact02 .form_box .item .inner:last-of-type textarea {
  color: #707070;
  min-height: 16.5625rem;
}
.contact02 .form_box .item:first-of-type {
  margin-top: 0;
}
.contact02 .form_box .item.address .inner {
  margin: -5.125rem 0 0;
}
.contact02 .form_box .item.address .address_input {
  width: calc(100% - 17.5rem);
  padding-left: 4.5rem;
}
.contact02 .form_box .item.address .address_input .inner {
  margin-top: 0;
}
.contact02 .form_box .item.address .address_input .inner input {
  color: #000;
}
.contact02 .form_box .item.address .address_input .inner textarea {
  color: #707070;
}
.contact02 .form_box .item.address .address_input .inner:first-of-type {
  display: flex;
  align-items: center;
  gap: 1.625rem;
  width: 100%;
}
.contact02 .form_box .item.address .address_input .inner:first-of-type input {
  max-width: 7.625rem;
  font-size: 16px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  line-height: 1.5;
  border: solid 1px #707070;
  padding: 1.125rem;
}
.contact02 .form_box .item.address .address_input .inner:first-of-type a {
  width: -moz-fit-content;
  width: fit-content;
  font-size: 16px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #707070;
  transition: 0.3s;
}
.contact02 .form_box .item.address .address_input .inner:first-of-type a:hover {
  color: #000;
}
.contact02 .form_box .item.address .address_input .inner:last-of-type {
  width: 100%;
  max-width: 27.6875rem;
  padding-left: 0;
  margin-top: 1.875rem;
}
.contact02 .form_box .item.address .address_input .inner p {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.contact02 .form_box .item.address .address_input .inner button {
  background: none;
  border: none;
  color: #707070;
  font-size: 1rem;
  cursor: pointer;
}
.contact02 .form_box .item.msg {
  align-items: flex-start;
}
.contact02 .form_box .item.msg .inner label {
  margin: 1.125rem 0 0;
}
.contact02 .form_box .msg .inner p label {
  display: block;
  padding: 0.4rem 0 0;
}
.contact02 .form_box .acceptance {
  width: -moz-fit-content;
  width: fit-content;
  font-size: 1rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  text-align: center;
  color: #707070;
  margin: 1.875rem auto 0;
}
.contact02 .form_box .acceptance .inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  margin: 0 0 0 9rem;
}
.contact02 .form_box .acceptance .inner .inner_in {
  width: 1rem;
  height: 1rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}
.contact02 .form_box .acceptance .inner .inner_in p {
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.contact02 .form_box .acceptance .inner .inner_in p .wpcf7-form-control-wrap {
  cursor: pointer;
}
.contact02 .form_box .acceptance .inner .inner_in p .wpcf7-form-control-wrap input {
  cursor: pointer;
}
.contact02 .form_box .acceptance .inner .inner_in p span {
  margin: 0;
  cursor: pointer;
}
.contact02 .form_box .acceptance .inner label {
  padding-left: 0.5rem;
  cursor: pointer;
}
.contact02 .form_box .acceptance .policy {
  display: flex;
  justify-content: center;
  gap: 2rem;
  margin-top: 1rem;
  margin-left: 8rem;
}
.contact02 .form_box .acceptance .privacy_policy_link a {
  display: inline-block;
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #707070;
  position: relative;
  transition: 0.3s;
}
.contact02 .form_box .acceptance .privacy_policy_link a::before {
  content: "";
  position: absolute;
  bottom: 5px;
  left: 0;
  width: 100%;
  height: 1px;
  background: #707070;
  transition: 0.3s;
}
.contact02 .form_box .acceptance .privacy_policy_link a:hover::before {
  background: transparent;
}
.contact02 .form_box .contact_button {
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 2.75rem auto 0;
  padding: 0 0 0 8rem;
}
.contact02 .form_box .contact_button .btn {
  width: 14.5rem;
  height: 3.8125rem;
  border: none;
  background: #989898;
  cursor: pointer;
}
.contact02 .form_box .contact_button .btn::before {
  background: #104883;
}
.contact02 .form_box .contact_button .btn span {
  font-size: 1rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.contact02 .form_box .contact_button .btn:hover span {
  color: #fff;
}
.contact02 .form_box .contact_button .btn.back {
  background: #fff;
  border: solid 1px #989898;
  margin-right: 2.125rem;
}
.contact02 .form_box .contact_button .btn.back::before {
  background: #989898;
}
.contact02 .form_box .contact_button .btn.back span {
  color: #989898;
}
.contact02 .form_box .contact_button .btn.back:hover span {
  color: #fff;
}

/*///////////////////////////////////////////////////
//
//            ▼ お問い合わせ完了ページ ▼
//
///////////////////////////////////////////////////*/
.thanks02 .thanks02_box {
  max-width: 970px;
  width: 100%;
  text-align: center;
  margin: 3.375rem auto 0;
}
.thanks02 .thanks02_box h2 {
  font-size: 1.9375rem;
  font-weight: 400;
  font-family: "Shippori Mincho B1", serif;
  letter-spacing: 0.05em;
  line-height: 1;
  color: #707070;
}
.thanks02 .thanks02_box p {
  font-size: 1rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  line-height: 1.5;
  color: #707070;
  margin: 1.875rem 0 0;
}
.thanks02 .thanks02_box .contact_button {
  width: -moz-fit-content;
  width: fit-content;
  margin: 3.375rem auto 0;
}
.thanks02 .thanks02_box .contact_button .btn {
  width: 14.5rem;
  height: 3.8125rem;
  background: #104883;
  cursor: pointer;
}
.thanks02 .thanks02_box .contact_button .btn::before {
  background: #989898;
}
.thanks02 .thanks02_box .contact_button .btn span {
  font-size: 1.125rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.thanks02 .thanks02_box .contact_button .btn:hover span {
  color: #fff;
}

/*///////////////////////////////////////////////////
//
//            ▼ お問い合わせ（Contactform7） ▼
//
///////////////////////////////////////////////////*/
.wpcf7 {
  position: relative;
}
.wpcf7 span.wpcf7-not-valid-tip {
  position: absolute;
  bottom: -36px;
  left: 10px;
  font-size: 12px;
}
.wpcf7 .your_msg span.wpcf7-not-valid-tip {
  bottom: -15px;
}
.wpcf7 div.wpcf7-response-output {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  text-align: center;
  color: #f00;
  font-size: 14px;
}

.ajax-loader {
  position: absolute;
  top: 50%;
  left: 110%;
  transform: translate(-50%, -50%);
}

/*///////////////////////////////////////////////////
//
//            ▼ サイトポリシー02 ▼
//
///////////////////////////////////////////////////*/
.sitepolicy02,
.disclaimer02 {
  margin: 4.375rem 0 11.125rem;
}
.sitepolicy02 .sitepolicy02_in,
.disclaimer02 .sitepolicy02_in {
  width: 100%;
  max-width: 1026px;
  margin: 0 auto;
}
.sitepolicy02 .sitepolicy02_in .item,
.disclaimer02 .sitepolicy02_in .item {
  margin: 5.5rem 0 0;
}
.sitepolicy02 .sitepolicy02_in .item .policy_ttl,
.disclaimer02 .sitepolicy02_in .item .policy_ttl {
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1;
  color: #707070;
  border-bottom: solid 1px #707070;
  padding-bottom: 1.21875rem;
}
.sitepolicy02 .sitepolicy02_in .item .policy_ttl span,
.disclaimer02 .sitepolicy02_in .item .policy_ttl span {
  color: #104883;
}
.sitepolicy02 .sitepolicy02_in .item .txt,
.sitepolicy02 .sitepolicy02_in .item ul,
.disclaimer02 .sitepolicy02_in .item .txt,
.disclaimer02 .sitepolicy02_in .item ul {
  font-size: 1rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  line-height: 1.5;
  color: #707070;
  margin: 1.09375rem 0 0;
}
.sitepolicy02 .sitepolicy02_in .item .txt.right,
.disclaimer02 .sitepolicy02_in .item .txt.right {
  text-align: right;
}
.sitepolicy02 .sitepolicy02_in .item .indent,
.disclaimer02 .sitepolicy02_in .item .indent {
  display: block;
  padding-left: 1em;
  text-indent: -0.7em;
}
.sitepolicy02 .sitepolicy02_in .item ul li,
.disclaimer02 .sitepolicy02_in .item ul li {
  margin: 1.5rem 0 0;
}
.sitepolicy02 .sitepolicy02_in .item ul li:first-of-type,
.disclaimer02 .sitepolicy02_in .item ul li:first-of-type {
  margin-top: 0;
}
.sitepolicy02 .sitepolicy02_in .item .browser_box,
.disclaimer02 .sitepolicy02_in .item .browser_box {
  margin: 2.25rem 0 0;
}
.sitepolicy02 .sitepolicy02_in .item .browser_box table tr th:nth-of-type(1),
.disclaimer02 .sitepolicy02_in .item .browser_box table tr th:nth-of-type(1) {
  width: 10%;
}
.sitepolicy02 .sitepolicy02_in .item .browser_box table tr th:nth-of-type(2),
.disclaimer02 .sitepolicy02_in .item .browser_box table tr th:nth-of-type(2) {
  width: 20%;
}
.sitepolicy02 .sitepolicy02_in .item .browser_box table tr th:nth-of-type(3),
.disclaimer02 .sitepolicy02_in .item .browser_box table tr th:nth-of-type(3) {
  width: 70%;
}
.sitepolicy02 .sitepolicy02_in .item .browser_box table tr td:nth-of-type(1),
.disclaimer02 .sitepolicy02_in .item .browser_box table tr td:nth-of-type(1) {
  width: 10%;
}
.sitepolicy02 .sitepolicy02_in .item .browser_box table tr td:nth-of-type(2),
.disclaimer02 .sitepolicy02_in .item .browser_box table tr td:nth-of-type(2) {
  width: 20%;
}
.sitepolicy02 .sitepolicy02_in .item .browser_box table tr td:nth-of-type(3),
.disclaimer02 .sitepolicy02_in .item .browser_box table tr td:nth-of-type(3) {
  width: 70%;
}
.sitepolicy02 .sitepolicy02_in .item .browser_box table tr th,
.sitepolicy02 .sitepolicy02_in .item .browser_box table tr td,
.disclaimer02 .sitepolicy02_in .item .browser_box table tr th,
.disclaimer02 .sitepolicy02_in .item .browser_box table tr td {
  font-size: 0.9375rem;
  padding: 0.8rem;
  text-align: start;
  border: solid 1px #707070;
  color: #707070;
}
.sitepolicy02 .sitepolicy02_in .item .browser_box table tr th:first-of-type,
.sitepolicy02 .sitepolicy02_in .item .browser_box table tr td:first-of-type,
.disclaimer02 .sitepolicy02_in .item .browser_box table tr th:first-of-type,
.disclaimer02 .sitepolicy02_in .item .browser_box table tr td:first-of-type {
  font-weight: bold;
}
.sitepolicy02 .sitepolicy02_in .item:first-of-type,
.disclaimer02 .sitepolicy02_in .item:first-of-type {
  margin-top: 0;
}

/*///////////////////////////////////////////////////
//
//            ▼ プライバシーポリシー ▼
//
///////////////////////////////////////////////////*/
.privacypolicy02 {
  margin: 5rem 0 14rem;
}
.privacypolicy02 .privacypolicy02_in {
  width: 100%;
  max-width: 1026px;
  margin: 0 auto;
}
.privacypolicy02 .privacypolicy02_in .txt {
  font-size: 1rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  line-height: 1.5;
  color: #707070;
  margin: 1.09375rem 0 0;
}
.privacypolicy02 .privacypolicy02_in .txt.right {
  text-align: right;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box {
  margin: 5.5rem 0 0;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box:first-of-type {
  margin-top: 0;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box .proclamation .txt:first-of-type {
  margin: 3.46875rem 0 0;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box .proclamation .txt:nth-of-type(3) {
  margin-top: 2.5rem;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box .proclamation .txt.indent {
  text-indent: 1em;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box .policy_ttl,
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box .policy_ttl02,
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box .policy_ttl03 {
  font-weight: 400;
  line-height: 1;
  color: #707070;
  border-bottom: solid 1px #707070;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box .policy_ttl span,
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box .policy_ttl02 span,
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box .policy_ttl03 span {
  color: #104883;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box .policy_ttl {
  font-size: 1.5rem;
  padding-bottom: 1.21875rem;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box .policy_ttl02 {
  font-size: 1.9375rem;
  padding-bottom: 1.21875rem;
  color: #104883;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box .policy_ttl03 {
  font-size: 1.25rem;
  padding-bottom: 0.875rem;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item {
  margin: 3.75rem 0 0;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item table {
  margin: 1.875rem 0 0;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item table tr th,
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item table tr td {
  width: 50%;
  font-size: 1rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  line-height: 1.5;
  color: #707070;
  border-collapse: collapse;
  border: solid 1px #707070;
  padding: 1.125rem 1rem;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item table tr td {
  line-height: 1.71;
  vertical-align: baseline;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item table tr td ul li {
  padding-left: 1em;
  text-indent: -1em;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item table + .txt .indent {
  display: block;
  padding-left: 1em;
  text-indent: -1em;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item .round_number_list li {
  margin: 2.5rem 0 0;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item .round_number_list li .txt.indent {
  padding-left: 1em;
  text-indent: -1em;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item .round_number_list li:nth-of-type(2) .txt {
  margin-top: 0.625rem;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item .round_number_list li:nth-of-type(2) .txt a {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  color: #104883;
  position: relative;
  transition: 0.3s;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item .round_number_list li:nth-of-type(2) .txt a::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: #104883;
  opacity: 0;
  transition: 0.3s;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item .round_number_list li:nth-of-type(2) .txt a:hover::before {
  opacity: 1;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item .round_number_list li:nth-of-type(2) .txt:nth-of-type(3) {
  margin-top: 1.875rem;
  padding-left: 1em;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item .bracket_number_list li {
  font-size: 1rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  line-height: 1.5;
  color: #707070;
  padding-left: 1em;
  text-indent: -1em;
  margin: 2.5rem 0 0;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item .bracket_number_list li ol {
  padding-left: 1em;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item .bracket_number_list li ol li {
  margin-top: 1.875rem;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item .bracket_number_list li ol li.indent {
  padding-left: 1em;
  text-indent: -1em;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item .bracket_number_list li ol li .border {
  border-top: solid 1px #707070;
  border-bottom: solid 1px #707070;
  padding: 1.25rem 0;
  text-indent: 0;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item .bracket_number_list li ol li ul {
  margin: 1rem 0 0;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item .bracket_number_list li ol li ul li {
  padding-left: 1em;
  text-indent: -1em;
  margin-top: 0;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item .bracket_number_list li ol li .bracket_kana_list li {
  margin: 1rem 0 0;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item .bracket_number_list li ol li .bracket_kana_list li ul li {
  padding-left: 1em;
  text-indent: -1em;
  margin-top: 0;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item .bracket_number_list li .border {
  border-top: solid 1px #707070;
  border-bottom: solid 1px #707070;
  padding: 1.25rem 0;
  margin-top: 1.875rem;
  text-indent: 0;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item .bracket_number_list li ul {
  margin: 1.875rem 0 0;
}
.privacypolicy02 .privacypolicy02_in .privacypolicy02_box ol .item .bracket_number_list li ul li {
  padding-left: 1em;
  text-indent: -1em;
  margin-top: 0;
}

/*///////////////////////////////////////////////////
//
//            ▼ 免責事項 ▼
//
///////////////////////////////////////////////////*/
/*///////////////////////////////////////////////////
//
//            ▼ 環境経営方針02 ▼
//
///////////////////////////////////////////////////*/
.enviropolicy02 .box {
  margin: 5rem 0 14rem;
  padding: 1rem 0 4rem;
  box-shadow: 0 0 4px rgba(43, 43, 43, 0.24);
}
.enviropolicy02 .box figure {
  margin: 0 auto;
  width: 407px;
}
.enviropolicy02 .box figure + figure {
  margin-top: 3rem;
}

/*///////////////////////////////////////////////////
//
//            ▼ 404 ▼
//
///////////////////////////////////////////////////*/
.page404 {
  background: url(../images/404/bg.jpg) center center/cover no-repeat;
}
.page404 .catch_copy {
  height: 100vh;
  min-height: 750px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.page404 .catch_copy .ttl {
  font-size: 3rem;
  margin-bottom: 0.5rem;
}

/*///////////////////////////////////////////////////
//
//            ▼ 検索フォーム ▼
//
///////////////////////////////////////////////////*/
.search {
  width: 100%;
  border: 1px solid #ddd;
}
.search form .search_inner {
  display: flex;
  justify-content: space-between;
  height: 3rem;
  align-items: center;
}
.search form .search_inner .input {
  width: calc(100% - 3rem);
  height: 100%;
}
.search form .search_inner .input input {
  border: none;
  padding: 0 1rem;
  width: 100%;
  height: 100%;
}
.search form .search_inner .submit {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 3rem;
  height: 3rem;
  color: #000;
}
.search form .search_inner .submit span {
  font-size: 1.2rem;
}

.post_none {
  text-align: center;
}

/*///////////////////////////////////////////////////
//
//            ▼ IE対策 ▼
//
///////////////////////////////////////////////////*/
/*追加20240320*/
.member_navi {
  border-bottom: solid 7px #104883;
}
.member_navi_list {
  margin: 0 auto;
  max-width: 1170px;
  width: 90%;
  display: flex;
  gap: 0 3px;
}
.member_navi_list li {
  padding: 19px 30px;
  background: #9E9E9E;
  color: #fff;
}
.member_navi_list li.current {
  background: #104883;
}
.member_navi_list li:has(a) {
  padding: 0;
}
.member_navi_list li:has(a) a {
  padding: 19px 30px;
  color: #fff;
}
.member_navi_list li br {
  display: none;
}
.member_content .wpcf7 div.wpcf7-response-output {
  bottom: auto;
}
.member_content .wpcf7 span.wpcf7-not-valid-tip {
  bottom: -1rem;
}
.member_content .form-box {
  max-width: 970px;
  width: 100%;
  margin: 3.375rem auto 0;
}
.member_content .form-box .item {
  display: flex;
  align-items: center;
  margin: 2.25rem 0 0;
  flex-wrap: wrap;
}
.member_content .form-box .item .inner-title {
  width: 280px;
}
.member_content .form-box .item .inner-title p {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.member_content .form-box .item .inner-title p:has(label) {
  display: block;
}
.member_content .form-box .item .inner-title label {
  font-size: 1rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  line-height: 1;
  color: #707070;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.member_content .form-box .item .inner-title .required {
  text-align: center;
  color: #fff;
  background: #0066ad;
  padding: 0.3125rem 0.875rem 0.375rem;
  margin-left: 1.5625rem;
  font-size: 0.875rem;
  line-height: 1;
  color: #fff;
  border-radius: 0.125rem;
  margin-left: auto;
  margin-right: 2rem;
}
.member_content .form-box .item .inner-content {
  width: calc(100% - 280px);
}
.member_content .form-box .item .inner-content.harf-wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 0 50px;
  align-items: end;
}
.member_content .form-box .item .inner-content .inner-harf {
  width: calc((100% - 50px) / 2);
}
.member_content .form-box .item .inner-content .inner-harf2 {
  width: 150px;
}
.member_content .form-box .item .inner-content .inner-harf {
  width: 300px;
}
.member_content .form-box .item .inner-content.date-wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 0 20px;
  justify-content: space-around;
}
.member_content .form-box .item .inner-content .inner-date {
  width: 42%;
}
.member_content .form-box .item .inner-content .inner-time {
  width: 23%;
}
.member_content .form-box .item input {
  color: #000;
}
.member_content .form-box .item input,
.member_content .form-box .item textarea,
.member_content .form-box .item select {
  width: 100%;
  font-size: 16px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  line-height: 1.5;
  border: solid 1px #707070;
  padding: 1.125rem;
}
.member_content .form-box .item select {
  width: calc(100% - 1.5em);
  vertical-align: bottom;
}
.member_content .form-box .item select.member-select {
  width: 100px;
}
.member_content .form-box .item textarea {
  color: #707070;
  min-height: 16.5625rem;
}
.member_content .form-box .item:first-of-type {
  margin-top: 0;
}
.member_content .form-box .item.msg {
  align-items: flex-start;
}
.member_content .form-box .item.msg .inner label {
  margin: 1.125rem 0 0;
}
.member_content .form-box .member_box {
  border: solid 1px #000;
  padding: 1rem;
  margin-top: 2rem;
}
.member_content .form-box .item2 {
  display: flex;
  align-items: center;
  margin: 0;
  flex-wrap: wrap;
}
.member_content .form-box .item2 .inner-title {
  width: 200px;
}
.member_content .form-box .item2 .inner-title label {
  font-size: 1rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  line-height: 1;
  color: #707070;
}
.member_content .form-box .item2 .inner-title .required {
  text-align: center;
  color: #fff;
  background: #0066ad;
  padding: 0.3125rem 0.875rem 0.375rem;
  margin-left: 1.5625rem;
  font-size: 0.875rem;
  line-height: 1;
  color: #fff;
  border-radius: 0.125rem;
  margin-left: 1.75rem;
}
.member_content .form-box .item2 .inner-content {
  width: calc(100% - 200px);
}
.member_content .form-box .item2 .inner-content.harf-wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 0 50px;
}
.member_content .form-box .item2 .inner-content .inner-harf {
  width: calc((100% - 50px) / 2);
}
.member_content .form-box .msg .inner p label {
  display: block;
  padding: 0.4rem 0 0;
}
.member_content .form-box .contact_button p {
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 2.75rem auto 0;
}
.member_content .form-box .contact_button .btn {
  width: 14.5rem;
  height: 3.8125rem;
  border: none;
  background: #989898;
  cursor: pointer;
}
.member_content .form-box .contact_button .btn::before {
  background: #104883;
}
.member_content .form-box .contact_button .btn span {
  font-size: 1rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.member_content .form-box .contact_button .btn:hover span {
  color: #fff;
}
.member_content .form-box .contact_button .btn.back {
  background: #fff;
  border: solid 1px #989898;
  margin-right: 2.125rem;
}
.member_content .form-box .contact_button .btn.back::before {
  background: #989898;
}
.member_content .form-box .contact_button .btn.back span {
  color: #989898;
}
.member_content .form-box .contact_button .btn.back:hover span {
  color: #fff;
}
.member_content .member-info-content > * {
  margin: 1rem 0;
}
.member_content > * {
  margin: 2rem 0;
}
.member_content a {
  display: inline-block;
}
.member_content .wp-block-file__button {
  width: auto;
}
.member_content h1 {
  text-align: center;
  font-size: 2.5rem;
  font-weight: 500;
  font-family: "Shippori Mincho B1", serif;
  letter-spacing: 0.05em;
  line-height: 1.83;
}
.member_content .is-style-btn-link .wp-block-button__link {
  box-sizing: border-box;
  background: #fff;
  border: solid 1px #000;
  color: #000;
  border-radius: 0;
  padding: 0 3rem 0 2rem;
  height: 60px;
  width: 400px;
  font-size: 16px;
  line-height: 60px;
  text-align: left;
  background: url("../images/member/link-icon.png") no-repeat center right 1.5rem/26px auto;
}
.member_content .wp-block-file.is-style-file-pdf a {
  background: #fff;
  border: solid 1px #000;
  color: #000;
  box-sizing: border-box;
  border-radius: 0;
  padding: 0 3rem 0 60px;
  height: 60px;
  width: 400px;
  font-size: 16px;
  line-height: 60px;
  text-align: left;
  position: relative;
  background: url("../images/member/icon-download.png") no-repeat center right 1.5rem/26px auto;
  text-decoration: none;
}
.member_content .wp-block-file.is-style-file-pdf a::before {
  content: "PDF";
  position: absolute;
  left: 0.5rem;
  top: 0;
  display: inline-block;
  padding: 40px 0 0 0;
  left: 0.5rem;
  font-size: 10px;
  width: 38px;
  text-align: center;
  line-height: 1;
  background: url("../images/member/icon-pdf.svg") no-repeat top 10px center/22px auto;
}
.member_content .wp-block-file.is-style-file-excel a {
  background: #fff;
  border: solid 1px #000;
  color: #000;
  box-sizing: border-box;
  border-radius: 0;
  padding: 0 3rem 0 60px;
  height: 60px;
  width: 400px;
  font-size: 16px;
  line-height: 60px;
  text-align: left;
  position: relative;
  background: url("../images/member/icon-download.png") no-repeat center right 1.5rem/26px auto;
  text-decoration: none;
}
.member_content .wp-block-file.is-style-file-excel a::before {
  content: "エクセル";
  position: absolute;
  letter-spacing: -0.05em;
  left: 0.5rem;
  top: 0;
  display: inline-block;
  padding: 40px 0 0 0;
  left: 0.5rem;
  font-size: 10px;
  width: 38px;
  text-align: center;
  line-height: 1;
  background: url("../images/member/icon-xls.svg") no-repeat top 10px center/22px auto;
}
.member_content .wp-block-file.is-style-file-word a {
  background: #fff;
  border: solid 1px #000;
  color: #000;
  box-sizing: border-box;
  border-radius: 0;
  padding: 0 3rem 0 60px;
  height: 60px;
  width: 400px;
  font-size: 16px;
  line-height: 60px;
  text-align: left;
  position: relative;
  background: url("../images/member/icon-download.png") no-repeat center right 1.5rem/26px auto;
  text-decoration: none;
}
.member_content .wp-block-file.is-style-file-word a::before {
  content: "ワード";
  position: absolute;
  letter-spacing: -0.05em;
  left: 0.5rem;
  top: 0;
  display: inline-block;
  padding: 40px 0 0 0;
  left: 0.5rem;
  font-size: 10px;
  width: 38px;
  text-align: center;
  line-height: 1;
  background: url("../images/member/icon-word.svg") no-repeat top 10px center/22px auto;
}
.member_content .wp-block-file.is-style-file-other a {
  background: #fff;
  border: solid 1px #000;
  color: #000;
  box-sizing: border-box;
  border-radius: 0;
  padding: 0 3rem 0 60px;
  height: 60px;
  width: 400px;
  font-size: 16px;
  line-height: 60px;
  text-align: left;
  position: relative;
  background: url("../images/member/icon-download.png") no-repeat center right 1.5rem/26px auto;
  text-decoration: none;
}
.member_content .wp-block-file.is-style-file-other a::before {
  content: "ファイル";
  position: absolute;
  letter-spacing: -0.05em;
  left: 0.5rem;
  top: 0;
  display: inline-block;
  padding: 40px 0 0 0;
  left: 0.5rem;
  font-size: 10px;
  width: 38px;
  text-align: center;
  line-height: 1;
  background: url("../images/member/icon-file.svg") no-repeat top 10px center/22px auto;
}
.member_content .member-info-box {
  border: solid 1px #C1C1C1;
  padding: 2rem;
  max-width: 1100px;
  margin: 0 auto 1.5rem;
  display: grid;
  grid-template: "date title" auto "date content" auto/150px 1fr;
}
.member_content .member-info-date {
  color: #9F9090;
  font-size: 1.125rem;
  margin-top: 5px;
  text-align: left;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.member_content .member-info-title {
  font-size: 1.5rem;
  grid-area: title;
}
.member_content .member-info-content {
  grid-area: content;
}
.member_content .document-wrap {
  border: solid 1px #104883;
  padding: 10px;
}
.member_content .document-title-box {
  padding: 30px 100px 30px 50px;
  position: relative;
  cursor: pointer;
}
.member_content .document-title-box::before, .member_content .document-title-box::after {
  content: "";
  width: 50px;
  height: 5px;
  background: #104883;
  position: absolute;
  top: 50%;
  right: 25px;
}
.member_content .document-title-box::after {
  transform: rotate(90deg);
  transition: transform 0.6s cubic-bezier(0.19, 1, 0.22, 1);
}
.member_content .document-title-box.open::after {
  transform: rotate(0);
  transition: transform 0.6s cubic-bezier(0.19, 1, 0.22, 1);
}
.member_content .document-content-box {
  padding: 30px 100px 30px 50px;
  border-top: solid 1px #104883;
  display: none;
}
.member_content .document-links {
  display: flex;
  flex-wrap: wrap;
  gap: 32px 55px;
  margin-top: 2rem;
}
.member_content .document-links li {
  width: calc((100% - 55px) / 2);
}
.member_content .document-links .icon-link a {
  box-sizing: border-box;
  background: #fff;
  border: solid 1px #000;
  color: #000;
  border-radius: 0;
  padding: 0 3rem 0 2rem;
  height: 60px;
  width: 100%;
  font-size: 16px;
  line-height: 60px;
  text-align: left;
  background: url("../images/member/link-icon.png") no-repeat center right 1.5rem/26px auto;
}
.member_content .document-links .icon-pdf a {
  background: #fff;
  border: solid 1px #000;
  color: #000;
  box-sizing: border-box;
  border-radius: 0;
  padding: 0 3rem 0 60px;
  height: 60px;
  width: 100%;
  font-size: 16px;
  line-height: 60px;
  text-align: left;
  position: relative;
  background: url("../images/member/icon-download.png") no-repeat center right 1.5rem/26px auto;
  text-decoration: none;
}
.member_content .document-links .icon-pdf a::before {
  content: "PDF";
  position: absolute;
  left: 0.5rem;
  top: 0;
  display: inline-block;
  padding: 40px 0 0 0;
  left: 0.5rem;
  font-size: 10px;
  width: 38px;
  text-align: center;
  line-height: 1;
  background: url("../images/member/icon-pdf.svg") no-repeat top 10px center/24px auto;
}
.member_content .document-links .icon-excel a {
  background: #fff;
  border: solid 1px #000;
  color: #000;
  box-sizing: border-box;
  border-radius: 0;
  padding: 0 3rem 0 60px;
  height: 60px;
  width: 100%;
  font-size: 16px;
  line-height: 60px;
  text-align: left;
  position: relative;
  background: url("../images/member/icon-download.png") no-repeat center right 1.5rem/26px auto;
  text-decoration: none;
}
.member_content .document-links .icon-excel a::before {
  content: "エクセル";
  position: absolute;
  letter-spacing: -0.05em;
  left: 0.5rem;
  top: 0;
  display: inline-block;
  padding: 40px 0 0 0;
  left: 0.5rem;
  font-size: 10px;
  width: 38px;
  text-align: center;
  line-height: 1;
  background: url("../images/member/icon-xls.svg") no-repeat top 10px center/24px auto;
}
.member_content .document-links .icon-word a {
  background: #fff;
  border: solid 1px #000;
  color: #000;
  box-sizing: border-box;
  border-radius: 0;
  padding: 0 3rem 0 60px;
  height: 60px;
  width: 100%;
  font-size: 16px;
  line-height: 60px;
  text-align: left;
  position: relative;
  background: url("../images/member/icon-download.png") no-repeat center right 1.5rem/26px auto;
  text-decoration: none;
}
.member_content .document-links .icon-word a::before {
  content: "ワード";
  position: absolute;
  letter-spacing: -0.05em;
  left: 0.5rem;
  top: 0;
  display: inline-block;
  padding: 40px 0 0 0;
  left: 0.5rem;
  font-size: 10px;
  width: 38px;
  text-align: center;
  line-height: 1;
  background: url("../images/member/icon-word.svg") no-repeat top 10px center/24px auto;
}
.member_content .document-links .icon-other a {
  background: #fff;
  border: solid 1px #000;
  color: #000;
  box-sizing: border-box;
  border-radius: 0;
  padding: 0 3rem 0 60px;
  height: 60px;
  width: 100%;
  font-size: 16px;
  line-height: 60px;
  text-align: left;
  position: relative;
  background: url("../images/member/icon-download.png") no-repeat center right 1.5rem/26px auto;
  text-decoration: none;
}
.member_content .document-links .icon-other a::before {
  content: "その他";
  position: absolute;
  letter-spacing: -0.05em;
  left: 0.5rem;
  top: 0;
  display: inline-block;
  padding: 40px 0 0 0;
  left: 0.5rem;
  font-size: 10px;
  width: 38px;
  text-align: center;
  line-height: 1;
  background: url("../images/member/icon-file.svg") no-repeat top 10px center/24px auto;
}

.member03 {
  padding: 5.875rem 0 7rem;
}

.login-form {
  background: #EDEDED;
  padding: 2rem;
  max-width: 1200px;
  margin: 0 auto 60px;
}
.login-form .wp-block-heading {
  text-align: center;
  margin-bottom: 1rem;
}
.login-form .form-wrap {
  max-width: 550px;
  margin: 0 auto;
}
.login-form .form-group {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 2rem;
}
.login-form .form-group label {
  width: 120px;
}
.login-form .form-group input {
  width: 400px;
  padding: 0.75rem;
  border: solid 1px #000;
  background: #fff;
}
.login-form .form-btn {
  position: relative;
  overflow: hidden;
  width: 300px;
  height: 68px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #0066ad;
  transition: ease 0.6s;
  margin: 0 auto;
  color: #fff;
  border: none;
}
.login-form .form-btn::after {
  content: "＞";
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
}

.form-hidden {
  display: none;
}/*# sourceMappingURL=desktop.css.map */