@charset "utf-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;200;300;400;500;700&display=swap');

/* ===============================
	site utility
 =============================== */
body *{font-family: 'Noto Sans JP', serif;}
body {margin: 0;}
a {transition: 0.4s;}
a:hover {transition: 0.4s; opacity: 0.7;}

/* ----------------------------------------
	content
----------------------------------------- */
/* 背景 */
.bg_1 {
  background: #fff;
}
.bg_2 {
  background: url(../imgs/bg_1.webp) center no-repeat;
  background-size: 1468px auto;
}
.bg_3 {
  background: url(../imgs/bg_2.webp) center no-repeat;
  background-size: 1468px auto;
}
.bg_4 {
	background: #F2EFE8;
}
.bg_5 {
	background: #003461;
}
@media screen and (max-width: 767px) {
	.bg_2,
	.bg_3 {
		background-size: cover;
	}
}

/* 共通タイトル部分 */
#mv {
  background: url(../imgs/mv_bg.webp) center no-repeat;
  background-size: 1460px auto;
}
#mv .absol {
	bottom: 4%;
}
@media screen and (max-width: 767px) {
	#mv {
		background-size: cover;
	}
}

.absol_event {
	max-width: 37.2%;
	left: auto;
	right: auto;
}
.event_1 {
	top: 10.8%;
	right: 8%;
}
.event_2 {
	top: 25.2%;
	left: 8%;
}
.event_3 {
	top: 25.2%;
	right: 8%;
}
.event_4 {
	top: 39.5%;
	left: 8%;
}
.event_5 {
	top: 39.5%;
	right: 8%;
}
.event_6 {
	top: 53.9%;
	left: 8%;
}
.event_7 {
	top: 53.9%;
	right: 8%;
}
.event_8 {
	top: 68.3%;
	left: 8%;
}
.event_9 {
	top: 68.3%;
	right: 8%;
}
.event_10 {
	top: 82.6%;
	left: 8%;
}
.event_11 {
	top: 82.6%;
	right: 8%;
}
.event_12 {
	top: 97%;
	left: 8%;
}
.event_13 {
	top: 97%;
	right: 8%;
}
.event_14 {
	top: 40%;
	left: 11.6%;
}
.event_15 {
	top: 40%;
	right: 10.6%;
}
.event_16 {
	top: 67.8%;
	left: 0;
	right: 0;
}
.event_17 {
	top: 91.8%;
	left: 0;
	right: 0;
}

.absol_1 {
	bottom: 7%;
}
.absol_2 {
	bottom: 25%;
}

.mw_1 {
	max-width: 195.4666666666667%;
}
.mw_2 {
	max-width: 108%;
}

.map {
	height: clamp(300px,450 / 750 * 100vw,450px);
	margin: auto;
}
.map iframe {
	width: 100%;
	height: 100%;
}

.kc-calendar {
  margin: clamp(10px,20 / 750 * 100vw,20px) 4% 0;
  padding: 0 4%;
  background: #fff;
}
.kc-calendar iframe {
  width: 100%;
}

#store ul {
  padding: 0;
  margin: 0;
}

.absol_tel {
	width: 40%;
	height: 3%;
	left: auto;
	right: auto;
}
.tel_1 {
	top: 16.8%;
	left: 7%;
}
.tel_2 {
	top: 16.8%;
	right: 7.2%;
}
.tel_3 {
	top: 44.6%;
	left: 7%;
}
.tel_4 {
	top: 44.6%;
	right: 7.2%;
}
.tel_5 {
	top: 72.3%;
	left: 7%;
}
.tel_6 {
	top: 72.3%;
	right: 7.2%;
}

.absol_btn {
	max-width: 42.26666666666667%;
	left: auto;
	right: auto;
}
.btn_1 {
	top: 20%;
	left: 5.6%;
}
.btn_2 {
	top: 20%;
	right: 5%;
}
.btn_3 {
	top: 47.8%;
	left: 5.6%;
}
.btn_4 {
	top: 47.8%;
	right: 5%;
}
.btn_5 {
	top: 75.5%;
	left: 5.6%;
}
.btn_6 {
	top: 75.5%;
	right: 5%;
}
.btn_7 {
	top: 94%;
	left: 0;
	right: 0;
}

/* ----------------------------------------
	footer
----------------------------------------- */
footer {
  padding: 60px 0 100px;
  text-align: left;
  line-height: 1.2;
	position: relative;
}
footer::after {
	content: '';
	background: #003461;
	width: 100%;
	height: clamp(12px,24 / 750 * 100vw,24px);
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
}
footer .wrap {
  padding: 0 4%;
}
.annotation {
  margin-top: 14px;
  padding: 0;
}
.annotation li {
  font-size: 10px;
  margin-bottom: 6px;
}
@media screen and (max-width: 767px) {
  footer {
    padding-bottom: 12%;
  }
}

/* ----------------------------------------
	page top
----------------------------------------- */
.page-top {
	display: none ;
	margin: 0 ;
	padding: 0 ;
	z-index: 999;
	position: relative;
}
.page-top p {
	margin: 0 ;
	padding: 0 ;
	position: fixed ;
	right: 20px ;
	bottom: 50px ;
  z-index: 99;
}
.move-page-top {
	display: block ;
	background:rgba(0,0,0,0.7);
	width: 50px ;
	height: 50px ;
	cursor: pointer ;
	line-height: 48px ;
	font-size: 24px;
	text-decoration: none ;
	text-align: center ;
	-webkit-transition:all 0.3s ;
	-moz-transition:all 0.3s ;
	transition:all 0.3s ;
}
.move-page-top:hover {
	background:rgba(0,0,0,0.3);
}
.move-page-top svg {
	fill: #fff ;
  transition:all 0.3s ;
}
.move-page-top:hover svg {
  opacity: .6;
}
@media screen and (max-width: 767px) {
	.page-top p {
		right: 0px ;
		bottom: 20px ;
	}
}