@charset "utf-8";

body {
	color:#000;
	font-size:1em;
	line-height:1.8em;
	font-family:"メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

a {
	text-decoration:underline;
	color:#000;
}

a:link {
	text-decoration:underline;
	color:#000;
}

a:visited {
	text-decoration:underline;
	color:#000;
}

a:hover {
	text-decoration:none;
	color:#000;
}

a:active {
	text-decoration:none;
	color:#000;
}

a:hover img{
	opacity:0.7;
}

img{
	padding: 30px 0;
}

#main{
	position: relative;
	text-align: center;
}

.title1{
	position: absolute;
	right: 0;
	left: 0;
	bottom: 100px;
}

.title2{padding-top: 120px}

#vis{
	position: relative;
	background: url("../img/bg2.png") center bottom no-repeat;
	text-align: center;
	padding-top: 50px;
}

#cp1{
	position: relative;
	background: url("../img/bg.png") center top/cover no-repeat;
	text-align: center;
}

#cp1 .s-box,#cp0 .s-box{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
    padding: 0
}

#cp1 .s-box>div,#cp0 .s-box>div{
	width: 50%;
    padding: 0;
}

#cp0{
	position: relative;
	background: url("../img/bg0.png") center top/cover no-repeat;
	text-align: center;
}

#cp3{
	background-color: #fbfbde;
	text-align: center;
	padding-top: 30px;
}

#cp4{
	position: relative;
	background: url("../img/bg3.png") center top/cover no-repeat;
	text-align: center;
}

#entrymain{
	position: relative;
	background: url("../img/entry/entry-bg.png") center top/cover no-repeat;
	text-align: center;
}

#entryvis{
	position: relative;
	background: url("../img/entry/entry-bg.png") center top/cover no-repeat;
	text-align: center;
}

.mv{padding: 30px 0}

.deadline{
	font-size: 300%;
	font-weight: bold;
	color: red;
	border-top: solid 3px red;
	border-bottom: solid 3px red;
	padding: 30px;
	margin: 0 15%;
}

.available{
	font-size: 180%;
	font-weight: bold;
	color: orange;
	border: solid 3px orange;
	padding: 20px;
	margin: 30px 15%;
	line-height: 1.5em;
}


section{
	position: relative;
	margin: 0 auto;
	padding-bottom: 50px;
}

.cp-box{
	width: 1200px;
	margin: 0 auto;
}

.red{color: red}

.txt180{font-size: 180%}
.bold{font-weight: bold}

.left{text-align: left}
.center{text-align: center}

.mtb30{margin: 30px 0}
.ml50{margin-left: 50px}
.ptb30{padding: 30px 0}
.ptb15{padding: 15px 0}
.pt30{padding-top: 30px}
.pt50{padding-top: 50px}
.pt100{padding-top: 100px}

.small{font-size: 70%;}

h2{
	font-size: 250%;
	color: #82522d;
	padding: 20px 0;
	font-weight: bold;
}

.txt{
	text-align: left;
	padding: 10px 10px 0 280px;
}

.txt2{
	text-align: left;
	padding: 10px 10px 0 10px;
}

.toentry .btn{
	border-radius: 50px;
	background-color: red;
	color: #fff;
	font-size: 180%;
	font-weight: bold;
	padding: 20px 0;
	margin: 60px 20% 0;
	text-decoration: none;
}

	.btn a{
		color: #fff;
		text-decoration: none;
		padding: 20px 120px;
	}

	.btn a:hover{
		opacity:0.8;
	}

.e-area{
	position: relative;
}

.empty{
	position: absolute;
	right: 0;
	left: 0;
	bottom: 50px;
	color: orange;
	font-size: 145%;
	font-weight: bold;
}

.caveat{
	border: solid 2px red;
	margin: 20px 10% 0;
	padding: 20px;
	text-align: left;
}

	.caveat ul{
		margin-left:1em;
		text-indent:-0.5em;
	}

	.caveat li:before{
		content: "※";
		display: inline-block;
	}

.tyui{
	font-size: 90%;
	line-height: 1.5em;
	border: solid 1px gray;
	padding: 5px;
	margin: 20px 200px;
	color: gray;
}

#footer{
	background-color:#ffffff;
	color: #000;
	padding:20px 0;
}

	#footer p.logo{
		padding-bottom: 20px;
		float: left;
		width: 45%;
	}

		#footer p.logo img{
			padding: 0
		}

	#footer p.tel{
		pointer-events: none;
		padding: 20px 0;
		float: right;
		width: 45%;
	}

		#footer p.tel img{
			padding: 0
		}

	#footer p.copy{
		clear: both;
		text-align: center;
		padding: 20px 0;
	}

#s-foot{
	background-color: #007ac3;
	padding: 0;
	margin: 0;
	text-align: center;
}

