@charset "UTF-8";
/* 色などの変数定義 */
:root {
  --text-color: #000;
}

/* 全要素リセット */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  outline: none;
  font-weight: 400;
}

/* ルートフォントサイズ調整（1rem = 10px） */
html {
  font-size: 62.5%;
  scroll-behavior: smooth;
  scroll-padding-top: 140px;
}

/* 基本フォント設定（body & フォーム要素） */
body,
button,
input,
textarea,
select {
  font-family: "source-han-sans-japanese", sans-serif;
  font-size: 1.6rem;
  line-height: 1.5;
  color: var(--text-color);
  -webkit-text-size-adjust: 100%;
  /* iOS文字拡大防止 */
  -webkit-font-smoothing: antialiased;
}

/* リンク初期化 & ホバー効果 */
a {
  text-decoration: none;
  transition: all 0.3s ease;
  color: inherit;
}

a:hover {
  text-decoration: underline;
}

/* リスト系リセット */
ul,
ol {
  list-style: none;
}

/* フォームの余計な装飾をリセット */
button,
input,
textarea,
select {
  background: none;
  border: none;
  padding: 0;
}

/* ボタン強化 */
button,
input[type=submit] {
  cursor: pointer;
}

button {
  appearance: none;
  -webkit-appearance: none;
}

/* レスポンシブ対策 */
/* 画像・メディアのレスポンシブ対応 */
img,
video,
iframe {
  max-width: 100%;
  height: auto;
  display: block;
}

/* テキストはみ出し対策 */
p,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 1.6rem;
  word-wrap: break-word;
}

/* 横スクロール防止 */
body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
  opacity: 0;
  transition: all 0.5s ease;
}

@keyframes flow-bar {
  0% {
    left: 0;
    width: 0;
  }
  50% {
    left: 0;
    width: 100%;
  }
  51% {
    left: 0;
    width: 100%;
  }
  100% {
    left: 100%;
    width: 0;
  }
}
@keyframes flow-bar2 {
  0% {
    left: 0;
    width: 0;
  }
  50% {
    left: 0;
    width: 100%;
  }
  51% {
    left: 0;
    width: 100%;
  }
  100% {
    left: 0;
    width: 100%;
  }
}
@keyframes flow-txt {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.flow-bar,
.flow-bar2 {
  position: relative;
  display: inline-block;
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.flow-bar:before,
.flow-bar2:before {
  content: "";
  display: inline-block;
  width: 0;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  background: #fff;
}

.flow-txt {
  color: #fff;
  display: block;
  opacity: 0;
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.move.flow-bar:before {
  -webkit-animation: flow-bar 1s ease 0s 1 normal forwards;
  animation: flow-bar 1s ease 0s 1 normal forwards;
}

.move.flow-bar2:before {
  -webkit-animation: flow-bar2 1s ease 0s 1 normal forwards;
  animation: flow-bar2 1s ease 0s 1 normal forwards;
}

.move .flow-txt {
  -webkit-animation: flow-txt 0s ease 0.5s 1 normal forwards;
  animation: flow-txt 0s ease 0.5s 1 normal forwards;
}

/* move時のアニメーション設定：それぞれ遅延を変える */
.bar1.move:before {
  animation: flow-bar 1s ease 0s 1 normal forwards;
}

.bar1.move .flow-txt {
  animation: flow-txt 0s ease 0.5s 1 normal forwards;
}

.bar2.move:before {
  animation: flow-bar 1s ease 0.2s 1 normal forwards;
}

.bar2.move .flow-txt {
  animation: flow-txt 0s ease 0.7s 1 normal forwards;
}

.fadein {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 1s, transform 1s;
  will-change: opacity, transform;
}

.visible {
  opacity: 1;
  transform: translateY(0);
}

#masthead {
  z-index: 11;
  height: 130px;
  position: fixed;
  width: 100%;
  top: -130px;
  transition: all 0.3s ease;
}
#masthead::before {
  background: transparent linear-gradient(167deg, #0089c6 52%, #36d1de 100%) 0% 0% no-repeat padding-box;
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 80%);
}
#masthead > * {
  position: relative;
}
#masthead .site-header-main .site-branding {
  display: flex;
  justify-content: space-between;
  height: 130px;
  align-items: flex-start;
  padding: 26px 40px;
}
#masthead .site-header-main .site-branding .site-title a {
  display: flex;
  gap: 37px;
  text-decoration: none;
}
#masthead .site-header-main .site-branding .site-title a:hover {
  opacity: 0.8;
}
#masthead .site-header-main .site-branding .site-title a img {
  width: 58.4375%;
}
#masthead .site-header-main .site-branding .site-title a span {
  color: #fff;
  font-size: clamp(3rem, 3vw, 4rem);
  font-weight: bold;
}
#masthead .site-header-main .site-branding > div {
  display: flex;
  align-items: center;
  gap: 40px;
}
#masthead .site-header-main .site-branding > div > a {
  border: 2px solid #fff;
  color: #ffffff;
  font-size: clamp(1.5rem, 1.8vw, 2.5rem);
  padding: 9px 24px;
}
#masthead .site-header-main .site-branding > div > div.menu-btn {
  background: transparent url(../images/menu.svg) no-repeat scroll left top/74px 29px;
  width: 74px;
  height: 29px;
}

