@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@300;400;500;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Concert+One&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+Antique:wght@300;400;500;700;900&display=swap");
:root {
  --f-noto: "Noto Sans JP", serif;
  --f-mincho: "Noto Serif JP","游明朝体", "Yu Mincho", sans-serif;
  --f-concertone: "Concert One", sans-serif;
  --f-zenmaru: "Zen Maru Gothic", sans-serif;
  --f-zenkaku: "Zen Kaku Gothic Antique", sans-serif;
  --cl-base: #1cc18e;
  --cl-base-y: #fff116;
  --cl-base-y-bg: #f8ec54;
  --cl-base-k: #002e33;
  --cl-base-b: #f9f8e4;
  --cl-base-lg: #6ad679;
  --cl-text-g: #07a272;
  --cl-line: #c9c9c0;
  --cl-em: #f70b74;
  --cl-light-bg: #def6eb;
}

/* ブレイクポイント参考

PC:インナーコンテンツサイズ以上
Laptop-HiDPI:1440
Laptop-MDPI :1280
iPad Pro(10.5inch):834
iPad Pro(12.9inch):1024
iPad:601
SP:600

*/
/* レスポンシブサイト非表示 */
/* PCのみ */
@media screen and (max-width: 1199px) {
  .pc {
    display: none !important;
  }
}
/* タブレット・PC */
@media screen and (max-width: 639px) {
  .tbpc {
    display: none !important;
  }
}
/* タブレット・SP */
@media screen and (min-width: 1200px) {
  .tbsp {
    display: none !important;
  }
}
/* タブレットのみ */
@media screen and (max-width: 639px) {
  .tb {
    display: none !important;
  }
}
@media screen and (min-width: 1200px) {
  .tb {
    display: none !important;
  }
}
/* SPのみ */
@media screen and (min-width: 640px) {
  .sp {
    display: none !important;
  }
}
/* 幅1300以上 */
@media screen and (max-width: 1699px) {
  .w1700up {
    display: none !important;
  }
}
@media screen and (min-width: 1200px) {
  a[href^="tel:"] {
    pointer-events: none;
    cursor: auto;
  }
}
/*
@acab/reset.css+A (more) Modern CSS Reset
https://coliss.com/articles/build-websites/operation/css/a-more-modern-css-reset.html
https://coliss.com/articles/build-websites/operation/css/acab-reset-css.html
*/
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
  font-size: 62.5%;
  color-scheme: dark light;
  tab-size: 2;
  scrollbar-gutter: stable;
  scroll-behavior: smooth;
}

body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd,
ul,
ol {
  margin: 0;
  padding: 0;
}

/*body設定*/
body {
  margin: 0;
  padding: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic", Verdana, Meiryo, sans-serif;
  -webkit-text-size-adjust: none;
  font-family: system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
  line-height: 1.8;
  font-size: 1.4rem;
  overflow-x: hidden;
  text-rendering: optimizeSpeed;
  color: var(--cl-base-k);
  letter-spacing: 0.08em;
  background-color: #fff;
}
@media screen and (min-width: 640px) {
  body {
    font-size: 1.5rem;
  }
}
@media screen and (min-width: 1200px) {
  body {
    font-size: 1.6rem;
  }
}

h1,
h2,
h3,
h4,
button,
input,
label {
  line-height: 1.1;
}

h1,
h2,
h3,
h4 {
  text-wrap: balance;
}

a:not([class]) {
  text-decoration-skip-ink: auto;
  color: currentColor;
}

img,
picture {
  max-width: 100%;
  display: block;
}

input,
button,
textarea,
select {
  font: inherit;
  box-sizing: border-box;
}

textarea:not([rows]) {
  min-height: 10em;
}

:target {
  scroll-margin-block: 5ex;
}

:where([hidden]:not([hidden=until-found])) {
  display: none !important;
}

:where(html:has(dialog:modal[open])) {
  overflow: clip;
}

@media (prefers-reduced-motion: no-preference) {
  :where(html:focus-within) {
    scroll-behavior: smooth;
  }
}
:where(ul, ol) {
  list-style: none;
}

:where(button) {
  all: unset;
}

:where(input, button, textarea, select) {
  color: inherit;
}

:where(textarea) {
  resize: vertical;
  resize: block;
}

:where(button, label, select, summary, [role=button], [role=option]) {
  cursor: pointer;
}

:where(:disabled) {
  cursor: not-allowed;
}

:where(label:has(> input:disabled), label:has(+ input:disabled)) {
  cursor: not-allowed;
}

:where(a) {
  color: inherit;
  text-underline-offset: 0.2ex;
  text-decoration: none;
}

:where(img, svg, video, canvas, audio, iframe, embed, object) {
  display: block;
}

:where(img, picture, svg, video) {
  max-inline-size: 100%;
  block-size: auto;
}

:where(p, h1, h2, h3, h4, h5, h6) {
  overflow-wrap: break-word;
}

:where(h1, h2, h3) {
  line-height: calc(1em + 0.5rem);
  text-wrap: balance;
}

:where(hr) {
  border: none;
  border-block-start: 1px solid;
  color: inherit;
  block-size: 0;
  overflow: visible;
}

:where(dialog) {
  border: none;
  background: none;
  inset: unset;
  max-width: unset;
  max-height: unset;
}

:where(dialog:not([open])) {
  display: none !important;
}

:where(:focus-visible) {
  outline: 3px solid CanvasText;
  box-shadow: 0 0 0 5px Canvas;
  outline-offset: 1px;
}

:where(:focus-visible, :target) {
  scroll-margin-block: 8vh;
}

:where(.visually-hidden:not(:focus-within, :active)) {
  clip-path: inset(50%) !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden !important;
  position: absolute !important;
  white-space: nowrap !important;
  border: 0 !important;
}

@page {
  size: A4;
  margin: 5mm;
}
/*margin-bottom*/
.mb00 {
  margin-bottom: 0px !important;
}
@media screen and (min-width: 1200px) {
  .mb00 {
    margin-bottom: 0px !important;
  }
}

.mb05 {
  margin-bottom: 5px !important;
}
@media screen and (min-width: 1200px) {
  .mb05 {
    margin-bottom: 5px !important;
  }
}

.mb10 {
  margin-bottom: 10px !important;
}
@media screen and (min-width: 1200px) {
  .mb10 {
    margin-bottom: 15px !important;
  }
}

.mb15 {
  margin-bottom: 15px !important;
}
@media screen and (min-width: 1200px) {
  .mb15 {
    margin-bottom: 20px !important;
  }
}

.mb20 {
  margin-bottom: 20px !important;
}
@media screen and (min-width: 1200px) {
  .mb20 {
    margin-bottom: 30px !important;
  }
}

.mb25 {
  margin-bottom: 25px !important;
}
@media screen and (min-width: 640px) {
  .mb25 {
    margin-bottom: 30px !important;
  }
}
@media screen and (min-width: 1200px) {
  .mb25 {
    margin-bottom: 40px !important;
  }
}

.mb30 {
  margin-bottom: 30px !important;
}
@media screen and (min-width: 640px) {
  .mb30 {
    margin-bottom: 20px !important;
  }
}
@media screen and (min-width: 1200px) {
  .mb30 {
    margin-bottom: 40px !important;
  }
}

.mb35 {
  margin-bottom: 35px !important;
}
@media screen and (min-width: 640px) {
  .mb35 {
    margin-bottom: 20px !important;
  }
}
@media screen and (min-width: 1200px) {
  .mb35 {
    margin-bottom: 40px !important;
  }
}

.mb40 {
  margin-bottom: 40px !important;
}
@media screen and (min-width: 640px) {
  .mb40 {
    margin-bottom: 50px !important;
  }
}
@media screen and (min-width: 1200px) {
  .mb40 {
    margin-bottom: 60px !important;
  }
}

.mb50 {
  margin-bottom: 50px !important;
}
@media screen and (min-width: 1200px) {
  .mb50 {
    margin-bottom: 60px !important;
  }
}

.mb70 {
  margin-bottom: 70px !important;
}
@media screen and (min-width: 640px) {
  .mb70 {
    margin-bottom: 80px !important;
  }
}
@media screen and (min-width: 1200px) {
  .mb70 {
    margin-bottom: 90px !important;
  }
}

.mb80 {
  margin-bottom: 80px !important;
}
@media screen and (min-width: 640px) {
  .mb80 {
    margin-bottom: 90px !important;
  }
}
@media screen and (min-width: 1200px) {
  .mb80 {
    margin-bottom: 100px !important;
  }
}

/*margin-top*/
.mt00 {
  margin-top: 0px !important;
}
@media screen and (min-width: 1200px) {
  .mt00 {
    margin-top: 0px !important;
  }
}

.mt05 {
  margin-top: 5px !important;
}
@media screen and (min-width: 1200px) {
  .mt05 {
    margin-top: 5px !important;
  }
}

.mt10 {
  margin-top: 10px !important;
}
@media screen and (min-width: 1200px) {
  .mt10 {
    margin-top: 15px !important;
  }
}

.mt15 {
  margin-top: 15px !important;
}
@media screen and (min-width: 1200px) {
  .mt15 {
    margin-top: 20px !important;
  }
}

.mt20 {
  margin-top: 20px !important;
}
@media screen and (min-width: 1200px) {
  .mt20 {
    margin-top: 30px !important;
  }
}

.mt30 {
  margin-top: 30px !important;
}
@media screen and (min-width: 640px) {
  .mt30 {
    margin-top: 20px !important;
  }
}
@media screen and (min-width: 1200px) {
  .mt30 {
    margin-top: 40px !important;
  }
}

.mt40 {
  margin-top: 40px !important;
}
@media screen and (min-width: 640px) {
  .mt40 {
    margin-top: 50px !important;
  }
}
@media screen and (min-width: 1200px) {
  .mt40 {
    margin-top: 60px !important;
  }
}

.mt50 {
  margin-top: 50px !important;
}
@media screen and (min-width: 1200px) {
  .mt50 {
    margin-top: 60px !important;
  }
}

.mt70 {
  margin-top: 70px !important;
}
@media screen and (min-width: 640px) {
  .mt70 {
    margin-top: 80px !important;
  }
}
@media screen and (min-width: 1200px) {
  .mt70 {
    margin-top: 90px !important;
  }
}

.mt80 {
  margin-top: 80px !important;
}
@media screen and (min-width: 640px) {
  .mt80 {
    margin-top: 90px !important;
  }
}
@media screen and (min-width: 1200px) {
  .mt80 {
    margin-top: 100px !important;
  }
}

@media print {
  .sp {
    display: none !important;
  }
  body {
    width: 1140px;
    -webkit-print-color-adjust: exact;
  }
  /*　------- ↓その他参考例　---------
  .header {
      position: relative !important; //ヘッダー固定fixedを解除
  }
  .header .header-inner {
      width: 100% !important; //サイト幅を解除
  }
  .page-title {
      margin-top: 0px !important; //固定ヘッダー時のマージンTOP分を解除
      width: 100% !important; //サイト幅を解除
  }
  .breadcrumbs-list {
      width: 100% !important; //サイト幅を解除
  }
  .global-nav {
      width: 100%; //サイト幅を解除
  }
  ------- ↑その他参考　---------*/
}
@page {
  size: A4;
  margin: 12.7mm 9.7mm;
}
/*==================================================================
    module index
===================================================================*/
.btn-wrap {
  position: relative;
}

.btn-base {
  background-color: var(--cl-base);
  font-family: var(--f-zenmaru);
  font-size: 1.6rem;
  display: block;
  max-width: 80%;
  width: 100%;
  text-align: center;
  color: #fff;
  font-weight: 600;
  -moz-border-radius: 100px;
  -webkit-border-radius: 100px;
  -o-border-radius: 100px;
  -ms-border-radius: 100px;
  border-radius: 100px;
  padding: 14px 16px;
  letter-spacing: 0.05em;
  position: relative;
  margin: 0 auto;
  line-height: 1.3;
}
@media screen and (min-width: 640px) {
  .btn-base {
    font-size: 1.8rem;
    max-width: 480px;
  }
}
@media screen and (min-width: 1200px) {
  .btn-base {
    max-width: 320px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .btn-base:hover {
    background-color: var(--cl-base-k);
  }
}
.btn-base::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  right: 16px;
  bottom: 0;
  margin: auto;
  background-image: url(../img/common/arrow-white.svg);
  background-size: 8px 13px;
  width: 8px;
  height: 13px;
}
.btn-base.prev::before {
  transform: scale(-1, 1);
  right: auto;
  left: 16px;
}
.btn-base.bg-k {
  background-color: var(--cl-base-k);
}
.btn-base.bg-k:hover {
  background-color: var(--cl-base);
}

.btn-type01 {
  background-color: var(--cl-base-k);
  max-width: 180px;
  width: 100%;
  margin: 0 auto;
  display: block;
  color: #fff;
  font-size: 1.6rem;
  padding: 10px;
  text-align: center;
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  -o-border-radius: 25px;
  -ms-border-radius: 25px;
  border-radius: 25px;
  font-family: var(--f-zenmaru);
  font-weight: 600;
}

.top-main__search__btn {
  max-width: 150px;
  width: 100%;
  display: block;
  margin: 0 auto;
  background-color: var(--cl-base-k);
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  -o-border-radius: 25px;
  -ms-border-radius: 25px;
  border-radius: 25px;
  font-family: var(--f-zenmaru);
  font-weight: 600;
  color: #fff;
  font-size: 1.8rem;
  padding: 12px;
  line-height: 1;
}
@media screen and (min-width: 1200px) {
  .top-main__search__btn {
    -moz-border-radius: 32px;
    -webkit-border-radius: 32px;
    -o-border-radius: 32px;
    -ms-border-radius: 32px;
    border-radius: 32px;
    font-size: 1.8rem;
    padding: 16px 5px 16px;
    max-width: 200px;
  }
}
@media screen and (min-width: 1300px) {
  .top-main__search__btn {
    font-size: 2.2rem;
  }
}
.top-main__search__btn__icon {
  position: relative;
  padding-left: 26px;
}
.top-main__search__btn__icon::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 2px;
  left: 0;
  bottom: 0;
  margin: auto;
  background-image: url(../img/common/icon-search-white.svg);
  background-size: 18px 18px;
  width: 18px;
  height: 18px;
}

.link01 {
  position: relative;
  padding-left: 24px;
  color: var(--cl-base);
  font-weight: bold;
}
.link01::before, .link01::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  margin: auto;
}
.link01::before {
  width: 18px;
  height: 18px;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  background-color: var(--cl-base);
}
.link01::after {
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 6px;
  left: 5px;
}
.link01:hover {
  text-decoration: underline;
}

.company-privacy {
  border-radius: 12px;
  background-color: #fff;
  padding: 14px 20px 14px 20px;
  border: 2px solid var(--cl-base-k);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.company-privacy__img {
  width: 54px;
  margin-right: 16px;
}
.company-privacy__text {
  width: calc(100% - 16px - 54px);
  font-weight: bold;
}

.footer {
  position: relative;
  background-color: var(--cl-base);
  padding-top: 18px;
}
.footer::before, .footer::after {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
}
.footer::before {
  background-image: url(../img/common/green-line.svg);
  background-color: #fff;
  background-repeat: repeat-x;
  height: 18px;
  width: 100%;
  top: 0;
}
.footer__inner {
  padding: 66px 38px 100px;
}
@media screen and (min-width: 640px) {
  .footer__inner {
    max-width: 480px;
    width: 100%;
    margin: 0 auto;
  }
}

.footer-logo {
  max-width: 258px;
  width: 100%;
  margin: 0 auto;
  margin-bottom: 26px;
}

.f-copylight {
  margin-top: 40px;
  text-align: center;
  color: #fff;
  font-size: 1.2rem;
}

.header {
  background-color: var(--cl-base);
  padding: 25px 0px 40px 15px;
  position: relative;
}
@media screen and (min-width: 640px) {
  .header {
    padding-left: 20px;
  }
}
@media screen and (min-width: 1200px) {
  .header {
    background-color: #fff;
    height: 90px;
  }
}
.header::before, .header::after {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
}
.header::before {
  background-image: url(../img/common/green-line.svg);
  background-color: #fff;
  background-repeat: repeat-x;
  transform: scale(1, -1);
  height: 18px;
  width: 100%;
  bottom: 0;
}
@media screen and (min-width: 1200px) {
  .header::before {
    display: none;
  }
}

.h-site-logo {
  max-width: 180px;
  width: 100%;
}
@media screen and (min-width: 640px) {
  .h-site-logo {
    max-width: 220px;
  }
}
@media screen and (min-width: 1200px) {
  .h-site-logo {
    display: none;
  }
}

.h-menu {
  position: absolute;
  top: 10px;
  right: 5px;
  display: flex;
}
.h-menu__item {
  margin-left: 5px;
}

.h-btn {
  font-size: 1.1rem;
  position: fixed;
  width: 62px;
  height: 62px;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
  -o-border-radius: 100%;
  -ms-border-radius: 100%;
  border-radius: 100%;
  display: block;
  padding-top: 36px;
  top: 10px;
  z-index: 10;
}
@media screen and (min-width: 1300px) {
  .h-btn {
    width: 82px;
    height: 82px;
    padding-top: 52px;
    font-size: 1.2rem;
  }
}

.h-jobsearch__btn {
  background-color: var(--cl-base-y);
  right: 72px;
  padding-top: 22px;
  z-index: 10;
}
@media screen and (min-width: 640px) {
  .h-jobsearch__btn {
    padding-top: 23px;
  }
}
@media screen and (min-width: 1300px) {
  .h-jobsearch__btn {
    right: 96px;
    padding-top: 36px;
  }
  .h-jobsearch__btn:hover {
    transition: 0.3s;
    background-color: var(--cl-base-k);
  }
  .h-jobsearch__btn:hover .h-jobsearch__btn__icon::before {
    background-image: url(../img/common/icon-search-white.svg);
  }
  .h-jobsearch__btn:hover .h-jobsearch__btn__text {
    color: #fff;
  }
}
.h-jobsearch__btn__icon {
  position: absolute;
  top: 13px;
  left: 0;
  right: 0;
  margin: auto;
  width: 17px;
  height: 17px;
}
@media screen and (min-width: 1300px) {
  .h-jobsearch__btn__icon {
    top: 20px;
    width: 26px;
    height: 26px;
  }
}
.h-jobsearch__btn__icon::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-image: url(../img/common/icon-search.svg);
  background-size: 17px 17px;
  width: 17px;
  height: 17px;
}
@media screen and (min-width: 1300px) {
  .h-jobsearch__btn__icon::before {
    background-size: 26px 26px;
    width: 26px;
    height: 26px;
  }
}
.h-jobsearch__btn__text {
  font-family: var(--f-noto);
  font-weight: 900;
  text-align: center;
  display: block;
  line-height: 1;
}

.h-menu__btn {
  right: 5px;
  background-color: var(--cl-base-k);
  z-index: 15;
}
@media screen and (min-width: 1300px) {
  .h-menu__btn:hover {
    transition: 0.3s;
    background-color: var(--cl-base-y-bg);
  }
  .h-menu__btn:hover .h-menu__btn__icon {
    background: var(--cl-base-k);
  }
  .h-menu__btn:hover .h-menu__btn__icon:before, .h-menu__btn:hover .h-menu__btn__icon:after {
    background: var(--cl-base-k);
  }
  .h-menu__btn:hover .h-menu__btn__text {
    color: var(--cl-base-k);
  }
}
.h-menu__btn__icon {
  display: block;
  position: absolute;
  top: 35%;
  left: 0;
  right: 0;
  width: 15px;
  height: 3px;
  margin: -1px auto 0 auto;
  background: #fff;
  transition: 0.2s;
  -moz-border-radius: 2px;
  -webkit-border-radius: 2px;
  -o-border-radius: 2px;
  -ms-border-radius: 2px;
  border-radius: 2px;
}
@media screen and (min-width: 1300px) {
  .h-menu__btn__icon {
    width: 22px;
    top: 40%;
  }
}
.h-menu__btn__icon:before, .h-menu__btn__icon:after {
  display: block;
  content: "";
  position: absolute;
  top: 35%;
  left: 0;
  width: 15px;
  height: 3px;
  background: #fff;
  transition: 0.3s;
  -moz-border-radius: 2px;
  -webkit-border-radius: 2px;
  -o-border-radius: 2px;
  -ms-border-radius: 2px;
  border-radius: 2px;
}
@media screen and (min-width: 1300px) {
  .h-menu__btn__icon:before, .h-menu__btn__icon:after {
    width: 22px;
    top: 55%;
  }
}
.h-menu__btn__icon:before {
  margin-top: -8px;
}
@media screen and (min-width: 1300px) {
  .h-menu__btn__icon:before {
    margin-top: -11px;
  }
}
.h-menu__btn__icon:after {
  margin-top: 6px;
}
@media screen and (min-width: 1300px) {
  .h-menu__btn__icon:after {
    margin-top: 8px;
  }
}
.h-menu__btn__text {
  color: #fff;
  font-family: var(--f-noto);
  font-weight: 900;
  text-align: center;
  display: block;
  line-height: 1;
}
@media screen and (min-width: 1200px) {
  .h-menu__btn.close {
    right: 30px;
  }
}
.h-menu__btn.close .h-menu__btn__icon {
  background: transparent;
}
.h-menu__btn.close .h-menu__btn__icon:before, .h-menu__btn.close .h-menu__btn__icon:after {
  margin-top: 0;
}
.h-menu__btn.close .h-menu__btn__icon:before {
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}
.h-menu__btn.close .h-menu__btn__icon:after {
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
}

.gnav-modal {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  display: none;
  z-index: 10;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  overflow-y: scroll;
}
.gnav-modal::-webkit-scrollbar {
  display: none; /*Google Chrome、Safari、Microsoft Edge対応のスクロールバー非表示コード*/
}
.gnav-modal__wrap {
  position: fixed;
  right: 0;
  top: 0;
  background-color: var(--cl-base);
  width: 100%;
  height: 100vh;
  padding: 86px 20px 80px;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  overflow-y: scroll;
}
.gnav-modal__wrap::-webkit-scrollbar {
  display: none; /*Google Chrome、Safari、Microsoft Edge対応のスクロールバー非表示コード*/
}
@media screen and (min-width: 640px) {
  .gnav-modal__wrap {
    width: 80%;
    padding: 120px 40px 40px;
  }
}
@media screen and (min-width: 1200px) {
  .gnav-modal__wrap {
    width: 40%;
    padding: 140px 60px 60px;
  }
}

.gnav-modal__overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: rgba(0, 46, 51, 0.9);
}

.gnav-modal__title {
  position: absolute;
  top: 24px;
  left: 20px;
  max-width: 200px;
}
@media screen and (min-width: 640px) {
  .gnav-modal__title {
    max-width: 240px;
    left: 40px;
    top: 32px;
  }
}
@media screen and (min-width: 1200px) {
  .gnav-modal__title {
    max-width: 280px;
    left: 60px;
    top: 40px;
  }
}

.gnav-modal__search {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
@media screen and (min-width: 640px) {
  .gnav-modal__search {
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 1200px) {
  .gnav-modal__search {
    margin-bottom: 50px;
  }
}
.gnav-modal__search__item {
  width: calc((100% - 10px) / 2);
}
.gnav-modal__search__item:not(:nth-child(2n)) {
  margin-right: 10px;
}
.gnav-modal__search__item .side-jobsearch {
  max-width: 100%;
  font-size: 1.6rem;
  margin-bottom: 0;
}
@media screen and (min-width: 1200px) {
  .gnav-modal__search__item .side-jobsearch {
    font-size: 2rem;
    padding: 20px 10px;
  }
}
.gnav-modal__search__item .side-jobsearch__icon {
  padding-left: 26px;
}
@media screen and (min-width: 1200px) {
  .gnav-modal__search__item .side-jobsearch__icon {
    padding-left: 32px;
  }
}
.gnav-modal__search__item .side-jobsearch__icon::before {
  background-size: 18px 18px;
  width: 18px;
  height: 18px;
}
@media screen and (min-width: 1200px) {
  .gnav-modal__search__item .side-jobsearch__icon::before {
    background-size: 22px 22px;
    width: 22px;
    height: 22px;
  }
}
.gnav-modal__search__item .entry-btn {
  background-color: #e65d3e;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  -o-border-radius: 10px;
  -ms-border-radius: 10px;
  border-radius: 10px;
  padding: 10px 12px;
  display: block;
  width: 100%;
  color: #fff;
  text-align: center;
  font-size: 1.6rem;
  font-family: var(--f-zenmaru);
  font-weight: 600;
}
@media screen and (min-width: 1200px) {
  .gnav-modal__search__item .entry-btn {
    font-size: 2.2rem;
  }
}
.gnav-modal__search__item .entry-btn__icon {
  padding-left: 24px;
  position: relative;
}
.gnav-modal__search__item .entry-btn__icon::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  background-image: url(../img/common/icon-entry-white.svg);
  background-size: 16px 22px;
  width: 16px;
  height: 22px;
}

@media screen and (min-width: 640px) {
  .gnav-modal__nav {
    width: calc((100% - 20px) / 2);
  }
  .gnav-modal__nav:not(:nth-child(2n)) {
    margin-right: 20px;
  }
}
@media screen and (min-width: 640px) {
  .gnav-modal__nav__wrap {
    display: flex;
    flex-wrap: wrap;
  }
}
.gnav-modal__nav__item {
  margin-bottom: 8px;
}
@media screen and (min-width: 640px) {
  .gnav-modal__nav__item {
    margin-bottom: 12px;
  }
}
.gnav-modal__nav__link {
  color: #fff;
  font-family: var(--f-zenmaru);
  font-weight: 600;
  font-size: 1.6rem;
  position: relative;
  padding-left: 20px;
}
@media screen and (min-width: 640px) {
  .gnav-modal__nav__link {
    font-size: 1.8rem;
  }
}
@media screen and (min-width: 1200px) {
  .gnav-modal__nav__link {
    font-size: 2rem;
  }
}
.gnav-modal__nav__link::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 11px;
  left: 0;
  margin: auto;
  background-color: var(--cl-base-y);
  width: 5px;
  height: 5px;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
.gnav-modal__nav__sub {
  margin-top: 5px;
}
@media screen and (min-width: 640px) {
  .gnav-modal__nav__sub {
    margin-top: 10px;
  }
}
.gnav-modal__nav__sub__item {
  font-family: var(--f-zenmaru);
  font-weight: 500;
  font-size: 1.5rem;
  color: #fff;
  margin-bottom: 5px;
  padding-left: 40px;
  position: relative;
}
@media screen and (min-width: 640px) {
  .gnav-modal__nav__sub__item {
    font-size: 1.6rem;
  }
}
.gnav-modal__nav__sub__item::before, .gnav-modal__nav__sub__item::after {
  content: "";
  display: inline-block;
  position: absolute;
  margin: auto;
  background-color: var(--cl-base-y);
}
.gnav-modal__nav__sub__item::before {
  width: 2px;
  height: 10px;
  top: 8px;
  left: 20px;
}
.gnav-modal__nav__sub__item::after {
  width: 10px;
  height: 2px;
  top: 16px;
  left: 20px;
}

.gnav-modal__nav02 {
  display: flex;
  flex-wrap: wrap;
  color: #fff;
  margin: 30px auto 30px;
  width: 96%;
}
@media screen and (min-width: 1200px) {
  .gnav-modal__nav02 {
    width: 80%;
    margin-bottom: 40px;
  }
}
.gnav-modal__nav02__item {
  font-family: var(--f-zenmaru);
  font-weight: 500;
}
@media screen and (min-width: 1200px) {
  .gnav-modal__nav02__item {
    margin-bottom: 8px;
  }
}
.gnav-modal__nav02__item:nth-child(odd) {
  width: 40%;
  margin-right: 10px;
}
.gnav-modal__nav02__item:nth-child(even) {
  width: calc(60% - 10px);
}
.gnav-modal__nav02__item a {
  position: relative;
  padding-left: 16px;
}
.gnav-modal__nav02__item a::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 8px;
  left: 0;
  margin: auto;
  width: 4px;
  height: 4px;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  background-color: var(--cl-base-y);
}
@media screen and (min-width: 1200px) {
  .gnav-modal__nav02__item a::before {
    top: 10px;
  }
}

