@charset "UTF-8";
/* clearfix */
.clearfix, #menu_sec1_ #menu_sec1 dl {
  *zoom: 1;
}
.clearfix:before, #menu_sec1_ #menu_sec1 dl:before, .clearfix:after, #menu_sec1_ #menu_sec1 dl:after {
  content: "";
  display: table;
}
.clearfix:after, #menu_sec1_ #menu_sec1 dl:after {
  clear: both;
}

/*----------------------------------------------------
	再設定
----------------------------------------------------*/
html {
  font-size: 16px;
}

body {
  font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
  line-height: 1.6;
  color: #333;
  font-size: 14px;
  font-size: 0.875rem;
}

a:link, a:visited {
  color: #2489ce;
}
a:hover, a:active {
  color: #72b7e6;
}

img {
  vertical-align: bottom;
}

p {
  margin-bottom: 1em;
}

/*----------------------------------------------------
	汎用クラス
----------------------------------------------------*/
/*----------------------------------------------------
	汎用クラス
----------------------------------------------------*/
.wrapper, #header_, #header_ .navi_s_, #header_ .navi_s_pull, #header__, #index_mainimg_, #_index_mainimg, #index_sec1_, #index_sec2_, #index_sec3_, #_index_sec3_, #index_sec4_, #map-canvas, #recruit_sec1_, #access_sec1_, #menu_sec1_, #contact_sec1_, #footer_navi_, #footer_logo_, #copy_ {
  position: relative;
  width: 100%;
  text-align: center;
  overflow: hidden;
}

.container, #header_ #header, #header_ .navi_s_ .navi_s li, #index_sec1_ #index_sec1, #index_sec2_ #index_sec2, #index_sec3_ #index_sec3, #_index_sec3_ #_index_sec3, #index_sec4_ #index_sec4, #recruit_sec1_ #recruit_sec1, #access_sec1_ #access_sec1, #menu_sec1_ #menu_sec1, #contact_sec1_ #contact_sec1, #footer_navi_ #footer_navi, #footer_logo_ #footer_logo, #copy_ #copy {
  position: relative;
  width: 1000px;
  margin: 0 auto;
  overflow: hidden;
}
@media (max-width: 999px) {
  .container, #header_ #header, #header_ .navi_s_ .navi_s li, #index_sec1_ #index_sec1, #index_sec2_ #index_sec2, #index_sec3_ #index_sec3, #_index_sec3_ #_index_sec3, #index_sec4_ #index_sec4, #recruit_sec1_ #recruit_sec1, #access_sec1_ #access_sec1, #menu_sec1_ #menu_sec1, #contact_sec1_ #contact_sec1, #footer_navi_ #footer_navi, #footer_logo_ #footer_logo, #copy_ #copy {
    max-width: 100%;
    padding: 0 20px;
  }
}

/*----------------------------------------------------
	#header
----------------------------------------------------*/
#sp {
  height: 0;
  display: none;
}
@media (max-width: 999px) {
  #sp {
    display: block;
  }
}

#header_ {
  height: 70px;
  position: fixed;
  background-color: #ffffff;
  z-index: 9999;
  overflow: visible;
}
#header_ #header {
  height: 70px;
  overflow: visible;
}
#header_ #header #logo {
  position: absolute;
  top: 10px;
  left: 0;
}
#header_ #header #fb {
  position: absolute;
  top: 20px;
  right: 0;
}
#header_ #header .navi_l {
  display: block;
  position: absolute;
  top: 0;
  left: 460px;
  height: 70px;
}
#header_ #header .navi_l li {
  display: block;
  float: left;
  height: 70px;
}
#header_ #header .navi_l li.navi_top {
  width: 64px;
  background-image: url(../images/navi_top.png);
}
#header_ #header .navi_l li.navi_menu {
  width: 84px;
  background-image: url(../images/navi_menu.png);
}
#header_ #header .navi_l li.navi_access {
  width: 111px;
  background-image: url(../images/navi_access.png);
}
#header_ #header .navi_l li.navi_recruit {
  width: 88px;
  background-image: url(../images/navi_recruit.png);
}
#header_ #header .navi_l li.navi_contact {
  width: 108px;
  background-image: url(../images/navi_contact.png);
}
#header_ #header .navi_l li:hover {
  background-position: 0 70px;
  cursor: pointer;
}
#header_ .navi_s_ {
  display: none;
  background-color: #fff;
  height: 0;
  transition-duration: .5s;
}
#header_ .navi_s_ .navi_s li {
  display: block;
  height: 50px;
  border-top: 1px solid #ccc;
  line-height: 2.5;
}
#header_ .navi_s_ .navi_s li a {
  font-size: 20px;
  text-decoration: none;
  color: #333;
}
#header_ .navi_s_ .navi_s li a:hover {
  opacity: 0.6;
}
#header_ .navi_s_pull {
  display: none;
  height: 70px;
  z-index: 9999;
}
@media (max-width: 999px) {
  #header_ #header #logo {
    left: 0;
    right: 0;
  }
  #header_ #header #fb {
    display: none;
  }
  #header_ #header .navi_l {
    display: none;
  }
  #header_ .navi_s_ {
    display: block;
  }
  #header_ .navi_s_.active {
    height: 250px;
  }
  #header_ .navi_s_pull {
    display: block;
  }
}

