@charset "UTF-8";
/*!
 * Bootstrap v4.0.0-alpha.4 (http://getbootstrap.com)
 * Copyright 2011-2016 The Bootstrap Authors
 * Copyright 2011-2016 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
@import url(//fonts.googleapis.com/earlyaccess/notosansjapanese.css);
html {
  font-size: 62.5%; }

body {
  font-family: "Noto Sans Japanese", sans-serif;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: .02em;
  -webkit-text-size-adjust: 100%;
  margin: 0;
  padding: 0;
  color: #262626;
  font-size: 14px;
  font-size: 1.4rem; }
  @media screen and (max-width: 741px) {
    body {
      line-height: 1.7; } }

html, body {
  position: relative; }

* {
  vertical-align: top;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent; }

img {
  height: auto;
  max-width: 100%;
  vertical-align: top; }

a {
  cursor: pointer;
  color: #EB1E1E;
  text-decoration: underline;
  transition: 0.2s all cubic-bezier(0.39, 0.575, 0.565, 1); }
  a:not(.hover_non):hover {
    text-decoration: none; }

.hover {
  cursor: pointer;
  transition: .2s all; }
  .hover:hover {
    opacity: .7; }

hr {
  margin: 0;
  padding: 0;
  border: 0;
  border-top: 1px solid #EB1E1E;
  height: 0; }
  hr.color_glay {
    border-top: 1px solid #E5E5E5; }
  hr.color_blue {
    border-top: 2px solid #EB1E1E; }

input, textarea {
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "sans-serif";
  letter-spacing: inherit; }

input, button, select, textarea, textarea {
  -webkit-appearance: none;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0; }

input[type=checkbox] {
  -webkit-appearance: checkbox; }

input[type=radio] {
  -webkit-appearance: radio; }

.pc_disp_inline {
  display: inline !important; }

.pc_disp_inline_b {
  display: inline-block !important; }

.pc_disp_block {
  display: block !important; }

.pc_disp_table_c {
  display: table-cell !important; }

.sp_disp_inline {
  display: none !important; }

.sp_disp_inline_b {
  display: none !important; }

.sp_disp_block {
  display: none !important; }

.sp_disp_table_c {
  display: none !important; }

.sp_disp_table {
  display: none !important; }

@media screen and (max-width: 741px) {
  .pc_disp_inline {
    display: none !important; }

  .pc_disp_inline_b {
    display: none !important; }

  .pc_disp_block {
    display: none !important; }

  .pc_disp_table_c {
    display: none !important; }

  .sp_disp_inline {
    display: inline !important; }

  .sp_disp_inline_b {
    display: inline-block !important; }

  .sp_disp_block {
    display: block !important; }

  .sp_disp_table_c {
    display: table-cell !important; }

  .sp_disp_table {
    display: table !important; } }
#topcontrol {
  bottom: 20px;
  right: 20px;
  width: 50px;
  height: 50px; }
  @media screen and (max-width: 741px) {
    #topcontrol {
      display: none; } }

.btn_pt_a {
  border: 1px solid #fff;
  background: #fff;
  color: #262626;
  display: block;
  line-height: 1;
  letter-spacing: 0.15em;
  padding-top: 10px;
  text-decoration: none;
  transition: .3s all;
  font-size: 15px;
  font-size: 1.5rem;
  width: 201px;
  height: 36px; }
  @media screen and (max-width: 741px) {
    .btn_pt_a {
      padding-top: 9px;
      font-size: 14px;
      font-size: 1.4rem;
      width: 187px;
      height: 36px; } }
  @media screen and (min-width: 1025px) {
    .btn_pt_a:hover {
      background: #000;
      color: #fff; } }
  .btn_pt_a img {
    margin-top: 2px;
    margin-left: 6px;
    width: 7px;
    height: 11px; }

#content {
  padding-top: 147px; }
  #top #content {
    padding-top: 181px; }
  @media only screen and (min-width: 742px) and (max-width: 1024px) {
    #content {
      padding-top: 110px !important; } }
  @media screen and (max-width: 741px) {
    #content {
      padding-top: 53px !important; } }

#top .section {
  padding: 0 40px; }
  @media screen and (max-width: 741px) {
    #top .section {
      padding: 0 20px; } }
  #top .section .inner {
    margin: 0 auto;
    max-width: 1024px; }

#header {
  background: white;
  left: 0;
  padding: 0 40px;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100; }
  #top #header {
    padding: 0; }
  @media only screen and (min-width: 742px) and (max-width: 1024px) {
    #header {
      padding: 0 40px !important; } }
  @media screen and (max-width: 741px) {
    #header {
      padding: 0 !important; } }
  @media screen and (min-width: 1025px) {
    #header.on .inner {
      min-height: 110px !important;
      padding-top: 25px !important;
      padding-bottom: 0 !important; }
      #header.on .inner .logo_box {
        margin-top: 5px;
        max-width: 115px !important; }
      #header.on .inner .tel_fax_box_pc {
        margin-top: 0; } }
  #header .inner {
    margin: 0 auto;
    min-height: 147px;
    transition: .3s all;
    padding: 45px 0;
    max-width: 1024px; }
    #top #header .inner {
      min-height: 181px;
      padding: 63px 95px 0 90px;
      max-width: 1500px; }
    @media only screen and (min-width: 742px) and (max-width: 1024px) {
      #header .inner {
        min-height: 110px !important;
        padding: 30px 0 0 !important; } }
    @media screen and (max-width: 741px) {
      #header .inner {
        min-height: 53px !important;
        padding: 16px 20px 0 20px !important; } }
    #header .inner .logo_box {
      float: left;
      max-width: 138px; }
      #top #header .inner .logo_box {
        max-width: 138px; }
      @media only screen and (min-width: 742px) and (max-width: 1024px) {
        #header .inner .logo_box {
          margin-top: 5px;
          max-width: 103px !important; } }
      @media screen and (max-width: 741px) {
        #header .inner .logo_box {
          margin-top: 0 !important;
          max-width: 51px !important; } }
      #header .inner .logo_box a {
        display: block; }
    #header .inner .tel_fax_box_pc {
      float: right;
      font-size: 0;
      margin-top: 3px;
      margin-bottom: 27px; }
      #top #header .inner .tel_fax_box_pc {
        margin-top: 0; }
      @media only screen and (min-width: 742px) and (max-width: 1024px) {
        #header .inner .tel_fax_box_pc {
          margin-bottom: 20px; } }
      @media screen and (max-width: 741px) {
        #header .inner .tel_fax_box_pc {
          display: none; } }
      #header .inner .tel_fax_box_pc li {
        display: inline-block; }
        #header .inner .tel_fax_box_pc li + li {
          margin-left: 21px; }
        #header .inner .tel_fax_box_pc li img {
          height: 11px; }
    #header .inner .g_navi_box {
      clear: right;
      float: right;
      font-size: 0; }
      @media screen and (max-width: 741px) {
        #header .inner .g_navi_box {
          background: #fff;
          left: 0;
          opacity: 0;
          padding: 16px 23px 25px;
          position: fixed;
          top: 53px;
          transition: .3s all;
          width: 100%;
          visibility: hidden; }
          #header .inner .g_navi_box.on {
            opacity: 1;
            visibility: visible; } }
      #header .inner .g_navi_box > a {
        display: inline-block; }
        @media screen and (max-width: 741px) {
          #header .inner .g_navi_box > a {
            display: block;
            text-align: center; } }
        #header .inner .g_navi_box > a + a {
          margin-left: 45px; }
          @media only screen and (min-width: 742px) and (max-width: 1024px) {
            #header .inner .g_navi_box > a + a {
              margin-left: 25px; } }
          @media screen and (max-width: 741px) {
            #header .inner .g_navi_box > a + a {
              margin-left: 0;
              margin-top: 30px; } }
        @media screen and (max-width: 741px) {
          #header .inner .g_navi_box > a:first-child span img {
            height: 12px; } }
        #header .inner .g_navi_box > a span {
          display: block;
          position: relative; }
          @media screen and (max-width: 741px) {
            #header .inner .g_navi_box > a span {
              display: inline-block; } }
          #header .inner .g_navi_box > a span img {
            height: 15px; }
            @media only screen and (min-width: 742px) and (max-width: 1024px) {
              #header .inner .g_navi_box > a span img {
                height: 12px; } }
            @media screen and (max-width: 741px) {
              #header .inner .g_navi_box > a span img {
                height: 14px; } }
          #header .inner .g_navi_box > a span:after {
            background: #EB1E1E;
            bottom: -16px;
            content: '';
            display: block;
            height: 3px;
            left: 50%;
            position: absolute;
            transition: .2s all;
            width: 0; }
            @media screen and (max-width: 741px) {
              #header .inner .g_navi_box > a span:after {
                bottom: -12px;
                height: 2px; } }
        @media screen and (min-width: 1025px) {
          #header .inner .g_navi_box > a:hover span:after {
            left: 0;
            width: 100%; } }
        #header .inner .g_navi_box > a.current span:after {
          left: 0;
          width: 100%; }
      #header .inner .g_navi_box .tel_fax_box_sp {
        border-top: 1px solid #ccc;
        display: none;
        margin-top: 44px;
        padding: 25px 0 0;
        text-align: center; }
        @media screen and (max-width: 741px) {
          #header .inner .g_navi_box .tel_fax_box_sp {
            display: block; } }
        #header .inner .g_navi_box .tel_fax_box_sp a, #header .inner .g_navi_box .tel_fax_box_sp span {
          display: inline-block;
          width: 201px; }
        #header .inner .g_navi_box .tel_fax_box_sp span {
          margin-top: 9px; }
    #header .inner #sp_menu_btn {
      cursor: pointer;
      position: absolute;
      right: 20px;
      top: 17px;
      width: 19px;
      height: 17px; }
      #header .inner #sp_menu_btn span {
        background: #EB1E1E;
        display: block;
        left: 0;
        position: absolute;
        transition: all .2s;
        width: 19px;
        height: 2px; }
        #header .inner #sp_menu_btn span:nth-child(1) {
          top: 0; }
        #header .inner #sp_menu_btn span:nth-child(2) {
          top: 7px; }
        #header .inner #sp_menu_btn span:nth-child(3) {
          bottom: 0; }
      #header .inner #sp_menu_btn.off span:nth-child(1) {
        top: 8px;
        transform: rotate(45deg); }
      #header .inner #sp_menu_btn.off span:nth-child(2) {
        opacity: 0; }
      #header .inner #sp_menu_btn.off span:nth-child(3) {
        bottom: 7px;
        transform: rotate(-45deg); }

#footer {
  background: #262626; }
  #footer .inner {
    padding-top: 98px;
    padding-bottom: 93px;
    text-align: center; }
    @media only screen and (min-width: 742px) and (max-width: 1024px) {
      #footer .inner {
        padding-top: 40px;
        padding-bottom: 40px; } }
    @media screen and (max-width: 741px) {
      #footer .inner {
        padding-top: 33px;
        padding-bottom: 30px; } }
    #footer .inner .btn_top_scroll {
      cursor: pointer;
      display: inline-block; }
      #footer .inner .btn_top_scroll img {
        width: 36px; }
        @media screen and (max-width: 741px) {
          #footer .inner .btn_top_scroll img {
            width: 27px; } }
    #footer .inner .copy {
      color: #fff;
      font-weight: 300;
      margin-top: 26px;
      letter-spacing: 0.15em;
      font-size: 19px;
      font-size: 1.9rem; }
      @media screen and (max-width: 741px) {
        #footer .inner .copy {
          margin-top: 16px;
          font-size: 14px;
          font-size: 1.4rem; } }
      #footer .inner .copy span {
        display: block;
        font-weight: 200;
        margin: 6px auto 0;
        letter-spacing: 0.13em;
        font-size: 10px;
        font-size: 1rem; }
        @media screen and (max-width: 741px) {
          #footer .inner .copy span {
            margin: -1px auto 0;
            transform: scale(0.7); } }

#content_head_line_box {
  color: #fff;
  height: 240px;
  padding-top: 67px;
  text-align: center; }
  @media only screen and (min-width: 742px) and (max-width: 1024px) {
    #content_head_line_box {
      height: 200px;
      padding-top: 55px; } }
  @media screen and (max-width: 741px) {
    #content_head_line_box {
      height: 170px;
      padding-top: 40px; } }
  #content_head_line_box h2 {
    font-weight: 600;
    letter-spacing: 0.09em;
    line-height: 1;
    position: relative;
    font-size: 40px;
    font-size: 4rem; }
    @media only screen and (min-width: 742px) and (max-width: 1024px) {
      #content_head_line_box h2 {
        font-size: 30px;
        font-size: 3rem; } }
    @media screen and (max-width: 741px) {
      #content_head_line_box h2 {
        font-size: 24px;
        font-size: 2.4rem; } }
    #content_head_line_box h2:after {
      background: #fff;
      content: '';
      display: block;
      left: 50%;
      margin-left: -32px;
      position: absolute;
      top: 60px;
      width: 64px;
      height: 2px; }
      @media only screen and (min-width: 742px) and (max-width: 1024px) {
        #content_head_line_box h2:after {
          margin-left: -20px;
          top: 52px;
          width: 40px;
          height: 2px; } }
      @media screen and (max-width: 741px) {
        #content_head_line_box h2:after {
          margin-left: -16px;
          top: 40px;
          width: 32px;
          height: 2px; } }
  #content_head_line_box p {
    letter-spacing: 0.09em;
    margin-top: 40px;
    font-size: 18px;
    font-size: 1.8rem; }
    @media only screen and (min-width: 742px) and (max-width: 1024px) {
      #content_head_line_box p {
        font-size: 15px;
        font-size: 1.5rem; } }
    @media screen and (max-width: 741px) {
      #content_head_line_box p {
        margin-top: 25px;
        font-size: 14px;
        font-size: 1.4rem; } }

#main_wrapper {
  padding: 64px 40px 0; }
  @media only screen and (min-width: 742px) and (max-width: 1024px) {
    #main_wrapper {
      padding-top: 40px; } }
  @media screen and (max-width: 741px) {
    #main_wrapper {
      padding: 0; } }
  #main_wrapper #main_inner {
    margin: 0 auto;
    max-width: 1024px;
    position: relative; }
    #main_wrapper #main_inner #local_navi_box {
      border-right: 1px solid #262626;
      margin-bottom: 60px;
      padding-bottom: 92px;
      position: absolute;
      top: 0;
      width: 174px; }
      @media screen and (max-width: 1024px) {
        #main_wrapper #main_inner #local_navi_box {
          border-right: 0;
          font-size: 0;
          margin-bottom: 0;
          padding-bottom: 40px;
          position: relative;
          text-align: center;
          width: 100%; } }
      @media screen and (max-width: 741px) {
        #main_wrapper #main_inner #local_navi_box {
          max-width: 280px;
          margin-right: 0;
          margin-bottom: 32px;
          margin-left: 0;
          max-width: none;
          padding: 30px 20px 0;
          width: 100%; } }
      #main_wrapper #main_inner #local_navi_box.on {
        top: 174px;
        position: fixed; }
        #main_wrapper #main_inner #local_navi_box.on.bottom {
          bottom: 0;
          position: absolute;
          top: auto; }
      #main_wrapper #main_inner #local_navi_box a {
        background: url(../img/icon_local_navi_01.png) center left no-repeat;
        background-size: 7px 11px;
        color: #262626;
        display: block;
        font-weight: 700;
        line-height: 1;
        margin-bottom: 24px;
        padding-left: 18px;
        text-decoration: none;
        font-size: 16px;
        font-size: 1.6rem; }
        @media only screen and (min-width: 742px) and (max-width: 1024px) {
          #main_wrapper #main_inner #local_navi_box a:not(:first-child) {
            border-left: 1px solid #ccc; } }
        @media screen and (max-width: 1024px) {
          #main_wrapper #main_inner #local_navi_box a {
            background: url(../img/icon_local_navi_01_sp.png) bottom center no-repeat;
            background-size: 10px 7px;
            display: inline-block;
            line-height: 1.3;
            letter-spacing: 0.05em;
            margin-bottom: 0;
            padding-left: 0;
            vertical-align: top;
            font-size: 12px;
            font-size: 1.2rem;
            width: 90px;
            height: 42px; }
            #main_wrapper #main_inner #local_navi_box a.line_1 {
              padding-top: 7px; } }
        @media screen and (max-width: 741px) {
          #main_wrapper #main_inner #local_navi_box a {
            margin-bottom: 16px;
            width: 93px;
            height: 42px; }
            #main_wrapper #main_inner #local_navi_box a + a {
              border-left: 1px solid #ccc; } }
        #main_wrapper #main_inner #local_navi_box a:last-child {
          margin-bottom: 0; }
        #main_wrapper #main_inner #local_navi_box a br {
          display: none; }
          @media screen and (max-width: 1024px) {
            #main_wrapper #main_inner #local_navi_box a br {
              display: inline; } }
      #main_wrapper #main_inner #local_navi_box hr {
        display: none; }
        @media screen and (max-width: 1024px) {
          #main_wrapper #main_inner #local_navi_box hr {
            border-top: 1px solid #ccc;
            display: block;
            margin-top: 40px; } }
        @media screen and (max-width: 741px) {
          #main_wrapper #main_inner #local_navi_box hr {
            margin-top: 17px; } }
    #main_wrapper #main_inner .section {
      padding-left: 266px;
      margin-bottom: 92px; }
      @media screen and (max-width: 1024px) {
        #main_wrapper #main_inner .section {
          padding-left: 0;
          margin-bottom: 64px; } }
      @media screen and (max-width: 741px) {
        #main_wrapper #main_inner .section {
          padding-left: 20px;
          padding-right: 20px; } }
      #main_wrapper #main_inner .section h3.pt_a {
        font-weight: 700;
        line-height: 1;
        margin-bottom: 45px;
        padding-bottom: 27px;
        position: relative;
        text-align: left;
        font-size: 24px;
        font-size: 2.4rem; }
        @media only screen and (min-width: 742px) and (max-width: 1024px) {
          #main_wrapper #main_inner .section h3.pt_a {
            margin-bottom: 35px;
            padding-bottom: 25px;
            font-size: 20px;
            font-size: 2rem; } }
        @media screen and (max-width: 741px) {
          #main_wrapper #main_inner .section h3.pt_a {
            font-weight: 600;
            margin-bottom: 32px;
            padding-bottom: 20px;
            text-align: center;
            font-size: 20px;
            font-size: 2rem; } }
        #main_wrapper #main_inner .section h3.pt_a:after {
          background: #EB1E1E;
          bottom: 0;
          content: '';
          left: 0;
          position: absolute;
          width: 64px;
          height: 2px; }
          @media screen and (max-width: 741px) {
            #main_wrapper #main_inner .section h3.pt_a:after {
              left: 50%;
              margin-left: -32px; } }
      #main_wrapper #main_inner .section .box_table {
        display: table;
        width: 100%; }
        @media screen and (max-width: 741px) {
          #main_wrapper #main_inner .section .box_table {
            display: block; } }
        #main_wrapper #main_inner .section .box_table .cell {
          display: table-cell;
          vertical-align: top; }
          @media screen and (max-width: 741px) {
            #main_wrapper #main_inner .section .box_table .cell {
              display: block; } }

#top #main_vuisual_wrap {
  height: 766px;
  overflow: hidden;
  position: relative; }
  @media only screen and (min-width: 742px) and (max-width: 1024px) {
    #top #main_vuisual_wrap {
      height: 600px; } }
  @media screen and (max-width: 741px) {
    #top #main_vuisual_wrap {
      height: 320px; } }
  #top #main_vuisual_wrap .inner {
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10; }
    #top #main_vuisual_wrap .inner .main_pic {
      height: 100%;
      left: 0;
      opacity: 0;
      position: absolute;
      top: 0;
      width: 100%;
      transition-property: opacity, transform;
      transition-duration: 3s, 13s;
      transition-timing-function: liner, liner;
      z-index: 50;
      transform: scale(1); }
      #top #main_vuisual_wrap .inner .main_pic.view {
        opacity: 1;
        transform: scale(1.07); }
        @media screen and (max-width: 741px) {
          #top #main_vuisual_wrap .inner .main_pic.view {
            transform: scale(1.2); } }
      #top #main_vuisual_wrap .inner .main_pic.pic_1 {
        background-image: url(../img/top/pic_slide_01.jpg);
        background-position: center;
        background-size: cover; }
        @media screen and (max-width: 741px) {
          #top #main_vuisual_wrap .inner .main_pic.pic_1 {
            background-image: url(../img/top/pic_slide_01_sp.jpg);
            background-position: center;
            background-size: cover; } }
      #top #main_vuisual_wrap .inner .main_pic.pic_2 {
        background-image: url(../img/top/pic_slide_02.jpg);
        background-position: center;
        background-size: cover; }
        @media screen and (max-width: 741px) {
          #top #main_vuisual_wrap .inner .main_pic.pic_2 {
            background-image: url(../img/top/pic_slide_02_sp.jpg);
            background-position: center;
            background-size: cover; } }
      #top #main_vuisual_wrap .inner .main_pic.pic_3 {
        background-image: url(../img/top/pic_slide_03.jpg);
        background-position: center;
        background-size: cover; }
        @media screen and (max-width: 741px) {
          #top #main_vuisual_wrap .inner .main_pic.pic_3 {
            background-image: url(../img/top/pic_slide_03_sp.jpg);
            background-position: center;
            background-size: cover; } }
      #top #main_vuisual_wrap .inner .main_pic.pic_4 {
        background-image: url(../img/top/pic_slide_04.jpg);
        background-position: center;
        background-size: cover; }
        @media screen and (max-width: 741px) {
          #top #main_vuisual_wrap .inner .main_pic.pic_4 {
            background-image: url(../img/top/pic_slide_04_sp.jpg);
            background-position: center;
            background-size: cover; } }
      #top #main_vuisual_wrap .inner .main_pic.pic_5 {
        background-image: url(../img/top/pic_slide_05.jpg);
        background-position: center;
        background-size: cover; }
        @media screen and (max-width: 741px) {
          #top #main_vuisual_wrap .inner .main_pic.pic_5 {
            background-image: url(../img/top/pic_slide_05_sp.jpg);
            background-position: center;
            background-size: cover; } }
    #top #main_vuisual_wrap .inner .txt_box {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      margin: auto;
      width: 966px;
      height: 161px;
      z-index: 70; }
      @media only screen and (min-width: 742px) and (max-width: 1024px) {
        #top #main_vuisual_wrap .inner .txt_box {
          width: 676px;
          height: 113px; } }
      @media screen and (max-width: 741px) {
        #top #main_vuisual_wrap .inner .txt_box {
          width: 276px;
          height: 123px; } }
      #top #main_vuisual_wrap .inner .txt_box.on .txt01 {
        opacity: 1; }
      #top #main_vuisual_wrap .inner .txt_box img {
        left: 0;
        opacity: 0;
        position: absolute;
        top: 0;
        transition: .2s all;
        width: 100%; }
        #top #main_vuisual_wrap .inner .txt_box img.txt01 {
          transition: 2s all 1s; }
      #top #main_vuisual_wrap .inner .txt_box:after {
        background: white;
        content: '';
        display: block;
        height: 3px;
        margin: 156px auto 0;
        transition: .8s all 2s;
        width: 0; }
        @media only screen and (min-width: 742px) and (max-width: 1024px) {
          #top #main_vuisual_wrap .inner .txt_box:after {
            height: 2px;
            margin: 108px auto 0; } }
        @media screen and (max-width: 741px) {
          #top #main_vuisual_wrap .inner .txt_box:after {
            height: 1px;
            margin: 55px auto 0; } }
    #top #main_vuisual_wrap .inner:after {
      background: rgba(0, 0, 0, 0.3);
      content: '';
      display: block;
      height: 100%;
      left: 0;
      position: absolute;
      top: 0;
      width: 100%;
      z-index: 60; }
#top .read_main_wrap h2 {
  font-weight: 700;
  letter-spacing: 0.15em;
  line-height: 1.95;
  padding: 88px 0 84px;
  text-align: center;
  font-size: 18px;
  font-size: 1.8rem; }
  @media only screen and (min-width: 742px) and (max-width: 1024px) {
    #top .read_main_wrap h2 {
      padding: 50px 0 50px;
      font-size: 18px;
      font-size: 1.8rem; } }
  @media screen and (max-width: 741px) {
    #top .read_main_wrap h2 {
      letter-spacing: inherit;
      line-height: 1.8;
      padding: 25px 0 25px;
      text-align: left;
      font-size: 14px;
      font-size: 1.4rem; } }
@media screen and (max-width: 741px) {
  #top .menu_wrap {
    padding: 0; } }
#top .menu_wrap .inner + .inner {
  margin-top: 2px; }
  @media only screen and (min-width: 742px) and (max-width: 1024px) {
    #top .menu_wrap .inner + .inner {
      margin-top: 0; } }
  @media screen and (max-width: 741px) {
    #top .menu_wrap .inner + .inner {
      margin-top: 0; } }
#top .menu_wrap .tail_box {
  float: left;
  height: 512px;
  opacity: 0;
  position: relative;
  transform: translateY(30px);
  transition-property: opacity, transform;
  transition-duration: .8s, 2s;
  width: 50%; }
  #top .menu_wrap .tail_box.view {
    transform: translateY(0);
    opacity: 1; }
  @media only screen and (min-width: 742px) and (max-width: 1024px) {
    #top .menu_wrap .tail_box {
      float: none;
      height: 400px;
      width: 100%; } }
  @media screen and (max-width: 741px) {
    #top .menu_wrap .tail_box {
      height: 320px;
      width: 100%; } }
  #top .menu_wrap .tail_box.left {
    border-right: 1px solid #fff; }
    @media only screen and (min-width: 742px) and (max-width: 1024px) {
      #top .menu_wrap .tail_box.left {
        border-right: none; } }
  #top .menu_wrap .tail_box.right {
    border-left: 1px solid #fff; }
    @media only screen and (min-width: 742px) and (max-width: 1024px) {
      #top .menu_wrap .tail_box.right {
        border-left: none; } }
  #top .menu_wrap .tail_box .txt {
    color: #fff;
    margin-top: 158px;
    position: absolute;
    text-align: center;
    width: 100%;
    z-index: 20; }
    @media only screen and (min-width: 742px) and (max-width: 1024px) {
      #top .menu_wrap .tail_box .txt {
        margin-top: 100px; } }
    @media screen and (max-width: 741px) {
      #top .menu_wrap .tail_box .txt {
        margin-top: 83px; } }
    #top .menu_wrap .tail_box .txt h3 {
      font-weight: 700;
      letter-spacing: 0.2em;
      line-height: 1;
      margin-bottom: 32px;
      font-size: 28.5px;
      font-size: 2.85rem; }
      @media screen and (max-width: 741px) {
        #top .menu_wrap .tail_box .txt h3 {
          margin-bottom: 17px;
          font-size: 24px;
          font-size: 2.4rem; } }
    #top .menu_wrap .tail_box .txt p {
      font-weight: 600;
      letter-spacing: 0.125em;
      line-height: 2.2;
      font-size: 18px;
      font-size: 1.8rem; }
      @media screen and (max-width: 741px) {
        #top .menu_wrap .tail_box .txt p {
          font-weight: inherit;
          line-height: 2;
          font-size: 12px;
          font-size: 1.2rem; } }
    #top .menu_wrap .tail_box .txt .btn_pt_a {
      margin: 20px auto 0; }
      @media screen and (max-width: 741px) {
        #top .menu_wrap .tail_box .txt .btn_pt_a {
          margin: 27px auto 0; } }
  #top .menu_wrap .tail_box .bg {
    position: absolute;
    height: 100%;
    width: 100%;
    z-index: 10; }
    #top .menu_wrap .tail_box .bg.sec_01 {
      background-image: url(../img/top/bg_menu_01.jpg);
      background-position: center;
      background-size: cover; }
    #top .menu_wrap .tail_box .bg.sec_02 {
      background-image: url(../img/top/bg_menu_02.jpg);
      background-position: center;
      background-size: cover; }
    #top .menu_wrap .tail_box .bg.sec_03 {
      background-image: url(../img/top/bg_menu_03.jpg);
      background-position: center;
      background-size: cover; }
    #top .menu_wrap .tail_box .bg.sec_04 {
      background-image: url(../img/top/bg_menu_04.jpg);
      background-position: center;
      background-size: cover; }
    #top .menu_wrap .tail_box .bg:after {
      background: transparent;
      content: '';
      display: block;
      position: absolute;
      transition: .7s all;
      z-index: 20;
      width: 100%;
      height: 100%; }
  #top .menu_wrap .tail_box.on .bg:after {
    background: rgba(0, 0, 0, 0.3); }
#top .access_wrap {
  padding-top: 90px; }
  @media only screen and (min-width: 742px) and (max-width: 1024px) {
    #top .access_wrap {
      padding-top: 60px; } }
  @media screen and (max-width: 741px) {
    #top .access_wrap {
      padding-top: 28px; } }
  #top .access_wrap h3 {
    text-align: center; }
    #top .access_wrap h3 img {
      width: 192px; }
      @media screen and (max-width: 741px) {
        #top .access_wrap h3 img {
          width: 93px; } }
    #top .access_wrap h3 span {
      display: block;
      font-weight: 600;
      letter-spacing: 0.15em;
      line-height: 1;
      margin-top: 20px;
      font-size: 15px;
      font-size: 1.5rem; }
      @media screen and (max-width: 741px) {
        #top .access_wrap h3 span {
          font-weight: 800;
          margin-top: 8px;
          font-size: 11px;
          font-size: 1.1rem; } }
  #top .access_wrap .map_box {
    margin-top: 75px; }
    @media only screen and (min-width: 742px) and (max-width: 1024px) {
      #top .access_wrap .map_box {
        margin-top: 50px; } }
    @media screen and (max-width: 741px) {
      #top .access_wrap .map_box {
        margin-top: 32px; } }
    #top .access_wrap .map_box #map01 {
      height: 360px; }
      @media screen and (max-width: 741px) {
        #top .access_wrap .map_box #map01 {
          height: 180px; } }
#top .company_wrap {
  letter-spacing: 0.15em;
  line-height: 1.9;
  padding-top: 105px;
  padding-bottom: 110px; }
  @media only screen and (min-width: 742px) and (max-width: 1024px) {
    #top .company_wrap {
      padding-top: 50px;
      padding-bottom: 50px; } }
  @media screen and (max-width: 741px) {
    #top .company_wrap {
      letter-spacing: inherit;
      line-height: 1.5;
      padding-top: 10px;
      padding-bottom: 50px; } }
  #top .company_wrap img {
    float: left;
    margin-right: 50px;
    width: 317px; }
    @media only screen and (min-width: 742px) and (max-width: 1024px) {
      #top .company_wrap img {
        width: 150px; } }
    @media screen and (max-width: 741px) {
      #top .company_wrap img {
        margin-right: 35px;
        width: 117px; } }
  @media only screen and (min-width: 742px) and (max-width: 1024px) {
    #top .company_wrap p {
      padding-left: 200px; } }
  @media screen and (max-width: 741px) {
    #top .company_wrap p {
      letter-spacing: inherit; } }
  #top .company_wrap p.access {
    margin-top: 30px;
    font-size: 15px;
    font-size: 1.5rem; }
    @media only screen and (min-width: 742px) and (max-width: 1024px) {
      #top .company_wrap p.access {
        margin-top: 0;
        font-size: 13px;
        font-size: 1.3rem; }
        #top .company_wrap p.access br {
          display: none; } }
    @media screen and (max-width: 741px) {
      #top .company_wrap p.access {
        margin-top: 0;
        margin-bottom: 30px;
        font-size: 12px;
        font-size: 1.2rem; }
        #top .company_wrap p.access br {
          display: none; } }
  #top .company_wrap p.name {
    font-weight: 800;
    line-height: 1;
    margin-top: 43px;
    font-size: 24px;
    font-size: 2.4rem; }
    @media only screen and (min-width: 742px) and (max-width: 1024px) {
      #top .company_wrap p.name {
        margin-top: 20px;
        font-size: 17px;
        font-size: 1.7rem; } }
    @media screen and (max-width: 741px) {
      #top .company_wrap p.name {
        letter-spacing: 0.07em;
        line-height: 1.45;
        margin-top: 71px;
        font-size: 15px;
        font-size: 1.5rem; } }
  #top .company_wrap p.address {
    margin-top: 30px;
    font-size: 15px;
    font-size: 1.5rem; }
    @media only screen and (min-width: 742px) and (max-width: 1024px) {
      #top .company_wrap p.address {
        margin-top: 15px;
        font-size: 13px;
        font-size: 1.3rem; } }
    @media screen and (max-width: 741px) {
      #top .company_wrap p.address {
        clear: both;
        margin-top: 0;
        padding-top: 22px;
        font-size: 12px;
        font-size: 1.2rem; } }
  #top .company_wrap p.contents {
    margin-top: 14px;
    font-size: 13px;
    font-size: 1.3rem; }
    @media screen and (max-width: 741px) {
      #top .company_wrap p.contents {
        margin-top: 9px;
        font-size: 12px;
        font-size: 1.2rem; } }

#company #content_head_line_box {
  background: url(../img/company/bg_content_head_line_01.jpg) center center no-repeat;
  background-size: cover; }
  @media screen and (max-width: 741px) {
    #company #content_head_line_box {
      background: url(../img/company/bg_content_head_line_01_sp.jpg) center center no-repeat;
      background-size: cover; } }
#company .message {
  width: 100%; }
  #company .message .txt {
    line-height: 2;
    margin-top: -8px;
    font-size: 15px;
    font-size: 1.5rem; }
    @media screen and (max-width: 741px) {
      #company .message .txt {
        font-size: 14px;
        font-size: 1.4rem; } }
  #company .message .pic {
    width: 269px; }
  #company .message .pic {
    float: right;
    margin: 0 0 50px 50px; }
    @media screen and (max-width: 741px) {
      #company .message .pic {
        text-align: center;
        width: 100%;
        margin: 0 0 25px; } }
    #company .message .pic img {
      margin-bottom: 20px; }
      @media screen and (max-width: 741px) {
        #company .message .pic img {
          margin-right: 15px;
          margin-bottom: 0;
          width: 150px; } }
    #company .message .pic p {
      display: block;
      font-weight: 600;
      letter-spacing: 0.18em;
      text-align: center;
      font-size: 15px;
      font-size: 1.5rem; }
      @media screen and (max-width: 741px) {
        #company .message .pic p {
          display: inline-block;
          text-align: left;
          font-size: 14px;
          font-size: 1.4rem; } }
      #company .message .pic p span {
        padding-right: 14px; }
        @media screen and (max-width: 741px) {
          #company .message .pic p span {
            padding-right: 0;
            font-size: 11px;
            font-size: 1.1rem; } }
#company .biography {
  width: 100%; }
  #company .biography .pic {
    width: 260px; }
    @media screen and (max-width: 741px) {
      #company .biography .pic {
        width: 100%;
        max-width: 180px;
        margin: 0 auto 25px; } }
  #company .biography .txt {
    line-height: 2;
    margin-top: -8px;
    padding-left: 50px;
    font-size: 15px;
    font-size: 1.5rem; }
    @media screen and (max-width: 741px) {
      #company .biography .txt {
        padding-left: 0;
        font-size: 14px;
        font-size: 1.4rem; } }
#company .slogan {
  text-align: center; }
  #company .slogan p {
    max-width: 758px;
    line-height: 1;
    margin: 0 auto; }
    @media screen and (max-width: 741px) {
      #company .slogan p {
        max-width: 550px; } }
#company .company-policy p {
  font-weight: 500;
  line-height: 1.6;
  font-size: 18px;
  font-size: 1.8rem; }
  @media screen and (max-width: 741px) {
    #company .company-policy p {
      font-size: 16px;
      font-size: 1.6rem; } }
#company .guideline p {
  font-weight: 500;
  line-height: 2.0;
  font-size: 18px;
  font-size: 1.8rem; }
  @media screen and (max-width: 741px) {
    #company .guideline p {
      font-size: 16px;
      font-size: 1.6rem; } }
#company .quality-policy .box_table{
  margin: 0 0 40px; }
  @media screen and (max-width: 741px) {
    #company .quality-policy .box_table{
      margin: 0 0 30px; } }
#company .quality-policy .txt01 {
  line-height: 1.6;
  font-size: 18px;
  font-size: 1.8rem;
  margin: 0 0 40px; }
  @media screen and (max-width: 741px) {
    #company .quality-policy .txt01 {
      font-size: 16px;
      font-size: 1.6rem;
      margin: 0 0 30px; }
      #company .quality-policy .txt01 br {
        display: none; } }
#company .quality-policy .txt02 {
  line-height: 1;
  width: 274px;
  margin: 0 0 10px; }
  @media screen and (max-width: 741px) {
    #company .quality-policy .txt02 {
      width: 192px;
      margin: 0 auto 10px; } }
#company .quality-policy .txt03 {
  line-height: 1.8;
  font-size: 18px;
  font-size: 1.8rem; }
  @media screen and (max-width: 741px) {
    #company .quality-policy .txt03 {
      text-align: center;
      margin: 0 0 30px;
      font-size: 16px;
      font-size: 1.6rem; } }
#company .quality-policy .iso-img {
  float: right;
  width: 173px; }
  @media screen and (max-width: 741px) {
    #company .quality-policy .iso-img {
      float: none;
      display: block;
      margin: 0 auto;
      width: 92px; } }
#company .quality-policy .attempt-box {
  background: #F0F0F0;
  padding: 30px;
  margin: 0 0 40px; }
  @media screen and (max-width: 741px) {
    #company .quality-policy .attempt-box {
      padding: 25px 15px 20px;
      margin: 0 0 30px; } }
  #company .quality-policy .attempt-box h4 {
    font-weight: 600;
    line-height: 1.3;
    margin-bottom: 25px;
    font-size: 20px;
    font-size: 2.0rem; }
    @media screen and (max-width: 741px) {
      #company .quality-policy .attempt-box h4 {
        margin-bottom: 34px;
        text-align: center;
        margin-bottom: 20px;
        font-size: 16px;
        font-size: 1.6rem; } }
  #company .quality-policy .attempt-box p {
    line-height: 1.8;
  }
#company .profile ul, #company .history ul {
  border-top: 1px solid #ccc; }
  #company .profile ul:last-child, #company .history ul:last-child {
    border-bottom: 1px solid #ccc; }
  #company .profile ul li, #company .history ul li {
    float: left;
    padding: 19px 0;
    font-size: 15px;
    font-size: 1.5rem; }
    @media screen and (max-width: 741px) {
      #company .profile ul li, #company .history ul li {
        font-size: 14px;
        font-size: 1.4rem; } }
    #company .profile ul li:first-child, #company .history ul li:first-child {
      font-weight: 700;
      width: 22%; }
      @media screen and (max-width: 741px) {
        #company .profile ul li:first-child, #company .history ul li:first-child {
          line-height: 1.2;
          padding: 15px 0 6px;
          width: 100%; } }
      #company .profile ul li:first-child span, #company .history ul li:first-child span {
        display: inline-block;
        width: 72px; }
        #company .profile ul li:first-child span.space, #company .history ul li:first-child span.space {
          width: 82px; }
          @media screen and (max-width: 741px) {
            #company .profile ul li:first-child span.space, #company .history ul li:first-child span.space {
              width: 72px; } }
        @media screen and (max-width: 741px) {
          #company .profile ul li:first-child span.sp_none, #company .history ul li:first-child span.sp_none {
            width: 0; } }
    #company .profile ul li:last-child, #company .history ul li:last-child {
      width: 78%; }
      @media screen and (max-width: 741px) {
        #company .profile ul li:last-child, #company .history ul li:last-child {
          line-height: 1.3;
          padding: 0 0 18px;
          width: 100%; } }

#equipment #content_head_line_box {
  background: url(../img/equipment/bg_content_head_line_01.jpg) center center no-repeat;
  background-size: cover; }
  @media screen and (max-width: 741px) {
    #equipment #content_head_line_box {
      background: url(../img/equipment/bg_content_head_line_01_sp.jpg) center center no-repeat;
      background-size: cover; } }
@media screen and (max-width: 741px) {
  #equipment .section#sec01 {
    border-bottom: 1px solid #ccc;
    margin-bottom: 45px;
    padding-bottom: 45px; } }
#equipment .section h4 {
  color: #EB1E1E;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1;
  margin-bottom: 19px;
  padding-left: 11px;
  position: relative;
  font-size: 20px;
  font-size: 2rem; }
  @media screen and (max-width: 741px) {
    #equipment .section h4 {
      margin-bottom: 16px;
      padding-left: 10px;
      font-size: 15px;
      font-size: 1.5rem; } }
  #equipment .section h4:before {
    background: #EB1E1E;
    content: '';
    display: block;
    left: 0;
    position: absolute;
    top: 0;
    width: 2px;
    height: 20px; }
    @media screen and (max-width: 741px) {
      #equipment .section h4:before {
        width: 2px;
        height: 15px; } }
#equipment .section .txt {
  margin-bottom: 50px;
  line-height: 1.6;
  font-size: 15px;
  font-size: 1.5rem; }
  @media screen and (max-width: 741px) {
    #equipment .section .txt {
      margin-bottom: 17px;
      line-height: 2;
      font-size: 14px;
      font-size: 1.4rem; } }
  #equipment .section .txt.mb02 {
    margin-bottom: 42px; }
    @media screen and (max-width: 741px) {
      #equipment .section .txt.mb02 {
        margin-bottom: 17px; } }
  #equipment .section .txt.mb03 {
    margin-bottom: 40px; }
    @media screen and (max-width: 741px) {
      #equipment .section .txt.mb03 {
        margin-bottom: 17px; } }
  #equipment .section .txt.mb04 {
    margin-bottom: 20px; }
    @media screen and (max-width: 741px) {
      #equipment .section .txt.mb04 {
        margin-bottom: 10px; } }
  #equipment .section .txt.mb05 {
    margin-bottom: 93px; }
    @media screen and (max-width: 741px) {
      #equipment .section .txt.mb05 {
        margin-bottom: 65px; } }
#equipment .processing .pic_box {
  margin-bottom: 92px; }
  @media screen and (max-width: 741px) {
    #equipment .processing .pic_box {
      margin-bottom: 60px; }
    #equipment .processing .pic_box > div span {
        padding-bottom: 10px; } }
  #equipment .processing .pic_box > div {
    float: left;
    width: 49%; }
  #equipment .processing .pic_box > div:last-child {
    margin-left: 2%; }
    #equipment .processing .pic_box > div img {
      margin-bottom: 9px; }
      @media screen and (max-width: 741px) {
        #equipment .processing .pic_box > div img {
          margin-bottom: 5px; } }
    #equipment .processing .pic_box > div span {
      font-size: 14px;
      font-size: 1.4rem; }
      @media screen and (max-width: 741px) {
        #equipment .processing .pic_box > div span {
          display: block;
          line-height: 1.3;
          text-align: center;
          font-size: 12px;
          font-size: 1.2rem; } }
#equipment .processing h5 {
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1;
  margin-bottom: 19px;
  padding-left: 11px;
  position: relative;
  font-size: 18px;
  font-size: 1.8rem; }
  @media screen and (max-width: 741px) {
    #equipment .processing h5 {
      margin-bottom: 25px;
      padding-left: 10px;
      font-size: 14px;
      font-size: 1.4rem; } }
  #equipment .processing h5.mb02 {
    margin-bottom: 45px; }
    @media screen and (max-width: 741px) {
      #equipment .processing h5.mb02 {
        margin-bottom: 25px; } }
  #equipment .processing h5:before {
    background: #ccc;
    content: '';
    display: block;
    left: 0;
    position: absolute;
    top: 0;
    width: 2px;
    height: 18px; }
    @media screen and (max-width: 741px) {
      #equipment .processing h5:before {
        width: 2px;
        height: 14px; } }
#equipment .processing .table_pc {
  margin-bottom: 48px;
  width: 100%; }
  @media screen and (max-width: 741px) {
    #equipment .processing .table_pc {
      display: none; } }
#equipment .processing .table_pc.w02 {
  max-width: 380px; }
  #equipment .processing .table_pc tr {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc; }
    #equipment .processing .table_pc tr th, #equipment .processing .table_pc tr td {
      padding: 19px 0;
      text-align: left; }
    #equipment .processing .table_pc tr th {
      background: #F0F0F0;
      font-weight: 600;
      font-size: 15px;
      font-size: 1.5rem; }
    #equipment .processing .table_pc tr td {
      font-size: 15px;
      font-size: 1.5rem; }
      #equipment .processing .table_pc tr td.head {
        font-weight: 600;
        padding-left: 11px; }
#equipment .processing .table_sp {
  display: none; }
  @media screen and (max-width: 741px) {
    #equipment .processing .table_sp {
      display: block;
      margin-bottom: 24px; } }
  #equipment .processing .table_sp p {
    font-weight: 600;
    line-height: 1;
    margin-bottom: 10px; }
  #equipment .processing .table_sp table {
    width: 100%; }
    #equipment .processing .table_sp table.mb {
      margin-bottom: 25px; }
    #equipment .processing .table_sp table tr {
      border-top: 1px solid #ccc;
      border-bottom: 1px solid #ccc; }
      #equipment .processing .table_sp table tr th, #equipment .processing .table_sp table tr td {
        line-height: 1.3;
        padding: 8px 0 8px 10px;
        text-align: left; }
      #equipment .processing .table_sp table tr th {
        background: #F0F0F0;
        font-weight: 600;
        width: 43.5%; }
#equipment .processing h6 {
  color: #939393;
  font-weight: 600;
  line-height: 1;
  margin-bottom: 18px;
  font-size: 15px;
  font-size: 1.5rem; }
  @media screen and (max-width: 741px) {
    #equipment .processing h6 {
      margin-bottom: 15px; } }
#equipment .processing .koutei_img {
  margin-bottom: 45px; }
  @media screen and (max-width: 741px) {
    #equipment .processing .koutei_img {
      margin-bottom: 32px; } }
#equipment .processing .koutei_pic {
  margin-bottom: 93px; }
  @media screen and (max-width: 741px) {
    #equipment .processing .koutei_pic {
      margin-bottom: 65px; } }
  #equipment .processing .koutei_pic.mb02 {
    margin-bottom: 0; }
#equipment .processing .txt01_03 {
  font-weight: 600;
  line-height: 1;
  margin: 20px 0 10px;
  font-size: 16px;
  font-size: 1.6rem; }
  @media screen and (max-width: 741px) {
    #equipment .processing .txt01_03 {
      font-size: 15px;
      font-size: 1.5rem; } }
#equipment .inspection .txt {
  line-height: 2; }
#equipment .inspection .pic_box {
  margin-bottom: 92px; }
  @media screen and (max-width: 741px) {
    #equipment .inspection .pic_box {
      margin-bottom: 60px; } }
  #equipment .inspection .pic_box.mb02 {
    margin-bottom: 60px; }
    @media screen and (max-width: 741px) {
      #equipment .inspection .pic_box.mb02 > div:last-child span {
        padding-bottom: 10px; }
      #equipment .inspection .pic_box.mb02 > div span {
        padding-bottom: 25px; } }
  #equipment .inspection .pic_box.mb03 {
    margin-bottom: 0; }
  #equipment .inspection .pic_box > div {
    float: left;
    width: 30.07915567%; }
    @media screen and (max-width: 741px) {
      #equipment .inspection .pic_box > div {
        width: 47%; }
        #equipment .inspection .pic_box > div:nth-child(even) {
          margin-left: 6%; } }
    #equipment .inspection .pic_box > div + div {
      margin-left: 4.88126649%; }
      @media screen and (max-width: 741px) {
        #equipment .inspection .pic_box > div + div {
          margin-left: auto; } }
    #equipment .inspection .pic_box > div img {
      margin-bottom: 9px; }
      @media screen and (max-width: 741px) {
        #equipment .inspection .pic_box > div img {
          margin-bottom: 5px; } }
    #equipment .inspection .pic_box > div span {
      font-size: 14px;
      font-size: 1.4rem; }
      @media screen and (max-width: 741px) {
        #equipment .inspection .pic_box > div span {
          display: block;
          line-height: 1.3;
          text-align: center;
          font-size: 12px;
          font-size: 1.2rem; } }

#words #content_head_line_box {
  background: url(../img/words/bg_content_head_line_01.jpg) center center no-repeat;
  background-size: cover; }
  @media screen and (max-width: 741px) {
    #words #content_head_line_box {
      background: url(../img/words/bg_content_head_line_01_sp.jpg) center center no-repeat;
      background-size: cover; } }
@media screen and (max-width: 741px) {
  #words .section {
    margin-bottom: 45px !important; } }
#words .section p {
  line-height: 2;
  margin-top: -8px;
  margin-bottom: -8px;
  font-size: 15px;
  font-size: 1.5rem; }
  @media screen and (max-width: 741px) {
    #words .section p {
      font-size: 14px;
      font-size: 1.4rem; } }
#words .section ul {
  list-style: disc;
  margin: 20px 0 20px 20px; }
  #words .section ul li {
    line-height: 1.4;
    margin-bottom: 10px;
    font-size: 15px;
    font-size: 1.5rem; } }
    @media screen and (max-width: 741px) {
      #words .section ul li {
        margin-bottom: 5px;
        font-size: 14px;
        font-size: 1.4rem; } }
#words .stm-box-section {
  margin-bottom: 40px; }
  @media screen and (max-width: 741px) {
    #words .stm-box-section {
      margin-bottom: 30px; } }
#words .stm-box-section:last-of-type {
  margin-bottom: 0; }
  #words .stm-box-section h3 {
    padding-left: 32px;
    min-height: 24px;
    font-weight: 700;
    line-height: 1;
    color: #EB1E1E;
    margin-bottom: 10px;
    text-align: left;
    font-size: 22px;
    font-size: 2.2rem; }
    @media only screen and (min-width: 742px) and (max-width: 1024px) {
      #words .stm-box-section h3 {
        padding-left: 30px;
        min-height: 22px;
        font-size: 20px;
        font-size: 2rem; } }
    @media screen and (max-width: 741px) {
      #words .stm-box-section h3 {
        font-weight: 600;
        padding-left: 30px;
        min-height: 22px;
        font-size: 20px;
        font-size: 2rem; } }
  #words .stm-box-section#sec03 h3 {
    background: url(../img/words/icon_sec04_01.png) top left no-repeat;
    background-size: 24px; }
  #words .stm-box-section#sec04 h3 {
    background: url(../img/words/icon_sec05_01.png) top left no-repeat;
    background-size: 24px; }
  #words .stm-box-section#sec05 h3 {
    background: url(../img/words/icon_sec06_01.png) top left no-repeat;
    background-size: 24px; }
  #words .stm-box-section#sec06 h3 {
    background: url(../img/words/icon_sec07_01.png) top left no-repeat;
    background-size: 24px; }
    @media only screen and (max-width: 1024px) {
      #words .stm-box-section#sec03 h3,
      #words .stm-box-section#sec04 h3,
      #words .stm-box-section#sec05 h3,
      #words .stm-box-section#sec06 h3 {
        background-size: 22px; } }
    #words .stm-box-section h3 span {
      font-weight: 500;
      font-size: 16px;
      font-size: 1.6rem; }
      @media screen and (max-width: 741px) {
        #words .stm-box-section h3 span {
          font-size: 14px;
          font-size: 1.4rem; } }
  #words .stm-box-section p {
    line-height: 2;
    margin: 0;
    font-size: 15px;
    font-size: 1.5rem; }
    @media screen and (max-width: 741px) {
      #words .stm-box-section p {
        font-size: 14px;
        font-size: 1.4rem; } }
#words .stm-box {
  margin-bottom: 92px;
  padding: 30px;
  background: #F0F0F0; }
  @media screen and (max-width: 741px) {
    #words .stm-box {
      margin-bottom: 45px;
      padding: 25px 15px 20px; } }
  #words .stm-box .ttl {
    font-weight: 600;
    line-height: 1.4;
    margin: 0 0 40px;
    font-size: 22px;
    font-size: 2.2rem; }
    @media screen and (max-width: 741px) {
      #words .stm-box .ttl {
        text-align: center;
        margin: 0 0 30px;
        font-size: 20px;
        font-size: 2.0rem; } }

#recruit #content_head_line_box {
  background: url(../img/recruit/bg_content_head_line_01.jpg) center center no-repeat;
  background-size: cover; }
  @media screen and (max-width: 741px) {
    #recruit #content_head_line_box {
      background: url(../img/recruit/bg_content_head_line_01_sp.jpg) center center no-repeat;
      background-size: cover; } }
@media screen and (max-width: 741px) {
  #recruit .section {
    margin-bottom: 45px !important; } }
#recruit .people {
  width: 100%; }
  #recruit .people#sec01 {
    margin-bottom: 65px; }
    @media screen and (max-width: 741px) {
      #recruit .people#sec01 {
        margin-bottom: 42px; } }
  #recruit .people .txt {
    line-height: 2;
    margin-top: -8px;
    margin-bottom: 60px;
    padding-right: 50px;
    font-size: 15px;
    font-size: 1.5rem; }
    @media screen and (max-width: 741px) {
      #recruit .people .txt {
        margin-bottom: 23px;
        padding-right: 0;
        font-size: 14px;
        font-size: 1.4rem; } }
  #recruit .people ul li {
    background: url(../img/recruit/bg_sec01_01.png) no-repeat;
    background-size: 18px;
    background-position: top 4px left;
    color: #EB1E1E;
    margin-bottom: 11px;
    padding-left: 34px;
    font-size: 18px;
    font-size: 1.8rem; }
    #recruit .people ul li:last-child {
      margin-bottom: 0; }
      @media screen and (max-width: 741px) {
        #recruit .people ul li:last-child {
          margin-bottom: 30px; } }
    @media screen and (max-width: 741px) {
      #recruit .people ul li {
        background-size: 14px;
        background-position: top 2px left;
        letter-spacing: 0.01em;
        line-height: 1.3;
        margin-bottom: 8px;
        padding-left: 23px;
        font-size: 14px;
        font-size: 1.4rem; } }
  #recruit .people .pic {
    width: 275px; }
    @media screen and (max-width: 741px) {
      #recruit .people .pic {
        text-align: center;
        width: 100%; } }
    @media screen and (max-width: 741px) {
      #recruit .people .pic img {
        margin-right: 15px;
        margin-bottom: 0;
        width: 100%; } }
    #recruit .people .pic p {
      display: block;
      font-weight: 600;
      letter-spacing: 0.18em;
      text-align: center;
      font-size: 15px;
      font-size: 1.5rem; }
      @media screen and (max-width: 741px) {
        #recruit .people .pic p {
          display: inline-block;
          text-align: left;
          font-size: 14px;
          font-size: 1.4rem; } }
      #recruit .people .pic p span {
        padding-right: 14px; }
        @media screen and (max-width: 741px) {
          #recruit .people .pic p span {
            padding-right: 0;
            font-size: 11px;
            font-size: 1.1rem; } }
#recruit .section#sec02 {
  margin-bottom: 104px; }
  @media screen and (max-width: 741px) {
    #recruit .section#sec02 {
      padding-right: 0;
      padding-left: 0; } }
#recruit .voice#sec03 {
  margin-bottom: 104px; }
  #recruit .voice .voice-sec{
    width: 100%;
    margin: 0 0 80px; }
    @media screen and (max-width: 741px) {
      #recruit .voice .voice-sec{
        margin: 0 0 40px; } }
    #recruit .voice .pic {
      margin: 0 0 35px; }
      @media screen and (max-width: 741px) {
        #recruit .voice .pic {
          margin: 0 0 25px; } }
      @media screen and (max-width: 741px) {
        #recruit .voice .pic img {
          margin-bottom: 0;
          width: 100%; } }
    #recruit .voice h4 {
      letter-spacing: 0.01em;
      font-weight: 700;
      line-height: 1.4;
      margin: 0 0 10px;
      font-size: 26px;
      font-size: 2.6rem; }
      @media screen and (max-width: 741px) {
        #recruit .voice h4 {
          letter-spacing: inherit;
          text-align: center;
          margin: 0 0 8px;
          font-size: 18px;
          font-size: 1.8rem; } }
    #recruit .voice .txt01 {
      letter-spacing: 0.01em;
      font-weight: 700;
      line-height: 1.4;
      margin: 0 0 40px;
      color: #EB1E1E;
      font-size: 18px;
      font-size: 1.8rem; }
      @media screen and (max-width: 741px) {
        #recruit .voice .txt01 {
          letter-spacing: inherit;
          margin-bottom: 30px;
          text-align: center;
          font-size: 15px;
          font-size: 1.5rem; } }
        #recruit .voice .txt01 span {
          display: inline-block;
          margin-left: 5px;
          font-size: 15px;
          font-size: 1.5rem; }
          @media screen and (max-width: 741px) {
            #recruit .voice .txt01 span {
              font-size: 14px;
              font-size: 1.4rem; } }
    #recruit .voice .txt {
      letter-spacing: 0.01em;
      line-height: 2;
      margin-top: -8px;
      font-size: 15px;
      font-size: 1.5rem; }
      @media screen and (max-width: 741px) {
        #recruit .voice .txt {
          letter-spacing: inherit;
          margin-bottom: 25px;
          font-size: 14px;
          font-size: 1.4rem; } }
#recruit .training#sec04 {
  margin-bottom: 104px; }
#recruit .training .txt {
  letter-spacing: 0.01em;
  line-height: 2;
  margin-top: -8px;
  padding-right: 50px;
  font-size: 15px;
  font-size: 1.5rem; }
  @media screen and (max-width: 741px) {
    #recruit .training .txt {
      letter-spacing: inherit;
      margin-bottom: 25px;
      padding-right: 0;
      font-size: 14px;
      font-size: 1.4rem; } }
#recruit .training .pic {
  width: 315px; }
  @media screen and (max-width: 741px) {
    #recruit .training .pic {
      text-align: center;
      width: 100%; } }
  @media screen and (max-width: 741px) {
    #recruit .training .pic img {
      margin-bottom: 0;
      width: 100%; } }
@media screen and (max-width: 741px) {
  #recruit .qa#sec06 {
    margin-bottom: 70px !important; } }
@media screen and (max-width: 741px) {
  #recruit .qa:after {
    display: none; } }
#recruit .qa .box_q {
  background: url(../img/recruit/icon_sec03_01.png) top left no-repeat;
  background-size: 64px;
  margin-bottom: 23px;
  min-height: 64px;
  padding-top: 18px;
  padding-left: 89px; }
  @media screen and (max-width: 741px) {
    #recruit .qa .box_q {
      background-size: 45px;
      margin-bottom: 7px;
      min-height: 45px;
      padding-top: 3px;
      padding-left: 55px; } }
  @media only screen and (min-width: 742px) and (max-width: 1024px) {
    #recruit .qa .box_q.tab_line_2 {
      padding-top: 5px; } }
  @media screen and (max-width: 741px) {
    #recruit .qa .box_q.sp_line_1 {
      padding-top: 13px; } }
  #recruit .qa .box_q p {
    color: #EB1E1E;
    font-weight: 600;
    letter-spacing: 0.07em;
    font-size: 20px;
    font-size: 2rem; }
    @media screen and (max-width: 741px) {
      #recruit .qa .box_q p {
        line-height: 1.4;
        font-size: 14px;
        font-size: 1.4rem; } }
#recruit .qa .box_a {
  background: url(../img/recruit/icon_sec03_02.png) top left no-repeat;
  background-size: 48px;
  margin-bottom: 44px;
  margin-left: 90px;
  min-height: 48px;
  padding-left: 72px; }
  @media screen and (max-width: 741px) {
    #recruit .qa .box_a {
      background-position: top 4px left;
      background-size: 29px;
      margin-bottom: 29px;
      margin-left: 8px;
      min-height: 29px;
      padding-left: 47px; } }
  #recruit .qa .box_a p {
    line-height: 1.7;
    font-size: 15px;
    font-size: 1.5rem; }
    @media screen and (max-width: 741px) {
      #recruit .qa .box_a p {
        line-height: 1.5;
        font-size: 12px;
        font-size: 1.2rem; } }
#recruit .recruitment#sec06 {
  margin-bottom: 106px; }
  @media screen and (max-width: 741px) {
    #recruit .recruitment#sec06 {
      margin-bottom: 63px !important; } }
#recruit .recruitment ul {
  border-top: 1px solid #ccc; }
  #recruit .recruitment ul:last-child {
    border-bottom: 1px solid #ccc; }
  #recruit .recruitment ul li {
    float: left;
    padding: 19px 0;
    font-size: 15px;
    font-size: 1.5rem; }
    @media screen and (max-width: 741px) {
      #recruit .recruitment ul li {
        font-size: 14px;
        font-size: 1.4rem; } }
    #recruit .recruitment ul li:first-child {
      font-weight: 700;
      width: 22%; }
      @media screen and (max-width: 741px) {
        #recruit .recruitment ul li:first-child {
          line-height: 1.2;
          padding: 15px 0 6px;
          width: 100%; } }
      #recruit .recruitment ul li:first-child span {
        display: inline-block;
        width: 72px; }
        #recruit .recruitment ul li:first-child span.space {
          width: 82px; }
          @media screen and (max-width: 741px) {
            #recruit .recruitment ul li:first-child span.space {
              width: 72px; } }
        @media screen and (max-width: 741px) {
          #recruit .recruitment ul li:first-child span.sp_none {
            width: 0; } }
    #recruit .recruitment ul li:last-child {
      width: 78%; }
      @media screen and (max-width: 741px) {
        #recruit .recruitment ul li:last-child {
          line-height: 1.3;
          padding: 0 0 18px;
          width: 100%; } }

#contact #content_head_line_box {
  background: url(../img/contact/bg_content_head_line_01.jpg) center center no-repeat;
  background-size: cover; }
  @media screen and (max-width: 741px) {
    #contact #content_head_line_box {
      background: url(../img/contact/bg_content_head_line_01_sp.jpg) center center no-repeat;
      background-size: cover; } }
#contact .contact.section {
  margin-bottom: 115px !important; }
  @media only screen and (min-width: 742px) and (max-width: 1024px) {
    #contact .contact.section {
      margin-bottom: 80px !important; } }
  @media screen and (max-width: 741px) {
    #contact .contact.section {
      margin-bottom: 45px !important; } }
#contact .contact .txt {
  margin-top: -8px;
  line-height: 2;
  font-size: 15px;
  font-size: 1.5rem; }
  @media screen and (max-width: 741px) {
    #contact .contact .txt {
      font-size: 14px;
      font-size: 1.4rem; } }
#contact .contact .tel, #contact .contact .mail {
  color: #EB1E1E;
  font-weight: 600;
  position: relative;
  font-size: 20px;
  font-size: 2rem; }
  @media screen and (max-width: 741px) {
    #contact .contact .tel, #contact .contact .mail {
      font-size: 14px;
      font-size: 1.4rem; } }
  #contact .contact .tel:before, #contact .contact .mail:before {
    background: #EB1E1E;
    content: '';
    display: block;
    left: 0;
    position: absolute;
    top: 5px;
    width: 2px;
    height: 20px; }
    @media screen and (max-width: 741px) {
      #contact .contact .tel:before, #contact .contact .mail:before {
        width: 2px;
        height: 14px; } }
  #contact .contact .tel span, #contact .contact .mail span {
    padding-left: 12px;
    padding-right: 48px; }
  @media screen and (max-width: 741px) {
    #contact .contact .tel a, #contact .contact .mail a {
      display: block;
      margin-top: 10px; } }
  #contact .contact .tel a img, #contact .contact .mail a img {
    height: 34px;
    vertical-align: text-top; }
    @media screen and (max-width: 741px) {
      #contact .contact .tel a img, #contact .contact .mail a img {
        height: 25px; } }
#contact .contact .tel {
  margin-top: 40px; }
  @media screen and (max-width: 741px) {
    #contact .contact .tel {
      margin-top: 20px; } }
  #contact .contact .tel a {
    cursor: default; }
    @media screen and (max-width: 1024px) {
      #contact .contact .tel a {
        cursor: pointer; } }
#contact .contact .mail {
  margin-top: 34px; }
  @media screen and (max-width: 741px) {
    #contact .contact .mail {
      margin-top: 27px; } }
#contact .privacy .txt_head {
  line-height: 2;
  margin-top: -8px;
  margin-bottom: 30px;
  font-size: 15px;
  font-size: 1.5rem; }
  @media screen and (max-width: 741px) {
    #contact .privacy .txt_head {
      margin-bottom: 18px;
      line-height: 1.5;
      margin-top: -4px;
      font-size: 12px;
      font-size: 1.2rem; } }
#contact .privacy .list li {
  line-height: 2;
  margin-bottom: 30px;
  font-size: 15px;
  font-size: 1.5rem; }
  @media screen and (max-width: 741px) {
    #contact .privacy .list li {
      line-height: 1.5;
      margin-bottom: 18px;
      font-size: 12px;
      font-size: 1.2rem; } }
  #contact .privacy .list li h4 {
    font-weight: 700; }
    @media screen and (max-width: 741px) {
      #contact .privacy .list li h4 {
        font-weight: 800; } }
#contact .privacy .kaitei {
  line-height: 2;
  padding-bottom: 20px;
  font-size: 15px;
  font-size: 1.5rem; }
  @media screen and (max-width: 741px) {
    #contact .privacy .kaitei {
      padding-bottom: 0;
      line-height: 1.5;
      font-size: 12px;
      font-size: 1.2rem; } }

/* tablet  */
@media only screen and (min-width: 742px) and (max-width: 1024px) {
  /*ここにtablet用スタイルを記述*/ }
/* smartPhone */
@media screen and (max-width: 741px) {
  /*ここにスマホ用スタイルを記述*/ }

/*# sourceMappingURL=common.css.map */