.gnav-modal__global {
  width: 90%;
  display: block;
  margin: 0 auto 30px;
}
@media screen and (min-width: 640px) {
  .gnav-modal__global {
    max-width: 360px;
    width: 100%;
  }
}
@media screen and (min-width: 1200px) {
  .gnav-modal__global {
    max-width: 420px;
    margin-bottom: 40px;
  }
}

@media screen and (min-width: 1200px) {
  .gnav-modal__sns-list .sns-list__item {
    width: 62px;
  }
}

.no-scroll {
  overflow: hidden;
}

.job-modal {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 20;
  display: none;
}

.job-modal__overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: rgba(0, 46, 51, 0.9);
}

.job-modal__contetns {
  background-color: #fff;
  width: 100%;
  position: absolute;
  top: 0px;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}
@media screen and (min-width: 1200px) {
  .job-modal__contetns {
    height: 90vh;
    max-width: 720px;
  }
}

.job-modal__title {
  background-color: var(--cl-base);
  color: #fff;
  font-family: var(--f-zenmaru);
  font-size: 2rem;
  font-weight: 500;
  text-align: center;
  padding: 10px 34px 10px 10px;
  position: relative;
  height: 54px;
}
@media screen and (min-width: 1200px) {
  .job-modal__title {
    font-size: 2.6rem;
    padding: 10px 40px 10px 10px;
    height: 62px;
  }
}

.job-modal__close {
  display: block;
  width: 31px;
  height: 31px;
  position: absolute;
  top: 12px;
  right: 12px;
  background-color: var(--cl-base-k);
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
  -o-border-radius: 100%;
  -ms-border-radius: 100%;
  border-radius: 100%;
}
@media screen and (min-width: 1200px) {
  .job-modal__close {
    width: 36px;
    height: 36px;
  }
}
.job-modal__close::before, .job-modal__close::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 16px;
  height: 3px;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  -o-border-radius: 10px;
  -ms-border-radius: 10px;
  border-radius: 10px;
  background-color: #fff;
}
.job-modal__close::before {
  transform: rotate(45deg);
}
.job-modal__close::after {
  transform: rotate(-45deg);
}

.job-modal__contetns__inner {
  padding: 10px 20px 10px 10px;
  overflow-y: scroll;
  height: calc(100vh - 54px - 150px);
}
@media screen and (min-width: 640px) {
  .job-modal__contetns__inner {
    padding: 30px 60px 10px 60px;
  }
}
@media screen and (min-width: 1200px) {
  .job-modal__contetns__inner {
    height: calc(90vh - 62px - 74px);
  }
}

.job-modal__btn__list {
  background-color: var(--cl-base-y-bg);
  height: 74px;
  padding: 14px 10px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 10;
  width: 100%;
}
@media screen and (min-width: 1200px) {
  .job-modal__btn__list {
    position: relative;
  }
}
.job-modal__btn__list__item:not(:nth-child(2n)) {
  margin-right: 8px;
}

.job-modal__btn {
  display: block;
  font-family: var(--f-zenmaru);
  font-size: 1.6rem;
  font-weight: 600;
  text-align: center;
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  -o-border-radius: 25px;
  -ms-border-radius: 25px;
  border-radius: 25px;
  height: 42px;
  line-height: 42px;
}
.job-modal__btn.clear {
  background-color: #fff;
  width: 147px;
}

.tbl01 {
  border: 1px solid var(--cl-line);
  border-collapse: collapse;
  margin-bottom: 30px;
  width: 100%;
}
.tbl01.js-scrollable-tbl {
  width: 540px;
  margin-bottom: 16px;
  font-size: 1.3rem;
}
@media screen and (min-width: 640px) {
  .tbl01.js-scrollable-tbl {
    width: 100%;
    font-size: 1.5rem;
  }
}
.tbl01 th, .tbl01 td {
  border: 1px solid var(--cl-line);
  padding: 10px 10px;
  line-height: 1.4;
}
.tbl01 th {
  width: 120px;
  background-color: var(--cl-base);
  color: #fff;
  font-weight: normal;
  text-align: left;
}
@media screen and (min-width: 640px) {
  .tbl01 th {
    width: 200px;
  }
}
.tbl01 th.tac {
  text-align: center;
}
.tbl01 td {
  width: calc(100% - 120px);
  background-color: #fff;
}
@media screen and (min-width: 640px) {
  .tbl01 td {
    width: calc(100% - 200px);
  }
}
.tbl01 .cell02 {
  background-color: var(--cl-base-b);
  text-align: center;
  color: var(--cl-base-k);
  width: 140px;
}
@media screen and (min-width: 640px) {
  .tbl01 .cell02 {
    width: 200px;
  }
}

.menu-title {
  font-family: var(--f-zenmaru);
  font-size: 3rem;
  font-weight: 600;
  text-align: center;
  margin-bottom: 40px;
  position: relative;
  line-height: 1;
  padding: 50px 10px 28px 10px;
  margin-bottom: 35px;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 1200px) {
  .menu-title {
    font-size: 4.6rem;
    padding: 60px 10px 40px 10px;
  }
}
.menu-title::before, .menu-title::after {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
}
.menu-title::before {
  top: 0;
}
.menu-title::after {
  color: var(--cl-base);
  font-family: var(--f-concertone);
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 1200px) {
  .menu-title::after {
    font-size: 2.4rem;
  }
}
@media screen and (min-width: 1200px) {
  .menu-title.top-title {
    font-size: 3.6rem;
    padding-top: 52px;
    padding-bottom: 32px;
  }
  .menu-title.top-title::after {
    font-size: 2rem;
  }
}
.menu-title.information::before {
  background-image: url(../img/common/icon-info.svg);
  background-size: 36px 34px;
  width: 36px;
  height: 34px;
}
@media screen and (min-width: 1200px) {
  .menu-title.information::before {
    background-size: 43.2px 40.8px;
    width: 43.2px;
    height: 40.8px;
  }
}
.menu-title.information::after {
  content: "News";
  bottom: 0;
}
@media screen and (min-width: 1200px) {
  .menu-title.information.top-title::before {
    background-size: 39.6px 37.4px;
    width: 39.6px;
    height: 37.4px;
  }
}
@media screen and (min-width: 1200px) {
  .menu-title.job {
    padding-top: 56px;
  }
}
.menu-title.job::before {
  background-image: url(../img/common/icon-job.svg);
  background-size: 29px 29px;
  width: 29px;
  height: 29px;
}
@media screen and (min-width: 1200px) {
  .menu-title.job::before {
    background-size: 37.7px 37.7px;
    width: 37.7px;
    height: 37.7px;
  }
}
.menu-title.job::after {
  content: "Job Search";
  bottom: 0;
}
@media screen and (min-width: 1200px) {
  .menu-title.adjust {
    padding-top: 66px;
  }
}
.menu-title.adjust::before {
  background-image: url(../img/common/icon-adjust.svg);
  background-size: 32px 40px;
  width: 32px;
  height: 40px;
}
@media screen and (min-width: 1200px) {
  .menu-title.adjust::before {
    background-size: 44.8px 56px;
    width: 44.8px;
    height: 56px;
  }
}
.menu-title.adjust::after {
  content: "Application";
  bottom: 0;
}
.menu-title.entry::before {
  background-image: url(../img/common/icon-entry.svg);
  background-size: 32px 51px;
  width: 32px;
  height: 51px;
}
@media screen and (min-width: 1200px) {
  .menu-title.entry::before {
    background-size: 44.8px 71.4px;
    width: 44.8px;
    height: 71.4px;
  }
}
.menu-title.entry::after {
  content: "Entry";
  bottom: 0;
}
@media screen and (min-width: 1200px) {
  .menu-title.reason {
    padding-top: 76px;
  }
}
.menu-title.reason::before {
  background-image: url(../img/common/icon-reason.svg);
  background-size: 41px 47px;
  width: 41px;
  height: 47px;
}
@media screen and (min-width: 1200px) {
  .menu-title.reason::before {
    background-size: 57.4px 65.8px;
    width: 57.4px;
    height: 65.8px;
  }
}
.menu-title.reason::after {
  content: "Reason";
  bottom: 0;
}
.menu-title.advanced::before {
  background-image: url(../img/common/icon-advanced.svg);
  background-size: 38px 33px;
  width: 38px;
  height: 33px;
}
@media screen and (min-width: 1200px) {
  .menu-title.advanced::before {
    background-size: 53.2px 46.2px;
    width: 53.2px;
    height: 46.2px;
  }
}
.menu-title.advanced::after {
  content: "Advanced Search";
  bottom: 0;
}
@media screen and (min-width: 1200px) {
  .menu-title.advanced.top-title::before {
    background-size: 45.6px 39.6px;
    width: 45.6px;
    height: 39.6px;
  }
}
.menu-title.pickup {
  padding-top: 66px;
  margin-bottom: 46px;
}
.menu-title.pickup::before {
  background-image: url(../img/common/icon-pickup.svg);
  background-size: 46px 46px;
  width: 46px;
  height: 46px;
}
@media screen and (min-width: 1200px) {
  .menu-title.pickup::before {
    background-size: 64.4px 64.4px;
    width: 64.4px;
    height: 64.4px;
  }
}
.menu-title.pickup::after {
  content: "PickUp Job";
  bottom: 0;
}
@media screen and (min-width: 1200px) {
  .menu-title.pickup.top-title::before {
    background-size: 55.2px 55.2px;
    width: 55.2px;
    height: 55.2px;
  }
}
@media screen and (min-width: 1400px) {
  .menu-title.pickup.top-title {
    font-size: 3.6rem;
  }
}
.menu-title.company {
  padding-top: 64px;
  margin-bottom: 46px;
}
.menu-title.company::before {
  background-image: url(../img/common/icon-company.svg);
  background-size: 36px 44px;
  width: 36px;
  height: 44px;
}
@media screen and (min-width: 1200px) {
  .menu-title.company::before {
    background-size: 43.2px 52.8px;
    width: 43.2px;
    height: 52.8px;
  }
}
.menu-title.company::after {
  content: "Company";
  bottom: 0;
}
.menu-title.privacy {
  padding-top: 60px;
  margin-bottom: 46px;
}
.menu-title.privacy::before {
  background-image: url(../img/common/icon-privacy.svg);
  background-size: 30px 41px;
  width: 30px;
  height: 41px;
}
@media screen and (min-width: 1200px) {
  .menu-title.privacy::before {
    background-size: 36px 49.2px;
    width: 36px;
    height: 49.2px;
  }
}
.menu-title.privacy::after {
  content: "Privacy";
  bottom: 0;
}
.menu-title.beginner {
  padding-top: 50px;
  margin-bottom: 46px;
}
.menu-title.beginner::before {
  background-image: url(../img/common/icon-beginners.svg);
  background-size: 25px 38px;
  width: 25px;
  height: 38px;
}
@media screen and (min-width: 1200px) {
  .menu-title.beginner::before {
    background-size: 30px 45.6px;
    width: 30px;
    height: 45.6px;
  }
}
.menu-title.beginner::after {
  content: "First";
  bottom: 0;
}
.menu-title.recruit {
  padding-top: 56px;
  margin-bottom: 46px;
}
@media screen and (min-width: 1200px) {
  .menu-title.recruit {
    padding-top: 70px;
  }
}
.menu-title.recruit::before {
  background-image: url(../img/common/icon-recruit.svg);
  background-size: 35px 48px;
  width: 35px;
  height: 48px;
}
@media screen and (min-width: 1200px) {
  .menu-title.recruit::before {
    background-size: 42px 57.6px;
    width: 42px;
    height: 57.6px;
  }
}
.menu-title.recruit::after {
  content: "Recruit";
  bottom: 0;
}
.menu-title.contact {
  padding-top: 50px;
  margin-bottom: 46px;
}
@media screen and (min-width: 1200px) {
  .menu-title.contact {
    padding-top: 68px;
  }
}
.menu-title.contact::before {
  background-image: url(../img/common/icon-mail.svg);
  background-size: 40px 33px;
  width: 40px;
  height: 33px;
}
@media screen and (min-width: 1200px) {
  .menu-title.contact::before {
    background-size: 52px 42.9px;
    width: 52px;
    height: 42.9px;
  }
}
.menu-title.contact::after {
  content: "Contact";
  bottom: 0;
}
.menu-title.ways {
  padding-top: 46px;
  margin-bottom: 46px;
}
@media screen and (min-width: 1200px) {
  .menu-title.ways {
    padding-top: 56px;
  }
}
.menu-title.ways::before {
  background-image: url(../img/common/icon-workstyle.svg);
  background-size: 36px 32px;
  width: 36px;
  height: 32px;
}
@media screen and (min-width: 1200px) {
  .menu-title.ways::before {
    background-size: 46.8px 41.6px;
    width: 46.8px;
    height: 41.6px;
  }
}
.menu-title.ways::after {
  content: "Work";
  bottom: 0;
}
.menu-title.client {
  padding-top: 56px;
  margin-bottom: 46px;
}
@media screen and (min-width: 1200px) {
  .menu-title.client {
    padding-top: 70px;
  }
}
.menu-title.client::before {
  background-image: url(../img/common/icon-client.svg);
  background-size: 40px 48px;
  width: 40px;
  height: 48px;
}
@media screen and (min-width: 1200px) {
  .menu-title.client::before {
    background-size: 48px 57.6px;
    width: 48px;
    height: 57.6px;
  }
}
.menu-title.client::after {
  content: "Manager";
  bottom: 0;
}
.menu-title__sub {
  font-size: 2rem;
  display: block;
  margin-top: 12px;
  font-weight: 800;
}
@media screen and (min-width: 1200px) {
  .menu-title__sub {
    font-size: 2.4rem;
    margin-top: 20px;
  }
}

.page-title {
  font-family: var(--f-zenmaru);
  font-weight: 600;
  font-size: 2.8rem;
  text-align: center;
  padding-bottom: 23px;
  line-height: 1;
  position: relative;
  margin-bottom: 60px;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 640px) {
  .page-title {
    font-size: 3.2rem;
  }
}
@media screen and (min-width: 1200px) {
  .page-title {
    font-size: 3.8rem;
    padding-bottom: 30px;
    margin-bottom: 70px;
  }
}
.page-title::before {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  background-color: var(--cl-base);
  width: 80px;
  height: 3px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  -o-border-radius: 5px;
  -ms-border-radius: 5px;
  border-radius: 5px;
}

.sec-title01 {
  font-size: 2.4rem;
  font-family: var(--f-zenmaru);
  color: var(--cl-base);
  font-weight: 700;
  letter-spacing: 0.02em;
  text-align: center;
  margin-bottom: 36px;
}
@media screen and (min-width: 640px) {
  .sec-title01 {
    font-size: 2.8rem;
    margin-bottom: 42px;
  }
}
@media screen and (min-width: 1200px) {
  .sec-title01 {
    font-size: 3.2rem;
    margin-bottom: 52px;
  }
}

.sec-title02 {
  font-family: var(--f-zenmaru);
  font-weight: 800;
  font-size: 2rem;
  letter-spacing: 0.02em;
  margin-bottom: 32px;
  position: relative;
  padding-left: 22px;
}
@media screen and (min-width: 640px) {
  .sec-title02 {
    font-size: 2.4rem;
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 1200px) {
  .sec-title02 {
    font-size: 2.8rem;
    font-weight: 700;
    margin-bottom: 48px;
    padding-left: 30px;
  }
}
.sec-title02::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 14px;
  left: 0;
  margin: auto;
  width: 11px;
  height: 11px;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
  -o-border-radius: 100%;
  -ms-border-radius: 100%;
  border-radius: 100%;
  background-color: var(--cl-base);
}
@media screen and (min-width: 640px) {
  .sec-title02::before {
    top: 17px;
  }
}
@media screen and (min-width: 1200px) {
  .sec-title02::before {
    top: 20px;
  }
}

.sec-title03 {
  font-family: var(--f-zenmaru);
  font-weight: 800;
  font-size: 1.8rem;
  letter-spacing: 0.02em;
  margin-bottom: 26px;
  position: relative;
  padding-bottom: 16px;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 640px) {
  .sec-title03 {
    font-size: 2rem;
    margin-bottom: 32px;
  }
}
@media screen and (min-width: 1200px) {
  .sec-title03 {
    font-size: 2.4rem;
    padding-bottom: 20px;
    font-weight: 700;
  }
}
.sec-title03::before, .sec-title03::after {
  content: "";
  display: inline-block;
  position: absolute;
}
.sec-title03::before {
  margin: auto;
  background-color: var(--cl-base);
  width: 100%;
  height: 3px;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  -o-border-radius: 10px;
  -ms-border-radius: 10px;
  border-radius: 10px;
  left: 0;
  right: 0;
  bottom: 0;
}

.sec-title04 {
  background-color: var(--cl-base);
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  -o-border-radius: 6px;
  -ms-border-radius: 6px;
  border-radius: 6px;
  color: #fff;
  position: relative;
  font-size: 1.6rem;
  font-family: var(--f-zenmaru);
  font-weight: 800;
  padding: 10px 12px 12px 12px;
  margin-bottom: 20px;
}
@media screen and (min-width: 640px) {
  .sec-title04 {
    font-size: 1.8rem;
    padding: 8px 12px 10px 16px;
    margin-bottom: 24px;
  }
}
@media screen and (min-width: 1200px) {
  .sec-title04 {
    font-size: 2rem;
    font-weight: 700;
  }
}

.sec-title05 {
  color: var(--cl-text-g);
  font-size: 1.6rem;
  font-weight: bold;
  margin: 0 0 10px;
}

.title-dot {
  font-family: var(--f-zenmaru);
  font-size: 2.4rem;
  font-weight: 600;
  text-align: center;
  padding-bottom: 18px;
  margin-bottom: 16px;
  background-image: url(../img/common/icon-dot3-g.svg);
  background-size: 36px 6px;
  background-repeat: no-repeat;
  background-position: center bottom;
}
@media screen and (min-width: 640px) {
  .title-dot {
    font-size: 2.8rem;
    padding-bottom: 24px;
    margin-bottom: 32px;
  }
}
.title-dot.t-w {
  color: #fff;
}
.title-dot.d-y {
  background-image: url(../img/common/icon-dot3-y.svg);
}

.title-en {
  margin-bottom: 24px;
  text-align: center;
  line-height: 1.2;
}
@media screen and (min-width: 1200px) {
  .title-en {
    margin-bottom: 36px;
  }
}
.title-en__main {
  font-size: 2.6rem;
  margin-bottom: 8px;
  font-family: var(--f-zenmaru);
  font-weight: 600;
}
@media screen and (min-width: 640px) {
  .title-en__main {
    font-size: 3rem;
  }
}
@media screen and (min-width: 1200px) {
  .title-en__main {
    font-size: 3.6rem;
    margin-bottom: 10px;
  }
}
.title-en__main.white {
  color: #fff;
}
.title-en__sub {
  font-family: var(--f-concertone);
  color: var(--cl-base);
  font-weight: 400;
  font-size: 1.8rem;
  letter-spacing: 0;
}
@media screen and (min-width: 1200px) {
  .title-en__sub {
    font-size: 2rem;
  }
}
.title-en__sub.yellow {
  color: var(--cl-base-y-bg);
}

@media screen and (min-width: 1200px) {
  .wrap {
    display: flex;
  }
}

@media screen and (min-width: 1200px) {
  .contents-wrap {
    width: calc(100% - 360px);
    margin-left: 360px;
  }
}

.main {
  padding: 35px 0 0 0;
}

