@charset "UTF-8";
/*style.css*/
img {
  height: auto;
  margin: 0 auto;
  border: 0;
  vertical-align: top;
}

.contents {
  position: relative;
}

/* h1のUAデフォルトマージンで画像間に隙間が出ないようにする */
.mv h1 {
  margin: 0;
}

.container {
  margin: 0 auto;
  width: 100%;
  max-width: 660px;
}

@media screen and (max-width: 768px) {
  .container {
    max-width: fit-content;
    box-shadow: none;
  }
}
.container a {
  opacity: 1;
  transition: all .3s ease;
}

.container a:hover {
  opacity: .8;
  transition: all .3s ease;
}

.container a img:hover {
  transform: scale(1);
}

.container section {
  width: 100%;
  max-width: 880px;
  margin: 0 auto;
  text-align: center;
  display: block;
}

#second_c {
  /* background-image: url(../images/bg.png);
  background-size: contain; */
}

.fade-in {
  animation: fadeIn 2s ease 1 normal backwards;
}

.fade-in.in-1 {
  animation-delay: 0.5s;
}

.fade-in.in-2 {
  animation-delay: 1.5s;
}

.fade-in.in-3 {
  animation-delay: 2.5s;
}

.fade-in.in-4 {
  animation-delay: 3.5s;
}

.fade-in.in-4 img {
	margin: 0;
}
 
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.btn_re {
  position: relative;
}

.btn_flex {
  position: absolute;
	width: 48%;
	top: 0;
	right: 0;
	display: grid;
	gap: 9%;
}

.btn_flex img {
  margin-bottom: 3%;
}

/* .ac_btn1,
.ac_btn2 {
  margin-bottom: 24px;
} */

.ac_btn1,
.ac_btn2,
.ac_btn3 {
  position: relative;
  width: 100%;
  cursor: pointer;
}

.ac_btn1 .btn-img,
.ac_btn2 .btn-img,
.ac_btn3 .btn-img {
  display: block;
  height: auto;
  margin: 0 auto;
}

/* close/open画像は重ねずに入れ替える(display切替)。
   opacityで重ねる方式だと、透明化したclose画像(188px)がコンテナの高さを
   決め続け、open画像(176px等)との高さ差分が下に白い隙間として見えるため。
   ※この修正を上書きで消さないよう注意 */
.ac_btn1 .btn-open,
.ac_btn2 .btn-open,
.ac_btn3 .btn-open {
  display: none;
}

.ac_btn1.open .btn-open,
.ac_btn2.open .btn-open,
.ac_btn3.open .btn-open {
  display: block;
}

.ac_btn1.open,
.ac_btn2.open,
.ac_btn3.open {
  margin-bottom: 0;
}

.ac_btn1.open .btn-close,
.ac_btn2.open .btn-close,
.ac_btn3.open .btn-close {
  display: none;
}

.ac_area1,
.ac_area2,
.ac_area3 {
  position: relative;
}

.ac_area1 {
  margin-top: 0;
}

.ac_area2 {
  /* margin-top: -1.0%; */
}

.ac_area1,
.ac_area2 {
    /* margin-bottom: 25px; */
}

@media screen and (max-width: 768px) {
	.ac_area1 {
		/* margin-bottom: 10px; */
	}
}

.app {
  position: relative;
}

.app_dl {
  display: flex;
}

.download{
  position: absolute;
  display: block;
  margin: 0;
  bottom: 24%;
}

.bg02{
  margin-top: -9px;
}

.btn_area {
  position: relative;
}

.btn1 {
  position: absolute;
  width: 28.5%;
  top: 0%;
  left: 3.6%;
  display: block;
}

.btn2 {
  position: absolute;
  width: 28.5%;
  top: 0;
  right: 35.75%;
  display: block;
}

.btn3 {
  position: absolute;
  width: 28.5%;
  top: 0%;
  right: 3.6%;
  display: block;
}


/*====================
FLOATING BANNER
====================*/

.floating_banner {
  position: fixed;
  bottom: 2%;
  right: 2%;
  z-index: 1;
}

.floating_banner > a {
  display: block;
  width: 100%;
  max-width: 90px;
}


/*====================
CLOSE
====================*/

.after_close {
  position: fixed;
  width: 100%;
  height: 100vh;
  background: #00000082;
  z-index: 9;
}

.after_close img {
  width: 80%;
  max-width: 720px;
  height: auto;
  display: block;
  margin: auto;
  position: absolute;
  top: 12%;
  left: 0;
  right: 0;
}