@charset "utf-8";
body,div,dl,dt,dd,ul,ol,li,p,h1,h2,h3,h4,h5,h6,th,td,pre,code,blockquote,form,fieldset,legend,input,textarea,figcaption,figure{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:normal}li{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit}input,textarea,select{*font-size:100%}legend{color:#FFF}hr{display:none}img{vertical-align:bottom}select,input,button,textarea{font-size:99%}table{font-size:inherit;font:100%;border-collapse:collapse;border-spacing:0}pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%}.hd{display:block;width:0;height:0;overflow:hidden}.cf:before,.cf:after{content:"";display:table}.cf:after{clear:both}.cf{*zoom:1}article,aside,details,figcaption,figure,footer,header,hgroup,hr,menu,nav,section,main{display:block}*{margin:0;padding:0;box-sizing:border-box;max-height:999999px;outline:none;}*:focus{outline: none;}button{background-color:transparent;border:none;cursor:pointer;outline:none;padding:0;}
/*-----------------------------------------------
 * 01. Template
 * 00. Modal
-------------------------------------------------*/
/*-----------------------------------------------
 * 01. Template
-------------------------------------------------*/
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 100;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 200;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 300;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 400;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Bold");
	font-weight: bold;
}
body{
	-webkit-text-size-adjust: 100%;
	background-color: #fff;
	color: #000;
	font-family: 'Sintony','Noto Sans JP',"Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-feature-settings: "palt";
	font-size: 14px;
	font-weight: normal;
	letter-spacing: 0.07em;
	line-height: 1.8;
	word-wrap: break-word;
}
.f_sin{
	font-family: 'Sintony', sans-serif;
}
.pc{ display: block; }
.sp{ display: none; }
a{ color: #222; }
a:hover{ text-decoration: none; }
.ah { transition: opacity .3s ease; }
.ah:hover { opacity: .7; }
::selection{
	background: #6dc6f2;
	color: #fff;
}
::-moz-selection{
	background: #6dc6f2;
	color:#fff;
}

/* ScrollBar Setting */
::-webkit-scrollbar {
	width: 8px;
	height: 8px;
}
::-webkit-scrollbar-track {
  border-radius: 4px;
  background: #fff;
}
::-webkit-scrollbar-thumb {
	background: #6dc6f2;
	border-radius: 4px;
	margin: 2px;
	box-shadow: none;
}
html{
	scrollbar-color: rgb(109, 198, 242) #fff;
	scrollbar-width: thin;
}

#fullWrap{
	width: 100%;
	min-width: 1200px;
}
@media screen and (max-width:768px){ 
	html{ 
		font-size: 62.5%;
	}
	body{
		font-size: 10px; 
		font-size: 1rem;
		min-width: 320px;
	}
	.sp{ display: block; }
	.pc{ display: none; }
	.ah:hover { opacity: 1; }
	#fullWrap{
		width: 100%;
		min-width: 100%;
	}
}
/*-----------------------------------------------
 * 00. Modal
-------------------------------------------------*/
.modalBox{
	-webkit-overflow-scrolling: touch;
	/*background: rgba(0,0,0,.75);*/
	background: #fff;
	display: none;
	width: 100%;
	height: 100%;
	overflow: auto;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
}
.oneModal{
	display: none;
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 1;
}
.oneModalIn{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	height: auto;
	width: 100%;
	min-width: 1200px;
	min-height: 100%;
	margin: 0 auto;
	position: relative;
}
.oneModalIn__cont{
	padding: 50px 0;
}
@media screen and (max-width:768px){
	.oneModalIn{
		min-width: 100%;
	}
	.oneModalIn__cont{
		width: 100%;
		padding: 30px 0;
	}
}
/* closeBtn */
.closeBtn{
	width: 100%;
	height: 100%;
	min-width: 1200px;
	pointer-events: none;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}