.main-contents {
  position: relative;
  padding: 18px 0 18px 0;
}
.main-contents::before, .main-contents::after {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  background-image: url(../img/common/beige-line.svg);
  background-repeat: repeat-x;
  height: 18px;
  width: 100%;
}
.main-contents::before {
  top: 0;
}
.main-contents::after {
  bottom: 0;
  transform: scale(1, -1);
}
.main-contents.u-check::after {
  background-color: var(--cl-base-lg);
}
.main-contents.f-g::after {
  background-color: var(--cl-base);
}
.main-contents.f-y::after {
  background-color: var(--cl-base-y-bg);
}
.main-contents__inner {
  background-color: var(--cl-base-b);
  padding: 28px 20px 50px;
  position: relative;
}
@media screen and (min-width: 640px) {
  .main-contents__inner {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media screen and (min-width: 1200px) {
  .main-contents__inner {
    padding-bottom: 80px;
  }
}
.main-contents__inner__sub {
  max-width: 860px;
  width: 100%;
  margin: 0 auto;
}
.main-contents__inner.wide {
  padding-left: 0;
  padding-right: 0;
}
.main-contents__inner.wide .topicpass {
  padding-left: 20px;
  padding-right: 20px;
}
.main-contents__inner.voice-dot {
  background-image: url(../img/common/dot-w.svg);
  background-repeat: no-repeat;
  background-position: center top 0%;
  background-size: 300% auto;
}
@media screen and (min-width: 640px) {
  .main-contents__inner.voice-dot {
    background-size: 180% auto;
  }
}
@media screen and (min-width: 1200px) {
  .main-contents__inner.voice-dot {
    background-size: 120% auto;
  }
}
.main-contents__inner.voice-dot.first {
  background-position: center top 15%;
}

.contents-bg-g {
  position: relative;
  padding: 18px 0 18px 0;
}
.contents-bg-g::before, .contents-bg-g::after {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  background-image: url(../img/common/green-line.svg);
  background-repeat: repeat-x;
  height: 18px;
  width: 100%;
}
.contents-bg-g::before {
  top: 0;
}
.contents-bg-g::after {
  bottom: 0;
  transform: scale(1, -1);
}
.contents-bg-g.wavy-h-no {
  padding-top: 0;
}
.contents-bg-g.wavy-h-no::before {
  display: none;
}
.contents-bg-g__inner {
  background-color: var(--cl-base);
  padding: 30px 20px 30px;
}
@media screen and (min-width: 640px) {
  .contents-bg-g__inner {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media screen and (min-width: 1200px) {
  .contents-bg-g__inner {
    padding-bottom: 80px;
  }
}
.contents-bg-g__inner__sub {
  max-width: 860px;
  width: 100%;
  margin: 0 auto;
}
@media screen and (min-width: 1200px) {
  .contents-bg-g__inner.t-title {
    padding-bottom: 40px;
  }
}
.contents-bg-g__inner.title-v01 {
  padding: 20px 20px 16px;
}
@media screen and (min-width: 640px) {
  .contents-bg-g__inner.title-v01 {
    padding: 24px 20px 20px;
  }
}

.contents-bg-y {
  position: relative;
  padding: 18px 0 18px 0;
}
.contents-bg-y::before, .contents-bg-y::after {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  background-image: url(../img/common/yellow-line.svg);
  background-repeat: repeat-x;
  height: 18px;
  width: 100%;
}
.contents-bg-y::before {
  top: 0;
}
.contents-bg-y::after {
  bottom: 0;
  transform: scale(1, -1);
}
.contents-bg-y.wavy-h-no {
  padding-top: 0;
}
.contents-bg-y.wavy-h-no::before {
  display: none;
}
.contents-bg-y__inner {
  background-color: var(--cl-base-y-bg);
  padding: 30px 20px 30px;
}
@media screen and (min-width: 640px) {
  .contents-bg-y__inner {
    padding: 50px 40px 50px;
  }
}
@media screen and (min-width: 1200px) {
  .contents-bg-y__inner {
    padding: 80px 40px 80px;
  }
}
.contents-bg-y__inner__sub {
  max-width: 860px;
  width: 100%;
  margin: 0 auto;
}

.contents-bg-w {
  position: relative;
}
.contents-bg-w__inner {
  background-color: #fff;
  padding: 28px 20px 50px;
}
@media screen and (min-width: 640px) {
  .contents-bg-w__inner {
    padding: 50px 40px 50px;
  }
}
@media screen and (min-width: 1200px) {
  .contents-bg-w__inner {
    padding: 80px 40px 80px;
  }
}
.contents-bg-w__inner__sub {
  max-width: 860px;
  width: 100%;
  margin: 0 auto;
}
.contents-bg-w__inner.voice-dot {
  background-image: url(../img/common/dot-b.svg);
  background-repeat: no-repeat;
  background-position: center top 0%;
  background-size: 300% auto;
}
@media screen and (min-width: 640px) {
  .contents-bg-w__inner.voice-dot {
    background-size: 180% auto;
  }
}
@media screen and (min-width: 1200px) {
  .contents-bg-w__inner.voice-dot {
    background-size: 120% auto;
  }
}

.contents-bg-lg {
  position: relative;
  padding: 18px 0 18px 0;
}
.contents-bg-lg::before, .contents-bg-lg::after {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  background-image: url(../img/common/green-ligth-line.svg);
  background-repeat: repeat-x;
  height: 18px;
  width: 100%;
}
.contents-bg-lg::before {
  top: 0;
}
.contents-bg-lg::after {
  bottom: 0;
  transform: scale(1, -1);
}
.contents-bg-lg.wavy-h-no {
  padding-top: 0;
}
.contents-bg-lg.wavy-h-no::before {
  display: none;
}
.contents-bg-lg__inner {
  background-color: var(--cl-base-lg);
  padding: 30px 20px 30px;
}
@media screen and (min-width: 640px) {
  .contents-bg-lg__inner {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media screen and (min-width: 1200px) {
  .contents-bg-lg__inner {
    padding: 80px 40px 80px;
  }
}
.contents-bg-lg__inner__sub {
  max-width: 860px;
  width: 100%;
  margin: 0 auto;
}
@media screen and (min-width: 1200px) {
  .contents-bg-lg__inner.t-title {
    padding-bottom: 40px;
  }
}

.sec-wrap01 {
  margin-bottom: 40px;
}
@media screen and (min-width: 640px) {
  .sec-wrap01 {
    margin-bottom: 60px;
  }
}
@media screen and (min-width: 1200px) {
  .sec-wrap01 {
    margin-bottom: 80px;
  }
}

.block-wrap01 {
  margin-bottom: 30px;
}
@media screen and (min-width: 640px) {
  .block-wrap01 {
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 1200px) {
  .block-wrap01 {
    margin-bottom: 60px;
  }
}

.img-center {
  margin: 0 auto;
  display: block;
}

.topicpass {
  font-size: 1.2rem;
  margin-bottom: 30px;
}
@media screen and (min-width: 1200px) {
  .topicpass {
    font-size: 1.4rem;
    margin-bottom: 60px;
  }
}
.topicpass__item {
  display: inline;
}
.topicpass__item a {
  display: inline-block;
  position: relative;
  padding-right: 30px;
  color: var(--cl-base);
}
.topicpass__item a::before {
  content: ">";
  display: inline-block;
  position: absolute;
  top: 0;
  right: 10px;
  bottom: 0;
  margin: auto;
  color: var(--cl-base-k);
}

.sns-list {
  display: flex;
  justify-content: center;
  margin-bottom: 38px;
}
.sns-list__item {
  width: 52px;
  margin: 0 10px;
  transition: 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .sns-list__item:hover {
    opacity: 0.7;
  }
}

.btn-tel {
  border: 2px solid #fff;
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  display: block;
  color: #fff;
  font-family: var(--f-zenmaru);
  font-size: 2.4rem;
  font-weight: 600;
  text-align: center;
  text-decoration: none;
  line-height: 1;
  padding: 13px 10px;
  letter-spacing: 1px;
  margin-bottom: 12px;
}
.btn-tel__icon {
  position: relative;
  padding: 0 0 0 26px;
}
.btn-tel__icon::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background-image: url(../img/common/icon-tel.svg);
  background-size: 15px 26px;
  width: 15px;
  height: 26px;
}
.btn-tel.form-send {
  border-color: var(--cl-base-k);
  background-color: #fff;
  color: var(--cl-base-k);
  margin-bottom: 40px;
}
@media screen and (min-width: 640px) {
  .btn-tel.form-send {
    max-width: 280px;
    margin: 0 auto 50px;
  }
}
.btn-tel.form-send .btn-tel__icon::before {
  background-image: url(../img/common/icon-tel-k.svg);
}

.bnr-nationality {
  margin-bottom: 36px;
  display: block;
  transition: 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .bnr-nationality:hover {
    opacity: 0.7;
  }
}

.company-info {
  color: #fff;
}
.company-info__title {
  font-weight: bold;
  font-size: 1.6rem;
  margin-bottom: 5px;
}

.pagination {
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}
.pagination-item a,
.pagination-item span {
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 500;
  line-height: 1;
  width: 36px;
  height: 36px;
  padding-bottom: 2px;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
  -o-border-radius: 100%;
  -ms-border-radius: 100%;
  border-radius: 100%;
  border: 2px solid #c8c8c5;
  background-color: #fff;
}
@media screen and (min-width: 1200px) {
  .pagination-item a,
  .pagination-item span {
    width: 50px;
    height: 50px;
  }
}
.pagination-item__number {
  font-size: 1.6rem;
  text-align: center;
  vertical-align: middle;
  background-color: var(--cl-base);
  margin-left: 5px;
  margin-right: 5px;
  position: relative;
  font-family: var(--f-noto);
  font-weight: 900;
}
@media screen and (min-width: 1200px) {
  .pagination-item__number {
    font-size: 2.2rem;
    margin-left: 8px;
    margin-right: 8px;
  }
}
.pagination-item__number:hover, .pagination-item__number.active {
  background-color: var(--cl-base-y);
  transition: 0.3s;
  border: 2px solid var(--cl-base-k);
}
.pagination-item__number::before, .pagination-item__number::after {
  content: "";
  position: absolute;
  top: 3px;
  bottom: 0;
  margin: auto;
}
.pagination-item__prev, .pagination-item__next {
  position: relative;
  padding: 0px 0px 0px 30px;
  border: 2px solid var(--cl-base-k) !important;
  background-color: var(--cl-base) !important;
}
.pagination-item__prev::before, .pagination-item__prev::after, .pagination-item__next::before, .pagination-item__next::after {
  content: "";
  display: inline-block;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
}
.pagination-item__prev::before, .pagination-item__next::before {
  background-image: url(../img/common/arrow-white.svg);
  background-size: 8px 13px;
  width: 8px;
  height: 13px;
}
@media screen and (min-width: 1200px) {
  .pagination-item__prev::before, .pagination-item__next::before {
    background-size: 11px 18px;
    width: 11px;
    height: 18px;
  }
}
.pagination-item__prev {
  margin-right: 5px;
}
@media screen and (min-width: 1200px) {
  .pagination-item__prev {
    margin-right: 8px;
  }
}
.pagination-item__prev::before {
  left: 12px;
  transform: scale(-1, 1);
}
@media screen and (min-width: 1200px) {
  .pagination-item__prev::before {
    left: 16px;
  }
}
.pagination-item__next {
  margin-left: 5px;
}
@media screen and (min-width: 1200px) {
  .pagination-item__next {
    margin-left: 8px;
  }
}
.pagination-item__next::before {
  right: 12px;
}
@media screen and (min-width: 1200px) {
  .pagination-item__next::before {
    right: 16px;
  }
}
.pagination-item__dot {
  width: 32px;
  color: var(--cl-base-k);
  font-weight: bold;
  border: none !important;
  background: none !important;
}

.copylight {
  display: none;
}
@media screen and (min-width: 1200px) {
  .copylight {
    display: block;
    font-size: 1.2rem;
    text-align: center;
    margin-bottom: 40px;
  }
}

.contact-box01 {
  border: 2px solid var(--cl-base-k);
  background-color: #fff;
  -moz-border-radius: 16px;
  -webkit-border-radius: 16px;
  -o-border-radius: 16px;
  -ms-border-radius: 16px;
  border-radius: 16px;
  padding: 16px 20px;
}
.contact-box01__title {
  font-weight: bold;
  border-bottom: 2px dotted var(--cl-base-k);
  padding-bottom: 8px;
  margin-bottom: 12px;
  position: relative;
  padding-left: 20px;
}
.contact-box01__title::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 10px;
  left: 5px;
  margin: auto;
  width: 6px;
  height: 6px;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  background-color: var(--cl-base-k);
}

.contact-box01__data__item {
  padding-left: 1.5em;
  margin-bottom: 10px;
  position: relative;
}
.contact-box01__data__item::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 12px;
  left: 5px;
  margin: auto;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background-color: #bbb;
}
@media screen and (max-width: 639px) {
  .contact-box01__data__item::before {
    top: 10px;
  }
}

.side {
  display: none;
}
@media screen and (min-width: 1200px) {
  .side {
    display: block;
    background-color: var(--cl-base);
    position: fixed;
    top: 0;
    left: 0;
    width: 360px;
    height: 100vh;
    padding: 45px 20px 20px 25px;
  }
}

.side-wrap {
  max-width: 320px;
  width: 100%;
  height: 100%;
  overflow-y: scroll;
  scrollbar-width: none;
}
.side-wrap .sns-list,
.side-wrap .btn-tel,
.side-wrap .bnr-nationality,
.side-wrap .company-info {
  max-width: 280px;
  width: 100%;
}
.side-wrap .sns-list {
  margin-bottom: 20px;
}

.site-logo {
  max-width: 260px;
  width: 100%;
  margin-bottom: 34px;
}

.side-jobsearch {
  max-width: 280px;
  width: 100%;
  background-color: var(--cl-base-y);
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  -o-border-radius: 10px;
  -ms-border-radius: 10px;
  border-radius: 10px;
  display: block;
  font-family: var(--f-zenmaru);
  text-align: center;
  font-size: 2.2rem;
  font-weight: 600;
  line-height: 1;
  padding: 16px;
  margin-bottom: 24px;
  transition: 0.3s;
}
.side-jobsearch__icon {
  padding-left: 34px;
  position: relative;
}
.side-jobsearch__icon::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  background-image: url(../img/common/icon-search.svg);
  background-size: 24px 24px;
  width: 24px;
  height: 24px;
}
.side-jobsearch:hover {
  background-color: var(--cl-base-k);
  color: #fff;
}
.side-jobsearch:hover .side-jobsearch__icon::before {
  background-image: url(../img/common/icon-search-white.svg);
}

.gnav {
  background-image: url(../img/common/main-anime.gif);
  background-position: bottom 0 right 20px;
  background-repeat: no-repeat;
  background-size: 48px auto;
}

.gnav-list {
  margin-bottom: 32px;
}
.gnav-list__item {
  position: relative;
  padding-left: 24px;
}
.gnav-list__item:not(:last-child) {
  margin-bottom: 5px;
}
.gnav-list__item::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 14px;
  left: 3px;
  margin: auto;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
  -o-border-radius: 100%;
  -ms-border-radius: 100%;
  border-radius: 100%;
  width: 6px;
  height: 6px;
  background-color: var(--cl-base-y);
}
.gnav-list__link {
  font-family: var(--f-zenmaru);
  color: #fff;
  font-weight: 500;
  font-size: 1.8rem;
}

.wysiwyg {
  /*デフォルトの処理*/
  margin-bottom: 50px;
  padding-bottom: 40px;
  border-bottom: 1px solid var(--cl-line);
  color: #1f1f1f;
  text-align: justify;
  /*各テンプレートを囲むbox【必須】*/
  /*タイトル処理*/
  /*キャッチコピーの処理*/
  /*本文テキスト・写真回り込み処理*/
  /*ボタン*/
  /*写真の処理*/
  /*リスト*/
  /*テーブル*/
  /*youtube*/
  /*以下テンプレート外*/
}
@media screen and (max-width: 639px) {
  .wysiwyg {
    margin-bottom: 30px;
  }
}
.wysiwyg a {
  color: var(--cl-base);
  text-decoration: underline;
}
.wysiwyg a:hover {
  text-decoration: none;
}
.wysiwyg img {
  width: auto;
  max-width: 100%;
  height: auto;
}
.wysiwyg .box {
  margin-bottom: 24px;
  *zoom: 1;
}
.wysiwyg .box:after {
  content: "";
  display: block;
  clear: both;
  height: 0;
  line-height: 0;
  visibility: hidden;
}
@media screen and (min-width: 640px) {
  .wysiwyg .box {
    margin-bottom: 28px;
  }
}
@media screen and (min-width: 1200px) {
  .wysiwyg .box {
    margin-bottom: 32px;
  }
}
.wysiwyg .title-line {
  position: relative;
  padding: 12px 10px 12px 24px;
  color: var(--cl-base-k);
  font-size: 1.8rem;
  line-height: 1.2em;
  font-family: var(--f-zenmaru);
  font-weight: 800;
  background-color: #fff;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  -o-border-radius: 6px;
  -ms-border-radius: 6px;
  border-radius: 6px;
}
@media screen and (min-width: 640px) {
  .wysiwyg .title-line {
    font-size: 2rem;
    padding: 14px 10px 14px 32px;
  }
}
@media screen and (min-width: 1200px) {
  .wysiwyg .title-line {
    font-size: 2.2rem;
    padding: 16px 16px 16px 38px;
  }
}
.wysiwyg .title-line::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 5px;
  width: 12px;
  height: 3px;
  margin: auto;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  -o-border-radius: 10px;
  -ms-border-radius: 10px;
  border-radius: 10px;
  background-color: var(--cl-base);
}
@media screen and (min-width: 640px) {
  .wysiwyg .title-line::before {
    left: 10px;
  }
}
@media screen and (min-width: 640px) {
  .wysiwyg .title-line::before {
    width: 16px;
    height: 5px;
  }
}
.job-detail__wrap .wysiwyg .title-line {
  background-color: var(--cl-light-bg);
}

.wysiwyg .title-obi {
  font-size: 1.6rem;
  position: relative;
  font-family: var(--f-zenmaru);
  font-weight: 800;
  padding-bottom: 8px;
  padding-left: 18px;
  color: var(--cl-base-k);
}
@media screen and (min-width: 640px) {
  .wysiwyg .title-obi {
    font-size: 1.8rem;
    padding-bottom: 10px;
  }
}
@media screen and (min-width: 1200px) {
  .wysiwyg .title-obi {
    font-size: 2rem;
  }
}
.wysiwyg .title-obi::before, .wysiwyg .title-obi::after {
  content: "";
  display: inline-block;
  position: absolute;
}
.wysiwyg .title-obi::before {
  margin: auto;
  background-color: var(--cl-line);
  width: 100%;
  height: 3px;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  -o-border-radius: 10px;
  -ms-border-radius: 10px;
  border-radius: 10px;
  left: 0;
  right: 0;
  bottom: 0;
}
.wysiwyg .title-obi::after {
  width: 8px;
  height: 8px;
  background-color: var(--cl-base);
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
  -o-border-radius: 100%;
  -ms-border-radius: 100%;
  border-radius: 100%;
  left: 0;
  top: 10px;
}
@media screen and (min-width: 640px) {
  .wysiwyg .title-obi::after {
    top: 12px;
  }
}
.wysiwyg .title-obi02 {
  background-color: var(--cl-base);
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  -o-border-radius: 6px;
  -ms-border-radius: 6px;
  border-radius: 6px;
  color: #fff;
  position: relative;
  font-size: 1.5rem;
  font-family: var(--f-zenmaru);
  font-weight: 800;
  padding: 6px 10px 8px 30px;
}
@media screen and (min-width: 640px) {
  .wysiwyg .title-obi02 {
    font-size: 1.6rem;
    padding: 8px 10px 10px 30px;
  }
}
@media screen and (min-width: 1200px) {
  .wysiwyg .title-obi02 {
    font-size: 1.8rem;
  }
}
.wysiwyg .title-obi02::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 16px;
  left: 13px;
  margin: auto;
  width: 7px;
  height: 7px;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
  -o-border-radius: 100%;
  -ms-border-radius: 100%;
  border-radius: 100%;
  background-color: var(--cl-base-y);
}
@media screen and (min-width: 640px) {
  .wysiwyg .title-obi02::before {
    top: 18px;
  }
}
.wysiwyg .title-icon {
  font-family: var(--f-zenmaru);
  font-weight: 800;
  color: var(--cl-base-k);
  font-size: 1.5rem;
  position: relative;
  padding-left: 14px;
}
@media screen and (min-width: 640px) {
  .wysiwyg .title-icon {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 1200px) {
  .wysiwyg .title-icon {
    font-size: 1.8rem;
  }
}
.wysiwyg .title-icon::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 11px;
  left: 0px;
  margin: auto;
  width: 7px;
  height: 7px;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
  -o-border-radius: 100%;
  -ms-border-radius: 100%;
  border-radius: 100%;
  background-color: var(--cl-base);
}
.wysiwyg .copy01 {
  margin-bottom: -5px;
  font-size: 1.6rem;
  color: var(--cl-text-g);
  font-family: var(--f-zenmaru);
  font-weight: 600;
}
@media screen and (min-width: 640px) {
  .wysiwyg .copy01 {
    font-size: 2rem;
  }
}
@media screen and (min-width: 1200px) {
  .wysiwyg .copy01 {
    font-size: 2.2rem;
  }
}
.wysiwyg .copy02 {
  margin-bottom: -5px;
  color: var(--cl-base);
  font-size: 1.6rem;
  color: var(--cl-text-g);
  font-family: var(--f-mincho);
  font-weight: 600;
}
@media screen and (min-width: 640px) {
  .wysiwyg .copy02 {
    font-size: 2rem;
  }
}
@media screen and (min-width: 1200px) {
  .wysiwyg .copy02 {
    font-size: 2.2rem;
  }
}
.wysiwyg .text {
  font-size: 1.4rem;
  line-height: 2;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 640px) {
  .wysiwyg .text {
    font-size: 1.6rem;
  }
}
.wysiwyg .text--mincho {
  font-family: var(--f-mincho);
}
.wysiwyg .img-right {
  margin: 7px 0 30px 30px;
  width: auto;
  max-width: 33%;
  float: right;
  display: inline-block;
}
@media screen and (max-width: 639px) {
  .wysiwyg .img-right {
    margin: 0 auto 10px auto;
    width: auto;
    max-width: 100%;
    float: none;
  }
}
.wysiwyg .img-left {
  margin: 7px 30px 30px 0;
  width: auto;
  max-width: 33%;
  float: left;
  display: inline-block;
}
@media screen and (max-width: 639px) {
  .wysiwyg .img-left {
    margin: 0 auto 10px auto;
    width: auto;
    max-width: 100%;
    float: none;
  }
}
.wysiwyg .btn-wrapper {
  text-align: center;
}
.wysiwyg .btn-wrapper a {
  display: inline-block;
  max-width: 100%;
  padding: 14px 36px 14px 20px;
  background-color: var(--cl-base);
  color: #fff;
  font-size: 1.6rem;
  font-family: var(--f-zenmaru);
  font-weight: 500;
  text-align: center;
  text-decoration: none;
  position: relative;
  -moz-border-radius: 100px;
  -webkit-border-radius: 100px;
  -o-border-radius: 100px;
  -ms-border-radius: 100px;
  border-radius: 100px;
}
@media screen and (min-width: 640px) {
  .wysiwyg .btn-wrapper a {
    font-size: 1.8rem;
  }
}
.wysiwyg .btn-wrapper a::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  right: 16px;
  bottom: 0;
  margin: auto;
  background-image: url(../img/common/arrow-white.svg);
  background-size: 8px 13px;
  width: 8px;
  height: 13px;
}
@media screen and (min-width: 1200px) {
  .wysiwyg .btn-wrapper a:hover {
    background-color: var(--cl-base-k);
  }
}
.wysiwyg .photo-3 {
  padding: 0;
  list-style: none;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.wysiwyg .photo-3::after {
  content: none;
}
.wysiwyg .photo-3 li {
  margin-left: 5%;
  width: 29.9666666667%;
  text-align: center;
}
.wysiwyg .photo-3 li:first-child {
  margin-left: 0;
}
@media screen and (min-width: 640px) {
  .wysiwyg .photo-3 li {
    margin-left: 20px;
    width: calc((99.9% - 40px) / 3);
  }
}
@media screen and (max-width: 639px) {
  .wysiwyg .photo-3 li {
    display: block;
    margin-top: 10px;
    margin-left: 0;
    width: 100%;
  }
  .wysiwyg .photo-3 li:first-child {
    margin-top: 0;
  }
}
.wysiwyg .photo-2 {
  padding: 0;
  list-style: none;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.wysiwyg .photo-2::after {
  content: none;
}
.wysiwyg .photo-2 li {
  margin-left: 5%;
  width: 47.45%;
  text-align: center;
}
.wysiwyg .photo-2 li:first-child {
  margin-left: 0;
}
@media screen and (min-width: 640px) {
  .wysiwyg .photo-2 li {
    margin-left: 20px;
    width: calc((99.9% - 20px) / 2);
  }
}
@media screen and (max-width: 639px) {
  .wysiwyg .photo-2 li {
    margin-left: 5px;
    width: calc((100% - 5px) / 2);
  }
}
.wysiwyg .photo-1 {
  width: 100%;
  text-align: center;
}
.wysiwyg .caption {
  margin-top: 5px;
  line-height: 1.3em;
  text-align: center;
  display: block;
  font-size: 1.3rem;
}
.wysiwyg .list-wrapper {
  padding: 20px 20px 20px 16px;
  list-style: none;
  border: 1px solid var(--cl-line);
  background-color: #fff;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  -o-border-radius: 6px;
  -ms-border-radius: 6px;
  border-radius: 6px;
  font-size: 1.4rem;
}
@media screen and (min-width: 640px) {
  .wysiwyg .list-wrapper {
    font-size: 1.6rem;
    padding: 20px 20px 20px 20px;
  }
}
.wysiwyg .list-wrapper li {
  margin-top: 5px;
  padding-left: 1.3em;
  line-height: 1.5em;
  text-align: justify;
  position: relative;
}
@media screen and (min-width: 640px) {
  .wysiwyg .list-wrapper li {
    margin-top: 10px;
  }
}
.wysiwyg .list-wrapper li:first-child {
  margin-top: 0;
}
.wysiwyg .list-wrapper li::before {
  content: "";
  top: 8px;
  left: 3px;
  width: 5px;
  height: 5px;
  background-color: var(--cl-base);
  position: absolute;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  -o-border-radius: 6px;
  -ms-border-radius: 6px;
  border-radius: 6px;
}
.wysiwyg .list-wrapper02 {
  counter-reset: num;
  padding: 20px 20px 20px 16px;
  list-style: none;
  border: 1px solid var(--cl-line);
  background-color: #fff;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  -o-border-radius: 6px;
  -ms-border-radius: 6px;
  border-radius: 6px;
  font-size: 1.4rem;
}
@media screen and (min-width: 640px) {
  .wysiwyg .list-wrapper02 {
    font-size: 1.6rem;
    padding: 20px 20px 20px 20px;
  }
}
.wysiwyg .list-wrapper02 li {
  margin-top: 7px;
  padding-left: 30px;
  line-height: 1.5em;
  text-align: justify;
  position: relative;
}
@media screen and (min-width: 640px) {
  .wysiwyg .list-wrapper02 li {
    margin-top: 10px;
  }
}
.wysiwyg .list-wrapper02 li:first-child {
  margin-top: 0;
}
.wysiwyg .list-wrapper02 li::before {
  content: counter(num);
  counter-increment: num;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0px;
  left: 0;
  width: 22px;
  height: 22px;
  background-color: var(--cl-base);
  color: #fff;
  font-size: 1.3rem;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  text-align: center;
  font-family: var(--f-noto);
  font-weight: 600;
}
@media screen and (min-width: 640px) {
  .wysiwyg .list-wrapper02 li::before {
    top: 1px;
  }
}
.wysiwyg .table {
  width: 100%;
  border: 1px solid #ddd;
  border-collapse: collapse;
  font-family: var(--f-noto);
  font-weight: 400;
  font-size: 1.3rem;
}
.wysiwyg .table thead th {
  background-color: var(--cl-base);
}
.wysiwyg .table th {
  padding: 20px;
  background-color: var(--cl-base);
  border: 1px solid #ddd;
  color: #fff;
  font-weight: 400;
  line-height: 1.3em;
  text-align: center;
  vertical-align: middle;
}
@media screen and (max-width: 639px) {
  .wysiwyg .table th {
    padding: 7px 5px 5px;
  }
}
.wysiwyg .table td {
  padding: 20px;
  border: 1px solid #ddd;
  color: #1f1f1f;
  font-weight: 400;
  line-height: 1.3em;
  text-align: justify;
  vertical-align: middle;
  background-color: #fff;
}
@media screen and (max-width: 639px) {
  .wysiwyg .table td {
    padding: 7px 5px 5px;
  }
}
.wysiwyg .youtube-wrapper {
  margin: 0 auto;
  width: 100%;
  max-width: 600px;
  position: relative;
}
.wysiwyg .youtube-wrapper::before {
  content: "";
  padding-bottom: 56.25%;
  display: block;
}
.wysiwyg .youtube-wrapper iframe {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
}
.wysiwyg .left {
  width: 100%;
  margin: 0 auto;
  text-align: left;
}
.wysiwyg .center {
  width: 100%;
  margin: 0 auto;
  text-align: center;
}
.wysiwyg .right {
  width: 100%;
  margin: 0 auto;
  text-align: right;
}
.wysiwyg h1 {
  font-size: 240%;
  line-height: 1.5;
  background: url(none);
  margin: 0px;
  padding: 0px;
}
.wysiwyg h2 {
  font-size: 180%;
  line-height: 1.5;
  margin: 0;
  background: url(none);
  padding: 0px;
  border-bottom: none;
}
.wysiwyg h3 {
  font-size: 140%;
  line-height: 1.5;
  background: url(none);
  margin: 0px;
  padding: 0px;
  color: #000;
}
.wysiwyg h4 {
  font-size: 120%;
  line-height: 1.5;
  margin: 0;
  background: url(none);
  padding: 0px;
  color: #000;
}
.wysiwyg h5 {
  font-size: 100%;
  line-height: 1.5;
  margin: 0;
  background: url(none);
  padding: 0px;
}
.wysiwyg h6 {
  font-size: 82%;
  line-height: 1.5;
  margin: 0;
  background: url(none);
  padding: 0px;
}
.wysiwyg ul {
  padding-left: 40px;
  list-style-type: disc;
}
.wysiwyg ol {
  margin: 1em 0;
  padding-left: 40px;
  list-style-type: decimal;
}
.wysiwyg blockquote {
  padding-left: 1em;
}
.wysiwyg table {
  font-size: 100%;
  border-collapse: collapse;
}
.wysiwyg hr {
  display: block;
}
.wysiwyg em {
  font-style: italic !important;
}
.wysiwyg strong {
  font-weight: bold !important;
}
.wysiwyg em strong,
.wysiwyg strong em {
  font-style: italic !important;
  font-weight: bold !important;
}

.form-tbl {
  margin-bottom: 30px;
}

.form-tbl__title {
  font-family: var(--f-zenmaru);
  font-weight: 700;
  padding-left: 16px;
  position: relative;
  font-size: 1.6rem;
  margin-bottom: 8px;
  position: relative;
}
@media screen and (min-width: 1200px) {
  .form-tbl__title {
    font-size: 1.8rem;
    padding-left: 20px;
    margin-bottom: 12px;
  }
}
.form-tbl__title::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 11px;
  left: 0;
  margin: auto;
  width: 9px;
  height: 9px;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
  -o-border-radius: 100%;
  -ms-border-radius: 100%;
  border-radius: 100%;
  background-color: var(--cl-base);
}
@media screen and (min-width: 1200px) {
  .form-tbl__title::before {
    width: 8px;
    height: 8px;
    top: 12px;
  }
}

.form-tbl__data {
  margin-bottom: 20px;
}
@media screen and (min-width: 1200px) {
  .form-tbl__data {
    margin-bottom: 30px;
  }
}
.job-modal__contetns__inner .form-tbl__data {
  margin-bottom: 10px;
}

.must-icon {
  background-color: #f70b74;
  color: #fff;
  width: 40px;
  height: 20px;
  font-size: 1.2rem;
  font-family: var(--f-zenmaru);
  text-align: center;
  line-height: 20px;
  display: block;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  -o-border-radius: 10px;
  -ms-border-radius: 10px;
  border-radius: 10px;
  position: absolute;
  top: 2px;
  right: 0;
}
@media screen and (min-width: 1200px) {
  .must-icon {
    width: 50px;
    font-size: 1.4rem;
    height: 24px;
    line-height: 24px;
    -moz-border-radius: 20px;
    -webkit-border-radius: 20px;
    -o-border-radius: 20px;
    -ms-border-radius: 20px;
    border-radius: 20px;
  }
}

.birthday-list {
  display: flex;
  align-items: center;
  width: 100%;
}
.birthday-list__item.year {
  width: 50%;
}
.birthday-list__item.month, .birthday-list__item.day {
  width: 25%;
}
.birthday-list__item:not(:nth-child(3n)) {
  margin-right: 5px;
}
.birthday-list .text-year {
  margin: 0 8px;
}
.birthday-list .text-month {
  margin: 0 0 0 8px;
}

input[type=text],
input[type=tel],
input[type=email],
textarea {
  width: 100%;
  border: 1px solid var(--cl-base-k);
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  -o-border-radius: 5px;
  -ms-border-radius: 5px;
  border-radius: 5px;
  background-color: #fff;
  padding: 10px;
}
@media screen and (min-width: 1200px) {
  input[type=text],
  input[type=tel],
  input[type=email],
  textarea {
    padding: 16px;
  }
}
.job-modal__contetns__inner input[type=text],
.job-modal__contetns__inner input[type=tel],
.job-modal__contetns__inner input[type=email],
.job-modal__contetns__inner textarea {
  width: 100%;
  padding: 8px 10px;
}

input[type=reset] {
  border: none;
}

select {
  background-color: #fff;
  border: 1px solid var(--cl-base-k);
  display: block;
  padding: 12px 12px;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  -o-border-radius: 8px;
  -ms-border-radius: 8px;
  border-radius: 8px;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  resize: vertical;
  background-image: url(../img/common/form-arrow.svg);
  background-size: 12px 8px;
  background-repeat: no-repeat;
  background-position: right 8px top 50%;
}
@media screen and (min-width: 1200px) {
  select {
    padding: 16px;
    background-position: right 16px top 50%;
  }
}
.job-modal__contetns__inner select {
  width: 100%;
  padding: 8px 10px;
}

select.top-main__search__select {
  border: 2px solid var(--cl-base-k);
  font-weight: bold;
  font-size: 1.7rem;
  background-image: url(../img/common/form-arrow-green.svg);
  width: 100%;
  padding: 10px 10px;
}
@media screen and (min-width: 1300px) {
  select.top-main__search__select {
    padding: 16px 16px;
  }
}

.form-list01 {
  display: flex;
}
.form-list01__item {
  width: calc((100% - 10px) / 2);
}
.form-list01__item:not(:nth-child(2n)) {
  margin-right: 10px;
}
.form-list01.multiple {
  flex-wrap: wrap;
}
.form-list01.multiple .form-list01__item {
  margin-bottom: 10px;
}
@media screen and (min-width: 640px) {
  .form-list01.multiple .form-list01__item {
    width: calc((100% - 20px) / 3);
  }
  .form-list01.multiple .form-list01__item:not(:nth-child(2n)) {
    margin-right: 0px;
  }
  .form-list01.multiple .form-list01__item:not(:nth-child(3n)) {
    margin-right: 10px;
  }
}

.input-radio01,
.input-checkbox01 {
  display: none;
}
.input-radio01:checked + .radio01,
.input-checkbox01:checked + .radio01 {
  background-color: var(--cl-base);
  color: #fff;
  border: 1px solid var(--cl-base);
}
.input-radio01:checked + .radio01::before,
.input-checkbox01:checked + .radio01::before {
  background-color: #fff;
}
.input-radio01:checked + .radio01::after,
.input-checkbox01:checked + .radio01::after {
  background-color: var(--cl-base);
  width: 6px;
  height: 6px;
  left: 19px;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
  -o-border-radius: 100%;
  -ms-border-radius: 100%;
  border-radius: 100%;
}
.input-radio01:checked + .checkbox01,
.input-checkbox01:checked + .checkbox01 {
  background-color: var(--cl-base);
  color: #fff;
  border: 1px solid var(--cl-base);
}
.input-radio01:checked + .checkbox01::before,
.input-checkbox01:checked + .checkbox01::before {
  background-color: #fff;
}
.input-radio01:checked + .checkbox01::after,
.input-checkbox01:checked + .checkbox01::after {
  left: 16px;
  width: 12px;
  height: 6px;
  border-left: 2px solid var(--cl-base);
  border-bottom: 2px solid var(--cl-base);
  transform: rotate(-45deg);
  bottom: 2px;
}

.checkbox01,
.radio01 {
  border: 1px solid var(--cl-base-k);
  background-color: #fff;
  display: flex;
  align-items: center;
  height: 100%;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  -o-border-radius: 8px;
  -ms-border-radius: 8px;
  border-radius: 8px;
  padding: 12px 12px 12px 40px;
  position: relative;
}
@media screen and (min-width: 1200px) {
  .checkbox01,
  .radio01 {
    padding: 16px 16px 16px 40px;
  }
}
.job-modal__contetns__inner .checkbox01,
.job-modal__contetns__inner .radio01 {
  padding: 12px 12px 12px 40px;
}

.checkbox01::before, .checkbox01::after,
.radio01::before,
.radio01::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}

