@charset "utf-8";
/* CSS Document */
/*
@import "/site/css/print.css";
*/
/* ------------------------------- */
/* Initialize */
/* ------------------------------- */

html{color:#333;background:#FFF}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal}ol,ul{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;*font-size:100%}legend{color:#000}#yui3-css-stamp.cssreset{display:none}

.error {
 font-weight: bold;
 color: #F00;
}

.text-bold {
 font-weight: bold;
}

.text-red {
 color: #F00;
}


/* ------------------------------- */
/* Common */
/* ------------------------------- */

a {
 color: #333;
}

a:link,
a:hover,
a:visited,
a:active {
 color: #333;
}

a:hover img {
 opacity: 0.7;
 filter: alpha(opacity=70);
 -ms-filter: "alpha(opacity=70)";
}

img {
 -webkit-backface-visibility: hidden;
}

body {
 color: #FFF;
 background-color: #595757;
}


/* ------------------------------- */
/* Fonts */
/* ------------------------------- */

body {
 font-family: Lato, "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

/* Edge Hack Web Fonts */
@supports (-ms-ime-align: auto) {
 body {
  transform: rotate(0.001deg);
 }
}

/* Firefox Hack Web Fonts */
@-moz-document url-prefix() {
 body {
  font-family: "Open Sans", "Helvetica Neue", Helvetica, "Arial", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
 }
}

/* IE Hack Web Fonts */
@media all and (-ms-high-contrast:none) {
 body {
  font-family: "Open Sans", "Helvetica Neue", Helvetica, "Arial", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
 }
}

.font-sans {
 font-family: "Open Sans", "Helvetica Neue", Helvetica, "Arial", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

.font-serif {
 font-family: Georgia, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo,serif;
}


/* ------------------------------- */
/* Site Width */
/* ------------------------------- */
/*
@media (min-width: 1200px) {
 .container {
  max-width: 1030px;
 }
}
*/

/* ------------------------------- */
/* Equal Height Columns */
/* ------------------------------- */

.row-eq-height {
 display: flex;
 flex-wrap: wrap;
}

/* Flexbox Safari bug */
.row-eq-height.container:before,
.row-eq-height.container:after,
.row-eq-height.row:before,
.row-eq-height.row:after {
 content: normal;
}


/* ------------------------------- */
/* Button */
/* ------------------------------- */

.btn.btn-primary {
 color: #FFF;
 background-color: #005292 !important;
}


/* ------------------------------- */
/* Header */
/* ------------------------------- */

header {
 width: 100%;
 padding: 10px 15px;
 background-color: #FFF;
}

/* Nav */

header nav {
 justify-content: space-between;
}

header nav ul {
 display: flex;
 justify-content: space-between;
 align-items: center;
}

header nav ul li {
 margin-left: 30px;
 text-align: center;
}

header nav ul li a {
 display: block;
 padding: 4px 0;
 font-weight: 500;
}

header nav ul li a:hover,
header nav ul li a.active {
 margin-bottom: 2px;
 padding-bottom: 0;
 text-decoration: none;
 border-bottom: 2px solid #eb6120;
}

/* Menu-Btn */

header .menu-btn {
 overflow: hidden;
 display: block;
 position: relative;
 z-index: 0;
 width: 40px;
 height: 40px;
 margin-right: 10px;
 cursor: pointer;
}

header .menu-btn span,
header .menu-btn::before,
header .menu-btn::after {
 display: block;
 position: absolute;
 top: 0;
 bottom: 0;
 left:0;
 right: 0;
 width: 30px;
 height: 2px;
 margin: auto;
 background: #000;
}

header .menu-btn span {
 overflow: hidden;
 z-index: 1;
 color: #000;
}

header .menu-btn::before {
 z-index: 2;
 transform: translate(0, -10px);
 content: "";
}

header .menu-btn::after {
 z-index: 2;
 transform: translate(0, 10px);
 content: "";
}

@media (max-width: 991px) {
 body {
  padding-top: 58px;
 }

 header {
  position: fixed;
  top: 0;
  left: 0;
  height: 58px;
  padding: 7px 0;
  z-index: 999;
 }

 .header-sp {
  display: flex;
  justify-content: space-between;
  align-items: center;
 }

 .header-sp h1 img {
  height: 44px;
 }
}

@media (max-width: 290px) {
 .header-sp h1 img {
  padding-right: 20px;
  height: auto;
  max-width: 100%;
 }
}

/* Pushy */

.pushy {
 width: 170px;
 background: #FFF;
}

.pushy a:link,
.pushy a:hover,
.pushy a:visited,
.pushy a:active {
 color: #333;
}


/* ------------------------------- */
/* Main */
/* ------------------------------- */

main {
 scroll-behavior: smooth;
}


/* ------------------------------- */
/* Background */
/* ------------------------------- */

.bg {
 margin: 60px 0;
 padding: 40px 0 0;
}

@media (max-width: 991px) {
 .bg {
  margin: 0;
  padding: 70px 0 20px;
 }
}


/* ------------------------------- */
/* Section Title */
/* ------------------------------- */

.title {
 margin-bottom: 30px;
}

.title h2 {
 margin-bottom: 30px;
 padding-left: 10px;
 color: #FFF;
 font-size: 2rem;
 font-weight: bold;
 border-left: 10px solid #eb6120;
}

.title h3 {
 color: #FFF;
 font-size: 1.2rem;
 font-weight: 500;
 line-height: 1.6;
}

@media (max-width: 992px) {
 .title {
  margin-bottom: 0;
 }
 
 .title h2 {
  margin-bottom: 40px;
 }

 .title h3 {
  margin-bottom: 40px;
 }
}

@media (max-width: 767px) {
 .title h2 {
  font-size: 1.6rem;
  margin-bottom: 20px;
 }

 .title h3 {
  margin-bottom: 20px;
 }

 .title h2 span {
  font-size: 3rem;
 }
}


/* ------------------------------- */
/* Footer */
/* ------------------------------- */

footer {
 margin: 80px 0 0;
}

/* Nav */

footer nav {
 display: flex;
 justify-content: center;
}

footer nav ul {
 display: flex;
 justify-content: space-between;
 flex-wrap: wrap;
 align-items: flex-end;
}

footer nav ul li {
 margin: 0 15px;
 text-align: center;
}

footer nav ul li a {
 display: block;
 padding: 4px 0;
 color: #FFF !important;
 font-weight: 400;
}

footer nav ul li a:hover {
 margin-bottom: 2px;
 padding-bottom: 0;
 text-decoration: none;
 border-bottom: 2px solid #eb6120;
}

/* Address */

footer .address {
 margin-top: 40px;
 padding: 30px 0;
 text-align: center;
 background-color: #FFF;
}

footer .address h1 {
 margin-bottom: 40px;
}

footer .address h1 img {
 max-width: 300px;
}

footer .address p {
 color: #333;
 text-align: center;
}

footer .address p br {
 margin-right: 10px;
}

@media (max-width: 767px) {
 footer nav ul {
  justify-content: center;
 }

 footer nav ul li {
  margin: 0 10px 20px;
 }

 footer .address {
  display: block;
  text-align: center;
 }

 footer .address h1 {
  margin-right: 0;
  margin-bottom: 20px;
 }

footer .address h1 img {
 max-width: 200px;
}
}


/* ------------------------------- */
/* Copyright */
/* ------------------------------- */

#copyright {
 margin-top: 70px;
 padding-bottom: 10px;
 text-align: center;
}


/* ------------------------------- */
/* MailFormPro */
/* ------------------------------- */

#mfp_loading,
#mfp_loading_screen,
#mfp_overlay_background,
#mfp_overlay {
 display: none;
}

div#mfp_hidden {
 overflow: hidden;
 width: 1px;
 height: 1px;
 padding: 0;
 margin: 0;
}

.mfp_err {
 color: red;
}


/* ------------------------------- */
/* Contact
/* ------------------------------- */

#contact .btn {
 color: #FFF;
 background-color: #eb6120;
}