#header__ {
  height: 70px;
}

/*----------------------------------------------------
	index
----------------------------------------------------*/
#index_mainimg_ {
  height: 750px;
  background-image: url(../images/mainimg.jpg);
  background-repeat: no-repeat;
  background-position: center;
}
#index_mainimg_ #index_mainimg {
  width: 656px;
  max-width: 100%;
  margin: 0 auto;
  padding: 300px 20px 0;
}
@media (max-width: 999px) {
  #index_mainimg_ {
    display: none;
  }
}

#_index_mainimg {
  display: none;
  height: 450px;
  background-image: url(../images/mainimg.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1152px 576px;
}
@media (max-width: 999px) {
  #_index_mainimg {
    display: block;
  }
}

#index_sec1_ {
  background: url(../images/sec1_bg.jpg) center repeat-x;
}
#index_sec1_ #index_sec1 {
  height: 456px;
  overflow-y: hidden;
}
#index_sec1_ #index_sec1 .over {
  position: absolute;
  z-index: 10;
  top: 50px;
  left: 0;
  right: 0;
}
#index_sec1_ #index_sec1 .over p {
  padding-top: 50px;
  margin: 0 auto;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  font-size: 14px;
  text-align: left;
  line-height: 3;
}
#index_sec1_ #index_sec1 img.l {
  position: absolute;
  z-index: 5;
  left: 0;
}
#index_sec1_ #index_sec1 img.r {
  position: absolute;
  z-index: 5;
  right: 0;
}
@media (max-width: 999px) {
  #index_sec1_ #index_sec1 .over p {
    font-size: 20px;
    line-height: 2;
  }
  #index_sec1_ #index_sec1 img.l {
    left: -50px;
    opacity: 0.4;
  }
  #index_sec1_ #index_sec1 img.r {
    right: -30px;
    opacity: 0.4;
  }
}

#index_sec2_ {
  background: url(../images/sec2_bg.jpg) center repeat-x;
}
#index_sec2_ #index_sec2 {
  height: 421px;
  padding: 0;
}
#index_sec2_ #index_sec2 .swiper-container {
  margin-bottom: 30px;
}
#index_sec2_ #index_sec2 .swiper-container div.swiper-slide {
  width: 225px;
}
#index_sec2_ #index_sec2 .swiper-container div.swiper-slide .box {
  padding: 5px 0;
  color: #333;
  background-color: #f5e6c5;
}
#index_sec2_ #index_sec2 .swiper-container div.swiper-slide .box span {
  font-weight: bold;
  display: block;
}

#index_sec3_ {
  background-image: url(../images/sec3_bg.jpg);
  background-repeat: no-repeat;
  background-position: center;
}
#index_sec3_ #index_sec3 {
  height: 666px;
  padding-top: 40px;
}
#index_sec3_ #index_sec3 .fb {
  display: inline-block;
  vertical-align: top;
  width: 470px;
  height: 586px;
  margin-right: 15px;
}
#index_sec3_ #index_sec3 .access {
  background-color: #fff;
  display: inline-block;
  vertical-align: top;
  width: 470px;
  height: 586px;
  background-color: #fff;
}
@media (max-width: 999px) {
  #index_sec3_ {
    display: none;
  }
}

