@charset "UTF-8";
/* Scss Document */
/*-------------------------------------------------
    common
=================================================*/
body {
  font-size: 15px;
  font-weight: 500;
  color: #333;
  line-height: 1.6;
  background: #fff;
  text-align: left;
  -webkit-text-size-adjust: 100%;
  word-break: break-word;
  min-width: 320px;
  font-family: YuGothic, "游ゴシック", "ヒラギノ角ゴ Pro W3", Hiragino Kaku Gothic Pro, " メイリオ", Meiryo, Osaka, " ＭＳ Ｐゴシック", MS PGothic, " sans-serif"; }

.youtubewrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  margin: 30px 0; }
  .youtubewrap iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important; }

a {
  color: #000;
  text-decoration: underline;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  transition: all 0.3s; }

a:hover {
  text-decoration: none;
  opacity: 0.8; }

a:visited {
  color: #000; }

a.btn1 {
  display: inline-block;
  border: 1px solid #000;
  padding: 2px 30px 2px 10px;
  border-radius: 4px;
  position: relative;
  color:#000 !important;
  text-decoration: none; }
  a.btn1:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 7px;
    width: 15px;
    height: 15px;
    background: url(../images/icon_newwin.png) no-repeat center center/15px;
    margin-top: -7.5px; }

a.btn2 {
  display: inline-block;
  background: #fff;
  padding: 2px 30px 2px 10px;
  border-radius: 4px;
  position: relative;
  color:#000 !important;
  text-decoration: none; }
  a.btn2:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 7px;
    width: 16px;
    height: 16px;
    background: url(../images/btn_arrow1.svg) no-repeat center center/16px;
    margin-top: -8px; }

a.btn3 {
  display: inline-block;
  background: #fff;
  padding: 2px 30px 2px 20px;
  border-radius: 100px;
  position: relative;
  color:#000 !important;
  text-decoration: none;
  font-weight: bold; }
  a.btn3:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 5px;
    width: 18px;
    height: 18px;
    background: url(../images/btn_arrow2.svg) no-repeat center center/18px;
    margin-top: -9px; }

.mt0 {
  margin-top: 0 !important; }

.mt5 {
  margin-top: 5px !important; }

.mt10 {
  margin-top: 10px !important; }

.mt15 {
  margin-top: 15px !important; }

.mt20 {
  margin-top: 20px !important; }

.mt30 {
  margin-top: 30px !important; }

.mt40 {
  margin-top: 40px !important; }

.mt50 {
  margin-top: 50px !important; }

.mr0 {
  margin-right: 0 !important; }

.mr5 {
  margin-right: 5px !important; }

.mr10 {
  margin-right: 10px !important; }

.mr15 {
  margin-right: 15px !important; }

.mr20 {
  margin-right: 20px !important; }

.mr30 {
  margin-right: 30px !important; }

.mr40 {
  margin-right: 40px !important; }

.mr50 {
  margin-right: 50px !important; }

.mb0 {
  margin-bottom: 0 !important; }

.mb5 {
  margin-bottom: 5px !important; }

.mb10 {
  margin-bottom: 10px !important; }

.mb15 {
  margin-bottom: 15px !important; }

.mb20 {
  margin-bottom: 20px !important; }

.mb30 {
  margin-bottom: 30px !important; }

.mb40 {
  margin-bottom: 40px !important; }

.mb50 {
  margin-bottom: 50px !important; }

.ml0 {
  margin-left: 0 !important; }

.ml5 {
  margin-left: 5px !important; }

.ml10 {
  margin-left: 10px !important; }

.ml15 {
  margin-left: 15px !important; }

.ml20 {
  margin-left: 20px !important; }

.ml30 {
  margin-left: 30px !important; }

.ml40 {
  margin-left: 40px !important; }

.ml50 {
  margin-left: 50px !important; }

.tal {
  text-align: left !important; }

.tar {
  text-align: right !important; }

.tac {
  text-align: center !important; }

.fl {
  float: left; }

.fr {
  float: right; }

section,
nav,
header,
footer,
article {
  margin: 0;
  padding: 0; }

p {
  margin: 0 0 15px 0; }

/*------------------------------------------*/
img {
  max-width: 100%;
  height: auto; }

@media print, screen and (min-width: 768px) {
  .inner {
    width: 850px;
    margin: 0 auto; }

  .sp_only {
    display: none !important; } }
@media screen and (max-width: 767px) {
  body {
    padding-top: 55px;
    line-height: 1.6; }
    body.page-recruit {
      padding-top: 0; }

  .inner {
    width: 100%;
    padding: 0 15px;
    box-sizing: border-box; }

  .pc_only {
    display: none !important; }

  .sp_accordion_body {
    display: none; } }
/*------------------------------------------*/
header {
  position: absolute;
  top: 0px;
  left: 0;
  width: 100%;
  z-index: 200; }
header a {
  text-decoration: none;
}
  @media screen and (max-width: 767px) {
    header {
      position: fixed;
      background: #0099ff;
      height: 55px; } }
  header .right {
    position: absolute;
    top: 0;
    right: 0;
    width: 180px; }
    header .right a {
      box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
      display: block;
      margin: 0 0 5px; }
      header .right a img {
        width: 180px;
        height: 79px; }
    header .right a.corporate {
      box-shadow: none;
      display: inline-block; }
      header .right a.corporate:after {
        content: "";
        display: inline-block;
        background: url(../images/icon_newwin2.svg);
        width: 15px;
        height: 13px;
        vertical-align: middle;
        margin: 0 0 0 10px; }
  header .inner {
    position: relative; }
  header .logo {
    position: absolute;
    top: 30px;
    left: 0; }
    header .logo > .tsukiso > img {
      width: auto;
      height: 75px; 
margin-right:20px;}
@media screen and (max-width: 767px) {
    header .logo > .tsukiso > img {
      height: 25px; 
margin-right:7px;}
  
}
    header .logo > .tsukishima > img {
      width: auto;
      height: 75px; }
    @media screen and (max-width: 767px) {
      header .logo {
        top: 15px;
        left: 50%;
        margin: 0 0 0 -100px;
        width: 200px; }
        header .logo > .tsukishima > img {
          width: auto;
          height: 25px; } }
    header .logo .title {
      position: absolute;
      top: 20px;
      left: 170px;
      width: 500px; }
      header .logo .title img {
        width: 244px; }
  header .tel_btn {
    position: absolute;
    top: 0;
    right: 0;
    border-left: 2px solid #d70c18; }
    header .tel_btn a, header .tel_btn span {
      height: 55px;
      width: 50px;
      display: block;
      text-align: center; }
    header .tel_btn img {
      width: 18px;
      margin-top: 8px; }
  header .menu_btn {
    position: absolute;
    top: 0;
    left: 0;
    height: 55px;
    width: 50px;
    border-right: 2px solid #d70c18;
    text-align: center; }
    header .menu_btn img {
      width: 30px;
      margin-top: 13px; }
  header .ani_50th {
    position: absolute;
    top: 30px;
    right: 0; }
    header .ani_50th img {
      width: 96px; }
  header #gnav {
    position: absolute;
    top: 60px;
    right: 0px; }
    @media screen and (max-width: 767px) {
      header #gnav {
        top: 0 !important;
        left: -100vw;
        transition: all 0.5s ease 0s;
        width: calc(100vw - 50px);
        background: #fff; }
        header #gnav.active {
          left: 0; } }
    header #gnav .menu_title {
      background: #2c308e;
      color: #fff;
      padding: 5px 15px;
      font-size: 14px;
      font-weight: bold; }
    header #gnav .close_btn {
      position: absolute;
      top: 0;
      right: -50px;
      height: 55px;
      width: 50px;
      background: #0099ff;
      text-align: center; }
      header #gnav .close_btn img {
        width: 22px;
        margin-top: 16px; }
    header #gnav ul {
      margin: 0;
      padding: 0; }
      header #gnav ul li {
        margin: 0 0 0 30px;
        padding: 0;
        list-style: none;
        display: block;
        float: left; }
        @media screen and (max-width: 767px) {
          header #gnav ul li {
            margin: 0;
            float: none;
            border-top: 1px solid #2c308e; } }
        header #gnav ul li a {
          text-decoration: none;
          font-weight: bold; }
          @media screen and (max-width: 767px) {
            header #gnav ul li a {
              display: block;
              padding: 15px; } }
  @media screen and (max-width: 767px) {
    header.recruit_head {
      background: rgba(255, 255, 255, 0.85); }
      header.recruit_head .logo {
        top: 15px;
        width: 250px; }
      header.recruit_head .logo img {
        height: 27px !important; }
      header.recruit_head .menu_btn {
        border: none; }
      header.recruit_head #gnav .menu_title {
        background: #d70c18; } }
  @media print, screen and (min-width: 768px) {
    header.recruit_head #gnav {
      top: 40px;
      left: 290px; 
    width:400px;
    right:inherit;}
      header.recruit_head #gnav ul  {
        margin: 0 0 0 -20px; } 
      header.recruit_head #gnav ul li {
        margin: 0 0 0 20px; } }
@media print, screen and (min-width: 1200px) {
      header.recruit_head #gnav {
        width:500px;
  }
}
@media print, screen and (min-width: 1500px) {
      header.recruit_head #gnav {
        width:600px;
  }
}

footer {
  background: #fff; }
  footer .inquiry {
    background: #2c308e;
    color: #fff;
    text-align: center;
    padding: 30px 0;
    border-bottom: 4px solid #d70c18; }
    footer .inquiry p {
      font-size: 15px;
      font-weight: bold; }
    footer .inquiry .tel {
      margin: 0 0 20px 0; }
    @media screen and (max-width: 767px) {
      footer .inquiry .fax {
        display: block; } }
  footer .sitemap {
    color: #fff;
    background: #0099ff;
    padding: 50px 0;
    border-bottom: 4px solid #d70c18; }
    footer .sitemap .inner {
      overflow: hidden;
      position: relative; }
    footer .sitemap a {
      color: #fff;
      text-decoration: none; }
    footer .sitemap dl {
      float: left;
      margin: 0 35px 0 0;
      padding: 0; }
      footer .sitemap dl dt {
        margin: 0 0 5px;
        padding: 0; }
        footer .sitemap dl dt a {
          background: url(../images/link_arrow2.svg) no-repeat left center;
          padding: 0 0 0 25px; }
      footer .sitemap dl dd {
        margin: 0;
        padding: 0 0 0 20px; }
        footer .sitemap dl dd a {
          background: url(../images/link_arrow1.svg) no-repeat left center;
          padding: 0 0 0 15px; }
        footer .sitemap dl dd + dt {
          margin-top: 20px; }
    footer .sitemap .logo {
      position: absolute;
      bottom: 0;
      right: -20px; }
      footer .sitemap .logo img {
        width: auto;
        height: 50px; 
margin:0 20px 0 0;}
  footer .copyright {
    text-align: center;
    padding: 30px 0; }
    @media screen and (max-width: 767px) {
      footer .copyright {
        padding: 15px 0; } }

/*------------------------------------------*/
#mainvisual {
  position: relative;
  margin: 0 0 50px; }
  @media screen and (max-width: 767px) {
    #mainvisual {
      margin: 0 0 30px; } }
  #mainvisual .text {
    position: absolute;
    top: 180px;
    left: 50%;
    margin: 0 0 0 -425px;
    width: 850px;
    z-index: 100;
text-align: center;}
@media screen and (max-width: 767px) {
  #mainvisual .text {
    top: 15vw;
    left: 50%;
    margin: 0;
    width: 80%;
    transform: translateX(-50%); }
}


    #mainvisual .text img {
      width: 560px; }
  #mainvisual ul {
    margin: 0;
    padding: 0; }
    #mainvisual ul li {
      margin: 0;
      padding: 0;
      list-style: none; }
      #mainvisual ul li img {
        width: 100%; }

