.elementor-27 .elementor-element.elementor-element-aa55115{margin-top:10px;margin-bottom:10px;padding:60px 0px 0px 0px;}.elementor-27 .elementor-element.elementor-element-5485abf.elementor-widget-heading .elementor-heading-title{color:#FFFFFF;}.elementor-27 .elementor-element.elementor-element-5485abf .elementor-heading-title{font-size:54px;}.elementor-27 .elementor-element.elementor-element-b6daf7c.elementor-widget-heading .elementor-heading-title{color:#FFFFFF;}.elementor-27 .elementor-element.elementor-element-b6daf7c .elementor-heading-title{font-size:60px;}.elementor-27 .elementor-element.elementor-element-9920b25 > .elementor-container{max-width:900px;}.elementor-27 .elementor-element.elementor-element-9920b25{margin-top:0px;margin-bottom:40px;}.elementor-27 .elementor-element.elementor-element-d57dfad.elementor-widget-heading .elementor-heading-title{color:#FFFFFF;}.elementor-27 .elementor-element.elementor-element-d57dfad .elementor-heading-title{font-size:29px;}.elementor-27 .elementor-element.elementor-element-f21372a.elementor-widget-heading .elementor-heading-title{color:#FFFFFF;}.elementor-27 .elementor-element.elementor-element-f21372a .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:bold;}.elementor-27 .elementor-element.elementor-element-c04e831 a.elementor-button, .elementor-27 .elementor-element.elementor-element-c04e831 .elementor-button{font-family:"Noto Sans JP", Sans-serif;font-size:15px;font-weight:600;fill:#000000;color:#000000;border-radius:5px 5px 5px 5px;padding:20px 20px 20px 20px;}.elementor-27 .elementor-element.elementor-element-687781c > .elementor-container{max-width:900px;}.elementor-27 .elementor-element.elementor-element-687781c{margin-top:0px;margin-bottom:40px;}.elementor-27 .elementor-element.elementor-element-720cdc3 > .elementor-container{max-width:900px;}.elementor-27 .elementor-element.elementor-element-720cdc3{margin-top:0px;margin-bottom:75px;}.elementor-27 .elementor-element.elementor-element-4339853 > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:50px 015px 050px 015px;}.elementor-27 .elementor-element.elementor-element-4339853 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-27 .elementor-element.elementor-element-a757f82{text-align:center;}.elementor-27 .elementor-element.elementor-element-a757f82.elementor-widget-heading .elementor-heading-title{color:#FFFFFF;}.elementor-27 .elementor-element.elementor-element-a757f82 .elementor-heading-title{font-family:"Noto Sans JP", Sans-serif;font-size:25px;font-weight:900;}.elementor-27 .elementor-element.elementor-element-2ae6e12{text-align:center;}.elementor-27 .elementor-element.elementor-element-2ae6e12.elementor-widget-heading .elementor-heading-title{color:#FFFFFF;}.elementor-27 .elementor-element.elementor-element-2ae6e12 .elementor-heading-title{font-family:"Noto Sans JP", Sans-serif;font-size:25px;font-weight:900;}.elementor-27 .elementor-element.elementor-element-056936b{text-align:center;}.elementor-27 .elementor-element.elementor-element-056936b.elementor-widget-heading .elementor-heading-title{color:#FFFFFF;}.elementor-27 .elementor-element.elementor-element-056936b .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:60px;font-weight:800;letter-spacing:2px;}.elementor-27 .elementor-element.elementor-element-9ba7001{text-align:center;}.elementor-27 .elementor-element.elementor-element-9ba7001.elementor-widget-heading .elementor-heading-title{color:#FFFFFF;}.elementor-27 .elementor-element.elementor-element-9ba7001 .elementor-heading-title{font-family:"Noto Sans JP", Sans-serif;font-size:21px;font-weight:700;}.elementor-27 .elementor-element.elementor-element-bf854f4{margin-top:0px;margin-bottom:100px;}.elementor-27 .elementor-element.elementor-element-b485f10.elementor-widget-heading .elementor-heading-title{color:#FFFFFF;}.elementor-27 .elementor-element.elementor-element-b485f10 .elementor-heading-title{font-size:55px;}.elementor-27 .elementor-element.elementor-element-b485f10 > .elementor-widget-container{margin:20px 0px 0px 0px;}@media(max-width:1024px){body.elementor-page-27:not(.elementor-motion-effects-element-type-background), body.elementor-page-27 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-size:1% auto;}}@media(max-width:767px){.elementor-27 .elementor-element.elementor-element-aa55115{margin-top:20px;margin-bottom:0px;padding:30px 0px 0px 0px;}.elementor-27 .elementor-element.elementor-element-5485abf .elementor-heading-title{font-size:33px;}.elementor-27 .elementor-element.elementor-element-b6daf7c .elementor-heading-title{font-size:40px;}.elementor-27 .elementor-element.elementor-element-9920b25{margin-top:20px;margin-bottom:25px;}.elementor-27 .elementor-element.elementor-element-d57dfad .elementor-heading-title{font-size:17px;}.elementor-27 .elementor-element.elementor-element-f21372a .elementor-heading-title{font-size:9px;}.elementor-27 .elementor-element.elementor-element-687781c{padding:15px 15px 15px 15px;}.elementor-27 .elementor-element.elementor-element-a0af4d9 > .elementor-element-populated{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-27 .elementor-element.elementor-element-7a9fac9 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-27 .elementor-element.elementor-element-720cdc3{margin-top:0px;margin-bottom:0px;padding:15px 15px 15px 15px;}.elementor-27 .elementor-element.elementor-element-4339853 > .elementor-element-populated{padding:15px 15px 15px 15px;}.elementor-27 .elementor-element.elementor-element-2ae6e12 .elementor-heading-title{font-size:15px;}.elementor-27 .elementor-element.elementor-element-056936b .elementor-heading-title{font-size:30px;}.elementor-27 .elementor-element.elementor-element-056936b > .elementor-widget-container{margin:0px 0px -10px 0px;}.elementor-27 .elementor-element.elementor-element-9ba7001 .elementor-heading-title{font-size:12px;}.elementor-27 .elementor-element.elementor-element-bf854f4{margin-top:0px;margin-bottom:075px;padding:0px 0px 0px 0px;}.elementor-27 .elementor-element.elementor-element-dbfe980 > .elementor-element-populated{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-27 .elementor-element.elementor-element-b485f10 .elementor-heading-title{font-size:40px;}.elementor-27 .elementor-element.elementor-element-b485f10 > .elementor-widget-container{margin:30px 00px 30px 00px;padding:0px 0px 0px 0px;}body.elementor-page-27:not(.elementor-motion-effects-element-type-background), body.elementor-page-27 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-size:100% auto;}}@media(min-width:768px){.elementor-27 .elementor-element.elementor-element-be57a0d{width:64.556%;}.elementor-27 .elementor-element.elementor-element-c90073d{width:35.444%;}}/* Start custom CSS for heading, class: .elementor-element-5485abf */.pageTtl .elementor-heading-title {
  font-family: "Arial Black", "Helvetica Neue", Arial, sans-serif;
  font-weight: 900;
  font-style: italic;
  line-height: 0.95;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  display: inline-block;

  /* 右斜め上に上がる */
  transform: rotate(-5deg) skewX(-6deg) scaleX(1.08);
  transform-origin: left center;
}

