@charset "UTF-8";


body {
min-width: 900px;
margin: 0;
padding: 0;
background-color: #ffffff;
color: #2a2a2a;
font-size: 115%;
font-family: "メイリオ",sans-serif;
}


a:link { color: #2b80d5; }
a:visited { color: #236ab1; }
a:hover { color: #1d558d; }
a:active { color: #1d558d; }


main {
display: block;
width: 100%;
}


* {
line-height: 100%;
}


p {
margin: 0;
}


figure {
margin: 0;
}


address {
font-style: normal;
}


a img {
border: none;
}


img {
width: inherit;
max-width: 100%;
height: auto;
width /***/:auto;
}




@media screen and (max-width: 767px) {

body {
min-width: 0;
}

body.fixed {
width: 100%;
height: 100%;
overflow: hidden;
}

}
.jisagesita3{
  text-align: left;
  margin:0 3px 20px 6px;
}
.jisagesita2{
  text-align: left;
}
.jisagesita31{
  text-align: left;
  margin:4px 3px 20px 6px;
}
@media print {

body {
width: 1000px;
}

}



div.limit {
max-width: 1000px;
margin: 0 auto;
padding: 0 20px;
}




@media screen and (max-width: 767px) {

div.limit {
padding: 0 1px;
}

#menu, #header div.cover {
margin: 0px 0 0;
}

}


#header {

}


#header div.catch {
margin: 0;
padding: 2px 0;

border-bottom: 1px solid #236ab1;
font-size: 70%;
color: #236ab1;
}

#header div.plate {
display: table;
table-layout: fixed;
width: 100%;
margin: 10px 0;
}


#header div.logo {
display: table-cell;
width: 35%;
vertical-align: middle;
}
#header div.logo h1 {
margin: 0;
font-size: 100%;
font-weight: normal
}
#header div.logo a {
display: inline-block;
text-decoration: none;
}
#header div.logo span {
display: block;
}
#header div.logo span.site {
margin: 0 0 3px;
}
#header div.logo span.sub {
font-size: 70%;
font-weight: normal;
color: #2a2a2a;
text-align: center;
}

#header div.info {
display: table-cell;
width: 65%;
vertical-align: middle;
}
#header div.info nav.contact {
text-align: right;
}
#header div.info nav.contact address.tel,
#header div.info nav.contact div.form {
display: inline-block;
vertical-align: middle;
}
#header div.info nav.contact address.tel {
padding: 0 15px 0 0;
}
#header div.info nav.contact address.tel span {
display: block;
text-align: center;
}
#header div.info nav.contact address.tel span.msg {
font-size: 70%;
color: #7f7f7f;
}
#header div.info nav.contact address.tel span.no {
margin: 3px 0 1px;
padding: 5px 0 3px 40px;

font-size: 170%;
font-weight: bold;

}
#header div.info nav.contact address.tel span.time {
font-size: 80%;
}
#header div.info nav.contact div.form address {
opacity: 1;
transition: opacity 0.3s;
}
#header div.info nav.contact div.form address:hover {
opacity: 0.7;
}
#header div.info nav.contact div.form address a {
display: block;
padding: 10px 10px 9px 35px;
font-size: 80%;
color: #f9f9f9;
text-align: left;
text-decoration: none;
}
#header div.info nav.contact div.form address.contact {
margin: 0 0 5px;
background-color: #236ab1;
}
#header div.info nav.contact div.form address.entry {
background-color: #d8291c;
}
#header div.info nav.contact div.form address.contact a {
background: url(images24/mail.gif) no-repeat 5px;
}
#header div.info nav.contact div.form address.entry a {
background: url(images24/recruit.gif) no-repeat 10px;
}

#header nav.menu {
padding: 0 0 1px;
}
#header nav.menu div.toggle {
display: none;
}
#header nav.menu ul {
margin: 0;
padding: 0;
list-style-type: none;
}
div.justify .ueryoukin{
margin:0 auto 10px;
text-align: center;
}
.souginagaresita{
  padding: 10px 10px 20px 0px;
  text-align: left;
     border: 1px solid #CCC;
     margin: 0 10px 4px 10px;
     background-color: #fff;

}
  .joseihidari3{
  margin: 10px 10px 10px 6px;
  float: left;
  width: 30px;
}
.migiyoko{
  margin: 10px 0 0 40px;
}
.souginagaresita3{
  padding: 10px 10px 20px 0px;
  text-align: left;
     border: 1px solid #CCC;
     margin: 0 10px 10px 10px;
     background-color: #fff;
}
@media screen and ( max-width: 640px ) {   /* ウィンドウサイズが 640px 以下の場合有効 */

  .nagasetu21{
  width: 100%;
  margin: 0px auto 10px;
}
}
/* 0731 */
@media screen and ( min-width: 641px )  {  /* ウィンドウサイズが 641px 以上の場合有効 */
.nagasetu21{
  width: 100%;
  margin: 10px auto 0px;
}
}
/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 750px) {
.pc { display: none !important; }
.sp { display: block !important; }
}
table.type02{
      border: 1px solid #ccc;
      border-collapse:collapse;
      width: 80%;
      margin: 0 auto;
}
@media screen and ( max-width: 640px ) {   /* ウィンドウサイズが 640px 以下の場合有効 */
table.type02{
      border: 1px solid #ccc;
      border-collapse:collapse;
      width: 100%;
}
}

