@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Open+Sans+Condensed:300");
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 100;
  src: url("../fonts/NotoSansCJKjp-Thin.eot");
  /* IE9 Compat Modes */
  src: local("fonts/NotoSansCJKjp-Thin.otf"), url("../fonts/NotoSansCJKjp-Thin.eot?#iefix") format("embedded-opentype"), url("../fonts/NotoSansCJKjp-Thin.woff") format("woff"), url("../fonts/NotoSansCJKjp-Thin.ttf") format("truetype");
  /* Safari, Android, iOS */ }
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 200;
  src: url("../fonts/NotoSansCJKjp-Light.eot");
  src: local("fonts/NotoSansCJKjp-Light.otf"), url("../fonts/NotoSansCJKjp-Light.eot?#iefix") format("embedded-opentype"), url("../fonts/NotoSansCJKjp-Light.woff") format("woff"), url("../fonts/NotoSansCJKjp-Light.ttf") format("truetype"); }
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/NotoSansCJKjp-DemiLight.eot");
  src: local("fonts/NotoSansCJKjp-DemiLight.otf"), url("../fonts/NotoSansCJKjp-DemiLight.eot?#iefix") format("embedded-opentype"), url("../fonts/NotoSansCJKjp-DemiLight.woff") format("woff"), url("../fonts/NotoSansCJKjp-DemiLight.ttf") format("truetype"); }
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/NotoSansCJKjp-Regular.eot");
  src: local("fonts/NotoSansCJKjp-Regular.otf"), url("../fonts/NotoSansCJKjp-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/NotoSansCJKjp-Regular.woff") format("woff"), url("../fonts/NotoSansCJKjp-Regular.ttf") format("truetype"); }
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/NotoSansCJKjp-Medium.eot");
  src: local("fonts/NotoSansCJKjp-Medium.otf"), url("../fonts/NotoSansCJKjp-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/NotoSansCJKjp-Medium.woff") format("woff"), url("../fonts/NotoSansCJKjp-Medium.ttf") format("truetype"); }
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/NotoSansCJKjp-Bold.eot");
  src: local("fonts/NotoSansCJKjp-Bold.otf"), url("../fonts/NotoSansCJKjp-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/NotoSansCJKjp-Bold.woff") format("woff"), url("../fonts/NotoSansCJKjp-Bold.ttf") format("truetype"); }
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/NotoSansCJKjp-Black.eot");
  src: local("fonts/NotoSansCJKjp-Black.otf"), url("../fonts/NotoSansCJKjp-Black.eot?#iefix") format("embedded-opentype"), url("../fonts/NotoSansCJKjp-Black.woff") format("woff"), url("../fonts/NotoSansCJKjp-Black.ttf") format("truetype"); }
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: inherit;
  font-size: 100%;
  vertical-align: baseline; }

html {
  line-height: 1; }

ol, ul {
  list-style: none; }

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

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle; }

q, blockquote {
  quotes: none; }

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

a img {
  border: none; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
  display: block; }

