@charset "UTF-8";
/*
Theme Name: ASUKA2024
Author: lime.inc
Author URI: https://lime-inc.co.jp
Version: 1.0.0
*/
:root {
  --asuka-yellow: #FFCB00;
  --asuka-blue: #0092E2;
  --yellow:#f5c41d;
  --blue:#1b88cb;
  --yellow-bg:#F9DA73;
  --gray-bg:#FFF7E4;
  --gray-foot:#FFFCF5;
  --gray-icon:#f8f1e3;
  --gray:#E2DED0;
  --gray-text:#8c8c8c;
  --white-bg:#ffffff;
}

/*グラデーション*/
.gradation {
  display: block;
  content: "";
  width: 100%;
  height: calc(840 / var(--pc));
  background: url(../img/company/gradation-company.png) no-repeat;
  background-size: cover;
  position: absolute;
  top: 0;
  z-index: -1;
}

.title-area {
  aspect-ratio: 16/9;
  padding-bottom: 0;
}

/* タイトル部分イメージ */
.title-img {
  position: absolute;
  right: 0;
  top: calc(48 / var(--pc));
  width: 100%;
  bottom: 0;
}

.recruit-title-img01 {
  position: absolute;
  top: 0;
  left: 40%;
  z-index: 3;
  border-radius: calc(20 / var(--pc)) calc(60 / var(--pc)) calc(20 / var(--pc)) calc(20 / var(--pc));
  width: 55%;
  aspect-ratio: 16/9;
  overflow: hidden;
}
.recruit-title-img01 img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.recruit-title-img02 {
  position: absolute;
  bottom: 10%;
  left: 10%;
  z-index: 2;
  border-radius: calc(20 / var(--pc)) calc(60 / var(--pc)) calc(20 / var(--pc)) calc(20 / var(--pc));
  width: 40%;
  aspect-ratio: 16/9;
  overflow: hidden;
}
.recruit-title-img02 img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transform-origin: 0% 0%;
          transform-origin: 0% 0%; /* ズームの中心位置 (x%, y%) */
}

.recruit-title-img03 {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 1;
  border-radius: calc(20 / var(--pc)) calc(60 / var(--pc)) calc(20 / var(--pc)) calc(20 / var(--pc));
  width: 30%;
  aspect-ratio: 16/9;
  overflow: hidden;
}
.recruit-title-img03 img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transform: scale(1.5);
          transform: scale(1.5);
  -webkit-transform-origin: 50% 20%;
          transform-origin: 50% 20%; /* ズームの中心位置 (x%, y%) */
}

/* common */
.recruit-section {
  position: relative;
}

.recruit-section-inner {
  margin: calc(80 / var(--pc)) auto calc(80 / var(--pc)) auto;
  width: calc(1312 / var(--pc));
  padding: 80px 0;
}

.recruit-asuka {
  text-align: left;
}
.recruit-asuka h2 {
  margin-bottom: 80px;
  font-size: calc(52 / var(--pc));
  font-weight: 400;
  line-height: calc(66 / var(--pc));
}
.recruit-asuka .asuka-text {
  width: calc(751 / var(--pc));
  margin-left: auto;
}
.recruit-asuka .asuka-text p {
  font-size: calc(18 / var(--pc));
  line-height: calc(43.2 / var(--pc));
  letter-spacing: -0.008em;
}
.recruit-asuka .recruit-decolation01 {
  width: calc(381 / var(--pc));
  height: calc(509.06 / var(--pc));
  position: absolute;
  left: 0px;
  bottom: 0px;
}

