@charset "UTF-8";
html {
  font-size: 10px; }

body,
td,
th,
input,
textarea {
  color: #000000;
  line-height: 1.5;
  font-size: 1.4rem;
  font-family: 'Noto Sans JP', 'ヒラギノ角ゴ W6', 'Hiragino Kaku Gothic W6', 'ヒラギノ角ゴ W3', 'Hiragino Kaku Gothic W3', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif; }

body {
  overflow-wrap: break-word;
  background-color: #fff; }

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom; }

.img_ck {
  font-size: 0.1rem;
  line-height: 0; }

/* clearfix (micro) */
.clearfix:before,
.clearfix:after {
  content: ' ';
  display: table; }

.clearfix:after {
  clear: both; }

/* For IE 6/7 only */
.clearfix {
  *zoom: 1; }

a,
a:link,
a:visited,
a:active,
a:hover,
a:hover img {
  color: #000000;
  text-decoration: none; }

* {
  margin: 0;
  padding: 0;
  word-break: break-word;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

*::before,
*::after {
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

iframe {
  border: none; }

ul,
ol,
li {
  list-style: none; }

input,
select,
textarea,
button {
  outline: none; }

figure {
  margin: 0; }

table {
  border-collapse: collapse; }

picture {
  display: block; }

h1,
h2,
h3,
h4,
h5,
h6,
div,
p,
ul,
ol,
li,
dl,
dt,
dd,
figure,
img,
nav {
  margin: 0;
  padding: 0; }

@media screen and (min-width: 781px), print {
  .show_sp {
    display: none !important; }

  .container {
    min-width: 1200px;
    margin: 0 auto;
    overflow: hidden; }

  .row {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto; }

  a[href^='tel'] {
    pointer-events: none;
    text-decoration: none;
    opacity: 1 !important;
    cursor: default !important; }

  a {
    -webkit-transition: opacity 0.3s ease-out;
    -moz-transition: opacity 0.3s ease-out;
    transition: opacity 0.3s ease-out; }

  a:hover {
    opacity: 0.7; }

  .main_image {
    position: relative; }

  .main_image img {
    width: 100%; }

  .contact_btns {
    background-color: #0050a4;
    padding: 30px 0;
    position: fixed;
    bottom: -100%;
    width: 100%;
    z-index: 99;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; }

  .contact_btns.active {
    bottom: 0; }

  .contact_btns a {
    width: 500px;
    line-height: 1;
    padding: 25px 0;
    margin: 0 25px;
    text-align: center;
    background-color: #ffffff;
    color: #0050a4;
    font-weight: bold;
    font-size: 35px; }

  .contact_btns a:hover {
    opacity: 0.7; }

  header.fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 99;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    background-color: #fff;
    min-width: 1200px;
    -moz-box-shadow: 0px 0px 8px 0px rgba(50, 49, 49, 0.39);
    box-shadow: 0px 0px 8px 0px rgba(50, 49, 49, 0.39); }

  header.fixed .bHeader__logo img {
    width: 280px; }

  header.fixed .bHeader {
    padding: 20px 40px; }

  header .bHeader {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    padding: 30px 40px;
    background: url("../images/header_bg.png") repeat left top;
    -webkit-transition: padding 0.3s ease-out;
    -moz-transition: padding 0.3s ease-out;
    transition: padding 0.3s ease-out; }

  header .bHeader__logo {
    z-index: 9; }

  header .bHeader__logo a {
    display: inline-block; }

  header .bHeader__logo img {
    width: 330px;
    height: auto;
    -webkit-transition: width 0.3s ease-out;
    -moz-transition: width 0.3s ease-out;
    transition: width 0.3s ease-out; } }
@media screen and (min-width: 781px), print {
  footer {
    background-color: #0067a9;
    padding: 120px 0 80px; }

  footer .row {
    color: #fff; }

  footer .row h2 {
    text-align: center; }

  footer .row h2 img {
    max-width: 750px; }

  footer .row a {
    color: #fff;
    letter-spacing: 2px; }

  footer .row a {
    font-size: 3.4rem;
    letter-spacing: 2px;
    display: block;
    text-align: center; }

  footer .row .bigtel {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 50px 0 70px; }

  footer .row .bigtel a {
    font-size: 65px;
    font-weight: bold;
    letter-spacing: 5px;
    line-height: 1; }

  footer .row .f_location {
    font-size: 3.8rem;
    text-align: center;
    margin: 0;
    letter-spacing: 2px; } }
@media screen and (max-width: 781px) {
  body {
    font-size: 5vw;
    line-height: 8.75vw; }

  .container {
    overflow: hidden;
    min-width: 320px; }

  .show_pc {
    display: none !important; }

  a[href^='tel'] {
    text-decoration: none; }

  .main_image {
    position: relative; }

  .main_image img {
    width: 100%; }

  .contact_btns {
    background-color: #0050a4;
    padding: 2.5608194622vw 3.8412291933vw;
    position: fixed;
    bottom: -100%;
    width: 100%;
    z-index: 99;
    transition: all 0.3s ease-out;
    display: flex;
    align-items: center;
    justify-content: space-between; }

  .contact_btns.active {
    bottom: 0; }

  .contact_btns a {
    width: calc(50% - 1.9206145967vw);
    line-height: 1.4;
    padding: 1.9206145967vw 1.2804097311vw;
    text-align: center;
    background-color: #ffffff;
    color: #0050a4;
    font-weight: bold;
    font-size: 3.2010243278vw; }

  .contact_btns a:hover {
    opacity: 0.7; }

  header.fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 99; }

  header .bHeader {
    display: flex;
    align-items: center;
    position: relative;
    padding: 3.8412291933vw;
    background: url("../images/header_bg.png") repeat left top;
    transition: padding 0.3s ease-out; }
    header .bHeader h1 {
      font-size: 0; }

  header .bHeader__logo {
    z-index: 9; }

  header .bHeader__logo a {
    display: block; }

  header .bHeader__logo img {
    width: 40.9731113956vw;
    display: block; }

  footer {
    background-color: #0067a9;
    padding: 15.3649167734vw 0 10.2432778489vw; }

  footer .row {
    color: #fff; }

  footer .row h2 {
    text-align: center; }

  footer .row h2 img {
    max-width: 83.2266325224vw; }

  footer .row a {
    color: #fff;
    letter-spacing: 0.2560819462vw; }

  footer .row a {
    font-size: 4.3533930858vw;
    letter-spacing: 0.2560819462vw;
    display: block;
    text-align: center; }

  footer .row .bigtel {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 6.4020486556vw 0 8.9628681178vw; }

  footer .row .bigtel a {
    font-size: 8.3226632522vw;
    font-weight: bold;
    letter-spacing: 0.6402048656vw;
    line-height: 1; }

  footer .row .f_location {
    font-size: 4.8655569782vw;
    text-align: center;
    margin: 0;
    letter-spacing: 0.2560819462vw; } }

/*# sourceMappingURL=common.css.map */