#pagevisual {
  border-bottom: 4px solid #d70c18;
  margin: 0; }
  #pagevisual img {
    width: 100%; }

#recruit_pagevisual {
  background: #0099ff;
  background-size: 14px;
  margin: 130px 0 50px; }
  @media screen and (max-width: 767px) {
    #recruit_pagevisual {
      background-size: 7px;
      margin: 0 0 20px; } }
  #recruit_pagevisual h1 {
    padding: 40px 0;
    margin: 0;
    color: #fff;
    font-size: 30px;
    line-height: 1;
    text-align: center; }
    @media screen and (max-width: 767px) {
      #recruit_pagevisual h1 {
        font-size: 20px;
        padding: 20px; } }

/*------------------------------------------*/
#news {
  margin: 0 0 50px; }
  @media screen and (max-width: 767px) {
    #news {
      margin: 0 0 30px; } }
  #news .inner {
    position: relative; }
  #news h2 {
    float: left;
    font-size: 16px;
    letter-spacing: 0.3em;
    width: 100px; }
    @media screen and (max-width: 767px) {
      #news h2 {
        float: none;
        width: auto;
        margin: 0; } }
  #news dl {
    overflow: hidden;
    width: 285px;
    margin: 0;
    padding: 0;
    float: left; }
    @media screen and (max-width: 767px) {
      #news dl {
        float: none;
        width: auto; } }
    #news dl dt {
      float: left;
      margin: 0 15px 0 0;
      padding: 0; }
    #news dl dd {
      overflow: hidden;
      margin: 0 0 10px;
      padding: 0; }
      @media screen and (max-width: 767px) {
        #news dl dd {
          margin: 0; } }
  #news .contact.pc_only {
    background: #2c308e;
    color: #fff;
    text-align: center;
    border-radius: 15px;
    box-shadow: 0 2px 8px 0px rgba(0, 0, 0, 0.3);
    width: 405px;
    padding: 10px 20px;
    float: right;
    font-weight: bold;
    font-size: 13px;
    box-sizing: border-box; }
    #news .contact.pc_only h3 {
      padding: 0 30px;
      margin: 0 0 5px;
      line-height: 0.1; }
    #news .contact.pc_only .tel {
      margin: 5px 0 0 0; }
  #news ul.bnrs {
    clear: both;
    margin: 0 -8px 0 -7px;
    padding: 30px 0 0 0; }
    @media screen and (max-width: 767px) {
      #news ul.bnrs {
        margin: 0 -15px;
        padding: 15px 0 0; } }
    #news ul.bnrs li {
      margin: 0 0 20px;
      padding: 0;
      list-style: none; }
      @media screen and (max-width: 767px) {
        #news ul.bnrs li {
          margin: 0 0 15px; }
        #news ul.bnrs li.sp_pad {
          margin: 0 15px 15px; }
}

/*------------------------------------------*/
#mobility .frame1 {
  background: url(../images/top/mobility_img1.jpg) no-repeat center bottom/100%;
  padding: 60px 0; }
  @media screen and (max-width: 767px) {
    #mobility .frame1 {
      background: #c1d6f1;
      padding: 30px 0 0; } }
  #mobility .frame1 h2 {
    margin: 0 0 40px;
    padding: 0; }
    @media screen and (max-width: 767px) {
      #mobility .frame1 h2 {
        width: 100px;
        margin: 0 0 15px; } }
  #mobility .frame1 p {
    margin: 0;
    line-height: 2.5;
    font-weight: 600;
    position: relative;
    z-index: 10; }
  #mobility .frame1 figure {
    margin-top: -5vw;
    position: relative;
    z-index: 1; }
#mobility .frame2 {
  border-top: 4px solid #d70c18;
  background: url(../images/top/mobility_img2.jpg) no-repeat center top/100%;
  text-align: center;
  color: #fff;
  padding: 30px 0 50px; }
  @media screen and (max-width: 767px) {
    #mobility .frame2 {
      padding: 15px 0;
      background: #0099ff; } }
  #mobility .frame2 h2 {
    font-size: 29px;
    margin: 0 0 30px; }
    @media screen and (max-width: 767px) {
      #mobility .frame2 h2 {
        font-size: 21px;
        margin: 0; } }
  #mobility .frame2 ul {
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: space-between; }
    #mobility .frame2 ul li {
      margin: 0;
      padding: 0;
      list-style: none; }
      #mobility .frame2 ul li a {
        width: 223px;
        height: 223px;
        line-height: 223px;
        font-weight: bold;
        font-size: 19px;
        color: #fff !important;
        display: block;
        text-decoration: none; }
      #mobility .frame2 ul li:nth-of-type(1) a {
        background: url(../images/top/icon1a.svg) no-repeat center center; }
      #mobility .frame2 ul li:nth-of-type(2) a {
        background: url(../images/top/icon2a.svg) no-repeat center center; }
      #mobility .frame2 ul li:nth-of-type(3) a {
        background: url(../images/top/icon3a.svg) no-repeat center center; }
#mobility .subblock {
  padding: 50px 0;
  background: #fff; }
  @media screen and (max-width: 767px) {
    #mobility .subblock {
      padding: 30px 0 0 !important; } }
  #mobility .subblock h3 {
    display: flex;
    align-items: center;
    font-size: 28px;
    color: #100964;
    font-weight: 900;
    margin: 0 0 30px;
    padding: 0; }
    @media screen and (max-width: 767px) {
      #mobility .subblock h3 {
        font-size: 21px;
        display: block;
        text-align: center;
        margin: 0 0 15px; } }
    #mobility .subblock h3 em {
      margin: 0 20px 0 0; }
    #mobility .subblock h3 span + em {
      margin: 0 0 0 20px ; }
      @media screen and (max-width: 767px) {
        #mobility .subblock h3 em {
          display: block;
          margin: 0 0 10px; }
    #mobility .subblock h3 span + em {
      margin:10px 0 0 ; }

}
#mobility #service {
  padding-bottom: 100px; }
  @media screen and (max-width: 767px) {
    #mobility #service {
      border-bottom: 1px solid #ccc; } }
  #mobility #service .left {
    width: 400px;
    float: left;
    margin: 0 0 40px; }
  #mobility #service .right {
    width: 400px;
    float: right;
    margin: 0 0 40px; }
  @media screen and (max-width: 767px) {
    #mobility #service .left {
      float: none;
      width: auto;
      margin: 0; }
    #mobility #service .right {
      float: none;
      width: auto;
      margin: 30px 0; } }
  #mobility #service ol {
    margin: 0;
    padding: 0; }
    #mobility #service ol li {
      margin: 0;
      padding: 0 0 60px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      list-style: none;
      position: relative; }
      @media screen and (max-width: 767px) {
        #mobility #service ol li {
          padding: 0 0 30px; } }
      #mobility #service ol li:after {
        content: "";
        background: url(../images/top/service_arrow.svg);
        width: 48px;
        height: 32px;
        position: absolute;
        bottom: 15px;
        left: 50%;
        margin: 0 0 0 -24px; }
        @media screen and (max-width: 767px) {
          #mobility #service ol li:after {
            background-size: 48px 20px;
            height: 20px;
            bottom: 5px; } }
      #mobility #service ol li:last-child {
        padding: 0; }
        #mobility #service ol li:last-child:after {
          display: none; }
      #mobility #service ol li figure {
        width: 123px;
        text-align: center; }
        @media screen and (max-width: 767px) {
          #mobility #service ol li figure {
            width: 20%; } }
      #mobility #service ol li .text {
        width: 260px; }
        @media screen and (max-width: 767px) {
          #mobility #service ol li .text {
            width: 75%; } }
        #mobility #service ol li .text strong {
          color: #2c308e;
          font-size: 18px; }
          @media screen and (max-width: 767px) {
            #mobility #service ol li .text strong {
              font-size: 15px; } }
        #mobility #service ol li .text p {
          margin: 5px 0 0 0; }
          @media screen and (max-width: 767px) {
            #mobility #service ol li .text p {
              margin: 0; } }
  #mobility #service .case {
    clear: both;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 767px) {
      #mobility #service .case {
        display: block; } }
    #mobility #service .case li {
      margin: 0;
      padding: 0 0 30px 0;
      width: 260px;
      list-style: none;
      position: relative; }
      @media screen and (max-width: 767px) {
        #mobility #service .case li {
          width: 100%;
          margin: 0 0 30px; } }
      #mobility #service .case li h4 {
        font-size: 18px;
        margin: 0 0 10px; }
      #mobility #service .case li figure {
        border: 1px solid #ccc;
        margin: 0 0 10px; }
      #mobility #service .case li a.btn1 {
        position: absolute;
        bottom: 0;
        left: 0; }
