@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Kanit:wght@600&display=swap');

/********** browser default initialization **********/

body, div, dl, dt, dd, ul, ul li, h1, h2, h3, h4, h5, h6,
pre, form, fieldset, input, textarea, p, blockquote, th, td,
section, nav, article, aside, hgroup, header, address,
figure, figcaption {
	margin: 0;
}
address, caption, cite, code, dfn, em, strong, th, var {
	font-style: normal;
	font-weight: normal;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
caption, th {
	text-align: left;
}
q:before ,q:after {
	content: '';
}
object, embed {
	vertical-align: top;
}
hr, legend {
	display: none;
}
h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
	font-weight: normal;
}
img, abbr, acronym, fieldset {
	border: 0;
}
img {
	vertical-align: top;
	-ms-interpolation-mode: bicubic;
}
ul li {
	list-style-type: none;
	margin:0;
	padding:0;
}


/* =========================================================
	basic style
========================================================= */
html{
	height:	100%;
	font-size:	62.5%;
	overflow-x:	hidden;
	}

body{
	margin:	0;
	padding:	0;
	height:	100%;
	background:	#000;
	color:	#fff;
	font-size:	16px;
	font-size:	1.6rem;
	line-height:	1.8;
	letter-spacing:	2px;
	font-family: 'Noto Sans JP', sans-serif,游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴ Pro','Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ ゴシック',’MS PGothic’, Arial, Helvetica, Geneva, Swiss, SunSans-Regular, sans-serif;
	text-align:	center;
	-webkit-text-size-adjust:	100%;
	}

	.pc{
	display:	block;
	}

	.pc_tablet{
	display:	block;
	}

	.tablet_phone	{
	display:	none;
	}

	.tablet	{
	display:	none;
	}

	.phone	{
	display:	none;
	}

ul{
	margin:	0;
	padding:	0;
	}

p	{
		margin:	1.2em 0 1.2em 0;
		line-height:	1.5;
		text-align:	left;
}

a	{
	overflow: hidden;
	outline: none;
	border:	none;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

a:focus	{
	outline:none;
}

a:link	{
		color:#e6006a;
		text-decoration: none;
	}

a:visited	{
		color:#e6006a;
		text-decoration: none;
		}

a:hover	{
		color:#fb79b5;
		text-decoration: none;
		}

a:active	{
		color:#fbb4cd;
		text-decoration: none;
		}

img	{
		margin:	0;
		border:	0;
		}

a img	{
		margin:	0;
		border:	0;
		}

a:hover img{
	opacity:	0.7;
	-moz-opacity:	0.7;
	filter: alpha(opacity=70);
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}


/* ----- fade in ----- */
.fade {
  transition: all 2000ms;
  opacity: 0;
  visibility: hidden;
  transform: translate(0px, 50px);
}

.fadein {
  opacity: 1;
  visibility: visible;
  transform: translate(0px, 0px);
}



.fade-in-bottom {
   opacity: 0;
   animation-delay:1.0s;
   animation-name: fadein-bottom;
   animation-duration: 1.5s;
   animation-timing-function: ease-out;
   animation-fill-mode: forwards;
}
@keyframes fadein-bottom {
   0% {
      opacity: 0;
      transform: translateY(30px);
   }
   100% {
      opacity: 1;
      transform: translateY(0);
   }
}



header{
	width:100%;
	height:550px;
	margin:0;
	background-color:#fff;
	background-image:url(../img/header_bg.jpg);
	background-repeat: no-repeat;
	background-size:cover;
	background-position: bottom center;
}

header h1 img{
	width:600px;
	height:auto;
	margin:80px 0 0 0;
}

.navigator_area{
	width:300px;
	margin:30px auto 0 auto;
}

.navigator_area img{
	width:200px;
	height:auto;
	-moz-border-radius:    00%;
	-webkit-border-radius:    00%;
	border-radius:    100%;
}

.navigator_area figcaption{
	color:#000;
	font-size:1.8rem;
	letter-spacing: 4px;
	text-align:center;
	font-family: "Noto Sans JP";
}



main {
	overflow:	hidden;
	width: 100%;
	font-family: "Noto Sans JP";
}

p	{
	font-size:1.4rem;
	line-height:	1.8;
	text-align: center;

}

#jme	{
	margin:0 auto;
	padding:35px 0 20px 0;
	width:100%;
	background:#fff;
	text-align:center;
}


