/* reset */
html, body, div, span, p, a, img, ul, li, section {
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	margin: 0;
	padding: 0;
	margin-top: 0;
}
ul {
	list-style: none;
}
/* .row {
	margin-right: 0 !important;
	margin-left: 0 !important;
}
.container, .col-sm-1, .col-sm-10, .col-sm-12, .col-sm-2, .col-sm-8 {
	padding-right: 0 !important;
	padding-left: 0 !important;
} */
.container {
	width: 100% !important;
}
a {
	outline: none;
	color: #000;
	text-decoration: none;
}
a:link {
	color: #333;
}
a:hover {
	text-decoration: none;
}

/* global */
section {
	font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
}
.ff {
	font-family: 'Cochin', "GFS Didot", Arial, sans-serif;
}
.fs {
	font-family: 'Times New Roman', 'YuMincho', 'Hiragino Mincho ProN', 'Yu Mincho', 'MS PMincho', serif !important;
}
.fs2 {
	font-family: Didot,Didot LT STD,Hoefler Text,Garamond,Times New Roman,serif;
}
section img {
	width: 100%;
	max-width: 100%;
	vertical-align: bottom;
}

/* common */
#pageTop {
	position: fixed;
	bottom: 2vw;
	right: 2vw;
	z-index: 9;
}
#pageTop a {
	display: block;
	z-index: 9;
	padding: 8px;
	border-radius: 0;
	width: 35px;
	height: 35px;
	background-color: #231815;
	color: #fff;
	font-weight: 700;
	text-decoration: none;
	text-align: center;
}
@media screen and (max-width: 767px) {
   /* SP */
	.pc {
		display: none !important;
   }
}
@media screen and (min-width: 768px) {
   /* PC */
	.sp {
		display: none !important;
   }
	.container {
		padding-right: 0px;
		padding-left: 0px;
		margin-right: auto;
		margin-left: auto;
   }
}

/* FS_page_init */
#header {
	/*はじめの高さを設定*/
	height: 7vw;
	width: 100%;
	/*以下はレイアウトのためのCSS*/
	display: flex;
	justify-content: space-between;
	align-items: center;
}

/*HeightMinというクラス名がついたら高さを小さく、上部固定に*/
#header.HeightMin {
	position: fixed;
	z-index: 999;
	/*最前面へ*/
	height: 0px;
	animation: DownAnime 0.5s forwards;
	margin-top: -7vw !important;
}

@keyframes DownAnime {
	from {
		opacity: 0;
		transform: translateY(-14vw);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

main {
	height: 100%;
	padding: 0 0px;
	background-color: #fff;
	transition: all .5s;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

@media screen and (max-width: 767px) {
	main {
		margin-top: 0vw;
	}
}

@media screen and (min-width: 768px) {
	main {
		margin-top: 0vw !important;
	}
}

@media screen and (min-width: 768px) {
	.container {
		padding-right: 0px;
		padding-left: 0px;
		margin-right: auto;
		margin-left: auto;
	}
}

@media screen and (max-width: 767px) {
	#line_frds_add_pdct {
		border-style: none;
		margin: 0 auto;
		padding: 0 0 1vw;
	}
	#line_frds_add_pdct img {
		width: 100vw;
        height: 100%;
	}
}

@media screen and (min-width: 768px) {
	#line_frds_add_pdct {
		border-style: none;
		margin: 0 auto;
		padding: 0 0 1vw;
	}
	#line_frds_add_pdct img {
		width: 70vw;
        height: 100%;
	}
}


/* section */
@media screen and (max-width: 767px) {
   /* SP */
	.head_kv {
		width: 100%;
		position: relative;
   }
	.head_kv img {
		width: 100%;
		height: 100%;
   }
	#pageTop a {
		display: block;
		width: 20vw;
		height: 20vw;
		border-radius: 50px;
   }
   .is-webp #pageTop a {
		background-image: url(/wp-content/themes/mytrex/img/page/xmas22/pagetop.png.webp);
		background-color: transparent;
		background-position: left;
		background-size: contain;
		background-repeat: no-repeat;
	}
   .is-no-webp #pageTop a {
		background-image: url(/wp-content/themes/mytrex/img/page/xmas22/pagetop.png);
		background-color: transparent;
		background-position: left;
		background-size: contain;
		background-repeat: no-repeat;
	}
	#pageTop a img {
		display: none;
   }
}
@media screen and (min-width: 768px) {
   /* PC */
	.head_kv {
		width: 100%;
		position: relative;
   }
	.head_kv img {
		width: 100%;
		height: 100%;
   }
	#pageTop a {
		display: block;
		width: 7vw;
		height: 7vw;
		border-radius: 50px;
   }
   .is-webp #pageTop a {
		background-image: url(/wp-content/themes/mytrex/img/page/xmas22/pagetop.png.webp);
		background-color: transparent;
		background-position: left;
		background-size: contain;
		background-repeat: no-repeat;
	}
   .is-no-webp #pageTop a {
		background-image: url(/wp-content/themes/mytrex/img/page/xmas22/pagetop.png);
		background-color: transparent;
		background-position: left;
		background-size: contain;
		background-repeat: no-repeat;
	}
	#pageTop a img {
		display: none;
   }
}

