@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@700&family=Noto+Serif+JP&display=swap');
html {
	font-size: 62.5%;
	height: 100%;
}
body {
	width: 100vw;
	height: auto;
	font-size: 12px;
	font-size: 1.2rem;
	font-family: "Noto Sans JP", sans-serif;
	line-height: 200%;
	overflow-x: hidden;
	overflow-y: auto;
}
img[width="1"] {
	position: fixed;
	top: 0;
	left: 0;
}
#contentsWrapper .dispWide {
	display: block;
}
#contentsWrapper .dispNarrow {
	display: none;
}
@media screen and (max-width: 800px) {
	#contentsWrapper .dispWide {
		display: none;
	}
	#contentsWrapper .dispNarrow {
		display: block;
	}
}
#contentsWrapper .cover {
	width: 100%;
	height: auto;
}
#contentsWrapper .cover80 {
	width: 80%;
	height: auto;
	margin-left: auto;
	margin-right: auto;
}
#includeFooter {
	position: relative;
	z-index: 50;
}
#contentsWrapper {
	position: relative;
	width: 100%;
	color: #000;
	letter-spacing: 0.05em;
	box-sizing: border-box;
	background-color: #fff;
	background-attachment: fixed;
	background-image: url("../images/bgLoopWhite.jpg");
	background-position: center top;
	background-repeat: repeat-y;
	background-size: 100% auto;
	overflow: hidden;
	z-index: 10;
}
@media screen and (min-width: 1281px) and (max-width: 1500px) {
	#contentsWrapper {
		background-size: auto auto;
	}
}
@media screen and (min-width: 801px) and (max-width: 1280px) {
	#contentsWrapper {
		background-size: 117.1875% auto;
	}
}
@media screen and (max-width: 800px) {
	#contentsWrapper {
		background-attachment: scroll;
		background-size: 200% auto;
	}
}
#contentsWrapper .widthWrapper {
	position: relative;
	width: 85.333333%;
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
	overflow: hidden;
}
#contentsWrapper .widthWrapper .innerWrapper {
	width: 78.125%;
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}
#contentsWrapper .tweetWrapper {
	width: 100%;
	max-width: 550px;
	margin-left: auto;
	margin-right: auto;
}
#contentsWrapper .widthWrapper .scrollBox {
	height: 60vh;
	padding: 2em;
	/*
	background-color: rgba(254,71,0,0.05);
	*/
	overflow-y: scroll;
}
#contentsWrapper .frameWrapper {
	position: relative;
	width: 100%;
	height: 75vh;
}
#contentsWrapper .frameWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
@media screen and (max-width: 800px) {
	#contentsWrapper .widthWrapper {
		width: 98%;
	}
	#contentsWrapper .widthWrapper .innerWrapper {
		width: 92%;
	}
	#contentsWrapper .widthWrapper .scrollBox {
		padding: 1em;
	}
}
#contentsWrapper .alignCenter {
	text-align: center;
}
#contentsWrapper .alignRight {
	text-align: right;
}
#contentsWrapper .alignLeft {
	text-align: left;
}
#contentsWrapper .fontEn {
	font-family: 'Montserrat', sans-serif;
}
#contentsWrapper .fontJp {
	font-family: 'G2サンセリフ-B', 'GSanSerif-B', sans-serif;
}
#contentsWrapper .fontBold {
	font-weight: bold;
}
#contentsWrapper .text54 {
	font-size: 54px;
}
#contentsWrapper .text45 {
	font-size: 45px;
}
#contentsWrapper .text40 {
	font-size: 40px;
}
#contentsWrapper .text20 {
	font-size: 20px;
}
#contentsWrapper .text16 {
	font-size: 16px;
}
#contentsWrapper .text0 {
	font-size: 0;
}
@media screen and (min-width: 801px) and (max-width: 1280px) {
	#contentsWrapper .text54 {
		font-size: 4.21875vw;
	}
	#contentsWrapper .text45 {
		font-size: 3.515625vw;
	}
	#contentsWrapper .text40 {
		font-size: 3.125vw;
	}
	#contentsWrapper .text20 {
		font-size: 1.5625vw;
	}
	#contentsWrapper .text16 {
		font-size: 1.25vw;
	}
}
@media screen and (max-width: 800px) {
	#contentsWrapper .text54 {
		font-size: 5.5vw;
	}
	#contentsWrapper .text45 {
		font-size: 4.25vw;
	}
	#contentsWrapper .text40 {
		font-size: 4vw;
	}
	#contentsWrapper .text20 {
		font-size: 3.5vw;
	}
	#contentsWrapper .text16 {
		font-size: 3vw;
	}
}
#contentsWrapper .lineHeight120 {
	line-height: 1.2;
}
#contentsWrapper .lineHeight160 {
	line-height: 1.6;
}
#contentsWrapper .lineHeight200 {
	line-height: 2;
}
#contentsWrapper .marginTopHarf {
	margin-top: 0.5em!important;
}
#contentsWrapper .marginTop1em {
	margin-top: 1em!important;
}
#contentsWrapper .marginTop2em {
	margin-top: 2em!important;
}
#contentsWrapper .marginTop3em {
	margin-top: 3em!important;
}
#contentsWrapper .marginTop4em {
	margin-top: 4em!important;
}
#contentsWrapper .marginTopAuto {
	margin-top: auto!important;
}
#contentsWrapper .marginRightHarf {
	margin-right: 0.5em!important;
}
#contentsWrapper .paddingHorizontal2em {
	padding-left: 2em;
	padding-right: 2em;
}
#contentsWrapper .paddingVertical1em {
	padding-top: 1em;
	padding-bottom: 1em;
}
#contentsWrapper .paddingVertical2em {
	padding-top: 2em;
	padding-bottom: 2em;
}
#contentsWrapper a {
	color: #ff6c00;
	padding-left: 0.25em;
	padding-right: 0.25em;
	background-color: transparent;
	text-decoration: none!important;
	-webkit-transition: all 0.15s ease;
	transition: all 0.15s ease;
}
#contentsWrapper a.hover {
	color: #fff;
	background-color: #ff6c00;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
