@charset "UTF-8";
/* Sass Document */
/* ----------------------------------------------------------------------------------------------------
*  基本情報
* --------------------------------------------------------------------------------------------------*/
@layer components, variations;
@layer components {
  a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
summary,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    font-size: 100%;
    vertical-align: baseline;
  }
  picture {
    display: block;
  }
  h1,
h2,
h3,
h4,
h5,
h6 {
    color: #000;
  }
  p {
    color: rgb(88, 88, 92);
    font-size: 1.4rem;
    line-height: 2;
  }
  @media screen and (max-width: 767.98px) {
    p {
      line-height: 1.75;
    }
  }
  button {
    border: none;
    font: inherit;
    color: currentColor;
  }
  ol,
ul,
menu {
    list-style: none;
    margin: 0;
    padding: 0;
  }
  li {
    list-style: none;
    margin: 0;
    padding: 0;
  }
}
html {
  line-height: 1;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

strong {
  font-weight: 700;
}

caption,
td,
th {
  text-align: left;
}

blockquote,
q {
  quotes: none;
}

blockquote:after,
blockquote:before,
q:after,
q:before {
  content: "";
  content: none;
}

a img {
  border: none;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

html {
  font-size: 100%;
  line-height: 1.5em;
}

* {
  box-sizing: border-box;
  word-break: break-word; /* 長い単語を強制的に折り返す */
  overflow-wrap: break-word; /* 同様の目的。対応ブラウザが広い */
  line-break: strict; /* 節での自然な改行を優先（日本語では特に有効） */
  white-space: normal; /* 普通の折り返し挙動に */
}

html {
  font-size: 100%;
  width: 100%;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  scroll-behavior: smooth;
  font-size: min(0.69444444vw, 62.5%);
}
@media screen and (max-width: 767.98px) {
  html {
    font-size: 2.66666vw;
  }
}

body {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  position: relative;
  font-weight: 500;
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #212121;
  font-size: 1.4rem;
  scroll-behavior: smooth;
  letter-spacing: 0;
}
body.is-fixed {
  overscroll-behavior-y: none;
  overflow: hidden;
}

div[id],
section[id],
h2[id],
h3[id],
dt[id] {
  scroll-margin-top: 14rem;
}
@media screen and (max-width: 767.98px) {
  div[id],
section[id],
h2[id],
h3[id],
dt[id] {
    scroll-margin-top: 9rem;
  }
}

@media (min-width: 768px) {
  a[href*="tel:"] {
    text-decoration: none;
    cursor: default;
    pointer-events: none;
  }
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
}

.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

.js-animate {
  opacity: 0;
  transform: translateY(6rem);
  transition: 1s opacity, 1s transform;
}
@media screen and (max-width: 767.98px) {
  .js-animate {
    transform: translateY(3rem);
  }
}
.js-animate.is-show {
  opacity: 1;
  transform: translateY(0);
}

:where(figure) {
  margin: 0 0 0;
}

#l-header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 10001;
  height: 9rem;
  visibility: visible;
  transition: 0.3s transform, 0.5s opacity;
}
@media screen and (max-width: 767.98px) {
  #l-header {
    padding: 0;
    overflow-x: clip;
    height: 7.3rem;
  }
}
#l-header.is-transparent {
  visibility: hidden;
  opacity: 0;
}
#l-header.is-hide {
  transform: translateY(-100%);
}
#l-header.is-show {
  position: fixed;
  transform: translateY(0);
  height: 6.7rem;
  background-color: #fff;
}
@media screen and (max-width: 767.98px) {
  #l-header.is-show {
    height: 7.3rem;
  }
}
#l-header.is-show .l-header__inner {
  padding-block: 1.2rem;
}
@media screen and (max-width: 767.98px) {
  #l-header.is-show .l-header__inner {
    padding-block: 1rem;
  }
}

.l-header__inner {
  max-width: 136rem;
  margin-inline: auto;
  display: flex;
  padding-block: 2.4rem;
}
@media screen and (max-width: 767.98px) {
  .l-header__inner {
    justify-content: space-between;
    padding: 1rem 2rem 1rem 2.5rem;
    position: relative;
    align-items: center;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
  }
  .l-header__inner:has(.l-header__nav.is-open)::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    background-color: #fff;
    height: 100%;
    top: 0;
    z-index: 1;
  }
}

.l-header__nav {
  margin-left: auto;
}
@media screen and (max-width: 767.98px) {
  .l-header__nav {
    margin: 0;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100dvh;
    overflow: auto;
    z-index: 0;
    background-color: #fff;
    overscroll-behavior-y: contain;
    transform: translateX(100%);
    transition: 0.5s transform, 0.8s visibility;
    visibility: hidden;
  }
  .l-header__nav.is-open {
    visibility: visible;
    transform: translateX(0);
  }
}
.l-header__nav a {
  color: currentColor;
  text-decoration: none;
}

.l-header__logo {
  width: 21.3rem;
  margin-top: 0.5rem;
}
@media screen and (max-width: 767.98px) {
  .l-header__logo {
    width: 16rem;
    position: relative;
    z-index: 2;
  }
}

.l-header__nav-inner {
  display: flex;
}
@media screen and (max-width: 767.98px) {
  .l-header__nav-inner {
    overflow: hidden;
    display: block;
    padding: 9.7rem 3rem 2rem;
    position: absolute;
    z-index: 2;
    width: 100%;
    left: 0;
    right: 0;
    background: url(../img/common/grad_footer.svg) no-repeat bottom right/100% auto;
  }
}

.l-header__nav-list {
  display: flex;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
}
@media screen and (max-width: 767.98px) {
  .l-header__nav-list {
    display: block;
  }
}

.l-header__nav-item {
  position: relative;
  font-size: 1.4rem;
  cursor: pointer;
}
@media screen and (max-width: 767.98px) {
  .l-header__nav-item {
    cursor: auto;
  }
}
.l-header__nav-item .c-toggle-btn {
  cursor: pointer;
}
@media (any-hover: hover) {
  .l-header__nav-item:hover .c-toggle-btn::before {
    background-color: rgb(159, 159, 159);
    content: "−";
    color: rgb(53, 63, 170);
  }
  .l-header__nav-item:hover > a,
.l-header__nav-item:hover > span {
    color: rgb(159, 159, 159);
  }
  .is-show .l-header__nav-item:hover > a,
.is-show .l-header__nav-item:hover > span {
    color: rgb(159, 159, 159);
  }
}
.l-header__nav-item > a,
.l-header__nav-item > span {
  color: #000;
  font-weight: 500;
  padding-block: 1.4rem;
  display: inline-block;
  transition: 0.3s color;
}
@media screen and (max-width: 767.98px) {
  .l-header__nav-item > a,
.l-header__nav-item > span {
    font-size: 1.7rem;
    font-weight: 700;
    color: rgb(53, 63, 170);
    position: relative;
    padding: 1.2rem 0 1.2rem 1.5rem;
  }
  .l-header__nav-item > a::before,
.l-header__nav-item > span::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 0.5rem;
    height: 0.5rem;
    background-color: rgb(53, 63, 170);
  }
}

/* .win .c-toggle-btn {
	&::before {
		left: 52%;
	}
}

.safari {
	.c-toggle-btn {
		top: -0.55rem;
	}
} */
.c-toggle-btn {
  margin-left: 0.5rem;
  position: relative;
  top: 0.05rem;
  display: inline-block;
  background-color: transparent;
  transition: 0.3s color, 0.3s background-color;
}
@media screen and (max-width: 767.98px) {
  .c-toggle-btn {
    display: block;
    width: 100%;
    margin: 0;
    top: 0;
    text-align: left;
    padding: 1.2rem 0;
  }
}
.c-toggle-btn span {
  display: none;
}
@media screen and (max-width: 767.98px) {
  .c-toggle-btn span {
    display: block;
    color: rgb(53, 63, 170);
    font-size: 1.7rem;
    font-weight: 700;
    padding-left: 1.5rem;
  }
  .c-toggle-btn span::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 0.5rem;
    height: 0.5rem;
    background-color: rgb(53, 63, 170);
  }
}
.c-toggle-btn.is-open::before {
  content: "−";
  color: rgb(53, 63, 170);
  background-color: rgb(199, 199, 199);
}
.c-toggle-btn::before {
  border-radius: 0.4rem;
  background-color: rgb(53, 63, 170);
  width: 1.5rem;
  height: 1.5rem;
  content: "＋";
  position: absolute;
  left: 50%;
  top: calc(46.7% - 0.6rem);
  transform: translate(-50%, -50%);
  color: #fff;
  font-size: 0.9rem;
  line-height: 1.5;
  display: grid;
  place-content: center;
}
@media screen and (max-width: 767.98px) {
  .c-toggle-btn::before {
    left: auto;
    right: 0;
    top: calc(46.7% + 0.2rem);
  }
}
.c-toggle-btn::after {
  display: none;
  position: absolute;
  top: 49%;
  right: 3rem;
  content: "more";
  font-size: 1.2rem;
  color: rgb(88, 88, 92);
  transform: translateY(-50%);
}
@media screen and (max-width: 767.98px) {
  .c-toggle-btn::after {
    display: block;
  }
}

.l-header__subnav {
  padding-top: 2.2rem;
  position: absolute;
  pointer-events: none;
  transition: 0.3s opacity, 0.5s visibility;
  visibility: hidden;
  opacity: 0;
  z-index: 100;
  cursor: auto;
}
@media screen and (max-width: 767.98px) {
  .l-header__subnav {
    padding-top: 0;
    visibility: visible;
    opacity: 1;
    position: static;
    margin-bottom: 2rem;
    pointer-events: auto;
    display: none;
  }
}
.l-header__subnav.is-show {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}

.l-header__subnav-inner {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  background-color: #fff;
  padding-block: 4rem;
  position: relative;
  display: flex;
  align-items: center;
  box-shadow: 0px 0px 14px 0px #bababa;
}
@media screen and (max-width: 767.98px) {
  .l-header__subnav-inner {
    display: block;
    padding-block: 0;
    width: auto;
    box-shadow: none;
  }
}
.l-header__subnav-inner a {
  text-decoration: none;
  color: currentColor;
}
.l-header__subnav-inner::after {
  content: "";
  position: absolute;
  left: 20rem;
  width: 0.1rem;
  background-color: rgb(199, 199, 199);
  height: calc(100% - 5rem);
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 767.98px) {
  .l-header__subnav-inner::after {
    display: none;
  }
}
.l-header__subnav-inner dt {
  width: 20rem;
  padding-left: 5.95rem;
  display: grid;
  align-content: center;
  min-height: 18.2rem;
}
@media screen and (max-width: 767.98px) {
  .l-header__subnav-inner dt {
    display: none;
  }
}
@media (any-hover) {
  .l-header__subnav-inner dt a {
    transition: 0.3s opacity;
  }
  .l-header__subnav-inner dt a:hover {
    opacity: 0.7;
  }
}
.l-header__subnav-inner dt p {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.18;
  color: #000;
}
.l-header__subnav-inner dt p .u-en {
  margin-top: 1.2rem;
  display: block;
  font-size: 1.4rem;
  font-weight: 600;
  color: rgb(53, 63, 170);
}
.l-header__subnav-inner dt .c-btn {
  background-color: rgb(53, 63, 170);
  width: 3.2rem;
  height: 1.6rem;
  border-radius: 1000px;
  margin-top: 4rem;
  display: inline-block;
  position: relative;
  display: grid;
  place-content: center;
}
.l-header__subnav-inner dd {
  padding-inline: 6rem;
}
@media screen and (max-width: 767.98px) {
  .l-header__subnav-inner dd {
    padding-inline: 0;
  }
}

