@charset "utf-8";


/* ----------
    PC
   ---------- */

a{
	transition: all  0.4s ease;
}
a:hover{
	opacity: 0.7;
}

.bnr-top{
	position: relative;
	padding:50px 0 70px;
	overflow: hidden;
	max-width:1280px;
	min-width: 1024px;
	margin:auto;

	max-height: calc(102px + 432px);
    min-height: calc(102px + 345px);
    height: calc( 102px + ( 60vw * 0.5625 ) );
}


.bnr-top div a{
	text-decoration: none;
}

.bnr-top div a img{
	
}

.bnr-top{
	opacity: 0;
}
.bnr-top .wrap-slide div{
	position: absolute;
	width:60%;
	background: #FFF;
	box-shadow: 0px 0px 4px rgba(0,0,0,0.3);
}
.bnr-top .wrap-slide div:nth-of-type(1){
	left:-15%;
	opacity: 0.7;
}
.bnr-top .wrap-slide div:nth-of-type(2){
	left:25%;
	z-index: 100;
}
.bnr-top .wrap-slide div:nth-of-type(3){
	left:65%;
	opacity: 0.7;
}
.bnr-top .wrap-slide div img{
	width: 100%;
	/*height:360px;*/
	height: 56.25%;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

.bnr-top .wrap-slide div dl{
	padding:20px 25px;
}
.bnr-top .wrap-slide div dt{
	margin-bottom: 15px;
	font-size:1.6em;
}
.bnr-top .wrap-slide div dd{
	font-size:1.2em;
	line-height: 1.4;
	height:2.64em;
	overflow: hidden;
}

.bnr-top ul{
	display: flex;
	justify-content: center;
	position: absolute;
	bottom:32px;
	left:0;
	right:0;
	margin:auto;
}
.bnr-top ul li{
	margin:0 7px;
	width:8px;
	height:8px;
	border-radius: 100px;
	background: #999;
	/*cursor: pointer;*/
}
.bnr-top ul li.select{
	background: #75D2FE
}

.bnr-top .prev, .bnr-top .next{
    height: auto;
    width: auto;
    position: absolute;
    z-index: 900;
    top:calc(360px / 2 + 50px - 45px / 2);
}
.bnr-top .prev{
	left:2.5%;
}
.bnr-top .next{
    right: 2.5%;
}
.bnr-top .prev img{

}
.bnr-top .next img{
	
}


.cat-icon{
	margin:0 auto 0;
	padding:45px 0 55px;
	background:#FFF;
}
.cat-icon ul{
	display: flex;
	max-width: 1024px;
	margin:0 auto 0;
}
.cat-icon ul li{
	width:calc( 100% / 7 );
	text-align: center;
}
.cat-icon ul li img{
	display: block;
	margin:0 auto 15px;
	width: 96px;
    height: 96px;
}
.cat-icon ul li a{
	font-size:1.2em;
	text-decoration: none;
}
.cat-icon ul li:nth-of-type(1) a{
	color:#2db475;
}
.cat-icon ul li:nth-of-type(2) a{
	color:#FFD201;
}
.cat-icon ul li:nth-of-type(3) a{
	color:#E50113;
}
.cat-icon ul li:nth-of-type(4) a{
	color:#D6E100;
}
.cat-icon ul li:nth-of-type(5) a{
	color:#012981;
}
.cat-icon ul li:nth-of-type(6) a{
	color:#F258DC;
}
.cat-icon ul li:nth-of-type(7) a{
	color:#F258DC;
}
.cat-icon ul li:nth-of-type(8) a{
	color:#75D2FE;
}




.card-picup{
	padding:14px 0 64px;
}
.card-picup ul, .card-event ul, .shopInfo ul{
	margin:0 auto 0;
	max-width: 1024px;
	display: flex;
	/*justify-content: space-between;*/
	flex-wrap:wrap;
}
.card-picup ul li, .card-event ul li, .shopInfo ul li{
	margin-top: 40px;
	width:300px;
	margin-right:calc( (100% - 900px) / 2);
}
.card-picup ul li:nth-of-type(3n), .card-event ul li:nth-of-type(3n), .shopInfo ul li:nth-of-type(3n){
	margin-right:0;
}
.card-picup ul li div, .card-event ul li div, .shopInfo ul li div{
	padding:20px 22px;
}
.card-picup ul li a, .card-event ul li a, .shopInfo ul li a{
	display: block;
	font-size:1.4em;
	text-decoration: none;
	text-align: left;
	background: #FFF;
}


.card-picup ul li img{
	object-fit: cover;
	font-family: 'object-fit: cover;';
	width:100%;
	height:168px;
}


.card-event{
	position: relative;
	padding:55px 0 25px;
	background: #FFF;
}
.card-event ul li div:nth-of-type(1){
	padding:0;
}
.card-event ul li div:nth-of-type(1) img{
	object-fit: contain;
	font-family: 'object-fit: contain;';
	width:100%;
	height:168px;
}
.card-event ul li div:nth-of-type(2){
	font-size:13px;
	line-height: 1.76;
}
.card-event ul li div:nth-of-type(2) span{
	display: block;
	margin-bottom: 10px;
	color: #AA2434;
	font-size:13px;
	line-height: 1.3;
}
.card-event ul li div:nth-of-type(2) small{
	display: block;
	margin-top: 20px;
	color: #999;
	font-size: 12px;
	line-height: 1;
}

.card-event .wrap-event{
	position: relative;
	height: 800px;
	margin: auto;
	max-width: 1024px;
	overflow-x:hidden;
}
.card-event .wrap-event.row1{
	height: 400px;
}
.card-event .wrap-event .events{
	position: absolute;
	max-width: 1024px;
	width: 1024px;
	height:inherit;
}
.card-event .wrap-event .events-sp{
	display: none;
}

.card-event ul{
	position: absolute;
	left:0;
	right:0;
	margin: auto;
	transition: all  0.4s ease;
	width:100%;
}
.card-event ul.on{
	/*opacity: 1;*/
}


.card-event .prev, .card-event .next{
	position: absolute;
	top:48%;
}
.card-event .prev.none, .card-event .next.none{
	display: none;
}
.card-event .prev{
	left:calc( 50% - 512px - 64px );
}
.card-event .next{
	right:calc( 50% - 512px - 64px );
}

@media only screen and (max-width: 1180px) {

	.card-event .prev, .card-event .next{
		position: absolute;
		top:55px;
	}
	.card-event .prev{
		left:2.5%;
	}
	.card-event .next{
		right:2.5%;
	}

}


.shopInfo ul li div:nth-of-type(1){
	padding:0;
}
.shopInfo ul li div:nth-of-type(1) img{
	object-fit: cover;
	font-family: 'object-fit: cover;';
	width:100%;
	height:168px;
}
.shopInfo ul li div:nth-of-type(2){
	font-size:15px;
	font-weight: bold;
	line-height: 1.4;
}
.shopInfo ul li div:nth-of-type(2) small{
	display: block;
	margin-top: 18px;
	color: #999;
	font-size: 12px;
	line-height: 1.4;
}







.cap-top-01{
	text-align: center;
	line-height: 1;
	margin:0 0 20px;
}
.cap-top-01 strong{
	display: block;
	text-align: center;
	font-size:26px;
}
.cap-top-01 span{
	margin-top:25px;
	display: block;
	text-align: center;
	color:#666;
	font-size:12px;
}






.info-mes{
	display: flex;
	justify-content: space-between;
	max-width: 1024px;
	margin:50px auto 60px;
}
.info-mes div{
	background:#FFF;
	padding:30px;
	box-sizing:border-box;
	/*max-height: 453px;*/
}
.info-mes div:nth-of-type(1){
	width:50%;
	overflow-y: auto;
}

.info-mes div:nth-of-type(2){
	width:calc( 50% - 3% );
}
.info-mes div:nth-of-type(2) a, .info-mes div:nth-of-type(2) a img{
	display: block;
	width:100%;
	height: auto;
}
.info-mes div:nth-of-type(2) a:nth-of-type(2){
	margin-top:25px;
}



dl.news-list{

}
dl.news-list a{
	text-decoration: none;
}
dl.news-list dt, dl.news-list dd{
	padding:20px 0;
}
dl.news-list dt{
	padding-top:0;
	position: relative;
}
dl.news-list dt strong{
	font-size:20px;
	padding-right:15px;
}
dl.news-list dt em{
	font-size: 12px;
	font-weight: normal;
}
dl.news-list dt a{
	font-size: 12px;
	position: absolute;
	right:0;
	top:5px;
	padding-right:10px;
}
dl.news-list dt a:after{
	content: '';
	position: absolute;
	right:0;
	top:4px;
	width:6px;
	height:6px;
	border: 1px solid;
	border-color: #333 #333 transparent transparent;
	transform: rotate(45deg);
}

dl.news-list dd{
	border-top: 1px dotted #999;
}
dl.news-list dd span{
	font-size:12px;
	color: #999;
	padding-right: 15px;
}
dl.news-list dd em{
	display: inline-block;
	padding: 4px 15px;
	font-size:11px;
	font-weight: normal;
	color: #FFF;
	background: #FF003F;
	border-radius: 999px;
}
dl.news-list dd em.KnowledgeWorldNetwork{
	background: #8CC63F;
}
dl.news-list dd em.NEWS{
	background: #F15A24;
}
dl.news-list dd em.PRESSRELEASE{
	background: #662D91;
}
dl.news-list dd em.PUBLICATION{
	background: #ec93ba;
}


dl.news-list dd em + em{
	margin-left: 7px;
}
dl.news-list dd a{
	display: block;
	margin-top: 8px;
	line-height: 1.5;
	font-size: 13px;
}


.floor-guide{
	padding:55px 0 75px;
	background: #FFF;
}

.btn-floor{
	max-width: 1024px;
	margin:0 auto;
	display: flex;
	justify-content: space-between;
}
.btn-floor li{
	background:#E2E2E2;
	color: #333;
	font-size:14px;
	padding:10px 0;
	cursor: pointer;
	width:calc(100% / 15);
	text-align: center;

	margin-bottom: 14px;
}
.btn-floor li:nth-of-type(n+2){
	border-left:1px solid #FFF;
}
.btn-floor li.select{
	position: relative;
	color:#FFF;
	background: #AA2434;
}
.btn-floor li.select::before {
     position: absolute;
     content: '';
     width: 0;
     height: 0;
     border: solid 6px transparent;
     border-top: solid 8px #AA2434;
     bottom: -13px;
     left:calc(50% - 6px);
}

.shopInfo{

}
.shopInfo .cap-top-floor{
	color: #AA2434;
	font-size:28px;
	font-weight: bold;
	margin:36px 0 5px;
	text-align: center;
}

.shopInfo > div{
	display: none;
}
.shopInfo div.select{
	display: block;
}



#footerBnr{
	/*display: none;*/
}