@keyframes bgloop {
  from {
    background-position: 0 0;
  }
  to {
    background-position: -3591px 0;
    /*-1000px部分は画像の横幅と同じ数値*/
  }
}
@keyframes scrollMove {
  0% {
    top: 0;
  }
  100% {
    top: 95%;
  }
}
.front-page_content > div.wrap {
  position: relative;
}
.front-page_content > div.wrap::before, .front-page_content > div.wrap::after {
  content: "";
  display: block;
  position: fixed;
  aspect-ratio: 1600/900;
  width: 100%;
  z-index: 1;
  left: 0;
  top: 0;
  transform: translateY(var(--parallax1, 0));
  /* ← スクロール連動 */
}
.front-page_content > div.wrap::before {
  background: transparent url(../images/tate1.svg) no-repeat scroll left top/cover;
}
.front-page_content > div.wrap::after {
  background: transparent url(../images/tate2.svg) no-repeat scroll left top/cover;
  transform: translateY(var(--parallax2, 0));
}
.front-page_content > div.wrap section.catch {
  position: relative;
  background: transparent linear-gradient(155deg, #0089c6 17%, #36d1de 100%) 0% 0% no-repeat padding-box;
  height: 100vh;
  position: fixed;
  width: 100%;
  top: 0;
  padding: 130px 0 0 0;
}
.front-page_content > div.wrap section.catch h1 {
  color: #ffffff;
  font-size: clamp(6.5rem, 11vw, 18.1rem);
  line-height: 1.37;
  width: max-content;
  margin: 0 auto;
  padding: 0 0 0 6%;
  font-weight: 200;
}
.front-page_content > div.wrap section.catch > div.img {
  background: transparent url(../images/kvtext.svg) repeat-x scroll left top/cover;
  background-position: center;
  animation: bgloop 30s linear infinite;
  height: 16.1vw;
  max-height: 250px;
}
.front-page_content > div.wrap section.catch > div.scroll {
  color: #fff;
  font-size: 1.4rem;
  position: fixed;
  height: 110px;
  top: 50%;
  transform: translateY(-50%);
  writing-mode: vertical-rl;
  left: 40px;
  width: 30px;
}
.front-page_content > div.wrap section.catch > div.scroll::before {
  content: "";
  display: block;
  height: 100%;
  width: 1px;
  background-color: #fff;
  position: absolute;
  left: 0px;
}
.front-page_content > div.wrap section.catch > div.scroll::after {
  content: "";
  display: block;
  height: 8px;
  width: 8px;
  border-radius: 50%;
  background-color: #fff;
  position: absolute;
  left: -3.5px;
  animation: scrollMove 2s ease-out infinite;
}
.front-page_content > div.wrap section.message {
  background-color: #fff;
  margin: 100vh 0 0 0;
  position: relative;
  padding: 0 0 150px;
}
.front-page_content > div.wrap section.message::before {
  background: transparent url(../images/townbar.svg) no-repeat scroll center top/cover;
  content: "";
  display: block;
  position: absolute;
  top: -60px;
  left: 0;
  width: 100%;
  height: 60px;
}
.front-page_content > div.wrap section.message > div {
  padding: 0 21px;
  position: relative;
  z-index: 1;
}
.front-page_content > div.wrap section.message > div > h2 {
  font-size: 9.5rem;
  color: transparent;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #00b0ff;
  text-align: center;
}
.front-page_content > div.wrap section.message > div > h3 {
  font-size: 2rem;
  text-align: center;
  margin: 0 0 72px;
}
.front-page_content > div.wrap section.message > div > p {
  font-size: 1.8rem;
  line-height: 2.2222222222;
  max-width: 942px;
  margin: 0 auto;
}
.front-page_content > div.wrap section.ideal {
  background-color: #fff;
  position: relative;
}
.front-page_content > div.wrap section.ideal > div.head {
  position: relative;
  z-index: 2;
}
.front-page_content > div.wrap section.ideal > div.head h2 {
  font-size: 9.5rem;
  color: transparent;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #00b0ff;
  text-align: center;
}
.front-page_content > div.wrap section.ideal > div.head h3 {
  font-size: 2rem;
  text-align: center;
}
.front-page_content > div.wrap section.ideal > div.content {
  display: flex;
  justify-content: space-between;
  position: relative;
  z-index: 2;
}
.front-page_content > div.wrap section.ideal > div.content:has(div.text > div:nth-of-type(1).on) div.img img:nth-of-type(1) {
  opacity: 1;
}
.front-page_content > div.wrap section.ideal > div.content:has(div.text > div:nth-of-type(2).on) div.img img:nth-of-type(2) {
  opacity: 1;
}
.front-page_content > div.wrap section.ideal > div.content:has(div.text > div:nth-of-type(3).on) div.img img:nth-of-type(3) {
  opacity: 1;
}
.front-page_content > div.wrap section.ideal > div.content > div.img {
  position: sticky;
  top: 0;
  width: 50%;
  height: calc(100vh + 130px);
  display: block;
}
.front-page_content > div.wrap section.ideal > div.content > div.img img {
  opacity: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.3s ease;
}
.front-page_content > div.wrap section.ideal > div.content > div.img img:first-of-type {
  opacity: 1 !important;
}
.front-page_content > div.wrap section.ideal > div.content > div.text {
  width: 45.625%;
  margin: 44vh 0;
  display: flex;
  flex-direction: column;
  gap: 44vh 0;
}
.front-page_content > div.wrap section.ideal > div.content > div.text > div > h3 {
  border-bottom: 3px solid #00b0ff;
  color: #00b0ff;
  font-size: 3rem;
  margin: 0 0 28px;
  width: max-content;
}
.front-page_content > div.wrap section.ideal > div.content > div.text > div > .h2 {
  display: flex;
  flex-direction: column;
  width: max-content;
  margin: 0 0 34px;
}
.front-page_content > div.wrap section.ideal > div.content > div.text > div > .h2 .flow-bar {
  width: max-content;
}
.front-page_content > div.wrap section.ideal > div.content > div.text > div > .h2 .flow-bar:before {
  background: #414141;
}
.front-page_content > div.wrap section.ideal > div.content > div.text > div > .h2 h2 {
  color: #414141;
  font-size: 5.8rem;
}
.front-page_content > div.wrap section.ideal > div.content > div.text > div > .h2 h2 span {
  color: #00b0ff;
}
.front-page_content > div.wrap section.ideal > div.content > div.text > div > p {
  font-size: 2rem;
  line-height: 2.5;
}
.front-page_content section.interview {
  background: transparent linear-gradient(156deg, #0089c6 0%, #36d1de 100%) 0% 0% no-repeat padding-box;
  position: relative;
  z-index: 1;
  padding: 0 0 200px;
}
.front-page_content section.interview > div {
  display: flex;
  justify-content: space-between;
}
.front-page_content section.interview > div > div:first-of-type {
  width: 39.4375%;
  gap: 12vw 0;
  display: flex;
  flex-direction: column;
  padding: 5vw 13px 0;
}
.front-page_content section.interview > div > div:first-of-type > div h2 {
  font-size: 9.5rem;
  color: transparent;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #00b0ff;
  text-align: center;
  margin: 0 0 6px;
  font-size: clamp(7.5rem, 6vw, 9.5rem);
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: #fff;
}
.front-page_content section.interview > div > div:first-of-type > div h3 {
  color: #ffffff;
  font-size: clamp(2rem, 2.5vw, 3rem);
  text-align: center;
}
.front-page_content section.interview > div > div:first-of-type a {
  background-color: #41b3d8;
  border: 2px solid #ffffff;
  color: #ffffff;
  padding: 29px 38px;
  display: block;
  text-decoration: none;
  margin: 0 auto;
  width: max-content;
  display: flex;
  align-items: center;
  gap: 29px;
}
.front-page_content section.interview > div > div:first-of-type a:hover img {
  transform: translateX(5px);
}
.front-page_content section.interview > div > div:first-of-type a > img {
  transition: all 0.3s ease;
}
.front-page_content section.interview > div > div:last-of-type {
  background: transparent url(../images/interviewlink.jpg) no-repeat scroll left top/cover;
  width: 60.5625%;
  aspect-ratio: 969/678;
  padding: 0 min(4%, 63px) 60px min(4%, 75px);
  display: flex;
}
.front-page_content section.interview > div > div:last-of-type > div.text {
  display: flex;
  justify-content: space-between;
  width: 100%;
  gap: 74px;
  align-self: flex-end;
}
.front-page_content section.interview > div > div:last-of-type > div.text > div {
  display: flex;
  flex-direction: column;
  gap: 39px;
}
.front-page_content section.interview > div > div:last-of-type > div.text > div > div {
  display: flex;
  flex-direction: column;
  gap: 9px;
}
.front-page_content section.interview > div > div:last-of-type > div.text > div > div p {
  background-color: #000000;
  color: #00b0ff;
  font-size: clamp(2rem, 2.1vw, 4rem);
  width: fit-content;
}
.front-page_content section.interview > div > div:last-of-type > div.text > div > p {
  background-color: #ffffff;
  padding: 7px 11px;
  font-size: 2.1rem;
  width: max-content;
}
.front-page_content section.interview > div > div:last-of-type > div.text > a {
  display: block;
  width: 80px;
  height: 80px;
}
.front-page_content section.para {
  background: transparent url(../images/img.jpg) no-repeat scroll center center/cover;
  width: 100%;
  height: 75vh;
  background-attachment: fixed;
  z-index: 1;
  position: relative;
}
.front-page_content section.aboutus {
  background: #fff url(../images/line.svg) no-repeat scroll center center/cover;
  background-attachment: fixed;
  position: relative;
  z-index: 1;
}
.front-page_content section.aboutus > div {
  padding: 248px 21px 139px;
}
.front-page_content section.aboutus > div > h2 {
  font-size: 9.5rem;
  color: transparent;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #00b0ff;
  text-align: center;
  margin: 0 0 6px;
  font-size: 9.5rem;
  -webkit-text-stroke-width: 1px;
}
.front-page_content section.aboutus > div > h3 {
  color: #414141;
  font-size: 3rem;
  margin: 0 0 54px;
  text-align: center;
}
.front-page_content section.aboutus > div > a {
  display: block;
  max-width: 935px;
  margin: 0 auto 60px;
}
.front-page_content section.aboutus > div > ul {
  max-width: 1220px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
.front-page_content section.aboutus > div > ul li {
  width: 31.393442623%;
}
.front-page_content section.aboutus > div > div.slider {
  display: none;
}
.front-page_content section.aboutus > div > div.slider .slick-track a {
  max-width: 300px;
  margin: 0 25px 0 0;
}
.front-page_content section.culture {
  background: #fff url(../images/culture_bg.jpg) no-repeat scroll center center/cover;
  position: relative;
  z-index: 1;
  aspect-ratio: 1600/780;
}
.front-page_content section.culture > div {
  display: flex;
  align-items: center;
  padding: 97px 8.875%;
  justify-content: space-between;
}
.front-page_content section.culture > div > div:first-of-type > h2 {
  font-size: 9.5rem;
  color: transparent;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #00b0ff;
  text-align: center;
  margin: 0 0 6px;
  font-size: clamp(7.5rem, 6vw, 9.5rem);
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: #fff;
}
.front-page_content section.culture > div > div:first-of-type > h3 {
  color: #fff;
  font-size: clamp(2rem, 2.5vw, 3rem);
  text-align: center;
}
.front-page_content section.culture > div > div:last-of-type {
  position: relative;
  width: 58.5106382979%;
  height: 100%;
  aspect-ratio: 770/586;
  max-width: 770px;
}
.front-page_content section.culture > div > div:last-of-type > a {
  position: absolute;
  width: 31.5584415584%;
  transform: scale(1);
}
.front-page_content section.culture > div > div:last-of-type > a:hover {
  transform: scale(1.1);
}
.front-page_content section.culture > div > div:last-of-type > a:nth-of-type(1) {
  left: 0;
  top: 50%;
  transform: translateY(-50%) scale(1);
}
.front-page_content section.culture > div > div:last-of-type > a:nth-of-type(1):hover {
  transform: translateY(-50%) scale(1.1);
}
.front-page_content section.culture > div > div:last-of-type > a:nth-of-type(2) {
  top: 0;
  left: 50%;
  transform: translateX(-50%) scale(1);
}
.front-page_content section.culture > div > div:last-of-type > a:nth-of-type(2):hover {
  transform: translateX(-50%) scale(1.1);
}
.front-page_content section.culture > div > div:last-of-type > a:nth-of-type(3) {
  bottom: 0;
  left: 50%;
  transform: translateX(-50%) scale(1);
}
.front-page_content section.culture > div > div:last-of-type > a:nth-of-type(3):hover {
  transform: translateX(-50%) scale(1.1);
}
.front-page_content section.culture > div > div:last-of-type > a:nth-of-type(4) {
  right: 0;
  top: 50%;
  transform: translateY(-50%) scale(1);
}
.front-page_content section.culture > div > div:last-of-type > a:nth-of-type(4):hover {
  transform: translateY(-50%) scale(1.1);
}
.front-page_content section.overview {
  background-color: #fff;
  position: relative;
  z-index: 1;
}
.front-page_content section.overview > div {
  padding: 100px 21px;
}
.front-page_content section.overview > div > h2 {
  font-size: 9.5rem;
  color: transparent;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #00b0ff;
  text-align: center;
  margin: 0 0 6px;
  -webkit-text-stroke-width: 1px;
}
.front-page_content section.overview > div > h3 {
  font-size: 3rem;
  text-align: center;
  margin: 0 0 73px;
}
.front-page_content section.overview > div > ul {
  max-width: 1230px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
.front-page_content section.overview > div > ul li {
  width: 47.9674796748%;
}
.front-page_content section.overview > div > ul li:first-of-type a {
  background: transparent url(../images/visit_btn_1.png) no-repeat scroll left top/cover;
}
.front-page_content section.overview > div > ul li:first-of-type a:hover {
  background: transparent url(../images/visit_btn_2.png) no-repeat scroll left top/cover;
}
.front-page_content section.overview > div > ul li:last-of-type a {
  background: transparent url(../images/job_btn_1.png) no-repeat scroll left top/cover;
}
.front-page_content section.overview > div > ul li:last-of-type a:hover {
  background: transparent url(../images/job_btn_2.png) no-repeat scroll left top/cover;
}
.front-page_content section.overview > div > ul li a {
  display: block;
  aspect-ratio: 1178/640;
}

#colophon {
  /*background: transparent linear-gradient(143deg, #0089c6 0%, #2fd6dd 100%) 0%
      0% no-repeat padding-box;*/
  position: relative;
  z-index: 1;
}
#colophon > div.site-info {
  /*background-color: #fff;*/
}
#colophon > div.site-info > div {
  border-top: 1px solid #0089c6;
  display: flex;
  justify-content: space-between;
  gap: 21px;
  width: 87.5%;
  margin: 0 auto;
  padding: 32px 0 46px;
  max-width: 1400px;
}
#colophon > div.site-info > div > div > div > p.site-title {
  margin: 0 0 28px;
}
#colophon > div.site-info > div > div > div > p.site-title a {
  color: #0089c6;
  font-size: clamp(2rem, 2.5vw, 3.5rem);
}
#colophon > div.site-info > div > div > div > p.site-title a span {
  font-size: clamp(2rem, 2.5vw, 3rem);
}
#colophon > div.site-info > div > div > div > p.add {
  color: #0089c6;
  line-height: 1.875;
}
#colophon > div.site-info > div > div > div > p.add a:hover {
  text-decoration: underline;
}
#colophon > div.site-info > div > ul {
  display: flex;
  gap: 0 5vw;
  flex: 1;
  width: 100%;
  justify-content: flex-end;
}
#colophon > div.site-info > div > ul > li {
  width: max-content;
}
#colophon > div.site-info > div > ul > li > a {
  color: #0089c6;
  display: block;
  font-weight: bold;
  margin: 0 0 30px;
}
#colophon > div.site-info > div > ul > li ul {
  display: flex;
  flex-direction: column;
  gap: 25px;
}
#colophon > div.site-info > div > ul > li ul li a {
  color: #0089c6;
  display: block;
}
#colophon .nav {
  background: transparent linear-gradient(143deg, #0089c6 0%, #2fd6dd 100%) 0% 0% no-repeat padding-box;
  padding: 37px 0 21px;
}
#colophon .nav > div.menu {
  margin: 0 0 40px;
  padding: 0 6.25%;
}
#colophon .nav > div.menu ul {
  max-width: 1400px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  gap: 4%;
}
#colophon .nav > div.menu ul li {
  height: 100%;
}
#colophon .nav > div.menu ul li:nth-of-type(1) {
  width: 21.7142857143%;
}
#colophon .nav > div.menu ul li:nth-of-type(2) {
  width: 17.1428571429%;
  /*a {
      font-size: clamp(1rem, 1.5vw, 2.5rem);
  }*/
}
#colophon .nav > div.menu ul li:nth-of-type(3) {
  width: 17.1428571429%;
  /*a {
      font-size: clamp(1rem, 1.5vw, 2.5rem);
  }*/
}
#colophon .nav > div.menu ul li:nth-of-type(4) {
  width: 31.4285714286%;
  /*a {
      font-size: clamp(1rem, 1.5vw, 2.5rem);
  }*/
}
#colophon .nav > div.menu ul li a {
  background-color: #1641b434;
  border: 1px solid #ffffff;
  color: #ffffff;
  display: block;
  font-size: clamp(1rem, 1.1vw, 1.9rem);
  padding: 24px 9.2105263158%;
  text-align: center;
}
#colophon .nav > div.img {
  background: transparent url(../images/kvtext.svg) repeat-x scroll left top/cover;
  background-position: center;
  animation: bgloop 30s linear infinite;
  height: 16.1vw;
}
#colophon > small {
  display: block;
  text-align: center;
  position: relative;
}
#colophon > small::before {
  content: "";
  background: transparent url(../images/townbar.svg) no-repeat scroll center top/cover;
  width: 100%;
  height: 60px;
  bottom: 30px;
  position: absolute;
  left: 0;
}
#colophon > small span {
  color: #0089c6;
  display: block;
  position: relative;
  height: 30px;
  background: #fff;
}

body.page #colophon > div.site-info {
  /*background-color: #f5f9fc;*/
}

.home #colophon > div.site-info {
  background-color: #fff;
}

.s,
.s body {
  overflow: hidden;
}