.l-header__nav-item {
  position: relative;
}
.l-header__nav-item .l-header__subnav-list a {
  position: relative;
  padding-right: 2.8rem;
}
@media screen and (max-width: 767.98px) {
  .l-header__nav-item .l-header__subnav-list a {
    padding-right: 0;
  }
}
.l-header__nav-item .l-header__subnav-list a::after {
  content: "";
  position: absolute;
  top: 52%;
  transform: translateY(-50%);
  right: 0;
  background-color: rgb(53, 63, 170);
  width: 1.5rem;
  height: 1rem;
  -webkit-mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11.41 7.41"><title>arrow</title> <path class="cls-1" d="M10.71,3L7.71,0l-.71.71-.71.71,1.29,1.29H1c-.55,0-1,.45-1,1s.45,1,1,1h6.59l-1.29,1.29.71.71.71.71,3-3,.71-.71-.71-.71Z"/></svg>');
          mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11.41 7.41"><title>arrow</title> <path class="cls-1" d="M10.71,3L7.71,0l-.71.71-.71.71,1.29,1.29H1c-.55,0-1,.45-1,1s.45,1,1,1h6.59l-1.29,1.29.71.71.71.71,3-3,.71-.71-.71-.71Z"/></svg>');
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
          mask-size: 100% 100%;
  transition: 0.3s transform;
}
@media screen and (max-width: 767.98px) {
  .l-header__nav-item .l-header__subnav-list a::after {
    display: none;
  }
}
.l-header__nav-item.-type1 {
  font-size: 1.4rem;
  font-weight: 500;
  color: rgb(88, 88, 92);
}
.l-header__nav-item.-type1 .l-header__subnav {
  left: -29rem;
}
.l-header__nav-item.-type1 .l-header__subnav-list a {
  display: block;
  transition: 0.3s transform;
}
@media (any-hover: hover) {
  .l-header__nav-item.-type1 .l-header__subnav-list a:hover {
    transform: translateX(0.5rem);
  }
}
@media screen and (max-width: 767.98px) {
  .l-header__nav-item.-type1 .l-header__subnav-list a {
    font-size: 1.4rem;
    padding-block: 1rem;
    position: relative;
    padding-left: 2rem;
  }
  .l-header__nav-item.-type1 .l-header__subnav-list a::before {
    content: "";
    position: absolute;
    width: 1rem;
    top: 50%;
    left: 0;
    height: 0.1rem;
    background-color: rgb(88, 88, 92);
    transform: translateY(-50%);
  }
}
.l-header__nav-item.-type1 .l-header__subnav-list a::after {
  -webkit-mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 8.89 5.83"><title>arrow</title>  <path class="cls-1" d="M8.53,2.56L5.97,0l-.35.35-.35.35,1.71,1.71H.5c-.28,0-.5.22-.5.5s.22.5.5.5h6.47l-1.71,1.71.35.35.35.35,2.56-2.56.35-.35-.35-.35Z"/></svg>');
          mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 8.89 5.83"><title>arrow</title>  <path class="cls-1" d="M8.53,2.56L5.97,0l-.35.35-.35.35,1.71,1.71H.5c-.28,0-.5.22-.5.5s.22.5.5.5h6.47l-1.71,1.71.35.35.35.35,2.56-2.56.35-.35-.35-.35Z"/></svg>');
  background-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
          mask-size: 100% 100%;
  width: 1.1rem;
  height: 0.6rem;
}
@media screen and (max-width: 767.98px) {
  .l-header__nav-item.-type1 .l-header__subnav-list a::after {
    display: none;
  }
}
.l-header__nav-item.-type1 .l-header__subnav-item + .l-header__subnav-item {
  margin-top: 1.6rem;
}
@media screen and (max-width: 767.98px) {
  .l-header__nav-item.-type1 .l-header__subnav-item + .l-header__subnav-item {
    margin-top: 0;
  }
}
.l-header__nav-item.-type2 .l-header__subnav {
  left: -46.6rem;
}
.l-header__nav-item.-type2 dd {
  max-width: 85rem;
}
.l-header__nav-item.-type2 .l-header__subnav-list {
  display: flex;
  flex-wrap: wrap;
  gap: 1.2rem 2rem;
}
@media screen and (max-width: 767.98px) {
  .l-header__nav-item.-type2 .l-header__subnav-list {
    gap: 2.5rem 0.7rem;
  }
}
.l-header__nav-item.-type2 .l-header__subnav-list .l-header__subnav-item {
  width: 23rem;
  flex-shrink: 0;
}
@media screen and (max-width: 767.98px) {
  .l-header__nav-item.-type2 .l-header__subnav-list .l-header__subnav-item.u-sp {
    margin-top: 1rem;
  }
}
@media screen and (max-width: 767.98px) {
  .l-header__nav-item.-type2 .l-header__subnav-list .l-header__subnav-item {
    width: 10rem;
  }
  .l-header__nav-item.-type2 .l-header__subnav-list .l-header__subnav-item.-large {
    width: 100%;
  }
  .l-header__nav-item.-type2 .l-header__subnav-list .l-header__subnav-item.-large p {
    text-align: left;
    padding-left: 2rem;
    position: relative;
    font-size: 1.5rem;
  }
  .l-header__nav-item.-type2 .l-header__subnav-list .l-header__subnav-item.-large p::before {
    content: "";
    position: absolute;
    width: 1rem;
    top: 50%;
    left: 0;
    height: 0.1rem;
    background-color: rgb(88, 88, 92);
    transform: translateY(-50%);
  }
}
.l-header__nav-item.-type2 .l-header__subnav-list a {
  display: flex;
  align-items: center;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
}
@media screen and (max-width: 767.98px) {
  .l-header__nav-item.-type2 .l-header__subnav-list a {
    display: block;
    position: relative;
  }
}
@media (any-hover: hover) {
  .l-header__nav-item.-type2 .l-header__subnav-list a:hover::after {
    transform: translate(0.5rem, -50%);
  }
  .l-header__nav-item.-type2 .l-header__subnav-list a:hover p {
    transform: translateX(0.5rem);
  }
  .l-header__nav-item.-type2 .l-header__subnav-list a:hover .c-img-wrapper img {
    transform: scale(1.1);
  }
}
.l-header__nav-item.-type2 .l-header__subnav-list a p {
  transition: 0.3s transform;
  line-height: 1.4;
  font-weight: 700;
  font-size: 1.4rem;
  color: #000;
}
@media screen and (max-width: 767.98px) {
  .l-header__nav-item.-type2 .l-header__subnav-list a p {
    text-align: center;
    font-weight: 500;
    color: rgb(88, 88, 92);
    margin-top: 0.7rem;
  }
}
.l-header__nav-item.-type2 .l-header__subnav-list a .c-img-wrapper {
  width: 9rem;
  height: 6rem;
  overflow: hidden;
  flex-shrink: 0;
  margin: 0 !important;
}
@media screen and (max-width: 767.98px) {
  .l-header__nav-item.-type2 .l-header__subnav-list a .c-img-wrapper {
    width: 100%;
    height: auto;
    aspect-ratio: 100/66;
  }
}
.l-header__nav-item.-type2 .l-header__subnav-list a .c-img-wrapper img {
  transition: 0.3s transform;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.l-header__nav-item.-type3 .l-header__subnav {
  left: -41.6rem;
}
.l-header__nav-item.-type3 dd {
  max-width: 74rem;
}
.l-header__nav-item.-type3 .l-header__subnav-inner dt p .u-en {
  margin-top: 0.9rem;
}
.l-header__nav-item.-type3 .l-header__subnav-list {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
}
@media screen and (max-width: 767.98px) {
  .l-header__nav-item.-type3 .l-header__subnav-list {
    gap: 2rem 0;
    margin-top: 1rem;
    justify-content: space-between;
  }
}
.l-header__nav-item.-type3 .l-header__subnav-list .l-header__subnav-item {
  width: 30rem;
  flex-shrink: 0;
  padding-block: 2rem;
}
@media screen and (max-width: 767.98px) {
  .l-header__nav-item.-type3 .l-header__subnav-list .l-header__subnav-item {
    padding-block: 0;
    width: 15rem;
  }
}
.l-header__nav-item.-type3 .l-header__subnav-list a {
  display: flex;
  align-items: center;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  padding-block: 2rem;
}
@media (any-hover: hover) {
  .l-header__nav-item.-type3 .l-header__subnav-list a:hover::after {
    transform: translate(0.5rem, -50%);
  }
  .l-header__nav-item.-type3 .l-header__subnav-list a:hover p {
    transform: translateX(0.5rem);
  }
  .l-header__nav-item.-type3 .l-header__subnav-list a:hover .c-img-wrapper img {
    transform: scale(1.1);
  }
}
@media screen and (max-width: 767.98px) {
  .l-header__nav-item.-type3 .l-header__subnav-list a {
    padding-block: 0;
    display: block;
  }
}
.l-header__nav-item.-type3 .l-header__subnav-list a::after {
  width: 1.3rem;
  height: 0.8rem;
}
.l-header__nav-item.-type3 .l-header__subnav-list a p {
  transition: 0.3s transform;
  line-height: 1.4;
  font-weight: 700;
  font-size: 1.4rem;
  color: #000;
}
@media screen and (max-width: 767.98px) {
  .l-header__nav-item.-type3 .l-header__subnav-list a p {
    color: rgb(88, 88, 92);
    margin-top: 1.2rem;
  }
}
.l-header__nav-item.-type3 .l-header__subnav-list a p span {
  font-size: 1rem;
  line-height: 1.4;
  display: block;
  color: rgb(88, 88, 92);
  font-weight: 500;
  margin-top: 0.8rem;
  /* 	max-width: 9em; */
}
@media screen and (max-width: 767.98px) {
  .l-header__nav-item.-type3 .l-header__subnav-list a p span {
    font-size: 1.2rem;
    max-width: inherit;
    color: rgb(159, 159, 159);
    margin-top: 0;
    display: inline-block;
    margin-left: 0;
  }
}
.l-header__nav-item.-type3 .l-header__subnav-list a .c-img-wrapper {
  width: 14rem;
  height: 14rem;
  overflow: hidden;
  flex-shrink: 0;
  margin: 0 !important;
}
@media screen and (max-width: 767.98px) {
  .l-header__nav-item.-type3 .l-header__subnav-list a .c-img-wrapper {
    width: auto;
    height: auto;
    aspect-ratio: 1/1;
    margin-bottom: 1.2rem;
  }
}
.l-header__nav-item.-type3 .l-header__subnav-list a .c-img-wrapper img {
  transition: 0.3s transform;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.l-header__inquiry {
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767.98px) {
  .l-header__inquiry {
    margin-top: 5rem;
    padding-top: 3.5rem;
  }
  .l-header__inquiry::before {
    top: 0;
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: 100vw;
    border-top: 1px solid rgb(199, 199, 199);
  }
}

.l-header__inquir-ttl {
  text-align: center;
  font-weight: 700;
  font-size: 1.8rem;
  margin-bottom: 1.9rem;
}

.l-header__contact {
  display: flex;
  -moz-column-gap: 0.8rem;
       column-gap: 0.8rem;
  flex-direction: row-reverse;
  margin-left: 3rem;
}
@media screen and (max-width: 767.98px) {
  .l-header__contact {
    display: block;
    margin-left: 0;
  }
}

.l-header__contact-item {
  position: relative;
}
@media (any-hover: hover) {
  .l-header__contact-item:hover .-tel {
    background-color: #fff;
    color: rgb(53, 63, 170);
    pointer-events: none;
  }
  .l-header__contact-item:hover .-tel .c-icn::before {
    background-color: rgb(53, 63, 170);
  }
  .l-header__contact-item:hover .-mail {
    background-color: #fff;
    color: rgb(66, 168, 244);
  }
  .l-header__contact-item:hover .-mail .c-icn::before {
    background-color: rgb(66, 168, 244);
  }
}
.l-header__contact-item a {
  border-style: solid;
  border-width: 1px;
  display: grid;
  min-height: 4rem;
  color: #fff;
  font-size: 1.4rem;
  place-content: center;
  border-radius: 1000px;
  padding: 0 2rem;
  transition: 0.3s background-color, 0.3s color;
}
.l-header__contact-item a .c-icn::before {
  transition: 0.3s background-color;
  position: absolute;
  content: "";
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  background-color: #fff;
}
.l-header__contact-item a.-tel {
  background-color: rgb(53, 63, 170);
  border-color: rgb(53, 63, 170);
  background-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
          mask-size: 100% 100%;
  border-color: rgb(53, 63, 170);
}
@media screen and (max-width: 767.98px) {
  .l-header__contact-item a.-tel {
    background-color: transparent;
    border-radius: 0;
    padding: 0;
    display: block;
    border: none;
    text-align: center;
  }
  .l-header__contact-item a.-tel .c-tel {
    font-size: 3rem;
    font-family: "Jost", sans-serif;
    color: rgb(53, 63, 170);
    position: relative;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
    padding-left: 2.5rem;
  }
  .l-header__contact-item a.-tel .c-tel::before {
    content: "";
    position: absolute;
    background-color: rgb(53, 63, 170);
    width: 2.1rem;
    height: 2.1rem;
    left: 0;
    top: 0.6rem;
    -webkit-mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 13.76 13.76"><title>tel</title><path class="cls-1" d="M11.49,8.73l1.98,1.98c.37.37.37.98,0,1.36-2.03,2.03-5.23,2.25-7.53.53l-.13-.1c-1.73-1.3-3.27-2.83-4.56-4.56l-.1-.13C-.57,5.52-.34,2.31,1.69.28c.37-.37.98-.37,1.36,0l1.98,1.98c.39.39.39,1.02,0,1.41l-1.4,1.4c-.25.25-.31.64-.15.95.92,1.84,2.41,3.33,4.25,4.25.32.16.7.1.95-.15l1.4-1.4c.39-.39,1.02-.39,1.41,0Z"/></svg>');
            mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 13.76 13.76"><title>tel</title><path class="cls-1" d="M11.49,8.73l1.98,1.98c.37.37.37.98,0,1.36-2.03,2.03-5.23,2.25-7.53.53l-.13-.1c-1.73-1.3-3.27-2.83-4.56-4.56l-.1-.13C-.57,5.52-.34,2.31,1.69.28c.37-.37.98-.37,1.36,0l1.98,1.98c.39.39.39,1.02,0,1.41l-1.4,1.4c-.25.25-.31.64-.15.95.92,1.84,2.41,3.33,4.25,4.25.32.16.7.1.95-.15l1.4-1.4c.39-.39,1.02-.39,1.41,0Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
            mask-size: 100% 100%;
  }
  .l-header__contact-item a.-tel .c-hour {
    color: rgb(88, 88, 92);
    margin-top: 0.8rem;
  }
}
.l-header__contact-item a.-tel .c-icn::before {
  width: 1.6rem;
  height: 1.6rem;
  -webkit-mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 13.76 13.76"><title>tel</title><path class="cls-1" d="M11.49,8.73l1.98,1.98c.37.37.37.98,0,1.36-2.03,2.03-5.23,2.25-7.53.53l-.13-.1c-1.73-1.3-3.27-2.83-4.56-4.56l-.1-.13C-.57,5.52-.34,2.31,1.69.28c.37-.37.98-.37,1.36,0l1.98,1.98c.39.39.39,1.02,0,1.41l-1.4,1.4c-.25.25-.31.64-.15.95.92,1.84,2.41,3.33,4.25,4.25.32.16.7.1.95-.15l1.4-1.4c.39-.39,1.02-.39,1.41,0Z"/></svg>');
          mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 13.76 13.76"><title>tel</title><path class="cls-1" d="M11.49,8.73l1.98,1.98c.37.37.37.98,0,1.36-2.03,2.03-5.23,2.25-7.53.53l-.13-.1c-1.73-1.3-3.27-2.83-4.56-4.56l-.1-.13C-.57,5.52-.34,2.31,1.69.28c.37-.37.98-.37,1.36,0l1.98,1.98c.39.39.39,1.02,0,1.41l-1.4,1.4c-.25.25-.31.64-.15.95.92,1.84,2.41,3.33,4.25,4.25.32.16.7.1.95-.15l1.4-1.4c.39-.39,1.02-.39,1.41,0Z"/></svg>');
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
          mask-size: 100% 100%;
}
.l-header__contact-item a.-mail {
  background-color: rgb(66, 168, 244);
  border-color: rgb(66, 168, 244);
}
@media screen and (max-width: 767.98px) {
  .l-header__contact-item a.-mail {
    border: none;
    min-height: 4.8rem;
    width: 24rem;
    margin: 1.9rem auto 0;
  }
}
.l-header__contact-item a.-mail .c-icn::before {
  width: 1.3rem;
  height: 1rem;
  -webkit-mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16.67 13.33"><title>mail</title><path class="cls-1" d="M16.67,0H0v13.33h16.67V0ZM15,3.33l-6.67,4.17L1.67,3.33v-1.67l6.67,4.17L15,1.67v1.67Z"/></svg>');
          mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16.67 13.33"><title>mail</title><path class="cls-1" d="M16.67,0H0v13.33h16.67V0ZM15,3.33l-6.67,4.17L1.67,3.33v-1.67l6.67,4.17L15,1.67v1.67Z"/></svg>');
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
          mask-size: 100% 100%;
}
@media screen and (max-width: 767.98px) {
  .l-header__contact-item a.-mail .c-icn::before {
    width: 1.5rem;
    height: 1.2rem;
    top: 0.8rem;
  }
}
.l-header__contact-item a .c-icn {
  padding-left: 2rem;
  position: relative;
}

.l-header__contact-sub {
  position: absolute;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  right: 0;
  padding-top: 1.6rem;
  z-index: 100;
  visibility: hidden;
  opacity: 0;
  transition: 0.3s opacity, 0.5s visibility;
  pointer-events: none;
}
@media screen and (max-width: 767.98px) {
  .l-header__contact-sub {
    display: none;
  }
}
.l-header__contact-sub.is-show {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}

.l-header__contact-sub-inner {
  background-color: #fff;
  padding: 4rem 5rem;
  text-align: center;
  box-shadow: 0px 0px 14px 0px #bababa;
}
@media screen and (max-width: 767.98px) {
  .l-header__contact-sub-inner {
    box-shadow: none;
  }
}
.l-header__contact-sub-inner .c-ttl {
  color: rgb(53, 63, 170);
  font-size: 1.9rem;
  font-weight: 700;
}
.l-header__contact-sub-inner .c-txt {
  font-size: 1.4rem;
  line-height: 1.75;
  margin-top: 1.2rem;
}
.l-header__contact-sub-inner .c-tel {
  margin-top: 2rem;
  position: relative;
  font-family: "Jost", sans-serif;
  font-size: 3.2rem;
  color: rgb(53, 63, 170);
  padding-left: 3rem;
  font-weight: 500;
  line-height: 1;
}
.l-header__contact-sub-inner .c-tel::before {
  top: 0.3rem;
  content: "";
  left: 0;
  position: absolute;
  width: 2.6rem;
  height: 2.6rem;
  content: "";
  background-color: rgb(53, 63, 170);
  -webkit-mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 13.76 13.76"><title>arrow</title><path class="cls-1" d="M11.49,8.73l1.98,1.98c.37.37.37.98,0,1.36-2.03,2.03-5.23,2.25-7.53.53l-.13-.1c-1.73-1.3-3.27-2.83-4.56-4.56l-.1-.13C-.57,5.52-.34,2.31,1.69.28c.37-.37.98-.37,1.36,0l1.98,1.98c.39.39.39,1.02,0,1.41l-1.4,1.4c-.25.25-.31.64-.15.95.92,1.84,2.41,3.33,4.25,4.25.32.16.7.1.95-.15l1.4-1.4c.39-.39,1.02-.39,1.41,0Z"/></svg>');
          mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 13.76 13.76"><title>arrow</title><path class="cls-1" d="M11.49,8.73l1.98,1.98c.37.37.37.98,0,1.36-2.03,2.03-5.23,2.25-7.53.53l-.13-.1c-1.73-1.3-3.27-2.83-4.56-4.56l-.1-.13C-.57,5.52-.34,2.31,1.69.28c.37-.37.98-.37,1.36,0l1.98,1.98c.39.39.39,1.02,0,1.41l-1.4,1.4c-.25.25-.31.64-.15.95.92,1.84,2.41,3.33,4.25,4.25.32.16.7.1.95-.15l1.4-1.4c.39-.39,1.02-.39,1.41,0Z"/></svg>');
  display: block;
  -webkit-mask-size: 100% 100%;
          mask-size: 100% 100%;
}
.l-header__contact-sub-inner .c-hour {
  font-size: 1.2rem;
}

.c-privacy {
  margin-top: 4rem;
  font-size: 1.4rem;
  text-align: center;
}
.c-privacy a {
  color: currentColor;
  text-decoration: none;
}

.l-hamburger__wrapper {
  width: 5.4rem;
  height: 5.4rem;
  position: relative;
  z-index: 2;
  display: none;
}
@media screen and (max-width: 767.98px) {
  .l-hamburger__wrapper {
    display: block;
  }
}

.l-hamburger {
  border-radius: 1000px;
  background-color: rgb(53, 63, 170);
  width: 100%;
  height: 100%;
  position: relative;
}
.l-hamburger.is-cross .l-line {
  width: 2.6rem;
}
.l-hamburger.is-cross .l-line:first-of-type {
  top: calc(50% - 1.25px);
  transform: rotate(45deg);
  transform-origin: center center;
}
.l-hamburger.is-cross .l-line:nth-of-type(2) {
  opacity: 0;
}
.l-hamburger.is-cross .l-line:last-of-type {
  top: calc(50% - 1.25px);
  transform: rotate(-45deg);
}
.l-hamburger .l-line {
  transition: 0.3s opacity, 0.3s top, 0.3s transform, 0.3s width;
  position: absolute;
  width: 2.2rem;
  height: 2.5px;
  border-radius: 5px;
  background-color: #fff;
  top: calc(50% - 1.25px);
  left: 0;
  right: 0;
  margin-inline: auto;
}
.l-hamburger .l-line:first-of-type {
  top: calc(50% - 0.8rem);
  transform: scale(0.6, 1);
  transform-origin: left top;
}
.l-hamburger .l-line:last-of-type {
  top: calc(50% - 2.5px + 0.8rem);
}

#l-footer {
  position: relative;
}
@media screen and (max-width: 767.98px) {
  #l-footer {
    min-height: inherit;
  }
}

.l-footer__wrap {
  padding-block: 12rem 8rem;
  background-color: #fff;
  z-index: 2;
  min-height: 100vh;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  transform: translateZ(1px);
}
@media screen and (max-width: 767.98px) {
  .l-footer__wrap {
    padding: 8rem 3rem 6rem;
    min-height: inherit;
    position: relative;
  }
}

.l-footer__inner {
  max-width: 130rem;
  margin-inline: auto;
}

.l-footer__upper {
  display: flex;
  align-items: flex-start;
}
@media screen and (max-width: 767.98px) {
  .l-footer__upper {
    display: block;
    border-bottom: 1px solid rgb(199, 199, 199);
    padding-bottom: 5rem;
  }
}

.l-footer__logo {
  width: 30rem;
}

