@charset "UTF-8";
/* http://meyerweb.com/eric/tools/css/reset/
v2.0 | 20110126
License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

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

a {
  text-decoration: none;
  color: #333; }
  a:hover {
    text-decoration: underline; }

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400; }

.fade-in,
.fade-in-bg {
  opacity: 0;
  -webkit-transition: opacity 0.4s;
  transition: opacity 0.4s; }

body, html {
  font-family: 'Yu Gothic', 'YuGothic', '游ゴシック体', '游ゴシック', 'メイリオ', 'Meiryo', 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', 'Osaka', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-size: 16px;
  background-image: url(../images/bg.png); }

#header,
#global-menu,
#page-title,
#main,
#top-contents,
#footer {
  width: 100%; }
  #header .inner,
  #global-menu .inner,
  #page-title .inner,
  #main .inner,
  #top-contents .inner,
  #footer .inner {
    width: 1200px;
    margin: 0 auto; }
    @media only screen and (max-width: 728px) {
      #header .inner,
      #global-menu .inner,
      #page-title .inner,
      #main .inner,
      #top-contents .inner,
      #footer .inner {
        width: 100%; } }

#page-title .inner {
  background: #000; }
  @media only screen and (max-width: 728px) {
    #page-title .inner h1 {
      width: 100%;
      height: 250px;
      overflow: hidden;
      position: relative; }
      #page-title .inner h1 img {
        position: absolute;
        bottom: 0;
        left: 50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%); } }

#main.page .inner {
  background: rgba(0, 0, 0, 0.5);
  padding-top: 35px; }

@media only screen and (max-width: 728px) {
  .pc_only {
    display: none !important; } }

@media only screen and (min-width: 729px) {
  .sp_only {
    display: none !important; } }

@media only screen and (min-width: 375px) {
  .x-small_only {
    display: none !important; } }

#footer {
  background: #000;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  /*


  .data {
    display:flex;
    flex-wrap:wrap;
    background:#f0f0f0;
    padding:18px 0;
    @include mediaquery-sp {
      display:block;
    }
    $title-size:80px;
    $size:45px;
    h2 {
      height:$size;
      line-height:$size;
      width:$title-size;
      text-align: center;
      img {
        width:$size;
        height:$size;
      }
      @include mediaquery-sp {
        margin-bottom:15px;
      }
    }
    nav {
      width:$base-width-pc-max - $title-size;
      height:$size;
      display:flex;
      justify-content: flex-start;
      align-items: center;
      vertical-align: middle;
      @include mediaquery-sp {
        display:block;
        height:auto;
        width:100%;
      }
      ul,li {
        display:inline-block;
      }
      .parent {
        & > li {
          border-left:1px solid #000;
          padding:0 0.3em 0 0.5em;
          @include mediaquery-sp {
            margin-bottom:10px;
          }
        }
        .child {
          $color:#9fa0a0;
          li:before {
            content:"▶";
            display:inline-block;
            color:$color;
            font-size:0.6rem;
            vertical-align: baseline;
            padding-right:3px;
          }
          a {
            color:$color;
          }
        }
      }
    }
  }
  */ }
  #footer .data {
    color: #fff;
    font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
    margin: 40px 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center; }
    @media only screen and (max-width: 728px) {
      #footer .data {
        display: block; } }
    #footer .data .parent {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      margin-right: 60px; }
      @media only screen and (max-width: 728px) {
        #footer .data .parent {
          display: block;
          margin: 0 40px;
          line-height: 2.2; }
          #footer .data .parent:after {
            content: "";
            display: block;
            clear: both; } }
      #footer .data .parent > li {
        margin-right: 2rem; }
        #footer .data .parent > li > * {
          font-size: 1rem; }
        #footer .data .parent > li a {
          color: #fff; }
        @media only screen and (max-width: 728px) {
          #footer .data .parent > li {
            float: left;
            margin-right: 0;
            vertical-align: top;
            width: 50%; }
            #footer .data .parent > li:first-child {
              width: 100%;
              margin-bottom: 18px; } }
      #footer .data .parent .tit {
        display: block;
        margin-bottom: 5px; }
        #footer .data .parent .tit + .tit {
          margin-top: 32px; }
          @media only screen and (max-width: 728px) {
            #footer .data .parent .tit + .tit {
              margin-top: 0; } }
      #footer .data .parent .child li {
        line-height: 1.8;
        font-size: 0.85rem; }
        #footer .data .parent .child li:before {
          content: "・"; }
        #footer .data .parent .child li .sp-only {
          display: none; }
        @media only screen and (max-width: 728px) {
          #footer .data .parent .child li {
            margin-left: 1em;
            line-height: inherit; }
            #footer .data .parent .child li .sp-only {
              display: inline-block;
              width: 1em; } }
    #footer .data .footer_logos {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      #footer .data .footer_logos h2 {
        font-size: 1.2rem;
        margin-top: 10px; }
      #footer .data .footer_logos .yago {
        font-size: 1.5em;
        margin-left: 0.3em;
        display: inline-block; }
      #footer .data .footer_logos .touroku {
        line-height: 1.8;
        margin-top: 15px;
        color: #aaa;
        font-size: 0.85rem; }
      #footer .data .footer_logos .logo {
        padding-top: 5px; }
        #footer .data .footer_logos .logo img {
          width: 100px; }
      @media only screen and (max-width: 728px) {
        #footer .data .footer_logos {
          margin-top: 50px;
          padding: 0 20px;
          -webkit-box-pack: justify;
          -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
          justify-content: space-between; }
          #footer .data .footer_logos .texts {
            max-width: 78%; }
            #footer .data .footer_logos .texts .ib {
              display: inline-block; }
          #footer .data .footer_logos .address {
            font-size: 0.85rem; }
          #footer .data .footer_logos h2 {
            font-size: 1.1rem; }
          #footer .data .footer_logos .touroku {
            font-size: 0.65rem;
            white-space: nowrap; }
          #footer .data .footer_logos .logo {
            padding: 5px 0 0 0; }
            #footer .data .footer_logos .logo img {
              width: 90px;
              max-width: 100%; } }
  #footer .copyright {
    background: #fff;
    text-align: center;
    padding: 10px 0;
    font-size: 0.9rem; }

#form a {
  color: #0072E3;
  text-decoration: underline; }

#form input[type="text"],
#form input[type="email"],
#form input[type="tel"],
#form textarea {
  width: 100%;
  border: none;
  padding: 14px 10px;
  font-size: 16px;
  border-radius: 3px;
  box-sizing: border-box; }

#form .select_wrap {
  display: inline-block;
  position: relative;
  z-index: 1; }
  #form .select_wrap::after {
    content: "▼";
    position: absolute;
    top: 50%;
    right: 1em;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: -1; }

#form select {
  border: none;
  padding: 14px 50px 14px 10px;
  min-width: 200px;
  z-index: 1; }

#form .submit {
  position: relative;
  text-align: center;
  margin: 50px 0; }
  #form .submit input[type="submit"],
  #form .submit input[type="button"],
  #form .submit button,
  #form .submit .button {
    float: none;
    position: relative;
    display: inline-block;
    width: auto;
    min-width: 240px;
    padding: 16px 32px;
    margin: 10px;
    font-size: 14px;
    line-height: 1;
    color: white;
    background-color: #222222;
    text-align: center;
    -webkit-transition: 0.5s;
    transition: 0.5s;
    border: none;
    cursor: pointer;
    text-decoration: none; }
    #form .submit input[type="submit"]:hover,
    #form .submit input[type="button"]:hover,
    #form .submit button:hover,
    #form .submit .button:hover {
      background-color: #3c3c3c; }
    #form .submit input[type="submit"]:disabled,
    #form .submit input[type="button"]:disabled,
    #form .submit button:disabled,
    #form .submit .button:disabled {
      color: #888;
      background-color: #B5B5B5;
      cursor: not-allowed; }
  #form .submit .wpcf7-spinner {
    position: absolute;
    bottom: -24px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    margin: 0; }

#form input[type="radio"] {
  display: none; }

#form input[type="radio"] + span {
  padding-left: 30px;
  position: relative;
  margin-right: 20px; }

#form input[type="radio"] + span::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 22px;
  height: 22px;
  border: 1px solid #0072E3;
  border-radius: 50%;
  background-color: white; }

#form input[type="radio"]:checked + span::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 4px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 14px;
  height: 14px;
  background-color: #0072E3;
  border-radius: 50%; }

#form input[type="checkbox"] {
  display: none; }

#form input[type="checkbox"] + span {
  padding-left: 34px;
  position: relative; }

#form input[type="checkbox"] + span::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  border: 1px solid #0072E3;
  background-color: white; }

#form input[type="checkbox"]:checked + span::after {
  content: "";
  display: block;
  position: absolute;
  top: 33%;
  left: 4px;
  -webkit-transform: translateY(-50%) rotate(-45deg);
  -ms-transform: translateY(-50%) rotate(-45deg);
  transform: translateY(-50%) rotate(-45deg);
  width: 14px;
  height: 10px;
  border-left: 4px solid #0072E3;
  border-bottom: 4px solid #0072E3; }

@media only screen and (max-width: 728px) {
  #form input[type="checkbox"] + span {
    padding-left: 45px; }
  #form input[type="checkbox"] + span::before {
    width: 32px;
    height: 32px; }
  #form input[type="checkbox"]:checked + span::after {
    top: 25%;
    left: 5px;
    width: 19px;
    height: 13px;
    border-width: 5px; } }

#form .ajax-loader {
  display: block; }

#form .form-table {
  width: 100%;
  border-collapse: collapse; }
  #form .form-table th,
  #form .form-table td {
    padding: 20px 30px;
    border-top: 1px solid #B5B5B5;
    border-bottom: 1px solid #B5B5B5;
    box-sizing: border-box; }
  #form .form-table th {
    width: 26%;
    vertical-align: middle;
    font-size: 16px;
    font-weight: bold;
    text-align: left; }
  #form .form-table .v-top {
    vertical-align: top; }
  @media only screen and (max-width: 728px) {
    #form .form-table th,
    #form .form-table td {
      display: block;
      padding: 20px 10px;
      border-top: 1px solid #B5B5B5;
      border-bottom: none;
      text-align: center; }
    #form .form-table th {
      width: 100%;
      text-align: center;
      margin-top: 20px; } }

#form .required {
  display: inline-block;
  margin: 5px 10px;
  padding: 3px 7px;
  font-size: 12px;
  color: #B90D0D;
  border: 1px solid #B90D0D;
  border-radius: 4px;
  vertical-align: 2px; }

#form .notice {
  font-size: 14px;
  line-height: 1.4;
  margin-bottom: 5px; }
  @media only screen and (max-width: 728px) {
    #form .notice {
      margin-bottom: 10px; } }

#form .red {
  color: #B90D0D; }

#form .privacy_check {
  margin: 50px 0;
  font-size: 14px;
  text-align: center; }

#global-menu {
  height: 100px; }
  @media only screen and (max-width: 728px) {
    #global-menu {
      height: 0;
      box-sizing: border-box; }
      #global-menu .fix-wrapper {
        position: fixed;
        top: 0;
        left: 0;
        z-index: 999;
        width: 100%; } }
  #global-menu .fix {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999;
    width: 100%; }
  #global-menu .inner {
    height: 100px;
    padding-top: 20px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    background: #000;
    box-sizing: border-box; }
    @media only screen and (max-width: 728px) {
      #global-menu .inner {
        display: block;
        height: auto;
        background: #fff;
        padding: 10px; } }
    #global-menu .inner .logo {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      @media only screen and (max-width: 728px) {
        #global-menu .inner .logo {
          display: none; } }
      #global-menu .inner .logo .mark {
        margin: 0 8px; }
        #global-menu .inner .logo .mark img {
          width: 65px;
          height: 64px; }
          @media only screen and (max-width: 728px) {
            #global-menu .inner .logo .mark img {
              width: 30%;
              height: auto; } }
      #global-menu .inner .logo .name img {
        width: 192px;
        height: 58px; }
        @media only screen and (max-width: 728px) {
          #global-menu .inner .logo .name img {
            width: 60%;
            height: auto; } }
    #global-menu .inner .logo-sp {
      display: none; }
      @media only screen and (max-width: 728px) {
        #global-menu .inner .logo-sp {
          display: block; }
          #global-menu .inner .logo-sp h1 img {
            width: auto;
            height: 41px; }
          #global-menu .inner .logo-sp .menu-bar {
            display: block;
            position: absolute;
            right: 10px;
            top: 10px;
            background-image: url(../images/sp/sp-menu-bar.svg);
            background-size: contain;
            background-repeat: no-repeat;
            background-position: center center;
            float: right;
            display: block;
            width: 26px;
            height: 41px; }
            #global-menu .inner .logo-sp .menu-bar.open {
              background-image: url(../images/sp/sp-menu-close.svg); } }
    #global-menu .inner .parent {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      background: #fff;
      padding: 10px 0 0 25px;
      position: relative;
      background-position: left top;
      background-image: url(../images/line-menu.png);
      background-repeat: no-repeat;
      background-position: right top; }
      @media only screen and (max-width: 728px) {
        #global-menu .inner .parent {
          display: none;
          background: rgba(0, 0, 0, 0.8);
          position: absolute;
          top: 63px;
          right: 0;
          width: 100%;
          height: 100vh;
          padding: 0;
          padding-top: 0; }
          #global-menu .inner .parent a, #global-menu .inner .parent .parent-item {
            font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
            font-weight: normal;
            font-size: 1rem !important; } }
      #global-menu .inner .parent::before {
        position: absolute;
        top: 0;
        left: 0;
        content: "";
        display: block;
        width: 0;
        height: 0;
        border-top: 40px solid #000;
        border-left: 40px solid #000;
        border-right: 40px solid transparent;
        border-bottom: 40px solid transparent;
        -webkit-transform: scaleX(0.68);
        -ms-transform: scaleX(0.68);
        transform: scaleX(0.68);
        -webkit-transform-origin: left top;
        -ms-transform-origin: left top;
        transform-origin: left top; }
      @media only screen and (max-width: 728px) {
        #global-menu .inner .parent::before {
          border: 0; } }
      #global-menu .inner .parent > li {
        width: 125px;
        height: 70px;
        line-height: 70px;
        text-align: center;
        position: relative; }
        @media only screen and (max-width: 728px) {
          #global-menu .inner .parent > li {
            width: 100%;
            height: auto;
            background: #000; } }
        #global-menu .inner .parent > li a:hover {
          text-decoration: none; }
        #global-menu .inner .parent > li > a,
        #global-menu .inner .parent > li .parent-item {
          font-size: 1rem;
          font-weight: 600;
          display: block;
          margin: 10px 0;
          height: 50px;
          line-height: 50px;
          border-left: 2px solid #c9caca;
          font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif; }
          #global-menu .inner .parent > li > a.first,
          #global-menu .inner .parent > li .parent-item.first {
            border-left: 0; }
          @media only screen and (max-width: 728px) {
            #global-menu .inner .parent > li > a,
            #global-menu .inner .parent > li .parent-item {
              position: relative;
              border: 0;
              color: #fff;
              text-align: left;
              padding-left: 1em;
              padding-right: 1em;
              margin: 0;
              border-bottom: 1px solid #fff; } }
        #global-menu .inner .parent > li .parent-item {
          cursor: pointer; }
          @media only screen and (max-width: 728px) {
            #global-menu .inner .parent > li .parent-item.open {
              background: #232323; }
            #global-menu .inner .parent > li .parent-item::after {
              content: "";
              display: inline-block;
              width: 10px;
              height: 10px;
              border-top: 2px solid #eee;
              border-right: 2px solid #eee;
              -webkit-transform: rotate(135deg);
              -ms-transform: rotate(135deg);
              transform: rotate(135deg);
              position: absolute;
              right: 30px;
              top: 50%;
              margin-top: -8px;
              -webkit-transition: 0.3s ease;
              transition: 0.3s ease; }
            #global-menu .inner .parent > li .parent-item.open::after {
              margin-top: -4px;
              -webkit-transform: rotate(-45deg);
              -ms-transform: rotate(-45deg);
              transform: rotate(-45deg);
              -webkit-transition: 0.3s ease;
              transition: 0.3s ease; } }
        #global-menu .inner .parent > li .child {
          display: none;
          position: absolute;
          z-index: 99;
          top: 70px;
          left: 0;
          width: 125px;
          background: rgba(238, 238, 238, 0.9);
          box-sizing: border-box; }
          @media only screen and (max-width: 728px) {
            #global-menu .inner .parent > li .child {
              display: block;
              width: 100%;
              position: static;
              background: #232323;
              display: none; } }
          #global-menu .inner .parent > li .child > li {
            box-sizing: border-box;
            line-height: 130%;
            padding: 0 15px; }
            @media only screen and (max-width: 728px) {
              #global-menu .inner .parent > li .child > li {
                background: #000; } }
            #global-menu .inner .parent > li .child > li > a {
              font-size: 0.9rem;
              padding: 15px 0;
              display: block;
              border-bottom: 1px solid #fff;
              -webkit-transition: all 0.3s;
              transition: all 0.3s;
              font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif; }
              @media only screen and (max-width: 728px) {
                #global-menu .inner .parent > li .child > li > a {
                  color: #fff;
                  text-align: left;
                  padding-left: 2em;
                  border-bottom: 0; } }
              #global-menu .inner .parent > li .child > li > a .char-space {
                letter-spacing: 1em;
                margin-right: -1em; }
              @media only screen and (min-width: 729px) {
                #global-menu .inner .parent > li .child > li > a:hover {
                  text-shadow: 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff;
                  color: #000;
                  border-bottom: 1px solid #999; } }
              @media only screen and (max-width: 728px) {
                #global-menu .inner .parent > li .child > li > a:hover {
                  text-shadow: 0;
                  border-bottom: 0;
                  color: #fff; } }
            #global-menu .inner .parent > li .child > li:last-child a {
              border-bottom: 0px; }
      #global-menu .inner .parent .monozukuri {
        width: 225px;
        box-sizing: border-box;
        padding-left: 10px; }
        #global-menu .inner .parent .monozukuri a {
          border-left: 0; }
        #global-menu .inner .parent .monozukuri .child {
          width: 225px; }
        @media only screen and (max-width: 728px) {
          #global-menu .inner .parent .monozukuri {
            width: 100%;
            padding-left: 0; }
            #global-menu .inner .parent .monozukuri .child {
              width: auto; } }
      #global-menu .inner .parent .monozukuri.bottom .child {
        top: -153px;
        width: 223px;
        margin-left: 2px; }
      #global-menu .inner .parent .sekou.bottom .child {
        top: -204px; }
      #global-menu .inner .parent .flow {
        width: 140px; }
        @media only screen and (max-width: 728px) {
          #global-menu .inner .parent .flow {
            width: 100%; } }
      #global-menu .inner .parent .inquiry {
        width: 150px; }
        @media only screen and (max-width: 728px) {
          #global-menu .inner .parent .inquiry {
            width: 100%; } }

