@charset "UTF-8";
/* http://meyerweb.com/eric/tools/css/reset/
  v2.0 | 20110126
  License: none (public domain)
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video, input, textarea {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 1.6rem;
  line-height: 1.4;
  vertical-align: baseline;
  box-sizing: border-box;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

html {
  font-size: 62.5%; }

em {
  color: black; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after {
  content: '';
  content: none; }

q:before, q:after {
  content: '';
  content: none; }

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

.content {
  margin-top: 0; }

.wrap {
  width: 100%; }

.main {
  padding: 0;
  border-radius: 0;
  border: none; }

.mysyle {
  overflow: hidden; }

a {
  text-decoration: none; }

input[type="submit"],
input[type="checkbox"],
input[type="radio"] {
  appearance: none;
  -webkit-appearance: none; }

.pc-layout {
  display: block; }

.sp-layout {
  display: none !important; }

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

  .sp-layout {
    display: block !important; } }
@font-face {
  font-family: 'poppin';
  src: url("../font/POPPINS-SEMIBOLD.woff") format("woff"), url("../font/Poppins-SemiBold.ttf") format("truetype");
  font-weight: semibold;
  font-style: normal; }
.imgArea {
  line-height: 0;
  display: block;
  width: 100%;
  height: 100%; }
  .imgArea img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    image-rendering: -webkit-optimize-contrast; }

.backjArea {
  display: block;
  width: 100%;
  height: 100%; }
  .backjArea img {
    width: 100%;
    height: 100%;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    image-rendering: -webkit-optimize-contrast; }

.borderImgArea {
  line-height: 0;
  display: block;
  width: 100%;
  height: 100%;
  border: 0.7rem solid #183E59;
  box-sizing: border-box;
  border-radius: 0.5rem;
  overflow: hidden; }
  .borderImgArea img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    image-rendering: -webkit-optimize-contrast; }
  .borderImgArea.-min {
    border-width: 0.5rem;
    border-radius: 1rem; }

.linkButton {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  line-height: 1;
  background: #FD6D2C;
  color: #FFFFFF;
  font-family: 'M PLUS Rounded 1c', sans-serif;
  transform: rotateZ(0.03deg);
  font-weight: 500;
  width: 25rem;
  height: 6rem;
  padding: 0 2.8rem;
  border-radius: 1rem;
  transition: all 0.3s ease; }
  .linkButton::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 2rem;
    margin: auto;
    display: block;
    width: 0.8rem;
    height: 0.8rem;
    border: solid #FFFFFF;
    border-width: 2px 2px 0 0;
    transform: rotate(45deg);
    transition: all 0.3s ease; }
  .linkButton:hover {
    background: #FFFFFF;
    color: #FD6D2C; }
    .linkButton:hover::after {
      border-color: #FD6D2C; }
  @media (max-width: 500px) {
    .linkButton {
      width: 44rem; } }

.slideNavi {
  display: flex;
  align-items: center; }
  .slideNavi__prev, .slideNavi__next {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 5rem;
    aspect-ratio: 1/1;
    background: #183E59;
    border-radius: 1rem;
    cursor: pointer; }
    .slideNavi__prev::before, .slideNavi__next::before {
      content: "";
      display: block;
      width: 0.8rem;
      height: 0.8rem;
      border: solid #FFFFFF;
      border-width: 0.5rem 0.5rem 0 0;
      transform: translateX(20%) rotate(225deg);
      transition: all 0.3s ease; }
    .slideNavi__prev.swiper-button-disabled, .slideNavi__next.swiper-button-disabled {
      background: #FFFFFF; }
      .slideNavi__prev.swiper-button-disabled::before, .slideNavi__next.swiper-button-disabled::before {
        border-color: #183E59; }
  .slideNavi__next {
    margin-left: 1.5rem;
    transform: scale(-1, 1); }

.secHead {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.7rem;
  color: #183E59;
  margin-bottom: 5rem; }
  .secHead.-white {
    color: #FFFFFF; }
  .secHead.-left {
    align-items: flex-start; }
  .secHead__en {
    font-family: "Work Sans", sans-serif;
    font-weight: 700;
    font-size: 6rem;
    line-height: 9rem;
    letter-spacing: 0.1em;
    padding-left: 0.1em; }
  .secHead__ja {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 800;
    font-size: 2.4rem;
    line-height: 3.4rem;
    letter-spacing: 0.05em;
    padding-left: 0.05em; }
    .secHead__ja.-hasAdd {
      width: 100%;
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
      .secHead__ja.-hasAdd .-add {
        font-family: 'M PLUS Rounded 1c', sans-serif;
        transform: rotateZ(0.03deg);
        font-weight: 400; }
  @media (max-width: 500px) {
    .secHead {
      align-items: flex-start; }
      .secHead__en {
        font-size: 5.2rem;
        line-height: 6rem; }
      .secHead__ja {
        font-size: 2rem;
        line-height: 2.4rem; } }

.cont-hero {
  position: relative;
  z-index: 10;
  margin-bottom: 12rem; }
  .cont-hero__img {
    line-height: 0; }
  .cont-hero__head {
    position: absolute;
    inset: 0;
    margin: auto;
    padding-bottom: 10rem; }
  @media (max-width: 500px) {
    .cont-hero {
      margin-bottom: 6rem; }
      .cont-hero__head {
        padding-bottom: 2rem; } }
  @media (max-width: 500px) {
    .cont-hero.contactspace {
      margin-bottom: 15rem; } }

.cont-title {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  color: #FFFFFF;
  gap: 1.5rem;
  margin-bottom: 6rem; }
  .cont-title.-blue {
    color: #183E59;
    margin-top: 10rem; }
  .cont-title__en {
    font-family: "Poppins", sans-serif;
    font-size: 7.2rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    padding-left: 0.1em;
    line-height: 10rem;
    color: transparent;
    -webkit-text-stroke: 1px #FFFFFF;
    text-stroke: 1px #FFFFFF; }
    .-blue .cont-title__en {
      color: #183E59;
      -webkit-text-stroke: none;
      text-stroke: none; }
  .cont-title__ja {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 800;
    font-size: 2.4rem;
    letter-spacing: 0.05em;
    padding-left: 0.05em;
    line-height: 3.4rem; }
  @media (max-width: 500px) {
    .cont-title {
      gap: 0; }
      .cont-title.-blue {
        margin-top: 6rem; }
      .cont-title__en {
        font-size: 4.2rem;
        line-height: 6rem; }
      .cont-title__ja {
        font-size: 2.1rem; } }

.contBlock {
  width: 100rem;
  margin: auto auto 5rem;
  border-radius: 1rem;
  background: #FFFFFF;
  padding: 2.2rem 4.2rem; }
  .contBlock.-border {
    border: 3px solid #183E59; }
  @media (max-width: 768px) {
    .contBlock {
      width: 88rem; } }
  @media (max-width: 500px) {
    .contBlock {
      width: 44rem;
      padding: 3.5rem 2.7rem; } }

.contList {
  display: block; }
  .contList__li {
    display: block;
    padding: 2rem 0; }
    .contList__li:not(:last-child) {
      border-bottom: 1px solid #CECECE; }

.contInfo {
  display: grid;
  grid-template-columns: 15.5rem 1fr;
  grid-template-rows: 1fr; }
  .aboutus .contInfo {
    grid-template-columns: 28.5rem 1fr; }
  .contInfo__dt {
    grid-area: 1/1/2/2;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 2.5rem; }
  .contInfo__dd {
    grid-area: 1/2/2/3;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 400;
    letter-spacing: 0.05em;
    line-height: 2.5rem; }
  @media (max-width: 500px) {
    .contInfo {
      grid-template-columns: 2rem 1fr;
      grid-template-rows: auto; }
      .aboutus .contInfo {
        grid-template-columns: 2rem 1fr; }
      .contInfo__dt {
        grid-area: 1/1/2/3; }
      .contInfo__dd {
        grid-area: 2/2/3/3; } }

html.active,
body.active {
  overflow: hidden; }

body {
  padding-top: 12rem; }
  @media (max-width: 768px) {
    body {
      padding-top: 8rem; } }

.m-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 2000;
  height: 12rem;
  background: #FFFFFF; }
  .m-header__navi {
    height: 100%;
    margin: auto;
    padding: 2.3rem 0;
    position: relative; }
    .m-header__navi .instaIcon {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      right: 4rem; }
      .m-header__navi .instaIcon .link {
        display: block;
        width: 64px;
        height: 64px; }
        .m-header__navi .instaIcon .link img {
          width: 100%;
          height: 100%;
          object-fit: cover;
          object-position: center;
          image-rendering: -webkit-optimize-contrast;
          object-fit: contain; }
  .m-header__bnr {
    position: absolute;
    top: 100%;
    right: 0;
    transform: translateY(2rem);
    height: 10rem; }
  @media (max-width: 768px) {
    .m-header {
      bottom: 0;
      padding: 8rem 0;
      height: auto;
      overflow: auto;
      background: url(../img/common/bg.webp) center center/98px, #fff;
      transition: all 0.3s ease; }
      body:not(.active) .m-header {
        transform: translateY(-2rem);
        opacity: 0;
        pointer-events: none; }
      .m-header__navi {
        height: auto; }
      .m-header__bnr {
        position: static; } }

.sp-header {
  display: none; }
  @media (max-width: 768px) {
    .sp-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      z-index: 2000;
      height: 8rem;
      padding: 0 2rem;
      background: #FFFFFF; }
      .sp-header__logo {
        height: 5.4rem; }
        .sp-header__logo img {
          width: 100%;
          height: 100%;
          object-fit: cover;
          object-position: center;
          image-rendering: -webkit-optimize-contrast; } }

.humberger {
  position: relative;
  width: 3rem;
  height: 3rem; }
  .humberger > div {
    width: 3rem;
    height: 1px;
    background: #183E59;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    transition: all 0.3s ease; }
    .humberger > div:nth-child(1) {
      transform: translateY(-0.5rem); }
    .humberger > div:nth-child(2) {
      transform: translateY(0.5rem); }
  body.active .humberger > div:nth-child(1) {
    transform: rotate(45deg); }
  body.active .humberger > div:nth-child(2) {
    transform: rotate(-45deg); }

.globalnavi {
  display: grid;
  grid-template-columns: 1fr 40rem 1fr;
  height: 100%;
  margin: 0 auto; }
  @media screen and (max-width: 1600px) {
    .globalnavi {
      max-width: 120rem; } }
  .globalnavi__left {
    grid-area: 1/1/2/2;
    display: flex;
    justify-content: flex-end; }
  .globalnavi__center {
    grid-area: 1/2/2/3;
    display: flex;
    justify-content: center; }
  .globalnavi__right {
    grid-area: 1/3/2/4;
    display: flex;
    justify-content: flex-start; }
  @media (max-width: 768px) {
    .globalnavi {
      display: block;
      height: auto;
      max-width: 100%; }
      .globalnavi__center {
        display: none; }
      .globalnavi__left, .globalnavi__right {
        width: 88rem;
        justify-content: center;
        gap: 2rem;
        margin: auto auto 2rem; } }
  @media (max-width: 500px) {
    .globalnavi__left, .globalnavi__right {
      width: 44rem; } }

.gNaviLink {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1em;
  height: 100%;
  padding: 0 2em;
  color: #183E59;
  font-family: 'M PLUS Rounded 1c', sans-serif;
  transform: rotateZ(0.03deg);
  font-weight: 800;
  font-size: 1.8rem;
  transition: all 0.3s ease; }
  @media screen and (max-width: 1600px) {
    .gNaviLink {
      padding: 0 1.5rem; } }
  .gNaviLink.-logo img {
    height: 6rem; }
  .gNaviLink__icon {
    display: inline-block;
    height: 3rem; }
    .gNaviLink__icon img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
      image-rendering: -webkit-optimize-contrast; }
  .gNaviLink:hover {
    color: #FD6D2C; }
  .globalnavi__left .gNaviLink {
    background: radial-gradient(#C6C6C6 1.5px, transparent 1.6px) top left/6px 6px repeat-y; }
  .globalnavi__center .gNaviLink {
    width: 100%;
    background: radial-gradient(#C6C6C6 1.5px, transparent 1.6px) top left/6px 6px repeat-y, radial-gradient(#C6C6C6 1.5px, transparent 1.6px) top right/6px 6px repeat-y; }
  .globalnavi__right .gNaviLink {
    background: radial-gradient(#C6C6C6 1.5px, transparent 1.6px) top right/6px 6px repeat-y; }
  @media (max-width: 768px) {
    .gNaviLink {
      width: 43rem;
      font-size: 3.2rem;
      padding: 0;
      aspect-ratio: 1/1;
      display: flex;
      justify-content: center;
      align-items: center;
      flex-direction: column;
      background: #FFFFFF !important; }
      .gNaviLink__icon {
        height: 6rem; } }
  @media (max-width: 500px) {
    .gNaviLink {
      width: 21rem;
      font-size: 2.0rem; }
      .gNaviLink__icon {
        height: 3.2rem; } }

.headBnr {
  display: flex;
  justify-content: flex-end;
  gap: 1rem;
  height: 10rem; }
  .headBnr__link {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 800;
    transition: all 0.3s ease; }
    .headBnr__link.-tel {
      background: #FFFFFF;
      color: #463832;
      width: 28rem;
      border: 0.5rem solid #463832; }
      .headBnr__link.-tel:hover {
        background: #463832;
        color: #FFFFFF; }
    .headBnr__link.-contact {
      gap: 1rem;
      background: #FD6D2C;
      color: #FFFFFF;
      width: 14rem;
      border: 0.5rem solid #FD6D2C; }
      .headBnr__link.-contact .-icon {
        background: #FFFFFF;
        mask: url(../img/common/icon_contact.svg) center center/auto 100% no-repeat; }
      .headBnr__link.-contact:hover {
        background: #FFFFFF;
        color: #FD6D2C; }
        .headBnr__link.-contact:hover .-icon {
          background: #FD6D2C; }
    .headBnr__link .-num {
      font-family: "Poppins", sans-serif;
      font-size: 2.7rem;
      font-weight: 700; }
    .headBnr__link .-add {
      font-family: 'M PLUS Rounded 1c', sans-serif;
      transform: rotateZ(0.03deg);
      font-size: 1.4rem;
      font-weight: 500; }
    .headBnr__link .-icon {
      display: block;
      width: 100%;
      height: 2.6rem;
      transition: all 0.3s ease; }
    .headBnr__link .spantext {
      display: block;
      text-align: center;
      font-size: 12px; }
  @media (max-width: 768px) {
    .headBnr {
      width: 88rem;
      margin: auto;
      gap: 2rem; }
      .headBnr__link {
        width: 43rem !important; }
        .headBnr__link.-tel {
          color: #183E59;
          border-color: #183E59; }
          .headBnr__link.-tel:hover {
            background: #183E59; } }
  @media (max-width: 500px) {
    .headBnr {
      display: block;
      width: 44rem;
      height: auto; }
      .headBnr__link {
        width: 100% !important;
        height: 10rem;
        margin-bottom: 2rem; } }

.front__hero {
  margin-bottom: 11rem; }
.front__menu {
  margin-bottom: 20.5rem; }
.front__message {
  margin-bottom: 7.5rem; }
.front__works {
  position: relative;
  overflow: hidden; }
  .front__works::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    clip-path: polygon(0 0, 25% 8.5rem, 50% 0, 75% 8.5rem, 100% 0, 100% 100%, 0 100%);
    background: url(../img/front/work_bg.webp) center center/cover no-repeat; }
.front__flow {
  margin-bottom: 12rem; }
.front__info {
  margin-bottom: 8.5rem; }
@media (max-width: 768px) {
  .front__works::before {
    clip-path: polygon(0 0, 25% 4rem, 50% 0, 75% 4rem, 100% 0, 100% 100%, 0 100%); } }
@media (max-width: 500px) {
  .front {
    padding-top: 2.6rem; }
    .front__hero {
      margin-bottom: 8.5rem; }
    .front__menu {
      margin-bottom: 6.8rem; }
    .front__message {
      margin-bottom: 7.2rem; }
    .front__works::before {
      clip-path: polygon(0 0, 25% 2rem, 50% 0, 75% 2rem, 100% 0, 100% 100%, 0 100%); } }

.fr-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.7rem;
  color: #183E59; }
  .fr-head.-white {
    color: #FFFFFF; }
  .fr-head__en {
    font-family: "Work Sans", sans-serif;
    font-weight: 700;
    font-size: 10rem;
    line-height: 11.7rem;
    letter-spacing: 0.1em;
    padding-left: 0.1em; }
  .fr-head__ja {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 800;
    font-size: 2.4rem;
    line-height: 3.4rem;
    letter-spacing: 0.1em;
    padding-left: 0.1em; }
  @media (max-width: 500px) {
    .fr-head {
      align-items: flex-start; }
      .fr-head__en {
        font-size: 5.2rem;
        line-height: 6rem; }
      .fr-head__ja {
        font-size: 2rem;
        line-height: 2.4rem; } }

.fr-hero {
  position: relative;
  padding: 0 4rem; }
  .fr-hero__catch {
    position: absolute;
    top: min(17rem, 15%);
    left: 18rem;
    width: 66rem;
    max-width: 52%; }
  .fr-hero__bnr {
    position: absolute;
    bottom: 4rem;
    right: 8rem;
    width: 52rem; }
  .fr-hero__info {
    position: absolute;
    bottom: 4rem;
    left: 0;
    width: 78rem;
    height: 7.5rem;
    display: flex;
    align-items: center;
    padding: 0 6.5rem;
    background: #FFFFFF;
    border-radius: 0 7.5rem 7.5rem 0; }
  @media (max-width: 768px) {
    .fr-hero__img {
      height: 72rem;
      border-radius: 2rem;
      overflow: hidden;
      margin-bottom: 3rem; }
    .fr-hero__bnr {
      position: static;
      margin: auto; }
    .fr-hero__info {
      display: none; } }
  @media (max-width: 500px) {
    .fr-hero {
      padding: 0 2rem; }
      .fr-hero__bnr {
        width: 44rem; }
      .fr-hero__catch {
        top: 20%;
        left: 10%;
        max-width: 74%; } }

.fr-catch__text {
  display: block;
  width: 100%; }
  .fr-catch__text img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    image-rendering: -webkit-optimize-contrast; }
.fr-catch__sign {
  display: block;
  width: 50%;
  margin-left: 10%; }
  .fr-catch__sign img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    image-rendering: -webkit-optimize-contrast; }
@media (max-width: 500px) {
  .fr-catch__sign {
    margin-left: 0;
    width: 60%; } }

.fr-menu {
  display: flex;
  justify-content: center;
  gap: 7.6rem;
  flex-wrap: wrap; }
  .fr-menu__li {
    width: 13.4rem; }
  @media (max-width: 768px) {
    .fr-menu {
      gap: 3rem; } }
  @media (max-width: 500px) {
    .fr-menu {
      gap: 2rem 3rem;
      width: 44rem;
      margin: auto; }
      .fr-menu__li {
        width: 11.6rem; } }

.fr-menuLink {
  display: block;
  text-align: center; }
  .fr-menuLink__ph {
    display: block;
    width: 100%;
    transition: all 0.3s ease;
    line-height: 0;
    margin-bottom: 1.3rem; }
    .fr-menuLink__ph img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
      image-rendering: -webkit-optimize-contrast; }
    a:hover > .fr-menuLink__ph {
      filter: brightness(2); }
  .fr-menuLink__cap {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 500;
    color: #000000;
    transition: all 0.3s ease; }
    a:hover > .fr-menuLink__cap {
      color: #FD6D2C; }
  @media (max-width: 500px) {
    .fr-menuLink__cap {
      font-size: 1.4rem; } }

.fr-message {
  width: 120rem;
  margin: auto;
  display: grid;
  grid-template-columns: 67rem 1fr 52rem;
  grid-template-rows: auto 1fr; }
  .fr-message__head {
    grid-area: 1/1/2/2; }
  .fr-message__text {
    grid-area: 2/1/3/2; }
  .fr-message__img {
    grid-area: 1/3/3/4;
    width: 100%;
    aspect-ratio: 52/36.8;
    transform: translate(10rem, 3.5rem); }
  @media (max-width: 768px) {
    .fr-message {
      width: 88rem;
      grid-template-columns: 50rem 1fr 28rem;
      grid-template-rows: auto 1fr; }
      .fr-message__img {
        transform: translate(0, 3.5rem); } }
  @media (max-width: 500px) {
    .fr-message {
      width: 44rem;
      grid-template-columns: 1fr;
      grid-template-rows: auto auto auto; }
      .fr-message__head {
        grid-area: 1/1/2/2; }
      .fr-message__img {
        grid-area: 2/1/3/2;
        transform: none;
        margin-bottom: 2rem; }
      .fr-message__text {
        grid-area: 3/1/4/2; } }

.mesHead {
  margin-bottom: 3.7rem; }
  .mesHead__en {
    display: block;
    font-size: 10rem;
    font-family: "Work Sans", sans-serif;
    font-weight: 700;
    line-height: 9.1rem;
    letter-spacing: 0.1em;
    color: #FFFFFF; }
  .mesHead__ja {
    display: block;
    line-height: 0;
    width: 50.2rem;
    height: 5.7rem;
    margin-top: -1.6rem; }
  @media (max-width: 500px) {
    .mesHead__en {
      font-size: 5.2rem;
      margin-bottom: 1rem; }
    .mesHead__ja {
      width: 44rem;
      height: auto; } }

.mesText {
  font-family: 'M PLUS Rounded 1c', sans-serif;
  transform: rotateZ(0.03deg);
  font-size: 1.8rem;
  line-height: 3.7rem;
  color: #183E59;
  margin-bottom: 4rem; }

.fr-works {
  position: relative;
  width: 120rem;
  margin: auto;
  display: grid;
  grid-template-columns: 30.4rem 1fr auto;
  grid-template-rows: 29.5rem 6.5rem 1fr auto;
  padding: 4rem 0 12rem; }
  .fr-works__icon {
    grid-area: 1/1/3/2; }
    @media (max-width: 768px) {
      .fr-works__icon.nexticon {
        display: none; } }
  .fr-works__head {
    grid-area: 1/1/2/4;
    display: flex;
    align-items: flex-end;
    justify-content: center; }
    .fr-works__head.contentnone {
      position: relative; }
      .fr-works__head.contentnone .noneText {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        top: 100%;
        margin-top: 1.5rem; }
        .fr-works__head.contentnone .noneText .text {
          font-size: 1.8rem;
          line-height: 3.7rem;
          color: #183E59;
          font-family: "M PLUS Rounded 1c", sans-serif; }
  .fr-works__nb {
    grid-area: 1/3/2/4;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end; }
  .fr-works__list {
    grid-area: 3/1/4/4;
    margin-bottom: 6.5rem; }
  .fr-works__link {
    grid-area: 5/1/6/4;
    text-align: center; }
  @media (max-width: 768px) {
    .fr-works {
      width: 88rem;
      grid-template-columns: 20.4rem 1fr auto;
      grid-template-rows: 17.5rem 6.5rem 1fr auto; } }
  @media (max-width: 500px) {
    .fr-works {
      width: 44rem;
      grid-template-columns: 1fr auto;
      grid-template-rows: auto auto 1fr auto;
      margin: auto; }
      .fr-works__head {
        grid-area: 1/1/2/2;
        justify-content: flex-start; }
      .fr-works__nb {
        grid-area: 1/2/2/3; }
      .fr-works__icon {
        grid-area: 2/1/3/3;
        width: 40%;
        margin: auto auto -5rem;
        line-height: 0; }
      .fr-works__list {
        grid-area: 3/1/4/3; }
      .fr-works__link {
        grid-area: 5/1/6/3; } }
  @media (max-width: 768px) {
    .fr-works.fr-works_contentnone {
      padding: 4rem 0 16rem; } }

.worksList {
  width: 42.3rem !important; }
  @media (max-width: 500px) {
    .worksList {
      width: 33rem !important; } }

.worksListCont {
  display: grid;
  width: 35.5rem;
  grid-template-columns: 1fr auto;
  grid-template-rows: auto;
  color: #183E59;
  transition: all 0.3s ease; }
  .worksListCont img {
    transition: all 0.3s ease; }
  .worksListCont:hover {
    color: #FD6D2C; }
    .worksListCont:hover img {
      transform: scale(1.1); }
  .worksListCont__ph {
    grid-area: 1/1/2/3;
    width: 100%;
    height: auto;
    aspect-ratio: 35.5/25;
    margin-bottom: 1.5rem;
    line-height: 0; }
  .worksListCont__name {
    grid-area: 2/1/3/2;
    margin-bottom: 1.2rem;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-size: 2.4rem;
    line-height: 3.4rem;
    font-weight: 800;
    letter-spacing: 0.1em; }
  .worksListCont__area {
    grid-area: 2/2/3/3;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-size: 1.6rem;
    line-height: 3.4rem;
    font-weight: 500;
    letter-spacing: 0.1em; }
  .worksListCont__date {
    grid-area: 3/1/4/3;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-size: 1.6rem;
    line-height: 2.2rem;
    font-weight: 500;
    letter-spacing: 0.1em; }
  @media (max-width: 500px) {
    .worksListCont {
      width: 29.5rem;
      margin-right: 3rem; } }

.fr-flow {
  position: relative;
  z-index: 10;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 60rem; }
  .fr-flow::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 23.6rem;
    height: 17.7rem;
    background: url(../img/front/flow_icon.webp) center center/contain no-repeat;
    transform: translate(-60rem, -50%); }
  .fr-flow__bg {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -1;
    overflow: hidden; }
    .fr-flow__bg::before {
      content: "";
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      background: #183E59;
      opacity: 0.5;
      z-index: 10; }
    .fr-flow__bg .swiper-wrapper {
      transition-timing-function: linear; }
    .fr-flow__bg .swiper-slide {
      width: 60rem !important; }
  .fr-flow__head {
    margin-bottom: 4.8rem; }
  .fr-flow__body {
    text-align: center; }
  @media (max-width: 768px) {
    .fr-flow {
      height: 45rem; }
      .fr-flow::before {
        transform: translate(-44rem, -50%); }
      .fr-flow .swiper-slide {
        width: 45rem !important; } }
  @media (max-width: 500px) {
    .fr-flow {
      height: 37.8rem; }
      .fr-flow::before {
        transform: translate(-50%, -50%);
        width: 13.6rem;
        height: 10rem; }
      .fr-flow .fr-head {
        align-items: center; }
      .fr-flow .swiper-slide {
        width: 37.8rem !important; } }

.fr-info__head {
  margin-bottom: 5rem; }
.fr-info__body {
  margin-bottom: 5rem; }
.fr-info__link {
  text-align: center; }
@media (max-width: 500px) {
  .fr-info {
    width: 44rem;
    margin: auto; } }

.newsList {
  width: 100rem;
  max-width: 100%;
  margin: auto;
  border-top: 1px solid #707070; }
  .newsList__li {
    border-bottom: 1px solid #707070; }
  @media (max-width: 768px) {
    .newsList {
      width: 88rem; } }
  @media (max-width: 500px) {
    .newsList {
      width: 44rem;
      border-color: #E5EBF4; }
      .newsList__li {
        border-color: #E5EBF4; } }

.newsLink {
  display: flex;
  padding: 2.0rem 0;
  color: #000000;
  transition: all 0.3s ease; }
  .newsLink:hover {
    color: #FD6D2C; }
  .newsLink.-arrow::after {
    content: "▶";
    color: #183E59;
    width: 3em;
    text-align: right;
    flex-shrink: 0; }
  .newsLink__date, .newsLink__cat, .newsLink__title {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 500; }
  .newsLink__date {
    width: 13rem;
    flex-shrink: 0;
    border-right: 1px solid; }
  .newsLink__cat {
    width: 14rem;
    flex-shrink: 0;
    border-right: 1px solid;
    text-align: center; }
  .newsLink__date, .newsLink__cat {
    position: relative; }
    .newsLink__date::before, .newsLink__cat::before {
      content: "";
      position: absolute;
      right: 0;
      top: 0;
      bottom: 0; }
  .newsLink__title {
    flex: 1;
    padding-left: 4rem;
    height: 1.4em;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    overflow: hidden; }
  @media (max-width: 500px) {
    .newsLink.-arrow::after {
      display: none; }
    .newsLink__date {
      width: 11rem; }
    .newsLink__cat {
      width: 12rem; }
    .newsLink__title {
      padding-left: 2rem; } }

.about-top {
  margin-top: -20rem;
  padding: 19rem 0 12rem;
  text-align: center;
  background: url(../img/aboutus/topBg.webp) bottom center/143.6rem no-repeat, #FEF4ED; }
  .about-top__head {
    width: 54.4rem;
    aspect-ratio: 54.4/5.7;
    margin: auto auto 3.7rem; }
  .about-top__body {
    line-height: 4.2rem; }
  @media (max-width: 768px) {
    .about-top {
      padding-bottom: 20rem;
      background-size: 100%; } }
  @media (max-width: 500px) {
    .about-top {
      background-image: url(../img/aboutus/topBg_sp.webp);
      padding-bottom: 22rem; }
      .about-top__head {
        width: 35rem; }
      .about-top__body {
        width: 44rem;
        margin: auto;
        line-height: 3.2rem;
        font-size: 1.9rem; } }

.about-staff {
  display: grid;
  grid-template-columns: 1fr 118.5rem 11.5rem 1fr;
  grid-template-rows: 1fr auto auto;
  padding: 11rem 0 12rem;
  overflow: hidden; }
  .about-staff__head {
    grid-area: 1/2/3/3; }
  .about-staff__nb {
    grid-area: 2/3/3/4;
    margin-bottom: 5rem; }
  .about-staff__slide {
    grid-area: 3/2/4/4; }
  @media (max-width: 768px) {
    .about-staff {
      grid-template-columns: 1fr 76.5rem 11.5rem 1fr; } }
  @media (max-width: 500px) {
    .about-staff {
      grid-template-columns: 1fr 32.5rem 11.5rem 1fr; } }

.staffList {
  width: 45.8rem !important; }
  @media (max-width: 500px) {
    .staffList {
      width: 42rem !important; } }

.staffBlock {
  width: 38rem;
  position: relative; }
  .staffBlock::before {
    content: attr(data-num);
    position: absolute;
    top: 0;
    right: 0;
    width: 11rem;
    transform: translateY(-50%);
    font-family: "Poppins", sans-serif;
    font-size: 7.2rem;
    font-weight: 800;
    letter-spacing: 0.025em;
    line-height: 1;
    color: transparent;
    -webkit-text-stroke: 1px #FD6D2C;
    text-stroke: 1px #FD6D2C; }
  .staffBlock__ph {
    width: 100%;
    aspect-ratio: 38/25;
    border-radius: 1rem;
    overflow: hidden;
    margin-bottom: 2rem; }
  .staffBlock__name {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 500;
    font-size: 2.4rem;
    letter-spacing: 0.05em;
    line-height: 3.6rem;
    color: #183E59;
    margin-bottom: 1rem; }
  .staffBlock__kana {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
    line-height: 2.3rem;
    color: #183E59;
    margin-bottom: 2rem; }
  .staffBlock__info {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 3rem;
    color: #606060; }
  @media (max-width: 500px) {
    .staffBlock {
      width: 39.4rem; } }

.about-feauture {
  position: relative;
  padding: 8rem 0 12rem;
  background: #FEF4ED; }
  .about-feauture::before {
    content: "";
    position: absolute;
    top: 0;
    right: 50%;
    width: 35rem;
    aspect-ratio: 35/22.4;
    background: url(../img/aboutus/features_icon.webp) center center/contain no-repeat;
    transform: translate(65rem, -8.2rem); }
  .about-feauture__body {
    width: 130rem;
    margin: auto; }
  @media (max-width: 768px) {
    .about-feauture::before {
      width: 24rem;
      transform: translate(44rem, -8.2rem); }
    .about-feauture__body {
      width: 88rem; } }
  @media (max-width: 500px) {
    .about-feauture::before {
      display: none; }
    .about-feauture__head, .about-feauture__body {
      width: 44rem;
      margin: auto; } }

.feautureList {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 5rem 7.8rem; }
  @media (max-width: 500px) {
    .feautureList {
      gap: 0; }
      .feautureList__li {
        width: 44rem;
        padding: 3rem;
        border-bottom: 1px solid #183E59; }
        .feautureList__li:first-child {
          border-top: 1px solid #183E59; } }

.fea-block {
  width: 38rem; }
  .fea-block__ph {
    width: 38rem;
    height: 25rem;
    border-radius: 1rem;
    overflow: hidden;
    margin-bottom: 2rem; }
  .fea-block__head {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 500;
    font-size: 2.4rem;
    letter-spacing: 0.05em;
    line-height: 3.6rem;
    color: #183E59;
    margin-bottom: 1rem; }
  .fea-block__body {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 3rem;
    color: #606060; }
  .fea-block__btn {
    display: none; }
  @media (max-width: 500px) {
    .fea-block {
      display: grid; }
      .fea-block__head {
        grid-area: 1/1/2/2; }
      .fea-block__ph {
        grid-area: 2/1/3/2;
        display: none;
        margin-top: 2rem; }
      .fea-block__body {
        grid-area: 3/1/4/2;
        display: none; }
      .fea-block__btn {
        grid-area: 1/1/2/2;
        position: relative;
        display: block;
        transition: all 0.3s ease; }
        .fea-block__btn::before {
          content: "";
          position: absolute;
          right: 0;
          top: 0;
          bottom: 0;
          margin: auto;
          display: block;
          width: 0.8rem;
          height: 0.8rem;
          border: solid #183E59;
          border-width: 0.5rem 0.5rem 0 0;
          transform: translateY(-50%) rotate(135deg); }
        .fea-block__btn.-open {
          transform: scale(1, -1); } }

.about-company {
  position: relative;
  padding: 12rem 0; }
  .about-company::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 12.4rem;
    height: 17.8rem;
    background: url(../img/aboutus/conpany_icon.webp) center center/contain no-repeat;
    transform: translate(-50rem, -7rem); }
  @media (max-width: 768px) {
    .about-company::before {
      transform: translate(-44rem, -7rem); } }
  @media (max-width: 500px) {
    .about-company__head {
      width: 44rem;
      margin: auto; } }

.companyMap {
  width: 100rem;
  height: 40rem;
  margin: auto;
  border-radius: 1rem;
  overflow: hidden; }
  .companyMap iframe {
    width: 100%;
    height: 100%; }
  @media (max-width: 768px) {
    .companyMap {
      width: 88rem; } }
  @media (max-width: 500px) {
    .companyMap {
      width: 44rem; } }

.flow {
  padding-bottom: 12rem; }
  @media (max-width: 500px) {
    .flow {
      padding-bottom: 6rem; } }

.flowBlock {
  width: 100rem;
  margin: auto;
  display: grid;
  grid-template-columns: 4.2rem 6rem 1fr 4rem 29rem;
  grid-template-rows: auto 1fr 6.6rem; }
  .flowBlock:not(:last-child)::before {
    content: "";
    grid-area: 1/1/4/2;
    display: block;
    background: linear-gradient(to right, #183E59, #183E59) center top/2px 100% no-repeat; }
  .flowBlock__num {
    grid-area: 1/1/3/2;
    background: #183E59;
    color: #FFFFFF;
    border-radius: 50%;
    aspect-ratio: 1/1;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: "Poppins", sans-serif;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1; }
  .flowBlock__head {
    grid-area: 1/3/2/4;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 500;
    font-size: 2.4rem;
    letter-spacing: 0.05em;
    line-height: 3.6rem;
    color: #183E59;
    margin-bottom: 1rem; }
  .flowBlock__body {
    grid-area: 2/3/3/4;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 3rem;
    color: #606060; }
  .flowBlock__ph {
    grid-area: 1/5/3/6;
    aspect-ratio: 29/18; }
  @media (max-width: 768px) {
    .flowBlock {
      width: 88rem; } }
  @media (max-width: 500px) {
    .flowBlock {
      width: 44rem;
      grid-template-columns: 4.2rem 2rem 37.8rem;
      grid-template-rows: auto auto auto;
      margin-bottom: 4rem; }
      .flowBlock::before {
        content: "";
        grid-area: 1/1/4/2;
        display: block;
        background: linear-gradient(to right, #183E59, #183E59) center top/2px 100% no-repeat; }
      .flowBlock__head {
        grid-area: 1/3/2/4; }
      .flowBlock__ph {
        grid-area: 2/3/3/4;
        margin-bottom: 2.7rem; }
        .flowBlock__ph .borderImgArea {
          border: none; }
      .flowBlock__body {
        grid-area: 3/3/4/4; } }

.works {
  padding-bottom: 12rem; }
  .works.-single {
    padding-bottom: 0; }
  @media (max-width: 500px) {
    .works {
      padding-bottom: 6rem; } }

.noneText .text {
  text-align: center;
  font-size: 1.8rem;
  line-height: 3.7rem;
  color: #183E59;
  font-family: "M PLUS Rounded 1c", sans-serif; }

.worksArchives {
  width: 120rem;
  margin: auto;
  display: flex;
  flex-wrap: wrap;
  gap: 4.7rem 6.7rem; }
  .worksArchives .worksListCont {
    width: 100%; }
  .worksArchives__li {
    width: 35.5rem; }
  @media (max-width: 768px) {
    .worksArchives {
      width: 88rem;
      gap: 5rem 8rem; }
      .worksArchives__li {
        width: 40rem; } }
  @media (max-width: 500px) {
    .worksArchives {
      width: 44rem;
      gap: 5rem 8rem; }
      .worksArchives__li {
        width: 44rem; } }

.works-data {
  width: 100rem;
  margin: auto auto 10rem; }
  @media (max-width: 768px) {
    .works-data {
      width: 88rem; } }
  @media (max-width: 500px) {
    .works-data {
      width: 44rem;
      margin-bottom: 5.5rem; }
      .works-data .contList__li {
        border-bottom: 1px solid #CECECE; } }

.works-ba {
  display: flex;
  justify-content: space-between;
  margin-bottom: 5rem; }
  .works-ba__li {
    width: 48rem;
    border-radius: 1rem;
    overflow: hidden;
    position: relative; }
    .works-ba__li::before {
      position: absolute;
      display: flex;
      justify-content: center;
      align-items: center;
      width: 13rem;
      height: 4.8rem;
      font-family: "Poppins", sans-serif;
      font-weight: 800;
      letter-spacing: 0.1em;
      padding-left: 0.1em;
      font-size: 1.6rem;
      line-height: 1; }
    .works-ba__li:first-child::before {
      content: "BEFORE";
      background: #DEDEDE;
      color: #183E59; }
    .works-ba__li:last-child::before {
      content: "AFTER";
      background: #FD6D2C;
      color: #FFFFFF; }
  @media (max-width: 768px) {
    .works-ba__li {
      width: 42rem; } }
  @media (max-width: 500px) {
    .works-ba {
      display: block;
      margin-bottom: 2rem; }
      .works-ba__li {
        width: 44rem;
        margin-bottom: 2rem; } }

.works-report {
  display: grid;
  grid-template-columns: 1fr 88.5rem 11.5rem 1fr;
  grid-template-rows: 1fr auto auto;
  overflow: hidden;
  margin-bottom: 12rem; }
  .works-report__head {
    grid-area: 1/2/3/3; }
  .works-report__nb {
    grid-area: 2/3/3/4;
    margin-bottom: 5rem; }
  .works-report__slide {
    grid-area: 3/2/4/4; }
  @media (max-width: 768px) {
    .works-report {
      grid-template-columns: 1fr 76.5rem 11.5rem 1fr; } }
  @media (max-width: 500px) {
    .works-report {
      grid-template-columns: 1fr 32.5rem 11.5rem 1fr;
      margin-bottom: 10rem; } }

.reportList {
  width: 42.3rem !important; }
  @media (max-width: 500px) {
    .reportList {
      width: 31.5rem !important; } }

.reportBlock {
  width: 35.5rem;
  position: relative; }
  .reportBlock__ph {
    width: 100%;
    aspect-ratio: 355/250;
    margin-bottom: 2.5rem; }
  .reportBlock__info {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 400;
    letter-spacing: 0.05em; }
  @media (max-width: 500px) {
    .reportBlock {
      width: 29.5rem; } }

.works-message {
  padding: 11.5rem 0;
  background: url(../img/works/messageBg.webp) center center/auto 100% no-repeat; }
  @media (max-width: 500px) {
    .works-message {
      padding: 5.4rem 0; } }

.staffMes {
  padding: 4.8rem 0; }
  .staffMes__head .secHead {
    margin-bottom: 3.5rem;
    align-items: center;
    text-align: center; }
  .staffMes__img {
    width: 20rem;
    aspect-ratio: 1/1;
    border-radius: 50%;
    overflow: hidden;
    margin: auto auto 3.5rem; }
  .staffMes__body {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 400;
    letter-spacing: 0.05em;
    padding-left: 0.05em;
    text-align: center;
    line-height: 2.5rem;
    color: #183E59;
    width: 80rem;
    max-width: 100%;
    margin: auto; }
  @media (max-width: 500px) {
    .staffMes__body {
      font-size: 1.8rem;
      line-height: 4.2rem; } }

.works-voice {
  padding: 11.5rem 0 12rem; }

.userVoice__head .secHead {
  margin-bottom: 3.5rem;
  align-items: center;
  text-align: center; }
.userVoice__star {
  width: 23.8rem;
  height: 2.9rem;
  margin: auto auto 5rem;
  background: url(../img/works/star.svg) left center/auto 100% no-repeat; }
  .userVoice__star.-star4 {
    background-position: left -5.2rem center; }
  .userVoice__star.-star3 {
    background-position: left -10.4rem center; }
  .userVoice__star.-star2 {
    background-position: left -15.6rem center; }
  .userVoice__star.-star1 {
    background-position: left -20.8rem center; }
.userVoice__img {
  width: 48rem;
  max-width: 100%;
  aspect-ratio: 48/31;
  border-radius: 1rem;
  overflow: hidden;
  margin: auto auto 5rem; }
.userVoice__info {
  border: solid #CECECE;
  border-width: 1px 0;
  margin-bottom: 4.8rem; }

.works-other {
  background: #183E59;
  clip-path: polygon(0 0, 25% 8.5rem, 50% 0, 75% 8.5rem, 100% 0, 100% 100%, 0 100%);
  padding: 17rem 0 12rem;
  display: grid;
  grid-template-columns: 1fr 118.5rem 11.5rem 1fr;
  grid-template-rows: 1fr auto auto;
  overflow: hidden; }
  .works-other .worksListCont {
    color: #FFFFFF; }
  .works-other__head {
    grid-area: 1/2/3/3; }
  .works-other__nb {
    grid-area: 2/3/3/4;
    margin-bottom: 5rem; }
    .works-other__nb .slideNavi__prev:not(.swiper-button-disabled),
    .works-other__nb .slideNavi__next:not(.swiper-button-disabled) {
      background: #FD6D2C; }
  .works-other__slide {
    grid-area: 3/2/4/4;
    margin-bottom: 5rem; }
  .works-other__link {
    grid-area: 4/2/5/4;
    text-align: center; }
  @media (max-width: 768px) {
    .works-other {
      grid-template-columns: 1fr 76.5rem 11.5rem 1fr; } }
  @media (max-width: 500px) {
    .works-other {
      clip-path: polygon(0 0, 25% 4rem, 50% 0, 75% 4rem, 100% 0, 100% 100%, 0 100%);
      grid-template-columns: 1fr 32.5rem 11.5rem 1fr; } }

.otherList {
  width: 42.3rem !important; }
  @media (max-width: 500px) {
    .otherList {
      width: 33rem !important; } }

.information {
  padding-bottom: 12rem; }
  .information.-single {
    padding-top: 6rem; }
  @media (max-width: 500px) {
    .information {
      padding-bottom: 6rem; } }

.info {
  width: 100rem;
  margin: auto; }
  .info__area {
    margin-bottom: 8rem; }
  @media (max-width: 768px) {
    .info {
      width: 88rem; } }
  @media (max-width: 500px) {
    .info {
      width: 44rem; }
      .info__area {
        margin-bottom: 4rem; } }

.infoDate {
  font-size: 1.6rem;
  font-weight: "Poppins", sans-serif;
  font-weight: 500;
  line-height: 2.4rem;
  margin-bottom: 2.8rem;
  color: #183E59; }
  @media (max-width: 500px) {
    .infoDate {
      font-size: 2.1rem; } }

.infoTitle {
  font-family: 'M PLUS Rounded 1c', sans-serif;
  transform: rotateZ(0.03deg);
  font-weight: 500;
  font-size: 2.4rem;
  line-height: 4rem;
  margin-bottom: 5.4rem;
  color: #183E59; }
  @media (max-width: 500px) {
    .infoTitle {
      font-size: 3.4rem;
      line-height: 5.2rem;
      margin-bottom: 4rem; } }

.infoContent h2, .infoContent h3, .infoContent h4, .infoContent h5, .infoContent h6, .infoContent p, .infoContent li, .infoContent span {
  font-family: 'M PLUS Rounded 1c', sans-serif;
  transform: rotateZ(0.03deg); }
.infoContent h2, .infoContent h3, .infoContent h4, .infoContent h5, .infoContent h6 {
  font-weight: 500;
  margin-top: 7rem;
  color: #183E59; }
.infoContent h2, .infoContent h3, .infoContent h4 {
  margin-bottom: 4rem; }
.infoContent h5, .infoContent h6 {
  margin-bottom: 2rem;
  letter-spacing: 0.05em; }
.infoContent h2 {
  position: relative;
  font-size: 2.2rem;
  line-height: 2.6rem;
  padding-left: 2.6rem; }
  .infoContent h2::before {
    content: "";
    position: absolute;
    top: 0.8rem;
    left: 0;
    width: 1rem;
    aspect-ratio: 1/1;
    border-radius: 50%;
    background: #183E59; }
.infoContent h3 {
  font-size: 1.9rem;
  line-height: 2.6rem;
  padding-bottom: 1.3rem;
  border-bottom: 2px solid; }
.infoContent h4 {
  font-size: 1.6rem;
  padding: 0.9rem 3rem;
  background: #183E59;
  color: #FFFFFF; }
.infoContent h5 {
  position: relative;
  font-size: 1.6rem;
  line-height: 2.6rem;
  padding-left: 2.6rem; }
  .infoContent h5::before {
    content: "";
    position: absolute;
    top: 0.8rem;
    left: 0;
    width: 1rem;
    aspect-ratio: 1/1;
    border-radius: 50%;
    background: #000000; }
.infoContent p {
  font-family: 'M PLUS Rounded 1c', sans-serif;
  transform: rotateZ(0.03deg);
  line-height: 3rem; }
.infoContent a {
  font-family: 'M PLUS Rounded 1c', sans-serif;
  transform: rotateZ(0.03deg);
  color: #005080; }
.infoContent ul {
  padding-left: 4rem;
  margin-bottom: 2rem; }
.infoContent li {
  position: relative;
  font-size: 1.6rem;
  line-height: 3.4rem;
  padding-left: 1em; }
  .infoContent li::before {
    content: "";
    position: absolute;
    top: 1.25rem;
    left: 0;
    width: 0.9rem;
    aspect-ratio: 1/1;
    border-radius: 50%;
    background: #000000; }
  .infoContent li li::before {
    border-radius: 0;
    background: #FFFFFF;
    border: 1px solid #000000; }
.infoContent .wp-block-image {
  max-width: 65.2rem;
  margin: auto auto 3rem;
  padding: 2.6rem; }
.infoContent .wp-block-table {
  width: 100%;
  text-align: center;
  background: #FEF4ED; }
  .infoContent .wp-block-table table {
    width: 100%; }
  .infoContent .wp-block-table th, .infoContent .wp-block-table td {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg); }
@media (max-width: 500px) {
  .infoContent h2, .infoContent h3, .infoContent h4, .infoContent h5, .infoContent h6 {
    margin-top: 3.8rem; }
  .infoContent h2, .infoContent h3, .infoContent h4 {
    margin-bottom: 3rem; }
  .infoContent h2, .infoContent h3 {
    font-size: 2.4rem; }
  .infoContent h4, .infoContent h5, .infoContent h6 {
    font-size: 2.1rem; }
  .infoContent ul {
    padding-left: 2.6rem; }
  .infoContent .wp-block-table {
    text-align: left; }
    .infoContent .wp-block-table table, .infoContent .wp-block-table tbody, .infoContent .wp-block-table th, .infoContent .wp-block-table td {
      display: block; }
    .infoContent .wp-block-table tr {
      display: flex;
      flex-wrap: wrap; }
    .infoContent .wp-block-table tbody {
      border: solid;
      border-width: 1px 1px 0 0; }
    .infoContent .wp-block-table th, .infoContent .wp-block-table td {
      width: 50%;
      border-width: 0 0 1px 1px; } }

.pager {
  margin: 5rem 0 0; }

.wp-pagenavi {
  display: flex;
  justify-content: center;
  gap: 1rem;
  margin: auto; }
  .wp-pagenavi span, .wp-pagenavi a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 3.7rem;
    height: 3.7rem;
    border-radius: 0.5rem; }
  .wp-pagenavi a {
    transition: all 0.3s ease;
    color: inherit;
    background: #FFFFFF; }
  .wp-pagenavi .previouspostslink,
  .wp-pagenavi .nextpostslink {
    position: relative;
    color: transparent !important; }
    .wp-pagenavi .previouspostslink::before,
    .wp-pagenavi .nextpostslink::before {
      content: "";
      position: absolute;
      inset: 0;
      margin: auto;
      width: 1.365rem;
      aspect-ratio: 1/1;
      background: #183E59;
      mask: url(../img/information/arrow.svg) center center/contain no-repeat;
      transition: all 0.3s ease; }
  .wp-pagenavi .nextpostslink {
    transform: scale(-1, 1); }
  .wp-pagenavi .current,
  .wp-pagenavi a:hover {
    background-color: #183E59;
    color: #FFFFFF; }
    .wp-pagenavi .current::before,
    .wp-pagenavi a:hover::before {
      background: #FFFFFF; }

.articlePager {
  width: 100%;
  margin: auto auto 9.3rem;
  display: flex;
  justify-content: space-between;
  align-items: center; }
  .articlePager a {
    position: relative;
    display: block;
    aspect-ratio: 1/1;
    background: #FFFFFF;
    border-radius: 0.5rem;
    transition: all 0.3s ease; }
    .articlePager a:hover {
      background: #183E59; }
  .articlePager__list {
    display: inline-block;
    width: 3.7rem;
    color: inherit;
    text-decoration: inherit;
    transform: rotateZ(0.03deg); }
  .articlePager__nb {
    width: 3.7rem; }
    .articlePager__nb.-next {
      transform: scale(-1, 1); }
  @media (max-width: 768px) {
    .articlePager {
      width: 88rem; } }
  @media (max-width: 500px) {
    .articlePager {
      width: 100%;
      padding: 0 2rem;
      margin-bottom: 8rem; }
      .articlePager__nb img {
        border: 1px solid #F0F3F5; } }

a .pageArrow {
  position: absolute;
  inset: 0;
  margin: auto;
  width: 1.365rem;
  aspect-ratio: 1/1;
  background: #183E59;
  mask: url(../img/information/arrow.svg) center center/contain no-repeat;
  transition: all 0.3s ease; }
a .pageMenu {
  position: absolute;
  inset: 0;
  margin: auto;
  width: 1.5rem;
  aspect-ratio: 1/1;
  background: #183E59;
  mask: url(../img/information/menu.svg) center center/contain no-repeat;
  transition: all 0.3s ease; }
a:hover .pageArrow,
a:hover .pageMenu {
  background: #FFFFFF; }

.contact {
  position: relative;
  z-index: 20;
  padding-bottom: 12rem; }
  .contact__icon {
    position: absolute;
    top: -28rem;
    left: 0;
    right: 0;
    margin: auto;
    width: 21.1rem;
    aspect-ratio: 211/239; }
  .contact__step {
    margin-bottom: 7rem; }
  .contact__info {
    margin-bottom: 7rem;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 2;
    text-align: center; }
    .contact__info .sponly {
      display: none; }
      @media (max-width: 768px) {
        .contact__info .sponly {
          display: block; } }
  @media (max-width: 768px) {
    .contact__icon {
      top: -22rem;
      width: 16rem; } }
  @media (max-width: 500px) {
    .contact {
      width: 44rem;
      margin: auto; } }

.steps {
  display: flex;
  justify-content: space-between;
  width: 45rem;
  margin: auto;
  background: linear-gradient(to bottom, transparent 2.4rem, #9A9A9A 2.4rem, #9A9A9A 2.6rem, transparent 2.6rem); }
  .steps__li {
    text-align: center; }
    .steps__li .-num {
      display: flex;
      justify-content: center;
      align-items: center;
      width: 5rem;
      aspect-ratio: 1/1;
      border-radius: 50%;
      line-height: 0;
      font-size: 1.7rem;
      font-family: "Poppins", sans-serif;
      letter-spacing: 0.05em;
      color: #FFFFFF;
      background: #9A9A9A;
      margin: auto auto 1.8rem; }
    .steps__li .-text {
      display: inline-block;
      font-family: 'M PLUS Rounded 1c', sans-serif;
      transform: rotateZ(0.03deg);
      font-weight: 800;
      font-size: 1.4rem;
      color: #9A9A9A; }
    .steps__li.-crt .-num {
      background: #183E59; }
    .steps__li.-crt .-text {
      color: #183E59; }
  @media (max-width: 500px) {
    .steps {
      width: 44rem; } }

.input {
  display: grid;
  grid-template-columns: 33rem 1fr;
  grid-template-rows: 1fr; }
  .input__head {
    grid-area: 1/1/2/2;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 500; }
    .input__head::before {
      font-size: 1rem;
      display: inline-flex;
      justify-content: center;
      align-items: center;
      width: 3.4rem;
      height: 1.6rem;
      color: #FFFFFF;
      line-height: 0;
      border-radius: 0.4rem;
      margin-right: 1em;
      transform: translateY(-0.2rem); }
      [require="true"] .input__head::before {
        content: "必須";
        background: #183E59; }
      [require="false"] .input__head::before {
        content: "任意";
        background: #9A9A9A; }
  .input__body {
    grid-area: 1/2/2/3; }
    .input__body input[type="text"],
    .input__body input[type="email"],
    .input__body textarea {
      width: 100%;
      min-height: 4rem;
      border: 1px solid #9A9A9A;
      border-radius: 0.5rem;
      padding: 0.4em 0.8em; }
    .input__body .-caution {
      display: block;
      font-family: 'M PLUS Rounded 1c', sans-serif;
      transform: rotateZ(0.03deg);
      font-weight: 400;
      font-size: 1.4rem;
      margin-top: 1rem; }
    .input__body .mwform-radio-field {
      display: block;
      margin: 0 0 1.8rem !important; }
      .input__body .mwform-radio-field label {
        display: flex;
        align-items: center;
        line-height: 2.8rem; }
      .input__body .mwform-radio-field .mwform-radio-field-text {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        gap: 1rem;
        font-family: 'M PLUS Rounded 1c', sans-serif;
        transform: rotateZ(0.03deg);
        font-weight: 400; }
        .input__body .mwform-radio-field .mwform-radio-field-text::before {
          content: "";
          width: 2.8rem;
          aspect-ratio: 1/1;
          border-radius: 50%;
          border: 1px solid #9A9A9A; }
      .input__body .mwform-radio-field input[type="radio"]:checked + .mwform-radio-field-text::before {
        background: url(../img/contact/radio.svg) center center/50% no-repeat; }
  @media (max-width: 500px) {
    .input {
      display: block; }
      .input__head {
        margin-bottom: 1em; }
      .mw_wp_form_confirm .input__body {
        padding-left: 4.4rem; } }

.contactInfo {
  text-align: center;
  font-family: 'M PLUS Rounded 1c', sans-serif;
  transform: rotateZ(0.03deg);
  font-weight: 400;
  font-size: 1.8rem;
  margin-bottom: 2rem; }
  .contactInfo a {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 400;
    font-size: 1.8rem;
    color: inherit;
    text-decoration: underline; }
  @media (max-width: 500px) {
    .contactInfo {
      font-size: 1.6rem; } }

.privacyBtn {
  margin-bottom: 4.5rem;
  text-align: center; }
  .privacyBtn .mwform-checkbox-field-text {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1.6rem;
    width: 50rem;
    height: 10rem;
    margin: auto;
    border-radius: 1rem;
    background: #FFFFFF;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 800;
    font-size: 2rem;
    color: #183E59;
    cursor: pointer; }
    .privacyBtn .mwform-checkbox-field-text::before {
      content: "";
      display: block;
      width: 3.6rem;
      aspect-ratio: 1/1;
      border: 1px solid #183E59;
      border-radius: 0.4rem; }
  .privacyBtn input[type="checkbox"]:checked + .mwform-checkbox-field-text::before {
    background: url(../img/contact/check.svg) center center/1.5rem no-repeat; }
  @media (max-width: 500px) {
    .privacyBtn .mwform-checkbox-field-text {
      width: 44rem; } }

.entryBtn input {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1.6rem;
  width: 50rem;
  height: 10rem;
  margin: auto;
  border-radius: 1rem;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  font-family: 'M PLUS Rounded 1c', sans-serif;
  transform: rotateZ(0.03deg);
  font-weight: 800;
  font-size: 2rem;
  color: #FFFFFF;
  margin-bottom: 3.5rem;
  cursor: pointer; }
.entryBtn__back {
  background: #9A9A9A; }
.entryBtn__submit {
  background: #FD6D2C; }
@media (max-width: 500px) {
  .entryBtn input {
    width: 44rem; } }

.mw_wp_form_confirm .-caution,
.mw_wp_form_confirm .contactInfo,
.mw_wp_form_confirm .privacyBtn {
  display: none; }

.privacy {
  padding-bottom: 10rem; }
  @media (max-width: 500px) {
    .privacy {
      padding-bottom: 6rem; } }

.pri-block {
  width: 90rem;
  margin: auto auto 4rem; }
  .pri-block__h2 {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 500;
    font-size: 1.8rem;
    line-height: 2.4rem;
    margin-bottom: 2rem; }
  .pri-block__p, .pri-block__li {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 400;
    font-size: 1.4rem;
    line-height: 2.6rem; }
  .pri-block__p, .pri-block__ol {
    margin-bottom: 2.6rem; }
  .pri-block__ol {
    list-style-type: decimal;
    padding-left: 1.5em; }
    .pri-block__ol .pri-block__ol {
      margin-top: 1.6rem; }
  @media (max-width: 768px) {
    .pri-block {
      width: 88rem; } }
  @media (max-width: 500px) {
    .pri-block {
      width: 44rem; } }

.m-footer__contact {
  padding: 8rem 0 12rem;
  background: url(../img/common/contact_bg.webp) center center/cover no-repeat, #FFFFFF; }
.m-footer__menu {
  padding: 8rem 0;
  background: #FD6D2C; }
@media (max-width: 500px) {
  .m-footer__menu {
    padding: 4rem 0; } }

.headBnrsp {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 100;
  transition: all 0.3s ease; }
  .headBnrsp.hide {
    opacity: 0; }
  @media (max-width: 768px) {
    .headBnrsp {
      display: block; }
      .headBnrsp .instaArea img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        image-rendering: -webkit-optimize-contrast;
        vertical-align: bottom; }
      .headBnrsp .wrapper {
        display: flex; }
      .headBnrsp .headBnr__link {
        margin-bottom: 0; } }

.ft-contact {
  width: 120rem;
  margin: auto;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto; }
  .ft-contact::before {
    grid-area: 1/1/3/2;
    content: "";
    margin: auto 0 0 auto;
    width: 29.3rem;
    height: 28.8rem;
    background: url(../img/common/contact_icon.webp) center bottom/contain no-repeat; }
  .ft-contact__head {
    grid-area: 1/1/2/2; }
  .ft-contact__body {
    grid-area: 2/1/3/2;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 500;
    text-align: center;
    margin-bottom: 6rem; }
  .ft-contact__link {
    grid-area: 3/1/4/2; }
  @media (max-width: 768px) {
    .ft-contact {
      width: 88rem; } }
  @media (max-width: 500px) {
    .ft-contact {
      width: 44rem; }
      .ft-contact::before {
        display: none; }
      .ft-contact__body {
        text-align: left;
        font-size: 2rem;
        line-height: 2; } }

.contactBnrs {
  display: flex;
  justify-content: center;
  gap: 3rem; }
  .contactBnrs__li {
    width: 38rem; }
  @media (max-width: 768px) {
    .contactBnrs {
      gap: 2rem; }
      .contactBnrs__li {
        width: 28rem; } }
  @media (max-width: 500px) {
    .contactBnrs {
      flex-direction: column; }
      .contactBnrs__li {
        width: 44rem; } }

.contactBnr {
  border-radius: 1rem;
  padding: 3.5rem 0;
  background: var(--ft_contact_color);
  text-align: center;
  color: #FFFFFF; }
  .contactBnr.-blue {
    --ft_contact_color: #183E59; }
  .contactBnr.-orange {
    --ft_contact_color: #FD6D2C; }
  .contactBnr.-green {
    --ft_contact_color: #5DC561; }
  .contactBnr__icon {
    display: block;
    width: 5.5rem;
    margin: auto auto 1.5rem; }
    .contactBnr__icon img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
      image-rendering: -webkit-optimize-contrast; }
  .contactBnr__p {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-size: 1.8rem;
    font-weight: 500;
    margin-bottom: 1.5rem; }
  .contactBnr__link {
    height: 6rem;
    color: #FFFFFF;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 800;
    transition: all 0.3s ease; }
    .contactBnr__link .-num {
      font-family: "Poppins", sans-serif;
      font-size: 2.7rem;
      font-weight: 700; }
    .contactBnr__link .-add {
      font-family: 'M PLUS Rounded 1c', sans-serif;
      transform: rotateZ(0.03deg);
      font-size: 1.4rem;
      font-weight: 500; }
  .contactBnr__linkBtn {
    position: relative;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    line-height: 1;
    background: #FFFFFF;
    color: #000000;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 500;
    width: 26.6rem;
    height: 6rem;
    padding: 0 2.8rem;
    border-radius: 3rem;
    transition: all 0.3s ease; }
    .contactBnr__linkBtn::after {
      content: "";
      position: absolute;
      top: 0;
      bottom: 0;
      right: 2rem;
      margin: auto;
      display: block;
      width: 0.8rem;
      height: 0.8rem;
      border: solid var(--ft_contact_color);
      border-width: 2px 2px 0 0;
      transform: rotate(45deg);
      transition: all 0.3s ease; }
    .contactBnr__linkBtn:hover {
      background: var(--ft_contact_color);
      color: #FFFFFF; }
      .contactBnr__linkBtn:hover::after {
        border-color: #FFFFFF; }
  @media (max-width: 500px) {
    .contactBnr__p {
      font-size: 2rem;
      margin-bottom: 2rem; }
    .contactBnr__link .-num {
      font-size: 4rem; }
    .contactBnr__link .-add {
      font-size: 2rem; }
    .contactBnr__linkBtn {
      width: 38rem;
      font-size: 2rem; } }

.footerNavi {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1em 2em;
  margin-bottom: 4rem; }
  .footerNavi__link {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: rotateZ(0.03deg);
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
    color: #FFFFFF;
    transition: all 0.3s ease; }
    .footerNavi__link:hover {
      color: #183E59; }
  @media (max-width: 500px) {
    .footerNavi {
      width: 44rem;
      margin-left: auto;
      margin-right: auto;
      flex-direction: column;
      align-items: flex-start; } }

.bannerArea {
  margin-top: 4rem;
  text-align: center; }

.copyright {
  font-family: "Poppins", sans-serif;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  text-align: center;
  color: #FFFFFF; }

html,
body {
  background: url(../img/common/bg.webp) center center/98px, #fff; }

@media screen and (min-width: 768px) {
  html {
    font-size: 0.685vw; } }
@media (min-width: 1600px) {
  html {
    font-size: 62.5%; } }
@media (max-width: 768px) {
  html {
    font-size: 1vw; } }
@media (max-width: 500px) {
  html {
    font-size: 2vw; } }
/*BHW追加*/
.comingsoonBox {
    width: 100%;
    height: 100%;
	min-height: 150px;
	display: flex;
    justify-content: center;
    align-items: center;
	font-family: "Poppins", sans-serif;
    font-weight: 800;
	color: #999;
}
.required::after {
                content: "*";
                color: #ee0101;
                margin-left: 2px;
            }