@charset "UTF-8";
.rslides,
.rslides2,
.rslides3 {
	display:none;
}
.rslides4 {
	display: block;
}

.main_box {
	width: 100%;
  height: 500%;
  position: relative;
padding: 55px 0 0 0; 
}
.main_box img {
	width: 100%;
  object-fit: cover;
	object-position: 0px 0px;
}
main {
	margin: 0;
	 }
figure {
  margin: 0;
  padding: 0;
  background: #fff;
  overflow: hidden;
  cursor: pointer;
}
figure img {
  width: 100%;
}
.shine figure {
  position: relative;
}
.shine figure::before {
  content: '';
  position: absolute;
  top: 0;
  left: -75%;
  z-index: 2;
  display: block;
  width: 50%;
  height: 100%;
  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.1) 100%);
  transform: skewX(-25deg);
}
.shine figure:hover::before {
  animation: shine .75s;
}
@keyframes shine {
  100% {
    left: 125%;
  }
}
figure img {
  transform: scale(1);
  transition: .3s ease-in-out;
	-webkit-transition: 0.5s;
  -moz-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
  text-decoration: none;
}
figure:hover img {
  transform: scale(1.1);
	filter: alpha(opacity=60);
  -moz-opacity:0.60;
  opacity:0.60;
}
/*	 news
/* ------------------------------------- */
.news {
  margin: 5%;
}
.news h4 {
  font-size: 200%;
font-weight: bold;
	margin: 0 0 5px 0;
}
.tabs {
  margin: 0;
}
/*タブのスタイル*/
.tab_item {
  display: inline-block;
  float: left;
	font-size: 67%;
	font-weight: bold;
	color: #888;
	margin: 0px 10px 0 0;
  transition: all 0.2s ease;
}
.tab_item:hover {
  opacity: 0.75;
}
/*ラジオボタンを全て消す*/
input[name="tab_item"] {
  display: none;
}
/*タブ切り替えの中身のスタイル*/
.tab_content {
  display: none;
  padding: 40px 0 0 0;
  clear: both;
  overflow: hidden;
}
/*選択されているタブのコンテンツのみを表示*/
#all:checked ~ #all_content,
#outline:checked ~ #outline_content,
#item:checked ~ #item_content,
#sus:checked ~ #sus_content,
#other:checked ~ #other_content {
  display: block;
}
.tab_content_description {
	width: 100%;
}
/*選択されているタブのスタイルを変える*/
.tabs input:checked + .tab_item {
	border-bottom: 1px solid #000;
	color: #000;
}
.btn_box {
	margin: 10px 0 0 0;
	width: 130px;
	float: right;
}
.btn_box2 {
	margin: 20px 0 0 0;
	width: 200px;
}
.btn {
  color: #FFF;
  font-size: 14px;
  text-align: center;
  line-height: 35px;
  width: 130px;
  height: 35px;
  background: #000;
  margin: auto;
  position: relative;
  display: block;
  overflow: hidden;
  transition: 0.5s;
  text-decoration: none;
	transition: 0.3s;
}
.btn2 {
  color: #000 !important;
  font-size: 14px;
  line-height: 35px;
  width: 200px;
  height: 35px;
  background: #FFF;
  margin: auto;
  position: relative;
  display: block;
  overflow: hidden;
  transition: 0.5s;
  text-decoration: none;
	transition: 0.3s;
	padding: 0 0 0 20px;

}
.btn:after,
.btn2:after {
  font-family: "FontAwesome";
  content: "\f105";
  position: absolute;
	font-size: 20px;
  right: 30px;
  transition: all 0.2s;
}
.btn:hover:after,
.btn2:hover:after {
  right: 25px;
}
.btn:hover,
.btn2:hover {
 opacity: 0.5;
}


/*	 pickup
/* ------------------------------------- */
.pickup {
  width: 100%;
background: url(../img/top/pickup.jpg) no-repeat;
	background-size: 300%;
	box-sizing: border-box;
	padding: 5%;
}
.pickup h4 {
  font-size: 200%;
font-weight: bold;
	margin: 0 0 5px 0;
	color: #FFF;
}
.pi {
	width: 100%;
	height: 430px;
	background: #FFF;
	box-sizing: border-box;
	padding: 20px;
	display:block; 
 position:relative;
 text-decoration:none;
 overflow:hidden;
}
.pi img {
	width: 100%;
}
.pt {
	width: 100%;
}
.pt h5 {
	font-size: 100%;
	padding: 10px 0 7px 0;
}
.pt p {
	font-size: 80%;
	word-break: break-all;
}
.pm {
	text-align: right;
	display: block;
}
.pickup a {
	color: #000;
}
.pickup a:hover {
  filter: alpha(opacity=80);
  -moz-opacity:0.80;
  opacity:0.80;
}



/*	 service
/* ------------------------------------- */
.service {
	width: 100%;
	background: url(../img/top/service.jpg) no-repeat bottom;
	background-size: 370%;
	padding: 5%;
}
.service h4 {
  font-size: 200%;
font-weight: bold;
	margin: 0 0 5px 0;
}


