@charset "utf-8";
/* CSS Document */
/*================================================
 *  CSSリセット
 ================================================*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,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,header,hgroup,main,menu,nav,section,summary,time,mark,audio,video{
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
	font-weight:normal;
}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}
img{
	vertical-align:top;
}
textarea{
	resize:none;
}
body{
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color:#222;
	font-size:16px;
	line-height:150%;
}
@media screen and (max-width:1300px) {
	body{
		font-size:90%;
		line-height:140%;
	}
}
/*===============================*/
h1{
	font-size:3.75em;
	font-family: "Shippori Mincho B1", serif;
	font-weight: 600;
	font-style: normal;
}
h2{
	font-size:1.75em;
	border-left:3px solid #E41F1F;
	padding-left:7px;
	line-height:120%
}
h3{
	font-size:1.5em;
	margin-bottom:40px;
	padding:7px 0 7px 7px;
	border-left:3px solid #E41F1F;
	background:#242B8C;
	color:#fff;
}
@media screen and (max-width:700px) {
	h1{
		font-size:1.7em;
	}
}
/*===============================*/
@media screen and (min-width:1301px) {
	.pc_none{
		display:none !important;
	}
}
.bk_2{
	background:#EFECE9;
}
@media screen and (max-width:1300px) {
	.sp_none{
		display:none !important;
	}
}
/*--------------------------*/
.mt50{
	margin-top:50px !important;
}
.mt30{
	margin-top:30px !important;
}
.mt10{
	margin-top:10px !important;
}
.mt50{
	margin-bottom:50px !important;
}
.mb30{
	margin-bottom:30px !important;
}
.mb10{
	margin-bottom:10px !important;
}
.pt50{
	padding-top:50px !important;
}
.pb50{
	padding-bottom:50px !important;
}
/*===============================*/
.himg{
	height:250px;
	overflow:hidden;
}
.logo{
	position:absolute;
	left:50px;
	top:5px;
	z-index:9999;
}
.nav{
	width:1300px;
	position:absolute;
	top:40px;
	left:50%;
	transform:translateX(-50%);
	height:45px;
	background:#242B8C;
	border-radius:30px;
	z-index:9999;
	ul{
		width:1250px;
		margin:0 auto;
		display:flex;
		li{
			width:20%;
			height:45px;
			text-align:center;
			&:hover{
			background:#D30000;
			border-radius:30px;
			}
			a{
				display:block;
				padding:10.5px 0;
				color:#fff;
				text-decoration:none;
			}
		}
	}
}

header{
	border-top:5px solid #D30000;
	border-bottom:10px solid #A38C47;
	width:100%;
	position:relative;
	img{
		width:100%;
	}
	.moji{
		position:absolute;
		top:50%;
		left:50%;
		transform:translate(-50%,-50%);
		color:#fff;
		text-shadow:2px 2px 0 #242B8C, -2px 2px 0 #242B8C, 2px -2px 0 #242B8C, -2px -2px 0 #242B8C, -2px 0 0 #242B8C, 0 -2px 0 #242B8C, 2px 0 0 #242B8C, 0 2px 0 #242B8C, 0 0 15px #242B8C;
		width:100%;
		text-align:center;
	}
}
@media screen and (min-width:1301px) {
	.moji.pc_down{
		top:64%
	}
}

