@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Lato::wght@300&wght@700&family=Noto+Sans+JP:wght@500;700&family=Josefin+Sans:wght@600&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@600&display=swap");
/* style */
.post_content .is-style-heading_subtitle {
  overflow: hidden;
}
.post_content .is-style-heading_subtitle .is-style-heading_subtitle__text {
  overflow: hidden;
  margin: 0;
}
.post_content .is-style-heading_subtitle p {
  font-size: 5rem;
  font-weight: var(--font-weight--bold);
  text-transform: capitalize;
  font-family: var(--font-eng);
  margin: 0;
  line-height: 1.5;
}
@media screen and (max-width: 960px) {
  .post_content .is-style-heading_subtitle p {
    font-size: 2.5714285714rem;
  }
}
.post_content .is-style-heading_subtitle .is-style-section_ttl {
  font-size: var(--swl-fz--content);
  text-align: left;
  margin: 0;
  color: var(--color_main);
  padding-inline-start: 1.125rem;
}
.post_content .is-style-heading_subtitle .is-style-section_ttl:before {
  content: "";
  background: var(--color_main);
  width: 0.625rem;
  height: 0.625rem;
  border-radius: 100vh;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}

.is-style-underline_button {
  flex: 1;
}
.is-style-underline_button .wp-block-button__link {
  background: none;
  color: var(--color_text);
  border-radius: 0;
  width: min(25rem, 100%) !important;
  padding: 0;
  font-size: var(--swl-fz--large);
  position: relative;
  overflow: hidden;
  text-align: left;
}
.is-style-underline_button .wp-block-button__link .mininote {
  line-height: 1.5;
}
.is-style-underline_button .wp-block-button__link:before, .is-style-underline_button .wp-block-button__link:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 0;
  display: block;
  width: 3.125rem;
  aspect-ratio: 1;
  transition: transform 0.2s;
  background: url("../images/arrow_button.svg") no-repeat center/contain;
}
.is-style-underline_button .wp-block-button__link:after {
  opacity: 0;
}
.is-style-underline_button .wp-block-button__link:hover:before {
  transform: scale(0.9);
}
@keyframes transformLeftRight {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(250%);
  }
}
@keyframes transformRightLeft {
  0% {
    transform: translateX(-100%);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
.wp-block-buttons:has(.is-style-fill_icon_button) {
  margin-block-start: 3.75rem;
}
@media screen and (max-width: 960px) {
  .wp-block-buttons:has(.is-style-fill_icon_button) {
    margin-block-start: 1.875rem;
  }
}

.is-style-simple_icon_button {
  width: 100%;
}
.is-style-simple_icon_button .wp-block-button__link {
  border-radius: 0;
  width: min(37.5rem, 100%) !important;
  font-size: var(--swl-fz--large);
  position: relative;
  overflow: hidden;
  text-align: left;
  padding: 2.5rem 3.75rem;
  font-weight: var(--font-weight--bold);
}
@media screen and (max-width: 960px) {
  .is-style-simple_icon_button .wp-block-button__link {
    padding: 2.1428571429rem 2.1428571429rem;
  }
}
.is-style-simple_icon_button .wp-block-button__link:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 3.75rem;
  display: block;
  width: 1.125rem;
  aspect-ratio: 1;
  transition: transform 0.2s;
  background: url("../images/diagonal _arrow.svg") no-repeat center/contain;
}
@media screen and (max-width: 960px) {
  .is-style-simple_icon_button .wp-block-button__link:after {
    right: 1.4285714286rem;
  }
}
.is-style-simple_icon_button .wp-block-button__link:hover:after {
  transform: translate(3px, -3px);
}

.is-style-fill_icon_button {
  width: min(18.75rem, 100%);
  position: relative;
  overflow: hidden;
}
.is-style-fill_icon_button:after {
  content: "";
  background: #fff;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 100vh;
  position: absolute;
  right: 0.75rem;
  top: 0;
  bottom: 0;
  margin: auto;
}
.is-style-fill_icon_button .wp-block-button__link {
  font-weight: var(--font-weight--bold);
  background: var(--color_main);
  color: #fff;
  border-radius: 100vh;
  padding: 1rem 1.875rem;
  font-size: var(--swl-fz--content);
  position: relative;
  text-align: left;
}
.is-style-fill_icon_button .wp-block-button__link:before, .is-style-fill_icon_button .wp-block-button__link:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 1.5625rem;
  display: block;
  width: 0.8125rem;
  aspect-ratio: 1;
  background: url("../images/arrow.svg") no-repeat center/contain;
  z-index: 1;
}
.is-style-fill_icon_button .wp-block-button__link.has-white-background-color:before, .is-style-fill_icon_button .wp-block-button__link.has-white-background-color:after {
  background-image: url("../images/arrow.svg");
}
.is-style-fill_icon_button .wp-block-button__link:after {
  opacity: 0;
}
.is-style-fill_icon_button .wp-block-button__link:hover:before {
  animation: transformLeftRight 0.3s forwards ease-in-out;
}
.is-style-fill_icon_button .wp-block-button__link:hover:after {
  animation: transformRightLeft 0.3s 0.3s forwards ease-in-out;
}

.is-style-my_fill_button .wp-block-button__link {
  background-color: var(--color_main);
  transition: background-color 0.3s ease;
}
.is-style-my_fill_button .wp-block-button__link:hover {
  background-color: #0f1e2e;
}

.is-style-simple_icon_button *,
.rotate_btn * {
  color: transparent !important;
}
.is-style-simple_icon_button * span,
.rotate_btn * span {
  overflow: hidden;
  text-shadow: 0 -2em 0 #fff, 0 0 0 #fff;
  transition: text-shadow 0.3s;
  display: block;
}
.is-style-simple_icon_button *:hover,
.rotate_btn *:hover {
  opacity: 1 !important;
}
.is-style-simple_icon_button *:hover span,
.rotate_btn *:hover span {
  text-shadow: 0 0 0 #fff, 0 1.5em 0 #fff;
}

.is-style-group_radius {
  border-radius: 0.625rem;
}

.is-style-media-text-radius img {
  border-radius: 0.625rem;
}

:root :where(.wp-block-image.is-style-rounded img,
.wp-block-image .is-style-rounded img) {
  border-radius: 0.625rem;
}

@media screen and (max-width: 960px) {
  .is-stacked-on-mobile.wp-block-media-text {
    --swl-mediatext--space: 1.4285714286rem 0 !important;
    --swl-mediatext--gap: 0;
    --swl-mediatext--offsetX: 0;
  }
  .is-stacked-on-mobile.wp-block-media-text.has-background {
    --swl-mediatext--space: 1.4285714286rem 1.4285714286rem !important;
  }
}

@media screen and (max-width: 960px) {
  .wp-block-media-text.is-stacked-on-mobile > .wp-block-media-text__content {
    grid-column: 1;
    grid-row: 2 !important;
    padding: var(--swl-mediatext--space);
  }
  .wp-block-media-text.is-stacked-on-mobile {
    grid-template-columns: 100% !important;
  }
}
.widget_categories > ul > .cat-item > a:before,
.wp-block-categories-list > li > a:before {
  content: "";
  display: inline-block;
  left: 0.4em;
  line-height: 1;
  opacity: 0.85;
  position: absolute;
  top: 50%;
}