.l-footer__company-info {
  margin-left: 6rem;
}
@media screen and (max-width: 767.98px) {
  .l-footer__company-info {
    margin: 4rem 0 0 0;
  }
}
.l-footer__company-info .c-add {
  margin-top: 1.9rem;
  position: relative;
}
.l-footer__company-info .c-tel {
  margin-top: 0.8rem;
}
.l-footer__company-info .c-add,
.l-footer__company-info .c-tel {
  font-size: 1.4rem;
  line-height: 1;
  padding-left: 2.5rem;
}
@media screen and (max-width: 767.98px) {
  .l-footer__company-info .c-add,
.l-footer__company-info .c-tel {
    padding-left: 2rem;
  }
}
.l-footer__company-info .c-add a,
.l-footer__company-info .c-tel a {
  color: currentColor;
  text-decoration: none;
}
@media (any-hover) {
  .l-footer__company-info .c-add a,
.l-footer__company-info .c-tel a {
    transition: 0.3s opacity;
  }
  .l-footer__company-info .c-add a:hover,
.l-footer__company-info .c-tel a:hover {
    opacity: 0.7;
  }
}

.c-company-name {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1;
  color: #000;
}

.l-footer__top-btn {
  margin-left: auto;
  margin-top: 2rem;
}
@media screen and (max-width: 767.98px) {
  .l-footer__top-btn {
    margin: 4rem 0 0;
  }
}

.c-top-btn {
  background-color: rgb(53, 63, 170);
  font-size: 1.4rem;
  color: #fff;
  text-decoration: none;
  border-radius: 1000px;
  width: 12.1rem;
  min-height: 4.4rem;
  padding: 1.4rem 3.6rem 1.3rem 2.5rem;
  line-height: 1;
  border: 1px solid rgb(53, 63, 170);
  display: block;
  transition: 0.3s color, 0.3s background-color;
}
@media (any-hover: hover) {
  .c-top-btn:hover {
    background-color: #fff;
    color: rgb(53, 63, 170);
  }
  .c-top-btn:hover span::after {
    background-color: rgb(53, 63, 170);
  }
}
@media screen and (max-width: 767.98px) {
  .c-top-btn {
    font-weight: 700;
    margin-inline: auto;
    width: 14.1rem;
    padding-left: 3.6rem;
  }
}
.c-top-btn span {
  position: relative;
  display: inline-block;
}
.c-top-btn span::after {
  transition: 0.3s background-color;
  content: "";
  position: absolute;
  width: 0.8rem;
  height: 1.3rem;
  background-color: #fff;
  -webkit-mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 8.08 12.41"><title>arrow</title><path class="cls-1" d="M4.75.71l-.71-.71-.71.71L0,4.04l.71.71.71.71,1.63-1.63v7.59c0,.55.45,1,1,1s1-.45,1-1V3.83l1.63,1.63.71-.71.71-.71L4.75.71Z"/></svg>');
          mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 8.08 12.41"><title>arrow</title><path class="cls-1" d="M4.75.71l-.71-.71-.71.71L0,4.04l.71.71.71.71,1.63-1.63v7.59c0,.55.45,1,1,1s1-.45,1-1V3.83l1.63,1.63.71-.71.71-.71L4.75.71Z"/></svg>');
  left: calc(100% + 1rem);
  top: 50%;
  transform: translateY(-50%);
}

.c-icn {
  position: relative;
}
.c-icn.-pin::before {
  position: absolute;
  left: 0;
  width: 1.8rem;
  height: 1.8rem;
  display: grid;
  place-content: center;
  content: "";
  background-color: rgb(66, 168, 244);
  -webkit-mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10.5 15"><title>pin</title> <path class="cls-1" d="M5.25,7.12c-.5,0-.97-.2-1.33-.55-.35-.35-.55-.83-.55-1.33s.2-.97.55-1.33c.35-.35.83-.55,1.33-.55s.97.2,1.33.55c.35.35.55.83.55,1.33,0,.25-.05.49-.14.72-.09.23-.23.43-.41.61s-.38.31-.61.41c-.23.09-.47.14-.72.14ZM5.25,0c-1.39,0-2.73.55-3.71,1.54-.98.98-1.54,2.32-1.54,3.71,0,3.94,5.25,9.75,5.25,9.75,0,0,5.25-5.81,5.25-9.75,0-1.39-.55-2.73-1.54-3.71-.98-.98-2.32-1.54-3.71-1.54Z"/></svg>');
          mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10.5 15"><title>pin</title> <path class="cls-1" d="M5.25,7.12c-.5,0-.97-.2-1.33-.55-.35-.35-.55-.83-.55-1.33s.2-.97.55-1.33c.35-.35.83-.55,1.33-.55s.97.2,1.33.55c.35.35.55.83.55,1.33,0,.25-.05.49-.14.72-.09.23-.23.43-.41.61s-.38.31-.61.41c-.23.09-.47.14-.72.14ZM5.25,0c-1.39,0-2.73.55-3.71,1.54-.98.98-1.54,2.32-1.54,3.71,0,3.94,5.25,9.75,5.25,9.75,0,0,5.25-5.81,5.25-9.75,0-1.39-.55-2.73-1.54-3.71-.98-.98-2.32-1.54-3.71-1.54Z"/></svg>');
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 1rem 1.5rem;
          mask-size: 1rem 1.5rem;
}
.c-icn.-tel::before {
  position: absolute;
  left: 0;
  width: 1.8rem;
  height: 1.8rem;
  display: grid;
  place-content: center;
  content: "";
  background-color: rgb(66, 168, 244);
  -webkit-mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10.5 15"><title>tel</title><path class="cls-1" d="M11.49,8.73l1.98,1.98c.37.37.37.98,0,1.36-2.03,2.03-5.23,2.25-7.53.53l-.13-.1c-1.73-1.3-3.27-2.83-4.56-4.56l-.1-.13C-.57,5.52-.34,2.31,1.69.28c.37-.37.98-.37,1.36,0l1.98,1.98c.39.39.39,1.02,0,1.41l-1.4,1.4c-.25.25-.31.64-.15.95.92,1.84,2.41,3.33,4.25,4.25.32.16.7.1.95-.15l1.4-1.4c.39-.39,1.02-.39,1.41,0Z"/></svg>');
          mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10.5 15"><title>tel</title><path class="cls-1" d="M11.49,8.73l1.98,1.98c.37.37.37.98,0,1.36-2.03,2.03-5.23,2.25-7.53.53l-.13-.1c-1.73-1.3-3.27-2.83-4.56-4.56l-.1-.13C-.57,5.52-.34,2.31,1.69.28c.37-.37.98-.37,1.36,0l1.98,1.98c.39.39.39,1.02,0,1.41l-1.4,1.4c-.25.25-.31.64-.15.95.92,1.84,2.41,3.33,4.25,4.25.32.16.7.1.95-.15l1.4-1.4c.39-.39,1.02-.39,1.41,0Z"/></svg>');
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 1.6rem 1.6rem;
          mask-size: 1.6rem 1.6rem;
}

.l-footer__nav {
  margin: 12rem 0 0 6rem;
  display: flex;
  -moz-column-gap: 8rem;
       column-gap: 8rem;
}
@media screen and (max-width: 767.98px) {
  .l-footer__nav {
    display: block;
    margin: 5rem 0 0 3rem;
  }
}
.l-footer__nav a {
  color: currentColor;
  text-decoration: none;
  display: inline-block;
  line-height: 1.25;
  position: relative;
}
@media (any-hover: hover) {
  .l-footer__nav a:hover::after {
    transform: scale(1);
    transform-origin: left top;
  }
}
.l-footer__nav .c-toggle-btn {
  display: none;
}
@media screen and (max-width: 767.98px) {
  .l-footer__nav .c-toggle-btn {
    display: inline-block;
  }
}

.l-footer__nav-list {
  min-width: 24rem;
}
@media screen and (max-width: 767.98px) {
  .l-footer__nav-list {
    min-width: inherit;
  }
  .l-footer__nav-list + .l-footer__nav-list {
    margin-top: 2.4rem;
  }
}

.l-footer__nav-item {
  font-size: 1.6rem;
  font-weight: 700;
}
.l-footer__nav-item.u-lighten {
  margin-left: -1.2em;
}
.l-footer__nav-item.u-lighten > span,
.l-footer__nav-item.u-lighten > a {
  font-size: 1.4rem;
  color: rgb(88, 88, 92);
  font-weight: 500;
  padding-left: 0;
  background-color: transparent;
  padding: 0;
}
.l-footer__nav-item.u-lighten > span::after,
.l-footer__nav-item.u-lighten > a::after {
  background-color: rgb(159, 159, 159);
}
.l-footer__nav-item.u-lighten > span::before,
.l-footer__nav-item.u-lighten > a::before {
  display: none;
}
.l-footer__nav-item > a,
.l-footer__nav-item > span,
.l-footer__nav-item .l-footer-toggle {
  background-color: transparent;
  padding: 0;
  position: relative;
  color: rgb(53, 63, 170);
}
@media screen and (max-width: 767.98px) {
  .l-footer__nav-item > a,
.l-footer__nav-item > span,
.l-footer__nav-item .l-footer-toggle {
    display: block;
  }
}
.l-footer__nav-item > a::after,
.l-footer__nav-item > span::after,
.l-footer__nav-item .l-footer-toggle::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + 0.2rem);
  height: 0.8px;
  width: 100%;
  background-color: rgb(53, 63, 170);
  transform: scale(0, 1);
  transition: 0.3s transform;
  transform-origin: right top;
}
.l-footer__nav-item > a::before,
.l-footer__nav-item > span::before,
.l-footer__nav-item .l-footer-toggle::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: -1.7rem;
  width: 0.5rem;
  height: 0.5rem;
  background-color: rgb(53, 63, 170);
}
.l-footer__nav-item + .l-footer__nav-item {
  margin-top: 2.4rem;
}

@media screen and (max-width: 767.98px) {
  .l-footer-toggle {
    text-align: left;
    width: 100%;
  }
  .l-footer-toggle::after {
    content: "more" !important;
    display: block;
    right: 2.2rem !important;
    top: 43.6% !important;
    transform: translateY(-50%) !important;
    background-color: transparent !important;
    width: auto !important;
    height: auto !important;
    left: auto !important;
    font-weight: 500;
    color: rgb(88, 88, 92);
    font-size: 1.2rem;
  }
  .l-footer-toggle.is-open .c-txt::before {
    background-color: rgb(199, 199, 199);
  }
  .l-footer-toggle.is-open .c-txt::after {
    content: "−";
    color: rgb(53, 63, 170);
  }
  .l-footer-toggle .c-txt {
    position: relative;
    display: block;
    padding-right: 2rem;
  }
  .l-footer-toggle .c-txt::before {
    content: "";
    position: absolute;
    width: 1.5rem;
    height: 1.5rem;
    background-color: rgb(53, 63, 170);
    border-radius: 0.4rem;
    margin-left: 0.5rem;
    top: 0.05rem;
    right: 0;
    display: inline-block;
    transition: 0.3s color, 0.3s background-color;
  }
  .l-footer-toggle .c-txt::after {
    content: "＋";
    position: absolute;
    right: 0.3rem;
    top: 46.7%;
    transform: translateY(-50%);
    color: #fff;
    font-size: 0.9rem;
  }
}

.l-footer__subnav-list {
  font-size: 1.4rem;
  font-weight: 500;
  margin-top: 3rem;
}
@media screen and (max-width: 767.98px) {
  .l-footer__subnav-list {
    display: none;
    margin-block: 2rem 4rem;
    margin-left: -2rem;
  }
}

.l-footer__subnav-item.-line-double a::after {
  display: none;
}
@media (any-hover: hover) {
  .l-footer__subnav-item.-line-double a:hover span::after {
    transform: scale(1, 1);
    transform-origin: left top;
  }
}
.l-footer__subnav-item.-line-double a span {
  position: relative;
  display: inline-block;
  padding-bottom: 0.2rem;
}
.l-footer__subnav-item.-line-double a span::after {
  position: absolute;
  content: "";
  width: 100%;
  left: 0;
  right: 0;
  top: 100%;
  height: 1px;
  background-color: rgb(159, 159, 159);
  transform: scale(0, 1);
  transition: 0.3s transform;
  transform-origin: right top;
}
.l-footer__subnav-item a {
  color: rgb(88, 88, 92);
}
@media screen and (max-width: 767.98px) {
  .l-footer__subnav-item a {
    padding-left: 2rem;
    display: block;
  }
}
.l-footer__subnav-item a::after {
  position: absolute;
  content: "";
  width: 100%;
  left: 0;
  right: 0;
  top: calc(100% + 0.2rem);
  height: 1px;
  background-color: rgb(159, 159, 159);
  transform: scale(0, 1);
  transition: 0.3s transform;
  transform-origin: right top;
}
.l-footer__subnav-item a::before {
  position: absolute;
  content: "";
  width: 1rem;
  height: 1px;
  background-color: rgb(88, 88, 92);
  top: 50%;
  left: -1.7rem;
  transform: translateY(-50%);
}
@media screen and (max-width: 767.98px) {
  .l-footer__subnav-item a::before {
    left: 0;
  }
}
.l-footer__subnav-item + .l-footer__subnav-item {
  margin-top: 1.7rem;
}

.l-footer__nav-item:has(.l-footer__subnav-list) + .l-footer__nav-item {
  margin-top: 4rem;
}
@media screen and (max-width: 767.98px) {
  .l-footer__nav-item:has(.l-footer__subnav-list) + .l-footer__nav-item {
    margin-top: 2.4rem;
  }
}

