@charset "UTF-8";
@media screen and (min-width: 768px) {}
@media screen and (max-width: 767px) {}
/* =====================================
	全体設定
===================================== */
figure {
	margin: 0;
}

a {
	color:#222222;
	text-decoration:none;
}
/*
a:link {
	color:#753a9b;
	text-decoration:none;
}
a:visited {
	color:#753a9b;
	text-decoration:none;
}
*/
a:hover {
	color:#222222;
	text-decoration:none;
}
a:active {
	color:#222222;
	text-decoration:none;
}
body {
	margin: 0;
	height: 100%;
	font-family: 'Noto Sans Japanese', "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", YuGothic, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', Osaka, sans-serif;
}
@media screen and (min-width: 768px) {
.dsp_pc {
	display: block;
}
.inl_pc {
	display: inline;
}
.dsp_sp {
	display: none;
}
.inl_sp {
	display: none;
}
#wrapper {
	position: relative;
	min-width: 1260px;
	margin: 0 auto;
	color: #222222;
	font-size: 18px;
	/*letter-spacing: 0.025em;*/
	line-height: 1.6;
}
* html #wrapper {
	height:100%;
}

}


@media screen and (max-width: 767px) {
	body {
		overflow-x: hidden;
	}
	#wrapper {
		position: relative;
		line-height: 1.55;
		font-size: calc(32/750*100vw);
		color:#222222;
	}
	
	#wrapper img {
		width: 100%;
		height: auto;		
	}
	
	.dsp_pc {
		display: none;
	}
	.inl_pc {
		display: none;
	}
	.dsp_sp {
		display: block;
	}
	.inl_sp {
		display: inline;
	}
}
/* =====================================
	header
===================================== */
@media screen and (min-width: 768px) {
header {
	z-index: 2;
	position: absolute;
	width: 100%;
	margin: 0;
	padding: 0 ;
}
header .miryoku{
	position: absolute;
	left: 19px;
	top: 14px;
}

.close {
	margin: 40px 0 40px;
	font-size: 26px;
	font-weight: bold;
	color: #ff0000;
	text-align: center;
	
}

#mv {
	position: relative;
	width: 100%;
	
}
#mv h1 {
}
#mv h1 img {
	width: 100%;
	height: auto;
}
#lead {
	position: relative;
	width: 1260px;
	margin: 0 auto 40px;
	text-align: center;
}
#lead .txt01 {
	padding: 25px 0 20px;
	font-size: 43px;
	font-weight: 500;
	line-height: calc(55/43);
}
#lead .txt02 {
	margin-bottom: 50px;
	font-size: 22px;
}
#lead .stamp {
	position: absolute;
	left: 30px;
	top: -6px;
}
#lead .days {
	position: absolute;
	right: 20px;
	top: 20px;
}
#lead .img01 {
	display: none;
	position: absolute;
	right: 45px;
	bottom: -80px;
}

.map {
	position: relative;
	width: 1060px;
	margin: 0 auto;
}
.map h2 {
	position: absolute;
	left: -20px;
	top: 0;
}
.map .box {
	width: 990px;
	height: 546px;
	margin: 0 0 0 auto;
	padding-top: 20px;
	background: url(../images/map_bg.png) center top no-repeat;
}
.map iframe {
	position: relative;
	display: block;
	box-sizing: border-box;
	width: 950px;
	height: 506px;
	margin: 0 auto;
	border: none;
}

}

@media screen and (max-width: 767px) {
	

	header {
		z-index: 2;
		position: absolute;
		width: 100%;
		margin: 0;
	}
	header .miryoku{
		position: absolute;
		right: calc(10/750*100vw);
		top: calc(10/750*100vw);
		width: calc(263/750*100vw);
	}


	#mv {
		position: relative;
		width: 100%;
		margin-bottom: calc(30/750*100vw);
	}
	#mv h1 {
		width: 100%;
	}


	#lead {
		position: relative;
		padding: 0 calc(40/750*100%) calc(40/750*100%);
	}
	#lead .days {
		margin-bottom: calc(30/670*100%);
	}
	#lead .txt01 {
		margin-bottom: calc(10/670*100%);
		font-size: calc(50/750*100vw);
		font-weight: 500;
		line-height: calc(69/53);
		letter-spacing: -0.07em;
	}
	#lead .txt02 {
		margin-bottom: calc(90/670*100%);
		font-size: calc(32/750*100vw);
	}
	#lead .stamp {
		position: absolute;
		right: calc(15/670*100%);
		top: 0;
		width: calc(224/670*100%);
		margin-top: calc(240/670*100%);
	}

	#lead .qr {
		width: calc(590/670*100%);
		margin: 0 auto;
	}



	.map {
		position: relative;
		padding: 0 calc(40/750*100%);
	}
	.map h2 {
		width: calc(196/670*100%);
		margin-bottom: calc(8/670*100%);
	}
	.map .box {
		border: calc(4/750*100vw) solid #222222;
		padding: calc(20/670*100%);
		background: #ffffff;
	}
	.map iframe {
		display: block;
		box-sizing: border-box;
		width: 100%;
		height: calc(622/750*100vw);
		border: none;
	}
	
}