#mobility #performance {
  box-shadow: 0 0 100px 0 rgba(0, 0, 0, 0.2); }
  @media screen and (max-width: 767px) {
    #mobility #performance {
      box-shadow: none;
      border-bottom: 1px solid #ccc; } }
  #mobility #performance .inner {
    position: relative; }
  #mobility #performance .network {
    border: 1px solid #2c308e;
    color: #2c308e;
    text-align: center;
    position: absolute;
    top: 200px;
    left: 400px;
    z-index: 100;
    border-radius: 100px;
    width: 110px;
    height: 110px;
    box-sizing: border-box;
    padding-top: 25px;
    font-size: 13px; }
    @media screen and (max-width: 767px) {
      #mobility #performance .network {
        position: static;
        border: none;
        width: auto;
        height: auto;
        font-size: 18px;
        padding: 0;
        margin: 0 0 10px; }
        #mobility #performance .network + p {
          color: #2c308e; } }
  #mobility #performance .map {
    position: absolute;
    top: 30px;
    right: 0; }
    @media screen and (max-width: 767px) {
      #mobility #performance .map {
        position: static;
        margin: 30px 0; } }
  #mobility #performance .case {
    clear: both;
    margin: 80px 0 0 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    @media screen and (max-width: 767px) {
      #mobility #performance .case {
        display: block;
        margin: 30px 0 0; } }
    #mobility #performance .case li {
      margin: 0 0 20px;
      padding: 0;
      width: 184px;
      list-style: none;
      position: relative; }
      @media screen and (max-width: 767px) {
        #mobility #performance .case li {
          margin: 0 0 30px;
          width: 100%; } }
      #mobility #performance .case li h5 {
        font-size: 14px;
        margin: 0 0 5px;
        padding: 0 0 0 15px;
        background: url(../images/hw_dot.svg) no-repeat left center; }
        @media screen and (max-width: 767px) {
          #mobility #performance .case li h5 {
            background: none;
            font-size: 17px;
            padding: 0; } }
      #mobility #performance .case li figure {
        margin: 0 0 10px; }
#mobility #lineup {
  box-shadow: 0 0 100px 0 rgba(0, 0, 0, 0.2); }
  @media screen and (max-width: 767px) {
    #mobility #lineup {
      box-shadow: none; } }
  #mobility #lineup .inner {
    position: relative; }
  #mobility #lineup ul {
    margin: 30px 0 0 0;
    padding: 0; }
    #mobility #lineup ul li {
      margin: 0 0 10px;
      padding: 30px 0 0;
      list-style: none; }
      @media screen and (max-width: 767px) {
        #mobility #lineup ul li {
          padding: 20px 0 0; } }
      #mobility #lineup ul li#size_13t {
        background: #cfe5f2; }
        #mobility #lineup ul li#size_13t figure {
          padding: 0 0 20px; }
          @media screen and (max-width: 767px) {
            #mobility #lineup ul li#size_13t figure {
              padding: 0; } }
          #mobility #lineup ul li#size_13t figure figcaption {
            bottom: 0;
            left: 0; }
            @media screen and (max-width: 767px) {
              #mobility #lineup ul li#size_13t figure figcaption {
                position: static; } }
            #mobility #lineup ul li#size_13t figure figcaption em {
              right: 0;
              bottom: 140px;
              width: 100px; }
              @media screen and (max-width: 767px) {
                #mobility #lineup ul li#size_13t figure figcaption em {
                  top: 0;
                  width: 77px; } }
              #mobility #lineup ul li#size_13t figure figcaption em img {
                width: 100px; }
      #mobility #lineup ul li#size_4t {
        background: #d9e7de; }
        #mobility #lineup ul li#size_4t figure {
          padding: 0 0 20px; }
          @media screen and (max-width: 767px) {
            #mobility #lineup ul li#size_4t figure {
              padding: 0 !important; } }
          #mobility #lineup ul li#size_4t figure figcaption {
            bottom: 0;
            left: 0; }
            @media screen and (max-width: 767px) {
              #mobility #lineup ul li#size_4t figure figcaption {
                position: static; } }
            #mobility #lineup ul li#size_4t figure figcaption em {
              left: 0;
              bottom: 30px;
              width: 100px; }
              @media screen and (max-width: 767px) {
                #mobility #lineup ul li#size_4t figure figcaption em {
                  bottom: 10px !important;
                  width: 77px; } }
              #mobility #lineup ul li#size_4t figure figcaption em img {
                width: 100px; }
          #mobility #lineup ul li#size_4t figure:nth-of-type(-n + 2) {
            padding-bottom: 50px; }
            #mobility #lineup ul li#size_4t figure:nth-of-type(-n + 2) figcaption em {
              bottom: 55px; }
      #mobility #lineup ul li#size_3t2t {
        background: #eee6cf; }
        #mobility #lineup ul li#size_3t2t figure figcaption {
          bottom: 0;
          left: 0; }
        #mobility #lineup ul li#size_3t2t h4 {
          margin-bottom: 10px; }
      #mobility #lineup ul li#size_1t {
        background: #e2d7d8; }
        #mobility #lineup ul li#size_1t figure figcaption {
          bottom: 0;
          left: 0; }
      #mobility #lineup ul li h4 {
        text-align: center;
        margin: 0; }
        @media screen and (max-width: 767px) {
          #mobility #lineup ul li h4 {
            margin: 0 0 10px !important; } }
        #mobility #lineup ul li h4 span {
          background: #2c308e;
          border-radius: 100px;
          color: #fff;
          text-align: center;
          display: inline-block;
          margin: 0 10px;
          width: 53px;
          height: 53px;
          line-height: 53px;
          font-size: 18px;
          box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3); }
      #mobility #lineup ul li .list {
        margin: 0 -15px;
        display: flex;
        justify-content: center;
        align-items: flex-end;
        flex-wrap: wrap;
        font-size: 13px; }
        @media screen and (max-width: 767px) {
          #mobility #lineup ul li .list {
            display: block;
            padding: 0 0 1px;
            font-size: 10px; } }
        #mobility #lineup ul li .list figure {
          width: 410px;
          margin: 0 15px 30px;
          position: relative;
          font-weight: 600; }
          @media screen and (max-width: 767px) {
            #mobility #lineup ul li .list figure {
              width: auto; } }
          #mobility #lineup ul li .list figure figcaption {
            width: 100%;
            position: absolute; }
        #mobility #lineup ul li .list em {
          position: absolute; }
#mobility #quality {
  background: url(../images/bg_dot.png) repeat center top;
  padding: 30px 0;
  margin: 50px 0 0; }
  #mobility #quality h3 {
    display: block;
    text-align: center;
    color: #2c308e;
    font-size: 28px; }
    @media screen and (max-width: 767px) {
      #mobility #quality h3 {
        font-size: 20px; } }
  #mobility #quality ul {
    display: flex;
    justify-content: space-between;
    margin: 0;
    padding: 0; }
    @media screen and (max-width: 767px) {
      #mobility #quality ul {
        display: block; } }
    #mobility #quality ul li {
      margin: 0;
      padding: 0;
      list-style: none; }
      #mobility #quality ul li:nth-of-type(1) {
        width: 322px; }
      #mobility #quality ul li:nth-of-type(2) {
        width: 221px; }
      #mobility #quality ul li:nth-of-type(3) {
        width: 177px; }
      @media screen and (max-width: 767px) {
        #mobility #quality ul li {
          width: auto !important;
          margin: 0 0 30px; } }
      #mobility #quality ul li h4 {
        text-align: left;
        color: #2c308e;
        margin: 0 0 5px;
        font-size: 18px; }
        @media screen and (max-width: 767px) {
          #mobility #quality ul li h4 {
            font-size: 16px; } }
      #mobility #quality ul li figure {
        margin: 0 0 10px; }
        @media screen and (max-width: 767px) {
          #mobility #quality ul li figure.sub {
            width: 100px;
            float: right;
            margin: 0 0 10px 10px; } }

.sp_accordion_head {
  text-align: center;
  border-top: 1px solid #ccc;
  padding: 15px 0;
  font-size: 17px;
  font-weight: bold;
  box-sizing: border-box;
  margin: 0; }
  .sp_accordion_head:after {
    content: "";
    width: 34px;
    height: 34px;
    vertical-align: middle;
    display: inline-block;
    background: url(../images/sp_more.svg);
    background-size: 34px;
    margin: 0 0 0 10px; }
  .inner .sp_accordion_head {
    margin: 0 -15px 0px; }

/*------------------------------------------*/
.post-type-archive-news h1,
.single-news h1,
.page-company h1,
.page-inquiry h1,
.page-company-child h1 {
  text-align: center;
  font-size: 29px;
  padding: 50px 0 0;
  margin: 0; }
  @media screen and (max-width: 767px) {
    .post-type-archive-news h1,
    .single-news h1,
    .page-company h1,
    .page-inquiry h1,
    .page-company-child h1 {
      font-size: 21px;
      padding: 30px 0 0; } }
.post-type-archive-news #contents,
.single-news #contents,
.page-company #contents,
.page-inquiry #contents,
.page-company-child #contents {
  background: #0099ff;
  color: #fff;
  padding: 0;
  margin: 0;
  overflow: hidden; }
  .post-type-archive-news #contents a,
  .single-news #contents a,
  .page-company #contents a,
  .page-inquiry #contents a,
  .page-company-child #contents a {
    color: #aff;
 }
  .post-type-archive-news #contents section,
  .single-news #contents section,
  .page-company #contents section,
  .page-inquiry #contents section,
  .page-company-child #contents section {
    padding: 50px 0 0 0; }
    @media screen and (max-width: 767px) {
      .post-type-archive-news #contents section,
      .single-news #contents section,
      .page-company #contents section,
      .page-inquiry #contents section,
      .page-company-child #contents section {
        padding: 30px 0; } }
  .post-type-archive-news #contents dl,
  .single-news #contents dl,
  .page-company #contents dl,
  .page-inquiry #contents dl,
  .page-company-child #contents dl {
    margin: 0 0 10px;
    padding: 0; }
    .post-type-archive-news #contents dl dt,
    .single-news #contents dl dt,
    .page-company #contents dl dt,
    .page-inquiry #contents dl dt,
    .page-company-child #contents dl dt {
      margin: 0 0px 0 0;
      padding: 0;
      float: left;
      width: 7em; }
    .post-type-archive-news #contents dl dd,
    .single-news #contents dl dd,
    .page-company #contents dl dd,
    .page-inquiry #contents dl dd,
    .page-company-child #contents dl dd {
      overflow: hidden;
      margin: 0;
      padding: 0; }
.post-type-archive-news h2,
.single-news h2,
.page-company h2,
.page-inquiry h2,
.page-company-child h2 {
  font-size: 15px;
  margin: 0 0 10px;
  padding: 0; }
.post-type-archive-news iframe,
.single-news iframe,
.page-company iframe,
.page-inquiry iframe,
.page-company-child iframe {
  width: 400px;
  height: 320px; }
  @media screen and (max-width: 767px) {
    .post-type-archive-news iframe,
    .single-news iframe,
    .page-company iframe,
    .page-inquiry iframe,
    .page-company-child iframe {
      width: 100%;
      height: 250px; } }