#_index_sec3_ {
  display: none;
  background-image: url(../images/sec3_bg.jpg);
  background-repeat: no-repeat;
  background-position: center;
}
#_index_sec3_ #_index_sec3 {
  height: auto;
  padding-top: 40px;
  padding-bottom: 40px;
}
#_index_sec3_ #_index_sec3 .access {
  background-color: #fff;
  display: inline-block;
  vertical-align: top;
  width: 470px;
  max-width: 100%;
  height: auto;
  background-color: #fff;
}
#_index_sec3_ #_index_sec3 .access img {
  max-width: 100%;
}
#_index_sec3_ #_index_sec3 .access p {
  padding: 0 15px;
}
#_index_sec3_ #_index_sec3 .access .annnai {
  padding: 0 15px 15px;
}
@media (max-width: 999px) {
  #_index_sec3_ {
    display: block;
  }
}

#index_sec4_ {
  background-color: #fff;
}
#index_sec4_ #index_sec4 {
  height: 180px;
  padding-top: 40px;
}
#index_sec4_ #index_sec4 .bana_contact {
  display: inline-block;
  vertical-align: top;
  width: 470px;
  margin-right: 15px;
}
#index_sec4_ #index_sec4 .bana_recruit {
  display: inline-block;
  vertical-align: top;
  width: 470px;
}
@media (max-width: 999px) {
  #index_sec4_ #index_sec4 {
    padding-top: 30px;
    padding-bottom: 30px;
    height: auto !important;
    width: 100%;
  }
  #index_sec4_ #index_sec4 .bana_contact {
    width: 100%;
    margin-right: 0;
    margin-bottom: 20px;
  }
  #index_sec4_ #index_sec4 .bana_contact img {
    max-width: 100%;
  }
  #index_sec4_ #index_sec4 .bana_recruit {
    width: 100%;
  }
  #index_sec4_ #index_sec4 .bana_recruit img {
    max-width: 100%;
  }
}

/*----------------------------------------------------
	map
----------------------------------------------------*/
#map-canvas {
  height: 300px;
}

/*----------------------------------------------------
	recruit
----------------------------------------------------*/
#recruit_sec1_ {
  background: url(../images/sec1_bg.jpg) center repeat-x;
}
#recruit_sec1_ #recruit_sec1 {
  height: 450px;
  padding-top: 160px;
}
#recruit_sec1_ #recruit_sec1 img {
  max-width: 100%;
}

/*----------------------------------------------------
	access
----------------------------------------------------*/
#access_sec1_ {
  background-image: url(../images/sec3_bg.jpg);
  background-repeat: no-repeat;
  background-position: center;
}
#access_sec1_ #access_sec1 {
  height: 666px;
  padding-top: 40px;
}
#access_sec1_ #access_sec1 .access {
  background-color: #fff;
  display: inline-block;
  vertical-align: top;
  width: 470px;
  height: auto;
  background-color: #fff;
}
@media (max-width: 999px) {
  #access_sec1_ #access_sec1 {
    height: auto;
    padding-top: 40px;
    padding-bottom: 40px;
  }
  #access_sec1_ #access_sec1 .access {
    background-color: #fff;
    display: inline-block;
    vertical-align: top;
    width: 470px;
    max-width: 100%;
    background-color: #fff;
  }
  #access_sec1_ #access_sec1 .access img {
    max-width: 100%;
  }
  #access_sec1_ #access_sec1 .access p {
    padding: 0 15px;
  }
  #access_sec1_ #access_sec1 .access .annnai {
    padding: 0 15px 15px;
  }
}

