@charset "utf-8";


/*全端末（PC・タブレット・スマホ）共通設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/

/*全体の設定
---------------------------------------------------------------------------*/
body {
	margin: 0px;
	padding: 0px;
	color: #666;	/*全体の文字色*/
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;	/*フォント種類*/
	font-size: 17px;	/*文字サイズ*/
	line-height: 2;		/*行間*/
	background: #fff;	/*背景色*/
	-webkit-text-size-adjust: none;
}
h1,h2,h3,h4,h5,p,ul,ol,li,dl,dt,dd,form,figure,form {margin: 0px;padding: 0px;font-size: 100%;font-weight: normal;}
ul {list-style-type: none;}
ol {padding-left: 40px;padding-bottom: 15px;}
img {border: none;max-width: 100%;height: auto;vertical-align: middle;}
table {border-collapse:collapse;font-size: 100%;border-spacing: 0;}
iframe {width: 100%;}

/*リンク（全般）設定
---------------------------------------------------------------------------*/
a {
	color: #666;	/*リンクテキストの色*/
	-webkit-transition: 0.5s;	/*マウスオン時の移り変わるまでの時間設定。0.5秒。*/
	transition: 0.5s;			/*同上*/
}
a:hover {
	color: #f6a72a;			/*マウスオン時の文字色*/
	text-decoration: none;	/*マウスオン時に下線を消す設定。残したいならこの１行削除。*/
}

/*inner共通
---------------------------------------------------------------------------*/
.inner {
	max-width: 1000px;	/*サイトの最大幅*/
	margin: 0 auto;
	padding: 0 2%;
}

/*ヘッダー（ロゴが入った最上段のブロック）
---------------------------------------------------------------------------*/
/*ヘッダーブロック*/
header {
	border-top: 4px solid #f6a72a;	/*上の線の幅、線種、色*/
}
header .inner {
	height: 100px;	/*高さ*/
}
/*ロゴ画像*/
header #logo {
	width: 300px;	/*ロゴ画像の幅*/
	float: left;	/*左に回り込み*/
	margin-top: 20px;	/*ロゴの上にあける余白。上下のバランスをここで調整して下さい。*/
	padding-bottom: 10px;
}

/*ヘッダー右側の電話番号ブロック
---------------------------------------------------------------------------*/
/*ブロック全体*/
#contact {
	float: right;		/*右に回り込み*/
	margin-top: 12px;	/*ブロックの上にあける余白。上下のバランスをここで調整して下さい。*/
	width: 350px;		/*ブロック幅*/
	border-radius: 6px;	/*角丸のサイズ*/
	padding: 5px;		/*ボックス内の余白*/
	border: 1px solid #dcdcdc;	/*枠線の幅、線種、色*/
	text-align: center;	/*文字をセンタリング*/
}
/*TEL*/
.tel {
	letter-spacing: 0.2em;	/*文字間隔を広くする設定。通常がいいならこの行削除。*/
	font-size: 20px;		/*文字サイズを大きく*/
}
/*TELの受付時間の小文字部分*/
.tel span {
	font-size: 12px;	/*文字サイズを小さく*/
	display: block;
	letter-spacing: 0.1em;	/*文字間隔*/
}

/*メインメニュー
---------------------------------------------------------------------------*/
/*メニューブロック*/
#menubar {
	clear: both;
	overflow: hidden;
	position: relative;z-index: 1;
	background: linear-gradient(#fff, #eee);	/*グラデーション*/
	border-top: 1px solid #dcdcdc;		/*メニュー上の線の幅、線種、色*/
	border-bottom: 1px solid #dcdcdc;	/*メニュー下の線の幅、線種、色*/
	box-shadow: 0px 10px 40px rgba(0,0,0,0.1);	/*ボックスの影。右に、下に、広げる幅、0,0,0は黒の事で0.2は透明度20%の事。*/
}
/*メニュー１個あたりの設定*/
#menubar li {
	float: left;	/*左に回り込み*/
	width: 16.6%;	/*メニュー幅（100÷6個=16.6%）　もし４個にするなら100÷4=25%になる。*/
}
#menubar li a {
	display:  block;
	text-decoration: none;
	text-align: center;
	line-height: 50px;	/*メニューの高さ*/
	padding-top: 4px;	/*下のブロックの「border-bottom」と「bottom」の数字と合わせる。*/
}
/*下線のアニメーション設定*/
#menubar li::after {
	transition: 0.3s;	/*0.3秒かけてアニメーションを実行する。*/
	content: "";
	display: block;
	border-bottom: 4px solid #f6a72a;	/*下線の幅、線種、色。上のブロックの「padding-top」と、下の行の「bottom」の数字と合わせる。*/
	position: relative;left: 0px;bottom: -4px;	/*bottomの数字は上のブロックの「padding-top」と、上の行の「border-bottom」の数字と合わせる。※マイナス記号は残したまま。*/
}
#menubar li:hover::after,#menubar li.current::after {
	bottom: 0px;
}
/*スマホ用メニューを表示させない*/
#menubar-s {
	display: none;
}
/*３本バーアイコンを表示させない*/
#menubar_hdr {
	display: none;
}

/*トップページメイン画像
---------------------------------------------------------------------------*/
#mainimg {
	box-shadow: 0px 10px 40px rgba(0,0,0,0.2);	/*ボックスの影。右に、下に、広げる幅、0,0,0は黒の事で0.2は透明度20%の事。*/
}