.widget_categories > ul > .cat-item > a,
.wp-block-categories-list > li > a {
  padding-left: 0;
}

@media screen and (max-width: 960px) {
  .wp-block-archives-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0 1.4285714286rem;
  }
}
.wp-block-archives li {
  font-size: 1.25rem;
  color: #999999;
}
.wp-block-archives li.is-current {
  font-weight: var(--font-weight--bold);
  color: inherit;
  position: relative;
}
.wp-block-archives li.is-current:before {
  content: "";
  width: 0.625rem;
  aspect-ratio: 1;
  background-color: var(--color_main);
  border-radius: 100vh;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: -1em;
}

/** override */
.pc-py-0 {
  padding-block: var(--padding-block-start, 0) var(--padding-block-end, 0) !important;
}

.editor-visual-editor .pc-py-0 {
  padding-block: var(--padding-block-start, 0) var(--padding-block-end, 0) !important;
}

.top #content {
  padding-block-start: 0;
}

.l-content {
  padding-block-start: 12.5rem;
  margin-block-end: 6.25rem;
}
@media screen and (max-width: 960px) {
  .l-content {
    padding-block-start: 6.4285714286rem;
    margin-block-end: 3.5714285714rem;
  }
}

@media screen and (max-width: 960px) {
  .archive.-sidebar-on .l-content {
    display: flex;
    flex-direction: column-reverse;
  }
}
.wp-block-image img {
  width: 100%;
}

.l-header {
  position: absolute;
  --color_header_bg: rgba(0 0 0 / 0);
  z-index: 102;
}

.l-header[data-spfix="1"] {
  position: fixed;
}

.l-header__inner.l-container,
.l-fixHeader__inner {
  max-width: 96.5879265092vw;
  align-items: center;
}

.l-header__logo,
.l-fixHeader__logo {
  position: absolute;
  left: 0;
}
@media screen and (max-width: 960px) {
  .l-header__logo,
  .l-fixHeader__logo {
    position: relative;
  }
}

.l-header__gnav,
.l-fixHeader__gnav {
  margin-right: 0;
}
.l-header__gnav .c-gnav > .menu-item,
.l-fixHeader__gnav .c-gnav > .menu-item {
  padding-inline: 0.9375rem;
}
.l-header__gnav .c-gnav > .menu-item > a,
.l-fixHeader__gnav .c-gnav > .menu-item > a {
  padding: 0.9375rem 0;
  transition: opacity 0.3s;
}
.l-header__gnav .c-gnav > .menu-item > a:hover,
.l-fixHeader__gnav .c-gnav > .menu-item > a:hover {
  opacity: 0.5;
}
.l-header__gnav .c-gnav > .menu-item > a:after,
.l-fixHeader__gnav .c-gnav > .menu-item > a:after {
  content: none;
}

.-body-solid .l-fixHeader {
  box-shadow: none;
}

.home .c-gnav .ttl {
  color: var(--color_text);
}

.c-gnav {
  padding-block: 2.1875rem;
}

.c-gnav > .menu-item.menu-item__contact {
  position: absolute;
  display: grid;
  align-items: center;
  right: 0;
  top: 0;
}
.c-gnav > .menu-item.menu-item__contact > a {
  background: var(--color_text);
  color: #fff;
  padding: 0.875rem 1.25rem;
  height: auto;
  transition: background-color 0.3s, color 0.3s;
  border: 1px solid var(--color_text);
}
.c-gnav > .menu-item.menu-item__contact > a:after {
  content: none;
}
.c-gnav > .menu-item.menu-item__contact:hover > a {
  background-color: #fff;
  color: var(--color_text);
}

.c-gnav .sub-menu a:before,
.c-listMenu a:before {
  content: none;
}

.c-listMenu a:hover {
  padding-inline: inherit;
  background: none;
}

.c-listMenu .children a:hover,
.c-listMenu .sub-menu a:hover {
  padding-left: inherit;
}

.c-gnav > .menu-item > .sub-menu {
  padding: 1em;
  box-shadow: none;
  backdrop-filter: blur(5px);
  background: #f1f3f7;
  background: linear-gradient(37deg, rgb(241, 243, 247) 45%, rgb(240, 244, 250) 100%);
  width: 100vw;
  top: 7.125rem;
  position: fixed;
  color: var(--color_text);
  display: flex;
  gap: 4.375rem;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.3s ease, visibility 0s linear 0.3s;
}
.c-gnav > .menu-item > .sub-menu .ttl {
  font-size: 1em;
}
.c-gnav > .menu-item > .sub-menu .menu-item {
  max-width: 23.4375rem;
  width: 100%;
}
.c-gnav > .menu-item > .sub-menu .menu-item a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}
.c-gnav > .menu-item > .sub-menu .menu-item a:hover {
  background: none;
  opacity: 0.5;
}
.c-gnav > .menu-item > .sub-menu .menu-item a:after {
  content: "";
  background: url("../images/arrow_button.svg") no-repeat center/contain;
  width: 2.5rem;
  height: 2.5rem;
  transform: none;
}

.c-gnav > .menu-item:hover > .sub-menu {
  opacity: 0;
  visibility: hidden;
}

.l-header.is-menu-open .c-gnav > .menu-item > .sub-menu {
  opacity: 0.9;
  visibility: visible;
  transition: opacity 0.3s ease, visibility 0s linear 0s;
}

/** ヘッダー背景 **/
.l-header:before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
  transition: opacity 0.3s ease;
  background: #f1f3f7;
  background: linear-gradient(37deg, rgb(241, 243, 247) 45%, rgb(240, 244, 250) 100%);
}
.l-header.is-menu-open .c-headLogo img {
  filter: invert(1) brightness(0);
}
.l-header.is-menu-open .c-gnav > .menu-item > a .ttl {
  color: var(--color_text);
}
.l-header.is-menu-open:before {
  opacity: 0.9;
  visibility: visible;
}

/** menu button **/
.l-header__menuBtn,
.p-spMenu__closeBtn {
  width: auto;
  height: auto;
  margin-block: 1.6428571429rem;
  margin-inline-end: 4vw;
}
.l-header__menuBtn .c-iconBtn,
.p-spMenu__closeBtn .c-iconBtn {
  background: var(--color_main);
  width: 7.5rem;
  aspect-ratio: 1;
  border-radius: 100vh;
  flex-wrap: nowrap;
}
@media screen and (max-width: 960px) {
  .l-header__menuBtn .c-iconBtn,
  .p-spMenu__closeBtn .c-iconBtn {
    gap: 0.5714285714rem;
    width: 3.5714285714rem;
  }
}
.l-header__menuBtn .c-iconBtn .c-iconBtn__icon,
.p-spMenu__closeBtn .c-iconBtn .c-iconBtn__icon {
  width: 5rem;
  height: 1.25rem;
  position: relative;
}
@media screen and (max-width: 960px) {
  .l-header__menuBtn .c-iconBtn .c-iconBtn__icon,
  .p-spMenu__closeBtn .c-iconBtn .c-iconBtn__icon {
    width: 1.9285714286rem;
    height: 0.7142857143rem;
  }
}
.l-header__menuBtn .c-iconBtn .c-iconBtn__icon:before, .l-header__menuBtn .c-iconBtn .c-iconBtn__icon:after,
.p-spMenu__closeBtn .c-iconBtn .c-iconBtn__icon:before,
.p-spMenu__closeBtn .c-iconBtn .c-iconBtn__icon:after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 1px;
  background: #fff;
  transition: transform 0.3s;
}
.l-header__menuBtn .c-iconBtn .c-iconBtn__icon:before,
.p-spMenu__closeBtn .c-iconBtn .c-iconBtn__icon:before {
  top: 0;
}
.l-header__menuBtn .c-iconBtn .c-iconBtn__icon:after,
.p-spMenu__closeBtn .c-iconBtn .c-iconBtn__icon:after {
  bottom: 0;
}

