@charset "utf-8";

/***************************************************
  style.css
***************************************************/

/*------------------------------------------------*/

/* pc */

/*------------------------------------------------*/

/*base ----------------------------------------*/

*{
  font-family: "Zen Kaku Gothic New", serif;
	font-size: 100%;
	}
.container figcaption {
	font-size: 0.75em;
}

html, body {
	height: 100%;
	overflow: visible;
}

body{
	width: 100%;
	margin: 0;
	padding: 0;
	overflow-x: hidden;
	overflow-y: scroll;
}

h1, h2, h3, h4, h5, h6, p, address,
ul, ol, li, dl, dt, dd,
table, caption, th, td, img, form, div {
	margin: 0;
	padding: 0;
	border: none;
	font-style: normal;
	font-weight: normal;
	font-size: 100%;
	text-align: left;
	list-style-type: none;
  font-family: "Zen Kaku Gothic New", serif;
  color: #004663;
}

.mont {
  font-family: "Montserrat", "Zen Kaku Gothic New", serif;
  font-optical-sizing: auto;
}

.red {
  background-color: #c9665c;
  color: #fff;
}

.blue {
  background-color: #33a6b8;
  color: #fff;
}

.green {
  background-color: #7ba23f;
  color: #fff;
}

img {
	vertical-align: bottom;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}


/* common ----------------------------------------*/

body.hidden {
	overflow: hidden;
}

#wrap {
	overflow: hidden;
  position: relative;
}

a:link,
a:visited,
a:active {
	color: #004663;
	text-decoration: none;
}

a:focus {
	outline:none;
	text-decoration: none;
}

.hover {
	transition: .3s ease-out;
}

.hover:hover {
	opacity:0.6;
	zoom:1;
	transition: .3s ease-out;
}

.disabled {
	pointer-events: none;
}

.pc {
	display: block;
}

.sp {
	display: none;
}

.fit {
	width: 100%;
}

.zoom {
	transition-duration: 0.3s;
}

.zoom:hover {
	transform: scale(1.1);
	transition-duration: 0.3s;
}

section {
	padding: 160px 0;
  position: relative;
}

.contents_wrap {
  width: 89.74vw;
  max-width: 1196px;
  margin: 0 auto;
  box-sizing: border-box;
  position: relative;
}

.anchor {
	padding-top: 120px;
	margin-top: -120px;
}

