@charset "UTF-8";
/*///////////////////////////////////////////////////
//
//            ▼ ベース設定 ▼
//
///////////////////////////////////////////////////*/
html {
  color: #222;
  font-size: calc(12px + 4 * (100vw - 768px) / 912);
  font-family: "Noto Serif JP", serif;
  line-height: 2;
}

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

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

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: 1280px;
}

.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: 751px) and (max-width: 1025px) {
  /* html {
  	font-size: 13px;
  } */
  .is_hidden_tab {
    display: none;
  }
  .is_tab {
    display: block;
  }
}
.objectCover {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
  font-family: "object-fit: cover;object-position: 50% 50%;";
}

.objectContain {
  width: 100%;
  height: 100%;
  object-fit: contain;
  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:"] {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
}

/*///////////////////////////////////////////////////
//
//            ▼ アニメーション ▼
//
///////////////////////////////////////////////////*/
@keyframes copy_en_pc {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -426.25rem 0;
  }
}
@keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.15);
  }
}
.fadein {
  transition: transform 0.6s, opacity 0.6s;
  transform: translate(0, 50px);
  opacity: 0;
}
.fadein.active {
  transform: translate(0, 0);
  opacity: 1;
}

.fadebox .one {
  transition: 0.6s;
  transform: translate(0, 50px);
  opacity: 0;
}
.fadebox .two {
  opacity: 0;
  transition: 0.6s 0.3s;
  transform: translate(0, 50px);
}
.fadebox .three {
  opacity: 0;
  transition: 0.6s 0.6s;
  transform: translate(0, 50px);
}
.fadebox .four {
  opacity: 0;
  transition: 0.6s 0.9s;
  transform: translate(0, 50px);
}
.fadebox .five {
  opacity: 0;
  transition: 0.6s 1.2s;
  transform: translate(0, 50px);
}
.fadebox .six {
  opacity: 0;
  transition: 0.6s 1.5s;
  transform: translate(0, 50px);
}
.fadebox .seven {
  opacity: 0;
  transition: 0.6s 1.8s;
  transform: translate(0, 50px);
}
.fadebox .eight {
  opacity: 0;
  transition: 0.6s 2.1s;
  transform: translate(0, 50px);
}
.fadebox.active .one,
.fadebox.active .two,
.fadebox.active .three,
.fadebox.active .four,
.fadebox.active .five,
.fadebox.active .six,
.fadebox.active .seven,
.fadebox.active .eight {
  opacity: 1;
  transform: translate(0, 0);
}

.mask {
  position: relative;
}
.mask::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background-color: #3C60AE;
  -webkit-transform: scale(0, 1);
  transform: scale(0, 1);
}
.mask.active::before {
  -webkit-animation: mask-anim 1.75s cubic-bezier(0.86, 0, 0.07, 1) forwards;
  animation: mask-anim 1.75s cubic-bezier(0.86, 0, 0.07, 1) forwards;
}
.mask.active img {
  animation: img-anim 1.75s linear forwards;
}

