@charset "utf-8";
@media print, screen and (min-width:751px){
/*--------------------------------------------
   サイト基本設定　ここの設定はサイト依存
--------------------------------------------*/
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}
body,html,input,textarea {
  font-family: "Yu Gothic", YuGothic, "游ゴシック", "YuGothic", "游ゴシック体", "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, sans-serif;
}
body {
  min-width: 1100px;
  color: #191919;
  font-size: 18px;
  background: #FEFEFE;
  line-height: 1.7;
  letter-spacing: 0.04em;
  -webkit-text-size-adjust: 100%;
}
a {
  color: #3c5a9a;
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}
table {
  width:100%;
}
.for_sp {
  display:none;
}

/*--------------------------------------------
  header
--------------------------------------------*/
#header {
  width: 100%;
  padding: 25px 0 0;
}
#header .hdr_inner {
  width: 1100px;
  margin: 0 auto 20px;
}
#header .hdr_logo {
  float: left;
  padding-top: 27px;
}
#header .hdr_logo a {
  display: block;
}
#header .hdr_logo a:hover {
  opacity: 0.8;
  text-decoration: none;
}
#header .hdr_logo .img_box {
  margin-bottom: 5px;
}
#header .hdr_logo h1 {
  color: #253f58;
  font-size: 14px;
  line-height: 1;
}
#header .info_navi {
  float: right;
  margin-bottom: 10px;
}
#header .info_navi li {
  float: left;
  color: #533a35;
  margin-right: 24px;
  line-height: 37px;
}
#header .info_navi li a {
  position: relative;
  display: block;
  color: #533a35;
  font-size: 16px;
  font-weight: bold;
  line-height: 37px;
  text-decoration: none;
}
#header .info_navi li a:after {
  position: absolute;
  bottom: 8px;
  left: 0;
  width: 0;
  height: 1px;
  content: "";
  background: #533a35;
  transition: .4s;
  text-decoration: none;
}
#header .info_navi li a:hover:after {
  width: 100%;
}
#header .info_navi li:nth-child(1) {
  padding-left: 31px;
  background: url(../Images/common/map_icon01.png) no-repeat left 1px;
}
#header .info_navi li:nth-child(2) {
  padding-left: 36px;
  background: url(../Images/common/mail_icon01.png) no-repeat left 6px;
}
#header .info_navi li:nth-child(3) {
  font-size: 22px;
  font-weight: bold;
  background: url(../Images/common/tel_icon01.png) no-repeat left 3px;
  padding-left: 35px;
  margin-right: 0;
}
#header .sub_gnavi {
  float: right;
}
#header .sub_gnavi li {
  float: left;
  margin-right: 15px;
}
#header .sub_gnavi li:last-child {
  margin-right: 0;
}
#header .sub_gnavi li a {
  display: block;
}
#header .sub_gnavi li a:hover {
  opacity: 0.85;
}
#header .gnavi {
  width: 100%;
  background: #533a35;
}
#header .gnavi ul {
  width: 1100px;
  margin: 0 auto;
}
#header .gnavi li {
  float: left;
  width: 220px;
  padding: 13px 0;
}
#header .gnavi li:last-child {
  margin-right: 0;
}
#header .gnavi li a {
  display: block;
  color: #fff;
  font-weight: bold;
  border-right: 1px solid #fff;
  font-size: 20px;
  line-height: 1;
  text-align: center;
  text-decoration: none;
}
#header .gnavi li:last-child {
  background: #dc4d0b;
}
#header .gnavi li:nth-child(4) a,
#header .gnavi li:last-child a {
  border-right: none;
}
#header .gnavi li a:hover {
  color: #dc4d0b;
}
#header .gnavi li:last-child a:hover {
  color: #533a35;
}

/*--------------------------------------------
  mainimge
--------------------------------------------*/
#top #mainimage {
  width: 100%;
  position: relative;
}
#top #mainimage .cross_fade {
  width: 100%;
  position: relative;
  overflow: hidden;
}
#top #mainimage .cross_fade li {
  display: none;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-backface-visibility: hidden;
}
#top #mainimage .cross_fade li:first-child {
  display: block;
  float: left;
  position: relative;
}
#top #mainimage .cross_fade img {
  display: block;
  float: left;
  width: 100%;
  height: auto;
}
#top #mainimage .mainimage_text {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
}
#top #mainimage .mainimage_text img {
  width: 100%;
  height: auto;
}
.under #mainimage {
  height: 300px;
  margin-bottom: 30px;
}
.under #mainimage h2 {
  color: #fff;
  font-size: 36px;
  line-height: 1;
  text-align: center;
  padding-top: 120px;
  text-shadow: 1px 1px 3px #545454;
}
.under #mainimage h2 span {
  display: block;
  font-size: 18px;
  letter-spacing: 0.05em;
  padding-top: 10px;
}

/*--------------------------------------------
  contents
--------------------------------------------*/
.under #cts_inner {
  width: 1100px;
  padding: 30px 0 80px;
  margin: 0 auto;
}

/*--------------------------------------------
  main_cts
--------------------------------------------*/
#main_cts {
  float: left;
  width: 840px;
}

/*--------------------------------------------
  side_cts
--------------------------------------------*/
#side_cts {
  float: right;
  width: 228px;
}
#side_cts .side_cts_inner {
  background: #ECECEC;
  padding: 15px 10px;
}
#side_cts .banner_box_01,
#side_cts .banner_box_02 {
  margin-bottom: 10px;
}
#side_cts .banner_box_01 li a,
#side_cts .banner_box_02 li a,
#side_cts .banner_box_03 li a {
  display: block;
}
#side_cts .banner_box_01 li:nth-child(n+2) a,
#side_cts .banner_box_02 li:nth-child(n+2) a,
#side_cts .banner_box_03 li:nth-child(n+2) a {
  margin-top: 10px;
}
#side_cts .banner_box_02 {
  background: #C9D0C8;
  padding: 10px;
  border-radius: 10px;
}
#side_cts .banner_box_01 li a:hover,
#side_cts .banner_box_02 li a:hover,
#side_cts .banner_box_03 li a:hover {
  opacity: 0.85;
}

/*--------------------------------------------
  title
--------------------------------------------*/
.ttl_01 {
  font-size: 28px;
  font-weight: 500;
  border-left: 6px solid #3c5a9a;
  padding: 0 0 0 10px;
  line-height: 36px;
  margin-bottom: 20px;
}
.ttl_02 {
  color: #3c5a9a;
  font-size: 20px;
  font-weight: bold;
}
.ttl_03 {
  font-size: 20px;
}

/*--------------------------------------------
  footer
--------------------------------------------*/
#footer {
  width: 100%;
  background: #f1f0f0;
  border-top: 5px solid #1f4081;
  padding: 50px 0 25px;
}
#footer .ftr_inner {
  width: 1100px;
  margin: 0 auto 60px;
}
#footer .ftr_left {
  float: left;
}
#footer .ftr_left .img_box {
  margin-bottom: 15px;
}
#footer .ftr_left .txt_box {
  font-size: 16px;
  padding-left: 100px;
}
#footer .ftr_right {
  float: right;
  padding-top: 35px;
}
#footer .ftr_right ul {
  float: left;
  margin-right: 60px;
}
#footer .ftr_right ul:last-child {
  margin-right: 0;
}
#footer .ftr_right li a {
  position: relative;
  display: block;
  font-size: 16px;
  line-height: 1;
  margin-bottom: 20px;
}
#footer .ftr_right li:last-child a {
  margin-bottom: 0;
}
#footer .copyright {
  text-align: center;
  font-size: 14px;
  line-height: 1;
}
}