input[type="submit"],
input[type="button"],
input[type="reset"] {
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  box-sizing: border-box;
  font-family: "Noto Sans Japanese", "Futura, Futura-Medium", "Futura Medium", "Century Gothic", "CenturyGothic", "M+1cregular", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif"; }
  input[type="submit"]::-webkit-search-decoration,
  input[type="button"]::-webkit-search-decoration,
  input[type="reset"]::-webkit-search-decoration {
    display: none; }
  input[type="submit"]::focus,
  input[type="button"]::focus,
  input[type="reset"]::focus {
    outline-offset: -2px; }

/* 共通部品 */
body {
  font-family: "Noto Sans Japanese", "Futura, Futura-Medium", "Futura Medium", "Century Gothic", "CenturyGothic", "M+1cregular", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  -webkit-text-size-adjust: 100%;
  color: #222;
  overflow-x: hidden;
  overflow-y: scroll;
  font-size: 16px;
  line-height: 1.8;
  min-width: 1200px; }
  @media screen and (max-width: 768px) {
    body {
      min-width: auto; } }

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

img {
  vertical-align: top; }

article {
  width: 100%; }

/* = Selected Text
----------------------------------------------- */
::selection {
  background: #f9e5e6;
  /* Safari */ }

::-moz-selection {
  background: #f9e5e6;
  /* Firefox */ }

header {
  display: flex;
  border-bottom: solid 4px #c10000;
  padding: 15px 0 15px 15px; }
  @media screen and (max-width: 768px) {
    header {
      padding: 5px 0 5px 10px;
      box-sizing: border-box; } }
  header h1 {
    flex-grow: 1; }
    @media screen and (max-width: 768px) {
      header h1 img {
        width: 80%; } }
  header nav {
    display: flex;
    align-items: center; }
    header nav ul {
      display: flex;
      margin-right: 10px;
      align-items: center; }
      @media screen and (max-width: 768px) {
        header nav ul {
          flex-direction: column;
          width: 100%; } }
    header nav li {
      margin: 0 10px; }
      @media screen and (max-width: 768px) {
        header nav li {
          padding: 10px;
          text-align: center;
          font-weight: 500;
          border-bottom: solid 2px #fff;
          margin: 0;
          width: 100%;
          box-sizing: border-box; } }
    @media screen and (max-width: 768px) {
      header nav a {
        color: #c10000 !important; } }
    header nav a.contact {
      background-color: #bea604;
      color: #fff;
      -webkit-border-radius: 25px;
      -moz-border-radius: 25px;
      border-radius: 25px;
      padding: 7px 20px 9px 20px;
      transition: 0.2s all; }
      header nav a.contact:hover {
        background-color: #938104;
        color: #fff;
        text-decoration: none; }
        @media screen and (max-width: 768px) {
          header nav a.contact:hover {
            background-color: transparent; } }
      header nav a.contact:before {
        content: '\f0e0';
        font-family: FontAwesome;
        font-size: 14px;
        display: inline-block;
        padding-right: 5px; }
      @media screen and (max-width: 768px) {
        header nav a.contact {
          background-color: transparent;
          border-radius: 0;
          padding: 0; } }

footer {
  position: relative; }
  footer .backTop {
    cursor: pointer;
    position: absolute;
    top: -27px;
    right: 12px; }
    @media screen and (max-width: 768px) {
      footer .backTop {
        width: 44px;
        height: auto;
        top: -22px;
        right: 5px; } }
  footer nav {
    background-color: #a80000;
    padding: 15px 0; }
  footer ul {
    display: flex;
    justify-content: center; }
    footer ul li {
      margin: 0 20px; }
      @media screen and (max-width: 768px) {
        footer ul li {
          margin: 0 5px; } }
    footer ul a {
      color: #fff;
      font-size: 14px;
      font-weight: bold;
      letter-spacing: 2px;
      text-decoration: none; }
      @media screen and (max-width: 768px) {
        footer ul a {
          font-size: 10px; } }
  footer p {
    padding: 50px 0 10px;
    background-color: #c10000;
    color: #fff;
    font-size: 12px;
    text-align: center; }
    @media screen and (max-width: 768px) {
      footer p {
        padding-top: 10px; } }

.pageTtl {
  background: url(../img/bg_lowerimg.jpg) no-repeat center;
  min-height: 200px;
  text-align: center;
  color: #fff;
  font-size: 35px;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  letter-spacing: 7px; }
  @media screen and (max-width: 768px) {
    .pageTtl {
      min-height: 160px;
      font-size: 28px; } }

article.pageWrap {
  width: 1000px;
  margin: 10px auto 0 auto; }
  @media screen and (max-width: 768px) {
    article.pageWrap {
      width: 100%;
      padding: 0 10px;
      box-sizing: border-box; } }
  article.pageWrap .bread {
    font-size: 12px;
    margin-bottom: 30px;
    font-weight: 500; }
    article.pageWrap .bread a:hover {
      text-decoration: underline; }
    @media screen and (max-width: 768px) {
      article.pageWrap .bread {
        margin-bottom: 15px; } }
  article.pageWrap section {
    margin-bottom: 80px; }
    article.pageWrap section h1 {
      background: url(../img/bg_ttl.jpg) no-repeat left;
      height: 50px;
      font-size: 20px;
      font-weight: 500;
      padding-left: 20px;
      letter-spacing: 3px;
      display: flex;
      align-items: center;
      color: #fff;
      margin-bottom: 30px; }
      @media screen and (max-width: 768px) {
        article.pageWrap section h1 {
          font-size: 16px;
          padding-left: 10px;
          padding-right: 10px;
          letter-spacing: 1px;
          line-height: 1.2; } }
    article.pageWrap section h2 {
      border-bottom: solid 1px #ccc;
      padding-bottom: 5px;
      font-weight: bold;
      margin-bottom: 15px; }

article.pageWrap.contactarea {
  min-height: 400px; }

.btn {
  letter-spacing: 1px;
  padding: 5px 0;
  width: 240px;
  -webkit-border-radius: 28px;
  -moz-border-radius: 28px;
  border-radius: 28px;
  display: inline-block;
  color: #fff;
  cursor: pointer;
  position: relative;
  text-decoration: none;
  transition: all 0.2s; }
  .btn:before {
    content: '\f054';
    font-family: FontAwesome;
    font-size: 14px;
    display: inline-block;
    padding-right: 10px; }
  .btn.tran {
    border: solid 2px #fff;
    width: 176px; }
    .btn.tran:hover {
      background: #fff;
      color: #c10000; }
  .btn.red {
    background-color: #c10000; }
    .btn.red:hover {
      background-color: #970000; }
  .btn.gray {
    background-color: #bbb; }
    .btn.gray:hover {
      background-color: #999; }

.table {
  border-top: solid 1px #ccc;
  width: 100%; }
  @media screen and (max-width: 768px) {
    .table {
      border-top: none; } }
  .table th {
    font-weight: 500;
    padding: 20px;
    border-bottom: solid 1px #ccc; }
    @media screen and (max-width: 768px) {
      .table th {
        display: block;
        background-color: #eee;
        padding: 10px;
        border-bottom: none; } }
  .table td {
    padding: 20px;
    border-bottom: solid 1px #ccc; }
    @media screen and (max-width: 768px) {
      .table td {
        display: block;
        padding: 10px;
        border-bottom: none; } }
  .table.company th {
    width: 140px; }
    @media screen and (max-width: 768px) {
      .table.company th {
        width: auto; } }
  .table.company .officer {
    width: 95px;
    display: inline-block; }
  .table.contact th {
    width: 326px;
    border-right:1px solid #ccc; }
    @media screen and (max-width: 768px) {
      .table.contact th {
        width: auto; } }
  .table.contact .small {
    font-size: 12px; }
  .table.contact .red {
    color: #c10000;
    font-size: 14px; }
  .table.contact .gray {
    color: #666;
    font-size: 14px; }

@media screen and (max-width: 768px) {
  .brPc {
    display: none; }

  .brSp {
    display: inline; } }
@media screen and (min-width: 769px) {
  .brPc {
    display: inline; }

  .brSp {
    display: none; } }
.error_messe {
  color: #c10000; }

.mainWrap {
  position: relative;
  display: flex;
  align-items: center;
  background: url(../img/mainimg.jpg) no-repeat bottom;
  background-size: 100% auto;
  min-height: 540px; }
  @media screen and (max-width: 768px) {
    .mainWrap {
      min-height: 280px;
      background-size: cover;
      background-position: 85%; } }
  .mainWrap img {
    width: 100%; }
  .mainWrap p {
    position: absolute;
    left: 32px;
    color: #fff;
    font-size: 32px;
    letter-spacing: 3px;
    font-weight: bold;
    top: 100px; }
    .mainWrap p span {
      font-size: 45px; }
      @media screen and (max-width: 768px) {
        .mainWrap p span {
          font-size: 25px; } }
    @media screen and (max-width: 768px) {
      .mainWrap p {
        right: 0;
        font-size: 18px;
        top: 30px; } }

article.top {
  display: flex;
  flex-direction: column; }
  article.top section {
    padding: 50px 0;
    text-align: center; }
    @media screen and (max-width: 768px) {
      article.top section {
        padding: 30px 0; } }
    article.top section#service .discription {
      font-size: 25px;
      letter-spacing: 5px;
      font-weight: bold;
      padding-top: 25px; }
      @media screen and (max-width: 768px) {
        article.top section#service .discription {
          font-size: 16px;
          letter-spacing: 1px; } }
    article.top section#company {
      background: url(../img/bg_top.jpg) no-repeat bottom;
      background-size: 100% auto;
      position: relative; }
      @media screen and (max-width: 768px) {
        article.top section#company {
          background: #c10000; } }
      article.top section#company .wrap {
        position: relative;
        z-index: 3; }
      article.top section#company .discription {
        padding-top: 25px;
        color: #fff;
        font-size: 18px;
        width: 620px;
        margin: 0 auto 30px auto;
        text-align: left;
        letter-spacing: 3px;
        font-weight: bold; }
        @media screen and (max-width: 768px) {
          article.top section#company .discription {
            width: auto;
            padding: 25px 15px 0 15px;
            font-size: 17px;
            text-align: center; } }
        article.top section#company .discription span {
          font-size: 23px; }
          @media screen and (max-width: 768px) {
            article.top section#company .discription span {
              font-size: 20px;
              font-weight: bold; } }
        article.top section#company .discription .tel {
          display: block;
          margin-top: 20px;
          padding-top: 10px;
          border-top: solid 2px #fff;
          text-align: center;
          font-weight: bold;
          letter-spacing: 0;
          font-size: 28px;
          font-family: 'Montserrat', sans-serif; }
    article.top section#access {
      padding: 0; }
    article.top section#group {
      background: #eee; }
      article.top section#group ul {
        width: 950px;
        margin: 25px auto 0 auto;
        display: flex;
        justify-content: space-between; }
        @media screen and (max-width: 768px) {
          article.top section#group ul {
            flex-direction: column;
            justify-content: center;
            width: 75%; } }
        article.top section#group ul li {
          width: 260px;
          text-align: center;
          font-weight: 500;
          transition: 0.2s all; }
          article.top section#group ul li:hover {
            opacity: 0.7; }
          @media screen and (max-width: 768px) {
            article.top section#group ul li {
              width: auto;
              margin-bottom: 25px; } }
        article.top section#group ul a {
          display: block;
          background: #fff;
          border-bottom: solid 3px #c10000;
          padding: 30px 0; }
    article.top section h1 {
      font-size: 47px;
      font-weight: bold;
      color: #c10000;
      letter-spacing: 3px;
      line-height: 1;
      font-family: 'Montserrat', sans-serif; }
      article.top section h1.white {
        color: #fff; }
      @media screen and (max-width: 768px) {
        article.top section h1 {
          font-size: 30px; } }
    article.top section .subttl {
      color: #c10000;
      font-size: 16px;
      border-bottom: solid 2px #c10000;
      font-weight: bold;
      display: inline;
      padding: 0 0 5px 0;
      letter-spacing: 4px; }
      article.top section .subttl.white {
        color: #fff;
        border-bottom: solid 2px #fff; }

.footContent {
  display: flex; }
  @media screen and (max-width: 768px) {
    .footContent {
      flex-direction: column; } }
  .footContent section {
    width: 50%;
    background: no-repeat center;
    background-size: 100% auto; }
    @media screen and (max-width: 768px) {
      .footContent section {
        width: 100%; } }
    .footContent section#contact {
      background-image: url(../img/bg_top2.jpg); }
    .footContent section#policy {
      background-image: url(../img/bg_top3.jpg); }
      .footContent section#policy .btn {
        width: 220px; }
    .footContent section .btn {
      margin-top: 30px; }