.post-type-archive-news #anchor,
.single-news #anchor,
.page-company #anchor,
.page-inquiry #anchor,
.page-company-child #anchor {
  padding-top: 20px; }
  .post-type-archive-news #anchor ul,
  .single-news #anchor ul,
  .page-company #anchor ul,
  .page-inquiry #anchor ul,
  .page-company-child #anchor ul {
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 600px; }
    @media screen and (max-width: 767px) {
      .post-type-archive-news #anchor ul,
      .single-news #anchor ul,
      .page-company #anchor ul,
      .page-inquiry #anchor ul,
      .page-company-child #anchor ul {
        width: auto; } }
    .post-type-archive-news #anchor ul li,
    .single-news #anchor ul li,
    .page-company #anchor ul li,
    .page-inquiry #anchor ul li,
    .page-company-child #anchor ul li {
      margin: 20px 0 0;
      padding: 0;
      list-style: none;
      width: 190px;
      box-sizing: border-box; }
      @media screen and (max-width: 767px) {
        .post-type-archive-news #anchor ul li,
        .single-news #anchor ul li,
        .page-company #anchor ul li,
        .page-inquiry #anchor ul li,
        .page-company-child #anchor ul li {
          width: 48%; } }
      .post-type-archive-news #anchor ul li a,
      .single-news #anchor ul li a,
      .page-company #anchor ul li a,
      .page-inquiry #anchor ul li a,
      .page-company-child #anchor ul li a {
        display: block; }
        @media screen and (max-width: 767px) {
          .post-type-archive-news #anchor ul li a,
          .single-news #anchor ul li a,
          .page-company #anchor ul li a,
          .page-inquiry #anchor ul li a,
          .page-company-child #anchor ul li a {
            font-size: 13px;
            padding-top: 5px;
            padding-bottom: 5px; } }
.post-type-archive-news #outline .inner,
.single-news #outline .inner,
.page-company #outline .inner,
.page-inquiry #outline .inner,
.page-company-child #outline .inner {
  position: relative; }
.post-type-archive-news #outline .map,
.single-news #outline .map,
.page-company #outline .map,
.page-inquiry #outline .map,
.page-company-child #outline .map {
  position: absolute;
  top: 0;
  right: 0;
  width: 390px; }
  @media screen and (max-width: 767px) {
    .post-type-archive-news #outline .map,
    .single-news #outline .map,
    .page-company #outline .map,
    .page-inquiry #outline .map,
    .page-company-child #outline .map {
      position: static;
      width: auto;
      margin: 20px 0; } }
  .post-type-archive-news #outline .map iframe,
  .single-news #outline .map iframe,
  .page-company #outline .map iframe,
  .page-inquiry #outline .map iframe,
  .page-company-child #outline .map iframe {
    width: 100%; }
.post-type-archive-news #office,
.single-news #office,
.page-company #office,
.page-inquiry #office,
.page-company-child #office {
  background: #fff;
  color: #333;
  margin-top: 50px; }
  .post-type-archive-news #office h3,
  .single-news #office h3,
  .page-company #office h3,
  .page-inquiry #office h3,
  .page-company-child #office h3 {
    margin: 0 10px 0 0;
    float: left;
    font-size: 15px; }
    @media screen and (max-width: 767px) {
      .post-type-archive-news #office h3,
      .single-news #office h3,
      .page-company #office h3,
      .page-inquiry #office h3,
      .page-company-child #office h3 {
        float: none;
        margin: 0; } }
  .post-type-archive-news #office p,
  .single-news #office p,
  .page-company #office p,
  .page-inquiry #office p,
  .page-company-child #office p {
    overflow: hidden; }
  .post-type-archive-news #office ul,
  .single-news #office ul,
  .page-company #office ul,
  .page-inquiry #office ul,
  .page-company-child #office ul {
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; }
    .post-type-archive-news #office ul li,
    .single-news #office ul li,
    .page-company #office ul li,
    .page-inquiry #office ul li,
    .page-company-child #office ul li {
      margin: 0 0 30px;
      padding: 0;
      list-style: none;
      width: 400px; }
@media screen and (max-width: 767px) {
  .post-type-archive-news #license dl,
  .single-news #license dl,
  .page-company #license dl,
  .page-inquiry #license dl,
  .page-company-child #license dl {
    font-size: 11px; } }
.post-type-archive-news #license dl dt,
.single-news #license dl dt,
.page-company #license dl dt,
.page-inquiry #license dl dt,
.page-company-child #license dl dt {
  width: 10em; }
  @media screen and (max-width: 767px) {
    .post-type-archive-news #license dl dt,
    .single-news #license dl dt,
    .page-company #license dl dt,
    .page-inquiry #license dl dt,
    .page-company-child #license dl dt {
      float: none;
      width: auto; } }
@media screen and (max-width: 767px) {
  .post-type-archive-news #license dl dd,
  .single-news #license dl dd,
  .page-company #license dl dd,
  .page-inquiry #license dl dd,
  .page-company-child #license dl dd {
    margin: 0 0 5px; } }
.post-type-archive-news #history dl dt,
.single-news #history dl dt,
.page-company #history dl dt,
.page-inquiry #history dl dt,
.page-company-child #history dl dt {
  width: 7em; }
.post-type-archive-news #tsukiso,
.single-news #tsukiso,
.page-company #tsukiso,
.page-inquiry #tsukiso,
.page-company-child #tsukiso {
  margin-top: 50px;
  padding: 80px 0 !important;
  overflow: hidden;
  background: url(../images/company/message_bg.jpg) no-repeat center bottom/cover;
  text-align: center;
  color: #100964; }
  @media screen and (max-width: 767px) {
    .post-type-archive-news #tsukiso,
    .single-news #tsukiso,
    .page-company #tsukiso,
    .page-inquiry #tsukiso,
    .page-company-child #tsukiso {
      background: url(../images/company/message_bg_sp.jpg) no-repeat center bottom #e6f3f4;
      background-size: 100%; } }
  .post-type-archive-news #tsukiso h2,
  .single-news #tsukiso h2,
  .page-company #tsukiso h2,
  .page-inquiry #tsukiso h2,
  .page-company-child #tsukiso h2 {
    font-size: 25px; }
    .post-type-archive-news #tsukiso h2:nth-of-type(2),
    .single-news #tsukiso h2:nth-of-type(2),
    .page-company #tsukiso h2:nth-of-type(2),
    .page-inquiry #tsukiso h2:nth-of-type(2),
    .page-company-child #tsukiso h2:nth-of-type(2) {
      margin-top: 50px; }
  .post-type-archive-news #tsukiso strong,
  .single-news #tsukiso strong,
  .page-company #tsukiso strong,
  .page-inquiry #tsukiso strong,
  .page-company-child #tsukiso strong {
    font-size: 17px; }
    @media screen and (max-width: 767px) {
      .post-type-archive-news #tsukiso strong,
      .single-news #tsukiso strong,
      .page-company #tsukiso strong,
      .page-inquiry #tsukiso strong,
      .page-company-child #tsukiso strong {
        font-size: 13px; } }
  @media screen and (max-width: 767px) {
    .post-type-archive-news #tsukiso .sp_tal,
    .single-news #tsukiso .sp_tal,
    .page-company #tsukiso .sp_tal,
    .page-inquiry #tsukiso .sp_tal,
    .page-company-child #tsukiso .sp_tal {
      text-align: left; } }


#news_list dl {
  overflow: hidden;
  margin: 0;
  padding: 0; }
  #news_list dl dt {
    float: left;
    margin: 0 15px 0 0;
    padding: 0; }
  #news_list dl dd {
    overflow: hidden;
    margin: 0 0 10px;
    padding: 0; }
    #news_list dl dd a {
      color: #fff !important; }
    @media screen and (max-width: 767px) {
      #news_list dl dd {
        margin: 0; } }

/*------------------------------------------*/
.page-recruit h2 {
  color: #100964;
  font-size: 28px;
  margin: 0 0 30px; }
  @media screen and (max-width: 767px) {
    .page-recruit h2 {
      font-size: 18px;
      margin: 0 0 15px;
      text-align: center !important; } }
  .page-recruit h2 span {
    display: block;
    line-height: 1px;
    margin-bottom: 5px; }
.page-recruit ul.flex {
  display: flex;
  justify-content: space-between;
  margin: 0;
  padding: 0;
  flex-wrap: wrap; }
  .page-recruit ul.flex li {
    margin: 0;
    padding: 0;
    list-style: none;
    width: 260px;
    text-align: center;
    font-size: 17px;
    font-weight: bold; }
    @media screen and (max-width: 767px) {
      .page-recruit ul.flex li {
        font-size: 13px;
        width: 48%;
        display: flex;
        flex-direction: column-reverse;
        text-align: left;
        margin: 0 0 20px; } }
    .page-recruit ul.flex li figure {
      margin: 0 0 10px; }
      @media screen and (max-width: 767px) {
        .page-recruit ul.flex li figure {
          margin: 5px 0 0 0; } }
    .page-recruit ul.flex li strong {
      display: block; }
.page-recruit section {
  overflow: hidden; }
  @media screen and (max-width: 767px) {
    .page-recruit section {
      border-top: 2px solid #d70c18;
      padding: 30px 0 20px !important;
      margin: 0 !important; }
      .page-recruit section .inner {
        padding: 0 15px !important; }
      .page-recruit section:before, .page-recruit section:after {
        display: none !important; } }
.page-recruit .more {
  margin-top: 20px;
  text-align: right; }
  @media screen and (max-width: 767px) {
    .page-recruit .more {
      margin-top: 0px; } }

.entry_btn {
  text-align: center;
  margin: 70px 0; }
  @media screen and (max-width: 767px) {
    .entry_btn {
      border: none;
      margin: 20px 0 !important;
      padding: 0 !important; }
      .entry_btn:first-child {
        border-top: none !important;
        margin-top: -10px !important; } }

.catch_movie_wrap {
  height: 100vh;
  margin: 0 0 30px; }

#catch_movie {
  width: 100%;
  height: 100vh;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  background: url(../images/loading.gif) no-repeat center 40%; }

#catch_movie video {
  height: 100%;
  width: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }

#catch_movie .txt {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }

/*------------------------------------------*/
#top_reason {
  position: relative;
  z-index: 2; }
  @media screen and (max-width: 767px) {
    #top_reason {
      border: none; }
      #top_reason .more {
        margin-top: -35px; } }
  #top_reason h2 {
    text-align: center; }

