@charset "utf-8"; 
html {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 62.5%;         
	}

body {
	font-size:16px; /* 1.6em */
	font-family:'Avenir','Helvetica Neue','Helvetica','Arial','Hiragino Sans','ヒラギノ角ゴシック',YuGothic,'Yu Gothic','メイリオ', Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
	}

* {
	padding: 0px;
	margin: 0px;
}

	*, 
	*:before, *:after {
	-webkit-box-sizing: inherit;
	box-sizing: inherit;
	}
	
a {
	text-decoration: none;
}

p {
	font-size: clamp(1.4rem, 2.5vw, 2.4rem);   
	line-height: 1.4;
}

h1 {
	font-size: clamp(2.0rem, 2.5vw, 3.2rem);  
	line-height: 1.6;
	font-weight: 600;
}

h2 {
	font-size:  clamp(1.8rem, 2.5vw, 2.8rem);  /* 18px */
	line-height: 1.4;
	font-weight: 600;
}

ul, li {
	list-style: none;
}

	*, 
	*:before, *:after {
	-webkit-box-sizing: inherit;
	box-sizing: inherit;
	}
	
	
.mainarea {
	position: relative;
	width: 90%;
	top: 6rem;
	padding-top: 0;
	padding-bottom: 10vw;
	margin-left: 3.6vw;
	text-align: center;
}

.pic_frame {
	width: 80%;
	margin: 0 auto;
}
.pic_frame img {
	display: block;
	width: 76vw;
	height: auto;
	text-align: center;	
}
.pic_frame p {
	text-align: center;
	line-height: 2;
}

.pic_frame_v {
	width: 34%;
	height: auto;
	margin-top: 0;
	margin-left: 12vw;
	margin-bottom: 0vw;
	float: left;
}

.pic_frame_v img {
	margin: 0 auto;
	padding: 0 0;
	width: 100%;
}
.pic_frame_v p {
	display: block;
	text-align: center;
    line-height: 1.5;
}
.box {
	display: block;
	width: 30vw;
	height: 105vw;
	margin-left: 60vw;
	line-height: 2;
	text-align: center;
}


.mainarea p {
	text-align: center;
	padding: 0.3em 1em;	
}


#guide {
	display: block;
	width: 60%;
	margin-top: 5vw;
	margin-left: 18.1vw;
	padding-bottom: 2vw;
	background-color: #faebd7;
}


.guide_detail {
	width: 50vw;
	margin: 0 auto;
}
.guide_detail p {
	text-align: left;
	padding: 2rem 3rem;
}

h1,h2{
	display: block;
	text-align: center;
	font-weight: 500;
	padding-top: 8rem;
	padding-bottom: 0rem;
	margin-top: 0;
}
.pullleft {
	width: 46vw;
	margin: 0 auto;	
	border: solid 2px lightgray;
	padding: 0.5rem 0.5rem;
	background-color: white;
}
.pullleft p {
	text-align: left;
}
.pullleft a {
	display: block;
	font-size: 1.4rem;
	font-weight: 500;
	color: blue;
	padding-bottom: 2vw;
}
	
footer .logo {
	position: relative;
	display: block;
	margin: 20vw 40vw 2vw auto;	
}
	
	footer small {
		position: relative;
		display: block;
		text-align: center;
		color: gray;
		font-size: 1.2rem;
		margin-bottom: 3vw;
	}