table.type02 td {
border: 1px solid #ccc;
  padding: 6px;
  vertical-align: middle;
  text-align: left;

 }
 table.type02 td.td01{
  background-color: #EEEEEE;

text-align: center;
}
 table.type02 td.td01r{
  background-color: #EEEEEE;
color: red;
text-align: center;
}
 table.type02 td.td020{


text-align: center;
}
table.type02 td.td00{

  background-color: #eee;
text-align: center;
height: 40px;
font-weight: bold;
}
table.type02 td.td020r{
  color: red;

text-align: center;
}
table.type02 td.td00a{
  background-color: #E8E8E6;

text-align: center;
}
table.type02 td.td00b{
  background-color: #E8E8E6;

text-align: center;
}
table.type02 td.td02{
text-align: center;
width: 50px;
}
table.type02 td.td02a{
text-align: center;
background-color: #F9F9F9;
width: 50px;
}
table.type02 td.td022{
text-align: center;
background-color: #EFEFEF;
}
.marugazou{
  margin: 0 40px;
  width: 30px;
}
.hakogen12{
text-align: center;
margin: 20px auto 40px;
border: 1px solid #A5A5A5;
width: 60%;

}
.hakogen122{
text-align: center;
margin: 20px auto 40px;

width: 70%;

}
#bait{
  font-size: 20px;
}
@media screen and ( max-width: 640px ) {   /* ウィンドウサイズが 640px 以下の場合有効 */
  .hakogen12{
text-align: center;
margin: 20px auto 40px;
border: 1px solid #A5A5A5;
width: 90%;
}
}
@media screen and ( max-width: 640px ) {   /* ウィンドウサイズが 640px 以下の場合有効 */
  .hakogen122{
text-align: center;
margin: 0px auto 20px;

width: 100%;
}
}
.kakakured{
  font-weight: bold;
  font-size: 26px;
color: red;
padding: 2px 0 6px 0;
}
.puran{
text-align: center;
font-weight: bold;
  margin: 2px auto ;

  font-size:20px;
  padding:20px 0px 20px 0px;
}
.eitiyon{
 text-align: center;
font-weight: bold;
  margin: 2px auto 0;

  font-size:20px;
  padding:20px 0px 6px 0px; 
}
@media screen and ( max-width: 640px ) {   /* ウィンドウサイズが 640px 以下の場合有効 */
.eitiyon{
 text-align: center;
font-weight: bold;
  margin: 2px auto 0;

  font-size:20px;
  padding:20px 0px 0px 0px; 
}
}
.wakusougi13{
text-align: center;
margin:10px auto 10px;
padding: 10px 14px;
}


.wakusougi12{
text-align: center;
width: 99.2%;
margin:10px auto 40px;
padding: 0px;

           width: 85%;
}
  .maintext{
    padding: 0 3px 80px 3px;

  }
  .wakusougi{
padding: 10px 14px;
}
@media screen and ( max-width: 640px ) {   /* ウィンドウサイズが 640px 以下の場合有効 */
.wakusougi1{
text-align: left;

margin:10px 4px 0 0;
padding: 10px 14px;


}

#iti{
    text-align: left;

}
#ni{
  text-align: left;
}
#san{
  text-align: left;
}
#si{
  text-align: left;
}
#go{
  text-align: left;
}
#nagaresita{
    text-align: left;
}
.midoriyajirusi{
  text-align: center;
}

.wakusougi12{
text-align: center;
width: 99.2%;
margin:10px auto 40px;
padding: 0px;
      background: #fff;
           width: 100%;
}

}
.wakusougi100{
text-align: left;
width: 80%;
margin:50px auto 30px;
padding: 10px 14px;
  background-color: #EEEEEE;

}
@media screen and ( max-width: 640px ) {   /* ウィンドウサイズが 640px 以下の場合有効 */
.wakusougi100{
text-align: left;
width: 92%;
margin:10px 0 0 0;
padding: 10px 14px;
  background-color: #EEEEEE;

}
}