/* =====================================
	content
===================================== */

@media screen and (min-width: 768px) {
#contents {
}
.cont01 {
	margin: -84px 0 0;
	padding: 180px 0 60px;
	background: #f8efd0;
}
.cont01 .inner {
	width: 1060px;
	margin: 0 auto;
}
.cont01 h2 {
	text-align: center;
	margin: 0 0 40px;
}
.cont01 ul.list {
	display: flex;
	justify-content: space-between;
	align-content: center;
	margin-bottom: 30px;
}
.cont01 .notes {
	/*margin-bottom: 30px;*/
	margin-bottom: 60px;
	font-size: 12px;
}
.cont01 .btn_pdf a {
	display: block;
	margin-bottom: 60px;
	padding: 13px 0;
	background: #faf6e6;
	text-align: center;
}
.cont01 .btn_pdf a:hover {
	background: #fdfaf1;
}
.cont01 .btn_pdf a span {
	padding-right: 35px;
	background: url(../images/icon_pdf.png) right center no-repeat;
	background-size: auto 27px;

}
.cont01 .box {
	position: relative;
	box-sizing: border-box;
	padding: 0 0 70px 70px;
	background: #ffffff;
	border-radius: 30px;
	text-align: center;

}
.cont01 .box.step01 {
	margin-bottom: 70px;
	padding: 0 0 30px 70px;
}
.cont01 .box h3 {
	display: inline-block;
	margin: -40px 0 30px;
	padding: 20px 50px 0;
	background: #ffffff;
	border-radius: 20px;
	font-size: 32px;
	font-weight: bold;
}
.cont01 .box p {
	width: 660px;
	text-align: left;
}
.cont01 .box p .note {
	font-size: 12px;
}
.cont01 .box .img01 {
	position: absolute;
	right: 39px;
	top: 17px;
}
.cont01 .box.step02 {
	margin-bottom: 60px;
}
.cont01 .box.step02 .img02 {
	position: absolute;
	right: 39px;
	top: 17px;
}
.cont01 .box.step02 p {
	margin-bottom: 25px;
}
.cont01 .box.step02 .t_map {
	margin-left: -20px;
	text-align: left;
}
.cont01 .qr {
	text-align: center;
}

}