#contentsWrapper a.opacity {
	opacity: 1;
	-webkit-transition: all 0.15s ease;
	transition: all 0.15s ease;
}
#contentsWrapper a.opacity.hover {
	opacity: 0.75;
	background-color: transparent;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
#contentsWrapper a.deactive {
	pointer-events: none;
}
#contentsWrapper .textDark {
	color: #313131;
}
#contentsWrapper .textWhite {
	color: #fff;
}
#contentsWrapper .textOrange {
	color: #ff6c00;
}
#contentsWrapper .textRed {
	color: #f00;
}
#contentsWrapper .bgWhite {
	background-color: #fff;
}
/*デフォルトカラー*/
/*
#contentsWrapper .textGray {
	color: #404040;
}
#contentsWrapper .textWhite,
#contentsWrapper a .textWhite {
	color: #fff;
}
#contentsWrapper .textYellow {
	color: #ddd685;
}
#contentsWrapper .closingText {
	display: inline-block;
	color: #fff;
	padding: 0.5em 1em;
	background-color: #fe4700;
	border-radius: 2em;
}
*/
/*flexBlock*/
#contentsWrapper .flexBlock,
#contentsWrapper .flexBlock .thumbBlock {
	display: -webkit-flex;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	flex-direction: row;
	flex-shrink: 0;
	list-style: none;
}
#contentsWrapper .flexBlockSpaceBtwn {
	display: -webkit-flex;
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	flex-direction: row;
	flex-wrap: wrap;
	flex-shrink: 0;
}
#contentsWrapper .flexBlockSpaceEven {
	display: -webkit-flex;
	display: flex;
	align-items: stretch;
	justify-content: space-evenly;
	flex-direction: row;
	flex-wrap: wrap;
	flex-shrink: 0;
}
#contentsWrapper .flexBlock .thumbBlock {
	flex-direction: column;
	align-items: stretch;
	justify-content: space-between;
}
#contentsWrapper .flexBetween {
	justify-content: space-between;
}
#contentsWrapper .flexBlock .flexSplit {
	width: 48%;
}
/*btn*/
#contentsWrapper .btn {
	width: 50%;
	max-width: 440px;
	margin-left: auto;
	margin-right: auto;
	line-height: 1;
}
#contentsWrapper .btn > a {
	display: block;
	width: 100%;
	padding: 1em;
	/*
	background: linear-gradient(90deg, rgba(255,108,0,1) 50%, rgba(255,255,255,1) 50%);
	*/
	background: linear-gradient(90deg, rgba(247,146,28,1) 50%, rgba(255,255,255,1) 50%);
	background-position: right bottom;
	background-size: 200% 100%;
	border: 2px solid #ff6c00;
	box-sizing: border-box;
}
#contentsWrapper .btn > a > span {
	display: block;
	width: 100%;
	height: 100%;
	color: #ff6c00;
	background-image: url("../images/_svg/iconArrowOrange.svg");
	background-position: right center;
	background-repeat: no-repeat;
	background-size: 1em auto;
	-webkit-transition: all 0.15s ease;
	transition: all 0.15s ease;
}
#contentsWrapper .btn > a.hover {
	background-position: left bottom;
	-webkit-transition: all 0.25s ease;
	transition: all 0.25s ease;
}
#contentsWrapper .btn > a.hover > span {
	color: #fff;
	background-image: url("../images/_svg/iconArrowWhite.svg");
	-webkit-transition: all 0.35s ease;
	transition: all 0.35s ease;
}
@media screen and (max-width: 800px) {
	#contentsWrapper .btn {
		width: 80%;
	}
}
/* sns */
#contentsWrapper .snsBlock {
	position: relative;
	width: 100%;
	height: 20px;
	margin: 0 auto;
	padding: 8px 0;
	overflow: visible;
	display: -webkit-flex;
	display: flex;
	justify-content: center;
	flex-shrink: 0;
}
#contentsWrapper .snsBlock .snsBtn {
	height: 20px;
	margin: 0 4px 0 0;
	line-height: 100%;
	display: block;
}
@media screen and (max-width: 800px) {
	#contentsWrapper .snsBlock {
		margin-top: 1em;
	}
}
/*common*/
#contentsWrapper .sectionTitle {
	display: inline-block;
	position: relative;
	padding: 0 4.5em;
}
#contentsWrapper .sectionTitle::before,
#contentsWrapper .sectionTitle::after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	width: 4em;
	height: 4em;
	background-image: url('../images/_svg/iconTitle.svg');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
}
#contentsWrapper .sectionTitle::before {
	left: 0;
	transform: translateY(-50%) scale(-1,1);
}
#contentsWrapper .sectionTitle::after {
	right: 0;
	transform: translateY(-50%);
}
#contentsWrapper .sectionTitle > span {
	display: block;
}
#contentsWrapper .textAttention,
#contentsWrapper .listText > li {
	text-indent: -1em;
	padding-left: 1em;
}
#contentsWrapper .movieWrapper {
	position: relative;
	width: 100%;
	height: 0;
	margin: 0 auto;
	padding-top: 56.25%;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	overflow: hidden;
}
#contentsWrapper .movieWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#contentsWrapper .movieWrapper span,
#contentsWrapper .movieWrapper span img,
#contentsWrapper .movieWrapper span span {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#contentsWrapper .movieWrapper span span {
	display: block;
	background-image: url("../images/btnPlay.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
@media screen and (min-width: 801px) and (max-width: 1280px) {
}
@media screen and (max-width: 800px) {
}
/*header*/
#contentsWrapper header {
	position: relative!important;
	width: 100%;
	max-width: 1080px;
	height: 14.814814vw;
	max-height: 160px;
	margin: 0 auto;
	background-image: url("../images/header.2305.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
}
/* kv */
#contentsWrapper .kv {
	height: 53.125vw;
	max-height: 680px;
}
#contentsWrapper .kv .slider,
#contentsWrapper .kv .slider .slick-list,
#contentsWrapper .kv .slider .slick-slide {
	height: 46.875vw;
	max-height: 600px;
}
#contentsWrapper .kv .slider .slide {
	display: block;
	width: 100%;
	height: 100%;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
}
/* subBanner */
#contentsWrapper .subBanner {
	width: 93.375%;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}
