@charset "UTF-8";

/*
Theme Name: KAZUYOSHI SAITO 2026-02
Theme URI: http://www.kazuyoshi-saito.com/
Description: 斉藤和義ツアー2026
Version: 2.0
Author: Rumble Cats
Author URI: http://www.kazuyoshi-saito.com/
*/


/*---reset/common---*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6,
p, blockquote, pre,
address, cite, del, dfn, em, img, q,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer,  hgroup, menu, nav, section, summary,
time, mark, audio, video{
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
	box-sizing:border-box;
}

article,aside,details,figcaption,figure,
footer,hgroup,menu,nav,section{
	display:block;
}


body{
	font-family:'Noto Sans JP', sans-serif;
	line-height:1.8;
	font-size:16px;
	font-weight:350;
}

h1,h2,nav,.date{
	font-family: 'Exo', sans-serif;
}




h1{
	display:none;
}



h2{
	border-bottom:2px solid #000000;
	margin-bottom:25px;
	font-size:24px;
}

.h2-schedule{
	margin-bottom:0;
}

h2,nav{
	font-weight:bold;
}

a{
	color:#63A0b7;
	text-decoration:none;
}

a:hover{
	opacity:0.5;
}

article,nav{
	width:80%;
	max-width:1100px;
	margin:50px auto;
}


@media only screen and (max-width: 800px){
	h1.h1-sp{
		text-align:center;
		color: #F0E32B;
		font-size:50px;
		position:absolute;
		z-index:20;
		top:0;
		right:0;
		bottom:0;
		left:0;
		line-height:1;
		font-size:40px;
		display:block;
	}
	
	h1.h1-pc{
		display:none;
	}
	
	article,nav{
		width:90%;
		margin:30px auto;
	}
}


/*-------------
header
-------------*/
header.pc{
	display:block;
	width:100%;
	padding-top:67.95%;/*画像の縦÷横×100*/
	background-image:url(img/header.jpg);
	/*background:no-repeat;*/
	background-size:100%;
	background-repeat:no-repeat;
	position:relative;
}

.title{
	width:90%;
	max-width:1000px;
	margin:0 auto;
	margin-top:50px;
	display:block;
}

/*header.sp{
	display:none;
}*/

@media only screen and (max-width: 768px){
/*	header.pc{
		display:none;
	}*/
	
/*	header.sp{
		display:block;
		width:100%;
		padding-top:116%;------------画像の縦÷横×100
		background-image:url(img/header-sp.png);
		background-size:100%;
		background-repeat:no-repeat;
		position:relative;
	}*/
	
	.title{
	width:98%;
	max-width:1000px;
	margin:0 auto;
	margin-top:25px;
	display:block;
}

}

/*---nav---*/
nav ul{
	display:flex;
	flex-flow:row nowrap;
	justify-content:space-between;
	margin:0 auto;
}

nav li{
	text-align:center;
	width:33%;/*メニューの数増えたら変更する*/
	list-style:none;
	border-right:1px solid #000000;
/*	margin-right:0;
	margin:0;*/
}

nav li:last-child{
	border-right:none;
/*	margin:0;*/
}

nav a{
	color:#000000;
}

@media only screen and (max-width: 800px){
	nav ul{
		width:98%;
		font-size:14px;
	}
	

}


/*---news---*/
.info-index li{
	margin-left:5px;
	position:relative;
	padding-left:20px;
	list-style:none;
	margin-top:25px;
	word-break: break-all;
}

.info-index li:first-child{
	margin-top:25px;
}

.info-index li:before{
	content:"";
	position:absolute;
	top:.30em;
	left:0;
	width:0;
	height:0;
	border-width:8px;
	border-style:solid;
	border-color:transparent transparent transparent #000000;
}


/*---schedule---*/
table{
	border-collapse:collapse;
	width:100%;
	margin-bottom:50px;
	box-sizing:border-box;
}

tr{
	border-bottom:1px solid #ddd;
}

td{
	padding:25px 10px;
	vertical-align:middle;
}

.date{
	font-size:25px;
	white-space: nowrap;
}

.week{
	font-size:16px;
	margin-left:3px;
}

.red{
	color:#E23A50;
}

.blue{
	color:#3A82B7;
}

.city {
	white-space: nowrap;
}

.city span{
	background-color:#63A0b7;
	border-radius:4px;
	padding:2px 6px;
	color:#fff;
	font-size:16px;
	width:80px;
	display:inline-block;
	text-align:center;
}

.contact,.time{
	font-size:14px;
	margin-top:8px;
}

.ticket{
	font-size:16px;
}