.closeBtn a{
	position: absolute;
	width: 80px;
	padding-top: 80px;
	top: 0;
	margin-top: 40px;
	right: 3.334%;
	z-index: 1000;
	background-color: #000;
	pointer-events: auto;
	display: block;
}
.closeBtn a:before{
	content: '';
	position: absolute;
	background: url(../img/common/navBtn_bg.svg) no-repeat center center / contain;
	width: 90%;
	padding-top: 90%;
	top: 5%;
	left: 5%;
}
.closeBtn a .navline01{
	transform: rotate(15deg);
	margin-top: 32%;
}
.closeBtn a .navline02{
	transform: rotate(-15deg);
	margin-top: 32%;
}
@media screen and (max-width:768px){
	.closeBtn{
		min-width: 100%;
	}
	.closeBtn a{
		width: 12.8%;
		padding-top: 12.8%;
		margin-top: 3.2%;
		right: 3.2%;
	}
	.closeBtn a:before{
		width: 83.3334%;
		padding-top: 83.3334%;
		top: 8.3333%;
		left: 8.3333%;
	}
}
/* common */
.commonIframe{
	width: 100%;
	height: 100%;
	display: block;
}
/* youtube */
#youtubeModal .oneModalIn__cont{
	width: 70%;
}
.youtubeIframeWrap{
	width: 100%;
	height: auto;
	padding-top: 56.25%;
	position: relative;
}
.youtubeIframe{
	position: absolute;
	top: 0;
	left: 0;
}
@media screen and (max-width:768px){
	#youtubeModal .oneModalIn__cont{
		width: 100%;
	}
}
/* goods */
.goodsIframeWrap{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
@media screen and (max-width:768px){
	.goodsIframeWrap{
		width: 100%;
		height: 100%;
	}
}
/* shop */
.shopIframeWrap{
	width: 800px;
}
@media screen and (max-width:768px){
	.shopIframeWrap{
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.shopIframeWrap iframe{
		height: 100% !important;
	}
}
/* download */
.dlIframeWrap{
	width: 740px;
}
@media screen and (max-width:768px){
	.dlIframeWrap{
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.dlIframeWrap iframe{
		height: 100% !important;
	}
}


/*-----------------------------------------------
 * 01. Navigation
-------------------------------------------------*/
/*=== COMMON NAVIGATION ==*/
.nav_siteInfoWrap{
	position: relative;
}
.navLogo{
	display: block;
	background: url(../img/common/logo_wh.svg) no-repeat center center / contain;
}
.nav_about_ttl,.navListsWrap_ttl{
	position: absolute;
	font-size: 12px;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-lr;
	line-height: 1;
	letter-spacing: 0.025em;
}
.nav_about_ttl span,.navListsWrap_ttl span{
	display: inline-block;
	line-height: 1;
}
.nav_roadshow_day{
	font-size: 24px;
	line-height: 1.75;
	font-weight: 700;
	color: #6dc6f2;
	width: 320px;
	height: 22px;
	margin: 0 auto;
	background: url(../img/common/nav_roadshow_day.svg) no-repeat center center / contain;
}
.nav_about_info{
	font-size: 18px;
	line-height: 2;
	font-weight: 700;
	margin: 0 auto;
}
.nav_about_bd{
	width: 320px;
	height: 20px;
	background: url(../img/common/nav_about_info_bd.svg) no-repeat center center / contain;
	margin-top: 22px;
}
.nav_about_nf{
	line-height: 1;
	margin-top: 14px;
	color: #fff;
}

.nav_nhk{
	width: 280px;
	height: 78px;
	margin: 0 auto;
	background: url(../img/common/nav_nhk.svg) no-repeat center center / contain;
}

.sideNavWrap .nav_about_nf{
	line-height: 1;
	color: #fff;
	width: 316px;
	height: 18px;
	margin: 0 auto 0;
	margin-top: 20px;
	background: url(../img/common/nav_about_nf.svg) no-repeat center center / contain;
}
.sideNavWrap .nav_about_nf .nonSidenav_pc{
	display: block;
	width: 0;
	height: 0;
	overflow: hidden;
}
.nav_about_nf small{
	font-size: 14px;
}

.navList{
	margin-bottom: 12px;
	line-height: 1;
}
.navList a{
	display: inline-block;
	padding: 4px 0;
	text-decoration: none;
}
.navList a span{
	font-size: 16px;
	line-height: 1.145;
	text-decoration: none;
	transition: background-size .3s ease, color .3s ease;
	display: inline-block;
	background: linear-gradient(#6dc6f2, #6dc6f2) right bottom / 0 100% no-repeat;
}
.navList a:hover span{
	background-position: left bottom;
	background-size: 100% 100%;
	color: #000;
}
.navList a.is-active span{
	background-position: left bottom;
	background-size: 100% 100%;
	color: #000;
}

.navList_bnrLink{
	transition: opacity .3s ease;
}
.navLists_bnrTwi .navList{
	margin-bottom: 24px;
}
.navLists_bnrTwi .navList a{
	padding: 0;
}
.navList_bnrLink img{
	width: 100%;
}

.navList_Twi{
	margin-top: 40px;
}
.navList_Twi a span{
	display: inline-block;
	position: relative;
	padding-right: 36px;
	line-height: 20px;
}
.navList_Twi a span:after{
	content: '';
	position: absolute;
	width: 20px;
	padding-top: 18px;
	top: calc(50% - 9px);
	right: 0;
	background: url(../img/common/sns_tw.svg) no-repeat center center / contain;
	transition: .3s ease;
}
.navList_Twi a:hover span:after{
	background: url(../img/common/sns_tw_b.svg) no-repeat center center / contain;
}

.nav_bg{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}
.nav_bg_line_l,.nav_bg_line_c,.nav_bg_line_r{
	position: absolute;
	width: 1px;
	top: 0;
	bottom: 0;
}



/*== SIDE NAVIGATION ==*/
.sideNavWrap .navWrap{
	width: 33.333%;
	min-width: 400px;
	padding: 0 3.334%;
	position: absolute;
	top: 0;
	bottom: 0;
}
@media screen and (min-width: 768px){
	.sideNavWrap .nonSidenav_pc{
		display: none;
	}
}
.sideNavWrap .navInWrap{
	position: sticky;
	top: 0;
	z-index: 1;
}
.sideNavWrap .nav_siteInfoWrap{
	min-width: 320px;
	width: 100%;
	padding-top: 12.5%;
	z-index: 2;
	display: block;
}
.sideNavWrap .nav_h1{
	width: 320px;
	margin: 0 auto;
}
.sideNavWrap .navCatch{
	font-size: 20px;
	line-height: 1;
	text-align: center;
	display: block;
	margin: 0 auto;
	margin-bottom: 26px;
	font-weight: 500;
	width: 260px;
	height: 18px;
	background: url(../img/common/navCatch.svg) no-repeat center center / contain;
}
.sideNavWrap .navLogo{
	width: 320px;
	padding-top: 154px;
	pointer-events: none;
}
.sideNavWrap .nav_about{
	width: 100%;
	text-align: center;
	padding-top: 32px;
	position: relative;
}
.sideNavWrap .nav_about_ttl{
	top: 41px;
	left: -6px;
	color: #fff;
	background-color: #000;
}
.sideNavWrap .head_about_info{
	color: #fff;
}

.sideNavWrap .navListsWrap{
	margin-top: 40px;
	position: relative;
}
.sideNavWrap .navListsWrap_ttl{
	top: 0;
	left: -6px;
	color: #fff;
	background: #000;
}
.sideNavWrap .navListsInWrap{
	padding-bottom: 48px;
}
.sideNavWrap .navLists{
	width: 100%;
	padding: 0 12.5%;
}
.sideNavWrap .navLists_bnrTwi{
	margin-top: 40px;
}
.sideNavWrap .nav_bg{
	pointer-events: none;
	z-index: 1;
}
.sideNavWrap .nav_bg_line_l{
	left: 10%;
	background-color: rgba(254,254,254,.16);
}
.sideNavWrap .nav_bg_line_r{
	right: 10%;
	background-color: rgba(254,254,254,.16);
}

/*== MODAL NAVIGATION ==*/
.navBtn{
	position: absolute;
	width: 80px;
	padding-top: 80px;
	top: 0;
	margin-top: 40px;
	right: 3.334%;
	z-index: 1000;
	background-color: #6dc6f2;
}
.navBtn:before{
	content: '';
	position: absolute;
	background: url(../img/common/navBtn_bg.svg) no-repeat center center / contain;
	width: 90%;
	padding-top: 90%;
	top: 5%;
	left: 5%;
}
.navBtn.active{
	background-color: #000;
}
.navtxt{
	position: absolute;
	color: #fff;
	width: 100%;
	right: 0;
	left: 0;
	bottom: 0;
	margin-bottom: 20%;
	text-align: center;
	line-height: 1;
	font-size: 16px;
	letter-spacing: 0.025em;
	font-weight: 700;
}
.navline01,.navline02{
	position: absolute;
	width: 50%;
	padding-top: 2.5%;
	top: 0;
	left: 25%;
	background-color: #fff;
	transition: .25s ease;
}
.navline01{
	margin-top: 25%;
}
.navline02{
	margin-top: 42.5%;
}
.navBtn.active .navline01{
	transform: rotate(15deg);
	margin-top: 32%;
}
.navBtn.active .navline02{
	transform: rotate(-15deg);
	margin-top: 32%;
}
@media screen and (max-width: 768px){
	.navBtn{
		width: 12.8%;
		padding-top: 12.8%;
		margin-top: 3.2%;
		right: 3.2%;
	}
	.navBtn:before{
		width: 83.3334%;
		padding-top: 83.3334%;
		top: 8.3333%;
		left: 8.3333%;
	}
	.navtxt{
		font-size: 2.6667vw;
	}
}

.modalNavWrap .nonModalnav{
	display: none;
}
.modalNavWrap .navInWrap{
	-webkit-overflow-scrolling: touch;
	width: 100%;
	height: 100%;
	overflow: auto;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1;
	opacity: 0;
	pointer-events: none;
	transform: translateY(0);
	transition: all .3s ease-in-out;
}
.ipadOS .modalNavWrap .navIn{
	background-attachment: unset;
}
.modalNavWrap .navInWrap.is-active{
	opacity: 1;
	pointer-events: auto;
}
.modalNavWrap .navIn{
	background: url(../img/common/bg_wh.jpg);
	background-repeat: no-repeat;
	background-position: top left;
	background-size: cover;
	background-attachment: fixed;
	background-color: #fff;
	width: 100%;
	min-width: 1200px;
	height: auto;
	min-height: 100%;
	position: relative;
	overflow: hidden;
	padding-bottom: 6.6667%;
}
@media screen and (max-width: 768px) {
	.navList{
		margin-bottom: 8px;
	}
	.navList_Twi{
		margin-top: 0;
	}
	.modalNavWrap .navIn{
		min-width: 100%;
		padding-bottom: 35.2%;
		background-attachment: unset;
	}
}
.modalNavWrap .nav_siteInfoWrap{
	width: 100%;
	padding: 40px 3.3334% 0;
	display: flex;
	position: relative;
	z-index: 2;
}
.modalNavWrap .nav_h1{
	order: 2;
	width: 35.71429%;
}
.modalNavWrap .navLogo{
	width: 320px;
	padding-top: 156px;
	margin: 0 auto;
	background: url(../img/common/logo.svg) no-repeat center center / contain;
}
.modalNavWrap .nav_about{
	width: 32.1429%;
	/*padding-left: 3.5715%;*/
	position: relative;
	filter: invert(1);
}
.modalNavWrap .nav_about_ttl{
	left: -6px;
	top: 12px;
	background-color: #fff;
}
.modalNavWrap .nav_roadshow_day{
	font-size: 24px;
	line-height: 1.75;
	font-weight: 700;
	color: #6dc6f2;
	width: 320px;
	height: 22px;
	margin: 0;
	background: url(../img/common/nav_roadshow_day.svg) no-repeat center center / contain;
}
.modalNavWrap .nav_about_bd{
	width: 320px;
	height: 20px;
	background: url(../img/common/nav_about_info_bd.svg) no-repeat center center / contain;
	margin-top: 24px;
	margin: 24px 0 0;
}
.modalNavWrap .navListsWrap{
	width: 100%;
	padding: 0 3.3334%;
	margin-top: 6.6667%;
	position: relative;
	z-index: 2;
}
.modalNavWrap .navListsInWrap{
	position: relative;
	display: flex;
}
.modalNavWrap .navListsWrap_ttl{
	left: -6px;
}
.modalNavWrap .navListsWrap_ttl span{
	background-color: #fff;
}
.modalNavWrap .navList a span{
	font-size: 20px;
}
.modalNavWrap .navLists01{
	width: 46.4286%;
	padding-left: 3.5715%;
}
.modalNavWrap .navLists02{
	min-width: 360px;
	width: 32.1429%;
	position: relative;
	padding-left: 7.1429%;
}
.modalNavWrap .navLists02 .navListsWrap_ttl{
	width: 22.2223%;
	display: flex;
	align-items: center;
	left: 0;
}
.modalNavWrap .navLists_bnrTwi{
	width: 21.4286%;
}
/*.modalNavWrap .navList_Twi{
	text-align: right;
	padding-right: 16.6667%;
}*/
.modalNavWrap .navList_Twi a span:after{
	background: url(../img/common/sns_tw_b.svg) no-repeat center center / contain;
}

.shareWrap{
	position: absolute;
	right: 3.3334%;
	bottom: 0;
	margin-bottom: 3.3334%;
	z-index: 2;
	display: flex;
	align-items: center;
}

.modalNavWrap .nav_bg{
	z-index: 1;
}
.modalNavWrap .nav_bg_line_l{
	left: 3.3334%;
	background-color: rgba(0,0,0,.16);
}
.modalNavWrap .nav_bg_line_c{
	left: calc(50% - 0.5px);
	background-color: rgba(0,0,0,.16);
}
.modalNavWrap .nav_bg_line_r{
	right: 3.3334%;
	background-color: rgba(0,0,0,.16);
}

@media screen and (max-width: 768px){
	.modalNavWrap .nav_siteInfoWrap{
		padding: 6.4% 12.8% 0;
		display: block;
	}
	.modalNavWrap .nav_h1{
		width: 100%;
	}
	.modalNavWrap .navLogo{
		width: 57.3477%;
		padding-top: 27.957%;
	}
	.modalNavWrap .nav_about{
		margin-top: 8.6022%;
		width: 100%;
	}
	.modalNavWrap .nav_roadshow_day{
		width: 93.9069%;
		height: auto;
		padding-top: 4.4803%;
		background: url(../img/common/nav_roadshow_day.svg) no-repeat center / contain;
		margin: 0 auto;
	}
	.modalNavWrap .nav_about_bd{
		width: 62.3656%;
		padding-top: 3.9427%;
		margin: 0 auto;
		margin-top: 3.5843%;
	}
	.modalNavWrap .nav_about_nf{
		font-size: 2.6667vw;
		font-weight: 700;
		line-height: 1;
		margin-top: 2.134%;
		text-align: center;
	}
	.modalNavWrap .navListsWrap{
		padding: 0 6.4%;
		margin-top: 11.7334%;
	}
	.modalNavWrap .navListsWrap_ttl{
		left: -6px;
	}
	.modalNavWrap .navListsWrap_ttl span{
		color: #000;
	}
	.modalNavWrap .navLists01{
		width: 50%;
		padding-left: 7.3395%;
		padding-right: 3.66972%
	}
	.modalNavWrap .navLists02{
		width: 50%;
		min-width: auto;
		padding-left: 7.3395%;
	}
	.modalNavWrap .navLists02 .navListsWrap_ttl{
		width: auto;
		display: inline-block;
		left: -6px;
	}
	.modalNavWrap .navList a span{
		font-size: 1.4rem;
	}
	.modalNavWrap .nav_bg_line_l{
		left: 6.4%;
	}
	.modalNavWrap .nav_bg_line_r{
		right: 6.4%;
	}
	.shareWrap{
		right: 50%;
		transform: translateX(50%);
		margin-bottom: 16%;
		color: #000;
	}
	.share_title{
		margin-right: 12px;
		font-size: 1.2rem;
		letter-spacing: 0;
	}
}

/*-----------------------------------------------
 * 02. SHARE LISTS
-------------------------------------------------*/
.shareLists{
	display: flex;
}
.shareList{
	margin: 0 12px;
}
.shareList:last-child{
	margin-right: 0;
}
.shareList__link{
	width: 20px;
	padding-top: 20px;
	display: block;
}
.share_link_tw{
	background: url(../img/common/sns_tw_b.svg) no-repeat center center / contain;
}
.share_link_fb{
	background: url(../img/common/sns_fb_b.svg) no-repeat center center / contain;
}
.share_link_li{
	background: url(../img/common/sns_line_b.svg) no-repeat center center / contain;
}

/*-----------------------------------------------
 * 03. COMMON CONTENTS
-------------------------------------------------*/
.cont_headWrap{
	width: 100%;
	position: fixed;
	z-index: 999;
	top: 0;
	left: 0;
}
.cont_logo{
	position: absolute;
	top: 0;
	left: 3.3334%;
	margin-top: 40px;
	width: 160px;
	padding-top: 78px;
}
.cont_logo a{
	display: block;
	width: 100%;
	height: 100%;
	background: url(../img/common/logo.svg) no-repeat 0 0 / contain;
	position: absolute;
	top: 0;
	left: 0;
}
.content{
	width: 100%;
	position: relative;
	padding-top: 160px;
}
.bgwh{
	background: url(../img/common/bg_wh.jpg);
	background-repeat: no-repeat;
	background-position: top left;
	background-size: cover;
	background-attachment: fixed;
	background-color: #fff;
	position: relative;
}
.ipadOS .bgwh{
	background: unset;
}
.ipadOS .bgwh:before{
	content: '';
	position: fixed;
	top: 0;
	background: url(../img/common/bg_wh.jpg);
	background-repeat: no-repeat;
	background-position: top left;
	width: 100%;
	height: 100vh;
	z-index: -1;
}
@media screen and (max-width: 768px){
	.cont_logo{
		margin-top: 6.4%;
		width: 26.6667%;
		padding-top: 12.8%;
		left: 36.66665%;
	}
	.content{
		padding-top: 12.8%;
	}
	#sub .content{
		padding-top: 25.6%;
	}
	.bgwh{
		background: unset;
	}
	.bgwh:before{
		content: '';
		position: fixed;
		top: 0;
		background: url(../img/common/bg_wh.jpg);
		background-repeat: no-repeat;
		background-position: top left;
		width: 100%;
		height: 100vh;
		z-index: -1;
	}
}
.cont_title{
	width: 100%;
	text-align: center;
	position: relative;
	line-height: 1;
}
.cont_title:before,.cont_title:after{
	content: '';
	position: absolute;
	right: 0;
	left: 0;
	height: 1px;
	background-color: rgba(0,0,0,.16);
}
.cont_title:before{
	top: 0;
}
.cont_title:after{
	bottom: 6px;
}
.cont_title_ttl{
	font-size: 12px;
	line-height: 1;
	letter-spacing: 0.025em;
	background-color: #fff;
	position: absolute;
	top: -6px;
	left: 3.3334%;
}
.cont_title_en{
	font-size: 140px;
	line-height: 0.8;
	display: inline-block;
	-webkit-text-stroke-width: 1px;
	-webkit-text-stroke-color: #000;
	color: transparent;
	letter-spacing: 0;
	font-weight: 700;
}
.cont_title_ja{
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0;
	background-color: #6dc6f2;
	line-height: 1;
}
.cont_title.ttlwh:before,.cont_title.ttlwh:after{
	background-color: rgba(254,254,254,.24);
}
.ttlwh .cont_title_en{
	-webkit-text-stroke-color: #fff;
}
.ttlwh .cont_title_ja{
	background-color: #fff;
}
.contIn{
	padding: 80px 0 0;
}

@media screen and (max-width: 768px){
	.cont_title:before,.cont_title:after{
		height: 0.2667vw;
	}
	.cont_title:after{
		bottom: 0;
	}
	.cont_title_ttl{
		font-size: 2.13334vw;
		top: -0.93334vw;
		left: 6.4%;
	}
	.cont_title_en{
		font-size: 12.8vw;
	}
	.cont_title_ja{
		top: unset;
		bottom: -3.0667vw;
		transform: translateX(-50%);
		font-size: 4.2667vw;
		z-index: 2;
		white-space: nowrap;
	}
	.contIn{
		width: 100%;
		padding: 12.8% 0 0;
	}
}

/** CMS paging **/
.pagingListsWrap{
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}
.pagingLists__np{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.pagingLists__prev{
	left: 0;
}
.pagingLists__next{
	right: 0;
}
.pagingLists__np__link{
	font-size: 16px;
	font-weight: 700;
	text-decoration: none;
	position: relative;
	transition: .3s ease;
	display: inline-block;
	padding: 4px 0;
}
.pagingLists__np__link:hover{
	color: #6dc6f2;
}
.pagingLists__np__link:before{
	content: '';
	position: absolute;
	top: calc(50% - 6px);
	width: 40px;
	padding-top: 12px;
	background: url(../img/common/arrow_newslink.svg);
	transition: .3s ease;
}
.pagingLists__prev .pagingLists__np__link{
	padding-left: 48px;
}
.pagingLists__prev .pagingLists__np__link:before{
	left: 0;
	transform: scale(-1, 1);
}
.pagingLists__prev .pagingLists__np__link:hover::before{
	left: -10px;
}
.pagingLists__next .pagingLists__np__link{
	padding-right: 48px;
}
.pagingLists__next .pagingLists__np__link:before{
	right: 0;
}
.pagingLists__next .pagingLists__np__link:hover::before{
	right: -10px;
}

.pagingLists{
	display: flex;
	justify-content: center;
}
.pagingLists__item{
	padding: 0 12px;
}
.pagingLists__link,.pagingLists__active{
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 16px;
	line-height: 1;
	font-weight: 700;
	color: #fff;
}
.pagingLists__link{
	background-color: #000;
	transition: .3s ease-in-out;
	text-decoration: none;
	border: 1px solid #000;
}
.pagingLists__link:hover{
	background-color: #6dc6f2;
}
.pagingLists__active{
	background-color: #6dc6f2;
	border: 1px solid #6dc6f2;
}

@media screen and (max-width: 768px){
	.pagingListsWrap{
		padding-bottom: 40px;
	}
	.pagingLists__np{
		top: unset;
		transform: translateY(0);
		bottom: 0px;
	}
	.pagingLists__np__link{
		font-size: 1.2rem;
		padding: 2px;
		line-height: 1;
	}
	.pagingLists__np__link:before{
		width: 20px;
		padding-top: 6px;
		top: calc(50% - 3px);
		background-size: contain;
	}
	.pagingLists__prev .pagingLists__np__link{
		padding-left: 24px;
	}
	.pagingLists__next .pagingLists__np__link{
		padding-right: 24px;
	}
	.pagingLists{
		width: 100%;
		flex-wrap: wrap;
	}
	.pagingLists__item{
		padding: 6px;
	}
	.pagingLists__link,.pagingLists__active{
		width: 32px;
		height: 32px;
		font-size: 1.2rem;
	}
}

/* ARTICLE BACK */
.article_back{
	width: 100%;
	text-align: center;
	padding-top: 72px;
}
.article_back a{
	display: inline-block;
	padding: 14px 40px;
	line-height: 1;
	background-color: #000;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	transition: .3s ease;
	text-decoration: none;
	border: 1px solid #000;
}
.article_back a:hover{
	color: #000;
	background-color: #6dc6f2;
}

@media screen and (max-width: 768px){
	.article_back{
		padding-top: 14.6789%;
	}
	.article_back a{
		padding: 12px 24px;
		font-size: 1.2rem;
	}
}


/*-----------------------------------------------
 * 04. FOOTER
-------------------------------------------------*/
.footerSlideLists{
	width: 100%;
}
.footerSlideList{
	/*width: 300px;*/
	height: 168px;
	position: relative;
}
.footerSlideList:before{
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: url(../img/common/footer_slideIMG_bg.png) repeat;
	opacity: 50%;
}
.footerSlideList:after{
	content: '';
	position: absolute;
	top: 8px;
	right: 8px;
	bottom: 8px;
	left: 8px;
	background: url(../img/common/footer_slideIMG_frame.svg) no-repeat center center / contain;
}
.footerSlideList.pcgm:before,.footerSlideList.pcgm:after{
	content: unset;
}
.footerSlideList img{
	height: 100%;
}


@media screen and (max-width: 768px){
	.footerSlideList{
		/*width: 33.3333vw;*/
		height: 22.4vw;
	}
	.footerSlideList:after{
		top: 4px;
		right: 4px;
		bottom: 4px;
		left: 4px;
	}
}

.footerIn{
	width: 100%;
	background-color: #000;
	position: relative;
	padding: 40px 0 48px;
}
.top_footer .footerIn{
	padding: 80px 0;
}
.top_footer .footerIn:before{
	content: '';
	position: absolute;
	bottom: 0;
	right: 0;
	width: 290px;
	padding-top: 288px;
	background: url(../img/common/footer_accent.png) no-repeat bottom right / contain;
	pointer-events: none;
}
.footer_bnrLists{
	width: 100%;
	display: flex;
	justify-content: center;
}
.footer_bnrList{
	padding: 0 12px;
}
.footer_bnrList a{
	width: 240px;
	display: block;
	transition: opacity .3s ease;
}
.footer_bnrList a:hover{
	opacity: 0.7;
}
.footer_toTop{
	position: absolute;
	width: 6.6667%;
	top: calc(50% + 20px);
	transform: translateY(-50%);
	right: 0;
	display: flex;
	justify-content: center;
}
.top_footer .footer_toTop{
	top: 0;
	transform: translateY(0);
}
.footer_toTop_link{
	padding: 160px 8px 0;
	display: block;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-lr;
	line-height: 1;
	letter-spacing: 0.025em;
	color: #000;
	text-decoration: none;
	position: relative;
}
.top_footer .footer_toTop_link{
	color: #fff;
}
.toTop_line{
	position: absolute;
	width: 1px;
	padding-top: 160px;
	top: 0;
	left: calc(50% - 0.5px);
	background-color: rgba(0,0,0,.25);
	overflow: hidden;
}
.top_footer .toTop_line{
	background-color: rgba(254,254,254,.25);
}
.toTop_line:after{
	content: '';
	position: absolute;
	width: 1px;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	background-color: #000;
	animation: scrollUp 2.4s ease-in-out infinite;
}
.top_footer .toTop_line:after{
	background-color: #fff;
}
@keyframes scrollUp{
	0% { top: 100%; }
	70%, 100% { top: -100%; }
}

.footer_toTop_link span.fttl_txt{
	display: inline-block;
	font-size: 12px;
	padding-top: 15px;
}
.footer_sitefoot{
	width: 100%;
	display: flex;
	justify-content: space-between;
	padding: 0 6.6667%;
}
.footerShareWrap{
	display: flex;
	width: 19.2308%;
}
.footerShareWrap .share_title{
	font-size: 12px;
	letter-spacing: 0.025em;
	color: #fff;
	padding-right: 12px;
}
.footerShareWrap .shareLists{
	filter: invert(1);
}
.footerCopryright{
	width: 61.5385%;
}
.footerCopryright a{
	color: #FFF;
}
.ftr_cpr{
	font-size: 12px;
	font-weight: 400;
	color: #fff;
	text-align: right;
	font-family: 'Noto Sans JP',"Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

@media screen and (max-width: 768px){
	.footerIn{
		padding: 12.8% 6.4%;
	}
	.top_footer .footerIn{
		padding: 11.2% 4.8% 12.8%;
	}
	.top_footer .footerIn:before{
		width: 40.8%;
		padding-top: 35.0667%;
		background: url(../img/common/footer_accent_sp.png) no-repeat bottom right / contain;
	}
	.footer_bnrLists{
		flex-wrap: wrap;
	}
	.footer_bnrList{
		width: 50%;
		padding: 1.77%;
	}
	.footer_bnrList a{
		width: 100%;
	}
	.footer_bnrList a img{
		width: 100%;
	}
	.footer_toTop{
		width: 12.8%;
		top: unset;
		bottom: 0;
		transform: translateY(0);
	}
	.top_footer .footer_toTop{
		top: unset;
	}
	.footer_toTop_link{
		padding: 0 10% 130px;
		color: #fff;
	}
	.toTop_line{
		width: 1px;
		padding-top: 124px;
		top: unset;
		bottom: 0;
		background-color: rgba(254,254,254,.25);
	}
	.toTop_line:after{
		background-color: #fff;
	}
	.footer_toTop_link span.fttl_txt{
		font-size: 1rem;
		padding-top: 0;
		padding-bottom: 12px;
		position: absolute;
		top: -30px;
		left: calc(50% - 5px);
	}
	.footer_sitefoot{
		padding: 0;
		flex-wrap: wrap;
	}
	.footerShareWrap{
		width: 100%;
		justify-content: center;
	}
	.footerShareWrap .share_title{
		font-size: 1.2rem;
	}
	.footerCopryright{
		width: 100%;
		padding-top: 14.1593%;
	}
	.ftr_cpr{
		font-size: 1rem;
		text-align: center;
	}
}


.footer_fullimgWrap{
	width: 100%;
	height: 100vh;
	min-height: 640px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	background-attachment: fixed;
	background-position: top left;
	background-size: cover;
}
.ipadOS .footer_fullimgWrap{
	background-attachment: unset!important;
}
.footer_logoCatch{
	width: 262px;
	padding-top: 18px;
	background: url(../img/common/navCatch.svg) no-repeat center center / contain;
	margin: 0 auto 26px;
	filter: invert(1);
}
.footer_logo{
	width: 320px;
	padding-top: 156px;
	background: url(../img/common/logo.svg) no-repeat center center / contain;
	margin-bottom: 40px;
}
.footer_day{
	width: 320px;
	padding-top: 22px;
	background: url(../img/common/nav_roadshow_day.svg) no-repeat center center / contain;
	filter: invert(1);
}
.footer_bddvd{
	width: 320px;
	height: 20px;
	background: url(../img/common/nav_about_info_bd.svg) no-repeat center center / contain;
	margin-top: 24px;
	filter: invert(1);
}
.footer_nf{
	font-size: 18px;
	font-weight: 700;
	margin-top: 18px;
	line-height: 1;
	text-align: center;
	color: #fff;
	filter: invert(1);
}

@media screen and (min-width: 769px){
	#sub .footerIn .footer_toTop{
		display: none;
	}
}

@media screen and (max-width: 768px){
	.footer_fullimgWrap{
		height: 0;
		min-height: 0;
		padding-top: 80%;
	}
	.footer_titleWrap{
		width: 100%;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
	}
	.footer_logoCatch{
		width: 46.4%;
		padding-top: 3.2%;
		margin-bottom: 3.2%;
	}
	.footer_logo{
		width: 61.6%;
		padding-top: 29.8667%;
		margin: 0 auto;
		margin-bottom: 6.4%;
	}
	.footer_day{
		width: 87.2%;
		padding-top: 4.2667%;
		background: url(../img/common/nav_roadshow_day.svg) no-repeat center center / contain;
		margin: 0 auto;
	}
	.footer_bddvd{
		width: 58%;
		padding-top: 3.6%;
		margin: 0 auto;
		margin-top: 3.2%;
	}
	.footer_nf{
		font-size: 3.2vw;
		margin-top: 2.6667vw;
	}
}

/** FOOTER IMAGE **/
#ffimg_01{
	background:url(../img/common/footerBG/img01.jpg) no-repeat;
	background-attachment: fixed;
	background-position: top left;
	background-size: cover;
}
#ffimg_02{
	background:url(../img/common/footerBG/img02.jpg) no-repeat;
	background-attachment: fixed;
	background-position: top left;
	background-size: cover;
}
#ffimg_03{
	background:url(../img/common/footerBG/img03.jpg) no-repeat;
	background-attachment: fixed;
	background-position: top left;
	background-size: cover;
}
#ffimg_04{
	background:url(../img/common/footerBG/img04.jpg) no-repeat;
	background-attachment: fixed;
	background-position: top left;
	background-size: cover;
}
#ffimg_05{
	background:url(../img/common/footerBG/img05.jpg) no-repeat;
	background-attachment: fixed;
	background-position: top left;
	background-size: cover;
}
#ffimg_06{
	background:url(../img/common/footerBG/img06.jpg) no-repeat;
	background-attachment: fixed;
	background-position: top left;
	background-size: cover;
}
#ffimg_07{
	background:url(../img/common/footerBG/img07.jpg) no-repeat;
	background-attachment: fixed;
	background-position: top left;
	background-size: cover;
}
#ffimg_08{
	background:url(../img/common/footerBG/img08.jpg) no-repeat;
	background-attachment: fixed;
	background-position: top left;
	background-size: cover;
}

@media screen and (max-width: 768px){
	.footer_fullimgWrap{
		background-position: center center!important;
		background-attachment: unset!important;
	}
}



/** LOADING **/
#fullWrap.ready{
	opacity: 0;
}
#fullWrap{
	opacity: 1;
}
#loading{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 10000;
	background-color: #000;
}
#load_logo{
	width: 240px;
	padding-top: 115.5px;
	background: url(../img/common/logo_wh.svg) no-repeat center center / contain;
	z-index: 2001;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

@media screen and (max-width: 768px){
	#load_logo{
		width: 50%;
		padding-top: 24.0626%;
	}
}