#header.top .inner {
  height: 800px;
  width: 1200px;
  position: relative; }
  @media only screen and (max-width: 728px) {
    #header.top .inner {
      height: 600px !important; } }
  #header.top .inner .bg {
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0; }
    @media only screen and (max-width: 728px) {
      #header.top .inner .bg {
        height: auto; } }
    #header.top .inner .bg .img {
      height: 100%;
      width: 100%;
      position: absolute;
      top: 0;
      left: 0;
      background-repeat: no-repeat;
      background-size: cover;
      background-position: center center; }
      @media only screen and (max-width: 728px) {
        #header.top .inner .bg .img {
          width: 100%;
          height: 600px; } }
    #header.top .inner .bg .img1 {
      background-image: url(../images/mv/mv01.jpg); }
    #header.top .inner .bg .img2 {
      background-image: url(../images/mv/mv02.jpg); }
    #header.top .inner .bg .img3 {
      background-image: url(../images/mv/mv03.jpg); }
    #header.top .inner .bg .img4 {
      background-image: url(../images/mv/mv04.jpg); }
  @media only screen and (max-width: 728px) {
    #header.top .inner {
      width: 100%; } }
  #header.top .inner h1 {
    width: 190px;
    height: 250px;
    position: absolute;
    top: 0px;
    left: 60px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    background-image: url(../images/bg-logo.png);
    position: absolute;
    z-index: 10; }
    #header.top .inner h1 img {
      width: 163px;
      height: 201px; }
    @media only screen and (max-width: 728px) {
      #header.top .inner h1 {
        display: none; } }
  #header.top .inner h2 {
    position: absolute;
    width: 357px;
    height: 447px;
    left: 50%;
    top: 50%;
    margin-top: -223.5px;
    margin-left: -178.5px;
    z-index: 10; }
    @media only screen and (max-width: 728px) {
      #header.top .inner h2 {
        width: 300px;
        margin-left: -150px; } }
    #header.top .inner h2 img {
      width: 357px;
      height: 447px;
      width: 100%;
      height: 100%; }
  #header.top .inner .down {
    position: absolute;
    bottom: 30px;
    left: 0;
    text-align: center;
    width: 100%;
    -webkit-animation: downupdown 3s ease -2s infinite alternate;
    animation: downupdown 3s ease -2s infinite alternate;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden; }
    #header.top .inner .down a {
      cursor: default;
      display: block;
      margin: 0 auto; }
    #header.top .inner .down img {
      width: 48px;
      height: auto; }

@-webkit-keyframes downupdown {
  0% {
    bottom: 40px; }
  100% {
    bottom: 5px; } }

@keyframes downupdown {
  0% {
    bottom: 40px; }
  100% {
    bottom: 5px; } }

.error404 #main.page .inner {
  height: 600px;
  background-image: url("../images/404/bg-404.png");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-color: #fff; }

.error404 #main.page .content-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center; }

.error404 #main.page h1 {
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 35px; }

.error404 #main.page p {
  text-align: center;
  line-height: 180%;
  margin-bottom: 90px; }

.error404 #main.page .top .btn {
  display: block;
  border: 1px solid #9fa0a0;
  color: #595757;
  padding: 10px 0;
  width: 400px;
  margin: 0 auto;
  text-align: center;
  -webkit-transition: all 0.3s;
  transition: all 0.3s; }
  .error404 #main.page .top .btn:hover {
    text-decoration: none;
    background: #ccc; }

.flow #main.page .inner {
  padding-bottom: 60px; }

.flow #main.page .content-box {
  width: 900px;
  margin: 0 auto; }
  @media only screen and (max-width: 728px) {
    .flow #main.page .content-box {
      width: 100%; } }
  .flow #main.page .content-box .flow-title {
    margin-left: -86px; }
    @media only screen and (max-width: 728px) {
      .flow #main.page .content-box .flow-title {
        margin-left: 0; }
        .flow #main.page .content-box .flow-title img {
          width: 100%; } }
  .flow #main.page .content-box .flow {
    margin-top: -68px; }
    @media only screen and (max-width: 728px) {
      .flow #main.page .content-box .flow {
        margin-top: 0; } }
    .flow #main.page .content-box .flow li dt {
      color: #c8b44b;
      font-size: 1.62rem;
      margin-bottom: 20px;
      line-height: 40px;
      height: 40px;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
      justify-content: flex-start;
      font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif; }
      .flow #main.page .content-box .flow li dt::before {
        content: "";
        display: inline-block;
        margin-right: 6px;
        width: 40px;
        height: 40px;
        background-size: contain;
        background-repeat: no-repeat; }
    .flow #main.page .content-box .flow li dd {
      color: #fff;
      font-size: 1.05rem;
      line-height: 180%;
      padding-left: 40px;
      margin-bottom: 30px; }
      @media only screen and (max-width: 728px) {
        .flow #main.page .content-box .flow li dd {
          padding-left: 0;
          width: 94%;
          margin-left: auto;
          margin-right: auto; } }
      .flow #main.page .content-box .flow li dd.img {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        width: 800px;
        margin: 0 auto 20px;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
        .flow #main.page .content-box .flow li dd.img img {
          display: block; }
        @media only screen and (max-width: 728px) {
          .flow #main.page .content-box .flow li dd.img {
            display: block;
            width: 94%;
            margin-left: auto;
            margin-right: auto; }
            .flow #main.page .content-box .flow li dd.img img {
              width: 100%;
              height: auto;
              margin-bottom: 20px; } }
      .flow #main.page .content-box .flow li dd:last-of-type::after {
        width: 40px;
        height: 25px;
        content: "";
        background-image: url("../images/arrow-bottom.svg");
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center center;
        display: block;
        text-align: center;
        margin: 25px auto 35px; }
      .flow #main.page .content-box .flow li dd .btn {
        display: block;
        width: 400px;
        padding: 10px 0;
        margin: 15px auto 40px;
        text-align: center;
        border: 1px solid #c8b44b;
        color: #fff; }
        @media only screen and (max-width: 728px) {
          .flow #main.page .content-box .flow li dd .btn {
            width: 90%;
            padding: 5px 0;
            box-sizing: border-box; } }
    .flow #main.page .content-box .flow li:nth-child(1) dt::before {
      background-image: url("../images/flow/maru-1.svg"); }
    .flow #main.page .content-box .flow li:nth-child(2) dt::before {
      background-image: url("../images/flow/maru-2.svg"); }
    .flow #main.page .content-box .flow li:nth-child(3) dt::before {
      background-image: url("../images/flow/maru-3.svg"); }
    .flow #main.page .content-box .flow li:nth-child(4) dt::before {
      background-image: url("../images/flow/maru-4.svg"); }
    .flow #main.page .content-box .flow li:nth-child(5) dt::before {
      background-image: url("../images/flow/maru-5.svg"); }
    .flow #main.page .content-box .flow li:nth-child(6) dt::before {
      background-image: url("../images/flow/maru-6.svg"); }
    .flow #main.page .content-box .flow li:nth-child(6) dd::after {
      background: none; }
  .flow #main.page .content-box .is-doing {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 25px; }
    @media only screen and (max-width: 728px) {
      .flow #main.page .content-box .is-doing {
        display: block;
        width: 96%;
        margin-left: auto;
        margin-right: auto; } }
    .flow #main.page .content-box .is-doing .text {
      margin-right: 30px;
      margin-left: 40px; }
      @media only screen and (max-width: 728px) {
        .flow #main.page .content-box .is-doing .text {
          margin: 0; } }
      .flow #main.page .content-box .is-doing .text h3 {
        color: #fff;
        font-size: 1.5rem;
        margin-bottom: 20px;
        font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
        position: relative; }
        .flow #main.page .content-box .is-doing .text h3::before {
          content: "";
          display: block;
          position: absolute;
          top: -82px;
          left: -37px;
          width: 174px;
          height: 152px;
          background-image: url(../images/title-line.svg);
          background-size: cover; }
      .flow #main.page .content-box .is-doing .text p {
        color: #fff;
        font-size: 1.05rem;
        line-height: 180%; }
    @media only screen and (max-width: 728px) {
      .flow #main.page .content-box .is-doing .img img {
        width: 100%;
        height: auto; } }
  .flow #main.page .content-box .kanshajo {
    text-align: center;
    width: 100%;
    margin-bottom: 65px; }
    @media only screen and (max-width: 728px) {
      .flow #main.page .content-box .kanshajo img {
        width: 100%; } }

.flow #main.page .contact-box {
  width: 900px;
  margin: 0 auto 50px;
  box-sizing: border-box;
  padding: 30px 60px;
  background: rgba(255, 255, 255, 0.9);
  font-size: 1.05rem; }
  @media only screen and (max-width: 728px) {
    .flow #main.page .contact-box {
      width: 96%;
      margin-left: auto;
      margin-right: auto;
      padding: 10px; } }
  .flow #main.page .contact-box h2 {
    margin-bottom: 15px; }
  .flow #main.page .contact-box p {
    margin-bottom: 35px; }
  .flow #main.page .contact-box .contact dl {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap; }
    @media only screen and (max-width: 728px) {
      .flow #main.page .contact-box .contact dl {
        display: block;
        margin-left: auto;
        margin-right: auto; } }
    .flow #main.page .contact-box .contact dl dt {
      min-width: 140px;
      padding: 14px 0;
      font-size: 14px;
      border: 1px solid #b5b5b6;
      margin-right: 20px;
      line-height: 180%;
      text-align: center; }
      @media only screen and (max-width: 728px) {
        .flow #main.page .contact-box .contact dl dt {
          padding: 10px 5px;
          font-size: 1rem;
          margin-bottom: 10px;
          margin-right: 0; }
          .flow #main.page .contact-box .contact dl dt br {
            display: none; } }
  .flow #main.page .contact-box .contact .tel {
    margin-bottom: 30px; }
    .flow #main.page .contact-box .contact .tel dd a {
      font-size: 3.3rem;
      color: #961e00;
      line-height: 100%;
      font-weight: bold;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      cursor: default; }
      @media only screen and (max-width: 728px) {
        .flow #main.page .contact-box .contact .tel dd a {
          font-size: 7.5vw;
          text-align: center;
          display: block; } }
      .flow #main.page .contact-box .contact .tel dd a:hover {
        text-decoration: none; }
      .flow #main.page .contact-box .contact .tel dd a::before {
        height: 3.3rem;
        width: 37px;
        content: "";
        display: inline-block;
        margin-right: 18px;
        background-image: url(../images/flow/icon-tel.svg);
        background-size: contain;
        background-repeat: no-repeat; }
        @media only screen and (max-width: 728px) {
          .flow #main.page .contact-box .contact .tel dd a::before {
            height: 7.5vw;
            width: 7.5vw;
            margin-right: 0; } }
  .flow #main.page .contact-box .contact .mail dd {
    width: 620px; }
    @media only screen and (max-width: 728px) {
      .flow #main.page .contact-box .contact .mail dd {
        width: 100%; } }
    .flow #main.page .contact-box .contact .mail dd a {
      display: block;
      padding: 20px 0;
      background: #961e00;
      border-radius: 5px;
      text-align: center;
      position: relative;
      color: #fff;
      -webkit-transition: all 0.3s;
      transition: all 0.3s;
      background-image: url(../images/flow/icon-mail.svg);
      background-repeat: no-repeat;
      background-position: 15px center;
      background-size: 48px 31px; }
      .flow #main.page .contact-box .contact .mail dd a:hover {
        text-decoration: none;
        opacity: 0.7; }
      @media only screen and (max-width: 728px) {
        .flow #main.page .contact-box .contact .mail dd a {
          padding: 15px 0;
          margin-left: auto;
          margin-right: auto;
          font-size: 1rem;
          padding-left: 40px;
          box-sizing: border-box; } }
      @media only screen and (max-width: 728px) {
        .flow #main.page .contact-box .contact .mail dd a {
          background-size: 32px auto; } }
      .flow #main.page .contact-box .contact .mail dd a::before {
        content: "";
        width: 48px;
        height: 31px;
        position: absolute;
        left: 11px;
        top: 4px; }

.gaiyou #main.page .inner {
  position: relative;
  background-color: rgba(255, 255, 255, 0.9); }
  .gaiyou #main.page .inner .bg {
    position: absolute;
    z-index: 0;
    right: 0;
    top: 0; }