@media (max-width:800px){
	
	table{
		width:100%;
		display:block;
		border-collapse:separate;
	}
	
	tbody{
		display:block;
		width:100%;
	}
	
	tr{
		display:flex;
		flex-direction:column;
		border-bottom:none;
		border-bottom:1px solid #ddd;
		padding-bottom:15px;
		margin-bottom:15px;
		width:100%;
	}
	
	tr:first-child{
		padding-top:15px;
	}
	
	td{
		display:block;
		width:100%;
		padding:5px 0;
		border:none;
	}

}


/*---attention---*/
dt{
	border-bottom:1px solid #000000;
	margin-bottom:15px;
	padding-bottom:5px;
	font-weight:500;
}

dd{
	margin-bottom:50px;
}

dd li{
	margin:0 0 10px 20px;
}

dd li:last-child{
	margin:0 0 0 20px;
}

.price{
	font-size:20px;
	line-height:2;
	margin-bottom:10px;
}


/*---ticket---*/
.ticket-label{
	width:200px;
	padding:2px 6px;
	border-radius:4px;
	text-align:center;
	display:inline-block;
	color:#FFFFFF;
}

.release{
	background-color:#d7d49a;
	color:#000000 !important;
}

.onsale{
	background-color:#ce7776;
}

.soldout{
	background-color:#9bbec5;
}

.thankyou{
	background-color:#F0F0F0;
	color:#000000 !important;
}


/*---footer---*/
address{
	margin:50px 0;
	text-align:center;
	font-style:normal;
}

#totop{
	position:fixed;
	bottom:60px;
	right:25px;
	z-index:2000;
}

#totop a{
	display:block;
	width:60px;
	height:48px;
	text-decoration:none;
	font-size:20px;
	text-align:center;
	background-color:#215b88;
	color:#FFFFFF;
	border-radius:50%;
	-webkit-border-radius:50%;
	-moz-border-radius:50%;
	padding-top:12px;
	filter:alpha(opacity=50);
	-moz-opacity:0.5;
	opacity:0.5;
}

#totop a:hover{
	filter:alpha(opacity=100);
	-moz-opacity:1;
	opacity:1;
}

.link{
	display:flex;
	justify-content:center;
	margin-bottom:50px;
}

.link-ks,.link-ssr,.link-shop{
	width:80px;
	height:74px;
	margin:0 20px;
	background-size:80px 74px;
	background-repeat:no-repeat;
	display:block;
	text-indent:-9999px;
}

.link-ks{
	background-image:url(img/link-ks.png);
}

.link-ssr{
	background-image:url(img/link-ssr.png);
}

.link-shop{
	background-image:url(img/link-shop.png);
}

/*---modalwindow---*/
.modal-content{
	background:#FFFFFF;
	border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;
	display:none;
	margin:20px 10px;
	padding:20px;
	position:relative;
	width:900px;
	height:90%;/*330追加*/
	overflow:auto;/*330追加*/
	word-break: break-all;
}

.info-preview{
	background:#FFFFFF;
	border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;
	margin:20px auto;
	padding:20px;
	position:relative;
	width:900px;
	height:90%;/*330追加*/
	overflow:auto;/*330追加*/
}


@media only screen and (max-width:768px){
	.modal-content,.info-preview{
		margin:5% 2%;
		padding:10px;
		position:relative;
		width:90%;
	}
}

/* 追加ここから 
	.modal-content p {
	max-width: 100%;
	
	}
	
 追加ここまで */

.modal-overlay{
	z-index:2;
	display:none;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:120%;
	background-color:rgba(0,0,0,0.75);
}

.modal-wrap{
	z-index:3000;
	display:none;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	overflow:auto;
}

.modal-open{
	display:inline!important;
	color:#000000!important;
	cursor:pointer!important;
	padding:0!important;
	position:relative!important;
}

.modal-open2{
	display:inline!important;
	color:#63A0b7!important;
	cursor:pointer!important;
	padding:0!important;
	position:relative!important;
}

.modal-open:hover,.modal-open2:hover{
	cursor:pointer;
}

h3{
	border-bottom:1px solid #63A0b7;
	padding:25px 0;
}

.mordal-content-info{
	color:#000000;
	padding:25px 0;
}

.mordal-content-info a{
	color:#63A0b7;
	text-decoration:none;
}

.modal-close{
	display:block;
	width:30px;
	margin:30px auto;
	font-size:40px;
	font-weight:bold;
	line-height:1;
}

.modal-close:hover{
	cursor:pointer;
}

#sb_instagram{
	max-width:1000px;
}

