@charset "utf-8";
/* CSS Document */
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

font

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
[class*="flex-box"] {
	display:-webkit-box;
	display:-moz-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:flex;
	-webkit-box-direction:normal;
	-moz-box-direction:normal;
	box-direction:normal;
	-webkit-box-orient:horizontal;
	-moz-box-orient:horizontal;
	box-orient:horizontal;
	-ms-flex-direction:row;
	-webkit-flex-direction:row;
	-moz-flex-direction:row;
	flex-direction:row;
	-moz-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	box-sizing: border-box;
	}
#contents_main h4 { }
#contents_main h4 span.new { margin-right: 0.5em;}
#contents_main h4::after { clear: both; content: "";}
#contents_main h4 span.btn {
	display: inline-block;
	margin: 0 0 0 15px;
	width: auto;
	}
#contents_main h4 span.btn a {
	background: #d61518;
	background: -webkit-gradient(linear, left top, left bottom, from(#d61518), to(#be1b1c));
	border-radius: 3px;
	border-bottom: 2px solid #900;
	border-right: 1px solid #900;
	color: #fff !important;
	font-size: 12px;
	padding: 0.2em 0.8em;
	}
#contents_main h4 span.btn a:hover { text-decoration: none;}
#contents_main h4 span.btn a i {
	bottom: auto;
	margin-right: 5px;
	position: relative;
	right: auto;
	top: auto;
	}
/* :::::::::::::::::::::::::::::::::::::::::::::::::::::
768px Breakpoint
::::::::::::::::::::::::::::::::::::::::::::::::::::: */
@media screen and (min-width: 768px) {
#contents_main h4 { display: flex;}
#contents_main h4 span.new { display: table; margin-right: 0.5em;}
#contents_main h4 img.right { margin-left: auto; order: 1;}
#contents_main h4 span.btn { display: block; margin: 0 0 0 15px; margin-left: auto;}
#contents_main h4 span.btn a { font-size: 13px; padding: 0.3em 1.0em;}
}



/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

ベース

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
#contents_main ul.row + ul.row { margin-top: 2.0em;}
#contents_main .row [class*="count"] {}
#contents_main .row [class*="count"] + [class*="count"] { margin-top: 1.0em}
#contents_main .row [class*="count"]::before {
	background-color: #a0a0a0;
	border-radius: 2px;
	color: #fff;
	display: block;
	font-size: 13px;
	line-height: 1.0em;
	max-width: 3.0em;
	padding: 0.2em 0;
	text-align: center;
	width: auto;
	}
#contents_main .row .count1::before { content: "1";}
#contents_main .row .count2::before { content: "2";}
#contents_main .row .count3::before { content: "3";}
#contents_main .row .count4::before { content: "4";}
#contents_main .row .count5::before { content: "5";}

.row img { height: auto; width: auto;}

#contents_area { padding: 2.0em 0;}
#contents_area #contents_main div.right { display: table; margin: 0 auto 15px auto;}
/* :::::::::::::::::::::::::::::::::::::::::::::::::::::
768px Breakpoint
::::::::::::::::::::::::::::::::::::::::::::::::::::: */
@media screen and (max-width: 768px) {
#contents_main ul.row + ul.row { margin-top: 3.0em;}
}
/* :::::::::::::::::::::::::::::::::::::::::::::::::::::
468px Breakpoint
::::::::::::::::::::::::::::::::::::::::::::::::::::: */
@media screen and (min-width: 468px) {
#contents_area #contents_main div.right { margin-bottom: 20px;}
}
/* :::::::::::::::::::::::::::::::::::::::::::::::::::::
768px Breakpoint
::::::::::::::::::::::::::::::::::::::::::::::::::::: */
@media screen and (min-width: 768px) {
#contents_area { padding: 3.0em 0;}
#contents_area #contents_main div.right { display: inline; float:right; margin-bottom: 0; margin-left: 20px;}
}
/* :::::::::::::::::::::::::::::::::::::::::::::::::::::
1066px Breakpoint
::::::::::::::::::::::::::::::::::::::::::::::::::::: */
@media screen and (min-width: 1066px) {
#contents_area #contents_main div.right { margin-left: 25px;}
}



/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