.gaiyou #main.page .content-box {
  z-index: 1;
  position: relative;
  width: 900px;
  margin: 0 auto;
  padding-bottom: 45px; }
  @media only screen and (max-width: 728px) {
    .gaiyou #main.page .content-box {
      width: 100%; } }
  .gaiyou #main.page .content-box h2 {
    font-size: 1.625rem;
    padding: 13px;
    text-align: center;
    background-image: url("../images/gaiyou/gaiyou-title-line.png");
    background-position: center bottom;
    background-repeat: no-repeat;
    margin-bottom: 15px; }
  .gaiyou #main.page .content-box .outline tbody td,
  .gaiyou #main.page .content-box .outline tbody th {
    height: 60px;
    vertical-align: middle;
    font-size: 1rem; }
  .gaiyou #main.page .content-box .outline tbody th {
    border-bottom: 1px solid rgba(255, 255, 255, 0.9);
    width: 188px;
    background: #d2d2d2; }
    @media only screen and (max-width: 728px) {
      .gaiyou #main.page .content-box .outline tbody th {
        width: 30%; } }
  .gaiyou #main.page .content-box .outline tbody td {
    box-sizing: border-box;
    padding: 20px 25px;
    line-height: 150%; }
    @media only screen and (max-width: 728px) {
      .gaiyou #main.page .content-box .outline tbody td li {
        margin-bottom: 1em; } }

.otoiawase #main.page .inner,
.confirm #main.page .inner,
.complete #main.page .inner {
  background: rgba(255, 255, 255, 0.9); }

.otoiawase #main.page .content-box,
.confirm #main.page .content-box,
.complete #main.page .content-box {
  width: 780px;
  margin: 0 auto;
  padding-bottom: 40px; }
  @media only screen and (max-width: 728px) {
    .otoiawase #main.page .content-box,
    .confirm #main.page .content-box,
    .complete #main.page .content-box {
      width: 94%; } }

.otoiawase #main.page .contact dl,
.confirm #main.page .contact dl,
.complete #main.page .contact dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap; }
  @media only screen and (max-width: 728px) {
    .otoiawase #main.page .contact dl,
    .confirm #main.page .contact dl,
    .complete #main.page .contact dl {
      display: block;
      margin-left: auto;
      margin-right: auto; } }
  .otoiawase #main.page .contact dl dt,
  .confirm #main.page .contact dl dt,
  .complete #main.page .contact dl dt {
    min-width: 140px;
    padding: 14px 0;
    font-size: 14px;
    border: 1px solid #b5b5b6;
    margin-right: 20px;
    line-height: 180%;
    text-align: center; }
    @media only screen and (max-width: 728px) {
      .otoiawase #main.page .contact dl dt,
      .confirm #main.page .contact dl dt,
      .complete #main.page .contact dl dt {
        padding: 10px 5px;
        font-size: 1rem;
        margin-bottom: 10px;
        margin-right: 0; }
        .otoiawase #main.page .contact dl dt br,
        .confirm #main.page .contact dl dt br,
        .complete #main.page .contact dl dt br {
          display: none; } }

.otoiawase #main.page .contact .tel,
.confirm #main.page .contact .tel,
.complete #main.page .contact .tel {
  margin-bottom: 30px; }
  .otoiawase #main.page .contact .tel dd a,
  .confirm #main.page .contact .tel dd a,
  .complete #main.page .contact .tel dd a {
    font-size: 3.3rem;
    color: #961e00;
    line-height: 100%;
    font-weight: bold;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: default; }
    @media only screen and (max-width: 728px) {
      .otoiawase #main.page .contact .tel dd a,
      .confirm #main.page .contact .tel dd a,
      .complete #main.page .contact .tel dd a {
        font-size: 7.5vw;
        text-align: center;
        display: block; } }
    .otoiawase #main.page .contact .tel dd a:hover,
    .confirm #main.page .contact .tel dd a:hover,
    .complete #main.page .contact .tel dd a:hover {
      text-decoration: none; }
    .otoiawase #main.page .contact .tel dd a::before,
    .confirm #main.page .contact .tel dd a::before,
    .complete #main.page .contact .tel dd a::before {
      height: 3.3rem;
      width: 37px;
      content: "";
      display: inline-block;
      margin-right: 18px;
      background-image: url(../images/flow/icon-tel.svg);
      background-size: contain;
      background-repeat: no-repeat; }
      @media only screen and (max-width: 728px) {
        .otoiawase #main.page .contact .tel dd a::before,
        .confirm #main.page .contact .tel dd a::before,
        .complete #main.page .contact .tel dd a::before {
          height: 7.5vw;
          width: 7.5vw;
          margin-right: 0; } }

.otoiawase #main.page .contact .mail dd,
.confirm #main.page .contact .mail dd,
.complete #main.page .contact .mail dd {
  width: 620px; }
  @media only screen and (max-width: 728px) {
    .otoiawase #main.page .contact .mail dd,
    .confirm #main.page .contact .mail dd,
    .complete #main.page .contact .mail dd {
      width: 100%; } }
  .otoiawase #main.page .contact .mail dd a,
  .confirm #main.page .contact .mail dd a,
  .complete #main.page .contact .mail dd a {
    display: block;
    padding: 20px 0;
    background: #961e00;
    border-radius: 5px;
    text-align: center;
    position: relative;
    color: #fff;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    background-image: url(../images/flow/icon-mail.svg);
    background-repeat: no-repeat;
    background-position: 15px center;
    background-size: 48px 31px; }
    .otoiawase #main.page .contact .mail dd a:hover,
    .confirm #main.page .contact .mail dd a:hover,
    .complete #main.page .contact .mail dd a:hover {
      text-decoration: none;
      opacity: 0.7; }
    @media only screen and (max-width: 728px) {
      .otoiawase #main.page .contact .mail dd a,
      .confirm #main.page .contact .mail dd a,
      .complete #main.page .contact .mail dd a {
        padding: 15px 0;
        margin-left: auto;
        margin-right: auto;
        font-size: 1rem;
        padding-left: 40px;
        box-sizing: border-box; } }
    @media only screen and (max-width: 728px) {
      .otoiawase #main.page .contact .mail dd a,
      .confirm #main.page .contact .mail dd a,
      .complete #main.page .contact .mail dd a {
        background-size: 32px auto; } }
    .otoiawase #main.page .contact .mail dd a::before,
    .confirm #main.page .contact .mail dd a::before,
    .complete #main.page .contact .mail dd a::before {
      content: "";
      width: 48px;
      height: 31px;
      position: absolute;
      left: 11px;
      top: 4px; }

.otoiawase #main.page .form_title,
.confirm #main.page .form_title,
.complete #main.page .form_title {
  margin: 20px 0 50px;
  font-size: 25px;
  font-weight: bold;
  line-height: 1.4;
  text-align: center; }

.otoiawase #main.page .form-box,
.confirm #main.page .form-box,
.complete #main.page .form-box {
  width: 900px;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 80px;
  z-index: 1; }
  @media only screen and (max-width: 728px) {
    .otoiawase #main.page .form-box,
    .confirm #main.page .form-box,
    .complete #main.page .form-box {
      width: 94%; } }

.otoiawase #main.page .name_field,
.confirm #main.page .name_field,
.complete #main.page .name_field {
  font-size: 14px; }
  .otoiawase #main.page .name_field input,
  .confirm #main.page .name_field input,
  .complete #main.page .name_field input {
    width: 200px;
    margin-left: 5px;
    margin-right: 30px; }
  @media only screen and (max-width: 728px) {
    .otoiawase #main.page .name_field,
    .confirm #main.page .name_field,
    .complete #main.page .name_field {
      display: block;
      margin-bottom: 10px; }
      .otoiawase #main.page .name_field:last-child,
      .confirm #main.page .name_field:last-child,
      .complete #main.page .name_field:last-child {
        margin-bottom: 0; } }

.otoiawase #main.page .text,
.confirm #main.page .text,
.complete #main.page .text {
  margin-bottom: 2rem;
  line-height: 180%; }

.privacy #main.page .inner {
  background: white; }

.privacy #main.page .content-box {
  width: 900px;
  margin: 0 auto;
  padding-bottom: 80px; }
  @media only screen and (max-width: 728px) {
    .privacy #main.page .content-box {
      width: 94%; } }

.privacy #main.page .title {
  margin: 48px 0 16px;
  padding: 0 8px 16px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.3;
  color: #707070;
  border-bottom: 1px solid #707070; }

.privacy #main.page .text {
  margin: 0 0 16px;
  padding: 0 8px 0;
  font-size: 16px;
  line-height: 1.75;
  color: #707070;
  text-align: justify; }

.saiyo #main.page .inner {
  background: rgba(255, 255, 255, 0.9);
  padding: 100px 0 60px;
  position: relative; }
  @media only screen and (max-width: 728px) {
    .saiyo #main.page .inner {
      padding: 60px 0 30px; } }
  .saiyo #main.page .inner .bg {
    position: absolute;
    z-index: 0;
    right: 0;
    top: 0; }
  .saiyo #main.page .inner .content-box {
    width: 900px;
    position: relative;
    margin-left: auto;
    margin-right: auto;
    z-index: 1; }
    @media only screen and (max-width: 728px) {
      .saiyo #main.page .inner .content-box {
        width: 84%; } }
  .saiyo #main.page .inner img {
    max-width: 100%; }
  .saiyo #main.page .inner .saiyo-tit {
    margin-left: -86px; }
    .saiyo #main.page .inner .saiyo-tit + * {
      margin-top: -68px; }
    @media only screen and (max-width: 728px) {
      .saiyo #main.page .inner .saiyo-tit {
        margin-left: -28px; }
        .saiyo #main.page .inner .saiyo-tit + * {
          margin-top: -20px; } }
  .saiyo #main.page .inner .saiyo-txt {
    line-height: 28px; }

.saiyo #main.page .notice {
  font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
  font-size: 22px;
  color: #a20600;
  letter-spacing: 0.3em;
  margin: auto;
  position: absolute;
  top: -45px;
  left: 0;
  right: 0;
  z-index: 2;
  border: 2px solid #a20600;
  height: 85px;
  width: 900px;
  background: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center; }
  @media only screen and (max-width: 728px) {
    .saiyo #main.page .notice {
      width: 87%;
      font-size: 15px;
      letter-spacing: 0;
      height: 56px;
      top: -28px; } }

.saiyo #main.page #intro {
  margin-bottom: 35px; }
  .saiyo #main.page #intro h2 {
    margin-bottom: 1em; }

.saiyo #main.page .flex_2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap; }
  .saiyo #main.page .flex_2 .flex_img:first-child {
    padding-right: 50px; }
  .saiyo #main.page .flex_2 .flex_img:last-child {
    padding-left: 50px; }
  .saiyo #main.page .flex_2 > * {
    width: 50%; }
  @media only screen and (max-width: 728px) {
    .saiyo #main.page .flex_2 {
      display: block; }
      .saiyo #main.page .flex_2 .flex_img:first-child {
        padding-right: 0; }
      .saiyo #main.page .flex_2 .flex_img:last-child {
        padding-left: 0; }
      .saiyo #main.page .flex_2 > * {
        width: auto; } }

.saiyo #main.page #message {
  margin-bottom: 55px; }
  .saiyo #main.page #message .flex_2 .t_txt {
    margin-bottom: 30px; }
  .saiyo #main.page #message .flex_img > *:first-child {
    margin-bottom: 10px; }
    @media only screen and (max-width: 728px) {
      .saiyo #main.page #message .flex_img > *:first-child {
        margin-bottom: 20px; } }

.saiyo #main.page #jisseki .swiper-container .swiper-button-next {
  background-image: url(../images/sekou/next.svg);
  right: 0; }

.saiyo #main.page #jisseki .swiper-container .swiper-button-prev {
  background-image: url(../images/sekou/prev.svg);
  left: 0; }

.saiyo #main.page #jisseki .swiper-container .swiper-button-next,
.saiyo #main.page #jisseki .swiper-container .swiper-button-prev {
  margin-top: -55px; }
  @media only screen and (max-width: 728px) {
    .saiyo #main.page #jisseki .swiper-container .swiper-button-next,
    .saiyo #main.page #jisseki .swiper-container .swiper-button-prev {
      height: 171px;
      top: 0;
      margin-top: 0;
      background-color: rgba(0, 0, 0, 0.5);
      background-repeat: no-repeat;
      background-position: center;
      background-size: 10px; } }

.saiyo #main.page #jisseki figure div {
  overflow: hidden;
  height: 210px;
  margin: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center; }
  @media only screen and (max-width: 728px) {
    .saiyo #main.page #jisseki figure div {
      height: 171px; } }
  .saiyo #main.page #jisseki figure div img {
    height: 100%;
    width: auto;
    max-width: none; }

.saiyo #main.page #jisseki figcaption {
  text-align: center;
  font-weight: bold;
  padding-top: 1em;
  line-height: 1.7;
  font-size: 14px; }

.saiyo #main.page #jisseki .place {
  font-size: 12px;
  display: block;
  font-weight: normal; }

.saiyo #main.page #jisseki .jisseki_btn {
  text-align: center;
  margin-top: 50px;
  margin-bottom: 35px; }
  .saiyo #main.page #jisseki .jisseki_btn a {
    display: inline-block;
    border: 1px solid #898989;
    padding: 15px;
    width: 400px;
    -webkit-transition: 0.3s ease;
    transition: 0.3s ease; }
    .saiyo #main.page #jisseki .jisseki_btn a:hover {
      -webkit-transition: 0.3s ease background;
      transition: 0.3s ease background;
      text-decoration: none;
      background: rgba(255, 255, 255, 0.5); }
  @media only screen and (max-width: 728px) {
    .saiyo #main.page #jisseki .jisseki_btn {
      margin-top: 20px;
      margin-bottom: 45px; }
      .saiyo #main.page #jisseki .jisseki_btn a {
        width: auto; } }

.saiyo #main.page .career_path {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 2.5em 0 4em;
  gap: 40px; }
  @media only screen and (max-width: 728px) {
    .saiyo #main.page .career_path {
      display: block; }
      .saiyo #main.page .career_path li {
        margin-bottom: 2em; }
      .saiyo #main.page .career_path p br {
        display: none; } }
  .saiyo #main.page .career_path li {
    position: relative;
    border: 1px solid #898989;
    padding: 28px 28px 25px;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    background: rgba(255, 255, 255, 0.5); }
    .saiyo #main.page .career_path li h3 {
      font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
      font-size: 21px;
      color: #A29127;
      margin-bottom: 15px;
      font-weight: 600; }
    .saiyo #main.page .career_path li::after {
      content: "";
      position: absolute;
      right: -33px;
      top: 50%;
      display: inline-block;
      width: 0px;
      height: 0px;
      border-style: solid;
      border-width: 22px 0 22px 18px;
      border-color: transparent transparent transparent #A0913C;
      -webkit-transform: translateY(-23px);
      -ms-transform: translateY(-23px);
      transform: translateY(-23px); }
      @media only screen and (max-width: 728px) {
        .saiyo #main.page .career_path li::after {
          right: 50%;
          top: auto;
          bottom: -4em;
          -webkit-transform: rotate(90deg) translateX(-23px);
          -ms-transform: rotate(90deg) translateX(-23px);
          transform: rotate(90deg) translateX(-23px); } }
    .saiyo #main.page .career_path li:last-child::after {
      content: none; }

