@charset "UTF-8";
@import url('photo.css');
@import url('https://fonts.googleapis.com/css2?family=Kanit:wght@600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Overpass:wght@700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&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:	#fff;
	font-size:	16px;
	font-size:	1.6rem;
	line-height:	1.6;
	letter-spacing:	1px;
	font-family: kinto-sans, sans-serif,游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴ Pro','Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ ゴシック',’MS PGothic’, Arial, Helvetica, Geneva, Swiss, SunSans-Regular, sans-serif;
	font-style: normal;
	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;
}

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:#41a619;
		text-decoration: none;
	}

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

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

a:active	{
		color:#99cc33;
		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:600px;
	margin:0;
	background-image:url(../img/header_bg_01_2048.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: bottom center;
}
@media only screen and (max-width : 1024px){
header{
	background-image:url(../img/header_bg_02_1024.jpg);
}
}


#header_inner{
	position: relative;
	width:100%;
	max-width:1025px;
	height:525px;
	margin:0 auto;
}

#header_inner h1 img{
	position:absolute;
	width:auto;
	height:200px;
	left: 50%;
    top: 38%;
    transform: translate(-50%, -50%);
}


#header_inner h2.navigator img{
	position:absolute;
	width:auto;
	height:150px;
	left: 56.5%;
    top: 78%;
    transform: translate(-50%, -50%);
}



main {
	overflow:	hidden;
	width:100%;
	margin:0 auto;
}

p	{
	font-size:1.4rem;
	line-height:	1.8;
}

#jme	{
	margin:0 auto;
	padding:0 0 40px 0;
	width:100%;
	text-align:center;
}


section{
	width:100%;
}

section .inner{
	width:800px;
	margin: 0 auto;
}

section .inner p{
	font-size:1.8rem;
}

section.top_headline{
	margin: 0 auto;
	padding:60px 0 100px 0;
	color:	#fff;
	text-align:center;
	background:#6d6601;
}


section.top_headline h2{
	position:relative;
	margin:30px 0 60px 0;
	font-size:2.8rem;
	font-weight:500;
	line-height:2.0;
	letter-spacing:	6px;
}

section.top_headline h2:before{
    position:absolute;
	content:"";
    display:inline-block;
    width:8px;
    height:120px;
    background-color:#fff;
    top:0px;
    left:-60px;
}

section.top_headline h2:after{
    position:absolute;
	content:"";
    display:inline-block;
    width:8px;
    height:120px;
    background-color:#fff;
    top:0px;
    right:-60px;
}

section.top_headline p{
	margin: 0 auto 4.0rem auto;
	font-size:1.8rem;
	font-weight:400;
	text-align:center;
	line-height: 2.6;
	letter-spacing:	4px;
}

section.top_headline p:last-child{
	margin: 0 auto 0 auto;
}


section.bnr_area{
	margin: 0 auto;
	padding:50px 0;
	text-align:center;
	background:#000;
}

section.bnr_area img{
	width:150px;
	height:auto;
}


section.top_msg{
	margin: 0 auto 60px auto;
	padding:80px 0;
	color:	#fff;
	text-align:center;
	background:#c2a74b;
}

section.top_msg h2{
	width:100%;
	height:auto;
	margin:0 auto 50px auto;
}

section.top_msg h2 img{
	width:100%;
	height:auto;
}

section.top_msg p{
	font-size:1.6rem;
	font-weight:400;
	text-align:center;
	line-height: 1.8;
	letter-spacing:	2px;
}

.top_msg_monitor{
	width:80%;
	aspect-ratio: 16 / 9;
	margin:40px auto 0 auto;
	padding:20px;
	color:#6d6601;
	background:#dece8a;
	-moz-border-radius:8px;
	-webkit-border-radius:8px;
	border-radius:8px;
	box-sizing: border-box;
}

.top_msg_monitor p{
	position: relative;
	top:30%;
	font-size:4.0rem;
}
.top_msg_monitor p:before,.top_msg_monitor p:after{
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 100px;
	height: 1px;
	background-color: #6d6601;
	transform: rotate(-60deg);
}

.top_msg_monitor p:before{
	left:20%;
}

.top_msg_monitor p:after{
	right:20%;
}

/* ----- youtube ----- */
.youtube {
	position: relative;
	width: 100%;
	margin: 40px 0 0 0;
	padding-top: 56.25%;
}

.youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}



/* ----- button ----- */
.btn_msg a{
	display:block;
	width:	80%;
	margin:	60px auto 0 auto;
	padding:	20px;
	-moz-border-radius:	40px;
	-webkit-border-radius:	40px;
	border-radius:	40px;
	background:	#f85902;
	font-family: 'Overpass', sans-serif;
	color:	#fff;
	font-size:	1.8rem;
	text-align: center;
}

.btn_msg a:hover{
	display:block;
	padding:20px;
	color:#fff;
	text-align: center;
	background:#f9d18a;
}

.arrow{
	position:	relative;
	display:	inline-block;
	padding-left:	40px;
}

.arrow::before{
	content: '';
	width: 15px;
	height: 15px;
	border: 0px;
	border-top:	solid 2px #fff;
	border-right:	solid 2px #fff;
	-ms-transform:	rotate(45deg);
	-webkit-transform:	rotate(45deg);
	transform:	rotate(45deg);
	position:	absolute;
	top: 50%;
	left: 0;
	margin-top: -15px;
}



/* ----- cast ----- */
.cast_area{
	overflow: hidden;
	margin:0 auto 90px auto;
}

.cast_area h2{
	position: relative;
	display: inline-block;
	margin:0 auto 0.5rem auto;
	padding: 0 120px;
	font-size:4.0rem;
	font-family: 'Bebas Neue', cursive;
	color:#595847;
}

.cast_area h2:before,
.cast_area h2:after {
    content: '';
    position: absolute;
    top: 48%;
    display: inline-block;
    width: 100px;
    height: 1px;
    background-color: #595847;
}

.cast_area h2:before {
    left: 0;
}

.cast_area h2:after {
    right: 0;
}

.cast_area p{
	xwidth:80%;
	margin:0 auto 4.0rem auto !important;
	font-size:1.8rem !important;
	line-height:1.6;
	letter-spacing: 4px;
	color:#68675c;
}


.cast_list{
	display:	flex;
	flex-wrap:	wrap;
	justify-content: center;
	align-content:	flex-start;
	gap:	5.0rem 3.0rem;
	overflow:	hidden;
	width:	100%;
	margin:	0 auto;
	padding:	0 0 10px 0;
}

.cast_list figure.cast_item {
	overflow:	hidden;
	flex-basis:	30%;
	text-align:	center;
}

.cast_list figure.cast_item img {
	box-sizing:	border-box;
	width:	100%;
	height:	auto;
	margin:	0 0 10px 0;
	-moz-border-radius:	50%;
	-webkit-border-radius:	50%;
	border-radius:	50%;
}

.cast_list figcaption{
	font-size:1.4rem;
	line-height:1.6;
	letter-spacing: 3px;
	color:#595847;
}

.cast_list figcaption span{
	font-size:1.2rem;
	letter-spacing: 1px;
}

/* ----- twitter ----- */
.twitter_area{
	overflow: hidden;
	margin:100px auto 50px auto;
}

.twitter_area .inner{
	width:640px;
	box-sizing:border-box;
	padding:20px 10px;
	border:1px solid #E3E8EC;
	-moz-border-radius:10px;
	-webkit-border-radius:10px;
	border-radius:10px;
}

.twitter_area h2{
	position: relative;
	display: inline-block;
	margin:0 auto 1.0rem auto;
	font-size:4.0rem;
	font-family: 'Bebas Neue', cursive;
	color:#1da1f2;
}

.twitter_area .timeline {
	margin:30px auto 0;
	max-height:800px;
	overflow-y: auto;
}



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

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	{
	padding:15px 0 20px 0;
	}


section .inner{
	width:90%;
	margin: 0 auto;
	}

section.top_headline{
	margin: 0 auto;
	padding:30px 0;
	}

section.top_headline h2{
	position:relative;
	margin:20px 0 60px 0;
	padding:1.0rem 0 1.0rem 3.0rem;
	font-size:2.2rem;
	text-align:left;
	border-left: 6px solid #ffff;
	}

section.top_headline h2:before,section.top_headline h2:after{
	display:none;
	}

section.top_headline p{
	font-size:1.6rem;
	font-weight:400;
	text-align:left;
	line-height: 2.0;
	letter-spacing:	2px;
	}


