
/* =============================================================================
   トップモーダル
   ========================================================================== */

.modal_btn{
	cursor: pointer;
}

/* 開く時の.bodyのアニメーション */
@keyframes modalwindow_body_in {
  0% {
    transform: translateY(-20px);
  }
  100% {
    transform: translateY(0px);
  }
}
@keyframes modalwindow_body_out {
  0% {
    transform: translateY(0px);
  }
  100% {
    transform: translateY(-20px);
  }
}
.modalwindow {
  /* オーバーレイ＆スクロール領域になるレイヤー */
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  overflow: auto;
  z-index: 1000;
  width: 100%;
  /* スマホでスワイプして指を離すまでの間下部の背景が無くなるため余分に指定 */
  height: 100%;
  background-color: rgba(255,255,255,1.00);
  background-repeat: repeat-y;
  background-size: 100% auto;
  cursor: pointer;
  opacity: 1;
}


.modalwindow.no_overlay_close {
  cursor: default;
}
.modalwindow.lock .close_modal {
  background: #ccc;
}
.modalwindow .body {
  /* ウィンドウ自体 アニメーションなどで装飾 */
  position: relative;
  top: 0;
  width: 100%;
  margin: auto;
  cursor: default;
  transform: translateY(-20px);
  animation: 200ms modalwindow_body_out;
}
.modalwindow .body .modal_content {
  padding: 0;
}
.modalwindow .body > footer {
  border-radius: 0 0 4px 4px;
}
.modalwindow.is_visible .body {
  transform: translateY(0px);
  animation: 400ms modalwindow_body_in;
}
.modalwindow_header_close {
  /* 右上に表示する×ボタン 面倒なので動的に追加してます */
  position: absolute;
  right: 0;
  top: 5px;
  background: none;
  border: none;
  cursor: pointer;
}
.modalwindow_header_close:before {
  content: "\D7";
  font-size: 24px;
  font-family: serif;
  color: #ccc;
}

.close_modal{
  position: fixed;
  top: 0;
  right: 0;
  background: none;
  border: none;
  cursor: pointer;
  z-index: 999999;
  width: 60px;
}

/* -----------------------------------------
   モーダル内部スタイル
   -----------------------------------------*/

.modal_wrap{
  width: 680px;
  margin: auto;
}

.modal_wrap .p001{
	position: relative;
	overflow: hidden;
	text-align: center;
	cursor: pointer;
}

.modal_wrap .p001 img{
}

.modal_wrap .p001 .mdl_vtk01{
	position: absolute;
	top: 42%;
	width: 18%;
	left: 42%;
}
.modal_wrap .p001 .mdl_vtk01 img{
	width: 100%;
	height: auto;
}

.modal_wrap .p001 .mdl_vtk02{
	position: absolute;
	top: 37%;
	width: 10%;
	left: 46%;
}
.modal_wrap .p001 .mdl_vtk02 img{
	width: 100%;
	height: auto;
}


.mdl_ani01{
   animation:  4.1s shg02 ease-in-out infinite;
}
.mdl_ani01b{
   animation: shg02b 9.0s ease-in-out infinite alternate;
}
@keyframes shg02{
   0% { transform: rotateZ(-3deg) scale(1.0);}
   50% {transform: rotateZ(5deg) scale(1.0);}
   100% {transform: rotateZ(-3deg) scale(1.0);}
}
@keyframes shg02b{
   0% {transform: translate3d(0,-0.4vw,0);}
   50% {transform: translate3d(0,0.4vw,0);}
   100% {transform: translate3d(0,-0.4vw,0);}
}


.modal_wrap .inner{
	font-family: 'M PLUS Rounded 1c', sans-serif;
	color: rgba(255,255,255,1.00);
	padding: 2px;
	font-size: 160%;
	line-height: 1.8;
	font-weight: 600;
   text-align: center;
}

.modal_wrap .mdlfoot{
	position: relative;
	overflow: hidden;
	width: 100%;
}

.modal_wrap .mdllogo{
	width: 30%;
	margin: 50px auto 100px auto;
}


.modal-key01{
	display: none;
}
.modal-key02{
	display: none;
}




@media screen and (max-width: 900px) {

.modal_wrap.n009{
  width: 98%;
  margin: auto;
}

.modalwindow .body {
    position: relative;
    width: 100%;
    padding: 0 5px;
    left: 0;
	 box-sizing: border-box;
  }
  
  .close_modal{
  right: 0;
  top: 0;
  background: none;
  border: none;
  cursor: pointer;
}


/* -----------------------------------------
   モーダル内部
   -----------------------------------------*/

.modal_wrap{
  width: 100%;
  margin: auto;
}

.modal_wrap .p001{
	position: relative;
	overflow: hidden;
	width: 80%;
	margin: auto;
}

.modal_wrap .inner{
	padding: 2px;
	font-size: 100%;
	line-height: 1.6;
	font-weight: 600;
}

.modal_wrap .mdlfoot{
	position: relative;
	overflow: hidden;
	width: 100%;
}

.modal_wrap .mdllogo{
	width: 50%;
	margin: 20px auto 100px auto;
}   


.modal_wrap .p001 img{
	height: auto;
	width: 100%;
}

.modal_wrap .p001 .mdl_vtk01{
	position: absolute;
	top: 42%;
	width: 18%;
	left: 42%;
}
.modal_wrap .p001 .mdl_vtk01 img{
	width: 100%;
	height: auto;
}



}





/* 〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓
   スマホ版
   〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓 */

@media screen and (max-width: 480px) {

.modalwindow {
  background-image: url("../images2/valentine20220214/bg_001m.jpg");
}

.modalwindow .body .modal_content{
	position: relative;
}

.modal_wrapper{
	position: relative;
	height: 100vh;
}

.close_modal{
	width: 40px;
}

.modal_wrap{
	padding-top: 40px;
}
.modal_wrap .inner{
}


.modal_wrap .p001{
	position: relative;
	overflow: hidden;
	width: 100%;
	margin: auto;
}


}