.midoriyajirusi{
  text-align: center;
}
.midoriyaji{
  margin: 10px auto;
}
.wakusougi13{
text-align: left;
width: 95%;
margin:10px auto 0;
padding: 10px 6px 0 4px;


}
.hakogen{
text-align: center;

}
.haiiro1{
  margin: 60px 0 0px 0;
   background: #f4f4f4;
   padding: 10px 10px 14px 10px;
}
@media screen and ( max-width: 640px ) {   /* ウィンドウサイズが 640px 以下の場合有効 */
.kiro0{

  margin: 0px 0 0px 0;
   background: #fffcf7;
   padding: 2px 10px 4px 10px;
   box-shadow: 2px 2px 4px gray;
}
.nakamigi{
  width: 100%;
}
.nakahidari{
    width: 100%;
padding:0 0 0 8px;
}
}
@media screen and ( min-width: 641px ) {
.kiro0{
  display: flex;
  margin: 0px 0 0px 0;

   padding: 10px 10px 4px 10px;
   box-shadow: 2px 2px 4px gray;
}
}
.nakamigi{
  width: 50%;
  padding:0 0 0 4px;
}
.nakahidari{
    width: 70%;
padding:0 0 0 8px;
}
#kironaka{
  text-align: center;
}
@media screen and ( max-width: 640px ) {   /* ウィンドウサイズが 640px 以下の場合有効 */
.kiro4{
  display: flex;
  margin: 0px 0 0px 0;

   padding: 20px 10px 14px 10px;

}
.nakamigi{
  width: 100%;
}
.nakahidari{
    width: 100%;
padding:0 0 0 8px;
}
}
@media screen and ( min-width: 641px ) {
.kiro4{
  display: flex;
  margin: 0px auto 20px;

}
}
@media screen and ( max-width: 640px ) {   /* ウィンドウサイズが 640px 以下の場合有効 */
.kiro1{

  margin: 0px 0 0px 0;
   background: #fffcf7;
   padding: 20px 10px 14px 10px;
   box-shadow: 2px 2px 4px gray;
}
.nakamigi{
  width: 100%;
}
.nakahidari{
    width: 100%;
padding:0 0 0 8px;
}
}
@media screen and ( min-width: 641px ) {
.kiro1{
  display: flex;
  margin: 0px 0 0px 0;
   background: #fffcf7;
   padding: 20px 10px 14px 10px;
   box-shadow: 2px 2px 4px gray;
}
}
@media screen and ( max-width: 640px ) {   /* ウィンドウサイズが 640px 以下の場合有効 */
.kiro2{

  margin: 0px 0 40px 0;
   background: #fffcf7;
   padding: 20px 10px 14px 10px;
   box-shadow: 2px 2px 4px gray;
}
.nakamigi{
  width: 100%;
}
.nakahidari{
    width: 100%;
padding:0 0 0 8px;
}
}
@media screen and ( min-width: 641px ) {
.kiro2{
  display: flex;
   margin: 0px 0 40px 0;
   background: #fffcf7;
   padding: 20px 10px 14px 10px;
   box-shadow: 2px 2px 4px gray;
}
}
.kiro2{

   background: #fffcf7;
   padding: 20px 10px 14px 10px;
   box-shadow: 2px 2px 4px gray;
}
.nakasi{
width: 100px;
   background: #FFA500;
   padding: 0px 0px 0px 10px;
color: #fff;
}
.hidari{
margin: 4px 0 0 10px;
}
.balloon12 {
  position: relative;
  display: inline-block;
  margin: 1.0em 0 1.0em 0;
  padding: 3px 10px;
  min-width: 120px;
  max-width: 100%;
  color: #fff;
  font-size: 16px;
  background: #C1148C;
}

.balloon12:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #C1148C;
}

.balloon12 p {
  margin: 0;
  padding: 0;
}
.flex-container {
  display: flex;
  justify-content: center;
  text-align: left;
}

.flex-item {

width: 50%;
  margin: 0 12px 0 0;
    padding: 10px;
}
.flex-item1 {

width: 50%;
  margin: 0px;
    padding: 10px;
}

@media screen and ( max-width: 640px ) {   /* ウィンドウサイズが 640px 以下の場合有効 */
       .flex-container {
         display: block;
  justify-content: center;
  text-align: left;
padding-bottom: 30px;
}
.flex-item {

width: 98%;
  margin: 0 0 10px 0;
    padding: 10px;
}
.flex-item1 {

width: 98%;
  margin: 10px 0 0 0;
    padding: 10px;
}
}
   
   .gazousyou{
    width: 130px;
    margin:0 10px 10px 0;
    float:left;
   }
      .gazousyou4{
    width: 400px;
    margin:0 10px 10px 0;
    float:left;
   }
         .gazousyou5{
    width: 400px;
    margin:0 10px 10px 0;
    float:right;
   }
         .gazousyou44{
    width: 80px;
    margin:0 10px 10px 0;
    float:left
   }
@media screen and ( max-width: 640px ) {   /* ウィンドウサイズが 640px 以下の場合有効 */
  .puran{
text-align: center;
font-weight: bold;
  margin: 2px auto ;

  font-size:20px;
  padding: 10px 10px 0;
}
         .gazousyou44{
    width: 40px;
    margin:0 10px 10px 0;
    float:left
   }
}
.ryo{
    font-size:24px;
}
.ryo2{
    font-size:20px;
}
.kasou{
  padding: 4px 0 20px 0;
}
@media screen and ( max-width: 640px ) {   /* ウィンドウサイズが 640px 以下の場合有効 */
  .nagasetu11{
  width: 80%;
  margin: 20px auto 40px;
}
}
/* 0731 */
@media screen and ( min-width: 641px )  {  /* ウィンドウサイズが 641px 以上の場合有効 */
.nagasetu11{
  width: 50%;
  margin: 20px auto 40px;
}
}
ol.nakahe{
  margin:20px 0 30px 160px;
}
@media screen and (max-width: 640px) {
  ol.nakahe{
    margin:20px 0 30px 80px;
  }
  }
  @media screen and ( min-width: 641px )  {  /* ウィンドウサイズが 641px 以上の場合有効 */
  .nagasetu5{
  width: 60%;
  margin: 0 auto;
}
}
/* 0731 */

#pueu{
  margin: 8px 0;
  padding: 4px 8px 20px 12px;
}
@media screen and ( max-width: 640px ) {   /* ウィンドウサイズが 640px 以下の場合有効 */
  .pue{
    padding: 4px 8px 10px 12px;
    font-size: 15px;
  }
  #pueu{
    font-size: 15px;
    padding: 4px 8px 4px 12px;
  }
  .nagasetu5{
  width: 80%;
  margin: 0 auto 20px;
}
}
.kiteibun{
  padding-left: 30px;
  font-weight: bold;
}
.anda{
  margin-bottom: 50px;
}