.l-footer__bottom {
  margin-top: 13rem;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
@media screen and (max-width: 767.98px) {
  .l-footer__bottom {
    display: block;
    margin-top: 6.5rem;
  }
}
.l-footer__bottom .c-copy {
  width: 42rem;
}
@media screen and (max-width: 767.98px) {
  .l-footer__bottom .c-copy {
    width: 100%;
  }
}

.c-copyright {
  font-size: 1.4rem;
  font-weight: 500;
  color: rgb(88, 88, 92);
  display: inline-block;
}
@media screen and (max-width: 767.98px) {
  .c-copyright {
    margin-top: 3rem;
    display: block;
    text-align: center;
  }
}

.l-contact__spacer {
  height: 300vh;
}
@media screen and (max-width: 767.98px) {
  .l-contact__spacer {
    height: auto;
  }
}

.l-contact__wrapper {
  z-index: 1;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  height: 100vh;
}
@media screen and (max-width: 767.98px) {
  .l-contact__wrapper {
    position: relative;
    top: auto;
    height: auto;
  }
}

.l-contact {
  position: relative;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  display: grid;
}
@media screen and (max-width: 767.98px) {
  .l-contact {
    min-height: inherit;
  }
}

.l-bg_contact {
  grid-row: 1;
  grid-column: 1;
  width: 100%;
  max-height: 100vh;
}
@media screen and (max-width: 767.98px) {
  .l-bg_contact {
    max-height: inherit;
  }
}
.l-bg_contact img,
.l-bg_contact video {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

.l-contact__inner {
  grid-row: 1;
  grid-column: 1;
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  max-width: 130rem;
  margin-inline: auto;
  width: 100%;
  justify-content: space-between;
  min-height: 100vh;
  padding-block: 1rem;
}
@media screen and (max-width: 767.98px) {
  .l-contact__inner {
    display: block;
    padding: 6rem 1.8rem 4.6rem;
    height: inherit;
  }
}

.l-contact__body {
  padding-left: 4rem;
}
@media screen and (max-width: 767.98px) {
  .l-contact__body {
    padding-left: 0;
  }
  .l-contact__body .is-spAnimate {
    opacity: 1 !important;
    transform: translateY(0) !important;
  }
}
.l-contact__body .c-section__ttl {
  color: #fff;
}
@media screen and (max-width: 767.98px) {
  .l-contact__body .c-section__ttl {
    text-align: center;
  }
}
.l-contact__body .c-section__ttl .u-en {
  font-size: 15.8rem;
  letter-spacing: -0.01em;
}
@media screen and (max-width: 767.98px) {
  .l-contact__body .c-section__ttl .u-en {
    font-size: 9.4rem;
  }
}
.l-contact__body .c-section__ttl .u-jp {
  position: relative;
  padding-left: 5rem;
  font-size: 2.6rem;
  display: block;
}
@media screen and (max-width: 767.98px) {
  .l-contact__body .c-section__ttl .u-jp {
    font-size: 1.6rem;
    padding-left: 0;
  }
}
.l-contact__body .c-section__ttl .u-jp::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 3rem;
  height: 1px;
  background-color: #fff;
}
@media screen and (max-width: 767.98px) {
  .l-contact__body .c-section__ttl .u-jp::before {
    display: none;
  }
}
.l-contact__body .c-txt {
  margin-top: 5rem;
  margin-left: 1rem;
  font-size: 2rem;
  color: #000;
}
@media screen and (max-width: 767.98px) {
  .l-contact__body .c-txt {
    font-size: 1.3rem;
    margin-left: 0;
    text-align: center;
    margin-top: 1rem;
    font-weight: 700;
  }
}

.l-contact__info {
  background-color: rgba(255, 255, 255, 0.5);
  border-radius: 3rem;
  border: 2px solid #fff;
  width: 51.2rem;
  padding: min(3vh, 9rem) 9rem;
  box-shadow: 0px 0px 15px -5px #888;
}
@media screen and (max-width: 767.98px) {
  .l-contact__info {
    width: auto;
    padding: 0 3rem 2rem;
    margin-top: 3rem;
    border-radius: 2rem;
  }
  .l-contact__info.is-spAnimate {
    opacity: 1 !important;
    transform: translateY(0) !important;
  }
}

.l-contact__block {
  padding-block: 4rem;
}
.l-contact__block.-tel .c-block-ttl::before {
  width: 1.6rem;
  height: 1.6rem;
  background-color: rgb(53, 63, 170);
  -webkit-mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 13.76 13.76"><title>tel</title><path class="cls-1" d="M11.49,8.73l1.98,1.98c.37.37.37.98,0,1.36-2.03,2.03-5.23,2.25-7.53.53l-.13-.1c-1.73-1.3-3.27-2.83-4.56-4.56l-.1-.13C-.57,5.52-.34,2.31,1.69.28c.37-.37.98-.37,1.36,0l1.98,1.98c.39.39.39,1.02,0,1.41l-1.4,1.4c-.25.25-.31.64-.15.95.92,1.84,2.41,3.33,4.25,4.25.32.16.7.1.95-.15l1.4-1.4c.39-.39,1.02-.39,1.41,0Z"/></svg>') no-repeat center/contain;
          mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 13.76 13.76"><title>tel</title><path class="cls-1" d="M11.49,8.73l1.98,1.98c.37.37.37.98,0,1.36-2.03,2.03-5.23,2.25-7.53.53l-.13-.1c-1.73-1.3-3.27-2.83-4.56-4.56l-.1-.13C-.57,5.52-.34,2.31,1.69.28c.37-.37.98-.37,1.36,0l1.98,1.98c.39.39.39,1.02,0,1.41l-1.4,1.4c-.25.25-.31.64-.15.95.92,1.84,2.41,3.33,4.25,4.25.32.16.7.1.95-.15l1.4-1.4c.39-.39,1.02-.39,1.41,0Z"/></svg>') no-repeat center/contain;
}
.l-contact__block.-mail {
  border-top: 1px solid #fff;
}
@media screen and (max-width: 767.98px) {
  .l-contact__block.-mail {
    border-top-color: rgb(199, 199, 199);
  }
}
.l-contact__block.-mail .c-block-ttl::before {
  width: 1.6rem;
  height: 1.3rem;
  background-color: rgb(66, 168, 244);
  -webkit-mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16.67 13.33"><title>mail</title> <path class="cls-1" d="M16.67,0H0v13.33h16.67V0ZM15,3.33l-6.67,4.17L1.67,3.33v-1.67l6.67,4.17L15,1.67v1.67Z"/></svg>') no-repeat center/contain;
          mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16.67 13.33"><title>mail</title> <path class="cls-1" d="M16.67,0H0v13.33h16.67V0ZM15,3.33l-6.67,4.17L1.67,3.33v-1.67l6.67,4.17L15,1.67v1.67Z"/></svg>') no-repeat center/contain;
}
.l-contact__block.-mail .p-link-wrapper {
  margin-top: 3.6rem;
}
@media screen and (max-width: 767.98px) {
  .l-contact__block.-mail .p-link-wrapper {
    margin-top: 2rem;
  }
}
.l-contact__block.-mail .c-link {
  background-color: rgb(66, 168, 244);
  display: grid;
  min-height: 5.4rem;
  font-size: 1.4rem;
  color: #fff;
  place-content: center;
  text-decoration: none;
  border-radius: 1000px;
  border: 1px solid rgb(66, 168, 244);
  transition: 0.3s background-color, 0.3s color;
}
@media (any-hover: hover) {
  .l-contact__block.-mail .c-link:hover {
    color: rgb(66, 168, 244);
    background-color: #fff;
  }
  .l-contact__block.-mail .c-link:hover span::before {
    background-color: rgb(66, 168, 244);
  }
}
@media screen and (max-width: 767.98px) {
  .l-contact__block.-mail .c-link {
    min-height: 4.8rem;
  }
}
.l-contact__block.-mail .c-link span {
  position: relative;
  display: inline-block;
  padding-left: 2rem;
}
.l-contact__block.-mail .c-link span::before {
  transition: 0.3s background-color;
  content: "";
  position: absolute;
  width: 1.5rem;
  height: 1.2rem;
  left: 0;
  top: 54%;
  transform: translateY(-50%);
  background-color: #fff;
  -webkit-mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16.67 13.33"><title>mail</title> <path class="cls-1" d="M16.67,0H0v13.33h16.67V0ZM15,3.33l-6.67,4.17L1.67,3.33v-1.67l6.67,4.17L15,1.67v1.67Z"/></svg>') no-repeat center/contain;
          mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16.67 13.33"><title>mail</title> <path class="cls-1" d="M16.67,0H0v13.33h16.67V0ZM15,3.33l-6.67,4.17L1.67,3.33v-1.67l6.67,4.17L15,1.67v1.67Z"/></svg>') no-repeat center/contain;
}
.l-contact__block .c-block-ttl {
  font-weight: 700;
  font-size: 1.6rem;
  color: #000;
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding-left: 2.5rem;
}
.l-contact__block .c-block-ttl::before {
  content: "";
  position: absolute;
  left: 0;
  top: 54%;
  transform: translateY(-50%);
}
.l-contact__block .c-block-ttl::after {
  content: "";
  position: absolute;
  top: 55%;
  transform: translateY(-50%);
  width: 2rem;
  height: 1px;
  background-color: rgb(159, 159, 159);
  left: calc(100% + 1rem);
}
.l-contact__block .c-ttl {
  font-size: 2rem;
  color: #000;
  font-weight: 700;
}
@media screen and (max-width: 767.98px) {
  .l-contact__block .c-ttl {
    font-size: 1.8rem;
  }
}
.l-contact__block .c-txt {
  font-size: 1.4rem;
  line-height: 1.75;
}
@media screen and (max-width: 767.98px) {
  .l-contact__block .c-txt {
    font-size: 1.2rem;
  }
}
.l-contact__block .c-hour {
  margin-top: 1rem;
  font-size: 1.4rem;
  line-height: 1;
}
@media screen and (max-width: 767.98px) {
  .l-contact__block .c-hour {
    font-size: 1.1rem;
  }
}
.l-contact__block .c-tel {
  margin-top: 3.4rem;
  font-size: 3.6rem;
  color: rgb(53, 63, 170);
  text-decoration: none;
  letter-spacing: 0.03em;
  display: inline-block;
}
@media screen and (max-width: 767.98px) {
  .l-contact__block .c-tel {
    font-size: 3rem;
    margin-top: 2rem;
  }
}
.l-contact__block dd {
  margin-top: 2.6rem;
}
@media screen and (max-width: 767.98px) {
  .l-contact__block dd {
    margin-top: 1.5rem;
  }
}

.l-top-btn {
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  z-index: 1000;
  transition: 0.3s opacity;
  opacity: 0;
  pointer-events: none;
}
@media screen and (max-width: 767.98px) {
  .l-top-btn {
    width: 4.2rem;
    height: 4.2rem;
    right: 3rem;
    bottom: 3rem;
  }
}
.l-top-btn.is-show {
  opacity: 1;
  pointer-events: auto;
}
.l-top-btn a {
  width: 5rem;
  height: 5rem;
  display: block;
  background-color: rgb(53, 63, 170);
  border-radius: 100%;
  border: 1px solid rgb(53, 63, 170);
  transition: 0.3s background-color;
  position: relative;
}
.l-top-btn a::before {
  transform: 0.3s background-color;
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 1.1rem;
  height: 1.7rem;
  background-color: #fff;
  -webkit-mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12.34 18.66"><title>arrow</title><path class="cls-1" d="M6.53.35l-.35-.35-.35.35L0,6.17l.35.35.35.35L5.67,1.91v16.25c0,.28.22.5.5.5s.5-.22.5-.5V1.91l4.96,4.96.35-.35.35-.35L6.53.35Z"/></svg>') no-repeat center/contain;
          mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12.34 18.66"><title>arrow</title><path class="cls-1" d="M6.53.35l-.35-.35-.35.35L0,6.17l.35.35.35.35L5.67,1.91v16.25c0,.28.22.5.5.5s.5-.22.5-.5V1.91l4.96,4.96.35-.35.35-.35L6.53.35Z"/></svg>') no-repeat center/contain;
}
@media (any-hover: hover) {
  .l-top-btn a:hover {
    background-color: #fff;
  }
  .l-top-btn a:hover::before {
    background-color: rgb(53, 63, 170);
  }
}

.u-pc {
  display: block;
}
@media screen and (max-width: 767.98px) {
  .u-pc {
    display: none !important;
  }
}

.u-pcinline {
  display: inline;
}
@media screen and (max-width: 767.98px) {
  .u-pcinline {
    display: none;
  }
}

.u-pcinlinebloc {
  display: inline-block;
}
@media screen and (max-width: 767.98px) {
  .u-pcinlinebloc {
    display: none;
  }
}

.u-sp {
  display: none;
}
@media screen and (max-width: 767.98px) {
  .u-sp {
    display: block;
  }
}

.u-spinline {
  display: none;
}
@media screen and (max-width: 767.98px) {
  .u-spinline {
    display: inline;
  }
}

.u-en {
  font-family: "Jost", sans-serif;
}

.l-kv {
  display: grid;
  width: 100%;
}
.l-kv.l-size--middle {
  max-height: 72.9rem;
  margin-bottom: -15.3rem;
}
@media screen and (max-width: 767.98px) {
  .l-kv.l-size--middle {
    margin-bottom: 0;
  }
}
.l-kv.l-size--middle .l-kv__content {
  padding-bottom: 17.3rem;
}
@media screen and (max-width: 767.98px) {
  .l-kv.l-size--middle .l-kv__content {
    padding-top: 13rem;
    padding-bottom: 2.4rem;
  }
}
@media screen and (max-width: 767.98px) {
  .l-kv.l-size--middle {
    max-height: inherit;
    height: 35.5rem;
  }
}
.l-kv.l-size--middle .l-kv__bg {
  max-height: 72.9rem;
}
@media screen and (max-width: 767.98px) {
  .l-kv.l-size--middle .l-kv__bg {
    max-height: inherit;
    height: 35.5rem;
  }
}
.l-kv.l-size--small {
  max-height: 56.4rem;
}
.l-kv.l-size--small .l-kv__content {
  padding-bottom: 2.4rem;
}
@media screen and (max-width: 767.98px) {
  .l-kv.l-size--small .l-kv__content {
    padding-bottom: 3.6rem;
  }
}
@media screen and (max-width: 767.98px) {
  .l-kv.l-size--small {
    max-height: inherit;
    height: 35.5rem;
  }
  .l-kv.l-size--small .l-kv__content {
    padding-top: 12.5rem;
  }
}
.l-kv.l-size--small .l-kv__bg {
  max-height: 56.4rem;
}
@media screen and (max-width: 767.98px) {
  .l-kv.l-size--small .l-kv__bg {
    max-height: inherit;
    height: 35.5rem;
  }
}

.l-kv__bg {
  grid-column: 1;
  grid-row: 1;
  overflow: hidden;
}
.l-kv__bg picture {
  display: block;
}
.l-kv__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 767.98px) {
  .l-kv__bg img {
    width: 100%;
    height: auto;
  }
}
.l-kv__bg video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: bottom center;
     object-position: bottom center;
}
@media screen and (max-width: 767.98px) {
  .l-kv__bg video {
    width: 100%;
    height: auto;
  }
}

.l-kv__content {
  grid-row: 1;
  grid-column: 1;
  position: relative;
  z-index: 1;
  max-width: 120rem;
  margin-inline: auto;
  width: 100%;
  display: flex;
  flex-direction: column;
  padding-top: 17rem;
  padding-bottom: 2.4rem;
}
@media screen and (max-width: 767.98px) {
  .l-kv__content {
    padding-top: 16rem;
    padding-bottom: 3.6rem;
  }
}

.c-content__ttl {
  opacity: 0;
  transform: translateY(4rem);
  transition: 0.5s opacity, 0.5s transform;
}
@media screen and (max-width: 767.98px) {
  .c-content__ttl {
    margin-inline: 3rem;
  }
}
.c-content__ttl.is-show {
  transform: translateY(0);
  opacity: 1;
}
.c-content__ttl .u-en {
  font-size: 11rem;
  color: rgb(53, 63, 170);
  display: block;
  font-weight: 600;
}
@media screen and (max-width: 767.98px) {
  .c-content__ttl .u-en {
    font-size: 6.4rem;
  }
}
@media screen and (max-width: 767.98px) {
  .c-content__ttl .u-en.u-spsize--small {
    font-size: 4.4rem;
  }
}
@media screen and (max-width: 767.98px) {
  .c-content__ttl .u-en.u-spsize--middle {
    font-size: 5.5rem;
  }
}
.c-content__ttl .u-jp {
  display: block;
  font-size: 2.4rem;
  font-weight: 700;
  margin-top: 1rem;
  line-height: 1.25;
}
@media screen and (max-width: 767.98px) {
  .c-content__ttl .u-jp {
    font-size: 2.2rem;
  }
}

.l-kv__img {
  margin-top: 3.2rem;
}
@media screen and (max-width: 767.98px) {
  .l-kv__img {
    margin-top: 3.6rem;
  }
}
.l-kv__img img {
  width: 100%;
}

.l-kv:has(img) .l-breadcrumb {
  color: #fff;
}

.l-content {
  position: relative;
  z-index: 10;
}

.l-content__inner {
  max-width: 120rem;
  margin-inline: auto;
}
@media screen and (max-width: 767.98px) {
  .l-content__inner {
    padding-inline: 3rem;
    max-width: inherit;
  }
}

.is-animate {
  opacity: 0;
  transition: 0.5s opacity;
}
.is-animate.-delay-03 {
  transition-delay: 0.3s !important;
}
.is-animate.-pc-delay-05 {
  transition-delay: 0.5s !important;
}
@media screen and (max-width: 767.98px) {
  .is-animate.-pc-delay-05 {
    transition-delay: 0 !important;
  }
}
.is-animate.-pc-delay-08 {
  transition-delay: 0.8s !important;
}
@media screen and (max-width: 767.98px) {
  .is-animate.-pc-delay-08 {
    transition-delay: 0 !important;
  }
}
.is-animate.-delay-10 {
  transition-delay: 1s !important;
}
.is-animate.-delay-12 {
  transition-delay: 1.2s !important;
}
.is-animate.-delay-15 {
  transition-delay: 1.5s !important;
}
.is-animate.is-show {
  opacity: 1;
}
.is-animate.is-fadeUp {
  transform: translateY(4rem);
  transition: 0.5s opacity, 0.5s transform;
}
.is-animate.is-fadeUp.is-show {
  transform: translateY(0);
}
.is-animate.is-pcfadeUp {
  transform: translateY(4rem);
  transition: 0.5s opacity, 0.5s transform;
}
.is-animate.is-pcfadeUp.is-show {
  transform: translateY(0);
}
@media screen and (max-width: 767.98px) {
  .is-animate.is-pcfadeUp {
    opacity: 1 !important;
    transform: translateY(0) !important;
  }
}

.l-line__ttl {
  font-size: 2.2rem;
  color: #000;
  font-weight: 700;
  display: flex;
  justify-content: center;
  position: relative;
  align-items: center;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 767.98px) {
  .l-line__ttl {
    font-size: 1.6rem;
  }
}
.l-line__ttl::before, .l-line__ttl::after {
  content: "";
  border-top: 1px solid rgb(159, 159, 159);
  width: 1.5rem;
}
.l-line__ttl::before {
  margin-right: 2rem;
}
.l-line__ttl::after {
  margin-left: 2rem;
}

.p-scroll-txt {
  width: 100%;
  overflow: clip;
  position: absolute;
  left: 0;
  right: 0;
  top: 2.2rem;
}
.p-scroll-txt > div {
  display: flex;
  -webkit-animation: scroll-txt 24s infinite linear;
          animation: scroll-txt 24s infinite linear;
  transform: translateX(-50%);
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}
.p-scroll-txt p {
  white-space: nowrap;
  font-size: 10rem;
  color: rgb(231, 235, 239);
  font-weight: 700;
  font-family: "Jost", sans-serif;
}
@media screen and (max-width: 767.98px) {
  .p-scroll-txt p {
    font-size: 5rem;
  }
}