[data-spmenu=opened] #body_wrap:not(.home) .c-headLogo img {
  filter: invert(1) brightness(0);
}
[data-spmenu=opened] .c-iconBtn .c-iconBtn__icon:before {
  transform: translateY(0.2857142857rem) rotate(25deg);
}
[data-spmenu=opened] .c-iconBtn .c-iconBtn__icon:after {
  transform: translateY(-0.3571428571rem) rotate(-25deg);
}

/** 追従ヘッダー **/
.l-fixHeader {
  backdrop-filter: blur(5px);
}
.l-fixHeader:before {
  opacity: 0.9;
  background: #f1f3f7;
  background: linear-gradient(37deg, rgb(241, 243, 247) 45%, rgb(240, 244, 250) 100%);
}

.home .c-headLogo img,
.l-fixHeader .c-headLogo img {
  filter: invert(1) brightness(0);
}

.c-headLogo,
.l-fixHeader .c-headLogo {
  height: auto;
}
.c-headLogo img,
.l-fixHeader .c-headLogo img {
  height: var(--logo_size_pc);
}
@media screen and (max-width: 960px) {
  .c-headLogo img,
  .l-fixHeader .c-headLogo img {
    height: var(--logo_size_sp);
  }
}

.-img .c-headLogo__link {
  padding: 0.625rem 0;
}
@media screen and (max-width: 960px) {
  .-img .c-headLogo__link {
    padding: 1.6428571429rem 0;
  }
}

.p-spMenu__inner {
  width: 100vw;
}

.-right .p-spMenu__inner {
  -webkit-transform: translateX(100vw);
  transform: translateX(100vw);
  padding-top: 5.7142857143rem;
  box-shadow: none;
}

[data-spmenu=opened] .p-spMenu__inner {
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

.p-spMenu__nav {
  margin-top: 1.4285714286rem;
}

@media screen and (max-width: 960px) {
  .c-listMenu .sub-menu a {
    padding-block: 1.4285714286rem;
    border-bottom: 1px solid var(--color-thin_border);
  }
}

.c-spnav > .menu-item > a {
  background: none;
}

.c-spnav > .menu-item > a {
  border-bottom: 1px solid var(--color-thin_border);
  padding-block: 1.4285714286rem;
}

.c-submenuToggleBtn {
  width: 2rem;
  height: 2rem;
}
.c-submenuToggleBtn.is-opened:before {
  content: "\e919";
}
.c-submenuToggleBtn:before {
  content: "\e91c";
  font-size: 1.1428571429rem;
  color: #fff;
  margin-block: var(--leading-trim);
}
.c-submenuToggleBtn:after {
  border: none;
  background: var(--color_main);
  opacity: 1;
  border-radius: 100vh;
  z-index: -1;
}

/** footer **/
.l-footer {
  border-radius: var(--border-radius--large) var(--border-radius--large) 0 0;
  background-color: var(--color_footer_bg);
  position: relative;
  overflow: hidden;
}
.l-footer:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  pointer-events: none;
  background: url(../images/footer_bg_img.svg) no-repeat left center/contain;
}
@media screen and (max-width: 960px) {
  .l-footer:before {
    content: none;
  }
}

.l-footer__foot {
  max-width: 115rem;
  margin: auto;
  padding-block: 1.25rem 2.5rem;
}
@media screen and (max-width: 960px) {
  .l-footer__foot {
    max-width: 23.2142857143rem;
    border: none;
  }
}
.l-footer__foot .l-container {
  display: flex;
  justify-content: end;
  align-items: center;
  flex-wrap: wrap;
}
@media screen and (max-width: 960px) {
  .l-footer__foot .l-container {
    flex-direction: column;
    align-items: flex-start;
    padding: 0;
  }
}

.l-footer__widgetArea {
  padding-block: 3.75rem;
}
@media screen and (max-width: 960px) {
  .l-footer__widgetArea {
    padding-block: 4.2857142857rem;
  }
}

.w-footer {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: repeat(1, 1fr);
  row-gap: 6.25rem;
}
@media screen and (max-width: 960px) {
  .w-footer {
    grid-template-columns: auto;
    row-gap: 1.4285714286rem;
    grid-template-rows: 1fr;
  }
}

.w-footer__box {
  padding: 0;
  margin: 0;
}
.w-footer__box:nth-of-type(1) {
  grid-column: span 2/span 2;
}
@media screen and (max-width: 960px) {
  .w-footer__box:nth-of-type(1) {
    grid-column: auto;
  }
}
.w-footer__box:nth-of-type(2) {
  grid-column-start: 3;
}
@media screen and (max-width: 960px) {
  .w-footer__box:nth-of-type(2) {
    grid-column-start: auto;
  }
}
.w-footer__box:nth-of-type(3) {
  grid-column-start: 4;
}
@media screen and (max-width: 960px) {
  .w-footer__box:nth-of-type(3) {
    grid-column-start: auto;
    margin: 0;
    flex-direction: column;
    gap: 0;
  }
}
@media screen and (min-width: 961px) {
  .w-footer__box .c-submenuToggleBtn {
    display: none;
  }
}
@media screen and (max-width: 960px) {
  .w-footer__box .c-submenuToggleBtn:before {
    color: var(--color_text);
  }
  .w-footer__box .c-submenuToggleBtn:after {
    background: #fff;
  }
}
.w-footer__box .c-listMenu a {
  transition: opacity 0.2s;
}
.w-footer__box .c-listMenu a:hover {
  opacity: 0.7;
}
@media screen and (max-width: 960px) {
  .w-footer__box .c-listMenu a {
    padding-block: 1.1428571429rem;
  }
}
.w-footer__box .c-listMenu .sub-menu {
  color: #686868;
}
@media screen and (min-width: 961px) {
  .w-footer__box .c-listMenu .sub-menu {
    height: auto;
    opacity: 1;
    overflow: auto;
    transition: none;
  }
}
@media screen and (max-width: 960px) {
  .w-footer__box .c-listMenu .sub-menu a {
    border: none;
  }
}

.c-widget + .c-widget {
  margin: 0;
}