section.top_msg{
	margin: 0 auto 60px auto;
	padding:40px 0;
	}

section.top_msg .inner p{
	font-size:1.6rem;
	text-align:left;
	line-height: 1.8;
	}

.top_msg_monitor{
	text-align:center;
	}

section.top_msg .inner .top_msg_monitor p{
	text-align:center;
	}

.top_msg_monitor p:before{
	left:10%;
	}

.top_msg_monitor p:after{
	right:10%;
	}


/* ----- button ----- */
.btn_msg a{
	width:	70%;
	margin:	50px auto 0 auto;
	font-size:	2.4rem;
}


/* ----- twitter ----- */
.twitter_area{
	overflow: hidden;
	margin:80px auto 40px auto;
}

.twitter_area .inner{
	width:80%;
	max-width:600px;
	box-sizing:border-box;
	padding:20px 10px;
	border:1px solid #E3E8EC;
	-moz-border-radius:10px;
	-webkit-border-radius:10px;
	border-radius:10px;
}

/* 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);
}

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

header{
	height:60vh;
}

#header_inner{
	height:60vh;
}


#header_inner h1 img{
	width:95%;
	height:auto;
	margin:0 auto;
	left: 50%;
	top: 42%;
	transform: translate(-50%, -50%);
}


#header_inner h2.navigator img{
	height:120px;
	left: 56.5%;
	top: 73%;
	transform: translate(-50%, -50%);
}



main {
	width:100%;
}

section.top_headline h2{
	position:relative;
	margin:10px 0 40px 0;
	padding:0.5rem 0.5rem 0.5rem 2.0rem;
	font-size:1.8rem;
	text-align:left;
	line-height:1.8;
	border-left: 6px solid #ffff;
}


section.top_headline p{
	font-size:1.4rem;
	line-height: 2.0;
	letter-spacing:	2px;
}

section.bnr_area{
	padding:35px 0;
}


section.bnr_area img{
	width:100px;
	height:auto;
}

section.top_msg h2{
	width:100%;
	height:auto;
	margin:0 auto 20px auto;
}

section.top_msg .inner p{
	font-size:1.4rem;
	text-align:left;
	line-height: 1.8;
	}


.top_msg_monitor{
	width:100%;
	aspect-ratio: 16 / 9;
	margin:40px auto 0 auto;
	padding:20px;
	}


.top_msg_monitor p{
	display: inline-block;
	top:20%;
	font-size:2.0rem;
}


.top_msg_monitor p:before{
	display: none;
}

.top_msg_monitor p:after{
	display: none;
}


/* ----- button ----- */
.btn_msg a{
	width:	90%;
	margin:	30px auto 0 auto;
	font-size:	1.6rem;
}



/* ----- cast ----- */
.cast_area{
	margin:0 auto 60px auto;
}

.cast_area h2{
	margin:0 auto 0.5rem auto;
	padding: 0 70px;
	font-size:3.0rem;
}

.cast_area h2:before,
.cast_area h2:after {
    top: 48%;
    width: 50px;
}

.cast_area p{
	font-size:1.4rem !important;
	line-height:1.4;
	letter-spacing: 1px;
	text-align:left;
}

.cast_list{
	gap:	5.0rem 3.0rem;
	overflow:	hidden;
	width:	100%;
	margin:	0 auto;
	padding:	0 0 10px 0;
}

.cast_list figure.cast_item {
	overflow:	hidden;
	flex-basis:	40%;
	text-align:	center;
}
.cast_list figcaption{
	font-size:1.4rem;
	line-height:1.4;
}

.cast_list figcaption span{
	font-size:1.0rem;
	letter-spacing: 0;
}

.arrow::before{
	margin-top: 0px;
}


/* ----- twitter ----- */
.twitter_area{
	overflow: hidden;
	margin:70px auto 30px auto;
}

.twitter_area .inner{
	width:90%;
}

.twitter_area h2{
	font-size:3.0rem;
	margin:0 auto 0.6rem auto;
}

.twitter_area p{
	font-size:1.4rem !important;
	line-height:1.4;
	letter-spacing: 1px;
	text-align:left;
}


/* 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){

}



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

/* ----- button ----- */

.btn_msg a{
	width:	80%;
	margin:	40px auto 0 auto;
	font-size:	2.0rem;
	}
}