/*コンテンツ
---------------------------------------------------------------------------*/
.contents {
	clear: both;
	overflow: hidden;
	padding: 40px 0;	/*上下、左右に空けるボックス内の余白*/
}
/*コンテンツのh2タグの設定*/
.contents h2 {
	clear: both;
	font-size: 20px;	/*文字サイズ*/
	line-height: 1.4;	/*行間*/
	margin-bottom: 20px;
	padding: 10px 20px;	/*上下、左右への余白*/
	background: linear-gradient(#fff, #eee);	/*グラデーション*/
	border-bottom: 1px solid #dcdcdc;	/*メニュー下の線の幅、線種、色*/
	border-top: 4px solid #f6a72a;	/*メニュー下の線の幅、線種、色*/
	box-shadow: 0px 1px 3px rgba(0,0,0,0.15);	/*ボックスの影。右に、下に、広げる幅、0,0,0は黒の事で0.15は透明度15%の事。*/
	text-shadow: 0px 2px #fff;	/*テキストの影。右へ、下へ、色。*/
}
/*コンテンツのh2タグ内のspanタグ設定（色付き文字部分）*/
.contents h2 span {
	display: block;
	color: #f6a72a;		/*文字色*/
	font-size: 12px;	/*文字サイズ*/
	letter-spacing: 0.1em;	/*文字間隔を少し広げる設定*/
	padding-left: 5px;
}
/*コンテンツのh3タグの設定*/
.contents h3 {
	clear: both;
	margin-bottom: 20px;
	padding: 5px 20px;	/*上下、左右への余白*/
	border: 1px solid #dcdcdc;	/*線の幅、線種、色*/
	background: #f8f8f8;		/*背景色*/
}
/*コンテンツの段落タグ設定*/
.contents p {
	padding: 0px 20px;	/*上下、左右の余白*/
}
.contents h2 + p,
.contents h3 + p {
	margin-top: -10px;
}

/*ラベル*/
.label-01 {
   border-radius: 5px;        
   -webkit-border-radius: 5px;   
   -moz-border-radius: 5px;  
   padding: 0.1em 0.3em 0.1em 0.3em;
   text-align: center;
   color: #fff;
   background: #F3C219;
}


/*事業内容・設備ページのグラフ
---------------------------------------------------------------------------*/
.box {
	max-width: 1000px;
}
/*棒グラフの設定*/
.graph_box{
  position: relative;
  width: 500px;
  height: 385px;
  margin: auto; 
  overflow: hidden;
  background-image: url("../images/01_chart01.png");
  background-size: 90%;
  background-repeat: no-repeat;
}
.graph{
  width: 90%;
  height: 90%;
  position: absolute;
  left: 16%;
  bottom: 88px;
}
.m{
  height: 35%;
  width: calc(100% / 12);
  background: #FF8484;
  position: absolute;
  bottom: 0;
  left: 0;
  animation: up1 1s ease-in;
}
@keyframes up1{
  0%{
    height: 0;
  }
  100%{
    height: 35%;
  }
}
.tu{
  height: 39%;
  width: calc(100% / 12);
  background: #FF8484;
  position: absolute;
  bottom: 0;
  left: 18%;
  animation: up2 1s ease-in;
}
@keyframes up2{
  0%{
    height: 0;
  }
  100%{
    height: 39%;
  }
}
.w{
  height: 41%;
  width: calc(100% / 12);
  background: #FF8484;
  position: absolute;
  bottom: 0;
  left: 36%;
  animation: up3 1s ease-in;
}
@keyframes up3{ 
  0%{
    height: 0;
  }
  100%{
    height: 41%;
  }
}
.tr{
  height: 50%;
  width: calc(100% / 12);
  background: #FF8484;
  position: absolute;
  bottom: 0;
  left: 53.5%;
  animation: up4 1s ease-in;
}
@keyframes up4{
  0%{
    height: 0;
  }
  100%{
    height: 50%;
  }
}
.f{
  height: 58%;
  width: calc(100% / 12);
  background: #FF8484;
  position: absolute;
  bottom: 0;
  left: 71%;
  animation: up5 1s ease-in;
}
@keyframes up5{
  0%{
    height: 0;
  }
  100%{
    height: 58%;
  }
}

/*円グラフの設定*/
.box2{
  position: relative;
  width: 500px;
  height: 385px;
  margin: auto; 
  overflow: hidden;
  background-image: url("../images/01_chart02.png");
  background-size: 90%;
  background-repeat: no-repeat;
}

.anime-chart {
	position: absolute;
	top: 20%;
	left: -5%;
  margin: 0 auto;
  padding: 0;
  list-style-type: none;
}

.anime-chart *,
.anime-chart::before {
  box-sizing: border-box;
}

.anime-chart {
  position: relative;
  width: 350px;
  height: 175px;
  overflow: hidden;
}

.anime-chart::before,
.anime-chart::after {
  position: absolute;
}

.anime-chart::before {
  content: '';
  width: inherit;
  height: inherit;
  border: 45px solid rgba(211, 211, 211, .3);
  border-bottom: none;
  border-top-left-radius: 175px;
  border-top-right-radius: 175px;
}

.anime-chart li {
  position: absolute;
  top: 100%;
  left: 0;
  width: inherit;
  height: inherit;
  border: 45px solid;
  border-top: none;
  border-bottom-left-radius: 175px;
  border-bottom-right-radius: 175px;
  transform-origin: 50% 0;
  transform-style: preserve-3d;
  backface-visibility: hidden;
  animation-fill-mode: forwards;
  animation-duration: .4s;
  animation-timing-function: linear;
}

.anime-chart li:nth-child(1) {
  z-index: 4;
  border-color: #00BFFF;
  animation-name: rotate-one;
}

.anime-chart li:nth-child(2) {
  z-index: 3;
  border-color: #FF7F50;
  animation-name: rotate-two;
  animation-delay: .4s;
}

.anime-chart li:nth-child(3) {
  z-index: 2;
  border-color: #7FFFD4;
  animation-name: rotate-three;
  animation-delay: .8s;
}

.anime-chart span {
  position: absolute;
  font-size: .85rem;
  backface-visibility: hidden;
  animation: fade-in .4s linear forwards;
}

.anime-chart li:nth-child(1) span {
  top: 55px;
  left: 80px;
  transform: rotate(-108deg);
}

.anime-chart li:nth-child(2) span {
  top: 15px;
  left: 5px;
  transform: rotate(-126deg);
  animation-delay: .4s;
}

.anime-chart li:nth-child(3) span {
  top: 10px;
  left: 20px;
  transform: rotate(-180deg);
  animation-delay: .8s;
}

/* 円グラフアニメーション
–––––––––––––––––––––––––––––––––––––––––––––––––– */

@keyframes rotate-one {
  100% {
    transform: rotate(108deg);
    /**
     * 60% => 108deg
     */
  }
}

@keyframes rotate-two {
  0% {
    transform: rotate(108deg);
  }
  100% {
    transform: rotate(126deg);
    /**
     * 10% => 18deg 
     * 108 + 18 => 126deg
     */
  }
}

@keyframes rotate-three {
  0% {
    transform: rotate(126.0deg);
  }
  100% {
    transform: rotate(180deg);
    /**
     * 30% => 54deg 
     * 126+ 54 => 180deg
     */
  }
}

@keyframes fade-in {
  0%,
  90% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}


/*内職者求人ページのフローチャート
---------------------------------------------------------------------------*/
#flowchart {
	max-width: 460px;
	height: auto;
	display: block;
	margin: 40px auto;
}
.fl_icon {
	position: relative;
	width: 84px;
	height: 84px;
	margin-top: -5px;
	float: left;
	background-image: url("../images/04_enkaku.png");
	background-repeat: no-repeat;
}
.fl_no {
	position: absolute;
	left: 5%;
	bottom: 2%;
	font-size: 30px;
	color: #fff;
}
.fl_no span {
	position: absolute;
	left: 28%;
	bottom: 40%;
	font-size: 12px;
	color: #fff;
}
.fl_line_box01 {/*テキスト*/
	max-width: 400px;
    height: auto;	/*ボーダー長さ調節*/
	margin: -5px 0px 0px 42px !important;
	padding: 5px 15px 10px 25px !important;
	border-left:solid 5px #FDCB78;
	float: left;
	font-size: 15px;
}
.fl_line_box01 span {/*テキスト*/
	font-size: 22px;
	font-weight: bold;
	color: coral;
}


