@charset "utf-8";


/*================================================
 *  タブレット向けデザイン
 ================================================*/
/* スクロールバーを考慮して20px大きいサイズで切り替え */
@media screen and (max-width:979px) {
	

}

/*================================================
 *  スマートフォン向けデザイン
 ================================================*/
@media screen and (max-width:767px) {

body{
	min-width:inherit;
	width:100%;
	}
/*共通ラップ*/
.Wrap{
	width:100%;
	padding-left:10px;
	padding-right:10px;
	
}
/*一般用メニューボックス*/
nav.GeneralPc{
	display:none;
}

nav.GeneralSp{
	display:block;
	width:100%;
	margin:0 auto;
	font-size:0.94em;
	padding-left:10px;
	padding-right:10px;
	padding-top:10px;
	position: fixed; /* ウィンドウを基準に画面に固定 */
    top: 0; /* 上下の固定位置を上から0pxにする */
    left: 0; /* 左右の固定位置を左から0pxにする */
	z-index:100;
	padding-bottom:20px;
	background-color:#FFF;
}
.ValorSp{
	width:48%;
	float:left;
}
.MenuSp{
	float:left;
	width:25%;
	margin-left:2%;
	margin-top:15px;
}
.MenuSp a{
	display:block;
	width:100%;
	height:30px;
	background-color:#CC0001;
	color:#FFF;
	border-radius:15px;
	line-height:29px;
	text-align:center;
	}
.MenuOpenBt{
	float:left;
	width:10%;
	margin-left:2%;
}
.GnavSP{
	display:none;
	clear:both;
	margin-top:4px;
	padding-top:0;
	padding-bottom:0;
}
.BackW{
	background:url(../img-common/menu-back.png) top left repeat;
}


.ToMemberBt440R{
	width:60%;
	margin:300px auto;

}
.ToMemberBt440R a{

	width:100%;
}

.ToMemberBt440{
	width:60%;
	height:80px;
}
.ToMemberBt440 a{
	display:block;
	height:80px;
}

/*コンテンツ-リード*/
h2{
	text-align:center;
}
p.TopLead{
	width:100%;
	margin:25px auto;
}
/*グレー地メニュー*/
.TopLineMenu{
	width:100%;
	margin-left:0;
	margin-top:20px;
	margin-bottom:20px;
}
.TopLineMenuInnA{
	width:48%;
	float:left;
	margin-left:0;
	height:310px;
	position:relative;
	margin-top:20px;
}
.TopLineMenuInnB{
	width:48%;
	float:left;
	margin-left:4%;
	height:310px;
	position:relative;
	margin-top:20px;
}
.TopLineMenuInnC{
	width:48%;
	float:left;
	margin-left:0;
	height:310px;
	position:relative;
	margin-top:20px;
}
.TopLineMenuInnD{
	width:48%;
	float:left;
	margin-left:4%;
	height:310px;
	position:relative;
	margin-top:20px;
}

.MenuInnPhoto{
	width:100%;
	height:auto;
	overflow:hidden;
}
h3{
	text-align:center;
	font-size:1.2em;
	font-weight:bold;
	color:#CC0001;
	margin:15px 0;
}

p.MenuInn{
	width:100%;
	margin:15px auto;
}

.MenuInnBt{
	width:100%;
	height:50px;
	margin:0 auto;
	position:absolute;
	bottom:0;
}
.MenuInnBt a{
	display:block;
	width:100%;
	height:50px;
	color:#CC0001;
	border:1px #CC0001 solid;
	line-height:50px;
	text-align:center;
	background-color:#FFF;
}

/*ニュース*/
ul.TopNews{
	width:100%;
	padding-top:20px;
	padding-bottom:20px;
	font-size:1.1em;
}

span.Date{
	display:block;
	width:100%;
	float:left;
}
span.New{
	display:block;
	width:10%;
	margin-right:2%;
}
span.NewContent{
	display:block;
	width:87%;
}
/*フッターメニューボックス*/
nav.FooterA{
	padding-top:40px;
}
ul.MenuFooterA{
	width:90%;
	text-align:center;
	margin:0 auto
}
ul.MenuFooterA li{
	display:block;
	float:left;
	width:50%;
	margin-top:10px;
}

ul.MenuFooterA li:nth-child(3){
	border-left:1px #FFF solid;
}

nav.FooterB{
	width:100%;
}
ul.MenuFooterB{
	width:80%;
	margin:30px auto;
}
ul.MenuFooterB li{
	width:45%;
	float:left;
	margin-left:10%;
}

.FooterAddress{
	width:75%;
	margin:30px auto;
	text-align:center;
}

.FooterAddressLeft{
	width:25%;
	float:none;
	margin:0 auto;
}
.FooterAddressRight{
	width:100%;
	float:none;
	margin-left:0;
	color:#FFF;
	margin-top:10px;
}
p.CopyR{
	margin:30px 0;
}

/*ハンバーガーメニュー*/
.header__hamburger {
  width: 48px;
  height: 100%;
  margin-left:2.0%;
  margin-top:15px;

}

.hamburger {
  background-color: transparent;
  border-color: transparent;
  z-index: 9999;
}

/* ハンバーガーメニューの線 */
.hamburger span {
  width: 100%;
  height: 3px;
  background-color: #cc0001;
  position: relative;
  transition: ease .4s;
  display: block;
}

.hamburger span:nth-child(1) {
  top: 0;
}

.hamburger span:nth-child(2) {
  margin: 8px 0;
}

.hamburger span:nth-child(3) {
  top: 0;
}

/* ハンバーガーメニュークリック後のスタイル */
.header__nav.active {
  transform: translateX(0);
}

.hamburger.active span:nth-child(1) {
  top: 8px;
  transform: rotate(45deg);
}

.hamburger.active span:nth-child(2) {
  opacity: 0;

}

.hamburger.active span:nth-child(3) {
  top: -15px;
  transform: rotate(-45deg);
}

.toInqSp{
	width:30%;
	height:20px;
	margin:5px auto;

}
.toInqSp a{
	display:block;
	width:100%;
	height:30px;
	background-color:#CC0001;
	color:#FFF;
	border-radius:15px;
	line-height:28px;
	text-align:center;
	font-size:1.1em;

}

ul.MenuSpLine{
	width:100%;
	margin:0;
	padding:0;
}
ul.MenuSpLine li{
	width:50%;
	float:left;
	margin:0;
	padding:8px 0;
	text-align:center;
}
ul.MenuSpLine li a{
	display:block;
	width:70%;
	height:30px;
	background-color:#FFF;
	color:#CC0001;
	border:1px #CC0001 solid;
	border-radius:15px;
	line-height:29px;
	margin:0 auto;
	font-size:1.1em;
	
}
/*ページのトップへ戻るボタン*/
#js-pagetop {
  position: fixed;
  width:56px;
  height:56px;
  font-size:0.9rem;
  bottom: 20px;
  right: 20px;

}