.sec_ttl {
  padding-bottom: 79px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.sec_ttl ul {
  width: 100%;
	height: 91px;
	position: relative;
}

.sec_ttl ul li {
	top: 0;
	left: 0;
  width: 100%;
	height: 91px;
	display: none;
  text-align: center;
	position: absolute;
}

.sec_ttl .ttl_obj {
  height: 100%;
}

.sec_ttl strong {
  font-size: 24px;
  font-weight: 700;
  letter-spacing: .05em;
  padding-top: .5em;
}
.anchor_map{
  margin: -135px 0 0 20px;
  padding-bottom: 86px;
}
.anchor_map .map_twof{
  margin: 230px 0 0 0;
}
.anchor_map .anchor_map_ttl{
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  color: #fff;
  padding: 22px 26px;
  border-radius: 42px;
  letter-spacing: 1.2px;
  margin: 0 0 0 -5px;
}
.anchor_map .anchor_map_ttl p{
  display: inline-block;
  color: #fff;
  font-weight: bold;
}
.anchor_map .map_twof .anchor_map_ttl{background-color: #7BA23F; margin: -175px 0 0 0; float: right;}
.anchor_map .map_onef .anchor_map_ttl{background-color: #33A6B8;}
.anchor_map .map_onef .map_onef_img{
  display: block;
  max-width: 864px;
  height: 423px;
  background: url('../img/minnnashowten_1f.png') center center no-repeat;
  background-size: contain;
  margin: 136px 0 0 -27px;
  position: relative;
}
.anchor_map .map_twof .map_twof_img{
  width: 1276px;
  display: block;
  height: 347px;
  background: url('../img/minnnashowten_2f.png') center center no-repeat;
  background-size: contain;
  margin: 116px 0 0 -156px;
  position: relative;
}
.anchor_map .map_onef .num_icon a, .anchor_map .map_twof .num_icon a{
  width: 54px;
  height: 72px;
  background-size: contain;
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 36px;
  font-weight: 500;
  color: #fff;
  letter-spacing: .1em;
  padding-bottom: 17px;
  padding-left: 2px;
}

.anchor_map .num_icon a:hover{
  color: #fff;
  transition: .3s ease-out;
  opacity: 0.7;
}

.anchor_map .map_onef .map_onef_img .num_icon a{
  background: url('../img/map_icon_1f.svg') center center no-repeat;
  color: #fff;
}
.anchor_map .map_twof .map_twof_img .num_icon a{
  background: url('../img/map_icon_2f.svg') center center no-repeat;
  color: #fff;
}
.anchor_map .map_onef .map_onef_img .one_num{
  position: absolute;
  margin: -29px 0 0px 659px;
}
.anchor_map .map_onef .map_onef_img .two_num{
  position: absolute;
  margin: -80px 0px 0px 367px;
}
.anchor_map .map_onef .map_onef_img .three_num{
  position: absolute;
  margin: 64px 0 0 22px;
}
.anchor_map .map_twof .map_twof_img .four_num{
  position: absolute;
  margin: -43px 0 0 1048px;
}
.anchor_map .map_twof .map_twof_img .five_num{
  position: absolute;
  margin: -52px 0 0 756px;
}
.anchor_map .map_twof .map_twof_img .six_num{
  position: absolute;
  margin: -45px 0 0 424px;
}
.anchor_map .map_twof .map_twof_img .seven_num{
  position: absolute;
  margin: -58px 0 0 157px;
}
.map_ttl{
  width: 100%;
  font-size: 28px;
  color: #fff;
  display: inline-block;
  text-align: center;
  border-radius: 8px;
  padding: 19px 0;
  font-weight: bold;
  margin-bottom: 80px;
}
.mapttl_1f{background-color: #33A6B8;}
.mapttl_2f{background-color: #7BA23F; margin: 40px 0 80px 0;}
.btn_container a {
  display: block;
  width: 206px;
  height: 56px;
  background-color: #004663;
  border: 2px solid #004663;
  border-radius: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "Montserrat", serif;
  font-optical-sizing: auto;
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  letter-spacing: .08em;
	transition: .3s ease-out;
}

.btn_container a span {
  padding-right: 35px;
  position: relative;
}

.btn_container a span::after {
  content: '';
  display: block;
  width: 27px;
  height: 32px;
  background: url('../img/logo.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}

.btn_container a:hover {
  background-color: #fff;
  color: #004663;
	transition: .3s ease-out;
}


/* header ----------------------------------------*/

header {
  width: 100%;
  height: 104px;
  background-color: rgba(255,253,237,.9);
  box-sizing: border-box;
  padding: 24px 40px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: fixed;
  z-index: 9999;
}

header .logo_container {
  width: 232px;
  position: relative;
  z-index: 9999999;
}

header .ico_inst_container {
  display: none;
}

header nav {
  display: flex;
  align-items: center;
}

header .nav_list_container {
  display: flex;
}

header .nav_list_item {
  padding-right: 24px;
}

header .nav_list_item a {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .08em;
}


/* main ----------------------------------------*/

main {
  display: block;
  background-color: rgba(255,253,237,.9);
}


/* mv_wrap ----------------------------------------*/

.mv_wrap {
  margin-top: 104px;
  position: relative;
  z-index: 99;
}

.mv_wrap .mv_container {
  display: block;
  width: 100vw;
  height: 1600px;
}

.mv_wrap .mv_obj_wrap {
  width: 100%;
}

.mv_wrap .mv_obj_wrap.fixed {
  position: fixed;
  top: 136px;
  left: 50%;
  transform: translateX(-50%);
}

.mv_obj_container {
  width: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

.mv_wrap .mv_obj_block {
  opacity: 1;
	transition: .3s ease-out;
}

.mv_wrap .mv_obj_block.hide {
  opacity: 0;
	transition: .3s ease-out;
}

.mv_wrap .mv_obj {
  width: 100%;
  height: 641px;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
}

@media screen and (min-width: 1870px) {
  .mv_wrap .mv_obj {
    height: 34.28vw;
  }
}


/* article ----------------------------------------*/

article {
  opacity: 0;
	transition: .8s ease-out;
}

article.current {
  opacity: 1;
	transition: .8s ease-out;
}


/* scroll_container ----------------------------------------*/

.scroll_container {
  display: block;
  padding: 40px 0;
  text-align: center;
  position: fixed;
  bottom: 12px;
  left: 50%;
  transform: translateX(-50%);
}

.scroll_container::after {
  content: '';
  display: block;
  width: 8px;
  height: 8px;
  border-right: 4px solid #004663;
  border-bottom: 4px solid #004663;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: rotate(45deg) translate(-50%,0);
  animation: arrow-y 2s ease-in-out infinite alternate-reverse;
}

@keyframes arrow-y {
  0% {
    transform: rotate(45deg) translate(-50%,0);
  }
  15% {
    transform: rotate(45deg) translate(-50%,0);
  }
  35% {
    transform: rotate(45deg) translate(-175%,-16px);
  }
  50% {
    transform: rotate(45deg) translate(-175%,-16px);
  }
  65% {
    transform: rotate(45deg) translate(-175%,-16px);
  }
  85% {
    transform: rotate(45deg) translate(-50%,0);
  }
  100% {
    transform: rotate(45deg) translate(-50%,0);
  }
}

.scroll_container span {
  font-size: 18px;
  font-weight: 700;
  letter-spacing: .05em;
}


/* sec01 ----------------------------------------*/

.sec01 {
  background-color: rgba(255,253,237,.9);
}

.sec01 .page_ttl {
  text-align: center;
  padding-bottom: 56px;
}

.sec01 .lead_container {
  width: 89.74vw;
  margin: 0 auto;
  position: relative;
  height: 200px;
  overflow: hidden;
}

.sec01 .lead_container.current {
  height: auto;
}

.sec01 .lead_container::before {
  content: ""; 
  width: 100%;
  height: 50%;
  display: block;
  background: linear-gradient(rgba(255,253,237,0) 0, rgba(255,253,237,1) 50%);
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 2;
}

.sec01 .lead_container.current::before {
  background: none;
}

.sec01 .lead_txt {
  font-size: 16px;
  font-weight: 500;
  line-height: 2.4em;
  letter-spacing: .03em;
  text-align: center;
  padding-bottom: 32px;
}

.sec01 .lead_txt .ico_obj {
  padding-left: .3em;
}

.sec01 .lead_txt strong {
  padding: 0 .2em;
}

.sec01 .lead_txt .ico_obj.ico_01 {
  transform: translateY(-10%);
}

.sec01 .lead_txt .ico_obj.ico_02 {
  transform: translateY(-50%);
}

.sec01 .lead_txt .ico_obj.ico_03 {
  transform: translateY(-40%);
}

.sec01 .btn_container {
  padding-top: 0;
}

.sec01 .lead_container.current + .btn_container {
  padding-top: 66px;
}

.sec01 .btn_container a {
  width: 133px;
  height: 44px;
  margin: 0 auto;
  background-color: rgba(255,253,237,.9);
  font-size: 20px;
  color: #004663;
}

.sec01 .btn_container a:hover {
  margin: 0 auto;
  background-color: #004663;
  color: #fff;
}


/* sec02 ----------------------------------------*/

.sec02 {
  background-color: #c9665c;
}

.sec02::after {
  content: '';
  display: block;
  width: 266px;
  height: 400px;
  background: url('../img/illust_05_pc.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -2px;
  left: 50%;
  z-index: 2;
  margin-left: -500px;
  animation: rotate_floormap 2s ease-in-out infinite alternate-reverse;
}

@keyframes rotate_floormap {
	0%   { transform: rotate(0deg); }
	25%  { transform: rotate(5deg); }
	50%  { transform: rotate(-2deg); }
	75%  { transform: rotate(5deg); }
	100% { transform: rotate(0deg); }
}

.sec02 .contents_wrap {
  background-color: #fff;
  border: 2px solid #004663;
  padding: 150px 4.99% 200px;
  border-radius: 42vw;
}

.sec02 .contents_wrap::before {
  content: '';
  display: block;
  width: 458px;
  height: 66px;
  background: url('../img/text_pc.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 56px;
  left: 50%;
  transform: translateX(-50%);
}

.sec02 .contents_wrap::after {
  content: '';
  display: block;
  width: 298px;
  height: 347px;
  background: url('../img/illust_02_pc.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  right: 50%;
  transform: translate(600px,0);
  animation: floating-y_floormap .5s ease-in-out infinite alternate-reverse;
}

@keyframes floating-y_floormap {
  0% {
    transform: translate(600px,-1%);
  }
  100% {
    transform: translate(600px,1%);
  }
}

.sec02 .floor_wrap + .floor_wrap {
  margin-top: 68px;
  padding-top: 119px;
  /*border-top: 2px solid #004663;*/
}

.sec02 .floor_container {
  width: 100%;
  padding-bottom: 79px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.sec02 .floor_wrap:first-of-type .floor_container:nth-child(even) {
  flex-direction: row-reverse;
}

.sec02 .floor_wrap:last-of-type .floor_container:nth-child(odd) {
  flex-direction: row-reverse;
}

.sec02 .floor_container .img_container {
  width: 47.7%;
  max-width: 498px;
  max-height: 310px;
  aspect-ratio: 8 / 4.98;
  border-radius: 100vh;
  border: 2px solid #004663;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
  z-index: 2;
}

.sec02 .floor_container .shop_list_container {
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}

.sec02 .floor_container .shop_list_container .slick-list,
.sec02 .floor_container .shop_list_container .slick-track,
.sec02 .floor_container .shop_list_container .shop_obj {
  height: 100%;
}

.sec02 .floor_container .shop_list_container:not(.slide) .shop_obj {
  width: 100%;
  min-width: 100%;
  min-height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}


.shop_list_container .slick-dots {
	position: absolute;
	bottom: 24px;
	left: 50%;
	height: 15px;
	display: flex;
	justify-content: center;
	align-items: center;
	transform: translateX(-50%);
	z-index: 9;
}

.shop_list_container .slick-dots li {
	padding: 0 10px;
}

.shop_list_container .slick-dots button {
	width: 15px;
	height: 15px;
  padding: 0;
  background: none;
  border: 2px solid #fff!important;
	border-radius: 100vh;
  box-sizing: border-box!important;
	border: none;
	text-indent: -9999px;
	box-sizing: border-box;
	cursor: pointer;
	transition: .2s ease-out;
}

.shop_list_container .slick-dots .slick-active button {
  background: #fff;
	transition: .2s ease-out;
}

.shop_list_container .slick-dots button:focus {
	outline: none;
  background: #fff;
	transition: .2s ease-out;
}

.shop_list_container .slick-dots button:hover {
	opacity:0.6;
	zoom:1;
}

.shop_list_container.change .slick-dots button {
  border: 2px solid #004663!important;
	transition: .2s ease-out;
}

.shop_list_container.change .slick-dots .slick-active button {
  background: #004663;
	transition: .2s ease-out;
}

.shop_list_container.change .slick-dots button:focus {
  background: #004663;
	transition: .2s ease-out;
}


.sec02 .floor_container .txt_container {
  width: 44.25%;
}

.sec02 .floor_container .shop_ttl {
  display: flex;
  align-items: center;
  padding-bottom: 32px;
}

.sec02 .floor_container .shop_ttl span {
  width: 54px;
  height: 72px;
  background-size: contain;
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 38px;
  font-weight: 500;
  color: #fff;
  letter-spacing: .1em;
  padding-bottom: 17px;
  padding-left: 2px;
}

.sec02 .floor_wrap:first-of-type .floor_container .shop_ttl span {
  /*background-color: #33a6b8;*/
  background: url('../img/map_icon_1f.svg') center center no-repeat;
}

.sec02 .floor_wrap:last-of-type .floor_container .shop_ttl span {
  /*background-color: #7ba23f;*/
  background: url('../img/map_icon_2f.svg') center center no-repeat;
}

.sec02 .floor_container .shop_ttl strong {
  width: calc(100% - 8px);
  box-sizing: border-box;
  padding-left: 80px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.5em;
  letter-spacing: .05em;
}

.sec02 .floor_wrap:first-of-type .floor_container .shop_ttl strong {
  color: #33a6b8;
}

.sec02 .floor_wrap:last-of-type .floor_container .shop_ttl strong {
  color: #7ba23f;
}

.sec02 .floor_container .shop_txt {
  font-size: 16px;
  font-weight: 500;
  color: #004663;
  line-height: 2em;
  letter-spacing: .05em;
}

.sec02 .floor_container .shop_txt a {
  text-decoration: underline;
}


/* carousel_list_container ----------------------------------------*/

.carousel_list_container {
  padding: 21px 0;
  border-top: 2px solid #004663;
  border-bottom: 2px solid #004663;
}

.carousel_list_item + .carousel_list_item {
  padding-left: 37px;
}

.carousel_list_obj {
  zoom: .5;
}


/* sec03 ----------------------------------------*/

.sec03 {
  background-color: #33a6b8;
  padding-bottom: 0;
}

.sec03 .contents_wrap {
  background-color: #fff;
  border: 2px solid #004663;
  border-bottom: none;
  padding: 120px 7.86% 170px;
  border-radius: 42vw 42vw 0 0;
}

.sec03 .contents_wrap::after {
  content: '';
  display: block;
  width: 306px;
  height: 301px;
  background: url('../img/illust_04_pc.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: -90px;
  right: -70px;
  z-index: 2;
  animation: bomb_news 2s ease-in-out infinite alternate-reverse;
}

@keyframes bomb_news {
	0%   { transform: scale(1.0); }
	25%  { transform: scale(0.95); }
	50%  { transform: scale(1.05); }
	75%  { transform: scale(0.95); }
	100% { transform: scale(1.0); }
}

.sec03 .sec_ttl,
.sec04 .sec_ttl {
  padding-bottom: 32px;
}

.sec03 .sec_txt,
.sec04 .sec_txt {
  font-size: 16px;
  font-weight: 500;
  line-height: 2em;
  letter-spacing: .05em;
  text-align: center;
  padding-bottom: 32px;
}

.sec03 .ttl_news {
  width: 314px;
}

.sec03 .btn_container a {
  width: 215px;
  height: 58px;
  margin: 0 auto;
  background-color: #c9665c;
  border: 2px solid #c9665c;
}

.sec03 .btn_container a:hover {
  background-color: #fff;
  color: #c9665c;
}

.sec03 .btn_container a span {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .07em;
}

.sec03 .btn_container a span::after {
  width: 24px;
  height: 24px;
  background: url('../img/ico_inst_w.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}

.sec03 .btn_container a:hover span::after {
  background: url('../img/ico_inst_r.svg') center center no-repeat;
  background-size: contain;
	transition: .3s ease-out;
}

.sec03 .inst_wrap {
  margin-top: 26px;
}


/* sec04 ----------------------------------------*/

.sec04 {
  background-color: #7ba23f;
  padding-bottom: 0;
}

.sec04 .contents_wrap {
  background-color: #fff;
  border: 2px solid #004663;
  border-bottom: none;
  padding: 150px 7.86% 120px;
  border-radius: 42vw 42vw 0 0;
}

.sec04 .contents_wrap::before {
  content: '';
  display: block;
  width: 249px;
  height: 280px;
  background: url('../img/illust_01_pc.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: -80px;
  left: 40px;
  animation: floating-y .8s ease-in-out infinite alternate-reverse;
}

@keyframes floating-y {
  0% {
    transform: translateY(-5%);
  }
  100% {
    transform: translateY(5%);
  }
}

.sec04 .contents_wrap::after {
  content: '';
  display: block;
  width: 209px;
  height: 150px;
  background: url('../img/illust_06_pc.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -75px;
  right: -70px;
  z-index: 2;
  animation: bomb_calendar 2s ease-in-out infinite alternate-reverse;
}

@keyframes bomb_calendar {
	0%   { transform: scale(1.0); }
	25%  { transform: scale(0.8); }
	50%  { transform: scale(1.2); }
	75%  { transform: scale(0.8); }
	100% { transform: scale(1.0); }
}

.sec04 .ttl_calendar {
  width: 636px;
}


/* sec05 ----------------------------------------*/

.sec05 {
  background-color: #f5f5f5;
  display: flex;
  justify-content: right;
}

.sec05 .left_container {
  padding: 0 77px 0 3vw;
}

.sec05 .right_container {
  width: 56.77vw;
}

.sec05 .sec_ttl {
  align-items: start;
  padding-bottom: 49px;
}

.sec05 .sec_ttl ul li {
	left: -10px;
  text-align: left;
}

.sec05 .shopinfo_list_container dt {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.6em;
  letter-spacing: .1em;
  padding: 0 0 8px 1.6em;
  position: relative;
}

.sec05 .shopinfo_list_container dt::before {
  content: '';
  display: block;
  position: absolute;
  top: 4px;
  left: 0;
}

.sec05 .shopinfo_list_container dt:first-child:before {
  width: 19px;
  height: 24px;
  background: url('../img/ico_address.svg') 4px center no-repeat;
  background-size: contain;
}

.sec05 .shopinfo_list_container dt:nth-child(3):before {
  width: 24px;
  height: 24px;
  background: url('../img/ico_time.svg') 1px center no-repeat;
  background-size: contain;
}

.sec05 .shopinfo_list_container dt:nth-child(5):before {
  width: 26px;
  height: 24px;
  background: url('../img/ico_close.svg') center center no-repeat;
  background-size: contain;
}

.sec05 .shopinfo_list_container dt:nth-child(7):before {
  width: 24px;
  height: 19px;
  background: url('../img/ico_mail.svg') 1px center no-repeat;
  background-size: contain;
  top: 7px;
}

.sec05 .shopinfo_list_container dd + dt {
  margin-top: 25px;
}

.sec05 .shopinfo_list_container dd {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: .05em;
}
.sec05 .shopinfo_list_container dd .floor{
  background-color: #fff;
  padding: 0px 5px 2px;
  border-radius: 3px;
  line-height: 2.2;
  color: #c9665c;
  font-weight: bold;
}
.sec05 .shopinfo_list_container dd a {
  text-decoration: underline;
}

.sec05 .ex {
  display: inline-block;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: .05em;
  padding-right: 1.5em;
  margin-top: 3px;
  border-bottom: 1px solid #004663;
  position: relative;
}

.sec05 .ex::after {
  content: '';
  display: block;
  width: 15px;
  height: 14px;
  background: url('../img/ico_ex.svg') center center no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}


/* footer ----------------------------------------*/

footer {
  background-color: #004663;
  padding-bottom: 24px;
}

footer .contents_wrap {
  padding: 64px 0;
  display: flex;
  justify-content: space-between;
}

footer .copyright {
  display: block;
  font-size: 14px;
  font-weight: 400;
  color: #648b9b;
  letter-spacing: .08em;
  text-align: center;
}

footer nav {
  display: flex;
}

footer .nav_list_container {
  padding-right: 64px;
}

footer .nav_list_item + .nav_list_item {
  padding-top: 24px;
}

footer .nav_list_item a {
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  letter-spacing: .08em;
}

footer .subnav_list_item + .subnav_list_item {
  padding-top: 8px;
}

footer .subnav_list_item a {
  font-size: 12px;
  font-weight: 500;
  color: #fff;
  letter-spacing: .08em;
  border-bottom: 1px solid #648b9b
}

footer .btn_container {
  padding-top: 36px;
}

footer .btn_container a {
  background-color: #fff;
  border: 2px solid #fff;
  color: #004663;
}

footer .btn_container a:hover {
  background-color: #004663;
  color: #fff;
}


/* aside ----------------------------------------*/

aside {
  position: fixed;
  bottom: 39px;
  right: 39px;
  z-index: 999;
}

aside a {
  width: 156px;
  height: 156px;
  background: url('../img/anchor_0411opn.svg') center center no-repeat;
  background-size: contain;
  border-radius: 100vh;
  box-sizing: border-box;
  line-height: 1.1em;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

aside strong {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.1em;
  letter-spacing: .05em;
  margin: -8px 0 0 0;
}

aside strong span {
  display: block;
  font-size: 34px;
  font-weight: 700;
  line-height: 1em;
  text-align: center;
  padding-bottom: 3px;
}

aside strong .mont_white{
  color: #fff;
  font-size: 16px;
  background-color: #004663;
  display: inline-block;
  padding: 1px 10px 4px;
  border-radius: 14px;
}
aside strong .mont_discount{
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 13px 0 0 -1px;
}
aside strong .mont_discount .mont_small{
  font-size: 57px;
  text-align: center;
  font-weight: bold;
  margin: -5px 0 0 0;
}
aside strong .mont_discount .mont_txt{
  display: inline-block;
  font-weight: bold;
  font-size: 22px;
}
aside strong .mont_floor{
  color: #fff;
  font-weight: bold;
  font-size: 19px;
  background-color: #004663;
  display: inline-block;
  padding-right: 2px;
  padding-top: 2px;
}
aside strong .mont_big{
  font-size: 22px;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.1em;
}

aside strong .mont_data{
  font-size: 18px;
  display: inline-block;
  margin: 0 0 -8px 0;
  padding: 7px 0 0 0;
}
/*aside i {
  display: block;
  width: 89px;
  height: 17px;
  box-sizing: border-box;
  border-radius: 5px;
  font-style: normal;
  font-size: 14px;
  font-weight: 700;
  color: #fff;
  line-height: 18px;
  letter-spacing: .05em;
  text-align: center;
  margin-top: 3px;
}

aside span {
  display: block;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.2em;
  text-align: center;
  padding-top: 3px;
}*/


/*------------------------------------------------*/

/* tablet */

/*------------------------------------------------*/

@media screen and (min-width: 781px) and (max-width: 1180px) {

  /* header ----------------------------------------*/

  header {
    height: 8.81vw;
    padding: 2.03vw 3.39vw;
    z-index: 9999;
  }

  header .logo_container {
    width: 19.66vw;
  }

  header .nav_list_item {
    padding-right: 2.03vw;
  }

  header .nav_list_item a {
    font-size: 1.36vw;
  }

  header .btn_container a {
    width: 17.46vw;
    height: 4.75vw;
    font-size: 1.36vw;
  }
  
  header .btn_container a span {
    padding-right: 2.97vw;
  }
  
  header .btn_container a span::after {
    width: 2.29vw;
    height: 2.71vw;
  }

  /* mv_wrap ----------------------------------------*/
  
  .mv_wrap {
    margin-top: 8.81vw;
  }
  .anchor_map .map_twof .anchor_map_ttl{
    margin: 0 0 0 21vw;
}
  .anchor_map .anchor_map_ttl{
    font-size: 2.2vw;
}
  .anchor_map .map_twof .map_twof_img{
    width: 113%;
    height: auto;
    margin: 116px 0 0 -7vw;
    padding-bottom: 31vw;
}
.anchor_map .map_twof .anchor_map_ttl{float: none;}
.anchor_map .map_twof{margin: 60px 0 0 0;}
  .anchor_map .map_onef .map_onef_img .one_num{
    margin: 0vw 0 0px 60vw;
}
  .anchor_map .map_onef .map_onef_img .two_num{
    margin: -4vw 0 0px 33vw;
}
  .anchor_map .map_onef .map_onef_img .three_num{
    margin: 6vw 0 0 2vw;
}
.anchor_map .map_twof .map_twof_img .four_num{
  margin: -4vw 0 0 73.8vw;
}
.anchor_map .map_twof .map_twof_img .five_num{
  margin: -4.7vw 0 0 50.8vw;
}
.anchor_map .map_twof .map_twof_img .six_num{
  margin: -5.2vw 0 0 25.8vw;
}
.anchor_map .map_twof .map_twof_img .seven_num{
  margin: -5.2vw 0 0 8.8vw;
}

  /* sec02 ----------------------------------------*/

  .sec02::after {
    width: 22.54vw;
    height: 33.9vw;
    margin-left: -42.37vw;
  }

  .sec02 .contents_wrap::after {
    width: 25.25vw;
    height: 29.41vw;
    transform: translate(50.85vw,0);
  }
  
  @keyframes floating-y_floormap {
    0% {
      transform: translate(50.85vw,-1%);
    }
    100% {
      transform: translate(50.85vw,1%);
    }
  }


  /* sec03 ----------------------------------------*/

  .sec03 .contents_wrap::after {
    width: 25.93vw;
    height: 25.51vw;
    top: -7.63vw;
    right: -5.93vw;
  }


  /* sec04 ----------------------------------------*/

  .sec04 .contents_wrap::before {
    width: 21.1vw;
    height: 23.73vw;
    top: -6.78vw;
    left: 3.39vw;
  }

}

@media screen and (min-width: 781px) and (max-width: 1080px) {

  /* sec_ttl ----------------------------------------*/

  .sec_ttl ul,
  .sec_ttl ul li,
  .sec_ttl ul li .ttl_obj {
    height: 8.43vw;
  }
  
  .sec03 .ttl_news,
  .sec04 .ttl_calendar {
    width: unset;
  }

}

@media screen and (min-width: 781px) and (max-width: 980px) {

  /* sec01 ----------------------------------------*/
  .sec01 .lead_txt {
    text-align: left;
  }
}


/*------------------------------------------------*/

/* sp */

/*------------------------------------------------*/

@media only screen and (max-width: 780px) {
  
  /* common ----------------------------------------*/
  
  .pc {
    display: none;
  }
  
  .sp {
    display: block;
  }
  
  section {
    padding: 20.51vw 0;
  }
  
  .anchor {
    padding-top: 17.95vw;
    margin-top: -17.95vw;
  }
  
  .sec_ttl {
    padding-bottom: 10vw;
  }
  
  .sec_ttl ul {
    height: 11.67vw;
  }
  
  .sec_ttl ul li {
    height: 11.67vw;
  }
  
  .sec_ttl strong {
    font-size: 5.13vw;
  }
.anchor_map{
  margin: -24vw 0 0 0;
  padding-bottom: 6.2vw;
}
.anchor_map .map_twof{
  margin: 3.2vw 0 0 0;
}
.anchor_map .anchor_map_ttl{
  font-size: 3.1vw;
  padding: 3.33vw 0.7vw;
  margin: 0 0 0 -3vw;
  display: flex;
  justify-content: center;
  align-items: center;
}
.anchor_map .anchor_map_ttl p{
  font-size: 5.3vw;
  margin: 0 2.2vw 0 0;
}
.anchor_map .map_onef .anchor_map_ttl{
  width: 94%;
  background-color: #33A6B8;
  border-radius: 0 40px 40px 0;
  margin: 0 0 0 -6.2vw;
}
.anchor_map .map_twof .anchor_map_ttl{
  width: 100%;
  background-color: #7BA23F; 
  margin: -4vw -3vw 0 4.8vw;
  border-radius: 40px 0 0 40px;
  float: none;
}

.anchor_map .map_onef .map_onef_img{
  width: 103%;
  height: auto;
  padding-bottom: 56vw;
  background: url('../img/minnnashowten_1f_sp.png') center center no-repeat;
  background-size: contain;
  margin: 6vw 0 0 4vw;
}
.anchor_map .map_twof .map_twof_img{
  width: 116%;
  height: auto;
  padding-bottom: 81vw;
  background: url('../img/minnnashowten_2f_sp.png') center center no-repeat;
  background-size: contain;
  margin: 1vw 0 0 -6.2vw;
}
.anchor_map .map_onef .num_icon a, .anchor_map .map_twof .num_icon a{
  width: 8vw;
  height: auto;
  font-size: 4.988vw;
  padding: 0.8vw 0 3.6vw 0.2vw;
}

.anchor_map .num_icon a:hover{
  color: #fff;
  transition: .3s ease-out;
  opacity: 0.7;
}

.anchor_map .map_onef .map_onef_img .num_icon a{
  background: url('../img/map_icon_1f.svg') center center no-repeat;
  color: #fff;
  background-size: contain;
}
.anchor_map .map_twof .map_twof_img .num_icon a{
  background: url('../img/map_icon_2f.svg') center center no-repeat;
  color: #fff;
  background-size: contain;
}
.anchor_map .map_onef .map_onef_img .one_num{
  margin: 7.9vw 0px 0px 60.5vw;
}
.anchor_map .map_onef .map_onef_img .two_num{
  margin: 3.1vw 0px 0px 32.5vw;
}
.anchor_map .map_onef .map_onef_img .three_num{
  margin: 10vw 0 0 0vw;
}
.anchor_map .map_twof .map_twof_img .four_num{
  margin: 2vw 0 0 70.8vw;
}
.anchor_map .map_twof .map_twof_img .five_num{
  margin: 4.3vw 0 0 34.8vw;
}
.anchor_map .map_twof .map_twof_img .six_num{
  margin: 3.8vw 0 0 5.8vw;
}
.anchor_map .map_twof .map_twof_img .seven_num{
  margin: 36.8vw 0 0 21.8vw;
}
.map_ttl{
  font-size: 5.1vw;
  padding: 3.7vw 0;
  margin-bottom: 10.3vw;
  border-radius: 6px;
  letter-spacing: 0.1em;
}
.mapttl_2f{position: relative}
.mapttl_2f:before{
  content: '';
  display: block;
  width: 100%;
  height: 2px;
  background-color: #004663;
  position: absolute;
  top: -12vw;
}
  .btn_container a {
    width: 63.33vw;
    height: 16.41vw;
    font-size: 4.62vw;
  }
  
  .btn_container a span {
    padding-right: 9.23vw;
  }
  
  .btn_container a span::after {
    width: 7.18vw;
    height: 8.21vw;
  }
  
  
  /* header ----------------------------------------*/
  
  header {
    width: 100%;
    height: 18.86vw;
    padding: 4.1vw 0 4.1vw 5.13vw;
  }
  
  header .logo_container {
    width: 36.15vw;
  }

  header .ico_inst_container {
    display: block;
    position: relative;
    z-index: 9999999;
  }

  header .nav_wrap {
    display: flex;
    justify-content: right;
    align-items: center;
  }


  /*menu_trigger--------------------------------*/
  
  .menu_trigger {
    width: 20.51vw;
    height: 16.92vw;
    display: block;
    z-index: 9999999;
    position: relative;
    transition: .2s ease-out;
    user-select: none;
  }
  
  .menu_trigger,
  .menu_trigger span {
    display: inline-block;
    transition: all .4s;
    box-sizing: border-box;
  }
  
  .menu_trigger span {
    position: absolute;
    left: 5.13vw;
    width: 10.26vw;
    height: 2px;
    background-color: #004663;
    z-index: 4;
  }
  
  .menu_trigger span:nth-of-type(1) {
    top: 6.92vw;
  }
  
  .menu_trigger span:nth-of-type(2) {
    top: 10vw;
  }
  
  .menu_trigger.active {
    border: none;
  }
  
  .menu_trigger.active span:nth-of-type(1) {
    -webkit-transform: translateY(1.54vw) rotate(-17.1deg);
    transform: translateY(1.54vw) rotate(-17.1deg);
  }
  
  .menu_trigger.active span:nth-of-type(2) {
    -webkit-transform: translateY(-1.54vw) rotate(17.1deg);
    transform: translateY(-1.54vw) rotate(17.1deg);
  }
  
  
  
  /*menu_target--------------------------------*/

  .menu_target {
    display: none;
    z-index: 999999;
  }
  
  
  header nav {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100vw;
    height: 100vh;
    padding-bottom: 20vh;
    background-color: #fff;
    position: fixed;
    top: 0;
    left: 0;
  }
  
  header .nav_list_container {
    display: block;
  }
  
  header .nav_list_item {
    padding: 0 0 5.36vh 0;
    text-align: center;
  }
  
  header .nav_list_item a {
    font-size: 8.21vw;
  }
  
  header .nav_list_item:last-child {
    display: none;
  }
  
  
  /* mv_wrap ----------------------------------------*/
  
  .mv_wrap {
    margin-top: 16.92vw;
  }

  .mv_wrap .mv_container {
    height: 410vw;
  }

  .mv_wrap .mv_obj_wrap {
    width: 100%;
  }
  
  .mv_wrap .mv_obj_wrap.fixed {
    top: 27.18vw;
  }

  .mv_wrap .mv_obj {
    height: 94.36vw;
  }
  
  /* scroll_container ----------------------------------------*/
  
  .scroll_container {
    padding: 10.26vw 0;
  }
  
  .scroll_container::after {
    width: 2.05vw;
    height: 2.05vw;
    border-right: 1.03vw solid #004663;
    border-bottom: 1.03vw solid #004663;
    animation: arrow-y 2s ease-in-out infinite alternate-reverse;
  }

@keyframes arrow-y {
  0% {
    transform: rotate(45deg) translate(-50%,0);
  }
  15% {
    transform: rotate(45deg) translate(-50%,0);
  }
  35% {
    transform: rotate(45deg) translate(-175%,-4.1vw);
  }
  50% {
    transform: rotate(45deg) translate(-175%,-4.1vw);
  }
  65% {
    transform: rotate(45deg) translate(-175%,-4.1vw);
  }
  85% {
    transform: rotate(45deg) translate(-50%,0);
  }
  100% {
    transform: rotate(45deg) translate(-50%,0);
  }
}
  
  .scroll_container span {
    font-size: 4.62vw;
  }
  
  
  /* sec01 ----------------------------------------*/
  
  .sec01 .page_ttl {
    padding-bottom: 12.31vw;
  }
  
  .sec01 .page_ttl .page_ttl_obj {
    width: 83.59vw;
  }
  
  .sec01 .lead_container {
    height: 87.44vw;
  }

  .sec01 .lead_container::before {
    content: ""; 
    width: 100%;
    height: 25%;
    display: block;
    background: linear-gradient(rgba(255,253,237,0) 0, rgba(255,253,237,1) 50%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2;
  }
  
  .sec01 .lead_txt {
    font-size: 4.1vw;
    text-align: left;
    padding-bottom: 8.21vw;
  }
  
  .sec01 .lead_container.current + .btn_container {
    padding-top: 6.15vw;
  }
  
  .sec01 .btn_container a {
    width: 34.1vw;
    height: 11.28vw;
    font-size: 5.13vw;
  }
  
  
  /* sec02 ----------------------------------------*/
  
  .sec02::after {
    width: 40.26vw;
    height: 60.51vw;
    background: url('../img/illust_05_sp.svg') center center no-repeat;
    background-size: contain;
    bottom: -21.03vw;
    left: -2.05vw;
    z-index: 2;
    margin-left: unset;
  }
  
  .sec02 .contents_wrap {
    padding: 20.51vw 6.15vw 16.41vw;
  }
  
  .sec02 .contents_wrap::before {
    width: 48.97vw;
    height: 12.31vw;
    background: url('../img/text_sp.svg') center center no-repeat;
    background-size: contain;
    bottom: 6.15vw;
  }
  
  .sec02 .contents_wrap::after {
    width: 43.08vw;
    height: 49.74vw;
    background: url('../img/illust_02_sp.svg') center center no-repeat;
    background-size: contain;
    right: -10.26vw;
    z-index: 0;
    transform: translate(0,0);
  }
  
  @keyframes floating-y_floormap {
    0% {
      transform: translate(0,-1%);
    }
    100% {
      transform: translate(0,1%);
    }
  }
  
  .sec02 .sec_ttl ul,
  .sec02 .sec_ttl ul li {
    height: 22.56vw;
  }
  
  .sec02 .floor_wrap + .floor_wrap {
    margin-top: 6.15vw;
    padding-top: 20.51vw;
  }
  
  .sec02 .floor_container {
    padding-bottom: 14.36vw;
    display: block;
  }

  .sec02 .floor_container .img_container {
    width: 100%;
    height: 47.69vw;
    max-width: unset;
    max-height: unset;
  }
  
  .sec02 .floor_container .shop_list_container,
  .sec02 .floor_container .shop_list_item {
    width: 77.44vw;
    height: 100%;
    border-radius: 100vh;
  }

  .sec02 .floor_container .shop_obj {
    width: 100%;
  }
  
  .shop_list_container .slick-dots {
    bottom: 2.92vw;
    height: 2.92vw;
  }
  
  .shop_list_container .slick-dots li {
    padding: 0 2.05vw;
  }
  
  .shop_list_container .slick-dots button {
    width: 2.92vw;
    height: 2.92vw;
  }
  
  
  .sec02 .floor_container .txt_container {
    width: 100%;
    padding-top: 6.1vw;
  }
  
  .sec02 .floor_container .shop_ttl {
    padding-bottom: 4.1vw;
  }
  
  .sec02 .floor_container .shop_ttl span {
    width: 8.15vw;
    height: 8.15vw;
    font-size: 5.13vw;
    padding-top: 2vw;
  }
  .sec02 .floor_wrap:first-of-type .floor_container .shop_ttl span {background-size: contain;}
  .sec02 .floor_wrap:last-of-type .floor_container .shop_ttl span {background-size: contain;}
  .sec02 .floor_container .shop_ttl strong {
    width: calc(100% - 2.85vw);
    padding-left: 12.3vw;
    font-size: 4.62vw;
  }
  
  .sec02 .floor_container .shop_txt {
    font-size: 4.1vw;
  }
  
  
  /* carousel_list_container ----------------------------------------*/
  
  .carousel_list_container {
    padding: 4.1vw 0;
    background-color: #fffded;
    border-top: 2px solid #004663;
    border-bottom: 2px solid #004663;
    position: relative;
    z-index: 2;
  }
  
  .carousel_list_item + .carousel_list_item {
    padding-left: 37px;
  }
  
  .carousel_list_obj {
    zoom: .311;
  }
  
  
  /* sec03 ----------------------------------------*/
  
  .sec03 {
    position: relative;
    z-index: 2;
  }
  
  .sec03 .contents_wrap {
    padding: 20.51vw 6.15vw 23.08vw;
  }
  
  .sec03 .contents_wrap::after {
    width: 36.67vw;
    height: 35.9vw;
    background: url('../img/illust_04_sp.svg') center center no-repeat;
    background-size: contain;
    top: -19.49vw;
    right: -8.72vw;
  }
  
  .sec03 .sec_ttl,
  .sec04 .sec_ttl {
    padding-bottom: 32px;
  }
  
  .sec03 .sec_txt,
  .sec04 .sec_txt {
    font-size: 4.1vw;
    text-align: left;
    padding-bottom: 6.15vw;
  }
  
  .sec03 .ttl_news {
    width: unset;
  }
  
  .sec03 .btn_container a {
    width: 55.38vw;
    height: 14.87vw;
  }

  .sec03 .btn_container a span {
    font-size: 4.1vw;
  }
  
  .sec03 .btn_container a span::after {
    width: 6.15vw;
    height: 6.15vw;
  }
  
  .sec03 .inst_wrap {
    margin-top: 6.67vw;
  }
  
  
  /* sec04 ----------------------------------------*/
  
  .sec04 .contents_wrap {
    padding: 20.51vw 6.15vw 23.08vw;
  }
  
  .sec04 .contents_wrap::before {
    width: 29.74vw;
    height: 33.33vw;
    background: url('../img/illust_01_sp.svg') center center no-repeat;
    background-size: contain;
    top: -19.49vw;
    left: 3.08vw;
  }

  @keyframes floating-y {
    0% {
      transform: translateY(-1%);
    }
    100% {
      transform: translateY(9%);
    }
  }
  
  .sec04 .contents_wrap::after {
    width: 28.72vw;
    height: 20.51vw;
    background: url('../img/illust_06_sp.svg') center center no-repeat;
    background-size: contain;
    bottom: -12.56vw;
    right: -7.44vw;
  }

  .sec04 .sec_ttl ul,
  .sec04 .sec_ttl ul li {
    height: 10vw;
  }
  
  .sec04 .ttl_calendar {
    width: unset;
  }
  
  
  /* sec05 ----------------------------------------*/
  
  .sec05 {
    padding: 14.36vw 0 24.62vw;
    display: block;
    position: relative;
  }
  
  .sec05 .left_container {
    width: 89.74vw;
    margin: 0 auto;
    padding: 0;
  }
  
  .sec05 .right_container {
    width: 100vw;
    height: 80vw;
    position: absolute;
    top: 44.03vw;
    left: 0;
  }
  
  .sec05 .map_wrap,
  .sec05 .map_wrap iframe {
    height: 69.74vw;
  }
  
  .sec05 .map_wrap {
    text-align: right;
  }
  
  .sec05 .sec_ttl {
    align-items: center;
    padding-bottom: 86.3vw;
  }
  
  .sec05 .sec_ttl ul li {
    left: 0;
    text-align: center;
  }
  
  .sec05 .sec_ttl .ttl_access {
    width: unset;
  }
  
  .sec05 .sec_ttl strong {
    padding-top: 1.05vw;
  }
  
  .sec05 .shopinfo_list_container dt {
    font-size: 5.13vw;
    padding: 0 0 2.05vw 1.6em;
  }
  
  .sec05 .shopinfo_list_container dt::before {
    top: 1.03vw;
  }
  
  .sec05 .shopinfo_list_container dt:first-child:before {
    width: 4.87vw;
    height: 6.15vw;
    background: url('../img/ico_address.svg') 1.03vw center no-repeat;
    background-size: contain;
  }
  
  .sec05 .shopinfo_list_container dt:nth-child(3):before {
    width: 6.15vw;
    height: 6.15vw;
    background: url('../img/ico_time.svg') .26vw center no-repeat;
    background-size: contain;
  }
  
  .sec05 .shopinfo_list_container dt:nth-child(5):before {
    width: 6.67vw;
    height: 6.15vw;
    background: url('../img/ico_close.svg') center center no-repeat;
    background-size: contain;
  }
  
  .sec05 .shopinfo_list_container dt:nth-child(7):before {
    width: 6.15vw;
    height: 4.87vw;
    background: url('../img/ico_mail.svg') .26vw center no-repeat;
    background-size: contain;
    top: 1.79vw;
  }
  
  .sec05 .shopinfo_list_container dd + dt {
    margin-top: 6.15vw;
  }
  
  .sec05 .shopinfo_list_container dd {
    font-size: 4.1vw;
  }
  
  .sec05 .ex {
    font-size: 4.1vw;
    margin: .77vw 6.15vw 0 0;
  }
  
  .sec05 .ex::after {
    width: 3.85vw;
    height: 3.59vw;
  }
  
  
  /* footer ----------------------------------------*/
  
  footer {
    padding-bottom: 4.1vw;
  }
  
  footer .contents_wrap {
    padding: 15.31vw 0 12.31vw;
    display: block;
  }
  
  footer .logo_footer {
    display: block;
    width: 80vw;
    margin: 0 auto;
  }
  
  footer .copyright {
    font-size: 3.59vw;
  }
  
  footer nav {
    display: block;
  }
  
  footer .nav_list_container {
    padding: 14.62vw 0 0;
  }
  
  footer .nav_list_item {
    text-align: center;
  }
  
  footer .nav_list_item + .nav_list_item {
    padding-top: 7.18vw;
  }
  
  footer .nav_list_item a {
    font-size: 4.62vw;
  }

  footer .subnav_wrap {
    display: flex;
    flex-direction: column-reverse;
  }
  
  footer .subnav_list_container {
    padding-top: 12.31vw;
  }
  
  footer .subnav_list_item {
    text-align: center;
  }
  
  footer .subnav_list_item + .subnav_list_item {
    padding-top: 5.13vw;
  }
  
  footer .subnav_list_item a {
    font-size: 3.59vw;
  }
  
  footer .btn_container {
    padding-top: 12.31vw;
  }
  
  footer .btn_container a {
    margin: 0  auto;
  }
  
  
  /* aside ----------------------------------------*/
  
  aside {
    bottom: 1.79vw;
    right: 1.79vw;
  }
  
  aside a {
    width: 33.85vw;
    height: 33.85vw;
  }
  
  aside strong {
    font-size: 3.23vw;
  }
  
  aside strong span {
    font-size: 7.44vw;
    padding-bottom: 1.48vw;
  }
aside strong .mont_white{
    font-size: 3.24vw;
}
aside strong .mont_discount{
  margin: 2.78vw 0 0 0;
}
aside strong .mont_discount .mont_small{
  font-size: 12.24vw;
  margin: 8-1.2vw 0 0 0.8vw;
}
aside strong .mont_discount .mont_txt{
  font-size: 5.0vw;
}
aside strong .mont_floor{
  font-size: 4.03vw;
  padding-right: 0.7vw;
}
aside strong .mont_big{
  font-size: 5.2vw;
  padding-top: 0.6vw;
}
aside strong .mont_data{
  font-size: 4.22vw;
  margin: 0 0 -0.2vw 0;
  padding: 2.02vw 0 0 0;
}
  /*aside i {
    width: 19.23vw;
    height: 3.85vw;
    border-radius: 1.03vw;
    font-size: 3.08vw;
    line-height: 3.85vw;
    margin-top: .77vw;
  }
  
  aside span {
    font-size: 3.59vw;
    padding-top: .77vw;
  }*/
}