@media (max-width: 767px) {
  .pageTtl .elementor-heading-title {
    letter-spacing: 0.12em;
    line-height: 1;
    transform: rotate(-4deg) skewX(-6deg) scaleX(1.03);
  }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-b6daf7c */.pageTtl .elementor-heading-title {
  font-family: "Arial Black", "Helvetica Neue", Arial, sans-serif;
  font-weight: 900;
  font-style: italic;
  line-height: 0.95;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  display: inline-block;

  /* 右斜め上に上がる */
  transform: rotate(-5deg) skewX(-6deg) scaleX(1.08);
  transform-origin: left center;
}

@media (max-width: 767px) {
  .pageTtl .elementor-heading-title {
    letter-spacing: 0.12em;
    line-height: 1;
    transform: rotate(-4deg) skewX(-6deg) scaleX(1.03);
  }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-c04e831 */.contact-gradient-btn .elementor-button {
  justify-content: center;
  background: linear-gradient(
    180deg,
    #e9fbff 0%,
    #d7f3fb 42%,
    #bfe4ed 58%,
    #ee8a7d 100%
  ) !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7a9fac9 *//* ===============================
   採用情報
================================ */
.recruit-box {
  width: 100%;
  font-family: "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  color: #000;
  font-size: 18px;
  line-height: 1.65;
  font-weight: 700;
}

/* 1行 */
.recruit-row {
  display: flex;
  border-bottom: 1px solid #7fc7ee;
  padding: 18px 0;
}

/* 左側：項目名 */
.recruit-title {
  width: 180px;
  flex-shrink: 0;
  padding-top: 0;
}

/* 項目名グラデーション */
.recruit-title-main {
  display: inline-block;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.05em;
  background: linear-gradient(90deg, #65bce4 0%, #65bce4 58%, #df563c 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

/* （レジデント）（スタッフ） */
.recruit-title-sub {
  display: block;
  font-size: 16px;
  line-height: 1.25;
  color: #65bce4;
  font-weight: 700;
  letter-spacing: 0.04em;
  margin-top: 2px;
}

/* 右側本文 */
.recruit-content {
  flex: 1;
  padding-top: 1px;
}

/* 通常本文 */
.recruit-content p {
  margin: 0 0 8px;
  font-size: 15px;
  line-height: 1.65;
  font-weight: 700;
}

.recruit-content p:last-child {
  margin-bottom: 0;
}

/* 小さめ文字 */
.small {
  font-size: 11px;
  font-weight: 500;
}

/* 少し細い補足 */
.light {
  font-weight: 500;
}

/* リスト */
.recruit-content ul {
  margin: 5px 0 18px 1.2em;
  padding: 0;
}

.recruit-content li {
  margin: 0;
  font-size: 11px;
  line-height: 1.55;
  font-weight: 500;
}

/* 色指定 */
.blue {
  color: #0058d8;
}

.purple {
  color: #c400df;
}

/* 番号丸 */
.num {
  display: inline-block;
  width: 1.15em;
  height: 1.15em;
  line-height: 1.15em;
  border-radius: 50%;
  background: #0058d8;
  color: #fff;
  text-align: center;
  font-size: 0.82em;
  font-weight: 700;
  margin-right: 3px;
  vertical-align: 0.04em;
}

.num.purple-bg {
  background: #c400df;
}

/* メールアドレス */
.mail-gradient,
.mail-gradient:link,
.mail-gradient:visited {
  display: inline-block;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
  letter-spacing: 0.04em;
  background: linear-gradient(90deg, #65bce4 0%, #65bce4 48%, #777 68%, #df563c 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

/* ===============================
   スマホ
================================ */
@media (max-width: 767px) {
  .recruit-box {
    font-size: 11px;
    line-height: 1.7;
  }

  .recruit-row {
    display: block;
    padding: 18px 0;
  }

  .recruit-title {
    width: 100%;
    margin-bottom: 14px;
  }

  .recruit-title-main {
    font-size: 20px;
  }

  .recruit-title-sub {
    font-size: 14px;
  }

  .recruit-content {
    width: 100%;
  }

  .recruit-content p {
    font-size: 11px;
    line-height: 1.75;
    margin-bottom: 9px;
  }

  .recruit-content li {
    font-size: 9px;
    line-height: 1.6;
  }

  .small {
    font-size: 9px;
  }

  .mail-gradient {
    font-size: 13px;
  }
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-4339853 */.contactGrBox {
  background: linear-gradient(
    105deg,
    #004fa3 0%,
    #2f8dcb 38%,
    #928399 68%,
    #f03713 100%
  ) !important;

  border-radius: 18px;
  overflow: hidden;
}

@media (max-width: 767px) {
  .contactGrBox {
    border-radius: 14px;
    background: linear-gradient(
      135deg,
      #004fa3 0%,
      #2f8dcb 42%,
      #928399 72%,
      #f03713 100%
    ) !important;
  }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-b485f10 *//* グラデーション見出し */
.pageTtl_gr .elementor-heading-title {
  font-family: "Arial Black", "Helvetica Neue", Arial, sans-serif;
  font-weight: 600;
  font-style: italic;
  line-height: 0.95;
  letter-spacing: 0em;
  text-transform: uppercase;
  display: inline-block;

  background: linear-gradient(
    90deg,
    #cfeef7 0%,
    #8fc8e6 28%,
    #4f9bd3 48%,
    #8b6577 68%,
    #ef3b1c 100%
  );
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;

  transform: rotate(-5deg) skewX(-6deg) scaleX(1.08);
  transform-origin: left center;
}

/* 横スクロールバー対策 */
html,
body {
  overflow-x: hidden;
}

/* スマホ時：左に少し被せる */
@media (max-width: 767px) {
  .pageTtl_gr {
    overflow: hidden;
  }

  .pageTtl_gr .elementor-heading-title {
    letter-spacing: 0.16em;
    line-height: 1.05;
    white-space: nowrap;

    /* 左に少し被せる */
    transform: translateX(-8px) rotate(-5deg) skewX(-6deg) scaleX(1.08);
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-c84373c *//* ==============================
   Contact Form 7 デザイン
   ============================== */

.contact7_design {
  width: 100%;
  max-width: 760px;
  margin: 0 auto;
  font-family: inherit;
}

/* 行 */
.contact7_design .cf7-row {
  display: grid;
  grid-template-columns: 260px 1fr;
  column-gap: 22px;
  align-items: center;
  margin-bottom: 28px;
}

/* textarea行だけ上揃え */
.contact7_design .cf7-row-textarea {
  align-items: start;
}

/* ラベル */
.contact7_design .cf7-label {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  font-size: 17px;
  font-weight: 700;
  color: #111;
  letter-spacing: 0.04em;
  line-height: 1.5;
  white-space: nowrap;
}

/* 項目名 */
.contact7_design .cf7-label-text {
  display: inline-block;
}

/* 必須 */
.contact7_design .cf7-required {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 43px;
  height: 25px;
  margin-left: 12px;
  padding: 0 10px;
  background: #ed1c2e;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
}
/* 入力欄 */
.contact7_design .cf7-field input,
.contact7_design .cf7-field textarea {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #aaa;
  border-radius: 3px;
  background: linear-gradient(135deg, #fafafa 0%, #f3f3f3 100%);
  font-size: 16px;
  color: #111;
  padding: 10px 12px;
  outline: none;
  box-shadow: none;
}

/* input高さ */
.contact7_design .cf7-field input {
  height: 42px;
}

/* textarea */
.contact7_design .cf7-field textarea {
  height: 240px;
  resize: vertical;
}

/* フォーカス時 */
.contact7_design .cf7-field input:focus,
.contact7_design .cf7-field textarea:focus {
  border-color: #777;
  background: #fff;
}

/* CF7の余白対策 */
.contact7_design p {
  margin: 0;
}

.contact7_design .wpcf7-form-control-wrap {
  display: block;
}

/* 送信ボタン */
.contact7_design .cf7-submit-wrap {
  text-align: center;
  margin-top: 50px;
}

.contact7_design .cf7-submit-wrap input[type="submit"] {
  width: 243px;
  height: 76px;
  border: none;
  border-radius: 8px;
  background: linear-gradient(135deg, #1f84c9 0%, #2c8ccd 42%, #d94424 100%);
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.04em;
  cursor: pointer;
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.contact7_design .cf7-submit-wrap input[type="submit"]:hover {
  opacity: 0.85;
  transform: translateY(-2px);
}

/* スピナー位置調整 */
.contact7_design .wpcf7-spinner {
  display: block;
  margin: 15px auto 0;
}

/* ==============================
   スマホ
   ============================== */

@media (max-width: 767px) {

  .contact7_design {
    max-width: 100%;
    padding: 0 30px;
  }

  .contact7_design .cf7-row {
    display: block;
    margin-bottom: 30px;
  }

  .contact7_design .cf7-label {
    justify-content: flex-start;
    gap: 18px;
    margin-bottom: 15px;
    font-size: 20px;
    line-height: 1.4;
    white-space: normal;
  }

  .contact7_design .cf7-required {
    min-width: 45px;
    height: 25px;
    font-size: 13px;
  }

  .contact7_design .cf7-field input {
    height: 57px;
    font-size: 16px;
  }

  .contact7_design .cf7-field textarea {
    height: 365px;
    font-size: 16px;
  }

  .contact7_design .cf7-submit-wrap {
    margin-top: 52px;
  }

  .contact7_design .cf7-submit-wrap input[type="submit"] {
    width: 275px;
    max-width: 100%;
    height: 86px;
    font-size: 21px;
  }
}

/* さらに小さいスマホ */
@media (max-width: 420px) {

  .contact7_design {
    padding: 0 24px;
  }

  .contact7_design .cf7-label {
    font-size: 18px;
  }

  .contact7_design .cf7-field textarea {
    height: 360px;
  }
}/* End custom CSS */
/* Start custom CSS for page-settings */body::before {
  content: "";
  position: absolute;
  top: 500px;
  left: 50%;

  width: max(100vw, 1600px);
  aspect-ratio: 1200 / 408;

  transform: translate(-50%, -100%);

  background-image: url("/cms/wp-content/uploads/ttlBg.png");
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 100% auto;

  z-index: 0;
  pointer-events: none;
}

@media (max-width: 767px) {
  body::before {
    top: 400px;
    width: max(100vw, 100px);
    aspect-ratio: 800 / 885;

    background-image: url("/cms/wp-content/uploads/ttlBg_sp.jpg");
  }
}/* End custom CSS */