.radio01::before {
  background-color: #ecece8;
  width: 20px;
  height: 20px;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
  -o-border-radius: 100%;
  -ms-border-radius: 100%;
  border-radius: 100%;
  left: 12px;
}

.checkbox01::before {
  background-color: #ecece8;
  width: 20px;
  height: 20px;
  left: 12px;
  -moz-border-radius: 2px;
  -webkit-border-radius: 2px;
  -o-border-radius: 2px;
  -ms-border-radius: 2px;
  border-radius: 2px;
}

.form-adlist__title {
  font-family: var(--f-zenmaru);
  margin-bottom: 5px;
  font-weight: 600;
  color: #33475b;
}
.form-adlist__data {
  margin-bottom: 10px;
}
.form-adlist .sele-prefectures {
  width: 100%;
}

.form-tbl__sectitle01 {
  border-bottom: 2px solid var(--cl-base);
  font-weight: bold;
  line-height: 1.4;
  padding-bottom: 10px;
  margin-bottom: 10px;
}
.form-tbl__sectitle01 .em {
  color: var(--cl-em);
}

.form-privacy {
  border: 1px solid var(--cl-base-k);
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  -o-border-radius: 8px;
  -ms-border-radius: 8px;
  border-radius: 8px;
  background-color: #fff;
  padding: 16px 20px;
  overflow-y: scroll;
  height: 180px;
  margin-bottom: 15px;
}
@media screen and (min-width: 1200px) {
  .form-privacy {
    margin-bottom: 25px;
  }
}

.form-privacy__title {
  font-weight: bold;
  font-size: 1.5rem;
  margin-bottom: 5px;
}

.form-privacy__text {
  margin-bottom: 15px;
}

.form-privacy__list {
  list-style: disc;
  padding-left: 1em;
  margin-bottom: 15px;
}

.form-privacy__btn {
  margin-bottom: 30px;
}
@media screen and (min-width: 1200px) {
  .form-privacy__btn {
    margin-bottom: 50px;
  }
}
.form-privacy__btn input[type=checkbox] {
  display: none;
}
.form-privacy__btn input[type=checkbox]:checked + label {
  background-color: var(--cl-base-k) !important;
  color: #fff;
}
.form-privacy__btn input[type=checkbox]:checked + label::after {
  width: 10px;
  height: 10px;
  background-color: var(--cl-base);
  left: 20px;
}
.form-privacy__btn label {
  background-color: #fff;
  display: block;
  max-width: 130px;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  font-weight: bold;
  font-size: 1.6rem;
  padding: 15px 20px 16px 40px;
  position: relative;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  -o-border-radius: 6px;
  -ms-border-radius: 6px;
  border-radius: 6px;
}
@media screen and (min-width: 1200px) {
  .form-privacy__btn label {
    max-width: 200px;
    padding: 20px 20px 20px 40px;
  }
}
.form-privacy__btn label::before, .form-privacy__btn label::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
}
.form-privacy__btn label::before {
  width: 18px;
  height: 18px;
  background-color: #ecece8;
  left: 16px;
}

.form-error-box {
  border: 1px solid var(--cl-em);
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  -o-border-radius: 6px;
  -ms-border-radius: 6px;
  border-radius: 6px;
  background-color: #fff;
  color: var(--cl-em);
  font-weight: bold;
  padding: 12px;
  margin-bottom: 30px;
  line-height: 1.5;
}
@media screen and (min-width: 640px) {
  .form-error-box {
    text-align: center;
  }
}
@media screen and (min-width: 1200px) {
  .form-error-box {
    margin-bottom: 50px;
  }
}

.form-error-text {
  color: var(--cl-em);
  font-weight: bold;
  margin-bottom: 5px;
  width: 100%;
}

.form-fix__btn {
  background-color: #ddd;
  color: #444;
  font-size: 1.5rem;
  display: block;
  font-family: var(--f-zenmaru);
  text-align: center;
  font-weight: 600;
  max-width: 60%;
  margin: 20px auto 0;
  padding: 10px;
  -moz-border-radius: 60px;
  -webkit-border-radius: 60px;
  -o-border-radius: 60px;
  -ms-border-radius: 60px;
  border-radius: 60px;
}
@media screen and (min-width: 640px) {
  .form-fix__btn {
    max-width: 280px;
  }
}
@media screen and (min-width: 1200px) {
  .form-fix__btn {
    max-width: 240px;
    font-size: 1.6rem;
  }
}

.form-send {
  margin-bottom: 20px;
}
.form-send__title {
  font-family: var(--f-zenmaru);
  font-size: 2rem;
  margin-bottom: 15px;
  font-weight: 700;
  color: var(--cl-text-g);
  text-align: center;
}
@media screen and (min-width: 640px) {
  .form-send__title {
    font-size: 2.2rem;
  }
}
@media screen and (min-width: 1200px) {
  .form-send__title {
    font-size: 2.6rem;
  }
}
@media screen and (min-width: 640px) {
  .form-send__data {
    text-align: center;
    margin-bottom: 40px;
  }
}

.entry-box {
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  -o-border-radius: 8px;
  -ms-border-radius: 8px;
  border-radius: 8px;
  background-color: #fff;
  margin-bottom: 30px;
  padding: 12px 16px 16px;
  font-family: var(--f-zenmaru);
  font-weight: 600;
}
@media screen and (min-width: 1200px) {
  .entry-box {
    padding: 16px 24px 20px;
    margin-bottom: 46px;
  }
}
.entry-box__title {
  font-size: 1.5rem;
  border-bottom: 2px dotted var(--cl-base-k);
  padding-bottom: 8px;
  margin-bottom: 8px;
  position: relative;
  padding-left: 16px;
}
@media screen and (min-width: 1200px) {
  .entry-box__title {
    font-size: 1.6rem;
    padding-bottom: 10px;
    margin-bottom: 12px;
  }
}
.entry-box__title::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 10px;
  left: 0;
  margin: auto;
  width: 8px;
  height: 8px;
  background-color: var(--cl-base);
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
  -o-border-radius: 100%;
  -ms-border-radius: 100%;
  border-radius: 100%;
}
.entry-box__data {
  color: var(--cl-text-g);
  font-size: 1.6rem;
  line-height: 1.4;
}
@media screen and (min-width: 1200px) {
  .entry-box__data {
    font-size: 1.8rem;
  }
}

