@charset "UTF-8";
/*-------------------------------------------- */
/* Base
---------------------------------------------- */
html, body {
	font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
	font-size: 10px;
	color: #000;
	background-color: #fff;
	line-height: 1.62;
	padding: 0;
	margin: 0;
	width: 100%;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	-webkit-touch-callout: none;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow-x: hidden;
	position: relative;
}

div, dl, dt, dd, ul, ol, dl, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, button, label, p, span, blockquote, th, td, article, aside, footer, header, nav, section, figcaption, figure, main, a, hr {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

fieldset, img {
	border: 0;
}

address, caption, cite, code, dfn, em, strong, th, var {
	font-style: normal;
	font-weight: normal;
}

b, strong {
	font-weight: bold;
}

ol, ul, dl {
	list-style: none;
}

caption, th {
	text-align: left;
}

th, td {
	vertical-align: top;
}

h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
	font-weight: normal;
}

img {
	vertical-align: bottom;
	max-width: 100%;
	height: auto;
	border: none;
}

abbr, acronym {
	border: 0;
}

:focus {
	outline: 0;
}

/* body
----------------------------------------------*/
body * {
	word-wrap: break-word;
	overflow-wrap: break-word;
}

html.is_fixed,
body.is_fixed {
	overflow: hidden;
}

body.is_fixed.os_ios {
	position: fixed;
}

body.media_tab {
	width: 1200px;
	overflow-x: hidden;
}

body.media_sp {
	width: 100%;
	overflow-x: hidden;
}

/* a
----------------------------------------------*/
a {
	text-decoration: none;
	outline: none;
	color: #004C9A;
	color: #333333;
	-webkit-text-decoration-skip: objects;
	cursor: pointer;
	text-decoration: underline;
}

/* FireFox修正 */
a img {
	box-shadow: #000 0 0 0;
}

/* a
----------------------------------------------*/
a.red_btn {
	transition: color 0.4s;
}

/*-------------------------------------------- */
/* State：is_pc,is_sp
---------------------------------------------- */
@media screen and (max-width: 979px) {
	.is_pc {
		display: none !important;
	}
	.is_sp { /* display: block !important; */ }
	.is_clear_pc { /*clear: both;*/ }
	.is_clear_sp {
		clear: both;
	}
}
@media screen and (min-width: 980px) {
	.is_pc { /* display: block !important; */ }
	.is_sp {
		display: none !important;
	}
	.is_clear_pc {
		clear: both;
	}
	.is_clear_sp { /*clear: both;*/ }
}
/*-------------------------------------------- */
/* Base：clear
---------------------------------------------- */
.clearfix:after,
.l_header:after,
.l_globalNav:after,
.l_footpath:after,
.l_contents:after,
.l_top_contents:after,
.l_main_contents:after,
.l_main_contents_l:after,
.l_main_contents_r:after,
.l_main_module:after,
.l_bottom_contents:after,
.l_footer:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: "";
	clear: both;
	height: 0;
}

.clearboth {
	clear: both;
}

/*-------------------------------------------- */
/* Layout
---------------------------------------------- */
.l_header,
.l_globalNav,
.l_bottomNav,
.l_footpath,
.l_contents,
.l_top_contents,
.l_main_contents,
.l_main_contents_l,
.l_main_contents_r,
.l_main_module,
.l_bottom_contents,
.l_social,
.l_footer {
	position: relative;
	display: block;
	width: 100%;
}

.l_contents {
	width: 100%;
	font-size: 1.6rem;
	padding: 0;
}

/*-------------------------------------------- */
/* Base：class
---------------------------------------------- */
.center {
	text-align: center !important;
}

.right {
	text-align: right !important;
}

.left {
	text-align: left !important;
}

strong,
.strong,
.bold {
	font-weight: bold !important;
}

.normal {
	font-weight: normal !important;
}

.red {
	color: #CC0000;
}

.blue {
	color: #004C9A;
}

.black {
	color: #333333 !important;
}

em {
	position: relative;
	display: inline;
	text-decoration: underline;
	text-decoration-thickness: 10px;
	text-decoration-color: #FAF296;
	text-underline-offset: -5px;
	-webkit-text-decoration-skip-ink: none;
	        text-decoration-skip-ink: none;
}

sup {
	position: relative;
	top: 0;
	left: 2px;
	font-size: initial;
	vertical-align: middle;
}

.mt_l {
	margin-top: 80px !important;
}

.mt_m {
	margin-top: 60px !important;
}

.mt_s {
	margin-top: 40px !important;
}

.mt_ss {
	margin-top: 20px !important;
}

.mt_0 {
	margin-top: 0 !important;
}

.pb_0 {
	padding-bottom: 0 !important;
}

.break_all {
	word-break: break-all !important;
}