@media screen and (max-width:1300px) {
	.himg{
		height:auto;
		max-height:250px;
		overflow:hidden;
	}
	.logo{
		left:3%;
		width:14%;
		img{
			width:100%;
		}
	}
	.nav{
		width:180px;
		height:100%;
		position:fixed;
		top:0;
		left:0;
		border-radius:0px;
		transform:translateX(-100%);
		transition:all 0.3s;
		ul{
			display:block;
			width:180px;
			margin:0 auto;
			padding-top:30px;
			li{
				width:100%;
				height:45px;
				text-align:center;
				&:hover{
				background:#D30000;
				border-radius:0px;
				}
				a{
					display:block;
					padding:10.5px 0;
					color:#fff;
					text-decoration:none;
				}
			}
		}
	}
	.nav.open{
		transform:translateX(0%)
	}
}
/*================
/*    nav_btn
================*/
.nav_btn {
  position: fixed;
  top:6px;
  right:6px;
  width: 58px;
  height: 48px;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 10;
}
/***** 真ん中のバーガー線 *****/
.btn-line {
  width: 100%;
  height: 4px;
  background-color: #333;
  position: relative;
  transition: .2s;
}
/***** 上下のバーガー線 *****/
.btn-line::before,
.btn-line::after {
  content: "";
  position: absolute;
  left:0;
  width: 100%;
  height: 100%;
  background-color: #333;
  transition: .2s;
}
.btn-line::before {
  transform: translateY(-13px);
}
.btn-line::after {
  transform: translateY(13px);
}
/***** メニューオープン時 *****/
.btn-line.open {
  background-color: transparent;
}
.btn-line.open::before,
.btn-line.open::after {
  content: "";
  transition: .2s;
}
.btn-line.open::before {
  transform: rotate(45deg);
}
.btn-line.open::after {
  transform: rotate(-45deg);
}

/*======================================*/
.main{
	min-height: 514px;
	.bk:nth-child(even){
		background:#EFECE9;
	}
	.innr{
		max-width:1250px;
		margin:0 auto;
		padding:50px 30px ;
		.h3_div{
			padding:0 12px;
		}
	}
}
@media screen and (max-width:3000px) {
	.main{
		min-height: 518px;
	}
}
@media screen and (max-width:700px) {
	.main{
		min-height:calc(100vh - 235px);
		.innr{
			padding:50px 1%;
		}
	}
}

.kaicho{
	display:inline-block;
	float:right;
	margin-left:10px;
}
@media screen and (max-width:700px) {
	.kaicho{
		float:none;
		display:block;
		margin:0 auto 10px auto;
		max-width:100%;
		width:200px;
	}
}
.flx{
	display:flex;
	align-items: center;
	justify-content: space-around;
	.flx_txt{
		width:50%;
		.innr{
			width:70%;
			margin:auto;
			padding:50px 0;
			.btn a{
				display:block;
				box-sizing:border-box;
				height:50px;
				width:180px;
				border:#ccc 1px solid;
				padding:13px;
				text-align:center;
				margin:0 auto;
				background:#fff;
				color:#333;
				text-decoration:none;
			}
			.txt{
				margin-top:30px;
				margin-bottom:30px;
				overflow:hidden;
			}
			.info_txt li:first-child{
				border-top:1px dotted #ccc;
				margin-top:10px;
			}
			.info_txt li{
				border-bottom:1px dotted #ccc;
				padding:5px 20px;
				a{
					color:#333;
					text-decoration:none;
				}
			}
		}
		
	}
	.flx_pic{
		width:50%;
		height:590px;
		img{
			height:100%;
			width:100%;
			object-fit:cover;
		}
	}
}

.item_1{
	width:1300px;
	margin:0 auto;
}

.map{
	width:50%;
	iframe{
	width:100%;
	}
}

@media screen and (max-width:1300px) {
	.item_1{
		width:100%;
		h2{
			width:95%;
			margin:auto;
		}
	}
}
@media screen and (max-width:700px) {
	.flx{
		flex-wrap:wrap;
		.flx_txt{
			width:100%;	
			.innr{
				width:95%;
			}
		}
		.flx_pic{
			width:100%;
			height:auto;
		}
	}
	.flx.revs{
		.flx_pic{
			order:2;
		}
		.flx_txt{
			order:1;
		}
		div:nth-child(1){
			order:2;
		}
		div:nth-child(2){
			order:1;
		}
	}
	.map{
		width:100%;
	}
	.f_nav{
		display:none;
	}
}
.flx_pic3for2{
	display:flex;
	flex-wrap:wrap;
	justify-content: space-between;
	div{
		width:31%;
		margin-top:40px;
	}
}
@media screen and (max-width: 700px){
	.flx_pic3for2{
		div{
			margin-top:2px;
			width:calc(50% - 1px);
			&:nth-child(1),&:nth-child(2){
				margin-top:40px;
			}
		}
	}
}
/*=======================================
 スポンサー
=======================================*/