/*------------------------------------------*/
#top_works {
  position: relative;
  z-index: 1;
  margin: -50px 0 0;
  background: url(../images/recruit/works1.jpg) no-repeat left center/100%;
  text-align: right; }
  @media screen and (max-width: 767px) {
    #top_works {
      background: none;
      text-align: left; } }
  #top_works .inner {
    padding: 100px 0 50px; }
  #top_works p {
    font-size: 17px; }
    @media screen and (max-width: 767px) {
      #top_works p {
        font-size: 15px; } }
  #top_works figure {
    margin: 0 0 10px; }
  #top_works:before {
    content: "";
    width: 100%;
    height: 200px;
    border-bottom: 4px solid #d70c18;
    transform: skew(0deg, 3.2deg);
    background: #fff;
    display: block;
    margin: -100px 0 0; }
  #top_works:after {
    content: "";
    width: 100%;
    height: 200px;
    border-top: 4px solid #d70c18;
    transform: skew(0deg, 3.2deg);
    background: #fff;
    display: block;
    margin: 0 0 -100px 0; }

/*------------------------------------------*/
#top_interview {
  position: relative;
  z-index: 2;
  margin-top: -30px; }
  @media screen and (max-width: 767px) {
    #top_interview {
      padding-bottom: 0 !important; } }
  #top_interview h2 {
    text-align: center; }
  #top_interview .inner {
    padding: 0 0 100px; }
    @media screen and (max-width: 767px) {
      #top_interview .inner ul {
        display: block; }
        #top_interview .inner ul li {
          display: block;
          overflow: hidden;
          width: auto;
          border-bottom: 1px solid #ccc;
          margin: 0 -15px;
          padding: 0 15px 0 0; }
          #top_interview .inner ul li:last-child {
            border: none; }
          #top_interview .inner ul li figure {
            float: left;
            width: 130px;
            height: 100px;
            overflow: hidden;
            margin: 0; }
          #top_interview .inner ul li a {
            float: right;
            margin-top: 10px; } }
    #top_interview .inner ul span {
      font-weight: normal;
      font-size: 14px;
      display: inline-block;
      padding: 0 0 0 15px;
      line-height: 1;
      background: url(../images/hw_dot.svg) no-repeat left center; }
      @media screen and (max-width: 767px) {
        #top_interview .inner ul span {
          margin-top: 40px; } }
    #top_interview .inner ul strong {
      display: block; }
      @media screen and (max-width: 767px) {
        #top_interview .inner ul strong {
          display: inline-block;
          font-size: 16px; } }
  #top_interview:after {
    content: "";
    width: 100%;
    height: 200px;
    border-top: 4px solid #d70c18;
    transform: skew(0deg, 3.2deg);
    background: #fff;
    display: block;
    margin: 0 0 -100px 0; }

/*------------------------------------------*/
#top_family {
  position: relative;
  z-index: 3;
  margin-top: -50px; }
  @media screen and (max-width: 767px) {
    #top_family .more {
      margin-top: -35px; } }

/*------------------------------------------*/
#top_faq {
  position: relative;
  z-index: 2;
  margin-top: -50px;
  text-align: right; }
  @media screen and (max-width: 767px) {
    #top_faq {
      background: none; }
      #top_faq figure {
        margin: 0 0 5px; } }
  #top_faq .inner {
    padding: 130px 0 60px;
    margin-top: -25px;
    background: url(../images/recruit/faq1.jpg) no-repeat left bottom/73%; }
    @media screen and (max-width: 767px) {
      #top_faq .inner {
        background: none;
        margin-top: 0; } }
  #top_faq:before {
    content: "";
    width: 100%;
    height: 200px;
    border-bottom: 4px solid #d70c18;
    transform: skew(0deg, 3.2deg);
    background: #fff;
    display: block;
    margin: -100px 0 0; }

/*------------------------------------------*/
#family ul {
  margin: 0;
  padding: 0; }
  #family ul li {
    margin: 40px 0 0 0;
    padding: 0;
    list-style: none;
    overflow: hidden; }
    @media screen and (max-width: 767px) {
      #family ul li {
        margin: 10px 0 0; } }
    #family ul li h2 {
      color: #100964;
      font-size: 28px; }
      @media screen and (max-width: 767px) {
        #family ul li h2 {
          font-size: 16px; } }
    #family ul li figure {
      float: left;
      width: 420px; }
      @media screen and (max-width: 767px) {
        #family ul li figure {
          float: none;
          width: auto;
          margin: 10px 0; } }
    #family ul li h2,
    #family ul li p,
    #family ul li .list {
      float: right;
      width: 400px; }
      @media screen and (max-width: 767px) {
        #family ul li h2,
        #family ul li p,
        #family ul li .list {
          float: none;
          width: auto; } }
    #family ul li li {
      display: inline-block;
      margin: 0 1em 0 0;
      text-indent: -1em;
      padding: 0 0 0 1em; }

/*------------------------------------------*/
#works .lead {
  margin: -50px 0 50px;
  padding: 50px 450px 0 0;
  background: url(../images/recruit/works/p0.jpg) no-repeat bottom right; }
  @media screen and (max-width: 767px) {
    #works .lead {
      background: none;
      margin: -20px 0 20px;
      padding: 0; }
      #works .lead figure {
        margin: 0 -15px 15px; } }
  #works .lead h2 {
    font-size: 28px;
    color: #100964; }
    @media screen and (max-width: 767px) {
      #works .lead h2 {
        font-size: 18px; } }
  #works .lead ul {
    margin: 5px 0 0 0;
    padding: 0; }
    #works .lead ul li {
      margin: 0;
      padding: 0;
      list-style: none;
      font-weight: bold; }
      #works .lead ul li span {
        color: #d70c18; }
#works h3 {
  background: url(../images/bg_line.png) repeat center top;
  background-size: 14px;
  color: #fff;
  font-size: 20px;
  padding: 10px 0;
  text-align: center; }
  @media screen and (max-width: 767px) {
    #works h3 {
      margin: 0 -15px;
      font-size: 16px;
      background-size: 7px; } }
#works ul.flow {
  margin: 0;
  padding: 0; }
  #works ul.flow li {
    margin: 40px 0 0 0;
    padding: 0 0 70px;
    list-style: none;
    overflow: hidden;
    background: url(../images/recruit/works/works_arrow.svg) no-repeat center bottom; }
    #works ul.flow li:last-child {
      background: none;
      padding-bottom: 0; }
    @media screen and (max-width: 767px) {
      #works ul.flow li {
        margin: 10px 0 0;
        background-size: 20px;
        padding: 0 0 15px 0; } }
    #works ul.flow li h4 {
      color: #100964;
      font-size: 28px;
      margin: 20px 0;
      padding: 0; }
      @media screen and (max-width: 767px) {
        #works ul.flow li h4 {
          font-size: 16px;
          margin: 0 0 5px; } }
    #works ul.flow li figure {
      float: left;
      width: 420px; }
      @media screen and (max-width: 767px) {
        #works ul.flow li figure {
          float: none;
          width: auto;
          margin: 10px 0; } }
    #works ul.flow li h4,
    #works ul.flow li p,
    #works ul.flow li ul {
      float: right;
      width: 400px; }
      @media screen and (max-width: 767px) {
        #works ul.flow li h4,
        #works ul.flow li p,
        #works ul.flow li ul {
          float: none;
          width: auto; } }
    #works ul.flow li li {
      display: inline-block;
      margin: 0 1em 0 0;
      text-indent: -1em;
      padding: 0 0 0 1em; }

/*------------------------------------------*/
#reason ul {
  margin: 0;
  padding: 0; }
  #reason ul li {
    margin: 40px 0 0 0;
    padding: 0;
    list-style: none;
    overflow: hidden; }
    @media screen and (max-width: 767px) {
      #reason ul li {
        margin: 10px 0 0; } }
    #reason ul li em {
      font-style: normal;
      display: block;
      color: #000;
      font-size: 13px; }
      #reason ul li em span {
        color: #d70c18; }
    #reason ul li h2 {
      color: #100964;
      font-size: 28px; }
      @media screen and (max-width: 767px) {
        #reason ul li h2 {
          font-size: 16px; } }
    #reason ul li figure {
      float: left;
      width: 340px; }
      @media screen and (max-width: 767px) {
        #reason ul li figure {
          float: none;
          width: auto;
          margin: 10px 0; } }
    #reason ul li h2,
    #reason ul li p,
    #reason ul li ul {
      float: right;
      width: 480px; }
      @media screen and (max-width: 767px) {
        #reason ul li h2,
        #reason ul li p,
        #reason ul li ul {
          float: none;
          width: auto; } }
    #reason ul li li {
      display: inline-block;
      margin: 0 1em 0 0;
      text-indent: -1em;
      padding: 0 0 0 1em; }
#reason .young {
  border-top: 2px dotted #0099ff;
  border-bottom: 2px dotted #0099ff;
  margin: 50px 0 0;
  padding: 30px 0 20px; }
  @media screen and (max-width: 767px) {
    #reason .young {
      margin: 20px 0 30px;
      padding: 20px 0 10px; } }
  #reason .young h3 {
    color: #100964;
    margin: 0 0 10px;
    padding: 0;
    font-size: 21px; }
    @media screen and (max-width: 767px) {
      #reason .young h3 {
        font-size: 16px; } }

/*------------------------------------------*/
#faq dl {
  margin: 0;
  padding: 0; }
  #faq dl dt {
    margin: 0 0 20px;
    padding: 0 0 0 50px;
    font-size: 28px;
    line-height: 40px;
    position: relative;
    font-weight: bold;
    color: #100964; }
    @media screen and (max-width: 767px) {
      #faq dl dt {
        font-size: 16px;
        line-height: 25px;
        padding-left: 35px;
        margin: 0 0 10px; } }
    #faq dl dt:before {
      content: "Q";
      color: #fff;
      display: block;
      height: 40px;
      width: 40px;
      text-align: center;
      background: #0099ff;
      position: absolute;
      top: 50%;
      left: 0;
      margin-top: -20px; }
      @media screen and (max-width: 767px) {
        #faq dl dt:before {
          height: 25px;
          width: 25px;
          margin-top: -12.5px; } }
  #faq dl dd {
    margin: 0 0 50px;
    padding: 0; }
    @media screen and (max-width: 767px) {
      #faq dl dd {
        margin: 0 0 30px; } }
#faq figure {
  display: flex;
  justify-content: space-between;
  text-align: center; }
  @media screen and (max-width: 767px) {
    #faq figure {
      display: block;
      margin: 0 0 30px; } }
  #faq figure div {
    width: 400px;
    height: auto; }
    @media screen and (max-width: 767px) {
      #faq figure div {
        width: auto;
        margin: 0  0 20px; } }