.inner	{
	overflow:hidden;
	width:1025px;
	margin:20px auto;
	padding:50px 0;
	tex-align:center;
}

.bg_wt{
	background:#fff;
}

/* ----- theme_area ----- */
.theme_area .inner h2	{
	margin:0 0 3.2rem 0;
	font-size:2.0rem;
	letter-spacing: 5px;
}


/* ----- banner ----- */
ul.bnr_area{
	overflow:hidden;
	width:1025px;
	margin:30px 0 0 0;
}

ul.bnr_area li{
	margin:40px 0 0 0;
}

img.mastercard_bnr1{
	width:480px;
	height:auto;
}
img.mastercard_bnr2{
	width:200px;
	height:auto;
	margin:0;
}



/* ----- top_msg_area ----- */
.top_msg_area{
	padding:20px 0 ;
	color: #000;
	font-size:1.8rem;
}

.top_msg_area h2{
	display:inline-block;
	font-size:2.4rem;
	margin:0 0 1.4rem;
	padding:0 1.5rem 0.1rem 1.5rem;
	border-bottom:4px solid #f79e1b;
}

.top_msg_area h3{
	margin:1.0rem;
	font-size:4.0rem;
	line-height:1.2;
}

.top_msg_area h3 span{
	font-size:1.8rem;
}


.top_msg_btn{
	width:700px;
	margin:40px auto 0 auto;
	border:1px solid #000;
}

.top_msg_btn_inner{
	display: inline-block;
	margin:0 0 0 20%;
}

.top_msg_btn a{
	padding:20px;
	display:block;
	color: #000;
	text-align:center;
}


.top_msg_btn p{
	font-size:1.8rem;
	margin:0 auto;
	text-align:center;
}

.side {
	display: flex;
	align-items: center;
}
.side::after {
	content: '';
	width: 150px;
	height: 6px;
	border-bottom: solid 1px #000;
	border-right: solid 1px #000;
	transform: skew(45deg);
	margin-left: 5px;
	margin-bottom: 10px;
}

.top_msg_btn a:hover{
	background: #f79e1b;
}

p.top_present_sticker{
		text-align: center;
	}

p.top_present_sticker img{
		width:400px;
		height:auto;
	}


/* ----- cast_live ----- */
.cast_live_area h2{
	margin:0 auto 0.8rem auto;
	font-family: 'Poppins', sans-serif;
	font-size:5.0rem;
	color:#eb001b;
}

.cast_live_area figure{
	overflow:hidden;
	width:80%;
	margin:0 auto 60px auto;
}

.cast_live_area figure img{
	width:100%;
}

.cast_live_area figcaption{
	margin:1.0rem 0 0 0;
	font-size:2.0rem;
}




/* ----- cast_guest ----- */
.cast_guest_area{
	overflow:hidden;
}


.cast_guest_area h2{
	margin:0 auto 0.8rem auto;
	font-family: 'Poppins', sans-serif;
	font-size:5.0rem;
	color:#f79e1b;
}

.cast_guest_area figure{
	float:left;
	overflow:hidden;
	width:32%;
	margin:0 2% 5% 0;
}

.cast_guest_area_figure figure:nth-child(3n){
	float:left;
	overflow:hidden;
	width:32%;
	margin:0 0 5% 0;
}

.cast_guest_area figure img{
	width:100%;
	height:auto;
}

.cast_guest_area figcaption{
	margin:0.6rem 0 0 0;
	font-size:1.8rem;
}



/* ----- photo gallery ----- */
.photo_area{
	overflow:hidden;
}

.photo_area h2{
	margin:0 auto 40px auto;
	font-family: 'Poppins', sans-serif;
	font-size:5.0rem;
	color:#eb001b;
	line-height: 0.9;
}





/* footer
--------------------------------------------------------- */
footer	{
	overflow:	hidden;
	width:	100%;
	margin:	100px 0 0 0;
	padding:	0 0 150px 0;
	color:#fff;
}

footer ul	{
	overflow:	hidden;
	width:	1025px;
	margin:	0 auto;
}