@-webkit-keyframes scroll-txt {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

@keyframes scroll-txt {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
.p-news__category .p-news__category-list a::before,
.p-news__category .p-news__category-list span::before {
  background-color: transparent;
}
@media screen and (max-width: 767.98px) {
  .p-news__category .p-news__category-list a::before,
.p-news__category .p-news__category-list span::before {
    background-color: rgb(199, 199, 199);
  }
}

.p-news__category-list {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.4rem;
  -moz-column-gap: 4rem;
       column-gap: 4rem;
}
@media screen and (max-width: 767.98px) {
  .p-news__category-list {
    display: grid;
    grid-template-columns: repeat(2, calc(50% - 0.5rem));
    gap: 1.4rem 1rem;
  }
}
.p-news__category-list a,
.p-news__category-list span {
  text-decoration: none;
  color: currentColor;
  padding-left: 1.7rem;
  display: inline-block;
  position: relative;
  letter-spacing: 0.1em;
}
.p-news__category-list a::before,
.p-news__category-list span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.3rem;
  width: 0.8rem;
  height: 0.8rem;
  border-radius: 1000px;
}
@media screen and (max-width: 767.98px) {
  .p-news__category-list a::before,
.p-news__category-list span::before {
    width: 1rem;
    height: 1rem;
  }
}
.p-news__category-list a {
  transition: 0.3s opacity;
}
@media (any-hover: hover) {
  .p-news__category-list a:hover {
    opacity: 0.4;
  }
}
.p-news__category-list .c-current span {
  color: rgb(53, 63, 170);
}
@media screen and (max-width: 767.98px) {
  .p-news__category-list .c-current span {
    color: currentColor;
  }
}

.cat-all::before {
  background-color: rgb(53, 63, 170);
}
.c-current .cat-all::before {
  background-color: rgb(53, 63, 170) !important;
}

.cat-01::before {
  background-color: rgb(66, 168, 244);
}
.c-current .cat-01::before {
  background-color: rgb(66, 168, 244) !important;
}

.cat-02::before {
  background-color: rgb(148, 213, 98);
}
.c-current .cat-02::before {
  background-color: rgb(148, 213, 98) !important;
}

.cat-03::before {
  background-color: rgb(242, 154, 3);
}
.c-current .cat-03::before {
  background-color: rgb(242, 154, 3) !important;
}

.cat-04::before {
  background-color: rgb(53, 63, 170);
}
.c-current .cat-04::before {
  background-color: rgb(53, 63, 170) !important;
}

.cat-other::before {
  background-color: rgb(159, 159, 159);
}
.c-current .cat-other::before {
  background-color: rgb(159, 159, 159) !important;
}

/* --------------------------------------------
  製品一覧・事業内容と強み・担当者紹介　リスト
--------------------------------------------*/
.l-link-list__ttl {
  text-align: center;
  position: relative;
  padding-top: 10rem;
}
@media screen and (max-width: 767.98px) {
  .l-link-list__ttl {
    padding-top: 5.5rem;
  }
}
.l-link-list__ttl::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 1px;
  background-color: rgb(199, 199, 199);
  height: 4.8rem;
}
@media screen and (max-width: 767.98px) {
  .l-link-list__ttl::before {
    height: 2.4rem;
  }
}
.l-link-list__ttl span {
  display: block;
  text-align: center;
}
.l-link-list__ttl .u-jp {
  font-size: 3.6rem;
  color: #000;
  font-weight: 700;
}
@media screen and (max-width: 767.98px) {
  .l-link-list__ttl .u-jp {
    font-size: 2.4rem;
  }
}
.l-link-list__ttl .u-en {
  font-size: 2rem;
  font-weight: 600;
  color: rgb(159, 159, 159);
  margin-top: 2.4rem;
}
@media screen and (max-width: 767.98px) {
  .l-link-list__ttl .u-en {
    margin-top: 1.2rem;
  }
}

.l-link-list {
  width: 136.2rem;
  margin: 9rem auto 0;
  display: flex;
  gap: 2.1rem;
  justify-content: center;
}
.l-link-list.l-col--2 {
  max-width: 92.8rem;
  gap: 7.2rem 4.8rem;
  flex-wrap: wrap;
}
@media screen and (max-width: 767.98px) {
  .l-link-list.l-col--2 {
    gap: 3rem 1.5rem;
  }
}
@media screen and (max-width: 767.98px) {
  .l-link-list {
    flex-wrap: wrap;
    width: 100%;
    padding: 0 2rem 0;
    gap: 3rem 1.5rem;
    margin-top: 4rem;
  }
}
.l-link-list_box {
  width: 44rem;
}
@media (any-hover: hover) {
  .l-link-list_box.c-current a:hover img {
    transform: scale(1);
  }
}
.l-link-list_box.c-current .l-img-wrapper {
  position: relative;
}
.l-link-list_box.c-current .l-img-wrapper::before {
  content: "";
  position: absolute;
  background-color: rgba(24, 24, 24, 0.5);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1;
}
.l-link-list_box.c-current .c-ttl,
.l-link-list_box.c-current .c-ttl * {
  color: rgb(199, 199, 199) !important;
}
.l-link-list_box.c-current .c-ttl::before {
  right: 1.9rem !important;
}
@media screen and (max-width: 767.98px) {
  .l-link-list_box.c-current .c-ttl::before {
    right: 1.5rem !important;
  }
}
.l-link-list_box.c-current .c-ttl::after {
  background-color: rgb(199, 199, 199) !important;
  right: 1rem !important;
}
@media screen and (max-width: 767.98px) {
  .l-link-list_box {
    width: 16rem;
  }
}
.l-link-list_box a {
  display: flex;
  flex-direction: column;
  width: 100%;
  text-decoration: none;
}
.l-link-list_box a .l-img-wrapper {
  width: 100%;
  height: 44rem;
  margin-bottom: 3rem;
  overflow: hidden;
}
@media screen and (max-width: 767.98px) {
  .l-link-list_box a .l-img-wrapper {
    height: 16rem;
    margin-bottom: 1.2rem;
  }
}
.l-link-list_box a .l-img-wrapper img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: 0.6s;
  transform: scale(1);
}
.l-link-list_box a .c-ttl {
  width: 100%;
  display: block;
  position: relative;
}
.l-link-list_box a .c-ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 1.9rem;
  transform: translateY(-50%);
  background: url(../img/common/icn_arrow.svg) no-repeat center/contain;
  width: 1.2rem;
  height: 0.8rem;
  transition: 0.3s right;
  z-index: 1;
}
@media screen and (max-width: 767.98px) {
  .l-link-list_box a .c-ttl::before {
    right: 0.5rem;
    width: 0.9rem;
    height: 0.6rem;
  }
}
.l-link-list_box a .c-ttl::after {
  content: "";
  width: 3rem;
  height: 3rem;
  transition: 0.3s right;
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  background-color: rgb(53, 63, 170);
  border-radius: 1000px;
}
@media screen and (max-width: 767.98px) {
  .l-link-list_box a .c-ttl::after {
    width: 2rem;
    height: 2rem;
    right: 0;
  }
}
.l-link-list_box a .c-ttl .u-en {
  font-size: 5rem;
  color: rgb(53, 63, 170);
  font-weight: 600;
  margin-right: 1.3rem;
  letter-spacing: -0.08rem;
  padding-left: 0.4rem;
}
.l-link-list_box a .c-ttl .u-en .u-txtsize--small {
  font-size: 3rem;
}
@media screen and (max-width: 767.98px) {
  .l-link-list_box a .c-ttl .u-en .u-txtsize--small {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 767.98px) {
  .l-link-list_box a .c-ttl .u-en {
    font-size: 2rem;
    display: block;
    margin-right: 0;
    padding-left: 0;
    padding-bottom: 0.5rem;
    letter-spacing: -0.03rem;
  }
}
.l-link-list_box a .c-ttl .u-jp {
  font-size: 2rem;
  font-weight: 700;
  color: #231815;
}
@media screen and (max-width: 767.98px) {
  .l-link-list_box a .c-ttl .u-jp {
    font-size: 1.4rem;
    display: block;
    letter-spacing: 0.05rem;
  }
}
@media (any-hover: hover) {
  .l-link-list_box a:hover img {
    transform: scale(1.1);
  }
  .l-link-list_box a:hover h3::before {
    right: 0.9rem;
  }
  .l-link-list_box a:hover h3::after {
    right: 0;
  }
}

.u-txtcolor--act1 {
  color: rgb(53, 63, 170);
}

/* ----------------------------------------------------------------------------------------------------
*	スマホの演出
* --------------------------------------------------------------------------------------------------*/
@media screen and (max-width: 767.98px) {
  .is-spAnimate {
    opacity: 0;
    transform: translateY(2rem);
    transition: 0.5s opacity, 0.5s transform !important;
  }
  .is-spAnimate.is-show {
    opacity: 1 !important;
    transform: translateY(0);
  }
}
.l-confirmation {
  z-index: 100001;
  background-color: rgba(37, 37, 37, 0.7);
  position: fixed;
  left: 0;
  right: 0;
  width: 100%;
  height: 100vh;
  place-content: center;
  -webkit-backdrop-filter: blur(7px);
          backdrop-filter: blur(7px);
  display: none;
}
.l-confirmation.is-show {
  display: grid;
}

.l-confirmation__inner {
  width: 80rem;
  background-color: #fff;
  border-radius: 2rem;
  padding-block: 11rem;
  margin-inline: auto;
}
@media screen and (max-width: 767.98px) {
  .l-confirmation__inner {
    width: 84.2666666667%;
    padding: 6rem 3rem;
  }
}

.l-confirmation__content {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  text-align: center;
}
.l-confirmation__content .c-ttl span {
  display: block;
  text-align: center;
}
.l-confirmation__content .c-ttl .u-en {
  font-size: 1.4rem;
  color: rgb(53, 63, 170);
  font-weight: 600;
}
@media screen and (max-width: 767.98px) {
  .l-confirmation__content .c-ttl .u-en {
    font-size: 1.5rem;
  }
}
.l-confirmation__content .c-ttl .u-jp {
  font-size: 3.2rem;
  font-weight: 700;
  margin-top: 2.4rem;
}
@media screen and (max-width: 767.98px) {
  .l-confirmation__content .c-ttl .u-jp {
    font-size: 1.9rem;
    margin-top: 2.4rem;
  }
}
.l-confirmation__content .c-txt {
  margin-top: 2.4rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #000;
}
@media screen and (max-width: 767.98px) {
  .l-confirmation__content .c-txt {
    margin-top: 1.2rem;
    font-size: 1.3rem;
    line-height: 1.75;
    text-align: left;
  }
}
.l-confirmation__content .p-btn-wrapper {
  display: flex;
  justify-content: center;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  margin-top: 6.3rem;
}
@media screen and (max-width: 767.98px) {
  .l-confirmation__content .p-btn-wrapper {
    -moz-column-gap: 1rem;
         column-gap: 1rem;
    margin-top: 2.4rem;
  }
}
.l-confirmation__content .c-btn {
  font-size: 1.8rem;
  display: grid;
  place-content: center;
  width: 24rem;
  height: 5rem;
  color: #fff;
  cursor: pointer;
  border-width: 1px;
  border-style: solid;
  transition: 0.3s background-color, 0.3s color;
}
@media screen and (max-width: 767.98px) {
  .l-confirmation__content .c-btn {
    width: 12rem;
    height: 3.8rem;
    font-size: 1.4rem;
  }
}
.l-confirmation__content .c-btn.-yes {
  background-color: rgb(53, 63, 170);
  border-color: rgb(53, 63, 170);
}
@media (any-hover: hover) {
  .l-confirmation__content .c-btn.-yes:hover {
    color: rgb(53, 63, 170);
  }
}
.l-confirmation__content .c-btn.-no {
  background-color: rgb(159, 159, 159);
  border-color: rgb(159, 159, 159);
}
@media (any-hover: hover) {
  .l-confirmation__content .c-btn.-no:hover {
    color: rgb(159, 159, 159);
  }
}
@media (any-hover: hover) {
  .l-confirmation__content .c-btn:hover {
    background-color: #fff;
  }
}

.l-pageloader {
  position: fixed;
  pointer-events: none;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: 100001;
  overflow: clip;
}
.l-pageloader::before {
  display: block;
  content: "";
  position: absolute;
  width: 150%;
  height: 200%;
  top: -70%;
  left: 50%;
  transform: translateX(-50%) rotate(-5deg);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 30%);
}
.l-pageloader.is-hide {
  display: none;
}
.l-pageloader.is-load::before {
  -webkit-animation: loader 0.2s forwards;
          animation: loader 0.2s forwards;
}
.l-pageloader.is-transition::before {
  -webkit-animation: transition 0.2s forwards;
          animation: transition 0.2s forwards;
}

@-webkit-keyframes loader {
  0% {
    transform: translateX(-50%) rotate(-5deg);
  }
  100% {
    transform: translateX(-50%) rotate(-5deg) translateY(110%);
  }
}

@keyframes loader {
  0% {
    transform: translateX(-50%) rotate(-5deg);
  }
  100% {
    transform: translateX(-50%) rotate(-5deg) translateY(110%);
  }
}
@-webkit-keyframes transition {
  0% {
    transform: translateX(-50%) rotate(-5deg) translateY(110%);
  }
  100% {
    transform: translateX(-50%) rotate(-5deg);
  }
}
@keyframes transition {
  0% {
    transform: translateX(-50%) rotate(-5deg) translateY(110%);
  }
  100% {
    transform: translateX(-50%) rotate(-5deg);
  }
}
.l-cards {
  display: flex;
  flex-wrap: wrap;
}
.l-cards.l-col--3 {
  gap: 2rem;
}
.l-cards.l-col--3 .l-card__item {
  width: 38rem;
}
.l-cards.l-col--3 .l-card__item .c-ttl {
  font-size: 2rem;
}
.l-cards.l-col--4 {
  gap: 6rem 2rem;
}
.l-cards.l-col--4 .l-card__item {
  width: 28.5rem;
}
.l-cards.l-col--4 .l-card__item .c-ttl {
  font-size: 1.8rem;
}
@media screen and (max-width: 767.98px) {
  .l-cards.l-sp-col--1 {
    display: block;
  }
  .l-cards.l-sp-col--1 .l-card__item {
    width: auto;
  }
  .l-cards.l-sp-col--1 .l-card__item .c-ttl {
    font-size: 1.8rem;
  }
  .l-cards.l-sp-col--1 .l-card__item .c-txt {
    font-size: 1.3rem;
  }
  .l-cards.l-sp-col--1 .l-card__item .c-detail {
    font-size: 1.3rem;
  }
  .l-cards.l-sp-col--1 .l-card__item + .l-card__item {
    margin-top: 4.8rem;
  }
}
@media screen and (max-width: 767.98px) {
  .l-cards.l-sp-col--2 {
    justify-content: space-between;
    gap: 3.6rem 0;
  }
  .l-cards.l-sp-col--2 .l-card__item {
    width: 15rem;
  }
  .l-cards.l-sp-col--2 .l-card__item .l-card__body {
    padding-top: 1.6rem;
  }
  .l-cards.l-sp-col--2 .l-card__item .l-card__body .c-ttl {
    font-size: 1.4rem;
  }
  .l-cards.l-sp-col--2 .l-card__item .l-card__body .c-txt {
    font-size: 1.2rem;
    color: rgb(88, 88, 92);
    line-height: 1.5;
    margin-bottom: 1.6rem;
  }
  .l-cards.l-sp-col--2 .l-card__item .l-card__body .c-detail {
    font-size: 1.1rem;
  }
  .l-cards.l-sp-col--2 .l-card__item .l-card__body .c-detail span {
    padding-right: 3.5rem;
  }
  .l-cards.l-sp-col--2 .l-card__item .l-card__body .c-detail span::after {
    width: 2.6rem;
    height: 1.3rem;
  }
}

.l-card__item.-tag .p-img-wrapper {
  position: relative;
}
.l-card__item.-tag .p-img-wrapper .p-tags {
  position: absolute;
  display: flex;
  flex-wrap: wrap;
  color: #fff;
  font-size: 1.2rem;
  font-family: "Jost", sans-serif;
  bottom: 0;
  left: 0;
  z-index: 2;
}
@media screen and (max-width: 767.98px) {
  .l-card__item.-tag .p-img-wrapper .p-tags {
    font-size: 0.9rem;
  }
}
.l-card__item.-tag .p-img-wrapper .p-tags li {
  padding: 0.8rem 1rem;
}
@media screen and (max-width: 767.98px) {
  .l-card__item.-tag .p-img-wrapper .p-tags li {
    padding: 0.5rem;
  }
}
.l-card__item.-tag .p-img-wrapper .p-tags .c-new {
  background-color: rgb(66, 168, 244);
}
.l-card__item.-tag .p-img-wrapper .p-tags .c-cont {
  background-color: rgb(53, 63, 170);
}
.l-card__item a {
  text-decoration: none;
  color: currentColor;
  display: block;
  height: 100%;
}
@media (any-hover: hover) {
  .l-card__item a:hover .p-img-wrapper img {
    transform: scale(1.1);
  }
  .l-card__item a:hover .l-card__body {
    opacity: 0.7;
  }
}

.l-card__inner {
  height: 100%;
  display: flex;
  flex-direction: column;
}
.l-card__inner .p-img-wrapper {
  aspect-ratio: 380/254;
  overflow: hidden;
  position: relative;
  margin-bottom: 0;
}
.l-card__inner .p-img-wrapper img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: 0.3s transform;
}

.l-card__body {
  flex-grow: 1;
  padding-top: 3.2rem;
  display: flex;
  flex-direction: column;
  transition: 0.3s opacity;
}
.l-card__body .c-cat {
  font-size: 1.4rem;
  font-weight: 700;
  position: relative;
  padding-left: 2rem;
  line-height: 1;
  color: rgb(53, 63, 170);
}
.l-card__body .c-cat::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  background: url(../img/common/icn_cat.svg) no-repeat center/contain;
  width: 1.3rem;
  height: 1.4rem;
}
.l-card__body .l-flex {
  display: flex;
  gap: 0.5rem 1.6rem;
}
.l-card__body .l-flex + .c-ttl {
  margin-top: 1.6rem;
}
.l-card__body .c-ttl {
  font-weight: 700;
  line-height: 1.5;
}
.l-card__body .c-ttl + .c-txt {
  margin-top: 0.8rem;
}
.l-card__body .c-txt {
  font-size: 1.4rem;
  color: #000;
  line-height: 1.75;
  margin-bottom: 3.2rem;
}
.l-card__body .c-detail {
  margin-top: auto;
  font-size: 1.4rem;
}
.l-card__body .c-detail span {
  display: inline-block;
  text-decoration: underline;
  position: relative;
  padding-right: 4.1rem;
}
.l-card__body .c-detail span::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  background: url(../img/common/icn_nav.svg) no-repeat center/contain;
  width: 3.2rem;
  height: 1.6rem;
}

