@charset "utf-8";

/* mainvisual */
#mainvisual{
	position: relative;
	margin: 0 auto;
	width: 100%;
	font-weight: bold;
}
#mainvisual .title{
	position: relative;
	margin-top: 0;
	text-align: left;
	background-color: rgba(16,26,55,.8);
	padding: 10px;
	color: #ffffff;
}
#mainvisual h2{font-size: .20rem;}
#mainvisual p{font-size: .12rem;}

/* 共通 */
#shop h3,#list h,#event h3{
	position: relative;
	margin: 0 auto;
	color:#101a37;
	font-weight: bold;
	font-size: .24rem;
	text-align: left;
	padding-bottom: 6%;
	line-height: .3rem;
}






/* ニュース */
#news{
	position: relative;
	margin: 4% auto;
}
#news .contents-inner{
	padding: 1% 0;
	border-top: solid 1px #4187c7;
	border-bottom: solid 1px #4187c7;
}
#news h2{
	position: relative;
	margin: 4% auto;
	width: 100%;
	height:0;
	padding-top: 18%;
	background-image: url("../img/top/top_info_title.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: 5% 50%;
}
#news ul.newsList{
	position: relative;
	margin: 0 auto;
	width: 96%;

}
#news ul.newsList li{border-bottom: solid 1px #d9d9d9; padding: .5em 0; text-align: left;}
#news ul.newsList li:last-child{border-bottom: none;}
#news ul.newsList li span{display: inline-block;}
#news ul.newsList li a{ display: block; text-decoration: none; color: #000000;}

.new {
	color: #ff0000;
	font-weight: bold;
}
.date {
	position: relative;
}






/* banner */
#banner ul{
	position: relative;
	margin: 10px auto;
	width: 80%;
}
#banner ul li{
	position: relative;
	margin: 0 0 15px 0;
}
.space {
	margin: 150px;
}

/* event */
#event{
	position: relative;
	margin: 0 auto;
	padding-top: 8%;
	background-image: url("../img/common/bg.jpg");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-color: #ffffff;
	box-shadow:0px 12px 16px -10px rgba(0,0,0,0.3) inset;
}
#event h2{
	position: relative;
	margin: 0 auto 5% auto;
	display: block;
	width: 100%;
	height:0;
	padding-top: 1%;
}
#event p{
	position: relative;
	margin: 50px 0 0 0;
	padding: 50px 0 0 0;
	color: #434343;
}
#event ul {
	position: relative;
	margin: 0 auto;
}

#event ul li{
	position: relative;
	margin: 4% auto;
	width: 80%;
	text-align: center;
}
#event .kenzottl{
	position: relative;
	margin: 0 auto 5% auto;
	display: block;
	width: 100%;
	height:0;
	padding-top: 1%;
	font-size: 1.2em;
	line-height: 1.3em;
	text-align: left;
}
#event .kenzotxt{
	position: relative;
	margin: 60% 0 0 0;
	color: #434343;
	text-align: left;
}

.red {
	color: #BF1C1C;
}
.button{
	 position: relative;
	margin:3% 1%;
    display: inline-block;
    padding: .6em;
	color: #ffffff;
    background: #101a37;
	border:none;
	border-radius: 5px;
	font-size: .14rem;
	text-align: center;
}
.button a {
	color: #fff;
	cursor: pointer;
}
.txt{
	position: relative;
	margin: 5% 0 0 0;
	color: #434343;
	text-align: left;
}

#lead{
	position: relative;
	margin: 8% auto;
}
#lead h3{
	position: relative;
	margin: 0 auto;
	font-size: .20rem;
	color: #000;
}

/* form */
#form{
	position: relative;
	margin: 0 auto;
	padding-top: 8%;
}
#form h3{
	position: relative;
	margin: 8% auto;
	padding-bottom: 12%;
	font-size: .22rem;
	color: #444344;
	border-bottom: solid 3px #4187c7;
}
#form.confirm, #form.thanks{
	box-shadow: none !important;
}
#form dl{
	position: relative;
	text-align: left;
}
#form dt span{
	position: relative;
	background-color: #de5a24;
	border-radius: 3px;
	color: #ffffff;
	padding: .3em;
}
#form dd{
	position: relative;
	margin: 2% auto 4% auto;
	color: #808080;
}
#form dd span{font-size: .12rem;}
#form p.thanksMSG{
	position: relative;
	margin: 8% auto;
}

input[type="text"],
textarea {
    padding: .8em .2em;
    outline: none;
    border: 1px solid #b9b9b9;
	border-radius: 3px;
	margin: 1% 0;
	width: 90%;
	font-size: .14rem;
}
textarea {
    width: 90%;
	height: 8em;
}
select {
	width: 100%;
    border: none;
	padding-right: 1em;
	cursor: pointer;
	text-indent: 0.01px;
	text-overflow: ellipsis;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	background-image: none;
	box-shadow: none;
	font-size: .14rem;
}
.selectBox{
	position: relative;
	border: solid 1px #b9b9b9;
	border-radius: 3px;
	padding: .2em 0;
	width: 90%;
}
.selectBox:before {
    position: absolute;
    display: block;
    content: '';
    width: 0;
    height: 0;
	color: #808080;
    border-left: 4px solid transparent;
    border-bottom: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 8px solid #808080;
    top: 50%;
    right: 3%;
    margin-top: -3px;
    pointer-events: none;
}
/*button, .formbutton{
    position: relative;
	margin:3% auto;
    display: inline-block;
    padding: .6em;
    color: #ffffff;
    background: #a0a0a0;
	border:none;
	border-radius: 3px;
	font-size: .14rem;
}*/