/* ----------
    SP
   ---------- */
@media only screen and (max-width: 320px) {
	

	.cap-top-01{
		text-align: center;
		line-height: 1.4;
		margin:0 0 20px;
	}
	.cap-top-01 strong{
		display: block;
		text-align: center;
		font-size:16px;
	}
	.cap-top-01 span{
		margin-top:17px;
		display: block;
		text-align: center;
		color:#666;
		font-size:12px;
	}


	.bnr-top {
	    height: 320px;
	    max-height:auto;
	    min-height:auto;
	    padding: 20px 0 0px;
	    max-width: auto;
	    min-width: auto;
	}
	.bnr-top .wrap-slide{
		height:144px;
	}
	.bnr-top .wrap-slide div{
		width:80%;
	}
	.bnr-top .wrap-slide div img {
	    /*height: 56%;*/
	    height: 56.25%;
	}
	.bnr-top .wrap-slide div dl {
	    padding: 5%;
	}
	.bnr-top .wrap-slide div dl dt {
	    font-size: 1.4em;
	    line-height: 1.4;

	    overflow: hidden;
	    /*
		white-space: nowrap;
		text-overflow: ellipsis;
		*/
	}
	.bnr-top .prev, .bnr-top .next{
		display: inline-block;
		position: absolute;
		z-index: 900;
		top:120px;
		width: auto;
		height: auto;
	}
	.bnr-top .prev{
		left: 17px;
	}
	.bnr-top .next{
		right: 17px;
	}
	.bnr-top .prev img, .bnr-top .next img{
		width:28px;
		height: auto;
	}

	.bnr-top ul li {
	    margin: 0 3px;
	    width: 4px;
	    height: 4px;
	}



	.cat-icon{
		margin:0 auto 0;
		padding:45px 0 55px;
		background:#FFF;
	}
	.cat-icon ul{
		padding:0 2.5%;
		overflow-x: scroll;
		-webkit-overflow-scrolling: touch;
  		overflow-scrolling: touch;
	}
	.cat-icon ul li{
		margin:0 0.5%;
		flex: 0 0 27.5%;
	}
	.cat-icon ul li img{
		margin:0 auto 15px;
		width: 64px;
	    height:  64px;
	}
	.cat-icon ul li a{
		font-size:1em;
	}



	.card-picup {
	    padding: 30px 0 30px;
	}
	.card-picup ul{
	    flex-direction: column;

	}
	.card-picup ul li, .card-picup ul li:nth-of-type(3n){
	    margin: 0 auto 5%;
	    width: 86%;
	}
	.card-picup ul li img{
		max-width:100%;
		height: auto;
		object-fit: contain;
		font-family: 'object-fit: contain;';
	}
	.card-picup ul li div{
		font-size:13px;
	}





	.card-event .prev, .card-event .next{
		display: none;
	}

	.card-event{
		padding: 38px 0 40px;
	}
	.card-event .wrap-event {
	    height: auto;

	    display: flex;
		overflow-x: scroll;
		overflow-x: hidden;
		 /*
		-webkit-overflow-scrolling: touch;
  		overflow-scrolling: touch;
  		*/
	}
	.card-event .wrap-event.row1{
		height: auto;
	}
	.card-event .wrap-event .events{
		display: none;
	}

	.card-event .wrap-event .events-sp{
		display: block;
	}

	.card-event .events-sp ul{
		position: static;
		width:100vw;
		
		flex-direction: row;
		flex-wrap: nowrap;

		display: flex;
		margin:0;
		padding:0 5%;

		display: flex;
	}
	.card-event .events-sp ul li{
		width:100%;
		margin:0;
		flex: 0 0 80%;
		padding:0 2.5%;
	}
	.card-event .events-sp ul li div{
	    padding: 5% 0;
	}
	.card-event .events-sp ul li div:nth-of-type(1) img {
		height: calc( ( 168 / 300 ) * 75vw );
	}




	.info-mes {
	    flex-direction: column;
	    margin:0;
	}
	.info-mes div:nth-of-type(1),.info-mes div:nth-of-type(2){
		width: 87.5%;
		margin:6.25%;
		padding: 5%;
	}

	dl.news-list dt strong{
		font-size:16px;
		padding-right:8px;
	}
	dl.news-list dt em{
		font-size: 12px;
	}
	dl.news-list dt a{
		font-size: 11px;
		top:4px;
	}

	dl.news-list dd span {
	    line-height: 2;
	}
	.info-mes div:nth-of-type(2){
	    margin-top: 0;
	}
	.info-mes div:nth-of-type(2) a:nth-of-type(2) {
	    margin-top: 5%;
	}













	.btn-floor{
		justify-content: space-between;
		
		margin:0 0 0 5% ;
		overflow-x: scroll;
		-webkit-overflow-scrolling: touch;
  		overflow-scrolling: touch;
	}
	.btn-floor li{
		flex: 0 0 20%;
	}

	.shopInfo .cap-top-floor{
		font-size:20px;
	}
	.shopInfo ul{
		flex-direction: column;
	}
	.shopInfo ul li{
		width:90%;
		margin:5% 5% 0;
		padding-bottom:5%;
		border-bottom: 1px dotted #999;
	}
	.shopInfo ul li:nth-of-type(n+2){
		
	}
	.shopInfo ul li a{
		display: flex;
		flex-direction: wrap;
	}
	.shopInfo ul li div{
		
	}
	.shopInfo ul li div:nth-of-type(1){
		width:40%;
	}
	.shopInfo ul li div:nth-of-type(1) img{
		height:calc( 168px / 2 * 0.8);
	}
	.shopInfo ul li div:nth-of-type(2){
		width:60%;
		padding:2% 0 0 5%;
	}
	.shopInfo ul li div:nth-of-type(2) small {
	    margin-top: 8px;
	}



}