.l-form {
  /* inputの位置と枠　*/
  /*　チェックマーク　*/
  /* ラジオボタンのチェック　*/
}
@layer components {
  .l-form input,
.l-form button,
.l-form select,
.l-form textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: transparent;
    border: none;
    border-radius: 0;
    font: inherit;
    outline: none;
  }
  .l-form textarea {
    resize: vertical;
  }
  .l-form input[type=checkbox],
.l-form input[type=radio] {
    visibility: hidden;
    width: 1px;
    position: absolute;
    top: 0;
    left: 0;
  }
  .l-form input[type=submit],
.l-form input[type=button],
.l-form label,
.l-form button,
.l-form select {
    cursor: pointer;
  }
  .l-form select::-ms-expand {
    display: none;
  }
  .l-form input[type=text] {
    line-height: normal;
  }
}
.l-form ::-moz-placeholder {
  color: rgb(147, 162, 172);
}
.l-form ::placeholder {
  color: rgb(147, 162, 172);
}
.l-form .l-input-txt {
  background-color: rgb(234, 239, 242);
  border: 1px solid rgb(141, 176, 196);
  font-size: 1.4rem;
  padding: 1.2rem 2rem;
  line-height: 1.5;
  width: 100%;
}
@media screen and (max-width: 767.98px) {
  .l-form .l-input-txt {
    padding-block: 1rem;
  }
}
.l-form textarea {
  min-height: 26.4rem;
}
@media screen and (max-width: 767.98px) {
  .l-form textarea {
    min-height: 20rem;
  }
}
.l-form input + span {
  display: inline-block;
  position: relative;
  padding-left: 3.5rem;
  cursor: pointer;
}
@media screen and (max-width: 767.98px) {
  .l-form input + span {
    padding-left: 3.1rem;
  }
}
.l-form input + span:before {
  display: block;
  position: absolute;
  border: 1px solid #8db0c4;
  content: "";
  background-color: #eaeff2;
}
.l-form input[type=checkbox] + span:before {
  top: 0;
  left: 0;
  width: 1.6rem;
  height: 1.6rem;
  box-shadow: 0 0 0 0 #eaeff2;
  transition: 0.3s box-shadow;
}
.l-form input[type=checkbox]:checked + span:before {
  background-color: rgb(53, 63, 170);
  border-color: rgb(53, 63, 170);
}
.l-form input[type=checkbox]:checked + span:after {
  display: block;
  position: absolute;
  top: 0.3rem;
  left: 0.6rem;
  width: 0.4rem;
  height: 0.9rem;
  transform: rotate(45deg);
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  content: "";
}
.l-form input[type=radio] + span:before {
  top: -0.2rem;
  left: 0;
  width: 2rem;
  height: 2rem;
  border-radius: 1000px;
  box-shadow: 0 0 0 0 #eaeff2;
  transition: 0.3s box-shadow;
}
.l-form input[type=radio]:checked + span:after {
  display: block;
  position: absolute;
  top: 0.2rem;
  left: 0.4rem;
  width: 1.4rem;
  height: 1.4rem;
  border-radius: 1000px;
  background-color: rgb(53, 63, 170);
  content: "";
}

.l-progress {
  margin-top: 4.8rem;
}
@media screen and (max-width: 767.98px) {
  .l-progress {
    margin-top: 3rem;
  }
}

.l-progress__list {
  display: flex;
  justify-content: center;
  max-width: 62.4rem;
  margin-inline: auto;
  gap: 19.9rem;
}
@media screen and (max-width: 767.98px) {
  .l-progress__list {
    gap: 5.6rem;
  }
}

.l-progress__item {
  position: relative;
  text-align: center;
}
.l-progress__item:not(:first-of-type) .c-num::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateX(-50%);
  right: calc(100% - 0.8rem);
  width: 12rem;
  background-color: rgb(199, 199, 199);
  height: 1px;
}
@media screen and (max-width: 767.98px) {
  .l-progress__item:not(:first-of-type) .c-num::before {
    width: 3rem;
    right: calc(100% + 1rem);
  }
}
.l-progress__item .c-num {
  width: 4.8rem;
  height: 4.8rem;
  display: grid;
  place-content: center;
  font-family: "Jost", sans-serif;
  font-size: 1.4rem;
  font-weight: 600;
  border-radius: 1000px;
  border: 1px solid rgb(66, 168, 244);
  margin-inline: auto;
  color: rgb(66, 168, 244);
  position: relative;
}
.l-progress__item .c-progress__txt {
  color: #000;
  font-size: 1.4rem;
  margin-top: 1rem;
}
@media screen and (max-width: 767.98px) {
  .l-progress__item .c-progress__txt {
    font-size: 1.2rem;
  }
}
.l-progress__item.c-current .c-num {
  background-color: rgb(66, 168, 244);
  color: #fff;
}

@media screen and (max-width: 767.98px) {
  .p-thanks .l-contact__content {
    margin-inline: 3rem;
    padding-inline: 2.5rem;
  }
}

.l-contact__content {
  max-width: 100rem;
  border: 2px solid rgb(231, 235, 239);
  padding: 8rem 10rem 10rem;
  margin: 6.8rem auto 0;
}
@media screen and (max-width: 767.98px) {
  .l-contact__content {
    margin: 4rem 1rem 0;
    padding: 4rem 2rem;
  }
}
.l-contact__content .c-ttl {
  font-size: 2.4rem;
  font-weight: 700;
  color: #000;
  text-align: center;
}
@media screen and (max-width: 767.98px) {
  .l-contact__content .c-ttl {
    font-size: 1.6rem;
  }
}
.l-contact__content .c-ttl + .c-txt {
  margin-top: 2.6rem;
}
.l-contact__content .c-txt {
  font-size: 1.6rem;
  text-align: center;
  color: #000;
}
@media screen and (max-width: 767.98px) {
  .l-contact__content .c-txt {
    font-size: 1.4rem;
  }
  .l-contact__content .c-txt + .c-txt {
    margin-top: 1em;
  }
}

.l-form__content {
  margin-top: 9rem;
}
@media screen and (max-width: 767.98px) {
  .l-form__content {
    margin-top: 6rem;
  }
}

.l-field {
  display: flex;
  align-items: center;
  border-top: 1px solid #dcdcdc;
  padding-block: 2.4rem;
}
@media screen and (max-width: 767.98px) {
  .l-field {
    display: block;
    border-top-color: rgb(220, 220, 220);
    padding-block: 2.2rem;
  }
}
.l-field:last-of-type {
  border-bottom: 1px solid #dcdcdc;
}
.l-field.-flexstart {
  align-items: flex-start;
}

.l-label_container {
  padding-block: 1rem;
  display: flex;
  width: 30rem;
  align-items: center;
  flex-shrink: 0;
}
@media screen and (max-width: 767.98px) {
  .l-label_container {
    padding-block: 0;
    width: auto;
    align-items: flex-start;
  }
}

@media screen and (max-width: 767.98px) {
  .wpcf7-form-control-wrap {
    display: inline-block;
    padding-bottom: 1rem;
  }
}

.l-label {
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: 700;
  color: #000;
  letter-spacing: 0.08em;
  cursor: text;
}
@media screen and (max-width: 767.98px) {
  .l-label {
    font-size: 1.5rem;
    line-height: 1.75;
  }
}

.l-mark {
  font-size: 1.2rem;
  letter-spacing: 0.2em;
  display: inline-block;
  color: rgb(88, 88, 92);
  background-color: #eaeff2;
  border-radius: 1000px;
  padding: 0.6rem 1.5rem;
  line-height: 1;
  margin-right: 2.4rem;
  flex-shrink: 0;
  position: relative;
}
@media screen and (max-width: 767.98px) {
  .l-mark {
    font-size: 1.1rem;
    padding: 0.4rem 0.8rem 0.5rem;
    margin-right: 0.8rem;
    top: 0.4rem;
  }
}

.-required .l-mark {
  background-color: rgb(53, 63, 170);
  color: #fff;
}

.l-content_container {
  flex-grow: 1;
}
.l-content_container p {
  font-size: 1.6rem;
  line-height: 1.4;
}
@media screen and (max-width: 767.98px) {
  .l-content_container {
    margin-top: 1.5rem;
  }
}
.l-content_container p {
  color: #000;
  line-height: 1.5;
  flex-shrink: 0;
}
.l-content_container .l-flex {
  display: flex;
  align-items: center;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
}
@media screen and (max-width: 767.98px) {
  .l-content_container .l-flex {
    display: block;
    margin-top: 2.2rem;
  }
}
.l-content_container .l-flex p {
  font-size: 1.6rem;
}
.l-content_container .l-vertical p {
  font-size: 1.6rem;
}

.l-input-wrapper.-middle {
  width: 24rem;
}
@media screen and (max-width: 767.98px) {
  .l-input-wrapper.-middle {
    width: auto;
  }
}
.l-input-wrapper.-middle2 {
  width: 40rem;
}
@media screen and (max-width: 767.98px) {
  .l-input-wrapper.-middle2 {
    width: auto;
  }
}
.l-input-wrapper.-small {
  width: 15rem;
}
@media screen and (max-width: 767.98px) {
  .l-input-wrapper.-small {
    width: auto;
  }
}

.l-unit.-vertical .l-input-wrapper + .l-input-wrapper {
  margin-top: 0.8rem;
}
.l-unit.-grid {
  display: grid;
  grid-template-columns: auto auto;
  grid-template-rows: auto auto;
  row-gap: 3.2rem;
  align-items: flex-start;
}
@media screen and (max-width: 767.98px) {
  .l-unit.-grid {
    display: block;
  }
}
.l-unit.-grid .-zip {
  grid-row: 1;
  grid-column: 1;
}
.l-unit.-grid .-pref {
  grid-column: 2;
  grid-row: 1;
}
.l-unit.-grid .-city {
  grid-row: 2;
  grid-column: 1/3;
}
@media screen and (max-width: 767.98px) {
  .l-unit.-grid .-city {
    margin-top: 2.2rem;
  }
}

.p-confirm .l-unit.-grid {
  display: block;
}
.p-confirm .l-unit.-grid > * + * {
  margin-top: 1.2rem;
}

.l-select-wrapper {
  background-color: rgb(234, 239, 242);
  border: 1px solid rgb(141, 176, 196);
  display: inline-block;
  position: relative;
  width: 100%;
}
@media screen and (max-width: 767.98px) {
  .l-select-wrapper {
    margin-top: 1rem;
    width: 21rem;
  }
}
.l-select-wrapper::after {
  position: absolute;
  top: 55%;
  right: 2rem;
  transform: translateY(-50%);
  width: 1rem;
  height: 0.7rem;
  background-color: #000;
  -webkit-clip-path: polygon(0 0, 50% 100%, 100% 0);
          clip-path: polygon(0 0, 50% 100%, 100% 0);
  content: "";
  pointer-events: none;
  z-index: 10;
}
.l-select-wrapper select {
  font-size: 1.4rem;
  padding: 1.5rem 2rem;
  width: 100%;
  color: #212121;
}
@media screen and (max-width: 767.98px) {
  .l-select-wrapper select {
    padding-block: 1.3rem;
  }
}
.l-select-wrapper .wpcf7-form-control-wrap {
  display: block;
  padding-bottom: 0;
}
@media screen and (max-width: 767.98px) {
  .l-select-wrapper:has(.wpcf7-not-valid-tip) {
    margin-bottom: 2rem;
  }
}
.l-select-wrapper .wpcf7-not-valid-tip {
  position: absolute;
  top: calc(100% + 0.1em);
}

.l-grid.-zip {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto auto;
  align-items: center;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
}
@media screen and (max-width: 767.98px) {
  .l-grid.-zip {
    display: flex;
  }
}
.l-grid.-zip .u-zipmark {
  grid-row: 1;
  grid-column: 1;
  font-size: 1.6rem;
}
.l-grid.-zip .l-input-wrapper {
  grid-column: 2;
  grid-row: 1;
}
@media screen and (max-width: 767.98px) {
  .l-grid.-zip .l-input-wrapper {
    width: 15rem;
  }
}
.l-grid.-zip .c-search {
  grid-row: 2;
  grid-column: 2;
  padding: 0;
  color: rgb(53, 63, 170);
  text-decoration: underline;
  text-align: left;
  font-size: 1.2rem;
  margin-top: 1.2rem;
  display: block;
}
@media (any-hover) {
  .l-grid.-zip .c-search {
    transition: 0.3s opacity;
  }
  .l-grid.-zip .c-search:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767.98px) {
  .l-grid.-zip .c-search {
    font-size: 1.4rem;
    margin-top: 0;
    line-height: 1.5;
  }
}

.p-confirm .l-grid.-zip .c-search {
  display: none;
}

.-radio .wpcf7-form-control {
  display: grid;
  grid-template-columns: repeat(3, minmax(28%, auto));
  gap: 2.6rem 1rem;
}
@media screen and (max-width: 767.98px) {
  .-radio .wpcf7-form-control {
    margin-top: 0.3rem;
    grid-template-columns: repeat(2, 1fr);
    gap: 2.6rem 2rem;
  }
}
.-radio .wpcf7-list-item-label {
  font-size: 1.6rem;
}

.-city .l-input-wrapper {
  margin-top: 0.8rem;
}

.p-agree {
  text-align: center;
  margin-top: 7rem;
}
@media screen and (max-width: 767.98px) {
  .p-agree {
    margin-top: 4.9rem;
  }
}
.p-agree p {
  line-height: 1.4;
}
.p-agree a {
  display: inline-block;
  position: relative;
  padding-right: 1.5rem;
  color: rgb(53, 63, 170);
  text-decoration: none;
  margin-right: 0.5rem;
}
@media (any-hover) {
  .p-agree a {
    transition: 0.3s opacity;
  }
  .p-agree a:hover {
    opacity: 0.7;
  }
}
.p-agree a::before {
  content: "";
  position: absolute;
  bottom: 0.2rem;
  left: 0;
  right: 0;
  width: 100%;
  height: 1px;
  background-color: rgb(53, 63, 170);
}
.p-agree a::after {
  content: "";
  position: absolute;
  width: 1rem;
  height: 1rem;
  background: url(../img/common/icn_blank.svg) no-repeat center/contain;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}

.p-btn-unit {
  display: flex;
  justify-content: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 4rem auto 0;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  flex-direction: row-reverse;
}
@media screen and (max-width: 767.98px) {
  .p-btn-unit {
    margin-top: 2rem;
    flex-direction: column;
    gap: 2rem 0;
  }
}
.p-confirm .p-btn-unit {
  margin-top: 8rem;
}
@media screen and (max-width: 767.98px) {
  .p-confirm .p-btn-unit {
    margin-top: 4rem;
  }
}

.l-btn {
  font-size: 1.8rem;
  font-weight: 700;
  background-color: rgb(53, 63, 170);
  color: #fff;
  display: grid;
  place-content: center;
  min-height: 6.4rem;
  width: 36rem;
  border-radius: 10000px;
  border: 1px solid rgb(53, 63, 170);
  text-decoration: none;
  transition: 0.3s color, 0.3s background-color;
}
@media screen and (max-width: 767.98px) {
  .l-btn {
    width: 24rem;
    min-height: 4.8rem;
    font-size: 1.5rem;
  }
}
@media (any-hover: hover) {
  .l-btn:hover {
    background-color: #fff;
    color: rgb(53, 63, 170);
  }
}
.l-btn.-return {
  background-color: rgb(159, 159, 159);
  border: 1px solid rgb(159, 159, 159);
}
@media (any-hover: hover) {
  .l-btn.-return:hover {
    background-color: #fff;
    color: rgb(159, 159, 159);
  }
}
@media screen and (max-width: 767.98px) {
  .l-btn + .l-btn {
    margin-top: 2rem;
  }
}

.p-thanks {
  padding-bottom: 12rem !important;
}
@media screen and (max-width: 767.98px) {
  .p-thanks {
    padding-bottom: 4rem !important;
  }
}
@media screen and (max-width: 767.98px) {
  .p-thanks .p-btn-unit {
    margin-top: 3.2rem;
  }
}

.l-content_container.-checkbox {
  padding-left: 8.4rem;
  margin-top: 2.4rem;
}
@media screen and (max-width: 767.98px) {
  .l-content_container.-checkbox {
    padding-left: 0;
    padding-bottom: 1rem;
  }
}
.l-content_container.-checkbox .l-ttl-wrapper {
  display: flex;
  padding-left: 4rem;
  margin-bottom: 2.3rem;
}
@media screen and (max-width: 767.98px) {
  .l-content_container.-checkbox .l-ttl-wrapper {
    padding-left: 3rem;
  }
}
.l-content_container.-checkbox .l-ttl-wrapper .c-code,
.l-content_container.-checkbox .l-ttl-wrapper .c-name {
  font-size: 1.2rem;
  color: rgb(88, 88, 92);
}
.l-content_container.-checkbox .l-ttl-wrapper .c-code {
  width: 9rem;
  margin-right: 1rem;
}
@media screen and (max-width: 767.98px) {
  .l-content_container.-checkbox .l-ttl-wrapper .c-code {
    width: 7rem;
  }
}
.l-content_container.-checkbox .l-ttl-wrapper .c-name {
  font-size: 1.2rem;
}
.l-content_container.-checkbox .l-label-ttl {
  display: block;
}
.l-content_container.-checkbox .l-label-ttl + .l-label-ttl {
  margin-top: 2.2rem;
}
.l-content_container.-checkbox .l-label-ttl .c-code {
  display: inline-block;
  font-size: 1.4rem;
  font-weight: 700;
  color: rgb(53, 63, 170);
  width: 9rem;
  letter-spacing: 0.08em;
  line-height: 1.25;
}
@media screen and (max-width: 767.98px) {
  .l-content_container.-checkbox .l-label-ttl .c-code {
    width: 7rem;
    letter-spacing: 0;
  }
}
.l-content_container.-checkbox .l-label-ttl .c-name {
  font-size: 1.4rem;
  font-weight: 700;
  color: #000;
  letter-spacing: 0.08em;
  line-height: 1.25;
}
@media screen and (max-width: 767.98px) {
  .l-content_container.-checkbox .l-label-ttl .c-name {
    letter-spacing: 0;
  }
}
.l-content_container.-checkbox .l-label-name {
  padding-left: 4rem;
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
}
@media screen and (max-width: 767.98px) {
  .l-content_container.-checkbox .l-label-name {
    padding-left: 3rem;
    display: grid;
    grid-template-columns: auto 1fr;
  }
}

