@charset "UTF-8";
/* http://meyerweb.com/eric/tools/css/reset/ 
v2.0 | 20110126
License: none (public domain)
*/

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

body {
	line-height: 1;
	font-family: "HelveticaNeue", "Noto Sans", "Hiragino Kaku Gothic ProN", "Koburina Gothic W3 JIS2004", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
	font-size: 62.5%;
}

footer {
	margin: 0 auto;
	padding: 20px;
	text-align: center;
}

ol,
ul {
	list-style: none;
}

blockquote,
q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

img {
	width: 100%;
}

a {
	text-decoration: none;
}


/*リセット終了*/

.w10 {
	width: 10%;
}

.w20 {
	width: 20%;
}

.w30 {
	width: 30%;
}

.w40 {
	width: 40%;
}

.w50 {
	width: 50%;
}

.w60 {
	width: 60%;
}

.w70 {
	width: 70%;
}

.w80 {
	width: 80%;
}

.w90 {
	width: 90%;
}

.w100 {
	width: 100%;
}


/*========= ナビゲーションのためのCSS ===============*/

#g-nav {
	/*position:fixed;にし、z-indexの数値を大きくして前面へ*/
	position: fixed;
	z-index: 999;
	/*ナビのスタート位置と形状*/
	top: 0;
	right: -120%;
	width: 100%;
	height: 100vh;
	/*ナビの高さ*/
	background: #999;
	/*動き*/
	transition: all 0.6s;
}

/*アクティブクラスがついたら位置を0に*/
#g-nav.panelactive {
	right: 0;
}

/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list {
	/*ナビの数が増えた場合縦スクロール*/
	position: fixed;
	z-index: 999;
	width: 100%;
	height: 100vh;
	/*表示する高さ*/
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}

/*ナビゲーション*/
#g-nav ul {
	/*ナビゲーション天地中央揃え*/
	position: absolute;
	z-index: 999;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

/*リストのレイアウト設定*/

#g-nav li {
	list-style: none;
	text-align: center;
}

#g-nav li a {
	color: #333;
	text-decoration: none;
	padding: 12px;
	display: block;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-weight: bold;
}

/*========= ボタンのためのCSS ===============*/

/*========= ナビゲーションのためのCSS ===============*/

#g-nav {
	/*position:fixed;にし、z-indexの数値を大きくして前面へ*/
	position: fixed;
	z-index: 999;
	/*ナビのスタート位置と形状*/
	top: 0;
	right: -100%;
	width: 400px;
	height: 100vh;
	/*ナビの高さ*/
	background: #fff;
	/*動き*/
	transition: all 1s;
}

/*アクティブクラスがついたら位置を0に*/
#g-nav.panelactive {
	right: 0;
}

/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list {
	/*ナビの数が増えた場合縦スクロール*/
	position: fixed;
	z-index: 999;
	width: 100%;
	height: 100vh;
	/*表示する高さ*/
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}

/*ナビゲーション*/
#g-nav ul {
	/*ナビゲーション天地中央揃え*/
	position: absolute;
	z-index: 999;
	top: 50%;
	left: 10%;
	transform: translate(-50%, -50%);
}

/*リストのレイアウト設定*/

#g-nav li {
	list-style: none;
	text-align: center;
}

#g-nav li a {
	color: #555;
	text-decoration: none;
	padding: 10px;
	display: block;
	text-transform: uppercase;
	text-align: left;
	font-size: 15px;
	letter-spacing: 0.1em;
	font-weight: 100;
}

/*========= ボタンのためのCSS ===============*/
.openbtn1 {
	position: fixed;
	z-index: 9999;
	/*ボタンを最前面に*/
	top: 20px;
	right: 20px;
	cursor: pointer;
	width: 50px;
	height: 50px;

	border: 1px solid rgb(219, 57, 42);
	border-radius: 30px;
}

/*×に変化*/
.openbtn1 span {
	display: inline-block;
	transition: all .4s;
	position: absolute;
	left: 14px;
	height: 1px;
	border-radius: 2px;
	background-color: rgb(219, 57, 42);
	width: 42%;
}

.openbtn1 span:nth-of-type(1) {
	top: 17px;
}