/* foot */
@media screen and (max-width: 767px) {
	.foot_shop {
		background: #000000;
		color: #fff;
		text-align: center;
		font-size: 2.0vw;
		line-height: 3vw;
		padding: 2vw 0vw 2vw;
   }
	.foot_shop a {
		color: #fff;
   }
	.foot_shop a:hover {
		color: #e5e7ff;
   }
}
@media screen and (min-width: 768px) {
	.foot_shop {
		background: #000000;
		color: #fff;
		text-align: center;
		font-size: 0.7vw;
		line-height: 1.1vw;
		padding: 1vw 0vw 1vw;
   }
	.foot_shop a {
		color: #fff;
   }
	.foot_shop a:hover {
		color: #e5e7ff;
   }
}


/* rebive-series */

@media screen and (min-width: 768px) {
	.head_menu {
		display: flex;
		justify-content: center;
		column-gap: 1vw;
		margin-bottom: 10vw;
	}
	.menu_series {
		width: 25.9vw;
	}
	.menu_about {
		width: 21.0vw;
	}
	.series_table {
		display: flex;
		margin-left: 8vw;
		margin-right: 8vw;
	}
	.btn_area {
    	position: relative;
	}
	.btn_wrap {
		width: 99%;
		position: absolute;
		left: 0.9%;
		bottom: 0;
		display: flex;
		justify-content: space-between;
	}
	.btn_link {
		width: 16.66%;
		height: 5.375vw;
		padding: 0;
		border: none;
	}
	.btn_link img {
    	width: 100%;
	}
	.btn_link a {
		display: block;
		height: 100%;
		border:none;
		outline: none;
	}
	.item_box {
		margin-left: 8vw;
		margin-right: 8vw;
		margin-bottom: 14vw;
	}
	.item_link a {
		display: block;
		width: 100%;
		background-color: #3a3b3b;
		padding: 2vw;
		font-size: 2vw;
		line-height: 1;
		letter-spacing: 0.06em;
		text-align: center;
		color: #fff;
	}
	#item_about {
		background-color: #f5f5f5;
	}
	.item_about_list {
		background-color: #fff;
		margin-left: 3.6vw;
		margin-right: 3.6vw;
	}
	.full-width {
		margin-left: calc(-50vw + 50%);
		margin-right: calc(-50vw + 50%);
	}
	.item_about_list .accordion {
		margin-left: 9vw;
		margin-right: 9vw;
	}
	#item_about .animation {
		position: relative;
	}
	#item_about .animation_01 {
		margin-bottom: 3vw;
	}
	#item_about .animation_02 {
		width: 100vw;
		position: absolute;
		left: 0;
		top: 22.3vw;
	}
}

@media screen and (max-width: 767px) {
	.head_menu {
		width: auto;
		margin-left: 18vw;
		margin-right: 18vw;
		margin-bottom: 14vw;
		display: flex;
		flex-direction: column;
		row-gap: 1.5vw;
	}
	.series_table {
		display:flex;
		height: 98.8vw;
		position: relative;
	}
	.series_table img {
		max-width: none;
		width: auto;
	}
	.table_th {
		width: 22vw;
		position: absolute;
		left: 0;
		top: 0;
	}
	.table_th img {
		width: 100%;
	}
	.table_td {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		margin-left: 22vw;
		position: relative;
	}
	.table_td img {
		height: 100%;
	}
	.btn_area {
    	/* position: relative; */
	}
	.btn_wrap {
		width: 100%;
		width: 242%;
		position: absolute;
		left: 0.9%;
		bottom: 0;
		display: flex;
		justify-content: space-between;
	}
	.btn_link {
		width: 16.66%;
		height: 9.833vw;
		padding: 0;
		border: none;
	}
	.btn_link img {
    	width: 100%;
	}
	.btn_link a {
		display: block;
		height: 100%;
		border:none;
		outline: none;
	}
	.item_box {
		margin-bottom: 28vw;
	}
	.item_link {
		margin-left: 6vw;
		margin-right: 6vw;
	}
	.item_link a {
		display: block;
		width: 100%;
		background-color: #3a3b3b;
		padding: 1.5vw;
		font-size: 3.3vw;
		letter-spacing: 0.06em;
		color: #fff;
		text-align: center;
	}
	.animation {
		position: relative;
	}
	.item_about_list .animation_01 {
		width: 93.3vw;
		position: absolute;
		left: 3.5vw;
		top: 52vw;
	}
	.accordion_bg {
		background-color: #f8f8fa;
		padding-bottom: 9.5vw;
	}
	#item_about .accordion {
		margin-left: 9.5vw;
		margin-right: 9.5vw;
	}
	.item_about_list .animation_02 {
		width: 90.6vw;
		position: absolute;
		left: 5vw;
		top: 104vw;
	}
}

/* accordion */
.accordion {
	position: relative;
}
.accordion__ttl {
	cursor: pointer;
}
.accordion__ttl.is-active {
	opacity: 0;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
}
.accordion__cnt {
	width: 100%;
	height: 0;
	overflow: hidden;
	transition: 0.2s ease height;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
}