@charset "utf-8";

/* root/ikebukuro/members/tickets/
------------------------------------------ */

/* ヘッダー内 サブメニュー　PC only
------------------------------------------ */
header dl.submenu{
	width: 100%;
	max-width: 960px;
	margin: 2% auto 0;
	display: table;
}

header dl.submenu dt{
	display: table-cell;
	width: 10em;
	background-color: #368b38;
	color: #ffffff;
	padding: 2px 5px;
	border-radius: 5px;
	text-align: center;
	vertical-align: top;
}

header dl.submenu dd{
	display: table-cell;
	vertical-align: middle;
	padding-top: 2px;
}

header dl.submenu dd ul{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-left: 1em;
	padding-top: 1px;
}

header dl.submenu dd ul li{
	margin-right: 1em;
	background:url(/ikebukuro/img/icon_link.png) no-repeat left 0px;
	background-size: 12px;
	padding: 0 0 0 14px;
}


header dl.submenu dd ul li:nth-of-type(3){
	background:url(/ikebukuro/img/icon_anchor.png) no-repeat left 0px;
	background-size: 13px;
}


header dl.submenu a{
	color: #368138;
	text-decoration: none;
}

header dl.submenu a:hover{
	color: #ff8138;
}

@media screen and (max-width:768px) {
	header dl.submenu{
		display: none;
	}
}


/* メインコンテンツ article
------------------------------------------ */
article{
	width: 100%;
	margin-top: 1%;
}

article > h1{
	max-width: 960px;
	margin: 0 auto;
	padding: 0;
}

article > p:first-of-type{
	width: 95.2%;
	padding: 3% 2.4%;
	background-color: #ece2ec;
}

article > p > span{
	display: block;
	width: 85%;
	padding: 3% 7.5% 0;
	line-height: 1.6em;
	font-size: calc(110vw / 32);
	color: #674848;
}


@media screen and (min-width:769px) {
	article > p{
		box-sizing: border-box;
		width: 100%;
		max-width: 960px;
		margin: 0 auto;
		overflow: hidden;
	}
	
	article > p img{
		float: left;
		width: 47.8%;
		padding: 0 1.2% 0 1%;
	}
	article > p span{
		float: right;
		width: 38%;
		padding: 2% 6% 0;
		font-size: calc(60vw / 32);
		line-height: 1.8em;
	}
}

@media screen and (min-width:960px) {
	article > p span{
		font-size: 18px;
	}	
}


article > ul.anchor{
	width: 86%;
	max-width: 660px;
	margin: 2% auto 0;
}

article > ul.anchor li{
	padding-left: 1em;
	text-indent: -1em;
	line-height: 1.6em;
}

article > ul.anchor li span{
	color: #ff4628;
}

article > ul.anchor li a{
	color: #368a38;
	text-decoration: none;
}

article > ul.anchor li a:hover{
	color: #ff4628;
}

article > ul.anchor li:last-of-type{
	margin-top: 5px;
}

@media screen and (min-width:769px) {
	article > ul.anchor{
		width: 100%;
		max-width: 960px;
	}

	article > ul.anchor li:last-of-type{
		width: 410px;
	}
}




/* 項目・イベント　2022年5月6日追記------------------------*/
.ttl_koumoku{
	box-sizing: border-box;
	width: 100%;
	margin: 3% auto 0;
	padding: 0.5em 0 0 0;
}

.bnr{
	box-sizing: border-box;
	width: 86%;
	max-width: 720px;
	margin: 1% auto 0;
	padding: 0.5em 0 0 0;
}

.bnr li{
	margin-top: 2%;
}

@media screen and (min-width:769px) {
	.ttl_koumoku{
	    width: 100%;
		max-width: 960px;
    }
	
	.bnr{
		width: 100%;
		max-width: 960px;
		margin: 2% auto 0;
	}
	
	.bnr li{
		max-width: 850px;
		margin: 2% auto 0;
	}
}


/* go to キャンペーン------------------------*/
#goto{
	box-sizing: border-box;
	width: 86%;
	max-width: 660px;
	margin: 2% auto 0;
	padding: 1em 0 0 0;
	overflow: hidden;
	line-height: 1.4em;
}

#goto p{
	float: left;
	width: 50%;
	margin: 0 1.5em 0 0;
	padding: 0;
}

#goto li{
	padding-left: 1em;
	text-indent: -1em;
	line-height: 1.4em;
}

@media screen and (min-width:769px) {
	#goto{
		width: 100%;
		max-width: 960px;
		margin: 2% auto 0;
		padding: 0;
		overflow: hidden;
	}
	
	#goto p{
		width: 30%;
	}
}












/* イベント・トラベル #travel
------------------------------------------ */
#travel{
	width: 93.48%;
	max-width: 718px;
	padding:3% 3.26% 0;
}