@media (any-hover: hover) {
  .l-label-ttl:hover input[type=radio] + span:before,
.l-label-ttl:hover input[type=checkbox] + span:before {
    box-shadow: 0 0 0 3px #eaeff2;
  }
}

.p-confirm .l-label-ttl {
  padding-left: 3.5rem;
}
@media screen and (max-width: 767.98px) {
  .p-confirm .l-label-ttl {
    padding-left: 3.1rem;
  }
}
.p-confirm .l-content_container.-checkbox .l-ttl-wrapper {
  display: none;
}

.p-confirm .p-content__heading .c-txt {
  font-size: 2.4rem;
  font-weight: 700;
}
@media screen and (max-width: 767.98px) {
  .p-confirm .p-content__heading .c-txt {
    font-size: 1.6rem;
    text-align: center;
  }
}
.p-confirm .l-contact__content {
  margin-top: 6rem;
}
@media screen and (max-width: 767.98px) {
  .p-confirm .l-contact__content {
    margin-top: 5rem;
  }
}
.p-confirm .l-input-wrapper {
  width: auto !important;
}

@media screen and (max-width: 767.98px) {
  .p-confirm .l-field.-product {
    padding-bottom: 1rem;
  }
}
.p-confirm .l-content_container.-checkbox .l-ttl-wrapper,
.p-confirm .l-content_container.-checkbox .l-label-ttl,
.p-confirm .l-content_container.-checkbox .l-label-name {
  padding-left: 0;
}
@media screen and (max-width: 767.98px) {
  .p-confirm .l-content_container.-checkbox .l-label-ttl + .l-label-ttl {
    margin-top: 1.2rem;
  }
}

@media screen and (max-width: 767.98px) {
  .p-thanks .l-contact__content {
    margin-top: 0;
  }
}

.wpcf7-not-valid-tip::before {
  display: none !important;
}

.l-input-wrapper .wpcf7-form-control-wrap {
  padding-bottom: 0;
}

.wpcf7-not-valid-tip {
  margin-top: 0.5em;
  padding-left: 0 !important;
}

.wpcf7-spinner {
  position: absolute !important;
  padding-left: 0 !important;
  top: calc(100% + 2rem);
}
@media screen and (max-width: 767.98px) {
  .wpcf7-spinner {
    left: 0;
    right: 0;
    margin-inline: auto;
    top: calc(100% + 0.5rem);
  }
}

.wpcf7-response-output {
  border-color: rgb(53, 63, 170) !important;
}

.p-btn-unit {
  position: relative;
}

.-radio.-check .wpcf7-not-valid-tip {
  margin-top: 0.8em;
  margin-left: 1em;
}

.-radio.-check .wpcf7-list-item-label {
  text-align: left;
}
@media screen and (max-width: 767.98px) {
  .-radio.-check .wpcf7-list-item-label {
    font-size: 1.4rem;
  }
}

.l-news__list {
  margin-top: 10rem;
}
.l-news__list.l-inner-narrow a {
  margin-inline: 3rem;
}
@media screen and (max-width: 767.98px) {
  .l-news__list.l-inner-narrow a {
    margin-inline: 0;
  }
}
@media screen and (max-width: 767.98px) {
  .l-news__list {
    margin-top: 6rem;
  }
}

.l-news__item {
  min-height: 10.2rem;
  border-top: 1px solid rgb(199, 199, 199);
  display: grid;
  align-content: center;
}
.l-news__item:not(:has(a)) {
  padding-block: 1rem;
}
.l-news__item:not(:has(a)) .l-news___ttl {
  margin-top: 0;
}
@media screen and (max-width: 767.98px) {
  .l-news__item:not(:has(a)) {
    padding-block: 2rem;
  }
}
.l-news__item:last-of-type {
  border-bottom: 1px solid rgb(199, 199, 199);
}
@media screen and (max-width: 767.98px) {
  .l-news__item {
    min-height: inherit;
  }
}
.l-news__item a {
  text-decoration: none;
  display: grid;
  align-content: center;
  height: 100%;
  color: currentColor;
  position: relative;
  padding-block: 1rem;
  padding-right: 4rem;
}
@media screen and (max-width: 767.98px) {
  .l-news__item a {
    padding-block: 2rem;
  }
}
@media (any-hover: hover) {
  .l-news__item a:hover::before {
    right: 1rem;
  }
  .l-news__item a:hover::after {
    right: 2rem;
  }
  .l-news__item a:hover .c-ttl {
    opacity: 0.4;
  }
}
.l-news__item a::after, .l-news__item a::before {
  content: "";
  position: absolute;
}
.l-news__item a::before {
  width: 3rem;
  height: 3rem;
  background-color: rgb(53, 63, 170);
  border-radius: 1000px;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: 0.3s right;
}
@media screen and (max-width: 767.98px) {
  .l-news__item a::before {
    width: 2.4rem;
    height: 2.4rem;
    right: 0.6rem;
  }
}
.l-news__item a::after {
  transition: 0.3s right;
  background-color: #fff;
  width: 1rem;
  height: 0.7rem;
  top: 50%;
  right: 1rem;
  z-index: 2;
  transform: translateY(-50%);
  -webkit-mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 8.89 5.83"><title>arrow</title><path class="cls-1" d="M8.53,2.56L5.97,0l-.35.35-.35.35,1.71,1.71H.5c-.28,0-.5.22-.5.5s.22.5.5.5h6.47l-1.71,1.71.35.35.35.35,2.56-2.56.35-.35-.35-.35Z"/></svg>') no-repeat center/100% 100%;
          mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 8.89 5.83"><title>arrow</title><path class="cls-1" d="M8.53,2.56L5.97,0l-.35.35-.35.35,1.71,1.71H.5c-.28,0-.5.22-.5.5s.22.5.5.5h6.47l-1.71,1.71.35.35.35.35,2.56-2.56.35-.35-.35-.35Z"/></svg>') no-repeat center/100% 100%;
}
@media screen and (max-width: 767.98px) {
  .l-news__item a::after {
    width: 1rem;
    height: 0.7rem;
    right: 1.3rem;
  }
}

.p-aside .l-news__item {
  padding-inline: 12.7rem;
}
@media screen and (max-width: 767.98px) {
  .p-aside .l-news__item {
    padding-inline: 0;
  }
}

.l-news__inner {
  display: flex;
  height: 100%;
  justify-content: space-between;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  align-items: center;
}
@media screen and (max-width: 767.98px) {
  .l-news__inner {
    display: block;
  }
}
.l-news__inner .l-news__category-list {
  flex-direction: column;
  gap: 0.2rem 0;
}
@media screen and (max-width: 767.98px) {
  .l-news__inner .l-news__category-list {
    gap: 0.3rem 0;
  }
}
.l-news__inner .u-wrap {
  display: flex;
  align-items: center;
  gap: 1rem 3.4rem;
  flex-wrap: wrap;
}
@media screen and (max-width: 767.98px) {
  .l-news__inner .u-wrap {
    gap: 1rem 1.6rem;
  }
}
.l-news__inner .u-wrap .c-category {
  font-size: 1.2rem;
  color: rgb(88, 88, 92);
  padding-left: 1.5em;
  line-height: 1.2;
  position: relative;
}
@media screen and (max-width: 767.98px) {
  .l-news__inner .u-wrap .c-category {
    padding-left: 1em;
  }
}
.l-news__inner .u-wrap .c-category::before {
  content: "";
  position: absolute;
  top: 0;
  width: 0.7rem;
  height: 0.7rem;
  border-radius: 100px;
  left: 0;
  top: 0.45rem;
}
@media screen and (max-width: 767.98px) {
  .l-news__inner .u-wrap .c-category {
    width: inherit;
  }
}
.l-news__inner time {
  font-family: "Jost", sans-serif;
  color: rgb(53, 63, 170);
  font-size: 2.4rem;
  font-weight: 600;
  display: flex;
  align-items: center;
  flex-shrink: 0;
  width: 6em;
}
@media screen and (max-width: 767.98px) {
  .l-news__inner time {
    position: relative;
    top: 0.1rem;
    font-size: 1.1rem;
  }
}
.l-news__inner time .c-year {
  font-size: 1.2rem;
  display: inline-block;
  margin-right: 1.5em;
}
@media screen and (max-width: 767.98px) {
  .l-news__inner time .c-year {
    font-size: 1.1rem;
    margin-right: 0;
  }
}

.l-news___ttl,
.l-news__ttl {
  font-size: 1.6rem;
  font-weight: 700;
  color: #000;
  line-height: 1.5;
  transition: 0.3s opacity;
  width: 54rem;
  flex-shrink: 0;
}
@media screen and (max-width: 767.98px) {
  .l-news___ttl,
.l-news__ttl {
    font-size: 1.4rem;
    margin-top: 1rem;
    width: auto;
  }
}

.l-news__category .l-news__category-list a::before,
.l-news__category .l-news__category-list span::before {
  background-color: transparent;
}
@media screen and (max-width: 767.98px) {
  .l-news__category .l-news__category-list a::before,
.l-news__category .l-news__category-list span::before {
    background-color: rgb(199, 199, 199);
  }
}

.l-news__category-list {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.4rem;
  gap: 2rem 4rem;
}
.l-news__category-list a,
.l-news__category-list span {
  text-decoration: none;
  color: currentColor;
  padding-left: 1.7rem;
  display: inline-block;
  position: relative;
  letter-spacing: 0.1em;
}
.l-news__category-list a::before,
.l-news__category-list span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.4rem;
  width: 0.8rem;
  height: 0.8rem;
  border-radius: 1000px;
  opacity: 0;
  transition: 0.3s opacity;
}
@media screen and (max-width: 767.98px) {
  .l-news__category-list a::before,
.l-news__category-list span::before {
    width: 1rem;
    height: 1rem;
  }
}
.l-news__category-list a {
  transition: 0.3s opacity;
}
@media (any-hover: hover) {
  .l-news__category-list a:hover {
    opacity: 0.4;
  }
  .l-news__category-list a:hover::before {
    opacity: 1;
  }
}
.l-news__category-list .c-current span {
  color: rgb(53, 63, 170);
}
.l-news__category-list .c-current span::before {
  opacity: 1;
}
@media screen and (max-width: 767.98px) {
  .l-news__category-list .c-current span {
    color: currentColor;
  }
}

.cat-all::before {
  background-color: rgb(53, 63, 170);
}
.c-current .cat-all::before {
  background-color: rgb(53, 63, 170) !important;
  opacity: 1;
}

.cat-01::before {
  background-color: rgb(66, 168, 244);
}
.c-current .cat-01::before {
  background-color: rgb(66, 168, 244) !important;
  opacity: 1;
}

.cat-02::before {
  background-color: rgb(148, 213, 98);
}
.c-current .cat-02::before {
  background-color: rgb(148, 213, 98) !important;
  opacity: 1;
}

.cat-03::before {
  background-color: rgb(242, 154, 3);
}
.c-current .cat-03::before {
  background-color: rgb(242, 154, 3) !important;
  opacity: 1;
}

.cat-04::before {
  background-color: rgb(53, 63, 170);
}
.c-current .cat-04::before {
  background-color: rgb(53, 63, 170) !important;
  opacity: 1;
}

.cat-other::before {
  background-color: rgb(159, 159, 159);
}
.c-current .cat-other::before {
  background-color: rgb(159, 159, 159) !important;
  opacity: 1;
}

.l-breadcrumb {
  font-size: 1.2rem;
  color: rgb(159, 159, 159);
  margin-top: auto;
}
@media screen and (max-width: 767.98px) {
  .l-breadcrumb {
    margin-inline: 3rem;
  }
}
.l-breadcrumb a {
  color: rgb(159, 159, 159);
  text-decoration: none;
  position: relative;
  display: inline-block;
}
@media (any-hover) {
  .l-breadcrumb a {
    transition: 0.3s opacity;
  }
  .l-breadcrumb a:hover {
    opacity: 0.7;
  }
}

.l-breadcrumb__list {
  display: flex;
  flex-wrap: wrap;
  row-gap: 1rem;
}

.l-breadcrumb__item {
  position: relative;
}
.l-breadcrumb__item.-home a {
  padding-left: 1.8rem;
  color: rgb(53, 63, 170);
}
.l-breadcrumb__item.-home a::before {
  content: "";
  position: absolute;
  width: 1.2rem;
  height: 1.2rem;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background: url(../img/common/icn_home.svg) no-repeat center/contain;
}
.l-breadcrumb__item:not(:last-of-type) {
  padding-right: 1.2rem;
  margin-right: 1.2rem;
}
.l-breadcrumb__item:not(:last-of-type)::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 0.4rem;
  height: 0.4rem;
  border-top: 2px solid rgb(159, 159, 159);
  border-right: 2px solid rgb(159, 159, 159);
  transform: rotate(45deg) translateY(-50%);
}

.c-link {
  text-decoration: none;
  color: currentColor;
}

.c-link.-type1 {
  display: block;
  max-width: 28rem;
  font-size: 1.8rem;
  font-weight: 700;
  font-weight: 700;
  position: relative;
  padding-block: 2rem;
  width: 100%;
  border-bottom: 1px solid rgb(199, 199, 199);
}
@media screen and (max-width: 767.98px) {
  .c-link.-type1 {
    font-size: 1.6rem;
    border-bottom-color: rgb(88, 88, 92);
    padding-block: 2rem;
    max-width: 24rem;
  }
}
.c-link.-type1.u-line--white {
  border-bottom-color: #fff;
}
.c-link.-type1 .c-link-txt {
  transition: 0.3s transform, 0.3s color;
  display: inline-block;
}
@media (any-hover: hover) {
  .c-link.-type1.-color--white:hover .c-link-txt {
    color: #fff;
  }
}
@media (any-hover: hover) {
  .c-link.-type1:hover .c-link-txt {
    transform: translateX(0.5rem);
    color: rgb(53, 63, 170);
  }
  .c-link.-type1:hover::after {
    transform: translate(-0.5rem, -50%);
  }
}
.c-link.-type1::after {
  transition: 0.3s transform;
  content: "";
  position: absolute;
  width: 3.2rem;
  height: 1.6rem;
  background: url(../img/common/icn_nav.svg) no-repeat center/100% 100%;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
}

