@charset "UTF-8";
/*====================================================
//// webフォント読み込み
====================================================*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Outfit:wght@100..900&display=swap");
/* font-family
----------------------------------------------------*/
/* font-size
----------------------------------------------------*/
/* 画面サイズ
----------------------------------------------------*/
html {
  font-size: 62.5%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

@media screen and (min-width: 768px) and (max-width: 1190px) {
  html {
    font-size: 0.8403361345vw;
  }
}
/*====================================================
//// カラーコード
====================================================*/
:root {
  --main-color01: #29A0C4;
  --main-color02: #84C8DD;
  --line:#07C655;
  --txt-color: #484848;
  --light-gray: #F2F2F2;
  --light-blue: #E3F9FA;
  --gradation-blue: linear-gradient(90deg, #e8fafc, #b9f0ea);
  --gradation-orange: linear-gradient(90deg, #f08a4b, #d85b90);
  --gradation-green: linear-gradient(90deg, #00a793, #00b89c 30%, #00d3aa);
  --btn_grd-orange: linear-gradient(90deg, #f08a4b, #d85b90 50%, #f08a4b);
  --btn_grd-blue: linear-gradient(90deg, #059ED6, #00D8FF 50%, #059ED6);
  --btn_grd-green: linear-gradient(90deg,rgba(0, 167, 147, 1) 0%, rgba(0, 184, 156, 1) 25%, rgba(0, 211, 170, 1) 50%, rgba(0, 184, 156, 1) 75%, rgba(0, 211, 170, 1) 100%);
  --btn-grd-blue02: linear-gradient(90deg, #059ed6, #00d8ff 50%, #059ed6);
  --btn-grd-blue03: linear-gradient(90deg, #00D8FF, #297895 50%, #00D8FF);
  --header-offset: 0px;
}

/*====================================================
////アニメーション設定
====================================================*/
@keyframes fadeInX {
  from {
    transform: translateY(3rem);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes inUp {
  to {
    transform: translateY(0px);
  }
}
/* animation start
----------------------------------------------------*/
.fadeIn {
  opacity: 0;
}
.fadeIn.active {
  animation-name: fadeIn;
  animation-duration: 1s;
  animation-timing-function: ease-in;
  animation-fill-mode: forwards;
}

.inUp {
  transform: translateY(100%);
}
.inUp.active {
  animation-name: inUp;
  animation-duration: 0.5s;
  animation-timing-function: ease-in;
  animation-fill-mode: forwards;
}

.fadetxt.active {
  --opacity: 1;
}
.fadetxt .char {
  display: inline;
  opacity: var(--opacity, 0);
  transition: opacity 0.6s cubic-bezier(0.77, 0, 0.175, 1);
  transition-delay: calc(0.05s * var(--char-index));
}
.fadetxt .char.fadetxt__only-pc {
  display: none;
}

/*====================================================
////common
====================================================*/
/* ---------- 基本設定 ----------*/
body {
  font-family: "Noto Sans JP", sans-serif;
  color: var(--txt-color);
  max-width: 100vw;
  overflow-x: hidden;
}
@media screen and (min-width: 768px) {
  body {
    font-size: 1.6rem;
  }
}

img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}

a {
  display: block;
  transition: 0.3s;
}
@media screen and (min-width: 768px) {
  a:hover {
    opacity: 0.8;
  }
}

/* ---------- レスポンシブ切り替え ----------*/
.only-sp {
  display: block !important;
}
@media screen and (min-width: 768px) {
  .only-sp {
    display: none !important;
  }
}

.only-pc {
  display: none !important;
}
@media screen and (min-width: 768px) {
  .only-pc {
    display: block !important;
  }
}

/*====================================================
////header
====================================================*/
.header {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 99999;
  height: 6rem;
}
.header .inner {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding-top: 1rem;
}
.header__logo {
  width: 12.824rem;
  z-index: 9999;
}
.header__menuBtn {
  position: relative;
  width: 2.4rem;
  height: 2.2rem;
  z-index: 9999;
  margin-top: 1rem;
}
.header__menuBtn span {
  position: absolute;
  left: 0;
  width: 2.4rem;
  height: 0.4rem;
  transition: 0.3s;
}
.header__menuBtn span:first-child {
  top: 0;
}
.header__menuBtn span:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
}
.header__menuBtn span:last-child {
  bottom: 0;
}
.header__nav {
  width: 100%;
  background-color: #fff;
  position: absolute;
  top: 0;
  left: 0;
  transform: translateY(-120%);
  transition: 0.3s;
  z-index: 999;
  padding: 8.4rem 0 3.3rem 0;
  box-shadow: 0 7px 10px rgba(0, 0, 0, 0.16);
}
.header__nav_list {
  padding-bottom: 3.9rem;
  display: flex;
  flex-wrap: nowrap;
  gap: 2.2rem;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
.header__nav_list--item a {
  text-align: center;
  font-size: 1.6rem;
  line-height: 1;
  font-weight: 400;
  white-space: nowrap;
}
.header__nav_list--item.external a {
  position: relative;
  padding-right: 2.5rem;
}
.header__nav_list--item.external a::before {
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%3E%0A%20%20%3Cdefs%3E%0A%20%20%20%20%3CclipPath%20id%3D%22clip-path%22%3E%0A%20%20%20%20%20%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_24280%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%2024280%22%20width%3D%2220%22%20height%3D%2220%22%20fill%3D%22%23484848%22%2F%3E%0A%20%20%20%20%3C%2FclipPath%3E%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cg%20id%3D%22%E6%96%B0%E8%A6%8F%E3%82%A6%E3%82%A3%E3%83%B3%E3%83%89%E3%82%A6_M%22%20clip-path%3D%22url(%23clip-path)%22%3E%0A%20%20%20%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_45999%22%20data-name%3D%22%E3%83%91%E3%82%B9%2045999%22%20d%3D%22M4.239%2C16.63H16.63V11.261h1.239v6.609H3V3H9.609V4.239H4.239ZM12.087%2C4.239V3h5.782V8.782H16.63V5.148L9.2%2C12.5l-.826-.826%2C7.352-7.435Z%22%20transform%3D%22translate(-0.522%20-0.522)%22%20fill%3D%22%23484848%22%20fill-rule%3D%22evenodd%22%2F%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
  background-image: 2rem;
  background-size: contain;
  background-repeat: no-repeat;
  aspect-ratio: 20/20;
  position: absolute;
  width: 2rem;
  right: 0;
  top: 0;
}
.header__nav_list--item.external a:hover::before {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%3E%0A%20%20%3Cdefs%3E%0A%20%20%20%20%3CclipPath%20id%3D%22clip-path%22%3E%0A%20%20%20%20%20%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_24280%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%2024280%22%20width%3D%2220%22%20height%3D%2220%22%20fill%3D%22%234c7ec3%22%2F%3E%0A%20%20%20%20%3C%2FclipPath%3E%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cg%20id%3D%22%E6%96%B0%E8%A6%8F%E3%82%A6%E3%82%A3%E3%83%B3%E3%83%89%E3%82%A6_M%22%20clip-path%3D%22url(%23clip-path)%22%3E%0A%20%20%20%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_45999%22%20data-name%3D%22%E3%83%91%E3%82%B9%2045999%22%20d%3D%22M4.239%2C16.63H16.63V11.261h1.239v6.609H3V3H9.609V4.239H4.239ZM12.087%2C4.239V3h5.782V8.782H16.63V5.148L9.2%2C12.5l-.826-.826%2C7.352-7.435Z%22%20transform%3D%22translate(-0.522%20-0.522)%22%20fill%3D%22%234c7ec3%22%20fill-rule%3D%22evenodd%22%2F%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
}
.header__nav--btn .f-box {
  display: flex;
  flex-wrap: nowrap;
  gap: 0.8rem;
  justify-content: center;
  align-items: center;
  width: 91.2%;
  margin: 0 auto;
}
.header__nav--btn .newsletter,
.header__nav--btn .line {
  width: calc((100% - 0.8rem) / 2);
}
.header__nav--btn .newsletter a {
  background-color: var(--main-color01);
}
.header__nav--btn .line a {
  background-color: var(--line);
}
.header.header-white .header__logo .white {
  display: block;
}
.header.header-white .header__logo .blue {
  display: none;
}
.header.header-white .header__menuBtn span {
  background-color: #fff;
}
.header.header-blue .header__logo .white {
  display: none;
}
.header.header-blue .header__logo .blue {
  display: block;
}
.header.header-blue .header__menuBtn span {
  background-color: #C6C6C6;
}
.header.active .header__nav {
  transform: translateY(0);
}
.header.active .header__logo .white {
  display: none;
}
.header.active .header__logo .blue {
  display: block;
}
.header.active .header__menuBtn span {
  background-color: #C6C6C6 !important;
}
.header.active .header__menuBtn span:first-child {
  transform: rotate(45deg);
  top: 50%;
}
.header.active .header__menuBtn span:nth-child(2) {
  opacity: 0;
}
.header.active .header__menuBtn span:last-child {
  transform: rotate(-45deg);
  bottom: auto;
  top: 50%;
}

/*======================= PC =======================*/
@media screen and (min-width: 768px) {
  .header {
    height: 7.9rem;
  }
  .header .inner {
    padding: 2.6rem 0 0 0;
    width: 96.486090776%;
    max-width: initial;
    margin: 0 auto;
    gap: 2rem;
  }
  .header__logo {
    width: 19.4rem;
  }
  .header__nav {
    width: fit-content;
    background-color: transparent;
    position: relative;
    transform: translateY(0);
    padding: 0;
    box-shadow: none;
  }
  .header__nav::after {
    content: "";
    border-radius: 2.6rem;
    -webkit-border-radius: 2.6rem;
    -moz-border-radius: 2.6rem;
    -ms-border-radius: 2.6rem;
    -o-border-radius: 2.6rem;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    backdrop-filter: blur(30px) brightness(115%);
    background-color: rgba(255, 255, 255, 0.39);
  }
  .header__nav_list {
    background-color: transparent;
    padding: 1rem 2.6rem 1rem 4rem;
    justify-content: flex-end;
    gap: 1.9rem;
    flex-direction: row;
  }
  .header__nav_list--item a {
    text-align: center;
    font-size: 1.4rem;
    line-height: 1.4285714286;
    position: relative;
  }
  .header__nav_list--item a::after {
    content: "";
    width: 100%;
    height: 0.2rem;
    position: absolute;
    bottom: -0.2rem;
    left: 0;
    transform: scaleX(0);
    transition: transform 0.5s;
    transform-origin: right;
    background-color: #4C7EC3;
  }
  .header__nav_list--item a:hover {
    color: #4C7EC3;
  }
  .header__nav_list--item a:hover::after {
    transform: scaleX(1);
  }
  .header__nav_list--item.tel a {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15.335' height='20' viewBox='0 0 15.335 20'%3E%3Cpath d='M1.371.848C0,1.739-.273,4.525.246,6.8a20.509,20.509,0,0,0,2.712,6.374,21.3,21.3,0,0,0,4.714,5.075c1.862,1.4,4.515,2.289,5.89,1.4a6.959,6.959,0,0,0,1.774-1.9L14.6,16.6l-2.03-3.13c-.151-.233-1.1-.02-1.578.252a4.576,4.576,0,0,0-1.245,1.353c-.445.257-.817,0-1.595-.357a9.473,9.473,0,0,1-2.887-3.045A9.473,9.473,0,0,1,3.659,7.8c-.01-.856-.091-1.3.324-1.6A4.576,4.576,0,0,0,5.727,5.61c.445-.328,1.025-1.1.874-1.338L4.57,1.142,3.832,0A6.96,6.96,0,0,0,1.371.848' fill='%23484848'/%3E%3C/svg%3E");
    background-size: 1.534rem 2rem;
    background-position: 0 80%;
    background-repeat: no-repeat;
    padding-left: 2rem;
    font-size: 1.9rem;
    line-height: 1.0526315789;
    font-weight: 600;
    margin-left: 0.5rem;
    white-space: nowrap;
    transition: 0.3s;
  }
  .header__nav_list--item.tel a::after {
    content: none;
  }
  .header__nav_list--item.tel a:hover {
    background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2215.335%22%20height%3D%2220%22%20viewBox%3D%220%200%2015.335%2020%22%3E%0A%20%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_9934%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%209934%22%20transform%3D%22translate(0%200)%22%3E%0A%20%20%20%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_9688%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%209688%22%3E%0A%20%20%20%20%20%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_45905%22%20data-name%3D%22%E3%83%91%E3%82%B9%2045905%22%20d%3D%22M1.371.848C0%2C1.739-.273%2C4.525.246%2C6.8a20.509%2C20.509%2C0%2C0%2C0%2C2.712%2C6.374%2C21.3%2C21.3%2C0%2C0%2C0%2C4.714%2C5.075c1.862%2C1.4%2C4.515%2C2.289%2C5.89%2C1.4a6.959%2C6.959%2C0%2C0%2C0%2C1.774-1.9L14.6%2C16.6l-2.03-3.13c-.151-.233-1.1-.02-1.578.252a4.576%2C4.576%2C0%2C0%2C0-1.245%2C1.353c-.445.257-.817%2C0-1.595-.357a9.473%2C9.473%2C0%2C0%2C1-2.887-3.045A9.473%2C9.473%2C0%2C0%2C1%2C3.659%2C7.8c-.01-.856-.091-1.3.324-1.6A4.576%2C4.576%2C0%2C0%2C0%2C5.727%2C5.61c.445-.328%2C1.025-1.1.874-1.338L4.57%2C1.142%2C3.832%2C0A6.96%2C6.96%2C0%2C0%2C0%2C1.371.848%22%20transform%3D%22translate(0%200)%22%20fill%3D%22%234c7ec3%22%2F%3E%0A%20%20%20%20%3C%2Fg%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
    color: #4C7EC3;
  }
  .header__nav_list--item.contact a {
    padding: 0.5rem 2.4rem;
    font-size: 1.4rem;
    line-height: 1;
    font-weight: 600;
  }
  .header__nav_list--item.contact a::after {
    content: none;
  }
  .header__nav_list--item.contact a:hover {
    color: #fff;
  }
  .header__nav_list--item.contact a::before, .header__nav_list--item.contact a::after {
    content: none;
  }
}
/*====================================================
////footer
====================================================*/
.footer {
  background-color: #F2F2F2;
  padding-top: 3.35rem;
  position: relative;
  z-index: 99;
}
.footer .inner {
  padding-bottom: 2.5rem;
}
.footer__logo {
  width: 15.181rem;
}
.footer__txt {
  font-size: 1.4rem;
  line-height: 1.7857142857;
  font-weight: 400;
  margin-top: 1.8rem;
}
.footer__txt--tel a {
  display: inline;
}
.footer__nav {
  margin-top: 2.48rem;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: flex-start;
}
.footer__nav--list li a {
  font-size: 1.4rem;
  line-height: 1.7857142857;
  font-weight: 400;
}
.footer__nav--child {
  margin-left: 1rem;
}
.footer__nav--child li {
  font-size: 1.4rem;
  line-height: 2;
  font-weight: 400;
}
.footer__copy {
  background-color: var(--main-color01);
  color: #fff;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1.3571428571;
  font-weight: 400;
  padding: 1.4rem 0;
}

/*======================= PC =======================*/
@media screen and (min-width: 768px) {
  .footer {
    padding-top: 4.4rem;
  }
  .footer .inner {
    padding-bottom: 5.7rem;
    display: flex;
    flex-wrap: nowrap;
    gap: 6.4rem;
    justify-content: space-between;
    align-items: flex-start;
  }
  .footer__office {
    width: 24.0234375%;
  }
  .footer__logo {
    width: 19.4rem;
  }
  .footer__txt {
    font-size: 1.6rem;
    line-height: 1.5625;
    margin-top: 2.5rem;
  }
  .footer__txt--tel a {
    pointer-events: none;
  }
  .footer__nav {
    margin-top: 0;
    width: calc(75.9765625% - 6.4rem);
  }
  .footer__nav .block01, .footer__nav .block02 {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: flex-start;
  }
  .footer__nav .block01:first-of-type {
    width: 95%;
  }
  .footer__nav .block02 {
    gap: 17%;
    width: 100%;
  }
  .footer__nav .block02 .footer__nav--list:last-of-type {
    width: 100%;
  }
  .footer__nav--list {
    width: 100%;
  }
  .footer__nav--list:first-of-type {
    width: 57%;
  }
  .footer__nav--list:nth-of-type(3) {
    width: 80%;
  }
  .footer__nav--list li {
    margin-bottom: 1rem;
    white-space: nowrap;
  }
  .footer__nav--list li a {
    font-size: 1.6rem;
    line-height: 1.5625;
    width: fit-content;
  }
  .footer__nav--list li.external a {
    padding-right: 3rem;
    position: relative;
  }
  .footer__nav--list li.external a::after {
    content: "";
    width: 2rem;
    height: 2rem;
    background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%3E%0A%20%20%3Cdefs%3E%0A%20%20%20%20%3CclipPath%20id%3D%22clip-path%22%3E%0A%20%20%20%20%20%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_24280%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%2024280%22%20width%3D%2220%22%20height%3D%2220%22%20fill%3D%22%23484848%22%2F%3E%0A%20%20%20%20%3C%2FclipPath%3E%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cg%20id%3D%22%E6%96%B0%E8%A6%8F%E3%82%A6%E3%82%A3%E3%83%B3%E3%83%89%E3%82%A6_M%22%20clip-path%3D%22url(%23clip-path)%22%3E%0A%20%20%20%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_45999%22%20data-name%3D%22%E3%83%91%E3%82%B9%2045999%22%20d%3D%22M4.239%2C16.63H16.63V11.261h1.239v6.609H3V3H9.609V4.239H4.239ZM12.087%2C4.239V3h5.782V8.782H16.63V5.148L9.2%2C12.5l-.826-.826%2C7.352-7.435Z%22%20transform%3D%22translate(-0.522%20-0.522)%22%20fill%3D%22%23484848%22%20fill-rule%3D%22evenodd%22%2F%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
  }
  .footer__nav--child {
    margin-left: 1.7rem;
    margin-top: -1rem;
  }
  .footer__nav--child li {
    margin-bottom: 0;
  }
  .footer__nav--child li a {
    font-size: 1.4rem;
    line-height: 2.0714285714;
  }
  .footer__copy {
    background-color: var(--main-color01);
    color: #fff;
    text-align: center;
    font-size: 1.4rem;
    line-height: 1.3571428571;
    font-weight: 400;
    padding: 1.4rem 0;
  }
}
/*====================================================
//// Fixバナー
====================================================*/
.fix-sp {
  position: fixed;
  bottom: 1.6rem;
  left: 0;
  width: 100%;
  padding: 0 4.2666666667%;
  z-index: 999;
  display: flex;
  flex-wrap: nowrap;
  gap: 0.8rem;
  justify-content: center;
  align-items: stretch;
  transform: translateY(0);
  transition: 0.3s;
}
.fix-sp__contact, .fix-sp__tel {
  width: calc((100% - 0.8rem) / 2);
}
.fix-sp__contact a {
  background: var(--gradation-orange);
  font-size: 1.2rem;
  line-height: 1.4166666667;
  font-weight: 600;
}
.fix-sp__tel a {
  background: var(--gradation-green);
  flex-direction: column;
  font-size: 1.4rem;
  line-height: 1.4285714286;
  font-weight: 600;
}
.fix-sp__tel a span {
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 400;
}
.fix-sp.hidden {
  transform: translateY(10rem);
}

/*======================= PC =======================*/
.fix-pc {
  position: fixed;
  top: 12.8703703704%;
  right: 0;
  z-index: 999;
}
.fix-pc__newsletter a, .fix-pc__line a {
  writing-mode: vertical-rl;
  color: #fff;
  border-radius: 1rem 0 0 1rem;
  -webkit-border-radius: 1rem 0 0 1rem;
  -moz-border-radius: 1rem 0 0 1rem;
  -ms-border-radius: 1rem 0 0 1rem;
  -o-border-radius: 1rem 0 0 1rem;
  padding: 2.2rem 1.7rem 2.2rem 1.1rem;
  transition: 0.3s;
  transform: translateX(0.6em);
}
.fix-pc__newsletter a:hover, .fix-pc__line a:hover {
  transform: translateX(0);
  opacity: 1;
}
.fix-pc__newsletter {
  margin-bottom: 0.8rem;
}
.fix-pc__newsletter a {
  background-color: var(--main-color01);
}
.fix-pc__line a {
  background-color: var(--line);
}

/*====================================================
//// CTA
====================================================*/
.cta {
  background-color: #fff;
  width: 100%;
  position: relative;
  z-index: 10;
}
.cta__block {
  background-image: url(../img/common/sp/bg-cta.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 91.4666666667%;
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  -ms-border-radius: 1rem;
  -o-border-radius: 1rem;
  overflow: hidden;
  padding: 2.1rem 0 2.3rem 0;
  margin: 0 auto 4.49rem auto;
  position: relative;
  z-index: 10;
}
.cta .inner {
  background-color: #fff;
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  -ms-border-radius: 1rem;
  -o-border-radius: 1rem;
  width: 89.5043731778%;
  margin: 0 auto;
  padding: 2rem 2.4rem 1.69rem 2rem;
}
.cta .txt .title {
  color: var(--main-color01);
  font-size: 2rem;
  line-height: 1.45;
  font-weight: 700;
}
.cta .txt .body {
  font-size: 1.4rem;
  line-height: 2;
  font-weight: 500;
  margin-top: 1.6rem;
}
.cta .btn {
  margin: 2.21rem auto 0 auto;
  width: 83.0769230769%;
}
.cta .btn a {
  background-image: linear-gradient(45deg, rgb(0, 216, 255) 0%, rgb(41, 120, 149) 50%, rgb(0, 216, 255) 100%);
  background-size: 200% 100%;
  background-position: top left;
  font-size: 1.8rem;
  line-height: 1;
  font-weight: 600;
}
.cta .btn a::before {
  width: 4rem;
  right: 0.8rem;
}
.cta .btn a::after {
  width: 1.9rem;
  height: 0.7rem;
  right: 1.7rem;
}

/*======================= PC =======================*/
@media screen and (min-width: 768px) {
  .cta {
    padding: 9.6rem 0 6.2rem 0;
  }
  .cta__block {
    background-image: url(../img/common/bg-cta.jpg);
    background-position: 50% 50%;
    max-width: 124.7rem;
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
    padding: 8.2rem 0 7.2rem 0;
  }
  .cta .inner {
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
    width: 82.1972734563%;
    max-width: 102.5rem;
    padding: 4.6rem 8.9rem 5.2rem 8rem;
    display: flex;
    flex-wrap: nowrap;
    gap: 2.3rem;
    justify-content: space-between;
    align-items: center;
  }
  .cta .txt {
    width: calc(100% - 21.6rem - 2.3rem);
  }
  .cta .txt .title {
    font-size: 3.2rem;
    line-height: 1.4375;
  }
  .cta .txt .body {
    font-size: 1.6rem;
    line-height: 2;
    margin-top: 1.8rem;
  }
  .cta .btn {
    margin: 0;
    width: 21.6rem;
  }
  .cta .btn a {
    transition: 0.3s;
  }
  .cta .btn a:hover {
    background-position: 100% 0;
  }
}
/* ---------- インナー ----------*/
.inner {
  width: 91.4666666667%;
  max-width: 124.6rem;
  margin: 0 auto;
}
.inner.narrow {
  max-width: 102.4rem;
}
.inner.menu {
  position: relative;
  height: 100%;
  overflow: visible;
}

/* サブヘッダー */
.page-head {
  padding-top: 7rem;
  position: relative;
  z-index: 10;
}
.page-head__title {
  padding: 3rem 0 4.2rem 0;
}
.page-head__title .en {
  font-size: 4.4rem;
  line-height: 1.25;
  font-weight: 700;
  letter-spacing: -0.1em;
  font-family: "Outfit", sans-serif;
  color: var(--main-color01);
}
.page-head__title .jp {
  font-size: 1.8rem;
  line-height: 1.5555555556;
  font-weight: 400;
}
.page-head .lead {
  font-size: 1.4rem;
  line-height: 1.7142857143;
  font-weight: 400;
  margin-top: 0.7rem;
  animation-delay: 0.5s;
  padding-bottom: 4rem;
}

@media screen and (min-width: 768px) {
  .page-head {
    padding-top: 10.2rem;
  }
  .page-head__title {
    padding: 6.7rem 0 4.6rem 0;
  }
  .page-head__title .en {
    font-size: 8rem;
    line-height: 1.2625;
    letter-spacing: -0.1em;
  }
  .page-head__title .jp {
    font-size: 1.8rem;
    line-height: 1.5555555556;
  }
  .page-head .lead {
    font-size: 1.6rem;
    line-height: 1.625;
    font-weight: 400;
    margin-top: 1.6rem;
    padding-bottom: 7.1rem;
  }
}
/* サブタイトル */
.page-sub_title {
  overflow: hidden;
  width: fit-content;
  margin: auto;
}
.page-sub_title span {
  display: block;
  color: var(--main-color01);
  font-size: 2.4rem;
  line-height: 1.4583333333;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .page-sub_title span {
    font-size: 4rem;
    line-height: 1.45;
  }
}

.page:has(.in-page_link) .header {
  background-color: #fff;
}
.page:has(.in-page_link) .block {
  background-color: #fff;
}
.page:has(.in-page_link) .page-head {
  background-color: #fff;
}
.page:has(.in-page_link) .page-head__title {
  padding: 3.2rem 0 4rem 0;
}
.page:has(.in-page_link) .page-head .inner {
  position: relative;
}

/* パンくず
----------------------------------------------------*/
.breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 0 2.3rem;
  justify-content: flex-start;
  align-items: flex-start;
}
@media screen and (min-width: 768px) {
  .breadcrumbs {
    gap: 2.7rem;
  }
}
.breadcrumbs__item {
  font-size: 1.2rem;
  line-height: 1.3333333333;
  font-weight: 400;
  position: relative;
  color: var(--main-color01);
}
@media screen and (min-width: 768px) {
  .breadcrumbs__item {
    font-size: 1.4rem;
    line-height: 1.3571428571;
  }
}
.breadcrumbs__item::after {
  content: "";
  width: 0.618rem;
  height: 1.236rem;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%229.57%22%20height%3D%2217.139%22%20viewBox%3D%220%200%209.57%2017.139%22%3E%0A%20%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_133%22%20data-name%3D%22%E3%83%91%E3%82%B9%20133%22%20d%3D%22M6974%2C206.973l7.155-7.155L6974%2C192.662%22%20transform%3D%22translate(-6972.586%20-191.248)%22%20fill%3D%22none%22%20stroke%3D%22%23f2f2f2%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%222%22%2F%3E%0A%3C%2Fsvg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  right: -1.5rem;
  top: 25%;
}
.breadcrumbs__item:last-of-type {
  color: #8D8D8D;
}
.breadcrumbs__item:last-of-type::after {
  content: none;
}

/* ページ内リンク
----------------------------------------------------*/
.in-page_link {
  background-color: var(--light-gray);
  border-top: 1px solid #C6C6C6;
  border-bottom: 1px solid #C6C6C6;
  position: sticky;
  top: 6rem;
  left: 0;
  z-index: 10;
}
.in-page_link .menu-trigger {
  background-color: #fff;
  width: 4.5rem;
  height: 2.1rem;
  position: absolute;
  right: 1.7rem;
  top: 1rem;
  z-index: 10;
  border-radius: 1.7rem;
  -webkit-border-radius: 1.7rem;
  -moz-border-radius: 1.7rem;
  -ms-border-radius: 1.7rem;
  -o-border-radius: 1.7rem;
}
.in-page_link .menu-trigger::after {
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%224%22%20height%3D%2212.097%22%20viewBox%3D%220%200%204%2012.097%22%3E%0A%20%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_9487%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%209487%22%20transform%3D%22translate(4.444%200)%20rotate(90)%22%3E%0A%20%20%20%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_45787%22%20data-name%3D%22%E3%83%91%E3%82%B9%2045787%22%20d%3D%22M-3344.627%2C1228h9.187%22%20transform%3D%22translate(3344.627%20-1225.514)%22%20fill%3D%22none%22%20stroke%3D%22%23484848%22%20stroke-width%3D%221%22%2F%3E%0A%20%20%20%20%3Cpath%20id%3D%22%E5%A4%9A%E8%A7%92%E5%BD%A2_11%22%20data-name%3D%22%E5%A4%9A%E8%A7%92%E5%BD%A2%2011%22%20d%3D%22M2%2C0%2C4%2C4H0Z%22%20transform%3D%22translate(12.097%200.444)%20rotate(90)%22%20fill%3D%22%23484848%22%2F%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  width: 0.4rem;
  height: 1.21rem;
  position: absolute;
  right: 2rem;
  top: 0.5rem;
  z-index: 11;
  transition: 0.3s;
}
.in-page_link .menu-trigger.active::after {
  transform: rotate(-180deg);
}
.in-page_link__list {
  margin: 0 auto;
}
.in-page_link__list li a {
  padding: 1rem 1.75rem;
  font-size: 1.4rem;
  line-height: 1.4285714286;
  font-weight: 400;
  position: relative;
}
.in-page_link__list li:not(:first-child) {
  display: none;
}
.in-page_link__list li:not(:has(a)) {
  padding: 1rem 1.75rem;
  font-size: 1.4rem;
  line-height: 1.4285714286;
  font-weight: 400;
}

@media screen and (min-width: 768px) {
  .in-page_link {
    top: 7.9rem;
  }
  .in-page_link__list {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: stretch;
    max-width: 136.6rem;
    margin: 0 auto;
  }
  .in-page_link__list li {
    display: list-item;
    width: 14.2857142857%;
  }
  .in-page_link__list li a {
    border-right: 1px solid #C6C6C6;
    padding: 1rem 1.75rem;
    font-size: 1.4rem;
    line-height: 1.4285714286;
    font-weight: 400;
  }
  .in-page_link__list li a::before, .in-page_link__list li a::after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }
  .in-page_link__list li a::before {
    background-color: #fff;
    width: 4.5rem;
    aspect-ratio: 45/21;
    border-radius: 1.7rem;
    -webkit-border-radius: 1.7rem;
    -moz-border-radius: 1.7rem;
    -ms-border-radius: 1.7rem;
    -o-border-radius: 1.7rem;
    right: 1.75rem;
  }
  .in-page_link__list li a::after {
    background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19 7'%3E%3Cg transform='translate(-1101 -1747)'%3E%3Cpath d='M-3344.627,1228h14.3' transform='translate(4445.627 522.5)' fill='none' stroke='%23484848' stroke-width='1'/%3E%3Cpath d='M3.5,0,7,6H0Z' transform='translate(1120 1747) rotate(90)' fill='%23484848'/%3E%3C/g%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    width: 1.21rem;
    height: 0.4rem;
    background-size: contain;
    right: 3.3rem;
  }
  .in-page_link__list li a:hover {
    background-color: #fff;
  }
  .in-page_link__list li a:hover::before {
    background-color: var(--light-gray);
  }
  .in-page_link__list li:first-child a {
    border-left: 1px solid #C6C6C6;
  }
  .in-page_link__list li:not(:first-child) {
    display: none;
  }
}
/* ---------- ボタン ----------*/
.btn.not-found a {
  display: block;
  margin: 5rem auto 0 auto;
  max-width: 25rem;
  color: #fff;
  text-align: center;
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
  aspect-ratio: 167/42;
  font-size: 1.4rem;
  line-height: 1.2142857143;
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  .btn.not-found a {
    font-size: 1.6rem;
    line-height: 1.5;
  }
}
.btn a {
  color: #fff;
  border-radius: 2.8rem;
  -webkit-border-radius: 2.8rem;
  -moz-border-radius: 2.8rem;
  -ms-border-radius: 2.8rem;
  -o-border-radius: 2.8rem;
  position: relative;
  width: 100%;
  font-size: 1.2rem;
  line-height: 1.4166666667;
  font-weight: 600;
  display: flex;
  justify-content: center;
  align-items: center;
  aspect-ratio: 167/42;
  padding-right: 1rem;
}
.btn a::before, .btn a::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: 0.3s;
}
.btn a::before {
  width: 3.1rem;
  aspect-ratio: 30/30;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  border: 1px solid #fff;
  right: 0.4rem;
}
.btn a::after {
  width: 1.42rem;
  aspect-ratio: 14.2/6;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19 7'%3E%3Cg transform='translate(-1101 -1747)'%3E%3Cpath d='M-3344.627,1228h14.3' transform='translate(4445.627 522.5)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3Cpath d='M3.5,0,7,6H0Z' transform='translate(1120 1747) rotate(90)' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  background-size: contain;
  right: 1rem;
}
.btn.shadow a {
  box-shadow: 0 0.3rem 1rem rgba(78, 93, 144, 0.16);
}
.btn.white a {
  background: #fff;
  color: var(--main-color01);
  border: 1px solid var(--main-color01);
}
.btn.white a::before {
  border-color: var(--main-color01);
}
.btn.white a::after {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19 7'%3E%3Cg transform='translate(-1101 -1747)'%3E%3Cpath d='M-3344.627,1228h14.3' transform='translate(4445.627 522.5)' fill='none' stroke='%2329A0C4' stroke-width='1'/%3E%3Cpath d='M3.5,0,7,6H0Z' transform='translate(1120 1747) rotate(90)' fill='%2329A0C4'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}
.btn.white a:hover {
  opacity: 1;
  color: var(--main-color02);
}
.btn.white a:hover::before {
  background-color: var(--main-color01);
}
.btn.white a:hover::after {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19 7'%3E%3Cg transform='translate(-1101 -1747)'%3E%3Cpath d='M-3344.627,1228h14.3' transform='translate(4445.627 522.5)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3Cpath d='M3.5,0,7,6H0Z' transform='translate(1120 1747) rotate(90)' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}
.btn.grd-orange a {
  background: var(--btn_grd-orange);
}
.btn.grd-blue a {
  background: var(--btn_grd-blue);
}
.btn.grd-green a {
  background: var(--btn_grd-green);
}
.btn.grd-blue02 a {
  background: var(--btn-grd-blue02);
}
.btn.grd-blue03 a {
  background: var(--btn-grd-blue03);
}
.btn.grd-orange a, .btn.grd-blue a, .btn.grd-green a, .btn.grd-blue02 a, .btn.grd-blue03 a {
  background-size: 200% 100%;
}
.btn.grd-orange a:hover, .btn.grd-blue a:hover, .btn.grd-green a:hover, .btn.grd-blue02 a:hover, .btn.grd-blue03 a:hover {
  background-position: 100% 0;
  opacity: 1;
}
.btn.grd-orange a:hover::after, .btn.grd-blue a:hover::after, .btn.grd-green a:hover::after, .btn.grd-blue02 a:hover::after, .btn.grd-blue03 a:hover::after {
  right: 1.3rem;
}

/* もっと見るボタン
----------------------------------------------------*/
.more {
  color: var(--main-color01);
  font-size: 1.4rem;
  line-height: 1.6428571429;
  font-weight: 500;
  padding-right: 3.5rem;
  position: relative;
  width: fit-content;
  margin-top: 1rem;
}
.more::before, .more::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: 0.3s;
}
.more::before {
  background-color: #F2F2F2;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  right: 0;
  width: 2.3rem;
  aspect-ratio: 100/100;
}
.more::after {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%229.25%22%20height%3D%225%22%20viewBox%3D%220%200%209.25%205%22%3E%0A%20%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_9535%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%209535%22%20transform%3D%22translate(0%200.5)%22%3E%0A%20%20%20%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_45787%22%20data-name%3D%22%E3%83%91%E3%82%B9%2045787%22%20d%3D%22M-3344.627%2C1228h7.15%22%20transform%3D%22translate(3344.627%20-1226)%22%20fill%3D%22none%22%20stroke%3D%22%23484848%22%20stroke-width%3D%221%22%2F%3E%0A%20%20%20%20%3Cpath%20id%3D%22%E5%A4%9A%E8%A7%92%E5%BD%A2_11%22%20data-name%3D%22%E5%A4%9A%E8%A7%92%E5%BD%A2%2011%22%20d%3D%22M2.5%2C0%2C5%2C4H0Z%22%20transform%3D%22translate(9.25%20-0.5)%20rotate(90)%22%20fill%3D%22%23484848%22%2F%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
  width: 0.925rem;
  height: 0.5rem;
  right: 0.6rem;
}

/* ページャー
----------------------------------------------------*/
.pager ul {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  width: 80.4664723032%;
  margin: 6.3rem auto 5.3rem auto;
}
.pager ul li.current,
.pager ul li a:hover {
  color: #4361A2;
}
.pager ul li a {
  color: #AAAAAA;
}
.pager ul li.prev a, .pager ul li.next a {
  position: relative;
  width: 4rem;
  height: 4rem;
}
.pager ul li.prev a::before, .pager ul li.prev a::after, .pager ul li.next a::before, .pager ul li.next a::after {
  content: "";
  position: absolute;
}
.pager ul li.prev a::before, .pager ul li.next a::before {
  background-color: #F2F2F2;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  top: 0;
  left: 0;
}
.pager ul li.prev a::after, .pager ul li.next a::after {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19 7'%3E%3Cg transform='translate(-1101 -1747)'%3E%3Cpath d='M-3344.627,1228h14.3' transform='translate(4445.627 522.5)' fill='none' stroke='%23484848' stroke-width='1'/%3E%3Cpath d='M3.5,0,7,6H0Z' transform='translate(1120 1747) rotate(90)' fill='%23484848'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  width: 1.677rem;
  height: 0.6rem;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.pager ul li.prev a::after {
  transform: rotate(180deg);
  left: 30%;
  top: 45%;
}

/* ---------- モーダル ----------*/
.modal-video {
  background-color: rgba(0, 0, 0, 0.53);
  z-index: 999999 !important;
}

/* ---------- カテゴリー色分け ----------*/
.cat {
  color: #fff;
  font-size: 1rem;
  line-height: 2.341;
  padding: 0 3rem;
  border-radius: 1.4rem;
  -webkit-border-radius: 1.4rem;
  -moz-border-radius: 1.4rem;
  -ms-border-radius: 1.4rem;
  -o-border-radius: 1.4rem;
  display: inline-block;
}
.cat.cat01 {
  background-color: var(--main-color01);
}

/* ---------- フォーム ----------*/
.form-txt {
  border: 1px solid #C6C6C6;
  background-color: #fff;
  border-radius: 0.4rem;
  -webkit-border-radius: 0.4rem;
  -moz-border-radius: 0.4rem;
  -ms-border-radius: 0.4rem;
  -o-border-radius: 0.4rem;
  padding: 0.4rem 1rem;
  width: 100%;
}

.nl-box {
  border: 2px solid var(--main-color01);
  padding: 2rem 1.9rem 2rem 1rem;
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  -ms-border-radius: 1rem;
  -o-border-radius: 1rem;
}
@media screen and (min-width: 768px) {
  .nl-box {
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
  }
}
.nl-box h2 {
  text-align: center;
  font-size: 2.6rem;
  line-height: 1.2692307692;
  font-weight: 700;
  font-family: "Outfit", sans-serif;
  color: var(--main-color01);
}
.nl-box p {
  font-size: 1.4rem;
  line-height: 1;
  font-weight: 500;
  text-align: center;
  color: var(--main-color01);
  margin-top: 0.4rem;
}
.nl-box dl {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 1.2rem;
  justify-content: center;
  align-items: center;
  margin-top: 2rem;
}
.nl-box dl dt,
.nl-box dl dd {
  font-size: 1.4rem;
  line-height: 1;
  font-weight: 400;
  margin-bottom: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.nl-box dl dt {
  width: calc(100% - 1.2rem - 63.4069400631%);
  text-align: right;
}
.nl-box dl dd {
  width: 63.4069400631%;
}
.nl-box .submit {
  margin: 1rem auto 0 auto;
  width: 18.686rem;
  height: 4.4rem;
  position: relative;
  transition: 0.3s;
}
.nl-box .submit::before, .nl-box .submit::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.nl-box .submit::before {
  width: 3.1rem;
  aspect-ratio: 30/30;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  border: 1px solid #fff;
  right: 0.6rem;
}
.nl-box .submit::after {
  width: 1.42rem;
  height: 0.6rem;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19 7'%3E%3Cg transform='translate(-1101 -1747)'%3E%3Cpath d='M-3344.627,1228h14.3' transform='translate(4445.627 522.5)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3Cpath d='M3.5,0,7,6H0Z' transform='translate(1120 1747) rotate(90)' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  background-size: contain;
  right: 1.4rem;
}
.nl-box .submit button {
  text-align: center;
  background-color: var(--main-color01);
  color: #fff;
  box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
  border-radius: 2.8rem;
  -webkit-border-radius: 2.8rem;
  -moz-border-radius: 2.8rem;
  -ms-border-radius: 2.8rem;
  -o-border-radius: 2.8rem;
  width: 100%;
  height: 100%;
  transition: 0.3s;
}
.nl-box .submit:hover {
  opacity: 0.8;
}
.nl-box .submit:hover::before {
  border-color: var(--main-color01);
}
.nl-box .submit:hover::after {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19 7'%3E%3Cg transform='translate(-1101 -1747)'%3E%3Cpath d='M-3344.627,1228h14.3' transform='translate(4445.627 522.5)' fill='none' stroke='%2329A0C4' stroke-width='1'/%3E%3Cpath d='M3.5,0,7,6H0Z' transform='translate(1120 1747) rotate(90)' fill='%2329A0C4'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}
.nl-box .submit:hover button {
  background-color: #fff;
  color: var(--main-color01);
}

/* セクションタイトル */
.sec-head {
  position: relative;
}
.sec-head--title {
  font-size: 1.4rem;
  line-height: 1.4285714286;
  font-weight: 400;
}
.sec-head--title .en {
  display: block;
  font-size: 3.8rem;
  line-height: 1.2631578947;
  font-weight: 700;
  letter-spacing: -0.095em;
  font-family: "Outfit", sans-serif;
  color: var(--main-color01);
}
@media screen and (min-width: 768px) {
  .sec-head--title {
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .sec-head--title .en {
    font-size: 5rem;
    line-height: 1.26;
    letter-spacing: -0.095em;
  }
}
.sec-head p {
  font-size: 1.6rem;
  line-height: 1.75;
  font-weight: 500;
  margin-top: 1.6rem;
  animation-delay: 0.7s;
}
@media screen and (min-width: 768px) {
  .sec-head p p {
    margin-top: 1.2rem;
    max-width: 47.5rem;
  }
}
.sec-head .link-arrow {
  margin-top: 2.8rem;
}
.sec-head .link-arrow a {
  padding-right: 5rem;
}
@media screen and (min-width: 768px) {
  .sec-head .link-arrow {
    position: absolute;
    right: 0;
    top: 3rem;
  }
  .sec-head .link-arrow a {
    padding-right: 6rem;
  }
}

/* 矢印有ボタン */
.link-arrow a {
  font-size: 1.9rem;
  line-height: 1.2631578947;
  font-weight: 400;
  font-family: "Outfit", sans-serif;
  color: var(--main-color01);
  position: relative;
  width: fit-content;
  padding-right: 6.4rem;
}
.link-arrow a::before, .link-arrow a::after {
  content: "";
  position: absolute;
  top: 56.5%;
  transform: translateY(-50%);
  transition: 0.3s;
}
.link-arrow a::before {
  width: 3.8rem;
  aspect-ratio: 100/100;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  right: 0;
}
.link-arrow a::after {
  width: 1.566rem;
  height: 0.6rem;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19 7'%3E%3Cg transform='translate(-1101 -1747)'%3E%3Cpath d='M-3344.627,1228h14.3' transform='translate(4445.627 522.5)' fill='none' stroke='%23484848' stroke-width='1'/%3E%3Cpath d='M3.5,0,7,6H0Z' transform='translate(1120 1747) rotate(90)' fill='%23484848'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  background-repeat: no-repeat;
  background-size: contain;
  right: 1rem;
}
.link-arrow.gray a::before {
  background-color: var(--light-gray);
}
.link-arrow.gray a:hover {
  color: var(--txt-color);
}
.link-arrow.gray a:hover:before {
  background-color: var(--main-color02);
}
.link-arrow.gray a:hover::after {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19 7'%3E%3Cg transform='translate(-1101 -1747)'%3E%3Cpath d='M-3344.627,1228h14.3' transform='translate(4445.627 522.5)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3Cpath d='M3.5,0,7,6H0Z' transform='translate(1120 1747) rotate(90)' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}

@media screen and (min-width: 768px) {
  .link-arrow a {
    font-size: 2.3rem;
    line-height: 1.2608695652;
    padding-right: 7.2rem;
  }
  .link-arrow a::before, .link-arrow a::after {
    top: 57%;
  }
  .link-arrow a::before {
    width: 4.5rem;
  }
  .link-arrow a::after {
    width: 1.9rem;
    height: 0.7rem;
    right: 1.2rem;
  }
  .link-arrow a:hover::after {
    right: 0.8rem;
  }
}
/* FV
----------------------------------------------------*/
.top-fv {
  position: relative;
  width: 100vw;
  height: 81.2rem;
}
.top-fv__movie {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  overflow: hidden;
}
.top-fv__movie video {
  object-fit: cover;
  object-position: 50% 50%;
  width: 100%;
  height: 100%;
}
.top-fv__movie::after {
  content: "";
  background-color: rgba(0, 188, 213, 0.25);
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
}
.top-fv .inner {
  height: 100%;
  position: relative;
}
.top-fv__txt {
  color: #fff;
  width: 80%;
  position: absolute;
  left: 50%;
  top: 20%;
  transform: translateX(-49%);
}
.top-fv__txt .catch-wrap .fadetxt {
  font-size: 2.5rem;
  line-height: 1.88;
  font-weight: 700;
  letter-spacing: -0.12em;
}
.top-fv__txt .catch-wrap .catch {
  display: block;
  font-size: 10.6rem;
  line-height: 1.1320754717;
  font-weight: 700;
  letter-spacing: -0.085em;
  font-family: "Outfit", sans-serif;
  margin-top: 2.7rem;
}
.top-fv__movie-btn a {
  width: 12.4rem;
  aspect-ratio: 100/100;
  background-color: rgba(0, 0, 0, 0.59);
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  font-family: "Outfit", sans-serif;
  font-size: 1.2rem;
  line-height: 1.1666666667;
  font-weight: 100;
  letter-spacing: 0.04em;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  flex-direction: column;
  position: absolute;
  z-index: 10;
  bottom: 6.9rem;
  right: 0;
  border: 1px solid #fff;
}
.top-fv__movie-btn a span {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.5rem;
  line-height: 1.6;
  font-weight: 500;
  letter-spacing: 0.05em;
  padding-bottom: 2.8rem;
}
.top-fv__movie-btn a::after {
  content: "";
  height: 1.9rem;
  aspect-ratio: 0.8660254038;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  background-color: #fff;
  position: absolute;
  bottom: 2rem;
  left: 50%;
  transform: translateX(-50%);
}

/*======================= PC =======================*/
@media screen and (min-width: 768px) {
  .top-fv {
    height: 76.8rem;
  }
  .top-fv__only-pc {
    display: inline;
  }
  .top-fv__txt {
    left: 0;
    top: 28%;
    transform: translateX(-0.6rem);
  }
  .top-fv__txt .catch-wrap .fadetxt {
    font-size: 3rem;
    line-height: 1.8666666667;
  }
  .top-fv__txt .catch-wrap .catch {
    font-size: 14.7rem;
    line-height: 1;
    letter-spacing: -0.08em;
    margin-top: 1.6rem;
    height: auto;
  }
  .top-fv__contact a {
    max-width: 25.9rem;
    font-size: 1.8rem;
    line-height: 1.4444444444;
    font-weight: 600;
    margin-top: 5.5rem;
    aspect-ratio: 259/56;
    padding-right: 0;
  }
  .top-fv__contact a::before {
    width: 4rem;
    right: 0.6rem;
  }
  .top-fv__contact a::after {
    width: 1.9rem;
    height: 0.7rem;
    right: 1.6rem;
  }
}
/* Concept
----------------------------------------------------*/
.top-concept {
  padding: 8.5rem 0 44.1rem 0;
  position: relative;
  width: 100%;
  overflow-x: hidden;
}
.top-concept .inner {
  margin: 0 auto;
  position: relative;
  z-index: 10;
}
.top-concept__title {
  font-size: 2.5rem;
  line-height: 2;
  font-weight: 500;
  letter-spacing: -0.09em;
  color: var(--main-color01);
}
.top-concept__title span {
  display: block;
}
.top-concept .link-arrow {
  margin-top: 2.6rem;
}
.top-concept__img01, .top-concept__img02, .top-concept__img03 {
  position: absolute;
  z-index: -1;
  overflow: hidden;
  background-repeat: no-repeat;
  background-size: auto 100%;
  pointer-events: none;
}
.top-concept__img01 {
  top: 23rem;
  right: -7rem;
  width: 24.9rem;
  aspect-ratio: 249/196;
  border-radius: 1rem 0 0 1rem;
  -webkit-border-radius: 1rem 0 0 1rem;
  -moz-border-radius: 1rem 0 0 1rem;
  -ms-border-radius: 1rem 0 0 1rem;
  -o-border-radius: 1rem 0 0 1rem;
  background-image: url(../img/top/sp/concept01.jpg);
  background-position: top left;
}
.top-concept__img01.active {
  animation-delay: 0;
}
.top-concept__img02 {
  top: 32.5rem;
  left: -10.2rem;
  width: 27.5rem;
  aspect-ratio: 275/167;
  border-radius: 0 1rem 1rem 0;
  -webkit-border-radius: 0 1rem 1rem 0;
  -moz-border-radius: 0 1rem 1rem 0;
  -ms-border-radius: 0 1rem 1rem 0;
  -o-border-radius: 0 1rem 1rem 0;
  background-image: url(../img/top/concept02.jpg);
  background-position: top right;
}
.top-concept__img02.active {
  animation-delay: 0.5s;
}
.top-concept__img03 {
  top: 45.5rem;
  left: 8.8rem;
  width: 17.1rem;
  aspect-ratio: 171/113;
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  -ms-border-radius: 1rem;
  -o-border-radius: 1rem;
  background-image: url(../img/top/concept03.jpg);
  background-position: top left;
}
.top-concept__img03.active {
  animation-delay: 1s;
}

/*======================= PC =======================*/
@media screen and (min-width: 768px) {
  .top-concept {
    padding: 18.6rem 0 13.7rem 0;
    width: 100%;
    overflow-x: hidden;
  }
  .top-concept .inner {
    width: 91.2%;
  }
  .top-concept__title {
    font-size: 5rem;
    line-height: 2;
  }
  .top-concept .link-arrow {
    margin-top: 3.6rem;
  }
  .top-concept__img {
    width: 100%;
    max-width: 102.4rem;
    height: 108rem;
    margin: -35.5rem auto 0 auto;
    position: relative;
  }
  .top-concept__img01 {
    top: 0;
    right: -44.2rem;
    width: 75.5rem;
    aspect-ratio: 755/727;
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
    background-image: url(../img/top/concept01.jpg);
    background-size: cover;
  }
  .top-concept__img02 {
    left: -17.2rem;
    top: 54.9rem;
    width: 68.3rem;
    aspect-ratio: 683/430;
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
  }
  .top-concept__img03 {
    top: auto;
    bottom: 0;
    right: auto;
    left: 37.890625%;
    width: 38.8rem;
    aspect-ratio: 388/258;
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
  }
}
/* AMAGI Media
----------------------------------------------------*/
.top-media {
  position: relative;
  padding: 3.1rem 0 5rem 0;
  margin-bottom: 5rem;
}
.top-media::after {
  content: "";
  width: 95.7333333333%;
  height: 100%;
  border-radius: 1rem 0 0 1rem;
  -webkit-border-radius: 1rem 0 0 1rem;
  -moz-border-radius: 1rem 0 0 1rem;
  -ms-border-radius: 1rem 0 0 1rem;
  -o-border-radius: 1rem 0 0 1rem;
  background-image: linear-gradient(-30deg, #e8fafc, #b9f0ea);
  position: absolute;
  right: 0;
  top: 0;
  z-index: -1;
}
.top-media .inner {
  padding-left: 5.8%;
}
.top-media__list {
  margin-top: 3rem;
  display: flex;
  flex-wrap: wrap;
  gap: 2.2rem;
  justify-content: center;
  align-items: stretch;
  flex-direction: column;
}
.top-media__list--item {
  background-color: #fff;
  border-radius: 2rem;
  -webkit-border-radius: 2rem;
  -moz-border-radius: 2rem;
  -ms-border-radius: 2rem;
  -o-border-radius: 2rem;
  overflow: hidden;
  box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
}
.top-media__list--item .txt {
  padding: 1.9rem 4.046728972% 2.8rem 4.046728972%;
}
.top-media__list--item .data {
  display: flex;
  flex-wrap: nowrap;
  gap: 1.9rem;
  justify-content: flex-start;
  align-items: center;
}
.top-media__list--item time {
  font-size: 1.3rem;
  line-height: 1.2307692308;
}
.top-media__list--item p {
  font-size: 1.6rem;
  line-height: 1.75;
  font-weight: 600;
  margin-top: 0.7rem;
}

/*======================= PC =======================*/
@media screen and (min-width: 768px) {
  .top-media {
    padding: 0 0 10rem 0;
    max-width: 100vw;
    overflow-x: hidden;
    margin-bottom: 0;
  }
  .top-media::after {
    content: none;
  }
  .top-media .wrap {
    padding: 10rem 0;
    position: relative;
    width: 91.4666666667%;
    max-width: 124.6rem;
    margin: 0 auto;
  }
  .top-media .wrap::after {
    content: "";
    width: 100vw;
    height: 100%;
    border-radius: 2rem 0 0 2rem;
    -webkit-border-radius: 2rem 0 0 2rem;
    -moz-border-radius: 2rem 0 0 2rem;
    -ms-border-radius: 2rem 0 0 2rem;
    -o-border-radius: 2rem 0 0 2rem;
    background-image: linear-gradient(-30deg, #e8fafc, #b9f0ea);
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
  }
  .top-media .inner {
    padding-left: 0;
    width: 82.1829855538%;
  }
  .top-media .link-arrow {
    margin-top: 2.8rem;
  }
  .top-media__list {
    margin-top: 3.6rem;
    gap: 3.1rem;
    flex-direction: row;
    justify-content: flex-start;
  }
  .top-media__list--item {
    width: calc((100% - 6.2rem) / 3);
    background-color: #fff;
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
    overflow: hidden;
    box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
  }
  .top-media__list--item .txt {
    padding: 1.9rem 1.24rem 3.2rem 1.24rem;
  }
  .top-media__list--item .data {
    padding-left: 0.2rem;
  }
  .top-media__list--item time {
    font-size: 1.3rem;
    line-height: 1.2307692308;
  }
  .top-media__list--item p {
    font-size: 1.6rem;
    line-height: 1.75;
    font-weight: 600;
    margin-top: 1.1rem;
  }
  .top-media__list--item:first-of-type {
    animation-delay: 0.5s;
  }
  .top-media__list--item:nth-of-type(2) {
    animation-delay: 1s;
  }
  .top-media__list--item:last-of-type {
    animation-delay: 1.5s;
  }
}
/* Voice
----------------------------------------------------*/
.top-voice {
  padding: 5.6rem 0 6.6rem;
}
.top-voice__list {
  margin-top: 3rem;
  display: flex;
  flex-wrap: wrap;
  gap: 1.7rem;
  justify-content: center;
  align-items: stretch;
  flex-direction: column;
}
.top-voice__list--item {
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  -ms-border-radius: 1rem;
  -o-border-radius: 1rem;
  background-color: #fff;
  overflow: hidden;
  box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
}
.top-voice__list--item .txt {
  padding: 1rem 1.7rem 2.1rem 1.7rem;
}
.top-voice__list--item .txt .title {
  font-size: 1.8rem;
  line-height: 1.3333333333;
  font-weight: 400;
  color: var(--main-color01);
}
.top-voice__list--item .txt .body {
  font-size: 1.6rem;
  line-height: 1.75;
  font-weight: 400;
  margin-top: 1.1rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  overflow: hidden;
}
.top-voice__list--item .cat-wrap {
  margin-top: 1.9rem;
  display: flex;
  flex-wrap: nowrap;
  gap: 1.1rem;
  justify-content: flex-start;
  align-items: center;
}
.top-voice__list--item .cat-wrap .cat {
  font-size: 1.2rem;
  line-height: 2.25;
  font-weight: 400;
  padding: 0 3.8rem;
}

/*======================= PC =======================*/
@media screen and (min-width: 768px) {
  .top-voice {
    padding: 8.8rem 0 8.5rem 0;
  }
  .top-voice__list {
    margin-top: 3.5rem;
    gap: 7.4rem;
    flex-direction: row;
  }
  .top-voice__list--item {
    width: calc((100% - 7.4rem) / 2);
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
  }
  .top-voice__list--item .txt {
    padding: 1.5rem 2.3rem 2.8rem 2.3rem;
  }
  .top-voice__list--item .txt .title {
    font-size: 2.4rem;
    line-height: 1.4166666667;
  }
  .top-voice__list--item .txt .body {
    margin-top: 1.3rem;
  }
  .top-voice__list--item .cat-wrap {
    margin-top: 2rem;
    gap: 1rem;
  }
  .top-voice__list--item .cat-wrap .cat {
    font-size: 1.4rem;
    line-height: 2.0714285714;
    padding: 0 4.2rem;
  }
  .top-voice__list--item:first-of-type {
    animation-delay: 1s;
  }
  .top-voice__list--item:last-of-type {
    animation-delay: 1.3s;
  }
}
/* Business
----------------------------------------------------*/
.top-business {
  padding: 4.7rem 0 5.6rem 0;
  background-color: var(--main-color02);
  color: #fff;
}
.top-business .sec-head--title span {
  color: #fff;
}
.top-business .sec-head p {
  width: 95%;
  max-width: initial;
}
.top-business .sec-head .link-arrow a {
  color: #fff;
}
.top-business__list {
  position: relative;
  margin-top: 3rem;
  display: flex;
  flex-wrap: wrap;
  gap: 1.6rem;
  justify-content: center;
  align-items: stretch;
  flex-direction: column;
}
.top-business__list--item {
  aspect-ratio: 342/138;
  width: 100%;
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  -ms-border-radius: 1rem;
  -o-border-radius: 1rem;
  overflow: hidden;
  position: relative;
}
.top-business__list--item a {
  display: block;
  height: 100%;
}
.top-business__list--item a::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #484848;
  opacity: 0.44;
  z-index: 0;
  transition: 0.3s;
}
.top-business__list--item a figure img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  object-position: 50% 50%;
  transform: scale(1);
  transition: 0.3s;
}
.top-business__list--item a h3 {
  color: #fff;
  position: absolute;
  bottom: 2.4rem;
  left: 2.2rem;
  font-size: 1.8rem;
  line-height: 1.4444444444;
  font-weight: 500;
  width: 100%;
  z-index: 1;
}
.top-business__list--item a h3::before, .top-business__list--item a h3::after {
  content: "";
  position: absolute;
}
.top-business__list--item a h3::before {
  width: 4rem;
  aspect-ratio: 100/100;
  border: 1px solid #fff;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  right: 4rem;
  bottom: -0.5rem;
}
.top-business__list--item a h3::after {
  width: 1.9rem;
  height: 0.7rem;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19 7'%3E%3Cg transform='translate(-1101 -1747)'%3E%3Cpath d='M-3344.627,1228h14.3' transform='translate(4445.627 522.5)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3Cpath d='M3.5,0,7,6H0Z' transform='translate(1120 1747) rotate(90)' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  background-size: contain;
  background-repeat: no-repeat;
  right: 4.9rem;
  bottom: 1.1rem;
  transition: 0.3s;
}

/*======================= PC =======================*/
@media screen and (min-width: 768px) {
  .top-business {
    padding: 12rem 0;
  }
  .top-business .sec-head--title span {
    margin-top: 1rem;
  }
  .top-business .sec-head p {
    margin-top: 2rem;
  }
  .top-business .sec-head .link-arrow {
    margin-top: 10rem;
  }
  .top-business .sec-head .link-arrow a:hover {
    color: var(--txt-color);
  }
  .top-business .sec-head .link-arrow a:hover::before {
    background-color: #29A0C4;
  }
  .top-business .sec-head .link-arrow a:hover::after {
    background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19 7'%3E%3Cg transform='translate(-1101 -1747)'%3E%3Cpath d='M-3344.627,1228h14.3' transform='translate(4445.627 522.5)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3Cpath d='M3.5,0,7,6H0Z' transform='translate(1120 1747) rotate(90)' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
  }
  .top-business__list {
    margin-top: 10.3rem;
    gap: 2rem;
    flex-direction: row;
  }
  .top-business__list--item {
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
    aspect-ratio: 328/180;
    width: calc((100% - 4rem) / 3);
  }
  .top-business__list--item a h3 {
    bottom: 2.4rem;
    left: 2.2rem;
    font-size: 2rem;
    line-height: 1.45;
    z-index: 10;
  }
  .top-business__list--item a h3::before {
    right: 4.2rem;
  }
  .top-business__list--item a h3::after {
    right: 5.1rem;
  }
  .top-business__list--item a:hover figure img {
    transform: scale(1.2);
  }
  .top-business__list--item a:hover h3::after {
    right: 4.8rem;
  }
  .top-business__list--item:first-of-type {
    animation-delay: 1s;
  }
  .top-business__list--item:nth-of-type(2) {
    animation-delay: 1.3s;
  }
  .top-business__list--item:nth-of-type(3) {
    animation-delay: 1.6s;
  }
  .top-business__list--item:nth-of-type(4) {
    animation-delay: 1.9s;
  }
  .top-business__list--item:nth-of-type(5) {
    animation-delay: 2.2s;
  }
  .top-business__list--item:nth-of-type(6) {
    animation-delay: 2.5s;
  }
  .top-business__list--item:nth-of-type(7) {
    animation-delay: 2.8s;
  }
  .top-business__list--item:nth-of-type(8) {
    animation-delay: 3.1s;
  }
  .top-business__list--item:last-of-type {
    animation-delay: 3.4s;
  }
}
/* Company
----------------------------------------------------*/
.top-company {
  padding-top: 7rem;
  width: 100%;
  overflow-x: hidden;
}
.top-company .wrap {
  padding-top: 2.8rem;
  background-image: url(../img/top/sp/company.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  padding-bottom: 23.8rem;
  position: relative;
}
.top-company .wrap::after {
  content: "";
  background-color: #fff;
  border-radius: 0 0 2rem 0;
  -webkit-border-radius: 0 0 2rem 0;
  -moz-border-radius: 0 0 2rem 0;
  -ms-border-radius: 0 0 2rem 0;
  -o-border-radius: 0 0 2rem 0;
  position: absolute;
  right: 14.6666666667%;
  top: 0;
  height: 29.1rem;
  width: 100vw;
  z-index: 0;
  box-shadow: 1rem 0.8rem 0.6rem rgba(0, 0, 0, 0.16);
}
.top-company .inner {
  position: relative;
  z-index: 10;
}
.top-company .sec-head {
  width: 75.2186588921%;
}

/*======================= PC =======================*/
@media screen and (min-width: 768px) {
  .top-company {
    margin-top: 0;
    padding-top: 5.8rem;
    background-color: #fff;
  }
  .top-company .wrap {
    padding: 8.1rem 0 23rem 0;
    background-image: url(../img/top/company.jpg);
    position: relative;
  }
  .top-company .wrap::after {
    border-radius: 0 0 2rem 0;
    -webkit-border-radius: 0 0 2rem 0;
    -moz-border-radius: 0 0 2rem 0;
    -ms-border-radius: 0 0 2rem 0;
    -o-border-radius: 0 0 2rem 0;
    position: absolute;
    right: 50%;
    top: 0;
    height: 46.9rem;
    width: 100vw;
    z-index: 0;
    box-shadow: 1rem 0.8rem 0.6rem rgba(0, 0, 0, 0.16);
  }
  .top-company .sec-head {
    width: 42.2rem;
  }
  .top-company .sec-head--title span {
    margin-top: 1rem;
  }
  .top-company .sec-head p {
    margin-top: 3.7rem;
  }
  .top-company .sec-head .link-arrow {
    position: static;
    margin-top: 7rem;
  }
  .top-company .sec-head .link-arrow a {
    padding-right: 7.5rem;
  }
}
/* Recruit
----------------------------------------------------*/
.top-recruit {
  padding-top: 1.6rem;
}
.top-recruit .inner {
  background-image: url(../img/top/sp/recruit.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  -ms-border-radius: 1rem;
  -o-border-radius: 1rem;
  overflow: hidden;
  aspect-ratio: 343/490;
  position: relative;
}
.top-recruit .inner .block {
  width: 66.6209912536%;
  margin: 38% auto 0 auto;
}
.top-recruit .inner .block .title {
  color: #fff;
  font-family: "Outfit", sans-serif;
  font-size: 3.8rem;
  line-height: 1.2631578947;
  font-weight: 400;
  text-align: center;
}
.top-recruit .inner .block img {
  display: block;
  margin-top: 0.5rem;
}
.top-recruit .inner .block .btn {
  margin: 3.65rem auto 0 auto;
  width: 16.8rem;
  aspect-ratio: 168/44;
}
.top-recruit .inner .block .btn a {
  box-shadow: 0 0.3rem 1.6rem rgba(0, 0, 0, 0.16);
  font-size: 1.4rem;
  line-height: 1.4285714286;
  font-weight: 600;
}

/*======================= PC =======================*/
@media screen and (min-width: 768px) {
  .top-recruit {
    padding-top: 6.1rem;
  }
  .top-recruit .inner {
    background-image: url(../img/top/recruit.jpg);
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
    aspect-ratio: 1246/596;
  }
  .top-recruit .inner .block {
    width: fit-content;
    margin: 11.3rem auto 0 auto;
  }
  .top-recruit .inner .block .title {
    font-size: 6.8rem;
    line-height: 1.2647058824;
  }
  .top-recruit .inner .block img {
    margin-top: 3.4rem;
  }
  .top-recruit .inner .block .btn {
    margin: 7.2rem auto 0 auto;
    width: 21.6rem;
    aspect-ratio: 168/44;
  }
  .top-recruit .inner .block .btn a {
    font-size: 1.8rem;
    line-height: 1.4444444444;
  }
  .top-recruit .inner .block .btn a::before {
    width: 4rem;
  }
  .top-recruit .inner .block .btn a::after {
    width: 1.9rem;
    height: 0.7rem;
    right: 1.3rem;
  }
  .top-recruit .inner .block .btn a:hover::after {
    right: 0.9rem;
  }
}
/* Instagram
----------------------------------------------------*/
.top-sns {
  padding: 5.1rem 0 6.8rem 0;
}
.top-sns #sb_instagram {
  margin-top: 3rem;
}

/*======================= PC =======================*/
@media screen and (min-width: 768px) {
  .top-sns {
    padding: 6.6rem 0 10.9rem 0;
  }
  .top-sns .sec-head--title span {
    margin-top: 1rem;
  }
  .top-sns #sb_instagram {
    margin-top: 7rem;
  }
}
/* バナーエリア
----------------------------------------------------*/
.top-cta {
  margin-bottom: 2.1rem;
}
.top-cta .inner {
  display: flex;
  flex-wrap: wrap;
  gap: 1.4rem;
  justify-content: center;
  align-items: stretch;
  flex-direction: column;
}
.top-cta__newsletter, .top-cta__line, .top-cta__instagram {
  box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
  border-radius: 2rem;
  -webkit-border-radius: 2rem;
  -moz-border-radius: 2rem;
  -ms-border-radius: 2rem;
  -o-border-radius: 2rem;
}
.top-cta__line {
  background-color: var(--line);
  color: #fff;
  padding: 1.6rem 4.9rem 0 2rem;
  aspect-ratio: 334/212;
  overflow: hidden;
}
.top-cta__line h2 {
  font-size: 3rem;
  line-height: 1.2666666667;
  font-weight: 700;
  text-align: center;
  position: relative;
  z-index: 10;
}
.top-cta__line p {
  font-size: 1.5rem;
  line-height: 1.6666666667;
  font-weight: 500;
  text-align: center;
  position: relative;
  z-index: 10;
}
.top-cta__line .block {
  display: flex;
  flex-wrap: nowrap;
  gap: 0;
  justify-content: center;
  align-items: flex-start;
}
.top-cta__line .block figure {
  width: 55.4744525547%;
  margin-top: -2rem;
  position: relative;
  z-index: 0;
}
.top-cta__line .block .txt {
  font-size: 1.9rem;
  line-height: 1;
  font-weight: 500;
  position: relative;
}
.top-cta__line .block .txt span {
  display: block;
  text-align: center;
  font-size: 2.3rem;
  line-height: 1.347826087;
  font-weight: 500;
  margin-bottom: 1.2rem;
}
.top-cta__line .block .txt::before, .top-cta__line .block .txt::after {
  content: "";
  position: absolute;
}
.top-cta__line .block .txt::before {
  width: 3.1rem;
  aspect-ratio: 30/30;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  border: 1px solid #fff;
  right: -0.4rem;
  bottom: -1rem;
}
.top-cta__line .block .txt::after {
  width: 1.42rem;
  height: 0.6rem;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19 7'%3E%3Cg transform='translate(-1101 -1747)'%3E%3Cpath d='M-3344.627,1228h14.3' transform='translate(4445.627 522.5)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3Cpath d='M3.5,0,7,6H0Z' transform='translate(1120 1747) rotate(90)' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  background-size: contain;
  right: 0.4rem;
  bottom: 0.3rem;
}
.top-cta__instagram {
  background-color: #F2F2F2;
  padding: 2.1rem 0.8rem 3rem 0.8rem;
}
.top-cta__instagram .title {
  display: flex;
  flex-wrap: nowrap;
  gap: 1rem;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.top-cta__instagram .title figure {
  width: 3.8rem;
}
.top-cta__instagram .title p {
  font-size: 3rem;
  line-height: 1.2666666667;
  font-weight: 700;
  font-family: "Outfit", sans-serif;
}
.top-cta__instagram p {
  font-size: 1.5rem;
  line-height: 1;
  font-weight: 500;
  text-align: center;
  margin-top: 0.8rem;
}
.top-cta__instagram .block {
  margin-top: 3.4rem;
}
.top-cta__instagram .block .txt {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 0.4rem;
  justify-content: flex-start;
  align-items: flex-start;
}
.top-cta__instagram .block .btn {
  width: calc((100% - 0.4rem) / 2);
}
.top-cta__instagram .block .btn a {
  color: inherit;
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: 400;
  border: 1px solid var(--txt-color);
  width: 100%;
  justify-content: flex-start;
  padding-left: 1.8rem;
}
.top-cta__instagram .block .btn a::before {
  border-color: #fff;
  background-color: #fff;
}
.top-cta__instagram .block .btn a::after {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19 7'%3E%3Cg transform='translate(-1101 -1747)'%3E%3Cpath d='M-3344.627,1228h14.3' transform='translate(4445.627 522.5)' fill='none' stroke='%23484848' stroke-width='1'/%3E%3Cpath d='M3.5,0,7,6H0Z' transform='translate(1120 1747) rotate(90)' fill='%23484848'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  right: 1.3rem;
}

/*======================= PC =======================*/
@media screen and (min-width: 768px) {
  .top-cta {
    margin-bottom: 6.7rem;
  }
  .top-cta .inner {
    gap: 2.2rem;
    flex-direction: row;
  }
  .top-cta__newsletter, .top-cta__line, .top-cta__instagram {
    box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
    width: calc((100% - 4.4rem) / 3);
  }
  .top-cta__line {
    aspect-ratio: 401/240;
    transition: 0.3s;
  }
  .top-cta__line h2,
  .top-cta__line p {
    transform: translateX(1.5rem);
  }
  .top-cta__line a:hover {
    opacity: 1;
  }
  .top-cta__line:hover {
    opacity: 0.8;
  }
  .top-cta__instagram {
    padding: 2.1rem 2.9rem 3.8rem 2.9rem;
  }
  .top-cta__instagram .block {
    margin-top: 1.9rem;
  }
  .top-cta__instagram .block .txt {
    gap: 0.9rem 1.4rem;
  }
  .top-cta__instagram .block .btn {
    width: calc((100% - 1.4rem) / 2);
  }
  .top-cta__instagram .block .btn a:hover {
    background-color: var(--txt-color);
    color: #fff;
  }
  .top-cta__instagram .block .btn a:hover::after {
    right: 1rem;
  }
}
/*====================================================
//// 会社情報
====================================================*/
.page-business .page-head__title {
  padding-bottom: 2rem;
}
.page-business .page-head .lead {
  width: 98%;
  margin: 0 0 0 auto;
  padding-bottom: 6rem;
}
.page-business .inner {
  position: static;
}
.page-business__fix {
  background-color: #fff;
  position: sticky;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 99;
  padding-bottom: 1rem;
}
.page-business__fix .inner {
  width: 91.4666666667% !important;
  display: flex;
  flex-wrap: nowrap;
  gap: 0.8rem;
  justify-content: center;
  align-items: center;
}
.page-business__fix--btn {
  width: calc((100% - 0.8rem) / 2);
}
.page-business__fix--btn.grd-blue a {
  font-size: 1.2rem;
  line-height: 1.4166666667;
  font-weight: 600;
}
.page-business__fix--btn.grd-green a {
  flex-direction: column;
  font-size: 1.4rem;
  line-height: 1.4285714286;
  font-weight: 600;
}
.page-business__fix--btn.grd-green a span {
  display: block;
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 400;
}
.page-business_contents {
  background-image: linear-gradient(180deg, #e8fafc, #b9f0ea);
  padding-top: 2.6rem;
}
.page-business_contents .inner {
  width: 100%;
  position: relative;
  max-width: 124.6rem;
}
.page-business_contents__list {
  background-color: #fff;
  padding: 4.9rem 1.6rem 3.2rem 1.6rem;
  margin-top: 3rem;
  position: relative;
  overflow-x: hidden;
  display: flex;
  flex-wrap: nowrap;
  gap: 3.5rem;
  justify-content: flex-start;
  align-items: flex-start;
}
.page-business_contents__list:first-of-type {
  margin-top: 0;
}
.page-business_contents__list .block {
  width: calc(100% - 3.5rem - 1.8rem);
}
.page-business_contents__list .f-bottom {
  margin-top: 3.8rem;
}
.page-business_contents__list .f-bottom.box {
  border-top: 1px solid #C6C6C6;
  padding-top: 3rem;
}
.page-business_contents__list .f-bottom.box .f-bottom__btn--item {
  margin-top: 1.5rem;
}
.page-business_contents__list .f-bottom__banner {
  width: 86.5517241379%;
  margin-left: 2rem;
}
.page-business_contents__list .f-bottom__btn {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  justify-content: flex-start;
  align-items: center;
  margin-top: 1.4rem;
}
.page-business_contents__list .f-bottom__btn--item {
  width: calc((100% - 1.5rem) / 2);
}
.page-business_contents__list .f-bottom__btn--item a {
  color: #919191;
  box-shadow: 0 0.3rem 1rem rgba(0, 0, 0, 0.25);
}
.page-business_contents__list .f-bottom__btn--item a::before {
  border-color: var(--main-color01);
  width: 2.6rem;
}
.page-business_contents__list .f-bottom__btn--item a::after {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19 7'%3E%3Cg transform='translate(-1101 -1747)'%3E%3Cpath d='M-3344.627,1228h14.3' transform='translate(4445.627 522.5)' fill='none' stroke='%2329A0C4' stroke-width='1'/%3E%3Cpath d='M3.5,0,7,6H0Z' transform='translate(1120 1747) rotate(90)' fill='%2329A0C4'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  width: 1.227rem;
  right: 1.1rem;
}
.page-business_contents__list .f-bottom__img {
  overflow: hidden;
  aspect-ratio: 483/271;
  max-width: 48.3rem;
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  -ms-border-radius: 1rem;
  -o-border-radius: 1rem;
}
.page-business_contents__list .f-bottom__txt.txt08 {
  padding-bottom: 4.6rem;
}
.page-business_contents__list .f-bottom.ev {
  border-top: 1px solid #C6C6C6;
  padding-top: 4.4rem;
}
.page-business_contents__list .f-bottom.ev .block {
  margin-bottom: 5.7rem;
}
.page-business_contents__list .f-bottom.ev h3 {
  color: var(--main-color01);
  font-size: 1.8rem;
  line-height: 1.7222222222;
  font-weight: 400;
  border-bottom: 2px solid var(--main-color01);
}
.page-business_contents__list .f-bottom.ev p {
  font-size: 1.4rem;
  line-height: 2;
  font-weight: 400;
  margin-top: 1.4rem;
}
.page-business_contents__list .f-bottom.ev .img {
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  -ms-border-radius: 1rem;
  -o-border-radius: 1rem;
  overflow: hidden;
  margin-top: 2rem;
}
.page-business_contents__list .f-bottom.ev .btn a {
  font-size: 1.8rem;
  line-height: 1.4444444444;
  font-weight: 600;
  aspect-ratio: 259/56;
}
.page-business_contents__list .f-bottom.inspection {
  border-top: 1px solid #C6C6C6;
  padding-top: 4.4rem;
}
.page-business_contents__list .f-bottom.inspection .block {
  margin-bottom: 5.7rem;
}
.page-business_contents__list .f-bottom.inspection h3 {
  font-size: 2.4rem;
  line-height: 1.1666666667;
  font-weight: 400;
  margin-bottom: 3.2rem;
}
.page-business_contents__list .f-bottom.inspection h4 {
  color: var(--main-color01);
  font-size: 1.8rem;
  line-height: 1.7222222222;
  font-weight: 400;
  border-bottom: 2px solid var(--main-color01);
}
.page-business_contents__list .f-bottom.inspection p {
  font-size: 1.4rem;
  line-height: 2;
  font-weight: 400;
  margin-top: 1.4rem;
}
.page-business_contents__list .f-bottom.inspection .img {
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  -ms-border-radius: 1rem;
  -o-border-radius: 1rem;
  overflow: hidden;
  margin-top: 2rem;
}
.page-business_contents__list .txt .head .num {
  font-size: 6.6rem;
  line-height: 1;
  font-weight: 400;
  font-family: "Outfit", sans-serif;
  color: var(--light-blue);
  position: absolute;
  left: 0;
  top: 0;
}
.page-business_contents__list .txt .head h2 {
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.page-business_contents__list .txt .head h2 span {
  font-size: 2.4rem;
  line-height: 1.1666666667;
  font-weight: 400;
  color: var(--txt-color);
}
.page-business_contents__list .txt .head .lead {
  font-size: 1.8rem;
  line-height: 1.7222222222;
  font-weight: 400;
  color: var(--main-color01);
  margin-top: 1.6rem;
}
.page-business_contents__list .txt p {
  font-size: 1.4rem;
  line-height: 2;
  font-weight: 400;
  margin-top: 1.8rem;
}
.page-business_contents__list .txt .btn a {
  max-width: 25.9rem;
  aspect-ratio: 259/56;
}
.page-business_contents__list .txt .btn a:hover::after {
  right: 1.5rem;
}
.page-business_contents__list .img-list {
  max-width: 100%;
}
.page-business_contents__list .img-list .slider-main li,
.page-business_contents__list .img-list .slider-thumb li {
  overflow: hidden;
}
.page-business_contents__list .img-list .slider-main {
  margin-top: 2.4rem;
}
.page-business_contents__list .img-list .slider-main li {
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  -ms-border-radius: 1rem;
  -o-border-radius: 1rem;
  overflow: hidden;
  aspect-ratio: 541/304;
}
.page-business_contents__list .img-list .slider-main li img {
  object-fit: cover;
  object-position: 50% 50%;
  width: 100%;
  height: 100%;
}
.page-business_contents__list .img-list .slider-thumb {
  margin-top: 1.4rem;
  width: 100%;
}
.page-business_contents__list .img-list .slider-thumb li {
  aspect-ratio: 65/37;
  border-radius: 0.6rem;
  -webkit-border-radius: 0.6rem;
  -moz-border-radius: 0.6rem;
  -ms-border-radius: 0.6rem;
  -o-border-radius: 0.6rem;
}
.page-business_contents__list .img-list .slider-thumb li img {
  object-fit: cover;
  object-position: 50% 50%;
  width: 100%;
  height: 100%;
}
.page-business_contents__list .img-list .slider-thumb li:not(.swiper-slide-thumb-active) {
  position: relative;
}
.page-business_contents__list .img-list .slider-thumb li:not(.swiper-slide-thumb-active)::after {
  content: "";
  background-color: rgba(0, 112, 145, 0.4);
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.page-business_contents__menu {
  z-index: 99;
  width: 1.8rem;
  margin: 0 1.6rem 0 auto;
  height: auto;
  visibility: hidden;
  position: absolute;
  left: 0;
  right: auto !important;
  transform: translateX(-1rem);
}
.page-business_contents__menu.is-ready {
  visibility: visible;
  margin: 0 !important;
  right: auto !important;
}
.page-business_contents__menu ul li {
  color: var(--main-color01);
  position: relative;
  margin-bottom: 1.6rem;
  transition: 0.5s;
}
.page-business_contents__menu ul li .num {
  font-family: "Outfit", sans-serif;
  font-size: 1.4rem;
  line-height: 1;
  font-weight: 400;
}
.page-business_contents__menu ul li .name {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  writing-mode: vertical-lr;
  transition: 0.5s;
  font-size: 1rem;
  line-height: 1;
  font-weight: 400;
  padding-left: 0.2rem;
  margin-top: 0.8rem;
  height: 0;
  max-height: 0;
  opacity: 0;
  transition: max-height 0.5s ease, max-width 0.5s ease, opacity 0.5s ease;
}
.page-business_contents__menu ul li.active .name {
  height: auto;
  max-height: 150px;
  opacity: 1;
}
.page-business_contents__menu.active ul li .name {
  max-height: initial;
}

/*======================= PC =======================*/
@media screen and (min-width: 768px) {
  .page-business .page-head__title {
    padding-bottom: 3rem;
  }
  .page-business .page-head .lead {
    width: 100%;
    padding-bottom: 7.1rem;
  }
  .page-business_contents {
    padding-top: 6.5rem;
    padding-bottom: 7.3rem;
  }
  .page-business_contents .inner {
    width: 91.4666666667%;
    position: static !important;
  }
  .page-business_contents__list {
    padding: 9.5rem 6.5rem 5.1rem 8.9085072231%;
    margin: 6rem 4.6rem 0 0;
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
    max-width: 120rem;
    gap: 4.5rem;
    display: block;
  }
  .page-business_contents__list .block {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 6.5rem;
    justify-content: space-between;
    align-items: flex-start;
  }
  .page-business_contents__list .f-bottom {
    flex-basis: 100%;
    display: flex;
    flex-wrap: nowrap;
    gap: 2.9rem;
    justify-content: flex-start;
    align-items: center;
  }
  .page-business_contents__list .f-bottom.box {
    gap: 4.2rem;
    padding-top: 6.9rem;
    margin-top: 0;
    padding-bottom: 3.5rem;
  }
  .page-business_contents__list .f-bottom.box .f-bottom__btn--item {
    margin-top: 2.8rem;
  }
  .page-business_contents__list .f-bottom.box .f-bottom__btn--item a {
    color: var(--main-color01);
    font-size: 1.8rem;
    line-height: 1.4444444444;
    font-weight: 600;
    width: 21.6rem;
  }
  .page-business_contents__list .f-bottom__banner {
    max-width: 25.1rem;
    margin-left: 0;
  }
  .page-business_contents__list .f-bottom__btn {
    gap: 2rem;
    flex-wrap: nowrap;
    margin-top: 0;
    width: 100%;
  }
  .page-business_contents__list .f-bottom__btn--item {
    width: 100%;
    max-width: 18.2rem;
  }
  .page-business_contents__list .f-bottom__btn--item a {
    font-size: 1.4rem;
    line-height: 1.4285714286;
    font-weight: 600;
  }
  .page-business_contents__list .f-bottom__btn--item a::before {
    width: 3.3rem;
    right: 0.7rem;
  }
  .page-business_contents__list .f-bottom__btn--item a::after {
    width: 1.588rem;
    right: 1.5rem;
    transition: 0.3s;
  }
  .page-business_contents__list .f-bottom__btn--item a:hover::after {
    right: 1.1rem;
  }
  .page-business_contents__list .f-bottom__img {
    width: 47.16796875%;
    max-width: 48.3rem;
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
  }
  .page-business_contents__list .f-bottom__img.img08 {
    border: 1px solid #C6C6C6;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
  }
  .page-business_contents__list .f-bottom__img.img08 img {
    width: 83.6438923395%;
  }
  .page-business_contents__list .f-bottom__img.img08 a {
    pointer-events: none;
  }
  .page-business_contents__list .f-bottom__txt {
    width: calc(52.83203125% - 4.2rem);
  }
  .page-business_contents__list .f-bottom__txt .txt {
    width: 100%;
  }
  .page-business_contents__list .f-bottom.ev {
    padding-top: 4rem;
    align-items: flex-start;
  }
  .page-business_contents__list .f-bottom.ev .block {
    margin-bottom: 0;
    width: calc((100% - 13rem) / 3);
    display: block;
    min-height: 30rem;
  }
  .page-business_contents__list .f-bottom.ev .block .txt {
    width: 100%;
    min-height: 30rem;
  }
  .page-business_contents__list .f-bottom.ev .block:last-of-type .img {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .page-business_contents__list .f-bottom.ev .block:last-of-type .img .btn {
    width: 25.9rem;
  }
  .page-business_contents__list .f-bottom.ev h3 {
    font-size: 2.4rem;
    line-height: 1.5416666667;
    width: 100%;
  }
  .page-business_contents__list .f-bottom.ev p {
    font-size: 1.6rem;
    line-height: 1.875;
    margin-top: 1.8rem;
  }
  .page-business_contents__list .f-bottom.ev .img {
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
    overflow: hidden;
    margin-top: 2rem;
  }
  .page-business_contents__list .f-bottom.ev .btn a {
    font-size: 1.8rem;
    line-height: 1.4444444444;
    font-weight: 600;
    aspect-ratio: 259/56;
  }
  .page-business_contents__list .f-bottom.inspection {
    padding-top: 4rem;
    display: block;
  }
  .page-business_contents__list .f-bottom.inspection .wrap {
    display: flex;
    flex-wrap: nowrap;
    gap: 6.5rem;
    justify-content: center;
    align-items: flex-start;
  }
  .page-business_contents__list .f-bottom.inspection .block {
    margin-bottom: 0;
    width: calc((100% - 13rem) / 3);
    display: block;
  }
  .page-business_contents__list .f-bottom.inspection .block .txt {
    width: 100%;
    min-height: 30rem;
  }
  .page-business_contents__list .f-bottom.inspection h3 {
    font-size: 4rem;
    line-height: 1.15;
    word-break: fit-content;
  }
  .page-business_contents__list .f-bottom.inspection h4 {
    font-size: 2.4rem;
    line-height: 1.5416666667;
    width: 100%;
  }
  .page-business_contents__list .f-bottom.inspection p {
    font-size: 1.6rem;
    line-height: 1.875;
    margin-top: 1.8rem;
  }
  .page-business_contents__list .f-bottom.inspection .img {
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
    overflow: hidden;
    margin-top: 2rem;
  }
  .page-business_contents__list .txt {
    width: 52.83203125%;
  }
  .page-business_contents__list .txt .head .num {
    font-size: 9rem;
    line-height: 1;
    left: 1.2rem;
    top: 1.7rem;
  }
  .page-business_contents__list .txt .head h2 span {
    font-size: 4rem;
    line-height: 1.15;
  }
  .page-business_contents__list .txt .head .lead {
    font-size: 2.4rem;
    line-height: 1.5416666667;
    margin-top: 4.4rem;
  }
  .page-business_contents__list .txt p {
    font-size: 1.6rem;
    line-height: 1.875;
    margin-top: 4rem;
  }
  .page-business_contents__list .txt .btn {
    margin-top: 3rem;
  }
  .page-business_contents__list .txt .btn a {
    font-size: 1.8rem;
    line-height: 1.4444444444;
    font-weight: 600;
  }
  .page-business_contents__list .txt .btn a::before {
    right: 1rem;
    width: 4rem;
  }
  .page-business_contents__list .txt .btn a::after {
    width: 1.9rem;
    right: 1.9rem;
  }
  .page-business_contents__list .img-list {
    width: calc(47.16796875% - 6.5rem);
    transform: translateY(-2.6rem);
  }
  .page-business_contents__list .img-list .slider-main {
    margin-top: 2.4rem;
  }
  .page-business_contents__list .img-list .slider-main li {
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
  }
  .page-business_contents__list .img-list .slider-thumb {
    margin-top: 1.7rem;
  }
  .page-business_contents__list .img-list .slider-thumb li {
    border-radius: 1rem;
    -webkit-border-radius: 1rem;
    -moz-border-radius: 1rem;
    -ms-border-radius: 1rem;
    -o-border-radius: 1rem;
    transition: 0.3s;
  }
  .page-business_contents__list .img-list .slider-thumb li:hover {
    cursor: pointer;
    opacity: 0.8;
  }
  .page-business_contents__menu {
    width: 2rem;
    margin: 0 1.6rem 0 auto;
    transform: none;
  }
  .page-business_contents__menu ul li {
    color: var(--main-color01);
    position: relative;
    margin-bottom: 1.1rem;
  }
  .page-business_contents__menu ul li:last-child {
    margin-bottom: 0;
  }
  .page-business_contents__menu ul li .num {
    font-size: 1.6rem;
    line-height: 1;
  }
  .page-business_contents__menu ul li .name {
    display: block;
    overflow: hidden;
    white-space: nowrap;
    font-size: 1.2rem;
    line-height: 1;
    padding-left: 0.2rem;
    margin-top: 0.8rem;
    max-height: 0;
    opacity: 0;
    transition: max-height 0.5s ease, max-width 0.5s ease, opacity 0.5s ease;
  }
  .page-business_contents__menu ul li a {
    display: block;
  }
  .page-business_contents__menu ul li.active .name {
    max-height: 150px;
    opacity: 1;
  }
}
.no-article {
  height: 50vh;
  display: flex;
  justify-content: center;
  align-items: center;
}

.page-media .in-page_link li:first-child {
  padding: 1rem 1.75rem;
  font-size: 1.4rem;
  line-height: 1.4285714286;
  font-weight: 400;
  position: relative;
}
.page-media__list li {
  padding: 3rem 0;
  border-bottom: 1px solid #C6C6C6;
}
.page-media__list li:last-child {
  border: none;
}
.page-media__list li a {
  display: flex;
  flex-wrap: nowrap;
  gap: 1.5rem;
  justify-content: center;
  align-items: flex-start;
}
.page-media__list li a figure {
  width: 47.6744186047%;
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  -ms-border-radius: 1rem;
  -o-border-radius: 1rem;
  overflow: hidden;
}
.page-media__list li a .txt {
  width: calc(100% - 1.5rem - 47.6744186047%);
}
.page-media__list li a .txt .date time {
  display: block;
  color: #7C7C7C;
  font-size: 1.2rem;
  line-height: 1;
  font-weight: 500;
}
.page-media__list li a .txt .date .cat {
  font-size: 1.1rem;
  line-height: 1.98;
  font-weight: 400;
  margin-top: 0.8rem;
  padding: 0 2.6rem;
}
.page-media__list li a .txt .title {
  font-size: 1.4rem;
  line-height: 1.5714285714;
  font-weight: 500;
}
.page-media .pager.list ul {
  justify-content: center;
}
.page-media .pager.list ul li:not(:first-child, :last-child) {
  width: fit-content;
  padding: 0 1rem;
}
.page-media .pager.list ul li:first-child, .page-media .pager.list ul li:last-child {
  margin: 0 2rem;
}

/*======================= PC =======================*/
@media screen and (min-width: 768px) {
  .media-archive .in-page_link {
    justify-content: flex-start !important;
    gap: 0 !important;
  }
  .media-archive .in-page_link li {
    width: 16.6666666667%;
  }
  .media-archive .in-page_link li:first-child {
    border-left: 1px solid #C6C6C6;
    border-right: 1px solid #C6C6C6;
    padding: 1rem 1.75rem;
    font-size: 1.4rem;
    line-height: 1.4285714286;
    font-weight: 400;
    position: relative;
  }
  .page-media__list {
    display: flex;
    flex-wrap: wrap;
    gap: 6rem 2.6rem;
    justify-content: flex-start;
    align-items: flex-start;
    margin-top: 5.65rem;
    margin-bottom: 7.8rem;
  }
  .page-media__list li {
    width: calc((100% - 5.2rem) / 3);
    padding: 0;
    border: none;
  }
  .page-media__list li a {
    display: block;
  }
  .page-media__list li a figure {
    width: 100%;
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
    aspect-ratio: 324/216;
  }
  .page-media__list li a figure img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    object-position: 50% 50%;
    transform: scale(1);
    transition: 0.3s;
  }
  .page-media__list li a:hover figure img {
    transform: scale(1.1);
  }
  .page-media__list li a .txt {
    width: 100%;
  }
  .page-media__list li a .txt .date {
    margin-top: 2.3rem;
    display: flex;
    flex-wrap: nowrap;
    gap: 1.5rem;
    justify-content: flex-start;
    align-items: center;
  }
  .page-media__list li a .txt .date time {
    font-size: 1.2rem;
    line-height: 2.1666666667;
    font-weight: 500;
  }
  .page-media__list li a .txt .date .cat {
    font-size: 1.2rem;
    line-height: 2.1666666667;
    padding: 0 3.3rem;
    margin-top: 0;
  }
  .page-media__list li a .txt .title {
    font-size: 1.8rem;
    line-height: 1.5555555556;
    margin-top: 1.11rem;
  }
  .page-media__list li a .txt .more {
    margin-top: 1.9rem;
  }
}
/*-------------------- 記事詳細 --------------------*/
.page-media_detail .article-main .date {
  display: flex;
  gap: 1.5rem;
  margin-top: 3.4rem;
}
.page-media_detail .article-main .date time {
  font-size: 1.2rem;
  line-height: 2;
  font-weight: 500;
  color: #7C7C7C;
}
.page-media_detail .article-main .date .cat {
  font-size: 1.1rem;
  line-height: 2.1818181818;
  font-weight: 400;
}
.page-media_detail h1 {
  font-size: 2rem;
  line-height: 1.65;
  font-weight: 400;
  margin-top: 1.62rem;
}
.page-media_detail .catch-img {
  width: 100%;
  aspect-ratio: 342/227;
  overflow: hidden;
  margin-top: 2rem;
}
.page-media_detail .catch-img img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  object-position: 50% 50%;
}
.page-media_detail .table-contents {
  margin-top: 2.6rem;
  border: 1px solid #C6C6C6;
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  -ms-border-radius: 1rem;
  -o-border-radius: 1rem;
  padding: 1.8rem 2rem;
}
.page-media_detail .table-contents h2 {
  color: var(--main-color01);
  font-size: 1.8rem;
  line-height: 1;
  font-weight: 500;
}
.page-media_detail .table-contents h2::before {
  content: none;
}
.page-media_detail .table-contents__list {
  margin-top: 1.5rem;
}
.page-media_detail .table-contents__list li {
  margin-bottom: 0.7rem;
}
.page-media_detail .table-contents__list li a {
  position: relative;
  padding-left: 2.3rem;
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: 500;
}
.page-media_detail .table-contents__list li a::before {
  content: "";
  width: 1.6rem;
  height: 1.6rem;
  background-color: #D3F1F4;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.page-media_detail article h2:not(.table-contents__title) {
  margin-top: 4.6rem;
  font-size: 1.8rem;
  line-height: 1.5;
  font-weight: 500;
  padding-left: 1.5rem;
  position: relative;
}
.page-media_detail article h2:not(.table-contents__title)::before {
  content: "";
  background-color: var(--main-color01);
  width: 0.6rem;
  height: 2.7rem;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.page-media_detail article p {
  margin-top: 1.8rem;
  font-size: 1.4rem;
  line-height: 2;
  font-weight: 400;
}
.page-media_detail .article-side__newsletter dl {
  width: 90.8571428571%;
  margin: 1.5rem auto 0 auto;
  display: block;
}
.page-media_detail .article-side__newsletter dl dt, .page-media_detail .article-side__newsletter dl dd {
  width: 100%;
  justify-content: flex-start;
}
.page-media_detail .article-side__newsletter dl dt {
  margin-top: 1rem;
}
.page-media_detail .article-side__newsletter dl dd {
  margin-top: 0.5rem;
}
.page-media_detail .article-side__line {
  margin-top: 1.6rem;
}
.page-media_detail .article-side__line a {
  background-color: var(--line);
  color: #fff;
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  -ms-border-radius: 1rem;
  -o-border-radius: 1rem;
  background-image: url(../img/common/icon-line.png);
  background-repeat: no-repeat;
  background-size: 6.3rem auto;
  background-position: 1.9rem 0.7rem;
  aspect-ratio: 344/76;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
  font-size: 1.9rem;
  line-height: 1.3684210526;
  font-weight: 500;
  position: relative;
}
.page-media_detail .article-side__line a::before, .page-media_detail .article-side__line a::after {
  content: "";
  position: absolute;
}
.page-media_detail .article-side__line a::before {
  border: 1px solid #fff;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  width: 3.2rem;
  aspect-ratio: 100/100;
  right: 2.2rem;
  top: 2.2rem;
}
.page-media_detail .article-side__line a::after {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19 7'%3E%3Cg transform='translate(-1101 -1747)'%3E%3Cpath d='M-3344.627,1228h14.3' transform='translate(4445.627 522.5)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3Cpath d='M3.5,0,7,6H0Z' transform='translate(1120 1747) rotate(90)' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  width: 1.642rem;
  height: 0.7rem;
  right: 2.9rem;
  top: 50%;
  transform: translateY(-50%);
}
.page-media_detail .article-side__recommend {
  margin-top: 4.4rem;
  padding-top: 1.8rem;
}
.page-media_detail .article-side__recommend h2 {
  font-size: 2rem;
  line-height: 1.5;
  font-weight: 500;
}
.page-media_detail .article-side__recommend ul {
  margin-top: 3.1rem;
}
.page-media_detail .article-side__recommend ul li {
  border-bottom: 1px solid #C6C6C6;
}
.page-media_detail .article-side__recommend ul li:last-child {
  border-bottom: none;
}
.page-media_detail .article-side__recommend ul li a {
  display: flex;
  flex-wrap: nowrap;
  gap: 1.5rem;
  align-items: flex-start;
  padding: 3rem 0;
}
.page-media_detail .article-side__recommend ul li a figure {
  width: 47.8134110787%;
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  -ms-border-radius: 1rem;
  -o-border-radius: 1rem;
  overflow: hidden;
}
.page-media_detail .article-side__recommend ul li a .txt {
  width: calc(52.1865889213% - 1.5rem);
}
.page-media_detail .article-side__recommend ul li a .txt .date time {
  color: #7C7C7C;
  font-size: 1.2rem;
  line-height: 2.1666666667;
  font-weight: 500;
}
.page-media_detail .article-side__recommend ul li a .txt .date .title {
  font-size: 1.4rem;
  line-height: 1.5714285714;
  font-weight: 500;
}
.page-media_detail__wrap {
  padding-bottom: 2.3rem;
}
.page-media_detail__wrap.voice .article .table-contents__title {
  color: #484848;
  font-size: 1.8rem;
  line-height: 1.4444444444;
  font-weight: 500;
  padding-left: 0;
}
.page-media_detail__wrap.voice .article .table-contents .title {
  font-size: 1.6rem;
  line-height: 1;
  font-weight: 400;
  margin-top: 0.5rem;
  color: var(--main-color01);
}
.page-media_detail__wrap.voice .article .table-contents .body {
  font-size: 1.4rem;
  line-height: 2;
  font-weight: 400;
  margin-top: 0.5rem;
}
.page-media_detail__wrap.voice .article h2 {
  font-size: 1.9rem;
  line-height: 1.6842105263;
  font-weight: 400;
  padding-left: 3.4rem;
}
.page-media_detail__wrap.voice .article h2::before {
  width: 2.6rem;
  height: 0.4rem;
  top: 55%;
}
.page-media_detail__wrap.voice .article p {
  font-size: 1.4rem;
  line-height: 2;
  font-weight: 400;
}

/*======================= PC =======================*/
@media screen and (min-width: 768px) {
  .page-media_detail .article-main .date {
    gap: 2.16rem;
    margin-top: 5rem;
  }
  .page-media_detail__wrap {
    padding-bottom: 2.3rem;
  }
  .page-media_detail__wrap .inner {
    display: flex;
    flex-wrap: wrap;
    gap: 8.5rem;
    justify-content: center;
    align-items: flex-start;
  }
  .page-media_detail__wrap .article-main {
    width: calc(79.9357945425% - 8.5rem);
    order: 1;
    padding-left: 8.9085072231%;
  }
  .page-media_detail__wrap .article-side {
    width: 20.0642054575%;
    order: 2;
  }
  .page-media_detail__wrap .pager {
    order: 3;
    flex-basis: 100%;
  }
  .page-media_detail__wrap .pager ul {
    max-width: 30.7rem;
  }
  .page-media_detail__wrap.voice .article .table-contents__title {
    font-size: 2rem;
    line-height: 1.5;
    font-weight: 400;
  }
  .page-media_detail__wrap.voice .article .table-contents .title {
    font-size: 1.8rem;
    line-height: 1;
    font-weight: 400;
    margin-top: 1.8rem;
  }
  .page-media_detail__wrap.voice .article .table-contents .body {
    font-size: 1.6rem;
    line-height: 1.875;
    font-weight: 400;
    margin-top: 1.2rem;
  }
  .page-media_detail__wrap.voice .article h2 {
    font-size: 2.6rem;
    line-height: 1.5384615385;
    font-weight: 400;
    padding-left: 4.4rem;
  }
  .page-media_detail__wrap.voice .article h2::before {
    width: 3.4rem;
    height: 0.4rem;
    top: 55%;
  }
  .page-media_detail__wrap.voice .article p {
    font-size: 1.6rem;
    line-height: 1.875;
    font-weight: 400;
  }
  .page-media_detail h1 {
    font-size: 3rem;
    line-height: 1.7;
    margin-top: 4rem;
  }
  .page-media_detail .table-contents {
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
    padding: 2.4rem 4.2rem 2.8rem 4.2rem;
    width: 91.25%;
    margin: 5.5rem auto 0 auto;
  }
  .page-media_detail .table-contents h2 {
    font-size: 2.4rem;
    line-height: 1;
  }
  .page-media_detail .table-contents__list {
    margin-top: 1.8rem;
  }
  .page-media_detail .table-contents__list li {
    margin-bottom: 0.7rem;
  }
  .page-media_detail .table-contents__list li a {
    position: relative;
    padding-left: 2.3rem;
    font-size: 1.8rem;
    line-height: 1.5555555556;
  }
  .page-media_detail .table-contents__list li a::before {
    content: "";
    width: 1.6rem;
    height: 1.6rem;
    background-color: #D3F1F4;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
  }
  .page-media_detail article h2:not(.table-contents__title) {
    margin-top: 6rem;
    font-size: 2.4rem;
    line-height: 1.9166666667;
    padding-left: 1.5rem;
  }
  .page-media_detail article p {
    margin-top: 1rem;
    font-size: 1.6rem;
    line-height: 2;
    font-weight: 400;
  }
  .page-media_detail .article-side {
    margin-top: 5rem;
  }
  .page-media_detail .article-side__line {
    margin-top: 2rem;
  }
  .page-media_detail .article-side__line a {
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
    background-size: 7.5rem auto;
    background-position: 0.9rem 1.3rem;
    aspect-ratio: 250/100;
    padding-left: 1.5rem;
  }
  .page-media_detail .article-side__line a::before, .page-media_detail .article-side__line a::after {
    top: 50%;
    transform: translateY(-50%);
  }
  .page-media_detail .article-side__recommend {
    margin-top: 2.9rem;
  }
  .page-media_detail .article-side__recommend ul {
    margin-top: 2rem;
  }
  .page-media_detail .article-side__recommend ul li {
    border-bottom: none;
    margin-bottom: 3.5rem;
  }
  .page-media_detail .article-side__recommend ul li:last-child {
    border-bottom: none;
  }
  .page-media_detail .article-side__recommend ul li a {
    display: block;
    padding: 0;
  }
  .page-media_detail .article-side__recommend ul li a figure {
    width: 100%;
    border-radius: 1rem;
    -webkit-border-radius: 1rem;
    -moz-border-radius: 1rem;
    -ms-border-radius: 1rem;
    -o-border-radius: 1rem;
    overflow: hidden;
    aspect-ratio: 250/166;
  }
  .page-media_detail .article-side__recommend ul li a figure img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
  }
  .page-media_detail .article-side__recommend ul li a .txt {
    width: 100%;
  }
  .page-media_detail .article-side__recommend ul li a .txt .date time,
  .page-media_detail .article-side__recommend ul li a .txt .date .cat {
    display: none;
  }
  .page-media_detail .article-side__recommend ul li a .txt .date .title {
    font-size: 1.6rem;
    line-height: 1.625;
    margin-top: 1.6rem;
  }
  .page-media_detail .article-side__recommend ul li a .more {
    display: none;
  }
}
/*====================================================
//// コンセプト
====================================================*/
.concept-bg {
  position: sticky !important;
  top: 0 !important;
  height: 100svh !important;
  margin-bottom: -100svh !important;
  background: url(../img/concept/sp/bg_text.png) no-repeat center bottom/cover !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

.page-concept__fv {
  background-image: linear-gradient(180deg, rgb(30, 176, 203) 0%, rgb(99, 205, 237) 100%);
  width: 100%;
  height: 100vh;
  overflow: hidden;
}
.page-concept__fv .inner {
  width: 100%;
  height: 100%;
  position: relative;
}
.page-concept__fv .bg-txt {
  color: #fff;
  opacity: 0.28;
  position: absolute;
  top: 20%;
  left: -32%;
  font-family: "Outfit", sans-serif;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  width: 73rem;
  overflow: hidden;
}
.page-concept__fv .bg-txt.visible span {
  transform: translate(0, 0);
}
.page-concept__fv .bg-txt span {
  display: block;
  transform: translate(0, 105%);
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
}
.page-concept__fv .bg-txt span:nth-child(2) {
  transition-delay: 0.06s;
}
.page-concept__fv .bg-txt span:nth-child(3) {
  transition-delay: 0.12s;
}
.page-concept__fv .bg-txt span:nth-child(4) {
  transition-delay: 0.18s;
}
.page-concept__fv .bg-txt span:nth-child(5) {
  transition-delay: 0.24s;
}
.page-concept__fv .bg-txt span:nth-child(6) {
  transition-delay: 0.3s;
}
.page-concept__fv .bg-txt span:nth-child(7) {
  transition-delay: 0.36s;
}
.page-concept__fv .bg-txt span:nth-child(8) {
  transition-delay: 0.42s;
}
.page-concept__fv .bg-txt span:nth-child(9) {
  transition-delay: 0.48s;
}
.page-concept__fv .bg-txt span:nth-child(10) {
  transition-delay: 0.54s;
}
.page-concept__fv .bg-txt span:nth-child(11) {
  transition-delay: 0.6s;
}
.page-concept__fv .bg-txt span:nth-child(12) {
  transition-delay: 0.66s;
}
.page-concept__fv .bg-txt span:nth-child(13) {
  transition-delay: 0.72s;
}
.page-concept__fv .bg-txt span:nth-child(14) {
  transition-delay: 0.78s;
}
.page-concept__fv .bg-txt span:first-child, .page-concept__fv .bg-txt span:nth-child(2), .page-concept__fv .bg-txt span:nth-child(3), .page-concept__fv .bg-txt span:nth-child(4) {
  font-size: 22.8rem;
  line-height: 0.8815789474;
  font-weight: 700;
  letter-spacing: 0.04em;
}
.page-concept__fv .bg-txt span:nth-child(5), .page-concept__fv .bg-txt span:nth-child(6), .page-concept__fv .bg-txt span:nth-child(7), .page-concept__fv .bg-txt span:nth-child(8) {
  font-size: 22.8rem;
  line-height: 0.8815789474;
  font-weight: 700;
  letter-spacing: 0.14em;
}
.page-concept__fv .txt {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  color: #fff;
}
.page-concept__fv p {
  font-size: 6.5rem;
  line-height: 1.3538461538;
  font-weight: 700;
  letter-spacing: 0.04em;
  font-family: "Outfit", sans-serif;
  width: fit-content;
  white-space: nowrap;
  animation-delay: 0.5s !important;
}
.page-concept__fv h1 {
  font-size: 2rem;
  line-height: 1.6;
  font-weight: 700;
  text-align: center;
  animation-delay: 1s !important;
}
.page-concept__container {
  width: 100%;
  height: auto;
  background-image: url(../img/concept/sp/bg_concept.jpg);
  background-size: 100% auto;
  background-position: 50% 50%;
  background-attachment: fixed;
  background-repeat: no-repeat;
  padding-top: 100vh;
  position: relative;
}
.page-concept__wrap {
  background-color: #35bad6;
}
.page-concept__wrap .inner {
  position: relative;
}
.page-concept__sec01, .page-concept__sec02, .page-concept__sec03 {
  position: relative;
  min-height: 100vh;
}
.page-concept__sec01 .swiper, .page-concept__sec02 .swiper, .page-concept__sec03 .swiper {
  width: 100%;
  min-height: 100vh;
  transition: 0.5s;
  margin: auto;
  padding: 5rem 0;
}
.page-concept__contents {
  position: relative;
  padding-bottom: 10rem;
}
.page-concept__contents--block {
  position: relative;
  z-index: 0;
  padding: 5rem 0 0 0;
  min-height: 100svh;
  opacity: 0;
  transition: opacity 1s;
}
.page-concept__contents--block.active {
  opacity: 1;
}
.page-concept__contents--block .wrap {
  height: 100%;
  display: grid;
  grid-template-rows: auto 1fr;
  min-height: 0;
}
.page-concept__contents--block .head {
  color: #fff;
}
.page-concept__contents--block .head .num {
  font-size: 2rem;
  line-height: 1.95;
  font-weight: 400;
  font-family: "Outfit", sans-serif;
  color: #fff;
}
.page-concept__contents--block .head h2 {
  margin-top: 2.3rem;
  font-size: 2.8rem;
  line-height: 1.7142857143;
  font-weight: 400;
}
.page-concept__contents--block .head p {
  font-size: 1.4rem;
  line-height: 2;
  font-weight: 400;
  margin-top: 1.8rem;
}
.page-concept__contents--block .block {
  padding: 3.4rem 0 0 0;
  width: 91.4666666667%;
  position: relative;
  overflow-x: hidden;
  margin: auto;
  overflow: hidden;
}
.page-concept__contents--block .block .slide-block {
  width: calc(100% - 1rem);
  background-color: #fff;
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  -ms-border-radius: 1rem;
  -o-border-radius: 1rem;
  padding: 2.1rem 2rem 2.5rem 2rem;
  transform: translateY(100%);
  transition: 0.5s;
  opacity: 0;
}
.page-concept__contents--block .block.active {
  opacity: 1;
}
.page-concept__contents--block .block.active .slide-block {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 0.5s;
}
.page-concept__contents--block .block h3 {
  font-size: 2.2rem;
  line-height: 1.5454545455;
  font-weight: 500;
}
.page-concept__contents--block .block p {
  margin-top: 1.5rem;
  font-size: 1.4rem;
  line-height: 2.0714285714;
  font-weight: 400;
}
.page-concept__contents--block .block figure {
  margin-top: 2.4rem;
}
.page-concept__cta {
  background-image: url(../img/concept/sp/cta-bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  padding: 3.5rem 0 4.2rem 0;
  position: relative;
}
.page-concept__cta .inner {
  width: 91.4666666667%;
}
.page-concept__cta .btn {
  width: 21.6rem;
  margin: 2.21rem auto 0 auto;
}
.page-concept__cta .btn a {
  aspect-ratio: 216/56;
  border-radius: 2.8rem;
  -webkit-border-radius: 2.8rem;
  -moz-border-radius: 2.8rem;
  -ms-border-radius: 2.8rem;
  -o-border-radius: 2.8rem;
  font-size: 1.8rem;
  line-height: 1.4444444444;
  font-weight: 600;
}
.page-concept__cta .box {
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  -ms-border-radius: 1rem;
  -o-border-radius: 1rem;
}
.page-concept__cta .box .title {
  font-size: 2rem;
  line-height: 1.45;
  font-weight: 700;
  color: var(--main-color01);
  text-align: center;
}
.page-concept__cta .box .body {
  font-size: 1.4rem;
  line-height: 2;
  font-weight: 500;
  margin-top: 1.6rem;
}
.page-concept__cta .box:first-of-type {
  background-color: #fff;
  margin-bottom: 2.5rem;
  padding: 2.4rem 2.7rem 1.7rem 2.7rem;
}
.page-concept__cta .box:last-of-type {
  background-color: rgba(26, 138, 172, 0.85);
  color: #fff;
  padding: 3.24rem 2rem 3.2rem 2rem;
}
.page-concept__cta .box:last-of-type .btn a {
  background-color: #fff;
  color: #29A0C4;
}
.page-concept__cta .box:last-of-type .btn a::after {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19 7'%3E%3Cg transform='translate(-1101 -1747)'%3E%3Cpath d='M-3344.627,1228h14.3' transform='translate(4445.627 522.5)' fill='none' stroke='%2329A0C4' stroke-width='1'/%3E%3Cpath d='M3.5,0,7,6H0Z' transform='translate(1120 1747) rotate(90)' fill='%2329A0C4'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}
.page-concept__cta .box:last-of-type .btn a::before {
  border-color: #29A0C4;
}

/*======================= PC =======================*/
@media screen and (min-width: 768px) {
  .concept-bg {
    background-image: url(../img/concept/bg_text_.png) !important;
    background-size: 100% auto !important;
    background-position: top right !important;
  }
  .page-concept__fv .inner {
    width: 100%;
    max-width: 109.5rem;
  }
  .page-concept__fv .bg-txt {
    color: #fff;
    opacity: 0.28;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: "Outfit", sans-serif;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    width: 126rem;
    overflow: hidden;
  }
  .page-concept__fv .bg-txt.visible span {
    transform: translate(0, 0);
  }
  .page-concept__fv .bg-txt span {
    display: block;
    transform: translate(0, 105%);
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  }
  .page-concept__fv .bg-txt span:nth-child(2) {
    transition-delay: 0.06s;
  }
  .page-concept__fv .bg-txt span:nth-child(3) {
    transition-delay: 0.12s;
  }
  .page-concept__fv .bg-txt span:nth-child(4) {
    transition-delay: 0.18s;
  }
  .page-concept__fv .bg-txt span:nth-child(5) {
    transition-delay: 0.24s;
  }
  .page-concept__fv .bg-txt span:nth-child(6) {
    transition-delay: 0.3s;
  }
  .page-concept__fv .bg-txt span:nth-child(7) {
    transition-delay: 0.36s;
  }
  .page-concept__fv .bg-txt span:nth-child(8) {
    transition-delay: 0.42s;
  }
  .page-concept__fv .bg-txt span:nth-child(9) {
    transition-delay: 0.48s;
  }
  .page-concept__fv .bg-txt span:nth-child(10) {
    transition-delay: 0.54s;
  }
  .page-concept__fv .bg-txt span:nth-child(11) {
    transition-delay: 0.6s;
  }
  .page-concept__fv .bg-txt span:nth-child(12) {
    transition-delay: 0.66s;
  }
  .page-concept__fv .bg-txt span:nth-child(13) {
    transition-delay: 0.72s;
  }
  .page-concept__fv .bg-txt span:nth-child(14) {
    transition-delay: 0.78s;
  }
  .page-concept__fv .bg-txt span:first-child, .page-concept__fv .bg-txt span:nth-child(2), .page-concept__fv .bg-txt span:nth-child(3), .page-concept__fv .bg-txt span:nth-child(4) {
    font-size: 41.4rem;
    line-height: 0.8115942029;
    letter-spacing: 0.04em;
  }
  .page-concept__fv .bg-txt span:nth-child(5), .page-concept__fv .bg-txt span:nth-child(6), .page-concept__fv .bg-txt span:nth-child(7), .page-concept__fv .bg-txt span:nth-child(8) {
    font-size: 41.4rem;
    line-height: 0.8115942029;
    letter-spacing: 0.14em;
  }
  .page-concept__fv p {
    font-size: 14.7rem;
    line-height: 1.3537414966;
    letter-spacing: 0.04em;
  }
  .page-concept__fv h1 {
    font-size: 3rem;
    line-height: 1.8666666667;
    font-weight: 700;
  }
  .page-concept__container {
    height: auto;
    background-image: url(../img/concept/bg_concept.jpg);
    background-size: cover;
    background-attachment: fixed;
    padding-top: 100vh;
  }
  .page-concept__contents {
    margin-top: 0;
  }
  .page-concept__contents--block {
    opacity: 0;
    transition: 1s;
    padding-bottom: 30rem;
  }
  .page-concept__contents--block .head .head__block {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: flex-start;
  }
  .page-concept__contents--block .head .num {
    font-size: 2rem;
    line-height: 1.95;
    font-weight: 400;
  }
  .page-concept__contents--block .head h2 {
    margin-top: 2.3rem;
    font-size: 3.7rem;
    line-height: 1.6216216216;
  }
  .page-concept__contents--block .head p {
    font-size: 1.6rem;
    line-height: 1.9375;
    margin-top: 2.3rem;
    width: 45%;
  }
  .page-concept__contents--block .block {
    max-width: 128.6rem;
    position: relative !important;
    opacity: 0;
    transition: 1s;
    margin-top: 15rem;
    overflow: hidden;
  }
  .page-concept__contents--block .block01 {
    margin-top: 0;
  }
  .page-concept__contents--block .block .txt {
    width: calc(51.4767932489% - 4.8rem);
    padding-top: 3.8rem;
  }
  .page-concept__contents--block .block h3 {
    font-size: 2.6rem;
    line-height: 1.3461538462;
  }
  .page-concept__contents--block .block p {
    margin-top: 3.9rem;
    font-size: 1.6rem;
    line-height: 1.9375;
  }
  .page-concept__contents--block .block figure {
    margin-top: 0;
    width: 48.5232067511%;
  }
  .page-concept__contents--block .block .slide-block {
    width: calc(100% - 3rem);
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
    padding: 2.1rem 3.5rem 2.5rem 4.1rem;
    display: flex;
    flex-wrap: nowrap;
    gap: 4.8rem;
    justify-content: center;
    align-items: flex-start;
    margin-right: 2rem;
    margin-left: 1rem;
    transform: translateY(100%);
    transition: 0.5s;
    opacity: 0;
  }
  .page-concept__contents--block .block.active {
    opacity: 1;
    transition-delay: 0.5s;
  }
  .page-concept__contents--block .block.active .slide-block {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.5s;
  }
  .page-concept__contents--block.active {
    opacity: 1;
  }
  .page-concept__cta {
    background-image: url(../img/concept/cta-bg.jpg);
    padding: 9.6rem 0 11.7rem 0;
  }
  .page-concept__cta .box {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
  }
  .page-concept__cta .box .btn {
    margin: auto 0 auto auto;
  }
  .page-concept__cta .box .title {
    font-size: 3.2rem;
    line-height: 1.4375;
    font-weight: 700;
    color: var(--main-color01);
    text-align: left;
  }
  .page-concept__cta .box .body {
    font-size: 1.6rem;
    line-height: 2;
    font-weight: 500;
    margin-top: 1.6rem;
  }
  .page-concept__cta .box:first-of-type {
    margin-bottom: 5.6rem;
    padding: 6rem 8.9rem 6rem 8rem;
  }
  .page-concept__cta .box:last-of-type {
    padding: 6rem 8.9rem 6rem 8rem;
  }
  .page-concept__cta .box:last-of-type .title {
    max-width: 40.836rem;
  }
  .page-concept__cta .box:last-of-type .btn a {
    background-color: #fff;
    color: #29A0C4;
  }
  .page-concept__cta .box:last-of-type .btn a::after {
    background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19 7'%3E%3Cg transform='translate(-1101 -1747)'%3E%3Cpath d='M-3344.627,1228h14.3' transform='translate(4445.627 522.5)' fill='none' stroke='%2329A0C4' stroke-width='1'/%3E%3Cpath d='M3.5,0,7,6H0Z' transform='translate(1120 1747) rotate(90)' fill='%2329A0C4'/%3E%3C/g%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
  }
  .page-concept__cta .box:last-of-type .btn a::before {
    border-color: #29A0C4;
  }
}
/*====================================================
//// 会社情報
====================================================*/
.page-company__wrap01, .page-company__wrap02, .page-company__wrap03 {
  min-height: 100svh;
  position: relative;
}
.page-company__wrap01 {
  z-index: 1;
}
.page-company__wrap02 {
  z-index: 2;
}
.page-company__wrap03 {
  z-index: 3;
}
.page-company_philosophy ul, .page-company_policy ul {
  display: flex;
  flex-wrap: wrap;
  gap: 0.9rem 3.7rem;
  justify-content: space-between;
  align-items: stretch;
}
.page-company_philosophy ul li, .page-company_policy ul li {
  width: calc((100% - 3.7rem) / 2);
  position: relative;
  display: flex;
  justify-content: left;
  align-items: center;
  font-size: 1.8rem;
  line-height: 1.4444444444;
  font-weight: 400;
  position: relative;
  padding-left: 2.4rem;
  white-space: nowrap;
}
.page-company_philosophy ul li::before, .page-company_policy ul li::before {
  content: "";
  width: 1.9rem;
  height: 1.9rem;
  background-color: #C0E1EB;
  margin-right: 0.5rem;
  margin-top: 0.5rem;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  position: absolute;
  left: 0;
  top: 0;
}
.page-company_philosophy {
  position: relative;
  z-index: 1;
  padding-bottom: 14.2rem;
}
.page-company_philosophy .block {
  padding-top: 3.2rem;
  padding-bottom: 5rem;
}
.page-company_philosophy ul {
  width: 90%;
  margin: 1.7rem auto 0 auto;
}
.page-company_mvv {
  position: relative;
  z-index: 2;
  padding-bottom: 19rem;
}
.page-company_mvv .page-sub_title {
  text-align: center;
}
.page-company_mvv .block {
  padding: 3.9rem 0 4.8rem 0;
}
.page-company_mvv dl {
  margin-top: 1rem;
}
.page-company_mvv dl dt {
  font-size: 2.4rem;
  line-height: 1.25;
  font-weight: 700;
  color: var(--main-color01);
  padding-top: 2.97rem;
}
.page-company_mvv dl dd {
  border-bottom: 2px solid #CCCCCC;
  padding-top: 1.2rem;
  padding-bottom: 3.3rem;
}
.page-company_mvv dl dd h3 {
  font-size: 1.9rem;
  line-height: 1.5263157895;
  font-weight: 400;
}
.page-company_mvv dl dd p {
  font-size: 1.4rem;
  line-height: 2;
  font-weight: 400;
  margin-top: 1rem;
}
.page-company_mvv dl dd:last-of-type {
  border: none;
  padding-bottom: 0;
}
.page-company_mvv dl dd:last-of-type h3 {
  font-size: 1.9rem;
  line-height: 1.7894736842;
}
.page-company_policy .block {
  padding: 4rem 0 5.6rem 0;
}
.page-company_policy ul {
  margin-top: 1.9rem;
  width: 95%;
  margin: 1.9rem auto 0 auto;
  gap: 0.9rem 5rem;
}
.page-company_policy ul li {
  width: calc((100% - 5rem) / 2);
}
.page-company_message {
  padding: 5rem 0 3.3rem 0;
}
.page-company_message .inner {
  background-color: rgba(0, 139, 157, 0.75);
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  -ms-border-radius: 1rem;
  -o-border-radius: 1rem;
  color: #fff;
  padding: 4.1rem 2.5rem 3.4rem 2.5rem;
  position: relative;
}
.page-company_message .txt {
  width: 100%;
  margin: auto;
}
.page-company_message h2 {
  font-size: 2.4rem;
  line-height: 1.4583333333;
  font-weight: 700;
}
.page-company_message h3 {
  margin-top: 2.5rem;
  font-size: 2rem;
  line-height: 1.8;
  font-weight: 400;
}
.page-company_message p {
  margin-top: 2.7rem;
  font-size: 1.4rem;
  line-height: 2;
  font-weight: 400;
}
.page-company_message p:first-of-type {
  margin-top: 2rem;
}
.page-company_message .img {
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  -ms-border-radius: 1rem;
  -o-border-radius: 1rem;
  overflow: hidden;
  margin-top: 1.9rem;
}
.page-company_outline {
  padding-bottom: 19rem;
}
.page-company_outline .block {
  padding: 4.3rem 0 3.9rem;
}
.page-company_outline dl {
  margin-top: 2.3rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  justify-content: center;
  align-items: stretch;
  border-bottom: 1px solid #F2F2F2;
}
.page-company_outline dl dt,
.page-company_outline dl dd {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  height: 100%;
  border-top: 1px solid #F2F2F2;
  padding: 1.1rem 0 1rem 0;
  font-size: 1.4rem;
  line-height: 1.5714285714;
}
.page-company_outline dl dt {
  padding-right: 2.2rem;
  width: 30.701754386%;
  font-weight: 700;
}
.page-company_outline dl dd {
  width: 69.298245614%;
  font-weight: 400;
}
.page-company_outline dl dd a {
  display: inline;
  color: #29A0C4;
  text-decoration: underline;
}
.page-company_outline dl dd a:hover {
  text-decoration: none;
}
.page-company_outline dl dd:last-of-type {
  display: block;
}
.page-company_history {
  background-color: #fff;
  padding: 5rem 0 6.94rem 0;
}
.page-company_history dl {
  margin-top: 2.54rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  justify-content: center;
  align-items: stretch;
}
.page-company_history dl dt,
.page-company_history dl dd {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
  border-bottom: 1px solid #F2F2F2;
  padding: 1.56rem 0 2.4rem 0;
}
.page-company_history dl dt:last-of-type,
.page-company_history dl dd:last-of-type {
  border: none;
}
.page-company_history dl dt {
  color: var(--main-color01);
  font-size: 2.4rem;
  line-height: 1;
  font-weight: 400;
  font-family: "Outfit", sans-serif;
  padding-left: 0.3rem;
  padding-right: 3.1rem;
  width: 24.1982507289%;
}
.page-company_history dl dd {
  font-size: 1.4rem;
  line-height: 1.5714285714;
  font-weight: 400;
  width: 75.8017492711%;
}
.page-company_access {
  background-color: #F2F2F2;
  border-bottom: 2px solid #fff;
  padding: 4.2rem 0 6.3rem 0;
}
.page-company_access .block {
  background-color: transparent !important;
  margin-bottom: 6.6rem;
}
.page-company_access .block:last-of-type {
  margin-bottom: 0;
}
.page-company_access .txt {
  margin-top: 0.7rem;
}
.page-company_access .txt h3 {
  font-size: 2.4rem;
  line-height: 1;
  font-weight: 400;
}
.page-company_access .txt p {
  margin-top: 0.3rem;
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: 400;
}
.page-company_access .photo_map {
  margin-top: 1.5rem;
}
.page-company_access .photo_map .map {
  aspect-ratio: 343/192;
}
.page-company_access .photo_map .photo {
  margin-top: 1.5rem;
  aspect-ratio: 343/215;
}
.page-company_access .photo_map .photo img {
  object-fit: cover;
  object-position: 50% 50%;
  width: 100%;
  height: 100%;
}

@supports (-webkit-touch-callout: none) {
  .company__wrapper .bg-fixed {
    position: absolute;
  }
}
.company__wrapper {
  position: relative;
  z-index: 1;
  overflow: hidden;
  isolation: isolate;
}
.company__wrapper .bg-fixed {
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: center/cover no-repeat;
}

/*======================= PC =======================*/
@media screen and (min-width: 768px) {
  .page-company .page-head__title {
    padding: 4.7rem 0 8.6rem 0;
  }
  .page-company_wrap {
    background-image: url(../img/company/bg-company.jpg);
  }
  .page-company_philosophy ul, .page-company_policy ul {
    margin: 1.7rem auto 0 auto;
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem 0;
    justify-content: space-between;
    align-items: stretch;
    width: 97%;
  }
  .page-company_philosophy ul li, .page-company_policy ul li {
    width: 19rem;
    font-size: 2.6rem;
    line-height: 1.4230769231;
    font-weight: 400;
    padding-left: 3rem;
  }
  .page-company_philosophy ul li::before, .page-company_policy ul li::before {
    width: 2.4rem;
    height: 2.4rem;
    top: 50%;
    transform: translateY(-60%);
  }
  .page-company .in-page_link__list li {
    width: 14.2857142857%;
  }
  .page-company_philosophy {
    padding-bottom: 28.4rem;
  }
  .page-company_philosophy .block {
    padding: 7.4rem 0 11.2rem 0;
  }
  .page-company_philosophy ul {
    margin: 6.1rem auto 0 auto;
    width: 96.38671875%;
  }
  .page-company_philosophy ul li {
    width: 19rem;
    font-size: 2.6rem;
    line-height: 1.4230769231;
    font-weight: 400;
    white-space: nowrap;
  }
  .page-company_philosophy ul li:first-child {
    width: 21.6rem;
  }
  .page-company_mvv {
    padding-bottom: 28.4rem;
  }
  .page-company_mvv .block {
    padding: 8.4rem 0 6rem 0;
  }
  .page-company_mvv dl {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch;
    width: 74.21875%;
    margin: 6.5rem auto 0 auto;
  }
  .page-company_mvv dl dt {
    width: 23.1578947368%;
    font-size: 4rem;
    line-height: 1.15;
    padding: 0;
    margin: 0;
    border-bottom: 2px solid #CCCCCC;
  }
  .page-company_mvv dl dt:last-of-type {
    border: none;
  }
  .page-company_mvv dl dd {
    width: 76.8421052632%;
    margin: 0;
    padding: 0;
  }
  .page-company_mvv dl dd h3 {
    font-size: 3rem;
    line-height: 1.5333333333;
  }
  .page-company_mvv dl dd p {
    font-size: 1.6rem;
    line-height: 1.875;
    margin-top: 2rem;
  }
  .page-company_mvv dl dd:last-of-type h3 {
    font-size: 3rem;
    line-height: 1.8;
  }
  .page-company_mvv dl dd:last-of-type p {
    margin-top: 1rem;
  }
  .page-company_mvv dl dt,
  .page-company_mvv dl dd {
    margin-bottom: 4rem;
    padding-bottom: 5rem;
  }
  .page-company_mvv dl dt:first-of-type,
  .page-company_mvv dl dd:first-of-type {
    animation-delay: 0;
  }
  .page-company_mvv dl dt:nth-of-type(2),
  .page-company_mvv dl dd:nth-of-type(2) {
    animation-delay: 0.3s;
  }
  .page-company_mvv dl dt:last-of-type,
  .page-company_mvv dl dd:last-of-type {
    animation-delay: 0.6s;
  }
  .page-company_policy .block {
    padding: 10.1rem 0 16.2rem 0;
  }
  .page-company_policy ul {
    width: 100%;
    margin: 5rem auto 0 auto;
    gap: 0;
  }
  .page-company_policy ul li {
    width: fit-content;
  }
  .page-company_message {
    padding: 10.6rem 0 11rem 0;
  }
  .page-company_message .inner {
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
    padding: 7.5rem 11.1rem 10rem 11.1rem;
    display: flex;
    flex-wrap: nowrap;
    gap: 8.7rem;
    justify-content: center;
    align-items: flex-start;
  }
  .page-company_message .txt {
    width: 59.47265625%;
    margin: auto;
    max-width: 52.2rem;
  }
  .page-company_message h2 {
    font-size: 4rem;
    line-height: 1.45;
  }
  .page-company_message h3 {
    margin-top: 3.3rem;
    font-size: 2.6rem;
    line-height: 1.5384615385;
  }
  .page-company_message p {
    margin-top: 2.9rem;
    font-size: 1.6rem;
    line-height: 1.875;
  }
  .page-company_message p:first-of-type {
    margin-top: 2.5rem;
  }
  .page-company_message .img {
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
    position: static;
    bottom: auto;
    left: auto;
    transform: none;
    width: 40.52734375%;
    transform: translateY(2rem);
  }
  .page-company_outline {
    padding-bottom: 28.4rem;
  }
  .page-company_outline .block {
    padding: 9.2rem 0 11.8rem 0;
  }
  .page-company_outline dl {
    max-width: 76rem;
    margin: 4.8rem auto 0 auto;
    border-top: 1px solid #F2F2F2;
  }
  .page-company_outline dl dt,
  .page-company_outline dl dd {
    padding: 1.65rem 0 1.7rem 0;
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .page-company_outline dl dt {
    padding-left: 2rem;
    padding-right: 3.85rem;
    width: 24.3421052632%;
    font-weight: 700;
    white-space: nowrap;
  }
  .page-company_outline dl dd {
    width: 75.6578947368%;
    font-weight: 400;
  }
  .page-company_outline dl dd a {
    display: inline;
  }
  .page-company_history {
    padding: 11.8rem 0 23.6rem 0;
  }
  .page-company_history dl {
    max-width: 76rem;
    margin: 6.2rem auto 0 auto;
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    justify-content: center;
    align-items: stretch;
  }
  .page-company_history dl dt,
  .page-company_history dl dd {
    padding: 2.26rem 0;
  }
  .page-company_history dl dt:last-of-type,
  .page-company_history dl dd:last-of-type {
    border: none;
  }
  .page-company_history dl dt {
    font-size: 3rem;
    line-height: 1.0666666667;
    padding-left: 0.3rem;
    padding-right: 3.1rem;
    width: 21.4473684211%;
  }
  .page-company_history dl dd {
    font-size: 1.6rem;
    line-height: 1.5;
    width: 78.5526315789%;
  }
  .page-company_access {
    padding: 6.8rem 0 8.7rem 0;
  }
  .page-company_access .block {
    margin-bottom: 16.7rem;
  }
  .page-company_access .txt {
    margin-top: 0.7rem;
  }
  .page-company_access .txt h3 {
    font-size: 3rem;
    line-height: 1;
  }
  .page-company_access .txt p {
    margin-top: 0.7rem;
  }
  .page-company_access .photo_map {
    display: flex;
    flex-wrap: nowrap;
    gap: 2.5rem;
    justify-content: space-between;
    align-items: flex-start;
    margin-top: 2.3rem;
  }
  .page-company_access .photo_map .map {
    aspect-ratio: 521/299;
    width: 50.87890625%;
  }
  .page-company_access .photo_map .photo {
    width: calc(49.12109375% - 2.5rem);
    margin-top: 0;
    aspect-ratio: 478/299;
  }
}
/*====================================================
//// 事業所一覧
====================================================*/
.page-office__wrap .page-office__sec--title {
  color: #fff;
  background-color: #B0C9D1;
  font-size: 1.8rem;
  line-height: 2.6111111111;
  font-weight: 400;
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  -ms-border-radius: 1rem;
  -o-border-radius: 1rem;
  text-align: center;
}
.page-office__wrap .page-office__sec--title:first-of-type {
  margin-top: 5rem;
}

.page-office__head-btn {
  position: fixed;
  bottom: 1rem;
  left: 50%;
  transform: translateX(-50%);
  width: 91.4666666667%;
}
.page-office__head-btn .btn a {
  width: 100%;
  aspect-ratio: 344/50;
  gap: 2.2rem;
}
.page-office__head-btn .btn a .block01 {
  font-size: 1.2rem;
  line-height: 1.4166666667;
  font-weight: 600;
}
.page-office__head-btn .btn a .block02 {
  font-size: 1.8rem;
  line-height: 1.4444444444;
  font-weight: 600;
}
.page-office__head-btn .btn a::before {
  width: 3.8rem;
  right: 0.8rem;
}
.page-office__head-btn .btn a::after {
  width: 1.743rem;
  right: 1.7rem;
}
.page-office__wrap {
  padding-bottom: 6.6rem;
}
.page-office__sec {
  padding-bottom: 9.6rem;
}
.page-office__block {
  padding-top: 3.9rem;
  border-bottom: 1px solid #C6C6C6;
  padding-bottom: 3.6rem;
}
.page-office__block .txt .cat-list {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  justify-content: flex-start;
  align-items: center;
}
.page-office__block .txt .cat-list span {
  background-color: var(--main-color01);
  color: #fff;
  font-size: 1.1rem;
  line-height: 2;
  font-weight: 400;
  padding: 0 0.8rem;
  border-radius: 0.7rem;
  -webkit-border-radius: 0.7rem;
  -moz-border-radius: 0.7rem;
  -ms-border-radius: 0.7rem;
  -o-border-radius: 0.7rem;
}
.page-office__block .txt .title {
  margin-top: 0.8rem;
  font-size: 1.6rem;
  line-height: 2.25;
  font-weight: 400;
}
.page-office__block .txt h3 {
  font-size: 2.8rem;
  line-height: 1.25;
  margin-top: 2.16rem;
}
.page-office__block .txt .tel {
  margin-top: 1.8rem;
  font-size: 1.4rem;
  line-height: 2.1428571429;
  font-weight: 400;
  position: relative;
  width: fit-content;
}
.page-office__block .txt .tel a {
  display: inline-block;
  font-size: 2.2rem;
  line-height: 1.3636363636;
}
.page-office__block .txt .tel::after {
  content: "";
  width: 100%;
  height: 1px;
  background-color: var(--txt-color);
  position: absolute;
  right: 0;
  bottom: 0.5rem;
}
.page-office__block .txt .tel.free {
  padding-left: 3.5rem;
}
.page-office__block .txt .tel.free::after {
  width: calc(100% - 4rem);
}
.page-office__block .txt .tel.free::before {
  content: "";
  background-image: url(../img/office/free1.gif);
  background-repeat: no-repeat;
  background-size: contain;
  width: 3.2rem;
  aspect-ratio: 139/80;
  position: absolute;
  left: 0;
  bottom: 0.6rem;
}
.page-office__block .txt p {
  margin-top: 2.3rem;
  font-size: 1.4rem;
  line-height: 1.7142857143;
  font-weight: 400;
}
.page-office__block:first-of-type {
  padding-top: 1.9rem;
}
.page-office__block:last-of-type {
  border: none;
}
.page-office__block .img {
  margin-top: 2.3rem;
}
.page-office__block .img figure,
.page-office__block .img .map {
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  -ms-border-radius: 1rem;
  -o-border-radius: 1rem;
  overflow: hidden;
}
.page-office__block .img .map {
  margin-top: 1.4rem;
  aspect-ratio: 344/193;
}

/*======================= PC =======================*/
@media screen and (min-width: 768px) {
  .page-office__wrap .page-head {
    position: relative;
  }
  .page-office__wrap .in-page_link__list li {
    width: 16.6666666667%;
  }
  .page-office__wrap .page-office__sec--title {
    font-size: 2rem;
    line-height: 3.05;
    margin-top: 18.7rem;
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
    text-align: center;
  }
  .page-office__wrap .page-office__sec--title:first-child {
    margin-top: 4.45rem;
  }
  .page-office__head-btn {
    position: absolute;
    bottom: 7rem;
    left: auto;
    right: -11rem;
    transform: none;
    max-width: 30.8rem;
  }
  .page-office__head-btn .btn a {
    aspect-ratio: 308/56;
  }
  .page-office__wrap {
    padding-bottom: 8.6rem;
  }
  .page-office__block {
    padding-top: 7.1rem;
    padding-bottom: 7.3rem;
    display: flex;
    flex-wrap: nowrap;
    gap: 5.2rem;
    justify-content: center;
    align-items: flex-start;
  }
  .page-office__block .txt {
    width: calc(49.21875% - 5.2rem);
  }
  .page-office__block .txt .title {
    margin-top: 0.9rem;
  }
  .page-office__block .txt h3 {
    font-size: 4rem;
    line-height: 1.15;
    margin-top: 3rem;
  }
  .page-office__block .txt .tel {
    margin-top: 1.8rem;
    font-size: 1.4rem;
    line-height: 2.1428571429;
    font-weight: 400;
  }
  .page-office__block .txt .tel a {
    font-size: 2.2rem;
    line-height: 1.3636363636;
    pointer-events: none;
  }
  .page-office__block .txt p {
    margin-top: 2.3rem;
    font-size: 1.4rem;
    line-height: 1.7142857143;
    font-weight: 400;
  }
  .page-office__block:first-of-type {
    padding-top: 5rem;
  }
  .page-office__block:last-of-type {
    border: none;
  }
  .page-office__block .img {
    width: 50.78125%;
    margin-top: 0;
  }
  .page-office__block .img figure,
  .page-office__block .img .map {
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
  }
  .page-office__block .img .map {
    margin-top: 1.4rem;
    aspect-ratio: 520/200;
  }
  .page-office__block:nth-of-type(odd) .txt {
    order: 1;
  }
  .page-office__block:nth-of-type(odd) .img {
    order: 2;
  }
  .page-office__block:nth-of-type(even) .txt {
    order: 2;
  }
  .page-office__block:nth-of-type(even) .img {
    order: 1;
  }
}
/*====================================================
//// お問い合わせ
====================================================*/
.page-contact__form {
  background-color: #F2F7F7;
  padding: 5.4rem 0 7rem 0;
}
.page-contact__form .head {
  font-size: 2rem;
  line-height: 1.5;
  text-align: center;
}
.page-contact__form .inner {
  max-width: 57.4rem;
}
.page-contact__form dl {
  margin-top: 3.9rem;
}
.page-contact__form dl dt {
  font-size: 1.8rem;
  line-height: 1.4444444444;
  font-weight: 400;
  margin-top: 1.6rem;
}
.page-contact__form dl dt:first-child {
  margin-top: 0;
}
.page-contact__form dl dt span {
  background-color: var(--main-color01);
  color: #fff;
  display: inline-block;
  margin-left: 1rem;
  border-radius: 0.7rem;
  -webkit-border-radius: 0.7rem;
  -moz-border-radius: 0.7rem;
  -ms-border-radius: 0.7rem;
  -o-border-radius: 0.7rem;
  padding: 0 1rem;
  font-size: 1.1rem;
  line-height: 2;
  font-weight: 400;
}
.page-contact__form dl dd {
  margin-top: 0.7rem;
}
.page-contact__form .form-txt {
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  -ms-border-radius: 1rem;
  -o-border-radius: 1rem;
  height: 4.5rem;
}
.page-contact__form .form-txt.age {
  width: 10rem;
  display: inline-block;
  margin-right: 1rem;
}
.page-contact__form .form-select {
  position: relative;
  padding: 1rem 1rem;
  width: 100%;
  height: 100%;
  background-color: #fff;
  background-color: #fff;
  border: 1px solid #C6C6C6;
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  -ms-border-radius: 1rem;
  -o-border-radius: 1rem;
}
.page-contact__form .form-select__box {
  width: 100%;
}
.page-contact__form .form-select::after {
  content: "";
  width: 10px;
  height: 10px;
  border-top: solid 1px #c6c6c6;
  border-right: solid 1px #c6c6c6;
  position: absolute;
  transform: rotate(135deg);
  right: 2rem;
  top: 1.5rem;
}
.page-contact__form textarea {
  background-color: #fff;
  border: 1px solid #C6C6C6;
  border-radius: 1rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  -ms-border-radius: 1rem;
  -o-border-radius: 1rem;
  width: 100%;
}
.page-contact__form .checkboxItem {
  display: flex;
  align-items: center;
  column-gap: 1.1rem;
  width: fit-content;
  line-height: 1;
  cursor: pointer;
  margin-top: 3.1rem;
}
.page-contact__form .checkboxItem:not(:last-of-type) {
  margin-bottom: 16px;
}
.page-contact__form .checkbox {
  appearance: none;
  position: relative;
  width: 3.6rem;
  height: 3.6rem;
  border: 1px solid #c6c6c6;
  background-color: #fff;
  border-radius: 1rem;
  cursor: pointer;
  transition: 0.3s;
}
.page-contact__form .checkbox:checked {
  border: none;
  background-color: #29a0c4;
}
.page-contact__form .checkbox:checked::after {
  content: "";
  position: absolute;
  top: 0.75rem;
  left: 0.6rem;
  width: 2.3rem;
  height: 1.3rem;
  border-bottom: 5px solid #ffffff;
  border-left: 5px solid #ffffff;
  transform: rotate(-45deg);
}
.page-contact__form .wpcf7-list-item-label {
  display: inline-block;
  margin-left: 1rem;
}
.page-contact__form .wpcf7-list-item label {
  display: flex;
  align-items: center;
}
.page-contact__form .conditions {
  margin-top: 1.6rem;
  font-size: 1.6rem;
  line-height: 1.875;
  font-weight: 400;
  width: 89.5043731778%;
}
.page-contact__form .conditions a {
  display: inline-block;
  color: var(--main-color01);
  text-decoration: underline;
}
.page-contact__form .conditions a:hover {
  text-decoration: none;
}
.page-contact__form--btn {
  margin: 3.6rem auto 0 auto;
  max-width: 25.9rem;
  aspect-ratio: 259/56;
  background-color: var(--main-color01);
  color: #fff;
  border-radius: 2.8rem;
  -webkit-border-radius: 2.8rem;
  -moz-border-radius: 2.8rem;
  -ms-border-radius: 2.8rem;
  -o-border-radius: 2.8rem;
  width: 100%;
  height: 100%;
  font-size: 1.8rem;
  line-height: 1.4444444444;
  font-weight: 600;
  position: relative;
  box-shadow: 0 0.3rem 1rem rgba(78, 93, 144, 0.16);
  transition: 0.3s;
}
.page-contact__form--btn p {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.page-contact__form--btn .wpcf7-form-control {
  width: 100%;
  height: 100%;
}
.page-contact__form--btn .wpcf7-spinner {
  display: none;
}
.page-contact__form--btn::before, .page-contact__form--btn::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: 0.3s;
}
.page-contact__form--btn::before {
  border: 1px solid #fff;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  width: 4rem;
  aspect-ratio: 100/100;
  right: 1rem;
}
.page-contact__form--btn::after {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19 7'%3E%3Cg transform='translate(-1101 -1747)'%3E%3Cpath d='M-3344.627,1228h14.3' transform='translate(4445.627 522.5)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3Cpath d='M3.5,0,7,6H0Z' transform='translate(1120 1747) rotate(90)' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  width: 1.9rem;
  height: 0.7rem;
  right: 1.9rem;
}
.page-contact__form--btn .submit {
  width: 100%;
  height: 100%;
}

/*======================= PC =======================*/
@media screen and (min-width: 768px) {
  .page-contact__form {
    padding: 7.1rem 0 11.9rem 0;
  }
  .page-contact__form .head {
    font-size: 2.6rem;
    line-height: 1.3076923077;
  }
  .page-contact__form dl {
    margin-top: 3.8rem;
  }
  .page-contact__form dl dd {
    margin-top: 1.6rem;
  }
  .page-contact__form--btn:hover {
    background-color: #fff;
    border: 1px solid var(--main-color01);
    color: var(--main-color01);
  }
  .page-contact__form--btn:hover::before {
    border-color: var(--main-color01);
  }
  .page-contact__form--btn:hover::after {
    background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19 7'%3E%3Cg transform='translate(-1101 -1747)'%3E%3Cpath d='M-3344.627,1228h14.3' transform='translate(4445.627 522.5)' fill='none' stroke='%2329A0C4' stroke-width='1'/%3E%3Cpath d='M3.5,0,7,6H0Z' transform='translate(1120 1747) rotate(90)' fill='%2329A0C4'/%3E%3C/g%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
  }
}
/*====================================================
//// お客様の声
====================================================*/
.page-voice-list .in-page_link {
  background-color: #fff;
}
.page-voice-list .in-page_link .menu-trigger {
  background-color: #F2F2F2;
}
.page-voice-list__right ul {
  margin-bottom: 3rem;
}
.page-voice-list__right ul li {
  border-bottom: 1px solid #C6C6C6;
}
.page-voice-list__right ul li a {
  padding: 2.5rem 0;
  display: flex;
  flex-wrap: nowrap;
  gap: 1.5rem;
  align-items: flex-start;
}
.page-voice-list__right ul li a figure {
  width: 47.8134110787%;
  border-radius: 0.6rem;
  -webkit-border-radius: 0.6rem;
  -moz-border-radius: 0.6rem;
  -ms-border-radius: 0.6rem;
  -o-border-radius: 0.6rem;
  overflow: hidden;
}
.page-voice-list__right ul li a .txt {
  width: calc(52.1865889213% - 1.5rem);
}
.page-voice-list__right ul li a .txt .cat {
  padding: 0 !important;
}
.page-voice-list__right ul li a .txt .cat span {
  display: block !important;
  background-color: var(--main-color01);
  color: #fff;
  text-align: center;
  width: 9.644rem;
  font-size: 1.1rem;
  line-height: 2;
  font-weight: 400;
  border-radius: 1.4rem;
  -webkit-border-radius: 1.4rem;
  -moz-border-radius: 1.4rem;
  -ms-border-radius: 1.4rem;
  -o-border-radius: 1.4rem;
  margin: 0 0 0.5rem auto;
}
.page-voice-list__right ul li a .txt .customer-name {
  font-size: 1.2rem;
  line-height: 2.1666666667;
  font-weight: 500;
}
.page-voice-list__right ul li a .txt .title {
  font-size: 1.4rem;
  line-height: 1.5714285714;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .page-voice-list .page-head {
    border-bottom: 1px solid #C6C6C6;
  }
  .page-voice-list .in-page_link {
    width: calc(23.828125% - 3rem);
    background-color: transparent;
    border: none;
  }
  .page-voice-list .in-page_link__list {
    display: block;
    border: none;
  }
  .page-voice-list .in-page_link__list li {
    width: 100%;
  }
  .page-voice-list .in-page_link__list li a {
    border: none;
  }
  .page-voice-list .in-page_link__list li a::before, .page-voice-list .in-page_link__list li a::after {
    content: none;
  }
  .page-voice-list .in-page_link .menu-trigger {
    background-color: #F2F2F2;
  }
  .page-voice-list__wrap {
    display: flex;
    flex-wrap: nowrap;
    gap: 3rem;
    justify-content: space-between;
    align-items: flex-start;
    max-width: 102.4rem;
    margin: 0 auto;
    padding-top: 8rem;
  }
  .page-voice-list__right {
    width: 76.171875%;
  }
  .page-voice-list__right ul {
    margin-bottom: 0;
  }
  .page-voice-list__right ul li {
    position: relative;
  }
  .page-voice-list__right ul li a {
    padding: 2.5rem 0 8.8rem 0;
    display: flex;
    flex-wrap: nowrap;
    gap: 1.5rem;
    align-items: flex-start;
  }
  .page-voice-list__right ul li a figure {
    width: 47.8134110787%;
    border-radius: 2rem;
    -webkit-border-radius: 2rem;
    -moz-border-radius: 2rem;
    -ms-border-radius: 2rem;
    -o-border-radius: 2rem;
  }
  .page-voice-list__right ul li a .txt {
    width: calc(52.1865889213% - 1.5rem);
  }
  .page-voice-list__right ul li a .txt .cat {
    position: absolute;
    left: 0;
    bottom: 2rem;
    display: flex;
    flex-wrap: nowrap;
    gap: 1rem;
    justify-content: flex-start;
    align-items: flex-start;
  }
  .page-voice-list__right ul li a .txt .cat span {
    display: block !important;
    background-color: var(--main-color01);
    color: #fff;
    text-align: center;
    width: 9.644rem;
    font-size: 1.1rem;
    line-height: 2;
    font-weight: 400;
    border-radius: 1.4rem;
    -webkit-border-radius: 1.4rem;
    -moz-border-radius: 1.4rem;
    -ms-border-radius: 1.4rem;
    -o-border-radius: 1.4rem;
    margin: 0 0 0.5rem auto;
  }
  .page-voice-list__right ul li a .txt .customer-name {
    font-size: 2rem;
    line-height: 1.5;
    font-weight: 400;
  }
  .page-voice-list__right ul li a .txt .title {
    font-size: 2.6rem;
    line-height: 1.5384615385;
    font-weight: 400;
    margin-top: 2.3rem;
  }
  .page-voice-list__right ul li a .txt .more {
    position: absolute;
    right: 0;
    bottom: 3rem;
  }
}
/*====================================================
//// プライバシーポリシー
====================================================*/
.page-policy {
  border-top: 1px solid #C6C6C6;
  padding: 6.4rem 0 10rem 0;
}
.page-policy p {
  margin-top: 1.5rem;
  line-height: 1.875;
}
.page-policy p.underline {
  border-bottom: 1px solid #C6C6C6;
  padding-bottom: 2.5rem;
  margin-bottom: 2.5rem;
}
.page-policy p.policy-boder {
  border: 1px solid #C6C6C6;
  padding: 2.5rem 2rem;
}
.page-policy p .policy-info {
  display: block;
  padding: 2.5rem 2.5rem 2.5rem 5rem;
}
.page-policy h2 {
  margin-top: 3.5rem;
  font-size: 1.8rem;
  font-weight: 500;
}
.page-policy h2 + p {
  margin-top: 1rem;
}
.page-policy a {
  display: inline;
  text-decoration: underline;
  color: #29A0C4;
}
.page-policy a:hover {
  text-decoration: none;
}/*# sourceMappingURL=style.css.map */