.saiyo #main.page .shokai-flow {
  margin-bottom: 130px; }
  @media only screen and (max-width: 728px) {
    .saiyo #main.page .shokai-flow {
      margin-bottom: 3em; } }
  .saiyo #main.page .shokai-flow .tit_flow {
    font-size: 25px;
    font-weight: bolder;
    font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
    background: rgba(162, 145, 39, 0.4);
    text-align: center;
    letter-spacing: 2px;
    padding: 0.5em;
    margin-bottom: 30px; }
    @media only screen and (max-width: 728px) {
      .saiyo #main.page .shokai-flow .tit_flow {
        font-size: 18px; } }
  .saiyo #main.page .shokai-flow .timeline {
    margin-left: 55px;
    z-index: 2; }
    @media only screen and (max-width: 728px) {
      .saiyo #main.page .shokai-flow .timeline {
        margin-left: 0px;
        font-size: 14px;
        display: block;
        margin-right: 10px; } }
    .saiyo #main.page .shokai-flow .timeline li {
      display: table;
      height: 100px; }
      @media only screen and (max-width: 728px) {
        .saiyo #main.page .shokai-flow .timeline li {
          height: 80px; } }
      .saiyo #main.page .shokai-flow .timeline li > * {
        display: table-cell;
        vertical-align: middle; }
      .saiyo #main.page .shokai-flow .timeline li:last-child .time::after {
        content: none; }
      .saiyo #main.page .shokai-flow .timeline li:last-child .action {
        border-bottom: none; }
      .saiyo #main.page .shokai-flow .timeline li .time {
        font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
        font-weight: bold;
        width: 87px;
        text-align: center;
        color: #fff;
        position: relative; }
        @media only screen and (max-width: 728px) {
          .saiyo #main.page .shokai-flow .timeline li .time {
            width: 60px; } }
        .saiyo #main.page .shokai-flow .timeline li .time::before {
          content: "";
          width: 77px;
          height: 77px;
          border-radius: 100%;
          background: black;
          position: absolute;
          left: 4px;
          top: 50%;
          margin-top: -38px;
          z-index: -1; }
          @media only screen and (max-width: 728px) {
            .saiyo #main.page .shokai-flow .timeline li .time::before {
              width: 60px;
              height: 60px;
              left: 0;
              margin-top: -30px; } }
          @media all and (-ms-high-contrast: none) {
            .saiyo #main.page .shokai-flow .timeline li .time::before {
              top: 10px;
              margin-top: 0; } }
        .saiyo #main.page .shokai-flow .timeline li .time::after {
          content: "･･";
          color: black;
          -webkit-transform: rotate(90deg);
          -ms-transform: rotate(90deg);
          transform: rotate(90deg);
          position: absolute;
          left: 35px;
          bottom: -8px; }
          @media only screen and (max-width: 728px) {
            .saiyo #main.page .shokai-flow .timeline li .time::after {
              left: 24px; } }
      .saiyo #main.page .shokai-flow .timeline li .action {
        border-bottom: 1px solid #fff;
        padding-left: 0.5em;
        width: 727px; }
        @media only screen and (max-width: 728px) {
          .saiyo #main.page .shokai-flow .timeline li .action {
            font-size: 12px;
            width: auto;
            border-bottom: none; } }
  .saiyo #main.page .shokai-flow .flow_images img {
    position: absolute;
    width: 157px;
    height: 219px; }
    .saiyo #main.page .shokai-flow .flow_images img:nth-child(1) {
      top: 106px;
      right: 258px; }
    .saiyo #main.page .shokai-flow .flow_images img:nth-child(2) {
      top: 223px;
      right: 68px; }
    .saiyo #main.page .shokai-flow .flow_images img:nth-child(3) {
      top: 478px;
      right: 258px; }
    .saiyo #main.page .shokai-flow .flow_images img:nth-child(4) {
      top: 593px;
      right: 68px; }
  @media only screen and (max-width: 728px) {
    .saiyo #main.page .shokai-flow .flow_images {
      width: 100px;
      padding-top: 10px; }
      .saiyo #main.page .shokai-flow .flow_images img {
        width: 100%;
        height: auto;
        margin-bottom: 30px;
        position: relative;
        top: auto !important;
        right: auto !important; }
        .saiyo #main.page .shokai-flow .flow_images img:last-child {
          display: none;
          margin-bottom: 0; } }
  @media only screen and (max-width: 728px) {
    .saiyo #main.page .shokai-flow .ese_clearfix {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
      -ms-flex-align: start;
      align-items: flex-start; } }
  .saiyo #main.page .shokai-flow .texts {
    width: calc(100% - 100px); }

.saiyo #main.page .tool-work .tit_flow, .saiyo #main.page .enviroment .tit_flow {
  font-size: 25px;
  font-weight: bolder;
  font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
  background: rgba(162, 145, 39, 0.4);
  text-align: center;
  letter-spacing: 2px;
  padding: 0.5em;
  margin-bottom: 30px; }
  @media only screen and (max-width: 728px) {
    .saiyo #main.page .tool-work .tit_flow, .saiyo #main.page .enviroment .tit_flow {
      font-size: 18px; } }

.saiyo #main.page .tool-work .saiyo_dl, .saiyo #main.page .enviroment .saiyo_dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 4em; }
  @media only screen and (max-width: 728px) {
    .saiyo #main.page .tool-work .saiyo_dl, .saiyo #main.page .enviroment .saiyo_dl {
      display: block; } }
  .saiyo #main.page .tool-work .saiyo_dl div, .saiyo #main.page .enviroment .saiyo_dl div {
    background-color: rgba(255, 255, 255, 0.4);
    width: 31%;
    margin-bottom: 2.2em;
    position: relative; }
    @media only screen and (max-width: 728px) {
      .saiyo #main.page .tool-work .saiyo_dl div, .saiyo #main.page .enviroment .saiyo_dl div {
        width: auto;
        margin-bottom: 1.4em; } }
    .saiyo #main.page .tool-work .saiyo_dl div .note, .saiyo #main.page .enviroment .saiyo_dl div .note {
      color: #464646;
      text-indent: -1em;
      position: absolute;
      left: 1em;
      line-height: 1.1;
      bottom: -2.5em;
      font-size: 0.8em; }
  .saiyo #main.page .tool-work .saiyo_dl dt, .saiyo #main.page .enviroment .saiyo_dl dt {
    font-weight: 600;
    padding: 12px; }
  .saiyo #main.page .tool-work .saiyo_dl.-tools dt, .saiyo #main.page .enviroment .saiyo_dl.-tools dt {
    font-weight: 600;
    font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
    font-size: 21px; }
  .saiyo #main.page .tool-work .saiyo_dl.-tools p, .saiyo #main.page .enviroment .saiyo_dl.-tools p {
    padding: 12px; }
  .saiyo #main.page .tool-work .saiyo_dl.-tools dd, .saiyo #main.page .enviroment .saiyo_dl.-tools dd {
    padding-bottom: 0.5em; }
  .saiyo #main.page .tool-work .saiyo_dl.-tools img, .saiyo #main.page .enviroment .saiyo_dl.-tools img {
    vertical-align: top; }
  .saiyo #main.page .tool-work .saiyo_dl.-environment, .saiyo #main.page .enviroment .saiyo_dl.-environment {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    gap: 20px 30px;
    margin-bottom: 1.5em; }
    @media only screen and (max-width: 728px) {
      .saiyo #main.page .tool-work .saiyo_dl.-environment div:first-child, .saiyo #main.page .enviroment .saiyo_dl.-environment div:first-child {
        margin-bottom: 2.5em; } }
    .saiyo #main.page .tool-work .saiyo_dl.-environment dt, .saiyo #main.page .enviroment .saiyo_dl.-environment dt {
      letter-spacing: 2px;
      padding: 15px;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
      justify-content: flex-start;
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      gap: 0.3em; }
    .saiyo #main.page .tool-work .saiyo_dl.-environment dd, .saiyo #main.page .enviroment .saiyo_dl.-environment dd {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: end;
      -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
      justify-content: flex-end;
      -webkit-box-align: end;
      -webkit-align-items: flex-end;
      -ms-flex-align: end;
      align-items: flex-end;
      font-weight: 600;
      color: #a29127;
      font-size: 19px;
      font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
      padding: 0 20px 12px;
      line-height: 1.5; }
      .saiyo #main.page .tool-work .saiyo_dl.-environment dd p, .saiyo #main.page .enviroment .saiyo_dl.-environment dd p {
        margin-top: 1em; }
        @media only screen and (max-width: 728px) {
          .saiyo #main.page .tool-work .saiyo_dl.-environment dd p, .saiyo #main.page .enviroment .saiyo_dl.-environment dd p {
            margin-top: 0; } }
      .saiyo #main.page .tool-work .saiyo_dl.-environment dd em, .saiyo #main.page .enviroment .saiyo_dl.-environment dd em {
        font-style: normal;
        font-size: 58px;
        padding: 0 0.2em;
        line-height: 0.9; }
      .saiyo #main.page .tool-work .saiyo_dl.-environment dd small, .saiyo #main.page .enviroment .saiyo_dl.-environment dd small {
        font-size: 0.9em; }
      .saiyo #main.page .tool-work .saiyo_dl.-environment dd table, .saiyo #main.page .enviroment .saiyo_dl.-environment dd table {
        line-height: 1.6;
        font-size: 16px;
        margin-bottom: 0.2em; }
        .saiyo #main.page .tool-work .saiyo_dl.-environment dd table th, .saiyo #main.page .enviroment .saiyo_dl.-environment dd table th {
          padding-right: 1em; }

.saiyo #main.page .saiyo-slider {
  max-width: 100%;
  overflow: hidden;
  background: #1E1E1E;
  padding: 4em 0; }
  @media only screen and (max-width: 728px) {
    .saiyo #main.page .saiyo-slider {
      margin-top: 3em;
      padding: 3em 0; } }
  .saiyo #main.page .saiyo-slider .title {
    text-align: center;
    font-weight: 600;
    font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
    font-size: 30px;
    color: #fff;
    position: relative;
    margin-bottom: 2em; }
    @media only screen and (max-width: 728px) {
      .saiyo #main.page .saiyo-slider .title {
        font-size: 21px; } }
    .saiyo #main.page .saiyo-slider .title::after {
      content: "";
      background: #C1AC4B;
      position: absolute;
      display: inline-block;
      width: 2em;
      height: 2px;
      left: 0;
      right: 0;
      margin: 0 auto;
      bottom: -0.6em; }
  .saiyo #main.page .saiyo-slider .swiper-pagination2.swiper-pagination-clickable.swiper-pagination-bullets {
    text-align: center;
    margin-top: 1.5em; }
  .saiyo #main.page .saiyo-slider .swiper-pagination-bullet {
    background-color: #A0913C;
    height: 10px;
    width: 10px; }

.saiyo #main.page #faq {
  padding-top: 65px; }
  .saiyo #main.page #faq .faq-list {
    line-height: 1.5;
    margin-bottom: 105px; }
    @media only screen and (max-width: 728px) {
      .saiyo #main.page #faq .faq-list {
        margin-top: -30px;
        margin-bottom: 40px; } }
    .saiyo #main.page #faq .faq-list dt {
      background: #fff;
      font-weight: 600;
      font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
      font-size: 21px;
      color: #a29127;
      padding: 12px; }
      .saiyo #main.page #faq .faq-list dt span {
        color: black; }
      @media only screen and (max-width: 728px) {
        .saiyo #main.page #faq .faq-list dt {
          font-size: 18px;
          padding-right: 40px;
          position: relative;
          margin-top: 15px; }
          .saiyo #main.page #faq .faq-list dt::before {
            content: "";
            width: 6px;
            height: 6px;
            border-top: 2px solid #b5b5b6;
            border-right: 2px solid #b5b5b6;
            -webkit-transform: rotate(135deg);
            -ms-transform: rotate(135deg);
            transform: rotate(135deg);
            position: absolute;
            right: 18px;
            top: 50%;
            margin-top: -3px;
            -webkit-transition: 0.3s ease transfrom;
            transition: 0.3s ease transfrom; }
          .saiyo #main.page #faq .faq-list dt.open::before {
            -webkit-transform: rotate(-45deg);
            -ms-transform: rotate(-45deg);
            transform: rotate(-45deg); } }
    .saiyo #main.page #faq .faq-list dd {
      background: rgba(255, 255, 255, 0.4);
      padding: 15px 30px 20px;
      margin-bottom: 20px; }
      @media only screen and (max-width: 728px) {
        .saiyo #main.page #faq .faq-list dd {
          display: none;
          margin-bottom: 0; } }
  .saiyo #main.page #faq .wide_img {
    margin-bottom: 80px; }
    @media only screen and (max-width: 728px) {
      .saiyo #main.page #faq .wide_img {
        margin-bottom: 50px; } }

.saiyo #main.page #youkou {
  margin-bottom: 65px; }
  @media only screen and (max-width: 728px) {
    .saiyo #main.page #youkou {
      margin-bottom: 45px; } }
  .saiyo #main.page #youkou .outline tbody td,
  .saiyo #main.page #youkou .outline tbody th {
    height: 60px;
    vertical-align: middle; }
    @media only screen and (max-width: 728px) {
      .saiyo #main.page #youkou .outline tbody td,
      .saiyo #main.page #youkou .outline tbody th {
        height: auto;
        vertical-align: top; } }
  .saiyo #main.page #youkou .outline tbody th {
    border-bottom: 1px solid rgba(255, 255, 255, 0.9);
    width: 188px;
    background: #d2d2d2; }
    @media only screen and (max-width: 728px) {
      .saiyo #main.page #youkou .outline tbody th {
        line-height: 1.75;
        width: 30%;
        padding-top: 10px; } }
  .saiyo #main.page #youkou .outline tbody td {
    box-sizing: border-box;
    line-height: 1.75;
    padding: 20px 25px; }
    @media only screen and (max-width: 728px) {
      .saiyo #main.page #youkou .outline tbody td {
        padding: 10px 0 10px 15px; } }