#gnav > li {
float: left;
position: relative;
width: 16.6%;

}
#gnav > li:first-child {
width: 17%;
background: none;
}
#gnav > li > a {
display: block;
margin: 0 2px;
padding: 18px 0 16px;
border-bottom: 2px #dfdfdf solid;
font-size: 90%;
font-weight: bold;
color: #2a2a2a;
text-align: center;
text-decoration: none;
transition: border-bottom-color 0.3s;
}
#gnav > li > a:hover {
border-bottom: 2px #236ab1 solid;
}
#gnav > li > a.active {
border-bottom: 2px #236ab1 solid;
}
#gnav > li.contact,
#gnav > li.close {
display: none;
}

#gnav ul.child {
display: none;
position: absolute;
width: 100%;
background-color: #f9f9f9;
z-index: 100;
}
#gnav ul.child li a {
display: block;
padding: 12px 2px 10px;
border-bottom: 1px #dfdfdf solid;
font-size: 90%;
font-weight: bold;
color: #2a2a2a;
text-align: center;
text-decoration: none;
line-height: 140%;
}
#gnav ul.child li a:hover {
background-color: #e9e9e9;
}


#header div.cover p {
padding: 70px 20px 70px 70px;
margin: 0;
font-size: 160%;
color: #ffffff;
line-height: 140%;
text-shadow: 0 0 1px #2a2a2a;
}




#header nav.path {
background-color: #efefef;
}
#header nav.path ol {
margin: 0;
padding: 10px 0;
font-size: 90%;
color: #7f7f7f;
}
#header nav.path ol li {
display: inline;
margin: 0 2px 0 0;
line-height: 140%;
}
#header nav.path ol li a {
padding: 0 12px 0 0;
background: url(images24/path.gif) no-repeat right;
}


#header div.title {
padding: 15px 0;
border-bottom: 1px #c0c0c0 solid;
}
#header div.title h1 {
margin: 0;
font-size: 190%;
font-weight: normal;
line-height: 140%;
}

.annnai{
  font-size: 26px;
  margin:12px 0 10px 0;
}
.annnaisita{
  font-size: 26px;
  margin:60px 0 10px 0;
  color:#556b2f;
}
.sannn{
  font-size: 22px;
  margin:10px 0 10px 0;
  color:#556b2f;
    padding-top: 20px;
}
.sann{
  font-size: 22px;
  margin:10px 0 10px 0;
  color:#556b2f;
    padding-top: 50px;
}
  .yonn{
    font-size: 22px;
  }
.sann12{
  font-size: 22px;
  margin:10px 0 10px 0;
  color:#556b2f;
    padding-top: 50px;
    border: 1px solid #A5A5A5;
    width: 60%;
    text-align: center;
}
.sann1{
    padding:0 0 100px 0;
}
.sann10{
    padding:0 0 40px 0;
}
.mainsita{
  margin-top: 60px;
}
#main dt.qqa1{
  color:#556b2f;
  font-weight: bold;
width: 96%;
padding:5px 0px 1px 10px;
margin:0px;
font-size: 18px;
border-width:1px;
 border-color:#000;
 border-style:none none dotted none;
 }
/* 0731 */
#main dd.qa1{
padding:10px 10px 10px 30px;
margin:0 0 20px 0;
letter-spacing: 1px;
}
.mitumoriue{
  padding: 10px 10px 30px 10px;

}

dd.ddd {
    margin: 0px 0px 0px 100px;
    line-height: 200%;
    border-bottom: 1px dotted #999999;
}
dt.ddt {
    clear: left;
    float: left;


    line-height: 200%;
    margin: 0px 0px 0px 10px;
}

@media screen and (max-width: 767px) {

#header div.catch {
display: none;
}

#header > div.limit {
padding: 0;
}

#header div.plate {

top: 0;
left: 0;
height: 59px;
margin: 0;
background-color: #ffffff;
border-top: 2px #236ab1 solid;
z-index: 100;
}

#header div.logo {
width: 70%;
padding: 0 0 0 5px;
}
#header div.logo a {
display: inline;
}
#header div.logo span {
display: inline;
}
#header div.logo span.site {
margin: 0;
}
#header div.logo span.sub {
display: none;
}

#header div.info {
width: 30%;
}
#header div.info nav.contact {
display: none;
}

#header div.unit {
padding: 0 0 1px;
}

#header nav.menu {
position: fixed;
top: 0;
left: 0;
width: 100%;
padding: 0;
transition: background-color 0.3s linear;
z-index: 999;
}
body.fixed #header nav.menu {
height: 100%;
background-color: rgba(255, 255, 255, 0.5);
}

#header nav.menu div.toggle {
  position: fixed;
display: inline-block;
position: fixed;
top: 5px;
right: 5px;
width: 50px;
height: 58px;
line-height: 58px;
z-index: 999;
}
#toggle {
  position: fixed;
display: inline-block;
width: 50px;
padding: 20px 0 7px;
font-size: 70%;
color: #f9f9f9;
text-align: center;
vertical-align: middle;
cursor: pointer;
transition: background-image 0.6s;
}
#header div.toggle div.close {
background: #116E86;
}
#header div.toggle div.open {
background: #116E86;
}

#header nav.menu div.limit {
padding: 0;
}
.eitinisita{
  
}
#gnav {
display: none;
background-color: #116E86;
max-height: 480px;
max-height: -webkit-calc(100vh - 60px);
max-height: calc(100vh - 60px);
overflow-y: auto;
-webkit-overflow-scrolling: touch;
}

