@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 h2.under-line {
	border-bottom: solid 2px #c0c0c0;
	margin-bottom: 1em;
	padding:0 0 0.1em 0;
	position: relative;
	width: 100%;
	}
#contents_main h2.under-line:after {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 2px #E60012;
	bottom: -2px;
	width: 35%;
	}
#bike #contents_main h2.under-line:after { border-color: #008aab;}
#golf #contents_main h2.under-line:after { border-color: #00ae41;}

#contents_main h3,
#contents_main h3.ttl_bar  { font-size: 20px;}
#contents_main h3.ttl_bar.flex-box { align-items: baseline; justify-content: center;}
#contents_main h3.ttl_bar.flex-box span.title { font-size: 100%; line-height: inherit; width: 100%;}
#contents_main h3.ttl_bar.flex-box span small { letter-spacing: 0;}
#contents_main h4 { color: #990000; font-size: 18px;}
#contents_main h4.flex-box { align-items: baseline; flex-wrap: nowrap;}
#contents_main h4.line { font-size: 16px;}
#contents_main h4 span.new { margin-right: 0.5em;}
#contents_main h4 span.sub { white-space: nowrap;}
#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;
	}
#contents_main h4.flex-box span.btn { margin: 0 0 0 auto; white-space: nowrap;}
#contents_main p + p.img-space,
#contents_main ul + p.img-space { margin-top: 24px;}
#contents_main .pointBlock h5,
#contents_main .pointBlock h6 { align-items: center; display: flex; text-align: left;}
#contents_main .pointBlock h5 span,
#contents_main .pointBlock h6 span { font-size: 10px; margin: 0 8px 0 0 !important; padding: 2px 5px;}

#contents_main h5.line {
	padding-left: 10px;
	color: #000;
	border-left: 5px solid #909090;
}

#contents_main .sup.right { margin-top: -2px;}
#contents_main table.table01 th { white-space: normal;}
/* :::::::::::::::::::::::::::::::::::::::::::::::::::::
768px Breakpoint
::::::::::::::::::::::::::::::::::::::::::::::::::::: */
@media screen and (min-width: 768px) {
#contents_main h3,
#contents_main h3.ttl_bar { font-size: 22px;}
#contents_main h3.ttl_bar.flex-box { align-items: center; flex-wrap: nowrap; justify-content: flex-start;}
#contents_main h3.ttl_bar.flex-box span.title { width: auto;}
#contents_main h3.ttl_bar.flex-box span.sub { margin-left: auto;}
#contents_main h4 { color: #990000; font-size: 20px;}
#contents_main h4.line { font-size: 18px;}
#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 p + p.img-space,
#contents_main ul + p.img-space { margin-top: 28px;}
#contents_main .pointBlock h5 span,
#contents_main .pointBlock h6 span { font-size: 11px; margin: 0 10px 0 0 !important; padding: 2px 7px;}
}
@media screen and (max-width: 768px) {
	#contents_main p.right img {
		text-align: left;
		display: block;
		margin: 0;
	}
}


/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

ベース

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
#contents_main ul.row + ul.row { margin-top: 2.0em;}
#contents_main .column ul.row.top { display: flex; flex-wrap: wrap; margin: 0;}
#contents_main .column ul.row.top+.item-info,
#contents_main .column p+.item-info {
	margin-top: 2.4em;
}
#contents_main .column ul.row.top li { float: none; margin: 0; width: 100%;}
#contents_main .column ul.row.top li.col5 { text-align: center;}
#contents_main .column ul.row.top li + li { margin-top: 1.5em;}
#contents_main .column ul.row.top li p.sup.right { margin-top: 3px; text-align: center;}

#contents_main .column .pointBlock ul.row.top li + li { margin-top: 0.7em;}

#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;}


#contents_main .column .item-info {
	margin-bottom: 0;
}

#contents_main .column .item-info ul {
	display: flex;
	flex-wrap: wrap;
	font-weight: 600;
	justify-content: space-between;
	margin-top: -6px;
}

#contents_main .column .item-info ul li {
	background: #f0f0f0;
	border: #d0d0d0 solid 1px;
	border-radius: 3px;
	margin-top: 6px;
	padding: 6px;
	width: 100%;
}