/*最下部バナーの各ブロック
---------------------------------------------------------------------------*/
/*各ボックスの設定*/
.list {
	position: relative;
	overflow: hidden;
	float: left;		/*左に回り込み*/
	width: 46%;			/*ボックス幅*/
	padding: 1%;		/*ボックス内の余白*/
	border: 1px solid #dcdcdc;	/*枠線の幅、線種、色*/
	margin: 0 0.8% 20px;		/*上、左右、下へのボックスの外に空けるスペース*/
	box-shadow: 0px 10px 40px rgba(0,0,0,0.2);	/*ボックスの影。右に、下に、広げる幅、0,0,0は黒の事で0.2は透明度20%の事。*/
	-webkit-transition: 0.3s;	/*マウスオン時の移り変わるまでの時間設定。0.3秒。*/
	transition: 0.3s;			/*同上*/
}
.list a {
	text-decoration: none;
	display: block;
	overflow: hidden;
	padding: 1%;	/*ボックス内の余白*/
	margin: -1%;
}
/*マウスオン時の背景色*/
.list:hover {
	box-shadow: none !important;	/*ボックスの影をなくす設定*/
}
/*リンクを貼った際に出る「→」マーク*/
.list a::before {
	content: "→";	/*出力する文字。変更しても構いませんが機種依存文字は化けるので使わないで下さい。*/
	font-size: 12px;	/*文字サイズ*/
	display: block;
	position: absolute;
	right: 10px;	/*ボックスの右から10pxの場所に配置*/
	bottom: 10px;	/*ボックスの下から10pxの場所に配置*/
	width: 30px;	/*幅*/
	line-height: 30px;	/*高さ*/
	text-align: center;
	background: #ccc;	/*背景色（古いブラウザ用）*/
	background: rgba(0,0,0,0.2);	/*背景グラデーション。0,0,0は黒の事で、0.3は透明度30%の事。*/
	color: #fff;	/*文字色*/
	border-radius: 50%;	/*角丸のサイズ。50%にすると円になる。*/
}
/*マウスオン時の「→」マーク*/
.list a:hover::before {
	background: #f6a72a;	/*背景色*/
}
/*ボックス内右側のテキストパーツ*/
.list .text {
	font-size: 14px;	/*文字サイズ*/
	line-height: 1.5;	/*行間*/
	height: 8em;		/*高さ*/
	overflow: hidden;	/*高さを超えると非表示になる*/
}
/*ボックス内右側のテキストパーツ（商品ボックス１カラム時）*/
.list.c1 .text {
	height: auto;
	overflow: auto;
}
/*ボックス内のh4タグ設定*/
.list h4 {
	font-size: 16px;
	font-weight: bold;
	padding: 0px 0px 5px;
	color: #f6a72a;	/*文字色*/
}
/*ボックス内のp(段落)タグ設定*/
.list p {
	padding: 0px !important;
}
/*ボックス内の画像*/
.list .img {
	float: left;	/*左に回り込み*/
	width: 100px;		/*幅*/
	height: 100px;		/*高さ*/
	margin-right: 10px;
}
/*各ボックスの設定（商品ボックス１カラム時）*/
.list.c1 {
	float: none;
	width: auto;
	margin: 0 0 20px;
}
/*ボックス内のh4タグ（商品ボックス１カラム時）*/
.list.c1 h4 {
	margin-bottom: 10px;
}
/*ボックス内の画像（商品ボックス１カラム時）*/
.list.c1 .img {
	width: 20%;		/*幅*/
	height: auto;	/*高さ*/
}
/*mainブロック内のボックス設定*/
.main .list {
	box-shadow: 0px 5px 10px rgba(0,0,0,0.1);	/*ボックスの影*/
}


/*フッター設定
---------------------------------------------------------------------------*/
footer {
	clear: both;
	background: #f6a72a;	/*背景色*/
	color: #fff;	/*文字色*/
	font-size: 85%;	/*文字サイズ*/
}
footer a {
	color: #fff;
}
footer a:hover {
	color: #fff;
}
footer .pr {
	display: block;
	font-size: 80%;
}

/*フッターメニュー
---------------------------------------------------------------------------*/
/*ボックス全体*/
#footermenu {
	overflow: hidden;
	padding: 20px 0;
}
/*１行分の設定*/
#footermenu ul.f_logo {
	width: 20%;
}