#gnav > li {
float: none;
width: auto;
background: none;
}
#gnav > li:first-child {
width: auto;
}
#gnav > li > a {
margin: 0;
padding: 13px 35px 13px 13px;
background: url(images24/go_header.gif) no-repeat right;
border-bottom: 1px #f9f9f9 solid;
font-size: 100%;
font-weight: normal;
color: #f9f9f9;
text-align: left;
line-height: 140%;
transition: none;
}
#gnav > li > a:hover {
border-bottom: 1px #f9f9f9 solid;
}
#gnav > li > a.active {
background-color: #116E86;
border-bottom: 1px #f9f9f9 solid;
}

#gnav > li.contact {
display: list-item;
background-color: #f9f9f9;
}
#gnav > li.contact div.form {
display: table;
table-layout: fixed;
border-collapse: separate;
border-spacing: 7px 15px;
width: 100%;
}
#gnav > li.contact address {
display: table-cell;
width: 50%;
vertical-align: middle;
}
#gnav > li.contact address a {
display: block;
padding: 7px 2px 6px;
color: #f9f9f9;
text-align: center;
text-decoration: none;
line-height: 130%;
}
#gnav > li.contact address.contact a {
background-color: #236ab1;
}
#gnav > li.contact address.entry a {
background-color: #d8291c;
}

#gnav > li.close {
display: list-item;
padding: 10px 2px;
text-align: center;
cursor: pointer;
}
#gnav > li.close div {
display: inline-block;
padding: 12px 0 11px 50px;
background: url(images24/menu_up.gif) no-repeat left;
color: #f9f9f9;
}

#gnav ul.child {
display: block;
position: static;
width: 100%;
background-color: #1e5a97;
border-bottom: 1px #f9f9f9 solid;
}
#gnav ul.child li a {
display: block;
padding: 13px 2px 11px 30px;
border-bottom: 1px #236ab1 solid;
font-size: 100%;
font-weight: normal;
color: #f9f9f9;
text-align: left;
line-height: 140%;
}
#gnav ul.child li a:hover {
background-color: #1e5a97;
}
#gnav ul.child li a.active {
background-color: #2d88e3;
}

#header div.cover p {
padding: 75px 0 15px;
font-size: 140%;
text-shadow: 0 0 1px #000000;
}

#header nav.path ol li {
line-height: 180%;
}

#header div.title h1 {
font-size: 120%;
font-weight: bold;
}

}

#body div.wrap {

}



@media screen and (max-width: 767px) {

}




#contact {
padding: 70px 0 50px;
}
#contact div.banner {
max-width: 700px;
margin: 0 auto;
border: 2px #2081d9 solid;
}


#contact div.banner div.msg {
position: relative;
padding: 15px 210px 15px 20px;
background-color: #2081d9;
font-size: 120%;
font-weight: bold;
color: #f9f9f9;
line-height: 160%;
}
#contact div.banner div.img {
position: absolute;
bottom: 0;
right: 0;
width: 100%;
height: 130px;
background: url(images24/woman.png) no-repeat right top;
}
#contact div.banner address {
display: table;
table-layout: fixed;
width: 100%;
}

#contact div.banner address div.tel {
display: table-cell;
width: 60%;
padding: 15px 20px;
vertical-align: middle;
}
#contact div.banner address div.tel div.no {
padding: 6px 0 2px 40px;
background: url(images24/freedial.gif) no-repeat 0;
font-weight: bold;
}
#contact div.banner address div.tel div.pc {
margin: 0 0 5px;
font-size: 190%;
color: #ff8c00;
}
#contact div.banner address div.tel div.sp {
display: none;
}
#contact div.banner address div.tel div.time {
font-size: 90%;
}

#contact div.banner address div.form {
display: table-cell;
width: 40%;
padding: 15px 20px 15px 0;
vertical-align: middle;
}
#contact div.banner address div.form div {
opacity: 1;
transition: opacity 0.3s;
}
#contact div.banner address div.form div:hover {
opacity: 0.7;
}
#contact div.banner address div.form div a {
display: block;
padding: 12px 10px 11px 38px;
font-size: 90%;
font-weight: bold;
color: #f9f9f9;
text-align: center;
text-decoration: none;
}
#contact div.banner address div.form div.contact {
margin: 0 0 5px;
background-color: #236ab1;
}
#contact div.banner address div.form div.entry {
background-color: #d8291c;
}
#contact div.banner address div.form div.contact a {
background: url(images24/mail.gif) no-repeat 10px;
}
#contact div.banner address div.form div.entry a {
background: url(images24/recruit.gif) no-repeat 15px;
}




@media screen and (max-width: 767px) {

#contact {
margin: 0;
padding: 0px 0 0px;
}

#contact div.banner div.msg {
padding: 10px 90px 10px 10px;
font-size: 100%;
}
#contact div.banner div.img {
height: 90px;
background: url(images24/woman.png) no-repeat right 10px;
background-size: contain;
}
#contact div.banner address {
display: block;
}

#contact div.banner address div.tel {
display: block;
width: 100%;
padding: 15px 2px;
text-align: center;
}
#contact div.banner address div.tel div.pc {
display: none;
}
#contact div.banner address div.tel div.sp,
#contact div.banner address div.tel div.time {
display: inline-block;
}
#contact div.banner address div.tel div.sp {
margin: 0 0 5px;
font-size: 140%;
}
#contact div.banner address div.tel div.sp a {
color: #ff8c00;
}