.footer-cta__heading {
  font-size: 2.5rem;
  font-weight: var(--font-weight--bold);
}
@media screen and (max-width: 960px) {
  .footer-cta__heading {
    text-align: center;
    font-size: 2.8571428571rem;
  }
}
.footer-cta__heading:after {
  content: "CONTACT";
  display: inline-block;
  position: absolute;
  top: -4.375rem;
  left: 0;
  font-size: 6rem;
  font-weight: var(--font-weight--bold);
  background: linear-gradient(180deg, #fff 0%, rgba(255, 255, 255, 0.35) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  opacity: 0.2;
}
@media screen and (max-width: 960px) {
  .footer-cta__heading:after {
    font-size: 4.1428571429rem;
    right: 0;
    margin: auto;
    top: -3.2142857143rem;
  }
}

.l-footer .c-widget.widget_media_image {
  max-width: 10rem;
}

@media (min-width: 600px) {
  .l-footer__nav a {
    border: none;
    font-size: var(--swl-fz--small);
  }
  .l-footer__nav li:first-child a {
    border: none;
  }
}
.l-footer .copyright {
  font-size: 0.75rem;
}

@media screen and (max-width: 960px) {
  #pagetop {
    width: 3.7142857143rem;
    height: 3.7142857143rem;
  }
}
#pagetop i:before {
  content: "";
  display: block;
  width: 1rem;
  aspect-ratio: 1;
  background: url("../images/arrow.svg") no-repeat center/cover;
  transform: rotate(-90deg);
  position: relative;
  transition: background-image 0.3s;
}
#pagetop:hover i:before {
  background-image: url("../images/arrow_w.svg");
}

.l-topTitleArea {
  min-height: auto;
  padding-block: 9.375rem 6.25rem;
  background: url("../images/page_header_bg.svg") var(--color_main) no-repeat right/contain;
  overflow: visible;
}
@media screen and (max-width: 960px) {
  .l-topTitleArea {
    padding-block: 6.1428571429rem 3.5714285714rem;
  }
}

.l-topTitleArea__body {
  text-shadow: none;
  color: var(--color_text);
}

.c-pageTitle {
  color: #fff;
  font-weight: var(--font-weight--bold);
  font-size: 1.25rem;
  display: flex;
  flex-direction: column-reverse;
  letter-spacing: 0.03em;
  text-transform: capitalize;
}
@media screen and (max-width: 960px) {
  .c-pageTitle {
    font-size: 1.1428571429rem;
  }
}
.c-pageTitle__subTitle {
  font-style: normal;
  font-size: 5rem;
  font-family: var(--font-eng);
  font-weight: var(--font-weight--bold);
  letter-spacing: 0.02em;
  line-height: 1.8;
  margin: 0;
  opacity: 1;
}
@media screen and (max-width: 960px) {
  .c-pageTitle__subTitle {
    font-size: 2.5714285714rem;
  }
}

.l-topTitleArea__img {
  width: 26.875rem !important;
  height: 18.75rem !important;
  aspect-ratio: 43/30;
  border-radius: var(--border-radius--small);
  left: auto;
  right: calc((100vw - var(--swl-scrollbar_width, 0px) - (var(--container_size, 0px) + var(--swl-pad_container, 0px) * 2)) / 2);
  top: auto;
  bottom: -90px;
}
@media screen and (max-width: 960px) {
  .l-topTitleArea__img {
    width: 12.8571428571rem !important;
    height: 7.1428571429rem !important;
    right: 1.4285714286rem;
    bottom: -4.5714285714rem;
  }
}

.c-postTitle__ttl {
  color: #fff;
}

.post_content h3 {
  margin-block: 3.125rem;
}
@media screen and (max-width: 960px) {
  .post_content h3 {
    margin-block: 2.1428571429rem;
  }
}

#breadcrumb {
  display: none;
}

/*
.-frame-on .p-breadcrumb,
.c-infoBar + .p-breadcrumb,
.c-infoBar + [data-barba="container"] > .p-breadcrumb,
.l-topTitleArea + .p-breadcrumb {
  padding: 0;
}
.p-breadcrumb__item {
  font-size: rem(16px);
  &:not(:last-child) {
    opacity: 0.6;
  }
  &:last-child {
    font-weight: var(--font-weight--bold);
  }
}
.p-breadcrumb__list {
  flex-wrap: wrap;
}
*/
.is-style-float > .swell-block-dl__dt,
.is-style-float > .swell-block-dl__dd {
  border-bottom: 1px solid var(--color-thin_border);
  padding: 1.5rem 0;
  font-weight: var(--swl-font_weight);
}

.is-style-float > .swell-block-dl__dt:after {
  content: none;
}

.post_content {
  line-height: 2;
}

.post_content h3 {
  font-size: var(--swl-fz--large);
}

.wp-block-columns {
  --wp-column-gap: 3.125rem;
  line-height: 1.8;
}

.swell-block-columns {
  --swl-clmn-mrgn--x: 3.125rem;
  --swl-clmn-mrgn--y: 3.125rem;
  --swl-clmn-pddng: 0;
}
@media screen and (max-width: 960px) {
  .swell-block-columns {
    --swl-clmn-mrgn--x: 1.4285714286rem;
    --swl-clmn-mrgn--y: 1.4285714286rem;
    --swl-clmn-pddng: 0;
  }
}

:where(.is-layout-flex) {
  gap: 3.125rem;
}

#sidebar {
  margin: 0;
}

.c-listMenu a {
  padding-inline-start: 0;
  border: none;
}

.c-listMenu .children a,
.c-listMenu .sub-menu a {
  font-size: inherit;
  padding-inline: 0;
  font-weight: normal;
}
.c-listMenu .children a:before,
.c-listMenu .sub-menu a:before {
  content: none;
}

.-type-list .p-postList__item {
  padding-block: 1.875rem;
  border-bottom: 1px solid var(--color-thin_border);
  margin: 0;
  position: relative;
}
@media screen and (max-width: 960px) {
  .-type-list .p-postList__item {
    padding-block: 1.4285714286rem;
  }
}

.-type-card .p-postList__item {
  padding-inline: 2rem;
}
@media screen and (max-width: 960px) {
  .-type-card .p-postList__item {
    padding: 0.7142857143rem;
    width: 100%;
  }
}

.p-pickupBanners__item .c-bannerLink,
.p-postList__thumb {
  box-shadow: none;
}

.-type-list .p-postList__link,
.-type-list2 .p-postList__link {
  gap: 1.875rem;
  flex-wrap: nowrap;
}
@media screen and (max-width: 960px) {
  .-type-list .p-postList__link,
  .-type-list2 .p-postList__link {
    gap: 0.8571428571rem;
  }
}
.-type-list .p-postList__link:after,
.-type-list2 .p-postList__link:after {
  content: "";
  background: url("../images/arrow_button.svg") no-repeat center/contain;
  width: 3.125rem;
  height: 3.125rem;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  transition: transform 0.2s;
}
@media screen and (max-width: 960px) {
  .-type-list .p-postList__link:after,
  .-type-list2 .p-postList__link:after {
    width: 2.1428571429rem;
    height: 2.1428571429rem;
  }
}
.-type-list .p-postList__link:hover:after,
.-type-list2 .p-postList__link:hover:after {
  transform: scale(1.1);
}

.-type-list .p-postList__thumb:before,
.c-categoryList:before {
  content: none;
}

.-type-list .p-postList__thumb,
.-type-list2 .p-postList__thumb {
  width: 24%;
  border-radius: var(--border-radius--small);
}
@media screen and (max-width: 960px) {
  .-type-list .p-postList__thumb,
  .-type-list2 .p-postList__thumb {
    width: 30%;
  }
}

