@charset "UTF-8";
/*=================================================================================

　変数定義

=================================================================================*/
/*—————————————————————————————————————————————————————
　横幅／高さ／余白設定
—————————————————————————————————————————————————————*/
:root {
  /* 横幅【PC幅のみ】 */
  --width-contents_max_s: 900px;
  --width-contents_max_m: 1000px;
  --width-contents_max_l: 1180px;
  --width-modal_max: 900px;
  /* 2カラム */
  --width-main-contents_max: 735px;
  --width-side-contents_max: 300px;
  /* 高さ【ヘッダのみ】 */
  --height-header-upper: 143px;
  --height-header-lower: 64px;
  --height-header: 80px;
  --height-header-s: 60px;
}

/*—————————————————————————————————————————————————————
　カラー設定
—————————————————————————————————————————————————————*/
:root {
  --color-key:	#4182D5;
  --color-key_l:	#5A99E8;
  --color-body_bg:	#EFF4F8;
  --color-head_bg:	#F2F5F9;
  --color-head_bg_l:	rgba(206, 232, 255, 0.7019607843);
  /* テキスト */
  --color-txt:	#333;
  --color-txt_heading:	#121212;
  --color-txt_l:	#FFFFFF;
  /* リンク */
  --color-link:	#4182D5;
  /* 画像のMIX */
  --color-img_mix:	#91C2EA;
  /* 罫線 */
  --color-border:	#4182D5;
  --color-border_l:	#7CAED9;
  /* ボタンやアラートなどエレメントカラー */
  --color-default:	#FFFFFF;
  --color-primary:	#4182D5;
  --color-disable:	#888888;
  /* テーブル */
  --color-table_border:	#1D71C6;
  --color-table_border_tr:	#CCCCCC;
  --color-table_thead_bg:	#1D71C6;
  --color-table_txt:	#333333;
  /* オーバーレイ（モーダルやドロワーの背景） */
  --color-overlay-bg:	rgba(0, 0, 0, 0.8);
  --color-overlay-bg_l:	rgba(0, 0, 0, 0.4);
  /* モーダルウィンドウのコンテンツ背景 */
  --color-modal-bg:	#FFFFFF;
  /* その他ベーシックな色 */
  --color_black:	#000000;
  --color_white:	#FFFFFF;
  --color_darkgray:	#333333;
  --color_gray:	#969696;
  --color_red:	#EB2D2D;
  --color_blue:	#0059ff;
  /* グラデーション */
  --color-main-visual:	linear-gradient(135deg, #8AC7F0 0%, #3A9BDD 38%, #0062B0 100%);
  --color-gradation-header:	linear-gradient(90deg, #1785D0 0%, #1786D0 9%, #1786D0 20%, #1889D0 31%, #198DCF 41%, #1B99CB 51%, #1EA3C9 61%, #21B5C4 72%, #23BEC2 83%, #24C1C1 92%, #24C1C1 100%);
  --color-gradation-btn:	linear-gradient(136deg, #388FD5 0%, #0062B0 47%, #002E80 100%);
  --color-gradation-btn_l:	linear-gradient(136deg, #38BFF7 0%, #1D98DC 47%, #087BCA 100%);
  --color-gradation-btn_s:	linear-gradient(146deg, #91C2EA 0%, #4189D3 47%, #0062B0 100%);
}

@font-face {
  font-family: "Noto Sans Jp";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/NotoSansJP-Regular.ttf") format("truetype");
}
@font-face {
  font-family: "Noto Sans Jp";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/NotoSansJP-Medium.ttf") format("truetype");
}
@font-face {
  font-family: "Noto Sans Jp";
  font-style: normal;
  font-weight: 600;
  src: url("../fonts/NotoSansJP-SemiBold.ttf") format("truetype");
}
@font-face {
  font-family: "Noto Sans Jp";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/NotoSansJP-Bold.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/Roboto-Regular.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/Roboto-Medium.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/Roboto-SemiBold.ttf") format("truetype");
}
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/Roboto-Bold.ttf") format("truetype");
}
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/Montserrat-Regular.ttf") format("truetype");
}
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/Montserrat-Medium.ttf") format("truetype");
}
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/Montserrat-SemiBold.ttf") format("truetype");
}
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/Montserrat-Bold.ttf") format("truetype");
}
.p-editorContents {
  margin-top: clamp(1rem, 0.7572815534rem + 1.0355987055vw, 2rem);
}
.p-editorContents a {
  color: var(--color-key_l);
}
.p-editorContents .wp-block-heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(0.75rem, 0.567961165rem + 0.7766990291vw, 1.5rem);
}
.p-editorContents .wp-block-heading::before {
  content: "";
  display: block;
  width: 0.375rem;
  height: 2.4375rem;
  background-color: var(--color-key);
  border-radius: 1.1875rem;
}
.p-editorContents h2.wp-block-heading {
  font-size: 1.5rem;
  font-weight: 700;
}
.p-editorContents h3.wp-block-heading {
  font-size: 1.25rem;
  font-weight: 700;
  position: relative;
}
.p-editorContents * + * {
  margin-top: 16px;
}
.p-editorContents * + h2.wp-block-heading {
  margin-top: 96px;
}
.p-editorContents * + h3.wp-block-heading {
  margin-top: 56px;
}
.p-editorContents * + p {
  margin-top: 16px;
}
.p-editorContents * + .wp-block-image {
  margin-top: 32px;
}
.p-editorContents ul,
.p-editorContents ol {
  padding-left: 32px;
}
.p-editorContents * + ul,
.p-editorContents * + ol {
  margin-top: 32px;
}
.p-editorContents ul {
  list-style: disc;
}
.p-editorContents ol {
  list-style: trad-chinese-informal;
}
.p-editorContents li {
  position: relative;
}
.p-editorContents * + li {
  margin-top: 16px;
}
.p-editorContents * + .wp-block-table {
  margin-top: 16px;
}
.p-editorContents figcaption {
  font-size: 0.75rem;
  color: #787878;
  margin-top: 16px;
}
.p-editorContents .wp-block-table table th {
  border: unset;
  padding: 24px 0;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  width: 21%;
}
.p-editorContents .wp-block-table table td {
  border: unset;
  padding: 24px 0;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  width: 79%;
}

.c-pagePostTitle {
  font-size: 2rem;
  font-weight: 700;
}