.saiyo #main.page .contact_box {
  border: 1px solid #a20400;
  background: rgba(255, 255, 255, 0.5);
  text-align: center; }
  .saiyo #main.page .contact_box .contact_inner {
    width: 623px;
    padding: 40px 0;
    margin: auto; }
    @media only screen and (max-width: 728px) {
      .saiyo #main.page .contact_box .contact_inner {
        width: auto;
        padding: 20px 0; } }
    .saiyo #main.page .contact_box .contact_inner h2 {
      font-size: 22px;
      font-weight: bold;
      margin-bottom: 45px; }
      @media only screen and (max-width: 728px) {
        .saiyo #main.page .contact_box .contact_inner h2 {
          font-size: 14px;
          margin-bottom: 18px; } }
    .saiyo #main.page .contact_box .contact_inner p {
      margin-bottom: 35px; }
      @media only screen and (max-width: 728px) {
        .saiyo #main.page .contact_box .contact_inner p {
          margin-bottom: 15px;
          font-size: 13px; } }
    .saiyo #main.page .contact_box .contact_inner .shamei {
      font-size: 25px;
      vertical-align: sub;
      margin-left: 16px; }
      @media only screen and (max-width: 728px) {
        .saiyo #main.page .contact_box .contact_inner .shamei {
          display: block;
          margin-top: 8px;
          font-size: 17px; } }
    .saiyo #main.page .contact_box .contact_inner .contact_btn {
      display: block;
      padding: 22px 20px;
      background: url("../images/flow/icon-mail.svg") no-repeat 15px center #961e00;
      background-size: 49px auto;
      -webkit-transition: all 0.3s;
      transition: all 0.3s;
      color: #fff;
      border-radius: 5px;
      text-align: center;
      margin-bottom: 17px; }
      @media only screen and (max-width: 728px) {
        .saiyo #main.page .contact_box .contact_inner .contact_btn {
          font-size: 11px;
          margin: 0 15px;
          padding: 18px 0;
          background-image: none; }
          .saiyo #main.page .contact_box .contact_inner .contact_btn::before {
            content: "";
            display: inline-block;
            vertical-align: sub;
            width: 37px;
            height: 16px;
            background: url("../images/flow/icon-mail.svg") no-repeat; } }
      .saiyo #main.page .contact_box .contact_inner .contact_btn:hover {
        text-decoration: none;
        opacity: 0.7; }
    .saiyo #main.page .contact_box .contact_inner .tel {
      line-height: 1.75;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center; }
      @media only screen and (max-width: 728px) {
        .saiyo #main.page .contact_box .contact_inner .tel {
          display: block;
          line-height: 1; } }
      .saiyo #main.page .contact_box .contact_inner .tel dt {
        padding: 15px;
        border: 1px solid #b5b5b6; }
        @media only screen and (max-width: 728px) {
          .saiyo #main.page .contact_box .contact_inner .tel dt {
            font-size: 13px;
            border: none;
            padding-bottom: 8px; }
            .saiyo #main.page .contact_box .contact_inner .tel dt br {
              display: none; } }
      .saiyo #main.page .contact_box .contact_inner .tel dd a {
        pointer-events: none;
        color: #a20400;
        font-weight: bold;
        font-size: 3.5em;
        letter-spacing: 2px; }
        @media all and (-ms-high-contrast: none) {
          .saiyo #main.page .contact_box .contact_inner .tel dd a {
            font-size: 5em; } }
        @supports (-ms-ime-align: auto) {
          .saiyo #main.page .contact_box .contact_inner .tel dd a {
            font-size: 5em; } }
        @media only screen and (max-width: 728px) {
          .saiyo #main.page .contact_box .contact_inner .tel dd a {
            font-size: 1.7em;
            letter-spacing: 1px; } }
        .saiyo #main.page .contact_box .contact_inner .tel dd a:hover {
          text-decoration: none; }
        @media only screen and (max-width: 728px) {
          .saiyo #main.page .contact_box .contact_inner .tel dd a {
            pointer-events: auto; } }

.saiyo #main.page .underline {
  display: inline-block;
  text-decoration: underline; }

.sekou #page-title .inner {
  position: relative; }

.sekou #page-title .sekou-menu {
  position: absolute;
  bottom: 0;
  width: 100%; }
  @media only screen and (max-width: 728px) {
    .sekou #page-title .sekou-menu {
      position: static;
      display: block; } }
  .sekou #page-title .sekou-menu ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    background: #000;
    height: 50px; }
    @media only screen and (max-width: 728px) {
      .sekou #page-title .sekou-menu ul {
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        height: 80px; } }
    .sekou #page-title .sekou-menu ul li {
      width: 25%;
      box-sizing: border-box; }
      @media only screen and (max-width: 728px) {
        .sekou #page-title .sekou-menu ul li {
          border-left: 0;
          width: 25%;
          background-image: url("../images/mark.png");
          background-opacity: 0.3;
          background-repeat: no-repeat;
          background-position: center center;
          background-size: 70% auto; } }
      .sekou #page-title .sekou-menu ul li a {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        text-align: center;
        font-size: 1.2rem;
        height: 50px;
        width: 100%;
        color: #fff;
        border-right: 1px solid #595757;
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
        font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
        font-weight: lighter; }
        .sekou #page-title .sekou-menu ul li a .char-space {
          letter-spacing: 1em;
          margin-right: -1em; }
        .sekou #page-title .sekou-menu ul li a.active, .sekou #page-title .sekou-menu ul li a:hover {
          text-decoration: none;
          background: rgba(255, 255, 255, 0.3); }
        @media only screen and (max-width: 728px) {
          .sekou #page-title .sekou-menu ul li a {
            height: 80px;
            display: -webkit-box;
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-pack: center;
            -webkit-justify-content: center;
            -ms-flex-pack: center;
            justify-content: center;
            -webkit-box-align: center;
            -webkit-align-items: center;
            -ms-flex-align: center;
            align-items: center;
            background: rgba(0, 0, 0, 0.7);
            -webkit-transition: all 0.3s;
            transition: all 0.3s; }
            .sekou #page-title .sekou-menu ul li a:hover {
              background: rgba(102, 102, 102, 0.7);
              text-decoration: none; } }
      .sekou #page-title .sekou-menu ul li:last-child a {
        border-right: 0; }

.sekou #main.page .inner {
  background: rgba(255, 255, 255, 0.9);
  padding: 40px;
  box-sizing: border-box; }
  @media only screen and (max-width: 728px) {
    .sekou #main.page .inner {
      padding: 15px; } }
  .sekou #main.page .inner .sekou-list ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    @media only screen and (max-width: 728px) {
      .sekou #main.page .inner .sekou-list ul {
        display: block;
        width: 100%; } }
    .sekou #main.page .inner .sekou-list ul li {
      float: left;
      width: 262px;
      height: 262px;
      position: relative;
      margin-bottom: 24px; }
      @media only screen and (max-width: 728px) {
        .sekou #main.page .inner .sekou-list ul li {
          height: auto;
          width: 100%; } }
      .sekou #main.page .inner .sekou-list ul li .img img {
        display: block; }
        @media only screen and (max-width: 728px) {
          .sekou #main.page .inner .sekou-list ul li .img img {
            width: 100%; } }
      .sekou #main.page .inner .sekou-list ul li .text {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.6);
        color: #fff;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        opacity: 0;
        -webkit-transition: all 0.3s;
        transition: all 0.3s; }
        @media only screen and (max-width: 728px) {
          .sekou #main.page .inner .sekou-list ul li .text {
            position: static;
            opacity: 1;
            display: block;
            background: #fff;
            width: auto;
            height: auto;
            color: #000; } }
        .sekou #main.page .inner .sekou-list ul li .text h2,
        .sekou #main.page .inner .sekou-list ul li .text h3 {
          font-size: 1rem;
          margin-bottom: 20px; }
          @media only screen and (max-width: 728px) {
            .sekou #main.page .inner .sekou-list ul li .text h2,
            .sekou #main.page .inner .sekou-list ul li .text h3 {
              display: none; } }
        .sekou #main.page .inner .sekou-list ul li .text .mark-bunkazai {
          position: absolute;
          top: 5px;
          left: 5px;
          background: #910f00;
          padding: 4px;
          color: #fff;
          font-size: 0.85rem; }
          @media only screen and (max-width: 728px) {
            .sekou #main.page .inner .sekou-list ul li .text .mark-bunkazai {
              top: 8px;
              left: 8px; } }
        .sekou #main.page .inner .sekou-list ul li .text .sp-table {
          display: none; }
          @media only screen and (max-width: 728px) {
            .sekou #main.page .inner .sekou-list ul li .text .sp-table {
              width: 100%;
              display: table;
              border-top: 1px solid #fff; }
              .sekou #main.page .inner .sekou-list ul li .text .sp-table td,
              .sekou #main.page .inner .sekou-list ul li .text .sp-table th {
                font-size: 0.85rem;
                padding: 5px 15px; }
              .sekou #main.page .inner .sekou-list ul li .text .sp-table th {
                background: #9fa0a0;
                color: #fff;
                border-bottom: 1px solid #fff; } }
    @media only screen and (max-width: 728px) and (max-width: 728px) {
      .sekou #main.page .inner .sekou-list ul li .text .sp-table th {
        width: 35%;
        vertical-align: middle; } }
  @media only screen and (max-width: 728px) and (max-width: 728px) {
    .sekou #main.page .inner .sekou-list ul li .text .sp-table tr:last-child th {
      border-bottom: 1px solid #9fa0a0; } }
          @media only screen and (max-width: 728px) {
              .sekou #main.page .inner .sekou-list ul li .text .sp-table td {
                border-bottom: 1px solid #9fa0a0; } }
    @media only screen and (max-width: 728px) and (max-width: 728px) {
      .sekou #main.page .inner .sekou-list ul li .text .sp-table td {
        line-height: 150%; } }
      .sekou #main.page .inner .sekou-list ul li:hover .text {
        opacity: 1; }
      @media only screen and (max-width: 728px) {
        .sekou #main.page .inner .sekou-list ul li.flex-dumy {
          display: none; } }
  .sekou #main.page .inner .sekou-table table {
    width: 100%;
    margin-bottom: 45px; }
    @media only screen and (max-width: 728px) {
      .sekou #main.page .inner .sekou-table table table,
      .sekou #main.page .inner .sekou-table table tbody,
      .sekou #main.page .inner .sekou-table table td,
      .sekou #main.page .inner .sekou-table table th,
      .sekou #main.page .inner .sekou-table table thead,
      .sekou #main.page .inner .sekou-table table tr {
        display: block; }
      .sekou #main.page .inner .sekou-table table tr {
        border: 1px solid #ccc;
        border-bottom-width: 2px; } }
  @media only screen and (max-width: 728px) and (max-width: 728px) {
    .sekou #main.page .inner .sekou-table table tr {
      border: 0; } }
    .sekou #main.page .inner .sekou-table table td,
    .sekou #main.page .inner .sekou-table table th {
      height: 40px;
      vertical-align: middle;
      border-bottom: 1px solid #fff;
      border-left: 1px dashed #ddd;
      padding: 0 10px; }
      @media only screen and (max-width: 728px) {
        .sekou #main.page .inner .sekou-table table td,
        .sekou #main.page .inner .sekou-table table th {
          padding: 0;
          border: 0;
          height: auto; } }
    .sekou #main.page .inner .sekou-table table .place {
      width: 210px; }
      @media only screen and (max-width: 728px) {
        .sekou #main.page .inner .sekou-table table .place {
          width: 100%;
          max-width: none;
          box-sizing: border-box; } }
    .sekou #main.page .inner .sekou-table table .name {
      max-width: 510px; }
      @media only screen and (max-width: 728px) {
        .sekou #main.page .inner .sekou-table table .name {
          width: 100%;
          max-width: none;
          box-sizing: border-box; } }
    .sekou #main.page .inner .sekou-table table .sect {
      width: 165px;
      box-sizing: border-box; }
      @media only screen and (max-width: 728px) {
        .sekou #main.page .inner .sekou-table table .sect {
          width: 100%; } }
    .sekou #main.page .inner .sekou-table table .year {
      width: 266px;
      box-sizing: border-box; }
      @media only screen and (max-width: 728px) {
        .sekou #main.page .inner .sekou-table table .year {
          width: 100%; } }
    @media only screen and (max-width: 728px) {
      .sekou #main.page .inner .sekou-table table thead {
        display: none; } }
    .sekou #main.page .inner .sekou-table table thead tr {
      background-color: rgba(0, 0, 0, 0.1);
      background-image: url("../images/sekou/sekou-table-line.png");
      background-position: top;
      background-repeat: no-repeat; }
    @media only screen and (max-width: 728px) {
      .sekou #main.page .inner .sekou-table table tbody tr {
        margin-bottom: 25px; } }
    .sekou #main.page .inner .sekou-table table tbody td {
      position: relative; }
      @media only screen and (max-width: 728px) {
        .sekou #main.page .inner .sekou-table table tbody td {
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          width: 100%; } }
      .sekou #main.page .inner .sekou-table table tbody td .data,
      .sekou #main.page .inner .sekou-table table tbody td .sp-title {
        display: table-cell;
        padding: 5px 15px;
        font-size: 0.85rem; }
      .sekou #main.page .inner .sekou-table table tbody td .sp-title {
        display: none;
        font-size: 0.85rem; }
        @media only screen and (max-width: 728px) {
          .sekou #main.page .inner .sekou-table table tbody td .sp-title {
            display: -webkit-box;
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-align: center;
            -webkit-align-items: center;
            -ms-flex-align: center;
            align-items: center;
            background: #9fa0a0;
            color: #fff;
            border-bottom: 1px solid #fff;
            min-width: 35%;
            box-sizing: border-box; } }
      @media only screen and (max-width: 728px) {
        .sekou #main.page .inner .sekou-table table tbody td .data {
          width: 65%;
          box-sizing: border-box;
          background: #fff;
          border-bottom: 1px solid #9fa0a0;
          line-height: 150%; } }
      @media only screen and (max-width: 728px) {
        .sekou #main.page .inner .sekou-table table tbody td:last-child .sp-title {
          border-bottom: 1px solid #9fa0a0; } }
      .sekou #main.page .inner .sekou-table table tbody td .mark-bunkazai {
        background: #910f00;
        padding: 4px;
        color: #fff;
        font-size: 0.85rem;
        position: absolute;
        top: 10px;
        right: 10px;
        font-size: 0.8rem; }
        @media only screen and (max-width: 728px) {
          .sekou #main.page .inner .sekou-table table tbody td .mark-bunkazai {
            position: static;
            display: inline-block;
            font-size: 0.7rem;
            padding: 3px;
            line-height: 100%; } }
    .sekou #main.page .inner .sekou-table table tfoot .loading-cell {
      padding: 30px;
      text-align: center;
      border: 0; }
  .sekou #main.page .inner .more a {
    display: block;
    color: #595757;
    text-align: center;
    line-height: 40px;
    width: 400px;
    margin: 0 auto 45px;
    border: 1px solid #9fa0a0;
    -webkit-transition: all 0.3s;
    transition: all 0.3s; }
    @media only screen and (max-width: 728px) {
      .sekou #main.page .inner .more a {
        width: 94%;
        margin-left: auto;
        margin-right: auto;
        box-sizing: border-box; } }
    .sekou #main.page .inner .more a:hover {
      background: #ccc;
      text-decoration: none; }
  .sekou #main.page .inner .sekou-jisseki .sekou-slide {
    margin-bottom: 30px; }
    .sekou #main.page .inner .sekou-jisseki .sekou-slide .swiper-container {
      width: 994px;
      height: 570px;
      margin: 0 auto; }
      @media only screen and (max-width: 728px) {
        .sekou #main.page .inner .sekou-jisseki .sekou-slide .swiper-container {
          width: 100%;
          height: auto; } }
      .sekou #main.page .inner .sekou-jisseki .sekou-slide .swiper-container .swiper-wrapper {
        width: 860px;
        margin: 0 auto;
        position: relative; }
        @media only screen and (max-width: 728px) {
          .sekou #main.page .inner .sekou-jisseki .sekou-slide .swiper-container .swiper-wrapper {
            width: 100%;
            display: -webkit-box;
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-align: center;
            -webkit-align-items: center;
            -ms-flex-align: center;
            align-items: center; }
            .sekou #main.page .inner .sekou-jisseki .sekou-slide .swiper-container .swiper-wrapper img {
              width: 100%; } }
        .sekou #main.page .inner .sekou-jisseki .sekou-slide .swiper-container .swiper-wrapper .swiper-slide .slide-img-box {
          width: 860px;
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-pack: center;
          -webkit-justify-content: center;
          -ms-flex-pack: center;
          justify-content: center;
          -webkit-box-align: center;
          -webkit-align-items: center;
          -ms-flex-align: center;
          align-items: center;
          position: relative; }
          @media only screen and (max-width: 728px) {
            .sekou #main.page .inner .sekou-jisseki .sekou-slide .swiper-container .swiper-wrapper .swiper-slide .slide-img-box {
              width: 100%;
              max-height: 280px; }
              .sekou #main.page .inner .sekou-jisseki .sekou-slide .swiper-container .swiper-wrapper .swiper-slide .slide-img-box img {
                width: auto;
                height: auto;
                max-width: 100%;
                max-height: 280px; } }
          .sekou #main.page .inner .sekou-jisseki .sekou-slide .swiper-container .swiper-wrapper .swiper-slide .slide-img-box .mark-bunkazai {
            background: #910f00;
            padding: 4px;
            color: #fff;
            font-size: 0.85rem;
            position: absolute;
            top: 10px;
            left: 10px;
            z-index: 999; }
      .sekou #main.page .inner .sekou-jisseki .sekou-slide .swiper-container .swiper-button-next,
      .sekou #main.page .inner .sekou-jisseki .sekou-slide .swiper-container .swiper-button-prev {
        height: 40px;
        width: 20px;
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center center; }
      .sekou #main.page .inner .sekou-jisseki .sekou-slide .swiper-container .swiper-button-next {
        background-image: url("../images/sekou/next.svg"); }
      .sekou #main.page .inner .sekou-jisseki .sekou-slide .swiper-container .swiper-button-prev {
        background-image: url("../images/sekou/prev.svg"); }
    .sekou #main.page .inner .sekou-jisseki .sekou-slide .swiper-pagination2 {
      bottom: 0;
      padding: 20px 0;
      text-align: center; }
      .sekou #main.page .inner .sekou-jisseki .sekou-slide .swiper-pagination2 span {
        display: inline-block;
        margin: 0 5px;
        border-radius: 0;
        width: 10px;
        height: 10px;
        background: #ccc;
        opacity: 1; }
        .sekou #main.page .inner .sekou-jisseki .sekou-slide .swiper-pagination2 span.swiper-pagination-bullet-active {
          background: #898989; }
  .sekou #main.page .inner .sekou-jisseki .sekou-jisseki-table table {
    width: 860px;
    margin: 0 auto 45px; }
    @media only screen and (max-width: 728px) {
      .sekou #main.page .inner .sekou-jisseki .sekou-jisseki-table table {
        width: 100%; } }
    @media only screen and (max-width: 728px) {
      .sekou #main.page .inner .sekou-jisseki .sekou-jisseki-table table {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex; }
        .sekou #main.page .inner .sekou-jisseki .sekou-jisseki-table table tbody tr,
        .sekou #main.page .inner .sekou-jisseki .sekou-jisseki-table table thead tr {
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
          -webkit-flex-direction: column;
          -ms-flex-direction: column;
          flex-direction: column; }
        .sekou #main.page .inner .sekou-jisseki .sekou-jisseki-table table thead {
          width: 5em; }
        .sekou #main.page .inner .sekou-jisseki .sekou-jisseki-table table tbody {
          -webkit-box-flex: 6;
          -webkit-flex-grow: 6;
          -ms-flex-positive: 6;
          flex-grow: 6; } }
    .sekou #main.page .inner .sekou-jisseki .sekou-jisseki-table table td,
    .sekou #main.page .inner .sekou-jisseki .sekou-jisseki-table table th {
      max-width: 265px;
      vertical-align: middle; }
      @media only screen and (max-width: 728px) {
        .sekou #main.page .inner .sekou-jisseki .sekou-jisseki-table table td,
        .sekou #main.page .inner .sekou-jisseki .sekou-jisseki-table table th {
          font-size: 0.9rem; } }
    .sekou #main.page .inner .sekou-jisseki .sekou-jisseki-table table thead {
      color: #898989; }
      .sekou #main.page .inner .sekou-jisseki .sekou-jisseki-table table thead tr {
        border-bottom: 1px solid #fff; }
        @media only screen and (max-width: 728px) {
          .sekou #main.page .inner .sekou-jisseki .sekou-jisseki-table table thead tr {
            border: 0; } }
        .sekou #main.page .inner .sekou-jisseki .sekou-jisseki-table table thead tr th {
          padding: 8px 10px;
          text-align: left; }
          @media only screen and (max-width: 728px) {
            .sekou #main.page .inner .sekou-jisseki .sekou-jisseki-table table thead tr th {
              background: #9fa0a0;
              color: #fff;
              border-bottom: 1px solid #fff;
              padding: 10px; } }
    .sekou #main.page .inner .sekou-jisseki .sekou-jisseki-table table tbody td {
      padding: 10px; }
      @media only screen and (max-width: 728px) {
        .sekou #main.page .inner .sekou-jisseki .sekou-jisseki-table table tbody td {
          padding: 10px;
          border-bottom: 1px solid #9fa0a0; } }
  .sekou #main.page .inner .sekou-jisseki .back .btn {
    display: block;
    margin: 0 auto 40px;
    width: 400px;
    height: 40px;
    line-height: 40px;
    color: #898989;
    text-align: center;
    border: 1px solid #9fa0a0;
    -webkit-transition: all 0.3s;
    transition: all 0.3s; }
    @media only screen and (max-width: 728px) {
      .sekou #main.page .inner .sekou-jisseki .back .btn {
        width: 90%;
        box-sizing: border-box; } }
    .sekou #main.page .inner .sekou-jisseki .back .btn:hover {
      background: #ccc;
      text-decoration: none; }