/*１行分の設定*/
#footermenu ul {
	float: left;	/*左に回り込み*/
	width: 13.6%;		/*幅78%(ロゴの分22％マイナス)。今回は5列作ったのでここの幅13.6%と下のpadding(合計の2%)でトータル16%になるよう設定。列に応じて調整して下さい。*/
	padding-right: 1%;
	padding-left: 1%;
}

/*コピーライト
---------------------------------------------------------------------------*/
#copyright {
	clear: both;
	text-align: center;
	background: #333;	/*背景色*/
}
#copyright a {
	text-decoration: none;
}

/*float
---------------------------------------------------------------------------*/
/*topページ*/
.text_left {
	float: left;
	width: 79%;
	margin-right: 1%;
}
.img_right {
	float: right;
	width: 20%;
}

/*画像2つ並び*/
.f_left {
	float: left;
	width: 47%;
	margin: 0 1% 20px 2%;
}
.f_right {
	float: right;
	width: 47%;
	margin: 0 2% 20px 1%;
}

/*テキスト位置
---------------------------------------------------------------------------*/
.text_r {
	text-align: right;
}
.text_cen {
	text-align: center;
}

/*画像関係
---------------------------------------------------------------------------*/
.img_cen {/*中央揃え*/
	text-align: center;
	margin: 0 auto;
}

.img_boder {
	border: 1px #dcdcdc solid;
	box-shadow: 0px 10px 40px rgba(0,0,0,0.2);	/*ボックスの影。右に、下に、広げる幅、0,0,0は黒の事で0.2は透明度20%の事。*/
}

/*トップページ内「更新情報・お知らせ」ブロック
---------------------------------------------------------------------------*/
/*ブロック全体の設定*/
#new dl {
	padding-left: 20px;
	margin-bottom: 15px;
	height: 160px;	/*高さ*/
	overflow: auto;	/*上で設定した高さを超えた場合にスクロールを出す設定。全部表示させていたいなら、この行と上の高さの行を削除する。*/
}
/*日付設定*/
#new dt {
	float: left;
	width: 9em;
	color: #f6a72a;
	letter-spacing: 0.1em;
}
/*記事設定*/
#new dd {
	padding-left: 9em;
	border-bottom: 1px solid #eee;	/*下線の幅、線種、色*/
}


/*テーブル
---------------------------------------------------------------------------*/
/*ta1設定 会社概要ページ*/
.ta1 {
	width: 100%;
	margin: 0 auto 20px;
}
.ta1, .ta1 td, .ta1 th {
	border: 1px solid #ccc;	/*テーブルの枠線の幅、線種、色*/
	padding: 10px 15px;	/*ボックス内の余白*/
	word-break: break-all;
}
/*テーブル１行目に入った見出し部分*/
.ta1 th.tamidashi {
	width: auto;
	text-align: left;	/*左よせ*/
	background: #f6f5f2;	/*背景色*/
	font-size: 18px;	/*文字サイズ*/
}
/*ta1の左側ボックス*/
.ta1 th {
	width: 140px;	/*幅*/
	text-align: center;	/*センタリング*/
	font-weight: normal;
	background-color: darksalmon;
	color: #4d4d4d;
}
.ta1 th.bg_b {
	width: 140px;	/*幅*/
	text-align: center;	/*センタリング*/
	font-weight: normal;
	background-color: lightcyan;
	color: #4d4d4d;
}
/*左側ボックスに画像を入れた場合の設定*/
.ta1 th img {
	width: 100%;
}
/*右側ボックス２行の場合*/
.ta1 th.sub {
	width: 140px;	/*幅*/
	text-align: left;	/*センタリング*/
	font-weight: normal;
	background-color: #fff;
	color: #666;
}

/*-------*/
/*ta2設定　製品紹介ページ*/
.ta2 {
	width: 100%;
	margin: 0 auto 20px;
}
.ta2, .ta2 td, .ta2 th {
	border: 1px solid #ccc;	/*テーブルの枠線の幅、線種、色*/
	padding: 10px 15px;	/*ボックス内の余白*/
	word-break: break-all;
}
/*テーブル１行目に入った見出し部分*/
.ta2 th.tamidashi,.ta2 td.tamidashi {
	width: auto;
	text-align: center;	/*中央よせ*/
	background: #f6f5f2;	/*背景色*/
	font-size: 18px;	/*文字サイズ*/
}
/*ta2の左側ボックス*/
.ta2 th {
	width: 110px;	/*幅*/
	text-align: center;	/*センタリング*/
	font-weight: normal;
	background-color: bisque;
	color: #4d4d4d;
}
/*左側ボックスに画像を入れた場合の設定*/
.ta2 th img {
	width: 100%;
}
/*ta2の左側から1番目ボックス*/
.ta2 td.bg_01 {
	font-weight: normal;
	background-color: lightblue;
	color: #4d4d4d;
}
/*ta2の左側から2.3番目ボックス*/
.ta2 td.bg_02,.ta2 td.bg_03 {
	font-weight: normal;
	background-color:  azure;
}
/*ta2の左側から4番目ボックス*/
.ta2 td.bg_04 {
	font-weight: normal;
	background-color: cornsilk;
}


/*
問合せフォーム
---------------------------------------------------------------------------*/
.formStyle{
	max-width:500px;
	margin:auto;
}

/* デフォルトのスタイルを削除*/
input,
button,
textarea,
select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	margin-top: 1em;
}
label {
	margin-top: 1em;
}

/* フォーカスした時の幅を変更*/
input[type="text"].focus {
	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	transition: all .3s;
	width: 200px;
}
input[type="text"].focus:focus {
	width: 300px;
}

/* テキストインプットとテキストエリアの基本装飾*/
input[type="text"],
input[type="password"],
textarea {
	padding: 0.8em;
	outline: none;
	border: 1px solid #DDD;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	
	font-size: 16px;
}