@media screen and (max-width: 767px) {
	
	#contents {
	}
	.cont01 {
		margin: calc(-100/750*100%) 0 0;
		padding: calc(160/750*100%) 0 calc(40/750*100%);
		background: #f8efd0;
	}
	.cont01 .inner {
		margin: 0 auto;
	}
	.cont01 h2 {
		width: calc(289/750*100%);
		margin: 0 auto calc(40/750*100%);
	}
	.cont01 .scroll {
		width: 100%;
		overflow-x: scroll;
		-webkit-overflow-scrolling: touch;
		margin-bottom:calc(30/750*100%);
	}

	.cont01 ul.list {
		display: flex;
		justify-content: space-between;
		align-content: center;
		width: calc(1899/750*100%);
		padding: 0 calc(40/750*100%);
	}
	.cont01 .notes {
		margin-bottom: calc(30/750*100%);
		padding: 0 calc(40/750*100%);
		font-size: calc(24/750*100vw);
	}
	.cont01 .btn_pdf a {
		display: block;
		width: calc(670/750*100%);
		margin: 0 auto calc(60/750*100%);
		padding: calc(35/750*100%) 0;
		background: #faf6e6;
		text-align: center;
		line-height: calc(43/750*100vw);
	}
	.cont01 .btn_pdf a:hover {
		background: #fdfaf1;
	}
	.cont01 .btn_pdf a span {
		padding-right: calc(60/750*100vw);
		background: url(../images/icon_pdf.png) right center no-repeat;
		background-size: calc(42/750*100vw) auto;
	
	}
	.cont01 .box_head {
		width: calc(530/750*100%);
		height: calc(60/750*100vw);
		margin: 0 auto;
		background: #ffffff;
		border-radius: calc(30/750*100vw) calc(30/750*100vw) 0 0;
	
	}
	.cont01 .box {
		position: relative;
		box-sizing: border-box;
		width: calc(670/750*100%);
		margin: 0 auto;
		padding: 0 calc(40/670*100%) calc(50/670*100%);
		background: #ffffff;
		border-radius: calc(40/750*100vw);
		text-align: center;
	
	}
	.cont01 .box.step01 {
		margin-bottom: calc(40/750*100%);
	}
	.cont01 .box h3 {
		display: inline-block;
		margin: calc(-35/670*100%) 0 calc(30/670*100%);
		font-size: calc(44/750*100vw);
		letter-spacing: -0.05em;
		font-weight: bold;
	}
	.cont01 .box p {
		text-align: left;
	}
	.cont01 .box p .note {
		font-size: calc(24/750*100vw);
	}
	.cont01 .box .img01 {
		width: calc(353/670*100%);
		margin: 0 auto calc(30/670*100%);
	}
	.cont01 .box.step02 {
		margin-bottom: calc(50/750*100%);
	}
	.cont01 .box.step02 .img02 {
		width: calc(377/670*100%);
		margin: 0 auto calc(30/670*100%);
	}
	.cont01 .box.step02 p {
		margin-bottom: calc(20/670*100%);
	}
	.cont01 .box.step02 .t_map {
		margin-left: calc(-15/670*100%);
		text-align: left;
	}
	.cont01 .qr {
		width: calc(590/750*100%);
		margin: 0 auto;
	}
	

	
}

@media screen and (min-width: 768px) {

.cont02 {
	padding: 40px 0 60px 0;
	background: url(../images/cont02_bg.png) left -100px repeat;
	background-size: 100% auto;
}
.cont02 .inner {
	width: 1060px;
	margin: 0 auto;
}

.cont02 h2 {
	margin: 0 0 40px 0;
	text-align: center;
}
.cont02 .txt01 {
	margin: 0 0 25px 0;
	text-align: center;
}
.cont02 ul {
	margin-bottom: 60px;
}
.cont02 ul li {
}
.cont02 ul li:nth-child(odd) {
	text-align: right;
}
.cont02 .qr {
	text-align: center;
}

}
@media screen and (max-width: 767px) {
	.cont02 {
		background: url(../images/sp/cont02_bg.png) left calc(-150/750*100vw) repeat;
		background-size: 100% auto;
	}
	.cont02 .inner {
		padding: calc(40/750*100%) calc(40/750*100%);
	}
	
	.cont02 h2 {
		width: calc(216/670*100%);
		margin: 0 auto calc(40/670*100%);
	}
	.cont02 .txt01 {
		margin-bottom: calc(30/670*100%);
	}
	.cont02 ul {
		margin-bottom: calc(40/670*100%);
	}
	.cont02 ul li {
	}
	.cont02 ul li:nth-child(odd) {
	}
	.cont02 .qr {
		width: calc(590/670*100%);
		margin: 0 auto;
	}
	
}

@media screen and (min-width: 768px) {

.cont03 {
	position: relative;
	padding: 40px 0 110px 0;
	background: url(../images/cont03_bg.png) center bottom repeat-x #ddeef2;
	background-size: 35px auto;
}
.cont03 .inner {
	width: 1060px;
	margin: 0 auto;
	text-align: center;
}
.cont03 .sub {
	margin: 0 0 17px 0;
}
.cont03 h2 {
	margin: 0 0 25px 0;
}
.cont03 .txt01 {
	margin-bottom: 5px;
}
.cont03 .note {
	font-size: 12px;
	margin-bottom: 30px;
}
.cont03 .insta {
	margin-bottom: 80px;
}
.cont03 .bnr a:hover {
	opacity: 0.8;

}

.totop {
	position: absolute;
	right: 20px;
	bottom: 20px;
}

}