.text-center {
  text-align: center;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

.text-em {
  color: var(--cl-em);
}

.catchcopy01 {
  font-family: var(--f-zenmaru);
  font-size: 2.2rem;
  font-weight: 600;
  text-align: center;
  margin-bottom: 24px;
  padding-bottom: 24px;
  line-height: 1.4;
  background-image: url(../img/common/icon-dot-three.svg);
  background-size: 36px 6px;
  background-position: center bottom;
  background-repeat: no-repeat;
}
@media screen and (min-width: 640px) {
  .catchcopy01 {
    font-size: 2.6rem;
  }
}

.catchcopy02 {
  color: var(--cl-text-g);
  font-family: var(--f-zenmaru);
  font-size: 1.8rem;
  font-weight: 600;
}
@media screen and (min-width: 640px) {
  .catchcopy02 {
    text-align: center;
    font-size: 2.4rem;
  }
}

.text-line01 {
  position: relative;
  z-index: 0;
  background: linear-gradient(transparent 70%, var(--cl-base-y-bg) 0%);
}

.text-bold {
  font-weight: bold;
}

.text-indent01 {
  text-indent: -1em;
  padding-left: 1em;
}

.chara-anime {
  margin: 60px auto 40px;
  overflow: hidden;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  white-space: nowrap;
  height: 140px;
  position: relative;
}
.chara-anime.top-main__anime {
  height: 200px;
  margin: 24px auto 40px;
}
@media screen and (min-width: 1200px) {
  .chara-anime.top-main__anime {
    height: 200px;
    margin-top: 20px;
  }
}
@media screen and (min-width: 1300px) {
  .chara-anime.top-main__anime {
    height: 240px;
  }
}
@media screen and (min-width: 1500px) {
  .chara-anime.top-main__anime {
    height: 300px;
    margin-top: 40px;
  }
}

.chara-anime__text {
  animation: marquee 10s linear infinite;
  width: 100%;
  transform: translateX(100%);
}
@media screen and (min-width: 1200px) {
  .chara-anime__text {
    animation: marquee 46s linear infinite;
  }
}
.top-main__anime .chara-anime__text {
  animation: marquee 100s linear infinite;
}

.chara-anime__text__item {
  display: inline-block;
  font-family: var(--f-zenkaku);
  color: rgba(118, 222, 107, 0.4);
  font-size: 5rem;
  font-weight: 900;
  letter-spacing: -5px;
  line-height: 1;
}
.chara-anime__text.revers {
  animation: marquee02 100s linear infinite;
}

@keyframes marquee {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}
@keyframes marquee02 {
  0% {
    transform: translateX(-50%);
  }
  100% {
    transform: translateX(0%);
  }
}
.chara-anime__img {
  width: 44px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.top-main__anime .chara-anime__img {
  width: 70px;
}
@media screen and (min-width: 1200px) {
  .top-main__anime .chara-anime__img {
    width: 70px;
  }
}
@media screen and (min-width: 1300px) {
  .top-main__anime .chara-anime__img {
    width: 80px;
  }
}
@media screen and (min-width: 1500px) {
  .top-main__anime .chara-anime__img {
    width: 100px;
  }
}

.dl-list__type01 {
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  background-color: #fff;
  padding: 8px 16px 16px;
  margin-bottom: 15px;
}
.dl-list__type01__title {
  font-family: var(--f-zenmaru);
  font-size: 1.9rem;
  font-weight: 600;
  margin-bottom: 5px;
}
.dl-list__type01__title__number {
  font-size: 2.2rem;
  color: var(--cl-text-g);
  margin-right: 5px;
}
.dl-list__type01__data {
  font-weight: bold;
}

.dl-list__type02__title {
  font-family: var(--f-zenmaru);
  font-weight: 600;
  position: relative;
  padding-left: 16px;
  line-height: 1.4;
  font-size: 1.6rem;
  margin-bottom: 10px;
}
@media screen and (min-width: 1200px) {
  .dl-list__type02__title {
    font-size: 1.8rem;
  }
}
.dl-list__type02__title::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 8px;
  left: 0;
  margin: auto;
  background-color: var(--cl-base);
  width: 9px;
  height: 9px;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
.dl-list__type02__data {
  margin-bottom: 20px;
}

.dl-list__type03__title {
  font-family: var(--f-zenmaru);
  font-size: 1.8rem;
  font-weight: 600;
  padding-left: 20px;
  position: relative;
  line-height: 1.4;
  padding-bottom: 16px;
  margin-bottom: 16px;
}
@media screen and (min-width: 640px) {
  .dl-list__type03__title {
    font-size: 2rem;
  }
}
.dl-list__type03__title::before, .dl-list__type03__title::after {
  content: "";
  display: inline-block;
  position: absolute;
  margin: auto;
}
.dl-list__type03__title::before {
  top: 9px;
  left: 0;
  width: 9px;
  height: 9px;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  background-color: var(--cl-base);
}
@media screen and (min-width: 640px) {
  .dl-list__type03__title::before {
    top: 11px;
  }
}
.dl-list__type03__title::after {
  bottom: 0;
  left: 0;
  background-color: var(--cl-base);
  width: 100%;
  height: 3px;
  -moz-border-radius: 2px;
  -webkit-border-radius: 2px;
  -o-border-radius: 2px;
  -ms-border-radius: 2px;
  border-radius: 2px;
}
.dl-list__type03__data {
  margin-bottom: 28px;
}

.dl-list__type04 {
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  background-color: #fff;
  padding: 16px 20px 0px;
}
@media screen and (min-width: 640px) {
  .dl-list__type04 {
    max-width: 580px;
    width: 100%;
    margin: 0 auto;
    padding: 20px 25px 0;
  }
}
@media screen and (min-width: 1200px) {
  .dl-list__type04 {
    max-width: 680px;
    padding: 30px;
  }
}
.dl-list__type04__title {
  background-color: var(--cl-base);
  color: #fff;
  font-family: var(--f-zenmaru);
  font-size: 1.8rem;
  font-weight: 600;
  text-align: center;
  padding: 5px 10px;
  margin-bottom: 16px;
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  -o-border-radius: 25px;
  -ms-border-radius: 25px;
  border-radius: 25px;
}
@media screen and (min-width: 1200px) {
  .dl-list__type04__title {
    font-size: 2rem;
    margin-bottom: 20px;
  }
}
.dl-list__type04__data {
  margin-bottom: 25px;
}

.ol-list01 {
  text-indent: -1.8em;
  padding-left: 1.8em;
  margin-bottom: 30px;
}

.ol-list02 {
  text-indent: -1.5em;
  padding-left: 1.5em;
  margin-bottom: 20px;
}

.number-type01 {
  width: 50px;
  height: 50px;
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: var(--f-zenmaru);
  font-weight: 600;
  background-color: var(--cl-base-y);
  line-height: 1;
  font-size: 2.4rem;
  padding-bottom: 2px;
}

/*==================================================================
    page index
===================================================================*/
@media screen and (min-width: 1200px) {
  .top-wrap {
    display: flex;
    flex-wrap: wrap;
  }
}

.top-main {
  background-color: var(--cl-base);
  padding: 80px 0 20px;
}
@media screen and (min-width: 1200px) {
  .top-main {
    width: 40%;
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    padding-bottom: 0;
    padding-top: 60px;
  }
  .top-main__wrap {
    margin-bottom: 0px;
  }
}
@media screen and (max-height: 780px) {
  .top-main {
    overflow-y: scroll;
    scrollbar-width: none;
  }
}
@media screen and (min-width: 1300px) {
  .top-main {
    padding-top: 100px;
  }
}

@media screen and (min-width: 1200px) {
  .top-contents {
    width: 60%;
    margin-left: 40%;
  }
}

.top-site-logo {
  max-width: 180px;
  width: 100%;
  position: absolute;
  top: 25px;
  left: 15px;
}
@media screen and (min-width: 640px) {
  .top-site-logo {
    max-width: 220px;
  }
}
@media screen and (min-width: 1200px) {
  .top-site-logo {
    max-width: 200px;
  }
}
@media screen and (min-width: 1400px) {
  .top-site-logo {
    max-width: 274px;
  }
}

.top-main__img {
  padding: 25px 0 0px 0;
}

.top-main__search {
  padding: 0 10px;
  text-align: center;
}
@media screen and (min-width: 640px) {
  .top-main__search {
    padding: 0 40px;
  }
}
@media screen and (min-width: 1025px) {
  .top-main__search {
    max-width: 880px;
    width: 100%;
    margin: 0 auto;
  }
}
@media screen and (min-width: 1200px) {
  .top-main__search {
    padding: 0 30px;
  }
}
@media screen and (min-width: 1500px) {
  .top-main__search {
    padding: 0 60px 0 40px;
  }
}

.top-main__search__title {
  color: var(--cl-base-y);
  font-family: var(--f-zenmaru);
  font-size: 2.4rem;
  font-weight: 600;
  margin-bottom: 15px;
  position: relative;
}
@media screen and (min-width: 1200px) {
  .top-main__search__title {
    margin-bottom: 25px;
    font-size: 2.4rem;
  }
}
@media screen and (min-width: 1300px) {
  .top-main__search__title {
    font-size: 3.2rem;
  }
}
.top-main__search__title::before, .top-main__search__title::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 5px;
  bottom: 0;
  margin: auto;
  width: 24px;
  height: 4px;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  -o-border-radius: 10px;
  -ms-border-radius: 10px;
  border-radius: 10px;
  background-color: var(--cl-base-y);
}
@media screen and (min-width: 1300px) {
  .top-main__search__title::before, .top-main__search__title::after {
    width: 30px;
    height: 5px;
  }
}
.top-main__search__title::before {
  left: 20px;
  transform: rotate(55deg);
}
@media screen and (min-width: 640px) {
  .top-main__search__title::before {
    left: 25%;
  }
}
@media screen and (min-width: 1200px) {
  .top-main__search__title::before {
    left: 10%;
  }
}
.top-main__search__title::after {
  right: 20px;
  transform: rotate(-55deg);
}
@media screen and (min-width: 640px) {
  .top-main__search__title::after {
    right: 25%;
  }
}
@media screen and (min-width: 1200px) {
  .top-main__search__title::after {
    right: 10%;
  }
}
.top-main__search__title .emp-dot {
  background-image: radial-gradient(circle at center, var(--cl-base-y) 20%, transparent 20%);
  /* 点の色とサイズ調整 */
  background-position: top right;
  /* 点の位置 */
  background-repeat: repeat-x;
  /* 横方向に繰り返し */
  background-size: 1em 0.3em;
  /* 点の間隔とサイズ調整 */
  padding-top: 0.4em;
  /* 縦方向の位置調整 */
}

.top-main__search__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.top-main__search__list__item {
  width: calc((100% - 32px) / 2);
  margin-bottom: 40px;
}
@media screen and (min-width: 640px) {
  .top-main__search__list__item.select {
    width: calc((100% - 45px - 14px) / 2);
  }
}
@media screen and (min-width: 1200px) {
  .top-main__search__list__item.select {
    width: calc((100% - 45px - 14px) / 2);
  }
}
.top-main__search__list__item:first-child {
  margin-right: 32px;
  position: relative;
}
@media screen and (min-width: 1200px) {
  .top-main__search__list__item:first-child {
    margin-right: 45px;
  }
}
.top-main__search__list__item:first-child::before {
  content: "×";
  display: inline-block;
  position: absolute;
  top: 0;
  right: -29px;
  bottom: 0;
  margin: auto;
  font-family: var(--f-zenmaru);
  font-size: 2.9rem;
  font-weight: 900;
}
@media screen and (min-width: 1200px) {
  .top-main__search__list__item:first-child::before {
    font-size: 4rem;
    right: -39px;
    bottom: auto;
    line-height: 1;
    top: 5px;
  }
}
.top-main__search__list__item.search {
  width: 100%;
}

@media screen and (min-width: 1200px) {
  .top-chach {
    font-family: var(--f-zenmaru);
    font-size: 1.6rem;
    font-weight: 800;
    padding: 0px 20px 0px 20px;
    width: calc(100% - 280px);
    min-height: 100px;
    display: flex;
    align-items: center;
    line-height: 1.4;
  }
}
@media screen and (min-width: 1300px) {
  .top-chach {
    font-size: 2rem;
    width: calc(100% - 360px);
    padding: 0px 30px 0px 30px;
  }
}

.top-popularity {
  padding: 18px 0 18px 0;
  position: relative;
}
.top-popularity::before, .top-popularity::after {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  background-image: url(../img/common/yellow-line.svg);
  background-repeat: repeat-x;
  height: 18px;
  width: 100%;
}
.top-popularity::before {
  top: 0;
  background-color: var(--cl-base);
}
@media screen and (min-width: 1200px) {
  .top-popularity::before {
    background-color: #fff;
  }
}
.top-popularity::after {
  bottom: 0;
  transform: scale(1, -1);
}
.top-popularity__wrap {
  background-color: var(--cl-base-y-bg);
  position: relative;
  padding: 56px 10px;
}
@media screen and (min-width: 640px) {
  .top-popularity__wrap {
    padding: 40px 20px 30px 20px;
  }
}
@media screen and (min-width: 1200px) {
  .top-popularity__wrap {
    padding: 40px 20px 30px 20px;
  }
}

.top-popularity__title {
  font-family: var(--f-zenmaru);
  font-size: 2.6rem;
  font-weight: 800;
  line-height: 1;
  text-align: center;
  margin-bottom: 35px;
}
@media screen and (min-width: 1200px) {
  .top-popularity__title {
    font-size: 2.8rem;
  }
}
.top-popularity__title__icon {
  padding-left: 35px;
  background-image: url(../img/common/icon-popularity.svg);
  background-size: 27px 36px;
  background-repeat: no-repeat;
  background-position: 0 0;
}

.top-popularity__list {
  text-align: center;
}
@media screen and (min-width: 1200px) {
  .top-popularity__list {
    max-width: 780px;
    width: 100%;
    margin: 0 auto;
  }
}

.top-popularity__link {
  display: inline-block;
  white-space: nowrap;
  background-color: #fff;
  border: 2px solid var(--cl-base-k);
  margin: 0 3px 8px;
  line-height: 1;
  padding: 12px 18px;
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  -o-border-radius: 25px;
  -ms-border-radius: 25px;
  border-radius: 25px;
  font-weight: bold;
  font-size: 1.7rem;
}
@media screen and (min-width: 1200px) {
  .top-popularity__link {
    margin-bottom: 16px;
  }
}

.top-advanced {
  padding: 50px 20px 80px;
}
@media screen and (min-width: 640px) {
  .top-advanced {
    padding: 50px 40px 80px;
  }
}
@media screen and (min-width: 1200px) {
  .top-advanced {
    padding: 50px 40px 80px;
  }
}
@media screen and (min-width: 1200px) {
  .top-advanced__wrap {
    max-width: 780px;
    width: 100%;
    margin: 0 auto;
  }
}

.top-advanced__list {
  -moz-border-radius: 16px;
  -webkit-border-radius: 16px;
  -o-border-radius: 16px;
  -ms-border-radius: 16px;
  border-radius: 16px;
  border: 2px solid var(--cl-base-k);
  background-color: #fcfcea;
  margin-bottom: 22px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
@media screen and (min-width: 640px) {
  .top-advanced__list {
    max-width: 640px;
    width: 100%;
    margin: 0 auto 30px;
  }
}
@media screen and (min-width: 1200px) {
  .top-advanced__list {
    max-width: 780px;
  }
}
.top-advanced__list__item {
  width: 33.3333333333%;
}
.top-advanced__list__item:not(:nth-child(3n)) {
  border-right: 2px dotted var(--cl-base-k);
}
.top-advanced__list__item:not(:nth-last-child(-n+3)) {
  border-bottom: 2px dotted var(--cl-base-k);
}
.top-advanced__list__item:hover:nth-child(1) .top-advanced__list__link {
  border-radius: 14px 0 0 0;
}
.top-advanced__list__item:hover:nth-child(3) .top-advanced__list__link {
  border-radius: 0px 14px 0 0;
}
.top-advanced__list__item:hover:nth-child(7) .top-advanced__list__link {
  border-radius: 0px 0 0px 14px;
}
.top-advanced__list__item:hover:nth-child(9) .top-advanced__list__link {
  border-radius: 0px 0 14px 0px;
}
.top-advanced__list__icon {
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 80px;
  margin: 0 auto 8px;
}
@media screen and (min-width: 640px) {
  .top-advanced__list__icon {
    height: 100px;
  }
}
.top-advanced__list__icon.mokumoku img {
  width: 50.4px;
  height: 81.6px;
}
@media screen and (min-width: 640px) {
  .top-advanced__list__icon.mokumoku img {
    width: 58.8px;
    height: 95.2px;
  }
}
.top-advanced__list__icon.diet img {
  width: 87.6px;
  height: 70.8px;
}
@media screen and (min-width: 640px) {
  .top-advanced__list__icon.diet img {
    width: 102.2px;
    height: 82.6px;
  }
}
.top-advanced__list__icon.beauty img {
  width: 70px;
  height: 72px;
}
@media screen and (min-width: 640px) {
  .top-advanced__list__icon.beauty img {
    width: 84px;
    height: 86.4px;
  }
}
.top-advanced__list__icon.enjoy img {
  width: 101.4px;
  height: 79.3px;
}
@media screen and (min-width: 640px) {
  .top-advanced__list__icon.enjoy img {
    width: 117px;
    height: 91.5px;
  }
}
.top-advanced__list__icon.mezamashi img {
  width: 78px;
  height: 77px;
}
@media screen and (min-width: 640px) {
  .top-advanced__list__icon.mezamashi img {
    width: 105.3px;
    height: 103.95px;
  }
}
.top-advanced__list__icon.earth img {
  width: 51.6px;
  height: 75.6px;
}
@media screen and (min-width: 640px) {
  .top-advanced__list__icon.earth img {
    width: 64.5px;
    height: 94.5px;
  }
}
.top-advanced__list__icon.friend img {
  width: 98.8px;
  height: 68.9px;
}
@media screen and (min-width: 640px) {
  .top-advanced__list__icon.friend img {
    width: 121.6px;
    height: 84.8px;
  }
}
.top-advanced__list__icon.bukiyo img {
  width: 71.5px;
  height: 77px;
  padding-left: 15px;
}
@media screen and (min-width: 640px) {
  .top-advanced__list__icon.bukiyo img {
    width: 84.5px;
    height: 91px;
  }
}
.top-advanced__list__icon.hot img {
  width: 85.2px;
  height: 62.4px;
}
@media screen and (min-width: 640px) {
  .top-advanced__list__icon.hot img {
    width: 106.5px;
    height: 78px;
  }
}
.top-advanced__list__link {
  display: block;
  text-align: center;
  padding: 14px 10px 14px;
  font-family: var(--f-zenmaru);
  font-size: 1.5rem;
  font-weight: 800;
  letter-spacing: -0.05em;
  line-height: 1.4;
}
@media screen and (min-width: 640px) {
  .top-advanced__list__link {
    letter-spacing: 0.05em;
    font-size: 1.8rem;
  }
}
@media screen and (min-width: 1200px) {
  .top-advanced__list__link {
    padding: 14px 10px 20px;
    font-size: 2rem;
  }
}
.top-advanced__list__link .em {
  color: var(--cl-base);
}
@media screen and (min-width: 1200px) {
  .top-advanced__list__link:hover {
    background-color: var(--cl-base);
    color: #fff;
  }
  .top-advanced__list__link:hover .em {
    color: var(--cl-base-y);
  }
}

.top-advanced__freeword {
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 16px;
  -webkit-border-radius: 16px;
  -o-border-radius: 16px;
  -ms-border-radius: 16px;
  border-radius: 16px;
  background-color: #fcfcea;
  padding: 30px 20px 25px;
}
@media screen and (min-width: 640px) {
  .top-advanced__freeword {
    max-width: 640px;
    width: 100%;
    margin: 0 auto 0px;
  }
}
@media screen and (min-width: 1200px) {
  .top-advanced__freeword {
    max-width: 780px;
  }
}

.top-advanced__freeword__title {
  font-family: var(--f-zenmaru);
  font-size: 2.2rem;
  font-weight: 600;
  text-align: center;
  margin-bottom: 18px;
}
.top-advanced__freeword__title__icon {
  position: relative;
  background-image: url(../img/common/icon-freeword.svg);
  background-size: 35px 22px;
  background-position: 0 5px;
  background-repeat: no-repeat;
  padding-left: 40px;
}

.top-advanced__freeword__wrap {
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  -o-border-radius: 8px;
  -ms-border-radius: 8px;
  border-radius: 8px;
  background-color: #fff;
  display: flex;
  flex-wrap: wrap;
}
.top-advanced__freeword__wrap .freeword-search {
  padding: 15px;
  border: none;
  border-radius: 8px 0 0 8px;
  width: calc(100% - 45px);
}
.top-advanced__freeword__wrap .freeword-search__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 45px;
}
.top-advanced__freeword__wrap .freeword-search__btn img {
  width: 20px;
  height: 21px;
}

.top-pickup {
  position: relative;
  padding: 18px 0 0px 0;
}
.top-pickup::before, .top-pickup::after {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  background-image: url(../img/common/yellow-line.svg);
  background-repeat: repeat-x;
  height: 18px;
  width: 100%;
}
.top-pickup::before {
  top: 0;
}
.top-pickup__wrap {
  background-color: var(--cl-base-y-bg);
  position: relative;
  padding: 56px 20px;
}
@media screen and (min-width: 640px) {
  .top-pickup__wrap {
    padding: 56px 40px;
  }
}
@media screen and (min-width: 1400px) {
  .top-pickup__wrap {
    padding: 100px 40px;
  }
}
.top-pickup__wrap__sub {
  max-width: 820px;
  width: 100%;
  margin: 0 auto;
}
@media screen and (min-width: 1200px) {
  .top-pickup__wrap__sub .job-box {
    width: calc((100% - 28px) / 2);
    margin-bottom: 28px;
  }
  .top-pickup__wrap__sub .job-box:not(:nth-child(2n)) {
    margin-right: 28px;
  }
}

.top-other {
  padding: 18px 0 18px 0;
  position: relative;
}
.top-other::before, .top-other::after {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  background-image: url(../img/common/beige-line.svg);
  background-repeat: repeat-x;
  height: 18px;
  width: 100%;
}
.top-other::before {
  top: 0;
  background-color: var(--cl-base-y-bg);
}
.top-other::after {
  bottom: 0;
  transform: scale(1, -1);
}
.top-other__wrap {
  background-color: var(--cl-base-b);
  position: relative;
  padding: 56px 20px;
}
@media screen and (min-width: 640px) {
  .top-other__wrap {
    padding: 56px 40px;
  }
}

.top-other__list {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (min-width: 1200px) {
  .top-other__list {
    max-width: 820px;
    width: 100%;
    margin: 0 auto;
  }
}
.top-other__list__item {
  width: calc((100% - 5px) / 2);
  margin-bottom: 5px;
}
.top-other__list__item:not(:nth-child(2n)) {
  margin-right: 5px;
}
@media screen and (min-width: 640px) {
  .top-other__list__item {
    width: calc((100% - 10px) / 3);
  }
  .top-other__list__item:not(:nth-child(2n)) {
    margin-right: 0px;
  }
  .top-other__list__item:not(:nth-child(3n)) {
    margin-right: 5px;
  }
}
.top-other__list__link {
  display: block;
  background-color: #fff;
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  -o-border-radius: 10px;
  -ms-border-radius: 10px;
  border-radius: 10px;
  font-family: var(--f-zenmaru);
  font-weight: 800;
  padding: 20px 10px 20px 44px;
  line-height: 1;
  background-repeat: no-repeat;
  font-size: 1.6rem;
}
@media screen and (min-width: 640px) {
  .top-other__list__link {
    font-size: 1.7rem;
  }
}
.top-other__list__link.beginner {
  background-image: url(../img/common/icon-beginners.svg);
  background-size: 14px 21px;
  background-position: 15px 50%;
}
.top-other__list__link.ways {
  background-image: url(../img/common/icon-workstyle.svg);
  background-size: 24px 21px;
  background-position: 12px 50%;
}
.top-other__list__link.reason {
  background-image: url(../img/common/icon-choose.svg);
  background-size: 26px 30px;
  background-position: 10px 50%;
}

.top-sns {
  padding: 60px 0 80px;
  position: relative;
}
@media screen and (min-width: 1400px) {
  .top-sns {
    padding: 100px 0 150px;
  }
}
.top-sns::before, .top-sns::after {
  content: "";
  display: inline-block;
  position: absolute;
  margin: auto;
}
.top-sns::after {
  left: 0;
  right: 0;
  margin: auto;
  background-image: url(../img/common/green-ligth-line.svg);
  background-repeat: repeat-x;
  height: 18px;
  width: 100%;
  bottom: 0;
}

.top-sns__instagram {
  padding: 0 20px;
  margin-bottom: 80px;
  background-image: url(../img/common/dot-g.svg);
  background-size: 300% auto;
  background-repeat: no-repeat;
  background-position: center center;
}
@media screen and (min-width: 640px) {
  .top-sns__instagram {
    background-size: 200% auto;
    padding: 0 40px;
  }
}
@media screen and (min-width: 1200px) {
  .top-sns__instagram {
    background-size: 120% auto;
  }
}

.top-sns__title {
  font-family: var(--f-zenmaru);
  font-size: 3.6rem;
  font-weight: 800;
  text-align: center;
  margin-bottom: 22px;
  line-height: 1;
}
@media screen and (min-width: 1200px) {
  .top-sns__title {
    margin-bottom: 36px;
  }
}
.top-sns__title__icon {
  position: relative;
  background-repeat: no-repeat;
}
.top-sns__title__icon.instagram {
  padding-left: 50px;
  background-image: url(../img/common/icon-instagram02.png);
  background-size: 38px 38px;
  background-position: 0 10px;
}
.top-sns__title__icon.tiktok {
  padding-left: 45px;
  background-image: url(../img/common/icon-tiktok02.svg);
  background-size: 32px 36px;
  background-position: 0 10px;
}

.top-sns__instagram__list {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
@media screen and (min-width: 640px) {
  .top-sns__instagram__list {
    max-width: 580px;
    width: 100%;
    margin: 0 auto 40px;
  }
}
@media screen and (min-width: 1200px) {
  .top-sns__instagram__list {
    max-width: 640px;
    margin: 0 auto 40px;
  }
}
.top-sns__instagram__list__item {
  width: calc((100% - 12px) / 3);
  aspect-ratio: 1;
  margin-bottom: 6px;
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  -o-border-radius: 10px;
  -ms-border-radius: 10px;
  border-radius: 10px;
  overflow: hidden;
}
.top-sns__instagram__list__item:not(:nth-child(3n)) {
  margin-right: 6px;
}
.top-sns__instagram__list__item a {
  display: block;
  height: 100%;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  -o-border-radius: 10px;
  -ms-border-radius: 10px;
  border-radius: 10px;
}
.top-sns__instagram__list__item a img {
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  -o-border-radius: 8px;
  -ms-border-radius: 8px;
  border-radius: 8px;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.top-sns__tiktok {
  background-image: url(../img/common/dot-y.svg);
  background-size: 300% auto;
  background-repeat: no-repeat;
  background-position: center center;
}
@media screen and (min-width: 640px) {
  .top-sns__tiktok {
    background-size: 200% auto;
  }
}
@media screen and (min-width: 1200px) {
  .top-sns__tiktok {
    background-size: 120% auto;
  }
}

.top-sns__tiktok__wrap {
  padding: 0 20px;
}
.top-sns__tiktok__wrap .tiktok-embed {
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  -o-border-radius: 10px;
  -ms-border-radius: 10px;
  border-radius: 10px;
}
@media screen and (min-width: 640px) {
  .top-sns__tiktok__wrap .tiktok-embed {
    max-width: 480px;
    width: 100%;
    margin: 0 auto;
  }
}
@media screen and (min-width: 1200px) {
  .top-sns__tiktok__wrap .tiktok-embed {
    max-width: 640px;
  }
}

.top-information {
  padding: 60px 20px;
}
@media screen and (min-width: 640px) {
  .top-information {
    padding: 60px 40px;
  }
}
@media screen and (min-width: 1400px) {
  .top-information {
    padding: 100px 0px;
  }
}
.top-information__wrap {
  max-width: 820px;
  width: 100%;
  margin: 0 auto;
}

.top-company {
  position: relative;
  padding: 25px 30px 100px 30px;
}
@media screen and (min-width: 1500px) {
  .top-company {
    padding: 18px 60px 100px 60px;
  }
}

.top-company__wrap {
  margin-bottom: 30px;
}
@media screen and (min-width: 1300px) {
  .top-company__wrap {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 40px;
  }
}
.top-company__wrap .company-info {
  width: 100%;
  margin-bottom: 20px;
}
@media screen and (min-width: 1300px) {
  .top-company__wrap .company-info {
    width: calc(100% - 280px);
    margin-bottom: 0;
  }
}
.top-company__wrap .btn-tel {
  width: 260px;
  margin: 0 auto;
}
@media screen and (min-width: 1300px) {
  .top-company__wrap .btn-tel {
    width: 260px;
    margin-left: 20px;
    margin: 0;
  }
}

.top-sns__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
  margin: 0 auto;
}
@media screen and (min-width: 1300px) {
  .top-sns__list {
    max-width: 530px;
  }
}
.top-sns__list__item:not(:nth-child(3n)) {
  margin-right: 6px;
}
@media screen and (min-width: 1300px) {
  .top-sns__list__item:not(:nth-child(3n)) {
    margin-right: 10px;
  }
}
.top-sns__list__item.nationality {
  max-width: 280px;
}
@media screen and (min-width: 1300px) {
  .top-sns__list__item.nationality {
    max-width: 320px;
  }
}
.top-sns__list__item.sns {
  max-width: 54px;
}
@media screen and (min-width: 1300px) {
  .top-sns__list__item.sns {
    max-width: 64px;
  }
}

@media screen and (min-width: 1200px) {
  .top-sns__nav {
    width: 132px;
    position: absolute;
    top: 18px;
    right: 130px;
    display: flex;
    flex-wrap: wrap;
  }
}
@media screen and (min-width: 1300px) {
  .top-sns__nav {
    top: 22px;
    right: 200px;
  }
}
@media screen and (min-width: 1200px) {
  .top-sns__nav__item {
    width: 52px;
  }
  .top-sns__nav__item:not(:nth-child(2n)) {
    margin-right: 6px;
  }
}
@media screen and (min-width: 1300px) {
  .top-sns__nav__item {
    width: 62px;
  }
}
@media screen and (min-width: 1200px) {
  .top-sns__nav__link {
    display: block;
    border: 1px solid var(--cl-base-k);
    -moz-border-radius: 100%;
    -webkit-border-radius: 100%;
    -o-border-radius: 100%;
    -ms-border-radius: 100%;
    border-radius: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-repeat: no-repeat;
    background-position: center center;
    width: 52px;
    height: 52px;
  }
}
@media screen and (min-width: 1300px) {
  .top-sns__nav__link {
    width: 62px;
    height: 62px;
  }
}
.top-sns__nav__link.instagram {
  background-image: url(../img/common/icon-instagram02.png);
  background-size: 26px auto;
}
.top-sns__nav__link.tiktok {
  background-image: url(../img/common/icon-tiktok02.svg);
  background-size: 25px auto;
}
.top-sns__nav__link:hover.instagram {
  background-color: #e43375;
  border: 1px solid #e43375;
  background-image: url(../img/common/icon-instagram-white.svg);
}
.top-sns__nav__link:hover.tiktok {
  background-color: #000000;
  border: 1px solid #000000;
  background-image: url(../img/common/icon-tiktok-white.svg);
}

.top-main__popularity {
  background-color: var(--cl-base-y-bg);
  width: calc(100% - 80px);
  margin: 0 40px 40px;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  -o-border-radius: 8px;
  -ms-border-radius: 8px;
  border-radius: 8px;
  padding: 16px 25px 10px 10px;
}
@media screen and (min-width: 1400px) {
  .top-main__popularity {
    display: flex;
    flex-wrap: wrap;
  }
}
.top-main__popularity__title {
  text-align: center;
  font-family: var(--f-zenmaru);
  font-size: 2rem;
  font-weight: 600;
  position: relative;
  margin-bottom: 20px;
}
@media screen and (min-width: 1400px) {
  .top-main__popularity__title {
    width: 140px;
    margin-right: 20px;
    margin-bottom: 0;
    padding-top: 40px;
  }
}
.top-main__popularity__title__icon {
  position: relative;
  padding-left: 30px;
}
@media screen and (min-width: 1400px) {
  .top-main__popularity__title__icon {
    padding-left: 0;
    padding-top: 32px;
  }
}
.top-main__popularity__title__icon::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  margin: auto;
  background-image: url(../img/common/icon-popularity.svg);
  background-size: 21px 28px;
  width: 21px;
  height: 28px;
}
@media screen and (min-width: 1400px) {
  .top-main__popularity__title__icon::before {
    right: 0;
  }
}
.top-main__popularity__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
.top-main__popularity__list__wrap {
  width: 100%;
}
@media screen and (min-width: 1400px) {
  .top-main__popularity__list__wrap {
    width: calc(100% - 160px);
  }
}
.top-main__popularity__list__item {
  margin: 0 3px 5px 3px;
}
.top-main__popularity__link {
  white-space: nowrap;
  background-color: #fff;
  border: 1px solid var(--cl-base-k);
  line-height: 1;
  padding: 5px 8px;
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  -o-border-radius: 25px;
  -ms-border-radius: 25px;
  border-radius: 25px;
  font-weight: bold;
  font-size: 1.3rem;
  line-height: 1;
}
@media screen and (min-width: 1200px) {
  .top-main__popularity__link {
    margin-bottom: 16px;
  }
}
.top-main__popularity__link:hover {
  background-color: var(--cl-base-k);
  color: #fff;
}

.floting-bnr {
  display: block;
  position: fixed;
  right: 0;
  bottom: 0;
  z-index: 5;
  width: 100%;
}
@media screen and (min-width: 640px) {
  .floting-bnr {
    width: 130px;
    height: auto;
    right: 10px;
    bottom: 10px;
  }
}
@media screen and (min-width: 1200px) {
  .floting-bnr {
    width: 160px;
  }
}
.floting-bnr:hover {
  opacity: 0.7;
}

/* =====================================================

 _information

===================================================== */
.info-list {
  margin-bottom: 24px;
}
@media screen and (min-width: 1200px) {
  .info-list {
    margin-bottom: 60px;
  }
}
.info-list__item {
  margin-bottom: 10px;
}
.info-list__link {
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  -o-border-radius: 8px;
  -ms-border-radius: 8px;
  border-radius: 8px;
  background-color: #fff;
  display: block;
  padding: 14px 40px 14px 20px;
  position: relative;
  line-height: 1.4;
}
@media screen and (min-width: 640px) {
  .info-list__link {
    padding: 14px 40px 14px 20px;
  }
}
@media screen and (min-width: 1200px) {
  .info-list__link {
    padding: 18px 60px 20px 30px;
    line-height: 1.6;
  }
}
.info-list__link::before, .info-list__link::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}
.info-list__link::before {
  width: 22px;
  height: 22px;
  right: 10px;
  background-color: var(--cl-base);
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
  -o-border-radius: 100%;
  -ms-border-radius: 100%;
  border-radius: 100%;
}
@media screen and (min-width: 1200px) {
  .info-list__link::before {
    width: 30px;
    height: 30px;
    right: 16px;
  }
}
.info-list__link::after {
  right: 18px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
@media screen and (min-width: 1200px) {
  .info-list__link::after {
    width: 8px;
    height: 8px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    right: 27px;
  }
}
.info-list__update {
  color: var(--cl-text-g);
  font-weight: bold;
  font-size: 1.4rem;
  line-height: 1.2;
  margin-bottom: 3px;
}
@media screen and (min-width: 640px) {
  .info-list__update {
    font-size: 1.4rem;
    line-height: 1.4;
  }
}
@media screen and (min-width: 1200px) {
  .info-list__update {
    font-size: 1.6rem;
  }
}
.info-list__update .icon-new {
  padding-bottom: 4px;
  margin-left: 10px;
}
.info-list__title {
  font-size: 1.5rem;
  font-weight: bold;
}
@media screen and (min-width: 640px) {
  .info-list__title {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 1200px) {
  .info-list__title {
    font-size: 1.8rem;
  }
}

.info-title {
  background-color: var(--cl-base);
  border-top: 2px solid var(--cl-base-k);
  border-bottom: 2px solid var(--cl-base-k);
  color: #fff;
  padding: 8px 12px 12px 12px;
  margin-bottom: 30px;
}
@media screen and (min-width: 640px) {
  .info-title {
    padding: 12px 16px 14px 16px;
  }
}
@media screen and (min-width: 1200px) {
  .info-title {
    padding: 16px 20px 18px 20px;
  }
}
.info-title__update {
  font-size: 1.3rem;
  font-weight: bold;
  margin-bottom: 5px;
}
@media screen and (min-width: 640px) {
  .info-title__update {
    font-size: 1.4rem;
    margin-bottom: 3px;
  }
}
@media screen and (min-width: 1200px) {
  .info-title__update {
    font-size: 1.5rem;
  }
}
.info-title__update .icon-new {
  padding-bottom: 4px;
  margin-left: 10px;
}
.info-title__data {
  font-family: var(--f-zenmaru);
  font-weight: 600;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 640px) {
  .info-title__data {
    font-size: 1.8rem;
  }
}
@media screen and (min-width: 1200px) {
  .info-title__data {
    font-size: 2.2rem;
  }
}

.icon-new {
  border: 1px solid var(--cl-base-k);
  color: #fff;
  background-color: var(--cl-em);
  font-family: var(--f-zenmaru);
  font-size: 1.2rem;
  display: inline-block;
  line-height: 1;
  padding: 1px 5px 2px;
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  -o-border-radius: 25px;
  -ms-border-radius: 25px;
  border-radius: 25px;
  margin-left: 5px;
}
@media screen and (min-width: 1200px) {
  .icon-new {
    font-size: 1.3rem;
    padding: 2px 8px 1px;
  }
}

/* =====================================================

 _job

===================================================== */
.job-search__btn__wrap {
  margin-bottom: 50px;
  width: 100%;
}
@media screen and (min-width: 1200px) {
  .job-search__btn__wrap {
    background-color: var(--cl-base-y);
    padding: 20px;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    -o-border-radius: 10px;
    -ms-border-radius: 10px;
    border-radius: 10px;
  }
}

.job-search__btn {
  background-color: var(--cl-base-k);
  font-family: var(--f-zenmaru);
  max-width: 280px;
  width: 100%;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.1em;
  padding: 10px;
  margin: 0 auto;
  -moz-border-radius: 100px;
  -webkit-border-radius: 100px;
  -o-border-radius: 100px;
  -ms-border-radius: 100px;
  border-radius: 100px;
  display: block;
}
@media screen and (min-width: 1200px) {
  .job-search__btn {
    font-size: 2.4rem;
    max-width: 360px;
  }
}
.job-search__btn:hover {
  transition: 0.3s;
  background-color: var(--cl-base);
}
.job-search__btn__icon {
  position: relative;
  padding-left: 30px;
}
@media screen and (min-width: 1200px) {
  .job-search__btn__icon {
    padding-left: 36px;
  }
}
.job-search__btn__icon::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  background-image: url(../img/common/icon-search-white.svg);
  background-size: 24px 24px;
  width: 24px;
  height: 24px;
}
@media screen and (min-width: 1200px) {
  .job-search__btn__icon::before {
    background-size: 27px 27px;
    width: 27px;
    height: 27px;
  }
}

.job-search__title__wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 20px;
  line-height: 1;
}
@media screen and (min-width: 1200px) {
  .job-search__title__wrap {
    margin-bottom: 50px;
  }
}

.job-search__keyword {
  margin-bottom: 36px;
  background-color: #fff;
  padding: 5px 10px;
  font-family: var(--f-noto);
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  -o-border-radius: 5px;
  -ms-border-radius: 5px;
  border-radius: 5px;
}
@media screen and (min-width: 1200px) {
  .job-search__keyword {
    padding: 10px 20px;
  }
}
.job-search__keyword__em {
  font-weight: 600;
  margin-right: px;
}

.job-search__title01 {
  font-family: var(--f-zenmaru);
  font-size: 2.4rem;
  font-weight: 700;
  position: relative;
  padding-left: 24px;
}
@media screen and (min-width: 1200px) {
  .job-search__title01 {
    font-size: 3.2rem;
    padding-left: 28px;
  }
}
.job-search__title01::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 9px;
  left: 0;
  margin: auto;
  background-color: var(--cl-base);
  width: 9px;
  height: 9px;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
  -o-border-radius: 100%;
  -ms-border-radius: 100%;
  border-radius: 100%;
}
@media screen and (min-width: 1200px) {
  .job-search__title01::before {
    width: 13px;
    height: 13px;
    top: 12px;
  }
}

.job-search__number {
  font-weight: bold;
  font-size: 1.6rem;
}
@media screen and (min-width: 1200px) {
  .job-search__number {
    font-size: 2rem;
  }
}
.job-search__number .em {
  color: var(--cl-em);
  font-size: 2.4rem;
  margin-right: 2px;
}
@media screen and (min-width: 1200px) {
  .job-search__number .em {
    font-size: 2.8rem;
  }
}

@media screen and (min-width: 640px) {
  .job-list {
    display: flex;
    flex-wrap: wrap;
  }
}