.recruit-philosophy {
  text-align: left;
  position: relative;
}
.recruit-philosophy::before {
  display: block;
  content: "";
  width: 100%;
  height: calc(1526 / var(--pc));
  position: absolute;
  top: calc(-180 / var(--pc));
  background: url(../img/top/gradation-top.png) 0% 0%/cover no-repeat;
}
.recruit-philosophy .philosophy-section-inner {
  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: 120px;
}
.recruit-philosophy .philosophy-section-inner h2 {
  margin-bottom: 80px;
  font-size: calc(40 / var(--pc));
  font-weight: 400;
  line-height: calc(66 / var(--pc));
  /* 基本の縦書き設定 */
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl; /* 右→左の縦書き */
  text-orientation: upright; /* 縦方向の文字をそのまま表示 */
  text-combine-upright: none; /* 数字や句読点の横組み化を防ぐ */
  /* 約物ぶら下げの無効化 */
  hanging-punctuation: none;
  /* 文字間調整（縦方向でのズレ防止） */
  letter-spacing: 0;
  /* 段落の字下げ無効化（必要なら） */
  text-indent: 0;
}
.recruit-philosophy .philosophy-section-inner h2.f-zkgn {
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.recruit-philosophy .philosophy-text {
  background: #fff;
  padding: 80px;
}
.recruit-philosophy .philosophy-text p {
  font-size: calc(18 / var(--pc));
  line-height: calc(43.2 / var(--pc));
  letter-spacing: -0.008em;
}
.recruit-philosophy .recruit-decolation02 {
  width: calc(242 / var(--pc));
  height: calc(314 / var(--pc));
  position: absolute;
  right: 0px;
  top: calc(600 / var(--pc));
}
.recruit-philosophy .credo-text {
  margin: 50px 0 100px;
  font-size: calc(18 / var(--pc));
  line-height: calc(43.2 / var(--pc));
  letter-spacing: -0.008em;
  text-align: center;
}
.recruit-philosophy .credo {
  max-width: 900px;
  margin: 0 auto;
  position: relative;
  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: 50px;
}
.recruit-philosophy .credo:before, .recruit-philosophy .credo:after {
  content: "";
  display: inline-block;
  width: calc(600 / var(--pc));
  aspect-ratio: 1/1;
  position: absolute;
  z-index: 1;
  border: solid 1px #000;
  border-radius: 50%;
  -webkit-filter: blur(30px);
          filter: blur(30px);
}
.recruit-philosophy .credo:before {
  background: radial-gradient(circle, rgba(0, 146, 226, 0.4) 0%, rgba(146, 226, 0, 0) 100%);
  bottom: 0;
  left: 0;
}
.recruit-philosophy .credo:after {
  background: radial-gradient(circle, rgba(255, 203, 0, 0.5) 0%, rgba(255, 203, 0, 0) 100%);
  top: 0;
  left: calc(300 / var(--pc));
}
.recruit-philosophy .credo-item {
  padding: 30px 70px;
  text-align: left;
  position: relative;
  z-index: 2;
  background: rgba(255, 255, 255, 0.5);
  border: solid 1px rgba(255, 255, 255, 0.6);
  border-radius: 5px;
}
.recruit-philosophy .credo-item h4 {
  position: relative;
  margin: 0 0 30px;
  text-align: center;
}
.recruit-philosophy .credo-item h4 .credo-word {
  display: inline-block;
  position: absolute;
  top: -80px;
  left: -90px;
  font-family: "Lexend", sans-serif;
  font-weight: 400;
  font-size: calc(36 / var(--pc));
  line-height: 1;
  color: var(--blue);
}
.recruit-philosophy .credo-item h4 .credo-word::first-letter {
  display: inline-block;
  font-size: calc(72 / var(--pc));
  color: var(--asuka-yellow);
}
.recruit-philosophy .credo-item h4 .credo-meaning {
  font-size: calc(28 / var(--pc));
  font-weight: normal;
  line-height: 1;
}
.recruit-infographic .recruit-decolation03 {
  width: calc(493 / var(--pc));
  height: calc(412 / var(--pc));
  position: absolute;
  right: 0;
  top: calc(-250 / var(--pc));
  z-index: 2;
}
.recruit-infographic .infographic-text {
  margin: 50px 0 100px;
  font-size: calc(18 / var(--pc));
  line-height: calc(43.2 / var(--pc));
  letter-spacing: -0.008em;
  text-align: center;
}
.recruit-infographic .infographic-title {
  margin: 50px 0;
  font-size: calc(24 / var(--pc));
  text-align: center;
  font-weight: normal;
  position: relative;
  padding: 0 0 30px;
}
.recruit-infographic .infographic-title:after {
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  content: "";
  display: inline-block;
  width: calc(80 / var(--pc));
  height: 3px;
  background: var(--asuka-yellow);
  background: -webkit-gradient(linear, left top, right top, from(var(--asuka-yellow)), color-stop(50%, var(--asuka-yellow)), color-stop(50%, var(--asuka-blue)), to(var(--asuka-blue)));
  background: linear-gradient(to right, var(--asuka-yellow), var(--asuka-yellow) 50%, var(--asuka-blue) 50%, var(--asuka-blue) 100%);
}
.recruit-infographic .infographics {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 30px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 0 80px;
}
.recruit-infographic .infographics-item {
  background: var(--white-bg);
  width: 300px;
  padding: 30px;
  position: relative;
  border: 1px solid rgb(245, 239, 225);
  border-radius: calc(12 / var(--pc)) calc(36 / var(--pc)) calc(12 / var(--pc)) calc(12 / var(--pc));
}
.recruit-infographic .chart-title {
  margin: 0 0 20px;
  font-size: calc(18 / var(--pc));
  text-align: center;
  font-weight: normal;
}
.recruit-infographic .chart-canvas {
  position: relative;
  margin: 0 0 30px;
}
.recruit-infographic .chart-canvas-svg {
  max-width: 80%;
  margin: 0 auto;
}
.recruit-infographic .chart-canvas-data {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -25%);
          transform: translate(-50%, -25%);
}
.recruit-infographic .chart-canvas-data p {
  color: var(--gray-text);
  -webkit-text-stroke: 5px white;
  paint-order: stroke;
  white-space: nowrap;
  text-indent: 1em;
  line-height: 1;
}
.recruit-infographic .chart-canvas-data.color-yellow {
  color: var(--yellow);
  -webkit-text-fill-color: var(--yellow);
  -webkit-text-stroke: 5px white;
}
.recruit-infographic .chart-canvas-data .num {
  font-family: "Lexend", sans-serif;
  font-size: calc(48 / var(--pc));
  font-weight: 500;
}
.recruit-infographic .chart-canvas-data .unit {
  font-size: calc(24 / var(--pc));
}
.recruit-infographic .chart-canvas-data:has(> :not(:only-child)) .num {
  font-size: calc(36 / var(--pc));
  font-weight: 400;
}
.recruit-infographic .chart-canvas-data:has(> :not(:only-child)) .unit {
  font-size: calc(18 / var(--pc));
}
.recruit-infographic .chart-canvas-data.text-lg .num {
  font-size: calc(120 / var(--pc));
  font-weight: 400;
}
.recruit-infographic .chart-canvas-data.text-lg .unit {
  font-size: calc(60 / var(--pc));
}
.recruit-infographic .chart-msg {
  text-align: left;
}