/*------------------------------------------*/
#entry table {
  width: 100%;
  margin: 0 0 50px; }
  @media screen and (max-width: 767px) {
    #entry table {
      margin: -20px -15px 20px;
      width: auto; } }
  #entry table th {
    border-bottom: 1px solid #fff;
    background: #d9e2e9;
    font-weight: normal;
    padding: 20px;
    vertical-align: top;
    white-space: nowrap; }
    @media screen and (max-width: 767px) {
      #entry table th {
        padding: 10px 15px; } }
  #entry table td {
    border-bottom: 1px solid #fff;
    background: #edf1f5;
    padding: 20px;
    vertical-align: top; }
    @media screen and (max-width: 767px) {
      #entry table td {
        padding: 10px 15px; } }
    #entry table td dl {
      margin: 0;
      padding: 0; }
      #entry table td dl dt {
        float: left;
        margin: 0 1em 0 0;
        padding: 0; }
      #entry table td dl dd {
        margin: 0;
        padding: 0;
        overflow: hidden; }
#entry h2 {
  margin: 0 0 15px;
  padding: 0;
  color: #100964;
  font-size: 28px; }
  @media screen and (max-width: 767px) {
    #entry h2 {
      font-size: 18px;
      margin: 0 0 10px; } }

/*------------------------------------------*/
#interview .title {
  margin: -50px 0 50px;
  height: 400px; }
  @media screen and (max-width: 767px) {
    #interview .title {
      height: 250px;
      margin: -20px 0 30px; } }
  #interview .title.driver {
    background: url(../images/recruit/interview/driver_main.jpg) no-repeat center top/cover; }
  #interview .title.dispatcher {
    background: url(../images/recruit/interview/dispatcher_main.jpg) no-repeat center top/cover; }
  #interview .title.chief {
    background: url(../images/recruit/interview/chief_main.jpg) no-repeat center center/cover; }
  #interview .title .inner {
    position: relative;
    height: 100%; }
  #interview .title .label {
    position: absolute;
    bottom: 0;
    left: 0; }
    @media screen and (max-width: 767px) {
      #interview .title .label {
        width: 60%;
        left: 15px; } }
#interview article {
  display: block;
  margin: 0 0 50px;
  padding: 0; }
  @media screen and (max-width: 767px) {
    #interview article {
      margin: 0 0 30px; } }
  #interview article + article {
    margin-top: 150px; }
    @media screen and (max-width: 767px) {
      #interview article + article {
        margin-top: 10px;
        padding-top: 30px;
        border-top: 1px solid #ccc; } }
  #interview article h2 {
    font-size: 32px;
    color: #100964;
    margin: 0 0 0px;
    padding: 0; }
    #interview article h2.pro2 {
      margin-left: 240px; }
    @media screen and (max-width: 767px) {
      #interview article h2 {
        margin: 0 !important;
        font-size: 18px; }
        #interview article h2 img {
          height: 47px;
          width: auto; } }
  #interview article h3 {
    font-size: 27px;
    color: #100964;
    margin: 0 0 10px;
    padding: 0; }
    @media screen and (max-width: 767px) {
      #interview article h3 {
        font-size: 18px; } }
  #interview article .profile1 {
    position: relative;
    margin: 0 0 50px;
    padding: 30px 0 50px; }
    @media screen and (max-width: 767px) {
      #interview article .profile1 {
        margin: 0 0 30px;
        padding: 10px 0; } }
    #interview article .profile1 .label {
      margin-left: 20px;
      margin: 0 0 15px; }
      #interview article .profile1 .label img {
        width: 100px !important; }
    #interview article .profile1 figure {
      position: absolute;
      bottom: 0;
      right: 0; }
      @media screen and (max-width: 767px) {
        #interview article .profile1 figure {
          width: 100%;
          text-align: right; }
          #interview article .profile1 figure img {
            float: right; } }
      #interview article .profile1 figure figcaption {
        position: absolute;
        bottom: 50px;
        left: -240px; }
    #interview article .profile1 strong {
      display: block;
      font-size: 21px;
      margin: 0 0 20px; }
      @media screen and (max-width: 767px) {
        #interview article .profile1 strong {
          margin: 0 0 5px; } }
    #interview article .profile1 p {
      line-height: 2.5; }
      @media screen and (max-width: 767px) {
        #interview article .profile1 p {
          font-size: 12px; } }
  #interview article .profile2 {
    position: relative;
    margin: 0 0 50px;
    padding: 30px 0 50px 450px; }
    @media screen and (max-width: 767px) {
      #interview article .profile2 {
        margin: 0 0 30px;
        padding: 10px 0; } }
    #interview article .profile2 .label {
      margin-left: 20px;
      margin: 0 0 15px; }
      #interview article .profile2 .label img {
        width: 100px !important; }
    #interview article .profile2 figure {
      position: absolute;
      bottom: 0;
      left: 0; }
      @media screen and (max-width: 767px) {
        #interview article .profile2 figure {
          width: 100%;
          text-align: right; }
          #interview article .profile2 figure img {
            float: right; } }
      #interview article .profile2 figure figcaption {
        position: absolute;
        bottom: 50px;
        right: -240px; }
    #interview article .profile2 strong {
      display: block;
      font-size: 21px;
      margin: 0 0 20px; }
      @media screen and (max-width: 767px) {
        #interview article .profile2 strong {
          margin: 0 0 5px; } }
    #interview article .profile2 p {
      line-height: 2.5; }
      @media screen and (max-width: 767px) {
        #interview article .profile2 p {
          font-size: 12px; } }
  #interview article .box {
    overflow: hidden;
    margin: 0 0 30px; }
    @media screen and (max-width: 767px) {
      #interview article .box {
        margin: 0 0 10px; } }
  #interview article figure.left {
    float: left;
    width: 420px;
    margin: 0 0 20px; }
  #interview article figure.right {
    float: right;
    width: 420px;
    margin: 0 0 20px; }
  #interview article div.left {
    float: left;
    width: 390px; }
  #interview article div.right {
    float: right;
    width: 390px; }
  @media screen and (max-width: 767px) {
    #interview article figure.left,
    #interview article figure.right {
      float: none;
      width: auto;
      text-align: center; }
    #interview article div.left,
    #interview article div.right {
      float: none;
      width: auto; } }
#interview .next {
  text-align: right; }
  @media screen and (max-width: 767px) {
    #interview .next {
      text-align: center;
      margin: 0  0 30px; }
      #interview .next img {
        width: 260px; } }
#interview #soudu figcaption {
  bottom: 30px !important; }
@media screen and (max-width: 767px) {
  #interview #soudu .profile1 figure img {
    width: 84px; } }
@media screen and (max-width: 767px) {
  #interview #ikekame .profile1 figure img {
    width: 70px; } }
@media screen and (max-width: 767px) {
  #interview #noumoto .profile2 figure img {
    width: 112px; } }

/*------------------------------------------*/
@media screen and (max-width: 767px) {
  #management_detail {
    margin-bottom: 30px; } }
#management_detail h2 {
  background: #b9c8d0;
  padding: 5px 10px;
  font-size: 20px;
  color: #100964;
  margin: 50px 0 0 0; }
  @media screen and (max-width: 767px) {
    #management_detail h2 {
      font-size: 18px; } }
#management_detail h3 {
  font-size: 18px;
  border-bottom: 1px solid #fff;
  margin: 30px 0 0 0;
  padding: 0 0 5px; }
  #management_detail h3:first-child {
    margin-top: 0; }
#management_detail h4 {
  margin: 20px 0 0 20px;
  padding: 0; }
  @media screen and (max-width: 767px) {
    #management_detail h4 {
      margin-left: 0; } }
#management_detail p {
  margin: 20px 0 0 20px; }
  @media screen and (max-width: 767px) {
    #management_detail p {
      margin-left: 0 !important; } }
#management_detail h4 + p {
  margin: 10px 0 0 40px; }
#management_detail dl {
  margin: 20px 0 0 20px !important; }
  @media screen and (max-width: 767px) {
    #management_detail dl {
      margin-left: 0 !important; } }
#management_detail dl.num dt {
  width: auto;
  margin: 0; }
#management_detail dl.num2 dt {
  width: 12em;
  white-space: nowrap; }
  @media screen and (max-width: 767px) {
    #management_detail dl.num2 dt {
      float: none;
      width: auto; } }
#management_detail table {
  margin: 20px 0 0 20px;
  width: calc(100% - 20px);
  border: 1px solid #fff; }
  @media screen and (max-width: 767px) {
    #management_detail table {
      margin-left: 0;
      width: 100%; } }
  #management_detail table th {
    padding: 5px 10px;
    background: #525366;
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;
    vertical-align: top; }
    #management_detail table th:last-child {
      border-right: none; }
  #management_detail table td {
    padding: 5px;
    background: #fff;
    color: #000;
    border-bottom: 1px solid #0099ff;
    border-right: 1px solid #0099ff; }
    #management_detail table td:last-child {
      border-right: none; }
  #management_detail table tbody tr:last-child th,
  #management_detail table tbody tr:last-child td {
    border-bottom: none; }
  #management_detail table.table1 {
    text-align: center; }
  #management_detail table.table3 th,
  #management_detail table.table3 td {
    text-align: center; }
  #management_detail table.table3 tbody th {
    text-align: left; }
  #management_detail table.table3 td {
    white-space: nowrap; }
  @media screen and (max-width: 767px) {
    #management_detail table.table4 {
      width: 850px; } }
  #management_detail table.table4 th {
    white-space: nowrap;
    vertical-align: middle; }
  #management_detail table.table4 th.month {
    text-align: center;
    width: 28px;
    line-height: 1.2;
    padding: 5px 0; }
  #management_detail table.table4 td {
    border-bottom: none;
    text-align: center;
    padding: 5px 0; }
  #management_detail table.table4 tr:nth-of-type(2n+1) th.sub {
    background: #0099ff; }
  #management_detail table.table4 tr:nth-of-type(2n) td {
    background: #e0e6e7; }
  #management_detail table.table5 th.w1 {
    text-align: center;
    vertical-align: middle;
    width: 60px;
    background: #0099ff;}
  #management_detail table.table5 th.w2 {
    text-align: center;
    vertical-align: middle;
    width: 500px;
    background: #0099ff;}
  #management_detail table.table5 th.w3 {
    text-align: center;
    vertical-align: middle;
    width: 100px;
    background: #0099ff;}
  #management_detail table.table5 th.w4 {
    text-align: center;
    vertical-align: middle;
    width: 100px;
    background: #0099ff;}
  #management_detail table.table5 td.d1 {
    text-align: left;
    color: #fff;
    background: #0099ff;
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;}
#management_detail .sp_scroll {
  overflow: auto; }