footer li	{
	text-align:left;
}

footer  #footer_home	{
	float:	left;
	height:	60px;
	margin:	0;
}

footer  #footer_home a img	{
	width:50%;
	height:auto;
	margin:	0;
	border:	0;
}

footer dl {
	float:	right;
}

footer #footer_j-wave_logo {
	text-align: right;
}

footer #footer_j-wave_logo img	{
	width:	auto !important;
	height:	20px !important;
}

footer dd#footer_copyright	{
	margin:5px 0 0 0;
	text-align:	right;
	font-size:	10px;
	font-family: dnp-shuei-gothic-kin-std, sans-serif;
	font-weight: 400;
	font-style: normal;
	letter-spacing: 1px;
	}



/* =========================================================
	media queries for tablet
========================================================= */
@media only screen and (max-width : 1024px){

	.pc{
	display:	none;
	}

	.pc_tablet{
	display:	block;
	}

	.tablet_phone	{
	display:	block;
	}

	.tablet	{
	display:	block;
	}

	.phone	{
	display:	none;
	}



#jme	{
	overflow: hidden;
	margin: 0 auto;
	width:100%;
	height:auto;
	padding:	5px 0;
	}




header{
	height:85vh;
	background-image:url(../img/header_bg_tablet.jpg);
	background-position: bottom center;
	}

header h1 img{
	width:80%;
	height:auto;
	margin:20vh 0 0 0;
	}

.navigator_area{
	width:250px;
	margin:20px auto 0 auto;
	}

.navigator_area img{
	width:150px;
	height:auto;
	-moz-border-radius:    00%;
	-webkit-border-radius:    00%;
	border-radius:    100%;
	}

.navigator_area figcaption{
	font-size:1.8rem;
	}

#jme	{
	padding:15px 0 20px 0;
	}

.inner	{
	width:90%;
	margin:15px auto;
	padding:30px 0;
	}

/* ----- theme_area ----- */
.theme_area .inner h2	{
	font-size:1.8rem;
	margin:0 0 3.2rem 0;
	}

/* ----- banner ----- */
ul.bnr_area{
	overflow:hidden;
	width:90%;
	margin:20px auto 0 auto;
	}

ul.bnr_area li{
	margin:40px 0 0 0;
	}

img.mastercard_bnr1{
	width:480px;
	height:auto;
	}
img.mastercard_bnr2{
	width:200px;
	height:auto;
	margin:0;
	}


/* ----- top_msg_area ----- */
.top_msg_area{
	padding:20px 0 ;
	color: #000;
	font-size:1.8rem;
	}

.top_msg_area h2{
	font-size:2.0rem;
	}

.top_msg_area h3{
	margin:1.0rem;
	font-size:3.0rem;
	}

.top_msg_area h3 span{
	font-size:1.8rem;
	}

.top_msg_btn{
	width:80%;
	margin:20px auto 0 auto;
	}


/* ----- cast_live ----- */
.cast_live_area figure{
	width:100%;
	margin:0 auto 30px auto;
}

.cast_live_area figcaption{
	margin:0.8rem 0 0 0;
	font-size:1.8rem;
}

/* footer
--------------------------------------------------------- */
footer	{
margin:	70px auto 0 auto;
padding:	0 0 100px 0;
}

footer ul	{
width:	90%;
}

#footer_home	{
float:	left;
height:	60px;
margin:	0;
}

footer dl {
float:	right;
}

footer dt#footer_j-wave {
text-align: right;
}

footer dt#footer_j-wave img	{
width:	auto;
height:	20px;
background:	#fff;
}

footer dd#footer_copyright	{
text-align:	right;
font-size:	10px;
}

}




/* =========================================================
	media queries for smartphone 1
========================================================= */
@media only screen and (max-width : 599px){


	.pc{
	display:	none;
	}

	.pc_tablet{
	display:	none;
	}

	.tablet_phone	{
	display:	block;
	}

	.tablet	{
	display:	none;
	}

	.phone	{
	display:	block;
	}

a:hover img{
	opacity:	1.0;
	-moz-opacity:	1.0;
	filter: alpha(opacity=100);
}


header{
	height:75vh;
	background-position: bottom center;
}

header h1 img{
	width:90%;
	height:auto;
	margin:25vh 0 0 0;
	}

#jme	{
	padding:20px 0 20px 0;
	}