#contents_main .column .item-info ul li sup {
	font-size: 83%;
	font-weight: 400;
	position: relative;
	top: -0.1em;
	vertical-align: top;
}

#contents_main .column .item-info ul li sub {
	display: block;
	font-size: 83%;
	font-weight: 400;
	margin-top: 0.3rem;
	line-height: 1.6;
}
/* :::::::::::::::::::::::::::::::::::::::::::::::::::::
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_main .column ul.row.top { flex-wrap: nowrap;}
#contents_main .column ul.row.top li { width: auto;}
#contents_main .column ul.row.top li.col7 { margin-right: 2.0em;}
#contents_main .column ul.row.top li.col5 { margin-left: auto; text-align: right; flex-shrink: 0;}
#contents_main .column ul.row.top li.col5 img { width: 100%;}
#contents_main .column ul.row.top li + li { margin-top: 0;}
#contents_main .column ul.row.top li p.sup.right { text-align: right;}

#contents_main .column .pointBlock ul.row.top li + li { margin-top: 0;}
#contents_main .column .pointBlock ul.row.top li.col7,
#contents_main .s_column.pointBlock ul.row.top li.col7 { margin-right: 1.0em;}
#contents_main .column .pointBlock ul.row.top li.col5.dry-remote-typec { margin-right: 0.7em;}

#contents_area { padding: 3.0em 0;}
#contents_area #contents_main div.right { display: inline; float:right; margin-bottom: 0; margin-left: 20px;}
#contents_main .column .item-info ul li {
	width: calc((100% / 2) - 3px);
}
}
/* :::::::::::::::::::::::::::::::::::::::::::::::::::::
1066px Breakpoint
::::::::::::::::::::::::::::::::::::::::::::::::::::: */
@media screen and (min-width: 1066px) {
#contents_main .column ul.row.top li.col7 { margin-right: 2.5em;}
#contents_main .column .pointBlock ul.row.top li.col7,
#contents_main .s_column.pointBlock ul.row.top li.col7 { margin-right: 1.5em;}

#contents_area #contents_main div.right { margin-left: 25px;}
#contents_main .column .item-info ul li {
	width: calc((100% / 3) - 3px);
}

#contents_main .column .item-info ul::after {
	display: block;
	content: "";
	width: calc((100% / 3) - 3px);
}
#contents_main .column .item-info.c-l02 ul li {
	display: block;
	content: "";
	width: calc((100% / 2) - 3px);
}
}



/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

動画掲載

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
.block-movie { border-bottom: #e0e0e0 1px solid; border-top: #e0e0e0 1px solid !important;}
.block-movie .movie,
.column .movie {
	display: grid;
	justify-content: center;
	gap: 30px;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
}
.column .movie {
	gap: 20px 15px;
}
.column .movie.ver-top { margin-top: 30px !important;}
.column .movie { grid-template-columns: 1fr;}
.block-movie .movie li,
.column .movie li { margin: 0 !important; text-align: center; width: 100%;}
.block-movie .movie li span,
.column .movie li span {
	background: #D61518;
	color: #fff;
	display: inline-block;
	font-size: clamp(0.813rem, 0.752rem + 0.3vw, 0.938rem);
	font-weight: bold;
	margin-top: 0.5em;
	padding: 0.3em 1.3em;
	width: 50%;
}
.block-movie .movie li .video,
.column .movie li .video,
.block-movie .movie li p,
.column .movie li p {
	width: 100%;
	max-width: 680px;
	margin-inline: auto;
}
.block-movie .movie li p,
.column .movie li p {
	max-width: 620px;
}

.block-movie .movie li .video iframe,
.column .movie li .video iframe {
	filter: drop-shadow(0 0 3px rgba(0,0,0,0.5));
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	transition: all 0.3s ease 0s;
	position: relative;
}
.block-movie .movie li .video iframe:hover,
.column .movie li .video iframe:hover { filter: drop-shadow(2px 2px 10px rgba(0,0,0,0.6)); z-index: 2;}



/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

製品特徴

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
#contents_area .slide_main { overflow: inherit;}

#contents_area .slide_main .slide { width: 100%; float: none;}

#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 + ul li a {
	color: transparent!important;
	}