#travel div.wrap{
	box-sizing: border-box;
	width: 100%;
	border: #bd2b05 solid 1px;
	margin-top: 5%;
	padding-bottom: 2%;
}

#travel h2{
	padding: 2% 0.5% 2% 1em;
	text-indent: -0.5em;
	color:#bd2b05;
	font-size: calc(120vw / 32);
	font-weight: bold;
	background-color: #f7e8d6;
	line-height: 1.4em;	
}

#travel h2 span{
	color: #000000;
	font-size: calc(90vw / 32);
}

#travel h2 div:last-of-type{
	text-indent: 0;
	overflow: hidden;
	text-align: right;
	padding:0 0.5em 0 0;
}

#travel p.code2{
display:inline-block;
background-color:#bd2b05;
color:#ffffff;
/*font-size:13px;*/
font-size: calc(80vw / 32);
border:#bd2b05 solid 1px;
padding:2px 2px 2px 4px;
}

#travel p.code2 span{
display:inline-block;
background-color:#ffffff;
color:#000000;
padding:0 2px 0 4px;
letter-spacing:2px;
font-weight:normal;
}

#travel div.inwrap{
	width: 94.8%;
	max-width: 680px;
	margin: 0 auto;
	padding: 2.5% 0;
}

#travel .inwrap .txpic p{
	font-size: calc(120vw / 32);
	line-height: 1.4em;
	margin-top: 3%;
}

#travel .inwrap .txpic p img{
	width: 4%;
	margin-right: 5px
}

#travel .inwrap .txpic dl dt{
	font-size: calc(120vw / 32);
	line-height: 1.4em;
	color: #ff0000;
	margin-top: 1em;
}

#travel .inwrap .txpic dl dd{
	font-size: calc(120vw / 32);
	line-height: 1.4em;
	padding-left: 1em;
	text-indent: -1em;
}

#travel dl.detail{
	width: 91%;
	max-width: 680px;
	margin: 3% auto 0;
	padding: 1.9%;
	background-color: #eee9e9;
}

#travel dl.detail dt{
	width: 25%;
}

#travel dl.detail dd{
	font-size: calc(100vw / 32);
	line-height: 1.3em;
	padding-left: 1em;
	text-indent: -1em;
}

#travel p:last-of-type{
	margin-top: 1%;
	line-height: 1.3em;
	font-size: 0.9em;
}

p.totop{
	text-align: right;
	color: #ff4628;
	margin-top: 10px;
	padding-right: 2.5%;
	font-size: 0.9em;
}

p.totop a{
	color: #368d38;
	text-decoration: none;
}

p.totop a:hover{
	color: #ff4628;
}


@media screen and (min-width:769px) {
	#travel{
		width: 100%;
		max-width: 960px;
		padding: 0;
		margin: 0 auto 0;
	}

	#travel h2{
/*		width: 100%;*/
		overflow: hidden;
	}

	#travel h2 div:first-of-type{
		float: left;
		width: 70%;
		line-height: 1.2em;
		font-size: 24px;
	}

	#travel h2 div:first-of-type span{
		font-size: 18px;
	}
	
	#travel h2 div:last-of-type{
		float: right;
		width: 27%;
	}
	
	#travel h2 p.code2{
		float: right;
		font-size: 14px;
	}
	
	#travel h2 p.code2 span{
		font-size: 14px;	
	}
	
	#travel div.inwrap{
		max-width: 920px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	
	#travel div.inwrap > div{
		width: 49%;
	}
	
	#travel .inwrap .txpic p{
		font-size: 16px;
		line-height: 1.4em;
		margin-top: 0;
	}

	#travel .inwrap .txpic dl dt{
		font-size: 16px;
		line-height: 1.4em;
	}

	#travel .inwrap .txpic dl dd{
		font-size: 16px;
		line-height: 1.4em;
	}

	#travel dl.detail{
		max-width: 920px;
	}

	#travel dl.detail dt{
		width: 150px;
		padding-bottom: 5px;
	}

	#travel dl.detail dd{
		font-size: 15px;
		line-height: 1.3em;
	}
	
	p.totop{
		padding-right: 1%;	
	}
}


/* ポケカル #poke
------------------------------------------ */
#poke{
	width: 93.48%;
	max-width: 718px;
	margin-top: 5%;
	padding:0 3.26%;
}

#poke div.box{
	border-top:#0a3295 solid 5px;
	padding-top: 5px;	
}

#poke h2{
	font-size: calc(120vw / 32);
	color: #0a3295;
	overflow: hidden;
}

#poke h2 img{
	width: 20%;
	float: right;
	margin-top: -2%;
}