/*inputボタン*/
input[type="submit"],
input[type="reset"] {
	padding: 5px 10px;		/*上下、左右へのボックス内の余白*/
	margin-right: 20px;
	border: 1px solid #ccc;	/*枠線の幅、線種、色*/
	font-size: 15px;		/*文字サイズ*/
	border-radius: 3px;		/*角丸のサイズ*/
	background: #eee;		/*背景色*/
}
/*マウスオン時の設定*/
input[type="submit"]:hover,
input[type="reset"]:hover {
	border: 1px solid #999;	/*枠線の幅、線種、色*/
	background: #fff;		/*背景色*/
}

/* フォーカスした時のスタイルを変更*/
input[type="text"]:focus,
input[type="password"]:focus,
.formStyle textarea:focus {
	box-shadow: 0 0 7px #3498db;
	border: 1px solid #3498db;
}

/* disabled時のスタイルを変更*/
input[type="text"]:disabled {
	background-color: #eee;
	cursor: not-allowed;
}

/* ラジオボタンのスタイルを変更*/
input[type="radio"] {
	display: none;
}
input[type="radio"] + label {
	position: relative;
	display: inline-block;
	padding: 3px 10px 3px 24px;
	cursor: pointer;
}
input[type="radio"] + label::before,
input[type="radio"] + label::after {
	content: '';
	top: 50%;
	position: absolute;
	border-radius: 100%;
	-webkit-transition: all .2s;
  -moz-transition: all .2s;
	transition: all .2s;
}
input[type="radio"] + label::before {
	width: 16px;
	height: 16px;
	margin-top: -9px;
	left: 0;
	background: #EEE;
	border: 1px solid #ccc;
}
input[type="radio"] + label:hover::before {
	background: #FEFEFE;
}
input[type="radio"] + label::after {
	opacity: 0;
	left: 4px;
	width: 10px;
	height: 10px;
	margin-top: -5px;
	background: #2980b9;
	-webkit-transform: scale(0.5);
	-moz-transform: scale(0.5);
	transform: scale(0.5);
}
input[type="radio"]:checked + label::before {
	background: #fff;
	border: 1px solid #2980b9;
}
input[type="radio"]:checked + label::after {
	opacity: 1;
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	transform: scale(1);
}


/* チェックボックスのスタイルを変更*/
input[type="checkbox"] {
	display: none;
}
input[type="checkbox"] + label {
	position: relative;
	display: inline-block;
	padding: 3px 10px 3px 22px;
	cursor: pointer;
	-webkit-transition: all .2s;
	-moz-transition: all .2s;
	transition: all .2s;
}
input[type="checkbox"] + label::before,
input[type="checkbox"] + label::after {
	position: absolute;
	content: '';
}
input[type="checkbox"] + label::before {
	top: 50%;
	left: 0;
	width: 14px;
	height: 14px;
	margin-top: -8px;
	background: #f4f4f4;
	border: 1px solid #ccc;
	border-radius: 3px;
}
input[type="checkbox"] + label::after {
	opacity: 0;
	top: 50%;
	left: 3px;
	width: 8px;
	height: 4px;
	margin-top: -4px;
	border-left: 2px solid #3498db;
	border-bottom: 2px solid #3498db;
	-webkit-transform: rotate(-45deg) scale(.5);
	-moz-transform: rotate(-45deg) scale(.5);
	transform: rotate(-45deg) scale(.5);
}
input[type="checkbox"] + label:hover::before {
	background: #fff;
}
input[type="checkbox"]:checked + label::before {
	background: #fff;
	border: 1px solid #3498db;
}
input[type="checkbox"]:checked + label::after {
	opacity: 1;
	-webkit-transform: rotate(-45deg) scale(1);
	-moz-transform: rotate(-45deg) scale(1);
	transform: rotate(-45deg) scale(1);
}