.p-postList .p-postList__title {
  font-size: var(--swl-fz--medium);
  font-weight: inherit;
}

[class*=" icon-"]:before,
[class^=icon-]:before {
  content: none;
}

.p-postList__body {
  display: flex;
  flex-direction: column-reverse;
  gap: 0.625rem;
  width: auto;
  flex: 1;
}
@media screen and (max-width: 960px) {
  .p-postList__body {
    gap: 0;
  }
}

.p-postList__meta {
  font-size: var(--swl-fz--small);
}
.p-postList__meta .u-thin {
  opacity: 1;
}

@media screen and (max-width: 960px) {
  .p-postList__title + .p-postList__meta {
    margin-top: 0;
  }
}

.p-postList__cat,
.c-categoryList__link {
  background: #f5f5f5;
  color: var(--color_main);
  padding: 0.125rem 0.625rem;
  font-weight: var(--font-weight--bold);
  line-height: inherit;
  border-radius: 100vh;
}

.p-postList__times {
  font-weight: var(--font-weight--bold);
  letter-spacing: 0.05em;
  font-family: var(--font-eng);
}

.p-articleMetas {
  color: #fff;
  font-size: var(--swl-fz--small);
  flex-direction: row-reverse;
  justify-content: flex-end;
}
.p-articleMetas.-top .p-articleMetas__termList {
  font-size: var(--swl-fz--small);
}

.c-pagination {
  gap: 1.25rem;
}
.c-pagination .page-numbers {
  color: var(--color_main);
  background: none;
  width: 2.5rem;
  height: auto;
  aspect-ratio: 1;
  box-shadow: none;
  font-family: var(--font-eng);
  margin: 0;
}
.c-pagination .page-numbers.current {
  background-color: var(--color_main);
  color: #fff;
}
.c-pagination .page-numbers:hover {
  background-color: #f5f5f5;
}

.is-style-row_categories {
  display: flex;
  gap: 1.25rem;
}
.is-style-row_categories .cat-item {
  display: inline-block;
  background: var(--color_main);
  border: 1px solid var(--color_main);
  color: #fff;
}
.is-style-row_categories .cat-item a {
  transition: background-color 0.3s, color 0.3s;
  border: none;
  padding: 0.625rem 0.75rem;
}
.is-style-row_categories .cat-item a:hover {
  background: #fff;
  color: var(--color_text);
}

.p-mainVisual__textLayer {
  --container_size: 1600px;
}

.p-mainVisual__slideText {
  opacity: 0.8;
}
.p-mainVisual__slideText span {
  color: var(--color_main);
}

.-height-full .p-mainVisual__slideText {
  font-family: var(--font-eng);
  font-weight: var(--font-weight--bold);
  font-size: 6rem;
}
@media screen and (max-width: 960px) {
  .-height-full .p-mainVisual__slideText {
    font-size: 2.5714285714rem;
  }
}

.p-mainVisual__scroll {
  left: 1.875rem;
  bottom: 0;
}
@media screen and (max-width: 960px) {
  .p-mainVisual__scroll {
    display: none;
  }
}

.p-mainVisual__scrollLabel {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.625rem;
  writing-mode: vertical-rl;
  font-size: var(--swl-fz--small);
}
.p-mainVisual__scrollLabel:after {
  content: "";
  width: 1px;
  height: 6.25rem;
  display: block;
  background: var(--color_text);
  animation: scroll-anim 2.5s cubic-bezier(1, 0, 0, 1) infinite;
}

@keyframes scroll-anim {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  50.1% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}
.single-post .l-container {
  --container_size: var(--article_size);
}
.single-post .l-content {
  padding-block: 0;
}
.single-post .l-article {
  padding: 5.625rem;
  margin-block-start: -3.125rem;
  background: #f8fafb;
  border-radius: var(--border-radius--small);
}
@media screen and (max-width: 960px) {
  .single-post .l-article {
    padding: 1.4285714286rem;
    margin-block-start: -1.4285714286rem;
  }
}

/* ----- recruit ----- */
.page-template-recruit .l-header__inner {
  position: static;
}
@media screen and (max-width: 960px) {
  .page-template-recruit .l-header__gnav, .page-template-recruit .l-fixHeader {
    display: block;
  }
}
@media screen and (max-width: 960px) {
  .page-template-recruit .-img .c-headLogo__link {
    padding: 0;
  }
}
.page-template-recruit .l-header__logo,
.page-template-recruit .l-fixHeader__logo {
  top: 0;
  left: 1.25rem;
}
@media screen and (max-width: 960px) {
  .page-template-recruit .l-header__logo,
  .page-template-recruit .l-fixHeader__logo {
    left: 0;
  }
}
.page-template-recruit.page-child .post_content {
  /* 子ページのみ */
  padding-top: 6.25rem;
}
@media screen and (max-width: 960px) {
  .page-template-recruit.page-child .post_content {
    padding-top: 3.5714285714rem;
  }
}

.c-gnav > .menu-recruit__link {
  position: absolute;
  right: 0;
  top: 0;
  background: var(--color_main);
  border-bottom-left-radius: 0.75rem;
  padding: 0 !important;
}
.c-gnav > .menu-recruit__link a {
  width: 16.25rem;
  font-family: var(--font-eng--recruit);
}
@media screen and (max-width: 960px) {
  .c-gnav > .menu-recruit__link a {
    width: 9.2857142857rem;
  }
}
.c-gnav > .menu-recruit__link a .ttl {
  font-size: 1.5rem;
}

:root {
  --swl-letter_spacing: 0.12em;
  --swl-font_family: "Noto Sans JP", sans-serif;
  --swl-font_weight: 500;
  --swl-fz--xs: 0.75em;
  --swl-fz--small: 0.875rem;
  --swl-fz--medium: 1.125rem;
  --swl-fz--large: 1.5rem;
  --swl-fz--huge: 2rem;
  --swl-fz--side: var(--swl-fz--medium);
  --font-weight--bold: 700;
  --font-weight--black: 900;
  --font-weight--semi: 600;
  --font-eng: "Lato", sans-serif;
  --font-eng--recruit: "Josefin Sans", sans-serif;
  --color-thin_border: #d6e0ec;
  --color-thin_border--black: #555;
  --color-dark: #a8a8a8;
  --color-recruit: #0f1e2e;
  --leading-trim: calc((1em - 1lh) / 2);
  --swl-text_color--black: var(--color_text);
  --logo_size_pc: 2.375rem;
  --logo_size_pcfix: 2.375rem;
  --logo_size_sp: 2.1428571429rem;
  --border-radius--large: 6.25rem;
  --border-radius--small: 0.625rem;
  --grad--main: linear-gradient(
    180deg,
    rgba(208, 236, 245, 0.4) 0%,
    rgba(197, 214, 245, 0.4) 74%,
    rgba(240, 245, 248, 0.4) 91%,
    rgba(255, 255, 255, 0.4) 100%
  );
}
@media screen and (max-width: 1280px) {
  :root {
    --swl-fz--root: min(16px, 1.25vw);
    --swl-fz--content: min(16px, 1.25vw);
  }
}
@media screen and (max-width: 960px) {
  :root {
    --swl-pad_container: 6.6666666667vw;
    --swl-fz--root: 3.7333333333vw;
    --swl-fz--content: 3.7333333333vw;
    --width-full-margin: calc(var(--swl-pad_container) * -1)
      calc(var(--swl-pad_container) * -1);
    --swl-box_padding: 1.4285714286rem 1.7857142857rem;
    --border-radius--large: 8vw;
    --border-radius--small: 2.6666666667vw;
    --swl-fz--xs: 0.75em;
    --swl-fz--small: 0.8571428571rem;
    --swl-fz--medium: 1rem;
    --swl-fz--large: 1.2857142857rem;
    --swl-fz--huge: 1.4285714286rem;
  }
}