.recruit-members .recruit-decolation04 {
  width: calc(194 / var(--pc));
  height: calc(215 / var(--pc));
  position: absolute;
  right: 0;
  top: calc(-150 / var(--pc));
}
.recruit-members .members-text {
  margin: 50px 0 100px;
  font-size: calc(18 / var(--pc));
  line-height: calc(43.2 / var(--pc));
  letter-spacing: -0.008em;
  text-align: center;
}
.recruit-members .members {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 30px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.recruit-members .members-item {
  width: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 30px;
  padding: 30px;
  border: 1px solid rgb(245, 239, 225);
  border-radius: calc(20 / var(--pc)) calc(60 / var(--pc)) calc(20 / var(--pc)) calc(20 / var(--pc));
  background: var(--white-bg);
}
.recruit-members .members-item-photo {
  -ms-flex-preferred-size: 240px;
      flex-basis: 240px;
  aspect-ratio: 4/3;
}
.recruit-members .members-item-photo img {
  width: 100%;
  border-radius: calc(12 / var(--pc)) calc(36 / var(--pc)) calc(12 / var(--pc)) calc(12 / var(--pc));
}
.recruit-members .members-item-message {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.recruit-members .members-item-message dt {
  margin: 0 0 10px;
  font-size: calc(18 / var(--pc));
}
.recruit-members .members-item-message dd {
  text-align: left;
}

.recruit-requirements .requirements-text {
  margin: 50px 0 100px;
  font-size: calc(18 / var(--pc));
  line-height: calc(43.2 / var(--pc));
  letter-spacing: -0.008em;
  text-align: center;
}
.recruit-requirements .recruitments {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
  margin: 0 0 80px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.recruit-requirements .recruitments-item {
  width: calc(500 / var(--pc));
}