/* ボタンのスタイルを変更*/
button {
	border-radius: 0;
	
	background: -moz-linear-gradient(top, #FFF 0%, #EEE);
	background: -webkit-gradient(linear, left top, left bottom, from(#FFF), to(#EEE));
	border: 1px solid #DDD;
	color: #111;
	padding: 10px 30px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}
button:hover {
	background: -moz-linear-gradient(top, #EFEFEF 0%, #EEE);
	background: -webkit-gradient(linear, left top, left bottom, from(#EFEFEF), to(#EEE));
}

@media screen and (max-width:800px) {/*中画面 小画面*/
	input[type="text"],
	.formStyle textarea {
		width:94%;
		padding:3%;
	}
	input[type="text"].focus {
		width: 50%;
	}
	input[type="text"].focus:focus {
		width: 94%;
	}
	.formStyle button{
		width:100%;
		padding: 10px 0;
	}
}


/*PAGE TOP設定
---------------------------------------------------------------------------*/
#pagetop {
	clear: both;
	padding-top: 40px;
}
#pagetop a {
	color: #fff;		/*文字色*/
	font-size: 20px;	/*文字サイズ*/
	background: #f6a72a;	/*背景色*/
	text-decoration: none;
	text-align: center;
	display: block;
	float: right;
	width: 60px;	/*幅*/
	line-height: 60px;	/*高さ*/
	border-radius: 10px;	/*角丸のサイズ*/
	border: 3px solid #fff;	/*枠線の幅、線種、色*/
	box-shadow: 0px 5px 15px rgba(0,0,0,0.2);	/*ボックスの影*/
	margin-bottom: 20px;
}
/*マウスオン時*/
#pagetop a:hover {
	background: #fff;	/*背景色*/
	color: #f6a72a;		/*文字色*/
}


/*一覧ページのボックス右下のオプションマーク
（CMSの場合は管理ページの「オプション1」～のプルダウンと、setup.phpの「オプション選択肢」に関連します）
---------------------------------------------------------------------------*/
.option1 {
	font-size: 10px;
	color: #FFF;
	background: #F00;
	text-align: center;
	display: block;
	width: 120px;
	position: absolute;
	left: 0px;
	top: 0px;
	-webkit-transform: rotate(-45deg) translate(-35px);
	transform: rotate(-45deg) translate(-35px);
}
h2 span.option1 {
	width: auto;
	padding: 0px 5px;
	position: static;
	-webkit-transform: none;
	transform: none;
	display: inline-block;
}
.option2 {
	font-size: 10px;
	color: #FFF;
	background: #069;
	text-align: center;
	display: block;
	width: 120px;
	position: absolute;
	left: 0px;
	top: 0px;
	-webkit-transform: rotate(-45deg) translate(-35px);
	transform: rotate(-45deg) translate(-35px);
}
h2 span.option2 {
	width: auto;
	padding: 0px 5px;
	position: static;
	-webkit-transform: none;
	transform: none;
	display: inline-block;
}

/*トップページのNEWアイコン
---------------------------------------------------------------------------*/
.newicon {
	background: #F00;	/*背景色*/
	color: #FFF;		/*文字色*/
	font-size: 70%;
	line-height: 1.5;
	padding: 2px 5px;
	border-radius: 2px;
	margin: 0px 5px;
	vertical-align: text-top;
}

/*その他
---------------------------------------------------------------------------*/
.look {background: #e5e5e5;padding: 5px 10px;border-radius: 4px;}
.mb15,.mb1em {margin-bottom: 15px;}
.clear {clear: both;}
ul.disc {padding: 0em 25px 15px;list-style: disc;}
.color1, .color1 a {color: #f6a72a;}
.bg1 {background: #f6f5f2;}
.pr {font-size: 10px;}
.wl {width: 96%;}
.ws {width: 50%;}
.c {text-align: center;}
.r {text-align: right;}
.l {text-align: left;}
img.fr {float: right;margin-left: 10px;margin-bottom: 10px;}
img.fl {float: left;margin-right: 10px;margin-bottom: 10px;}
.big1 {font-size: 24px;letter-spacing: 0.2em;}
.mini1 {font-size: 11px;display: inline-block;line-height: 1.5;}
.sh {display: none;}
.circle {/*ul*/
	list-style: circle;
	padding-left: 60px;
}



/*画面幅1000px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:1000px){
/*事業内容・設備ページのグラフ
---------------------------------------------------------------------------*/
.box {
	max-width: 1000px;
}
/*棒グラフの設定*/
.graph_box{
  position: relative;
  width: 500px;
  height: 300px;
  margin: 0 auto; 
  overflow: hidden;
  background-image: url("../images/01_chart01.png");
  background-size: 72%;
  background-repeat: no-repeat;
}
.graph{
  width: 72%;
  height: 72%;
  position: absolute;
  left: 12%;
  bottom: 63px;
}
.m{
  height: 35%;
  width: calc(100% / 12);
  background: #FF8484;
  position: absolute;
  bottom: 0;
  left: 0;
  animation: up1 1s ease-in;
}
@keyframes up1{
  0%{
    height: 0;
  }
  100%{
    height: 35%;
  }
}
.tu{
  height: 39%;
  width: calc(100% / 12);
  background: #FF8484;
  position: absolute;
  bottom: 0;
  left: 18%;
  animation: up2 1s ease-in;
}
@keyframes up2{
  0%{
    height: 0;
  }
  100%{
    height: 39%;
  }
}
.w{
  height: 41%;
  width: calc(100% / 12);
  background: #FF8484;
  position: absolute;
  bottom: 0;
  left: 36%;
  animation: up3 1s ease-in;
}
@keyframes up3{ 
  0%{
    height: 0;
  }
  100%{
    height: 41%;
  }
}
.tr{
  height: 50%;
  width: calc(100% / 12);
  background: #FF8484;
  position: absolute;
  bottom: 0;
  left: 53.5%;
  animation: up4 1s ease-in;
}
@keyframes up4{
  0%{
    height: 0;
  }
  100%{
    height: 50%;
  }
}
.f{
  height: 58%;
  width: calc(100% / 12);
  background: #FF8484;
  position: absolute;
  bottom: 0;
  left: 71%;
  animation: up5 1s ease-in;
}
@keyframes up5{
  0%{
    height: 0;
  }
  100%{
    height: 58%;
  }
}
	

/*円グラフの設定*/
.box2{
  position: relative;
  width: 500px;
  height: 300px;
  margin: 0 auto; 
  overflow: hidden;
  background-image: url("../images/01_chart02.png");
  background-size: 72%;
  background-repeat: no-repeat;
}

.anime-chart {
	position: absolute;
	top: 20%;
	left: 1%;
  margin: 0 auto;
  padding: 0;
  list-style-type: none;
}

}/*以上、画面幅1000px以下の設定*/


/*画面幅800px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:800px){

/*inner共通
---------------------------------------------------------------------------*/
.inner {
	width: auto;
}

/*ヘッダー（ロゴが入った最上段のブロック）
---------------------------------------------------------------------------*/
/*ヘッダーブロック*/
header {
	border-bottom: 1px solid #dcdcdc;	/*上の線の幅、線種、色*/
}

/*ヘッダー右側の電話番号ブロック
---------------------------------------------------------------------------*/
/*ブロック全体を非表示にする*/
#contact {
	display: none;
}

/*メインメニュー
---------------------------------------------------------------------------*/
/*スマホ用メニューを非表示から表示に切り替える*/
#menubar-s {
	display: block;
}
/*メニュー１個あたりの設定*/
#menubar-s li {
	float: left;	/*左に回り込み*/
	width: 50%;		/*メニュー幅*/
}
#menubar-s li a {
	display: block;
	text-decoration: none;
	text-align: center;	/*文字をセンタリング*/
	padding: 15px 0;	/*上下、左右へのメニュー内の余白*/
	border-bottom: 1px solid #dcdcdc;	/*下線の幅、線種、色*/
	border-right: 1px solid #dcdcdc;	/*右線の幅、線種、色*/
}
/*偶数番目のメニューの右側の線を消す*/
#menubar-s li:nth-child(even) a {
	border-right: none;
}
/*PC用メニューを非表示にする*/
#menubar {
	display: none;
}