/*----------------------------------------------------
	menu
----------------------------------------------------*/
#menu_sec1_ {
  background: url(../images/menu_bg.jpg) center top;
}
#menu_sec1_ #menu_sec1 .tit {
  margin-top: 40px;
  max-width: 100%;
}
#menu_sec1_ #menu_sec1 ul {
  text-align: center;
  padding-bottom: 50px;
}
#menu_sec1_ #menu_sec1 ul li {
  display: inline-block;
  vertical-align: top;
  width: 225px;
  margin: 0 10px;
}
#menu_sec1_ #menu_sec1 ul li .box {
  padding: 5px 0;
  color: #333;
  background-color: #f5e6c5;
}
#menu_sec1_ #menu_sec1 ul li .box span {
  font-weight: bold;
  display: block;
}
#menu_sec1_ #menu_sec1 ul li .box_ {
  padding: 5px 0;
  margin-top: 120px;
  color: #333;
  background-color: #f5e6c5;
}
#menu_sec1_ #menu_sec1 ul li .box_ span {
  font-weight: bold;
  display: block;
}
@media (max-width: 546px) {
  #menu_sec1_ #menu_sec1 ul li .box_ {
    margin-top: 60px;
  }
}
#menu_sec1_ #menu_sec1 dl {
  background-color: #f5e6c5;
  width: 600px;
  padding: 5px 0;
  margin: 0 auto 20px;
}
#menu_sec1_ #menu_sec1 dl dt {
  float: left;
  text-align: right;
  width: 50%;
  font-weight: bold;
}
#menu_sec1_ #menu_sec1 dl dd {
  float: left;
  width: 50%;
}
@media (max-width: 700px) {
  #menu_sec1_ #menu_sec1 dl {
    width: 100%;
  }
  #menu_sec1_ #menu_sec1 dl dt {
    float: none;
    display: block;
    text-align: right;
    width: 100%;
    text-align: center;
  }
  #menu_sec1_ #menu_sec1 dl dd {
    float: none;
    display: block;
    width: 100%;
    text-align: center;
    margin-bottom: 10px;
  }
}

/*----------------------------------------------------
	contact
----------------------------------------------------*/
.caution {
  color: #f00;
}

.bold {
  font-weight: bold;
}

#contact_sec1_ {
  background: url(../images/contact_bg.jpg) center top;
}
#contact_sec1_ #contact_sec1 {
  padding-top: 50px;
}
#contact_sec1_ #contact_sec1 h2 {
  max-width: 100%;
  margin-bottom: 30px;
}
#contact_sec1_ #contact_sec1 h2 img {
  max-width: 100%;
}
#contact_sec1_ #contact_sec1 form {
  margin-bottom: 40px;
}
#contact_sec1_ #contact_sec1 form table {
  width: 600px;
  max-width: 100%;
  margin: 0 auto 20px;
}
#contact_sec1_ #contact_sec1 form table th, #contact_sec1_ #contact_sec1 form table td {
  padding: 5px 0;
  text-align: left;
}
#contact_sec1_ #contact_sec1 form table th {
  width: 200px;
}
#contact_sec1_ #contact_sec1 form table textarea {
  width: 100%;
  height: 150px;
}
@media (max-width: 700px) {
  #contact_sec1_ #contact_sec1 form table {
    width: 100%;
  }
  #contact_sec1_ #contact_sec1 form table th, #contact_sec1_ #contact_sec1 form table td {
    display: block;
    width: 100%;
  }
  #contact_sec1_ #contact_sec1 form table input {
    max-width: 100%;
  }
  #contact_sec1_ #contact_sec1 form table textarea {
    width: 100%;
    height: 150px;
  }
}

/*----------------------------------------------------
	footer
----------------------------------------------------*/
#footer_navi_ {
  background-color: #b89066;
}
#footer_navi_ #footer_navi {
  height: 40px;
  color: #fff;
  font-size: 14px;
  padding-top: 9px;
}
#footer_navi_ #footer_navi a {
  color: #fff;
  text-decoration: none;
}
#footer_navi_ #footer_navi a:hover {
  opacity: 0.6;
}
@media (max-width: 999px) {
  #footer_navi_ {
    display: none;
  }
}

#footer_logo_ {
  background-color: #fff;
  border-bottom: 1px solid #ccc;
}
#footer_logo_ #footer_logo {
  padding-top: 72px;
  height: 264px;
}
@media (max-width: 999px) {
  #footer_logo_ #footer_logo {
    height: auto !important;
    padding-bottom: 72px;
  }
  #footer_logo_ #footer_logo img {
    max-width: 100%;
  }
}

#copy_ {
  background-color: #fff;
}
#copy_ #copy {
  height: 32px;
  color: #333;
  font-size: 11px;
  padding-top: 8px;
}
@media (max-width: 999px) {
  #copy_ #copy {
    height: auto !important;
  }
  #copy_ #copy span {
    display: block;
  }
}