.shitauke #main.page {
  color: white; }

.shitauke #solution {
  padding: 40px 0; }
  .shitauke #solution .section_title {
    font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
    font-size: 32px;
    line-height: 1.71875;
    text-align: center; }
  .shitauke #solution .solution_box {
    box-sizing: border-box;
    height: 400px;
    margin-top: -30px;
    padding-top: 145px;
    text-align: center;
    background: url("../images/shitauke/bg01_pc.png") no-repeat center bottom;
    background-size: cover; }
    .shitauke #solution .solution_box .no_wrap {
      display: inline; }
    .shitauke #solution .solution_box .item {
      display: -webkit-inline-box;
      display: -webkit-inline-flex;
      display: -ms-inline-flexbox;
      display: inline-flex;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      width: 200px;
      height: 200px;
      margin: 0 20px;
      background: url("../images/shitauke/bg-title.png") no-repeat center;
      background-size: contain; }
      .shitauke #solution .solution_box .item .title {
        font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
        font-size: 24px;
        line-height: 1.66667;
        text-align: center; }
  @media only screen and (max-width: 728px) {
    .shitauke #solution {
      padding: 0; }
      .shitauke #solution .section_title {
        font-size: 18px; }
      .shitauke #solution .solution_box {
        background-image: url("../images/shitauke/bg01_sp.png");
        margin-top: -90px;
        padding: 125px 0 10px;
        height: auto; }
        .shitauke #solution .solution_box .no_wrap {
          display: block; }
        .shitauke #solution .solution_box .item {
          width: 140px;
          height: 140px;
          margin: 10px; }
          .shitauke #solution .solution_box .item .title {
            font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
            font-size: 16px;
            line-height: 1.6875; } }

.shitauke #subcontracting {
  padding: 40px 0 80px; }
  .shitauke #subcontracting .section_title {
    font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
    position: relative;
    margin-bottom: 25px;
    padding-bottom: 18px;
    font-size: 32px;
    line-height: 1.6875;
    text-align: center; }
    .shitauke #subcontracting .section_title:after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 50%;
      -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      transform: translateX(-50%);
      display: block;
      width: 557px;
      height: 2px;
      background: url("../images/shitauke/title_border_pc.png") no-repeat center;
      background-size: contain; }
  .shitauke #subcontracting .text {
    width: 720px;
    margin: 0 auto 70px;
    font-size: 17px;
    line-height: 1.76471;
    text-align: justify; }
  .shitauke #subcontracting .image {
    text-align: center; }
    .shitauke #subcontracting .image img {
      width: 960px; }
  @media only screen and (max-width: 728px) {
    .shitauke #subcontracting {
      padding: 40px 0 40px; }
      .shitauke #subcontracting .section_title {
        margin-bottom: 20px;
        padding-bottom: 18px;
        font-size: 18px; }
        .shitauke #subcontracting .section_title:after {
          width: 100%;
          background-image: url("../images/shitauke/title_border_sp.png"); }
      .shitauke #subcontracting .text {
        width: 84%;
        margin: 0 auto 50px; }
      .shitauke #subcontracting .image img {
        width: 96%; } }

.shitauke #drawings {
  padding: 50px 0 95px;
  background: url("../images/shitauke/bg02_pc.jpg") no-repeat center;
  background-size: cover; }
  .shitauke #drawings .section_title {
    font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
    position: relative;
    margin-bottom: 25px;
    padding-bottom: 18px;
    font-size: 32px;
    line-height: 1.6875;
    text-align: center;
    text-shadow: 0 3px 6px rgba(0, 0, 0, 0.16); }
    .shitauke #drawings .section_title:after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 50%;
      -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      transform: translateX(-50%);
      display: block;
      width: 557px;
      height: 2px;
      background: url("../images/shitauke/title_border_pc.png") no-repeat center;
      background-size: contain; }
  .shitauke #drawings .text {
    margin-bottom: 30px;
    font-size: 17px;
    line-height: 1.76471;
    text-align: center; }
  .shitauke #drawings .images_wrap {
    text-align: center; }
    .shitauke #drawings .images_wrap img {
      width: 320px;
      height: auto;
      margin: 20px; }
  @media only screen and (max-width: 728px) {
    .shitauke #drawings {
      padding: 40px 0 50px;
      background-image: url("../images/shitauke/bg02_sp.jpg"); }
      .shitauke #drawings .section_title {
        margin-bottom: 25px;
        padding-bottom: 18px;
        font-size: 18px; }
        .shitauke #drawings .section_title:after {
          width: 100%;
          background-image: url("../images/shitauke/title_border_sp.png"); }
      .shitauke #drawings .text {
        width: 84%;
        margin: 0 auto 30px;
        text-align: justify; }
      .shitauke #drawings .images_wrap img {
        width: 165px;
        margin: 5px; } }

.shitauke #sculpture {
  padding: 100px 0; }
  .shitauke #sculpture .two_col_box {
    position: relative;
    width: 100%;
    margin-bottom: 160px;
    z-index: 1; }
    .shitauke #sculpture .two_col_box .image {
      position: absolute;
      top: 2%;
      right: 0;
      z-index: 1;
      width: 665px; }
      .shitauke #sculpture .two_col_box .image img {
        width: 100%;
        height: 100%;
        object-fit: cover; }
    .shitauke #sculpture .two_col_box .body {
      text-align: left;
      z-index: 2; }
      .shitauke #sculpture .two_col_box .body .title {
        margin-left: 28px; }
        .shitauke #sculpture .two_col_box .body .title img {
          width: 620px; }
      .shitauke #sculpture .two_col_box .body .text {
        width: 542px;
        margin-left: 100px;
        font-size: 17px;
        line-height: 1.76471;
        text-align: justify; }
  @media only screen and (max-width: 728px) {
    .shitauke #sculpture {
      padding: 20px 0; }
      .shitauke #sculpture .two_col_box {
        margin-bottom: 60px; }
        .shitauke #sculpture .two_col_box .image {
          position: static;
          margin-bottom: 5%;
          margin-left: auto;
          width: 97%; }
        .shitauke #sculpture .two_col_box .body {
          margin: 0 2%; }
          .shitauke #sculpture .two_col_box .body .title {
            margin-left: 0; }
            .shitauke #sculpture .two_col_box .body .title img {
              width: 100%; }
          .shitauke #sculpture .two_col_box .body .text {
            width: 85%;
            margin-left: 12.5%; } }

.shitauke #about_works {
  box-sizing: border-box;
  margin: 0 55px;
  padding: 50px 0 40px;
  background-color: black;
  border: 1px solid #C8B44B; }
  .shitauke #about_works .section_title {
    position: relative;
    font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
    font-size: 30px;
    line-height: 1.66667;
    font-weight: bold;
    text-align: center;
    margin-bottom: 40px; }
    .shitauke #about_works .section_title:after {
      content: '';
      position: absolute;
      bottom: -10px;
      left: 50%;
      -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      transform: translateX(-50%);
      width: 60px;
      height: 2px;
      background-color: #C8B44B; }
  .shitauke #about_works .text {
    margin-bottom: 25px;
    font-size: 17px;
    line-height: 1.76471;
    text-align: center; }
  .shitauke #about_works .link_box_wrap {
    text-align: center; }
  .shitauke #about_works .link_box {
    position: relative;
    box-sizing: border-box;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 455px;
    height: 227px;
    margin: 20px;
    background: no-repeat center;
    background-size: cover;
    color: white;
    text-decoration: none;
    border: 1px solid #707070; }
    .shitauke #about_works .link_box.-box01 {
      background-image: url("../images/shitauke/img21.jpg"); }
    .shitauke #about_works .link_box.-box02 {
      background-image: url("../images/shitauke/img22.jpg"); }
    .shitauke #about_works .link_box::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      display: block;
      width: 100%;
      height: 100%;
      background-color: white;
      opacity: 0;
      -webkit-transition: 0.3s;
      transition: 0.3s; }
    .shitauke #about_works .link_box:hover::before {
      opacity: 0.3; }
    .shitauke #about_works .link_box .item {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      width: 200px;
      height: 200px;
      background: url("../images/shitauke/bg-title.png") no-repeat center;
      background-size: contain; }
      .shitauke #about_works .link_box .item .title {
        font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
        font-size: 20px;
        line-height: 1.75;
        text-align: center; }
  @media only screen and (max-width: 728px) {
    .shitauke #about_works {
      margin: 0 auto;
      padding: 30px 0;
      width: 92%; }
      .shitauke #about_works .section_title {
        font-size: 20px;
        margin-bottom: 40px; }
        .shitauke #about_works .section_title:after {
          bottom: -10px;
          width: 40px; }
      .shitauke #about_works .text {
        width: 92%;
        margin: 10px auto;
        text-align: justify; }
      .shitauke #about_works .link_box {
        width: 92%;
        max-width: 323px;
        height: 161px;
        margin: 10px 0; }
        .shitauke #about_works .link_box .item {
          width: 145px;
          height: 145px; }
          .shitauke #about_works .link_box .item .title {
            font-size: 15px; } }

.shitauke #works {
  padding: 100px 0 10px; }
  .shitauke #works .section_title {
    position: relative;
    font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
    font-size: 30px;
    line-height: 1.66667;
    font-weight: bold;
    text-align: center;
    margin-bottom: 60px; }
    .shitauke #works .section_title:after {
      content: '';
      position: absolute;
      bottom: -10px;
      left: 50%;
      -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      transform: translateX(-50%);
      width: 60px;
      height: 2px;
      background-color: #C8B44B; }
  .shitauke #works .works_item {
    width: 950px;
    margin: 0 auto 100px; }
    .shitauke #works .works_item .title {
      margin-bottom: 20px;
      padding-bottom: 10px;
      font-size: 20px;
      font-weight: bold;
      line-height: 1.7;
      border-bottom: 1px solid white; }
    .shitauke #works .works_item .text {
      font-size: 17px;
      line-height: 1.76471;
      text-align: justify;
      margin-bottom: 50px; }
    .shitauke #works .works_item .images {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
      justify-content: space-between; }
      .shitauke #works .works_item .images img {
        width: 293px;
        height: auto; }
  @media only screen and (max-width: 728px) {
    .shitauke #works {
      padding: 50px 0 10px; }
      .shitauke #works .section_title {
        font-size: 18px;
        margin-bottom: 40px; }
        .shitauke #works .section_title:after {
          bottom: -10px;
          width: 40px; }
      .shitauke #works .works_item {
        width: 92%;
        margin: 0 auto 40px; }
        .shitauke #works .works_item .title {
          margin-bottom: 18px;
          padding-bottom: 8px;
          font-size: 18px; }
        .shitauke #works .works_item .text {
          margin-bottom: 25px; }
        .shitauke #works .works_item .images {
          -webkit-justify-content: space-around;
          -ms-flex-pack: distribute;
          justify-content: space-around;
          -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
          .shitauke #works .works_item .images img {
            width: 100%;
            max-width: 300px;
            margin: 15px 10px; } }