.job-box {
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  position: relative;
  margin-bottom: 32px;
  background-color: #fff;
}
@media screen and (min-width: 640px) {
  .job-box {
    width: calc((100% - 20px) / 2);
  }
  .job-box:not(:nth-child(2n)) {
    margin-right: 20px;
  }
}
@media screen and (min-width: 1200px) {
  .job-box {
    width: calc((100% - 48px) / 2);
    margin-bottom: 48px;
  }
  .job-box:not(:nth-child(2n)) {
    margin-right: 48px;
  }
}
.job-box__link {
  position: relative;
  display: block;
  width: 100%;
}

.job-icon {
  position: absolute;
  top: -14px;
  right: 18px;
  display: flex;
}
.job-icon__item {
  width: auto;
  border: 2px solid var(--cl-base-k);
  color: #fff;
  margin-left: 5px;
  color: #fff;
  font-family: var(--f-zenmaru);
  font-size: 1.4rem;
  font-weight: 600;
  height: 28px;
  width: 60px;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  -o-border-radius: 20px;
  -ms-border-radius: 20px;
  border-radius: 20px;
  line-height: 24px;
  text-align: center;
}
.job-icon__item.new {
  background-color: #04b5d5;
}
.job-icon__item.hurry {
  background-color: #f70b74;
}
@media screen and (min-width: 1200px) {
  .job-icon.job-d {
    top: -18px;
  }
  .job-icon.job-d .job-icon__item {
    font-size: 1.6rem;
    width: 64px;
    height: 32px;
    border: 3px solid var(--cl-base-k);
  }
}

.job-box__title {
  background-color: var(--cl-base);
  color: #fff;
  font-size: 2rem;
  font-weight: bold;
  padding: 20px 18px 15px 18px;
  border-radius: 10px 10px 0 0;
  line-height: 1.4;
}

.job-box__wrap {
  padding: 20px 15px 70px;
  background-color: #fff;
  border-radius: 0 0 11px 11px;
}

.job-box__about {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 20px;
}

.job-box__about__img {
  width: 120px;
  margin-right: 14px;
}

.job-box__about__data {
  width: calc(100% - 120px - 14px);
  font-family: var(--f-noto);
  font-weight: 600;
}

.job-box__about__data__number {
  font-size: 1.2rem;
  color: #808d99;
}

.job-box__about__data__industry {
  font-size: 1.6rem;
}

.job-box__about__data__category {
  font-size: 1.4rem;
  color: var(--cl-text-g);
  margin-bottom: 5px;
}

.job-box__data__other__item {
  font-size: 1.4rem;
  padding-left: 20px;
  background-repeat: no-repeat;
}
.job-box__data__other__item.address {
  background-image: url(../img/common/icon-address.svg);
  background-size: 12px 15px;
  background-position: left 2px top 5px;
}
.job-box__data__other__item.salary {
  background-image: url(../img/common/icon-salary.svg);
  background-size: 15px 15px;
  background-position: left 0px top 5px;
}

.job-box__tag {
  font-size: 1.2rem;
  margin-bottom: 14px;
}

.job-box__btn__list {
  display: flex;
  flex-wrap: wrap;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 30px;
  margin: auto;
  padding: 0 15px;
}
.job-box__btn__list__item {
  width: calc((100% - 7px) / 2);
}
.job-box__btn__list__item:not(:nth-child(2n)) {
  margin-right: 7px;
}

.job-btn {
  display: block;
  color: #fff;
  font-size: 1.5rem;
  font-family: var(--f-zenmaru);
  font-weight: 600;
  text-align: center;
  padding: 8px 10px 8px 10px;
  -moz-border-radius: 100px;
  -webkit-border-radius: 100px;
  -o-border-radius: 100px;
  -ms-border-radius: 100px;
  border-radius: 100px;
}
.job-btn__icon {
  position: relative;
  background-repeat: no-repeat;
}
.job-btn.data {
  background-color: var(--cl-base);
}
@media screen and (min-width: 1200px) {
  .job-btn.data:hover {
    transition: 0.3s;
    background-color: var(--cl-base-k);
  }
}
.job-btn.data .job-btn__icon {
  padding-left: 18px;
  background-image: url(../img/common/icon-data.svg);
  background-size: 12px 16px;
  background-position: left 0 top 3px;
}
.job-btn.search {
  background-color: var(--cl-base-k);
  width: 200px;
}
.job-btn.search .job-btn__search__icon {
  position: relative;
  background-image: url(../img/common/icon-search-white.svg);
  background-size: 18px 18px;
  background-repeat: no-repeat;
  background-position: left 0 top 50%;
  padding-left: 24px;
}
.job-btn.search.type01 {
  width: 280px;
  margin: 0 auto;
  font-size: 1.8rem;
  padding: 18px 10px 18px 10px;
  line-height: 1;
}
@media screen and (min-width: 1200px) {
  .job-btn.search.type01 {
    width: 320px;
    font-size: 2.2rem;
    padding: 20px 10px 20px 10px;
  }
  .job-btn.search.type01:hover {
    transition: 0.3s;
    background-color: var(--cl-base);
  }
}
.job-btn.search.type01 .job-btn__search__icon {
  background-size: 24px 24px;
  padding-left: 32px;
}
@media screen and (min-width: 1200px) {
  .job-btn.search.type01 .job-btn__search__icon {
    padding-left: 36px;
  }
}
.job-btn.search.type01.advanced {
  background-color: #09b882;
  max-width: 240px;
  margin-bottom: 48px;
}
@media screen and (min-width: 1200px) {
  .job-btn.search.type01.advanced {
    max-width: 360px;
  }
}
.job-btn.entry {
  background-color: #e65d3e;
}
@media screen and (min-width: 1200px) {
  .job-btn.entry:hover {
    transition: 0.3s;
    background-color: var(--cl-base-k);
  }
}
.job-btn.entry .job-btn__icon {
  padding-left: 20px;
  background-image: url(../img/common/icon-entry-white.svg);
  background-size: 13px 17px;
  background-position: left 0 top 2px;
}
.job-btn.entry.type01 {
  font-size: 2rem;
  max-width: 300px;
  margin: 0 auto;
}
@media screen and (min-width: 1200px) {
  .job-btn.entry.type01 {
    max-width: 360px;
    font-size: 2.4rem;
    padding: 12px 10px 12px 10px;
  }
  .job-btn.entry.type01:hover {
    transition: 0.3s;
    background-color: var(--cl-base-k);
  }
}
.job-btn.entry.type01 .job-btn__icon {
  padding-left: 30px;
  background-size: 20px 27px;
  background-position: left 0 top 2px;
}
@media screen and (min-width: 1200px) {
  .job-btn.entry.type01 .job-btn__icon {
    padding-left: 36px;
    background-size: 24px 31px;
  }
}
.job-btn.entry-tel {
  background-color: var(--cl-base);
  font-size: 2rem;
  max-width: 300px;
  margin: 0 auto;
}
@media screen and (min-width: 1200px) {
  .job-btn.entry-tel {
    max-width: 360px;
    font-size: 2.6rem;
    padding: 12px 10px 12px 10px;
  }
}
.job-btn.entry-tel .job-btn__icon {
  padding-left: 26px;
  background-image: url(../img/common/icon-tel.svg);
  background-size: 15px 26px;
  background-position: left 0 top 2px;
}
@media screen and (min-width: 1200px) {
  .job-btn.entry-tel .job-btn__icon {
    padding-left: 36px;
    background-position: left 0 top 4px;
    background-size: 18px 31.2px;
  }
}

.check-contents {
  position: relative;
  padding: 0px 0 18px 0;
}
.check-contents::before {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  background-image: url(../img/common/green-ligth-line.svg);
  background-repeat: repeat-x;
  height: 18px;
  width: 100%;
  bottom: 0;
  transform: scale(1, -1);
}
.check-contents__inner {
  padding: 50px 10px 50px;
  background-color: var(--cl-base-lg);
}
@media screen and (min-width: 640px) {
  .check-contents__inner {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media screen and (min-width: 1200px) {
  .check-contents__inner {
    padding-bottom: 80px;
  }
}

.check-title {
  font-family: var(--f-zenmaru);
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 28px;
  color: #fff;
}
@media screen and (min-width: 640px) {
  .check-title {
    font-size: 2.8rem;
    margin-bottom: 36px;
  }
}
@media screen and (min-width: 1200px) {
  .check-title {
    font-size: 3.2rem;
    margin-bottom: 42px;
  }
}
@media screen and (min-width: 1200px) {
  .check-title.top-title {
    font-size: 3.2rem;
  }
}
.check-title__icon {
  position: relative;
  padding-left: 44px;
}
@media screen and (min-width: 1200px) {
  .check-title__icon {
    padding-left: 50px;
  }
}
.check-title__icon::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  background-image: url(../img/common/icon-check.svg);
  background-size: 28px 28px;
  width: 28px;
  height: 28px;
}
@media screen and (min-width: 640px) {
  .check-title__icon::before {
    top: 2px;
    background-size: 32px 32px;
    width: 32px;
    height: 32px;
  }
}
@media screen and (min-width: 1200px) {
  .check-title__icon::before {
    top: 4px;
    background-size: 36px 36px;
    width: 36px;
    height: 36px;
  }
}

.check-list__item {
  padding: 13px 15px 0 15px;
}
.check-list .job-box {
  margin-bottom: 0px;
}
@media screen and (min-width: 640px) {
  .check-list .job-box {
    width: 100%;
  }
}
.check-list .job-box__wrap {
  padding: 20px 25px 60px 25px;
}
.check-list .job-box__btn__list {
  bottom: 20px;
}
.check-list .slick-next,
.check-list .slick-prev {
  top: 60%;
  margin: auto;
  width: 36px;
  height: 36px;
  z-index: 1;
}
.check-list .slick-next::before, .check-list .slick-next::after,
.check-list .slick-prev::before,
.check-list .slick-prev::after {
  content: "";
  display: inline-block;
  position: absolute;
  margin: auto;
  opacity: 1;
}
.check-list .slick-next::before,
.check-list .slick-prev::before {
  border: 2px solid var(--cl-base-k);
  background-color: #fff;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
  -o-border-radius: 100%;
  -ms-border-radius: 100%;
  border-radius: 100%;
  width: 36px;
  height: 36px;
  top: 0;
  right: 0;
}
.check-list .slick-next::after,
.check-list .slick-prev::after {
  background-image: url(../img/common/arrow-green.svg);
  background-size: 8px 13px;
  width: 8px;
  height: 13px;
  top: 11px;
  left: 14px;
}
.check-list .slick-next {
  right: -8px;
}
.check-list .slick-prev {
  left: -8px;
}
.check-list .slick-prev::after {
  transform: scale(-1, 1);
}
.check-list .slick-dots {
  position: relative;
  padding: 0 15px;
  width: calc(100% - 20px);
  margin: auto;
  padding: 0 60px;
}
.check-list .slick-dots li button::before {
  content: "";
  background-color: #f9f7da;
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
  -o-border-radius: 100%;
  -ms-border-radius: 100%;
  border-radius: 100%;
  opacity: 1;
}
.check-list .slick-dots li.slick-active button::before {
  background-color: #fcf160;
  opacity: 1;
}

.job-detail {
  border-top: 2px solid var(--cl-base-k);
  border-bottom: 2px solid var(--cl-base-k);
  background-color: #fff;
  position: relative;
  margin: 50px 0 30px;
}
@media screen and (min-width: 640px) {
  .job-detail {
    max-width: 86%;
    width: 100%;
    margin: 50px auto 50px;
    -moz-border-radius: 20px;
    -webkit-border-radius: 20px;
    -o-border-radius: 20px;
    -ms-border-radius: 20px;
    border-radius: 20px;
    border: 2px solid var(--cl-base-k);
  }
}
@media screen and (min-width: 1200px) {
  .job-detail {
    max-width: 100%;
    border: 3px solid var(--cl-base-k);
    -moz-border-radius: 26px;
    -webkit-border-radius: 26px;
    -o-border-radius: 26px;
    -ms-border-radius: 26px;
    border-radius: 26px;
  }
}

.job-detail__title {
  background-color: var(--cl-base);
  padding: 20px 15px 16px;
  color: #fff;
  font-family: var(--f-noto);
  font-weight: 600;
  font-size: 2rem;
  line-height: 1.4;
}
@media screen and (min-width: 640px) {
  .job-detail__title {
    border-radius: 18px 18px 0 0;
    font-size: 2.2rem;
  }
}
@media screen and (min-width: 1200px) {
  .job-detail__title {
    border-radius: 24px 24px 0 0;
    font-size: 2.4rem;
    padding: 30px 22px 20px;
  }
}

.job-detail__wrap {
  padding: 20px 10px 40px;
}
@media screen and (min-width: 640px) {
  .job-detail__wrap {
    padding: 30px 30px 40px;
  }
}

.job-detail__about {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 20px;
}

.job-detail__about__img {
  width: 140px;
  margin-right: 20px;
}
@media screen and (min-width: 640px) {
  .job-detail__about__img {
    width: 200px;
    margin-right: 30px;
  }
}
@media screen and (min-width: 1200px) {
  .job-detail__about__img {
    width: 280px;
    margin-right: 40px;
  }
}

.job-detail__about__data {
  width: calc(100% - 140px - 20px);
  font-family: var(--f-noto);
  font-weight: 600;
}
@media screen and (min-width: 640px) {
  .job-detail__about__data {
    width: calc(100% - 200px - 30px);
  }
}
@media screen and (min-width: 1200px) {
  .job-detail__about__data {
    width: calc(100% - 280px - 40px);
  }
}

.job-detail__about__data__number {
  font-size: 1.2rem;
  color: #808d99;
}

.job-detail__about__data__industry {
  font-size: 1.6rem;
}
@media screen and (min-width: 640px) {
  .job-detail__about__data__industry {
    font-size: 2rem;
  }
}
@media screen and (min-width: 1200px) {
  .job-detail__about__data__industry {
    font-size: 2.4rem;
  }
}

.job-detail__about__data__category {
  font-size: 1.4rem;
  color: var(--cl-text-g);
  margin-bottom: 5px;
}
@media screen and (min-width: 640px) {
  .job-detail__about__data__category {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 1200px) {
  .job-detail__about__data__category {
    font-size: 2rem;
    margin-bottom: 5px;
  }
}

.job-detail__data__other__item {
  font-size: 1.4rem;
  padding-left: 20px;
  background-repeat: no-repeat;
}
@media screen and (min-width: 640px) {
  .job-detail__data__other__item {
    font-size: 1.6rem;
    padding-left: 26px;
    margin-bottom: 5px;
  }
}
@media screen and (min-width: 1200px) {
  .job-detail__data__other__item {
    font-size: 1.8rem;
    padding-left: 30px;
  }
}
.job-detail__data__other__item.address {
  background-image: url(../img/common/icon-address.svg);
  background-size: 12px 15px;
  background-position: left 2px top 5px;
}
@media screen and (min-width: 640px) {
  .job-detail__data__other__item.address {
    background-size: 14.4px 18px;
    background-position: left 2px top 7px;
  }
}
@media screen and (min-width: 1200px) {
  .job-detail__data__other__item.address {
    background-size: 16.8px 21px;
    background-position: left 2px top 7px;
  }
}
.job-detail__data__other__item.salary {
  background-image: url(../img/common/icon-salary.svg);
  background-size: 15px 15px;
  background-position: left 0px top 5px;
}
@media screen and (min-width: 640px) {
  .job-detail__data__other__item.salary {
    background-size: 18px 18px;
  }
}
@media screen and (min-width: 1200px) {
  .job-detail__data__other__item.salary {
    background-size: 21px 21px;
  }
}

.job-detail__tag {
  font-size: 1.2rem;
  margin-bottom: 30px;
}
@media screen and (min-width: 640px) {
  .job-detail__tag {
    font-size: 1.3rem;
  }
}
@media screen and (min-width: 1200px) {
  .job-detail__tag {
    font-size: 1.4rem;
  }
}

.job-detail__sec-title {
  font-family: var(--f-zenmaru);
  font-size: 1.8rem;
  padding-bottom: 5px;
  margin-bottom: 20px;
  position: relative;
  font-weight: 800;
  padding: 0 10px 10px 25px;
}
@media screen and (min-width: 640px) {
  .job-detail__sec-title {
    font-size: 2rem;
    padding-left: 30px;
  }
}
@media screen and (min-width: 1200px) {
  .job-detail__sec-title {
    font-size: 2.4rem;
    padding-left: 40px;
  }
}
.job-detail__sec-title::before, .job-detail__sec-title::after {
  content: "";
  display: inline-block;
  position: absolute;
  margin: auto;
}
.job-detail__sec-title::before {
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  -moz-border-radius: 2px;
  -webkit-border-radius: 2px;
  -o-border-radius: 2px;
  -ms-border-radius: 2px;
  border-radius: 2px;
  background-color: var(--cl-base);
  width: 100%;
  height: 3px;
}
.job-detail__sec-title.point::after {
  background-image: url(../img/common/icon-star.svg);
  background-size: 18px 18px;
  width: 18px;
  height: 18px;
  left: 0;
  top: 8px;
}
@media screen and (min-width: 640px) {
  .job-detail__sec-title.point::after {
    background-size: 22px 22px;
    width: 22px;
    height: 22px;
    top: 7px;
  }
}
@media screen and (min-width: 1200px) {
  .job-detail__sec-title.point::after {
    background-size: 28px 28px;
    width: 28px;
    height: 28px;
  }
}
.job-detail__sec-title.base-info::after {
  background-image: url(../img/common/icon-memo.svg);
  background-size: 17px 22px;
  width: 17px;
  height: 22px;
  left: 0;
  top: 5px;
}
@media screen and (min-width: 640px) {
  .job-detail__sec-title.base-info::after {
    background-size: 20.4px 26.4px;
    width: 20.4px;
    height: 26.4px;
    top: 4px;
  }
}
@media screen and (min-width: 1200px) {
  .job-detail__sec-title.base-info::after {
    background-size: 25.5px 33px;
    width: 25.5px;
    height: 33px;
    top: 4px;
  }
}

.job-detail__tbl {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 30px;
}
@media screen and (min-width: 1200px) {
  .job-detail__tbl {
    margin-bottom: 60px;
  }
}
.job-detail__tbl__th, .job-detail__tbl__td {
  padding: 10px;
  border: 1px solid var(--cl-line);
  line-height: 1.4;
}
@media screen and (min-width: 1200px) {
  .job-detail__tbl__th, .job-detail__tbl__td {
    padding: 16px;
  }
}
.job-detail__tbl__th {
  background-color: #ededea;
  width: 100px;
  text-align: left;
  font-weight: normal;
}
@media screen and (min-width: 1200px) {
  .job-detail__tbl__th {
    width: 160px;
  }
}
.job-detail__tbl__td {
  width: calc(100% - 100px);
}
@media screen and (min-width: 1200px) {
  .job-detail__tbl__td {
    width: calc(100% - 160px);
  }
}

@media screen and (min-width: 1200px) {
  .job-entry__list {
    display: flex;
    flex-direction: wrap;
    width: 100%;
  }
}
.job-entry__list__item:not(:nth-child(2n)) {
  margin-bottom: 10px;
}
@media screen and (min-width: 1200px) {
  .job-entry__list__item {
    width: calc((100% - 20px) / 2);
  }
  .job-entry__list__item.tel {
    position: relative;
  }
  .job-entry__list__item.tel::before {
    content: " ＼　電話でエントリーの方はこちら　／";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    font-family: var(--f-zenmaru);
    font-weight: 800;
    top: -2em;
    text-align: center;
    font-size: 1.8rem;
  }
}

.entry-btn__fix {
  position: fixed;
  bottom: 0;
  left: 0;
  background-color: rgba(222, 222, 218, 0.6);
  padding: 20px;
  width: 100%;
  z-index: 10;
}
@media screen and (min-width: 1200px) {
  .entry-btn__fix {
    left: 360px;
    width: calc(100% - 360px);
  }
}

.company-img {
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  display: block;
  margin-bottom: 30px;
}
.company-img img {
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
}
@media screen and (min-width: 640px) {
  .company-img {
    max-width: 560px;
    width: 100%;
    margin: 0 auto 40px;
  }
}

.signature {
  text-align: right;
  margin-top: 3px;
}
.signature-post {
  background-color: var(--cl-base-k);
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  -o-border-radius: 20px;
  -ms-border-radius: 20px;
  border-radius: 20px;
  color: #fff;
  font-size: 1.3rem;
  padding: 3px 8px;
  margin-right: 8px;
}
@media screen and (min-width: 1200px) {
  .signature-post {
    font-size: 1.6rem;
  }
}
.signature-name {
  font-size: 1.8rem;
}
@media screen and (min-width: 1200px) {
  .signature-name {
    font-size: 2.4rem;
  }
}

.history-list {
  position: relative;
}
.history-list::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 5px;
  left: 5px;
  margin: auto;
  width: 2px;
  height: calc(100% - 5px);
  background-color: var(--cl-base);
}
.history-list__title {
  font-size: 1.6rem;
  color: var(--cl-text-g);
  font-weight: 600;
  padding-left: 28px;
  line-height: 1.4;
  margin-bottom: 10px;
  position: relative;
}
@media screen and (min-width: 1200px) {
  .history-list__title {
    font-size: 1.8rem;
  }
}
.history-list__title::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 4px;
  left: 0;
  margin: auto;
  background-color: var(--cl-base);
  width: 12px;
  height: 12px;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
.history-list__data {
  padding-left: 28px;
  margin-bottom: 24px;
}
.history-list__data:last-child {
  margin-bottom: 0;
}

.reason-copy__fukidashi {
  font-family: var(--f-zenmaru);
  font-size: 1.6rem;
  font-weight: 500;
  text-align: center;
  max-width: 310px;
  background-color: var(--cl-base);
  color: #fff;
  margin: 0 auto 30px;
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  -o-border-radius: 25px;
  -ms-border-radius: 25px;
  border-radius: 25px;
  padding: 5px 10px 7px;
  position: relative;
}
@media screen and (min-width: 640px) {
  .reason-copy__fukidashi {
    font-size: 1.8rem;
    max-width: 400px;
  }
}
.reason-copy__fukidashi::before {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -10px;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 8px solid transparent;
  border-left: 8px solid transparent;
  border-top: 10px solid var(--cl-base);
  border-bottom: 0;
}

.reason-copy {
  font-family: var(--f-zenmaru);
  font-size: 2.3rem;
  font-weight: 600;
  text-align: center;
  line-height: 1.4;
  margin-bottom: 24px;
}
@media screen and (min-width: 640px) {
  .reason-copy {
    font-size: 2.6rem;
  }
}

.reason-check__list {
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  background-color: #fff;
  padding: 16px;
}
@media screen and (min-width: 640px) {
  .reason-check__list {
    display: flex;
    flex-wrap: wrap;
    padding: 24px 24px 20px 24px;
  }
}
.reason-check__list__item {
  background-image: url(../img/reason/icon-check.svg);
  background-size: 19px 19px;
  background-repeat: no-repeat;
  background-position: left 3px top 2px;
  padding: 0 0 5px 30px;
  font-family: var(--f-noto);
  font-weight: 600;
  line-height: 1.4;
  margin-bottom: 10px;
  border-bottom: 2px dotted var(--cl-base-k);
  padding-bottom: 12px;
}
.reason-check__list__item:last-child {
  border-bottom: none;
  padding-bottom: 2px;
}
@media screen and (min-width: 640px) {
  .reason-check__list__item {
    border-bottom: 2px dotted var(--cl-base-k);
    margin-bottom: 10px;
    padding-bottom: 12px;
    width: calc((100% - 20px) / 2);
    font-size: 1.8rem;
    background-size: 21px 21px;
    background-position: left 3px top 4px;
    padding: 0 0 15px 34px;
  }
  .reason-check__list__item:not(:nth-child(2n)) {
    margin-right: 20px;
  }
  .reason-check__list__item:nth-last-child(-n+2) {
    border-bottom: none;
    padding: 5px 0 0px 34px;
    background-position: left 3px top 8px;
  }
}

.reason-title01__number {
  display: flex;
  justify-content: center;
  margin-bottom: 16px;
}

.reason-title01__sub {
  color: #fff;
  font-size: 1.6rem;
  font-family: var(--f-zenmaru);
  font-weight: 600;
  text-align: center;
  margin-bottom: 6px;
}
@media screen and (min-width: 640px) {
  .reason-title01__sub {
    font-size: 1.8rem;
  }
}
.reason-title01__sub__inner {
  position: relative;
  padding: 0 10px;
}
.reason-title01__sub__inner::before, .reason-title01__sub__inner::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 5px;
  margin: auto;
  width: 2px;
  height: 70%;
  background-color: #fff;
}
.reason-title01__sub__inner::before {
  left: 0;
  transform: rotate(-25deg);
}
.reason-title01__sub__inner::after {
  right: 0;
  transform: rotate(25deg);
}

.reason-title01 {
  color: #fff;
  font-family: var(--f-zenmaru);
  font-weight: 600;
  font-size: 2.4rem;
  text-align: center;
  line-height: 1.4;
}
@media screen and (min-width: 640px) {
  .reason-title01 {
    font-size: 2.6rem;
  }
}
@media screen and (min-width: 1200px) {
  .reason-title01 {
    font-size: 2.8rem;
  }
}

.reason-ex {
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  padding: 16px;
  margin-bottom: 25px;
}
@media screen and (min-width: 640px) {
  .reason-ex {
    padding: 24px;
  }
}

.reason-ex__text {
  font-weight: bold;
  font-size: 1.5rem;
  position: relative;
  padding-left: 16px;
  line-height: 1;
  margin-bottom: 16px;
}
@media screen and (min-width: 640px) {
  .reason-ex__text {
    font-size: 1.7rem;
  }
}
.reason-ex__text::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 4px;
  left: 0;
  margin: auto;
  background-color: var(--cl-base);
  width: 9px;
  height: 9px;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
@media screen and (min-width: 640px) {
  .reason-ex__text::before {
    top: 5 px;
  }
}

.reason-ex__list {
  display: flex;
  flex-wrap: wrap;
}
.reason-ex__list__item {
  width: calc((100% - 8px) / 2);
  background-color: var(--cl-base-y-bg);
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  -o-border-radius: 25px;
  -ms-border-radius: 25px;
  border-radius: 25px;
  font-family: var(--f-zenmaru);
  font-weight: 600;
  text-align: center;
  padding: 10px;
  line-height: 1;
  margin-bottom: 8px;
}
.reason-ex__list__item:not(:nth-child(2n)) {
  margin-right: 8px;
}
@media screen and (min-width: 640px) {
  .reason-ex__list__item {
    font-size: 1.8rem;
  }
}

.reason-img01 {
  width: 70%;
  margin: 0 auto;
}
@media screen and (min-width: 640px) {
  .reason-img01 {
    width: 40%;
  }
}

.reason-img02 {
  margin: 0 auto;
}
@media screen and (min-width: 640px) {
  .reason-img02 {
    width: 60%;
  }
}