#contact div.banner address div.form {
display: block;
width: 100%;
padding: 0 0 20px;
}
#contact div.banner address div.form div a {
padding: 18px 10px 16px 38px;
font-size: 100%;
}
#contact div.banner address div.form div.contact {
margin: 0 10px 10px;
}
#contact div.banner address div.form div.entry {
margin: 0 10px;
}
#contact div.banner address div.form div.contact a {
background: url(images24/mail.gif) no-repeat 8px;
}
#contact div.banner address div.form div.entry a {
background: url(images24/recruit.gif) no-repeat 13px;
}

}




#footer {
margin: 0;
padding: 0px 0 0;
}
#footer a {
color: #f9f9f9;
text-decoration: none;
}
#footer a:hover {
text-decoration: underline;
}

#footer div.plate {
width: 100%;
margin: 0 0 20px;
}


#footer div.fnav {
width: 50%;
float: right;
}
#footer div.fnav nav {
width: 100%;
}
#footer div.fnav nav ul {
margin: 0;
padding: 0;
list-style-type: none;
font-weight: bold;
}
#footer div.fnav nav ul li {
line-height: 140%;
}
#footer div.fnav nav ul li.sp {
display: none;
}
#footer div.fnav nav > ul {
width: 50%;
float: left;
}
#footer div.fnav nav > ul > li {
margin: 0 15px 20px 0;
}
#footer div.fnav nav ul ul {
font-size: 90%;
font-weight: normal;
}
#footer div.fnav nav ul ul li {
margin: 8px 15px 0 0;
}





#footer div.bottom {
padding: 20px 0 30px;
background-color: #116E86;
height: 70px;
}
#footer div.bottom ul {
width: 50%;
float: left;
margin: 0;
padding: 0;
list-style-type: none;
font-size: 90%;
}
#footer div.bottom ul li {
display: inline-block;
margin: 0 15px 0 5px;
}


#footer div.bottom div.copy {
font-size: 120%;
color: #ffffff;
text-align: center;
}


@media screen and (max-width: 767px) {

#footer {
font-size: 100%;
}

#footer div.plate {
margin: 0 0 50px;
}

#footer div.fnav {
width: 100%;
float: none;
margin: 0 0 50px;
}
#footer div.fnav nav ul {
font-weight: normal;
}
#footer div.fnav nav ul li {
line-height: 100%;
}
#footer div.fnav nav ul li.pc {
display: none;
}
#footer div.fnav nav ul li.sp {
display: list-item;
}
#footer div.fnav nav ul li div.title {
display: none;
}
#footer div.fnav nav ul:first-child {
border-top: 1px #f9f9f9 solid;
}
#footer div.fnav nav ul li a {
display: block;
padding: 13px 35px 13px 13px;
background: url(images24/go_footer.gif) no-repeat right;
border-bottom: 1px #f9f9f9 solid;
color: #f9f9f9;
line-height: 140%;
}
#footer div.fnav nav ul li a:hover {
text-decoration: none;
}
#footer div.fnav nav ul li a.active {
background-color: #2d88e3;
}
#footer div.fnav nav > ul {
width: 100%;
float: none;
}
#footer div.fnav nav > ul > li {
margin: 0;
}
#footer div.fnav nav ul ul {
font-size: 100%;
}
#footer div.fnav nav ul ul li {
margin: 0;
}

#footer div.address {
width: 100%;
float: none;
text-align: center;
}
#footer div.address address {
margin: 0 0 50px;
}
#footer div.address dl {
padding: 0;
background: none;
}
#footer div.address dl dt {
margin: 0 0 20px;
}
#footer div.address dl dd {
margin: 0 0 20px;
}
#footer div.address dl dd p span {
display: block;
margin: 0 0 10px;
}
#footer div.address dl dd span.company {
font-weight: bold;
}
#footer div.address dl dd span.company:after {
content: "";
}
#footer div.address dl dd span.tel:after {
content: "";
}
#footer div.address dl dd span.tel span.sp {
display: inline;
}
#footer div.address dl dd span.tel span.pc {
display: none;
}

#footer div.address ul.social li {
display: block;
margin: 0 0 10px;
}

#footer div.bottom {
padding: 15px 0;
}
#footer div.bottom ul {
display: none;
}

#footer div.bottom div.copy {
font-size: 70%;
text-align: center;
}

}

#backtop {
display: none;

z-index: 1000;
bottom: 45px;
right: 10px;
margin: 0;
}
#backtop a {
display: block;
width: 50px;
height: 50px;
background-color: #2b80d5;
border-radius: 50%;
text-align: center;
line-height: 50px;
}


img.border {
box-sizing: border-box;
border: 1px #dfdfdf solid;
}


.multi:after {
content: "";
clear: both;
display: block;
}

p.ookisa{
  font-size: 10px;
}


@media screen and (max-width: 767px) {

#backtop {
bottom: 35px;
}

}


.ryoukin{
  font-size: 16px;
  font-weight: bold;
}

#betto{
  text-align: right;
}
#nakamoji{
  margin:0;
}
#menu5{
  width: 100%;
    margin: 10px auto 20px;
  padding: 0;
  clear: both;
}
#menu5 li{
  display: block;
  float: left;
  font-weight: bold;
  width: 25%;
  margin: 0;
  padding: 0; }
#menu5 li a{
  display: block;
  padding: 8px 0;
  margin: 0 1px 1px 0;
  background: #E2E2E2;
  font-size: 16px;


  text-align: center;
  text-decoration: none;

}
#menu5 li#iro a{
  display: block;
  padding: 8px 0;
  margin: 0 1px 1px 0;
  background: #AAAAAA;
  font-size: 16px;
font-weight: bold;
color: #fff;
  text-align: center;
  text-decoration: none;

}
#menu5 li a:hover{
  background: #755E7F;