.inner	{
	width:95%;
	margin:10px auto;
	padding:20px 0;
	}

/* ----- theme_area ----- */
.theme_area .inner h2	{
	font-size:1.6rem;
	text-align:left;
	margin:0 0 2.0rem 0;
	}

/* ----- banner ----- */
ul.bnr_area{
	overflow:hidden;
	width:100%;
	margin:20px auto 0 auto;
	}

ul.bnr_area li{
	margin:40px 0 0 0;
	}

img.mastercard_bnr1{
	width:80%;
	height:auto;
	}

img.mastercard_bnr2{
	width:150px;
	height:auto;
	}

/* ----- top_msg_area ----- */
.top_msg_area{
	padding:10px 0 ;
	font-size:1.6rem;
	}

.top_msg_area h2{
	font-size:2.0rem;
	}

.top_msg_area h3{
	margin:1.0rem;
	font-size:2.0rem;
	}

.top_msg_area h3 span{
	font-size:1.6rem;
	}

.top_msg_area p{
		text-align:left;
	}

.top_msg_btn{
	box-sizing:border-box;
	width:90%;
	margin:20px auto 0 auto;
	}

.top_msg_btn p{
		font-size:1.6rem;
	}

.side::after {
	content: '';
	width: 50px;
	}

.top_msg_btn a:hover{
	background: none;
	}

	p.top_present_sticker{
			text-align: center;
		}

p.top_present_sticker img{
		width:70%;
		height:auto;
		margin:0 auto;
	}

/* ----- cast_live ----- */
.cast_live_area h2{
	margin:0 auto 0.4rem auto;
	font-size:3.8rem;
	}

.cast_live_area figcaption{
	font-size:1.6rem;
	}


/* ----- cast_guest ----- */
.cast_guest_area h2{
	margin:0 auto 0.4rem auto;
	font-size:3.8rem;
}

.cast_guest_area figure,.cast_guest_area_figure figure:nth-child(3n){
	width:49%;
	margin:0 2% 5% 0;
}

.cast_guest_area_figure figure:nth-child(2n){
	width:49%;
	margin:0 0 5% 0;
}

.cast_guest_area figcaption{
	margin:0.4rem 0 0 0;
	font-size:1.4rem;
}


/* ----- photo gallery ----- */
.photo_area h2{
	margin:0 auto 1.8rem auto;
	font-size:3.8rem;
	}

/* footer
--------------------------------------------------------- */
footer ul	{
clear:both;
width:	100%;
margin:0 auto;
}

footer li	{
	overflow:hidden;
	width:	100%;
	padding:0 0 40px 0;
	text-align:center;
}

footer  #footer_home	{
	clear:both;
	height:	auto;
}

footer  #footer_home a img	{
	width:30%;
}

footer dl {
	clear:both;
	width:	100%;
}

footer #footer_j-wave_logo {
	clear:both;
	text-align:center;
}

footer #footer_j-wave_logo img	{
	width:	50% !important;
	height:	auto !important;
}

footer dd#footer_copyright	{
	margin:5px 0 0 0;
	line-height:1.2;
	text-align:center;
	letter-spacing: 0;
	}

}


/* =========================================================
	media queries for smartphone 2
========================================================= */
@media (orientation: landscape) and (max-width: 1024px){

	header{
		height:550px;
		background-position: bottom center;
	}

	header h1 img{
		width:60%;
		height:auto;
		margin:25vh 0 0 0;
		}
}




/* =========================================================
	media queries for smartphone 3
========================================================= */
@media only screen and (max-width : 339px){

header{
	height:100vh;
	background-position: bottom center;
	}

header h1 img{
	margin:20vh 0 0 0;
	}

.top_msg_area h2{
	text-align:center;
	}

.top_msg_area h3{
	text-align:left;
	margin:1.0rem;
	font-size:1.8rem;
	}

.top_msg_area h3 span{
	font-size:1.4rem;
	}

.top_msg_area p{
	text-align:left;
	}

.top_msg_btn{
	width:100%;
		}

.top_msg_btn_inner{
	margin:0;
	}


.side::after {
	display:none;
	}


}