/*３本バーアイコン設定
---------------------------------------------------------------------------*/
/*３本バーブロック*/
#menubar_hdr {
	display: block;
	position: absolute;
	top: 28px;		/*上から28pxの場所に配置*/
	right: 2%;		/*右から2%の場所に配置*/
	width: 30px;	/*幅*/
	border: 1px solid #000;	/*枠線の幅、線種、色*/
	padding: 12px 10px 5px;	/*上、左右、下へのボックス内余白*/
	background: #fff;		/*背景色*/
}
/*３本のバー（1本あたり）*/
#menubar_hdr span {
	display: block;
	border-top: 3px solid #000;	/*枠線の幅、線種、色*/
	margin-bottom: 7px;			/*バー同士の余白*/
}


/*トップページ内「更新情報・お知らせ」ブロック
---------------------------------------------------------------------------*/
/*アイコン*/
section#new h2::before {
		float: right;	/*右に回り込み*/
		margin-top: 4px;
		font-size: 18px;	/*文字サイズ*/
		background: #fff;	/*背景色*/
		border-radius: 50%;	/*角丸のサイズ*/
		width: 30px;		/*幅*/
		line-height: 30px;	/*高さ*/
		text-align: center;	/*文字をセンタリング*/
		border: 1px solid #dcdcdc;	/*枠線の幅、線種、色*/
		box-shadow: 1px 1px 6px rgba(0,0,0,0.1) inset;	/*内側への影*/
}
/*プラスアイコンの文字*/
section#new h2.close::before {
		content: "＋";
}
/*マイナスアイコンの文字*/
section#new h2.open::before {
		content: "−";
}

/*その他
---------------------------------------------------------------------------*/
body.s-n .sub,body.s-n #footermenu,.m-n {display: none;}
.fl-half{float:left;width:45%;margin-left:3%;}
.sh {display:block;}
.pc {display:none;}

}/*以上、画面幅800px以下の設定*/



/*画面幅700px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:700px){

/*最下部バナーの各ブロック
---------------------------------------------------------------------------*/
/*各ボックスの設定*/
.list {
	float: none;		/*回り込みのリセット*/
	width: auto;		/*ボックス幅*/
	margin: 0 0 20px;	/*上、左右、下へのボックスの外に空けるスペース*/
}
/*ボックス内の画像*/
.list .img {
	width: 20%;		/*幅*/
	height: auto;
}
	
/*事業内容・設備ページ
----------------------------------*/
.box {
	max-width: 100%;
	max-height: 610px;
}
/*円グラフの設定*/
.box2{
  position: relative;
  width: 500px;
  height: 385px;
  margin: 0 auto; 
  overflow: hidden;
  background-image: url("../images/01_chart02.png");
  background-size: 72%;
  background-repeat: no-repeat;
}

.anime-chart {
	position: absolute;
	top: 15%;
	left: -14%;
  margin: 0 auto;
  padding: 0;
  list-style-type: none;
}

.anime-chart *,
.anime-chart::before {
  box-sizing: border-box;
}

.anime-chart {
  position: relative;
  width: 350px;
  height: 175px;
  overflow: hidden;
}

.anime-chart::before,
.anime-chart::after {
  position: absolute;
}

.anime-chart::before {
  content: '';
  width: inherit;
  height: inherit;
  border: 45px solid rgba(211, 211, 211, .3);
  border-bottom: none;
  border-top-left-radius: 175px;
  border-top-right-radius: 175px;
}

.anime-chart li {
  position: absolute;
  top: 100%;
  left: 0;
  width: inherit;
  height: inherit;
  border: 45px solid;
  border-top: none;
  border-bottom-left-radius: 175px;
  border-bottom-right-radius: 175px;
  transform-origin: 50% 0;
  transform-style: preserve-3d;
  backface-visibility: hidden;
  animation-fill-mode: forwards;
  animation-duration: .4s;
  animation-delay: 3s;
  animation-timing-function: linear;
}

.anime-chart li:nth-child(1) {
  z-index: 4;
  border-color: #00BFFF;
  animation-name: rotate-one;
}

.anime-chart li:nth-child(2) {
  z-index: 3;
  border-color: #FF7F50;
  animation-name: rotate-two;
  animation-delay: 3.4s;
}

.anime-chart li:nth-child(3) {
  z-index: 2;
  border-color: #7FFFD4;
  animation-name: rotate-three;
  animation-delay: 3.8s;
}

.anime-chart span {
  position: absolute;
  font-size: .85rem;
  backface-visibility: hidden;
  animation: fade-in .4s linear forwards;
  animation-delay: 3s;
}

.anime-chart li:nth-child(1) span {
  top: 55px;
  left: 80px;
  transform: rotate(-108deg);
}

.anime-chart li:nth-child(2) span {
  top: 15px;
  left: 5px;
  transform: rotate(-126deg);
  animation-delay: 3.4s;
}

.anime-chart li:nth-child(3) span {
  top: 10px;
  left: 20px;
  transform: rotate(-180deg);
  animation-delay: 3.8s;
}

/*float
---------------------------------------------------------------------------*/
/*画像2つ並び*/
.f_left {
	float: none;
	width: 100%;
	margin: 10px auto 15px;
}
.f_right {
	float: none;
	width: 100%;
	margin: 0px auto 15px;
}
	
/*その他
---------------------------------------------------------------------------*/
.circle {/*ul*/
	list-style: circle;
	padding-left: 40px;
}

}/*以上、画面幅700px以下の設定*/

/*画面幅481px以上の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
/*画面切り替え*/
@media screen and (min-width:481px){
	#l-screen {
		display: block;
	}
	#s-screen {
		display: none;
	}
}/*以上、画面幅481pxまでの設定*/


/*画面幅480px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:480px){
/*画面切り替え*/
	#l-screen {
		display: none;
	}
	#s-screen {
		display: block;
	}
	
/*全体の設定
---------------------------------------------------------------------------*/
body {
	font-size: 17px;	/*文字サイズ*/
	line-height: 1.5;	/*行間*/
}

/*ヘッダー（ロゴが入った最上段のブロック）
---------------------------------------------------------------------------*/
/*ロゴ画像*/
header #logo {
	width: 200px;	/*ロゴ画像の幅*/
	margin-top: 20px; /*ロゴの上にあける余白*/
}