#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.sub a,
#contents_area .slide_main .products_info02 ul + ul li a { color: #d61518 !important;}
#contents_area .slide_main .products_info02 ul li.sub a:hover,
#contents_area .slide_main .products_info02 ul + ul li a:hover { color: #999;}
#contents_area .slide_main .products_info02 ul li span.new { color: #d61518; margin: 0 0 0 0.8em; }
#contents_area .slide_main .products_info02 ul li span.info { background: #000; border-radius: 3px; color: #fff; font-size: 88%; margin: 0 0 0 auto; padding: 0.1em 0.4em;}
#contents_area .slide_main .products_info02 ul li span.info.important { background-color: #dd0000;}
/*	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;}
}

#contents_main .sdgs {
	background-color: #bee9a1;
	border: 4px solid #75bb46;
	padding: 1.3em;
	border-radius: 2px;
	margin-bottom: 60px;
}

#contents_main .sdgs h3 {
	margin-bottom: 0.7em;
	position: relative;
}

#contents_main .sdgs h3:after {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 3px #333;
	bottom: -2px;
	width: 25%;
}

#contents_main .sdgs p {
	line-height: 1.6;
	margin-bottom: 0;
}

#contents_main .sdgs p+p {
	margin-top: 0.5em;
}

#contents_main .sdgs .col4 .sup.right {
	margin-top: -1em;
}

#contents_main .sdgs .col4 {
	margin-top: 1.5em;
}

#contents_main .sdgs .col4 img {
	max-width: 200px !important;
}

#contents_main .sdgs p+p.sup {
	margin-top: -5px;
}

@media screen and (min-width: 768px) {
	#contents_main .sdgs {
		padding: 1.5em;
	}

	#contents_main .sdgs .col4 {
		margin-top: 0;
	}
}


.block-lead-item h1+p {
	align-items: center;
	display: flex;
	justify-content: center;
	margin-top: 1.5em;
}

.block-lead-item h1+p span+span {
	margin-left: 1.4em;
}

.block-lead-item h1+p span.product_market {
	font-size: 14px;
	display: inline;
	border: solid #fff 1px;
	border-radius: 3px;
	padding: 4px 8px;
	font-weight: 400;
}

/* :::::::::::::::::::::::::::::::::::::::::::::::::::::
768px Breakpoint
::::::::::::::::::::::::::::::::::::::::::::::::::::: */
@media screen and (min-width: 768px) {
	.block-lead-item h1+p {
		justify-content: flex-start;
	}

	.block-lead-item h1+p span+span {
		margin-left: 1.2em;
	}

	.block-lead-item h1+p span.product_market {
		border-radius: 4px;
		padding: 6px 10px;
	}
}



.swiper-container.map-design,
.swiper-container.preset,
.swiper-container.custom {
	height: auto;
}
.swiper-container.map-design,
.swiper-container.preset,
.swiper-container.custom {
	padding-bottom: 2em;
	padding-top: 1em;
}
.swiper-container.map-design p,
.swiper-container.preset p,
.swiper-container.custom p {
	font-weight: 600;
	margin: 0;
	margin-inline: auto;
	padding-top: 1em;
}
.swiper-container.map-design .swiper-pagination-bullets,
.swiper-container.preset .swiper-pagination-bullets,
.swiper-container.custom .swiper-pagination-bullets {
	bottom: 0;
}



#contents_main .itemlist.tab ul {
	display: grid;
	grid-template-columns: 1fr 1fr;
	margin: 0;
	gap: 5px;
}
@media screen and (max-width: 560px) {
	#contents_main .itemlist.tab ul {
		grid-template-columns: 1fr;
	}
}
#contents_main .itemlist.tab ul + ul {
	grid-template-columns: 1fr;
	margin-top: 5px;
}
#contents_main .itemlist.tab ul:before,
#contents_main .itemlist.tab ul:after {
	display: none;
}
#contents_main .itemlist.tab ul li {
	margin: 0;
	padding: 8px 10px;
	text-align: left;
	float: none;
	width: 100%;
    background: #f0f0f0;
    border: #d0d0d0 solid 1px;
	max-width: none;
}
#contents_main .itemlist.tab ul li strong {
	margin-left: 8px;
}
#contents_main .itemlist.tab ul li:first-child {
	margin-top: 0 !important;
}