/*lineup*/
#contentsWrapper #lineup {
	background-image: url("../images/bgLineup.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
#contentsWrapper .thumbBlock {
	position: relative;
	width: 23%;
	margin: 2em 1% 0;
	padding-bottom: 0.25em;
	background-color: #f7921c;
	box-sizing: border-box;
}
#contentsWrapper .thumbBlock > a {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#contentsWrapper .thumbBlock > span {
	display: block;
}
#contentsWrapper .thumbBlock > span.thumb {
	position: relative;
	width: 100%;
	padding-top: 100%;
	line-height: 0;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 100% auto;
	box-sizing: border-box;
	-webkit-transition: all 0.15s ease;
	transition: all 0.15s ease;
}
#contentsWrapper .thumbBlock.hover > span.thumb {
	background-size: 105% auto;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
#contentsWrapper .thumbBlock > span.itemName {
	padding: 0.5em 0.5em 0;
}
#contentsWrapper .thumbBlock > span.itemPrice {
	padding-top: 0.5em;
}
@media screen and (max-width: 800px) {
	#contentsWrapper .thumbBlock {
		position: relative;
		width: 48%;
	}
}

/* キャンペーン部分 */
#contentsWrapper #camp {
	background-image: url("../images/bgLoopYellow.png");
	background-attachment: fixed;
	background-position: center top;
	background-repeat: repeat-y;
	background-size: 100% auto;
}
#contentsWrapper .bgOrange {
    background-color: #ff6c00;
}
#contentsWrapper .btnDownload a {
	display: inline-block;
	padding: 0.4em 5em 0.4em 3em;
	background-image: url("../images/_svg/iconDownload.svg");
	background-position: right 1.5em center;
	background-repeat: no-repeat;
	background-size: 1em auto;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