.site-inner > div.site-menu {
  background: linear-gradient(154deg, #0089c6 0%, #36d1de 100%) left/50% 100% no-repeat, #fff right/50% 100% no-repeat;
  position: fixed;
  z-index: 11;
  width: 100%;
  top: 0;
  left: 0;
  height: 100dvh;
  display: none;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}
.site-inner > div.site-menu div.menu_btn {
  background: transparent url(../images/rectuit_menu_blue.svg) no-repeat scroll left top/74px 29px;
  width: 74px;
  height: 29px;
  position: absolute;
  top: 23px;
  right: 39px;
}
.site-inner > div.site-menu > div.wrap {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
.site-inner > div.site-menu > div.wrap > div:first-of-type {
  /*background: transparent
      linear-gradient(154deg, #0089c6 0%, #36d1de 100%) 0% 0%
      no-repeat padding-box;*/
  width: 50%;
  padding: 23px 39px;
}
.site-inner > div.site-menu > div.wrap > div:first-of-type > div.menu-header .site-title {
  margin: 0 0 80px;
}
.site-inner > div.site-menu > div.wrap > div:first-of-type > div.menu-header .site-title a {
  display: flex;
  gap: 0 37px;
  text-decoration: none;
  flex-wrap: wrap;
}
.site-inner > div.site-menu > div.wrap > div:first-of-type > div.menu-header .site-title a:hover {
  opacity: 0.8;
}
.site-inner > div.site-menu > div.wrap > div:first-of-type > div.menu-header .site-title a span {
  color: #fff;
  font-size: 4rem;
  font-weight: bold;
}
.site-inner > div.site-menu > div.wrap > div:first-of-type > div.menu-header > div {
  display: none;
  align-items: flex-end;
  gap: 4px;
  flex-direction: column-reverse;
}
.site-inner > div.site-menu > div.wrap > div:first-of-type > div.menu-header > div > a {
  border: 2px solid #fff;
  color: #ffffff;
  font-size: clamp(1.5rem, 1.8vw, 2.5rem);
  padding: 7px 20px;
}
.site-inner > div.site-menu > div.wrap > div:first-of-type > div.menu-header > div > div.menu-btn {
  background: transparent url(../images/menu.svg) no-repeat scroll left top/51px 20px;
  width: 51px;
  height: 20px;
}
.site-inner > div.site-menu > div.wrap > div:first-of-type div.menu {
  padding: 0 13px;
  max-width: 600px;
  margin: 0 auto;
}
.site-inner > div.site-menu > div.wrap > div:first-of-type div.menu > ul {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.site-inner > div.site-menu > div.wrap > div:first-of-type div.menu > ul > li {
  display: flex;
  gap: 18px;
  align-items: baseline;
}
.site-inner > div.site-menu > div.wrap > div:first-of-type div.menu > ul > li > a {
  color: #ffffff;
  font-size: 2.5rem;
}
.site-inner > div.site-menu > div.wrap > div:first-of-type div.menu > ul > li ul {
  display: flex;
  flex-wrap: wrap;
  flex: 1;
  position: relative;
  bottom: 2px;
  gap: 3px 18px;
}
.site-inner > div.site-menu > div.wrap > div:first-of-type div.menu > ul > li ul li a {
  color: #ffffff;
}
.site-inner > div.site-menu > div.wrap > div:last-of-type {
  /*background-color: #fff;*/
  width: 50%;
  padding: 165px 30px 30px;
}
.site-inner > div.site-menu > div.wrap > div:last-of-type ul {
  display: flex;
  flex-direction: column;
  gap: 25px;
}
.site-inner > div.site-menu > div.wrap > div:last-of-type ul li:nth-of-type(3) a {
  border: 2px solid #0089c6;
  padding: 12px 22px;
}
.site-inner > div.site-menu > div.wrap > div:last-of-type ul li :nth-of-type(4) a {
  font-size: 1.8rem;
}
.site-inner > div.site-menu > div.wrap > div:last-of-type ul li a {
  color: #0089c6;
  font-size: 2.5rem;
  display: block;
  width: max-content;
}
.site-inner > div.site-menu > div.wrap > div:last-of-type > div.img {
  display: none;
  background: transparent url(../images/copytext_blue.svg) repeat-x scroll left top/cover;
  background-position: center;
  animation: bgloop 30s linear infinite;
  height: 25vw;
  position: absolute;
  width: 100%;
  bottom: 0;
}
.site-inner > div.site-menu > div.img {
  background: transparent url(../images/copytext_blue.svg) repeat-x scroll left top/cover;
  background-position: center;
  animation: bgloop 30s linear infinite;
  height: 16.1vw;
  position: absolute;
  width: 100%;
  bottom: 0;
}

.page_content {
  background-color: #f5f9fc;
  padding: 130px 0 137px 0;
}
.page_content > h1 {
  font-size: 9.5rem;
  color: transparent;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #00b0ff;
  text-align: center;
}
.page_content > p {
  color: #00b0ff;
  font-size: 3rem;
  margin: 0 0 114px;
  text-align: center;
  font-weight: bold;
}
.page_content .bread {
  padding: 0 40px;
}
.page_content .bread > div {
  display: flex;
  gap: 5px;
  max-width: 1600px;
  margin: 0 auto;
}
.page_content .bread > div > * {
  color: #00b0ff;
  font-size: 1.5rem;
}
.page-interview .site-inner,
.page-interview01 .site-inner,
.page-interview02 .site-inner {
  background-image: radial-gradient(circle, #6fd2ff 1px, transparent 1px);
  background-size: 32px 32px;
  background-color: #f5f9fc;
}
.page-interview .site-inner .page_content,
.page-interview01 .site-inner .page_content,
.page-interview02 .site-inner .page_content {
  background: none;
  padding-bottom: 0;
}
.page-interview .site-inner #colophon > div.site-info,
.page-interview01 .site-inner #colophon > div.site-info,
.page-interview02 .site-inner #colophon > div.site-info {
  background-color: #f5f9fc;
}

.page-interview .site-inner .page_content {
  padding-bottom: 137px;
}

.page-aboutus #colophon > div.site-info {
  background-color: #f5f9fc;
}

.page-office-tour .site-inner {
  background-image: repeating-linear-gradient(to right, #f5f9fc 0, #f5f9fc 1px, transparent 1px, transparent 33px), repeating-linear-gradient(to bottom, #f5f9fc 0, #f5f9fc 1px, transparent 1px, transparent 33px);
  background-size: 33px 33px;
}
.page-office-tour .site-inner .page_content {
  background: none;
}

.page-interview_content .content ul {
  max-width: 1350px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 75px;
  padding: 0 21px;
}
.page-interview_content .content ul li {
  width: 81.4814814815%;
  margin: 0 auto 0 0;
}
.page-interview_content .content ul li:nth-of-type(even) {
  margin: 0 0 0 auto;
}
.page-interview_content .content ul li:nth-of-type(even) a > span {
  left: 0;
}
.page-interview_content .content ul li a {
  display: block;
  position: relative;
  text-decoration: none;
}
.page-interview_content .content ul li a:hover {
  opacity: 0.8;
}
.page-interview_content .content ul li a:hover > div.img img {
  transform: scale(1.05);
  clip-path: polygon(0% 0%, 97.7% 0%, 92.8% 100%, 0% 100%);
  -webkit-clip-path: polygon(0% 0%, 97.7% 0%, 92.8% 100%, 0% 100%);
}
.page-interview_content .content ul li a::before {
  content: "";
  display: block;
}
.page-interview_content .content ul li a > div.img {
  margin: 0 0 58px auto;
  width: 90.9090909091%;
  overflow: hidden;
  position: relative;
}
.page-interview_content .content ul li a > div.img::before {
  background: transparent url(../images/linkbtn.png) no-repeat scroll left top/80px 80px;
  content: "";
  display: block;
  width: 80px;
  height: 80px;
  position: absolute;
  z-index: 1;
  right: 92px;
  bottom: 35px;
}
.page-interview_content .content ul li a > div.img img {
  transition: all 0.3s ease;
  clip-path: polygon(0% 0%, 100% 0%, 95% 100%, 0% 100%);
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 95% 100%, 0% 100%);
}
.page-interview_content .content ul li a > span {
  color: #00b0ff;
  font-size: clamp(18rem, 21vw, 28.5rem);
  position: absolute;
  top: 25%;
  left: -24px;
  color: transparent;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #00b0ff;
  line-height: 1;
}
.page-interview_content .content ul li a > div.h2 {
  position: absolute;
  bottom: 100px;
  left: 0;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 9px;
  bottom: 73px;
}
.page-interview_content .content ul li a > div.h2 .flow-bar2 {
  width: max-content;
}
.page-interview_content .content ul li a > div.h2 .flow-bar2:before {
  background: #000;
}
.page-interview_content .content ul li a > div.h2 .move .flow-txt {
  opacity: 1;
  animation: none;
}
.page-interview_content .content ul li a > div.h2 .flow-txt {
  color: #00b0ff;
  position: relative;
  z-index: 1;
  font-size: clamp(2rem, 3vw, 4rem);
  padding: 0 13px;
  transition: all 0.3s ease;
}
.page-interview_content .content ul li a > p {
  background-color: #ffffff;
  font-size: 2.1rem;
  padding: 7px 11px;
  width: max-content;
}

.page-interviewpage_content > div.content {
  padding: 113px 21px 100px;
}
.page-interviewpage_content > div.content > div.wrap {
  max-width: 1250px;
  margin: 0 auto;
}
.page-interviewpage_content > div.content > div.wrap div.key {
  position: relative;
  margin: 0 0 131px;
}
.page-interviewpage_content > div.content > div.wrap div.key::before {
  content: "";
  display: block;
}
.page-interviewpage_content > div.content > div.wrap div.key > div.img {
  margin: 0 0 58px auto;
  width: 90.9090909091%;
  overflow: hidden;
}
.page-interviewpage_content > div.content > div.wrap div.key > div.img img {
  transition: all 0.3s ease;
  clip-path: polygon(0% 0%, 100% 0%, 95% 100%, 0% 100%);
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 95% 100%, 0% 100%);
}
.page-interviewpage_content > div.content > div.wrap div.key > span {
  color: #00b0ff;
  font-size: clamp(18rem, 21vw, 28.5rem);
  position: absolute;
  bottom: 31%;
  left: -10px;
  color: transparent;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #00b0ff;
  line-height: 1;
}
.page-interviewpage_content > div.content > div.wrap div.key > div.h2 {
  position: absolute;
  bottom: 100px;
  left: 0;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 9px;
  bottom: 73px;
}
.page-interviewpage_content > div.content > div.wrap div.key > div.h2 .flow-bar2 {
  width: max-content;
}
.page-interviewpage_content > div.content > div.wrap div.key > div.h2 .flow-bar2:before {
  background: #000;
}
.page-interviewpage_content > div.content > div.wrap div.key > div.h2 .move .flow-txt {
  opacity: 1;
  animation: none;
}
.page-interviewpage_content > div.content > div.wrap div.key > div.h2 .flow-txt {
  color: #00b0ff;
  position: relative;
  z-index: 1;
  font-size: clamp(2rem, 3vw, 4rem);
  padding: 0 13px;
  transition: all 0.3s ease;
}
.page-interviewpage_content > div.content > div.wrap div.key > p {
  background-color: #ffffff;
  font-size: 2.1rem;
  padding: 7px 11px;
  width: max-content;
}
.page-interviewpage_content > div.content > div.wrap > div.main {
  max-width: 1250px;
  margin: 0 auto 92px;
}
.page-interviewpage_content > div.content > div.wrap > div.main > div {
  display: flex;
  justify-content: space-between;
  position: relative;
}
.page-interviewpage_content > div.content > div.wrap > div.main > div:first-of-type > img {
  top: 50%;
  transform: translateY(-50%);
}
.page-interviewpage_content > div.content > div.wrap > div.main > div:first-of-type > div {
  padding-bottom: 218px;
}
.page-interviewpage_content > div.content > div.wrap > div.main > div:not(:first-of-type) > div {
  padding-top: 0;
}
.page-interviewpage_content > div.content > div.wrap > div.main > div > img {
  position: absolute;
  width: 40%;
}
.page-interviewpage_content > div.content > div.wrap > div.main > div > div {
  background-color: #fff;
  width: 64%;
  padding: 100px 4% 80px 12%;
  margin: 0 0 0 auto;
}
.page-interviewpage_content > div.content > div.wrap > div.main > div > div h2 {
  color: #00b0ff;
  font-size: 2rem;
  font-weight: bold;
  margin: 0 0 30px;
}
.page-interviewpage_content > div.content > div.wrap > div.main > div > div p {
  line-height: 1.875;
}
.page-interviewpage_content > div.content > div.wrap > div.later {
  max-width: 1085px;
  margin: 0 auto 150px;
  display: flex;
  flex-direction: column;
  gap: 80px;
}
.page-interviewpage_content > div.content > div.wrap > div.later > div {
  width: 70%;
}
.page-interviewpage_content > div.content > div.wrap > div.later > div:nth-of-type(even) {
  margin: 0 0 0 auto;
}
.page-interviewpage_content > div.content > div.wrap > div.later > div h2 {
  color: #00b0ff;
  font-size: 3.5rem;
  padding: 0 0 0 50px;
  font-weight: bold;
}
.page-interviewpage_content > div.content > div.wrap > div.later > div > div {
  background-color: #fff;
  padding: 50px;
  position: relative;
  line-height: 2.2222222222;
  border: 5px solid #00b0fe;
}
.page-interviewpage_content > div.content > div.wrap > div.later > div > div::before {
  content: "";
  display: block;
  position: absolute;
  right: -50px;
  z-index: 2;
  clip-path: polygon(0 0, 100% 0, 5% 100%, 0% 100%);
  width: 51px;
  height: 100%;
  top: -0.2px;
  background-color: #fff;
}
.page-interviewpage_content > div.content > div.wrap > div.later > div > div::after {
  content: "";
  display: block;
  position: absolute;
  right: -58px;
  z-index: 1;
  clip-path: polygon(0 0, 98% 0, 4% 105%, 0% 100%);
  width: 55px;
  height: calc(100% + 10px);
  top: -5px;
  background-color: #00b0ff;
}
.page-interviewpage_content > div.content > div.wrap > div.later > div > div p {
  color: #00b0ff;
  font-size: 1.8rem;
}
.page-interviewpage_content div.more-interview {
  background-color: #f5f9fc;
  padding: 0 21px 62px;
}
.page-interviewpage_content div.more-interview > div.more {
  margin: 0 auto 45px;
  max-width: 1130px;
}
.page-interviewpage_content div.more-interview > div.more > h2 {
  font-size: 9.5rem;
  color: transparent;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #00b0ff;
  text-align: center;
}
.page-interviewpage_content div.more-interview > div.more > p {
  color: #00b0ff;
  font-size: 2.5rem;
  text-align: center;
  margin: 0 0 74px;
}
.page-interviewpage_content div.more-interview > div.more ul {
  margin: 0 auto;
  display: flex;
}
.page-interviewpage_content div.more-interview > div.more ul li {
  width: 49%;
  margin: 0 auto 0 0;
}
.page-interviewpage_content div.more-interview > div.more ul li:nth-of-type(even) {
  margin: 0 0 0 auto;
}
.page-interviewpage_content div.more-interview > div.more ul li a {
  display: block;
  position: relative;
  text-decoration: none;
}
.page-interviewpage_content div.more-interview > div.more ul li a:hover {
  opacity: 0.8;
}
.page-interviewpage_content div.more-interview > div.more ul li a:hover > div.img img {
  transform: scale(1.05);
}
.page-interviewpage_content div.more-interview > div.more ul li a::before {
  content: "";
  display: block;
}
.page-interviewpage_content div.more-interview > div.more ul li a > div.img {
  margin: 0 0 35px auto;
  width: 90.9090909091%;
  overflow: hidden;
  position: relative;
}
.page-interviewpage_content div.more-interview > div.more ul li a > div.img::before {
  background: transparent url(../images/linkbtn.png) no-repeat scroll left top/62px 62px;
  content: "";
  display: block;
  width: 62px;
  height: 62px;
  position: absolute;
  z-index: 1;
  right: 20%;
  bottom: 17px;
}
.page-interviewpage_content div.more-interview > div.more ul li a > div.img img {
  transition: all 0.3s ease;
  clip-path: polygon(15% 0%, 88% 0%, 85% 100%, 15% 100%);
  -webkit-clip-path: polygon(15% 0%, 88% 0%, 85% 100%, 15% 100%);
}
.page-interviewpage_content div.more-interview > div.more ul li a > span {
  font-size: clamp(10rem, 15vw, 18.6rem);
  position: absolute;
  top: 0;
  left: 0;
  color: transparent;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #00b0ff;
  line-height: 1.3;
}
.page-interviewpage_content div.more-interview > div.more ul li a > div.h2 {
  position: absolute;
  bottom: 100px;
  left: 0;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 9px;
  bottom: 50px;
}
.page-interviewpage_content div.more-interview > div.more ul li a > div.h2 .flow-bar2 {
  width: max-content;
}
.page-interviewpage_content div.more-interview > div.more ul li a > div.h2 .flow-bar2:before {
  background: #000;
}
.page-interviewpage_content div.more-interview > div.more ul li a > div.h2 .move .flow-txt {
  opacity: 1;
  animation: none;
}
.page-interviewpage_content div.more-interview > div.more ul li a > div.h2 .flow-txt {
  color: #00b0ff;
  position: relative;
  z-index: 1;
  font-size: clamp(1.8rem, 2vw, 2.6rem);
  padding: 0 13px;
  transition: all 0.3s ease;
}
.page-interviewpage_content div.more-interview > div.more ul li a > p {
  background-color: #ffffff;
  font-size: 1.3rem;
  padding: 7px 11px;
  width: max-content;
}
.page-interviewpage_content div.more-interview > a {
  background-color: #fff;
  border: 2px solid #00b0ff;
  display: flex;
  padding: 19px 38px 19px 60px;
  width: max-content;
  margin: 0 auto;
  align-items: center;
  text-decoration: none;
  gap: 56px;
}
.page-interviewpage_content div.more-interview > a:hover img {
  transform: translateX(5px);
}
.page-interviewpage_content div.more-interview > a span {
  color: #00b0ff;
}
.page-interviewpage_content div.more-interview > a img {
  width: 45px;
  transition: all 0.3s ease;
}

.page-aboutus_content > div.content {
  display: flex;
  flex-direction: column;
  gap: 100px;
  padding: 0 21px;
}
.page-aboutus_content > div.content section {
  background-color: #fff;
  max-width: 1000px;
  margin: 0 auto;
}
.page-aboutus_content > div.content section.const div.main > div {
  display: flex;
  flex-direction: column;
  gap: 100px;
}
.page-aboutus_content > div.content section div.wrap div.head {
  position: relative;
  padding: 82px 0 0 101px;
}
.page-aboutus_content > div.content section div.wrap div.head::before {
  background: transparent linear-gradient(155deg, #0089c6 0%, #36d1de 100%) 0% 0% no-repeat padding-box;
  content: "";
  display: block;
  width: 80px;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  clip-path: polygon(0% 0%, 100% 0%, 75% 100%, 0% 100%);
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 75% 100%, 0% 100%);
}
.page-aboutus_content > div.content section div.wrap div.head div h2 {
  color: #000;
  font-size: 3rem;
  font-weight: bold;
}
.page-aboutus_content > div.content section div.main {
  padding: 45px 80px 100px;
}
.page-aboutus_content > div.content section div.main > h3 {
  color: #0089c6;
  font-size: 2rem;
  margin: 0 0 20px;
}
.page-aboutus_content > div.content section div.main > p {
  line-height: 1.875;
  margin: 0 0 21px;
}
.page-aboutus_content > div.content section div.main > img {
  margin: 0 0 21px;
}
.page-aboutus_content > div.content section div.main > div > div {
  /*> h3 {
      font-size: 2.5rem;
      position: relative;
      width: max-content;
      margin: 0 auto;
      &::before {
          background: transparent
              linear-gradient(
                  143deg,
                  #0089c6 0%,
                  #36d1de 100%
              )
              0% 0% no-repeat padding-box;
          content: "";
          display: block;
          height: 3px;
          width: 100%;
          position: absolute;
          bottom: 0;
          left: 0;
      }
  }*/
}
.page-aboutus_content > div.content section div.main > div > div:has(> h3) ul {
  margin: 0 0 50px;
}
.page-aboutus_content > div.content section div.main > div > div > h2 {
  color: #0089c6;
  font-size: 2.5rem;
  margin: 0 0 21px;
  display: flex;
  align-items: center;
}
.page-aboutus_content > div.content section div.main > div > div > h2 span {
  color: transparent;
  font-size: 6rem;
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: #000;
  margin: 0 15px 0 0;
  line-height: 1;
  position: relative;
  bottom: 6px;
}
.page-aboutus_content > div.content section div.main > div > div > p {
  margin: 0 0 13px;
}
.page-aboutus_content > div.content section div.main > div > div > ul {
  background: transparent linear-gradient(165deg, #0089c6 0%, #36d1de 100%) 0% 0% no-repeat padding-box;
  padding: 30px;
  position: relative;
  margin: 0 0 50px;
}
.page-aboutus_content > div.content section div.main > div > div > ul::before {
  content: "";
  display: block;
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  background-color: #fff;
  position: absolute;
  left: calc(-50% + 10px);
  top: calc(-50% + 10px);
  transform: translate(50%, 50%);
}
.page-aboutus_content > div.content section div.main > div > div > ul li {
  line-height: 1.875;
  position: relative;
}
.page-aboutus_content > div.content section div.main > div > div > div.h3 {
  width: fit-content;
  padding: 0 30px;
  margin: 0 auto;
}
.page-aboutus_content > div.content section div.main > div > div > div.h3 > h3 {
  display: inline;
  font-size: 2.25rem;
  background: transparent linear-gradient(143deg, #0089c6 0%, #36d1de 100%) 0% 0% no-repeat padding-box;
  background-repeat: no-repeat;
  background-position: 0px 100%;
  background-size: calc(100% - 0px) 3px;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}
.page-aboutus_content > div.content section.know > div.wrap div.main > h3 {
  color: #0089c6;
  font-size: 2rem;
  margin: 0 0 20px;
}
.page-aboutus_content > div.content section.know > div.wrap div.main > h3.h3_2 {
  margin: 0 0 83px;
}
.page-aboutus_content > div.content section.know > div.wrap div.main > p {
  margin: 0 0 20px;
}
.page-aboutus_content > div.content section.know > div.wrap div.main > img {
  margin: 0 0 50px;
}
.page-aboutus_content > div.content section.know div.business {
  margin: 0 auto 60px;
  max-width: 800px;
}
.page-aboutus_content > div.content section.know div.business > h2 {
  color: #0089c6;
  font-size: 2.5rem;
  margin: 0 0 26px;
}
.page-aboutus_content > div.content section.know div.business ul {
  background: transparent linear-gradient(165deg, #0089c6 0%, #36d1de 100%) 0% 0% no-repeat padding-box;
  padding: 30px;
  position: relative;
}
.page-aboutus_content > div.content section.know div.business ul::before {
  content: "";
  display: block;
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  background-color: #fff;
  position: absolute;
  left: calc(-50% + 10px);
  top: calc(-50% + 10px);
  transform: translate(50%, 50%);
}
.page-aboutus_content > div.content section.know div.business ul li {
  line-height: 1.875;
  position: relative;
}
.page-aboutus_content > div.content section.know div.flow {
  margin: 0 auto 97px;
  max-width: 800px;
}
.page-aboutus_content > div.content section.know div.flow > h2 {
  color: #0089c6;
  font-size: 2.5rem;
  margin: 0 0 15px;
}
.page-aboutus_content > div.content section.know div.flow > div {
  background-color: #36d1de;
  border-bottom: 4px solid #414141;
  display: flex;
  justify-content: space-between;
  gap: 30px;
  margin: 0 0 21px;
  padding: 30px 26px;
  position: relative;
}
.page-aboutus_content > div.content section.know div.flow > div:last-of-type::before {
  display: none;
}
.page-aboutus_content > div.content section.know div.flow > div::before {
  background-color: #000;
  content: "";
  display: block;
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  width: 30px;
  height: 15px;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -18px;
}
.page-aboutus_content > div.content section.know div.flow > div:last-of-type {
  margin: 0;
}
.page-aboutus_content > div.content section.know div.flow > div > p {
  color: #ffffff;
  font-size: 2.5rem;
  line-height: 1;
}
.page-aboutus_content > div.content section.know div.flow > div > div {
  flex: 1;
}
.page-aboutus_content > div.content section.know div.flow > div > div h3 {
  font-size: 1.8rem;
  font-weight: bold;
}
.page-aboutus_content > div.content section.know div.flow > div > div ul li {
  line-height: 1.875;
}
.page-aboutus_content > div.content section.know div.skill {
  margin: 0 auto 60px;
  max-width: 800px;
}
.page-aboutus_content > div.content section.know div.skill > h2 {
  color: #0089c6;
  font-size: 2.5rem;
  margin: 0 0 15px;
}
.page-aboutus_content > div.content section.know div.skill > div {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 30px 0;
}
.page-aboutus_content > div.content section.know div.skill > div div {
  border: 3px solid #0089c6;
  border-radius: 22px;
  padding: 29px 5%;
  width: 47.875%;
}
.page-aboutus_content > div.content section.know div.skill > div div h3 {
  font-size: 2.5rem;
  margin: 0 0 29px;
  text-align: center;
}
.page-aboutus_content > div.content section.know div.skill > div div p {
  line-height: 1.875;
}
.page-aboutus_content > div.content section.know div.day {
  margin: 0 auto;
  max-width: 800px;
}
.page-aboutus_content > div.content section.know div.day > h2 {
  color: #0089c6;
  font-size: 2.5rem;
  margin: 0 0 36px;
}
.page-aboutus_content > div.content section.know div.day > div {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
.page-aboutus_content > div.content section.know div.day > div div {
  background-color: #36d1de;
  padding: 31px 40px;
  position: relative;
}
.page-aboutus_content > div.content section.know div.day > div div > span {
  background-color: #ffffff;
  border: 3px solid #000;
  border-radius: 5px;
  display: block;
  font-size: 2.5rem;
  position: absolute;
  left: 40px;
  top: -24px;
  padding: 0 14px;
  font-weight: bold;
}
.page-aboutus_content > div.content section.know div.day > div div h3 {
  color: #ffffff;
  font-size: 2rem;
  margin: 0 0 10px;
}
.page-aboutus_content > div.content section.know div.day > div div p {
  line-height: 1.875;
}
.page-aboutus_content > div.content section.office div.wrap div.main div.business ul {
  display: flex;
  flex-direction: column;
  gap: 25px;
}
.page-culture_content {
  background-color: #fff;
}
.page-culture_content > div.content {
  display: flex;
  flex-direction: column;
  gap: 100px;
  padding: 0 21px;
}
.page-culture_content > div.content > div.wrap {
  display: flex;
  flex-direction: column;
  gap: 100px 0;
}
.page-culture_content > div.content > div.wrap section {
  background-color: #fff;
  max-width: 1200px;
  margin: 0 auto;
}
.page-culture_content > div.content > div.wrap section div.head {
  position: relative;
  margin: 0 0 50px;
  padding: 82px 0 0 101px;
}
.page-culture_content > div.content > div.wrap section div.head::before {
  background: transparent linear-gradient(155deg, #0089c6 0%, #36d1de 100%) 0% 0% no-repeat padding-box;
  content: "";
  display: block;
  width: 80px;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  clip-path: polygon(0% 0%, 100% 0%, 75% 100%, 0% 100%);
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 75% 100%, 0% 100%);
}
.page-culture_content > div.content > div.wrap section div.head div h2 {
  color: #000;
  font-size: 3rem;
  font-weight: bold;
}
.page-culture_content > div.content > div.wrap section.numbers div.main > p, .page-culture_content > div.content > div.wrap section.bene div.main > p {
  margin: 0 0 30px;
}
.page-culture_content > div.content > div.wrap section.numbers div.main > div, .page-culture_content > div.content > div.wrap section.bene div.main > div {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 60px 0px;
}
.page-culture_content > div.content > div.wrap section.numbers div.main > div img, .page-culture_content > div.content > div.wrap section.bene div.main > div img {
  filter: drop-shadow(2px 0px 8px rgba(0, 0, 0, 0.1));
  width: 31.5%;
}
.page-culture_content > div.content > div.wrap section.career div.main > h3 {
  font-size: 2.5rem;
  margin: 0 0 30px;
}
.page-culture_content > div.content > div.wrap section.edu div.main {
  /*
  > div {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      gap: 20px 0;
      margin: 0 0 100px;
      div {
          padding: 36px 40px;
          width: 32.25%;
          background: transparent linear-gradient(165deg, #0089c6 0%, #36d1de 100%) 0% 0% no-repeat padding-box;
          padding: 30px;
          position: relative;
          &::before {
              content: "";
              display: block;
              width: calc(100% - 10px);
              height: calc(100% - 10px);
              background-color: #fff;
              position: absolute;
              left: calc(-50% + 10px);
              top: calc(-50% + 10px);
              transform: translate(50%, 50%);
          }
          h3 {
              color: #0089c6;
              font-size: 2rem;
              margin: 0 0 11px;
              position: relative;
          }
          p {
              line-height: 1.875;
              position: relative;
          }
      }
  }*/
}
.page-culture_content > div.content > div.wrap section.edu div.main > h3 {
  font-size: 2.5rem;
  margin: 0 0 50px;
}
.page-culture_content > div.content > div.wrap section.edu div.main > div.img {
  margin: 0 0 100px;
}
.page-office_content > div.content {
  display: flex;
  flex-direction: column;
  gap: 50px;
  padding: 0 21px;
}
.page-office_content > div.content > p {
  text-align: center;
  font-size: 2rem;
}
.page-office_content > div.content section.overview {
  border: 5px solid;
  border-image: linear-gradient(165deg, #0089c6 0%, #36d1de 100%) 1;
  max-width: 1200px;
  margin: 0 auto;
  padding: 30px 50px;
  width: 100%;
}
.page-office_content > div.content section.overview > h2 {
  font-size: 3rem;
  margin: 0 0 21px;
  position: relative;
}
.page-office_content > div.content section.overview > div {
  display: flex;
  flex-direction: column;
  gap: 13px;
  position: relative;
}
.page-office_content > div.content section.overview > div div {
  display: flex;
  justify-content: space-between;
  gap: 30px;
}
.page-office_content > div.content section.overview > div div h3 {
  color: #00b0ff;
  font-weight: bold;
  width: 100px;
}
.page-office_content > div.content section.overview > div div p {
  flex: 1;
}
.page-office_content > div.content section.overview > div div p a {
  text-decoration: underline;
}
.page-office_content > div.content section.overview > div div p a:hover {
  text-decoration: none;
}
.page-office_content > div.content section.program {
  border: 5px solid;
  border-image: linear-gradient(165deg, #0089c6 0%, #36d1de 100%) 1;
  max-width: 1200px;
  margin: 0 auto;
  padding: 30px 0 107px 50px;
  width: 100%;
  /*div.slider {
      .slick-track {
          display: flex;
          align-items: stretch;
      }
      div.box {
          background-color: #fff;
          border: 5px solid #3cc786;
          border-radius: 22px;
          padding: 18px 20px;
          margin: 0 20px 0 0;
          max-width: 300px;
          height: auto;
          min-height: 480px;
          > span {
              color: #3cc786;
              display: block;
              font-size: 3rem;
              font-weight: bold;
              margin: 0 0 10px;
          }
          > div {
              min-height: 65px;
              margin: 0 0 15px;
              > h2 {
                  font-size: 2rem;
                  display: inline;
                  background: transparent linear-gradient(143deg, #3cc786 0%, #3cc786 100%) 0% 0% no-repeat padding-box;
                  background-repeat: no-repeat;
                  background-position: 0 100%;
                  background-size: 100% 3px;
                  box-decoration-break: clone;
                  -webkit-box-decoration-break: clone;
              }
          }

          > img {
              margin: 0 0 15px;
          }
          > p {
          }
      }
  } //slider
  */
}
.page-office_content > div.content section.program > h2 {
  color: #3cc786;
  font-size: 3rem;
  margin: 0 0 3px;
}
.page-office_content > div.content section.program > h4 {
  font-size: 2rem;
  font-weight: bold;
  margin: 0 0 30px;
}
.page-office_content > div.content section.program > p {
  margin: 0 0 40px;
}
.page-office_content > div.content section.program > h3 {
  font-size: 2.5rem;
  margin: 0 0 26px;
}
.page-office_content > div.content section.program div.scroll {
  width: 100%;
  overflow-x: scroll;
  padding: 0 0 13px;
}
.page-office_content > div.content section.program div.scroll > div {
  display: flex;
  align-items: stretch;
  width: 1270px;
}
.page-office_content > div.content section.program div.scroll > div div.box {
  background-color: #fff;
  border: 5px solid #3cc786;
  border-radius: 22px;
  padding: 18px 20px;
  margin: 0 20px 0 0;
  max-width: 300px;
  height: auto;
  min-height: 480px;
}
.page-office_content > div.content section.program div.scroll > div div.box > span {
  color: #3cc786;
  display: block;
  font-size: 3rem;
  font-weight: bold;
  margin: 0 0 10px;
}
.page-office_content > div.content section.program div.scroll > div div.box > div {
  min-height: 65px;
  margin: 0 0 15px;
}
.page-office_content > div.content section.program div.scroll > div div.box > div > h2 {
  font-size: 2rem;
  display: inline;
  background: transparent linear-gradient(143deg, #3cc786 0%, #3cc786 100%) 0% 0% no-repeat padding-box;
  background-repeat: no-repeat;
  background-position: 0 100%;
  background-size: 100% 3px;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}
.page-office_content > div.content section.program div.scroll > div div.box > img {
  margin: 0 0 15px;
}
.page-office_content > div.content section.contact {
  border: 5px solid;
  border-image: linear-gradient(165deg, #0089c6 0%, #36d1de 100%) 1;
  max-width: 1200px;
  margin: 0 auto;
  padding: 30px 0 107px 50px;
  width: 100%;
}
.page-office_content > div.content section.contact > h2 {
  font-size: 3rem;
  font-weight: bold;
  margin: 0 0 40px;
}
.page-office_content > div.content section.contact > div {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin: 0 0 40px;
}
.page-office_content > div.content section.contact > div div {
  display: flex;
  justify-content: space-between;
}
.page-office_content > div.content section.contact > div div > h3 {
  color: #0089c6;
  font-size: 2rem;
  font-weight: bold;
  width: 100px;
}
.page-office_content > div.content section.contact > div div > p {
  font-size: 2rem;
  flex: 1;
}
.page-office_content > div.content section.contact > div div > p a {
  text-decoration: underline;
}
.page-office_content > div.content section.contact > div div > p a:hover {
  text-decoration: none;
}
.page-office_content > div.content section.contact > a {
  background-color: #fff;
  border: 2px solid #00b0ff;
  display: flex;
  padding: 19px 38px 19px 60px;
  width: max-content;
  margin: 0 auto;
  align-items: center;
  text-decoration: none;
  gap: 56px;
}
.page-office_content > div.content section.contact > a:hover img {
  transform: translateX(5px);
}
.page-office_content > div.content section.contact > a span {
  color: #00b0ff;
}
.page-office_content > div.content section.contact > a img {
  width: 45px;
  transition: all 0.3s ease;
}

.job-content .content section.job-tabs_wrap {
  max-width: 1030px;
  margin: 0 auto 104px;
  padding: 0 21px;
}
.job-content .content section.job-tabs_wrap ul.job-tabs {
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 60px;
  gap: 0.9708737864%;
  /*&::before{
      content:"";
      display: block;
      width: 24.27184466019417%;
      order:1;
  }
  &::after{
      content:"";
      display: block;
      width: 24.27184466019417%;

  }*/
}
.job-content .content section.job-tabs_wrap ul.job-tabs li {
  display: flex;
  width: 24.2718446602%;
}
.job-content .content section.job-tabs_wrap ul.job-tabs li.previous-graduate a {
  background-color: #b6dee2;
  border: 4px solid #36d1de;
  color: #36d1de;
}
.job-content .content section.job-tabs_wrap ul.job-tabs li a {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #0089c6;
  font-size: 1.8rem;
  background-color: #69a9c6;
  padding: 15px 8px;
  border: 4px solid #0089c6;
  text-align: center;
  text-decoration: none;
  /*&::before{
      background-color: #69A9C6;
      content:"";
      display: block;
  }*/
}
.job-content .content section.job-tabs_wrap ul.job-tabs li a:hover, .job-content .content section.job-tabs_wrap ul.job-tabs li a.is-active {
  background-color: #fff;
  color: #000000;
}
.job-content .content section.job-tabs_wrap .job-panels .job-panel article .job-article_body {
  display: flex;
  flex-direction: column;
  gap: 26px;
}
.job-content .content section.job-tabs_wrap .job-panels .job-panel article .job-article_body > div {
  display: flex;
  justify-content: space-between;
}
.job-content .content section.job-tabs_wrap .job-panels .job-panel article .job-article_body > div h3 {
  font-weight: bold;
  width: 110px;
  line-height: 1.875;
}
.job-content .content section.job-tabs_wrap .job-panels .job-panel article .job-article_body > div p {
  flex: 1;
  line-height: 1.875;
}
.job-content .content section.job-tabs_wrap .job-panels .job-panel article .job-article_body > p {
  border: 4px solid #dddddd;
  background-color: #fff;
  padding: 28px;
  text-align: center;
}
.job-content .content > a {
  background-color: #fff;
  border: 2px solid #00b0ff;
  display: flex;
  padding: 19px 38px 19px 60px;
  width: max-content;
  margin: 0 auto;
  align-items: center;
  text-decoration: none;
  gap: 56px;
}
.job-content .content > a:hover img {
  transform: translateX(5px);
}
.job-content .content > a span {
  color: #00b0ff;
}
.job-content .content > a img {
  width: 45px;
  transition: all 0.3s ease;
}

.page-entry-form .page_content {
  background-color: #fff;
}

.page-entry-form_content .content {
  padding: 0 21px;
}
.page-entry-form_content .content > div.wrap {
  max-width: 1000px;
  margin: 0 auto;
}
.page-entry-form_content .content > div.wrap > p {
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
  margin: 0 0 45px;
}
.page-entry-form_content .content > div.wrap > div.box {
  box-shadow: 0px 3px 6px #00000029;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16%;
  padding: 44px 13px;
  margin: 0 0 51px;
}
.page-entry-form_content .content > div.wrap > div.box > p {
  font-size: 2rem;
  font-weight: bold;
}
.page-entry-form_content .content > div.wrap > div.box > div > p {
  font-size: 2rem;
  font-weight: bold;
}
.page-entry-form_content .content > div.wrap > div.box > div div {
  display: flex;
  gap: 10px;
  align-items: baseline;
}
.page-entry-form_content .content > div.wrap > div.box > div div a {
  color: #00b0ff;
  font-size: 5rem;
  font-weight: bold;
  text-decoration: none;
}
.page-entry-form_content .content > div.wrap > div.box > div div a:hover {
  text-decoration: underline;
}
.page-entry-form_content .content > div.wrap > div.box > div > p {
  font-size: 2rem;
  text-align: center;
}
.page-entry-form_content .content > div.wrap div.entry-form {
  padding: 80px 100px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.page-entry-form_content .content > div.wrap div.entry-form > div {
  /*&.submit {
      &:hover {
          img {
              transform: translateX(5px);
          }
      }
      p {
          background-color: #fff;
          border: 2px solid #00b0ff;
          cursor: pointer;
          display: flex;
          padding: 19px 38px 19px 60px;
          width: max-content;
          margin: 0 auto;
          align-items: center;
          text-decoration: none;
          gap: 56px;

          input {
              color: #00b0ff;
              font-weight: bold;
          }
          img {
              width: 45px;
              transition: all 0.3s ease;
          }
      }
  } //submit*/
}
.page-entry-form_content .content > div.wrap div.entry-form > div.radio {
  margin: 0 0 14px;
}
.page-entry-form_content .content > div.wrap div.entry-form > div h3 {
  color: #00b0ff;
  font-size: 1.6rem;
  font-weight: bold;
  margin: 0 0 21px;
}
.page-entry-form_content .content > div.wrap div.entry-form > div h3 span {
  color: #000;
  margin: 0 0 0 21px;
}
.page-entry-form_content .content > div.wrap div.entry-form > div > div.radio .wpcf7-form-control {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.page-entry-form_content .content > div.wrap div.entry-form > div > div.radio .wpcf7-form-control .wpcf7-list-item label {
  display: flex;
  align-items: center;
}
.page-entry-form_content .content > div.wrap div.entry-form > div > div input[type=radio],
.page-entry-form_content .content > div.wrap div.entry-form > div > div input[type=checkbox] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 22px;
  height: 22px;
  background-color: #fff;
  border: 1px solid #707070;
  border-radius: 50%;
  outline: none;
  margin: 0 13px 0 0;
  position: relative;
  top: 2px;
}
.page-entry-form_content .content > div.wrap div.entry-form > div > div input[type=radio]:checked,
.page-entry-form_content .content > div.wrap div.entry-form > div > div input[type=checkbox]:checked {
  background-color: #fff;
}
.page-entry-form_content .content > div.wrap div.entry-form > div > div input[type=radio]:checked::after,
.page-entry-form_content .content > div.wrap div.entry-form > div > div input[type=checkbox]:checked::after {
  content: "";
  display: block;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background-color: #00b0ff;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.page-entry-form_content .content > div.wrap div.entry-form > div > div input[type=checkbox] {
  border-radius: 0;
}
.page-entry-form_content .content > div.wrap div.entry-form > div > div input[type=checkbox]:checked::after {
  border-radius: 0;
}
.page-entry-form_content .content > div.wrap div.entry-form > div > div input[type=text],
.page-entry-form_content .content > div.wrap div.entry-form > div > div input[type=email],
.page-entry-form_content .content > div.wrap div.entry-form > div > div input[type=tel],
.page-entry-form_content .content > div.wrap div.entry-form > div > div input[type=date],
.page-entry-form_content .content > div.wrap div.entry-form > div > div textarea {
  background-color: #e9eff4;
  padding: 13px 21px;
  display: block;
  width: 100%;
}
.page-entry-form_content .content > div.wrap div.entry-form > div > div input[type=text]::placeholder,
.page-entry-form_content .content > div.wrap div.entry-form > div > div input[type=email]::placeholder,
.page-entry-form_content .content > div.wrap div.entry-form > div > div input[type=tel]::placeholder,
.page-entry-form_content .content > div.wrap div.entry-form > div > div input[type=date]::placeholder,
.page-entry-form_content .content > div.wrap div.entry-form > div > div textarea::placeholder {
  color: #b9b9b9;
  font-size: 1.6rem;
}
.page-entry-form_content .content > div.wrap div.entry-form > div > div .wpcf7-not-valid-tip {
  width: max-content;
  padding: 1px 5px;
  margin: 10px 0 0 0;
}
.page-entry-form_content .content > div.wrap div.entry-form > div.column {
  display: flex;
  gap: 26px;
}
.page-entry-form_content .content > div.wrap div.entry-form > div.column > div h3 {
  margin: 0 0 3px;
}
.page-entry-form_content .content > div.wrap div.entry-form > div.check {
  margin: 34px 0 51px 0;
}
.page-entry-form_content .content > div.wrap div.entry-form > div.check label {
  display: flex;
  align-items: center;
  gap: 6px;
}
.page-entry-form_content .content > div.wrap div.entry-form > div.check label input[type=checkbox] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 25px;
  height: 25px;
  border: 3px solid #00b0ff;
  outline: none;
  transition: background 0.3s;
}
.page-entry-form_content .content > div.wrap div.entry-form > div.check label input[type=checkbox]:checked {
  background-color: #00b0ff;
  border: 2px solid #00b0ff;
  position: relative;
}
.page-entry-form_content .content > div.wrap div.entry-form > div.check label input[type=checkbox]:checked::after {
  content: "";
  display: block;
  width: 6px;
  height: 12px;
  border: solid white;
  border-width: 0 2px 2px 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
}
.page-entry-form_content .content > div.wrap div.entry-form > div.check label span {
  flex: 1;
}
.page-entry-form_content .content > div.wrap div.entry-form > div.check label span a {
  text-decoration: underline;
}
.page-entry-form_content .content > div.wrap div.entry-form > div.check label span a:hover {
  text-decoration: none;
}
.page-entry-form_content .content > div.wrap div.entry-form > div.submit:hover img {
  transform: translateX(5px);
}
.page-entry-form_content .content > div.wrap div.entry-form > div.submit p button {
  background-color: #fff;
  border: 2px solid #00b0ff;
  cursor: pointer;
  display: flex;
  padding: 28px 38px 29px 60px;
  width: 100%;
  margin: 0 auto;
  align-items: center;
  text-decoration: none;
  gap: 56px;
  color: #00b0ff;
  font-weight: bold;
  position: relative;
  max-width: 395px;
}
.page-entry-form_content .content > div.wrap div.entry-form > div.submit p button::after {
  background: transparent url(../images/yajirushi.svg) no-repeat scroll left top/45px 43px;
  content: "";
  display: block;
  width: 45px;
  height: 43px;
  position: absolute;
  right: 38px;
  top: 50%;
  transform: translateY(-50%);
}
.page-entry-form_content .content > div.wrap div.entry-form > div.submit p img {
  width: 45px;
  transition: all 0.3s ease;
}

.page-thanks_content {
  background-color: #fff;
}
.page-thanks_content .content {
  padding: 0 21px;
}
.page-thanks_content .content > div {
  background-color: #fff;
  box-shadow: 0px 3px 6px #00000029;
  padding: 45px 13px 80px;
  max-width: 1000px;
  margin: 0 auto;
}
.page-thanks_content .content > div > h3 {
  color: #00b0ff;
  font-size: 3rem;
  font-weight: bold;
  text-align: center;
  margin: 0 0 50px;
}
.page-thanks_content .content > div > p {
  font-size: 2rem;
  line-height: 2.5;
  margin: 0 0 116px;
  text-align: center;
}
.page-thanks_content .content > div > a {
  background-color: #fff;
  border: 2px solid #00b0ff;
  display: flex;
  padding: 19px 38px 19px 60px;
  width: fit-content;
  margin: 0 auto;
  align-items: center;
  text-decoration: none;
  gap: 56px;
}
.page-thanks_content .content > div > a:hover img {
  transform: translateX(5px);
}
.page-thanks_content .content > div > a span {
  color: #00b0ff;
}
.page-thanks_content .content > div > a img {
  width: 45px;
  transition: all 0.3s ease;
}

@media screen and (max-width: 1452px) {
  .site-inner > div.site-menu > div.wrap > div:last-of-type {
    padding: 210px 30px 30px;
  }
}
@media screen and (max-width: 1020px) {
  .job-content .content section.job-tabs_wrap ul.job-tabs {
    gap: 13px 0;
    justify-content: space-between;
  }

  .job-content .content section.job-tabs_wrap ul.job-tabs li {
    width: 49%;
  }
}
@media screen and (max-width: 1000px) {
  #masthead {
    height: 120px;
    top: -120px;
  }

  #masthead .site-header-main .site-branding {
    height: auto;
    padding: 15px 15px 15px 25px;
  }

  #masthead .site-header-main .site-branding .site-title a {
    flex-direction: column;
    gap: 0px;
  }

  #masthead .site-header-main .site-branding .site-title a img {
    width: 226px;
  }

  #masthead .site-header-main .site-branding .site-title a span {
    color: #fff;
    font-size: 3rem;
  }

  #masthead .site-header-main .site-branding > div {
    align-items: flex-end;
    gap: 13px;
    flex-direction: column-reverse;
  }

  #masthead .site-header-main .site-branding > div > div.menu-btn {
    background: transparent url(../images/menu.svg) no-repeat scroll left top/51px 20px;
    width: 51px;
    height: 20px;
  }

  #masthead .site-header-main .site-branding > div > a {
    padding: 7px 20px;
  }

  #colophon > div.site-info > div {
    border: none;
    gap: 20px;
    width: 100%;
    padding: 32px 15px 15px;
    max-width: 100%;
    flex-direction: column;
  }

  #colophon > div.site-info > div > ul {
    justify-content: space-between;
  }

  #colophon > div.site-info > div > div > div > p.site-title a {
    font-size: 2.6rem;
  }

  #colophon .nav > div.menu ul {
    gap: 25px;
    flex-wrap: wrap;
  }

  #colophon .nav > div.menu ul li {
    width: 48% !important;
  }

  #colophon .nav > div.menu ul li a {
    font-size: 2rem;
    padding: 24px 13px;
  }
}
@media screen and (max-width: 930px) {
  .site-inner > div.site-menu > div.wrap > div:first-of-type {
    background: transparent linear-gradient(154deg, #0089c6 0%, #36d1de 100%) 0% 0% no-repeat padding-box;
    width: 100%;
    padding: 0;
  }

  .site-inner > div.site-menu > div.wrap > div:first-of-type > div.menu-header {
    position: relative;
    display: flex;
    justify-content: space-between;
    padding: 15px 15px 15px 25px;
    align-items: flex-start;
    height: 120px;
  }
  .site-inner > div.site-menu > div.wrap > div:first-of-type > div.menu-header::before {
    background: transparent linear-gradient(167deg, #0089c6 52%, #36d1de 100%) 0% 0% no-repeat padding-box;
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 80%);
  }

  .site-inner > div.site-menu > div.wrap > div:first-of-type > div.menu-header .site-title {
    margin: 0;
    padding: 0;
    position: relative;
  }

  .site-inner > div.site-menu > div.wrap > div:first-of-type > div.menu-header .site-title a {
    flex-direction: column;
    align-items: flex-start;
    gap: 0px;
  }

  .site-inner > div.site-menu > div.wrap > div:first-of-type > div.menu-header .site-title a img {
    width: 226px;
  }

  .site-inner > div.site-menu > div.wrap > div:first-of-type > div.menu-header .site-title a span {
    font-size: 3rem;
  }

  .site-inner > div.site-menu > div.wrap > div:first-of-type > div.menu-header > div {
    display: flex;
    position: relative;
    gap: 13px;
  }

  .site-inner > div.site-menu > div.wrap > div:first-of-type div.menu {
    padding: 10px 40px 34px;
    max-width: 100%;
    margin: 0 auto;
  }

  .site-inner > div.site-menu > div.wrap > div:first-of-type div.menu > ul > li {
    flex-direction: column;
    gap: 7px 18px;
  }

  .site-inner > div.site-menu div.menu_btn {
    display: none;
  }

  .site-inner > div.site-menu > div.wrap {
    flex-direction: column;
    justify-content: flex-start;
  }

  .site-inner > div.site-menu > div.wrap > div:last-of-type {
    background-color: #fff;
    padding: 30px 0 160px;
    width: 100%;
    position: relative;
  }

  .site-inner > div.site-menu > div.wrap > div:last-of-type ul {
    padding: 0 30px;
  }

  .site-inner > div.site-menu > div.wrap > div:last-of-type > div.img {
    display: block;
  }

  .site-inner > div.site-menu > div.img {
    display: none;
  }
}
@media screen and (max-width: 800px) {
  .site-inner > div.site-menu {
    background: #fff;
  }

  .front-page_content > div.wrap section.catch {
    height: 62vh;
    padding: 120px 0 0 0;
  }

  .front-page_content > div.wrap section.catch > div.img {
    height: 27vw;
  }

  .front-page_content > div.wrap section.catch > div.scroll {
    display: none;
  }

  .front-page_content > div.wrap section.message {
    margin: 62vh 0 0 0;
    padding: 0 0 120px;
  }

  .front-page_content > div.wrap section.message > div > h2 {
    font-size: 6rem;
    -webkit-text-stroke-width: 1px;
  }

  .front-page_content > div.wrap section.message > div > h3 {
    margin: 0 0 40px;
  }

  .front-page_content > div.wrap section.ideal > div.head h2 {
    font-size: 6rem;
    -webkit-text-stroke-width: 1px;
    line-height: 1;
    margin: 0 0 21px;
  }

  .front-page_content > div.wrap section.ideal > div.head h2 span {
    display: block;
  }

  .front-page_content > div.wrap section.ideal > div.content {
    flex-direction: column;
    padding: 120px 0 0 0;
  }

  .front-page_content > div.wrap section.ideal > div.content > div.img {
    width: 69.9745547074%;
    height: auto;
    opacity: 0.5;
    aspect-ratio: 275/206;
    margin: 0 0 100px;
    top: 200px;
  }

  .front-page_content > div.wrap section.ideal > div.content > div.img img {
    top: 0;
    transform: translateY(0px);
  }

  .front-page_content > div.wrap section.ideal > div.content > div.text {
    width: 100%;
    margin: 0 0 130px 0;
    gap: 120px 0;
    padding: 0 21px;
  }

  .front-page_content > div.wrap section.ideal > div.content > div.text > div > h3 {
    margin: 0 0 17px;
  }

  .front-page_content > div.wrap section.ideal > div.content > div.text > div > .h2 {
    margin: 0 0 30px;
  }

  .front-page_content > div.wrap section.ideal > div.content > div.text > div > .h2 h2 {
    font-size: 3.3rem;
  }

  .front-page_content section.interview > div {
    flex-direction: column;
  }

  .front-page_content section.interview > div > div:first-of-type {
    display: contents;
  }

  .front-page_content section.interview > div > div:first-of-type > div {
    order: 1;
    margin: 0 0 22px;
  }

  .front-page_content section.interview > div > div:first-of-type a {
    order: 3;
  }

  .front-page_content section.interview > div > div:last-of-type {
    width: 100%;
    order: 2;
    margin: 0 0 30px;
    background: none;
    flex-direction: column;
    padding: 0 15px;
  }

  .front-page_content section.interview > div > div:last-of-type > div.img {
    background: transparent url(../images/interviewlink.jpg) no-repeat scroll left top/cover;
    width: 79.8982188295%;
    aspect-ratio: 1938/1356;
    margin: 0 0 0 auto;
  }

  .front-page_content section.interview > div > div:last-of-type > div.text {
    gap: 40px;
    align-self: flex-end;
    margin: -108px 0 0 0px;
    flex-direction: column-reverse;
    padding: 0 20px 0 0;
  }

  .front-page_content section.interview > div > div:last-of-type > div.text > div > div {
    gap: 5px;
  }

  .front-page_content section.interview > div > div:last-of-type > div.text > div > div p {
    font-size: 2.1rem;
    padding: 0 13px;
  }

  .front-page_content section.interview > div > div:last-of-type > div.text > div {
    gap: 5px;
  }

  .front-page_content section.interview > div > div:last-of-type > div.text > a {
    margin: 0 0 0 auto;
    width: 50px;
    height: 50px;
  }

  .front-page_content section.interview > div > div:last-of-type > div.text > div > p {
    padding: 3px 10px;
    font-size: 1.4rem;
  }

  .front-page_content section.interview {
    padding: 0 0 30px;
  }

  .front-page_content section.para {
    height: 300px;
    background-attachment: scroll;
  }

  .front-page_content section.aboutus > div {
    padding: 59px 21px 184px;
  }

  .front-page_content section.aboutus > div > a {
    display: none;
  }

  .front-page_content section.aboutus > div > ul {
    display: none;
  }

  .front-page_content section.aboutus > div > div.slider {
    display: block;
  }

  .front-page_content section.culture > div > div:first-of-type > h2 {
    font-size: 6rem;
  }

  .front-page_content section.culture > div > div:first-of-type > h3 {
    font-size: 2rem;
  }

  .front-page_content section.culture > div {
    padding: 60px 35px 43px;
    flex-direction: column;
    gap: 40px;
  }

  .front-page_content section.culture > div > div:last-of-type {
    width: 100%;
    height: 100%;
    aspect-ratio: unset;
    max-width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 24px 0;
  }

  .front-page_content section.culture > div > div:last-of-type > a {
    position: static;
    width: 46.439628483%;
    transform: none !important;
  }

  .front-page_content section.overview > div {
    padding: 50px 15px;
  }

  .front-page_content section.overview > div > h2 {
    font-size: 6rem;
  }

  .front-page_content section.overview > div > h3 {
    font-size: 2rem;
    margin: 0 0 60px;
  }

  .front-page_content section.overview > div > ul {
    flex-direction: column;
    gap: 21px;
  }

  .front-page_content section.overview > div > ul li {
    width: 100%;
  }

  #colophon > div.site-info > div > ul {
    flex-direction: column;
  }

  #colophon > div.site-info > div > ul > li {
    width: 100%;
    border-top: 1px solid #0089c6;
  }

  #colophon > div.site-info > div > ul > li > a {
    padding: 20px 0;
    margin: 0;
  }

  #colophon > div.site-info > div > ul > li ul {
    gap: 13px;
    padding: 0 0 20px;
  }

  #colophon .nav > div.menu ul {
    gap: 25px;
    flex-wrap: unset;
    flex-direction: column;
  }

  #colophon .nav > div.menu ul li {
    width: 100% !important;
  }

  #colophon .nav > div.img {
    height: 25vw;
  }

  .page_content > h1 {
    font-size: 6rem;
    -webkit-text-stroke-width: 1px;
  }

  .page_content > p {
    font-size: 2rem;
    margin: 0 0 48px;
  }

  .page-interview_content .content ul li {
    width: 100%;
    margin: 0;
  }

  .page-interview_content .content ul li a > div.img {
    margin: 0 0 71px auto;
    width: 100%;
  }

  .page-interview_content .content ul li a > span {
    font-size: clamp(16.1rem, 21vw, 28.5rem);
    bottom: 38%;
    left: 20px;
    top: unset;
  }

  .page-interview_content .content ul li a > div.h2 {
    left: 20px;
    bottom: 58px;
  }

  .page-interview_content .content ul li a > div.img::before {
    background: transparent url(../images/linkbtn.png) no-repeat scroll left top/50px 50px;
    width: 50px;
    height: 50px;
    right: 10%;
    bottom: 30px;
  }

  .page-interview_content .content ul li a > p {
    background-color: #ffffff;
    font-size: 1.4rem;
    padding: 7px 11px;
    width: fit-content;
  }

  .page-interview_content .content ul li:nth-of-type(even) a > span {
    left: 20px;
  }

  .page-interviewpage_content > div.content {
    padding: 113px 30px 50px;
  }

  .page-interviewpage_content > div.content > div.wrap div.key {
    margin: 0 0 54px;
  }

  .page-interviewpage_content > div.content > div.wrap div.key > span {
    font-size: clamp(10rem, 21vw, 28.5rem);
    bottom: 150px;
    left: -10px;
  }

  .page-interviewpage_content > div.content > div.wrap div.key > p {
    font-size: 1.4rem;
  }

  .page-interviewpage_content > div.content > div.wrap > div.main > div {
    flex-direction: column;
    background-color: #fff;
    padding: 50px 30px 60px;
  }

  .page-interviewpage_content > div.content > div.wrap > div.main > div:first-of-type > img {
    transform: translateY(0);
    position: static;
    margin: 0 auto 30px;
  }

  .page-interviewpage_content > div.content > div.wrap > div.main > div:first-of-type > div {
    padding-bottom: 0;
  }

  .page-interviewpage_content > div.content > div.wrap > div.main > div > img {
    position: static;
    width: max-content;
    max-width: 233px;
    margin: 0 auto 30px;
  }

  .page-interviewpage_content > div.content > div.wrap > div.main > div > div {
    width: 100%;
    padding: 0;
    margin: 0 auto;
  }

  .page-interviewpage_content > div.content > div.wrap > div.later {
    margin: 0 auto;
    gap: 56px;
  }

  .page-interviewpage_content > div.content > div.wrap > div.later > div {
    width: 100%;
  }

  .page-interviewpage_content > div.content > div.wrap > div.later > div h2 {
    font-size: 2.3rem;
    padding: 0 0 0 13px;
  }

  .page-interviewpage_content > div.content > div.wrap > div.later > div > div {
    padding: 25px 25px 10px;
    width: calc(100% - 51px);
  }

  .page-interviewpage_content div.more-interview > div.more > h2 {
    font-size: 6rem;
    -webkit-text-stroke-width: 1px;
    line-height: 1;
    margin: 0 0 13px;
  }

  .page-interviewpage_content div.more-interview > div.more > h2 span {
    display: block;
  }

  .page-interviewpage_content div.more-interview > div.more > p {
    font-size: 2rem;
    margin: 0 0 41px;
  }

  .page-interviewpage_content div.more-interview > div.more ul {
    flex-direction: column;
    gap: 33px;
  }

  .page-interviewpage_content div.more-interview > div.more ul li {
    width: 100%;
    margin: 0 auto;
  }

  .page-interviewpage_content div.more-interview > div.more ul li a > div.img {
    margin: 0 0 68px auto;
    width: 100%;
  }

  .page-interviewpage_content div.more-interview > div.more ul li a > div.img::before {
    background: transparent url(../images/linkbtn.png) no-repeat scroll left top/50px 50px;
    width: 50px;
    height: 50px;
    right: 40px;
    bottom: 20px;
  }

  .page-interviewpage_content div.more-interview > div.more ul li a > div.img img {
    clip-path: polygon(0% 0%, 100% 0%, 94% 100%, 0% 100%);
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 94% 100%, 0% 100%);
  }

  .page-interviewpage_content div.more-interview > div.more ul li a > span {
    font-size: clamp(10rem, 21vw, 28.5rem);
    bottom: 135px;
    left: 10px;
    top: unset;
    line-height: 1;
  }

  .page-interviewpage_content div.more-interview > div.more ul li a > div.h2 {
    left: 20px;
    bottom: 50px;
  }

  .page-interviewpage_content div.more-interview > div.more ul li a > div.h2 .flow-txt {
    font-size: clamp(2rem, 3vw, 4rem);
  }

  .page-aboutus_content > div.content {
    padding: 0 15px;
  }

  .page-aboutus_content > div.content section div.wrap div.head {
    padding: 37px 0 0 55px;
  }

  .page-aboutus_content > div.content section div.wrap div.head::before {
    width: 50px;
  }

  .page-aboutus_content > div.content section div.wrap div.head div h2 {
    font-size: 2rem;
  }

  .page-aboutus_content > div.content section div.wrap div.head div p {
    font-size: 1.4rem;
  }

  .page-aboutus_content > div.content section div.main {
    padding: 30px 15px;
  }

  .page-aboutus_content > div.content section.const div.main > div {
    gap: 50px;
  }

  .page-aboutus_content > div.content section div.main > div > div > h2 {
    flex-direction: column;
    margin: 0 0 25px;
  }

  .page-aboutus_content > div.content section div.main > div > div > ul {
    padding: 25px 20px;
  }

  .page-aboutus_content > div.content section div.main > div > div:has(> h3) ul {
    margin: 0 0 33px;
  }

  .page-aboutus_content > div.content section div.main > div > div > div.h3 {
    width: fit-content;
    margin: 0 auto;
  }

  .page-aboutus_content > div.content section div.main > div > div > div.h3 > h3 span {
    display: block;
  }

  .page-aboutus_content > div.content section.know > div.wrap div.main > img {
    margin: 0 0 40px;
  }

  .page-aboutus_content > div.content section.know > div.wrap div.main > h3.h3_2 {
    margin: 0 0 75px;
  }

  .page-aboutus_content > div.content section.know div.business > h2 {
    font-size: 2rem;
    margin: 0 0 20px;
  }

  .page-aboutus_content > div.content section.know div.business ul {
    padding: 30px 20px;
  }

  .page-aboutus_content > div.content section.know div.flow > h2 {
    font-size: 2rem;
  }

  .page-aboutus_content > div.content section.know div.skill > h2 {
    font-size: 2rem;
  }

  .page-aboutus_content > div.content section.know div.skill > div div {
    padding: 21px;
  }

  .page-aboutus_content > div.content section.know div.skill > div div h3 {
    font-size: 2rem;
    margin: 0 0 13px;
  }

  .page-aboutus_content > div.content section.know div.day > h2 {
    font-size: 2rem;
  }

  .page-aboutus_content > div.content section.know div.day > div div {
    padding: 31px 21px;
  }

  .page-aboutus_content > div.content section.know div.day > div div > span {
    font-size: 2rem;
  }

  .page_content {
    padding: 130px 0 55px 0;
  }

  .page-culture_content > div.content > div.wrap section div.head {
    padding: 37px 0 0 55px;
  }

  .page-culture_content > div.content > div.wrap section div.head::before {
    width: 50px;
  }

  .page-culture_content > div.content > div.wrap section div.head div h2 {
    font-size: 2rem;
  }

  .page-culture_content > div.content > div.wrap section div.head div p {
    font-size: 1.4rem;
  }

  .page-culture_content > div.content > div.wrap {
    gap: 70px 0;
  }

  .page-culture_content > div.content > div.wrap section {
    width: 100%;
  }

  .page-culture_content > div.content > div.wrap section.numbers div.main > div,
