/***** PC用のデザインCSS *****/
@charset "UTF-8";

body {
	font: 100%/1.4 "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
	background-color: #ffffff;
	margin: 0;
	padding: 0;
	color: #333333;
}

/* ~~ エレメント / タグセレクター ~~ */
ul, ol, dl { 
	padding: 0;
	margin: 0;
}
h1, h2, h3, h4, h5, h6, p {
	margin-top: 0;
	padding-right: 15px;
	padding-left: 15px;
}

a img { 
	border: none;
}

/* ~~ サイトのリンクのスタイル付けは、ホバー効果を作成するセレクターグループも含め、この順序にする必要があります。~~ */
a:link {
	color: #42413C;
	text-decoration: underline; 
}

a:visited {
	color: #6E6C64;
	text-decoration: underline;
}

a:hover, a:active, a:focus {
	text-decoration: none;
}

/* ~~ その他の float/clear クラス ~~ */
.fltrt {
	float: right;
	margin-left: 8px;
}
.fltlft {
	float: left;
	margin-right: 8px;
}
.clearfloat {
	clear:both;
	height:0;
	font-size: 1px;
	line-height: 0px;
}


/* ~~ この固定幅コンテナが他の div を囲みます。~~ */
.container {
  width: 1000px;
  height: 100%;
  background-color: #e5ffe4;
  margin: 0 auto;
  margin-top: 60px;
  margin-bottom: 60px;
  /* 角丸処理 */
  border-radius: 60px;        /* CSS3草案 */  
    -webkit-border-radius: 60px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 60px;   /* Firefox用 */  

}

/* ~~ ヘッダー ~~ */
.header {
  padding: 10px;
  color: #000000;
  /* 子要素の配置を横並びにする */
  display: flex;
  display: -moz-flex;
  display: -o-flex;
  display: -webkit-flex;
  display: -ms-flex;
  flex-direction: row;
  -moz-flex-direction: row;
  -o-flex-direction: row;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
}

.header_left {
  width: 320px;
}

.header_right {
  width: 680px;
}

.header_right_top {
  width: 680px;
  height: 170px;
  font-size: 1.6em;
}

.header_right_bottom {
  width: 680px;
  height: 60px;
}

/*** サブメニューのデザインここから ***/
#sub_menu {
  width: 680px;
  height: 60px;
  padding: 0;
  margin-left : auto;
  margin-right : auto;
  list-style-type: none;
}

#sub_menu li {
  width: 25%;
  float: left;
  padding: 0;
  margin: 0;
  text-align: center;
}

#sub_menu li a {
  width:auto;
  color:#333333;
  font-size:20px;
  font-weight:bold;
  padding:10px 0;
  text-decoration:none;
  display:block;
	/* ▼ 透過グラデーション設定 ▼ */
	background: -moz-linear-gradient(top,rgba(255,255,255,0.3),rgba(255,255,255,0.9)); /* Firefox用 */  
	background: -o-linear-gradient(rgba(255,255,255,0.3),rgba(255,255,255,0.9)); /* Opera */
	background: -webkit-gradient(linear,left top,left bottom,from(rgba(255,255,255,0.3)),to(rgba(255,255,255,0.9))); /* Safari,Google Chrome用 */
}

#sub_menu li a:hover {
  /*background: #ccc;*/
  background-image: -moz-linear-gradient(top, #fff 0%, #fff 50%, #fff 50%, #fff 100%);
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff), color-stop(0.50, #fff), color-stop(0.50, #fff), color-stop(1, #fff));
  /* 角丸処理 */
  border-radius: 10px;        /* CSS3草案 */  
    -webkit-border-radius: 10px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 10px;   /* Firefox用 */  

}

/*** サブメニューのデザインここまで ***/




/* パンくず */
#pankuzu {
  font-size: small;
  margin: 5px 0px 20px 0px;
  padding-left: 20px;
}


/*** トップページの上部メニュー部分 ここまで ***/


/* 真ん中コンテンツ */
.contents_data {
  margin: 0 auto;
  text-align: center;
}

/* トップページのスライダーのボックス指定 */
.top_slider_box {
  width: 100%;
  margin: 0 auto;
  padding: 0px;
  /* background: #333333; */
}

/* トップページのお知らせのボックス指定 */