@media screen and (max-width: 767px) {
	
	.cont03 {
		position: relative;
		background: url(../images/cont03_bg.png) center bottom repeat-x #ddeef2;
		background-size: calc(56/750*100vw) auto;
	}
	.cont03 .inner {
		padding: calc(40/750*100%) calc(40/750*100%) calc(170/750*100%);
	}
	.cont03 .sub {
		margin: 0 0 calc(30/670*100%) 0;
	}
	.cont03 h2 {
		margin: 0 0 calc(30/670*100%) 0;
	}
	.cont03 .txt01 {
		margin-bottom: calc(10/670*100%);
	}
	.cont03 .note {
		font-size: calc(24/750*100vw);
		margin-bottom: calc(30/670*100%);
	}
	.cont03 .insta {
		margin-bottom: calc(80/670*100%);
	}
	
	.totop {
		position: absolute;
		right: calc(20/750*100vw);
		bottom: calc(30/750*100vw);
		width: calc(90/750*100vw);
	}
	
}


/* =====================================
	footer
===================================== */
@media screen and (min-width: 768px) {

footer {
	position: relative;
	width: 1180px;
	margin: 0 auto;
	padding: 50px 0 40px;
	background: #ffffff;
}
footer .ttl {
	margin-bottom: 75px;
}
footer .sns {
	position: absolute;
	right: 0;
	top: 50px;
	text-align: center;
}
footer .sns_ttl {
	margin-bottom: 10px;
	font-size: 12px;
	line-height: 1.0;
}
footer .insta {
}
footer ul.fnav{
	position: absolute;
	right: 80px;
	top: 85px;
	display: flex;
	justify-content: left;
	margin-bottom: 50px;
	font-size: 12px;
}
footer ul.fnav li{
	margin-left: 15px;
}
footer ul.fnav li.line{
	padding-top: 4px;
}
footer ul.fnav li a{
	display: block;
	box-sizing: border-box;
	min-height: 27px;
	padding-top: 5px;
}
footer ul.fnav li a.pdf {
	padding-right: 35px;
	background: url(../images/icon_pdf.png) right center no-repeat;
	background-size: auto 27px;
}
footer ul.fnav li:first-child{
	margin-left: 0px;
}
footer .logo_honshi {
	margin-bottom: 50px;
	font-size: 12px;
	line-height: 25px;
}
footer .logo_honshi img {
	margin-left: 20px;
}
footer .sponsor {
	font-size: 11px;
}
footer .sponsor dl {
	display: flex;
}

footer ul.fbnr{
	position: absolute;
	right: 0;
	bottom: 40px;
	display: flex;
	justify-content: left;
}
footer ul.fbnr li{
	margin-left: 15px;
}


}

@media screen and (max-width: 767px) {
	footer {
		position: relative;
		padding: calc(60/750*100%) calc(40/750*100%);
		background: #ffffff;
	}
	footer .ttl {
		width: calc(435/670*100%);
		margin: 0 0 calc(30/670*100%);
	}
	footer .sns {
		position: absolute;
		right: calc(40/750*100vw);
		top: calc(176/750*100vw);
		text-align: center;
	}
	footer .sns_ttl {
		margin-bottom: calc(15/750*100vw);
		font-size: calc(26/750*100vw);
		line-height: 1.0;
	}
	footer .insta {
	}
	footer ul.fnav{
		margin-bottom: calc(50/750*100vw);
		font-size: calc(26/750*100vw);
	}
	footer ul.fnav li{
	}
	footer ul.fnav li.line{
		display: none;
	}
	footer ul.fnav li a{
		display: inline-block;
		box-sizing: border-box;
		min-height: calc(60/750*100vw);
		padding-top: calc(10/750*100vw);
	}
	footer ul.fnav li a.pdf {
		padding-right: calc(60/750*100vw);
		background: url(../images/icon_pdf.png) right center no-repeat;
		background-size: auto calc(43/750*100vw);
	}
	footer ul.fnav li:first-child{
		margin-left: 0px;
	}
	footer .logo_honshi {
		margin-bottom: calc(50/750*100vw);
		font-size: calc(26/750*100vw);
		line-height: calc(36/750*100vw);
	}
	footer .logo_honshi img {
		width: calc(363/750*100vw)!important;
		margin-left: calc(15/750*100vw);
	}
	footer .sponsor {
		margin-bottom: calc(30/750*100vw);
		font-size: calc(22/750*100vw);
	}
	/*
	footer .sponsor dl {
		display: flex;
	}
	footer .sponsor dl dt {
		width: calc(200/750*100vw);
	}
	*/
	
	footer ul.fbnr{
		display: flex;
	}
	footer ul.fbnr li:first-child{
		width: calc(111/750*100vw);
		margin-right: calc(40/750*100vw);
	}
	footer ul.fbnr li{
		width: calc(128/750*100vw);
	}
	
}