background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, #b7ad70), color-stop(0.90, #d5cea6));
background: -webkit-linear-gradient(top, #d5cea6 90%, #b7ad70 100%);
background: -moz-linear-gradient(top, #d5cea6 90%, #b7ad70 100%);
background: -o-linear-gradient(top, #d5cea6 90%, #b7ad70 100%);
background: -ms-linear-gradient(top, #d5cea6 90%, #b7ad70 100%);
background: linear-gradient(to bottom, #d5cea6 90%, #b7ad70 100%);

}
.midorisita{
  margin: 50px 0 0 0;
}
  table.type08 {
width: 100%;
  padding: 0px;
  vertical-align: middle;
  text-align: left;
margin: 0px;

 }
td.td22 .nagaregazou{
  float: left;
  margin: 8px 6px 0 0;
}
    table.type08 td.td22{
  padding: 4px;
line-height: 22px;
  text-align: left;
border: 1px solid #A7A8A8;
 }
     table.type08 th.th11{
  padding: 4px;
line-height: 22px;
  text-align: center;
border: 1px solid #A7A8A8;
background-color: #EDE68B;
 }
 .nagaregazou1{
  float: left;
  margin: 0px 10px 0px 0px;
}
.fukumareru{
  margin-bottom: 0px;
}
 table.type09 {
  border-collapse: collapse; 
  margin:0 auto;
  margin: 10px 0 40px 0;
}
 table.type09 th.th004{
  background-color: #F2F2F2;
   border: 1px solid #ccc;
text-align: center;
width: 30%;
padding: 10px;
}
 table.type09 th.th0041{
  background-color: #F2F2F2;
   border: 1px solid #ccc;
text-align: center;
width: 30%;
}
 table.type09 th.th0044{
  background-color: #F2F2F2;
   border: 1px solid #ccc;
text-align: center;

}
 table.type09 td.td005{
  background-color: #fff;
   border: 1px solid #ccc;

padding: 10px;

}
 table.type09 td.td0054{
  background-color: #fff;
   border: 1px solid #ccc;

padding: 10px;

}
 table.type09 td.td001{
  background-color: #fff;
   border: 1px solid #ccc;
text-align: center;
line-height: 30px;
width: 480px;
padding: 10px;
text-align: left;
}
table.type09 td.td00a{
  background-color: #F2F2F2;
  color: #fff;
text-align: center;
width: 140px;
}
table.type09 td.td00aa{
  background-color: #F2F2F2;

text-align: center;
width: 140px;
}
table.type09 td.td00b{
  background-color: #F2F2F2;
  color: #fff;
text-align: center;
width: 140px;
}
table.type09 td.td02{
text-align: center;
}
table.type09 td.td022{
text-align: center;
background-color: #EDE8E8;
}

table.type09 td.td02{
text-align: center;
}
table.type09 td {
    border: 1px solid #ccc;
  padding: 0;
  vertical-align: middle;
  text-align: left;
margin-left: 0px;
 }
 table.type09 th {
    border: 1px solid #ccc;
  padding: 0;
  vertical-align: middle;
  text-align: left;
margin-left: 0px;
  background-color: #F2F2F2;
 }
#naka{
  padding: 10px;

}
.col_4{
  width: 100%;
  display: flex;
  display: -ms-flexbox; /* IE10 */
  flex-wrap: wrap;
  -ms-flex-wrap: wrap; /* IE10 */
text-align: center; /* 内容は中央配置 */
margin-bottom: 20px;
}
/* 0731 */
.col_4 > div{
  width: 15%;
  padding: 5px;
}
.antisi{
  font-weight: normal;
  font-size: 16px;
}
@media screen and ( max-width: 640px ) {   /* ウィンドウサイズが 640px 以下の場合有効 */
.antisi{
  font-size: 15px;
}

/* 0731 */
@media screen and (max-width: 1090px) {
  .col_4 > div{
    width: 25%;
  }
}
/* 0731 */
@media screen and (max-width: 640px) {
  .col_4 > div{
    width: 33%;
    margin:0 auto;
    padding: 0 0px 20px 0px;
  }
}
#tizu3{
  font-size: 18px;
  padding: 10px;
}


 table.type06 { border-collapse: collapse; }
  table.type06 {
  vertical-align: middle;
  text-align: left;
width: 80%;
margin-left: 80px;
 }
 table.type06 td.td55{
  background-color: #E8E8E6;
padding: 16px;
}
 table.type06 td {
border: 1px solid #ccc;
  padding: 16px;
  vertical-align: top;
margin-left: 20px;
}

 table.type07 {
  border-collapse: collapse; 
  margin:0 auto;
}
 table.type07 td.td01{
  background-color: #fff;
   border: 1px solid #ccc;
text-align: center;

width: 160px;
padding: 10px;
}
 table.type07 td.td001{
  background-color: #fff;
   border: 1px solid #ccc;
text-align: center;
line-height: 30px;
width: 480px;
padding: 10px;
text-align: left;
}
table.type07 td.td00a{
  background-color: #F2F2F2;
  color: #fff;
text-align: center;
width: 140px;
}
table.type07 td.td00aa{
  background-color: #F2F2F2;

text-align: center;
width: 140px;
}
table.type07 td.td00b{
  background-color: #F2F2F2;
  color: #fff;
text-align: center;
width: 140px;
}
table.type07 td.td02{
text-align: center;
}
table.type07 td.td022{
text-align: center;
background-color: #EDE8E8;
}
.marugazou{
  margin: 10px 40px 0 40px;
  width: 28px;
}
table.type07 td.td02{
text-align: center;
}
table.type07 td {
    border: 1px solid #ccc;
  padding: 6px;
  vertical-align: middle;
  text-align: left;
margin-left: 0px;
 }
 table.type07 th {
    border: 1px solid #ccc;
  padding: 6px;
  vertical-align: middle;
  text-align: left;
margin-left: 0px;
  background-color: #F2F2F2;
 }
table.type08 td.td220{
text-align: center;
}
.marugazou{
  margin: 0 40px;
}

h4{
    height: 51px;


    margin-bottom: 10px;
    font-weight: bold;
    line-height: 45px;
    color: #333;

}

.aka{
  font-size: 18px;
  color: #D68003;
}
.rokugroup{
padding: 10px;

}


.setumeiue{
    padding: 8px;
    font-weight: bold;
    font-size: 15px;
    border: 1px solid #044EA8;

}
.kaisoku{
  margin-bottom: 20px;
}
.nagaresita1{
  font-size: 12px;
}
.setumei{
    margin: 8px 12px 0px 10px;
    padding: 8px;
    font-weight: bold;
    font-size: 15px;
    border: 1px solid #044EA8;
}
#futatu{
  margin: 10px 20px 0 20px;
  font-size: 14px;
}
.setumeisita{

  padding: 2px 8px 30px 3px;


}

.inquiry_btn {
    background-color: #1B99A9;
    -webkit-border-radius: 3px;
    display: inline-block;
    text-align: center;
    text-decoration: none;
  width: 100%;
    padding: 13px 0 11px;
    font-size: 18px;
    font-weight: bold;
}
.inquiry_btn:link, .inquiry_btn:visited {
    color: #FFFFFF !important;
}
.footer_area_inner span{
  color: #fff;
}
#siteBottom{

}
#contents .limit .service .recruit1 .limit .lead .service .lead multi .kaisoku{
  margin-bottom: 20px;
}
/*641px～PC　PC上では見えないようにする*/
@media screen and (min-width:641px){
  .footer_area{
    display: none;
} 
}