#poke h2 span{
	display: inline-block;
	background-color: #0a3295;
	color: #ffffff;
	font-weight: bold;
	font-size: calc(100vw / 32);
	padding: 3px 4px 1px;
	margin: -5px 2px 0 0;
}

#poke div.box p{
	/*margin-top: -3px;*/
	margin-top: 5px;
	font-size: calc(90vw / 32);
	/*line-height: 1.2em;*/
	line-height: 1.4em;
}

#poke div.box dl{
	margin-top: 1.5%;
}

#poke div.box dl dt{
	font-size: calc(120vw / 32);
	color: #0a3295;
	font-weight: bold;
	overflow: hidden;
	line-height: 1.6;
}

#poke div.box dl dt span{
	display: inline-block;
	background-color: #0a3295;
	color: #ffffff;
	font-size: calc(100vw / 32);
	padding: 3px 4px 1px;
	margin: -5px 2px 0 0;
}

#poke div.box dl dt div{
	float: right;
	width: 15%;
	font-size: calc(60vw / 32);
	border-left: #0a3295 solid 1px;
	border-right: #0a3295 solid 1px;
	padding: 0 1%;
	text-align: center;
	line-height: 1.2em;
}

#poke div.box dl dd{
	margin-top: 1.5%;
	color:#bd2b05;
	font-size: calc(200vw / 32);
	font-weight: bold;
}

#poke div.box dl dd span{
	font-size: calc(150vw / 32);
}

#poke table{
	width: 100%;
	margin-top: 3%;
	border-collapse: collapse;
	border: #0a3295 solid 1px;
}

#poke table caption{
	background-color: #0a3295;
	color: #ffffff;
	padding: 2px;
}

#poke table tr:first-of-type th{
	background-color: #eee9e9;
}

#poke table tr:first-of-type th:last-of-type{
	text-align: center;
	white-space:nowrap;
}

#poke table th{
	border: #0a3295 solid 1px;
	font-weight: normal;
	text-align: left;
	padding: 3px 2px;
}

#poke table td{
	border: #0a3295 solid 1px;
	padding: 2px;
	text-align: center;
}

#poke .remarks{
	margin-top: 3%;
}

#poke .remarks div p{
	line-height: 1.4em;
}

#poke .remarks div p:first-of-type{
	padding-left: 1em;
	text-indent: -1em;
}

#poke .remarks div p span{
	color: #e30012;
}

#poke .remarks a{
	color: #000000;
}

#poke .remarks a:hover{
	color: #333333;
	text-decoration: none;
}

#poke p.travelplan{
	width: 100%;
	margin-top: 7%;
	border-top:#0a3295 solid 5px;
	padding-top: 7px;	
}



@media screen and (min-width:769px) {
	#poke{
		width: 100%;
		max-width: 960px;
		padding: 0;
		margin: 5% auto 0;
	}
	
	#poke div.pokewrap{
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	
	#poke div.pokewrap > div{
		width: 49%;
	}
	
	#poke h2{
		font-size: 20px;
	}

	#poke h2 span{
		font-size: 16px;
	}

	#poke div.box p{
		font-size: 14px;
	}
	
	#poke div.box dl dt{
/*		font-size: 18px;*/
		font-size: calc(70vw / 32);
	}

	#poke div.box dl dt span{
		font-size: calc(48vw / 32);
/*		font-size: 14px;*/
	}


	#poke div.box dl dt div{
		font-size: calc(30vw / 32);
	}

	#poke div.box dl dd{
		font-size: 24px;
	}

	#poke div.box dl dd span{
		font-size: 18px;
	}
	
	#poke div.pokewrap > table{
		width: 49%;
	}
	
	#poke table {
		margin-top: 0;
	}
}


@media screen and (min-width:960px) {
	#poke div.box dl dt{
		font-size: 20px;
	}
	
	#poke div.box dl dt span{
		font-size: 16px;
	}
	
	#poke div.box dl dt div{
		font-size: 10px;
	}

}


.mgt5{
	margin-top: 5px!important;
}

.mgt10{
	margin-top: 10px!important;
}

.mgt20{
	margin-top: 20px!important;
}



/*_____イベントページお知らせ画像反映用_____*/
.campaign-banner{
	margin-top: 20%;
}
/* 画像全体の基本設定 */
.campaign-banner img {
  	width: 100%;
  	height: auto;
  	display: block; /* 画像の下にできる謎の隙間を消す */
  
  	/* スマホ版の比率を予約 (750:3300) */
  	aspect-ratio: 750 / 3300;
}

/* PC版（769px以上）の時、予約する比率を切り替える */
@media (min-width: 769px) {
	.campaign-banner{
		margin-top: 10%;
	}
	
  	.campaign-banner img {
    	/* PC版の比率に上書き (1920:2150) */
    	aspect-ratio: 1920 / 2150;
  	}
}
/*_____ここまで_____*/