/* hr
----------------------------------------------*/
hr {
	clear: both;
	display: block;
	width: 100%;
	height: 2px;
	border: none;
	border-bottom: 1px solid #ccc;
	margin: 60px auto 60px;
}

/*-------------------------------------------- */
/* Base：form
---------------------------------------------- */
form {
	margin: 0;
	padding: 0;
}

input, select, textarea, button {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	background: none transparent;
	border: none;
	border-radius: 0;
	outline: none;
	resize: none;
	margin: 0;
	padding: 0;
	vertical-align: middle;
	font-size: inherit;
	font-family: inherit;
	color: inherit;
	box-sizing: border-box;
	position: relative;
	transition: background-color 0.4s, color 0.4s, border-color 0.4s;
}

input[type=file], select, button {
	cursor: pointer;
}

input::-ms-clear {
	visibility: hidden;
}

input::-ms-reveal {
	visibility: hidden;
}

select::-ms-expand {
	display: none;
}

input::-moz-placeholder, textarea::-moz-placeholder {
	color: #ADADAD;
}

input::placeholder,
textarea::placeholder {
	color: #ADADAD;
}

::-moz-placeholder {
	color: #ADADAD;
}

::placeholder {
	color: #ADADAD;
}

/*-------------------------------------------- */
/* .slick
---------------------------------------------- */
.slick-track {
	display: flex !important;
}

.slick-list.draggable {
	overflow: visible;
}

/* .slick-dots
---------------------------------------------- */
/*-------------------------------------------- */
/* Animation
---------------------------------------------- */
/* .moveUP
---------------------------------------------- */
.moveUP {
	transition: all 0.7s 0s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.6s 0s;
	transform: translateY(60px);
	opacity: 0;
}

.moveUP.elem {
	transition-delay: 0.2s;
}

.moveUP.is_motion {
	transform: translateY(0);
	opacity: 1;
}

/* .moveUP_s
---------------------------------------------- */
.moveUP_s {
	transition: all 0.7s 0s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.6s 0s linear;
	transform: translateY(30px);
	opacity: 0;
}

.moveUP_s.is_motion {
	transform: translateY(0);
	opacity: 1;
}

/* .moveDOWN
---------------------------------------------- */
.moveDOWN {
	transition: all 0.6s 0s cubic-bezier(0.33, 1, 0.68, 1);
	transform: translateY(-30px);
	opacity: 0;
}

.moveDOWN.is_motion {
	transform: translateY(0);
	opacity: 1;
}

/* .moveL
---------------------------------------------- */
.moveL {
	transition: all 0.7s 0s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.6s 0s linear;
	transform: translateX(105%);
}

.moveL.is_motion {
	transform: translateX(0);
}

/* .slideIn
---------------------------------------------- */
.slideIn {
	transition: transform 0.8s 0s cubic-bezier(0.25, 1, 0.5, 1);
	transform: translateX(30%);
}

body.media_sp .slideIn {
	transition: transform 0.6s 0s cubic-bezier(0.25, 1, 0.5, 1);
}

.slideIn.is_motion {
	transform: translateX(-100%);
}

/* .moveR
---------------------------------------------- */
.moveR {
	transition: all 0.8s 0s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.6s 0s linear;
	transform: translateX(-30px);
	opacity: 0;
}

.moveR.is_motion {
	transform: translateX(0);
	opacity: 1;
}

/* .zoomIn
---------------------------------------------- */
.lineupList_img.zoomIn img {
	transition: transform 2s 0s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.6s 0s linear;
	transform: scale(1.1, 1.1);
	opacity: 0;
}

.other_mv.zoomIn img,
.otherProduct_img.zoomIn img {
	transition: transform 2s 0s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.6s 0s linear;
	transform: scale(1.1, 1.1);
	opacity: 0;
}

.lineupList_img.zoomIn.is_motion img,
.other_mv.zoomIn.is_motion img,
.otherProduct_img.zoomIn.is_motion img {
	transform: scale(1, 1);
	opacity: 1;
}

.mvSlider.zoomIn,
.storeSlider.zoomIn {
	transition: transform 4s 0s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.6s 0s linear;
	transform: scale(1.35, 1.35);
	opacity: 0;
}

.mvSlider.zoomIn.is_motion,
.storeSlider.zoomIn.is_motion {
	transform: scale(1, 1);
	opacity: 1;
}

.productSlider.zoomIn {
	transition: transform 1.2s 0s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.6s 0s linear;
	transform: scale(1.35, 1.35);
	opacity: 0;
}

.productSlider.zoomIn.is_motion {
	transform: scale(1, 1);
	opacity: 1;
}

/* .fadeIn
---------------------------------------------- */
.fadeIn {
	transition: opacity 0.8s;
	opacity: 0;
}

.fadeIn.is_motion {
	opacity: 1;
}

