@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:300,400,500,700&subset=japanese');
@import url('https://fonts.googleapis.com/css?family=Playfair+Display');
@import url('https://fonts.googleapis.com/css?family=Marck+Script');
@font-face {
	font-family: 'hannari';
	src: url(../fonts/3gp6AgdB5vso.woff2) format('woff2'),
		 url(../fonts/VZmZDvhcgrdV.woff) format('woff'),
		 url(../fonts/hiOKwqmScgjm.otf) format('opentype');
}

/* ---------------------------------------------
	reset
--------------------------------------------- */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td,img { margin: 0; padding: 0; }
table {	border-collapse: collapse; border-spacing: 0; }
fieldset,img { border: 0; }
img { display: block; }
img a { border: none; }
address,caption,cite,code,dfn,em,strong,th,var { font-style: normal; font-weight: normal; }
ol, ul { list-style: none; }
caption, th { text-align: left; }
h1,h2,h3,h4,h5,h6 {	font-size: 100%; font-weight: normal; line-height: 1.0; }
q:before, q:after {	content: ""; }
figure { width: 100%; margin: 0; padding: 0;}

/* ---------------------------------------------
	common
--------------------------------------------- */
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

body {
	-webkit-text-size-adjust: 100%;
	word-break: break-all;
	color: #333;
	font-family: 'Noto Sans JP',　Meiryo, メイリオ, 游ゴシック体, 'Yu Gothic', YuGothic, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	font-weight: 300;
}

.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
.clearfix {
    display: inline-table;
}

img { width: 100%; height: auto; }

.imgL { float: left; }
.imgR { float: right; }