.wp-block-gallery {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
}
@media screen and (max-width: 600px) {
  .wp-block-gallery {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

.wp-block-gallery {
  width: 100% !important;
}
.wp-block-gallery .wp-block-image {
  aspect-ratio: 1/1;
  width: 100% !important;
}

.wp-block-image img {
  margin: 20px auto;
  max-width: 100%;
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  height: 300px;
}

.l-section {
  position: relative;
  padding: clamp(2.5rem, 1.286407767rem + 5.1779935275vw, 7.5rem) 0;
}

@media screen and (max-width: 1024px) {
  .l-section__top {
    margin-top: var(--height-header-s);
  }
}

.l-inner {
  margin: 0 auto;
  width: 90%;
  max-width: var(--width-contents_max_m);
}

.l-contents {
  margin: 0 auto;
  width: 100%;
  max-width: var(--width-contents_max_s);
}

.l-outer {
  background-image: url(../img/common/webp/information_bg.webp);
  background-position: bottom right;
  background-repeat: no-repeat;
  padding-bottom: clamp(6.25rem, 4.4296116505rem + 7.7669902913vw, 13.75rem);
  background-size: 50%;
}
@media screen and (min-width: 1920px) {
  .l-outer {
    background-size: auto;
  }
}
.l-outer__side {
  width: 28%;
  max-width: var(--width-side-contents_max);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(0.75rem, 0.3252427184rem + 1.8122977346vw, 2.5rem);
}
@media screen and (max-width: 768px) {
  .l-outer__side {
    max-width: 100%;
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
}
.l-outer__main {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  max-width: var(--width-main-contents_max);
}
@media screen and (max-width: 768px) {
  .l-outer__main {
    width: 100%;
  }
}

.l-outer-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: clamp(2rem, 1.4993932039rem + 2.1359223301vw, 4.0625rem);
  margin: clamp(2.5rem, 2.1207524272rem + 1.6181229773vw, 4.0625rem) auto 0;
  width: 90%;
  max-width: var(--width-contents_max_m);
}
@media screen and (max-width: 768px) {
  .l-outer-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.l-outer__side-banner img {
  width: 100%;
}

.l-outer__side-archive {
  margin-top: clamp(1rem, 0.9089805825rem + 0.3883495146vw, 1.375rem);
}
@media screen and (max-width: 600px) {
  .l-outer__side-archive {
    grid-column: 1/3;
    margin-top: 0;
  }
}

.l-outer__side-archive-title {
  height: 3.625rem;
  background-image: url(../img/common/side_archive.svg);
  background-size: cover;
  background-repeat: no-repeat;
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  line-height: 1.4375;
  letter-spacing: 0.05em;
  color: var(--color_white);
  font-weight: 500;
  padding: 1.0625rem clamp(0.5rem, -0.5rem + 2.0833333333vw, 2rem);
  text-align: center;
}

.l-outer__side-archive-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.75rem;
}

.l-outer__side-archive-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.8125rem;
  border: 1px solid #D9D9D9;
  padding: 0.625rem;
  background-color: var(--color_white);
}
@media screen and (max-width: 991px) {
  .l-outer__side-archive-item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media screen and (max-width: 768px) {
  .l-outer__side-archive-item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

.l-outer__side-archive-item-img {
  width: 5.4375rem;
  height: 5.4375rem;
  background-color: #D9D9D9;
}
.l-outer__side-archive-item-img img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.l-outer__side-archive-item-title {
  font-size: 0.8125rem;
  line-height: 2;
  letter-spacing: 0.05em;
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  text-decoration: underline;
}

body:has(#wpadminbar) .l-header {
  top: 2rem;
}

.l-header {
  width: 100%;
  position: fixed;
  top: 0;
  z-index: 20;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  background-color: var(--color_white);
  height: var(--height-header);
}
@media screen and (max-width: 1024px) {
  .l-header {
    height: var(--height-header-s);
  }
}

.l-header__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  height: 100%;
}
@media screen and (max-width: 1024px) {
  .l-header__top {
    display: none;
  }
}

.l-header__under {
  background-color: #EBF4FF;
  padding: 12px 0;
  padding-right: clamp(1rem, 0.7572815534rem + 1.0355987055vw, 2rem);
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  z-index: -1;
  position: relative;
  /* 必要に応じて調整 */
}
@media screen and (max-width: 1024px) {
  .l-header__under {
    display: none;
  }
}

.l-header__under.hide {
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
}

.l-header__logo {
  padding-left: clamp(1rem, -0.4259708738rem + 6.0841423948vw, 6.875rem);
}

.l-header__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  gap: clamp(1rem, 0.7572815534rem + 1.0355987055vw, 2rem);
}
@media screen and (max-width: 1024px) {
  .l-header__nav {
    display: none !important;
  }
}

.l-header__nav-list-tel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.5rem;
  white-space: nowrap;
  padding-right: clamp(1rem, 0.7572815534rem + 1.0355987055vw, 2rem);
}
@media screen and (max-width: 1024px) {
  .l-header__nav-list-tel {
    display: none !important;
  }
}

.l-header__nav-list-tel-text {
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.1666666667;
  letter-spacing: 0.1em;
}
.l-header__nav-list-tel-text span {
  font-size: 0.625rem;
}

.l-header__nav-list-tel-tel {
  color: var(--color-key_l);
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: 0.1em;
}
.l-header__nav-list-tel-tel a {
  font-size: 2.25rem;
  line-height: 0.8333333333;
  font-weight: 800;
  letter-spacing: 0.05em;
}

.l-header__nav-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: right;
      -ms-flex-pack: right;
          justify-content: right;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem clamp(1rem, 0.7572815534rem + 1.0355987055vw, 2rem);
  width: 100%;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  height: 100%;
}
@media screen and (max-width: 1024px) {
  .l-header__nav-list {
    display: none;
  }
}

.l-header__nav-item {
  position: relative;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.l-header__nav-item .sub-menu {
  position: absolute;
  top: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 20;
  display: none !important;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  background: white;
  -webkit-box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.2);
  padding: 0.25rem 1rem;
}
.l-header__nav-item .sub-menu > .menu-item a {
  display: inline-block;
  padding: 0.5em 0;
  width: 100%;
  height: 100%;
}
.l-header__nav-item .sub-menu li {
  margin-left: 0;
  text-align: center;
}
.l-header__nav-item .sub-menu > .menu-item:not(:last-child) {
  border-bottom: 1px solid #eee;
}
.l-header__nav-item:hover .l-header__nav-child-list {
  opacity: 1;
  visibility: visible;
}
.l-header__nav-item:hover .sub-menu {
  display: block !important;
}
.l-header__nav-item.menu-item-has-children::after {
  content: url(../img/icon/icon_arrow-down.svg);
  position: absolute;
  bottom: 0.5rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

.l-header__nav-child-list {
  position: absolute;
  top: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  background-color: var(--color_white);
  padding: 1rem;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.l-header__nav-child-item {
  background-color: var(--color_white);
}

.l-header__nav-item-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-family: "Noto Sans JP";
  font-size: 0.9375rem;
  line-height: 1.2;
  letter-spacing: 0.05em;
  font-weight: 500;
}
.l-header__nav-item-link.is_link {
  cursor: pointer;
}
.l-header__nav-item-link.is_btn {
  width: 12.5rem;
  aspect-ratio: 200/39;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #FABE00;
  border-radius: 1.6875rem;
  font-weight: 600;
}

.l-header__contact {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.4375rem;
  padding: 0 clamp(1rem, 0.817961165rem + 0.7766990291vw, 1.75rem);
  background-color: #998871;
  color: var(--color_white);
  height: 100%;
  font-size: clamp(0.75rem, 0.7196601942rem + 0.1294498382vw, 0.875rem);
  letter-spacing: 0.1em;
  font-weight: 600;
  white-space: nowrap;
  margin-left: clamp(1rem, 0.6359223301rem + 1.5533980583vw, 2.5rem);
}
.l-header__contact::before {
  content: url(../img/icon/icon_send.svg);
}

.l-header__navSp {
  position: fixed;
  top: var(--height-header);
  left: 0;
  display: none;
  width: 100%;
  height: 100%;
  overflow-y: scroll;
  z-index: 1000;
  background-color: #0B56B3;
}
.l-header__navSp .p-header__logo {
  padding: 21px 10px;
}
@media screen and (max-width: 1024px) {
  body:has(#wpadminbar) .l-header .l-header__navSp {
    top: calc(2rem + var(--height-header));
  }
  .l-header__navSp.is_active {
    display: block;
  }
}

.l-header__navSp-inner {
  width: 90%;
  max-width: 30rem;
  margin: 0 1rem 0 auto;
  padding: 0 0 5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 600px) {
  .l-header__navSp-inner {
    margin: 0 auto;
  }
}

.l-header__navSp-list {
  padding: 2.1875rem 0;
  width: 100%;
  margin: 0 auto;
}

.l-header__navSp-item {
  position: relative;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1294117647);
}
.l-header__navSp-item:nth-child(6) {
  border-bottom: none;
}
.l-header__navSp-item:last-child {
  border-bottom: none;
}