#management_detail .note {
  margin-top: 10px;
  text-align: right; }

/*------------------------------------------*/

.mw_wp_form .text_input,
.mw_wp_form .text_confirm {
  display: none; }

.mw_wp_form .text_input strong,
.mw_wp_form .text_confirm strong {
  color: #d70c18; }



.mw_wp_form_input .text_input,
.mw_wp_form_confirm .text_confirm {
  display: block;
  margin: 0 0 50px; }
  @media screen and (max-width: 767px) {
    #inquiry .mw_wp_form_input .text_input,
    #inquiry .mw_wp_form_confirm .text_confirm,
    #form .mw_wp_form_input .text_input,
    #form .mw_wp_form_confirm .text_confirm {
      margin: 0 0 30px; } }
#inquiry .sub,
#form .sub {
  font-size: 13px;
  font-weight: normal; }
#inquiry table,
#form table {
  width: 100%; }
  #inquiry table th,
  #form table th {
    font-size: 17px;
    vertical-align: top;
    padding: 0 30px 40px 0;
    white-space: nowrap;
    width: 220px; }
    @media screen and (max-width: 767px) {
      #inquiry table th,
      #form table th {
        display: block;
        padding: 0 0 10px;
        width: auto;
        white-space: normal; } }
    #inquiry table th .sub,
    #form table th .sub {
      margin-top: 5px; }
    #inquiry table th em,
    #form table th em {
      background: #d70c18;
      color: #fff;
      display: inline-block;
      margin: 0 0 0 10px;
      font-size: 13px;
      color: #fff;
      padding: 0px 10px;
      border-radius: 3px;
      font-style: normal; }
  #inquiry table td,
  #form table td {
    padding: 0 0 40px; }
    @media screen and (max-width: 767px) {
      #inquiry table td,
      #form table td {
        padding: 0 0 20px;
        display: block; } }
    #inquiry table td label,
    #form table td label {
      display: inline-block; }
    #inquiry table td .mwform-radio-field,
    #form table td .mwform-radio-field {
      margin: 0 0.6em 0 0; }
    #inquiry table td .error,
    #form table td .error {
      color: #ff0; }
    #inquiry table td input,
    #form table td input {
      box-sizing: border-box;
      padding: 0 5px; }
      #inquiry table td input.full,
      #form table td input.full {
        width: 100%; }
      @media screen and (max-width: 767px) {
        #inquiry table td input,
        #form table td input {
          height: 30px; } }
    #inquiry table td textarea,
    #form table td textarea {
      box-sizing: border-box;
      padding: 0 5px;
      width: 100%; }
#inquiry .btns,
#form .btns {
  text-align: center;
  padding: 20px 0; }
  #inquiry .btns input,
  #form .btns input {
    -webkit-appearance: none;
    background: -webkit-linear-gradient(left, #ad0c18 0%, #d70c18 50%, #ad0c18 100%);
    background: -moz-linear-gradient(left, #ad0c18 0%, #d70c18 50%, #ad0c18 100%);
    background: linear-gradient(to right, #ad0c18 0%, #d70c18 50%, #ad0c18 100%);
    color: #fff;
    font-size: 17px;
    border-radius: 10px;
    width: 272px;
    padding: 10px 0;
    border: none;
    font-weight: bold;
    outline: 0;
    transition: all 0.3s ease 0s; }
    #inquiry .btns input:hover,
    #form .btns input:hover {
      opacity: 0.8; }
    #inquiry .btns input.back,
    #form .btns input.back {
      background: #2c308e;
      margin-right: 30px; }
      @media screen and (max-width: 767px) {
        #inquiry .btns input.back,
        #form .btns input.back {
          margin: 0 0 20px; } }

#form h2 {
  text-align: center;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  padding: 10px 0;
  margin: 0 0 50px;
  font-size: 17px; }
  @media screen and (max-width: 767px) {
    #form h2 {
      margin: 0 0 30px; } }
#form table td .error {
  color: #d70c18; }
#form .btns {
  padding: 20px 0 70px; }
  @media screen and (max-width: 767px) {
    #form .btns {
      padding: 20px 0; } }
  #form .btns input.back {
    background: #ccc; }

/*------------------------------------------*/
.pager {
  text-align: center;
  padding: 30px 0; }
  .pager a, .pager span {
    color: #fff;
    padding: 10px 10px !important; }
  .pager .wp-pagenavi a:hover, .pager .wp-pagenavi span.current {
    border-color: #ff0; }

.pages {
  text-align: center;
  padding: 30px 0; }
  .pages a {
    color: #fff !important;
    display: inline-block;
    border: 1px solid #ccc;
    padding: 10px 30px;
    margin: 0 10px;
    text-decoration: none; }

/*------------------------------------------*/
#entry_list .anchor {
  margin: 0 0 50px;
  padding: 0;
  overflow: hidden; }
  @media screen and (max-width: 767px) {
    #entry_list .anchor {
      margin: 0 0 20px;
      display: flex;
      flex-wrap: wrap;
      border-top: 1px solid #333;
      border-left: 1px solid #333;
      align-items: stretch; } }
  #entry_list .anchor li {
    list-style: none;
    float: left;
    margin: 0 15px 0 0;
    padding: 0 15px 0 0;
    border-right: 1px solid #999; }
    @media screen and (max-width: 767px) {
      #entry_list .anchor li {
        border-right: 1px solid #333;
        border-bottom: 1px solid #333;
        margin: 0;
        padding: 10px 0;
        box-sizing: border-box;
        text-align: center;
        width: 33.3333333%;
        float: none; } }
    #entry_list .anchor li:last-child {
      margin: 0;
      padding: 0;
      border: none; }
      @media screen and (max-width: 767px) {
        #entry_list .anchor li:last-child {
          border-right: 1px solid #333;
          border-bottom: 1px solid #333;
          padding: 10px 0; } }
    #entry_list .anchor li a {
      text-decoration: none; }
#entry_list .box {
  margin: 0 0 50px 0; }
  #entry_list .box .parent h3 {
    background: #2c308e;
    font-weight: bold;
    color: #fff;
    padding: 8px 15px;
    margin: 0 0 30px; }
    @media screen and (max-width: 767px) {
      #entry_list .box .parent h3 {
        margin: 0 -15px 20px;
        text-align: center; } }
  #entry_list .box .child dl {
    margin: 0;
    padding: 0; }
    #entry_list .box .child dl dt {
      border-left: 10px solid #2c308e;
      padding: 3px 0 3px 20px;
      margin: 0 0 30px;
      font-size: 17px;
      font-weight: bold; }
      @media screen and (max-width: 767px) {
        #entry_list .box .child dl dt {
          padding: 3px 0 3px 15px;
          margin: 0  0 20px; } }
      #entry_list .box .child dl dt span {
        font-size: 14px;
        font-weight: normal;
        display: block;
        margin-top: 3px; }
    #entry_list .box .child dl dd {
      margin: 0 0 30px;
      padding: 0 0 25px;
      border-bottom: 1px solid #2c308e; }
      @media screen and (max-width: 767px) {
        #entry_list .box .child dl dd {
          margin: 0 -15px 20px;
          padding: 0 0 15px; } }
      #entry_list .box .child dl dd:last-child {
        border: none;
        margin-bottom: 0;
        padding-bottom: 0; }
      #entry_list .box .child dl dd ul {
        margin: 0;
        padding: 0; }
        #entry_list .box .child dl dd ul li {
          list-style: none;
          margin: 0 0 5px;
          padding: 15px 30px;
          background: #edf1f5;
          display: flex;
          justify-content: space-between;
          align-items: center;
          font-size: 16px;
          font-weight: bold; }
          @media screen and (max-width: 767px) {
            #entry_list .box .child dl dd ul li {
              display: block; } }
          #entry_list .box .child dl dd ul li .text {
            width: 640px; }
            @media screen and (max-width: 767px) {
              #entry_list .box .child dl dd ul li .text {
                width: auto;
                margin: 0 0 10px; } }
          #entry_list .box .child dl dd ul li a {
            display: block;
            width: 129px;
            height: 50px;
            background: url(../images/recruit/btn_detail.png) no-repeat center center/129px;
            text-indent: -999em;
            overflow: hidden;
            margin: 0 auto; }
            #entry_list .box .child dl dd ul li a:hover {
              background-image: url(../images/recruit/btn_detail_on.png); }

/*------------------------------------------*/
#entry_detail {
  margin: 0 0 60px; }
  @media screen and (max-width: 767px) {
    #entry_detail {
      margin: 0 0 40px; } }
  #entry_detail h2 {
    border-left: 20px solid #2c308e;
    padding: 5px 0 5px 30px;
    margin: 0 0 30px;
    font-size: 22px;
    font-weight: bold; }
    @media screen and (max-width: 767px) {
      #entry_detail h2 {
        border-left-width: 10px;
        padding-left: 15px;
        margin: 0  0 20px;
        font-size: 18px; } }
  #entry_detail table {
    border-top: 1px solid #333;
    width: 100%; }
    @media screen and (max-width: 767px) {
      #entry_detail table {
        border: none;
        display: block; }
        #entry_detail table tbody, #entry_detail table tr {
          display: block; } }
    #entry_detail table th {
      border-bottom: 1px solid #333;
      background: #cddbe1;
      padding: 15px 20px;
      width: 150px;
      box-sizing: border-box;
      vertical-align: top; }
      @media screen and (max-width: 767px) {
        #entry_detail table th {
          border: none;
          display: block;
          background: none;
          font-weight: bold;
          font-size: 17px;
          width: auto;
          padding: 0 0 10px; } }
    #entry_detail table td {
      border-bottom: 1px solid #333;
      background: #edf1f5;
      padding: 15px 20px; }
      @media screen and (max-width: 767px) {
        #entry_detail table td {
          border: none;
          background: none;
          display: block;
          padding: 0; } }
    @media screen and (max-width: 767px) {
      #entry_detail table tr + tr th {
        border-top: 1px solid #333;
        padding-top: 20px;
        margin-top: 20px; } }
  #entry_detail .googlemap {
    margin: 30px 0; }
    @media screen and (max-width: 767px) {
      #entry_detail .googlemap {
        margin: 20px 0; } }
    #entry_detail .googlemap iframe {
      width: 100%;
      height: 400px;
      vertical-align: top; }
      @media screen and (max-width: 767px) {
        #entry_detail .googlemap iframe {
          height: 199px; } }
  #entry_detail .bnrs {
    margin: 50px 0;
    overflow: hidden; }
    #entry_detail .bnrs a:first-child {
      float: left; }
    #entry_detail .bnrs a:last-child {
      float: right; }
    @media screen and (max-width: 767px) {
      #entry_detail .bnrs {
        text-align: center;
        margin: 20px 0; }
        #entry_detail .bnrs a {
          width: calc(50% - 10px);
          display: block; } }
  #entry_detail .photo {
    margin: 0 0 40px 0; }
    @media screen and (max-width: 767px) {
      #entry_detail .photo {
        margin: 0 0 20px 0; } }
  #entry_detail .anchor {
    text-align: center;
    margin: 0 0 30px; }
    @media screen and (max-width: 767px) {
      #entry_detail .anchor {
        margin: 30px 0; }
        #entry_detail .anchor img {
          width: 200px; } }
  #entry_detail .message {
    margin-top: 40px; }
    @media screen and (max-width: 767px) {
      #entry_detail .message {
        border-top: 1px solid #333;
        padding-top: 20px;
        margin-top: 20px; } }
    #entry_detail .message h3 {
      font-size: 25px;
      color: #100964;
      margin: 0 0 20px; }
      @media screen and (max-width: 767px) {
        #entry_detail .message h3 {
          font-size: 20px;
          margin: 0 0 10px; } }