.f-area{
	display: flex;
	justify-content: center;
}

.f-area img{
	padding: 0;
}

	.googlemap {
	position: relative;
	padding-bottom: 30%; /* これが縦横比*/
	height: 0;
	overflow: hidden;
	}
	.googlemap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
	}

.f-logo{
	padding: 60px 30px;
}

.f-txt{
	text-align: center;
	color: #fff;
	line-height: 1.8em;
	font-size: 130%;
	font-weight: bold;
}

.f-btn{
	border-radius: 50px;
	background-color: #fff;
	color: #007ac3;
	font-size: 180%;
	font-weight: bold;
	padding: 20px;
	margin: 20px 20%;
}

	.f-btn a{
		color: #007ac3;
		text-decoration: none;
	}

	.f-btn a:hover{
		opacity: 0.6
	}

.pcdisp{
	display:inline;
}

.smpdisp{
	display:none;
}


@media screen and (max-width: 700px) {
/*html{overflow:auto;	height:100%;}*/

body {
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-o-text-size-adjust: 100%;
	text-size-adjust: 100%;
	position:relative;
	background-image:none;
}

img{
	max-width:100%;
	padding: 10px 0;
}

	#main{
		padding-top: 0;
	}	
	
.mf{
	width:auto;
	margin:0 auto;
}

.pcdisp{
	display:none;
}

.smpdisp{
	display:block;
}

section{
	padding: 0;
}

.cp-box{
	width: 100%;
}

.mv{padding: 0}	
	
.txt180{font-size: 120%}
.mtb30{margin: 10px 0}
.ptb30{padding: 10px 0}
.ml50{margin-left: 10px}
.pt50{padding-top: 20px}
.pt100{padding-top: 30px}

h2{
	font-size: 160%;
	line-height: 1.5em;
	padding: 10px 0;
}	

#vis{
	background-image: none;
	padding-top: 0;
}

#cp1{
	background-image: url("../img/sp/bg-s.png");
	background-repeat: repeat-y;
	background-size: contain;

}
	
#cp1 .s-box,#cp0 .s-box{
	display: inline;
    padding: 0
}
	
#cp1 .s-box>div,#cp0 .s-box>div{
	width: 95%;
    padding: 0;
	margin: auto;
}

	.t1{
		padding: 10px 30vw
	}
	
	.title{
		font-size: 120%;
		padding: 5px 0;
	}

#cp3{
	padding:0 0 20px;
}	
	
#cp4{
	background-repeat: repeat-y;
	padding-bottom: 20px;
}
		
.title1{
	bottom: 30px;
}

.title2{
		font-size: 120%;
		padding: 5px 0;
	}

	.t3{padding: 0 25vw}	
	
	.txt{
		padding: 5px
	}
	
	.txt li{
		font-size: 80%;
		line-height: 1.6em;
	}
	
	.txt2{
		padding: 5px
	}
	
	.txt2 li{
		font-size: 80%;
		line-height: 1.6em;
	}
	
	.k-area{
		margin: 2%;
		border-radius: 20px;
		padding: 10px;
	}
	
	.k-box{
		width: 100%;
	}

	.k-box ul{
		padding-left: 55%;
	}
	
	.deadline{
		padding: 10px 0;
		font-size: 150%;
		margin: 0;
	}
	
	.available{
		padding: 10px 0;
		font-size: 110%;
		margin: 10px 0 0;
	}
	
	.tyui{
		font-size: 80%;
		line-height: 1.5em;
		margin: 20px 5px;
	}

.caveat{
	margin: 0 2%;
	padding: 5px;
	font-size: 90%;
	line-height: 1.5em;
}
	
.toentry .btn{
	padding: 10px;
	margin: 20px 0;
	font-size: 110%;
	border-radius: 30px;
}
	
	.empty{
		font-size: 70%;
		bottom: 10px;
		line-height: 1.1em;
	}
	
	.toentry .btn a{
		padding: 0
	}

	.f-area{
		display: block;
	}
	
	.googlemap {
	padding-bottom: 75%;  /*これが縦横比*/
	}
	
.f-logo{
	padding: 20px 30px;
}

.f-txt{
	line-height: 1.5em;
	font-size: 80%;
}

.f-btn{
	border-radius: 30px;
	font-size: 120%;
	padding: 10px;
	margin: 20px 5%;
}
	
#footer{
	padding:10px;
}

#footer p.logo{
	text-align: center;
	padding: 0;
	width: 100%;
}
	
#footer p.tel{
	pointer-events:auto;
	text-align: center;
	padding: 10px 0;
	width: 100%;
}
	
#footer p.copy{
	text-align: center;
	font-size: 80%;
	padding: 0;
}

}