.shitauke #contact {
  padding-bottom: 20px; }
  @media only screen and (max-width: 728px) {
    .shitauke #contact {
      margin-bottom: 50px; } }
  .shitauke #contact .contact_box {
    width: 900px;
    margin: 0 auto 50px;
    box-sizing: border-box;
    padding: 40px 60px 30px;
    color: black;
    background: rgba(255, 255, 255, 0.9);
    font-size: 1.05rem; }
    @media only screen and (max-width: 728px) {
      .shitauke #contact .contact_box {
        width: 96%;
        margin: 0 auto;
        padding: 30px 10px 25px; } }
    .shitauke #contact .contact_box .section_title {
      position: relative;
      font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
      text-align: center;
      font-size: 32px;
      font-weight: bold;
      margin-bottom: 60px; }
      .shitauke #contact .contact_box .section_title:after {
        content: '';
        position: absolute;
        bottom: -15px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
        width: 60px;
        height: 2px;
        background-color: #961E00; }
      @media only screen and (max-width: 728px) {
        .shitauke #contact .contact_box .section_title {
          font-size: 20px;
          margin-bottom: 30px; }
          .shitauke #contact .contact_box .section_title:after {
            bottom: -15px;
            width: 40px; } }
    .shitauke #contact .contact_box .text {
      margin-bottom: 30px;
      line-height: 1.8; }
    .shitauke #contact .contact_box .contact dl {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
      justify-content: flex-start;
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
      flex-wrap: nowrap; }
      @media only screen and (max-width: 728px) {
        .shitauke #contact .contact_box .contact dl {
          display: block;
          margin-left: auto;
          margin-right: auto; } }
      .shitauke #contact .contact_box .contact dl dt {
        min-width: 140px;
        padding: 14px 0;
        font-size: 14px;
        border: 1px solid #b5b5b6;
        margin-right: 20px;
        line-height: 180%;
        text-align: center; }
        @media only screen and (max-width: 728px) {
          .shitauke #contact .contact_box .contact dl dt {
            padding: 10px 5px;
            font-size: 1rem;
            margin-bottom: 10px;
            margin-right: 0; }
            .shitauke #contact .contact_box .contact dl dt br {
              display: none; } }
    .shitauke #contact .contact_box .contact .tel {
      margin-bottom: 30px; }
      .shitauke #contact .contact_box .contact .tel dd a {
        font-size: 3.3rem;
        color: #961e00;
        line-height: 100%;
        font-weight: bold;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        cursor: default; }
        @media only screen and (max-width: 728px) {
          .shitauke #contact .contact_box .contact .tel dd a {
            font-size: 7.5vw;
            text-align: center;
            display: block; } }
        .shitauke #contact .contact_box .contact .tel dd a:hover {
          text-decoration: none; }
        .shitauke #contact .contact_box .contact .tel dd a::before {
          height: 3.3rem;
          width: 37px;
          content: "";
          display: inline-block;
          margin-right: 18px;
          background-image: url(../images/flow/icon-tel.svg);
          background-size: contain;
          background-repeat: no-repeat; }
          @media only screen and (max-width: 728px) {
            .shitauke #contact .contact_box .contact .tel dd a::before {
              height: 7.5vw;
              width: 7.5vw;
              margin-right: 0; } }
    .shitauke #contact .contact_box .contact .mail dd {
      width: 620px; }
      @media only screen and (max-width: 728px) {
        .shitauke #contact .contact_box .contact .mail dd {
          width: 100%; } }
      .shitauke #contact .contact_box .contact .mail dd a {
        display: block;
        padding: 20px 0;
        background: #961e00;
        border-radius: 5px;
        text-align: center;
        position: relative;
        color: #fff;
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
        background-image: url(../images/flow/icon-mail.svg);
        background-repeat: no-repeat;
        background-position: 15px center;
        background-size: 48px 31px; }
        .shitauke #contact .contact_box .contact .mail dd a:hover {
          text-decoration: none;
          opacity: 0.7; }
        @media only screen and (max-width: 728px) {
          .shitauke #contact .contact_box .contact .mail dd a {
            padding: 15px 0;
            margin-left: auto;
            margin-right: auto;
            font-size: 1rem;
            padding-left: 40px;
            box-sizing: border-box; } }
        @media only screen and (max-width: 728px) {
          .shitauke #contact .contact_box .contact .mail dd a {
            background-size: 32px auto; } }
        .shitauke #contact .contact_box .contact .mail dd a::before {
          content: "";
          width: 48px;
          height: 31px;
          position: absolute;
          left: 11px;
          top: 4px; }

.takuminowaza #main.page {
  color: white; }
  .takuminowaza #main.page .inner {
    padding-bottom: 80px; }
  .takuminowaza #main.page .two_col_box {
    position: relative;
    width: 100%;
    margin-bottom: 160px;
    z-index: 1; }
    .takuminowaza #main.page .two_col_box .image {
      position: absolute;
      z-index: 1;
      font-size: 0; }
      .takuminowaza #main.page .two_col_box .image img {
        width: 100%;
        height: 100%;
        object-fit: cover; }
    .takuminowaza #main.page .two_col_box .body {
      text-align: left;
      z-index: 2; }
      .takuminowaza #main.page .two_col_box .body .text {
        font-size: 17px;
        line-height: 1.76471;
        text-align: justify; }
    .takuminowaza #main.page .two_col_box.-img_right .image {
      right: 0; }
    .takuminowaza #main.page .two_col_box.-img_right .body .title {
      margin-left: 25px; }
    .takuminowaza #main.page .two_col_box.-img_right .body .text {
      width: 517px;
      margin-left: 100px; }
    .takuminowaza #main.page .two_col_box.-img_left .image {
      left: 0; }
    .takuminowaza #main.page .two_col_box.-img_left .body {
      margin-left: 49.5%; }
      .takuminowaza #main.page .two_col_box.-img_left .body .title {
        margin-left: -40px; }
      .takuminowaza #main.page .two_col_box.-img_left .body .text {
        width: 550px; }
    .takuminowaza #main.page .two_col_box.-item01 .image {
      top: 5%;
      width: 613px; }
    .takuminowaza #main.page .two_col_box.-item01 .body .title {
      margin-bottom: 28px; }
      .takuminowaza #main.page .two_col_box.-item01 .body .title img {
        width: 634px; }
    .takuminowaza #main.page .two_col_box.-item02 .image {
      top: 0;
      width: 636.5px; }
    .takuminowaza #main.page .two_col_box.-item02 .body .title img {
      width: 620px; }
    .takuminowaza #main.page .two_col_box.-item03 .image {
      top: 15%;
      width: 634px; }
    .takuminowaza #main.page .two_col_box.-item03 .body .title img {
      width: 634px; }
    .takuminowaza #main.page .two_col_box.-item03 .body .button {
      width: 517px;
      margin-left: 100px; }
    @media only screen and (max-width: 728px) {
      .takuminowaza #main.page .two_col_box {
        margin-bottom: 60px; }
        .takuminowaza #main.page .two_col_box .image {
          position: static;
          margin-bottom: 5%; }
          .takuminowaza #main.page .two_col_box .image img {
            width: 100%; }
        .takuminowaza #main.page .two_col_box .body {
          margin: 0 2% !important; }
          .takuminowaza #main.page .two_col_box .body .title {
            margin-left: 0 !important; }
            .takuminowaza #main.page .two_col_box .body .title img {
              width: 100% !important; }
          .takuminowaza #main.page .two_col_box .body .text {
            width: 85% !important;
            margin-left: 12.5% !important; }
        .takuminowaza #main.page .two_col_box.-item01 .image {
          margin-left: auto;
          width: 95%; }
        .takuminowaza #main.page .two_col_box.-item01 .body .title {
          margin-bottom: 5%; }
        .takuminowaza #main.page .two_col_box.-item02 .image {
          width: 99%; }
        .takuminowaza #main.page .two_col_box.-item03 .image {
          margin-left: auto;
          width: 94%; }
        .takuminowaza #main.page .two_col_box.-item03 .body .button {
          width: 100%;
          margin-left: 0; } }
  .takuminowaza #main.page .button {
    box-sizing: border-box;
    margin: 30px 0;
    text-align: center; }
    .takuminowaza #main.page .button a {
      box-sizing: border-box;
      display: inline-block;
      margin: 12px;
      padding: 20px 30px;
      min-width: 360px;
      font-size: 16px;
      text-decoration: none;
      color: white;
      background-color: black;
      border: 1px solid #C8B44B; }
      .takuminowaza #main.page .button a:hover {
        text-decoration: underline; }
    @media only screen and (max-width: 728px) {
      .takuminowaza #main.page .button {
        margin: 30px 0; }
        .takuminowaza #main.page .button a {
          margin: 12px;
          padding: 20px;
          width: calc(100% - 24px);
          min-width: initial;
          max-width: 320px;
          font-size: 16px; } }

.takuminowaza #intro {
  padding: 50px 0; }
  .takuminowaza #intro .lead .title {
    font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
    margin-bottom: 80px;
    font-size: 24px;
    line-height: 2.08333;
    text-align: center; }
  .takuminowaza #intro .lead .image {
    margin-bottom: 120px;
    text-align: center; }
    .takuminowaza #intro .lead .image img {
      width: 960px;
      height: auto; }
  @media only screen and (max-width: 728px) {
    .takuminowaza #intro {
      padding: 0; }
      .takuminowaza #intro .lead .title {
        margin-bottom: 40px;
        font-size: 18px; }
      .takuminowaza #intro .lead .image {
        margin: 0 2% 80px; }
        .takuminowaza #intro .lead .image img {
          width: 100%; } }

.takuminowaza #about_work .lead {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 100%;
  height: 320px;
  margin-bottom: 80px;
  text-align: center;
  background: url("../images/takuminowaza/bg03_pc.jpg") center;
  background-size: cover; }
  .takuminowaza #about_work .lead .section_title {
    font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
    margin-bottom: 25px;
    font-size: 32px;
    line-height: 1.3;
    color: #C8B44B; }
  .takuminowaza #about_work .lead .subhead {
    font-size: 17px;
    line-height: 1.76471; }
  @media only screen and (max-width: 728px) {
    .takuminowaza #about_work .lead {
      box-sizing: border-box;
      padding: 5% 0;
      height: auto;
      min-height: 200px;
      margin-bottom: 10%;
      background-image: url("../images/takuminowaza/bg03_sp.jpg"); }
      .takuminowaza #about_work .lead .section_title {
        font-size: 20px;
        margin-bottom: 4%; }
      .takuminowaza #about_work .lead .subhead {
        font-size: 17px; } }

.takuminowaza #about_work .works_box_warp {
  width: 90%;
  margin: auto;
  margin-bottom: 100px; }
  @media only screen and (max-width: 728px) {
    .takuminowaza #about_work .works_box_warp {
      width: 90%;
      margin-bottom: 10%; } }

.takuminowaza #about_work .works_box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 80px; }
  .takuminowaza #about_work .works_box .item .image {
    position: relative;
    margin-bottom: 5px; }
    .takuminowaza #about_work .works_box .item .image img {
      width: 480px;
      height: auto; }
    .takuminowaza #about_work .works_box .item .image .tag_before,
    .takuminowaza #about_work .works_box .item .image .tag_after {
      position: absolute;
      top: 0;
      left: 0;
      display: block;
      padding: 14px 18px;
      font-size: 20px;
      font-weight: bold;
      text-align: center; }
    .takuminowaza #about_work .works_box .item .image .tag_before {
      background-color: #2F2F2F; }
    .takuminowaza #about_work .works_box .item .image .tag_after {
      background-color: #7C1702; }
  .takuminowaza #about_work .works_box .item .caption {
    font-size: 15px;
    text-align: right; }
  @media only screen and (max-width: 728px) {
    .takuminowaza #about_work .works_box {
      display: block;
      margin-bottom: 60px; }
      .takuminowaza #about_work .works_box .item .image img {
        width: 100%; }
      .takuminowaza #about_work .works_box .item .image .tag_before,
      .takuminowaza #about_work .works_box .item .image .tag_after {
        padding: 14px 18px;
        font-size: 14px; }
      .takuminowaza #about_work .works_box .item .caption {
        font-size: 12px; }
      .takuminowaza #about_work .works_box .arrow {
        margin: 5px 0 18px;
        text-align: center; } }

.takuminowaza #voice {
  box-sizing: border-box;
  margin-bottom: 100px;
  padding: 50px 100px;
  width: 100%;
  color: black;
  background-color: rgba(255, 255, 255, 0.8); }
  .takuminowaza #voice .section_title {
    position: relative;
    font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
    font-size: 32px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 60px; }
    .takuminowaza #voice .section_title:after {
      content: '';
      position: absolute;
      bottom: -15px;
      left: 50%;
      -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      transform: translateX(-50%);
      width: 60px;
      height: 2px;
      background-color: #961E00; }
  .takuminowaza #voice .two_col {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 50px; }
    .takuminowaza #voice .two_col .item {
      width: 460px; }
      .takuminowaza #voice .two_col .item .title {
        font-size: 18px;
        font-weight: bold;
        margin-bottom: 12px;
        padding-bottom: 12px;
        border-bottom: 1px solid black; }
      .takuminowaza #voice .two_col .item .text {
        font-size: 17px;
        line-height: 1.76471;
        text-align: justify; }
  @media only screen and (max-width: 728px) {
    .takuminowaza #voice {
      margin-bottom: 50px;
      padding: 45px 20px 40px; }
      .takuminowaza #voice .section_title {
        font-size: 20px;
        margin-bottom: 60px; }
        .takuminowaza #voice .section_title:after {
          width: 40px; }
      .takuminowaza #voice .two_col {
        display: block;
        margin-bottom: 0; }
        .takuminowaza #voice .two_col .item {
          width: 100%;
          margin-top: 40px; }
          .takuminowaza #voice .two_col .item .title {
            margin-bottom: 12px;
            padding-bottom: 12px; } }

.takuminowaza #works {
  margin-bottom: 100px; }
  .takuminowaza #works .section_title {
    position: relative;
    font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
    text-align: center;
    font-size: 30px;
    font-weight: bold;
    margin-bottom: 80px; }
    .takuminowaza #works .section_title:after {
      content: '';
      position: absolute;
      bottom: -15px;
      left: 50%;
      -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      transform: translateX(-50%);
      width: 60px;
      height: 2px;
      background-color: #C8B44B; }
  .takuminowaza #works .works_wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 75%;
    margin: 0 auto 50px; }
    .takuminowaza #works .works_wrap .item {
      position: relative;
      display: block;
      width: 260px;
      height: 260px; }
      .takuminowaza #works .works_wrap .item img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center; }
      .takuminowaza #works .works_wrap .item .text_over {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        background-color: rgba(0, 0, 0, 0.6);
        opacity: 0;
        -webkit-transition: 0.3s;
        transition: 0.3s; }
        .takuminowaza #works .works_wrap .item .text_over span {
          display: block;
          margin: 10px 0;
          color: white;
          font-size: 16px; }
      .takuminowaza #works .works_wrap .item:hover .text_over {
        opacity: 1; }
  @media only screen and (max-width: 728px) {
    .takuminowaza #works {
      margin-bottom: 60px; }
      .takuminowaza #works .section_title {
        font-size: 20px;
        margin-bottom: 60px; }
        .takuminowaza #works .section_title:after {
          bottom: -15px;
          width: 40px; }
      .takuminowaza #works .works_wrap {
        display: block;
        width: 100%;
        margin: 0 auto 40px; }
        .takuminowaza #works .works_wrap .item {
          margin: 40px auto;
          width: 300px;
          height: 300px; }
          .takuminowaza #works .works_wrap .item span {
            margin: 10px 0;
            font-size: 16px; } }