#entry_houhou {
  margin: 0 0 60px; }
  @media screen and (max-width: 767px) {
    #entry_houhou {
      margin: 0 0 40px; } }
  #entry_houhou h2 {
    background: #2c308e;
    font-weight: bold;
    color: #fff;
    padding: 8px 15px;
    margin: 0 0 30px;
    text-align: center; }
    @media screen and (max-width: 767px) {
      #entry_houhou h2 {
        padding: 15px 0;
        margin: 0 -15px 20px;
        font-size: 17px; } }
  #entry_houhou .tel {
    text-align: center; }
    @media screen and (max-width: 767px) {
      #entry_houhou .tel img {
        width: 260px;
        height: 100px; } }
    #entry_houhou .tel a, #entry_houhou .tel span {
      display: block;
      margin-top: 10px; }

#entry_office {
  margin: 0px 0 60px; }
  @media screen and (max-width: 767px) {
    #entry_office {
      margin: 0px 0 40px; } }
  #entry_office h2 {
    background: #2c308e;
    font-weight: bold;
    color: #fff;
    padding: 8px 15px;
    margin: 0 0 30px;
    text-align: center; }
    @media screen and (max-width: 767px) {
      #entry_office h2 {
        padding: 15px 0;
        margin: 0 -15px 20px;
        font-size: 17px; } }
  #entry_office table {
    width: 100%;
    margin: 0 0 30px; }
    @media screen and (max-width: 767px) {
      #entry_office table {
        border: none;
        display: block; }
        #entry_office table tbody, #entry_office table tr {
          display: block; } }
    #entry_office table th {
      border-bottom: 1px solid #fff;
      background: #cddbe1;
      padding: 15px 20px;
      width: 150px;
      box-sizing: border-box; }
      @media screen and (max-width: 767px) {
        #entry_office table th {
          border: none;
          display: block;
          background: none;
          font-weight: bold;
          font-size: 17px;
          width: auto;
          padding: 0 0 0px; } }
    #entry_office table td {
      border-bottom: 1px solid #fff;
      background: #edf1f5;
      padding: 15px 20px; }
      @media screen and (max-width: 767px) {
        #entry_office table td {
          border: none;
          background: none;
          display: block;
          padding: 0 0 20px; } }

p.entry_list {
  text-align: center;
  margin: 20px 0 60px; }
  @media screen and (max-width: 767px) {
    p.entry_list {
      margin: 10px 0 20px; } }
  p.entry_list a.btn {
    font-size: 17px;
    border: 2px solid #333;
    padding: 0;
    display: block;
    width: 272px;
    line-height: 43px;
    margin: 0 auto;
    text-decoration: none;
    border-radius: 10px;
    font-weight: bold;
    box-sizing: border-box; }
    @media screen and (max-width: 767px) {
      p.entry_list a.btn {
        width: 200px; } }
    p.entry_list a.btn:hover {
      background: #2c308e;
      border-color: #2c308e;
      color: #fff;
      opacity: 1; }

@media screen and (max-width: 767px) {
  .entry_finish {
    margin: 0 0 40px; } }

/*------------------------------------------*/
#entry_form {
  margin: 0 0 60px; }
  @media screen and (max-width: 767px) {
    #entry_form {
      margin: -50px 0 0px;
      padding: 50px 0 0; }
      #entry_form #mw_wp_form_mw-wp-form-150 {
        padding-top: 70px;
        margin-top: -70px; }
      #entry_form form {
        background: #cddbe1;
        margin: 0 -15px;
        padding: 0 15px 15px; }
      #entry_form .sp_frame {
        background: #fff;
        padding: 15px; } }
  #entry_form .text_input,
  #entry_form .text_confirm {
    display: none; }
  #entry_form .mw_wp_form_input .text_input,
  #entry_form .mw_wp_form_confirm .text_confirm {
    display: block;
    margin: 0 0 50px; }
    @media screen and (max-width: 767px) {
      #entry_form .mw_wp_form_input .text_input,
      #entry_form .mw_wp_form_confirm .text_confirm {
        margin: 0 0 30px; } }
  #entry_form .sub {
    font-size: 13px;
    font-weight: normal; }
  #entry_form h2 {
    background: #2c308e;
    font-weight: bold;
    color: #fff;
    padding: 8px 15px;
    margin: 0 0 30px;
    text-align: center; }
    @media screen and (max-width: 767px) {
      #entry_form h2 {
        padding: 15px 0;
        margin: 0 -15px 20px;
        font-size: 17px; } }
  #entry_form h3 {
    text-align: center;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    padding: 10px 0;
    margin: 0 0 50px;
    font-size: 17px; }
    @media screen and (max-width: 767px) {
      #entry_form h3 {
        margin: 0 0 30px; } }
  #entry_form table {
    width: 100%; }
    #entry_form table th {
      font-size: 17px;
      vertical-align: top;
      padding: 0 30px 40px 0;
      white-space: nowrap;
      width: 220px;
      line-height: 40px; }
      @media screen and (max-width: 767px) {
        #entry_form table th {
          display: block;
          padding: 0 0 10px;
          width: auto;
          white-space: normal;
          line-height: 1.6; } }
      #entry_form table th .sub {
        margin-top: 5px; }
      #entry_form table th em {
        background: #d70c18;
        color: #fff;
        display: inline-block;
        margin: 5px 0 0 10px;
        font-size: 13px;
        color: #fff;
        padding: 0px 10px;
        border-radius: 3px;
        font-style: normal;
        line-height: 30px;
        vertical-align: top; }
        @media screen and (max-width: 767px) {
          #entry_form table th em {
            vertical-align: top;
            margin: 2px 0 0 5px; } }
    #entry_form table td {
      padding: 0 0 40px;
      font-size: 17px; }
      @media screen and (max-width: 767px) {
        #entry_form table td {
          padding: 0 0 30px;
          display: block;
          font-size: 15px; } }
      #entry_form table td label {
        display: inline-block; }
      #entry_form table td .mwform-radio-field {
        margin: 0 0.6em 0 0; }
      #entry_form table td .error {
        color: #d70c18; }
      @media screen and (max-width: 767px) {
        #entry_form table td .radios {
          display: flex;
          justify-content: space-between;
          flex-wrap: wrap; }
          #entry_form table td .radios .mwform-radio-field {
            margin: 0;
            width: 50%; } }
      #entry_form table td input,
      #entry_form table td select {
        box-sizing: border-box;
        padding: 0 5px;
        height: 40px;
        background: #fff;
        font-size: 17px;
        border: 1px solid #ccc; }
        #entry_form table td input.full,
        #entry_form table td select.full {
          width: 100%; }
        #entry_form table td input.zip,
        #entry_form table td select.zip {
          width: 200px; }
        #entry_form table td input.tel,
        #entry_form table td select.tel {
          width: 400px; }
        @media screen and (max-width: 767px) {
          #entry_form table td input,
          #entry_form table td select {
            padding: 0;
            font-size: 15px;
            height: 40px;
            border: none;
            border: none;
            border-bottom: 1px solid #333; }
            #entry_form table td input.tel,
            #entry_form table td select.tel {
              width: 100%; } }
      #entry_form table td select {
        padding: 0; }
      #entry_form table td textarea {
        box-sizing: border-box;
        padding: 0 5px;
        width: 100%;
        font-size: 17px;
        border: 1px solid #ccc; }
        @media screen and (max-width: 767px) {
          #entry_form table td textarea {
            font-size: 15px;
            height: 200px; } }
  #entry_form .btns {
    text-align: center;
    padding: 20px 0; }
    @media screen and (max-width: 767px) {
      #entry_form .btns {
        padding: 10px 0 20px; } }
    #entry_form .btns input {
      -webkit-appearance: none;
      background: -webkit-linear-gradient(left, #ad0c18 0%, #d70c18 50%, #ad0c18 100%);
      background: -moz-linear-gradient(left, #ad0c18 0%, #d70c18 50%, #ad0c18 100%);
      background: linear-gradient(to right, #ad0c18 0%, #d70c18 50%, #ad0c18 100%);
      color: #fff;
      font-size: 17px;
      border-radius: 10px;
      width: 272px;
      padding: 10px 0;
      border: none;
      font-weight: bold;
      outline: 0;
      transition: all 0.3s ease 0s; }
      @media screen and (max-width: 767px) {
        #entry_form .btns input {
          width: 200px;
          margin: 0 10px; } }
      #entry_form .btns input:hover {
        opacity: 0.8; }
      #entry_form .btns input.back {
        background: #2c308e;
        margin-right: 30px; }
        @media screen and (max-width: 767px) {
          #entry_form .btns input.back {
            margin: 0 10px 20px; } }

/*------------------------------------------*/
/*------------------------------------------*/
/*------------------------------------------*/
/*------------------------------------------*/
/*------------------------------------------*/
/*------------------------------------------*/
/*------------------------------------------*/
/*------------------------------------------*/
/*------------------------------------------*/
/*------------------------------------------*/
/*------------------------------------------*/
/*------------------------------------------*/
/*------------------------------------------*/
/*------------------------------------------*/
/*------------------------------------------*/
/*------------------------------------------*/
/*------------------------------------------*/
/*------------------------------------------*/
/*------------------------------------------*/
/*------------------------------------------*/
/*------------------------------------------*/