/*	 banner
/* ------------------------------------- */
.banner,
.banner2,
.banner3 {
width: 100%;
	float: left;
}
.banner a,
.banner2 a,
.banner3 a {
text-decoration: none;
color: #fff;
}
.banner01,
.banner02,
.banner03,
.banner04 {
position: relative;
overflow: hidden;
width: 100%;
	margin: 1px 0 0 0;
}
.banner01::before,
.banner02::before,
.banner03::before,
.banner04::before {
  content: "";
  display: block;
}
.banner01:after {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0)),url(../img/top/banner01.jpg)no-repeat center center;
}
.banner02:after {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0)),url(../img/top/banner02.jpg)no-repeat center center;
}
.banner03:after {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0)),url(../img/top/banner03.jpg)no-repeat center center;
}
.banner04:after {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0)),url(../img/top/banner04.jpg)no-repeat center top;
}
.banner01:after,
.banner02:after,
.banner03:after,
.banner04:after {
	background-size: 100%;
position: absolute;
content: "";
display: block;
width: 100%;
height: 100%;
top: 0;
-webkit-background-size: cover;
-moz-background-size: cover;
-ms-background-size: cover;
background-size: cover;
-webkit-transition: all .3s ease-out;
-moz-transition: all .3s ease-out;
-ms-transition: all .3s ease-out;
transition: all .3s ease-out;
}
.banner01:hover:after,
.banner02:hover:after,
.banner03:hover:after,
.banner04:hover:after {
-moz-transform: scale(1.1);
-webkit-transform: scale(1.1);
-ms-transform: scale(1.1);
transform: scale(1.1);
}
.banner_box {
	padding: 30px 20px 40px 20px;
	position: relative;
overflow: hidden;
align-items: center;
z-index: 1;
height: 100%;
	width: 100%;
	display: block;
}
.banner01 h4,
.banner02 h4,
.banner03 h4,
.banner04 h4 {
	font-size: 200%;
	font-weight: bold;
}
.banner01 p,
.banner02 p,
.banner03 p,
.banner04 p {
font-size: 70%;
	line-height: 1;
	z-index: 3;
}

/* ------------------------------------- */
/*	 resposive390
/* ------------------------------------- */
@media screen and (min-width: 390px) {

.pi {
	height: 480px;
}	
	}
/* ------------------------------------- */
/*	 resposive768
/* ------------------------------------- */
@media screen and (min-width: 768px) {
.rslides,
.rslides3,
.rslides4{
	display: none;
}
.rslides2 {
	display:block;
}
.main_box {
	width: 100%;
  height: 100vh;
  position: relative;
padding: 55px 0 0 0; 
}	
/*	 news
/* ------------------------------------- */
.news {
  margin: 4%;
}
.news h4 {
	float: left;
	margin: 0 30px 0 0;
}
.tabs {
  margin: 0;
	float: left;
}
/*タブのスタイル*/
.tab_item {
  display: block;
  float: left;
	font-size: 80%;
	font-weight: bold;
	color: #888;
	margin: 20px 15px 0 0;
  transition: all 0.2s ease;
}
#all:checked ~ #all_content,
#outline:checked ~ #outline_content,
#item:checked ~ #item_content,
#sus:checked ~ #sus_content,
#other:checked ~ #other_content {
  width: 100%;
}

/*	 pickup
/* ------------------------------------- */
.pickup {	
	background-size: 100%;
	padding: 4% 0;
}
.pickup h4 {
	margin: 0 0 20px 4%;
}
.pi {
	height: 230px;
}
.pi img {
	width: 40%;
	float: left;
}
.pt {
	width: 60%;
	float: left;
}
.pt h5 {
	font-size: 100%;
	margin: 0 0 0 20px;
	padding: 0 0 5px 0;
}
.pt p {
	font-size: 80%;
	margin: 0 0 0 20px;
}	
	
/*	 service
/* ------------------------------------- */
.service {	
	background-size: 100%;
	padding: 4%;
}
.service h4 {
font-weight: bold;
	margin: 0 0 5px 0;
}

/*	 banner
/* ------------------------------------- */
.banner2 {
width: 50%;
	float: left;
}
.banner3 {
width: 50%;
	float: left;
	border-left: 1px solid #FFF;
	box-sizing: border-box;
}
.banner_box {
	padding: 30px 30px 45px 30px;
}
}
/* ------------------------------------- */
/*	 resposive820
/* ------------------------------------- */
@media screen and (min-width: 820px) {
.rslides {
	display: block;
}
.rslides2,
.rslides3,
.rslides4{
	display: none;
}

.main_box {
	width: 100%;
  height: auto;
  position: static;
}
.main_box img {
	width: 100%;
  height: auto;
  object-fit: unset;
	object-position: 0px 0px;
}	
.pi {
	height: 240px;
}
}
/* ------------------------------------- */
/*	 resposive1200
/* ------------------------------------- */
@media screen and (min-width: 1200px) {

.main_box {
		padding: 75px 0 0 0;
}
/*	 news
/* ------------------------------------- */
#all:checked ~ #all_content,
#outline:checked ~ #outline_content,
#item:checked ~ #item_content,
#sus:checked ~ #sus_content,
#other:checked ~ #other_content {
  width: 1200px;
}
.news {
  margin: 4% auto;
	width: 1200px;
}

/*タブのスタイル*/
.tab_item {
	margin: 30px 15px 0 0;
}
.pickup h4 {
font-weight: bold;
	margin: 0 auto 20px auto;
	width: 1200px;
}
.news h4,
.pickup h4, 
.service h4	{
  font-size: 250%;
	}
	
/*	 service
/* ------------------------------------- */
.service {	
	padding: 4% 0%;
}
.service_box {	
	margin: 0 auto;
	width: 1200px;
}	
.service h4 {
font-weight: bold;
	margin: 0 0 5px 0;
}
	
.pi {
	height: auto;
}	
	
/*	 banner
/* ------------------------------------- */	
.banner_box {
	padding: 50px 50px 70px 50px;
}	
}