.openbtn1 span:nth-of-type(2) {
	top: 24.5px;
}

.openbtn1 span:nth-of-type(3) {
	top: 33px;
}

.openbtn1.active span:nth-of-type(1) {
	top: 18px;
	left: 17px;
	transform: translateY(6px) rotate(-45deg);
	width: 30%;
}

.openbtn1.active span:nth-of-type(2) {
	opacity: 0;
}

.openbtn1.active span:nth-of-type(3) {
	top: 30px;
	left: 17px;
	transform: translateY(-6px) rotate(45deg);
	width: 30%;
}



/*========= レイアウトのためのCSS ===============*/
.wrapper {
	background-color: #fff;
	padding: 0 0;
}

.Head {
	width: 100%;
	height: 100vh;
	background-color: #d7dbe2;
	background-image: url(../img/HeroImg.jpg);
	background-repeat: no-repeat;
	background-position: 80% 50%;
	background-size: contain;
	position: relative;
}

.Head h1 {
	position: absolute;
	width: 30%;
	position: absolute;
	top: 50%;
	left: 20%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}


.Event__Warp {
	width: 1000px;
	margin: 0 auto;
	padding: 150px 0;
}

.Event__Tit {
	width: 1000px;
	margin: 0 auto;
	padding: 50px 0 20px;
	text-align: center;
	color: #DF1F1C;
}

.Event__TitSeason {
	font-size: 14px;
	font-weight: normal;
	line-height: 3rem;
}

.Event__TitTit {
	font-size: 32px;
	font-weight: bold;
	line-height: 3rem;
}

.Event__TitTime {
	font-size: 28px;
	font-weight: bold;
	line-height: 3rem;
}

.Event__Info {
	color: #555;
}

.Event__InfoBlock {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	text-align: justify;
	color: #555;
	border-bottom: 1px solid #DCDCDC;
	padding: 30px 0;
	justify-content: space-between;
}

.Event__Info dt {
	width: 322px;
	font-size: 20px;
	letter-spacing: 0.1rem;
}

.Event__Info dt {
	width: 322px;
	font-size: 28px;
	font-weight: bold;
}

.Event__Info dd {
	width: 660px;
	font-size: 15px;
	font-weight: lighter;
	line-height: 1.5rem;
}

.Event__InfoSub {
	font-size: 20px;
	font-weight: bold;
}

.Event__InfoTimeWarp {
	padding: 10px 0 0 0;
}


.Brands {
	width: 100%;
	background-color: #f7f7f7;
	padding: 150px 0;
}

.BrandsWarp {
	width: 1000px;
	margin: 0 auto;
}

.SectionTit {
	font-size: 30px;
	font-weight: bold;
	color: #232323;
	padding: 50px 0;
}

.SectionTitSub {
	color: #555;
	font-size: 20px;
	font-weight: lighter;
	margin: 20px 0;
	line-height: 2rem;
}

.SectionTitSub span {
	display: block;
	font-weight: bold;
	border-bottom: 1px solid #DCDCDC;
	margin: 0 0 20px;
	padding: 0 0 10px 0;
}


.SectionTit span {
	font-size: 20px;
	font-weight: 100;
	color: #232323;
	padding: 50px 10px;
	letter-spacing: 0.1rem;
}

.BrandsList {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;

}

.BrandsBlock {
	width: 322px;
	box-shadow: 0 10px 20px 0 rgb(0 0 0 / 3%);
	background-color: #fff;
	margin: 0 0 20px;
}

.BrandsList::after {
	content: " ";
	display: block;
	width: 322px;
}

.BrandsBlock__Info {
	background-color: #fff;
	padding: 10px;
}

.BrandsBlock__Logo {
	border-bottom: 1px solid #DFDFDF;
	padding: 0 0 10px;
}


.BrandsBlock__Logo img {
	width: auto;
	height: 50px;
	padding: 5px 0;
}

.BrandsBlock__Logo-50 img {
	width: 50%;
	padding: 5px 0;
}

.BrandsBlock__Logo-35 img {
	width: 35%;
	padding: 5px 0;
}