.reason-copy02 {
  font-size: 1.9rem;
  font-family: var(--f-zenmaru);
  font-weight: 600;
  text-align: center;
  margin-bottom: 25px;
}
@media screen and (min-width: 640px) {
  .reason-copy02 {
    font-size: 2.2rem;
  }
}
@media screen and (min-width: 1200px) {
  .reason-copy02 {
    font-size: 2.4rem;
  }
}
.reason-copy02 .em {
  color: var(--cl-text-g);
}

.reason-img03 {
  max-width: 96%;
  margin: 0 auto 15px;
}
@media screen and (min-width: 640px) {
  .reason-img03 {
    width: 60%;
  }
}
@media screen and (min-width: 1200px) {
  .reason-img03 {
    width: 50%;
    margin: 40px auto 40px;
  }
}

.reason-copy03 {
  font-weight: 600;
  font-size: 1.6rem;
  margin-bottom: 25px;
  text-align: center;
  font-family: var(--f-zenmaru);
}
@media screen and (min-width: 640px) {
  .reason-copy03 {
    font-size: 2.2rem;
    margin-bottom: 36px;
  }
}

.reason-fukuri__box {
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  background-color: var(--cl-base-b);
  margin-bottom: 20px;
  padding: 110px 20px 26px 20px;
  background-repeat: no-repeat;
}
@media screen and (min-width: 640px) {
  .reason-fukuri__box {
    width: calc((100% - 20px) / 2);
    margin-bottom: 20px;
  }
  .reason-fukuri__box:not(:nth-child(2n)) {
    margin-right: 20px;
  }
}
.reason-fukuri__box.hoken {
  background-image: url(../img/reason/icon01.svg);
  background-size: 50px auto;
  background-position: center top 32px;
}
.reason-fukuri__box.genteikinmu {
  background-image: url(../img/reason/icon02.svg);
  background-size: 70px auto;
  background-position: center top 30px;
}
.reason-fukuri__box.yukyu {
  background-image: url(../img/reason/icon03.svg);
  background-size: 57px auto;
  background-position: center top 28px;
}
.reason-fukuri__box.kenshin {
  background-image: url(../img/reason/icon04.svg);
  background-size: 58px auto;
  background-position: center top 26px;
}
.reason-fukuri__box.shikaku {
  background-image: url(../img/reason/icon05.svg);
  background-size: 47px auto;
  background-position: center top 34px;
}
.reason-fukuri__box.kensyu {
  background-image: url(../img/reason/icon06.svg);
  background-size: 60px auto;
  background-position: center top 42px;
}
.reason-fukuri__box.sogei01 {
  background-image: url(../img/reason/icon07.svg);
  background-size: 62px auto;
  background-position: center top 42px;
}
.reason-fukuri__box.sogei02 {
  background-image: url(../img/reason/icon08.svg);
  background-size: 60px auto;
  background-position: center top 38px;
}
@media screen and (min-width: 640px) {
  .reason-fukuri__box__wrap {
    display: flex;
    flex-wrap: wrap;
  }
}

.reason-fukuri__box__title {
  font-family: var(--f-zenmaru);
  font-size: 1.9rem;
  font-weight: 600;
  margin-bottom: 12px;
  text-align: center;
  line-height: 1.2;
}

.reason-fukuri__box__data {
  font-weight: bold;
}

@media screen and (min-width: 640px) {
  .reason-voice {
    display: flex;
    flex-wrap: wrap;
  }
}
.reason-voice__item {
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  background-color: #fff;
  margin-bottom: 20px;
  padding: 25px 25px 25px 86px;
  background-repeat: no-repeat;
  background-size: 42px 47px;
  background-position: left 20px center;
  font-weight: bold;
}
.reason-voice__item.icon-y {
  background-image: url(../img/reason/fukidashi-y.svg);
}
.reason-voice__item.icon-g {
  background-image: url(../img/reason/fukidashi-g.svg);
}
@media screen and (min-width: 640px) {
  .reason-voice__item {
    width: calc((100% - 20px) / 2);
  }
  .reason-voice__item:not(:nth-child(2n)) {
    margin-right: 20px;
  }
}

.beginner-lead {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 24px;
}
.beginner-lead__wrap {
  width: 75.5%;
  margin-right: 20px;
  padding-top: 10px;
}
@media screen and (min-width: 640px) {
  .beginner-lead__wrap {
    width: 82%;
    margin-right: 60px;
  }
}
@media screen and (min-width: 640px) {
  .beginner-lead__text {
    margin-bottom: 40px;
  }
}
.beginner-lead__img {
  width: calc(24.5% - 20px);
}
@media screen and (min-width: 640px) {
  .beginner-lead__img {
    width: calc(18% - 60px);
  }
}

@media screen and (min-width: 640px) {
  .beginner-btn-list01 {
    width: 86%;
    margin: 0 auto;
  }
}
@media screen and (min-width: 1200px) {
  .beginner-btn-list01 {
    max-width: 480px;
    width: 100%;
  }
}
.beginner-btn-list01__item:not(:last-child) {
  margin-bottom: 10px;
}
.beginner-btn-list01__item .btn-base {
  max-width: 100% !important;
}

@media screen and (min-width: 640px) {
  .beginner-flow__list {
    display: flex;
    flex-wrap: wrap;
  }
}
@media screen and (min-width: 1200px) {
  .beginner-flow__list {
    width: 100%;
    margin: 0 auto;
  }
}
.beginner-flow__list__item {
  border: 2px solid var(--cl-base-k);
  margin-bottom: 10px;
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
}
@media screen and (min-width: 1200px) {
  .beginner-flow__list__item {
    background-color: var(--cl-base-b);
  }
}
.beginner-flow__list__item:not(:nth-child(even)) {
  background-color: var(--cl-base-b);
}
@media screen and (min-width: 640px) {
  .beginner-flow__list__item {
    width: calc((100% - 10px) / 2);
  }
  .beginner-flow__list__item:not(:nth-child(2n)) {
    margin-right: 10px;
  }
}
.beginner-flow__list__link {
  display: block;
  padding: 16px 48px 16px 72px;
  background-repeat: no-repeat;
  font-family: var(--f-zenmaru);
  line-height: 1.2;
  font-weight: 600;
  position: relative;
}
.beginner-flow__list__link.step01 {
  background-image: url(../img/beginner/icon-flow01.svg);
  background-size: 22px 38px;
  background-position: left 24px center;
}
.beginner-flow__list__link.step02 {
  background-image: url(../img/beginner/icon-flow02.svg);
  background-size: 42px 32px;
  background-position: left 12px center;
}
.beginner-flow__list__link.step03 {
  background-image: url(../img/beginner/icon-flow03.svg);
  background-size: 40px 31px;
  background-position: left 14px center;
}
.beginner-flow__list__link.step04 {
  background-image: url(../img/beginner/icon-flow04.svg);
  background-size: 49px 33px;
  background-position: left 12px center;
}
.beginner-flow__list__link.step05 {
  background-image: url(../img/beginner/icon-flow05.svg);
  background-size: 32px 35px;
  background-position: left 20px center;
}
.beginner-flow__list__link::before, .beginner-flow__list__link::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}
.beginner-flow__list__link::before {
  width: 22px;
  height: 22px;
  background-color: var(--cl-base);
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  right: 20px;
}
.beginner-flow__list__link::after {
  width: 7px;
  height: 7px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  right: 27px;
  bottom: 2px;
}
.beginner-flow__list__sub {
  font-size: 1.4rem;
  color: var(--cl-base);
  margin-bottom: 2px;
}
.beginner-flow__list__title {
  font-size: 1.8rem;
}

.begnner-tlte01 {
  text-align: center;
}
@media screen and (min-width: 1200px) {
  .begnner-tlte01 {
    margin-top: 10px;
  }
}
.begnner-tlte01__inner {
  display: inline-block;
  text-align: left;
  font-family: var(--f-zenmaru);
  font-weight: 600;
  line-height: 1.2;
  background-repeat: no-repeat;
}
.begnner-tlte01__inner.step01 {
  padding-left: 50px;
  background-image: url(../img/beginner/icon-flow01.svg);
  background-size: 27.9px 48.6px;
  background-position: left 0px center;
}
@media screen and (min-width: 1200px) {
  .begnner-tlte01__inner.step01 {
    padding-left: 60px;
    background-size: 37.2px 64.8px;
  }
}
.begnner-tlte01__inner.step02 {
  padding-left: 88px;
  background-image: url(../img/beginner/icon-flow02.svg);
  background-size: 63.9px 49.5px;
  background-position: left 0px center;
}
@media screen and (min-width: 1200px) {
  .begnner-tlte01__inner.step02 {
    padding-left: 104px;
    background-size: 85.2px 66px;
  }
}
.begnner-tlte01__inner.step03 {
  padding-left: 76px;
  background-image: url(../img/beginner/icon-flow03.svg);
  background-size: 56.7px 44.1px;
  background-position: left 0px center;
}
@media screen and (min-width: 1200px) {
  .begnner-tlte01__inner.step03 {
    padding-left: 86px;
    background-size: 75.6px 58.8px;
  }
}
.begnner-tlte01__inner.step04 {
  padding-left: 84px;
  background-image: url(../img/beginner/icon-flow04.svg);
  background-size: 64.8px 44.1px;
  background-position: left 0px center;
}
@media screen and (min-width: 1200px) {
  .begnner-tlte01__inner.step04 {
    padding-left: 102px;
    background-size: 86.4px 58.8px;
  }
}
.begnner-tlte01__inner.step05 {
  padding-left: 62px;
  background-image: url(../img/beginner/icon-flow05.svg);
  background-size: 43.2px 48.6px;
  background-position: left 0px center;
}
@media screen and (min-width: 1200px) {
  .begnner-tlte01__inner.step05 {
    padding-left: 76px;
    background-size: 57.6px 64.8px;
  }
}
.begnner-tlte01__data {
  color: #fff;
  font-size: 2.2rem;
  margin-bottom: 8px;
}
@media screen and (min-width: 640px) {
  .begnner-tlte01__data {
    font-size: 2.4rem;
    margin-bottom: 10px;
  }
}
@media screen and (min-width: 1200px) {
  .begnner-tlte01__data {
    font-size: 2.8rem;
  }
}
.begnner-tlte01__step {
  font-size: 1.6rem;
  color: var(--cl-base-y);
}
@media screen and (min-width: 640px) {
  .begnner-tlte01__step {
    font-size: 1.8rem;
  }
}
@media screen and (min-width: 1200px) {
  .begnner-tlte01__step {
    font-size: 2.2rem;
    padding-left: 10px;
  }
}

.beginner-acc {
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  border: 2px solid var(--cl-base-k);
}
@media screen and (min-width: 1200px) {
  .beginner-acc {
    max-width: 680px;
    width: 100%;
    margin: 0 auto;
  }
}

.beginner-acc__title {
  background-color: var(--cl-base-k);
  border-radius: 9px 9px 9px 9px;
  color: #fff;
  font-size: 1.6rem;
  font-family: var(--f-zenmaru);
  font-weight: 600;
  padding: 14px 46px 14px 16px;
  line-height: 1.2;
  position: relative;
}
@media screen and (min-width: 1200px) {
  .beginner-acc__title {
    font-size: 1.8rem;
  }
}
.beginner-acc__title::before, .beginner-acc__title::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 19px;
  height: 3px;
  background-color: #fff;
  border-radius: 3px;
}
.beginner-acc__title::before {
  right: 17px;
}
.beginner-acc__title::after {
  right: 17px;
  transform: rotate(90deg);
}
.beginner-acc__title.active {
  border-radius: 9px 9px 0px 0px;
}
.beginner-acc__title.active::after {
  right: 17px;
  transform: rotate(0deg);
}

.beginner-acc__data {
  padding: 20px;
  background-color: var(--cl-base-b);
  border-radius: 0 0 9px 9px;
  display: none;
}
@media screen and (min-width: 1200px) {
  .beginner-acc__data {
    padding: 30px 40px;
  }
}

.beginner-acc__check {
  margin-bottom: 15px;
}
.beginner-acc__check__item {
  margin-bottom: 8px;
  padding-left: 27px;
  background-image: url(../img/common/icon-check-square.svg);
  background-size: 19px 19px;
  background-repeat: no-repeat;
  background-position: left 0 top 3px;
  font-weight: bold;
}
@media screen and (min-width: 1200px) {
  .beginner-acc__check__item {
    padding-left: 32px;
    font-size: 1.8rem;
    background-position: left 0 top 6px;
    background-size: 21px 21px;
  }
}

.beginner-acc__title01 {
  font-family: var(--f-noto);
  font-weight: 700;
  font-size: 1.5rem;
  margin-bottom: 15px;
  padding-left: 17px;
  position: relative;
  line-height: 1;
  margin-top: 20px;
}
@media screen and (min-width: 1200px) {
  .beginner-acc__title01 {
    margin-top: 30px;
    font-size: 1.8rem;
  }
}
.beginner-acc__title01::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 5px;
  left: 0;
  margin: auto;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  width: 9px;
  height: 9px;
  background-color: var(--cl-base);
}

.beginner-follow {
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
}
@media screen and (min-width: 1200px) {
  .beginner-follow {
    max-width: 680px;
    width: 100%;
    margin: 0 auto;
  }
}

.beginner-follow__head {
  background-color: var(--cl-base-y-bg);
  padding: 40px 20px 24px;
  font-family: var(--f-zenmaru);
  border-radius: 12px 12px 0 0;
  position: relative;
  font-weight: 600;
}
@media screen and (min-width: 1200px) {
  .beginner-follow__head {
    padding: 60px 20px 36px;
  }
}

.beginner-follow__title__sub {
  display: inline-block;
  background-color: var(--cl-base-k);
  width: 162px;
  color: #fff;
  text-align: center;
  margin: auto;
  position: absolute;
  left: 0;
  right: 0;
  top: -1.3em;
  font-size: 1.5rem;
  padding: 4px 10px 6px;
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  -o-border-radius: 25px;
  -ms-border-radius: 25px;
  border-radius: 25px;
  letter-spacing: 0.02em;
}
@media screen and (min-width: 1200px) {
  .beginner-follow__title__sub {
    font-size: 1.8rem;
    padding: 6px 20px 8px;
    width: 240px;
  }
}
.beginner-follow__title__sub::before {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -9px;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 7px solid transparent;
  border-left: 7px solid transparent;
  border-top: 10px solid var(--cl-base-k);
  border-bottom: 0;
}

.beginner-follow__title {
  text-align: center;
  font-size: 1.9rem;
  line-height: 1.4;
  font-weight: 700;
}
@media screen and (min-width: 1200px) {
  .beginner-follow__title {
    font-size: 2.2rem;
  }
}

.beginner-follow__main {
  padding: 24px 20px;
  background-color: var(--cl-base-b);
  border-radius: 0 0 12px 12px;
}
@media screen and (min-width: 1200px) {
  .beginner-follow__main {
    padding: 40px 40px;
  }
}

.beginner-fllow__img01 {
  width: 80%;
  margin: 0 auto;
}
@media screen and (min-width: 640px) {
  .beginner-fllow__img01 {
    width: 40%;
  }
}

.recruit-title__dot01 {
  font-family: var(--f-zenmaru);
  font-size: 2.4rem;
  font-weight: 600;
  text-align: center;
  padding: 22px 0 22px;
  margin-bottom: 16px;
  background-image: url(../img/common/icon-dot3-g.svg);
  background-size: 36px 6px;
  background-repeat: no-repeat;
  background-position: center bottom;
  line-height: 1.7;
  position: relative;
}
@media screen and (min-width: 640px) {
  .recruit-title__dot01 {
    font-size: 2.8rem;
    padding-bottom: 24px;
    margin-bottom: 32px;
  }
}
@media screen and (min-width: 1200px) {
  .recruit-title__dot01 {
    font-size: 3.6rem;
  }
}
.recruit-title__dot01::before, .recruit-title__dot01::after {
  content: "";
  display: inline-block;
  position: absolute;
  margin: auto;
}
.recruit-title__dot01::before {
  background-image: url(../img/recruit/icon-star.svg);
  background-size: 31px 34px;
  width: 31px;
  height: 34px;
  top: 0;
  left: 40px;
}
@media screen and (min-width: 640px) {
  .recruit-title__dot01::before {
    left: 30%;
  }
}
@media screen and (min-width: 1200px) {
  .recruit-title__dot01::before {
    left: 28%;
  }
}
.recruit-title__dot01::after {
  background-image: url(../img/recruit/icon-diamonds.svg);
  background-size: 35px 28px;
  width: 35px;
  height: 28px;
  top: 5px;
  right: 40px;
  transform: rotate(20deg);
}
@media screen and (min-width: 640px) {
  .recruit-title__dot01::after {
    right: 30%;
  }
}
@media screen and (min-width: 1200px) {
  .recruit-title__dot01::after {
    right: 28%;
  }
}
.recruit-title__dot01 .em {
  color: var(--cl-base);
}

.recruit-lead__img01 {
  max-width: 90%;
  width: 100%;
  margin: 0 auto 50px;
}
@media screen and (min-width: 640px) {
  .recruit-lead__img01 {
    max-width: 40%;
    margin-bottom: 60px;
  }
}

.recruit-lead__message {
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  background-color: #fff;
  padding: 36px 20px 20px;
  position: relative;
}
@media screen and (min-width: 640px) {
  .recruit-lead__message {
    padding: 46px 40px 30px;
  }
}
@media screen and (min-width: 1200px) {
  .recruit-lead__message {
    max-width: 680px;
    width: 100%;
    margin: 0 auto;
  }
}

.recruit-lead__message__title {
  position: absolute;
  top: -20px;
  left: 0;
  right: 0;
  margin: auto;
  background-color: var(--cl-base-y-bg);
  border: 2px solid var(--cl-base-k);
  font-family: var(--f-zenmaru);
  font-size: 1.7rem;
  max-width: 180px;
  width: 100%;
  line-height: 1;
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  -o-border-radius: 25px;
  -ms-border-radius: 25px;
  border-radius: 25px;
  padding: 8px 20px;
  text-align: center;
}
@media screen and (min-width: 640px) {
  .recruit-lead__message__title {
    font-size: 2rem;
    max-width: 220px;
  }
}
@media screen and (min-width: 1200px) {
  .recruit-lead__message__title {
    font-size: 2.4rem;
    max-width: 240px;
  }
}
.recruit-lead__message__title::before, .recruit-lead__message__title::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  height: 0;
  width: 0;
  border: solid transparent;
  margin: auto;
  display: block;
}
.recruit-lead__message__title:before {
  border-color: transparent;
  border-top-color: var(--cl-base-k);
  border-width: 10px;
}
.recruit-lead__message__title:after {
  border-color: transparent;
  border-top-color: var(--cl-base-y-bg);
  border-width: 7px;
}

.recruit-copy01 {
  font-family: var(--f-zenmaru);
  font-weight: 600;
  font-size: 1.8rem;
  margin-bottom: 16px;
  text-align: center;
}
@media screen and (min-width: 640px) {
  .recruit-copy01 {
    font-size: 2.2rem;
  }
}
@media screen and (min-width: 1200px) {
  .recruit-copy01 {
    font-size: 2.8rem;
    margin-bottom: 28px;
  }
}

.recruit-philosophy__img01 {
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
}
@media screen and (min-width: 640px) {
  .recruit-philosophy__img01 {
    max-width: 60%;
    width: 100%;
    margin: auto;
  }
}
.recruit-philosophy__img01 img {
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  -o-border-radius: 10px;
  -ms-border-radius: 10px;
  border-radius: 10px;
}

.recruit-voice__list {
  max-width: 100%;
  width: 100%;
  margin: 0 auto 38px;
  z-index: auto;
}
@media screen and (min-width: 1200px) {
  .recruit-voice__list {
    margin-bottom: 60px;
  }
}
.recruit-voice__list .slick-prev,
.recruit-voice__list .slick-next {
  width: 36px;
  height: 36px;
  z-index: 1;
  top: 40%;
}
@media screen and (min-width: 640px) {
  .recruit-voice__list .slick-prev,
  .recruit-voice__list .slick-next {
    width: 42px;
    height: 42px;
  }
}
.recruit-voice__list .slick-prev::before, .recruit-voice__list .slick-prev::after,
.recruit-voice__list .slick-next::before,
.recruit-voice__list .slick-next::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  opacity: 1;
  left: 0;
  right: 0;
}
.recruit-voice__list .slick-prev::before,
.recruit-voice__list .slick-next::before {
  border: 2px solid var(--cl-base-k);
  background-color: #fff;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  width: 36px;
  height: 36px;
}
@media screen and (min-width: 640px) {
  .recruit-voice__list .slick-prev::before,
  .recruit-voice__list .slick-next::before {
    width: 42px;
    height: 42px;
  }
}
.recruit-voice__list .slick-prev::after,
.recruit-voice__list .slick-next::after {
  background-image: url(../img/common/arrow-green.svg);
  background-size: 8px 13px;
  width: 8px;
  height: 13px;
}
.recruit-voice__list .slick-prev {
  left: -18px;
}
@media screen and (min-width: 640px) {
  .recruit-voice__list .slick-prev {
    left: -10px;
  }
}
.recruit-voice__list .slick-prev::after {
  transform: scale(-1, 1);
}
.recruit-voice__list .slick-next {
  right: -18px;
}
@media screen and (min-width: 640px) {
  .recruit-voice__list .slick-next {
    right: -10px;
  }
}

.recruit-voice__list__link {
  display: block;
  margin: 0 3px;
}
@media screen and (min-width: 640px) {
  .recruit-voice__list__link {
    margin: 0 10px;
  }
}
@media screen and (min-width: 1200px) {
  .recruit-voice__list__link:hover {
    opacity: 0.8;
  }
}

.recruit-voice__list__img {
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  margin-bottom: 18px;
}
.recruit-voice__list__img img {
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  -o-border-radius: 10px;
  -ms-border-radius: 10px;
  border-radius: 10px;
}

.recruit-voice__list__name {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  font-family: var(--f-zenmaru);
  font-weight: 600;
}
.recruit-voice__list__name .department {
  border: 2px solid var(--cl-base-k);
  color: #fff;
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  -o-border-radius: 25px;
  -ms-border-radius: 25px;
  border-radius: 25px;
  background-color: #f70b74;
  padding: 4px 10px 5px;
  margin-right: 10px;
}
.recruit-voice__list__name .data {
  font-size: 1.6rem;
}

@media screen and (min-width: 640px) {
  .recruit-system__block__wrap {
    display: flex;
    flex-wrap: wrap;
  }
}

.recruit-system__block {
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  margin-top: 40px;
  background-color: var(--cl-base-b);
}
@media screen and (min-width: 640px) {
  .recruit-system__block {
    width: calc((100% - 20px) / 2);
  }
  .recruit-system__block:not(:nth-child(2n)) {
    margin-right: 20px;
  }
}

.recruit-system__block__title {
  border-radius: 10px 10px 0 0;
  background-color: var(--cl-base);
  padding: 28px 20px 10px;
  font-family: var(--f-zenmaru);
  text-align: center;
  font-size: 2rem;
  font-weight: 700;
  color: #fff;
  position: relative;
}
@media screen and (min-width: 1200px) {
  .recruit-system__block__title {
    font-size: 2.5rem;
  }
}
.recruit-system__block__title::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: -25px;
  left: 0;
  right: 0;
  margin: auto;
  background-size: 50px 50px;
  width: 50px;
  height: 50px;
}
.recruit-system__block__title.noicon {
  padding-top: 12px;
}
.recruit-system__block__title.holiday::before {
  background-image: url(../img/recruit/icon-holiday.png);
}
.recruit-system__block__title.teate::before {
  background-image: url(../img/recruit/icon-teate.png);
}
.recruit-system__block__title.seido::before {
  background-image: url(../img/recruit/icon-seido.png);
}
.recruit-system__block__title.shusan::before {
  background-image: url(../img/recruit/icon-shusan.png);
}
.recruit-system__block__title.kensyu::before {
  background-image: url(../img/recruit/icon-kensyu.png);
}

.recruit-system__block__data {
  background-color: var(--cl-base-b);
  padding: 12px 20px;
  border-radius: 0 0 10px 10px;
}
@media screen and (min-width: 1200px) {
  .recruit-system__block__data {
    padding: 20px 30px;
  }
}

.recruit-system__block__list__item {
  line-height: 1.4;
  padding: 8px 5px 8px 20px;
  font-size: 1.6rem;
  position: relative;
  font-weight: bold;
}
@media screen and (min-width: 1200px) {
  .recruit-system__block__list__item {
    font-size: 1.8rem;
    padding: 12px 5px 12px 24px;
  }
}
.recruit-system__block__list__item:not(:last-child) {
  border-bottom: 3px dotted #c9cdbd;
}
.recruit-system__block__list__item::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 14px;
  left: 0;
  margin: auto;
  width: 10px;
  height: 10px;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  background-color: var(--cl-base);
}
@media screen and (min-width: 1200px) {
  .recruit-system__block__list__item::before {
    width: 12px;
    height: 12px;
    top: 18px;
  }
}

.recruit-system__block__sub {
  margin: 10px 0 10px;
}
.recruit-system__block__sub__title {
  font-size: 1.6rem;
  font-weight: bold;
  position: relative;
  padding: 0 0 5px 20px;
}
@media screen and (min-width: 1200px) {
  .recruit-system__block__sub__title {
    font-size: 1.8rem;
  }
}
.recruit-system__block__sub__title::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 10px;
  left: 0;
  margin: auto;
  width: 10px;
  height: 10px;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  background-color: var(--cl-base);
}
@media screen and (min-width: 1200px) {
  .recruit-system__block__sub__title::before {
    width: 12px;
    height: 12px;
    top: 10px;
  }
}
.recruit-system__block__sub__data:not(:last-child) {
  border-bottom: 3px dotted #c9cdbd;
  padding-bottom: 14px;
  margin-bottom: 12px;
}
@media screen and (min-width: 1200px) {
  .recruit-system__block__sub__data:not(:last-child) {
    padding-bottom: 20px;
    margin-bottom: 18px;
  }
}

@media screen and (min-width: 640px) {
  .recruit-bosyu__box__wrap {
    display: flex;
    flex-wrap: wrap;
  }
}

.recruit-bosyu__box {
  border: 2px solid var(--cl-base-k);
  background-color: #fff;
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  margin-bottom: 20px;
  padding: 20px 20px 30px;
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 640px) {
  .recruit-bosyu__box {
    width: calc((100% - 20px) / 2);
  }
  .recruit-bosyu__box:not(:nth-child(2n)) {
    margin-right: 20px;
  }
}
.recruit-bosyu__box .btn-base {
  margin-top: auto;
}

