@charset "UTF-8";
/* イーストGlobal CSS */
@import url(//use.fontawesome.com/releases/v5.6.1/css/all.css);
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600&family=Oswald:wght@200;300;400&display=swap");
/* リセットCSS */
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset,
legend, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

fieldset, img {
  border: 0; }

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal; }

ol, ul {
  list-style: none; }

caption, th {
  text-align: left; }

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal; }

q:before, q:after {
  content: ""; }

abbr, acronym {
  border: 0;
  font-variant: normal; }

sup {
  vertical-align: text-top; }

sub {
  vertical-align: text-bottom; }

input, textarea, select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  * font-size: 100%;
  -webkit-appearance: none;
  border-radius: 0; }

* {
  box-sizing: border-box; }

html, body {
  height: 100%; }

body {
  font-size: 62.5%;
  line-height: 1.8;
  font-family: 'Noto Sans JP',"Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, "ＭＳ Ｐゴシック",sans-serif;
  color: #231815;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden; }

img {
  width: 100%;
  height: auto; }

a {
  color: #000;
  text-decoration: none; }

@media (max-width: 428px) {
  .pc {
    display: none; } }

.sp {
  display: none; }
  @media (max-width: 428px) {
    .sp {
      display: block; } }

.container_box {
  height: 100%; }
  .container_box.top {
    background: #59d9c7; }
    @media (max-width: 428px) {
      .container_box.top {
        background: none; } }
  .container_box h1 {
    position: absolute;
    top: 6.181vw;
    left: 5.556vw;
    z-index: 20;
    width: 23.61%;
    opacity: 0; }
    @media (max-width: 428px) {
      .container_box h1 {
        display: none; } }
  .container_box .top_white_box {
    display: flex;
    background: #fff;
    position: relative; }
    @media (max-width: 428px) {
      .container_box .top_white_box {
        display: block;
        z-index: 100; } }
    .container_box .top_white_box header {
      position: relative;
      width: 23.62%;
      z-index: 10; }
      @media (max-width: 428px) {
        .container_box .top_white_box header {
          width: 100%; } }
      .container_box .top_white_box header h1 {
        display: none; }
        @media (max-width: 428px) {
          .container_box .top_white_box header h1 {
            opacity: 0;
            display: block;
            position: relative;
            width: 70%;
            top: 0;
            left: 0;
            line-height: 0;
            padding: 2.86vw 0 2.86vw 3.738vw; } }
      .container_box .top_white_box header .sp_menu_box {
        display: none; }
        @media (max-width: 428px) {
          .container_box .top_white_box header .sp_menu_box {
            display: block;
            width: 14.019vw;
            line-height: 0;
            position: fixed;
            z-index: 1000;
            top: 0;
            right: 0; } }
      .container_box .top_white_box header .sp_g_menu_box {
        position: fixed;
        top: -120vh;
        z-index: 1000;
        width: 100%;
        height: 100vh;
        height: 100dvh;
        padding-top: 15vw;
        transition: all 0.3s;
        background: #00c7ab;
        /* Old browsers */
        background: -moz-linear-gradient(top, #00c7ab 0%, #05ccb3 53%, #33aee5 100%);
        /* FF3.6-15 */
        background: -webkit-linear-gradient(top, #00c7ab 0%, #05ccb3 53%, #33aee5 100%);
        /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to bottom, #00c7ab 0%, #05ccb3 53%, #33aee5 100%);
        /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00c7ab', endColorstr='#33aee5',GradientType=0 );
        /* IE6-9 */
        padding-bottom: constant(safe-area-inset-bottom);
        padding-bottom: env(safe-area-inset-bottom);
        overflow: auto; }
        .container_box .top_white_box header .sp_g_menu_box.active {
          top: 0; }
        .container_box .top_white_box header .sp_g_menu_box .inbox {
          max-width: 236px;
          margin: 0 auto; }
          @media (max-width: 236px) {
            .container_box .top_white_box header .sp_g_menu_box .inbox {
              max-width: 90%; } }
          .container_box .top_white_box header .sp_g_menu_box .inbox ul {
            font-size: 1.8em;
            letter-spacing: 0.1em;
            font-weight: 500;
            margin-bottom: 20%;
            -webkit-overflow-scrolling: touch; }
            .container_box .top_white_box header .sp_g_menu_box .inbox ul li {
              margin-bottom: 1.8em; }
              .container_box .top_white_box header .sp_g_menu_box .inbox ul li:last-child {
                margin-bottom: 0; }
              .container_box .top_white_box header .sp_g_menu_box .inbox ul li a {
                position: relative;
                color: #fff; }
                .container_box .top_white_box header .sp_g_menu_box .inbox ul li a:hover:after {
                  transform: scale(1, 1);
                  opacity: 1;
                  width: 25px; }
                .container_box .top_white_box header .sp_g_menu_box .inbox ul li a:after {
                  content: ' ';
                  position: absolute;
                  bottom: -10px;
                  left: 0%;
                  width: 0px;
                  height: 4px;
                  background: #fff;
                  transition: all .3s;
                  opacity: 0; }
                .container_box .top_white_box header .sp_g_menu_box .inbox ul li a.active:after {
                  transform: scale(1, 1);
                  opacity: 1;
                  width: 25px; }
          .container_box .top_white_box header .sp_g_menu_box .inbox .mail_button {
            margin: 5% auto; }
            .container_box .top_white_box header .sp_g_menu_box .inbox .mail_button a {
              width: 100%;
              display: inline-block;
              background: #fff;
              border-radius: 7px;
              padding: 0.5em 3vw;
              text-align: center;
              font-size: 3.963vw;
              font-weight: 500;
              letter-spacing: 0.1em;
              color: #00C7AB;
              transition: all 0.3s; }
              .container_box .top_white_box header .sp_g_menu_box .inbox .mail_button a:hover {
                transform: scale(0.98, 0.98); }
                @media (max-width: 428px) {
                  .container_box .top_white_box header .sp_g_menu_box .inbox .mail_button a:hover {
                    box-shadow: none; } }
              .container_box .top_white_box header .sp_g_menu_box .inbox .mail_button a:before {
                content: url("../images/mail.svg");
                transform: scale(0.8);
                display: inline-block;
                vertical-align: middle;
                margin-right: 2vw; }
          .container_box .top_white_box header .sp_g_menu_box .inbox dl {
            display: flex;
            align-items: baseline;
            font-family: Oswald;
            font-weight: 300;
            margin-bottom: 2%; }
            .container_box .top_white_box header .sp_g_menu_box .inbox dl a {
              color: #fff; }
            .container_box .top_white_box header .sp_g_menu_box .inbox dl dt {
              font-size: 4.439vw;
              margin-right: 3%;
              color: #fff;
              letter-spacing: 0.1em; }
              .container_box .top_white_box header .sp_g_menu_box .inbox dl dt.letter_spacing {
                letter-spacing: 0.07em; }
            .container_box .top_white_box header .sp_g_menu_box .inbox dl dd {
              font-size: 6.3vw;
              letter-spacing: 0.16em;
              font-weight: 300;
              color: #fff; }
          .container_box .top_white_box header .sp_g_menu_box .inbox span.open {
            display: block;
            font-size: 2.8vw;
            letter-spacing: 0.2em;
            color: #fff; }
        .container_box .top_white_box header .sp_g_menu_box .close_icon {
          position: absolute;
          top: 0;
          right: 0;
          width: 14.019vw; }
      .container_box .top_white_box header .g_menu_box {
        margin: 22.014vw 0 0 5.556vw;
        width: 18.056vw; }
        @media (max-width: 428px) {
          .container_box .top_white_box header .g_menu_box {
            display: none; } }
        .container_box .top_white_box header .g_menu_box ul {
          font-size: 1.8em;
          letter-spacing: 0.1em;
          font-weight: 500;
          margin-bottom: 20%; }
          @media (max-width: 768px) {
            .container_box .top_white_box header .g_menu_box ul {
              font-size: 2.083vw; } }
          .container_box .top_white_box header .g_menu_box ul li {
            margin-bottom: 1.8em; }
            .container_box .top_white_box header .g_menu_box ul li:last-child {
              margin-bottom: 0; }
            .container_box .top_white_box header .g_menu_box ul li a {
              position: relative; }
              .container_box .top_white_box header .g_menu_box ul li a:hover:after {
                transform: scale(1, 1);
                opacity: 1;
                width: 25px; }
              .container_box .top_white_box header .g_menu_box ul li a:after {
                content: ' ';
                position: absolute;
                bottom: -10px;
                left: 0%;
                width: 0px;
                height: 4px;
                background: #00C7AB;
                transition: all .3s;
                opacity: 0; }
              .container_box .top_white_box header .g_menu_box ul li a.active:after {
                transform: scale(1, 1);
                opacity: 1;
                width: 25px; }
        .container_box .top_white_box header .g_menu_box dl {
          display: flex;
          align-items: baseline;
          font-family: Oswald;
          font-weight: 300;
          margin-bottom: 2%; }
          .container_box .top_white_box header .g_menu_box dl dt {
            font-size: 1.250vw;
            margin-right: 3%;
            color: #00C7AB;
            letter-spacing: 0.2em; }
            @media (min-width: 1440px) {
              .container_box .top_white_box header .g_menu_box dl dt {
                font-size: 1.8em; } }
            .container_box .top_white_box header .g_menu_box dl dt.letter_spacing {
              letter-spacing: 0.15em; }
          .container_box .top_white_box header .g_menu_box dl dd {
            font-size: 1.597vw;
            letter-spacing: 0.16em;
            font-weight: 300; }
            @media (min-width: 1440px) {
              .container_box .top_white_box header .g_menu_box dl dd {
                font-size: 2.3em; } }
        .container_box .top_white_box header .g_menu_box span.open {
          display: block;
          font-size: 0.833vw;
          letter-spacing: 0.2em;
          color: #777; }
          @media (min-width: 1440px) {
            .container_box .top_white_box header .g_menu_box span.open {
              font-size: 1.2em; } }
    .container_box .top_white_box .top_main_box {
      width: 76.38%;
      z-index: 1;
      line-height: 0;
      position: relative; }
      @media (max-width: 1200px) {
        .container_box .top_white_box .top_main_box {
          height: 88.889vw; } }
      @media (max-width: 428px) {
        .container_box .top_white_box .top_main_box {
          width: 100%;
          height: 105.140vw; } }
      .container_box .top_white_box .top_main_box h2 {
        opacity: 0;
        width: 16.250vw;
        position: absolute;
        top: 3.444vw;
        right: 4.444vw;
        z-index: 100; }
        @media (max-width: 428px) {
          .container_box .top_white_box .top_main_box h2 {
            top: 6.542vw;
            width: 31.542vw; } }
      .container_box .top_white_box .top_main_box strong {
        opacity: 0;
        width: 6.3vw;
        display: block;
        position: absolute;
        top: 11.667vw;
        right: 6.528vw;
        z-index: 100; }
        @media (max-width: 428px) {
          .container_box .top_white_box .top_main_box strong {
            width: 11.5vw;
            top: 17.056vw;
            right: 4.444vw; } }
      .container_box .top_white_box .top_main_box .recruit_box {
        width: 26.944vw;
        position: absolute;
        top: 58vw;
        right: -53.889vw;
        z-index: 100; }
        @media (max-width: 428px) {
          .container_box .top_white_box .top_main_box .recruit_box {
            width: 71.963vw;
            top: auto;
            right: -71.963vw;
            bottom: -10.280vw; } }
        .container_box .top_white_box .top_main_box .recruit_box a img {
          transition: all 0.3s;
          transform: scale(1, 1);
          transform-origin: 100% center; }
          .container_box .top_white_box .top_main_box .recruit_box a img:hover {
            transform: scale(1.1, 1.1); }
      .container_box .top_white_box .top_main_box .main_photo_box {
        opacity: 0; }
        .container_box .top_white_box .top_main_box .main_photo_box img {
          object-fit: cover;
          object-position: 50% 0%;
          z-index: -1; }
          @media (max-width: 1200px) {
            .container_box .top_white_box .top_main_box .main_photo_box img {
              height: 95vw; } }
          @media (max-width: 428px) {
            .container_box .top_white_box .top_main_box .main_photo_box img {
              height: 105.140vw;
              object-position: 50% 70%; } }
  .container_box .right_box {
    width: 76.38%;
    z-index: 1;
    position: relative; }
    @media (max-width: 428px) {
      .container_box .right_box {
        width: 100%; } }
    @media (max-width: 428px) {
      .container_box .right_box .header_title {
        margin-bottom: 15%; } }
    .container_box .right_box .header_title dl {
      position: relative; }
      .container_box .right_box .header_title dl dt {
        width: 100%;
        position: absolute;
        bottom: -10%;
        left: 0;
        z-index: 10; }
        @media (max-width: 428px) {
          .container_box .right_box .header_title dl dt {
            bottom: -20%; } }
        .container_box .right_box .header_title dl dt:after {
          display: block;
          content: '　';
          height: 8.889vw;
          background: url("../images/second_header_bg.png") no-repeat center bottom;
          background-size: 100% auto; }
          @media (max-width: 428px) {
            .container_box .right_box .header_title dl dt:after {
              height: 15.888vw;
              background-size: 130% auto;
              background-position: -10px bottom; } }
        .container_box .right_box .header_title dl dt h2 {
          position: absolute;
          left: 8%;
          bottom: 10%;
          font-size: 1.667vw;
          letter-spacing: 0.2em;
          color: #fff;
          font-weight: 600; }
          @media (max-width: 1440px) {
            .container_box .right_box .header_title dl dt h2 {
              font-weight: 600;
              font-size: 2.4em; } }
          @media (max-width: 428px) {
            .container_box .right_box .header_title dl dt h2 {
              font-size: 1.8em; } }
        .container_box .right_box .header_title dl dt p {
          position: absolute;
          right: 7.27%;
          bottom: 10%;
          font-size: 1.4em;
          letter-spacing: 0.1em;
          color: #fff;
          width: 155px;
          text-align: right; }
          @media (max-width: 428px) {
            .container_box .right_box .header_title dl dt p {
              font-size: 1.2em; } }
          .container_box .right_box .header_title dl dt p span a {
            color: #fff;
            text-decoration: underline; }
          .container_box .right_box .header_title dl dt p i {
            display: inline-block;
            margin: auto 10px;
            width: 7.8px;
            vertical-align: middle; }
      .container_box .right_box .header_title dl dd {
        opacity: 0; }
        .container_box .right_box .header_title dl dd img {
          display: block;
          z-index: -1; }
    .container_box .right_box .contents_box {
      width: 85.45%;
      margin: 10% auto 10% 8%;
      line-height: 2; }
      .container_box .right_box .contents_box.recruit {
        margin: 0 auto 10% 8%; }
      .container_box .right_box .contents_box h3 {
        font-size: 1.389vw;
        color: #00C7AB;
        letter-spacing: 0.2em;
        position: relative;
        margin-bottom: 5%;
        font-weight: 600; }
        @media (max-width: 1440px) {
          .container_box .right_box .contents_box h3 {
            font-size: 2em;
            font-weight: 600; } }
        @media (max-width: 428px) {
          .container_box .right_box .contents_box h3 {
            font-size: 1.8em;
            margin-bottom: 12%; } }
        .container_box .right_box .contents_box h3:after {
          display: block;
          content: '　';
          position: absolute;
          bottom: -10px;
          left: 0;
          width: 25px;
          height: 4px;
          background: #00C7AB; }
      .container_box .right_box .contents_box h4 {
        font-size: 1.6em;
        font-weight: 600; }
      .container_box .right_box .contents_box p {
        font-size: 1.6em; }
        .container_box .right_box .contents_box p.wide01 {
          max-width: 1000px; }
      .container_box .right_box .contents_box .ceo_name {
        text-align: right;
        margin: 2em 0 10%; }
        @media (max-width: 428px) {
          .container_box .right_box .contents_box .ceo_name {
            margin-bottom: 20%; } }
        .container_box .right_box .contents_box .ceo_name img {
          max-width: 260px; }
          @media (max-width: 428px) {
            .container_box .right_box .contents_box .ceo_name img {
              max-width: 190px; } }
      .container_box .right_box .contents_box .table_box {
        margin-bottom: 10%;
        font-size: 1.6em; }
        @media (max-width: 428px) {
          .container_box .right_box .contents_box .table_box {
            margin-bottom: 20%; } }
        .container_box .right_box .contents_box .table_box dl {
          margin-bottom: 3px;
          display: flex;
          box-sizing: border-box; }
          @media (max-width: 428px) {
            .container_box .right_box .contents_box .table_box dl {
              display: block;
              margin-bottom: 1em;
              padding-bottom: 1em;
              border-bottom: 2px solid #ddd;
              position: relative; }
              .container_box .right_box .contents_box .table_box dl:after {
                content: '　';
                display: block;
                position: absolute;
                bottom: -2px;
                background: #00C7AB;
                height: 2px;
                width: 62px; } }
          .container_box .right_box .contents_box .table_box dl dt {
            background: rgba(0, 0, 0, 0.03);
            font-weight: 600;
            width: 200px;
            padding: 1% 2%; }
            @media (max-width: 428px) {
              .container_box .right_box .contents_box .table_box dl dt {
                width: 100%;
                padding: 0;
                background: none; } }
          .container_box .right_box .contents_box .table_box dl dd {
            width: 80%;
            padding: 1% 2% 1% 3%; }
            @media (max-width: 428px) {
              .container_box .right_box .contents_box .table_box dl dd {
                width: 100%;
                padding: 0; } }
            .container_box .right_box .contents_box .table_box dl dd p {
              font-size: 1em; }
              .container_box .right_box .contents_box .table_box dl dd p strong {
                font-weight: 600; }
              .container_box .right_box .contents_box .table_box dl dd p.table {
                display: flex;
                line-height: 1.6;
                margin-bottom: 0.5em; }
                @media (max-width: 428px) {
                  .container_box .right_box .contents_box .table_box dl dd p.table {
                    display: block; } }
                .container_box .right_box .contents_box .table_box dl dd p.table strong {
                  width: 185px;
                  display: block; }
                .container_box .right_box .contents_box .table_box dl dd p.table span {
                  width: 100%;
                  display: block;
                  text-indent: -1.5em;
                  padding-left: 1.5em; }
      .container_box .right_box .contents_box a.mail {
        color: #00C7AB;
        text-decoration: underline; }
        .container_box .right_box .contents_box a.mail:hover {
          text-decoration: none; }
        .container_box .right_box .contents_box a.mail:after {
          content: '　';
          display: inline-block;
          width: 19.5px;
          background: url("../../company/mail_icon.png") no-repeat center center;
          background-size: 100% auto;
          margin-left: 0.5em; }
      @media (max-width: 428px) {
        .container_box .right_box .contents_box p.border01 {
          display: block;
          margin-bottom: 1em;
          padding-bottom: 1em;
          border-bottom: 2px solid #ddd;
          position: relative; }
          .container_box .right_box .contents_box p.border01:after {
            content: '　';
            display: block;
            position: absolute;
            bottom: -2px;
            background: #00C7AB;
            height: 2px;
            width: 62px; } }
      .container_box .right_box .contents_box p.margin01 {
        margin-bottom: 5%; }
      .container_box .right_box .contents_box p.margin02 {
        margin-bottom: 2%; }
      .container_box .right_box .contents_box p.letter_spacing01 {
        letter-spacing: 0.1em; }
      .container_box .right_box .contents_box .red {
        color: #F87300;
        font-size: 80%; }
      .container_box .right_box .contents_box .works_box {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        margin-bottom: 2%; }
        @media (max-width: 428px) {
          .container_box .right_box .contents_box .works_box {
            display: block;
            margin-bottom: 10%; } }
        .container_box .right_box .contents_box .works_box li {
          width: 46.99%;
          margin-bottom: 8%; }
          @media (max-width: 428px) {
            .container_box .right_box .contents_box .works_box li {
              width: 100%;
              margin-bottom: 5%; } }
      .container_box .right_box .contents_box .note {
        font-size: 1.4em;
        text-align: right;
        margin-left: auto; }
        @media (max-width: 428px) {
          .container_box .right_box .contents_box .note {
            text-align: left;
            margin-bottom: 2em; } }
      .container_box .right_box .contents_box .confirm_text {
        border-bottom: 1px solid #ddd;
        padding-bottom: 1.5em;
        margin-bottom: 1.5em; }
      .container_box .right_box .contents_box .submit_text {
        text-align: center;
        margin-bottom: 2em; }
        @media (max-width: 428px) {
          .container_box .right_box .contents_box .submit_text {
            text-align: left; } }
        .container_box .right_box .contents_box .submit_text strong {
          font-weight: 500;
          font-size: 1.8em;
          line-height: 1.6;
          display: block;
          margin-bottom: 0.5em;
          text-align: center; }
          .container_box .right_box .contents_box .submit_text strong i {
            display: block;
            margin-bottom: 0.5em; }
      .container_box .right_box .contents_box .small_text {
        text-align: center;
        font-size: 1.2em;
        margin-bottom: 2em; }
        @media (max-width: 428px) {
          .container_box .right_box .contents_box .small_text {
            text-align: left; } }
      .container_box .right_box .contents_box ul.error_list {
        font-size: 1.6em;
        margin: 5% auto;
        border: 2px solid #ED800C;
        background: rgba(237, 128, 12, 0.1);
        padding: 2em;
        border-radius: 5px; }
        @media (max-width: 428px) {
          .container_box .right_box .contents_box ul.error_list {
            font-size: 1.4em;
            padding: 1em 2em; } }
        .container_box .right_box .contents_box ul.error_list li {
          list-style: disc;
          padding-left: 0;
          margin-left: 3%;
          margin-bottom: 1.5%; }
          .container_box .right_box .contents_box ul.error_list li:last-child {
            margin-bottom: 0; }
      .container_box .right_box .contents_box .form_box .table_box {
        margin-bottom: 0;
        /* ○ */
        /* ✓ */
        /* ✓ */
        /* チェックが入ったとき */
        /* □ */
        /* ✓ */ }
        .container_box .right_box .contents_box .form_box .table_box dl.radio_box {
          display: block;
          border-bottom: 1px solid #ddd;
          padding-bottom: 1.5em;
          margin-bottom: 1.5em; }
          .container_box .right_box .contents_box .form_box .table_box dl.radio_box dt {
            background: none;
            width: 100%;
            padding: 0;
            margin-bottom: 0.5em; }
          .container_box .right_box .contents_box .form_box .table_box dl.radio_box dd {
            padding: 0; }
        .container_box .right_box .contents_box .form_box .table_box input, .container_box .right_box .contents_box .form_box .table_box textarea {
          border: 2px solid #BABABA;
          width: 100%;
          padding: 0.5em; }
        .container_box .right_box .contents_box .form_box .table_box dl.radio_box dd {
          width: 100%;
          display: flex;
          justify-content: flex-start; }
        .container_box .right_box .contents_box .form_box .table_box .radio_box label {
          margin-right: 5%; }
        .container_box .right_box .contents_box .form_box .table_box .radio_box label + label {
          margin-right: 0; }
        .container_box .right_box .contents_box .form_box .table_box .radio_box input[type="radio"] {
          display: none; }
        .container_box .right_box .contents_box .form_box .table_box .radio_box label {
          position: relative;
          display: flex;
          align-items: center; }
        .container_box .right_box .contents_box .form_box .table_box .radio_box label:hover {
          cursor: pointer; }
        .container_box .right_box .contents_box .form_box .table_box .radio_box em.checkmark {
          width: 22px;
          height: 22px;
          background: #fff;
          border: 2px solid #C7C7C7;
          border-radius: 50%;
          box-sizing: border-box;
          position: relative;
          margin-right: 0.5em; }
        .container_box .right_box .contents_box .form_box .table_box .radio_box em.checkmark:after {
          position: absolute;
          z-index: 1;
          top: 0;
          bottom: 0;
          left: 0;
          right: 0;
          margin: auto;
          width: 1rem;
          height: 1rem;
          content: '';
          -webkit-transition: -webkit-transform 0.3s;
          transition: transform 0.3s;
          -webkit-transform: scale(0, 0);
          transform: scale(0, 0);
          border-radius: 50%;
          background: #fff; }
        .container_box .right_box .contents_box .form_box .table_box .radio_box input:checked + .checkmark {
          background: #19A4FC;
          border: 2px solid #19A4FC; }
        .container_box .right_box .contents_box .form_box .table_box .radio_box input:checked + .checkmark:after {
          -webkit-transform: scale(0.6, 0.6);
          transform: scale(0.6, 0.6); }
      .container_box .right_box .contents_box .form_box .submit_box {
        border-top: 1px solid #ddd;
        padding-top: 3em;
        padding-left: 27%;
        margin-top: 3em; }
        @media (max-width: 768px) {
          .container_box .right_box .contents_box .form_box .submit_box {
            padding-left: 0; } }
        @media (max-width: 428px) {
          .container_box .right_box .contents_box .form_box .submit_box {
            border-top: none;
            padding-top: 0;
            margin-top: 0;
            margin-bottom: 30vw;
            text-align: center; } }
        .container_box .right_box .contents_box .form_box .submit_box.confirm {
          padding-left: 0; }
        .container_box .right_box .contents_box .form_box .submit_box input {
          display: inline-block;
          border: none;
          background: transparent;
          background: #ddd;
          font-size: 2em;
          padding: 1em;
          border-radius: 10px;
          font-weight: 600;
          transition: background-color 0.2s; }
          @media (max-width: 428px) {
            .container_box .right_box .contents_box .form_box .submit_box input {
              font-size: 3vw; } }
          .container_box .right_box .contents_box .form_box .submit_box input:hover {
            background: #eee;
            cursor: pointer; }
          .container_box .right_box .contents_box .form_box .submit_box input[type="submit"] {
            background: url("../images/mail_active.svg") 20px center no-repeat, #00C7AB;
            color: #fff;
            margin-right: 7%;
            margin-bottom: 1.5em;
            padding-left: 2.5em; }
            @media (max-width: 428px) {
              .container_box .right_box .contents_box .form_box .submit_box input[type="submit"] {
                width: 100%;
                background: url("../images/mail_active.svg") 12vw center no-repeat, #00C7AB;
                background-size: auto 20%;
                padding-left: 15%;
                margin-bottom: 1.5em;
                font-size: 5vw; } }
            .container_box .right_box .contents_box .form_box .submit_box input[type="submit"]:hover {
              background: url("../images/mail_active.svg") 20px center no-repeat, #04D6B9; }
              @media (max-width: 428px) {
                .container_box .right_box .contents_box .form_box .submit_box input[type="submit"]:hover {
                  background: url("../images/mail_active.svg") 12vw center no-repeat, #04D6B9;
                  background-size: auto 20%; } }
            .container_box .right_box .contents_box .form_box .submit_box input[type="submit"].btn_back {
              background: #fff;
              color: #000;
              font-weight: 500;
              padding-left: 1em; }
              .container_box .right_box .contents_box .form_box .submit_box input[type="submit"].btn_back:hover {
                background: #eee; }
              @media (max-width: 428px) {
                .container_box .right_box .contents_box .form_box .submit_box input[type="submit"].btn_back {
                  width: auto;
                  margin-right: 0; } }
    .container_box .right_box .recruit_address {
      width: 85.45%;
      margin: 10% auto 5%;
      background: url("../../recruit/recruit_bg.png") no-repeat right bottom;
      background-size: 41.319vw auto;
      height: 18.611vw;
      position: relative; }
      @media (max-width: 428px) {
        .container_box .right_box .recruit_address {
          width: 100%;
          background: url("../../recruit/recruit_bg_sp.png") no-repeat center bottom;
          background-size: cover;
          height: 67.565vw; } }
      .container_box .right_box .recruit_address p {
        padding-top: 12%;
        margin-bottom: 2%;
        font-size: 1.111vw; }
        @media (max-width: 428px) {
          .container_box .right_box .recruit_address p {
            position: absolute;
            right: 8%;
            top: 8%;
            font-size: 2.804vw;
            padding-top: 0;
            margin-bottom: 0; } }
      .container_box .right_box .recruit_address ul {
        display: flex;
        align-items: center; }
        @media (max-width: 428px) {
          .container_box .right_box .recruit_address ul {
            display: block;
            width: 90%;
            margin: 0 auto; } }
        .container_box .right_box .recruit_address ul li {
          width: 40%; }
          .container_box .right_box .recruit_address ul li:last-child {
            width: 60%; }
            @media (max-width: 428px) {
              .container_box .right_box .recruit_address ul li:last-child {
                width: 100%;
                background: #fff;
                padding: 0.75em 0;
                border-radius: 0 0 7px 7px; } }
          @media (max-width: 428px) {
            .container_box .right_box .recruit_address ul li {
              width: 100%; } }
          @media (max-width: 428px) {
            .container_box .right_box .recruit_address ul li .mail_button {
              text-align: center;
              padding-top: 25.467vw; } }
          .container_box .right_box .recruit_address ul li .mail_button a {
            display: inline-block;
            background: #00C7AB;
            border-radius: 7px;
            padding: 0.75em 1.5em;
            text-align: center;
            font-size: 1.6vw;
            font-weight: 500;
            letter-spacing: 0.12vw;
            color: #fff;
            transition: all 0.3s; }
            .container_box .right_box .recruit_address ul li .mail_button a:before {
              content: '　';
              width: 1.786vw;
              display: inline-block;
              background: url("../images/mail_active.svg") no-repeat center center;
              background-size: 1.786vw auto;
              margin-right: 0.75em; }
              @media (max-width: 428px) {
                .container_box .right_box .recruit_address ul li .mail_button a:before {
                  width: 4.556vw;
                  background-size: 4.556vw auto; } }
            .container_box .right_box .recruit_address ul li .mail_button a:hover {
              transform: scale(0.98, 0.98); }
            @media (max-width: 428px) {
              .container_box .right_box .recruit_address ul li .mail_button a {
                font-size: 4.206vw;
                width: 100%;
                border-radius: 7px 7px 0 0; }
                .container_box .right_box .recruit_address ul li .mail_button a:hover {
                  transform: none;
                  background: #04D6B9; } }
          .container_box .right_box .recruit_address ul li dl {
            display: flex;
            font-family: Oswald;
            font-weight: 300;
            letter-spacing: 0.3vw;
            align-items: baseline; }
            @media (max-width: 428px) {
              .container_box .right_box .recruit_address ul li dl {
                justify-content: center;
                letter-spacing: 0.5vw;
                line-height: 1.6; } }
            .container_box .right_box .recruit_address ul li dl dt {
              color: #00C7AB;
              font-size: 1.250vw;
              margin-right: 0.75vw; }
              @media (max-width: 428px) {
                .container_box .right_box .recruit_address ul li dl dt {
                  font-size: 4.206vw;
                  margin-right: 2vw; } }
            .container_box .right_box .recruit_address ul li dl dd {
              font-size: 1.944vw; }
              @media (max-width: 428px) {
                .container_box .right_box .recruit_address ul li dl dd {
                  font-size: 6.542vw; } }
          .container_box .right_box .recruit_address ul li span {
            display: block;
            padding-left: 3vw;
            font-size: 0.833vw;
            letter-spacing: 0.09vw;
            color: #777; }
            @media (max-width: 428px) {
              .container_box .right_box .recruit_address ul li span {
                text-align: center;
                padding-left: 8vw;
                font-size: 2.804vw;
                letter-spacing: 0.2vw; } }
  @media (max-width: 428px) {
    .container_box footer {
      background: url("../images/footer.png") no-repeat center -50%;
      background-size: 100% auto; } }
  .container_box footer.second {
    background: url("../images/footer.png") no-repeat;
    background-size: 100% auto; }
    .container_box footer.second .text_box {
      max-width: 76.38%;
      margin: 0 auto;
      padding: 10% 0 3%;
      color: #fff;
      display: flex;
      justify-content: space-between; }
      @media (max-width: 1110px) {
        .container_box footer.second .text_box {
          max-width: 90%; } }
      @media (min-width: 1700px) {
        .container_box footer.second .text_box {
          max-width: 61%;
          margin: 0 8% 0 auto; } }
      @media (max-width: 428px) {
        .container_box footer.second .text_box {
          max-width: 100%;
          padding: 15% 0 5vw; } }
      .container_box footer.second .text_box .g_menu_box {
        width: 70%;
        font-weight: 500; }
        @media (max-width: 428px) {
          .container_box footer.second .text_box .g_menu_box {
            width: 100%; } }
        .container_box footer.second .text_box .g_menu_box ul {
          font-size: 1.8em;
          display: flex;
          flex-wrap: wrap;
          margin-bottom: 7%; }
          @media (max-width: 428px) {
            .container_box footer.second .text_box .g_menu_box ul {
              display: none; } }
          .container_box footer.second .text_box .g_menu_box ul li {
            margin-right: 5%;
            white-space: nowrap; }
            .container_box footer.second .text_box .g_menu_box ul li a {
              color: #fff; }
              .container_box footer.second .text_box .g_menu_box ul li a:before {
                content: '　';
                background: url("../images/arrow02.png") no-repeat left center;
                background-size: 90% auto;
                width: 17px;
                margin-right: 10%;
                transition: background 0.3s; }
              .container_box footer.second .text_box .g_menu_box ul li a:hover:before {
                background: url("../images/arrow02.png") no-repeat 4px center;
                background-size: 90% auto; }
        @media (max-width: 428px) {
          .container_box footer.second .text_box .g_menu_box .copyright {
            display: block;
            text-align: center;
            bottom: 5vw;
            font-size: 1.2em;
            letter-spacing: 0.1em; } }
      .container_box footer.second .text_box .address_box {
        max-width: 260px; }
        @media (max-width: 428px) {
          .container_box footer.second .text_box .address_box {
            display: none; } }
        .container_box footer.second .text_box .address_box dl {
          border-bottom: none; }
          .container_box footer.second .text_box .address_box dl dt {
            width: 100%;
            margin-bottom: 0.5em; }
  .container_box footer.top {
    position: relative;
    margin-top: -8vw;
    height: 46vw;
    background: url("../images/footer.png") no-repeat;
    background-size: cover;
    z-index: 20;
    letter-spacing: 0.1em; }
    @media (min-width: 1440px) {
      .container_box footer.top {
        background-size: 100% auto; } }
    @media (min-width: 429px) and (max-width: 768px) {
      .container_box footer.top {
        height: 65vw;
        height: 65dvw; } }
    @media (min-width: 769px) and (max-width: 1180px) {
      .container_box footer.top {
        height: 65vw;
        height: 65dvw; } }
    @media (max-width: 428px) {
      .container_box footer.top {
        background: none; } }
    .container_box footer.top .text_box {
      display: flex;
      justify-content: space-between;
      width: 70.764vw;
      position: absolute;
      right: 5.556vw;
      top: 12vw;
      margin: auto; }
      @media (max-width: 1100px) {
        .container_box footer.top .text_box {
          width: 90%;
          margin: auto;
          left: 0;
          right: 0; } }
      @media (max-width: 428px) {
        .container_box footer.top .text_box {
          display: block;
          position: relative;
          width: 84.813vw;
          top: auto;
          right: auto;
          margin: 28vw auto 0; } }
    .container_box footer.top .bg {
      display: none; }
      @media (max-width: 428px) {
        .container_box footer.top .bg {
          display: block;
          position: relative;
          bottom: 0;
          width: 100%;
          margin-top: 40vw; } }
      .container_box footer.top .bg img {
        position: absolute;
        bottom: 0;
        height: 25.069vw;
        object-fit: cover;
        object-position: 0 0; }
  .container_box footer .copyright {
    font-size: 1.3em;
    font-family: Arial, Helvetica, "sans-serif";
    color: #fff;
    letter-spacing: 0.1em; }
    @media (max-width: 428px) {
      .container_box footer .copyright.sp {
        display: block;
        position: absolute;
        bottom: 5vw;
        font-size: 1.2em;
        text-align: center;
        width: 100%;
        z-index: 1; } }
  .container_box .address_box {
    width: 47%; }
    @media (max-width: 428px) {
      .container_box .address_box {
        width: 100%; } }
    .container_box .address_box.company {
      margin-top: 10%; }
      @media (max-width: 428px) {
        .container_box .address_box.company dl {
          display: block;
          margin-bottom: 5em;
          padding-bottom: 2em;
          border-bottom: 2px solid #ddd;
          position: relative; }
          .container_box .address_box.company dl:after {
            content: '　';
            display: block;
            position: absolute;
            bottom: -2px;
            background: #00C7AB;
            height: 2px;
            width: 62px; } }
      .container_box .address_box.company dl dt {
        font-size: 1.6em; }
      .container_box .address_box.company dl dd.small {
        font-size: 1.3em; }
    .container_box .address_box dl {
      border-bottom: 1px solid rgba(0, 0, 0, 0.2);
      margin-bottom: 2em;
      padding-bottom: 2em; }
      @media (max-width: 428px) {
        .container_box .address_box dl {
          margin-bottom: 3em;
          padding-bottom: 3em; } }
      .container_box .address_box dl.noborder {
        border-bottom: none; }
        @media (max-width: 428px) {
          .container_box .address_box dl.noborder {
            border-bottom: 1px solid rgba(0, 0, 0, 0.2); } }
      .container_box .address_box dl dt {
        font-weight: 500;
        font-size: 1.8em;
        margin-bottom: 0.5em; }
        @media (min-width: 429px) and (max-width: 768px) {
          .container_box .address_box dl dt {
            font-size: 2.083vw; } }
      .container_box .address_box dl dd {
        font-size: 1.6em; }
        @media (min-width: 429px) and (max-width: 768px) {
          .container_box .address_box dl dd {
            font-size: 1.823vw; } }
        .container_box .address_box dl dd.small {
          font-size: 1.3em; }
        .container_box .address_box dl dd .mail_button {
          margin: 1.5em auto 10%; }
          @media (max-width: 428px) {
            .container_box .address_box dl dd .mail_button {
              margin: 5% auto; } }
          .container_box .address_box dl dd .mail_button a {
            display: inline-block;
            background: #fff;
            border-radius: 7px;
            padding: 0.5em 2em;
            text-align: center;
            font-size: 1.6vw;
            font-weight: 500;
            letter-spacing: 0.12em;
            color: #00C7AB;
            transition: all 0.3s;
            box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.16); }
            @media (min-width: 1440px) {
              .container_box .address_box dl dd .mail_button a {
                font-size: 1.6em; } }
            @media (max-width: 428px) {
              .container_box .address_box dl dd .mail_button a {
                display: block;
                font-size: 4.959vw;
                color: #fff;
                background: #00C7AB;
                box-shadow: none; } }
            .container_box .address_box dl dd .mail_button a:hover {
              transform: scale(0.98, 0.98);
              box-shadow: 7px 7px 15px rgba(0, 0, 0, 0.2); }
              @media (max-width: 428px) {
                .container_box .address_box dl dd .mail_button a:hover {
                  box-shadow: none; } }
            .container_box .address_box dl dd .mail_button a:before {
              content: url("../images/mail.svg");
              margin-right: 0.75em; }
              @media (max-width: 428px) {
                .container_box .address_box dl dd .mail_button a:before {
                  content: url("../images/mail_active.svg"); } }
  .container_box .tel_box {
    letter-spacing: 0.3vw; }
    .container_box .tel_box ul {
      display: flex;
      justify-content: space-between;
      margin-bottom: 2%; }
      .container_box .tel_box ul li {
        font-family: Oswald;
        font-weight: 300;
        font-size: 5.510vw; }
        .container_box .tel_box ul li span {
          color: #00C7AB;
          font-size: 4.408vw;
          margin-right: 0.75vw; }
    .container_box .tel_box .open {
      display: block;
      text-align: center; }
  .container_box .map_box {
    width: 47%; }
    .container_box .map_box.company {
      width: 90%; }
      @media (min-width: 1440px) {
        .container_box .map_box.company {
          max-width: 1000px; } }
      @media (max-width: 428px) {
        .container_box .map_box.company {
          width: 100%; } }
    @media (min-width: 1440px) {
      .container_box .map_box {
        max-width: 600px; } }
    @media (max-width: 428px) {
      .container_box .map_box {
        width: 100%; } }
    .container_box .map_box .gmap {
      position: relative;
      width: 100%;
      height: 0;
      padding-bottom: 74.89%;
      overflow: hidden;
      border: 10px solid #fff;
      margin-bottom: 4%;
      box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.16); }
      @media (max-width: 428px) {
        .container_box .map_box .gmap {
          border: 7px solid #fff; } }
      .container_box .map_box .gmap iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; }
    .container_box .map_box .zoom_icon {
      text-align: right;
      font-size: 1.4em; }
      .container_box .map_box .zoom_icon:before {
        display: inline-block;
        content: '　';
        background: url("../images/zoom.svg") no-repeat center center;
        background-size: 100% auto;
        margin-right: 0.75em;
        padding: 0 0.1em; }
      .container_box .map_box .zoom_icon a {
        text-decoration: underline; }
        .container_box .map_box .zoom_icon a:hover {
          text-decoration: none; }