@keyframes mask-anim {
  0% {
    -webkit-transform: scale(0, 1);
    transform: scale(0, 1);
    -webkit-transform-origin: left top;
    transform-origin: left top;
  }
  50% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transform-origin: left top;
    transform-origin: left top;
  }
  51% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transform-origin: right top;
    transform-origin: right top;
  }
  100% {
    -webkit-transform: scale(0, 1);
    transform: scale(0, 1);
    -webkit-transform-origin: right top;
    transform-origin: right top;
  }
}
@keyframes img-anim {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  51% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
/*///////////////////////////////////////////////////
//
//            ▼ 共通 ▼
//
///////////////////////////////////////////////////*/
.en {
  font-family: "Poppins", sans-serif;
}

.btn01 {
  width: 20rem;
}
.btn01 a {
  font-weight: 700;
  padding: 1.5625rem 3.5625rem;
  position: relative;
  border: 2px solid #3C60AE;
  line-height: 1;
  transition: 0.3s ease-in;
}
.btn01 a::after {
  position: absolute;
  z-index: -1;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, #3C60AE, #779EF3);
  transform: scale(0, 1);
  transition: 0.3s ease-in;
  transform-origin: left top;
}
.btn01 a:hover {
  color: #fff;
}
.btn01 a:hover::after {
  transform: scale(1, 1);
}

.btn02 {
  width: 20rem;
}
.btn02 a {
  font-weight: 700;
  padding: 1.5625rem 3.5625rem;
  position: relative;
  border: 2px solid #FFF;
  line-height: 1;
  color: #fff;
  transition: 0.3s ease-in;
}
.btn02 a::after {
  position: absolute;
  z-index: -1;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  transform: scale(0, 1);
  transition: 0.3s ease-in;
  transform-origin: left top;
}
.btn02 a:hover {
  color: #3C60AE;
}
.btn02 a:hover::after {
  transform: scale(1, 1);
}

.section_ttl01 {
  position: relative;
}
.section_ttl01 .en {
  font-size: 10.75rem;
  font-weight: 700;
  font-style: italic;
  color: #D8DFEF;
  opacity: 0.3;
  line-height: 1;
}
.section_ttl01 .jp_group {
  position: absolute;
  bottom: 1rem;
  left: 2rem;
  line-height: 1;
  display: flex;
  align-items: baseline;
}
.section_ttl01 .jp_group h2 {
  font-size: 2.625rem;
  margin: 0 0.75rem 0 0;
}

.page_link {
  overflow: hidden;
  box-shadow: 0.25rem 0.25rem 0.625rem rgba(0, 0, 0, 0.16);
  margin: 9.375rem 0 10rem;
}
.page_link:hover figure img {
  transform: scale(1.05);
}
.page_link figure {
  position: relative;
}
.page_link figure img {
  transform: scale(1);
  transition: 0.3s;
}
.page_link .txt {
  position: absolute;
  top: 50%;
  right: 20%;
  transform: translate(0, -50%);
  color: #3C60AE;
  text-align: right;
}
@media screen and (min-width: 1026px) and (max-width: 1279.999px) {
  .page_link .txt {
    right: 15%;
  }
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .page_link .txt {
    right: 15%;
  }
}
.page_link .txt .en {
  font-size: 6.25rem;
  font-weight: 700;
  font-style: italic;
  line-height: 1;
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .page_link .txt .en {
    font-size: 4.375rem;
  }
}
.page_link .txt h2 {
  font-size: 2rem;
  line-height: 1;
  margin: 0 0 0 0.5rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .page_link .txt h2 {
    font-size: 1.5rem;
  }
}

/*///////////////////////////////////////////////////
//
//            ▼ ナビ ▼
//
///////////////////////////////////////////////////*/
header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 50000;
  background: rgba(255, 255, 255, 0);
  transition: 0.3s;
}
header.active {
  background: rgb(255, 255, 255);
}
header.active .header_inner {
  padding: 1.0625rem 0 0.9375rem;
}
header.active .header_inner .logo .logo_w {
  opacity: 0;
}
header.active .header_inner .logo .logo_bl {
  opacity: 1;
}
header.active .header_inner nav ul li a {
  color: #3C60AE;
  font-weight: 700;
}
header.active .header_inner nav .phone {
  color: #3C60AE;
  border: 1px solid #3C60AE;
  font-weight: 700;
}
header .header_inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 87.5%;
  margin: 0 auto;
  padding: 2rem 0 0;
  transition: 0.3s;
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  header .header_inner {
    width: 95%;
  }
}
header .header_inner .logo {
  line-height: 1;
  width: 15.34%;
  min-width: 12rem;
  display: flex;
  align-items: center;
}
header .header_inner .logo a {
  width: 100%;
  position: relative;
}
header .header_inner .logo a img {
  display: block;
  width: 100%;
  height: auto;
}
header .header_inner .logo a .logo_w {
  opacity: 1;
}
header .header_inner .logo a .logo_bl {
  opacity: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
header .header_inner nav {
  color: #fff;
  display: flex;
  font-size: 1rem;
}
header .header_inner nav ul {
  display: flex;
  align-items: center;
}
header .header_inner nav ul li a {
  color: #fff;
  font-size: 0.9rem;
  padding: 0 0.6875rem;
  position: relative;
  transition: 0.4s;
}
header .header_inner nav ul li a::after {
  position: absolute;
  content: "";
  bottom: 0;
  right: 0;
  left: 0;
  margin: 0 auto;
  width: 80%;
  height: 1px;
  background: #3C60AE;
  transform: scale(0);
  transition: 0.4s;
}
header .header_inner nav ul li a:hover {
  color: #3C60AE;
}
header .header_inner nav ul li a:hover::after {
  transform: scale(1);
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  header .header_inner nav ul li a {
    padding: 0 0.3125rem;
  }
}
header .header_inner nav .phone {
  border: 1px solid #fff;
  width: 12.5rem;
  margin: 0 0 0 0.6875rem;
  color: #fff;
}
@media screen and (min-width: 1026px) and (max-width: 1279.999px) {
  header .header_inner nav .phone {
    width: 11.25rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  header .header_inner nav .phone {
    width: 10rem;
  }
}
header .header_inner nav .phone .inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0.625rem 0;
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  header .header_inner nav .phone .inner {
    padding: 0.375rem 0;
  }
}
header .header_inner nav .phone .inner p {
  font-size: 0.625rem;
}
header .header_inner nav .phone .inner .num_wrap {
  display: flex;
  margin: -0.5rem 0 -0.5rem;
}
header .header_inner nav .phone .inner .num_wrap .num {
  font-size: 1rem;
  margin: 0 0 0 0.5rem;
}

/*///////////////////////////////////////////////////
//
//            ▼ フッター ▼
//
///////////////////////////////////////////////////*/
footer {
  background: #364154;
  color: #fff;
  padding: 0 0 1.25rem;
}
footer .box {
  padding: 6.875rem 0 5rem;
}
footer .box .footer_logo a {
  display: inline-block;
  margin: 0 0 2.625rem;
}
footer .box .box_in {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
footer .box .box_in .left ul li {
  margin: 0 0 0.5rem;
}
footer .box .box_in .right {
  display: flex;
  flex-wrap: wrap;
  width: 37.5%;
  min-width: 362px;
}
footer .box .box_in .right li {
  width: 30%;
  position: relative;
  padding: 0 0 0 1.125rem;
  margin: 0 0 1.25rem;
}
footer .box .box_in .right li::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  width: 0.5rem;
  height: 0.0625rem;
  background: #3C60AE;
}
footer .box .box_in .right li a {
  color: #fff;
  transition: 0.3s;
}
footer .box .box_in .right li a:hover {
  color: #3C60AE;
}
footer .copyright p {
  font-size: 0.75rem;
  text-align: center;
}

/*///////////////////////////////////////////////////
//
//            ▼ トップ01 ▼
//
///////////////////////////////////////////////////*/
.top01 .mv {
  position: relative;
  overflow: hidden;
  width: 100%;
}
.top01 .mv .swiper-slide-active .mv_img,
.top01 .mv .swiper-slide-duplicate-active .mv_img,
.top01 .mv .swiper-slide-prev .mv_img {
  animation: zoomUp 10s linear 0s 1 normal both;
}
.top01 .mv .copy_en {
  position: absolute;
  z-index: 4;
  top: 50%;
  left: 0;
  width: 100%;
  height: 10.875rem;
}
.top01 .mv .copy_en .copy_img {
  width: 430.25rem;
  height: 10.875rem;
  background: url(../images/top/mv_copy_en.png) 0 0/contain repeat-x;
  animation: copy_en_pc 80s linear infinite;
}
.top01 .mv .copy_jp {
  position: absolute;
  z-index: 4;
  bottom: 8%;
  left: 5%;
  width: 100%;
}
.top01 .mv .copy_jp h2 {
  font-size: 3.25rem;
  color: #fff;
  font-weight: 700;
}
@media screen and (min-width: 1026px) and (max-width: 1279.999px) {
  .top01 .mv .copy_jp h2 {
    font-size: 2.625rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .top01 .mv .copy_jp h2 {
    font-size: 2rem;
  }
}
.top01 .mv .haguruma {
  position: absolute;
  z-index: 4;
  top: 12%;
  right: -3%;
  width: 27%;
}

/*///////////////////////////////////////////////////
//
//            ▼ トップ02 ▼
//
///////////////////////////////////////////////////*/
.top02 {
  margin: 0 0 11.5625rem;
  padding: 11.5625rem 0 0;
  position: relative;
}
.top02 .box {
  display: flex;
  justify-content: space-between;
}
.top02 .box figure {
  width: 39.8%;
  min-width: 350px;
}
.top02 .box .box_in {
  width: 100%;
  max-width: 840px;
  margin: 0 0 0 2rem;
}
.top02 .box .box_in h3 {
  font-size: 2rem;
  color: #3C60AE;
  white-space: nowrap;
}
.top02 .box .box_in .txt {
  margin: 2.25rem 0 3.125rem;
}
.top02 .box .box_in .txt span {
  display: block;
  margin: 1.5rem 0;
}
.top02 .haguruma01 {
  position: absolute;
  z-index: -1;
  top: -2%;
  left: 0;
  width: 28.8%;
}
.top02 .haguruma02 {
  position: absolute;
  z-index: -1;
  top: -2%;
  right: 0;
  width: 22.4%;
}

/*///////////////////////////////////////////////////
//
//            ▼ トップ03 ▼
//
///////////////////////////////////////////////////*/
.top03 {
  background: url(../images/top/top03_bg01.webp) no-repeat right 18%/60%, linear-gradient(to right, #3C60AE, #779EF3);
  padding: 7.5rem 0 0;
  color: #fff;
}
.top03::after {
  position: absolute;
  content: "";
  bottom: 2%;
  left: 0;
  width: 43%;
  height: 52.75rem;
  background: url(../images/top/top03_bg02.webp) no-repeat center/contain;
}
.top03 .box01 {
  margin: 0 0 19.625rem 10rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .top03 .box01 {
    margin: 0 0 6.25rem 3rem;
  }
}
.top03 .box01 .intro {
  margin: 2rem 0 4.25rem 2rem;
}
.top03 .box01 .txt {
  margin: 0 0 0 2rem;
}
.top03 .box01 .txt h3 {
  font-size: 1.5rem;
  font-weight: 700;
}
.top03 .box01 .txt p {
  margin: 0 0 2rem;
}
.top03 .box02 {
  position: relative;
  z-index: 2;
  border-bottom: 1px solid #D8DFEF;
}
.top03 .box02::after {
  position: absolute;
  z-index: -1;
  content: "";
  bottom: -0.5%;
  left: -50%;
  width: 200%;
  height: 70%;
  background: #fff;
  border-bottom: 1px solid #D8DFEF;
}
.top03 .box02 .box_in {
  display: flex;
  justify-content: space-between;
}
.top03 .box02 .box_in .btn_link {
  position: relative;
  width: 49%;
  gap: 2%;
}
.top03 .box02 .box_in .btn_link:hover figure::before {
  opacity: 0.25;
}
.top03 .box02 .box_in .btn_link:hover figure img {
  transform: scale(1.05);
}
.top03 .box02 .box_in .btn_link figure {
  overflow: hidden;
  position: relative;
}
.top03 .box02 .box_in .btn_link figure::before {
  position: absolute;
  z-index: 2;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0;
  transition: 0.3s;
}
.top03 .box02 .box_in .btn_link figure img {
  transform: scale(1);
  transition: 0.3s;
}
.top03 .box02 .box_in .btn_link .txt_box {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 95%;
  color: #fff;
  margin: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.top03 .box02 .box_in .btn_link .txt_box h3 {
  display: inline-block;
  font-size: 2rem;
  margin: 0 0 -0.8rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .top03 .box02 .box_in .btn_link .txt_box h3 {
    font-size: 1.5rem;
  }
}
.top03 .box02 .box_in .btn_link .txt_box .en {
  font-size: 0.9rem;
  font-weight: 800;
  letter-spacing: 0.2rem;
}
.top03 .box02 .box_in .btn_link .txt_box p {
  display: inline-block;
  text-align: center;
}
.top03 .box02 .btn01 {
  margin: 3.375rem auto 7.5rem;
  position: relative;
  z-index: 2;
}

/*///////////////////////////////////////////////////
//
//            ▼ トップ04 ▼
//
///////////////////////////////////////////////////*/
.top04 {
  margin: 7.5rem 0 10rem;
}
.top04 .box {
  display: flex;
  justify-content: space-between;
  align-items: bottom;
  gap: 2%;
}
.top04 .box .box_in .item_wrap {
  margin: 4.0625rem 0 0;
}
.top04 .box .box_in .item_wrap .item {
  padding: 4.125rem 0 2.9375rem 3.25rem;
  border-bottom: solid 1px #D8DFEF;
}
.top04 .box .box_in .item_wrap .item:nth-of-type(1) {
  margin: 0 0 0 1.875rem;
  position: relative;
}
.top04 .box .box_in .item_wrap .item:nth-of-type(1)::before {
  position: absolute;
  z-index: -1;
  content: "01";
  top: 8%;
  left: 0;
  font-size: 10.5rem;
  font-family: "Poppins", sans-serif;
  font-weight: 800;
  font-style: italic;
  line-height: 1;
  color: #EBEFF7;
}
.top04 .box .box_in .item_wrap .item:nth-of-type(2) {
  margin: 0 0 0 3.75rem;
  position: relative;
}
.top04 .box .box_in .item_wrap .item:nth-of-type(2)::before {
  position: absolute;
  z-index: -1;
  content: "02";
  top: 8%;
  left: 0;
  font-size: 10.5rem;
  font-family: "Poppins", sans-serif;
  font-weight: 800;
  font-style: italic;
  line-height: 1;
  color: #EBEFF7;
}
.top04 .box .box_in .item_wrap .item:nth-of-type(3) {
  margin: 0 0 0 5.625rem;
  position: relative;
}
.top04 .box .box_in .item_wrap .item:nth-of-type(3)::before {
  position: absolute;
  z-index: -1;
  content: "03";
  top: 8%;
  left: 0;
  font-size: 10.5rem;
  font-family: "Poppins", sans-serif;
  font-weight: 800;
  font-style: italic;
  line-height: 1;
  color: #EBEFF7;
}
.top04 .box .box_in .item_wrap .item:nth-of-type(4) {
  margin: 0 0 0 7.5rem;
  position: relative;
}
.top04 .box .box_in .item_wrap .item:nth-of-type(4)::before {
  position: absolute;
  z-index: -1;
  content: "04";
  top: 8%;
  left: 0;
  font-size: 10.5rem;
  font-family: "Poppins", sans-serif;
  font-weight: 800;
  font-style: italic;
  line-height: 1;
  color: #EBEFF7;
}
.top04 .box .box_in .item_wrap .item h3 {
  font-size: 1.5rem;
  font-weight: 600;
}
.top04 .box .box_in .btn01 {
  margin: 4.6875rem 0 0 auto;
}
.top04 .box figure {
  width: 41.66%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
  font-family: "object-fit: cover;object-position: 50% 50%;";
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .top04 .box figure {
    object-fit: contain;
  }
}

/*///////////////////////////////////////////////////
//
//            ▼ トップ05 ▼
//
///////////////////////////////////////////////////*/
.top05 {
  background: url(../images/top/top05_bg01.webp);
  padding: 9.375rem 0 40.1875rem;
}
.top05 .box {
  background: #fff;
  width: 93.75%;
  margin: 0 0 0 auto;
  padding: 6.25rem 0;
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .top05 .box {
    width: 95.75%;
  }
}
.top05 .box .box_in {
  width: 86.66%;
  margin: 0 auto;
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .top05 .box .box_in {
    width: 90%;
  }
}
.top05 .box .box_in .section_ttl01 {
  text-align: right;
  margin: 0 0 3.875rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .top05 .box .box_in .section_ttl01 .en {
    font-size: 9rem;
  }
}
.top05 .box .box_in .section_ttl01 .jp_group {
  justify-content: right;
  width: 100%;
}
.top05 .box .box_in .item_wrap {
  display: flex;
  justify-content: space-between;
}
.top05 .box .box_in .item_wrap .swiper {
  width: 100%;
}
.top05 .box .box_in .item_wrap .swiper .swiper-container {
  width: 100%;
}
.top05 .box .box_in .item_wrap .swiper .swiper-container .swiper-wrapper {
  width: 100%;
}
.top05 .box .box_in .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide {
  width: 19.23%;
}
@media screen and (min-width: 768px) and (max-width: 1279.999px) {
  .top05 .box .box_in .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide {
    height: 100%;
    max-height: 315px;
  }
}
.top05 .box .box_in .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  color: #222;
  transition: 0.3s;
}
.top05 .box .box_in .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item:hover figure {
  opacity: 0.8;
}
.top05 .box .box_in .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item:hover figure img {
  transform: scale(1.05);
}
@media screen and (min-width: 768px) and (max-width: 1279.999px) {
  .top05 .box .box_in .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item {
    height: 100%;
  }
}
.top05 .box .box_in .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item figure {
  overflow: hidden;
  opacity: 1;
  transition: 0.3s;
}
.top05 .box .box_in .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item figure img {
  transform: scale(1);
  transition: 0.3s;
}
.top05 .box .box_in .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item .copy {
  margin: 0.875rem 0;
}
.top05 .box .box_in .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item .copy .is_splarge {
  display: none;
}
@media screen and (min-width: 1280px) and (max-width: 1439.999px) {
  .top05 .box .box_in .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item .copy {
    font-size: 0.9rem;
  }
}
@media screen and (min-width: 1026px) and (max-width: 1279.999px) {
  .top05 .box .box_in .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item .copy {
    font-size: 0.9rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .top05 .box .box_in .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item .copy {
    margin: 0.5rem 0;
  }
}
.top05 .box .box_in .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item .txt_wrap {
  display: flex;
  align-items: center;
}
.top05 .box .box_in .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item .txt_wrap span {
  background: #3C60AE;
  color: #fff;
  font-size: 0.9rem;
  padding: 0.3125rem 0.8125rem;
  display: inline-block;
  margin: 0 1rem 0 0;
}
.top05 .box .box_in .btn01 {
  margin: 2.625rem 0 0 auto;
  position: relative;
  z-index: 2;
}

/*///////////////////////////////////////////////////
//
//            ▼ トップ06 ▼
//
///////////////////////////////////////////////////*/
.top06 {
  margin: -31.25rem 0 0;
}
.top06 .section_ttl01 {
  margin: 0 0 3.8rem;
}
.top06 .section_ttl01 .en {
  color: #3C60AE;
  opacity: 1;
}
.top06 .section_ttl01 .jp_group {
  left: 0.5rem;
  bottom: 0.5rem;
  align-items: center;
}
.top06 .section_ttl01 .jp_group h2 {
  color: #fff;
}
.top06 .section_ttl01 .jp_group .btn02 {
  position: relative;
  z-index: 2;
}
.top06 .swiper {
  width: 100%;
}
.top06 .swiper .swiper-container {
  width: 100%;
}
.top06 .swiper .swiper-container .swiper-wrapper {
  transition-timing-function: linear;
  width: 100%;
}
.top06 .swiper .swiper-container .swiper-wrapper .swiper-slide {
  width: 28.9%;
}

/*///////////////////////////////////////////////////
//
//            ▼ 代表メッセージ02 ▼
//
///////////////////////////////////////////////////*/
.message02 {
  margin: 7.5rem 0 8.75rem;
}
.message02 .box {
  width: 93.75%;
  margin: 0 0 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.message02 .box .left {
  width: 40%;
}
@media screen and (min-width: 1440px) {
  .message02 .box .left {
    min-width: 40.1875rem;
  }
}
.message02 .box .left h2 {
  color: #3C60AE;
  font-size: 2rem;
  margin: 0 0 2.25rem;
}
.message02 .box .left h2 .block {
  display: none;
}
@media screen and (min-width: 1280px) and (max-width: 1439.999px) {
  .message02 .box .left h2 .block {
    display: block;
  }
}
@media screen and (min-width: 1026px) and (max-width: 1279.999px) {
  .message02 .box .left h2 .block {
    display: block;
  }
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .message02 .box .left h2 {
    font-size: 1.8rem;
    margin: 0 0 1.25rem;
  }
  .message02 .box .left h2 .block {
    display: block;
  }
}
.message02 .box .left .txt_wrap ul li {
  margin: 0 0 0 1rem;
  list-style: disc;
}
.message02 .box .left .txt_wrap ul li::marker {
  font-size: 0.5rem;
}
.message02 .box figure {
  width: 53.65%;
}

/*///////////////////////////////////////////////////
//
//            ▼ 代表メッセージ03 ▼
//
///////////////////////////////////////////////////*/
.message03 .box {
  width: 93.75%;
  margin: 0 auto 0 0;
  display: flex;
  justify-content: space-between;
}
.message03 figure {
  width: 41%;
}
.message03 .right {
  width: 53%;
}
.message03 .right .txt {
  margin: 0 0 3.75rem;
}
.message03 .right .txt h2 {
  color: #3C60AE;
  font-size: 2rem;
  margin: 0 0 2.25rem;
}
.message03 .right .txt h2 .block {
  display: none;
}
@media screen and (min-width: 1026px) and (max-width: 1279.999px) {
  .message03 .right .txt h2 .block {
    display: block;
  }
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .message03 .right .txt h2 {
    font-size: 1.8rem;
    margin: 0 0 1.25rem;
  }
  .message03 .right .txt h2 .block {
    display: block;
  }
}
.message03 .right .name {
  font-size: 1.375rem;
  font-weight: 700;
  text-align: right;
}

/*///////////////////////////////////////////////////
//
//            ▼ 仕事を知る02 ▼
//
///////////////////////////////////////////////////*/
.job02 {
  margin: 3.125rem 0;
}
.job02 p {
  color: #3C60AE;
  font-size: 2rem;
  font-weight: 900;
  text-align: center;
  padding: 8.75rem 0;
  background: url(../images/common/haguruma01.webp) no-repeat center/contain;
}

/*///////////////////////////////////////////////////
//
//            ▼ 仕事を知る03 ▼
//
///////////////////////////////////////////////////*/
.job03 {
  background: #EBEFF7;
  padding: 0 0 6.875rem;
  margin: 0 0 6.3125rem;
}
.job03::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 9.375rem;
  background: #fff;
}
.job03 .box .box_in {
  width: 100%;
  margin: 3.5625rem auto 0;
  position: relative;
}
@media screen and (min-width: 1440px) {
  .job03 .box .box_in {
    max-width: 1280px;
  }
}
@media screen and (min-width: 1280px) and (max-width: 1439.999px) {
  .job03 .box .box_in {
    max-width: 1280px;
  }
}
.job03 .box .box_in::before {
  position: absolute;
  z-index: 1;
  content: "";
  top: 13%;
  right: 0;
  left: 0;
  margin: 0 auto;
  width: 0.1875rem;
  height: 77%;
  background: #3C60AE;
}
.job03 .box .box_in .item {
  background: #fff;
  padding: 2.5rem 3.75rem;
  margin: 0 0 3.875rem;
  position: relative;
}
.job03 .box .box_in .item:nth-of-type(2n) .flex_wrap {
  display: flex;
  flex-direction: row-reverse;
}
.job03 .box .box_in .item:last-of-type {
  margin: 0;
}
.job03 .box .box_in .item .num {
  position: absolute;
  z-index: 2;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 9.375rem;
  height: 9.375rem;
  background: #3C60AE;
  border-radius: 50%;
  font-size: 3rem;
  color: #fff;
  font-weight: 700;
  font-style: italic;
  text-align: center;
  line-height: 9.375rem;
}
.job03 .box .box_in .item .flex_wrap {
  display: flex;
  justify-content: space-between;
}
.job03 .box .box_in .item .flex_wrap .txt {
  width: calc(50% - 120px);
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .job03 .box .box_in .item .flex_wrap .txt {
    width: calc(50% - 80px);
  }
}
.job03 .box .box_in .item .flex_wrap .txt h3 {
  font-size: 1.5rem;
  color: #3C60AE;
  border-bottom: solid 1px #D8DFEF;
  padding: 0 0 0.5rem;
  margin: 0 0 1.5rem;
}
.job03 .box .box_in .item .flex_wrap figure {
  width: calc(50% - 120px);
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .job03 .box .box_in .item .flex_wrap figure {
    width: calc(50% - 80px);
  }
}

/*///////////////////////////////////////////////////
//
//            ▼ 仕事を知る04 ▼
//
///////////////////////////////////////////////////*/
.job04 .box {
  margin: 3.75rem 0 0;
}
.job04 .box figure {
  width: 100%;
  box-shadow: 0.25rem 0.25rem 0.625rem rgba(0, 0, 0, 0.16);
}

/*///////////////////////////////////////////////////
//
//            ▼ 仕事を知る05 ▼
//
///////////////////////////////////////////////////*/
.job05 .txt {
  color: #fff;
}

/*///////////////////////////////////////////////////
//
//            ▼ 働く環境を知る02 ▼
//
///////////////////////////////////////////////////*/
.about02 {
  margin: 8.125rem 0;
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .about02 .box .section_ttl_lower .en {
    font-size: 10.625rem;
  }
}
.about02 .box .box_in {
  margin: 2.6875rem 0 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 2.5rem 3.125%;
}
.about02 .box .box_in .width01 {
  width: 31.25%;
}
.about02 .box .box_in .width02 {
  width: 65.625%;
}
.about02 .box .box_in .item {
  border: 2px solid #3C60AE;
  padding: 1.5rem 1.75rem 2rem;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.about02 .box .box_in .item:nth-of-type(1) h3, .about02 .box .box_in .item:nth-of-type(2) h3, .about02 .box .box_in .item:nth-of-type(3) h3, .about02 .box .box_in .item:nth-of-type(4) h3, .about02 .box .box_in .item:nth-of-type(5) h3, .about02 .box .box_in .item:nth-of-type(6) h3, .about02 .box .box_in .item:nth-of-type(7) h3, .about02 .box .box_in .item:nth-of-type(8) h3, .about02 .box .box_in .item:nth-of-type(9) h3 {
  position: relative;
  width: 100%;
}
.about02 .box .box_in .item:nth-of-type(1) h3 .is_large, .about02 .box .box_in .item:nth-of-type(2) h3 .is_large, .about02 .box .box_in .item:nth-of-type(3) h3 .is_large, .about02 .box .box_in .item:nth-of-type(4) h3 .is_large, .about02 .box .box_in .item:nth-of-type(5) h3 .is_large, .about02 .box .box_in .item:nth-of-type(6) h3 .is_large, .about02 .box .box_in .item:nth-of-type(7) h3 .is_large, .about02 .box .box_in .item:nth-of-type(8) h3 .is_large, .about02 .box .box_in .item:nth-of-type(9) h3 .is_large {
  display: none;
}
@media screen and (min-width: 1026px) and (max-width: 1279.999px) {
  .about02 .box .box_in .item:nth-of-type(1) h3 .is_large, .about02 .box .box_in .item:nth-of-type(2) h3 .is_large, .about02 .box .box_in .item:nth-of-type(3) h3 .is_large, .about02 .box .box_in .item:nth-of-type(4) h3 .is_large, .about02 .box .box_in .item:nth-of-type(5) h3 .is_large, .about02 .box .box_in .item:nth-of-type(6) h3 .is_large, .about02 .box .box_in .item:nth-of-type(7) h3 .is_large, .about02 .box .box_in .item:nth-of-type(8) h3 .is_large, .about02 .box .box_in .item:nth-of-type(9) h3 .is_large {
    display: block;
  }
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .about02 .box .box_in .item:nth-of-type(1) h3 .is_large, .about02 .box .box_in .item:nth-of-type(2) h3 .is_large, .about02 .box .box_in .item:nth-of-type(3) h3 .is_large, .about02 .box .box_in .item:nth-of-type(4) h3 .is_large, .about02 .box .box_in .item:nth-of-type(5) h3 .is_large, .about02 .box .box_in .item:nth-of-type(6) h3 .is_large, .about02 .box .box_in .item:nth-of-type(7) h3 .is_large, .about02 .box .box_in .item:nth-of-type(8) h3 .is_large, .about02 .box .box_in .item:nth-of-type(9) h3 .is_large {
    display: block;
  }
}
.about02 .box .box_in .item:nth-of-type(1) h3::before, .about02 .box .box_in .item:nth-of-type(2) h3::before, .about02 .box .box_in .item:nth-of-type(3) h3::before, .about02 .box .box_in .item:nth-of-type(4) h3::before, .about02 .box .box_in .item:nth-of-type(5) h3::before, .about02 .box .box_in .item:nth-of-type(6) h3::before, .about02 .box .box_in .item:nth-of-type(7) h3::before, .about02 .box .box_in .item:nth-of-type(8) h3::before, .about02 .box .box_in .item:nth-of-type(9) h3::before {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  content: "01";
  font-size: 8.75rem;
  line-height: 1;
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: italic;
  color: #EBEFF7;
}
.about02 .box .box_in .item:nth-of-type(2) h3::before {
  content: "02";
}
.about02 .box .box_in .item:nth-of-type(3) h3::before {
  content: "03";
}
.about02 .box .box_in .item:nth-of-type(4) h3::before {
  content: "04";
}
.about02 .box .box_in .item:nth-of-type(5) h3::before {
  content: "05";
}
.about02 .box .box_in .item:nth-of-type(6) h3::before {
  content: "06";
}
.about02 .box .box_in .item:nth-of-type(7) h3::before {
  content: "07";
}
.about02 .box .box_in .item:nth-of-type(8) h3::before {
  content: "08";
}
.about02 .box .box_in .item:nth-of-type(9) h3::before {
  content: "09";
}
.about02 .box .box_in .item .h3_1l,
.about02 .box .box_in .item .h3_2l {
  font-size: 1.5rem;
  text-align: center;
  line-height: 1.34;
  padding: 4.75rem 0 0;
}
.about02 .box .box_in .item .h3_1l {
  padding: 6.75rem 0 0;
}
.about02 .box .box_in .item .icon {
  margin: 1rem 0;
}
.about02 .box .box_in .item .read {
  display: none;
}

/*///////////////////////////////////////////////////
//
//            ▼ 働く環境を知る03 ▼
//
///////////////////////////////////////////////////*/
.about03 {
  background: #EBEFF7;
  padding: 5.125rem 0 8.75rem;
}
.about03 .section_ttl_lower .ttl_in .ttl_group .en {
  color: #fff;
}
.about03 .box_in {
  width: 100%;
  max-width: 1280px;
  margin: 4.6875rem auto 0;
  background: #fff;
  padding: 6.25rem 0;
}
.about03 .box_in .item_wrap {
  width: 87.5%;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}
.about03 .box_in .item_wrap::before {
  position: absolute;
  z-index: -1;
  content: "";
  top: -2.5rem;
  bottom: 0;
  left: 8.9%;
  margin: auto;
  width: 3px;
  height: 80%;
  background: #3C60AE;
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .about03 .box_in .item_wrap::before {
    top: -5rem;
  }
}
.about03 .box_in .item_wrap .item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 0 2rem;
}
.about03 .box_in .item_wrap .item .txt_box {
  width: 74%;
  display: flex;
  justify-content: space-between;
}
.about03 .box_in .item_wrap .item .txt_box .time {
  width: 25.26%;
  color: #fff;
  text-align: center;
}
.about03 .box_in .item_wrap .item .txt_box .time p {
  background: #3C60AE;
  padding: 0.75rem 0;
  border-radius: 6.25rem;
  font-size: 1.125rem;
}
.about03 .box_in .item_wrap .item .txt_box .txt_in {
  width: 69.61%;
  margin: 1.0625rem 0 0;
}
.about03 .box_in .item_wrap .item .txt_box .txt_in h3 {
  font-size: 1.375rem;
  color: #3C60AE;
  line-height: 1;
  margin: 0 0 1.25rem;
}
.about03 .box_in .item_wrap .item .txt_box .txt_in .small {
  font-size: 0.9rem;
}
.about03 .box_in .item_wrap .item figure {
  width: 25%;
}

/*///////////////////////////////////////////////////
//
//            ▼ 働く環境を知る04 ▼
//
///////////////////////////////////////////////////*/
.about04 {
  margin: 8.125rem 0 0;
}
.about04 .box_in {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 3.3125rem 0;
  margin: 3.75rem 0 0;
}
.about04 .box_in .item {
  width: 31.25%;
  box-shadow: 0.25rem 0 0.625rem rgba(0, 0, 0, 0.16);
}
.about04 .box_in .item:last-of-type {
  box-shadow: none;
}
.about04 .box_in .item p {
  font-size: 1.25rem;
  font-weight: 700;
  background: #D8DFEF;
  padding: 1.875rem;
  white-space: nowrap;
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .about04 .box_in .item p {
    padding: 1rem;
  }
}

/*///////////////////////////////////////////////////
//
//            ▼ 働く環境を知る05 ▼
//
///////////////////////////////////////////////////*/
.about05 .txt {
  color: #fff;
}

/*///////////////////////////////////////////////////
//
//            ▼ 働く人を知る02 ▼
//
///////////////////////////////////////////////////*/
.interview02 {
  margin: 8.125rem 0 3rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .interview02 .section_ttl_lower .ttl_group .en {
    font-size: 8.125rem;
  }
}
.interview02 .box_in {
  width: 76.2%;
  margin: 5.125rem auto 0;
}
.interview02 .box_in .item {
  margin: 0 0 10.5rem;
  position: relative;
}
.interview02 .box_in .item::before {
  position: absolute;
  z-index: -1;
  content: "";
  top: 0;
  bottom: 0;
  right: -12.5rem;
  margin: auto 0;
  width: 18rem;
  height: 18rem;
  background: url(../images/common/haguruma01.webp) no-repeat center/contain;
}
.interview02 .box_in .item:hover figure img {
  transform: scale(1.05);
}
.interview02 .box_in .item:nth-of-type(2n)::before {
  position: absolute;
  z-index: -1;
  content: "";
  top: 0;
  bottom: 0;
  left: -12.5rem;
  margin: auto 0;
  width: 18rem;
  height: 18rem;
  background: url(../images/common/haguruma01.webp) no-repeat center/contain;
}
.interview02 .box_in .item:nth-of-type(2n) figure {
  margin: 0 auto 0 0;
}
.interview02 .box_in .item:nth-of-type(2n) .txt_box {
  margin: 0 0 0 auto;
}
.interview02 .box_in .item:last-of-type {
  margin: 0;
}
.interview02 .box_in .item figure {
  width: 87.5%;
  margin: 0 0 0 auto;
  overflow: hidden;
}
.interview02 .box_in .item figure img {
  transform: scale(1);
  transition: 0.3s;
}
.interview02 .box_in .item .txt_box {
  position: absolute;
  z-index: 2;
  bottom: -3rem;
  left: 0;
  right: 0;
  margin: 0 auto 0 0;
  width: 41%;
  min-width: 310px;
  background: linear-gradient(to right, #3C60AE, #779EF3);
  padding: 3.125rem 0 3.8rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .interview02 .box_in .item .txt_box {
    padding: 1.875rem 0;
  }
}
.interview02 .box_in .item .txt_box .num_wrap {
  display: flex;
  align-items: center;
  justify-content: center;
}
.interview02 .box_in .item .txt_box .num_wrap .letter {
  color: #D8DFEF;
  font-size: 2.25rem;
  font-weight: 700;
  font-style: italic;
  margin: 0 -2rem 0 0;
  position: relative;
  z-index: 2;
}
.interview02 .box_in .item .txt_box .num_wrap .num {
  font-size: 8.75rem;
  font-weight: 700;
  font-style: italic;
  color: #fff;
  line-height: 1;
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .interview02 .box_in .item .txt_box .num_wrap .letter {
    font-size: 1.875rem;
  }
  .interview02 .box_in .item .txt_box .num_wrap .num {
    font-size: 6.25rem;
  }
}
.interview02 .box_in .item .txt_box .name_wrap .copy {
  font-size: 1.375rem;
  color: #fff;
  text-align: center;
}
.interview02 .box_in .item .txt_box .name_wrap .name {
  font-size: 1.75rem;
  color: #fff;
  text-align: center;
}

/*///////////////////////////////////////////////////
//
//            ▼ 働く人を知る03 ▼
//
///////////////////////////////////////////////////*/
.interview03 .txt {
  color: #fff;
}

/*///////////////////////////////////////////////////
//
//            ▼ スタッフ01〜05_03 ▼
//
///////////////////////////////////////////////////*/
.staff01_02 {
  background: #EBEFF7;
  padding: 8.25rem 0 5.125rem;
}
.staff01_02 .box {
  background: #fff;
  padding: 0 0 7.125rem;
  position: relative;
  z-index: 2;
}
.staff01_02 .box::before {
  position: absolute;
  z-index: -1;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 16.375rem;
  background: #EBEFF7;
}
.staff01_02 .box .item_l {
  width: 76.2%;
  margin: 0 auto 3rem;
}
.staff01_02 .box .item_l figure {
  width: 87.5%;
  margin: 0 0 0 auto;
}
.staff01_02 .box .item_l figure figcaption {
  text-align: right;
  font-size: 0.75rem;
  color: #3C60AE;
  font-weight: 700;
  line-height: 1;
  margin: 1rem 0 0;
}
.staff01_02 .box .item_l .txt_box {
  position: absolute;
  z-index: 2;
  bottom: -3rem;
  left: 0;
  right: 0;
  margin: 0 auto 0 0;
  width: 41%;
  min-width: 310px;
  background: linear-gradient(to right, #3C60AE, #779EF3);
  padding: 3.125rem 0 3.8rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .staff01_02 .box .item_l .txt_box {
    padding: 1.875rem 0;
  }
}
.staff01_02 .box .item_l .txt_box .num_wrap {
  display: flex;
  align-items: center;
  justify-content: center;
}
.staff01_02 .box .item_l .txt_box .num_wrap .letter {
  color: #D8DFEF;
  font-size: 2.25rem;
  font-weight: 700;
  font-style: italic;
  margin: 0 -2rem 0 0;
  position: relative;
  z-index: 2;
}
.staff01_02 .box .item_l .txt_box .num_wrap .num {
  font-size: 8.75rem;
  font-weight: 700;
  font-style: italic;
  color: #fff;
  line-height: 1;
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .staff01_02 .box .item_l .txt_box .num_wrap .letter {
    font-size: 1.875rem;
  }
  .staff01_02 .box .item_l .txt_box .num_wrap .num {
    font-size: 6.25rem;
  }
}
.staff01_02 .box .item_l .txt_box .name_wrap .copy {
  font-size: 1.375rem;
  color: #fff;
  text-align: center;
}
.staff01_02 .box .item_l .txt_box .name_wrap .name {
  font-size: 1.75rem;
  color: #fff;
  text-align: center;
}
.staff01_02 .box .box_in {
  width: 64.29%;
  margin: 5.125rem auto 0;
}
.staff01_02 .box .box_in .item_s {
  margin: 0 0 5.125rem;
}
.staff01_02 .box .box_in .item_s h3 {
  font-size: 2.375rem;
  color: #3C60AE;
  text-align: center;
  padding: 4.125rem 0 2rem;
  border-bottom: solid 3px #F3F5FA;
  background: url(../images/staff01/staff_icon.webp) no-repeat center top;
}
@media screen and (min-width: 1026px) and (max-width: 1279.999px) {
  .staff01_02 .box .box_in .item_s h3 {
    font-size: 1.875rem;
    background: url(../images/staff01/staff_icon.webp) no-repeat center top/3.125rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .staff01_02 .box .box_in .item_s h3 {
    font-size: 1.75rem;
    background: url(../images/staff01/staff_icon.webp) no-repeat center top/3rem;
  }
}
.staff01_02 .box .box_in .item_s figure {
  margin: 4.0625rem 0 3rem;
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .staff01_02 .box .box_in .item_s figure {
    margin: 2rem 0 1.25rem;
  }
}
.staff01_02 .box .box_in .comment {
  width: 88.89%;
  margin: 1.75rem auto 0;
  background: linear-gradient(to right, #3C60AE, #779EF3);
  color: #fff;
  position: relative;
}
.staff01_02 .box .box_in .comment::before, .staff01_02 .box .box_in .comment::after {
  position: absolute;
  content: "";
  width: 1.25rem;
  height: 1.25rem;
  background: url(../images/staff01/staff_icon02.webp) no-repeat center/contain;
}
.staff01_02 .box .box_in .comment::before {
  top: 0.75rem;
  left: 0.75rem;
}
.staff01_02 .box .box_in .comment::after {
  top: 0.75rem;
  right: 0.75rem;
}
.staff01_02 .box .box_in .comment .comment_in {
  position: relative;
}
.staff01_02 .box .box_in .comment .comment_in::before, .staff01_02 .box .box_in .comment .comment_in::after {
  position: absolute;
  content: "";
  width: 1.25rem;
  height: 1.25rem;
  background: url(../images/staff01/staff_icon02.webp) no-repeat center/contain;
}
.staff01_02 .box .box_in .comment .comment_in::before {
  bottom: 0.75rem;
  left: 0.75rem;
}
.staff01_02 .box .box_in .comment .comment_in::after {
  bottom: 0.75rem;
  right: 0.75rem;
}
.staff01_02 .box .box_in .comment .comment_in .txt {
  width: 76%;
  padding: 4.6875rem 0 5.9375rem;
  margin: 0 auto;
  text-align: center;
}
.staff01_02 .box .box_in .comment .comment_in .txt .ttl_group {
  margin: 0 0 2.375rem;
}
.staff01_02 .box .box_in .comment .comment_in .txt .ttl_group h4 {
  font-size: 2rem;
  line-height: 1;
}
.staff01_02 .box .box_in .comment .comment_in .txt .ttl_group .en {
  font-size: 0.9rem;
  font-weight: 800;
  letter-spacing: 0.2rem;
  line-height: 1;
  margin: 1rem 0 0;
}
.staff01_02 .box .box_in .comment .comment_in .txt p {
  font-size: 1.25rem;
  text-align: left;
}

/*///////////////////////////////////////////////////
//
//            ▼ スタッフ01〜05_03 ▼
//
///////////////////////////////////////////////////*/
.staff01_03 {
  background: #EBEFF7;
  padding: 0 0 6.25rem;
}
.staff01_03 .section_ttl_lower .ttl_group .en {
  color: #fff;
}
.staff01_03 .item_wrap {
  width: 72.2%;
  margin: 3.8125rem auto 0;
}
.staff01_03 .item_wrap .swiper {
  width: 100%;
}
.staff01_03 .item_wrap .swiper .swiper-container {
  width: 100%;
}
.staff01_03 .item_wrap .swiper .swiper-container .swiper-wrapper {
  width: 100%;
}
.staff01_03 .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide {
  width: 19.23%;
}
@media screen and (min-width: 768px) and (max-width: 1279.999px) {
  .staff01_03 .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide {
    height: 100%;
    max-height: 315px;
  }
}
.staff01_03 .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  color: #222;
  transition: 0.3s;
}
.staff01_03 .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item:hover figure {
  opacity: 0.8;
}
.staff01_03 .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item:hover figure img {
  transform: scale(1.05);
}
@media screen and (min-width: 768px) and (max-width: 1279.999px) {
  .staff01_03 .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item {
    height: 100%;
  }
}
.staff01_03 .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item figure {
  overflow: hidden;
  opacity: 1;
  transition: 0.3s;
}
.staff01_03 .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item figure img {
  transform: scale(1);
  transition: 0.3s;
}
.staff01_03 .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item .copy {
  margin: 0.875rem 0;
}
@media screen and (min-width: 1280px) and (max-width: 1439.999px) {
  .staff01_03 .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item .copy {
    font-size: 0.9rem;
  }
}
@media screen and (min-width: 1026px) and (max-width: 1279.999px) {
  .staff01_03 .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item .copy {
    font-size: 0.9rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .staff01_03 .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item .copy {
    margin: 0.5rem 0;
  }
}
.staff01_03 .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item .txt_wrap {
  display: flex;
  align-items: center;
}
.staff01_03 .item_wrap .swiper .swiper-container .swiper-wrapper .swiper-slide .item .txt_wrap span {
  background: #3C60AE;
  color: #fff;
  font-size: 0.9rem;
  padding: 0.3125rem 0.8125rem;
  display: inline-block;
  margin: 0 1rem 0 0;
}

/*///////////////////////////////////////////////////
//
//            ▼ 会社を知る02 ▼
//
///////////////////////////////////////////////////*/
.company02 {
  margin: 6.25rem 0;
}
.company02 .intro {
  padding: 2.5625rem 0;
  text-align: center;
  background: url(../images/common/haguruma01.webp) no-repeat center/contain;
}
.company02 .intro h2 {
  font-size: 1.75rem;
  color: #3C60AE;
  line-height: 1;
  padding: 0 0 1.125rem;
  position: relative;
}
.company02 .intro h2::after {
  position: absolute;
  content: "";
  bottom: 0;
  right: 0;
  left: 0;
  margin: 0 auto;
  width: 3rem;
  height: 1px;
  background: #3C60AE;
}
.company02 .intro .copy {
  margin: 0.375rem 0 1.125rem;
  font-size: 2rem;
  font-weight: 900;
  color: #3C60AE;
}

/*///////////////////////////////////////////////////
//
//            ▼ 会社を知る03 ▼
//
///////////////////////////////////////////////////*/
.company03,
.company04 {
  background: #EBEFF7;
  padding: 6.25rem 0 7.5rem;
}
.company03 .box,
.company04 .box {
  display: flex;
  justify-content: space-between;
}
.company03 .box figure,
.company04 .box figure {
  width: 30.89%;
  margin: 7.25rem 0 0;
}
.company03 .box .box_in,
.company04 .box .box_in {
  width: 64.29%;
}
.company03 .box .box_in .section_ttl_lower02 .ttl_in .ttl_group .en,
.company04 .box .box_in .section_ttl_lower02 .ttl_in .ttl_group .en {
  color: #fff;
}
@media screen and (min-width: 1280px) and (max-width: 1439.999px) {
  .company03 .box .box_in .section_ttl_lower02 .ttl_in .ttl_group .en,
.company04 .box .box_in .section_ttl_lower02 .ttl_in .ttl_group .en {
    font-size: 8.125rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1279.999px) {
  .company03 .box .box_in .section_ttl_lower02 .ttl_in .ttl_group .en,
.company04 .box .box_in .section_ttl_lower02 .ttl_in .ttl_group .en {
    font-size: 8.125rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .company03 .box .box_in .section_ttl_lower02 .ttl_in .ttl_group .en,
.company04 .box .box_in .section_ttl_lower02 .ttl_in .ttl_group .en {
    font-size: 7.1875rem;
  }
}
.company03 .box .box_in table,
.company04 .box .box_in table {
  border-collapse: separate;
  border-spacing: 0 0.625rem;
  width: 100%;
  margin: 2.25rem 0 0;
}
.company03 .box .box_in table tr,
.company04 .box .box_in table tr {
  margin: 0 0 0.625rem;
}
.company03 .box .box_in table tr th,
.company04 .box .box_in table tr th {
  width: 15%;
  min-width: 111px;
  padding: 0.75rem 2.3125rem 0.75rem 1.5rem;
  background: #fff;
  text-align: left;
  position: relative;
}
.company03 .box .box_in table tr th::after,
.company04 .box .box_in table tr th::after {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto 0;
  width: 1px;
  height: 53.57%;
  background: #D8DFEF;
}
.company03 .box .box_in table tr td,
.company04 .box .box_in table tr td {
  width: 95%;
  padding: 0.75rem 2.5rem;
  background: #fff;
}

/*///////////////////////////////////////////////////
//
//            ▼ 会社を知る04 ▼
//
///////////////////////////////////////////////////*/
.company04 {
  background: #fff;
}
.company04 .box figure {
  width: 30.95%;
  margin: 2.3125rem 0 0;
}
.company04 .box .box_in {
  width: 65.77%;
}
@media screen and (min-width: 1280px) and (max-width: 1439.999px) {
  .company04 .box .box_in .section_ttl_lower .ttl_in .ttl_group .en {
    font-size: 8.125rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1279.999px) {
  .company04 .box .box_in .section_ttl_lower .ttl_in .ttl_group .en {
    font-size: 8.125rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .company04 .box .box_in .section_ttl_lower .ttl_in .ttl_group .en {
    font-size: 7.1875rem;
  }
}
.company04 .box .box_in .table_wrap table {
  width: 96%;
  margin: 2.25rem 0 0 auto;
}
.company04 .box .box_in .table_wrap table tr {
  margin: 0 0 0.625rem;
}
.company04 .box .box_in .table_wrap table tr th {
  background: #D8DFEF;
  min-width: 147px;
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .company04 .box .box_in .table_wrap table tr th {
    min-width: 122px;
  }
}
.company04 .box .box_in .table_wrap table tr th::after {
  background: #fff;
}
.company04 .box .box_in .table_wrap table tr td {
  background: #D8DFEF;
}

/*///////////////////////////////////////////////////
//
//            ▼ 会社を知る05 ▼
//
///////////////////////////////////////////////////*/
.company05 {
  padding: 3.75rem 0 0;
}
.company05::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background: linear-gradient(to right, #3C60AE, #779EF3);
  padding: 5.375rem 0 7.875rem;
}
.company05 .section_ttl01 {
  margin: 0 0 3.5rem;
}
.company05 .section_ttl01 .jp_group h2 {
  color: #fff;
}
.company05 .section_ttl01 .jp_group .btn02 {
  position: relative;
  z-index: 2;
  margin: 1.5625rem 0 0;
}
.company05 .swiper {
  width: 100%;
}
.company05 .swiper .swiper-container {
  width: 100%;
}
.company05 .swiper .swiper-container .swiper-wrapper {
  transition-timing-function: linear;
  width: 100%;
}
.company05 .swiper .swiper-container .swiper-wrapper .swiper-slide {
  width: 28.9%;
}

/*///////////////////////////////////////////////////
//
//            ▼ 募集要項02 ▼
//
///////////////////////////////////////////////////*/
.recruit02 {
  margin: 8.125rem 0 0;
}
.recruit02 .box .box_in {
  width: 100%;
  max-width: 1280px;
  margin: 3.875rem auto 0;
}
.recruit02 .box .box_in .item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 0 9.375rem;
}
.recruit02 .box .box_in .item:nth-of-type(2n) {
  flex-direction: row-reverse;
}
.recruit02 .box .box_in .item:nth-of-type(2) .txt_wrap {
  position: relative;
}
.recruit02 .box .box_in .item:nth-of-type(2) .txt_wrap::before {
  position: absolute;
  z-index: -1;
  top: -5rem;
  right: 0;
  content: "02";
  font-size: 17.1875rem;
  line-height: 176px;
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: italic;
  color: #EBEFF7;
}
.recruit02 .box .box_in .item:nth-of-type(3) .txt_wrap {
  position: relative;
}
.recruit02 .box .box_in .item:nth-of-type(3) .txt_wrap::before {
  position: absolute;
  z-index: -1;
  top: -5rem;
  right: 0;
  content: "03";
  font-size: 17.1875rem;
  line-height: 176px;
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: italic;
  color: #EBEFF7;
}
.recruit02 .box .box_in .item:nth-of-type(4) .txt_wrap {
  position: relative;
}
.recruit02 .box .box_in .item:nth-of-type(4) .txt_wrap::before {
  position: absolute;
  z-index: -1;
  top: -5rem;
  right: 0;
  content: "04";
  font-size: 17.1875rem;
  line-height: 176px;
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: italic;
  color: #EBEFF7;
}
.recruit02 .box .box_in .item figure {
  width: 52.34%;
}
.recruit02 .box .box_in .item .txt_wrap {
  width: 40.78%;
  position: relative;
}
.recruit02 .box .box_in .item .txt_wrap::before {
  position: absolute;
  z-index: -1;
  top: -5rem;
  right: 0;
  content: "01";
  font-size: 17.1875rem;
  line-height: 176px;
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: italic;
  color: #EBEFF7;
}
.recruit02 .box .box_in .item .txt_wrap h3 {
  font-size: 2rem;
  line-height: 1;
  color: #3C60AE;
  margin: 0 0 2rem;
}
.recruit02 .box .box_in .item .txt_wrap .phone {
  display: inline-block;
  border-bottom: 1px solid #3C60AE;
  margin: 2rem 0 0;
}
.recruit02 .box .box_in .item .txt_wrap .phone .inner {
  display: flex;
  align-items: baseline;
}
.recruit02 .box .box_in .item .txt_wrap .phone .inner .num_wrap {
  display: flex;
  align-items: baseline;
}
.recruit02 .box .box_in .item .txt_wrap .phone .inner .num_wrap .icon {
  font-size: 1.25rem;
}
.recruit02 .box .box_in .item .txt_wrap .phone .inner .num_wrap .num {
  margin: 0 0.25rem 0;
}
.recruit02 .box .box_in .item .txt_wrap .phone .inner .small {
  font-size: 0.75rem;
}

/*///////////////////////////////////////////////////
//
//            ▼ 募集要項03 ▼
//
///////////////////////////////////////////////////*/
.recruit03 {
  background: #EBEFF7;
  padding: 5.125rem 0 6.25rem;
}
.recruit03 .box .section_ttl_lower .ttl_in .ttl_group .en {
  color: #fff;
  white-space: nowrap;
}
@media screen and (min-width: 1026px) and (max-width: 1279.999px) {
  .recruit03 .box .section_ttl_lower .ttl_in .ttl_group .en {
    font-size: 9.375rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .recruit03 .box .section_ttl_lower .ttl_in .ttl_group .en {
    font-size: 7.8125rem;
  }
}
.recruit03 .box table {
  border-collapse: separate;
  border-spacing: 0 0.625rem;
  width: 100%;
  max-width: 1080px;
  margin: 4rem auto 0;
}
.recruit03 .box table tr {
  margin: 0 0 0.625rem;
}
.recruit03 .box table tr th {
  width: 15%;
  padding: 0.75rem 2.3125rem 0.75rem 1.5rem;
  background: #fff;
  text-align: left;
  position: relative;
}
.recruit03 .box table tr th::after {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto 0;
  width: 1px;
  height: 30px;
  background: #D8DFEF;
}
.recruit03 .box table tr td {
  width: 95%;
  padding: 0.75rem 2.5rem;
  background: #fff;
}

/*///////////////////////////////////////////////////
//
//            ▼ 募集要項04 ▼
//
///////////////////////////////////////////////////*/
.recruit04 {
  margin: 4.0625rem 0;
  padding: 7.625rem 0 0;
  background: url(../images/common/haguruma01.webp) no-repeat center top/17%;
}
@media screen and (min-width: 1026px) and (max-width: 1279.999px) {
  .recruit04 {
    padding: 4.375rem 0 0;
  }
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .recruit04 {
    padding: 3.125rem 0 0;
  }
}
.recruit04 .txt {
  text-align: center;
}
.recruit04 .txt h2 {
  font-size: 2rem;
  color: #3C60AE;
  margin: 0 0 1.125rem;
}

/*///////////////////////////////////////////////////
//
//            ▼ 募集要項05 ▼
//
///////////////////////////////////////////////////*/
.recruit05 {
  padding: 13.875rem 0 8.5625rem;
  background: url(../images/recruit/recruit05_bg01.webp) no-repeat center/cover;
}
.recruit05::before {
  position: absolute;
  top: -2rem;
  left: 50%;
  transform: translate(-50%, 0);
  content: "ENTRY";
  font-size: 11rem;
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: italic;
  line-height: 1;
  color: #fff;
  white-space: nowrap;
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .recruit05::before {
    font-size: 9.875rem;
  }
}
.recruit05 .box {
  text-align: center;
  color: #fff;
}
.recruit05 h2 {
  font-size: 2rem;
}
.recruit05 .txt {
  margin: 2.5rem 0 3.125rem;
}
.recruit05 .tel_btn {
  width: 70%;
  max-width: 40.375rem;
  margin: 0 auto;
}
.recruit05 .tel_btn a {
  display: flex;
  align-items: baseline;
  justify-content: center;
  color: #fff;
  font-size: 2rem;
  border: 1px solid #fff;
  padding: 2rem 0;
}
.recruit05 .tel_btn a .num_wrap {
  display: flex;
}
.recruit05 .tel_btn a .num_wrap .number {
  margin: 0 0.5rem 0 1rem;
}
.recruit05 .tel_btn a .small {
  font-size: 0.9rem;
}

/*///////////////////////////////////////////////////
//
//            ▼ CTA_アクセス ▼
//
///////////////////////////////////////////////////*/
.cta_acsess .box {
  display: flex;
}
.cta_acsess .box .gmap {
  width: 50%;
}
.cta_acsess .box .gmap .gmap_style {
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  filter: grayscale(100%);
}
.cta_acsess .box .box_in {
  width: 50%;
  background: #D8DFEF;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 8.5rem 0;
}
.cta_acsess .box .box_in .acsess_ttl {
  position: relative;
}
.cta_acsess .box .box_in .acsess_ttl .en {
  color: #EBEFF7;
  font-size: 6.25rem;
  font-weight: 700;
  font-style: italic;
  line-height: 1;
}
.cta_acsess .box .box_in .acsess_ttl h2 {
  font-size: 2rem;
  color: #3C60AE;
  position: absolute;
  bottom: -1rem;
  left: 0;
  right: 0;
  margin: 0 auto;
  text-align: center;
}
.cta_acsess .box .box_in .txt_box {
  color: #3C60AE;
}
.cta_acsess .box .box_in .txt_box p {
  text-align: center;
  margin: 2.125rem 0;
  font-weight: 700;
}
.cta_acsess .box .box_in .txt_box .detail {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.cta_acsess .box .box_in .txt_box .detail span {
  width: 45%;
  text-align: center;
  font-weight: 700;
}
.cta_acsess .box .box_in .btn01 {
  margin: 3rem 0 0;
  position: relative;
  z-index: 2;
}

/*///////////////////////////////////////////////////
//
//            ▼ CTA_エントリー ▼
//
///////////////////////////////////////////////////*/
.cta_entry {
  background: linear-gradient(to right, #3C60AE, #779EF3);
  padding: 5.375rem 0 7.875rem;
}
.cta_entry .box {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: #fff;
}
.cta_entry .box .en {
  font-size: 6.25rem;
  font-weight: 700;
  font-style: italic;
  line-height: 1;
}
.cta_entry .box h2 {
  font-size: 1.375rem;
  font-weight: 700;
}
.cta_entry .box .txt {
  text-align: center;
  margin: 1rem 0 1.875rem;
}
.cta_entry .box .tel_btn {
  width: 70%;
  max-width: 40.375rem;
}
.cta_entry .box .tel_btn a {
  display: flex;
  align-items: baseline;
  justify-content: center;
  color: #fff;
  font-size: 2rem;
  border: 1px solid #fff;
  padding: 2rem 0;
}
.cta_entry .box .tel_btn a .num_wrap {
  display: flex;
}
.cta_entry .box .tel_btn a .num_wrap .number {
  margin: 0 0.5rem 0 1rem;
}
.cta_entry .box .tel_btn a .small {
  font-size: 0.9rem;
}

/*///////////////////////////////////////////////////
//
//            ▼ 下層共通 ▼
//
///////////////////////////////////////////////////*/
.lower_mv {
  position: relative;
}
.lower_mv h1 {
  color: #fff;
  font-size: 3.25rem;
  position: absolute;
  top: 50%;
  right: 16.67%;
  transform: translate(0, -50%);
}
@media screen and (min-width: 768px) and (max-width: 1025.999px) {
  .lower_mv h1 {
    font-size: 2.25rem;
    top: 55%;
    right: 13%;
  }
}

.section_ttl_lower .ttl_group {
  position: relative;
}
.section_ttl_lower .ttl_group .en {
  font-size: 11rem;
  font-weight: 700;
  font-style: italic;
  color: #EBEFF7;
  line-height: 1;
}
.section_ttl_lower .ttl_group h2 {
  font-size: 2.625rem;
  position: absolute;
  bottom: 1rem;
  left: 0;
  line-height: 1;
}

.section_ttl_lower02 {
  text-align: right;
}
.section_ttl_lower02 .ttl_in {
  display: inline-block;
}
.section_ttl_lower02 .ttl_in .ttl_group {
  position: relative;
}
.section_ttl_lower02 .ttl_in .ttl_group .en {
  font-size: 11rem;
  font-weight: 700;
  font-style: italic;
  color: #EBEFF7;
  line-height: 1;
}
.section_ttl_lower02 .ttl_in .ttl_group h2 {
  font-size: 2.625rem;
  position: absolute;
  bottom: 1rem;
  left: 0;
  line-height: 1;
}
.section_ttl_lower02 .ttl_in p {
  text-align: left;
  margin: 0.9375rem 0 0;
  line-height: 1;
}

/*///////////////////////////////////////////////////
//
//            ▼ 投稿エリア ▼
//
///////////////////////////////////////////////////*/
.post_area {
  letter-spacing: 0.25rem;
}
.post_area p {
  margin: 1.5rem 0;
}
.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 strong {
  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;
}

/*///////////////////////////////////////////////////
//
//            ▼ お問い合わせ（Contactform7） ▼
//
///////////////////////////////////////////////////*/
.wpcf7 {
  position: relative;
}
.wpcf7 span.wpcf7-not-valid-tip {
  position: absolute;
  bottom: -20px;
  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%);
}

/*///////////////////////////////////////////////////
//
//            ▼ プライバシーポリシー ▼
//
///////////////////////////////////////////////////*/
.privacypolicy01 .box {
  max-width: 800px;
  width: 100%;
  margin: 0 auto;
}
.privacypolicy01 .box h1 {
  font-size: 2rem;
  text-align: center;
  margin: 0 0 2rem;
}
.privacypolicy01 .box h2 {
  font-size: 1.5rem;
  margin: 3rem 0 1rem;
}
.privacypolicy01 .box ol {
  margin: 1rem 0 1rem 2rem;
}
.privacypolicy01 .box ol li {
  list-style: decimal;
  margin: 0.5rem 0;
}
.privacypolicy01 .box ul {
  margin: 1rem 0 1rem 2rem;
}
.privacypolicy01 .box ul li {
  list-style: disc;
}
.privacypolicy01 .box ul li ol {
  margin: 0rem 0 1.5rem 2rem;
}
.privacypolicy01 .box ul li ol li {
  list-style: decimal;
}
.privacypolicy01 .box .right {
  text-align: right;
}

/*///////////////////////////////////////////////////
//
//            ▼ 404 ▼
//
///////////////////////////////////////////////////*/
.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;
  appearance: none;
  width: 3rem;
  height: 3rem;
  color: #000;
}
.search form .search_inner .submit span {
  font-size: 1.2rem;
}

.post_none {
  text-align: center;
}

/*///////////////////////////////////////////////////
//
//            ▼ IE対策 ▼
//
///////////////////////////////////////////////////*/

/*# sourceMappingURL=desktop.css.map */