.c-link.-type2 {
  position: relative;
  display: inline-block;
  padding-left: 4.8rem;
  transition: 0.3s transform;
}
@media screen and (max-width: 767.98px) {
  .c-link.-type2 {
    padding-left: 4.8rem;
    padding-right: 12rem;
  }
}
@media (any-hover: hover) {
  .c-link.-type2:hover {
    transform: translateX(1rem);
  }
  .c-link.-type2:hover::before {
    background-color: rgb(53, 63, 170);
  }
  .c-link.-type2:hover::after {
    background-color: #fff;
  }
}
.c-link.-type2 .u-jp {
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  min-width: 11.8em;
  display: inline-block;
}
@media screen and (max-width: 767.98px) {
  .c-link.-type2 .u-jp {
    font-size: 1.6rem;
    display: block;
    min-width: inherit;
  }
}
.c-link.-type2 .u-eng {
  color: rgb(53, 63, 170);
  font-size: 1.4rem;
}
@media screen and (max-width: 767.98px) {
  .c-link.-type2 .u-eng {
    font-size: 1.2rem;
    display: block;
    margin-top: 0.4rem;
  }
}
.c-link.-type2::before, .c-link.-type2::after {
  transition: 0.3s background-color;
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.c-link.-type2::before {
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 1000px;
  border: 1px solid rgb(53, 63, 170);
  left: 0;
}
@media screen and (max-width: 767.98px) {
  .c-link.-type2::before {
    background-color: rgb(53, 63, 170);
    width: 1.8rem;
    height: 1.8rem;
    left: 1.8rem;
  }
}
.c-link.-type2::after {
  width: 1.2rem;
  height: 0.7rem;
  top: 50%;
  transform: translateY(-50%);
  left: 0.7rem;
  background-color: rgb(53, 63, 170);
  -webkit-mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 8.89 5.83"><title>arrow</title><path class="cls-1" d="M8.53,2.56L5.97,0l-.35.35-.35.35,1.71,1.71H.5c-.28,0-.5.22-.5.5s.22.5.5.5h6.47l-1.71,1.71.35.35.35.35,2.56-2.56.35-.35-.35-.35Z"/></svg>') no-repeat center/100% 100%;
          mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 8.89 5.83"><title>arrow</title><path class="cls-1" d="M8.53,2.56L5.97,0l-.35.35-.35.35,1.71,1.71H.5c-.28,0-.5.22-.5.5s.22.5.5.5h6.47l-1.71,1.71.35.35.35.35,2.56-2.56.35-.35-.35-.35Z"/></svg>') no-repeat center/100% 100%;
}
@media screen and (max-width: 767.98px) {
  .c-link.-type2::after {
    background-color: #fff;
    width: 1rem;
    height: 0.7rem;
    left: 2.3rem;
  }
}

.c-link.-type3 {
  position: relative;
  background-color: rgb(53, 63, 170);
  border-radius: 1000px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: grid;
  place-content: center;
  min-height: 4.2rem;
  padding: 1rem 2rem;
  border: 1px solid rgb(53, 63, 170);
  color: #fff;
  transition: 0.3s background-color, 0.3s color;
}
@media screen and (max-width: 767.98px) {
  .c-link.-type3 {
    min-height: 4.6rem;
    width: 100%;
  }
}
@media (any-hover: hover) {
  .c-link.-type3:hover {
    background-color: #fff;
    color: rgb(53, 63, 170);
  }
  .c-link.-type3:hover .c-link-txt::before {
    background-color: rgb(53, 63, 170);
  }
}
.c-link.-type3 .c-link-txt {
  font-size: 1.4rem;
  font-weight: 700;
  display: inline-block;
  padding-left: 2rem;
  position: relative;
}
.c-link.-type3 .c-link-txt::before {
  content: "";
  transition: 0.3s background-color;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 1rem;
  height: 1.5rem;
  background-color: #fff;
  -webkit-mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10.5 15"><title>lamp</title><path class="cls-1" d="M5.25,0c-1.39,0-2.73.55-3.71,1.54-.98.98-1.54,2.32-1.54,3.71,0,1.78.89,3.35,2.25,4.31v1.69c0,.2.08.39.22.53.14.14.33.22.53.22h4.5c.2,0,.39-.08.53-.22.14-.14.22-.33.22-.53v-1.69c1.36-.95,2.25-2.52,2.25-4.31,0-1.39-.55-2.73-1.54-3.71-.98-.98-2.32-1.54-3.71-1.54ZM3,14.25c0,.2.08.39.22.53.14.14.33.22.53.22h3c.2,0,.39-.08.53-.22.14-.14.22-.33.22-.53v-.75H3v.75Z"/></svg>') no-repeat center/100% 100%;
          mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10.5 15"><title>lamp</title><path class="cls-1" d="M5.25,0c-1.39,0-2.73.55-3.71,1.54-.98.98-1.54,2.32-1.54,3.71,0,1.78.89,3.35,2.25,4.31v1.69c0,.2.08.39.22.53.14.14.33.22.53.22h4.5c.2,0,.39-.08.53-.22.14-.14.22-.33.22-.53v-1.69c1.36-.95,2.25-2.52,2.25-4.31,0-1.39-.55-2.73-1.54-3.71-.98-.98-2.32-1.54-3.71-1.54ZM3,14.25c0,.2.08.39.22.53.14.14.33.22.53.22h3c.2,0,.39-.08.53-.22.14-.14.22-.33.22-.53v-.75H3v.75Z"/></svg>') no-repeat center/100% 100%;
}

.c-btn {
  text-decoration: none;
  color: currentColor;
  display: grid;
  border-radius: 1000px;
  width: 100%;
  place-content: center;
}
.c-btn.c-btn-gry, .c-btn.c-btn-navy {
  font-size: 1.4rem;
  min-height: 4.8rem;
  padding: 1rem;
  transition: 0.3s background-color, 0.3s color, 0.3s border-color;
}
.c-btn.c-btn-gry {
  background-color: #e7ebef;
  border: 1px solid #e7ebef;
}
.c-btn.c-btn-gry span::before {
  background-color: rgb(53, 63, 170);
}
@media (any-hover: hover) {
  .c-btn.c-btn-gry:hover {
    background-color: #fff;
    border-color: rgb(53, 63, 170);
    color: rgb(53, 63, 170);
  }
}
.c-btn.c-btn-navy {
  background-color: rgb(53, 63, 170);
  border: 1px solid rgb(53, 63, 170);
  color: #fff;
}
.c-btn.c-btn-navy span::before {
  background-color: #fff;
}
@media (any-hover: hover) {
  .c-btn.c-btn-navy:hover {
    background-color: #fff;
    color: rgb(53, 63, 170);
  }
  .c-btn.c-btn-navy:hover span::before {
    background-color: rgb(53, 63, 170);
  }
}
.c-btn span {
  position: relative;
  display: inline-block;
}
.c-btn span::before {
  transition: 0.3s background-color;
  top: 60%;
  transform: translateY(-50%);
}
.c-btn.-dl span {
  padding-left: 2rem;
}
.c-btn.-dl span::before {
  content: "";
  position: absolute;
  width: 1.1rem;
  height: 1.3rem;
  left: 0;
  -webkit-mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10.5 12.75"><title>download</title><path class="cls-1" d="M10.5,4.5h-3V0H3v4.5H0l5.25,5.25,5.25-5.25ZM0,11.25v1.5h10.5v-1.5H0Z"/></svg>') no-repeat center/contain;
          mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10.5 12.75"><title>download</title><path class="cls-1" d="M10.5,4.5h-3V0H3v4.5H0l5.25,5.25,5.25-5.25ZM0,11.25v1.5h10.5v-1.5H0Z"/></svg>') no-repeat center/contain;
}
.c-btn.-contact span {
  padding-left: 2.1rem;
}
.c-btn.-contact span::before {
  content: "";
  position: absolute;
  width: 1.4rem;
  height: 1.6rem;
  left: 0;
  -webkit-mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16.67 13.33"><title>mail</title><path class="cls-1" d="M16.67,0H0v13.33h16.67V0ZM15,3.33l-6.67,4.17L1.67,3.33v-1.67l6.67,4.17L15,1.67v1.67Z"/></svg>') no-repeat center/contain;
          mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16.67 13.33"><title>mail</title><path class="cls-1" d="M16.67,0H0v13.33h16.67V0ZM15,3.33l-6.67,4.17L1.67,3.33v-1.67l6.67,4.17L15,1.67v1.67Z"/></svg>') no-repeat center/contain;
}
.c-btn.-document span {
  padding-left: 2.1rem;
}
.c-btn.-document span::before {
  content: "";
  position: absolute;
  width: 1.4rem;
  height: 1.6rem;
  left: 0;
  -webkit-mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10.67 13.33"><title>document</title><path class="cls-1" d="M9.33,0c.35,0,.69.14.94.39.25.25.39.59.39.94v6.67h-4.33c-.27,0-.52.11-.71.29-.19.19-.29.44-.29.71v4.33H1.33c-.35,0-.69-.14-.94-.39-.25-.25-.39-.59-.39-.94V1.33c0-.35.14-.69.39-.94.25-.25.59-.39.94-.39h8ZM10.64,9.33c-.05.25-.18.48-.36.67l-2.94,2.94c-.18.18-.41.31-.67.36v-3.97h3.97ZM4,6h-.67c-.18,0-.35.07-.47.2-.13.13-.2.29-.2.47s.07.35.2.47c.13.13.29.2.47.2h.67c.18,0,.35-.07.47-.2.13-.13.2-.29.2-.47s-.07-.35-.2-.47c-.13-.13-.29-.2-.47-.2ZM7.33,3.33H3.33c-.18,0-.35.07-.47.2-.13.13-.2.29-.2.47s.07.35.2.47c.13.13.29.2.47.2h4c.18,0,.35-.07.47-.2.13-.13.2-.29.2-.47s-.07-.35-.2-.47-.29-.2-.47-.2Z"/></svg>') no-repeat center/contain;
          mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10.67 13.33"><title>document</title><path class="cls-1" d="M9.33,0c.35,0,.69.14.94.39.25.25.39.59.39.94v6.67h-4.33c-.27,0-.52.11-.71.29-.19.19-.29.44-.29.71v4.33H1.33c-.35,0-.69-.14-.94-.39-.25-.25-.39-.59-.39-.94V1.33c0-.35.14-.69.39-.94.25-.25.59-.39.94-.39h8ZM10.64,9.33c-.05.25-.18.48-.36.67l-2.94,2.94c-.18.18-.41.31-.67.36v-3.97h3.97ZM4,6h-.67c-.18,0-.35.07-.47.2-.13.13-.2.29-.2.47s.07.35.2.47c.13.13.29.2.47.2h.67c.18,0,.35-.07.47-.2.13-.13.2-.29.2-.47s-.07-.35-.2-.47c-.13-.13-.29-.2-.47-.2ZM7.33,3.33H3.33c-.18,0-.35.07-.47.2-.13.13-.2.29-.2.47s.07.35.2.47c.13.13.29.2.47.2h4c.18,0,.35-.07.47-.2.13-.13.2-.29.2-.47s-.07-.35-.2-.47-.29-.2-.47-.2Z"/></svg>') no-repeat center/contain;
}
.c-btn.-list span {
  padding-left: 2.6rem;
}
.c-btn.-list span::before {
  content: "";
  position: absolute;
  width: 1.7rem;
  height: 1.7rem;
  left: 0;
  top: 55%;
  -webkit-mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><title>document</title><path class="cls-1" d="M5.82,4.36h4.36V0h-4.36v4.36ZM11.64,0v4.36h4.36V0h-4.36ZM0,4.36h4.36V0H0v4.36ZM5.82,10.18h4.36v-4.36h-4.36v4.36ZM11.64,10.18h4.36v-4.36h-4.36v4.36ZM0,10.18h4.36v-4.36H0v4.36ZM5.82,16h4.36v-4.36h-4.36v4.36ZM11.64,16h4.36v-4.36h-4.36v4.36ZM0,16h4.36v-4.36H0v4.36Z"/></svg>') no-repeat center/contain;
          mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><title>document</title><path class="cls-1" d="M5.82,4.36h4.36V0h-4.36v4.36ZM11.64,0v4.36h4.36V0h-4.36ZM0,4.36h4.36V0H0v4.36ZM5.82,10.18h4.36v-4.36h-4.36v4.36ZM11.64,10.18h4.36v-4.36h-4.36v4.36ZM0,10.18h4.36v-4.36H0v4.36ZM5.82,16h4.36v-4.36h-4.36v4.36ZM11.64,16h4.36v-4.36h-4.36v4.36ZM0,16h4.36v-4.36H0v4.36Z"/></svg>') no-repeat center/contain;
}

.c-btn-map {
  border-radius: 1000px;
  border: 1px solid rgb(53, 63, 170);
  color: rgb(216, 235, 245);
  font-size: 1.4rem;
  font-weight: 500;
  display: grid;
  place-content: center;
  min-height: 3.8rem;
  background-color: rgb(53, 63, 170);
  text-decoration: none;
  transition: 0.3s background-color, 0.3s color;
}
@media (any-hover: hover) {
  .c-btn-map:hover {
    background-color: #fff;
    color: rgb(53, 63, 170);
  }
  .c-btn-map:hover span::before {
    background-color: rgb(53, 63, 170);
  }
}
.c-btn-map span {
  display: inline-block;
  position: relative;
  padding-left: 1.6rem;
}
.c-btn-map span::before {
  transition: 0.3s background-color;
  content: "";
  position: absolute;
  width: 1.1rem;
  height: 1.3rem;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background-color: rgb(216, 235, 245);
  -webkit-mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11.5 13.88"><title>pin</title><path class="cls-1" d="M9.82,9.82l-4.07,4.07L1.68,9.82c-.8-.8-1.35-1.83-1.57-2.94C-.11,5.76,0,4.6.44,3.55c.44-1.05,1.17-1.95,2.12-2.58.95-.63,2.06-.97,3.19-.97s2.25.34,3.19.97c.95.63,1.68,1.53,2.12,2.58.44,1.05.55,2.21.33,3.32-.22,1.12-.77,2.14-1.57,2.94ZM5.75,8.31c.68,0,1.33-.27,1.81-.75.48-.48.75-1.13.75-1.81s-.27-1.33-.75-1.81c-.48-.48-1.13-.75-1.81-.75s-1.33.27-1.81.75c-.48.48-.75,1.13-.75,1.81s.27,1.33.75,1.81c.48.48,1.13.75,1.81.75ZM5.75,7.03c-.34,0-.66-.13-.9-.37-.24-.24-.37-.56-.37-.9s.13-.66.37-.9c.24-.24.56-.37.9-.37s.66.13.9.37c.24.24.37.56.37.9s-.13.66-.37.9c-.24.24-.56.37-.9.37Z"/></svg>') no-repeat center/contain;
          mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11.5 13.88"><title>pin</title><path class="cls-1" d="M9.82,9.82l-4.07,4.07L1.68,9.82c-.8-.8-1.35-1.83-1.57-2.94C-.11,5.76,0,4.6.44,3.55c.44-1.05,1.17-1.95,2.12-2.58.95-.63,2.06-.97,3.19-.97s2.25.34,3.19.97c.95.63,1.68,1.53,2.12,2.58.44,1.05.55,2.21.33,3.32-.22,1.12-.77,2.14-1.57,2.94ZM5.75,8.31c.68,0,1.33-.27,1.81-.75.48-.48.75-1.13.75-1.81s-.27-1.33-.75-1.81c-.48-.48-1.13-.75-1.81-.75s-1.33.27-1.81.75c-.48.48-.75,1.13-.75,1.81s.27,1.33.75,1.81c.48.48,1.13.75,1.81.75ZM5.75,7.03c-.34,0-.66-.13-.9-.37-.24-.24-.37-.56-.37-.9s.13-.66.37-.9c.24-.24.56-.37.9-.37s.66.13.9.37c.24.24.37.56.37.9s-.13.66-.37.9c-.24.24-.56.37-.9.37Z"/></svg>') no-repeat center/contain;
}

.c-btn-zoom {
  border: 1px solid #fff;
  border-radius: 1000px;
  display: grid;
  place-content: center;
  min-height: 5.2rem;
  color: #fff;
  background-color: transparent;
}
@media screen and (max-width: 767.98px) {
  .c-btn-zoom {
    border-color: rgb(199, 199, 199);
    font-size: 1.4rem;
    font-weight: 700;
    color: #000;
  }
}
.c-btn-zoom span {
  position: relative;
  display: inline-block;
  padding-left: 2rem;
  transition: 0.3s background-color, 0.3s color;
}
@media screen and (max-width: 767.98px) {
  .c-btn-zoom span {
    padding-left: 2.5rem;
  }
}
.c-btn-zoom span::before {
  transition: 0.3s background-color;
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 1.8rem;
  height: 1.8rem;
  transform: translateY(-50%);
  left: 0;
  background-color: #fff;
  -webkit-mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 17.7 17.69"><title>zoom</title><path class="cls-1" d="M11.62,12.89c-1.45,1.12-3.27,1.65-5.09,1.48-1.82-.17-3.51-1.03-4.73-2.41C.59,10.59-.05,8.81,0,6.98c.06-1.83.81-3.57,2.11-4.87C3.4.81,5.14.06,6.98,0c1.83-.06,3.61.59,4.99,1.8,1.37,1.21,2.23,2.9,2.4,4.73s-.36,3.64-1.48,5.09l4.82,4.8-1.28,1.28-4.8-4.81h0ZM7.21,12.6c.71,0,1.41-.14,2.07-.41s1.25-.67,1.75-1.17c.5-.5.9-1.1,1.17-1.75.27-.66.41-1.36.41-2.07s-.14-1.41-.41-2.07c-.27-.66-.67-1.25-1.17-1.75-.5-.5-1.1-.9-1.75-1.17-.66-.27-1.36-.41-2.07-.41-1.43,0-2.81.57-3.82,1.58-1.01,1.01-1.58,2.39-1.58,3.82s.57,2.81,1.58,3.82c1.01,1.01,2.39,1.58,3.82,1.58ZM6.31,6.3v-1.8h1.8v1.8h1.8v1.8h-1.8v1.8h-1.8v-1.8h-1.8v-1.8h1.8Z"/></svg>') no-repeat center/contain;
          mask: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 17.7 17.69"><title>zoom</title><path class="cls-1" d="M11.62,12.89c-1.45,1.12-3.27,1.65-5.09,1.48-1.82-.17-3.51-1.03-4.73-2.41C.59,10.59-.05,8.81,0,6.98c.06-1.83.81-3.57,2.11-4.87C3.4.81,5.14.06,6.98,0c1.83-.06,3.61.59,4.99,1.8,1.37,1.21,2.23,2.9,2.4,4.73s-.36,3.64-1.48,5.09l4.82,4.8-1.28,1.28-4.8-4.81h0ZM7.21,12.6c.71,0,1.41-.14,2.07-.41s1.25-.67,1.75-1.17c.5-.5.9-1.1,1.17-1.75.27-.66.41-1.36.41-2.07s-.14-1.41-.41-2.07c-.27-.66-.67-1.25-1.17-1.75-.5-.5-1.1-.9-1.75-1.17-.66-.27-1.36-.41-2.07-.41-1.43,0-2.81.57-3.82,1.58-1.01,1.01-1.58,2.39-1.58,3.82s.57,2.81,1.58,3.82c1.01,1.01,2.39,1.58,3.82,1.58ZM6.31,6.3v-1.8h1.8v1.8h1.8v1.8h-1.8v1.8h-1.8v-1.8h-1.8v-1.8h1.8Z"/></svg>') no-repeat center/contain;
}
@media screen and (max-width: 767.98px) {
  .c-btn-zoom span::before {
    background-color: #000;
  }
}
/*# sourceMappingURL=common.css.map */