.map { height: 600px; }

.BlockA .map *, .BlockA .map *::before, .BlockA .map *::after { box-sizing: content-box !important; }

.BlockD { padding-bottom: 150px; }

.BlockD .pongetitle { position: relative; padding-bottom: 20px; font-size: 46px; color: #11151d; text-align: center; margin-bottom: 80px; }

.BlockD .pongetitle::after { position: absolute; bottom: 0; left: 0; right: 0; background: #ff7372; margin: auto; width: 38px; height: 4px; content: ''; }

.BlockD ul li:nth-of-type(2) a .img { background: #ff7372; }

@media (min-width: 768px) { .BlockD ul { padding-right: 50px; } }

.BlockD ul li { -webkit-box-flex: 1; -webkit-flex: 1; -ms-flex: 1; flex: 1; min-width: 0; }

.BlockD ul li:nth-of-type(2) { margin: 0; }

@media (min-width: 576px) { .BlockD ul li:nth-of-type(2) { padding: 0 80px; } }

@media (min-width: 576px) { .BlockD ul li a .child { width: 100%; } }

.BlockD ul li a .desc { width: 100%; word-wrap: break-word; overflow: hidden; }

.BlockB { background: #f2f2f2; padding: 100px 0; }

.BlockB .container { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; }

.BlockB .container .text { padding-left: 60px; min-width: 0; -webkit-box-flex: 1; -webkit-flex: 1; -ms-flex: 1; flex: 1; }

.BlockB .container .text .title { color: rgba(41, 41, 41, 0.4); font-size: 43px; margin-bottom: 45px; padding-top: 25px; }

.BlockB .container .text ul { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; }

.BlockB .container .text ul li { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; margin-bottom: 25px; }

.BlockB .container .text ul li:nth-of-type(3) .txt { line-height: 1.8; }

.BlockB .container .text ul li .img { margin-right: 20px; width: 40px; height: 40px; background: #ea2745; border-radius: 50%; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; }

.BlockB .container .text ul li .txt { -webkit-box-flex: 1; -webkit-flex: 1; -ms-flex: 1; flex: 1; font-size: 24px; color: #666666; min-width: 0; }

.BlockA { padding-top: 100px; position: relative; padding-bottom: 100px; }

.BlockA .map { box-shadow: 4px 6px 16px 0px rgba(107, 106, 106, 0.57); }

.BlockA::after { position: absolute; width: 100%; height: 160px; background: #e2e1e1; content: ''; left: 0; bottom: 0; z-index: -1; }

.BlockA .title { font-size: 50px; color: #333333; text-align: center; }

.BlockA .desc { font-size: 18px; color: #999999; text-align: center; margin-bottom: 50px; margin-top: 20px; }

.BlockA form { width: 930px; margin: 0 auto; }

.BlockA form .flex { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; }

.BlockA form .flex .styleblock { margin-bottom: 40px; -webkit-box-flex: 1; -webkit-flex: 1; -ms-flex: 1; flex: 1; }

.BlockA form .flex .styleblock:nth-of-type(1) { padding-right: 30px; }

.BlockA form .flex .styleblock:nth-of-type(2) { padding-left: 30px; }

.BlockA form .flex input { width: 100%; height: 56px; border: 1px solid #666666; border-radius: 5px; padding-left: 20px; font-size: 20px; color: #666666; outline: none; }

.BlockA form textarea { font-size: 20px; color: #666666; border: 1px solid #666666; border-radius: 5px; width: 100%; outline: none; padding-left: 20px; padding-top: 10px; height: 175px; }

.BlockA form .submit { margin-top: 30px; margin-bottom: 115px; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; }

.BlockA form .submit input { background-image: url(../images/6b6b5e46d59af4711265653449495c93.png); background-repeat: no-repeat; background-position: center center; background-size: cover; width: 595px; height: 68px; outline: none; border: 0; font-size: 32px; padding-bottom: 10px; color: #ffffff; letter-spacing: 10px; }

@media (max-width: 1199px) { .BlockB .container { -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; }
  .BlockA form { width: 100%; } }

@media (max-width: 575px) { .BlockD .pongetitle { margin-bottom: 20px; font-size: 18px; padding-bottom: 5px; }
  .BlockD .pongetitle::after { height: 1px; }
  .BlockD { padding-bottom: 30px; }
  .BlockB { padding: 30px 0; }
  .BlockB .container .text .title { margin-bottom: 20px; font-size: 18px; }
  .BlockB .container .text ul li .txt { font-size: 16px; }
  .BlockB .container .text ul li { margin-bottom: 10px; }
  .BlockB .container .text ul li .txt { line-height: 2.5; }
  .BlockB .container .text { padding-left: 0; }
  .BlockA { padding-top: 30px; padding-bottom: 30px; }
  .BlockA .title { font-size: 18px; }
  .BlockA .desc { font-size: 16px; margin-bottom: 20px; }
  .BlockA form .flex .styleblock:nth-of-type(2) { padding-left: 5px; }
  .BlockA form .flex .styleblock:nth-of-type(1) { padding-right: 5px; }
  .BlockA form .flex .styleblock { margin-bottom: 10px; }
  .BlockA form .flex .styleblock input { font-size: 14px; height: auto; padding: 10px 0; padding-left: 10px; }
  .BlockA form textarea { font-size: 14px; padding-left: 10px; }
  .BlockA form .submit input { width: 100%; height: auto; font-size: 14px; padding: 10px 0; }
  .BlockA form .submit { margin-bottom: 30px; margin-top: 20px; } }

