@charset "UTF-8";
/* CSS Document */

.floating-banner {
    position: fixed;/* 追従 */
    z-index: 99999;/* 他の要素の下に隠れないように */
    top: 1rem;/* バナーの上下の位置 */
    right: 0;/* バナーの左右の位置 */
}
.bn-pc {
    width: 120px;/* バナーの横幅を指定 */
}
.floating-banner:hover {
    opacity: .9;/* ホバーで少し透過 */
}
.bn-sp {
    display: none;/* PCではスマホ用のバナーは非表示に */
}
@media screen and (max-width: 990px) {/* タブレット用のブレイクポイントを指定 */
    .floating-banner {
    position: fixed;/* 追従 */
    z-index: 99999;/* 他の要素の下に隠れないように */
    top: 4rem;/* バナーの上下の位置 */
    right: 0;/* バナーの左右の位置 */
    }
    
}
@media screen and (max-width: 576px) {/* スマホ用のブレイクポイントを指定 */
	.floating-banner {
		position: fixed;/* 追従 */
		z-index: 99999;/* 他の要素の下に隠れないように */
		top: auto;
		bottom: 0;/* バナーの上下の位置 */
		right: 0;/* バナーの左右の位置 */
}
    .bn-sp {
        display: inline-block;/* 消していたスマホ用のバナーを表示させる */
        width: 100%;/* スマホの画面幅いっぱいにバナーを表示 */
    }
    
    .bn-pc {
        display: none;/* タブレットサイズ以下でPC用のバナーを非表示に */
    }
    
}



.modal_open{
    display: inline-block;
    margin: 3vw;
    float: left; 
}
 
.modal_box {
    position: fixed;
    z-index: 7777;
    display: none;
    width: 80%;
    max-width: 840px;
    margin: 0;
    padding: 60px 2vw 80px;
    border: 2px solid #aaa;
    text-align: center;
    background: #fff;
    box-sizing: border-box;
}
 
.modal_close {
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 62px;
    font-size: 46px;
    color: #000;
    line-height: 62px;
    text-align: center;
    background: #e6e6e6;
}
 
.modal_close i {
    line-height: 62px;
    vertical-align: bottom;
}
 
.modal_bg {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 6666;
    display: none;
    width: 100%;
    height: 120%;
    background-color: rgba(0,0,0,0.7);
}
 
.link_area {
    overflow: hidden;
    max-width: 410px;
    margin: 60px auto 0;
    text-align: center;
}
 
.link_area .modal_link {
    display: inline;
}
 
.link_area .modal_link a {
    display: inline-block;
    width: 180px;
    color: #000;
    line-height: 2.5;
    text-decoration: none;
    margin: 0 10px;
    background: #e6e6e6;
}
 
.link-area ul li.modal_link:first-child a {
    float: left;
}
 
.link-area ul li.modal_link:last-child a {
    float: right;
}
 
 
@media screen and (max-width: 769px) {
 
/*  ウィンドウサイズ769px以下の時のスタイル  */
 
  .modal_box {
      padding: 50px 2vw 40px;
  }
 
  .modal_close {
      width: 40px;
      line-height: 40px;
      font-size: 30px;
  }
 
  .modal_close i {
      line-height: 44px;
  }
 
  .link_area {
      margin: 25px auto 0;
  }
 
  .link_area .modal_link a {
      margin: 15px auto 0;
  }
 
  .link_area ul li.modal_link:first-child a {
      float: none;
      margin-top: 0;
  }
 
  .link_area ul li.modal_link:last-child a {
      float: none;
  }
 
}