.l-header__navSp-item__under_text {
  color: #FFF;
  text-align: center;
  font-size: 0.75rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1.125rem;
  /* 150% */
  letter-spacing: 0.0375rem;
  margin-top: 4.6875rem;
}

.l-header__navSp-child-list {
  width: 100%;
  margin: 0 auto;
  padding-bottom: 0.875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
}

.l-header__navSp-child-item .l-header__navSp-item-link {
  padding: 0 1.0625rem;
}

.l-header__navSp-item-link {
  padding: 0.875rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  line-height: 1.5;
  letter-spacing: 0.03em;
  font-family: "Noto Sans JP";
  color: #fff;
  gap: 1.5rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.l-header__navSp-item-link img {
  width: 0.25rem;
  height: 0.5625rem;
}
.l-header__navSp-item-link.is_btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #FABE00;
  color: #121212;
  border-radius: 1.6875rem;
  font-weight: 600;
  margin: 1rem auto 0;
}

.l-header__navSp-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.5rem;
}

.l-header__navSp-box-text {
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.1666666667;
  letter-spacing: 0.1em;
  color: #fff;
}
.l-header__navSp-box-text span {
  font-size: 0.625rem;
}

.l-header__navSp-box-tel {
  color: #fff;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: 0.1em;
}
.l-header__navSp-box-tel a {
  font-size: 2.25rem;
  line-height: 0.8333333333;
  font-weight: 800;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 1024px) {
  body.is_fixed {
    overflow: hidden;
  }
}
.l-footer__floating {
  position: fixed;
  bottom: 0.625rem;
  right: 0.625rem;
  z-index: 10;
  opacity: 0;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  background: transparent var(--color-gradation-btn) 0% 0% no-repeat padding-box;
}
.l-footer__floating.is_active {
  opacity: 1;
}