/*コンテンツ
---------------------------------------------------------------------------*/
.contents {
	padding: 20px 0;	/*上下、左右に空けるボックス内の余白*/
}
/*コンテンツのh2タグの設定*/
.contents h2 {
	font-size: 20px;	/*文字サイズ*/
	padding: 5px 10px;	/*上下、左右への余白*/
}
/*コンテンツの段落タグ設定*/
.contents p {
	padding: 0px 10px;	/*上下、左右の余白*/
}
	
/*内職者求人ページのフローチャート
---------------------------------------------------------------------------*/
#flowchart {
	max-width: 380px;
	height: auto;
	display: block;
	margin: 40px auto;
}
.fl_icon {
	position: relative;
	width: 84px;
	height: 84px;
	margin-top: -5px;
	float: left;
	background-image: url("../images/04_enkaku.png");
	background-repeat: no-repeat;
}
.fl_no {
	position: absolute;
	left: 15%;
	bottom: 10%;
	font-size: 30px;
	color: #fff;
}
.fl_no span {
	position: absolute;
	left: 25%;
	bottom: 50%;
	font-size: 12px;
	color: #fff;
}
.fl_line_box01 {/*テキスト*/
	max-width: 300px;
    height: auto;	/*ボーダー長さ調節*/
	margin: -5px 0px 0px 42px !important;
	padding: 5px 15px 10px 25px !important;
	border-left:solid 5px #FDCB78;
	float: left;
	font-size: 15px;
}
.fl_line_box01 span {/*テキスト*/
	font-size: 22px;
	font-weight: bold;
	color: coral;
}


/*最下部バナーの各ブロック
---------------------------------------------------------------------------*/
/*各ボックスの設定*/
.list {
	margin: 0;
	box-shadow: none !important;
	border: none;
	border-bottom: 1px solid #dcdcdc;	/*下線の幅、線種、色*/
}
/*１つ目のメニュー*/
.list:first-of-type {
	border-top: 1px solid #dcdcdc;
}
/*リンクを貼った際に出る「→」マーク*/
.list a::before {
	right: 0px;	/*ボックスの右から0pxの場所に配置*/
	width: 20px;	/*幅*/
	line-height: 20px;	/*高さ*/
}
/*ボックス内のp(段落)タグ設定*/
.list a p {
	padding-right: 40px !important;
}
	
/*
問合せフォーム
---------------------------------------------------------------------------*/
.formStyle{
	max-width:380px;
	margin:auto;
}

/*フッターメニュー
---------------------------------------------------------------------------*/
/*ボックス全体*/
#footermenu {
	display: none;
}

/*テーブル
---------------------------------------------------------------------------*/
/*ta1設定　会社概要ページ*/
/*テーブル内の左側*/
.ta1 th {
	width: 100px;
	padding: 5px;
}
/*テーブル内の右側*/
.ta1 td {
	width: auto;
	padding: 5px;
}
.ta1 th.bg_b {/*会社概要の左側*/
	width: 90px;
	padding: 5px;
}
/*右側ボックス２行の場合*/
.ta1 th.sub {
	width: 100px;
	padding: 5px;
}
	
/*-------*/
/*ta2設定　製品紹介ページ*/
.ta2 th.tamidashi,.ta2 td.tamidashi {
	font-size: 80%;
}
.ta2 th {
	width: 110px;
	padding: 0;
}
/*テーブル内の右側*/
.ta2 td {
	width: auto;
	padding: 5px;
}

/*その他
---------------------------------------------------------------------------*/
.ws,.wl {width: 94%;}
img.fr,img.fl {float: none;margin: 0;width: 100%;}
.fl-half{float:none;width:100%;margin-left:0;}

}/*以上、画面幅480px以下の設定*/



/*=================凡庸=======================*/
.bg_yellow {
	background-color: lemonchiffon;
}

/*フォントカラー
---------------------------------------------------------------------------*/
.f_red {
	color: #c1272d;
}

/*スペース
---------------------------------------------------------------------------*/
.mt-5 {
	margin-top: -5px !important;
}
.mt0 {
	margin-top: 0px !important;
}
.mt5 {
	margin-top: 5px !important;
}
.mt10 {
	margin-top: 10px !important;
}
.mt15 {
	margin-top: 15px !important;
}
.mt20 {
	margin-top: 20px !important;
}
.mt25 {
	margin-top: 25px !important;
}
.mt30 {
	margin-top: 30px !important;
}
.mt35 {
	margin-top: 35px !important;
}
.mt40 {
	margin-top: 40px !important;
}
.mt45 {
	margin-top: 45px !important;
}
.mt50 {
	margin-top: 50px !important;
}
.mt55 {
	margin-top: 55px !important;
}
.mt60 {
	margin-top: 60px !important;
}
.mt65 {
	margin-top: 65px !important;
}
.mt70 {
	margin-top: 70px !important;
}
.mt80 {
	margin-top: 80px !important;
}


.mr0 {
	margin-right: 0 !important;
}
.mr5 {
	margin-right: 5px !important;
}
.mr10 {
	margin-right: 10px !important;
}
.mr15 {
	margin-right: 15px !important;
}
.mr20 {
	margin-right: 20px !important;
}
.mr23p {
	margin-right: 23% !important;
}

.ml0 {
	margin-left: 0 !important;
}
.ml5 {
	margin-left: 5px !important;
}
.ml10 {
	margin-left: 10px !important;
}
.ml15 {
	margin-left: 15px !important;
}
.ml20 {
	margin-left: 20px !important;
}

.pb10 {
	padding-bottom: 10px !important;
}
.mb0 {
	margin-bottom: 0 !important;
}
.mb5 {
	margin-bottom: 5px !important;
}
.mb10 {
	margin-bottom: 10px !important;
}
.mb15 {
	margin-bottom: 15px !important;
}
.mb20 {
	margin-bottom: 20px !important;
}	
.mb25 {
	margin-bottom: 25px !important;
}
.mb30 {
	margin-bottom: 30px !important;
}
.mb35 {
	margin-bottom: 35px !important;
}
.mb40 {
	margin-bottom: 40px !important;
}