@keyframes infinity-scroll-left {
from {
  transform: translateX(0);
}
  to {
  transform: translateX(-100%);
}
}
.scroll-infinity__wrap {
  display: flex;
  overflow: hidden;
}
.scroll-infinity__list {
  display: flex;
  list-style: none;
  padding: 0
}
.scroll-infinity__list--left {
  animation: infinity-scroll-left 80s infinite linear 0.5s both;
}
.scroll-infinity__item {
  width:180px;
  margin-left:10px;
}
.scroll-infinity__item>img {
  width: 100%;
}

/*=====================================*/
/*  footer
/*=====================================*/
footer{
	background:#D7C89C;
	padding-top:20px;
	padding-bottom:50px;
}
.f_nav{
	height:60px;
	border-top:1px #fff solid;
	border-bottom:1px #fff solid;
	background:#A38C47;
	ul{
		width:1250px;
		height:60px;
		margin:0 auto;
		display:flex;
		align-items: center;
		li{
			width:20%;
			text-align:center;
			a{
				color:#eee;
				display:block;
				padding:12px 0;
				text-decoration:none;
				&:hover{
					color:#fff;
					text-decoration:underline;
				}
			}
		}
	}
}
.copyright{
	text-align:center;
	font-size:80%;
	color:#242B8C;
}

@media screen and (max-width:1300px) {
	.f_nav ul{
		width:100%;
	}
}
/*===========================================
contact
===========================================*/
.rcolo{
	color:red;
}
.con_table{
	tr:last-child td{
		padding-top:20px;
	}
	th{
		padding: 5px 14px 5px 0;
		text-align: left;
		vertical-align:top;
	}
	td{
		padding:5px;
	}
}
@media screen and (max-width:700px) {
	.con_table{
		width:100%;
		border:1px solid #f1f1f1;
		th, td{
			display:block;
			width:100% !important;
			textarea{
				width:calc(100% - 10px);
			}
			input[type="text"]{
				width:calc(100% - 10px);
				box-sizing:border-box;
				height:40px;
				font-size:120%;
			}
		}
		th{
			text-align:center;
			padding:20px 0;
			background:#f1f1f1;
			margin-top:3px;
		}
		tr:nth-child(1) th{
			margin-top:0px;
		}
		tr:nth-child(12){
			border-bottom:1px solid #f1f1f1;
		}
		tr:last-child td{
			padding-top:5px;
		}
	}
}

input[type="reset"]{
	width:100px;
	height:50px;
	border-radius:13px;
	color:#fff;
	border:none;
	background:#f33;
	box-shadow:inset -2px -2px 0 #c22;
	&:hover{
		box-shadow:inset 5px 5px 0 #c22;
		background:#f33;
	}
}
input[type="submit"]{
	width:100px;
	height:50px;
	border-radius:13px;
	color:#fff;
	border:none;
	background:#33f;
	box-shadow:inset -2px -2px 0 #22c;
	&:hover{
		box-shadow:inset 5px 5px 0 #22c;
		background:#33f;
	}
}





.info_pic{
	display:table;
	img{
		max-width:100% !important;
	}
}
.day{
	font-size: 85%;
    color: #eee;
}



.hall_table{
	box-sizing:border-box;
	margin:7px 0;
	th{
		background:#A19A97;
		color:#fff;
		padding:2px 5px;
		border:1px solid;
		border-color:#000;
	}
	tr{
		background:#f1f1f1;
	}
	td{
		padding:2px 5px;
		border:1px solid;
		&.many{
			text-align:end;
		}
	}
}


.acd_m{
	display:inline;
	dt{
		background: #ccf;
		color: #333;
		padding: 5px;
		box-sizing: border-box;
		margin: 10px 0;
	}
	dd{
		padding:0 12px;
	}
}


@media screen and (min-width: 701px) {
	.h3_div:has(.poster){
		min-height:335px;
	}
}
.poster{
	float:right;
	width:20%;
	margin-left:12px;
	img{
		width:100%;
	}
}
@media screen and (max-width: 700px) {
	.poster{
		float:none;
		margin:0 auto 30px auto;
		width:70%;
	}
}