動画掲載

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
.block-movie { border-bottom: #e0e0e0 1px solid; border-top: #e0e0e0 1px solid !important;}
.flex-box.movie { justify-content: center; margin: -20px 0 0 -20px;}
.flex-box.movie li { margin: 20px 0 0 20px !important; text-align: center; width: 100%;}
.flex-box.movie li:first-child { margin-top: 20px !important;}
.flex-box.movie li span {
	background: #D61518;
	color: #fff;
	display: inline-block;
	font-size: 12px;
	font-weight: bold;
	margin-top: 0.5em;
	padding: 0.2em 1.2em;
	width: 50%;
	}
.flex-box.movie li .video {
	height: 0;
	padding-top: 56.25%;
	position: relative;
	width: 100%;
	}
.flex-box.movie li .video iframe {
	filter: drop-shadow(0 0 3px rgba(0,0,0,0.5));
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	transition: all 0.3s ease 0s;
	width: 100%;
	}
.flex-box.movie li .video iframe:hover { filter: drop-shadow(2px 2px 10px rgba(0,0,0,0.6)); z-index: 2;}
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

min-width: 768px

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
@media screen and (min-width: 768px) {
.flex-box.movie li { width: calc((100% / 2) - 20px);}
.flex-box.movie li span { font-size: 13px; padding-bottom: 0.3em; padding-top: 0.3em;}
}
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

min-width: 980px

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
@media screen and (min-width: 980px) {
.flex-box.movie li span { font-size: 14px; padding-bottom: 0.4em; padding-top: 0.4em;}
}



/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

製品特徴

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
#contents_area .slide_main { overflow: inherit;}
#contents_area .slide_main .products_info02 { margin-bottom: 40px; width: 100%;}
#contents_area .slide_main .products_info02 h2 { margin-bottom: 0.4em;}
#contents_area .slide_main .products_info02 h2 {
	border-bottom: solid 2px #c0c0c0;
	margin-bottom: 0.8em;
	padding:0 0 0.1em 0;
	position: relative;
	width: 100%;
	}
#contents_area .slide_main .products_info02 h2:after {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 2px #E60012;
	bottom: -2px;
	width: 35%;
	}
#bike #contents_main h3.ttl_bar:after { border-color: #008aab;}
#golf #contents_main h3.ttl_bar:after { border-color: #00ae41;}
#contents_area .slide_main .products_info02 ul { background-color: #fff; box-shadow: rgba(0,0,0,0.3) 0 0 4px; margin: 0; padding: 1.2em; transition: all 0.3s ease-out;}
#contents_area .slide_main .products_info02 ul:hover { box-shadow: rgba(0,0,0,0.4) 2px 2px 12px;}
#contents_area .slide_main .products_info02 ul + ul { box-shadow: none; margin-top: 0.8em; padding: 0;}
#contents_area .slide_main .products_info02 ul + ul:hover { box-shadow: none;}
#contents_area .slide_main .products_info02 ul li { box-sizing: border-box; font-weight: 600; line-height: 1.3em; margin: 0; max-width: 100% !important;}
#contents_area .slide_main .products_info02 ul li + li { border-top: 1px solid #e0e0e0; display: block; margin-top: 0.5em; padding-top: 0.5em;}
#contents_area .slide_main .products_info02 ul + ul li { font-weight: 400;}
#contents_area .slide_main .products_info02 ul + ul li + li { border-top: none; margin-top: 0.5em; padding-top: 0;}
#contents_area .slide_main .products_info02 ul li a {
	color: #000;
	align-items: center;
	display:flex;
	flex-wrap: nowrap;
	}
#contents_area .slide_main .products_info02 ul li a:hover { color: #808080; text-decoration: none;}
#contents_area .slide_main .products_info02 ul li a i { background: #000; border-radius: 3px; color: #fff; display: table; font-size: 10px; line-height: 14px; margin-right: 0.8em; text-align: center; width: 14px;}
#contents_area .slide_main .products_info02 ul li a:hover i { background: #808080;}
#contents_area .slide_main .products_info02 ul + ul li a { color: #d61518;}
#contents_area .slide_main .products_info02 ul + ul li a i { background-color: transparent; border-radius: 0; color: inherit; font-size: 100%; line-height: normal; width: auto;}
#contents_area .slide_main .products_info02 ul + ul li a:hover i { background-color: transparent;}
#contents_area .slide_main .products_info02 ul li.sub { font-size: 97%;}
#contents_area .slide_main .products_info02 ul li span.new { color: #d61518; margin: 0 0 0 0.8em; }
/*	768px Breakpoint
:::::::::::::::::::::::::::::::::::::::::::::::::::::*/
@media handheld, only screen and (min-width:768px) {
#contents_area .slide_main .products_info02 ul { padding: 1.0em;}
#contents_area .slide_main .products_info02 ul + ul { padding: 0;}
#contents_area .slide_main .products_info02 ul li + li { margin-top: 0.8em; padding-top: 0.8em;}
#contents_area .slide_main .products_info02 ul + ul li + li { margin-top: 0.6em;}
#contents_area .slide_main .products_info02 ul li a i { font-size: 11px; line-height: 16px; margin-right: 1.2em; width: 16px;}
}


/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

ページ上部へ移動

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
#page_top{
	width: 30px;
	height: 30px;
	position: fixed;
	right: 10px;
	bottom: 0;
	background: #000;
	opacity: 0.7;
	border-radius: 50%;
	z-index: 100000;
	}
@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, #page_top { right: 25px;}
}
#page_top a{
	position: relative;
	display: block;
	width: 30px;
	height: 30px;
	text-decoration: none;
	}
#page_top a::before{
    font-family: FontAwesome;
	font-weight: 900;
	content: '\f077';
	font-size: 15px;
	color: #fff;
	position: absolute;
	width: 15px;
	height: 15px;
	top: -5px;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	text-align: center;
	}
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

min-width: 768px

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
@media screen and (min-width: 768px) {
#page_top{ height: 50px; width: 50px;}
#page_top a{ height: 50px; width: 50px;}
#page_top a::before{ font-size: 22px; height: 25px; width: 25px;}
}