/* common */
@media screen and (min-width: 961px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
.l-section {
  --padding-block-start: 7.5rem;
  --padding-block-end: 7.5rem;
}
@media screen and (max-width: 960px) {
  .l-section {
    --padding-block-start: 10.6666666667vw;
    --padding-block-end: 10.6666666667vw;
  }
}

.l-section:first-of-type {
  --padding-block-start: 0;
}

.l-section__body {
  margin-block-start: 5rem;
}
@media screen and (max-width: 960px) {
  .l-section__body {
    margin-block-start: 2.8571428571rem;
  }
}

.u-bg--grad {
  background: var(--grad--main);
  border-radius: var(--border-radius--large) var(--border-radius--large) 0 0;
}

.u-frame-text {
  border: 1px solid;
  width: max-content;
  padding-inline: 0.5em;
}
.u-frame-text.--center {
  margin-inline: auto !important;
}

@media screen and (max-width: 960px) {
  .u-text-left--sp {
    text-align: left;
  }
}

/* TOP */
.top-performance__section {
  --padding-block-start: 10rem !important;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 960px) {
  .top-performance__section {
    --padding-block-start: 5rem !important;
  }
}
.top-performance__section .l-container {
  position: static;
}

.top-performance__body {
  --swl-clmn-mrgn--x: 7.8125rem;
}

.top-performance__img img {
  max-width: 25rem;
}
@media screen and (max-width: 960px) {
  .top-performance__img img {
    max-width: 14.2857142857rem;
  }
}

.top-service__list .swell-block-columns__inner {
  --swl-clmn-mrgn--x: 7.8125rem;
}

.top-service__item {
  position: relative;
}
@media screen and (max-width: 960px) {
  .top-service__item .wp-block-cover {
    min-height: 28.5714285714rem !important;
  }
}
.top-service__item .wp-block-cover__inner-container {
  position: static;
}
.top-service__item .wp-block-heading {
  font-size: var(--swl-fz--large);
  font-weight: inherit;
  position: absolute;
  top: 1.875rem;
  left: 0;
  padding: 0.625rem 1.25rem;
}
.top-service__item__caption {
  position: absolute;
  bottom: 0.875rem;
  left: 0;
  right: 0;
  margin: auto;
  padding-inline: 3.125rem;
}
@media screen and (max-width: 960px) {
  .top-service__item__caption {
    padding-inline: 1.4285714286rem;
  }
}
.top-service__item .wp-block-cover {
  border-radius: 0.625rem;
}

@media screen and (max-width: 960px) {
  .top-company__list {
    --swl-clmn-mrgn--y: 2.5rem;
  }
}
.top-company__list .top-company__item figure {
  border-radius: var(--border-radius--small);
}
.top-company__list .top-company__item .c-bannerLink__text {
  position: relative;
  padding: 1.25rem 0;
}
.top-company__list .top-company__item .c-bannerLink__text:after {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 3.125rem;
  aspect-ratio: 1;
  background: url("../images/arrow_button.svg") no-repeat center/contain;
}
.top-company__list .top-company__item .c-bannerLink__title {
  font-size: var(--swl-fz--large);
}
.top-company__list .top-company__item .c-bannerLink__description {
  color: var(--color-dark);
  font-size: 0.75rem;
}

/** company **/
.company-menu__list .swell-block-columns__inner {
  gap: 0;
}
.company-menu__list .company-menu__item figure {
  opacity: 0;
  position: absolute;
}
.company-menu__list .company-menu__item {
  border-block-end: 1px solid var(--color-thin_border);
  position: relative;
}
.company-menu__list .c-bannerLink__text {
  flex-direction: row;
  gap: 1.25rem;
  position: relative;
  justify-content: space-around;
}
@media screen and (max-width: 960px) {
  .company-menu__list .c-bannerLink__text {
    padding-inline: 0;
  }
}
.company-menu__list .c-bannerLink__text:after {
  content: "";
  display: block;
  flex-basis: 3.125rem;
  aspect-ratio: 1;
  background: url("../images/arrow_button.svg") no-repeat center/contain;
}
@media screen and (max-width: 960px) {
  .company-menu__list .c-bannerLink__text:after {
    flex-basis: 2.1428571429rem;
  }
}
.company-menu__list .c-bannerLink__title {
  font-size: var(--swl-fz--large);
  font-weight: var(--font-weight--bold);
  color: var(--color_main);
  flex-basis: 9.375rem;
}
@media screen and (max-width: 960px) {
  .company-menu__list .c-bannerLink__title {
    flex-basis: 7.1428571429rem;
  }
}
.company-menu__list .c-bannerLink__description {
  flex: 1;
}

/** member **/
.member-career__wrap {
  overflow-y: scroll;
  height: 18.75rem;
  padding: 1.25rem;
}
@media screen and (max-width: 960px) {
  .member-career__wrap {
    height: 14.2857142857rem;
  }
}
.member-career__caption {
  display: grid;
  gap: 1rem;
  padding-block-end: 1.25rem;
  padding-inline-start: 1.25rem;
  margin: 0;
  position: relative;
  --pos: 0.75rem;
  gap: 0;
}
.member-career__caption:after {
  content: "";
  width: 10px;
  height: 10px;
  background-color: var(--color_main);
  border-radius: 100vh;
  position: absolute;
  left: -0.3125rem;
  top: var(--pos);
}
.member-career__caption:before {
  content: "";
  height: 100%;
  width: 1px;
  background-color: #ccc;
  position: absolute;
  left: 0;
  top: var(--pos);
}
.member-career__year {
  font-size: var(--swl-fz--small);
  color: var(--color_main);
  font-weight: var(--font-weight--bold);
}

.member-number__list {
  --table-border: none;
}
.member-number__list table {
  border-radius: calc(var(--border-radius--small) / 2);
  width: fit-content;
}
.member-number__list table tr:first-child td {
  padding-block-start: 1.25rem;
}
.member-number__list table tr:last-child td {
  padding-block-end: 1.25rem;
}
.member-number__list table tr td:first-child {
  padding-inline-start: 1.25rem;
}
.member-number__list table tr td:last-child {
  padding-inline-end: 1.25rem;
}

.member-boad__list,
.member-employee__list {
  --swl-clmn-mrgn--x: 1.625rem;
  --swl-clmn-mrgn--y: 5rem;
}
@media screen and (max-width: 960px) {
  .member-boad__list,
  .member-employee__list {
    --swl-clmn-mrgn--x: 1.5714285714rem;
    --swl-clmn-mrgn--y: 2.8571428571rem;
  }
}
.member-boad__list .swell-block-columns__inner,
.member-employee__list .swell-block-columns__inner {
  justify-content: center;
}
.member-boad__list .is-layout-flex,
.member-employee__list .is-layout-flex {
  gap: 1rem;
}

.member-recruit__section .swell-block-columns__inner {
  --swl-clmn-mrgn--x: 7rem;
  --swl-clmn-mrgn--y: 3.5714285714rem;
}

/** performance **/
.performance__container {
  border-radius: var(--border-radius--small);
  padding: 3.75rem;
}
@media screen and (max-width: 960px) {
  .performance__container {
    padding: 2.8571428571rem 1.4285714286rem;
  }
}

.performance-rank__img img {
  max-width: 16.875rem;
}

.performance-rank__buttons {
  gap: 0;
}
.performance-rank__buttons .wp-block-button:first-child a {
  border-top: 1px solid var(--color-thin_border);
}
.performance-rank__buttons a {
  padding: 2rem 1rem !important;
  border-bottom: 1px solid var(--color-thin_border);
}

/** SDGs **/
.sdgs-what__section .swell-block-columns__inner,
.sdgs-about__section .swell-block-columns__inner {
  --swl-clmn-mrgn--x: 5rem;
}
@media screen and (max-width: 960px) {
  .sdgs-what__section .swell-block-columns__inner,
  .sdgs-about__section .swell-block-columns__inner {
    --swl-clmn-mrgn--y: 3.5714285714rem;
  }
}

.sdgs-attempt__list {
  --swl-clmn-mrgn--x: 5.75rem;
  --swl-clmn-mrgn--y: 1.25rem;
  max-width: 56.875rem;
  margin: auto;
}
.sdgs-attempt__list .swell-block-columns__inner {
  justify-content: center;
}
.sdgs-attempt__list img {
  max-width: 6.25rem;
}

.sdgs-about__img img {
  max-width: 18.75rem;
}
@media screen and (max-width: 960px) {
  .sdgs-about__img img {
    max-width: 14.2857142857rem;
  }
}

/** blog **/
.blog {
  --article_size: 68.125rem;
}

/* swiper */
.swiper-wrapper {
  flex-wrap: nowrap;
  margin: 0;
}

.swiper-postListWrap .p-postList {
  flex-wrap: nowrap;
  margin: 0;
}

.swiper-wrapper .swiper-slide {
  margin: 0;
}

.swiper-button-next,
.swiper-button-prev {
  background: var(--color_main);
  border-radius: 100vh;
  height: calc(var(--swiper-nav-size));
}
@media screen and (max-width: 960px) {
  .swiper-button-next,
  .swiper-button-prev {
    --swiper-nav-size: 2.8571428571rem;
    --swiper-nav-border-width: 0.2142857143rem;
  }
}
.swiper-button-next:after,
.swiper-button-prev:after {
  width: calc(var(--swiper-nav-size) * 0.3);
  height: calc(var(--swiper-nav-size) * 0.3);
  top: -0.1428571429rem;
  left: 0;
}

@media screen and (max-width: 960px) {
  .swiper-button-prev:after {
    left: 0.2142857143rem;
  }
}

/* 沿革 */
.company-history__list {
  position: relative;
}
.company-history__item .swell-block-columns__inner {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 2.5rem;
  min-height: 6.25rem;
}
.company-history__item:last-of-type .company-history__label:before {
  content: none;
}
.company-history__label {
  position: relative;
  height: 100%;
  --pos: 1.1875rem;
  width: 8.75rem;
}
@media screen and (max-width: 960px) {
  .company-history__label {
    width: 6.4285714286rem;
    --pos: 0.7142857143rem;
  }
}
.company-history__label:after {
  content: "";
  width: 0.625rem;
  height: 0.625rem;
  background-color: var(--color_main);
  border-radius: 100vh;
  position: absolute;
  right: -0.25rem;
  top: var(--pos);
}
@media screen and (max-width: 960px) {
  .company-history__label:after {
    right: -0.2857142857rem;
  }
}
.company-history__label:before {
  content: "";
  height: 100%;
  width: 1px;
  background-color: #ccc;
  position: absolute;
  right: 0;
  top: var(--pos);
}
.company-history__year--ad {
  font-size: var(--swl-fz--huge);
  font-family: var(--font-eng);
  font-weight: bold;
  color: var(--color_main);
  line-height: 1.5;
  margin: 0;
}
.company-history__year--jp {
  font-size: var(--swl-fz--small);
  color: var(--color-dark);
}
.company-history__caption {
  display: grid;
  gap: 1rem;
  padding-block-end: 2.5rem;
  margin: 0;
}
@media screen and (max-width: 960px) {
  .company-history__caption {
    flex-direction: column;
    gap: 0;
  }
}
.company-history__event {
  display: flex;
  gap: 1rem;
}
.company-history__month {
  color: var(--color_main);
}

/* 採用ページ */
body:has(.page-template-recruit) {
  background: var(--color-recruit);
}

.page-template-recruit {
  --container_size: 1520px;
}

.page-template-recruit .lp-content {
  margin-block-end: 6.25rem;
}
@media screen and (max-width: 960px) {
  .page-template-recruit .lp-content {
    margin-block-end: 3.5714285714rem;
  }
}

.post_content .p-recruit__heading {
  font-size: 2.25rem;
  margin-block: 0.375rem 2.5rem !important;
  line-height: 1.6;
}
@media screen and (max-width: 960px) {
  .post_content .p-recruit__heading {
    font-size: 1.4285714286rem;
  }
}
.post_content .p-recruit__heading--eng {
  font-size: 8rem !important;
  margin: 0 !important;
}
@media screen and (max-width: 960px) {
  .post_content .p-recruit__heading--eng {
    font-size: 2.8571428571rem !important;
    white-space: nowrap;
  }
}

.recruit-fv__section {
  position: relative;
}
.recruit-fv__section:after {
  content: "";
  clip-path: polygon(100% 0%, 0 0, 0 100%);
  background: var(--color-recruit);
  opacity: 0.3;
  position: absolute;
  left: 0;
  top: 0;
  width: 36.25rem;
  height: 42.5rem;
}
@media screen and (max-width: 960px) {
  .recruit-fv__section:after {
    width: 17.1428571429rem;
    height: 17.1428571429rem;
  }
}
.recruit-fv__body {
  height: 100dvh;
  justify-content: flex-end;
  padding-block: 6.25rem;
}
@media screen and (max-width: 960px) {
  .recruit-fv__body {
    justify-content: center;
    padding-block: 3.5714285714rem;
  }
}
.recruit-fv__text {
  font-size: 4rem;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 960px) {
  .recruit-fv__text {
    font-size: 1.4285714286rem;
  }
}
@media screen and (max-width: 960px) {
  .recruit-fv__button {
    position: absolute;
    bottom: 10%;
  }
}

.recruit-consept__img figure {
  position: absolute;
  width: 15.1875rem;
  --lr: 0;
  z-index: -1;
}
@media screen and (max-width: 960px) {
  .recruit-consept__img figure {
    width: 7.1428571429rem;
    opacity: 0.4;
    --lr: 0.7142857143rem;
  }
}
.recruit-consept__img figure:nth-of-type(1) {
  left: var(--lr);
  top: -3.125rem;
}
@media screen and (max-width: 960px) {
  .recruit-consept__img figure:nth-of-type(1) {
    top: 0;
  }
}
.recruit-consept__img figure:nth-of-type(2) {
  right: var(--lr);
  bottom: -6.25rem;
}

.recruit-feature__body {
  gap: 8.75rem;
}
@media screen and (max-width: 960px) {
  .recruit-feature__body {
    gap: 2.1428571429rem;
  }
}
.recruit-feature__title {
  font-size: 12.5rem !important;
  margin: 0 !important;
  opacity: 0.18;
}
@media screen and (max-width: 960px) {
  .recruit-feature__title {
    font-size: 4.2857142857rem !important;
  }
}
.recruit-feature__item {
  --swl-mediatext--space: 6.25rem;
}
@media screen and (max-width: 960px) {
  .recruit-feature__item {
    --swl-mediatext--space: 0.7142857143rem;
  }
}

.recruit-people__wrap {
  gap: 0.625rem;
}
.recruit-people__heading {
  border-radius: var(--border-radius--small) var(--border-radius--small) 0 0;
}
.recruit-people__body {
  --swl-box_padding: 7.5rem;
}
@media screen and (max-width: 960px) {
  .recruit-people__body {
    --swl-box_padding: 1.4285714286rem;
  }
}
.recruit-people__body:last-of-type {
  border-radius: 0 0 var(--border-radius--small) var(--border-radius--small);
}
.recruit-people__item {
  max-width: var(--article_size);
  margin: auto;
}
.recruit-people__copy {
  line-height: 2.7;
}
.recruit-people__copy span {
  padding-block: 0.5em;
}
.recruit-people__copy span:first-of-type {
  padding-inline: 1em 0;
}
.recruit-people__copy span:last-of-type {
  padding-inline: 0 1em;
}
.recruit-people__copy span {
  font-weight: var(--font-weight--bold);
}
@media screen and (max-width: 960px) {
  .recruit-people__copy span:first-of-type, .recruit-people__copy span:last-of-type {
    padding-inline: 1em;
  }
}

.recruit-schedule__section {
  --swl-box_padding: 3.125rem 3.75rem;
  --color_bg: linear-gradient(
    35deg,
    rgba(1, 95, 172, 1) 0%,
    rgba(36, 85, 148, 1) 100%
  );
  background: var(--color_bg) !important;
  background-color: #015fac;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 960px) {
  .recruit-schedule__section {
    --swl-box_padding: 2.1428571429rem 1.4285714286rem;
  }
}
.recruit-schedule__section:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background: url(../images/schedule_bg_img.svg) no-repeat left center/contain;
}
@media screen and (max-width: 960px) {
  .recruit-schedule__section:before {
    content: none;
  }
}

