@charset 'utf-8';

/* common
------------------------------------------------ */
.hd-top { background: none; }
#gnav { background: url(../../img/recruit/bg1.png) repeat center top; background-size: cover; }
.gnav-recruit-menu { padding: 0 52px; transition: ease 0.4s; opacity: 0; }
.gnav-recruit-menu--title { margin-bottom: 28px; font-family: 'Overpass', sans-serif; font-size: 1.4rem; font-weight: 600; line-height: 1.2; color: #968c85; }
.gnav-recruit-menu__links--item { font-size: 1.6rem; font-weight: 700; line-height: 1.578125; }
.gnav-recruit-menu__links--item:not(:first-child) { margin-top: 26px; }
.gnav-recruit-menu__links--item > a { display: inline-block; vertical-align: top; }
.gnav-btns-entry { transition: 0.4s ease 0.4s; }
.gnav-btns-entry > a { background-color: #736357; border-radius: 5px; box-shadow: 1px 1px 5px rgba(102,70,0,0.2); }
.gnav-btns-entry > a::after { content: ''; position: absolute; top: -27px; right: 0; width: 60px; height: 27px; background: url(../../img/recruit/gnav_entry_balloon1.png) no-repeat center center; background-size: 100% 100%; }
.device-click .gnav-btns-entry > a:hover { background-color: #f0ee00; color: #534741; }
.device-click .gnav-btns-entry > a:hover::after { background-image: url(../../img/recruit/gnav_entry_balloon2.png); }
#footer { padding-top: 0; }
.ft-main { padding: 20px 0; }
.ft-main-btm { margin-top: 0; }
.ft-copyright { margin-top: 0; font-size: 1.1rem; }
.ft-pagetop { right: -18px; bottom: -10px; width: 35px; height: 35px; }
.ft-pagetop i { height: 35px; }
.ft-pagetop i::before { bottom: 17px; left: 9px; }
.ft-pagetop i::after { bottom: 10px; left: 7px; width: 20px; }

.gnav-open .gnav-recruit-menu { opacity: 1; }

.body-gnav-open #header { background: none; }
.body-gnav-open.body-hd-fixed #header { background-color: #fff; }

.page-template-index #main { padding-top: 100vh; }
.page-template-index #footer { margin-top: 0; }

@media screen and (max-width: 768px) {
  .hd-logo { top: 26px; }
  .hd-top-info { top: 30px; }
  .body-hd-fixed .hd-logo { top: 12px; }
  .body-hd-fixed .hd-top-info { top: 10px; }
}

@media screen and (min-width: 769px) {
  .hd-logo { top: 55px; }
  .hd-top-info { top: 58px; }
  .body-hd-fixed .hd-logo { top: 25px; }
  .body-hd-fixed .hd-top-info { top: 25px; }
  #gnav { right: 0; left: auto; width: 465px; }
  #gnav > .frame::before,
  #gnav > .frame::after { display: none; }
  .gnav-content { padding: 110px 48px 20px; width: 100%; }
  .gnav-recruit-menu { padding: 0 0 0 28px; }
  .gnav-recruit-menu--title { font-size: 1.2rem; }
  .gnav-recruit-menu__links--item { white-space: nowrap; font-size: 1.6rem; }
  .gnav-recruit-menu__links--item:not(:first-child) { margin-top: 34px; }
  .gnav-btns { margin-top: 75px; }
  .gnav-btns-entry > a::after { top: -34px; width: 75px; height: 34px; }

  .ft-main { padding: 35px 0; }
  .ft-main > .wrap { display: block; }
  .ft-main-btm { display: block; position: relative; right: auto; bottom: auto; }
  .ft-copyright { margin-left: 0; font-size: 1.2rem; }
  .ft-pagetop { right: 0; bottom: -10px; width: 42px; height: 42px; }
  .ft-pagetop i { height: 42px; }
  .ft-pagetop i::before { bottom: 22px; left: 13px; }
  .ft-pagetop i::after { bottom: 12px; left: 8px; width: 26px; }

  .page-template-index.body-gnav-open .hd-logo > a img { opacity: 0; }
  .page-template-index.body-gnav-open .hd-logo > a::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url(../../img/share/logo_white.svg) no-repeat center center; background-size: 100% 100%; }
  .page-template-index.body-hd-fixed.body-gnav-open .hd-logo > a img { opacity: 1; }
  .page-template-index.body-hd-fixed.body-gnav-open .hd-logo > a::after { display: none; }
}

/* visual
------------------------------------------------ */
.recruit-visual { position: fixed; top: 0; left: 0; width: 100%; height: 100vh; overflow: hidden; }
.recruit-visual.hidden { pointer-events: none; opacity: 0; }
.recruit-visual::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-repeat: no-repeat; background-position: center center; background-size: cover; z-index: -2; }
.recruit-visual-copy { position: absolute; top: 32.2666666667vw; left: 8.80552666665%; width: 82.3889466667%; opacity: 0; }
.recruit-visual-copy::after { content: ''; position: absolute; background-repeat: no-repeat; background-position: center center; background-size: cover; height: 0; overflow: hidden; opacity: 0; }
.recruit-visual-text { position: absolute; bottom: 68px; left: 50%; transform: translateX(-50%); white-space: nowrap; text-align: center; font-size: 2.1rem; font-weight: 700; line-height: 1.2; color: #fff; opacity: 0; }
.recruit-visual-text span { display: inline-block; vertical-align: baseline; font-size: 2.52rem; color: #f0ee00; }
.recruit-visual-text i { pointer-events: none; position: absolute; opacity: 0; z-index: -1; }
.recruit-visual-text i::before,
.recruit-visual-text i::after { content: ''; position: absolute; width: 5px; height: 5px; border-radius: 50%; background-color: #fff; }
.recruit-visual-text i:nth-of-type(1) { bottom: -8px; left: 0; width: 0; height: 1px; background-color: #fff; }
.recruit-visual-text i:nth-of-type(1)::before,
.recruit-visual-text i:nth-of-type(1)::after { margin-top: -2px; }
.recruit-visual-text i:nth-of-type(1)::before { left: 0; }
.recruit-visual-text i:nth-of-type(1)::after { right: 0; }
.recruit-visual-text i:nth-of-type(2) { bottom: -10px; left: 50%; transform-origin: left top; transform: rotate(90deg); margin-left: 1px; width: 0; height: 1px; border-top: 1px dotted #fff; }
.recruit-visual-text i:nth-of-type(2)::before,
.recruit-visual-text i:nth-of-type(2)::after { bottom: 0; }
.recruit-visual-text i:nth-of-type(2)::before { left: 0; margin: 0 0 -2px -4px; }
.recruit-visual-text i:nth-of-type(2)::after { right: 0; margin-bottom: -2px; }
.recruit-visual-slide { position: absolute; top: 77vw; left: 0; transform: translateY(20%); width: 100%; opacity: 0; }
.recruit-visual-slide__frame { position: relative; width: 100%; overflow: hidden; }
.recruit-visual-slide__move { display: flex; }
.recruit-visual-balloon { position: relative; }
.recruit-visual > i { pointer-events: none; position: absolute; z-index: -1; }
.recruit-visual > i:nth-of-type(1) { top: 15px; left: 0; width: 100%; height: 1px; background-color: #fff; }
.recruit-visual > i:nth-of-type(2),
.recruit-visual > i:nth-of-type(3) { top: 0; transform-origin: left top; transform: rotate(90deg); width: 15px; height: 1px; border-top: 1px solid #fff; }
.recruit-visual > i:nth-of-type(2) { left: 34.6666666667%; border-top-style: dotted; }
.recruit-visual > i:nth-of-type(3) { right: 34.6666666667%; }
.recruit-visual > i:nth-of-type(4),
.recruit-visual > i:nth-of-type(5) { transform: rotate(90deg); width: 100vh; height: 1px; border-top: 1px dotted #fff; }
.recruit-visual > i:nth-of-type(4) { top: 0; left: 15px; transform-origin: left top; }
.recruit-visual > i:nth-of-type(5) { bottom: 0; right: 15px; transform-origin: right top; }
.recruit-visual > i:nth-of-type(6) { bottom: 15px; left: 0; width: 100%; height: 1px; background-color: #fff; }
.recruit-visual > i:nth-of-type(7),
.recruit-visual > i:nth-of-type(8) { bottom: 15px; transform-origin: left top; transform: rotate(90deg); width: 15px; height: 1px; border-top: 1px solid #fff; }
.recruit-visual > i:nth-of-type(7) { left: 34.6666666667%; border-top-style: dotted; }
.recruit-visual > i:nth-of-type(8) { right: 34.6666666667%; }

.recruit-visual-copy.active { transition: opacity ease 1.2s; opacity: 1; }
.recruit-visual-copy.active::after { transition: opacity 1.2s ease 0.6s; opacity: 1; }
.recruit-visual-text.active { transition: ease 1.2s; opacity: 1; }
.recruit-visual-text.active i:nth-of-type(1) { animation: visualTextLine1 1.25s cubic-bezier(0.4,0.15,0.12,1) 0.8s forwards; }
.recruit-visual-text.active i:nth-of-type(2) { animation: visualTextLine2 1.25s cubic-bezier(0.4,0.15,0.12,1) 1.3s forwards; }
.recruit-visual-slide.active { transition: ease 1.2s; transform: translateY(0); }

@keyframes visualTextLine1 {
  0% {
    width: 0;
    opacity: 0;
  }
  100% {
    width: 100%;
    opacity: 1;
  }
}

@keyframes visualTextLine2 {
  0% {
    width: 0;
    opacity: 0;
  }
  100% {
    width: 46px;
    opacity: 1;
  }
}

@media screen and (max-width: 768px) {
  .recruit-visual::after { background-image: url(../../img/recruit/visual_bg.png); }
  .recruit-visual-copy::after { top: -4px; left: 0; padding-bottom: 92.0073300971%; width: 87.6069255663%; background-image: url(../../img/recruit/visual_copy_line.png); }
}

@media screen and (min-width: 769px) {
  .recruit-visual::after { background-image: url(../../img/recruit/visual_bg-pc.png); }
  .recruit-visual-copy { top: 14.8609077599vw; left: 50%; transform: translateX(-50%); width: 84.4612445095%; max-width: 1154px; text-align: center; }
  .recruit-visual-copy::after { top: -8px; left: 0; padding-bottom: 28.7133362218%; width: 100%; background-image: url(../../img/recruit/visual_copy_line-pc.png); }
  .recruit-visual-text { bottom: 135px; font-size: 2.4rem; }
  .recruit-visual-text span { bottom: 140px; font-size: 3.36rem; }
  .recruit-visual-slide { top: 50%; transform: translateY(-20%); }
  .recruit-visual > i { position: absolute; }
  .recruit-visual > i:nth-of-type(1) { top: 30px; }
  .recruit-visual > i:nth-of-type(2),
  .recruit-visual > i:nth-of-type(3) { width: 30px; }
  .recruit-visual > i:nth-of-type(2) { left: 23.3378989751%; }
  .recruit-visual > i:nth-of-type(3) { right: 23.3378989751%; }
  .recruit-visual > i:nth-of-type(4) { left: 30px; }
  .recruit-visual > i:nth-of-type(5) { right: 30px; }
  .recruit-visual > i:nth-of-type(6) { bottom: 30px; }
  .recruit-visual > i:nth-of-type(7),
  .recruit-visual > i:nth-of-type(8) { bottom: 30px; width: 30px; }
  .recruit-visual > i:nth-of-type(7) { left: 23.3378989751%; }
  .recruit-visual > i:nth-of-type(8) { right: 23.3378989751%; }

  .recruit-visual-slide.active { transform: translateY(-50%); }

  @keyframes visualTextLine2 {
    0% {
      width: 0;
      opacity: 0;
    }
    100% {
      width: 98px;
      opacity: 1;
    }
  }
}

@media screen and (min-width: 1366px) {
  .recruit-visual-copy { top: 204px; }
}

/* btn
------------------------------------------------ */
.recruit-btn-etnry { display: none; position: fixed; bottom: 25px; right: 25px; width: 138px; z-index: 50; }
.recruit-btn-etnry > a { display: block; width: 100%; }

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

@media screen and (min-width: 769px) {
}

/* content
------------------------------------------------ */
.recruit-content { position: relative; background-color: #fff; }

@media screen and (max-width: 768px) {
}

@media screen and (min-width: 769px) {
}

/* scroll
------------------------------------------------ */
.recruit-scroll { position: absolute; top: 110px; left: -92px; transform-origin: top right; transform: rotate(90deg); font-family: 'Overpass', sans-serif; font-size: 1.2rem; font-weight: 600; line-height: 1.2; z-index: 2; }
.recruit-scroll > a { display: block; position: relative; padding-left: 60px; color: #534741; }
.recruit-scroll > a::after { content: ''; position: absolute; top: 5px; left: 0; width: 0; height: 0; border: 0.5px dashed #534741; overflow: hidden; }

.recruit-scroll.lazy-done > a::after { animation: recruitScroll cubic-bezier(0.4,0.15,0.12,1) 1.25s forwards; }

@keyframes recruitScroll {
  0% {
    width: 0;
  }
  100% {
    width: 52px;
  }
}

@media screen and (min-width: 769px) {
  .recruit-scroll { top: 100px; left: -75px; }
  .recruit-scroll > a { padding-left: 50px; }

  @keyframes recruitScroll {
    0% {
      width: 0;
    }
    100% {
      width: 44px;
    }
  }
}

/* message
------------------------------------------------ */
.recruit-message { position: relative; padding: 55px 0 77px; }
.recruit-message-title { position: absolute; top: 0; left: 108px; transform-origin: left top; transform: rotate(90deg); }
.recruit-message-title--s,
.recruit-message-title--l { font-family: 'Overpass', sans-serif; font-weight: 600; line-height: 1.2; }
.recruit-message-title--s { font-size: 1.2rem; }
.recruit-message-title--l { margin-top: 2px; font-size: 3.3rem; }
.recruit-message-lead { font-size: 1.5rem; font-weight: 700; letter-spacing: 0; line-height: 2.13333333333; }
.recruit-message-photo { position: relative; }

@media screen and (max-width: 768px) {
  .recruit-message-lead { margin: 0 30px; padding-top: 82vw; }
  .recruit-message-photo { position: absolute; top: 19.2vw; right: 18px; width: 59.4666666667%; }
}

@media screen and (min-width: 769px) {
  .recruit-message { padding: 110px 0 80px; }
  .recruit-message > .wrap { display: flex; justify-content: space-between; align-items: center; }
  .recruit-message-title { left: 155px; }
  .recruit-message-title--s { font-size: 1.8rem; }
  .recruit-message-title--l { margin-top: 2px; font-size: 6rem; }
  .recruit-message-lead { padding-left: 240px; font-size: 1.8rem; line-height: 2.66666666667; }
  .recruit-message-photo { width: 32.590051458%; }
}

/* philosophy
------------------------------------------------ */
.recruit-philosophy { position: relative; border-radius: 90px 0 0 0; overflow: hidden; z-index: 1; }
.recruit-philosophy::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url(../../img/recruit/bg1.png) repeat-y center top; background-size: 100%; z-index: -1; }
.recruit-philosophy-nav { position: relative; }
.recruit-philosophy-graph { position: relative; width: 69.4828095238%; }
.recruit-philosophy-nav__links--item { position: relative; border-bottom: 1px solid #534741; }
.recruit-philosophy-nav__links--item:not(:first-child) { margin-top: 15px; }
.recruit-philosophy-nav__links--item > a { display: flex; position: relative; padding: 12px 0; align-items: baseline; }
.recruit-philosophy-nav__links--item > a::after { content: ''; position: absolute; top: 50%; right: 2px; margin-top: -8px; width: 15px; height: 15px; background: url(../../img/recruit/arrow_down1.svg) no-repeat center center; background-size: 100% 100%; }
.recruit-philosophy-nav__links--num { width: 30px; font-family: 'Overpass', sans-serif; font-size: 1.4rem; font-weight: 600; line-height: 1.2; }
.recruit-philosophy-nav__links--title { font-size: 1.6rem; font-weight: 700; line-height: 1.2; }
.recruit-philosophy-nav__links--en { margin-left: 12px; font-family: 'Overpass', sans-serif; font-size: 1rem; font-weight: 600; line-height: 1.2; color: #968c85; }
.recruit-philosophy-lists { margin-top: 48px; }
.recruit-philosophy-lists--item { position: relative; padding: 34px 24px 24px; background-color: #fff; border-radius: 5px; box-shadow: 1px 1px 5px rgba(102,70,0,0.2); }
.recruit-philosophy-lists--item::after { content: ''; position: absolute; right: 0; bottom: -32px; width: 64px; height: 32px; background: url(../../img/recruit/philosophy_balloon1.png) no-repeat left top; background-size: 100%; }
.recruit-philosophy-lists--item:not(:first-child) { margin-top: 53px; }
.recruit-philosophy-lists--num { position: absolute; top: 12px; left: 9px; font-family: 'Overpass', sans-serif; font-size: 1.4rem; font-weight: 600; line-height: 1.2; }
.recruit-philosophy-lists--num::after { content: ''; position: absolute; top: 16px; right: -32px; transform: rotate(-45deg); width: 58px; height: 1px; background-color: #736357; }
.recruit-philosophy-lists--title { position: relative; }
.recruit-philosophy-lists--ja,
.recruit-philosophy-lists--en { line-height: 1.2; }
.recruit-philosophy-lists--ja { font-size: 1.8rem; font-weight: 700; line-height: 1.2; }
.recruit-philosophy-lists--en { margin-top: 5px; font-family: 'Overpass', sans-serif; font-size: 1.2rem; font-weight: 600; line-height: 1.2; color: #968c85; }
.recruit-philosophy-lists__box { position: relative; }
.recruit-philosophy-lists__box--title { position: relative; padding-left: 20px; font-size: 1.5rem; font-weight: 700; line-height: 1.4; }
.recruit-philosophy-lists__box--title::before { content: ''; position: absolute; top: 4px; left: 0; width: 1px; height: calc(100% - 8px); background-color: #534741; }
.recruit-philosophy-lists__box--text { padding-top: 15px; font-size: 1.3rem; line-height: 1.84615384615; color: #736357; }

@media screen and (max-width: 768px) {
  .recruit-philosophy { padding: 64px 30px 60px; }
  .recruit-philosophy-nav { margin-top: 32px; }
  .recruit-philosophy-graph { margin: 0 auto;  }
  .recruit-philosophy-nav__links { display: none; margin-top: 30px; }
  .recruit-philosophy-lists--item { cursor: pointer; }
  .recruit-philosophy-lists--title { padding-left: 22px; }
  .recruit-philosophy-lists__box { margin-top: 24px; }
  .recruit-philosophy-lists__box::after,
  .recruit-philosophy-lists__box::before { content: ''; position: absolute; top: -18px; right: 0; transition: ease 0.4s; width: 18px; height: 1px; background-color: #534741; }
  .recruit-philosophy-lists__box::before { transform: rotate(90deg); }
  .recruit-philosophy-lists--item.active .recruit-philosophy-lists__box::before { transform: rotate(0); }
  .recruit-philosophy-lists__box--text { display: none; }
}

@media screen and (min-width: 769px) {
  .recruit-philosophy { padding: 170px 0 140px; border-radius: 180px 0 0 0; }
  .recruit-philosophy .title-group { position: absolute; top: 0; left: 90px; }
  .recruit-philosophy-nav { display: flex; flex-flow: row-reverse; justify-content: space-between; align-items: flex-end; margin: 0 72px; }
  .recruit-philosophy-graph { width: 43.6%; }
  .recruit-philosophy-graph::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-repeat: no-repeat; background-position: center center; background-size: cover; }
  .recruit-philosophy-graph::after { background-image: url(../../img/recruit/philosophy_graph1.png); }
  .recruit-philosophy-graph.active-2::after { background-image: url(../../img/recruit/philosophy_graph2.png); }
  .recruit-philosophy-graph.active-3::after { background-image: url(../../img/recruit/philosophy_graph3.png); }
  .recruit-philosophy-graph img { opacity: 0; }
  .recruit-philosophy-nav__links { width: 39%; }
  .recruit-philosophy-lists { margin: 145px 50px 0; }
  .recruit-philosophy-lists--item { display: flex; align-items: center; padding: 48px 60px 55px 0; border-radius: 10px; }
  .recruit-philosophy-lists--item::after { bottom: -60px; width: 128px; height: 60px; }
  .recruit-philosophy-lists--item:nth-of-type(2n)::after { left: 0; transform: scaleX(-1); }
  .recruit-philosophy-lists--item:not(:first-child) { margin-top: 68px; }
  .recruit-philosophy-lists--num { top: 18px; left: 18px; font-size: 2rem; }
  .recruit-philosophy-lists--num::after { top: 28px; right: -33px; width: 72px; }
  .recruit-philosophy-lists--title { width: 378px; text-align: center; }
  .recruit-philosophy-lists--ja { font-size: 2.2rem; }
  .recruit-philosophy-lists--en { margin-top: 5px; font-size: 1.4rem; }
  .recruit-philosophy-lists__box { width: calc(100% - 378px); }
  .recruit-philosophy-lists__box--title { padding-left: 26px; font-size: 2.2rem; line-height: 1.77272727273; }
  .recruit-philosophy-lists__box--text { display: block !important; padding-top: 28px; font-size: 1.4rem; line-height: 2.14285714286; color: #736357; }
}

/* slide
------------------------------------------------ */
.recruit-slide { position: relative; opacity: 0; }
.recruit-slide-frame { position: relative; width: 100%; overflow: hidden; }
.recruit-slide-move { display: flex; }
.recruit-slide-item { position: relative; }

@media screen and (max-width: 768px) {
}

@media screen and (min-width: 769px) {
}

/* feature
------------------------------------------------ */
.recruit-feature { position: relative; padding: 72px 0 62px; }
.recruit-feature .title-group { text-align: center; }
.recruit-feature .title-group-sub { justify-content: center; }
.recruit-feature-tap { margin: 25px auto 0; width: 59.0666666667%; }
.recruit-feature-lists { display: flex; flex-wrap: wrap; }
.recruit-feature-balloon { position: relative; }
.recruit-feature-balloon > .frame { display: flex; flex-flow: column; justify-content: center; align-items: center; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url(../../img/recruit/feature_balloon1.png) no-repeat center center; background-size: 100% 100%; overflow: hidden; }
.device-click .recruit-feature-balloon > .frame { transition: ease 0.4s; }
.device-click .recruit-feature-balloon:hover > .frame,
.recruit-feature-balloon.active > .frame { background-image: url(../../img/recruit/feature_balloon2.png); }
.recruit-feature-balloon--num { margin-bottom: 15px; font-family: 'Overpass', sans-serif; font-size: 1.1rem; font-weight: 600; line-height: 1.2; }
.recruit-feature-balloon--copy { text-align: center; line-height: 1.2; }
.recruit-feature-balloon--copy strong,
.recruit-feature-balloon--copy span { display: block; font-weight: 700; line-height: 1.2; }
.recruit-feature-balloon--copy strong { font-size: 2.5rem; }
.recruit-feature-balloon--copy span { margin-top: 4px; font-size: 1.4rem; color: #736357; }
.recruit-feature-lists .recruit-feature-balloon { cursor: pointer; }
.recruit-feature-text { padding: 18px 22px; font-size: 1.3rem; line-height: 1.84615384615; }
.recruit-feature-lists .recruit-feature-text { display: none; }
.recruit-feature-modal { display: none; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(115,99,87,0.5); z-index: 10; }
.recruit-feature-modal__balloon { position: relative; padding-bottom: 60%; width: 60%; height: 0; overflow: hidden; }
.recruit-feature-modal__balloon > .frame { display: flex; flex-flow: column; justify-content: center; align-items: center; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url(../../img/recruit/feature_balloon2.png) no-repeat center center; background-size: 100% 100%; overflow: hidden; }
.recruit-feature-modal__content { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 66.6666666667%; background-color: #fff; border-radius: 5px; }
.recruit-feature-modal__content::after { content: ''; position: absolute; right: 0; bottom: -32px; width: 64px; height: 32px; background: url(../../img/recruit/feature_balloon3.png) no-repeat left top; background-size: 100%; }
.recruit-feature-modal--close { position: absolute; top: 15px; right: 15px; width: 20px; height: 20px; text-indent: -9999px; white-space: nowrap; overflow: hidden; }
.recruit-feature-modal--close::before,
.recruit-feature-modal--close::after { content: ''; position: absolute; top: 50%; left: -5px; width: 30px; height: 1px; background-color: #534741; }
.recruit-feature-modal--close::before { transform: rotate(45deg); }
.recruit-feature-modal--close::after { transform: rotate(-45deg); }

@media screen and (max-width: 768px) {
  .recruit-feature-lists { margin: 40px 30px 0; }
  .recruit-feature-balloon { margin: 4.761904762% 4.761904762% 0 0; padding-bottom: 47.619047619%; width: 47.619047619%; }
  .recruit-feature-balloon:nth-of-type(-n+2) { margin-top: 0; }
  .recruit-feature-balloon:nth-of-type(2n) { margin-right: 0; }
  .recruit-feature-modal__balloon { margin: -26.6666666667vw auto 0; }
}

@media screen and (min-width: 769px) {
  .recruit-feature { padding: 82px 0 105px; }
  .recruit-feature-tap { display: none; }
  .recruit-feature-lists { margin: 55px auto 0; max-width: 747px; }
  .recruit-feature-balloon { margin: 9.83935742975% 9.83935742975% 0 0; padding-bottom: 26.7737617135%; width: 26.7737617135%; }
  .recruit-feature-balloon:nth-of-type(-n+3) { margin-top: 0; }
  .recruit-feature-balloon:nth-of-type(3n) { margin-right: 0; }
  .recruit-feature-balloon::after { content: ''; position: absolute; bottom: -10px; left: -14px; transition: ease 0.4s; width: 62px; height: 62px; background: url(../../img/recruit/feature_check1.png) no-repeat center center; background-size: 100% 100%; opacity: 0; }
  .device-click .recruit-feature-balloon:hover::after,
  .recruit-feature-balloon.active::after { opacity: 1; }
  .recruit-feature-balloon--num { margin-bottom: 22px; font-size: 1rem; }
  .recruit-feature-balloon--copy strong { font-size: 3.2rem; }
  .recruit-feature-balloon--copy span { margin-top: 6px; font-size: 1.6rem; }
  .recruit-feature-text { padding: 18px 22px; font-size: 1.4rem; line-height: 2.14285714286; }
  .recruit-feature-lists .recruit-feature-text { display: none; }
  .recruit-feature-modal__balloon { position: absolute; top: -40px; left: -50px; padding-bottom: 200px; width: 200px; }
  .recruit-feature-modal__balloon > .frame { display: flex; flex-flow: column; justify-content: center; align-items: center; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url(../../img/recruit/feature_balloon2.png) no-repeat center center; background-size: 100% 100%; overflow: hidden; }
  .recruit-feature-modal__content { display: flex; align-items: center; padding: 45px 90px 45px 186px; width: calc(100% - 40px); max-width: 800px; min-height: 230px; border-radius: 10px; }
  .recruit-feature-modal__content::after { bottom: -60px; width: 128px; height: 60px; }
  .recruit-feature-modal--close { top: 20px; right: 20px; width: 25px; height: 25px; }
  .recruit-feature-modal--close::before,
  .recruit-feature-modal--close::after { left: -3px; width: 32px; }
}

/* voice
------------------------------------------------ */
.recruit-voice { position: relative; padding: 40px 0 50px; background: url(../../img/recruit/bg1.png) repeat-y center top; background-size: 100%; }
.recruit-voice .title-group { text-align: center; }
.recruit-voice .title-group-sub { justify-content: center; }
.recruit-voice-slide { position: relative; margin-top: 30px; opacity: 0; }
.recruit-voice-slide__frame { position: relative; padding: 6px 0 20px; width: 100%; overflow: hidden; }
.recruit-voice-slide__move { display: flex; }
.recruit-voice-slide--item { position: relative; }
.recruit-voice-slide .slide-bullets { display: flex; justify-content: center; width: 100%; height: 5px; }
.recruit-voice-slide .slide-bullets > a { display: block; margin: 0 8px; width: 5px; height: 100%; background-color: #cacaca; border-radius: 50%; text-indent: -9999px; white-space: nowrap; overflow: hidden; }
.recruit-voice-slide .slide-bullets > a:first-child { margin-left: 0; }
.recruit-voice-slide .slide-bullets > a:last-child { margin-right: 0; }
.recruit-voice-slide .slide-bullets > a.active { background-color: #534741; }
.recruit-voice-balloon { position: relative; padding: 22px 18px; background-color: #fff; border-radius: 5px; box-shadow: 1px 1px 5px rgba(102,70,0,0.2); text-align: center; cursor: pointer; }
.recruit-voice-balloon::after { content: ''; position: absolute; bottom: -20px; width: 42px; height: 20px; background: url(../../img/recruit/voice_balloon1.png) no-repeat center center; background-size: 100% 100%; opacity: 0; }
.recruit-voice-balloon.active::after { opacity: 1; }
.recruit-voice-balloon--num { display: inline-block; position: relative; text-align: center; vertical-align: top; font-family: 'Overpass', sans-serif; font-size: 1.3rem; font-weight: 600; line-height: 1.2; z-index: 1; }
.recruit-voice-balloon--num::after { content: ''; position: absolute; bottom: 1px; left: 0; padding: 0 2px; width: 100%; height: 6px; background-color: #f0ee00; z-index: -1; }
.recruit-voice-balloon--copy { position: relative; margin-top: 6px; font-size: 1.8rem; font-weight: 700; line-height: 1.2; }
.recruit-voice-balloon--copy::after { content: ''; position: absolute; top: 50%; right: 0; margin-top: -3px; width: 12px; height: 6px; background: url(../../img/recruit/arrow_down2.svg) no-repeat center center; background-size: 100% 100%; }
.recruit-voice-detail__description { position: relative; overflow: hidden; }
.recruit-voice-detail__description__move { position: relative; }
.recruit-voice-detail__description__item { position: relative; }
.recruit-voice-text { padding: 18px 10px; background-color: #fff; border-radius: 52px; text-align: center; font-size: 1.5rem; font-weight: 700; letter-spacing: 0.02em; line-height: 1.50545333333; }
.recruit-voice-balloon .recruit-voice-text { display: none; }
.recruit-voice-detail { position: relative; background: url(../../img/recruit/bg1.png) repeat-y center top; background-size: 100%; }
.recruit-voice-detail--illust { position: relative; mix-blend-mode: multiply; -webkit-mix-blend-mode: multiply; }
.recruit-voice-detail--illust::before { content: ''; position: absolute; background-repeat: no-repeat; background-position: center center; background-size: 100% 100%; opacity: 0; }
.recruit-voice-detail--illust.active::before { transition: opacity 0.4s ease; opacity: 1; }
.recruit-voice-detail.voice-1 .recruit-voice-detail--illust::before { top: 19.6363636364%; left: 10.7142857143%; width: 7.14285714286%; height: 14.5454545455%; background-image: url(../../img/recruit/voice_dec1.png); }
.recruit-voice-detail.voice-2 .recruit-voice-detail--illust::before { top: -6%; left: 58%; width: 7.14285714286%; height: 14.5454545455%; background-image: url(../../img/recruit/voice_dec2.png); }
.recruit-voice-detail.voice-3 .recruit-voice-detail--illust::before { top: 17.4545454545%; right: 19.1071428571%; width: 6.07142857143%; height: 13.0909090909%; background-image: url(../../img/recruit/voice_dec3.png); }

@media screen and (max-width: 768px) {
  .recruit-voice .title-group-sub { line-height: 1.53333333333; }
  .recruit-voice .title-group-sub::before,
  .recruit-voice .title-group-sub::after { margin-top: 28px; }
  .recruit-voice .title-group-sub::after { margin-left: 8px; }
  .recruit-voice-balloon--copy::after { display: none; }
  .recruit-voice-slide--item:nth-of-type(1) .recruit-voice-balloon::after { left: 3px; }
  .recruit-voice-slide--item:nth-of-type(2) .recruit-voice-balloon::after,
  .recruit-voice-slide--item:nth-of-type(3) .recruit-voice-balloon::after { right: 3px; transform: scaleX(-1); }
  .recruit-voice-detail { margin: 40px 30px 0; }
  .recruit-voice-detail--illust { margin: 0 15px; }
  .recruit-voice-detail__description { margin: 35px -30px 0; width: calc(100% + 60px); }
  .recruit-voice-detail__description__move { display: flex; }
  .recruit-voice-detail__description__item { display: block !important; padding: 0 30px; }
}

@media screen and (min-width: 769px) {
  .recruit-voice { padding: 80px 0; }
  .recruit-voice .title-group-sub { font-size: 2rem; }
  .recruit-voice-slide { margin-top: 44px; }
  .recruit-voice-slide__move { justify-content: center; margin: 0 auto; max-width: 1062px; }
  .recruit-voice-slide--item { width: 31.2617702448%; }
  .recruit-voice-slide--item:not(:first-child) { margin-left: 3.1073446328%; }
  .recruit-voice-slide .slide-bullets { display: none; }
  .recruit-voice-balloon { padding: 35px 18px; border-radius: 10px; }
  .recruit-voice-balloon::after { bottom: -25px; width: 55px; height: 25px; }
  .recruit-voice-slide--item:nth-of-type(1) .recruit-voice-balloon::after { right: 3px; transform: scaleX(-1); }
  .recruit-voice-slide--item:nth-of-type(2) .recruit-voice-balloon::after { left: 50%; transform: translateX(-50%); }
  .recruit-voice-slide--item:nth-of-type(3) .recruit-voice-balloon::after { left: 3px; }
  .recruit-voice-balloon--num { font-size: 1.6rem; }
  .recruit-voice-balloon--num::after { height: 7px; }
  .recruit-voice-balloon--copy { margin-top: 12px; font-size: 2rem; }
  .recruit-voice-balloon--copy::after { display: inline-block; position: relative; top: auto; right: auto; margin: 10px 0 0 14px; vertical-align: top; }
  .recruit-voice-detail__description { margin: 35px auto 0; max-width: 630px; }
  .recruit-voice-detail__description__move { transform: none !important; width: 100% !important; }
  .recruit-voice-detail__description__item { display: none; }
  .recruit-voice-text { padding: 15px 10px; border-radius: 27.5px; font-size: 1.6rem; }
  .recruit-voice-detail { margin-top: 30px; }
  .recruit-voice-detail--illust { margin: 0 auto; width: 342px; }
  .recruit-voice-detail--illust::before { content: ''; position: absolute; background-repeat: no-repeat; background-position: center center; background-size: 100% 100%; }
  .recruit-voice-detail.voice-1 .recruit-voice-detail--illust::before { top: 30px; left: 36px; width: 22px; height: 21px; }
  .recruit-voice-detail.voice-2 .recruit-voice-detail--illust::before { top: -8px; right: 112px; width: 21px; height: 16px; }
  .recruit-voice-detail.voice-3 .recruit-voice-detail--illust::before { top: 28px; right: 65px; width: 20px; height: 22px; }
}

/* case
------------------------------------------------ */
.recruit-case { position: relative; margin-top: 60px; }
.recruit-case .title-group { text-align: center; }
.recruit-case-lists--photo { width: 100%; overflow: hidden; }
.recruit-case-lists--photo > a { display: block; width: 100%; }
.recruit-case-lists--cat { display: flex; flex-wrap: wrap; margin-bottom: 15px; font-size: 1.7rem; font-weight: 700; line-height: 1.2; }
.recruit-case-lists--cat > span { display: inline-block; padding: 5px 18px; background-color: #534741; vertical-align: top; color: #fff; }
.recruit-case-lists--title { font-size: 1.6rem; font-weight: 700; line-height: 1.5; }
.recruit-case-lists .btn-1 { margin-top: 45px; }

.device-click .recruit-case-lists--photo img { transition: ease 0.4s; }
.device-click .recruit-case-lists--photo > a:hover img { transform: scale(1.03); }

@media screen and (max-width: 768px) {
  .recruit-case .title-group { margin-bottom: 20px; }
  .recruit-case-lists--photo { margin-bottom: 20px; }
  .recruit-case-lists--cat { justify-content: center; }
  .recruit-case-lists--title { text-align: center; }
  .recruit-case-slide .slide-1-direct { top: 61vw; }
  .recruit-case-slide .slide-1-direct--prev { left: 52px; }
  .recruit-case-slide .slide-1-direct--next { right: 52px; }
  .recruit-case-slide .slide-1-bullets { position: absolute; bottom: 70px; left: 0; }
}

@media screen and (min-width: 769px) {
  .recruit-case { margin-top: 120px; }
  .recruit-case-lists--item { display: flex; align-items: center; }
  .recruit-case-lists--photo { margin: 0 20px 0 60px; width: calc(100% - 568px); }
  .recruit-case-lists__info { margin-right: 128px; width: 360px; }
  .recruit-case-lists--cat { margin-bottom: 28px; font-size: 2.4rem; }
  .recruit-case-lists--cat > span { padding: 6px 20px; }
  .recruit-case-lists--title { font-size: 1.8rem; line-height: 1.61111111111; }
  .recruit-case-lists .btn-1 { margin-top: 50px; }
  .recruit-case-slide .slide-1-direct { bottom: 2px; }
  .recruit-case-slide .slide-1-direct--prev { left: 50%; margin-left: -144px; }
  .recruit-case-slide .slide-1-direct--next { right: 50%; margin-right: -144px; }
  .recruit-case-slide .slide-1-bullets { margin-top: 50px; }
}


/* guideline
------------------------------------------------ */
.recruit-guideline { position: relative; margin-top: 58px; border-radius: 90px 0 0 0; overflow: hidden; z-index: 1; }
.recruit-guideline::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url(../../img/recruit/bg1.png) repeat-y center top; background-size: 100%; z-index: -1; }
.recruit-guideline-detail { margin-top: 26px; }
.recruit-guideline-detail__box { background-color: #fff; border: 1px solid #736357; }
.recruit-guideline-detail__box:not(:first-child) { margin-top: 16px; }
.recruit-guideline-detail__box--title { position: relative; padding: 12px 30px 12px 60px; font-size: 1.6rem; font-weight: 700; line-height: 1.3125; cursor: pointer; }
.recruit-guideline-detail__box--title::before,
.recruit-guideline-detail__box--title::after { content: ''; position: absolute; background-repeat: no-repeat; background-position: center center; background-size: 100% 100%; }
.recruit-guideline-detail__box--title::before { top: 14px; left: 14px; width: 30px; height: 17px; background-image: url(../../img/recruit/guideline_icon_loudspeaker.svg); }
.recruit-guideline-detail__box--title::after { top: 50%; right: 18px; transition: ease 0.4s; margin-top: -2px; width: 10px; height: 5px; background-image: url(../../img/recruit/arrow_down2.svg); }
.recruit-guideline-detail__box--title.active::after { transform: rotate(180deg); }
.recruit-guideline-detail__box--title span { display: inline-block; vertical-align: baseline; font-size: 1.3rem; }
.recruit-guideline-detail__box__content { display: none; position: relative; padding: 0 12px; }
.recruit-guideline-detail--target { position: relative; padding: 12px 0 14px; border-top: 1px dotted #968c85; }
.recruit-guideline-detail--title { font-size: 1.4rem; font-weight: 700; line-height: 1.2; }
.recruit-guideline-detail--icon { margin: -6px 0 0 -6px; }
.recruit-guideline-detail--icon > i { display: inline-block; margin: 6px 0 0 6px; padding: 3px 5px; width: 55px; background-color: #f0ee00; border-radius: 10px; text-align: center; vertical-align: top; font-style: normal; font-size: 1.2rem; font-weight: 700; line-height: 1.2; }
.recruit-guideline-detail__content { position: relative; }
.recruit-guideline-detail__content > dl { display: flex; padding: 12px 0; }
.recruit-guideline-detail__content > dl + dl { border-top: 1px solid #e6e2dd; }
.recruit-guideline-detail__content > dl > dt,
.recruit-guideline-detail__content > dl > dd { font-size: 1.2rem; line-height: 1.5; }
.recruit-guideline-detail__content > dl > dt { width: 72px; font-weight: 700; }
.recruit-guideline-detail__content > dl > dd { width: calc(100% - 72px); color: #534741; }
.recruit-guideline-detail__content > dl > dd .mark { display: inline-block; margin-right: 6px; padding: 1px 6px; background-color: #e6e2dd; vertical-align: baseline; font-style: normal; font-size: 1.1rem; line-height: 1.2; color: #736357; }
.recruit-guideline-detail__content > dl > dd ul > li { position: relative; padding-left: 1em; }
.recruit-guideline-detail__content > dl > dd ul > li::before { content: '\30FB'; position: absolute; top: 0; left: 0; }
.recruit-guideline-flow { margin-top: 64px; }
.recruit-guideline-flow--title { margin: 0 auto 26px; padding: 8px 0; width: 250px; background-color: #534741; text-align: center; font-size: 1.7rem; font-weight: 700; line-height: 1.2; color: #fff; }
.recruit-guideline-flow__content { position: relative; }
.recruit-guideline-flow__lists { display: flex; }
.recruit-guideline-flow__lists--item { position: relative; z-index: 1; }
.recruit-guideline-flow__lists--item:not(:last-child)::after { content: ''; position: absolute; top: 50%; margin-top: -2px; width: 100%; height: 0; border-top: 1px dotted #968c85; z-index: -1; }
.recruit-guideline-flow__lists--item > .frame { display: flex; flex-flow: column; justify-content: center; position: relative; width: 43.4666666667vw; height: 43.4666666667vw; background-color: #fff; border-radius: 50%; }
.recruit-guideline-flow__lists--item:not(:last-child) > .frame::after { content: ''; position: absolute; top: 50%; right: -18px; margin-top: -12px; width: 20px; height: 23px; background: url(../../img/recruit/guideline_balloon1.png) no-repeat center center; background-size: 100% 100%; }
.recruit-guideline-flow__lists--icon { display: block; margin: 0 auto; }
.recruit-guideline-flow__lists--item:nth-of-type(1) .recruit-guideline-flow__lists--icon { width: 28px; height: 33px; }
.recruit-guideline-flow__lists--item:nth-of-type(2) .recruit-guideline-flow__lists--icon { width: 30px; height: 28px; }
.recruit-guideline-flow__lists--item:nth-of-type(3) .recruit-guideline-flow__lists--icon { width: 35px; height: 30px; }
.recruit-guideline-flow__lists--item:nth-of-type(4) .recruit-guideline-flow__lists--icon { width: 30px; height: 29px; }
.recruit-guideline-flow__lists--name { margin-top: 12px; text-align: center; font-size: 1.6rem; font-weight: 700; line-height: 1.2; }

@media screen and (max-width: 768px) {
  .recruit-guideline { padding: 64px 30px 50px; }
  .recruit-guideline-detail--target { display: flex; flex-wrap: wrap; }
  .recruit-guideline-detail--icon { margin: -8px 0 0 10px; }
  .recruit-guideline-detail__content { margin-top: 10px; width: 100%; }
  .recruit-guideline-detail__content > dl > dd .sp-margin { display: inline-block; margin-top: 5px; vertical-align: top; }
  .recruit-guideline-flow__content { margin: 0 -30px; width: calc(100% + 60px); overflow-x: auto; }
  .recruit-guideline-flow__lists { width: calc((64.6666666667vw * 4) + 27.3333333333vw + 6vw); }
  .recruit-guideline-flow__lists--item { width: 64.6666666667vw; }
  .recruit-guideline-flow__lists--item:nth-of-type(1) { margin-left: 27.3333333333vw; }
}

@media screen and (min-width: 769px) {
  .recruit-guideline { margin-top: 58px; padding: 100px 0 134px; border-radius: 180px 0 0 0; }
  .recruit-guideline .title-group { padding: 0 92px; }
  .recruit-guideline-detail { margin-top: 50px; padding: 0 105px; }
  .recruit-guideline-detail__box:not(:first-child) { margin-top: 25px; }
  .recruit-guideline-detail__box--title { padding: 24px 60px 24px 100px; font-size: 2.2rem; }
  .recruit-guideline-detail__box--title::before { top: 26px; left: 28px; width: 45px; height: 25px; }
  .recruit-guideline-detail__box--title::after { right: 38px; margin-top: -5px; width: 20px; height: 10px; }
  .recruit-guideline-detail__box--title span { font-size: 1.8rem; }
  .recruit-guideline-detail__box__content { padding: 0 28px; }
  .recruit-guideline-detail--target { padding: 30px 0 25px 185px; }
  .recruit-guideline-detail--title { position: absolute; top: 50%; left: 0; transform: translateY(-50%); width: 185px; text-align: center; font-size: 1.6rem; }
  .recruit-guideline-detail--icon { margin: -8px 0 0 -8px; }
  .recruit-guideline-detail--icon > i { margin: 8px 0 0 8px; padding: 4px 5px; width: 80px; border-radius: 14px; font-size: 1.6rem; }
  .recruit-guideline-detail__content > dl { padding: 14px 0; }
  .recruit-guideline-detail__content > dl > dt,
  .recruit-guideline-detail__content > dl > dd { font-size: 1.4rem; line-height: 1.96428571429; }
  .recruit-guideline-detail__content > dl > dt { padding: 0 8px; width: 130px; }
  .recruit-guideline-detail__content > dl > dd { width: calc(100% - 130px); }
  .recruit-guideline-detail__content > dl > dd .mark { margin-right: 10px; padding: 1px 6px; font-size: 1.2rem; }
  .recruit-guideline-detail__content > dl > dd .sp-margin { display: inline-block; margin-top: 5px; vertical-align: top; }
  .recruit-guideline-flow { margin-top: 100px; }
  .recruit-guideline-flow--title { margin: 0 auto 26px; padding: 12px 0; width: 374px; font-size: 2.2rem; }
  .recruit-guideline-flow__content { margin: 55px auto 0; max-width: 970px; overflow-x: auto; }
  .recruit-guideline-flow__lists { justify-content: space-between; }
  .recruit-guideline-flow__lists--item:not(:last-child)::after { margin-top: -2px; width: 100%; height: 0; border-top: 1px dotted #968c85; z-index: -1; }
  .recruit-guideline-flow__lists--item { width: 192px; }
  .recruit-guideline-flow__lists--item:not(:last-child) { padding-right: 66px; width: 292px; }
  .recruit-guideline-flow__lists--item > .frame { width: 192px; height: 192px; }
  .recruit-guideline-flow__lists--item:not(:last-child) > .frame::after { right: -22px; margin-top: -15px; width: 24px; height: 30px; }
  .recruit-guideline-flow__lists--name { margin-top: 12px; font-size: 2rem; }
}

/* entry
------------------------------------------------ */
.recruit-entry-trigger { position: relative; z-index: 2; }
.recruit-entry-trigger > a { display: block; position: relative; padding: 20px 0 12px; background-color: #f0ee00; }
.recruit-entry-trigger .wrap::after { content: ''; position: absolute; top: 50%; right: 25px; transition: ease 0.4s; margin-top: -6px; width: 10px; height: 13px; background: url(../../img/recruit/arrow_down3.svg) no-repeat center center; background-size: 100% 100%; }
.recruit-entry-trigger > a.active .wrap::after { transform: rotate(180deg); }
.recruit-entry-trigger--en,
.recruit-entry-trigger--ja { line-height: 1.2; }
.recruit-entry-trigger--en { font-family: 'Overpass', sans-serif; font-size: 2.5rem; font-weight: 600; letter-spacing: 0.04em; }
.recruit-entry-trigger--ja { font-size: 1.35rem; font-weight: 700; letter-spacing: 0; color: #736357; }

#entry { display: none; }
.recruit-entry { position: relative; background: url(../../img/recruit/bg1.png) repeat-y center top; background-size: 100%; }
.recruit-entry-lead { text-align: center; font-size: 1.2rem; line-height: 2; }
.recruit-entry-note { margin-top: 20px; text-align: center; font-size: 1.1rem; line-height: 1.2; color: #736357; }
.recruit-entry .inquiry { color: #de1c24; }
.recruit-entry-content { margin-top: 26px; }

.recruit-entry button,
.recruit-entry input,
.recruit-entry select,
.recruit-entry textarea { appearance: none; -webkit-appearance: none; -moz-appearance: none; -ms-appearance: none; background: none; border: none; border-radius: 0; box-shadow: none; font-family: inherit; color: #534741; }

.recruit-entry-box:not(:first-child) { margin-top: 25px; }
.recruit-entry-box--title { font-size: 1.3rem; font-weight: 700; line-height: 1.2; }
.recruit-entry-box__content { display: flex; align-items: center; }
.recruit-entry-input { position: relative; }
.recruit-entry-input.w-100 { width: 100%; }
.recruit-entry-input.w-50 { width: 50%; }
.recruit-entry-input input,
.recruit-entry-input select,
.recruit-entry-input textarea { display: block; padding: 10px 15px; width: 100%; background-color: #fff; border: 1px solid #f4f2f0; border-radius: 4px; font-size: 1.1rem; }
.recruit-entry-input select { background-image: url(../../img/recruit/arrow_down2.svg); background-repeat: no-repeat; background-position: center right 12px; background-size: 8px 4px; }
.recruit-entry-input textarea { height: 205px; }
.recruit-entry-input input[type='file'] { padding: 0; background: none; border: none; border-radius: 0; }
.recruit-entry-input input:focus,
.recruit-entry-input textarea:focus { border-color: #898075; outline: none; }
.recruit-entry-input input.error-input,
.recruit-entry-input select.error-input,
.recruit-entry-input textarea.error-input,
.recruit-entry-input input.wpcf7-not-valid,
.recruit-entry-input select.wpcf7-not-valid,
.recruit-entry-input textarea.wpcf7-not-valid { border-color: #de1c24; }
.recruit-entry-input .error-text { position: absolute; top: 11px; left: 15px; color: #de1c24; }
.recruit-entry-box--note { padding-left: 10px; width: 50%; font-size: 1.1rem; line-height: 1.2; color: #8a8075; }
.recruit-entry-agree { margin-top: 35px; }
.recruit-entry-agree--text { text-align: center; font-size: 1.2rem; line-height: 2; }
.recruit-entry-agree--check { position: relative; margin-top: 42px; text-align: center; }
.recruit-entry-agree--check .wpcf7-form-control-wrap { position: revert; }
.recruit-entry-agree--check label { display: inline-flex; align-items: center; position: relative; vertical-align: top; }
.recruit-entry-agree--check label input { position: relative; width: 12px; height: 12px; border: 1px solid #534741; }
.recruit-entry-agree--check label .wpcf7-list-item-label { display: inline-block; text-indent: -9999px; white-space: nowrap; vertical-align: top; overflow: hidden; }
.recruit-entry-agree--check label input:checked + .wpcf7-list-item-label::before { content: ''; position: absolute; top: 2px; left: 3px; width: 13px; height: 8px; background: url(../../img/icon/check1.svg) no-repeat center center; background-size: 100% 100%; }
.recruit-entry-agree--check .text { display: inline-block; position: relative; padding-left: 15px; vertical-align: top; font-size: 1.2rem; font-weight: 700; line-height: 1.2; }
.recruit-entry-agree--check .text a { text-decoration: underline; }
.device-click .recruit-entry-agree--check .text a:hover { text-decoration: none; }
.recruit-entry-btns { margin-top: 45px; }
.recruit-entry-btns--item { position: relative; }
.recruit-entry-btns--item > button,
.recruit-entry-btns--item > a,
.recruit-entry-btns--item input { display: block; position: relative; padding: 15px 10px; width: 100%; border: 1px solid #b0a69f; text-align: center; font-size: 1.2rem; font-weight: 700; line-height: 1.2; color: #534741; cursor: pointer; }
.recruit-entry-btns--item .i-arrow { position: absolute; top: 50%; right: 12px; margin-top: -3px; }
.recruit-entry-btns--item .wpcf7-spinner { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); }

.recruit-entry-content .wpcf7-not-valid-tip { position: relative; margin-top: 10px; color: #de1c24; }
.recruit-entry-agree--check .wpcf7-not-valid-tip { position: absolute; top: auto; bottom: -20px; left: 0; width: 100%; text-align: center; }
.recruit-entry-content form .wpcf7-response-output { padding: 16px; text-align: center; font-size: 1.2rem; }

@media screen and (max-width: 768px) {
  .recruit-entry-trigger::before { content: ''; position: absolute; top: -17px; right: 0; width: 45px; height: 17px; background: url(../../img/recruit/entry_balloon1.png) no-repeat center center; background-size: 100% 100%; }
  .recruit-entry-trigger .wrap { display: flex; justify-content: center; align-items: baseline; }
  .recruit-entry-trigger--ja { margin-left: 10px; }
  .recruit-entry { padding: 35px 30px 40px; }
  .recruit-entry-box__content { margin-top: 6px; }
  .recruit-entry-btns--item { margin: 20px 23px 0; }
}

@media screen and (min-width: 769px) {
  .recruit-entry-trigger { text-align: center; }
  .recruit-entry-trigger > a { padding: 82px 0 70px; }
  .recruit-entry-trigger .wrap::after { right: 84px; margin-top: -13px; width: 20px; height: 26px; }
  .recruit-entry-trigger--en { font-size: 6rem; }
  .recruit-entry-trigger--ja { margin-top: -2px; font-size: 1.95946rem; }

  .recruit-entry { margin: 0 auto; padding: 70px 0 127px; }
  .recruit-entry-lead { font-size: 1.4rem; line-height: 2.14285714286; }
  .recruit-entry-note { margin-top: 26px; font-size: 1.4rem; }
  .recruit-entry-content { margin: 78px auto 0; max-width: 852px; }
  .recruit-entry-box { display: flex; }
  .recruit-entry-box:not(:first-child) { margin-top: 30px; }
  .recruit-entry-box--title { padding-top: 18px; width: 230px; font-size: 1.6rem; }
  .recruit-entry-box__content { width: calc(100% - 230px); }
  .recruit-entry-input input,
  .recruit-entry-input select,
  .recruit-entry-input textarea { padding: 15px 30px; border-radius: 7px; font-size: 1.4rem; }
  .recruit-entry-input textarea { height: 290px; }
  .recruit-entry-input .error-text { top: 15px; left: 30px; font-size: 1.4rem; }
  .recruit-entry-box--note { margin-left: 30px; font-size: 1.4rem; }
  .recruit-entry-agree { margin-top: 80px; }
  .recruit-entry-agree--text { font-size: 1.4rem; line-height: 2.14285714286; }
  .recruit-entry-agree--check { margin-top: 50px; }
  .recruit-entry-agree--check label input { width: 20px; height: 20px; }
  .recruit-entry-agree--check label input:checked + .wpcf7-list-item-label::before { left: 3px; width: 21px; height: 13px; }
  .recruit-entry-agree--check .text { padding-left: 25px; font-size: 1.6rem; }

  .recruit-entry-btns { display: flex; justify-content: center; margin-top: 68px; }
  .recruit-entry-btns--item { width: 360px; }
  .recruit-entry-btns--item:not(:first-child) { margin-left: 20px; }
  .recruit-entry-btns--item > button,
  .recruit-entry-btns--item > a,
  .recruit-entry-btns--item input { padding: 20px 10px; font-size: 1.6rem; }
  .recruit-entry-btns--item .i-arrow { right: 22px; width: 33px; }

  .recruit-entry-content .wpcf7-not-valid-tip { margin-top: 15px; font-size: 1.4rem; }
  .recruit-entry-agree--check .wpcf7-not-valid-tip { top: auto; bottom: -30px; left: 0; }
  .recruit-entry-content form .wpcf7-response-output { padding: 20px; font-size: 1.4rem; }
}

/* thanks
------------------------------------------------ */
.recruit-thanks { position: relative; padding-top: 65px; }
.recruit-thanks-title { text-align: center; }
.recruit-thanks-title::before { content: ''; display: block; margin: 0 auto 30px; width: 52px; height: 60px; background: url(../../img/contact/thanks.svg) no-repeat center center; background-size: 100% 100%; }
.recruit-thanks-title--en { font-family: 'Overpass', sans-serif; font-size: 3.9rem; font-weight: 600; line-height: 1.2; }
.recruit-thanks-title--ja { margin-top: 8px; font-size: 1.5rem; font-weight: 700; line-height: 1.2; }
.recruit-thanks-text { margin-top: 36px; text-align: center; font-size: 1.2rem; line-height: 2.16666666667; }

@media screen and (max-width: 768px) {
  .recruit-thanks { margin: 0 30px; }
}

@media screen and (min-width: 769px) {
  .recruit-thanks { padding-top: 120px; }
  .recruit-thanks-title::before { margin-bottom: 40px; width: 68px; height: 80px; }
  .recruit-thanks-title--en { font-size: 6rem; }
  .recruit-thanks-title--ja { font-size: 2rem; }
  .recruit-thanks-text { margin-top: 65px; font-size: 1.4rem; line-height: 2.14285714286; }
}
