.r18 {
 display: none;
 position: fixed;
 top: 50%;
 left: 50%;
 z-index: 9999;
 width: auto;
 transform: translateX(-50%)
 translateY(-50%);
}
.position {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
 align-items: center;
 -ms-flex-align: center;
 -ms-flex-wrap: wrap;
     flex-wrap: wrap;
 -webkit-box-pack: center;
 -ms-flex-pack: center;
 justify-content: center;
 box-sizing: border-box;

/*margin: -120px 0 0 -220px;*/
 padding: 2px;
 width: 587px;
 height: 361px;
 border: solid 4px #ff0000;
 background: #ffffff;
 text-align: center;
}
.r18 p {
 margin-bottom: 15px;
 font-size: min(4vw,16px);
 line-height: 1.3;
}
.r18 p strong {
 padding-bottom: 2%;
 font-size: min(4vw,16px);
}

.r18 a {
 text-decoration: none;
 cursor: pointer;
}

.cushion h2 {
 /*padding: 0 0 20px;*/
 border-bottom: 0;
 color: #e40d0d;
 font-size: 26px;
}

.cuhion p {
 font-size: 13px;
 line-height: 1.6;
}

.cushion .mb20 {
 padding: 15px;
}

.cushion a {
 display: inline-block;
 box-sizing: border-box;
 margin: 0 5%;
 padding: 1% 2% 2%;
 width: 40%;
 height: auto;
 border-radius: 4px;
 background-color: #18bd67;
 color: white;
 text-align: center;
 text-indent: 0;
 font-size: 18px;
}
.cushion > a.yes {
 margin-left: 8px;
 background-position: 0 0;
}

.cushion > a.no {
 border: 1px solid #b3b3b3;
 background-color: #f9f9f9;
 color: #333333;
}
.cushion > a:hover {
 opacity: .7;
}

@media screen and (max-width:600px) {
 .r18 {
  width: 90%;
 }
 .position {
  margin: 0 auto;
  padding: 2% 5% 10%;
  width: 100%;
 }
}