.l-footer__floating--inner {
  display: block;
  width: clamp(2.5rem, 2.1966019417rem + 1.2944983819vw, 3.75rem);
  aspect-ratio: 1/1;
  cursor: pointer;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  background-image: url(../img/common/icon_arrow.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 40%;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
}
.l-footer__floating--inner:hover {
  opacity: 0.7;
}

.l-footer {
  background-color: #998871;
  padding: clamp(2rem, 1.3932038835rem + 2.5889967638vw, 4.5rem) 0 0;
  color: var(--color_white);
}

.l-footer__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1rem;
}
@media screen and (max-width: 768px) {
  .l-footer__box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media screen and (max-width: 600px) {
  .l-footer__box {
    gap: 1.6875rem;
  }
}

.l-footer__left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.6875rem;
}
@media screen and (max-width: 768px) {
  .l-footer__left {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.l-footer__left img {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.l-footer__sns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
}

.l-footer__left--text {
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  letter-spacing: 0.15em;
  font-weight: 600;
  font-family: "Noto Sans JP";
}
.l-footer__left--text span {
  display: inline-block;
  margin-top: 0.5rem;
  font-size: clamp(0.75rem, 0.7196601942rem + 0.1294498382vw, 0.875rem);
  letter-spacing: 0.05em;
  font-weight: 500;
  font-family: "Roboto";
}

.l-footer__right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  gap: 2.8125rem;
}
@media screen and (max-width: 768px) {
  .l-footer__right {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.l-footer__right-list {
  display: grid;
  grid-template-columns: repeat(3, auto);
  gap: clamp(1rem, 0.6359223301rem + 1.5533980583vw, 2.5rem) clamp(1.5rem, 0.8932038835rem + 2.5889967638vw, 4rem);
}
@media screen and (max-width: 600px) {
  .l-footer__right-list {
    grid-template-columns: 1fr;
  }
}

.l-footer__right-item {
  font-size: clamp(0.8125rem, 0.7821601942rem + 0.1294498382vw, 0.9375rem);
  letter-spacing: 0.1em;
  font-weight: 500;
  font-family: "Noto Sans JP";
}

.l-footer__right-child-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
  margin-top: 0.625rem;
}

.l-footer__right-child-item {
  font-size: clamp(0.75rem, 0.7196601942rem + 0.1294498382vw, 0.875rem);
  letter-spacing: 0.1em;
  font-weight: 400;
}

.l-footer__right-instagram {
  width: 2rem;
  height: 2rem;
  background-image: url(../img/common/webp/icon_instagram.webp);
  background-size: contain;
  background-repeat: no-repeat;
}

.l-footer__contact {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  padding: 0.5rem;
  background-color: var(--color_white);
  color: #7C6C57;
  height: 100%;
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  letter-spacing: 0.1em;
  font-weight: 500;
  white-space: nowrap;
  margin-left: auto;
  width: 13.5625rem;
  aspect-ratio: 217/51;
}
.l-footer__contact::before {
  content: "";
  background-image: url(../img/icon/icon_send-br.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 1rem;
  height: 0.8125rem;
}
@media screen and (max-width: 600px) {
  .l-footer__contact {
    margin: 0 auto;
  }
}

.l-footer__bottom {
  background-color: #7C6C57;
  margin-top: clamp(3rem, 2.6207524272rem + 1.6181229773vw, 4.5625rem);
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  text-align: center;
  padding: 1rem 0;
  font-family: "Noto Sans JP";
}

.c-single {
  max-width: var(--width-contents_max_s) !important;
  font-family: "Noto Sans JP";
}

.c-single__top {
  font-size: clamp(0.75rem, 0.7196601942rem + 0.1294498382vw, 0.875rem);
  line-height: 1.2142857143;
  letter-spacing: 0.05em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.8125rem;
}

.c-single__title {
  margin-top: clamp(1rem, 0.5145631068rem + 2.071197411vw, 3rem);
  padding-bottom: clamp(1rem, 0.7572815534rem + 1.0355987055vw, 2rem);
  font-size: clamp(1.125rem, 0.8519417476rem + 1.1650485437vw, 2.25rem);
  line-height: 1;
  letter-spacing: 0.1em;
  border-bottom: 1px solid #D9D9D9;
}

.post-navigation {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0.5rem;
  margin-top: clamp(2.5rem, 1.286407767rem + 5.1779935275vw, 7.5rem);
}
@media screen and (max-width: 600px) {
  .post-navigation {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: distribute;
        justify-content: space-around;
  }
}
.post-navigation > div {
  width: 12.5rem;
  max-width: 100%;
  text-align: center;
}
.post-navigation > div a {
  padding: 0.625rem;
  display: block;
}
@media screen and (max-width: 600px) {
  .post-navigation .previous-post {
    width: unset;
  }
}
.post-navigation .previous-post a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  text-decoration: underline;
}
.post-navigation .previous-post a::before {
  content: "";
  width: 0.4375rem;
  height: 0.625rem;
  background-image: url(../img/common/page-prev.svg);
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (max-width: 600px) {
  .post-navigation .toArchive {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
.post-navigation .toArchive a {
  color: var(--color-key);
  border: 1px solid var(--color-key);
  width: 12.5rem;
  max-width: 100%;
  text-align: center;
  padding: 0.625rem;
  display: block;
}
@media screen and (max-width: 600px) {
  .post-navigation .next-post {
    width: unset;
  }
}
.post-navigation .next-post a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  text-decoration: underline;
}
.post-navigation .next-post a::after {
  content: "";
  width: 0.4375rem;
  height: 0.625rem;
  background-image: url(../img/common/page-next.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.c-archive__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1rem, 0.8634708738rem + 0.5825242718vw, 1.5625rem);
}
@media screen and (max-width: 600px) {
  .c-archive__list {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
}

.c-archive__item time {
  display: block;
  margin-top: 1rem;
  color: #828282;
  font-size: clamp(0.75rem, 0.7196601942rem + 0.1294498382vw, 0.875rem);
  line-height: 1.4285714286;
  letter-spacing: 0.05em;
  font-weight: 500;
  font-family: "Montserrat";
}
@media screen and (max-width: 600px) {
  .c-archive__item time {
    margin-top: 0.5rem;
  }
}
.c-archive__item p {
  margin-top: 0.5rem;
  font-size: clamp(0.8125rem, 0.7821601942rem + 0.1294498382vw, 0.9375rem);
  line-height: 1.3333333333;
  letter-spacing: 0.1em;
  font-weight: 500;
}
@media screen and (max-width: 600px) {
  .c-archive__item p {
    margin-top: 0.25rem;
  }
}

.c-archive__item-img {
  aspect-ratio: 317/207;
}
.c-archive__item-img img {
  width: 100%;
  aspect-ratio: 317/207;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: bottom;
     object-position: bottom;
}

.c-btn {
  width: 100%;
  max-width: 13.5625rem;
  aspect-ratio: 217/51;
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  line-height: 2.625;
  font-weight: 500;
  letter-spacing: 0.1em;
  color: var(--color_white);
  background-color: #7E8BA0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
}
.c-btn--inversion {
  border: 1px solid var(--color-txt);
  background-color: var(--color_white);
  color: var(--color-txt);
}
.c-btn--inversion::after {
  background-image: url(../img/common/icon_btn-bk.svg);
}

.c-btn--text {
  font-size: clamp(1rem, 0.9696601942rem + 0.1294498382vw, 1.125rem);
  font-weight: 600;
  letter-spacing: 0.05em;
  color: #7E8BA0;
  font-family: "Montserrat";
  text-decoration: underline;
  text-decoration-color: #7E8BA0;
  text-underline-offset: 8px;
  display: inline-block;
}

.c-btn--facebook {
  width: 1.375rem;
  height: 1.375rem;
  background-image: url(../img/icon/icon_facebook.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.c-btn--instagram {
  width: 1.375rem;
  height: 1.375rem;
  background-image: url(../img/icon/icon_instagram.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.c-heading {
  font-size: clamp(1.25rem, 1.0224514563rem + 0.9708737864vw, 2.1875rem);
  line-height: 1;
  letter-spacing: 0.1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(1rem, 0.9089805825rem + 0.3883495146vw, 1.375rem);
  margin-bottom: clamp(1.5rem, 1.1359223301rem + 1.5533980583vw, 3rem);
}
.c-heading::before {
  content: "";
  width: clamp(1.25rem, 0.9617718447rem + 1.2297734628vw, 2.4375rem);
  height: 0.375rem;
  border-radius: 1.1875rem;
  background-color: #4182D5;
}

.c-heading--rental {
  font-size: clamp(1.25rem, 1.0224514563rem + 0.9708737864vw, 2.1875rem);
  line-height: 1;
  letter-spacing: 0.1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(1rem, 0.9089805825rem + 0.3883495146vw, 1.375rem);
  margin-bottom: clamp(2.5rem, 1.8932038835rem + 2.5889967638vw, 5rem);
}
.c-heading--rental::before {
  content: "";
  width: clamp(1.25rem, 0.9617718447rem + 1.2297734628vw, 2.4375rem);
  height: 0.375rem;
  border-radius: 1.1875rem;
  background-color: #4182D5;
}

.c-title {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.25rem;
}
.c-title--white .c-title__text--en, .c-title--white .c-title__text--ja {
  color: var(--color_white);
}

.c-title__text {
  letter-spacing: 0.1em;
}
.c-title__text--en {
  font-size: clamp(1.5rem, 1.3786407767rem + 0.5177993528vw, 2rem);
  font-weight: 500;
  font-family: "Montserrat";
  color: #2E2E2E;
  line-height: normal;
}
.c-title__text--ja {
  font-size: clamp(0.75rem, 0.7196601942rem + 0.1294498382vw, 0.875rem);
  font-weight: 600;
  color: #998871;
}

.c-main-visual {
  margin-top: var(--height-header);
  position: relative;
  max-height: 53.125rem;
  aspect-ratio: 1920/850;
  background-image: url(../img/top/webp/mv_bg.webp);
  background-position: bottom center;
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1024px) {
  .c-main-visual {
    margin-top: var(--height-header-s);
  }
}
@media screen and (max-width: 600px) {
  .c-main-visual {
    height: clamp(37.5rem, 16.6666666667rem + 88.8888888889vw, 50rem);
    aspect-ratio: unset;
    background-image: url(../img/top/webp/mv_bg_sp.webp);
  }
}

.c-main-visual__box {
  position: absolute;
  top: clamp(1.5rem, -0.2613636364rem + 4.696969697vw, 5.375rem);
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 90%;
  max-width: 25.5625rem;
  background-image: url(../img/top/webp/mv_catch_bg.webp);
  background-position: top center;
  background-size: contain;
  background-repeat: no-repeat;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.1875rem;
}
@media screen and (max-width: 600px) {
  .c-main-visual__box {
    background-size: 70%;
  }
}

.c-main-visual__catch {
  text-align: center;
  color: #333333;
  font-size: clamp(1.5rem, 1.2572815534rem + 1.0355987055vw, 2.5rem);
  font-weight: 700;
  line-height: 1.825;
  letter-spacing: 0.1em;
}
.c-main-visual__catch .catch-color {
  color: #7E8BA0;
  font-size: clamp(2rem, 1.7572815534rem + 1.0355987055vw, 3rem);
  line-height: 1.5208333333;
}
.c-main-visual__catch .catch-large {
  font-size: clamp(2rem, 1.7724514563rem + 0.9708737864vw, 2.9375rem);
  line-height: 1.5531914894;
}

.c-main-visual__text {
  text-align: center;
  color: #333333;
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  font-weight: 500;
  line-height: 2.5;
  letter-spacing: 0.1em;
  font-family: "Noto Sans JP";
}

.c-table tr {
  border-bottom: 1px solid var(--color-table_border_tr);
}
.c-table tr th, .c-table tr td {
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  line-height: 2.5;
  letter-spacing: 0.05em;
  padding: clamp(0.75rem, 0.6286407767rem + 0.5177993528vw, 1.25rem) 0;
}
.c-table tr th {
  width: 33%;
  font-weight: 500;
}

.c-table__link {
  color: #4B4B4B;
  text-decoration: underline;
}
.c-table__link::before {
  content: "";
  display: inline-block;
  width: 1.125rem;
  height: 1.375rem;
  background-image: url(../img/common/icon_map.svg);
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 0.5625rem;
  vertical-align: sub;
}

.c-form {
  font-family: "Noto Sans JP";
}
.c-form--en {
  word-break: keep-all;
}
.c-form--en .c-form__label--required::after {
  content: "Required";
  width: 4.375rem;
}

.c-form__text {
  margin: 0 auto;
  width: 100%;
  max-width: var(--width-contents_max_s);
  font-size: clamp(0.875rem, 0.8143203883rem + 0.2588996764vw, 1.125rem);
  line-height: 2.1111111111;
  letter-spacing: 0;
  margin-top: clamp(1.5rem, 0.9538834951rem + 2.3300970874vw, 3.75rem);
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .c-form__text {
    font-weight: 400;
  }
}

.c-form__link {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: var(--color_white);
  background-color: var(--color-key);
  padding: 0.375rem 0.75rem;
  border-radius: 0.375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
}
.c-form__link::after {
  content: "";
  width: clamp(1rem, 0.9393203883rem + 0.2588996764vw, 1.25rem);
  height: clamp(1rem, 0.9393203883rem + 0.2588996764vw, 1.25rem);
  -webkit-mask-image: url(../img/common/icon_link-wh.svg);
          mask-image: url(../img/common/icon_link-wh.svg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  background-color: var(--color_white);
}

.c-form__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(1rem, 0.6359223301rem + 1.5533980583vw, 2.5rem);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: var(--width-contents_max_s);
  width: 100%;
  margin: clamp(1.5rem, 0.7718446602rem + 3.1067961165vw, 4.5rem) auto 0;
}
.c-form__box input[type=submit],
.c-form__box input[type=button] {
  width: 100%;
  max-width: 26.875rem;
  background: transparent -webkit-gradient(linear, left top, right top, from(#388FD5), color-stop(29%, #0062B0), to(#002E80)) 0% 0% no-repeat padding-box;
  background: transparent linear-gradient(90deg, #388FD5 0%, #0062B0 29%, #002E80 100%) 0% 0% no-repeat padding-box;
  height: 3.5rem;
  border-radius: 0.125rem;
  font-family: "Noto Sans JP";
}
.c-form__box input[type=submit][name=submitBack],
.c-form__box input[type=button][name=submitBack] {
  background-color: var(--color-default);
  color: var(--color-txt);
}
.c-form__box input[type=button] {
  background: transparent 0% 0% no-repeat padding-box;
  border: 1px solid var(--color-key);
  color: var(--color-key);
}
.c-form__box--confirm .c-form__wrap {
  display: grid;
  grid-template-columns: 40% 60%;
  font-weight: 400;
}
@media screen and (max-width: 600px) {
  .c-form__box--confirm .c-form__wrap {
    grid-template-columns: 1fr;
  }
}

.c-form__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(0.5rem, 0.4393203883rem + 0.2588996764vw, 0.75rem);
  font-weight: 500;
}
.c-form__wrap--center {
  margin-top: clamp(1rem, 0.6359223301rem + 1.5533980583vw, 2.5rem);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-form__wrap .wpcf7-form-control.wpcf7-radio {
  display: grid;
  grid-template-columns: repeat(3, auto);
  gap: clamp(0.75rem, 0.6893203883rem + 0.2588996764vw, 1rem) clamp(0.75rem, 0.4466019417rem + 1.2944983819vw, 2rem);
}
@media screen and (max-width: 991px) {
  .c-form__wrap .wpcf7-form-control.wpcf7-radio {
    grid-template-columns: repeat(2, auto);
  }
}
@media screen and (max-width: 600px) {
  .c-form__wrap .wpcf7-form-control.wpcf7-radio {
    grid-template-columns: 1fr;
  }
}

.c-form__label {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  gap: 0.75rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 500;
}
.c-form__label--required {
  display: inline-block;
  margin-right: 0.4375rem;
}
.c-form__label--required::after {
  content: "必須";
  width: 2.5rem;
  height: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: var(--color_white);
  background-color: #DD1F1F;
  font-size: 0.75rem;
  font-weight: 600;
}
@media screen and (max-width: 600px) {
  .c-form__label--note {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
    gap: 0.375rem;
  }
}
.c-form__label--note span {
  font-weight: 400;
  color: var(--color-disable);
}

.c-form__btnWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: clamp(1rem, 0.7572815534rem + 1.0355987055vw, 2rem);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-form__btnWrap .wpcf7-spinner {
  display: none;
}

.mw_wp_form_confirm .c-form__privacy {
  display: none;
}

.c-form__text--center {
  text-align: center;
  margin-top: clamp(1rem, 0.7572815534rem + 1.0355987055vw, 2rem);
}

.c-form__privacyTextWrap {
  padding: clamp(1rem, 0.7572815534rem + 1.0355987055vw, 2rem);
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(1rem, 0.6359223301rem + 1.5533980583vw, 2.5rem);
  overflow: auto;
  max-height: clamp(9.375rem, 5.5825242718rem + 16.1812297735vw, 25rem);
  border: 1px solid var(--color-table_border_tr);
  border-radius: 0.3125rem;
}

.c-form__privacyText {
  font-size: clamp(1rem, 0.9696601942rem + 0.1294498382vw, 1.125rem);
  font-weight: 600;
  line-height: 2.375;
  letter-spacing: 0;
}

.c-form__privacyList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(1rem, 0.6359223301rem + 1.5533980583vw, 2.5rem);
}

.c-form__privacyListItem {
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  font-weight: 400;
  line-height: 2.25;
  letter-spacing: 0;
}

.c-form__wrap input.wpcf7-not-valid,
.c-form__wrap textarea.wpcf7-not-valid,
.c-form__wrap select.wpcf7-not-valid {
  background-color: #FBEBEB;
  border: 1px solid #EEBBBC;
}

.wpcf7-not-valid input[type=radio] + span::before,
.wpcf7-not-valid input[type=checkbox] + span::before {
  border: 2px solid #EEBBBC;
}

.wpcf7-not-valid-tip {
  margin-top: 0.25rem;
  color: #D74141;
  font-size: clamp(0.75rem, 0.7196601942rem + 0.1294498382vw, 0.875rem);
  font-weight: 400;
  line-height: 1.4285714286;
  letter-spacing: 0;
}

.wpcf7 form.invalid .wpcf7-response-output {
  text-align: center;
  border: 1px solid #EEBBBC;
  background-color: #FBEBEB;
  border-radius: 0.3125rem;
  color: #D74141;
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  font-weight: 600;
  line-height: 1.4444444444;
  letter-spacing: 0;
  padding: 0.625rem;
  font-weight: 400;
  margin: 0;
}

[data-class=wpcf7cf_group] .c-form__wrap {
  margin-top: clamp(1rem, 0.6359223301rem + 1.5533980583vw, 2.5rem);
}
[data-class=wpcf7cf_group] .c-form__wrap:first-child {
  margin-top: 0;
}

[data-id=form-corporation] .c-form__wrap {
  margin-top: clamp(1rem, 0.6359223301rem + 1.5533980583vw, 2.5rem) !important;
}

input.wpcf7-form-control.wpcf7-text.inquiry-details,
input.wpcf7-form-control.wpcf7-text.customer-type {
  position: absolute;
  top: 0;
  left: -50vw;
}

.page-template-page-contact .grecaptcha-badge,
.page-template-page-contact-en .grecaptcha-badge {
  display: block;
  bottom: clamp(4rem, 3.6966019417rem + 1.2944983819vw, 5.25rem) !important;
}

#autozip {
  display: none !important;
}

.c-hamburger__BtnWrap {
  display: none;
  position: relative;
  z-index: 9999;
}
@media screen and (max-width: 1024px) {
  .c-hamburger__BtnWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    background: transparent;
    border: none;
    padding-right: 1rem;
  }
}

.c-hamburger__Btn {
  width: 2.75rem;
  height: 1.375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
  cursor: pointer;
}
.c-hamburger__Btn span {
  background: #4182D5;
  width: 2.75rem;
  height: 0.125rem;
  display: block;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  -webkit-transform-origin: left center 0;
          transform-origin: left center 0;
  -webkit-transform: rotate(0);
          transform: rotate(0);
}
.is_open .c-hamburger__Btn span {
  background: #4182D5;
}
.is_scroll .c-hamburger__Btn span {
  background: #4182D5;
}
.is_lower .c-hamburger__Btn span {
  background: #4182D5;
}
.c-hamburger__Btn.is_active span:first-child {
  -webkit-transform: rotate(27deg);
          transform: rotate(27deg);
}
.c-hamburger__Btn.is_active span:nth-child(2) {
  opacity: 0;
}
.c-hamburger__Btn.is_active span:last-child {
  -webkit-transform: rotate(-27deg);
          transform: rotate(-27deg);
}

.c-news__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
}

.c-news__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  padding: 1rem 0;
  border-bottom: 1px solid #E1E1E1;
  position: relative;
}
.c-news__item::after {
  content: "";
  background-image: url(../img/icon/icon_arrow-circle.svg);
  background-repeat: no-repeat;
  background-size: contain;
  min-width: clamp(1.5rem, 1.2876213592rem + 0.9061488673vw, 2.375rem);
  aspect-ratio: 1/1;
}

.c-news__item-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.625rem;
}
.c-news__item-box time {
  color: #828282;
  font-size: clamp(0.75rem, 0.7196601942rem + 0.1294498382vw, 0.875rem);
  line-height: 1.4285714286;
  letter-spacing: 0.05em;
  font-weight: 500;
  font-family: "Montserrat";
}
.c-news__item-box p {
  font-size: clamp(0.8125rem, 0.7821601942rem + 0.1294498382vw, 0.9375rem);
  line-height: 1.3333333333;
  letter-spacing: 0.1em;
  font-weight: 500;
}

.c-banner {
  padding: clamp(2.5rem, 1.8173543689rem + 2.9126213592vw, 5.3125rem) 0;
}

.c-banner__img img {
  width: 100%;
}

.c-page-head {
  margin-top: var(--height-header);
  background-color: #998871;
  position: relative;
  height: 24.125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .c-page-head {
    height: 6.25rem;
    margin-top: var(--height-header-s);
  }
}

.c-page-head__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.c-page-head__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.c-page-head--inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
  max-width: var(--width-contents_max_l);
  margin: 0 auto;
  width: 90%;
  z-index: 2;
  height: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.c-pageTitle {
  font-size: clamp(1.5rem, 1.1359223301rem + 1.5533980583vw, 3rem);
  font-weight: 500;
  line-height: normal;
  letter-spacing: 0.05em;
  color: var(--color_white);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-items: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.6875rem;
  font-family: "Montserrat";
}
.c-pageTitle span {
  font-size: clamp(0.875rem, 0.7839805825rem + 0.3883495146vw, 1.25rem);
  font-weight: 400;
  letter-spacing: 0.1em;
  font-family: "Noto Sans JP";
}

.c-contact {
  background-color: #F9F5F0;
  padding: 4.75rem 0 4.9375rem;
}

.c-contact__text {
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  font-weight: 500;
  line-height: 2.375;
  letter-spacing: 0.1em;
  margin-top: clamp(1.5rem, 1.2572815534rem + 1.0355987055vw, 2.5rem);
}

.c-contact__link {
  padding: clamp(1rem, 0.6359223301rem + 1.5533980583vw, 2.5rem) clamp(1rem, 0.2263349515rem + 3.3009708738vw, 4.1875rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1rem;
  background-color: var(--color_white);
  border: 2px solid #7E8BA0;
  margin-top: clamp(1.5rem, 1.3938106796rem + 0.4530744337vw, 1.9375rem);
}
@media screen and (max-width: 600px) {
  .c-contact__link {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.c-contact__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
}
.c-contact__item-text {
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  font-weight: 400;
  line-height: 2.375;
  letter-spacing: 0.1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.375rem;
}
.c-contact__item-text::before {
  content: "";
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
}
.tel .c-contact__item-text::before {
  background-color: #7E8BA0;
}
.line .c-contact__item-text::before {
  background-color: #30C26C;
}

.c-contact__item-link {
  max-width: 23.25rem;
  width: 100%;
  aspect-ratio: 372/80;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.25rem;
  color: var(--color_white);
  border-radius: 2.5rem;
  margin-top: clamp(0.5rem, 0.3786407767rem + 0.5177993528vw, 1rem);
}
.tel .c-contact__item-link {
  background-color: #7E8BA0;
}
.tel .c-contact__item-link::before {
  content: "";
  width: clamp(1.875rem, 1.6626213592rem + 0.9061488673vw, 2.75rem);
  aspect-ratio: 1/1;
  background-image: url(../img/icon/icon_tel.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
.line .c-contact__item-link {
  background-color: #30C26C;
}

.c-contact__item-text-lower {
  margin-top: 0.25rem;
  font-size: clamp(0.75rem, 0.7196601942rem + 0.1294498382vw, 0.875rem);
  font-weight: 500;
  line-height: 2.7142857143;
  letter-spacing: 0.1em;
}
.c-contact__item-text-lower span {
  color: #7E8BA0;
}

.p-home__news-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1rem;
}
@media screen and (max-width: 768px) {
  .p-home__news-box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.p-home__news-left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3.3125rem;
}

.p-home__news-right {
  width: 100%;
  max-width: 47.375rem;
}
@media screen and (max-width: 768px) {
  .p-home__news-right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2rem;
  }
}

@media screen and (max-width: 768px) {
  .p-home__news-btn {
    margin: 0 auto;
  }
}

.p-home__about {
  padding: clamp(2.5rem, 0.8313106796rem + 7.1197411003vw, 9.375rem) 0 clamp(6.25rem, 3.9593446602rem + 9.7734627832vw, 15.6875rem);
  background-image: url(../img/top/webp/about_bg.webp);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.p-home__about::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 62%;
  max-width: 74.8125rem;
  aspect-ratio: 1197/111;
  background-image: url(../img/top/webp/about_text.webp);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
@media screen and (max-width: 600px) {
  .p-home__about::after {
    width: 100%;
  }
}

.p-home__about-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
  position: relative;
}
.p-home__about-wrap::before {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  max-width: clamp(18.75rem, 16.2773058252rem + 10.5501618123vw, 28.9375rem);
  aspect-ratio: 463/512;
  background-image: url(../img/top/webp/about01.webp);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
@media screen and (max-width: 600px) {
  .p-home__about-wrap::before {
    z-index: -1;
  }
}

.p-home__about-box {
  width: 43%;
  max-width: 26.75rem;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 600px) {
  .p-home__about-box {
    width: 100%;
    max-width: 100%;
  }
}

.p-home__about-txt {
  margin-top: clamp(1.5rem, 1.3786407767rem + 0.5177993528vw, 2rem);
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  font-weight: 500;
  line-height: 2.5;
  letter-spacing: 0.1em;
  color: #333333;
}

.p-home__about-btn {
  margin-top: clamp(2rem, 1.3932038835rem + 2.5889967638vw, 4.5rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 600px) {
  .p-home__about-btn {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.p-home__service {
  background-color: #7E8BA0;
  padding: clamp(2.5rem, 1.104368932rem + 5.9546925566vw, 8.25rem) 0;
}

.p-home__service-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: clamp(1rem, -4.375rem + 11.1979166667vw, 9.0625rem);
}
@media screen and (max-width: 600px) {
  .p-home__service-box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.p-home__service-left {
  width: 100%;
  min-width: clamp(18.75rem, 12.9166666667rem + 12.1527777778vw, 27.5rem);
}

.p-home__service-list {
  margin-top: clamp(1rem, 0.1504854369rem + 3.6245954693vw, 4.5rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.p-home__service-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1rem;
  color: var(--color_white);
  font-size: clamp(1rem, 0.9393203883rem + 0.2588996764vw, 1.25rem);
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
  padding: clamp(1rem, 0.8786407767rem + 0.5177993528vw, 1.5rem) 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  position: relative;
}
.p-home__service-link::after {
  content: "";
  background-image: url(../img/icon/icon_arrow-circle.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: clamp(1.5rem, 1.2876213592rem + 0.9061488673vw, 2.375rem);
  aspect-ratio: 1/1;
}

.p-home__service-right {
  margin-right: calc(50% - 50vw);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 600px) {
  .p-home__service-right {
    margin-right: 0;
  }
}

.p-home__service-img {
  -webkit-transition: opacity 0.2s ease-in-out;
  transition: opacity 0.2s ease-in-out;
  opacity: 1;
}
@media screen and (max-width: 768px) {
  .p-home__service-img {
    display: none;
  }
}
.p-home__service-img.hidden {
  opacity: 0;
  pointer-events: none; /* マウスイベント無効 */
}

.p-home__works {
  background-image: url(../img/top/webp/works_bg.webp);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  padding: clamp(2.5rem, 1.8173543689rem + 2.9126213592vw, 5.3125rem) 0;
}

.p-home__works-box {
  margin-top: clamp(1.5rem, 1.1359223301rem + 1.5533980583vw, 3rem);
}

.p-home__works-btn {
  margin-top: clamp(1.5rem, 0.8932038835rem + 2.5889967638vw, 4rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.p-home__access-box {
  margin-top: clamp(1.5rem, 1.1359223301rem + 1.5533980583vw, 3rem);
}

.p-home__access-map {
  width: 100%;
  margin-top: 1rem;
}
.p-home__access-map iframe {
  width: 100%;
}

.p-home__access-text {
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  font-weight: 500;
  line-height: 2.5;
  letter-spacing: 0.1em;
  color: #333333;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.3125rem;
}
.p-home__access-text::before {
  content: "";
  width: 0.1875rem;
  height: 1.1875rem;
  background-color: #7E8BA0;
}

.p-about__top {
  padding: clamp(2.5rem, 0.8313106796rem + 7.1197411003vw, 9.375rem) 0 clamp(12.5rem, 7.3863636364rem + 13.6363636364vw, 23.75rem);
  min-height: 26.25rem;
}
@media screen and (max-width: 600px) {
  .p-about__top {
    margin-bottom: 0;
    padding-bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.p-about__top::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 62%;
  max-width: 74.8125rem;
  aspect-ratio: 1197/111;
  background-image: url(../img/top/webp/about_text.webp);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
@media screen and (max-width: 600px) {
  .p-about__top::after {
    width: 100%;
  }
}

.p-about__top-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
  position: relative;
}
@media screen and (max-width: 600px) {
  .p-about__top-wrap {
    height: 100%;
  }
}
.p-about__top-wrap::before {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  max-width: clamp(18.75rem, 16.2773058252rem + 10.5501618123vw, 28.9375rem);
  aspect-ratio: 463/512;
  background-image: url(../img/top/webp/about01.webp);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
@media screen and (max-width: 600px) {
  .p-about__top-wrap::before {
    z-index: -1;
    opacity: 0.5;
  }
}

.p-about__top-box {
  width: 43%;
  max-width: 26.75rem;
  min-width: 18.75rem;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 600px) {
  .p-about__top-box {
    width: 100%;
    max-width: 100%;
    min-width: unset;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.p-about__top-txt {
  margin-top: clamp(1.5rem, 1.3786407767rem + 0.5177993528vw, 2rem);
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  font-weight: 500;
  line-height: 2.5;
  letter-spacing: 0.1em;
  color: #333333;
}

.p-about_possible {
  background-color: #F0F2F5;
}

.p-about_possible-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(1.5rem, 1.0145631068rem + 2.071197411vw, 3.5rem);
}

.p-about_possible-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(1rem, 0.833131068rem + 0.71197411vw, 1.6875rem);
}
.p-about_possible-box h4 {
  font-size: clamp(1.125rem, 1.0339805825rem + 0.3883495146vw, 1.5rem);
  font-weight: 500;
  line-height: 3.0416666667;
  letter-spacing: 0.1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.1875rem;
}
.p-about_possible-box h4::before {
  content: "";
  width: 0.6875rem;
  height: 2.375rem;
  background-color: #7E8BA0;
}

.p-about_possible-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1rem, 0.4538834951rem + 2.3300970874vw, 3.25rem);
}
@media screen and (max-width: 600px) {
  .p-about_possible-list {
    grid-template-columns: 1fr;
  }
}

.p-about_possible-item {
  background-color: var(--color_white);
  border: 1px solid #7E8BA0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(0.375rem, 0.2688106796rem + 0.4530744337vw, 0.8125rem);
  padding: clamp(1rem, 0.9696601942rem + 0.1294498382vw, 1.125rem) clamp(1rem, 0.7117718447rem + 1.2297734628vw, 2.1875rem);
}
.p-about_possible-item img {
  width: 8.0625rem;
}

.p-about_feature-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(1rem, 0.7269417476rem + 1.1650485437vw, 2.125rem);
}

.p-about_feature-item {
  padding: clamp(1rem, 0.6055825243rem + 1.6828478964vw, 2.625rem) clamp(1rem, 0.5600728155rem + 1.8770226537vw, 2.8125rem);
  border-radius: 0 1rem;
  border: 3px solid #7E8BA0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(1rem, 0.5904126214rem + 1.7475728155vw, 2.6875rem);
}
.p-about_feature-item picture {
  min-width: 12.125rem;
  width: 12.125rem;
}
@media screen and (max-width: 600px) {
  .p-about_feature-item picture {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
@media screen and (max-width: 600px) {
  .p-about_feature-item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.p-about_feature-number {
  color: #C8CED8;
  font-family: "Montserrat";
  font-size: clamp(2rem, 1.5145631068rem + 2.071197411vw, 4rem);
  font-weight: 600;
  line-height: 1.140625;
  letter-spacing: 0.1em;
  position: relative;
}
.p-about_feature-number::after {
  content: "";
  position: absolute;
  bottom: -0.375rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 1.6875rem;
  height: 0.125rem;
  background-color: #C8CED8;
}
@media screen and (max-width: 600px) {
  .p-about_feature-number {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}

.p-about_feature-title-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.75rem;
}
@media screen and (max-width: 600px) {
  .p-about_feature-title-wrap {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}

.p-about_feature-title {
  color: #6684B4;
  font-size: clamp(1.125rem, 1.0339805825rem + 0.3883495146vw, 1.5rem);
  font-weight: 700;
  line-height: 1.3333333333;
  letter-spacing: 0.1em;
}

.p-about_feature-txt {
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
}

.p-service__top {
  padding: clamp(2.5rem, 0.8313106796rem + 7.1197411003vw, 9.375rem) 0 clamp(12.5rem, 7.3863636364rem + 13.6363636364vw, 23.75rem);
  min-height: 26.25rem;
}
@media screen and (max-width: 600px) {
  .p-service__top {
    margin-bottom: 0;
    padding-bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.p-service__top::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 62%;
  max-width: 74.8125rem;
  aspect-ratio: 1197/111;
  background-image: url(../img/top/webp/about_text.webp);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
@media screen and (max-width: 600px) {
  .p-service__top::after {
    width: 100%;
  }
}

.p-service__top-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
  position: relative;
}
@media screen and (max-width: 600px) {
  .p-service__top-wrap {
    height: 100%;
  }
}
.p-service__top-wrap::before {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  max-width: clamp(18.75rem, 16.2773058252rem + 10.5501618123vw, 28.9375rem);
  aspect-ratio: 463/512;
  background-image: url(../img/service/webp/service01.webp);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
@media screen and (max-width: 600px) {
  .p-service__top-wrap::before {
    z-index: -1;
    opacity: 0.5;
  }
}

.p-service__top-box {
  width: 43%;
  max-width: 26.75rem;
  min-width: 18.75rem;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 600px) {
  .p-service__top-box {
    width: 100%;
    max-width: 100%;
    min-width: unset;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.p-service__top-txt {
  margin-top: clamp(1.5rem, 1.3786407767rem + 0.5177993528vw, 2rem);
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  font-weight: 500;
  line-height: 2.5;
  letter-spacing: 0.1em;
  color: #333333;
}

.p-service_type-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(1rem, 0.7269417476rem + 1.1650485437vw, 2.125rem);
}

.p-service_type-item {
  padding: clamp(1rem, 0.6055825243rem + 1.6828478964vw, 2.625rem) clamp(1rem, 0.5600728155rem + 1.8770226537vw, 2.8125rem);
  border-radius: 0 1rem;
  border: 3px solid #7E8BA0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(1rem, 0.5904126214rem + 1.7475728155vw, 2.6875rem);
}

.p-service_type-title-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.75rem;
}

.p-service_type-title {
  color: #6684B4;
  font-size: clamp(1.125rem, 1.0339805825rem + 0.3883495146vw, 1.5rem);
  font-weight: 700;
  line-height: 1.3333333333;
  letter-spacing: 0.1em;
}

.p-service_type-txt {
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
}

.p-service_type-img-wrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1rem, 0.8483009709rem + 0.6472491909vw, 1.625rem);
}
@media screen and (max-width: 600px) {
  .p-service_type-img-wrap {
    grid-template-columns: repeat(2, 1fr);
  }
}

.u-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.u-grid {
  display: grid;
}

.u-uppercase {
  text-transform: uppercase;
}

.u-capitalize {
  text-transform: capitalize;
}

.u-textCenter {
  text-align: center;
}

.u-bold {
  font-weight: bold;
}

.u-justify-center.u-justify-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.u-link--icon {
  font-family: "Oswald";
  color: var(--color-key);
}
.u-link--icon::after {
  content: "";
  width: 1.25rem;
  aspect-ratio: 1/1;
  -webkit-mask-image: url(../img/common/icon_link.svg);
          mask-image: url(../img/common/icon_link.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  background-color: currentColor;
}

.is-spNotOnly {
  display: block;
}
@media screen and (max-width: 480px) {
  .is-spNotOnly {
    display: none;
  }
}

@media screen and (max-width: 600px) {
  .is-pcOnly {
    display: none;
  }
}

.is-spOnly {
  display: none;
}
@media screen and (max-width: 600px) {
  .is-spOnly {
    display: block;
  }
}

@media screen and (max-width: 1366px) {
  .is-overPc {
    display: none;
  }
}

.is-underPc {
  display: none;
}
@media screen and (max-width: 1366px) {
  .is-underPc {
    display: block;
  }
}

@media screen and (max-width: 1280px) {
  .is-overXxl {
    display: none;
  }
}

.is-underXxl {
  display: none;
}
@media screen and (max-width: 1280px) {
  .is-underXxl {
    display: block;
  }
}

@media screen and (max-width: 1024px) {
  .is-overXl {
    display: none;
  }
}

.is-underXl {
  display: none;
}
@media screen and (max-width: 1024px) {
  .is-underXl {
    display: block;
  }
}

@media screen and (max-width: 768px) {
  .is-overMd {
    display: none;
  }
}

.is-underMd {
  display: none;
}
@media screen and (max-width: 768px) {
  .is-underMd {
    display: block;
  }
}

.is-fixed {
  overflow: hidden !important;
}

body.preload .wow.fadeIn,
body.preload .wow.fadeInUp {
  opacity: 0 !important;
}/*# sourceMappingURL=style_2507.css.map */