.recruit-schedule__list .swell-block-dl {
  align-items: flex-start;
  --swl-dt-width: 5rem;
  row-gap: 1.25rem;
}
@media screen and (max-width: 960px) {
  .recruit-schedule__list .swell-block-dl {
    --swl-dt-width: 4.2857142857rem;
  }
}
.recruit-schedule__list .swell-block-dl__dt {
  background: #fff;
  color: var(--color_main);
  text-align: center;
  border-radius: 100vh;
  font-family: var(--font-eng--recruit);
  font-weight: var(--font-weight--semi);
  padding-block: calc(var(--leading-trim) * -1) 0;
  border: none;
}
@media screen and (max-width: 960px) {
  .recruit-schedule__list .swell-block-dl__dt {
    font-weight: var(--swl-font_weight);
  }
}
.recruit-schedule__list .swell-block-dl__dd {
  border: none;
  padding: 0;
  display: flex;
}
.recruit-schedule__list .swell-block-dl__dd p:first-child {
  font-size: 1.25rem;
  font-weight: var(--font-weight--bold);
  margin-bottom: 0.3em;
}
@media screen and (max-width: 960px) {
  .recruit-schedule__list .swell-block-dl__dd p:first-child {
    font-size: 1.1428571429rem;
    font-weight: var(--swl-font_weight);
  }
}
.recruit-schedule__list .swell-block-dl__dd:before {
  content: "";
  background: url("../images/schedule_arrow.svg") no-repeat center/contain;
  width: 1.375rem;
  height: 1rem;
  display: block;
  padding-inline: 1.4em;
  margin-top: 0.4em;
}