/* .fadeOut
---------------------------------------------- */
.fadeOut {
	transition: opacity 0.8s;
	opacity: 1;
}

.fadeOut.is_motion {
	opacity: 0;
}

/* .shutterIn
---------------------------------------------- */
.shutterIn {
	position: relative;
	display: block;
	overflow: hidden;
	transition: all 1.3s 0s linear;
	opacity: 0;
}

.shutterIn.is_motion {
	transform: translateY(0);
	opacity: 1;
}

.shutterIn::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background-color: #47604A;
	z-index: 2;
	position: absolute;
	top: 0;
	left: 0;
	transition: all 1s 0s cubic-bezier(0.33, 1, 0.68, 1);
	transform: translateY(0);
}

.shutterIn.is_motion::before {
	transform: translateY(-102%);
}

.shutterIn img {
	transition: all 1.3s 0s cubic-bezier(0.33, 1, 0.68, 1);
	transform: scale(1.3);
}

.shutterIn.is_motion img {
	transform: scale(1);
}

/* .shutterIn02
---------------------------------------------- */
/* .blurIn
---------------------------------------------- */
.blurIn {
	-ms-filter: blur(20px);
	filter: blur(30px);
	opacity: 0;
	transition: filter 1.3s 0s linear, opacity 1.3s 0s linear !important;
}

.blurIn.is_motion {
	-ms-filter: blur(0);
	filter: blur(0);
	opacity: 1;
}

/* .blurIn02
---------------------------------------------- */
.blurIn02 {
	-ms-filter: blur(0);
	filter: blur(0);
	transition: filter 1.3s 0s linear;
}

.blurIn02.is_motion {
	-ms-filter: blur(6px);
	filter: blur(6px);
}

/*-------------------------------------------- */
/* #mv
---------------------------------------------- */
#mv {
	position: relative;
	display: block;
	width: 100%;
	height: 552px;
	background: #BE1824 url(/common/images/bg_mv_sp.png) left top no-repeat;
	background-size: 100% auto;
}
@media screen and (min-width: 980px) {
	#mv {
		height: 917px;
		background: #BE1824 url(/common/images/bg_mv_pc.png) right center no-repeat;
		background-size: cover;
		padding: 0 120px;
	}
}
#mv .mv_wrap {
	display: block;
	width: 100%;
	height: 100%;
	padding: 75px 30px 0 40px;
}
@media screen and (min-width: 980px) {
	#mv .mv_wrap {
		width: 980px;
		margin: 0 auto;
		padding: 144px 0 0 0;
	}
}
#mv .mv_tit {
	display: block;
	width: 75px;
	height: 82px;
}
@media screen and (min-width: 980px) {
	#mv .mv_tit {
		width: 114px;
		height: 124px;
	}
}
#mv .mv_copy {
	display: block;
	width: 305px;
	height: 200px;
	margin-top: 45px;
	filter: drop-shadow(0 0 20px rgb(190, 24, 36));
}
#mv .mv_copy img {
	display: block;
	filter: drop-shadow(0 0 20px rgb(190, 24, 36));
}
@media screen and (min-width: 980px) {
	#mv .mv_copy {
		width: 620px;
		height: 250px;
		margin-top: 49px;
	}
}
#mv .mv_nav {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: nowrap;
	width: 205px;
	height: 39px;
	margin-top: 38px;
}
@media screen and (min-width: 980px) {
	#mv .mv_nav {
		width: 248px;
		height: 44px;
		margin-top: 60px;
	}
}
#mv .mv_nav .mv_navBtn {
	position: relative;
	display: block;
	width: 140px;
	height: 39px;
}
@media screen and (min-width: 980px) {
	#mv .mv_nav .mv_navBtn {
		width: 85px;
		height: 44px;
	}
}
#mv .mv_nav .mv_navBtn span {
	display: block;
	width: 100%;
}
#mv .mv_nav .mv_navBtn .mv_navBtn_ov {
	display: block;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	opacity: 0;
	transition: opacity 0.4s;
}
#mv .mv_nav .mv_navBtn .mv_navBtn_ov img {
	display: block;
	width: 100%;
}
#mv .mv_nav .mv_navBtn.mv_navBtn_about {
	width: 75px;
}
@media screen and (min-width: 980px) {
	#mv .mv_nav .mv_navBtn.mv_navBtn_about {
		width: 85px;
	}
}
#mv .mv_nav .mv_navBtn.mv_navBtn_contact {
	width: 120px;
}
@media screen and (min-width: 980px) {
	#mv .mv_nav .mv_navBtn.mv_navBtn_contact {
		width: 147px;
	}
}
#mv .mv_nav .mv_navBtn::before {
	content: "";
	display: block;
	width: 0;
	height: 4px;
	background-color: #000;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
	transition: width 0.3s;
}
@media screen and (min-width: 980px) and (hover: hover) {
	#mv .mv_nav .mv_navBtn:hover .mv_navBtn_ov {
		opacity: 1;
	}
	#mv .mv_nav .mv_navBtn:hover::before {
		width: 100%;
	}
}
#mv::before {
	content: "";
	display: block;
	width: 20px;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	background: rgba(160, 9, 20, 0.9);
}
@media screen and (min-width: 980px) {
	#mv::before {
		width: 66px;
	}
}