.BrandsBlock__Name {
	font-size: 15px;
    font-weight: 300;
    line-height: 1rem;
    letter-spacing: 0.05rem;
    padding: 10px 0px;
}
.BrandsBlock__Subname {
	font-size: 10px;
}

.BrandsBlock__Sex {
	margin: 5px 0;
}

.BrandsBlock__Sex span {
    margin: 10px 5px 0 0;
    padding: 0 20px;
    width: 80px;
    display: inline-block;
    text-align: center;
    font-weight: 400;
    line-height: 1.4;
}

.BrandsBlock__Sex .Men {
	background-color: #fff;
	border: 1px solid #8798e3;
	color: #8798e3;
}

.BrandsBlock__Sex .Women {
	background-color: #fff;
	border: 1px solid #e38787;
	color: #e38787;
}

.BrandsBlock__link {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
}

.Styling {
	width: 1000px;
	margin: 50px auto;
	padding: 50px 0 0;
	border-top: 1px solid #DCDCDC;
}

.StylingImg {
	box-shadow: 0 10px 20px 0 rgb(0 0 0 / 5%);
	
}

.StylingImg a:hover{
	opacity: 0.5;
	transition: all 0.5s ease 0s;
}

.Only {
	width: 1000px;
	padding: 150px 0;
	margin: 0 auto;
}

.OnlyBlock {
	display: flex;
	flex-wrap: wrap;
	height: auto;
	align-items: center;
	justify-content: space-evenly;
	margin: 0 0 100px;
	box-shadow: 0 0px 10px 0 rgb(0 0 0 / 5%);
}

.OnlyBlock img {
	width: 322px;
	padding: 20px;
}

.OnlyBlock__Info {
	width: 50%;
	padding: 20px;
	color: #232323;
}

.OnlyBlock__Logo {
	border-bottom: 1px solid #DCDCDC;
	padding: 0 0 20px;
}

.OnlyBlock__Logo img {
	width: auto;
	height: 50px;
}

.OnlyBlock__Logo-20 img {
	width: 20%;
	padding: 5px 0;
}

.OnlyBlock__Logo-15 img {
	width: 15%;
	padding: 5px 0;
}


.OnlyBlock__Name {
	padding: 20px 0 5px;
	font-size: 15px;
}


.OnlyBlock__Subname {
	padding: 0 0 20px;
	font-size: 10px;
}

.OnlyBlock__Copy {
	padding: 15px 0 30px;
	font-weight: bold;
	font-size: 20px;
	color: #555;
	letter-spacing: 0.05rem;
}

.OnlyBlock__Itemname {
	padding: 15px 0 30px;
	font-weight: bold;
	font-size: 20px;
	color: #555;
	letter-spacing: 0.05rem;
}


.OnlyBlock__Txt li {
	padding: 0 0 5px;
	font-size: 12px;
	color: #555;
}

.OnlyBlock__Txt li span {
	display: inline-block;
	width: 50px;
}

.OnlyBlock__link {
	display: flex;
	flex-wrap: wrap;
	margin: 20px 0;
}

.OnlyBlock__link .button02 {
	padding: 0 20px 0 0;
}

.Videos {
	width: 100%;
	background-color: #f7f7f7;
	padding: 0 0 50px;
}

.Videos__Warp {
	width: 1000px;
	background-color: #f7f7f7;
	margin: 0 auto;
	padding: 150px 0;
}

.Videos__block {
	margin: 0px 0px 50px;
	background-color: rgb(255, 255, 255);
	padding: 20px 40px;
	box-shadow: 0 10px 20px 0 rgb(0 0 0 / 5%);
}

.Video__body {
	margin: 0 auto 40px;
	padding-top: 56.25%;
	position: relative;
	width: 100%;
}