/* ----- pc ----- */
@media screen and (min-width: 641px) {
	
	/* 共通 */
	#shop h3,#list h3{padding-bottom: 50px;margin: 0 0 0 20px;}
	.leftBox, .rightBox{
		position: relative;
		margin: 0 ;
		display: inline-block;
		width: 480px;
		vertical-align: top;
	}
	.rightBox{margin: 0 0 0 25px;}

	
	/* mainvisual */
	#mainvisual .title{
		position: absolute;
		bottom: 20px;
		left: 4%;
		margin-top: 0;
	}
	#mainvisual h2{margin-bottom: 10px;}
	

	
	
	/* ニュース */
	#news{
		margin: 30px auto;
		padding: 30px 0;
	}
	#news h2{
		margin: 0 40px 0 20px;
		width: 140px;
		padding-top: 72px;
		display: inline-block;
		vertical-align: middle;
	}
	#news ul.newsList{
		position: relative;
		margin: 0 auto;
		width: 740px;
		display: inline-block;
		vertical-align: middle;

	}
	#news ul.newsList li{border-bottom: solid 1px #d9d9d9; padding: .5em 0; text-align: left;}
	#news ul.newsList li:last-child{border-bottom: none;}
	#news ul.newsList li span{display: inline-block; padding-right: 20px;}
	#news ul.newsList li a{ display: inline-block; text-decoration: none; color: #000000;}




	

	/* banner */
	#banner ul{
		margin: 140px auto 90px auto;
		width: 960px;
		display:-webkit-box;
		display:-webkit-flex;
		display:-ms-flexbox;
		display:flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
	}
	#banner ul::after{
	  content:"";
	  display: block;
	  width: 450px;
	}
	#banner ul li{
		margin: 0 0 20px 0;
		width: 450px;
	}
	
	/* event */
	#event{
		padding-top: 0;
		background-image: none;
		box-shadow: none;
	}
	#event .contents-inner{
		margin: 0 auto;
		padding-top: 60px;
		background-image: url("../img/common/bg.jpg");
		background-size: 729px auto;
		background-repeat: no-repeat;
		background-position: 0 0;
	}
	#event .shadow{
		position: relative;
		margin: 0 auto;
		height: 10px;
		box-shadow:0px 12px 16px -10px rgba(0,0,0,0.3) inset;
		z-index: 10;
	}
	#event .contents-inner{
		margin: -10px auto 0 auto;
		padding-top: 30px;
	}
	#event h2{
		margin: 0 auto 40px auto;
		width: 80%;
		padding: 0;
		font-size: 1.5em;
		line-height: 1.5em;
	}
	#event p{text-align: center; 
		font-size: .16rem;
	margin: 50px 0 0 0;
	padding: 50px 0 0 0;}
	#event ul{
		margin: 50px auto 0 auto;
		display:-webkit-box;
		display:-webkit-flex;
		display:-ms-flexbox;
		display:flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		justify-content: space-between;
		text-align: center;
		width: 90%;
	}
	#event ul li{
		margin: 0 0 50px 0 !important;
		width: 250px;
	}
	#event .kenzottl{
	position: relative;
	margin: 0 auto 5% auto;
	display: block;
	width: 90%;
	line-height: 1.5em;
}

	.button a {
		color: #fff;
		cursor: pointer;
	}
	
	
	#lead{margin:55px auto; 
		width: 900px;}
	#lead h3{font-size: .24rem;
		padding: 10px;
		line-height: .34rem;
	color: #000;}

	
	
	/* form */
	#form{padding-top: 5px;}
	#form h3{
		margin: -160px auto 60px auto;
		padding-bottom: 20px;
		font-size: .26rem;
		width: 800px;
	}
	#form dl{ width: 600px; margin: auto;}
	#form dt{
		float:left;
		width:220px;
		margin-top: 10px;
		padding: 10px 0;
	}
	#form dt span{padding: .5em;}
	#form dd{
		padding: 15px 0 15px 220px;
		margin-bottom: 30px;
	}
	
	#form.confirm h3{margin: 60px auto;}
	
	#form.thanks{padding-bottom: 120px;width: 900px;}
	#form.thanks h3{ 
		margin: 0 auto 60px auto;
		padding-bottom: 20px;
		font-size: .26rem;
	}

	input[type="text"],
	textarea {width: 380px;}
	textarea {width: 380px;}
	.selectBox{width: 200px;}
	.selectBox:after {
		top: 50%;
		right: 185px;
		margin-top: -3px;
	}
	/*button, .formbutton{margin:20px auto 90px auto; padding: 20px;}
	button:hover, .formbutton:hover {
		background: #4187c7;
		color: #fff;
		cursor: pointer;
	}*/
	
	.txt{
	position: relative;
		width: 100%;
	margin: 50px auto 50px auto;
		text-align: center;
}
	
	
}