.page-culture_content > div.content > div.wrap section.bene div.main > div {
    gap: 30px 0px;
  }

  .page-culture_content > div.content > div.wrap section.numbers div.main > div img,
.page-culture_content > div.content > div.wrap section.bene div.main > div img {
    width: 48%;
  }

  .page-culture_content > div.content > div.wrap section.career div.main > h3 {
    font-size: 2rem;
  }

  .page-culture_content > div.content > div.wrap section.career div.main > div.img {
    width: 100%;
    overflow-x: scroll;
  }

  .page-culture_content > div.content > div.wrap section.career div.main > div.img img {
    max-width: 1200px;
  }

  .page-culture_content > div.content > div.wrap section.edu div.main > h3 {
    font-size: 2rem;
    margin: 0 0 30px;
  }

  .page-culture_content > div.content > div.wrap section.edu div.main > div.img {
    width: 100%;
    overflow-x: scroll;
  }

  .page-culture_content > div.content > div.wrap section.edu div.main > div.img img {
    max-width: 1000px;
  }

  .page-culture_content > div.content > div.wrap section.edu div.main > div.img2 img {
    max-width: 800px;
  }

  .page-office_content > div.content section.overview {
    padding: 21px;
  }

  .page-office_content > div.content section.overview > h2 {
    font-size: 2.5rem;
  }

  .page-office_content > div.content section.overview > div div {
    gap: 3px;
    flex-direction: column;
  }

  .page-office_content > div.content section.program {
    padding: 21px 21px 55px;
  }

  .page-office_content > div.content section.program > h2 {
    font-size: 2.5rem;
  }

  .page-office_content > div.content section.program > h4 {
    font-size: 1.8rem;
    margin: 0 0 21px;
  }

  .page-office_content > div.content section.program > h3 {
    font-size: 2rem;
    margin: 0 0 26px;
  }

  .page-office_content > div.content section.program div.slider div.box {
    min-height: 450px;
  }

  .page-office_content > div.content section.program div.slider div.box > span {
    font-size: 2.5rem;
  }

  .page-office_content > div.content section.program div.slider div.box > div > h2 {
    font-size: 1.8rem;
  }

  .page-office_content > div.content section.contact {
    padding: 21px 21px 34px;
  }

  .page-office_content > div.content section.contact > h2 {
    font-size: 2rem;
    margin: 0 0 21px;
  }

  .page-office_content > div.content section.contact > div div {
    flex-direction: column;
  }

  .page-office_content > div.content section.contact > div div > h3 {
    font-size: 1.8rem;
  }

  .page-office_content > div.content section.contact > div div > p {
    font-size: 1.8rem;
  }

  .page-entry-form_content .content > div.wrap > div.box {
    gap: 0;
    padding: 21px 13px;
    margin: 0 0 34px;
    flex-direction: column;
  }

  .page-entry-form_content .content > div.wrap > div.box > div div {
    align-items: center;
  }

  .page-entry-form_content .content > div.wrap > div.box > div div img {
    position: relative;
    top: 2px;
  }

  .page-entry-form_content .content > div.wrap > div.box > div div a {
    font-size: 4rem;
  }

  .page-entry-form_content .content > div.wrap div.entry-form {
    padding: 21px 0;
    gap: 20px;
  }

  .page_content .bread > div {
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 600px) {
  .page-interviewpage_content > div.content > div.wrap > div.later > div > div {
    padding: 25px 4px 10px 25px;
    width: calc(100% - 30px);
  }

  .page-interviewpage_content > div.content > div.wrap > div.later > div > div p {
    max-height: 400px;
    padding: 0 30px 0 0;
  }

  .page-interviewpage_content > div.content > div.wrap > div.later > div > div::before {
    right: -29px;
    clip-path: polygon(0 0, 100% 0, 5% 100%, 0% 100%);
    width: 30px;
  }

  .page-interviewpage_content > div.content > div.wrap > div.later > div > div::after {
    right: -37px;
    width: 34px;
  }

  .page-interviewpage_content > div.content > div.wrap > div.later > div > div p .simplebar-track.simplebar-vertical {
    width: 30px;
  }

  .page-interviewpage_content > div.content > div.wrap > div.later > div > div p .simplebar-track.simplebar-vertical:after {
    background: #00b0ff;
    content: "";
    display: block;
    width: 1px;
    height: 100%;
    position: absolute;
    left: 14px;
    top: 0;
  }

  .page-interviewpage_content > div.content > div.wrap > div.later > div > div p .simplebar-scrollbar:before {
    background: #00b0ff;
    border-radius: 0;
    opacity: 1;
    top: 0;
    bottom: 0;
    left: 50%;
    right: 0;
    width: 6px;
    transform: translateX(-50%);
  }

  .page-aboutus_content > div.content section.know div.skill > div {
    flex-direction: column;
  }

  .page-aboutus_content > div.content section.know div.skill > div div {
    width: 100%;
  }

  .page-culture_content > div.content > div.wrap section.numbers div.main > div,
.page-culture_content > div.content > div.wrap section.bene div.main > div {
    flex-direction: column;
  }

  .page-culture_content > div.content > div.wrap section.numbers div.main > div img,
.page-culture_content > div.content > div.wrap section.bene div.main > div img {
    width: 100%;
  }

  .page-culture_content > div.content > div.wrap section.edu div.main > div div {
    padding: 21px;
  }

  .page-culture_content > div.content > div.wrap section.edu div.main > div div h3 {
    font-size: 1.8rem;
    margin: 0 0 5px;
  }

  .job-content .content section.job-tabs_wrap ul.job-tabs {
    margin: 0 0 34px;
  }

  .job-content .content section.job-tabs_wrap ul.job-tabs li a {
    font-size: 1.6rem;
  }

  .job-content .content section.job-tabs_wrap .job-panels .job-panel article .job-article_body {
    flex-direction: column;
    gap: 20px;
  }

  .job-content .content section.job-tabs_wrap .job-panels .job-panel article .job-article_body > div {
    flex-direction: column;
  }

  .job-content .content section.job-tabs_wrap .job-panels .job-panel article .job-article_body > div h3 {
    font-size: 1.6rem;
    width: auto;
  }

  #masthead .site-header-main .site-branding .site-title a img {
    width: 180px;
  }

  #masthead .site-header-main .site-branding .site-title a span {
    font-size: 2rem;
  }

  #masthead .site-header-main .site-branding .site-title {
    width: 55%;
  }

  #masthead .site-header-main .site-branding > div {
    width: 45%;
  }
}
@media screen and (max-width: 500px) {
  #masthead .site-header-main .site-branding > div > a {
    padding: 7px 8px;
  }

  .front-page_content > div.wrap section.catch h1 {
    font-size: clamp(5.5rem, 11vw, 18.1rem);
  }

  .page-office_content > div.content section.contact > a {
    width: 100%;
    padding: 19px 13px 19px 13px;
    justify-content: center;
    gap: 21px;
  }

  .page-office_content > div.content section.contact > a img {
    width: 30px;
  }

  .page-entry-form_content .content > div.wrap div.entry-form > div.submit p {
    width: 100%;
    padding: 19px 13px 19px 13px;
    justify-content: center;
    gap: 21px;
  }

  .page-entry-form_content .content > div.wrap div.entry-form > div.submit p img {
    width: 30px;
  }

  .page-entry-form_content .content > div.wrap > div.box > div div a {
    font-size: 3.25rem;
  }

  .page-thanks_content .content > div > p {
    font-size: 1.6rem;
    margin: 0 0 55px;
  }

  .page-thanks_content .content > div > a {
    width: 100%;
    padding: 19px 13px 19px 13px;
    justify-content: center;
    gap: 21px;
  }

  .page-thanks_content .content > div > a img {
    width: 35px;
  }
}
@media screen and (max-width: 320px) {
  #masthead .site-header-main .site-branding > div > a {
    padding: 7px 8px;
    font-size: 1.3rem;
  }

  .front-page_content > div.wrap section.catch h1 {
    font-size: clamp(3.5rem, 11vw, 18.1rem);
  }

  .page-entry-form_content .content > div.wrap > div.box > div > p {
    font-size: 1.8rem;
  }
}