/*スマホ～641pxの幅サイズまで*/
@media screen and (max-width:640px){
.footer_area {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: rgba( 0, 0, 0, 0.6 );
  z-index: 100;
}
.footer_area .footer_area_inner {
    position: relative;
    width: 100%;
    margin: 0px auto ;
    padding: 0;
  margin-right: 0px;
}

.inquiry_btn {
    background-color: #1B99A9;
    -webkit-border-radius: 3px;
    display: inline-block;
    text-align: center;
    text-decoration: none;
  width: 100%;
    padding: 13px 0 11px;
    font-size: 18px;
    font-weight: bold;
}
.inquiry_btn:link, .inquiry_btn:visited {
    color: #FFFFFF !important;
}
.footer_area_inner span{
  color: #fff;
}
#siteBottom{

}
}
/*641px～PC　PC上では見えないようにする*/
@media screen and (min-width:641px){
  .footer_area{
    display: none;
} 
}

/*スマホ～641pxの幅サイズまで*/

.footer_area {
    position: fixed;
    bottom: 1px;
    text-align: center;
    width: 100%;
    background-color: rgba( 0, 0, 0, 0.6 );
  z-index: 10000;
}
.footer_area .footer_area_inner {
    position: relative;
    width: 100%;
    margin: 0px auto;

  margin-right: 0px;
}
.footer_area .footer_area_inner .footer_area_inner_btn {
    width: 85%;
    padding: 11px 0;
    font-size: 20px;
    font-weight: bold;
    margin-left: 15px;
  line-height: 1.3;
    
}
.inquiry_btn {
    background-color: #068BF1;
    -webkit-border-radius: 3px;
    display: inline-block;
    text-align: center;
    text-decoration: none;
  width: 100%;
    padding: 14px 0 10px 0;
    font-size: 18px;
    font-weight: bold;
}
.inquiry_btn:link, .inquiry_btn:visited {
    color: #FFFFFF !important;
}
.footer_area_inner span{
  color: #fff;
}
#siteBottom{
  margin-bottom: 85px;
}

/* ニュース全体の枠組み */
.news-item {
    display: flex;
    align-items: center;
    padding: 15px;
    border-bottom: 1px solid #eee; /* 下線で区切る */
    transition: background-color 0.3s ease;
    text-decoration: none;
}

/* マウスを乗せた時に少し背景色を変える */
.news-item:hover {
    background-color: #f9f9f9;
}

/* 日付のデザイン */
.news-item .date {
    font-size: 0.9em;
    color: #666;
    background-color: #f0f0f0;
    padding: 2px 8px;
    border-radius: 4px;
    margin-right: 15px;
    white-space: nowrap; /* 日付の途中で改行させない */
}

/* 記事タイトルのデザイン */
.news-item a {
    color: #333;
    text-decoration: none;
    font-weight: bold;
    flex: 1; /* 残りの幅いっぱいに広げる */
}

/* 記事タイトルにマウスを乗せた時 */
.news-item a:hover {
    color: #0073aa; /* WordPress（Lightning）に近い青色 */
    text-decoration: underline;
}

/* スマホ用の調整（幅が狭い時） */
@media (max-width: 600px) {
    .news-item {
        flex-direction: column; /* 日付とタイトルを縦並びに */
        align-items: flex-start;
    }
    .news-item .date {
        margin-bottom: 5px;
    }
}