.google-maps {
  height: 600px; }
  @media screen and (max-width: 768px) {
    .google-maps {
      height: 260px; } }
  .google-maps iframe {
    height: 600px; }
    @media screen and (max-width: 768px) {
      .google-maps iframe {
        height: 260px; } }

.leadContact {
  text-align: center;
  margin-bottom: 25px;
  font-weight: bold;
  letter-spacing: 2px; }
  @media screen and (max-width: 768px) {
    .leadContact {
      letter-spacing: 0px; } }
  .leadContact .tel {
    font-size: 32px;
    letter-spacing: 0;
    font-weight: bold;
    font-family: 'Montserrat', sans-serif; }
    @media screen and (max-width: 768px) {
      .leadContact .tel {
        font-size: 20px; } }

.leadatt {
  font-weight: 500;
  text-align: center;
  padding: 10px;
  margin-bottom: 15px;
  background-color: #f9e5e6;
  letter-spacing: 2px; }

.table.contact {
  margin-bottom: 30px;
  border: solid 1px #eee; }
  .table.contact td {
    padding: 15px 20px; }
  .table.contact input,
  .table.contact textarea {
    font-family: "Noto Sans Japanese", "Futura, Futura-Medium", "Futura Medium", "Century Gothic", "CenturyGothic", "M+1cregular", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    margin: 0;
    padding: 0;
    background: #eee;
    border: none;
    border-radius: 0;
    outline: none;
    appearance: none;
    font-size: 16px;
    width: 100%;
    padding: 10px;
    box-sizing: border-box; }
    @media screen and (max-width: 768px) {
      .table.contact input,
      .table.contact textarea {
        background-color: transparent;
        border: solid 1px #eee; } }

.contactatt {
  text-align: center;
  font-size: 14px;
  margin-bottom: 30px; }
.contactatt a{
  color: #435ce9;
}


.contactBtn ul {
  display: flex;
  justify-content: center; }
  @media screen and (max-width: 768px) {
    .contactBtn ul {
      flex-direction: column;
      align-items: center; } }
  .contactBtn ul .btn:before {
    position: absolute;
    top: 50%;
    /* left: 50%; */
    transform: translateY(-50%);
    left: 20px; }
.contactBtn li {
  text-align: center;
  padding: 0; }
  .contactBtn li:first-child {
    margin-right: 10px; }
    @media screen and (max-width: 768px) {
      .contactBtn li:first-child {
        margin-right: 0;
        margin-bottom: 10px; } }
  @media screen and (max-width: 768px) {
    .contactBtn li {
      width: 95%; }
      .contactBtn li .btn_type_g,
      .contactBtn li .btn_type_w {
        width: 100%; } }
  .contactBtn li input[type="submit"],
  .contactBtn li input[type="button"],
  .contactBtn li input[type="reset"] {
    border: none;
    background: transparent;
    color: #fff;
    font-size: 16px;
    cursor: pointer;
    padding: 10px 0;
    width: 240px; }
  .contactBtn li .white {
    color: #fff; }
  .contactBtn li .fa {
    font-size: 14px;
    display: inline-block;
    padding-right: 10px; }

.policySection p {
  margin-bottom: 30px;
  font-size: 12px; }
  .policySection p.lead {
    font-size: 16px; }
.policySection .tableScroll::-webkit-scrollbar {
  height: 5px; }
.policySection .tableScroll::-webkit-scrollbar-track {
  background-color: #f1f1f1; }
.policySection .tableScroll::-webkit-scrollbar-thumb {
  background-color: #bcbcbc; }
.policySection .tableScroll.marginBtm30 {
  margin-bottom: 30px; }
@media screen and (max-width: 768px) {
  .policySection .tableScroll {
    overflow: auto;
    white-space: nowrap; }
    .policySection .tableScroll .table {
      margin-bottom: 10px; } }
.policySection .table {
  border-top: solid 1px #9e9a99;
  border-left: solid 1px #9e9a99; }
  .policySection .table td, .policySection .table th {
    border-bottom: solid 1px #9e9a99;
    border-right: solid 1px #9e9a99;
    font-size: 12px; }
    @media screen and (max-width: 768px) {
      .policySection .table td, .policySection .table th {
        display: table-cell; } }
  .policySection .table th {
    background-color: #e3d7d7;
    text-align: center;
    font-weight: bold; }
  .policySection .table .size01 {
    width: 235px; }
  .policySection .table .size02 {
    width: 480px; }
  .policySection .table .size03 {
    width: 300px; }
  .policySection .table .size04 {
    width: 50%; }
  .policySection .table .tCenter {
    text-align: center; }
.policySection .dateList {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 30px;
  font-size: 12px; }
  .policySection .dateList li {
    width: 50%; }
.policySection .leadatt {
  font-weight: 500;
  text-align: center;
  padding: 10px;
  margin-bottom: 15px;
  background-color: #e3d7d7;
  font-size: 16px; }
.policySection .inquiry {
  font-size: 16px;
  font-weight: 500; }
  .policySection .inquiry span {
    color: #c10000; }

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