a { text-decoration: none; }
a:link {color: #351900;}
a:visited {color: #351900;}
a:hover { text-decoration: underline; color: #b60005; -webkit-transition: all .3s; transition: all .3s;}
a:active {color: #b60005;}

.mt00 { margin-top: 0px !important; }
.mt05 { margin-top: 5px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt30 { margin-top: 30px !important; }
.mt40 { margin-top: 40px !important; }
.mt50 { margin-top: 50px !important; }
.mt60 { margin-top: 60px !important; }
.mt70 { margin-top: 70px !important; }
.mt80 { margin-top: 80px !important; }
.mt90 { margin-top: 90px !important; }
.mt100 { margin-top: 100px !important; }

.mb00 { margin-bottom: 0px !important; }
.mb05 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb50 { margin-bottom: 50px !important; }
.mb60 { margin-bottom: 60px !important; }
.mb70 { margin-bottom: 70px !important; }
.mb80 { margin-bottom: 80px !important; }
.mb90 { margin-bottom: 90px !important; }
.mb100 { margin-bottom: 100px !important; }

.ml00 { margin-left: 0px !important; }
.ml05 { margin-left: 5px !important; }
.ml10 { margin-left: 10px !important; }
.ml15 { margin-left: 15px !important; }
.ml20 { margin-left: 20px !important; }
.ml25 { margin-left: 25px !important; }
.ml30 { margin-left: 30px !important; }
.ml40 { margin-left: 40px !important; }
.ml50 { margin-left: 50px !important; }
.ml60 { margin-left: 60px !important; }
.ml70 { margin-left: 70px !important; }
.ml80 { margin-left: 80px !important; }
.ml90 { margin-left: 90px !important; }
.ml100 { margin-left: 100px !important; }

.mr00 { margin-right: 0px !important; }
.mr05 { margin-right: 5px !important; }
.mr10 { margin-right: 10px !important; }
.mr15 { margin-right: 15px !important; }
.mr20 { margin-right: 20px !important; }
.mr25 { margin-right: 25px !important; }
.mr30 { margin-right: 30px !important; }
.mr40 { margin-right: 40px !important; }
.mr50 { margin-right: 50px !important; }
.mr60 { margin-right: 60px !important; }
.mr70 { margin-right: 70px !important; }
.mr80 { margin-right: 80px !important; }
.mr90 { margin-right: 90px !important; }
.mr100 { margin-right: 100px !important; }

.pt05 { padding-top: 5px !important; }
.pt10 { padding-top: 10px !important; }
.pt20 { padding-top: 20px !important; }
.pt30 { padding-top: 30px !important; }
.pt40 { padding-top: 40px !important; }
.pt50 { padding-top: 50px !important; }

.pb05 { padding-bottom: 5px !important; }
.pb10 { padding-bottom: 10px !important; }
.pb20 { padding-bottom: 20px !important; }
.pb30 { padding-bottom: 30px !important; }
.pb40 { padding-bottom: 40px !important; }
.pb50 { padding-bottom: 50px !important; }

.pl05 { padding-left: 5px !important; }
.pl10 { padding-left: 10px !important; }
.pl20 { padding-left: 20px !important; }
.pl30 { padding-left: 30px !important; }
.pl40 { padding-left: 40px !important; }
.pl50 { padding-left: 50px !important; }

.pr05 { padding-right: 5px !important; }
.pr10 { padding-right: 10px !important; }
.pr20 { padding-right: 20px !important; }
.pr30 { padding-right: 30px !important; }
.pr40 { padding-right: 40px !important; }
.pr50 { padding-right: 50px !important; }

.bold {	font-weight: bold !important; }
.left { text-align: left !important; }
.center { text-align: center !important; }
.right { text-align: right !important; }

.red01 { color: #FF0000 !important; }
.red02 { color: #CC0000 !important; }
.red03 { color: #990000 !important; }
.red04 { color: #E4007F !important; }

.blue01 { color: #003399 !important; }
.blue02 { color: #006699 !important; }
.blue03 { color: #0066CC !important; }
.blue04 { color: #00A0E9 !important; }

.orange01 { color: #F60 !important; }
.orange02 { color: #F90 !important; }
.orange03 { color: #FC0 !important; }
.orange04 { color: #EB6100 !important; }
.orange05 { color: #FFCC00 !important; }

.green01 { color: #060 !important; }
.green02 { color: #093 !important; }
.green03 { color: #6C0 !important; }

.f20 { font-size: 1.25em !important; }
.f19 { font-size: 1.19em !important; }
.f18 { font-size: 1.12em !important; }
.f17 { font-size: 1.06em !important; }
.f16 { font-size: 1.00em !important; }
.f15 { font-size: 0.94em !important; }
.f14 { font-size: 0.88em !important; }
.f13 { font-size: 0.81em !important; }
.f12 { font-size: 0.75em !important; }

.lh0 { line-height: 1.0 !important; }
.lh1 { line-height: 1.1 !important; }
.lh2 { line-height: 1.2 !important; }
.lh3 { line-height: 1.3 !important; }
.lh4 { line-height: 1.4 !important; }
.lh5 { line-height: 1.5 !important; }
.lh6 { line-height: 1.6 !important; }
.lh7 { line-height: 1.7 !important; }
.lh8 { line-height: 1.8 !important; }

.indent {
	text-indent: -1em;
	padding-left: 1em;
}

p {	line-height: 1.4; }

/* ---------------------------------------------
	pageTop
--------------------------------------------- */
.pageTop {
	position: fixed;
	bottom: 0px;
	right: 0px;
	width: 40px;
	text-align: center;
}
.pageTop a {
	display: block;
	padding: 4px 6px;
	background: rgba(0,0,0,0.4);
	color: #fff;
	font-size: 1.5em;
}
.pageTop a:hover {
	background: rgba(0,0,0,0.5);
}

/* ---------------------------------------------
	footer
--------------------------------------------- */
.footerNavi {
	background: #4d4127;
	padding: 0 20px;
}
.footerNavi nav {
	max-width: 960px;
	margin: 0 auto;
}
.footerNavi nav ul {
	display: flex;
	flex-wrap: wrap;
}
.footerNavi nav ul li {
	font-size: 0.75em;
	color: #fff;
}
.footerNavi nav ul li a {
	display: block;
	padding: 8px 1em;
	color: #fff;
}
.footerNavi nav ul li a:hover {
	text-decoration: none;
	background: #5c5133;
}
footer {
	padding: 0 20px;
	background: url(../images/YlARH7aKGq4O.jpg);
	background-size: cover;
	background-position: center center;	
}
.footer {
	max-width: 1120px;
	margin: 0 auto;
	padding: 30px 0 0;
	background: url(../images/UodUZzAnezqO.png) no-repeat right bottom;
	background-size: auto 200px;
}
.footer ul {
	display: flex;
	flex-wrap: wrap;
}
.footerLogo {
	margin-right: 40px;
	margin-bottom: 30px;
}
.footerLogo p {
	text-align: center;
	font-size: 0.88em;
}
.alpinoLogo {
	max-width: 160px;
	margin: 0 auto 20px;
}
.footerVillage {
	margin-bottom: 30px;
}
.footerVillage table th {
	font-size: 0.75em;
	padding: 2px 2em 2px 0;
}
.footerVillage table th a:hover { text-decoration: none; }
.footerVillage table td {
	font-size: 0.75em;
	padding: 2px;
}

/* ---------------------------------------------
	contents
--------------------------------------------- */
.village {
	background-image: url(../images/Hgzn4Vuu2R4D.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: auto 90px;
	background-color: #fff;
	padding: 20px 10px;
}
.village .logoVillage {
/*	max-width: 200px;*/
	max-width: 280px;
	margin: 0 auto;
}

.contentsTTLBG {
	background-image: url(../images/sNUAZQ4tcvP2.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	overflow: hidden;
}
.contentsTTL {
	background: rgba(0,0,0,0.7);
	padding: 0 10px;
}
.contentsTTL h1 {
	text-align: center;
	color: #fff;
	padding: 60px 0;
	font-size: 0.94em;
}
.contentsTTL h1 span {
	display: block;
	font-size: 2.5em;
	font-family: 'Playfair Display', serif;
	margin-bottom: 5px;
}

.wrap1 {
	max-width: 1140px;
	margin: 0 auto;
	padding: 0 10px;
}
.wrap2BG {
	background-image: url(../images/scaneiWucdXK.jpg);
	background-size: cover;
	background-position: center bottom;
	background-repeat: no-repeat;
	padding: 0 10px;
}
.wrap2 {
	max-width: 960px;
	margin: 0 auto;
}
/* ---------------------------------------------
	768px
--------------------------------------------- */
@media only screen and (max-width: 768px) {

	/* ---------------------------------------------
		contents
	--------------------------------------------- */
	.village {
		background-size: auto 40px;
		padding: 6px 10px 5px;
	}
	.village .logoVillage {
/*		max-width: 130px;*/
		max-width: 190px;
	}

	.contentsTTL h1 {
		padding: 40px 0;
		font-size: 0.88em;
	}
	.contentsTTL h1 span {
		font-size: 2.25em;
	}

}

/* ---------------------------------------------
	640px
--------------------------------------------- */
@media only screen and (max-width: 640px) {

	/* ---------------------------------------------
		footer
	--------------------------------------------- */
	.footerNavi {
		padding: 0;
	}
	.footerNavi nav ul li {
		width: 50%;
		text-align: center;
	}
	.footerNavi nav ul li:nth-child(1){
		border-right: 1px solid rgba(255,255,255,0.2);
		border-bottom: 1px solid rgba(255,255,255,0.2);
	}
	.footerNavi nav ul li:nth-child(2){
		border-bottom: 1px solid rgba(255,255,255,0.2);
	}
	.footerNavi nav ul li:nth-child(3){
		border-right: 1px solid rgba(255,255,255,0.2);
	}
	.footerNavi nav ul li a {
		padding: 8px;
	}

	footer {
		padding: 0 10px;
	}
	.footer {
		background-size: auto 160px;
	}
	.footer ul {
		justify-content: center;
	}
	.footerLogo {
		margin-right: 0;
		margin-bottom: 20px;
	}
	.footerLogo p {
		font-size: 0.75em;
	}
	.alpinoLogo {
		max-width: 130px;
		margin: 0 auto 20px;
	}
	.footerVillage {
		width: 100%;
		margin-bottom: 20px;
	}
	.footerVillage table {
		width: auto;
		margin: 0 auto;
	}
	.footerVillage table th {
		padding: 2px 1em 2px 0;
	}

	/* ---------------------------------------------
		contents
	--------------------------------------------- */
	.contentsTTL h1 {
		padding: 30px 0;
		font-size: 0.75em;
	}

}

/* ---------------------------------------------
	480px
--------------------------------------------- */
@media only screen and (max-width: 480px) {


}