#js-pagetop span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  width: 100%;
  text-align: center;
  font-size: 14px;
}

/*労働組合用語集----------------------------------
*/

ul.YougoNav{
	width:100%;
	margin:20px auto;
}
ul.YougoNav li{
	float:left;
	width:20%;
	margin-top:8px;
}
ul.YougoNav li:first-child{
	border-left:1px #e6e6e6 solid;
}
ul.YougoNav li:nth-child(6){
	border-left:1px #e6e6e6 solid;
}
ul.YougoNav li a{
	height:40px;
	line-height:40px;
}
h2.TermName{
	padding:8px 0 6px 10px;
}

/*労働 HOT NEWS---------------------------------------
*/

h2.Month{
	width:30%;
	margin:0 auto
}


.tab{
  max-width: 100%;
  margin: 0 auto;
}

.tab-list{
  display: flex;
}

.tab-list-item{
  width: 25%;
  text-align: center;
  padding: 8px 0;
  cursor: pointer;
  border-right:1px #DDD solid;
  border-top:1px #DDD solid;
  border-bottom:1px #DDD solid;
  border-left:none;
  border-radius:8px 8px 0 0 ;
}
.tab-list button:first-child{
	border-left:1px #DDD solid;
}
.tab-contents{
  background-color:#FFF;
  display: none;
  padding: 20px 20px;
  border-left:1px #DDD solid;
  border-right:1px #DDD solid;
   border-bottom:1px #DDD solid;
}

.is-btn-active{
  background-color:#FFF;
  font-weight: bold;
  border-bottom:none;
}

.is-contents-active{
  display: block;
}

/*個々の記事*/

h3.EachLead::before{/* 閉じている時 */
	content: "+";
	position: absolute;
	right: 10px;
	bottom:0px;
	bottom:5px;
	font-size:0.8em;
}
h3.EachLead.active::before{/* 開いている時 */
	content: "－";
}
.BackHotTop{
	width:50%;
	margin:0 auto;
}
.BackHotTop a{
	display:block;
	width:100%;
}
/*ユニオン関連リンク---------------------------------------
*/

.AnotherBox{
	width:100%;
	padding:10px;
	background-size:60%;
	padding-bottom:100px;
}

ul.LinkAnother{
	width:95%;
	padding:10px;
}
ul.LinkAnother li{
	margin:10px 0;
}

ul.LinkAnother li a::before{
	 content: "●";
    color:#FFCC00;
	font-size:2.8em;
	margin-right:-10px;
	vertical-align :-10px;	
}
/*サイトマップ---------------------------------------
*/

.AnotherBox2{
	width:100%;
	padding:10px;
	margin:20px auto;
}
ul.MapList{
	margin:10px auto;
}

li.CaMain{
	width:90%;
}
li.CaMember{
	width:90%;
}
li.CaForm{
	width:90%;
}
li.CaMain::after,
li.CaMember::after,
li.CaForm::after{
width: 8%;
  height: 20px;
  margin-left:10px;
  background-repeat:no-repeat;
}

li.CaNext{
	float:none;
	width:90%;
}
li.CaNext::after{
	content:"";
	display: inline-block;
width: 8%;
  height: 10px;
}
li.CaNext2{
	float:none;
	width:90%;
}
li.CaNext2::after{
width: 8%;
  height: 10px;
}

li.CaNext2L{
	float:none;
	width:100%;
}
li.CaNext2L::after{
	content:"";
	display: inline-block;
width: 8%;
  height: 10px;

}
li.CaNext3{
	float:none;
	width:90%;
	margin-left:20px;
}
li.CaNext3::after{
width: 4%;
  height: 6px;
}
li.CaNextOut{
	float:none;
	width:90%;
}
li.CaNextOut::after{
width: 8%;
  height: 16px;
}

/*-------*/
hr.Hight25sp90{
	border:none;
	height:90px;
	background-color:none;
}

hr.Hight100{
	border:none;
	height:60px;
	background-color:none;
}
hr.Hight60{
	border:none;
	height:30px;
	background-color:none;
}


}