.Video__frame {
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.Videos__Link {
	width: 300px;
	margin: 30px auto;
}

.Videos__Link a {
	width: 350px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0px auto;
	padding: 1em 2em;
	color: rgb(255, 255, 255);
	font-size: 15px;
	background-color: rgb(223, 31, 28);
	transition: all 0.5s ease 0s;
	border: 1px solid rgb(223, 31, 28);
}

.Videos__Link a:hover {
	opacity: 0.5;
	text-decoration: none;
	color: #fff;
	background-color: #DF1F1C;
}

.Videos__Link a::after {
	content: url(../img/redArrow.svg);
	width: 20px;
	height: 20px;
	display: inline-block;
	vertical-align: middle;
	transform: scale(1);
}



.Features {
	width: 100%;
}

.Features__Warp {
	width: 1000px;
	margin: 0 auto;
	padding: 150px 0;
}

.Features__banner {
	margin: 0 0 40px;
}


.Video__Brand dl {
	width: 660px;
	font-size: 15px;
	font-weight: lighter;
	line-height: 2rem;
	letter-spacing: 0.05rem;
	text-align: center;
	margin: 20px auto;
}

.Video__Brand dt {
	font-weight: bold;
}

.Video__Brand dd {
	line-height: 1.5rem;
	font-size: 15px;
}

.Videos__block-flexWarp {
	width: 1000px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.SectionTitSub-flex {
	font-size: 16px;
}

.Videos__block-flex {
	width: 491px;
	padding: 20px;
}

.Videos__Link a {
	width: 100%;
}

.Videos__Link-flex {
	width: 100%;
}

.Video__Brand dl {
	width: 100%;
}



.button02 {
	margin: 10px 0;
}

.button02 a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto;
	padding: 5px 0;
	width: 135px;
	color: #232323;
	font-size: 10px;
	letter-spacing: 0.05rem;
	/* background-color: #cccccc; */
	transition: 0.5s;
	border-radius: 2px;
	border-bottom: 1px solid #DCDCDC;
}

.button02 a::after {
	content: url(../img/redArrow2.svg);
	width: 15px;
	height: 15px;
	display: inline-block;
	vertical-align: middle;
	transform: scale(1);
}

.button02 a:hover {
	text-decoration: none;
	opacity: 0.3;
}

.button__Layout {
	position: relative;
}

.button {
	position: fixed;
	bottom: 70px;
	right: 0;
}

.button a {
	width: 250px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto;
	padding: 1em 2em;
	color: #fff;
	font-size: 12px;
	background-color: #DF1F1C;
	transition: 0.5s;
	border: 1px solid #DF1F1C;
}

.button a::after {
	content: url(../img/redArrow.svg);
	width: 20px;
	height: 20px;
	display: inline-block;
	vertical-align: middle;
	transform: scale(1);
}

.button a:hover {
	opacity: 0.5;
	text-decoration: none;
	color: #fff;
	background-color: #DF1F1C;
}

.button-top {
	position: fixed;
	bottom: 15px;
	right: 0;
}


.button-top a {
	transition-duration: 0.5s;
	transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1);

	width: 250px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto;
	padding: 1em 2em;
	color: #DF1F1C;
	font-size: 12px;
	background-color: #fff;
	transition: 0.5s;
	border: 1px solid #DF1F1C;
}

.button-top a::after {
	content: url(../img/redArrow.svg);
	width: 20px;
	height: 20px;
	display: inline-block;
	vertical-align: middle;
	transform: scale(1);
}

.button-top a:hover {
	opacity: 0.8;
	text-decoration: none;
	color: #fff;
	background-color: #DF1F1C;
}






.btm_warp {
	display: block;
	justify-content: space-between;
	padding: 40px 0;
	margin: 20px auto 0;
}

.button01 a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto 20px;
	padding: 1em 2em;
	width: 500px;
	color: #DF1F1C;
	font-size: 18px;
	font-weight: 700;
	/* background-color: #cccccc; */
	transition: 0.5s;
	border-radius: 1px;
	border: 1px solid #DF1F1C;
	box-shadow: 0 10px 20px 0 rgb(0 0 0 / 5%);
}

.Features__Warp .btm_warp {
	display: block;
	justify-content: space-between;
	padding: 40px 0 80px;
	margin: 20px auto 0;
}


.button01 a::after {
	content: url(../img/redArrow.svg);
	width: 20px;
	height: 20px;
	display: inline-block;
	vertical-align: middle;
	transform: scale(1);
}

.button01 a:hover {
	text-decoration: none;
	color: #fff;
	background-color: #DF1F1C;
}



@media only screen and (max-width: 640px) {
	.topBtn {
		right: 0px;
	}
	
}