.recruit-bosyu__box__img {
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  margin-bottom: 20px;
}
@media screen and (min-width: 1200px) {
  .recruit-bosyu__box__img {
    margin-bottom: 30px;
  }
}
.recruit-bosyu__box__img img {
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
}

.recruit-bosyu__box__list {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
@media screen and (min-width: 1200px) {
  .recruit-bosyu__box__list {
    margin-bottom: 30px;
  }
}
.recruit-bosyu__box__list__title {
  width: 80px;
  margin: 0 12px 10px 0;
  font-size: 1.4rem;
}
@media screen and (min-width: 1200px) {
  .recruit-bosyu__box__list__title {
    margin-bottom: 14px;
  }
}
.recruit-bosyu__box__list__title__wrap {
  display: block;
  width: 100%;
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  -o-border-radius: 25px;
  -ms-border-radius: 25px;
  border-radius: 25px;
  background-color: var(--cl-base-y-bg);
  line-height: 1;
  border: 2px solid var(--cl-base-k);
  padding: 5px 5px;
  font-family: var(--f-zenmaru);
  font-weight: 600;
  text-align: center;
}
.recruit-bosyu__box__list__data {
  width: calc(100% - 80px - 12px);
  line-height: 1.2;
  padding: 5px 0 5px 0;
  margin-bottom: 10px;
  font-size: 1.4rem;
}
@media screen and (min-width: 1200px) {
  .recruit-bosyu__box__list__data {
    margin-bottom: 14px;
  }
}

.voice-block {
  margin-bottom: 28px;
  margin-top: 30px;
}
@media screen and (min-width: 640px) {
  .voice-block {
    margin-bottom: 40px;
  }
}

.voice-block__img {
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  width: 50%;
  margin: 0 auto 25px;
}
@media screen and (min-width: 640px) {
  .voice-block__img {
    width: 30%;
  }
}
.voice-block__img img {
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  -o-border-radius: 10px;
  -ms-border-radius: 10px;
  border-radius: 10px;
}

.voice-block__copy {
  font-family: var(--f-zenmaru);
  font-size: 2.1rem;
  font-weight: 600;
  text-align: center;
  margin-bottom: 10px;
}
@media screen and (min-width: 640px) {
  .voice-block__copy {
    font-size: 2.3rem;
    margin-bottom: 16px;
  }
}
@media screen and (min-width: 1200px) {
  .voice-block__copy {
    font-size: 2.5rem;
    margin-bottom: 20px;
  }
}

.voice-block__name {
  width: 100%;
  display: flex;
  justify-content: center;
  font-family: var(--f-zenmaru);
  font-weight: 600;
  line-height: 1;
}
.voice-block__name__department {
  background-color: var(--cl-base-k);
  padding: 3px 8px 4px;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  -o-border-radius: 20px;
  -ms-border-radius: 20px;
  border-radius: 20px;
  margin-right: 8px;
  color: #fff;
  font-size: 1.3rem;
}
@media screen and (min-width: 640px) {
  .voice-block__name__department {
    font-size: 1.5rem;
    padding: 5px 10px 6px;
  }
}
@media screen and (min-width: 1200px) {
  .voice-block__name__department {
    font-size: 1.6rem;
  }
}
.voice-block__name__data {
  font-size: 1.6rem;
}
@media screen and (min-width: 640px) {
  .voice-block__name__data {
    font-size: 2rem;
  }
}
@media screen and (min-width: 1200px) {
  .voice-block__name__data {
    font-size: 2.2rem;
  }
}

.voice-interview {
  margin-bottom: 25px;
}
@media screen and (min-width: 640px) {
  .voice-interview {
    margin-bottom: 40px;
  }
}
.voice-interview__q {
  border-top: 3px dotted var(--cl-base-k);
  padding: 25px 0 15px 42px;
  line-height: 1.4;
  font-family: var(--f-zenmaru);
  font-size: 1.8rem;
  font-weight: 600;
  position: relative;
}
@media screen and (min-width: 640px) {
  .voice-interview__q {
    font-size: 2rem;
  }
}
@media screen and (min-width: 1200px) {
  .voice-interview__q {
    padding: 32px 0 24px 42px;
  }
}
.voice-interview__q::before, .voice-interview__q::after {
  content: "";
  display: inline-block;
  position: absolute;
  margin: auto;
}
.voice-interview__q::before {
  width: 31px;
  height: 31px;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  border: 2px solid var(--cl-base-k);
  background-color: var(--cl-base);
  left: 0;
  top: 22px;
}
@media screen and (min-width: 1200px) {
  .voice-interview__q::before {
    top: 32px;
  }
}
.voice-interview__q::after {
  content: "Q";
  font-family: var(--f-zenmaru);
  font-size: 1.9rem;
  font-weight: 600;
  top: 22px;
  left: 9px;
}
@media screen and (min-width: 1200px) {
  .voice-interview__q::after {
    top: 32px;
  }
}
.voice-interview__a {
  padding: 0px 0 25px 42px;
  position: relative;
}
@media screen and (min-width: 640px) {
  .voice-interview__a {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 1200px) {
  .voice-interview__a {
    padding: 0px 0 32px 42px;
  }
}
.voice-interview__a::before, .voice-interview__a::after {
  content: "";
  display: inline-block;
  position: absolute;
  margin: auto;
}
.voice-interview__a::before {
  width: 31px;
  height: 31px;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  border: 2px solid var(--cl-base-k);
  background-color: var(--cl-base-y);
  left: 0;
  top: 0;
}
.voice-interview__a::after {
  content: "A";
  font-family: var(--f-zenmaru);
  font-size: 1.9rem;
  font-weight: 600;
  top: -4px;
  left: 9px;
}

.voice-message {
  position: relative;
  margin-top: 15px;
  background-color: #fff;
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  padding: 36px 20px 20px;
}
@media screen and (min-width: 640px) {
  .voice-message {
    padding: 46px 40px 30px;
  }
}
.voice-message.beige {
  background-color: var(--cl-base-b);
}
.voice-message__title {
  background-color: #0eb8dc;
  color: #fff;
  font-family: var(--f-zenmaru);
  font-size: 1.8rem;
  font-weight: 600;
  text-align: center;
  line-height: 1;
  padding: 5px 12px;
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  -o-border-radius: 25px;
  -ms-border-radius: 25px;
  border-radius: 25px;
  border: 2px solid var(--cl-base-k);
  width: 220px;
  margin: auto;
  letter-spacing: 0;
  position: absolute;
  top: -15px;
  left: 0;
  right: 0;
}
@media screen and (min-width: 640px) {
  .voice-message__title {
    top: -20px;
    font-size: 2rem;
    width: 260px;
    padding: 8px 12px;
  }
}
.voice-message__data {
  font-weight: bold;
}
@media screen and (min-width: 640px) {
  .voice-message__data {
    font-size: 1.6rem;
  }
}

.client-sec__title01 {
  font-family: var(--f-zenmaru);
  font-weight: 600;
  text-align: center;
  line-height: 1.2;
  margin-bottom: 20px;
}
@media screen and (min-width: 640px) {
  .client-sec__title01 {
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 1200px) {
  .client-sec__title01 {
    margin-bottom: 50px;
  }
}
.client-sec__title01__sub {
  font-size: 1.6rem;
}
@media screen and (min-width: 640px) {
  .client-sec__title01__sub {
    font-size: 2rem;
  }
}
@media screen and (min-width: 1200px) {
  .client-sec__title01__sub {
    font-size: 2.2rem;
    margin-bottom: 10px;
    font-weight: 800;
  }
}
.client-sec__title01__main {
  font-size: 2.4rem;
}
@media screen and (min-width: 640px) {
  .client-sec__title01__main {
    font-size: 2.8rem;
  }
}
@media screen and (min-width: 1200px) {
  .client-sec__title01__main {
    font-size: 3.4rem;
  }
}
.client-sec__title01__main .em {
  color: var(--cl-base);
  font-size: 3.2rem;
  margin: 0 4px;
}
@media screen and (min-width: 640px) {
  .client-sec__title01__main .em {
    font-size: 3.6rem;
  }
}
@media screen and (min-width: 1200px) {
  .client-sec__title01__main .em {
    font-size: 4rem;
  }
}

.client-img01 {
  max-width: 96%;
  display: block;
  margin: 0 auto 30px;
}
@media screen and (min-width: 640px) {
  .client-img01 {
    max-width: 50%;
    margin-bottom: 60px;
  }
}

@media screen and (min-width: 640px) {
  .client-taio {
    display: flex;
    flex-wrap: wrap;
  }
}
@media screen and (min-width: 640px) {
  .client-taio__item {
    width: calc((100% - 40px) / 2);
  }
  .client-taio__item:not(:nth-child(2n)) {
    margin-right: 40px;
  }
}

.client-img02 {
  margin-bottom: 20px;
}
@media screen and (min-width: 640px) {
  .client-img02 {
    max-width: 580px;
    width: 100%;
    margin: 0 auto 30px;
  }
}
.client-img02 img {
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  display: block;
  margin-bottom: 8px;
}
.client-img02__caption {
  font-family: var(--f-zenmaru);
  color: var(--cl-base-k);
  font-weight: 600;
  font-size: 1.7rem;
  text-align: center;
  display: block;
}
@media screen and (min-width: 1200px) {
  .client-img02__caption {
    font-size: 2rem;
  }
}

@media screen and (min-width: 640px) {
  .client-flow {
    max-width: 580px;
    width: 100%;
    margin: 0 auto;
  }
}
.client-flow__item {
  position: relative;
  margin-top: 50px;
}
.client-flow__item:not(:last-child)::before {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -30px;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 13px solid transparent;
  border-left: 13px solid transparent;
  border-top: 17px solid var(--cl-base-y);
  border-bottom: 0;
}

.client-flow__box {
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  border: 2px solid var(--cl-base-k);
  background-color: #fff;
}
.client-flow__box__title {
  background-color: var(--cl-base);
  color: #fff;
  font-family: var(--f-zenmaru);
  font-size: 1.9rem;
  padding: 24px 20px 16px;
  font-weight: 600;
  border-radius: 10px 10px 0 0;
  position: relative;
}
@media screen and (min-width: 1200px) {
  .client-flow__box__title {
    font-size: 2.1rem;
    padding: 24px 20px 12px;
  }
}
.client-flow__box__title .step {
  display: block;
  width: 75px;
  line-height: 1;
  padding: 5px 10px;
  color: #fff;
  font-family: var(--f-zenmaru);
  font-size: 1.5rem;
  letter-spacing: 0;
  background-color: #0eb8dc;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  -o-border-radius: 20px;
  -ms-border-radius: 20px;
  border-radius: 20px;
  border: 2px solid var(--cl-base-k);
  position: absolute;
  top: -14px;
  left: 20px;
  text-align: center;
}
@media screen and (min-width: 1200px) {
  .client-flow__box__title .step {
    font-size: 1.6rem;
    width: 90px;
    padding: 5px 10px 7px;
  }
}
.client-flow__box__data {
  padding: 14px 20px 16px;
  font-weight: bold;
}
@media screen and (min-width: 1200px) {
  .client-flow__box__data {
    padding: 20px;
    font-size: 1.7rem;
    line-height: 1.6;
  }
}

.client-use {
  margin-bottom: 30px;
}
@media screen and (min-width: 640px) {
  .client-use {
    max-width: 580px;
    width: 100%;
    margin: 0 auto 50px;
  }
}

.client-use__title {
  font-family: var(--f-zenmaru);
  padding-left: 80px;
  margin-bottom: 20px;
  font-weight: 600;
  position: relative;
}
@media screen and (min-width: 1200px) {
  .client-use__title {
    padding-left: 100px;
  }
}
.client-use__title::before, .client-use__title::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
}
.client-use__title.use01::before {
  background-image: url(../img/common/icon-track.svg);
  background-size: 66px 50px;
  width: 66px;
  height: 50px;
}
@media screen and (min-width: 1200px) {
  .client-use__title.use01::before {
    background-size: 79.2px 60px;
    width: 79.2px;
    height: 60px;
  }
}
.client-use__title.use02::before {
  background-image: url(../img/common/icon-seizo.svg);
  background-size: 48.6px 72px;
  width: 48.6px;
  height: 72px;
  left: 10px;
}
@media screen and (min-width: 1200px) {
  .client-use__title.use02::before {
    background-size: 54px 80px;
    width: 54px;
    height: 80px;
    left: 20px;
  }
}
.client-use__title__category {
  background-color: var(--cl-base);
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  -o-border-radius: 20px;
  -ms-border-radius: 20px;
  border-radius: 20px;
  border: 2px solid var(--cl-base-k);
  color: #fff;
  font-size: 1.5rem;
  width: 100px;
  text-align: center;
  line-height: 1;
  padding: 5px 10px;
  margin-bottom: 10px;
}
@media screen and (min-width: 1200px) {
  .client-use__title__category {
    font-size: 1.6rem;
  }
}
.client-use__title__data {
  font-size: 2.4rem;
}
@media screen and (min-width: 1200px) {
  .client-use__title__data {
    font-size: 2.8rem;
  }
}

.client-use__box {
  border: 2px solid var(--cl-base-k);
  background-color: #fff;
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  padding: 16px 20px 20px;
  margin-bottom: 64px;
  position: relative;
}
@media screen and (min-width: 1200px) {
  .client-use__box {
    padding: 20px 25px 25px;
  }
}
.client-use__box.kadai::before {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -30px;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 13px solid transparent;
  border-left: 13px solid transparent;
  border-top: 17px solid var(--cl-base);
  border-bottom: 0;
}
.client-use__box.teian {
  padding-top: 50px;
  margin-bottom: 40px;
}

.client-use__box__kadai-title {
  margin: 0;
  font-family: var(--f-zenmaru);
  text-align: center;
  background-color: var(--cl-base);
  text-align: center;
  padding: 3px 10px;
  text-align: center;
  font-size: 1.8rem;
  color: #fff;
  margin-bottom: 15px;
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  -o-border-radius: 25px;
  -ms-border-radius: 25px;
  border-radius: 25px;
}
@media screen and (min-width: 1200px) {
  .client-use__box__kadai-title {
    font-size: 2rem;
    margin-bottom: 20px;
  }
}

.client-use__box__teian-title {
  margin: 0;
  background-color: var(--cl-base-y);
  font-family: var(--f-zenmaru);
  font-size: 1.7rem;
  -moz-border-radius: 36px;
  -webkit-border-radius: 36px;
  -o-border-radius: 36px;
  -ms-border-radius: 36px;
  border-radius: 36px;
  line-height: 1.2;
  padding: 8px 20px;
  text-align: center;
  border: 2px solid var(--cl-base-k);
  font-size: 1.6rem;
  position: absolute;
  top: -20px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 80%;
}
@media screen and (min-width: 1200px) {
  .client-use__box__teian-title {
    font-size: 1.8rem;
    padding: 10px 10px;
  }
}

.client-contact {
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  border: 2px solid var(--cl-base-k);
  margin-bottom: 30px;
  background-color: #fff;
}
@media screen and (min-width: 640px) {
  .client-contact {
    max-width: 580px;
    width: 100%;
    margin: 0 auto 40px;
  }
}
.client-contact__title {
  background-color: var(--cl-base);
  color: #fff;
  font-family: var(--f-zenmaru);
  font-size: 1.8rem;
  line-height: 1.2;
  padding: 15px;
  font-weight: 600;
  border-radius: 10px 10px 0 0;
  text-align: center;
  margin-bottom: 25px;
  position: relative;
}
@media screen and (min-width: 640px) {
  .client-contact__title {
    font-size: 2rem;
    padding: 20px;
  }
}
.client-contact__title::before {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -12px;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 9px solid transparent;
  border-left: 9px solid transparent;
  border-top: 12px solid var(--cl-base);
  border-bottom: 0;
}

.client-contact__wrap {
  padding: 0px 20px 25px 20px;
}

.client-contact__tel {
  margin-top: 25px;
}
.client-contact__tel__title {
  line-height: 1.2;
  font-family: var(--f-zenmaru);
  font-size: 1.6rem;
  text-align: center;
  font-weight: 600;
  margin-bottom: 10px;
}
@media screen and (min-width: 640px) {
  .client-contact__tel__title {
    font-size: 1.8rem;
  }
}
.client-contact__tel__data__link {
  display: block;
  font-family: var(--f-zenmaru);
  font-size: 3rem;
  font-weight: 600;
  text-align: center;
  color: var(--cl-base);
  line-height: 1;
}
@media screen and (min-width: 640px) {
  .client-contact__tel__data__link {
    font-size: 3.6rem;
  }
}
.client-contact__tel__data__link span {
  padding-left: 25px;
  position: relative;
}
@media screen and (min-width: 640px) {
  .client-contact__tel__data__link span {
    padding-left: 32px;
  }
}
.client-contact__tel__data__link span::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 8px;
  left: 0;
  margin: auto;
  background-image: url(../img/common/icon-tel-g.svg);
  background-size: 19px 30px;
  width: 19px;
  height: 30px;
}
@media screen and (min-width: 640px) {
  .client-contact__tel__data__link span::before {
    top: 10px;
    background-size: 22.8px 36px;
    width: 22.8px;
    height: 36px;
  }
}

.client-out__btn {
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  font-family: var(--f-zenmaru);
  border: 2px solid var(--cl-base-k);
  background-color: var(--cl-base-y-bg);
  padding: 16px 45px 16px 20px;
  display: block;
  font-weight: 600;
  font-size: 1.6rem;
  line-height: 1.3;
  letter-spacing: 0;
  position: relative;
}
@media screen and (min-width: 640px) {
  .client-out__btn {
    max-width: 580px;
    width: 100%;
    margin: 0 auto;
    font-size: 1.8rem;
  }
}
.client-out__btn::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  right: 15px;
  bottom: 0;
  margin: auto;
  background-image: url(../img/common/arrow-black.svg);
  background-size: 8px 12px;
  width: 8px;
  height: 12px;
}
.client-out__btn:hover {
  background-color: var(--cl-base);
  color: #fff;
}
.client-out__btn:hover::before {
  background-image: url(../img/common/arrow-white.svg);
}

.ways-haken__title {
  background-color: var(--cl-base-k);
  border-radius: 9px 9px 9px 9px;
  color: #fff;
  font-size: 1.8rem;
  font-family: var(--f-zenmaru);
  font-weight: 600;
  padding: 14px 46px 14px 16px;
  line-height: 1.2;
  position: relative;
}
@media screen and (min-width: 640px) {
  .ways-haken__title {
    font-size: 2rem;
  }
}
@media screen and (min-width: 1200px) {
  .ways-haken__title {
    font-size: 1.8rem;
  }
}
.ways-haken__title::before, .ways-haken__title::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 19px;
  height: 3px;
  background-color: #fff;
  border-radius: 3px;
}
.ways-haken__title::before {
  right: 17px;
}
.ways-haken__title::after {
  right: 17px;
  transform: rotate(90deg);
}
.ways-haken__title.active::after {
  right: 17px;
  transform: rotate(0deg);
}

.ways-haken__wrap {
  padding: 16px 0 0 0;
  display: none;
}

.ways-haken__img {
  max-width: 320px;
  margin: 0 auto 30px;
}
@media screen and (min-width: 640px) {
  .ways-haken__img {
    max-width: 480px;
    margin: 60px auto 60px;
  }
}

.ways-haken__other {
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
}
@media screen and (min-width: 640px) {
  .ways-haken__other {
    max-width: 580px;
    margin: 0 auto;
  }
}

.ways-haken__other__title {
  margin: 0;
  color: #fff;
  font-family: var(--f-zenmaru);
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.2;
  background-color: var(--cl-base);
  padding: 18px;
  text-align: center;
  border-radius: 10px 10px 0 0;
}
@media screen and (min-width: 640px) {
  .ways-haken__other__title {
    font-size: 2.2rem;
    padding: 10px 18px 18px 18px;
  }
}
.ways-haken__other__title .em {
  font-size: 3rem;
  color: var(--cl-base-y);
}
@media screen and (min-width: 640px) {
  .ways-haken__other__title .em {
    font-size: 3.6rem;
  }
}

.ways-haken__other__wrap {
  background-color: #fff;
  border-radius: 0 0 10px 10px;
  padding: 20px 16px 24px;
}
@media screen and (min-width: 640px) {
  .ways-haken__other__wrap {
    padding: 30px 30px 40px;
  }
}

.ways-haken__other__img {
  max-width: 320px;
  margin: 0 auto 26px;
}
@media screen and (min-width: 640px) {
  .ways-haken__other__img {
    max-width: 420px;
    margin: 0 auto 40px;
  }
}

.ways-case {
  margin-bottom: 30px;
}
@media screen and (min-width: 640px) {
  .ways-case {
    max-width: 580px;
    margin: 0 auto 40px;
  }
}
@media screen and (min-width: 1200px) {
  .ways-case {
    max-width: 680px;
    margin-bottom: 50px;
  }
}

.ways-case__title {
  padding: 0 0px 36px 80px;
  background-repeat: no-repeat;
  letter-spacing: 0.02em;
}
.ways-case__title.case01 {
  background-image: url(../img/ways/case01.svg);
  background-size: 71px 115px;
  background-position: 0 0;
  padding-top: 10px;
}
@media screen and (min-width: 640px) {
  .ways-case__title.case01 {
    padding-bottom: 40px;
  }
}
.ways-case__title.case02 {
  background-image: url(../img/ways/case02.svg);
  background-size: 63px 110px;
  background-position: 8px 0;
  padding: 0 0px 25px 80px;
}
.ways-case__title.case03 {
  background-image: url(../img/ways/case03.svg);
  background-size: 46px 118px;
  background-position: 10px 0;
  padding: 0 0px 25px 80px;
}
.ways-case__title.case04 {
  background-image: url(../img/ways/case04.svg);
  background-size: 53px 117px;
  background-position: 10px 0;
  padding: 10px 0px 34px 80px;
}
@media screen and (min-width: 640px) {
  .ways-case__title.case04 {
    padding: 0px 0px 26px 80px;
  }
}
@media screen and (min-width: 1200px) {
  .ways-case__title.case04 {
    padding: 16px 0px 36px 80px;
  }
}
.ways-case__title.case05 {
  background-image: url(../img/ways/case05.svg);
  background-size: 54px 114px;
  background-position: 10px 0;
  padding: 10px 0px 34px 80px;
}
@media screen and (min-width: 640px) {
  .ways-case__title.case05 {
    padding: 16px 0px 34px 80px;
  }
}
.ways-case__title__icon {
  background-color: var(--cl-base);
  color: #fff;
  font-family: var(--f-zenmaru);
  font-size: 1.3rem;
  border: 2px solid var(--cl-base-k);
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  -o-border-radius: 25px;
  -ms-border-radius: 25px;
  border-radius: 25px;
  line-height: 1;
  padding: 3px 8px 4px;
  font-weight: 900;
  width: auto;
  display: inline-block;
  letter-spacing: normal;
  margin-bottom: 10px;
}
@media screen and (min-width: 640px) {
  .ways-case__title__icon {
    font-size: 1.6rem;
    padding: 4px 10px 6px;
  }
}
.ways-case__title__data {
  font-family: var(--f-zenmaru);
  font-size: 1.7rem;
  font-weight: 800;
  line-height: 1.4;
}
@media screen and (min-width: 640px) {
  .ways-case__title__data {
    font-size: 2.2rem;
    font-weight: 600;
  }
}

.ways-case__box {
  border: 2px solid var(--cl-base-k);
  background-color: var(--cl-base-b);
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  padding: 18px 18px 25px;
}
@media screen and (min-width: 640px) {
  .ways-case__box {
    padding: 24px 30px 30px 30px;
  }
}

.ways-case__summary {
  border-bottom: 3px solid var(--cl-base);
  padding-bottom: 15px;
  font-family: var(--f-zenmaru);
  font-weight: 600;
  margin-bottom: 16px;
}
.ways-case__summary__style {
  display: inline-block;
  background-color: var(--cl-base);
  color: #fff;
  line-height: 1;
  padding: 4px 15px 6px;
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  -o-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  text-align: center;
  letter-spacing: 0;
  margin-bottom: 5px;
}
.ways-case__summary__job {
  font-size: 2rem;
  line-height: 1.4;
}
@media screen and (min-width: 640px) {
  .ways-case__summary__job {
    font-size: 2.2rem;
  }
}
.ways-case__summary__time {
  line-height: 1.4;
  font-size: 1.6rem;
}

.ways-case__box__hope__title {
  color: var(--cl-text-g);
  font-size: 1.6rem;
  font-weight: bold;
  margin-bottom: 10px;
}

.ways-case__box__hope__data {
  background-color: #fff;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  -o-border-radius: 10px;
  -ms-border-radius: 10px;
  border-radius: 10px;
  padding: 20px;
}

.ways-case__box__hope__data__list__item {
  position: relative;
  padding-left: 20px;
  margin-bottom: 5px;
}
.ways-case__box__hope__data__list__item::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 8px;
  left: 0;
  margin: auto;
  width: 9px;
  height: 9px;
  background-color: var(--cl-base);
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}

.ways-about__fukidashi {
  background-color: var(--cl-base-y);
  font-family: var(--f-zenmaru);
  text-align: center;
  display: block;
  line-height: 1;
  padding: 8px 10px 10px;
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  -o-border-radius: 25px;
  -ms-border-radius: 25px;
  border-radius: 25px;
  font-weight: bold;
  font-size: 1.6rem;
  margin: 0 auto 20px;
  width: 240px;
  position: relative;
  letter-spacing: 0;
}
@media screen and (min-width: 640px) {
  .ways-about__fukidashi {
    font-size: 1.8rem;
    padding: 10px 20px 12px;
    width: 260px;
  }
}
@media screen and (min-width: 1200px) {
  .ways-about__fukidashi {
    font-size: 2rem;
    padding: 14px 20px 16px;
    width: 280px;
  }
}
.ways-about__fukidashi::before {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -11px;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 9px solid transparent;
  border-left: 9px solid transparent;
  border-top: 12px solid var(--cl-base-y);
  border-bottom: 0;
}

.ways-about__copy01 {
  font-family: var(--f-zenmaru);
  font-size: 2.2rem;
  font-weight: 600;
  text-align: center;
  color: #fff;
  margin-bottom: 30px;
  padding-left: 0.5em;
}
@media screen and (min-width: 640px) {
  .ways-about__copy01 {
    font-size: 2.4rem;
  }
}
@media screen and (min-width: 1200px) {
  .ways-about__copy01 {
    font-size: 2.8rem;
  }
}

.ways-about__img01 {
  max-width: 200px;
  margin: 0 auto 40px;
}
@media screen and (min-width: 640px) {
  .ways-about__img01 {
    max-width: 260px;
  }
}

.ways-about__lead {
  color: #fff;
  margin-bottom: 40px;
}/*# sourceMappingURL=style.css.map */