@charset "UTF-8";
/* Scss Document */
/* Device Width */
/* font family */
/* font-size */
@import url("https://fonts.googleapis.com/css2?family=Maven+Pro:wght@400;500&family=Noto+Sans+JP:wght@400;500;700&family=Noto+Serif+JP:wght@400;500;600&display=swap");
body, div, p, h1, h2, h3, h4, h5, h6, ul, ol, li, dl, dt, dd, figure {
  margin: 0;
  padding: 0; }

body {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.75;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }
  @media only, screen and (max-width: 820px) {
    body {
      padding-top: 14.0625vw; } }
  @media only, screen and (max-width: 736px) {
    body {
      padding-top: 16.5625vw;
      font-size: 14px; } }

@media print {
  body {
    width: 1000px; }

  a[href]:after {
    content: "" !important; } }
img {
  width: 100%;
  height: auto; }

a {
  outline: none; }

.pcItem {
  display: block; }
  @media only, screen and (max-width: 820px) {
    .pcItem {
      display: none; } }

.spItem {
  display: none; }
  @media only, screen and (max-width: 820px) {
    .spItem {
      display: block; } }

.clearfix:after {
  content: "";
  clear: both;
  display: block; }

.flex-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

header {
  padding: 50px 0;
  background-color: #fff; }
  @media only, screen and (max-width: 820px) {
    header {
      width: 100%;
      height: 7.8125vw;
      padding: 3.125vw 0;
      position: fixed;
      top: 0;
      z-index: 999; } }
  @media only, screen and (max-width: 736px) {
    header {
      height: 10.3125vw;
      padding: 3.125vw 0; } }
  header .flex-box {
    width: 980px;
    margin: 0 auto;
    justify-content: space-between;
    align-items: center;
    position: relative; }
    @media only, screen and (max-width: 820px) {
      header .flex-box {
        width: 100%;
        display: block;
        padding-bottom: 40px; } }
  header .contact-btn {
    display: flex;
    justify-content: flex-end;
    margin: auto;
    color: #fff;
    position: absolute;
    top: -50px;
    right: 0; }
    @media only, screen and (max-width: 820px) {
      header .contact-btn {
        display: block;
        top: inherit;
        left: 0;
        bottom: -50px;
        opacity: 0;
        z-index: -1; } }
    header .contact-btn a {
      display: block;
      width: 180px;
      margin: 0;
      padding: 9px 0 13px;
      text-align: center;
      color: #fff;
      text-decoration: none;
      -webkit-transition: all 0.3s;
      transition: all 0.3s;
      background-color: #0055a8; }
      @media only, screen and (max-width: 820px) {
        header .contact-btn a {
          margin: 0 auto; } }
      header .contact-btn a:hover {
        background-color: #333; }
      header .contact-btn a span {
        padding-left: 1.5em;
        position: relative; }
        header .contact-btn a span:before {
          content: "";
          display: block;
          width: 16px;
          height: 13px;
          margin: auto;
          background: url("../img/icn_contact.png") center center/100% auto no-repeat;
          position: absolute;
          left: 0;
          top: 0;
          bottom: 0; }
      header .contact-btn a.plan {
        margin: 0 0 0 10px;
        background-color: #999; }
        @media only, screen and (max-width: 820px) {
          header .contact-btn a.plan {
            margin: 10px auto 0; } }
        header .contact-btn a.plan span {
          padding-left: 0; }
          header .contact-btn a.plan span:before {
            content: none; }
        header .contact-btn a.plan:hover {
          background-color: #333; }
  header h1 {
    width: 230px;
    margin: 0; }
    @media only, screen and (max-width: 820px) {
      header h1 {
        width: 31.25vw;
        margin: 0 auto; } }
    @media only, screen and (max-width: 736px) {
      header h1 {
        padding-top: 5px; } }
  @media only, screen and (max-width: 820px) {
    header nav {
      display: none;
      width: 100%;
      text-align: center;
      position: relative;
      -webkit-transition: all 0.3s;
      transition: all 0.3s; } }
  header nav .flex-box {
    width: inherit; }
    @media only, screen and (max-width: 820px) {
      header nav .flex-box {
        display: block; } }
  header nav li {
    margin: 0 0 0 44px;
    list-style: none; }
    @media only, screen and (max-width: 820px) {
      header nav li {
        margin: 0; } }
    header nav li:first-of-type {
      margin: 0; }
    header nav li a {
      font-weight: 500;
      color: #000;
      text-decoration: none;
      -webkit-transition: all 0.3s;
      transition: all 0.3s; }
      header nav li a:hover {
        color: #0055a8; }
      @media only, screen and (max-width: 820px) {
        header nav li a {
          display: block;
          padding: 15px 0; } }
  header .drawer {
    display: none; }
    @media only, screen and (max-width: 820px) {
      header .drawer {
        display: inline-block;
        width: 66px;
        height: 66px;
        cursor: pointer;
        position: absolute;
        top: 0;
        right: 0;
        -webkit-tap-highlight-color: transparent; } }
    @media only, screen and (max-width: 736px) {
      header .drawer {
        top: -15px; } }
    header .drawer div {
      height: 17px;
      margin: auto;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0; }
      header .drawer div span {
        position: absolute;
        height: 2px;
        width: 22px;
        margin: auto;
        background: #0055a8;
        left: 0;
        right: 0;
        -webkit-transition: 0.35s ease-in-out;
        transition: 0.35s ease-in-out; }
  header .drawer span:nth-child(1) {
    top: 0; }
  header .drawer span:nth-child(2) {
    top: 7px; }
    @media only, screen and (max-device-width: 320px) and (orientation: portrait) {
      header .drawer span:nth-child(2) {
        top: 7px; } }
  header .drawer span:nth-child(3) {
    top: 14px; }
    @media only, screen and (max-device-width: 320px) and (orientation: portrait) {
      header .drawer span:nth-child(3) {
        top: 14px; } }

.open .drawer span:nth-child(1) {
  top: 7px;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg); }

.open .drawer span:nth-child(2) {
  width: 0;
  left: 50%; }

.open .drawer span:nth-child(3) {
  top: 7px;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg); }

#drawer-bg {
  position: fixed;
  top: 0;
  opacity: 0;
  z-index: -100;
  -webkit-transition: all 0.3s;
  transition: all 0.3s; }

.open #drawer-bg {
  width: 100%;
  height: 100%;
  z-index: 998;
  position: fixed;
  top: 0;
  opacity: 0.95;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  background-color: #fff; }
.open nav {
  display: block;
  z-index: 100;
  -webkit-transition: all 0.3s;
  transition: all 0.3s; }
.open .contact-btn {
  opacity: 1;
  z-index: 100;
  -webkit-transition: all 0.3s;
  transition: all 0.3s; }

footer {
  width: 100%;
  min-width: 980px;
  padding: 40px 0 35px;
  border-top: solid 1px #dbdbdb;
  background-color: #f4f4f4; }
  @media only, screen and (max-width: 820px) {
    footer {
      min-width: inherit; } }
  footer .flex-box {
    width: 980px;
    margin: 0 auto;
    align-items: center; }
    @media screen and (max-width: 980px) {
      footer .flex-box {
        width: 90.625vw;
        flex-wrap: wrap; } }
    @media only, screen and (max-width: 736px) {
      footer .flex-box {
        align-items: flex-start; } }
    footer .flex-box p {
      width: 160px;
      margin: 0 70px 0 0; }
      @media only, screen and (max-width: 736px) {
        footer .flex-box p {
          margin: 0 auto 10px; } }
    footer .flex-box div p {
      margin: 0 0 10px; }
      @media only, screen and (max-width: 820px) {
        footer .flex-box div p {
          text-align: left; } }
    footer .flex-box div address {
      font-style: normal; }
    footer .flex-box div dl.flex-box {
      width: auto;
      margin-bottom: 10px; }
      @media only, screen and (max-width: 820px) {
        footer .flex-box div dl.flex-box {
          display: -webkit-fbox;
          display: -ms-flexbox;
          display: flex;
          flex-wrap: nowrap; } }
      footer .flex-box div dl.flex-box:last-of-type {
        margin-bottom: 0; }
      footer .flex-box div dl.flex-box dt {
        min-width: 90px;
        font-size: 13px;
        font-size: 0.8125rem; }
      footer .flex-box div dl.flex-box dd {
        padding-left: 10px;
        font-size: 13px;
        font-size: 0.8125rem;
        border-left: solid 1px #bebebe; }
        footer .flex-box div dl.flex-box dd .pc {
          display: inline; }
          @media only, screen and (max-width: 736px) {
            footer .flex-box div dl.flex-box dd .pc {
              display: none; } }
        footer .flex-box div dl.flex-box dd .sp {
          display: none; }
          @media only, screen and (max-width: 736px) {
            footer .flex-box div dl.flex-box dd .sp {
              display: inline; } }
        footer .flex-box div dl.flex-box dd a {
          color: #000;
          text-decoration: underline; }

.inner {
  width: 980px;
  margin: 0 auto; }
  @media only, screen and (max-width: 820px) {
    .inner {
      width: 90vw; } }

/*nav current setting*/
.home #top a {
  color: #0055a8; }

.about #about a {
  color: #0055a8; }

.company #company a {
  color: #0055a8; }

.interview #interview a {
  color: #0055a8; }

.voice #voice a {
  color: #0055a8; }

.entry #recruit a,
.post-type-archive-recruit #recruit a,
.single-recruit #recruit a {
  color: #0055a8; }

/*page title setting*/
.page-ttl {
  width: 100%;
  margin-bottom: 100px;
  padding: 20px 0;
  background-color: #f4f4f4; }
  @media only, screen and (max-width: 736px) {
    .page-ttl {
      margin-bottom: 25px;
      padding: 10px 0; } }
  .page-ttl h1 {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 18px;
    font-weight: 500;
    text-align: center; }
    @media only, screen and (max-width: 736px) {
      .page-ttl h1 {
        font-size: 14px; } }
    .page-ttl h1 span {
      display: block;
      font-family: "Maven Pro", sans-serif;
      font-size: 42px;
      font-weight: 400;
      color: #0055a8;
      line-height: 1.35; }
      @media only, screen and (max-width: 736px) {
        .page-ttl h1 span {
          font-size: 22px; } }

/* Scss Document */
.home .main {
  width: 100%;
  min-width: 980px;
  height: 39.0625vw;
  margin-bottom: 70px;
  background: url(../img/top/img_main.jpg) center top/100% auto no-repeat;
  position: relative; }
  @media only, screen and (max-width: 820px) {
    .home .main {
      min-width: inherit; } }
  @media only, screen and (max-width: 736px) {
    .home .main {
      margin-bottom: 9.375vw; } }
  .home .main .copy {
    width: 450px;
    margin: auto;
    font-size: 42px;
    font-family: "Maven Pro", sans-serif;
    font-weight: 400;
    line-height: 1.35;
    text-align: center;
    color: #0055a8;
    position: absolute;
    top: 50%;
    left: 11.71875vw;
    transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%); }
    @media only, screen and (max-width: 820px) {
      .home .main .copy {
        width: 37.5vw;
        font-size: 25px; } }
    @media only, screen and (max-width: 736px) {
      .home .main .copy {
        width: 46.875vw;
        font-size: 18px;
        left: 6.25vw; } }
    .home .main .copy span {
      display: block;
      font-size: 24px; }
      @media only, screen and (max-width: 820px) {
        .home .main .copy span {
          font-size: 15px; } }
      @media only, screen and (max-width: 736px) {
        .home .main .copy span {
          font-size: 12px; } }
.home h1 {
  margin: 0 auto 60px;
  font-size: 24px;
  font-weight: 500;
  line-height: 2;
  text-align: center;
  color: #0055a8; }
  @media only, screen and (max-width: 820px) {
    .home h1 {
      width: 90vw; } }
  @media only, screen and (max-width: 736px) {
    .home h1 {
      margin: 0 auto 9.375vw;
      font-size: 16px; } }
.home .top-bnr {
  width: 980px;
  margin: 0 auto 70px;
  justify-content: space-between; }
  @media only, screen and (max-width: 820px) {
    .home .top-bnr {
      display: block;
      width: 500px;
      margin: 0 auto 40px; } }
  @media only, screen and (max-width: 736px) {
    .home .top-bnr {
      width: 90vw; } }
  .home .top-bnr a {
    display: -webkit-box;
    display: -ms-box;
    display: flex;
    width: 310px;
    line-height: 1.3;
    color: #000;
    text-decoration: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s; }
    @media only, screen and (max-width: 820px) {
      .home .top-bnr a {
        width: 100%;
        margin-bottom: 20px; } }
    @media only, screen and (max-width: 820px) {
      .home .top-bnr a:last-of-type {
        margin-bottom: 0; } }
    .home .top-bnr a:hover {
      color: #0055a8; }
      .home .top-bnr a:hover span:after {
        right: 15px; }
    .home .top-bnr a span {
      display: -webkit-box;
      display: -ms-box;
      display: flex;
      width: 50%;
      padding: 0 0 0 30px;
      align-items: center;
      background-color: #f4f4f4;
      position: relative; }
      .home .top-bnr a span:after {
        content: "";
        display: block;
        width: 6px;
        height: 8px;
        margin: auto;
        background: url("../img/icn_arrow.png") center center/6px auto no-repeat;
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
        position: absolute;
        top: 0;
        right: 20px;
        bottom: 0; }
    .home .top-bnr a figure {
      width: 50%; }
      .home .top-bnr a figure img {
        vertical-align: bottom; }
.home header h1 {
  margin: 0; }
  @media only, screen and (max-width: 820px) {
    .home header h1 {
      width: 31.25vw;
      margin: 0 auto; } }
  @media only, screen and (max-width: 736px) {
    .home header h1 {
      padding-top: 5px; } }

/* Scss Document */
.about .about-box {
  margin-bottom: 100px; }
  @media only, screen and (max-width: 736px) {
    .about .about-box {
      margin-bottom: 50px; } }
  .about .about-box h2 {
    margin-bottom: 20px;
    font-size: 18px;
    font-weight: 500;
    text-align: center; }
    @media only, screen and (max-width: 736px) {
      .about .about-box h2 {
        margin-bottom: 10px;
        font-size: 16px; } }
    .about .about-box h2.ttl-philosophy {
      font-size: 36px;
      font-weight: 400; }
      @media only, screen and (max-width: 736px) {
        .about .about-box h2.ttl-philosophy {
          font-size: 22px; } }
    .about .about-box h2 span {
      display: block;
      margin-bottom: 10px;
      font-family: "Maven Pro", sans-serif;
      font-size: 32px;
      font-weight: 400;
      line-height: 1; }
      @media only, screen and (max-width: 736px) {
        .about .about-box h2 span {
          margin-bottom: 5px;
          font-size: 18px; } }
  .about .about-box p {
    text-align: center; }
    @media only, screen and (max-width: 736px) {
      .about .about-box p {
        width: 90vw;
        margin: 0 auto; } }
  .about .about-box ul {
    width: 320px;
    margin: 0 auto;
    list-style: none; }
    @media screen and (max-width: 320px) {
      .about .about-box ul {
        width: 90vw; } }
    .about .about-box ul li {
      margin: 0 0 1em; }
      @media only, screen and (max-width: 736px) {
        .about .about-box ul li {
          margin: 0 0 0.5em; } }
      @media screen and (max-width: 320px) {
        .about .about-box ul li {
          margin: 0 0 0.5em 1.5em; } }
      .about .about-box ul li:before {
        content: "■";
        display: inline-block;
        padding-right: 0.5em;
        font-size: 14px;
        color: #0055a8; }
        @media screen and (max-width: 320px) {
          .about .about-box ul li:before {
            text-indent: -1.5em;
            padding-right: 0; } }
.about .business {
  margin-bottom: 100px; }
  @media only, screen and (max-width: 736px) {
    .about .business {
      margin-bottom: 50px; } }
  .about .business h2 {
    margin-bottom: 20px;
    font-size: 18px;
    font-weight: 500;
    text-align: center; }
    @media only, screen and (max-width: 736px) {
      .about .business h2 {
        font-size: 16px; } }
    .about .business h2.ttl-philosophy {
      font-size: 36px;
      font-weight: 400; }
    .about .business h2 span {
      display: block;
      margin-bottom: 10px;
      font-family: "Maven Pro", sans-serif;
      font-size: 32px;
      font-weight: 400;
      line-height: 1; }
      @media only, screen and (max-width: 736px) {
        .about .business h2 span {
          margin-bottom: 5px;
          font-size: 20px; } }
  .about .business h3 {
    margin-bottom: 40px;
    padding-bottom: 20px;
    font-size: 18px;
    font-weight: 500;
    border-bottom: solid 1px #cacaca; }
    @media only, screen and (max-width: 736px) {
      .about .business h3 {
        margin-bottom: 20px;
        padding-bottom: 10px;
        font-size: 16px; } }
  .about .business .flex-box {
    margin-bottom: 40px;
    align-items: center;
    background-color: #f4f4f4; }
    @media only, screen and (max-width: 820px) {
      .about .business .flex-box {
        align-items: flex-start; } }
    @media only, screen and (max-width: 736px) {
      .about .business .flex-box {
        display: block; } }
    .about .business .flex-box figure {
      width: 440px; }
      @media only, screen and (max-width: 736px) {
        .about .business .flex-box figure {
          width: 100%; } }
      .about .business .flex-box figure img {
        vertical-align: bottom; }
    .about .business .flex-box div {
      width: 420px;
      padding: 0 60px; }
      @media only, screen and (max-width: 820px) {
        .about .business .flex-box div {
          margin: 20px 0; } }
      @media only, screen and (max-width: 736px) {
        .about .business .flex-box div {
          width: auto;
          padding: 0 20px 20px; } }
      .about .business .flex-box div h4 {
        display: block;
        width: 100%;
        font-size: 16px;
        font-weight: 700; }
      .about .business .flex-box div p {
        text-align: justify; }
.about .about-us {
  margin-bottom: 100px; }
  @media only, screen and (max-width: 736px) {
    .about .about-us {
      margin-bottom: 50px; } }
  .about .about-us h2 {
    margin-bottom: 20px;
    font-size: 18px;
    font-weight: 500;
    text-align: center; }
    @media only, screen and (max-width: 736px) {
      .about .about-us h2 {
        margin-bottom: 10px;
        font-size: 16px; } }
    .about .about-us h2 span {
      display: block;
      margin-bottom: 10px;
      font-family: "Maven Pro", sans-serif;
      font-size: 32px;
      font-weight: 400;
      line-height: 1; }
      @media only, screen and (max-width: 736px) {
        .about .about-us h2 span {
          font-size: 20px; } }
  .about .about-us table {
    width: 580px;
    margin: 0 auto;
    border-collapse: collapse; }
    @media only, screen and (max-width: 736px) {
      .about .about-us table {
        width: 90vw; } }
    .about .about-us table tr th, .about .about-us table tr td {
      padding: 20px 0;
      font-weight: 500;
      text-align: left;
      vertical-align: top;
      border-top: solid 1px #cacaca; }
    .about .about-us table tr th {
      width: 120px; }
      @media only, screen and (max-width: 736px) {
        .about .about-us table tr th {
          display: block;
          width: 100%;
          padding: 10px 0 0;
          border-top: solid 1px #cacaca; } }
    @media only, screen and (max-width: 736px) {
      .about .about-us table tr td {
        display: block;
        width: 100%;
        padding: 0 0 10px;
        border-top: none; } }
    @media only, screen and (max-width: 820px) {
      .about .about-us table tr td a {
        color: #000;
        text-decoration: underline; } }
    .about .about-us table tr:first-of-type th, .about .about-us table tr:first-of-type td {
      border-top: none; }
.about .greeting-mv {
  margin-bottom: 80px;
  position: relative; }
  @media only, screen and (max-width: 736px) {
    .about .greeting-mv {
      margin-bottom: 25px; } }
  .about .greeting-mv figure {
    width: 100%; }
    .about .greeting-mv figure img {
      vertical-align: top; }
  .about .greeting-mv h2 {
    width: 45.3125vw;
    height: 25.78125vw;
    padding: 9.375vw 5.46875vw 0 0;
    font-size: 18px;
    font-weight: 500;
    color: #fff;
    text-align: right;
    background: url("../about/img/bg.png") right top/100% auto no-repeat;
    position: absolute;
    top: 0;
    right: 0; }
    @media only, screen and (max-width: 820px) {
      .about .greeting-mv h2 {
        height: 29.6875vw;
        padding: 5.46875vw 5.46875vw 0 0; } }
    @media only, screen and (max-width: 736px) {
      .about .greeting-mv h2 {
        width: 50.78125vw;
        height: 35.15625vw;
        padding: 7.8125vw 5.46875vw 0 0;
        font-size: 14px; } }
    @media screen and (max-width: 320px) {
      .about .greeting-mv h2 {
        padding: 4.6875vw 5.46875vw 0 0;
        font-size: 13px; } }
    .about .greeting-mv h2 span {
      display: block;
      font-family: "Maven Pro", sans-serif;
      font-size: 42px;
      font-weight: 400;
      line-height: 1.3; }
      @media only, screen and (max-width: 736px) {
        .about .greeting-mv h2 span {
          font-size: 22px; } }
      @media screen and (max-width: 320px) {
        .about .greeting-mv h2 span {
          font-size: 18px; } }
.about .greeting {
  width: 700px;
  margin: 0 auto 100px; }
  @media screen and (max-width: 701px) {
    .about .greeting {
      width: 90vw; } }
  @media only, screen and (max-width: 736px) {
    .about .greeting {
      margin: 0 auto 50px; } }
  .about .greeting p {
    margin-bottom: 40px;
    line-height: 2;
    text-align: justify; }
    @media only, screen and (max-width: 736px) {
      .about .greeting p {
        margin-bottom: 25px; } }
    .about .greeting p.txt-president {
      font-family: "Noto Serif JP", serif;
      font-size: 18px;
      text-align: right; }
      @media only, screen and (max-width: 736px) {
        .about .greeting p.txt-president {
          font-size: 16px; } }
      .about .greeting p.txt-president span {
        padding-right: 1em;
        font-size: 16px; }
        @media only, screen and (max-width: 736px) {
          .about .greeting p.txt-president span {
            font-size: 14px; } }

/* Scss Document */
.company .company-box {
  width: 76.5625vw;
  margin: 0 auto 190px;
  position: relative; }
  @media only, screen and (max-width: 736px) {
    .company .company-box {
      width: 90vw;
      margin: 0 auto 25px; } }
  .company .company-box figure {
    position: relative; }
    .company .company-box figure img {
      vertical-align: bottom; }
  .company .company-box div {
    width: 41.40625vw;
    padding: 50px;
    background: url("../company/img/bg.png") left top/50% auto;
    position: absolute;
    bottom: -160px;
    right: -3.90625vw; }
    @media only, screen and (max-width: 820px) {
      .company .company-box div {
        padding: 30px;
        right: -2.34375vw; } }
    @media only, screen and (max-width: 736px) {
      .company .company-box div {
        width: 65.625vw;
        margin: 0 auto;
        padding: 15px 30px;
        position: relative;
        left: 0;
        right: 0;
        bottom: 30px; } }
    .company .company-box div h2 {
      margin-bottom: 20px;
      font-size: 28px;
      font-weight: 400;
      letter-spacing: 0.05em;
      color: #0055a8; }
      @media only, screen and (max-width: 820px) {
        .company .company-box div h2 {
          margin-bottom: 10px;
          font-size: 22px; } }
      @media only, screen and (max-width: 736px) {
        .company .company-box div h2 {
          font-size: 18px; } }
    .company .company-box div p {
      text-align: justify;
      letter-spacing: 0.03em; }

/* Scss Document */
.interview .interview-list {
  width: 980px;
  margin: 0 auto 100px;
  flex-wrap: wrap; }
  @media only, screen and (max-width: 820px) {
    .interview .interview-list {
      width: 90vw;
      justify-content: space-between; } }
  @media only, screen and (max-width: 736px) {
    .interview .interview-list {
      margin: 0 auto 25px; } }
  .interview .interview-list a {
    display: block;
    width: 300px;
    margin: 0 0 40px 40px;
    color: #000;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-decoration: none; }
    @media only, screen and (max-width: 820px) {
      .interview .interview-list a {
        width: 48%;
        margin: 0 0 40px; } }
    @media only, screen and (max-width: 736px) {
      .interview .interview-list a {
        margin: 0 0 25px;
        text-decoration: underline; } }
    .interview .interview-list a:hover {
      color: #0055a8; }
      .interview .interview-list a:hover figure {
        opacity: 0.8; }
    .interview .interview-list a:nth-child(3n+1) {
      margin: 0 0 40px; }
      @media only, screen and (max-width: 736px) {
        .interview .interview-list a:nth-child(3n+1) {
          margin: 0 0 25px; } }
    .interview .interview-list a figure {
      margin-bottom: 20px;
      -webkit-transition: all 0.3s;
      transition: all 0.3s;
      opacity: 1; }
      @media only, screen and (max-width: 736px) {
        .interview .interview-list a figure {
          margin-bottom: 10px; } }
      .interview .interview-list a figure img {
        vertical-align: bottom; }
    .interview .interview-list a p {
      font-size: 16px; }
      @media only, screen and (max-width: 736px) {
        .interview .interview-list a p {
          font-size: 14px; } }
      .interview .interview-list a p span {
        font-size: 14px; }
        @media only, screen and (max-width: 736px) {
          .interview .interview-list a p span {
            font-size: 11px; } }
.interview .interview-main {
  margin-bottom: 110px;
  position: relative; }
  @media only, screen and (max-width: 820px) {
    .interview .interview-main {
      margin-bottom: 70px; } }
  @media only, screen and (max-width: 736px) {
    .interview .interview-main {
      margin-bottom: 5px; } }
  .interview .interview-main figure {
    width: 900px;
    position: relative; }
    @media only, screen and (max-width: 820px) {
      .interview .interview-main figure {
        width: 100%; } }
  .interview .interview-main h2 {
    width: 560px;
    height: 159px;
    margin: auto;
    padding: 50px;
    font-family: "Noto Serif JP", serif;
    font-size: 32px;
    font-weight: 500;
    line-height: 1.5;
    color: #fff;
    background: url("../interview/img/bg.png") left top/50% auto;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0; }
    .interview .interview-main h2.box-large {
      padding: 30px 50px 60px; }
      @media only, screen and (max-width: 736px) {
        .interview .interview-main h2.box-large {
          padding: 25px; } }
    @media only, screen and (max-width: 820px) {
      .interview .interview-main h2 {
        height: auto;
        padding: 25px;
        font-size: 24px;
        top: inherit;
        bottom: -50px; } }
    @media only, screen and (max-width: 736px) {
      .interview .interview-main h2 {
        width: 82.1875vw;
        font-size: 18px;
        position: relative;
        bottom: 30px; } }
    .interview .interview-main h2 span {
      font-family: "Noto Sans JP", sans-serif;
      font-size: 18px; }
      @media only, screen and (max-width: 736px) {
        .interview .interview-main h2 span {
          font-size: 12px; } }
.interview .interview-main-reverse figure {
  margin-left: auto; }
.interview .interview-main-reverse h2 {
  left: 0;
  right: inherit; }
.interview .interview-box {
  width: 980px;
  margin: 0 auto 90px;
  justify-content: space-between;
  position: relative; }
  @media only, screen and (max-width: 820px) {
    .interview .interview-box {
      width: 100%;
      display: block; } }
  @media only, screen and (max-width: 736px) {
    .interview .interview-box {
      margin: 0 auto; } }
  .interview .interview-box div {
    width: 410px;
    padding: 70px;
    background-color: #f4f4f4;
    position: relative; }
    @media only, screen and (max-width: 820px) {
      .interview .interview-box div {
        width: 80.625vw;
        margin: 0 auto;
        padding: 30px 30px 70px; } }
    .interview .interview-box div p {
      line-height: 2;
      text-align: justify; }
  .interview .interview-box figure {
    width: 460px;
    position: absolute;
    right: 0;
    top: -60px; }
    @media only, screen and (max-width: 820px) {
      .interview .interview-box figure {
        width: 100%;
        position: relative;
        top: -50px;
        right: 0;
        text-align: right; } }
    @media only, screen and (max-width: 736px) {
      .interview .interview-box figure {
        text-align: center; } }
    @media only, screen and (max-width: 820px) {
      .interview .interview-box figure img {
        max-width: 71.875vw; } }
    @media only, screen and (max-width: 736px) {
      .interview .interview-box figure img {
        max-width: 80.625vw; } }
    @media only, screen and (max-width: 820px) {
      .interview .interview-box figure img.spItem {
        display: inline-block;
        width: 54%; } }
.interview .reverse div {
  position: static;
  order: 2; }
.interview .reverse figure {
  margin: 0 -20px 0 0;
  position: relative;
  left: 0;
  right: inherit;
  order: 1; }
  @media only, screen and (max-width: 736px) {
    .interview .reverse figure {
      margin: 0; } }
.interview .btn-back {
  display: block;
  width: 184px;
  height: 39px;
  margin: 0 auto 100px;
  padding-top: 9px;
  color: #fff;
  text-align: center;
  text-decoration: none;
  background-color: #999;
  -webkit-transition: all 0.3s;
  transition: all 0.3s; }
  @media only, screen and (max-width: 736px) {
    .interview .btn-back {
      margin: 0 auto 50px; } }
  .interview .btn-back span {
    padding: 0 15px;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    background: url("../img/icn_back.png") left center/6px auto no-repeat; }
  .interview .btn-back:hover {
    background-color: #333; }
    .interview .btn-back:hover span {
      padding: 0 20px; }

/* Scss Document */
.voice h2 {
  margin-bottom: 30px;
  font-size: 24px;
  font-weight: 400;
  color: #0055a8;
  text-align: center;
  line-height: 1.5; }
  @media only, screen and (max-width: 820px) {
    .voice h2 {
      width: 90.625vw;
      margin: 0 auto 30px; } }
  @media only, screen and (max-width: 736px) {
    .voice h2 {
      margin-bottom: 15px;
      font-size: 18px;
      text-align: left; } }
.voice .voice-box {
  width: 980px;
  margin: 0 auto 100px;
  justify-content: space-between; }
  @media only, screen and (max-width: 820px) {
    .voice .voice-box {
      display: block;
      width: 90vw; } }
  @media only, screen and (max-width: 736px) {
    .voice .voice-box {
      margin: 0 auto 50px; } }
  .voice .voice-box figure {
    width: 440px; }
    @media only, screen and (max-width: 820px) {
      .voice .voice-box figure {
        width: 480px;
        margin: 0 auto 20px; } }
    @media only, screen and (max-width: 736px) {
      .voice .voice-box figure {
        width: 100%;
        margin: 0 auto 10px; } }
  .voice .voice-box div {
    width: 480px; }
    @media only, screen and (max-width: 820px) {
      .voice .voice-box div {
        margin: 0 auto; } }
    @media only, screen and (max-width: 736px) {
      .voice .voice-box div {
        width: 100%; } }
    .voice .voice-box div p {
      margin-bottom: 1em;
      text-align: justify; }
      .voice .voice-box div p:last-of-type {
        margin-bottom: 0;
        font-size: 18px;
        text-align: right; }
        @media only, screen and (max-width: 736px) {
          .voice .voice-box div p:last-of-type {
            font-size: 14px;
            text-align: left; } }
        .voice .voice-box div p:last-of-type span {
          font-size: 14px;
          vertical-align: baseline; }
          @media only, screen and (max-width: 736px) {
            .voice .voice-box div p:last-of-type span {
              font-size: 13px; } }

/* Scss Document */
.contact .contact-box {
  width: 980px;
  margin: 0 auto 100px; }
  @media only, screen and (max-width: 820px) {
    .contact .contact-box {
      width: 90vw; } }
  @media only, screen and (max-width: 736px) {
    .contact .contact-box {
      margin: 0 auto 50px; } }
  .contact .contact-box p {
    margin-bottom: 40px; }
  .contact .contact-box table {
    width: 100%;
    margin-bottom: 40px;
    border-collapse: collapse; }
    @media only, screen and (max-width: 736px) {
      .contact .contact-box table {
        margin-bottom: 20px; } }
    .contact .contact-box table th, .contact .contact-box table td {
      font-size: 16px;
      font-weight: 500;
      vertical-align: top; }
      @media only, screen and (max-width: 736px) {
        .contact .contact-box table th, .contact .contact-box table td {
          font-size: 14px; } }
    .contact .contact-box table th {
      display: inline-block;
      margin: 0 1em 0 4em;
      padding: 0 0 30px;
      text-align: left; }
      @media only, screen and (max-width: 820px) {
        .contact .contact-box table th {
          display: block;
          width: calc(100% - 4em);
          padding: 0 0 10px; } }
      @media only, screen and (max-width: 736px) {
        .contact .contact-box table th {
          margin: 0; } }
      .contact .contact-box table th.req:before {
        content: "※必須";
        display: inline-block;
        color: #0055a8;
        font-size: 14px;
        text-indent: -4em; }
        @media only, screen and (max-width: 736px) {
          .contact .contact-box table th.req:before {
            margin-right: 1em;
            text-indent: 0; } }
      .contact .contact-box table th .pcItem {
        display: inline; }
        @media only, screen and (max-width: 820px) {
          .contact .contact-box table th .pcItem {
            display: none; } }
    @media only, screen and (max-width: 820px) {
      .contact .contact-box table td {
        display: block;
        width: calc(100% - 4em);
        margin: 0 0 30px 4em; } }
    @media only, screen and (max-width: 736px) {
      .contact .contact-box table td {
        width: 100%;
        margin: 0 0 15px; } }
    .contact .contact-box table td input[type=text],
    .contact .contact-box table td input[type=tel],
    .contact .contact-box table td textarea {
      width: 708px;
      margin-bottom: 10px;
      padding: 10px;
      font-size: 16px;
      border: solid 1px #cacaca; }
      @media only, screen and (max-width: 820px) {
        .contact .contact-box table td input[type=text],
        .contact .contact-box table td input[type=tel],
        .contact .contact-box table td textarea {
          width: 90%; } }
      .contact .contact-box table td input[type=text].short,
      .contact .contact-box table td input[type=tel].short,
      .contact .contact-box table td textarea.short {
        width: 358px; }
        @media only, screen and (max-width: 820px) {
          .contact .contact-box table td input[type=text].short,
          .contact .contact-box table td input[type=tel].short,
          .contact .contact-box table td textarea.short {
            width: 55%; } }
    .contact .contact-box table td textarea {
      height: 12em; }
  .contact .contact-box .btn {
    justify-content: center; }
    .contact .contact-box .btn span {
      margin: 0 10px;
      background-color: #0055a8;
      -webkit-transition: all 0.3s;
      transition: all 0.3s;
      position: relative; }
      .contact .contact-box .btn span:after {
        content: "";
        display: block;
        width: 6px;
        height: 12px;
        margin: auto;
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
        position: absolute;
        right: 20px;
        top: 0;
        bottom: 0;
        background: url("../img/icn_arrow_w.png") left top/100% auto no-repeat; }
      .contact .contact-box .btn span:hover {
        background-color: #333; }
        .contact .contact-box .btn span:hover:after {
          right: 15px; }
      .contact .contact-box .btn span.btn-back {
        background-color: #999; }
        .contact .contact-box .btn span.btn-back:after {
          background: url("../img/icn_back.png") left top/100% auto no-repeat;
          right: inherit;
          left: 20px; }
        .contact .contact-box .btn span.btn-back:hover {
          background-color: #333; }
          .contact .contact-box .btn span.btn-back:hover:after {
            left: 15px; }
      .contact .contact-box .btn span input {
        width: 184px;
        height: 48px;
        padding: 0;
        font-size: 16px;
        font-weight: 700;
        color: #fff;
        text-align: center;
        border: none;
        background: none; }
        .contact .contact-box .btn span input:hover {
          cursor: pointer; }

/* Scss Document */
.post-type-archive-recruit .recruit-list {
  width: 980px;
  margin: 0 auto 100px; }
  @media only, screen and (max-width: 820px) {
    .post-type-archive-recruit .recruit-list {
      width: 90vw; } }
  @media only, screen and (max-width: 736px) {
    .post-type-archive-recruit .recruit-list {
      margin: 0 auto 50px; } }
  .post-type-archive-recruit .recruit-list h2 {
    margin-bottom: 25px;
    font-size: 24px;
    font-weight: 400;
    line-height: 1.5;
    color: #0055a8; }
    @media only, screen and (max-width: 736px) {
      .post-type-archive-recruit .recruit-list h2 {
        margin-bottom: 15px;
        font-size: 18px; } }
  .post-type-archive-recruit .recruit-list .flex-box {
    margin-bottom: 100px;
    justify-content: space-between; }
    @media only, screen and (max-width: 736px) {
      .post-type-archive-recruit .recruit-list .flex-box {
        display: block;
        margin-bottom: 50px; } }
    .post-type-archive-recruit .recruit-list .flex-box figure {
      width: 440px; }
      @media only, screen and (max-width: 820px) {
        .post-type-archive-recruit .recruit-list .flex-box figure {
          width: 40.3125vw; } }
      @media only, screen and (max-width: 736px) {
        .post-type-archive-recruit .recruit-list .flex-box figure {
          width: 100%;
          margin-bottom: 20px; } }
      .post-type-archive-recruit .recruit-list .flex-box figure img {
        vertical-align: bottom; }
    .post-type-archive-recruit .recruit-list .flex-box div {
      width: 480px; }
      @media only, screen and (max-width: 820px) {
        .post-type-archive-recruit .recruit-list .flex-box div {
          width: 44.0625vw; } }
      @media only, screen and (max-width: 736px) {
        .post-type-archive-recruit .recruit-list .flex-box div {
          width: 100%; } }
      .post-type-archive-recruit .recruit-list .flex-box div table {
        width: 100%;
        margin-bottom: 20px;
        border-collapse: collapse; }
        .post-type-archive-recruit .recruit-list .flex-box div table th {
          width: 5em;
          padding: 15px 0;
          text-align: left;
          font-weight: 500;
          vertical-align: top;
          border-bottom: solid 1px #dbdbdb; }
          @media only, screen and (max-width: 736px) {
            .post-type-archive-recruit .recruit-list .flex-box div table th {
              display: block;
              width: 100%;
              padding: 0;
              border-bottom: none; } }
        .post-type-archive-recruit .recruit-list .flex-box div table td {
          padding: 15px 0;
          border-bottom: solid 1px #dbdbdb; }
          @media only, screen and (max-width: 736px) {
            .post-type-archive-recruit .recruit-list .flex-box div table td {
              display: block;
              width: 100%;
              margin-bottom: 10px;
              padding: 0 0 10px; } }
        .post-type-archive-recruit .recruit-list .flex-box div table tr:first-of-type th {
          padding: 0 0 15px; }
          @media only, screen and (max-width: 736px) {
            .post-type-archive-recruit .recruit-list .flex-box div table tr:first-of-type th {
              padding: 0 0 5px; } }
        .post-type-archive-recruit .recruit-list .flex-box div table tr:first-of-type td {
          padding: 0 0 15px; }
          @media only, screen and (max-width: 736px) {
            .post-type-archive-recruit .recruit-list .flex-box div table tr:first-of-type td {
              padding: 0 0 15px; } }
        .post-type-archive-recruit .recruit-list .flex-box div table tr:last-child th, .post-type-archive-recruit .recruit-list .flex-box div table tr:last-child td {
          border-bottom: none; }
      .post-type-archive-recruit .recruit-list .flex-box div a {
        display: block;
        width: 140px;
        height: 39px;
        padding: 9px 0 0;
        color: #fff;
        text-decoration: none;
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
        text-align: center;
        background-color: #0055a8; }
        @media only, screen and (max-width: 736px) {
          .post-type-archive-recruit .recruit-list .flex-box div a {
            margin: 0 auto; } }
        .post-type-archive-recruit .recruit-list .flex-box div a span {
          padding: 0 15px 0 5px;
          -webkit-transition: all 0.3s;
          transition: all 0.3s;
          background: url("../img/icn_arrow_w.png") right center/6px auto no-repeat; }
        .post-type-archive-recruit .recruit-list .flex-box div a:hover {
          background-color: #333; }
          .post-type-archive-recruit .recruit-list .flex-box div a:hover span {
            padding: 0 20px 0 10px; }
  .post-type-archive-recruit .recruit-list .pager {
    justify-content: flex-start;
    flex-wrap: wrap; }
    .post-type-archive-recruit .recruit-list .pager a, .post-type-archive-recruit .recruit-list .pager span {
      display: inline-block;
      width: 36px;
      height: 33px;
      margin: 0 10px 10px 0;
      padding: 3px 0 0;
      text-align: center;
      -webkit-transition: all 0.3s;
      transition: all 0.3s; }
    .post-type-archive-recruit .recruit-list .pager a {
      color: #000;
      text-decoration: none;
      background-color: #dbdbdb; }
      .post-type-archive-recruit .recruit-list .pager a:hover {
        color: #fff;
        background-color: #0055a8; }
    .post-type-archive-recruit .recruit-list .pager span {
      color: #fff;
      background-color: #0055a8; }

.single-recruit .recruit-single {
  width: 980px;
  margin: 0 auto 100px; }
  @media only, screen and (max-width: 820px) {
    .single-recruit .recruit-single {
      width: 90vw; } }
  @media only, screen and (max-width: 736px) {
    .single-recruit .recruit-single {
      margin: 0 auto 50px; } }
  .single-recruit .recruit-single h1, .single-recruit .recruit-single h2 {
    margin-bottom: 25px;
    font-size: 24px;
    font-weight: 400;
    line-height: 1.5;
    color: #0055a8; }
    @media only, screen and (max-width: 736px) {
      .single-recruit .recruit-single h1, .single-recruit .recruit-single h2 {
        font-size: 18px; } }
  .single-recruit .recruit-single .flex-box {
    margin-bottom: 40px;
    justify-content: space-between; }
    @media only, screen and (max-width: 736px) {
      .single-recruit .recruit-single .flex-box {
        display: block;
        margin-bottom: 20px; } }
    .single-recruit .recruit-single .flex-box figure {
      width: 440px; }
      @media only, screen and (max-width: 820px) {
        .single-recruit .recruit-single .flex-box figure {
          width: 40.3125vw; } }
      @media only, screen and (max-width: 736px) {
        .single-recruit .recruit-single .flex-box figure {
          width: 100%; } }
    .single-recruit .recruit-single .flex-box div {
      width: 480px; }
      @media only, screen and (max-width: 820px) {
        .single-recruit .recruit-single .flex-box div {
          width: 44.0625vw; } }
      @media only, screen and (max-width: 736px) {
        .single-recruit .recruit-single .flex-box div {
          width: 100%; } }
      .single-recruit .recruit-single .flex-box div p {
        line-height: 2;
        text-align: justify; }
  .single-recruit .recruit-single table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 40px; }
    @media only, screen and (max-width: 736px) {
      .single-recruit .recruit-single table {
        margin-bottom: 20px; } }
    .single-recruit .recruit-single table tr th, .single-recruit .recruit-single table tr td {
      text-align: left;
      font-weight: 500;
      vertical-align: top;
      border-bottom: solid 1px #dbdbdb; }
    .single-recruit .recruit-single table tr th {
      width: 20%;
      padding: 20px 0; }
      @media only, screen and (max-width: 736px) {
        .single-recruit .recruit-single table tr th {
          display: block;
          width: 100%;
          padding: 0;
          border-bottom: none; } }
    .single-recruit .recruit-single table tr td {
      padding: 20px 0; }
      @media only, screen and (max-width: 736px) {
        .single-recruit .recruit-single table tr td {
          display: block;
          width: 100%;
          margin: 0 0 10px;
          padding: 0 0 10px; } }
    .single-recruit .recruit-single table tr:first-child th {
      padding: 0 0 20px; }
      @media only, screen and (max-width: 736px) {
        .single-recruit .recruit-single table tr:first-child th {
          padding: 0; } }
    .single-recruit .recruit-single table tr:first-child td {
      padding: 0 0 20px; }
      @media only, screen and (max-width: 736px) {
        .single-recruit .recruit-single table tr:first-child td {
          padding: 0 0 10px; } }
    .single-recruit .recruit-single table tr:last-child th, .single-recruit .recruit-single table tr:last-child td {
      border-bottom: none; }
  .single-recruit .recruit-single .btn-entry {
    display: block;
    width: 140px;
    height: 39px;
    margin: 0 auto 60px;
    padding: 9px 0 0;
    color: #fff;
    text-decoration: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    background-color: #0055a8; }
    .single-recruit .recruit-single .btn-entry span {
      padding: 0 15px 0 5px;
      -webkit-transition: all 0.3s;
      transition: all 0.3s;
      background: url("../img/icn_arrow_w.png") right center/6px auto no-repeat; }
    .single-recruit .recruit-single .btn-entry:hover {
      background-color: #333; }
      .single-recruit .recruit-single .btn-entry:hover span {
        padding: 0 20px 0 10px; }
  .single-recruit .recruit-single .wp-block-table table tr td {
    padding: 20px;
    border: solid 1px #333; }
    @media only, screen and (max-width: 736px) {
      .single-recruit .recruit-single .wp-block-table table tr td {
        display: table-cell;
        width: auto; } }
  .single-recruit .recruit-single .wp-block-table table tr:first-child {
    padding: 20px; }
  .single-recruit .recruit-single .wp-block-table table tr:last-child {
    border-bottom: solid 1px #333; }
  .single-recruit .recruit-single .is-style-stripes {
    border-bottom: none; }
.single-recruit .page-nav {
  display: -webkit-box;
  display: -ms-box;
  display: flex;
  list-style: none;
  justify-content: space-between; }
  .single-recruit .page-nav li {
    width: 140px; }
    @media only, screen and (max-width: 736px) {
      .single-recruit .page-nav li {
        width: 32%; } }
    .single-recruit .page-nav li a {
      display: block;
      height: 39px;
      padding: 9px 0 0;
      color: #fff;
      text-decoration: none;
      -webkit-transition: all 0.3s;
      transition: all 0.3s;
      text-align: center;
      background-color: #666; }
      @media only, screen and (max-width: 736px) {
        .single-recruit .page-nav li a {
          height: 35px;
          font-size: 14px; } }
      @media screen and (max-width: 320px) {
        .single-recruit .page-nav li a {
          height: 33px;
          font-size: 13px; } }
      .single-recruit .page-nav li a span {
        padding: 0 15px;
        -webkit-transition: all 0.3s;
        transition: all 0.3s; }
      .single-recruit .page-nav li a:hover {
        background-color: #333; }
        .single-recruit .page-nav li a:hover span {
          padding: 0 20px; }
    .single-recruit .page-nav li#prev a span {
      background: url("../img/icn_back.png") left center/6px auto no-repeat; }
    .single-recruit .page-nav li#next a span {
      background: url("../img/icn_arrow_w.png") right center/6px auto no-repeat; }
.single-recruit p {
  margin-bottom: 30px; }
.single-recruit h3 {
  margin-bottom: 30px;
  padding-bottom: 20px;
  font-size: 18px;
  font-weight: 500;
  border-bottom: solid 1px #cacaca; }
.single-recruit h4 {
  margin-bottom: 30px;
  font-size: 16px;
  font-weight: 700;
  color: #0055a8; }
.single-recruit h5, .single-recruit h6 {
  margin-bottom: 30px;
  font-size: 16px;
  font-weight: 700; }
.single-recruit ul {
  margin-bottom: 30px;
  list-style: inside disc; }
.single-recruit ol {
  margin-bottom: 30px;
  list-style: inside decimal; }

.entry .contact-box {
  width: 980px;
  margin: 0 auto 100px; }
  @media only, screen and (max-width: 820px) {
    .entry .contact-box {
      width: 90vw; } }
  @media only, screen and (max-width: 736px) {
    .entry .contact-box {
      margin: 0 auto 50px; } }
  .entry .contact-box p {
    margin-bottom: 40px; }
  .entry .contact-box table {
    width: 100%;
    margin-bottom: 40px;
    border-collapse: collapse; }
    @media only, screen and (max-width: 736px) {
      .entry .contact-box table {
        margin-bottom: 20px; } }
    .entry .contact-box table th, .entry .contact-box table td {
      font-size: 16px;
      font-weight: 500;
      vertical-align: top; }
      @media only, screen and (max-width: 736px) {
        .entry .contact-box table th, .entry .contact-box table td {
          font-size: 14px; } }
    .entry .contact-box table th {
      display: inline-block;
      width: 140px;
      margin: 0 1em 0 4em;
      padding: 0 0 30px;
      text-align: left; }
      @media only, screen and (max-width: 820px) {
        .entry .contact-box table th {
          display: block;
          width: calc(100% - 4em);
          padding: 0 0 10px; } }
      @media only, screen and (max-width: 736px) {
        .entry .contact-box table th {
          margin: 0; } }
      .entry .contact-box table th.req:before {
        content: "※必須";
        display: inline-block;
        color: #0055a8;
        font-size: 14px;
        text-indent: -4em; }
        @media only, screen and (max-width: 736px) {
          .entry .contact-box table th.req:before {
            margin-right: 1em;
            text-indent: 0; } }
      .entry .contact-box table th .pcItem {
        display: inline; }
        @media only, screen and (max-width: 820px) {
          .entry .contact-box table th .pcItem {
            display: none; } }
    @media only, screen and (max-width: 820px) {
      .entry .contact-box table td {
        display: block;
        width: calc(100% - 4em);
        margin: 0 0 30px 4em; } }
    @media only, screen and (max-width: 736px) {
      .entry .contact-box table td {
        width: 100%;
        margin: 0 0 15px; } }
    .entry .contact-box table td span {
      padding: 0 0.5em 0 0; }
    .entry .contact-box table td input[type=text],
    .entry .contact-box table td input[type=tel],
    .entry .contact-box table td textarea {
      width: 708px;
      margin-bottom: 10px;
      padding: 10px;
      font-size: 16px;
      border: solid 1px #cacaca; }
      @media only, screen and (max-width: 820px) {
        .entry .contact-box table td input[type=text],
        .entry .contact-box table td input[type=tel],
        .entry .contact-box table td textarea {
          width: 90%; } }
      .entry .contact-box table td input[type=text].short,
      .entry .contact-box table td input[type=tel].short,
      .entry .contact-box table td textarea.short {
        width: 358px; }
        @media only, screen and (max-width: 820px) {
          .entry .contact-box table td input[type=text].short,
          .entry .contact-box table td input[type=tel].short,
          .entry .contact-box table td textarea.short {
            width: 55%; } }
      .entry .contact-box table td input[type=text].zip,
      .entry .contact-box table td input[type=tel].zip,
      .entry .contact-box table td textarea.zip {
        width: 9em; }
      .entry .contact-box table td input[type=text].line4,
      .entry .contact-box table td input[type=tel].line4,
      .entry .contact-box table td textarea.line4 {
        width: 4em; }
        .entry .contact-box table td input[type=text].line4 + span,
        .entry .contact-box table td input[type=tel].line4 + span,
        .entry .contact-box table td textarea.line4 + span {
          padding: 0 1em 0 0.5em; }
      .entry .contact-box table td input[type=text].line2,
      .entry .contact-box table td input[type=tel].line2,
      .entry .contact-box table td textarea.line2 {
        width: 3em; }
        .entry .contact-box table td input[type=text].line2 + span,
        .entry .contact-box table td input[type=tel].line2 + span,
        .entry .contact-box table td textarea.line2 + span {
          padding: 0 1em 0 0.5em; }
    .entry .contact-box table td textarea {
      height: 12em; }
      .entry .contact-box table td textarea.short-h {
        height: 5em; }
  .entry .contact-box .btn {
    justify-content: center; }
    .entry .contact-box .btn span {
      margin: 0 10px;
      background-color: #0055a8;
      -webkit-transition: all 0.3s;
      transition: all 0.3s;
      position: relative; }
      .entry .contact-box .btn span:after {
        content: "";
        display: block;
        width: 6px;
        height: 12px;
        margin: auto;
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
        position: absolute;
        right: 20px;
        top: 0;
        bottom: 0;
        background: url("../img/icn_arrow_w.png") left top/100% auto no-repeat; }
      .entry .contact-box .btn span:hover {
        background-color: #333; }
        .entry .contact-box .btn span:hover:after {
          right: 15px; }
      .entry .contact-box .btn span.btn-back {
        background-color: #999; }
        .entry .contact-box .btn span.btn-back:after {
          background: url("../img/icn_back.png") left top/100% auto no-repeat;
          right: inherit;
          left: 20px; }
        .entry .contact-box .btn span.btn-back:hover {
          background-color: #333; }
          .entry .contact-box .btn span.btn-back:hover:after {
            left: 15px; }
      .entry .contact-box .btn span input {
        width: 184px;
        height: 48px;
        padding: 0;
        font-size: 16px;
        font-weight: 700;
        color: #fff;
        text-align: center;
        border: none;
        background: none; }
        .entry .contact-box .btn span input:hover {
          cursor: pointer; }
