@charset "UTF-8";
/* CSS Document */

/* ---------------------------------------------------------
#main
----------------------------------------------------------*/
#main {
	position: relative;
	width: 100%;
	height: 250px;
	text-align: center;
	color: #fff;
	background: url(../img/main.jpg) no-repeat center;
	background-size: cover;
}
h1 {
	width: 100%;
	font-size: 38px;
	letter-spacing: 1px;
	padding-top: 79px;
}
#main p {
	font-size: 16px;
	letter-spacing: 1px;
	padding-top: 38px;
}

/* ---------------------------------------------------------
.tab
----------------------------------------------------------*/
.tab {
	margin: 60px 0 50px;
}
.tab.tab-bottom {
	margin: 0 0 120px;
	padding: 30px 0 0;
}
.tab ul {
	display: -webkit-flex; /* Safari */
	display: flex;
	-webkit-justify-content: space-between; /* Safari */
	justify-content: space-between;
	width: 980px;
	letter-spacing: 1px;
	list-style: none;
	margin: 0 auto;
}
.tab li {
	position: relative;
	width: 246px;
	display: block;
	font-size: 16px;
	color: #e6132d;
	text-align: center;
	border: 3px solid #e6132d;
	border-right: none;
	box-sizing: border-box;
	padding: 22px 0;
	cursor: pointer;
}
.tab li:after {
	position: absolute;
	bottom: -13px;
	left: 50%;
	content: '';
	display: block;
	width: 22px;
	height: 11px;
	background: url(../img/icon_tri.png) no-repeat;
	background-size: cover;
	margin-left: -11px;
	opacity: 0;
}
.tab.tab-bottom li:after {
	bottom: inherit;
	top: -13px;
	transform: rotateZ( 180deg );
}
.tab li.cr:after,
.tab li:hover:after {
	opacity: 1;
}
.tab li.cr,
.tab li:hover {
	color: #fff;
	background-color: #e6132d;
	text-decoration: none;
}
.tab li:last-child {
	border-right: 3px solid #e6132d;
}

/* ---------------------------------------------------------
.box
----------------------------------------------------------*/
.box {
	display: -webkit-flex; /* Safari */
	display: flex;
	-webkit-justify-content: space-between; /* Safari */
	justify-content: space-between;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap: wrap;
	width: 980px;
	margin: 0 auto;
}
.box .pic img {
	width: 215px;
	height: auto;
}
.box a:hover .pic img {
	opacity: .7;
}
.box .block {
	width: 215px;
}
.box p {
	font-size: 16px;
	line-height: 1.5;
	letter-spacing: 1px;
	padding: 15px 0 55px;
}
.box:before{
  content: "";
  display: block;
  width: 215px;
  order: 1;
}
.box:after{
  content: "";
  display: block;
  width: 215px;
}

/* ---------------------------------------------------------
#recommend
----------------------------------------------------------*/
#recommend {
	width: 100%;
	background-color: #f5f5f5;
	padding-bottom: 80px;
}
#recommend h2 {
	font-family: 'Open Sans',sans-serif;
	font-weight: 700;
	font-size: 40px;
	color: #e6132d;
	text-align: center;
	padding: 75px 0 35px;
}
#recommend .wrapper {
	display: -webkit-flex; /* Safari */
	display: flex;
	-webkit-justify-content: space-between; /* Safari */
	justify-content: space-between;
	width: 980px;
	margin: 0 auto;
}
#recommend .wrapper .block {
	width: 470px;
	background-color: #fff;
}
#recommend .wrapper .pic img {
	width: 470px;
	height: auto;
}
#recommend .wrapper a {
	color: #e6132d;	
}
#recommend .wrapper a p {
	font-size: 18px;
	font-weight: 500;
	color: #e6132d;
	background: url(../../common/img/icon_arrow_red.png) no-repeat left center;
	background-size: 9px auto;
}
#recommend .wrapper .block p {
	padding: 30px 30px 30px 19px;
	margin-left: 30px;
}


@media screen and (max-width:750px) {  
  
/* ---------------------------------------------------------
#main sp
----------------------------------------------------------*/
#main {
	height: 37vw;
	background: url(../img/main_sp.jpg) no-repeat center;
	background-size: cover;
}
h1 {
	font-size: 23px;
	padding-top: 9vw;
}
#main p {
  font-size: 13px;
	font-weight: normal;
	line-height: 1.5;
	padding-top: 5vw;
}

/* ---------------------------------------------------------
.tab
----------------------------------------------------------*/
.tab {
	margin: 8vw 0 7.3vw;
}
.tab.tab-bottom {
	margin: 0 0 21.3vw;
	padding: 30px 0 0;
}
.tab ul {
	width: 100%;
}
.tab li {
	display: -webkit-flex; /* Safari */
	display: flex;
	-webkit-justify-content: center; /* Safari */
	justify-content: center;
	-webkit-align-items: center; /* Safari */
	align-items: center;
	width: 25%;
	font-size: 15px;
	padding: 20px 0;
}
.tab li:after {
	position: absolute;
	bottom: -10px;
	left: 50%;
	content: '';
	display: block;
	width: 15px;
	height: 7px;
	background: url(../img/icon_tri.png) no-repeat;
	background-size: cover;
	margin-left: -7px;
	opacity: 0;
}
.tab.tab-bottom li:after {
	bottom: inherit;
	top: -10px;
	transform: rotateZ( 180deg );
}
.tab li.cr:after,
.tab li:hover:after {
	opacity: 1;
}
.tab li.cr,
.tab li:hover {
	color: #fff;
	background-color: #e6132d;
	text-decoration: none;
}
.tab li:first-child {
	border-left: none;
}
.tab li:last-child {
	border-right: none;
}

/* ---------------------------------------------------------
.box
----------------------------------------------------------*/
.box {
	width: 100%;
	padding: 0 3.9vw;
	box-sizing: border-box;
	margin: 0 auto;
}
.box .pic img {
	width: 43.3vw;
	height: auto;
}
.box a:hover .pic img {
	opacity: .7;
}
.box .block {
	width: 43.3vw;
}
.box p {
	font-size: 15px;
	line-height: 1.5;
	padding: 11px 0 25px;
}
.box:before{
	width: 43.3vw;
}
.box:after{
	width: 43.3vw;
}

/* ---------------------------------------------------------
#recommend
----------------------------------------------------------*/
#recommend {
	padding: 0 4vw 8vw;
	box-sizing: border-box;
}
#recommend h2 {
	font-size: 24px;
	padding: 16vw 0 7.6vw;
}
#recommend .wrapper {
	display: block;
	width: 100%;
}
#recommend .wrapper .block {
	width: 100%;
	margin-bottom: 4vw;
}
#recommend .wrapper .pic img {
	width: 100%;
	height: auto;
}
#recommend .wrapper a p {
	font-size: 15px;
	background: url(../../common/img/icon_arrow_red.png) no-repeat left center;
	background-size: 6px auto;
}
#recommend .wrapper .block p {
	padding: 22px 20px 22px 16px;
	margin-left: 20px;
}

}

@media screen and (max-width:640px) {
#main {
	height: auto;
	padding: 0 20px;
	box-sizing: border-box;
}
#main p {
	padding-bottom: 9vw;
}

}

@media screen and (max-width:320px) {
#main .sp {
  display: none;
  }

}