/*-------------------------------------------- */
/* #about
---------------------------------------------- */
#about {
	position: relative;
	display: block;
	width: 100%;
	background: #fff;
}
@media screen and (min-width: 980px) {
	#about {
		padding: 0 100px;
	}
}
#about .about_wrap {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	padding: 65px 30px 75px 40px;
}
@media screen and (min-width: 980px) {
	#about .about_wrap {
		max-width: 980px;
		margin: 0 auto;
		padding: 160px 0 200px 0;
	}
}
#about .about_tit {
	display: block;
	width: 195px;
	height: 40px;
	margin-left: auto;
}
@media screen and (min-width: 980px) {
	#about .about_tit {
		width: 353px;
		height: 72px;
	}
}
#about .about_list {
	display: block;
	width: 100%;
	margin-top: 10px;
}
@media screen and (min-width: 980px) {
	#about .about_list {
		width: 500px;
		margin-top: 40px;
		margin-left: auto;
	}
}
#about .about_list .about_list_box {
	display: flex;
	align-items: stretch;
	justify-content: flex-start;
	flex-wrap: nowrap;
	width: 100%;
}
#about .about_list .about_list_box dt {
	display: block;
	width: 88px;
	font-size: 1.4rem;
	font-weight: bold;
	line-height: 1.57;
	border-bottom: 1px solid #BE1824;
	padding: 22px 0 23px 0;
}
@media screen and (min-width: 980px) {
	#about .about_list .about_list_box dt {
		width: 166px;
		font-size: 1.6rem;
		font-weight: bold;
		line-height: 1.62;
		border-bottom: 2px solid #BE1824;
		padding: 35px 0 28px 35px;
	}
}
#about .about_list .about_list_box dd {
	display: block;
	width: calc(100% - 88px);
	font-size: 1.4rem;
	line-height: 1.57;
	border-bottom: 1px solid #d6d6d6;
	padding: 22px 0 23px 22px;
}
@media screen and (min-width: 980px) {
	#about .about_list .about_list_box dd {
		width: calc(100% - 166px);
		font-size: 1.6rem;
		line-height: 1.62;
		border-bottom: 2px solid #d6d6d6;
		padding: 35px 0 28px 35px;
	}
}
#about .about_list .about_list_box:last-child dt,
#about .about_list .about_list_box:last-child dd {
	border-bottom: none;
}
#about .brush {
	display: block;
	width: 250px;
	height: 276px;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 10;
	pointer-events: none;
	mix-blend-mode: multiply;
}
@media screen and (min-width: 980px) {
	#about .brush {
		width: 840px;
		height: 1410px;
	}
}
#about .contact_btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 165px;
	height: 46px;
	background-color: #BE1824;
	margin: 30px 0 0 auto;
	transition: background-color 0.4s;
}
#about .contact_btn span {
	display: block;
	width: 100px;
	height: 25px;
}
@media screen and (min-width: 980px) {
	#about .contact_btn {
		width: 334px;
		height: 80px;
		margin: 40px 0 0 auto;
	}
	#about .contact_btn span {
		width: 148px;
		height: 37px;
	}
}
@media screen and (min-width: 980px) and (hover: hover) {
	#about .contact_btn:hover {
		background-color: #A00914;
	}
}
#about .copyright {
	display: block;
	width: 100%;
	height: 120px;
	background-color: #BE1824;
}
@media screen and (min-width: 980px) {
	#about .copyright {
		width: calc(100% + 240px);
		margin-left: -120px;
		height: 90px;
		padding: 0 120px;
	}
}
#about .copyright_wrap {
	display: block;
	width: 100%;
	height: 120px;
	padding: 62px 30px 0 40px;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 20;
}
@media screen and (min-width: 980px) {
	#about .copyright_wrap {
		max-width: 980px;
		height: 90px;
		left: auto;
		margin: 0 auto;
		position: relative;
		padding: 38px 0 0;
	}
}
#about .copyright_wrap .copyright_txt {
	display: block;
	width: 100%;
	text-align: right;
	font-size: 1.2rem;
	letter-spacing: 0.5px;
	color: #fff;
}
#about::before {
	content: "";
	display: block;
	width: 20px;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	background: rgba(160, 9, 20, 0.8);
}
@media screen and (min-width: 980px) {
	#about::before {
		width: 66px;
	}
}/*# sourceMappingURL=map/parts.css.map */