#contentsWrapper .btnDownload a.hover {
	background-position: right 1.5em bottom 0.5em;
	-webkit-transition: all 0.15s ease;
	transition: all 0.15s ease;
}

@media screen and (min-width: 1281px) and (max-width: 1500px) {
	#contentsWrapper #camp {
		background-size: auto auto;
	}
}
@media screen and (min-width: 801px) and (max-width: 1280px) {
	#contentsWrapper #camp {
		background-size: 117.1875% auto;
	}
}
@media screen and (max-width: 800px) {
	#contentsWrapper #camp {
		background-attachment: scroll;
		background-size: 200% auto;
	}
	#contentsWrapper .btnDownload a {
		display: block;
		padding: 0.4em 3em 0.4em 2em;
		background-position: right 0.75em center;
	}
}


#contentsWrapper #special > div {
	padding: 2em 1em;
}
@media screen and (min-width: 801px) and (max-width: 1280px) {
	#contentsWrapper #special {
		margin-top: 10vw;
	}
}
@media screen and (max-width: 800px) {
	#contentsWrapper #special {
		margin-top: 5em;
	}
}
/*footer*/
#contentsWrapper footer {
	background-color: #ceeeff;
}
/*3億個スクロール*/
#contentsWrapper .pika > span {
	display: inline-block;
	padding: 1em 0 1em 2.5em;
	background-image: url("../scroll/img/pika.png");
	background-position: left center;
	background-repeat: no-repeat;
	background-size: 2.5em auto;
}
#contentsWrapper .pika > span > span.fontEn {
	display: inline-block;
	padding: 0 0.5em;
}
@media screen and (max-width: 800px) {
	#contentsWrapper .pika > span {
		padding: 5em 0 1em;
		background-position: center top;
		background-size: auto 5em;
	}
	#contentsWrapper .pika > span > span {
		display: block;
	}
	#contentsWrapper .pika > span > span + span {
		display: inline-block;
	}
	#contentsWrapper .pika > span > span.fontEn {
		padding: 0 0.5em 0 0;
	}
}

#contentsWrapper .movieList li {
	margin-bottom: 3em;
}
#contentsWrapper .movieList li a {
	display: block;
	position: relative;
	width: 100%;
	margin-bottom: 1em;
	padding-top: 56.25%;
	border: 1px solid #c5c5c5;
	overflow: hidden;
}
#contentsWrapper .movieList li a img {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 101%;
	height: auto;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	box-sizing: border-box;
	-webkit-transition: all 0.1s ease;
	transition: all 0.25s ease;
}
#contentsWrapper .movieList.flexList3 li a img {
	width: 102%;
}
#contentsWrapper .movieList li a img + img,
#contentsWrapper .movieList.flexList3 li a img + img {
	width: 10%;
	height: auto;
}
#contentsWrapper .movieList li a:hover img {
	transition: 0.5s;
	opacity: 1;
}
#contentsWrapper .movieList li a:hover img + img {
	transition: 0.25s;
  opacity: 0.6;
}
#contentsWrapper .movieWrapper {
	position: relative;
	width: 100%;
	height: 0;
	margin: 0 auto 1em;
	padding-top: 56.25%;
	overflow: hidden;
}
#contentsWrapper .movieWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

#contentsWrapper .flexList2narrow li {
	width: 48%;
}
#contentsWrapper .flexList2narrow li{
	width: 48%;
}
@media screen and (max-width: 800px) {
	#contentsWrapper .flexList2narrow li{
		width: 100%;
	}
	#contentsWrapper .movieList li {
		margin-bottom: 1em;
	}
}