.recruit-interview__section {
  --padding-block-end: 0;
}
@media screen and (max-width: 960px) {
  .recruit-interview-member__section {
    --swl-mediatext--lap: 0 !important;
    --swl-mediatext--space: 1rem 0;
  }
}
.recruit-interview-member__section img {
  border-radius: 3.75rem;
}
.recruit-interview-member__list p {
  margin: 0 !important;
}
.recruit-interview-member__list hr {
  margin-block: 1em;
}
@media screen and (max-width: 960px) {
  .recruit-interview__contents .swell-block-columns__inner {
    flex-direction: column-reverse;
  }
}
.recruit-interview__list .faq_q {
  padding-left: 3em;
  font-weight: var(--swl-font_weight);
  font-size: var(--swl-fz--large);
}
.recruit-interview__list .faq_q:before {
  content: "";
  position: absolute;
  top: calc(1lh - 4px);
  margin: auto;
  width: 2em;
  height: 1px;
  background: #fff;
  box-shadow: none;
}
@media screen and (max-width: 960px) {
  .recruit-interview__list .faq_a {
    padding-left: 0;
  }
}
.recruit-interview__list .faq_a:before {
  content: none;
}
.recruit-interview__list .faq_a p {
  position: relative;
  padding-left: 2.5rem;
}
.recruit-interview__list .faq_a p:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.3125rem;
  width: 1.4375rem;
  height: 1.4375rem;
  background: url("../images/comment_icon1.svg") no-repeat center/contain;
}
.recruit-interview__list .faq_a p:last-child:before {
  background-image: url("../images/comment_icon2.svg");
}
.recruit-interview-deco__text {
  --duration: 60s;
}
.recruit-interview-deco__text p {
  font-size: 15.625rem;
  font-family: var(--font-eng--recruit);
  opacity: 0.16;
  margin: 0;
  line-height: 1;
}
@media screen and (max-width: 960px) {
  .recruit-interview-deco__text p {
    font-size: 7.1428571429rem;
  }
}

.recruit-entry__buttons {
  gap: 1.125rem;
}

.recruit-info__list .swell-block-dl__dt, .recruit-info__list .swell-block-dl__dd {
  border-bottom-color: #7d858e;
}

.recruit-noentry__text {
  max-width: fit-content;
  margin: auto;
  --swl-box_padding: 1em 2em;
}

/* scroll bar */
.scroll-bar::-webkit-scrollbar {
  width: 16px;
}

.scroll-bar::-webkit-scrollbar-thumb {
  background: var(--color_main);
  border-radius: 100vh;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent;
  background-clip: padding-box;
}

.scroll-bar::-webkit-scrollbar-track {
  margin-top: 4px;
  margin-bottom: 4px;
}