.takuminowaza #contact {
  padding-bottom: 20px; }
  @media only screen and (max-width: 728px) {
    .takuminowaza #contact {
      margin-bottom: 50px; } }
  .takuminowaza #contact .contact_box {
    width: 900px;
    margin: 0 auto 50px;
    box-sizing: border-box;
    padding: 40px 60px 30px;
    color: black;
    background: rgba(255, 255, 255, 0.9);
    font-size: 1.05rem; }
    @media only screen and (max-width: 728px) {
      .takuminowaza #contact .contact_box {
        width: 96%;
        margin: 0 auto;
        padding: 30px 10px 25px; } }
    .takuminowaza #contact .contact_box .section_title {
      position: relative;
      font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
      text-align: center;
      font-size: 32px;
      font-weight: bold;
      margin-bottom: 60px; }
      .takuminowaza #contact .contact_box .section_title:after {
        content: '';
        position: absolute;
        bottom: -15px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
        width: 60px;
        height: 2px;
        background-color: #961E00; }
      @media only screen and (max-width: 728px) {
        .takuminowaza #contact .contact_box .section_title {
          font-size: 20px;
          margin-bottom: 30px; }
          .takuminowaza #contact .contact_box .section_title:after {
            bottom: -15px;
            width: 40px; } }
    .takuminowaza #contact .contact_box .text {
      margin-bottom: 30px;
      line-height: 1.8; }
    .takuminowaza #contact .contact_box .contact dl {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
      justify-content: flex-start;
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
      flex-wrap: nowrap; }
      @media only screen and (max-width: 728px) {
        .takuminowaza #contact .contact_box .contact dl {
          display: block;
          margin-left: auto;
          margin-right: auto; } }
      .takuminowaza #contact .contact_box .contact dl dt {
        min-width: 140px;
        padding: 14px 0;
        font-size: 14px;
        border: 1px solid #b5b5b6;
        margin-right: 20px;
        line-height: 180%;
        text-align: center; }
        @media only screen and (max-width: 728px) {
          .takuminowaza #contact .contact_box .contact dl dt {
            padding: 10px 5px;
            font-size: 1rem;
            margin-bottom: 10px;
            margin-right: 0; }
            .takuminowaza #contact .contact_box .contact dl dt br {
              display: none; } }
    .takuminowaza #contact .contact_box .contact .tel {
      margin-bottom: 30px; }
      .takuminowaza #contact .contact_box .contact .tel dd a {
        font-size: 3.3rem;
        color: #961e00;
        line-height: 100%;
        font-weight: bold;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        cursor: default; }
        @media only screen and (max-width: 728px) {
          .takuminowaza #contact .contact_box .contact .tel dd a {
            font-size: 7.5vw;
            text-align: center;
            display: block; } }
        .takuminowaza #contact .contact_box .contact .tel dd a:hover {
          text-decoration: none; }
        .takuminowaza #contact .contact_box .contact .tel dd a::before {
          height: 3.3rem;
          width: 37px;
          content: "";
          display: inline-block;
          margin-right: 18px;
          background-image: url(../images/flow/icon-tel.svg);
          background-size: contain;
          background-repeat: no-repeat; }
          @media only screen and (max-width: 728px) {
            .takuminowaza #contact .contact_box .contact .tel dd a::before {
              height: 7.5vw;
              width: 7.5vw;
              margin-right: 0; } }
    .takuminowaza #contact .contact_box .contact .mail dd {
      width: 620px; }
      @media only screen and (max-width: 728px) {
        .takuminowaza #contact .contact_box .contact .mail dd {
          width: 100%; } }
      .takuminowaza #contact .contact_box .contact .mail dd a {
        display: block;
        padding: 20px 0;
        background: #961e00;
        border-radius: 5px;
        text-align: center;
        position: relative;
        color: #fff;
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
        background-image: url(../images/flow/icon-mail.svg);
        background-repeat: no-repeat;
        background-position: 15px center;
        background-size: 48px 31px; }
        .takuminowaza #contact .contact_box .contact .mail dd a:hover {
          text-decoration: none;
          opacity: 0.7; }
        @media only screen and (max-width: 728px) {
          .takuminowaza #contact .contact_box .contact .mail dd a {
            padding: 15px 0;
            margin-left: auto;
            margin-right: auto;
            font-size: 1rem;
            padding-left: 40px;
            box-sizing: border-box; } }
        @media only screen and (max-width: 728px) {
          .takuminowaza #contact .contact_box .contact .mail dd a {
            background-size: 32px auto; } }
        .takuminowaza #contact .contact_box .contact .mail dd a::before {
          content: "";
          width: 48px;
          height: 31px;
          position: absolute;
          left: 11px;
          top: 4px; }

.takuminowaza #new_era {
  background-color: black; }
  @media only screen and (max-width: 728px) {
    .takuminowaza #new_era {
      background-color: transparent; } }
  .takuminowaza #new_era .title_box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
    height: 400px;
    background: url("../images/takuminowaza/bg05_pc.jpg") center;
    background-size: cover;
    margin-bottom: 30px; }
    .takuminowaza #new_era .title_box .section_title {
      margin-bottom: 30px; }
      .takuminowaza #new_era .title_box .section_title img {
        width: 557px;
        height: 91px; }
    .takuminowaza #new_era .title_box .text {
      font-size: 17px;
      line-height: 1.76471;
      text-align: justify;
      width: 70%; }
    @media only screen and (max-width: 728px) {
      .takuminowaza #new_era .title_box {
        display: block;
        height: auto;
        padding: 20px 0;
        margin-bottom: 60px;
        background-image: url("../images/takuminowaza/bg05_sp.jpg"); }
        .takuminowaza #new_era .title_box .section_title {
          margin-bottom: 30px;
          text-align: center; }
          .takuminowaza #new_era .title_box .section_title img {
            width: 100%;
            max-width: 500px;
            height: auto; }
        .takuminowaza #new_era .title_box .text {
          font-size: 17px;
          width: 92%;
          margin: auto; } }
  .takuminowaza #new_era .body {
    position: relative;
    padding-bottom: 120px;
    z-index: 1;
    background: url("../images/takuminowaza/bg06.png") no-repeat bottom left; }
    .takuminowaza #new_era .body .title {
      position: relative;
      font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
      width: 783px;
      font-size: 20px;
      font-weight: bold;
      margin: 0 0 20px 100px;
      padding-bottom: 20px;
      z-index: 2; }
      .takuminowaza #new_era .body .title::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 2px;
        background: -webkit-linear-gradient(left, #a0913c 0%, #a0913c 80%, #961e00 91%, #961e00 100%);
        background: linear-gradient(to right, #a0913c 0%, #a0913c 80%, #961e00 91%, #961e00 100%); }
    .takuminowaza #new_era .body .text {
      position: relative;
      width: 750px;
      margin: 0 0 70px 100px;
      font-size: 17px;
      line-height: 1.76471;
      text-align: justify;
      z-index: 2; }
    .takuminowaza #new_era .body .image {
      position: absolute;
      bottom: 40px;
      right: 90px;
      text-align: center;
      z-index: 1; }
      .takuminowaza #new_era .body .image img {
        width: 233px;
        height: auto; }
      .takuminowaza #new_era .body .image .caption {
        display: inline-block;
        margin-top: 20px;
        font-size: 17px;
        font-weight: bold; }
    .takuminowaza #new_era .body .button .button2 {
      border-color: white; }
      .takuminowaza #new_era .body .button .button2 img {
        width: 30px;
        margin: -15px 20px -15px 0;
        vertical-align: 6px; }
    @media only screen and (max-width: 728px) {
      .takuminowaza #new_era .body {
        padding: 0 4%;
        padding-bottom: 30px;
        background: black url("../images/takuminowaza/bg06.png") no-repeat top center;
        background-size: contain; }
        .takuminowaza #new_era .body .title {
          width: 100%;
          font-size: 20px;
          margin: 0 0 20px;
          padding-bottom: 20px; }
          .takuminowaza #new_era .body .title::after {
            width: 100%;
            height: 2px; }
        .takuminowaza #new_era .body .text {
          width: 100%;
          margin: 0 0 30px;
          font-size: 17px; }
        .takuminowaza #new_era .body .image {
          position: static;
          text-align: center; }
          .takuminowaza #new_era .body .image img {
            width: 180px;
            height: auto;
            mix-blend-mode: lighten; }
          .takuminowaza #new_era .body .image .caption {
            margin-top: 15px;
            font-size: 13px; }
        .takuminowaza #new_era .body .button .button2 img {
          width: 30px;
          margin: -15px 20px -15px 0;
          vertical-align: 6px; } }

#loading {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: #000;
  z-index: 999; }
  #loading.complete {
    display: none; }
  #loading .loading-image {
    width: 65px;
    height: 65px;
    text-align: center;
    -webkit-animation: fadeIn 2s ease 0s 1 normal;
    animation: fadeIn 2s ease 0s 1 normal; }
    #loading .loading-image img {
      width: 100%;
      height: auto; }

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

#main.monozukuri .inner {
  height: 600px;
  position: relative;
  z-index: 0;
  background-image: url(../images/bg-monozukuri@2x.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover; }
  @media only screen and (max-width: 728px) {
    #main.monozukuri .inner {
      height: auto;
      padding-top: 240px;
      box-sizing: border-box;
      background-size: auto 240px;
      background-position: center top; } }
  #main.monozukuri .inner .text-box {
    padding: 113px 0 0 113px;
    width: 372px;
    position: relative;
    z-index: 2; }
    @media only screen and (max-width: 728px) {
      #main.monozukuri .inner .text-box {
        width: 100%;
        padding: 3%;
        margin: 0;
        position: static;
        background: #000;
        box-sizing: border-box;
        height: 380px; } }
    #main.monozukuri .inner .text-box h2 {
      width: 100%;
      height: auto;
      margin-bottom: 25px;
      position: relative; }
      #main.monozukuri .inner .text-box h2::before {
        content: "";
        display: block;
        position: absolute;
        top: -82px;
        left: -50px;
        width: 210px;
        height: 193px;
        background-image: url(../images/title-line.svg);
        background-size: cover; }
      #main.monozukuri .inner .text-box h2.pc {
        display: block; }
      #main.monozukuri .inner .text-box h2.sp {
        display: none; }
      @media only screen and (max-width: 728px) {
        #main.monozukuri .inner .text-box h2.sp {
          display: block;
          position: absolute;
          top: 100px;
          left: 60px;
          width: 65%;
          color: #fff;
          font-size: 1.4rem;
          line-height: 180%;
          font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif; }
        #main.monozukuri .inner .text-box h2.pc {
          display: none; } }
    #main.monozukuri .inner .text-box h3 {
      margin-bottom: 25px;
      font-size: 1.35rem;
      height: 50px;
      line-height: 50px;
      color: #fff;
      position: relative;
      text-align: center;
      font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif; }
      #main.monozukuri .inner .text-box h3::before, #main.monozukuri .inner .text-box h3::after {
        display: block;
        position: absolute;
        content: "";
        width: 25px;
        height: 40px;
        background-size: contain;
        background-repeat: no-repeat; }
      @media only screen and (max-width: 728px) {
        #main.monozukuri .inner .text-box h3 {
          font-size: 5vw; } }
      #main.monozukuri .inner .text-box h3::before {
        background-image: url(../images/brackets-start.svg);
        left: 0;
        top: 0; }
      #main.monozukuri .inner .text-box h3::after {
        background-image: url(../images/brackets-end.svg);
        right: 0;
        bottom: 0; }
    #main.monozukuri .inner .text-box p {
      line-height: 180%;
      color: #fff;
      margin-bottom: 25px; }

#top-contents .inner {
  background: rgba(0, 0, 0, 0.7); }
  #top-contents .inner ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap; }
    @media only screen and (max-width: 728px) {
      #top-contents .inner ul {
        display: block; } }
    #top-contents .inner ul li {
      width: 34%;
      height: 250px;
      background-size: cover;
      background-position: center center;
      background-repeat: no-repeat;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      position: relative; }
      @media only screen and (max-width: 728px) {
        #top-contents .inner ul li {
          width: 100%; } }
      #top-contents .inner ul li a {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        width: 180px;
        height: 180px;
        color: #fff;
        text-align: center;
        font-size: 1.1rem;
        line-height: 150%;
        font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif;
        background-image: url(../images/bg-title.svg);
        background-repeat: no-repeat;
        background-position: center center;
        background-size: contain; }
        #top-contents .inner ul li a::after {
          -webkit-transition: all 0.3s;
          transition: all 0.3s;
          content: "aaaa";
          position: absolute;
          top: 0;
          left: 0;
          content: "";
          display: block;
          width: 100%;
          height: 100%;
          z-index: 999; }
        #top-contents .inner ul li a:hover {
          text-decoration: none; }
          #top-contents .inner ul li a:hover::after {
            background: rgba(255, 255, 255, 0.3); }
    #top-contents .inner ul .zairyou {
      background-image: url(../images/bg-zairyou@2x.jpg); }
    #top-contents .inner ul .takuminowaza {
      background-image: url(../images/bg-takuminowaza@2x.jpg); }
    #top-contents .inner ul .sekou {
      background-image: url(../images/bg-sekou@2x.jpg); }

.zairyou #main.page .zairyou-bg {
  background: url("../images/zairyou/zairyou-bg.png");
  repeat: no-repeat;
  padding-bottom: 0; }

.zairyou #main.page .zairyou-title {
  text-align: center;
  margin-bottom: -75px; }
  @media only screen and (max-width: 728px) {
    .zairyou #main.page .zairyou-title {
      margin: 0; }
      .zairyou #main.page .zairyou-title img {
        width: 100%;
        margin-bottom: 0; } }

.zairyou #main.page .zairyou-box {
  padding: 30px 140px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center; }
  @media only screen and (max-width: 728px) {
    .zairyou #main.page .zairyou-box {
      padding: 15px 0;
      display: block; } }
  .zairyou #main.page .zairyou-box:nth-child(even) {
    background: #000;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row; }
  .zairyou #main.page .zairyou-box:nth-child(odd) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse; }
  .zairyou #main.page .zairyou-box .text {
    padding: 0 15px; }
    @media only screen and (max-width: 728px) {
      .zairyou #main.page .zairyou-box .text {
        padding: 0 10px; } }
    .zairyou #main.page .zairyou-box .text h3 {
      color: #c8b44b;
      font-size: 1.6rem;
      text-shadow: 0 0 3px #000;
      margin-bottom: 20px;
      text-align: center;
      font-family: '游明朝', '游明朝体', "MS PMincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ＭＳ Ｐ明朝", 'YuMincho', "HG明朝E", "MS 明朝", serif; }
      @media only screen and (max-width: 728px) {
        .zairyou #main.page .zairyou-box .text h3 {
          font-size: 1.2rem; } }
    .zairyou #main.page .zairyou-box .text p {
      font-size: 1.1rem;
      line-height: 180%;
      color: #fff; }
      @media only screen and (max-width: 728px) {
        .zairyou #main.page .zairyou-box .text p {
          font-size: 1rem;
          margin-bottom: 1em; } }
  @media only screen and (max-width: 728px) {
    .zairyou #main.page .zairyou-box .img {
      text-align: center; }
      .zairyou #main.page .zairyou-box .img img {
        max-width: 100%;
        height: auto; } }