*, *:before, *:after {-moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;}
.info {margin: 1em auto;padding: 0 1.5em;border: 1px solid #ccc;text-align: left;font-size: 1em;line-height: 1.3;color: #444;overflow: auto;width: 90%;height: 10em;background-color: #fcfcfc;}
.info dl {padding: 0.5em 0;border-bottom: 1px solid #ccc;}
.info dt {padding-bottom: 0;width: 6em;}
@media screen and (min-width: 480px) {
.info dt {clear: left;float: left;}
.info dd {margin-left: 0.5em;}
}



/* ~~ フッター ~~ */
.footer {
  padding: 40px 0px 20px 0px;
  color: #000000;
}

.footer_frame {
  background-color : rgba(255,255,255,0.5);
  margin: 0px 60px;
  /* 角丸処理 */
  border: medium solid;
  border-color: #006948;
  border-radius: 10px;        /* CSS3草案 */  
    -webkit-radius: 10px;    /* Safari,Google Chrome用 */  
    -moz-radius: 10px;   /* Firefox用 */  
  /* 子要素の配置を横並びにする */
  display: flex;
  display: -moz-flex;
  display: -o-flex;
  display: -webkit-flex;
  display: -ms-flex;
  flex-direction: row;
  -moz-flex-direction: row;
  -o-flex-direction: row;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
}

.footer_box_left {
  width : 250px;
  height: 240px;
  padding: 10px 20px;
  margin: 10px 0px;
  border-right: medium solid;
  border-color: #006948;

}

.footer_box_center {
  width : 250px;
  height: 240px;
  padding: 10px 20px;
  margin: 10px 0px;
  border-right: medium solid;
  border-color: #006948;

}

.footer_box_right {
  width : 250px;
  height: 240px;
  padding: 10px 20px;
  margin: 10px 0px;
}


.footer ul {
    list-style: none;
    /*width: 250px;*/
    font-size: 1em;
    line-height: 1.3;
}
 
.footer li {
    /*margin-bottom: 5px;*/
    padding-left: 2em; /*1em（1文字）分、右に動かす*/
    text-indent: -1em; /*最初の行だけ1em（1文字）分、左に動かす*/
    color: #666666;
}

#copyright {
  font-size: 0.8em;
  color: #006948;
  text-align: center;
}

/***** ロケバスページ ここから *****/
.chgimg {
  width:800px;
  margin:0 auto;
}
.subcom {
  font-size: 0.5em;
/*  line-height: 1.3;*/
}

.target_img {
  width:800px;
  margin:0 auto;
}

.thumb_img {
  line-height: 1em;
  text-align: left;
}

.chgimg table {
  width: 800px;
  margin:0 auto;
}

.chgimg tr {
  text-align: left;
  border-style: solid;
}

.chgimg_td01 {
  width: 120px;
  padding: 4px;
}

.chgimg_td02 {
  width: 680px;
  padding: 4px;
}


/***** ロケバスページ ここまで *****/

/***** 料金ページ ここから *****/

.fee_box001 {
  width: 1000px;

  /* 子要素の配置を横並びにする */
  display: flex;
  display: -moz-flex;
  display: -o-flex;
  display: -webkit-flex;
  display: -ms-flex;
  flex-direction: row;
  -moz-flex-direction: row;
  -o-flex-direction: row;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
}

.fee_box_left {
  width: 430px;
  padding: 0 5px;
}

.fee_box_right {
  width: 570px;
  padding: 0 5px;
  vertical-align: middle
}

.fee_box001 tr td {
  border: 1px solid;
  padding: 16px 4px;
}

.fee001 {
  width: 560px;
  border: 2px solid;
  border-collapse: collapse;
  font-size: larger;
  margin-top: 40px;
}

.fee001_td01 {
  width: 110px;
}

.fee001_td02 {
  width: 100px;
}

.fee001_td03 {
  width: 110px;
}

.fee001_td04 {
  width: 110px;
}

.fee001_under {
  width: 560px;
  font-size: 1.2em;
  text-align: left;
}

.num_column {
  text-align: right;
}

.fee001_font {
  font-size: 0.8em;
}

.under_double {
  border-bottom: double;
}

.fee_box002 {
  width: 800px;
  margin:0 auto;
  text-align: left;
  padding: 10px 0;
  font-size: larger;
}

.fee_box002 ul {
  list-style: none;
  font-size: 1em;
  line-height: 1.3;
}
 
.fee_box002 li {
  padding-left: 2em; /*1em（1文字）分、右に動かす*/
  text-indent: -1em; /*最初の行だけ1em（1文字）分、左に動かす*/
}

/***** 料金ページ ここまで *****/

/***** 安全マネジメントページ ここから *****/
.safety_title {
  font-size: 1.8em;
}

.safety_box01 {
  width: 800px;
  margin:0 auto;
  text-align: left;
  padding: 10px;
  background-color: #fff;
}

.safety_box01 p {
  border-left: outset 10px #ff0000;
  border-bottom: inset 2px #ff0000;
  font-size: 1.4em;
  line-height: 200%;
}

.safety_box01_in {
  margin: 20px;
}
/***** 安全マネジメントページ ここまで *****/


/***** 実績ページ ここから *****/
.achieve_title {
  font-size: 1.8em;
}

.achieve_box01 {
  width: 800px;
  margin:0 auto;
  text-align: left;
  padding: 10px;
  background-color: #fff;
  line-height: 180%;
}

.achieve_box01 p {
  border-left: outset 10px #0000ff;
  border-bottom: inset 2px #0000ff;
  font-size: 1.4em;
  line-height: 200%;
}

.achieve_box01_in {
  margin: 20px;
}
/***** 実績ページ ここまで *****/

/***** リクルートページ ここから *****/
.recruit_title {
  font-size: 2.5em;
  text-align: left;
}

.recruit_box {
  width: 800px;
  margin:0 auto;
  text-align: left;
  padding: 10px;
  background-color: #fff;
  line-height: 180%;
}

.recruit_box p {
  border-left: outset 10px #006948;
  border-bottom: inset 2px #006948;
  font-size: 1.6em;
  line-height: 200%;
}

.recruit_box_in {
  margin: 20px;
}


.recruit_tbl {
  width: 780px;
  margin: 0;
  text-align: left;
  background-color: #fff;
  font-size: 1.2em;
  line-height: 120%;
}

.recruit_tbl th {
  width: 200px;
  text-align: left;
  padding: 18px;
  background-color : #e5ffe4;
}

.recruit_tbl td {
  text-align: left;
  padding: 18px;
}

.recruit_form_tbl {
  width: 780px;
  margin: 0;
  text-align: left;
  background-color: #fff;
  font-size: 1.2em;
  line-height: 120%;
}

.recruit_form_tbl th {
  width: 200px;
  text-align: left;
  padding: 18px;
  background-color : #e5ffe4;
}

.recruit_form_tbl th span {
  color: #ff0000;
  font-size: 0.8em;
  font-weight: normal;
}

.recruit_form_tbl td {
  text-align: left;
  padding: 18px;
}

.recruit_form_tbl td span {
  font-size: 0.8em;
  font-weight: 300;
}



/* テキストボックスのデザイン */
.recruit_form_tbl td input[type="text"] {
  width:400px;
  height:40px;
  margin: 0px;
/*  padding: 4px 10px;*/
  padding: 2px 10px;
  border-radius: 4px;
  border: 1px solid #ccc;
  font-size: 1.1em;
}

/* テキストエリアのデザイン */
.recruit_form_tbl textarea {
  width:400px;
  height:80px;
  margin: 0px;
  padding: 4px 10px;
  border-radius: 4px;
  border: 1px solid #ccc;
  vertical-align: top;
  text-wrap:normal;
  white-space: pre-wrap;
  font-size: 1.1em;
}

/* チェックボックスのデザイン ここから */
.chk_input{
  display: none;
}
.chk_parts{
  position:relative;
  padding-left: 20px;
  margin-right: 16px;
  vertical-align: middle;
  cursor: pointer;
  word-break: keep-all;
}

.chk_parts::before{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 18px;
  height: 18px;
  border: 1px solid #999;
  border-radius: 4px;
  background-color: #fff;
}
.chk_input:checked + .chk_parts::after{
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  position: absolute;
  top: 45%;
  left: 6px;
  display: block;
  margin-top: -5px;
  width: 5px;
  height: 9px;
  border-right: 4px solid #006948;
  border-bottom: 4px solid #006948;
  content: "";
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
/* チェックボックスのデザイン ここまで */


/* ラジオボタンのデザイン ここから */
.rad_input{
  display: none;
}
.rad_parts{
  position:relative;
  padding-left: 24px;
  margin-right: 20px;
  vertical-align: middle;
  cursor: pointer;
}
.rad_parts::before{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 18px;
  height: 18px;
  border: 1px solid #999;
  border-radius: 50%;
  background-color: #fff;
}
.rad_input:checked + .rad_parts::after{
  content: "";
  display: block;
  position: absolute;
  top: 3px;
  left: 3px;
  width: 14px;
  height: 14px;
  background: #006948;
  border-radius: 50%;
}
/* ラジオボタンのデザイン ここまで */


/* 送信ボタンのデザイン ここから */
.recruit_button {
  width:360px;
  height: 80px;
  margin: 0px;
  padding: 4px 15px;
  background-color: #006948;
  color: #e5ffe4;
  font-size: 1.4em;
  border-style: none;
}

.recruit_button_mini {
  width:80px;
  height: 30px;
  margin: 0px;
  padding: 4px 8px;
  background-color: #006948;
  color: #e5ffe4;
  font-size: 0.8em;
  border-style: none;
}

.recruit_button:hover {
  background-color: #e5ffe4;
  color: #006948;
  border-style: solid;
  border-color: #006948;
  cursor: pointer;
}

.recruit_button_mini:hover {
  background-color: #e5ffe4;
  color: #006948;
  border-style: solid;
  border-color: #006948;
  cursor: pointer;
}
/* 送信ボタンのデザイン ここまで */


/***** リクルートページ ここまで *****/



/***** 個人情報ページ ここから *****/
.privacy_title {
  font-size: 2.5em;
  text-align: left;
}

.privacy_box {
  width: 800px;
  margin:0 auto;
  text-align: left;
  padding: 10px;
  background-color: #fff;
  line-height: 180%;
}

.privacy_box p {
  border-left: outset 10px #006948;
  border-bottom: inset 2px #006948;
  font-size: 1.6em;
  line-height: 200%;
}

.privacy_box_in {
  margin: 30px;
}

.privacy_box_in ul {
  font-weight: 900;
  padding-top: 1.5em;
}

.privacy_box_in li {
  list-style-type: none;
  line-height: 1.1em;
}



/***** 個人情報ページ ここまで *****/













