﻿@charset "UTF-8";
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}
.br_m{
  display: none;
}

@-webkit-keyframes bganim {
  from {
    background-position: 0px;
  }
  to {
    background-position: 25px;
  }
}
@keyframes bganim {
  from {
    background-position: 0px;
  }
  to {
    background-position: 25px;
  }
}
::-moz-selection {
  background: #777;
  color: #fff;
}
::selection {
  background: #777;
  color: #fff;
}

::-moz-selection {
  background: #777;
  color: #fff;
}

img::-moz-selection {
  background: transparent;
}

img::selection {
  background: transparent;
}

img::-moz-selection {
  background: transparent;
}

input[type="text"]::-webkit-input-placeholder {
  font-size: 1.2rem;
  color: #b4b4b4;
}
input[type="text"]:-moz-input-placeholder {
  font-size: 1.2rem;
  color: #b4b4b4;
}
input[type="text"]:-ms-input-placeholder {
  font-size: 1.2rem;
  color: #b4b4b4;
}

* {
  -webkit-tap-highlight-color: transparent;
  box-sizing: border-box;
}

._mbi{
  display: none;
}

html, body {
  color: #000;
  height: 100%;
  -webkit-text-size-adjust: none;
  -webkit-text-size-adjust: 100%;
  font-size: 15px;
  letter-spacing: 1px;
  font-family: Arial, "Noto Sans TC", "儷黑 Pro", "LiHei Pro", "微軟正黑體", "Microsoft JhengHei", sans-serif;
}
.img-x  img {
  padding-bottom: 130px;
}
.desktop body.over {
  overflow: hidden;
  padding-right: 17px;
}
.desktop body.over #request_fixed {
  right: 17px;
}
.desktop body.over #back_to_top {
  right: 29px;
}

a {
  color: inherit;
  text-decoration: none;
}

#nav_ch {
  display: none;
}

#request_ch {
  display: none;
}
#request_ch:checked ~ #wrapper #request_fixed {
  z-index: 99;
  -ms-transform: translateX(0);
  -webkit-transform: translateX(0);
  transform: translateX(0);
}
#request_ch:checked ~ #wrapper #request_fixed .request_bt li label {
  background: -webkit-linear-gradient(bottom left, transparent 5%, #dc164b 0);
}
#request_ch:checked ~ #wrapper #mask {
  height: 100%;
  opacity: 1;
}

#root {
  padding-top: 20px;
}
#root.gray {
  background: #f9f9f9;
}
#root ol {
  position: relative;
  width: 90%;
  max-width: 1045px;
  margin: 0 auto;
  font-size: 0;
  text-align: right;
  padding-bottom: 1px;
}
#root ol li {
  font-size: 1rem;
  display: inline-block;
  vertical-align: middle;
  color: #b4b4b4;
}
#root ol li:after {
  display: inline-block;
  content: ">";
  margin: 0 5px;
}
#root ol li.sp {
  position: absolute;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  height: 24px;
  line-height: 24px;
  left: 0;
  top: 50%;
  width: 50%;
  max-width: 250px;
  font-size: 1.2rem;
  color: #575757;
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
#root ol li.sp select {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 1.2rem;
  margin-left: 10px;
  padding: 0 5px;
  background: url(../images/form_icon_a.png) no-repeat 95% center;
  background-size: 12px auto;
  color: #575757;
  border: 1px solid #575757;
  border-radius: 0;
}
#root ol li.sp:after {
  display: none;
}
#root ol li:last-of-type:after {
  display: none;
}
#root ol li:last-of-type a {
  text-decoration: none;
}
#root ol li:last-of-type a:hover {
  color: #b4b4b4;
}
#root ol li a {
  text-decoration: underline;
}
#root ol li a:hover {
  color: #dc164b;
}

#back_to_top {
  cursor: pointer;
  display: none;
  position: fixed;
  bottom: 0;
  right: 12px;
  width: 30px;
  height: 32px;
  background: url("../images/back_to_top.png") no-repeat center #000;
  background-size: 20px auto;
  z-index: 97;
}

.pageh1{
  text-align: center;
  font-size: 1.5rem;
  margin-bottom: 2.25rem;
  font-weight: 700;
  line-height: 1.5;
}

.bottomh1{
  text-align: center;
  line-height: 1.5;
  color: #888;
}

.bottomh1._pd{
  padding: 20px 0;
}

#request_fixed {
  position: fixed;
  right: 0;
  top: 220px;
  width: 300px;
  z-index: 97;
  -ms-transform: translateX(100%);
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
  transition: -webkit-transform 0.5s;
  transition: transform 0.5s;
  transition: transform 0.5s, -webkit-transform 0.5s;
}
#request_fixed input[type="radio"], #request_fixed input[type="checkbox"] {
  display: none;
}
#request_fixed input[type="radio"] + label, #request_fixed input[type="checkbox"] + label {
  display: inline-block;
  font-size: 1.2rem;
  line-height: 30px;
  cursor: pointer;
}
#request_fixed input[type="radio"] + label:last-of-type, #request_fixed input[type="checkbox"] + label:last-of-type {
  margin-left: 10%;
}
#request_fixed input[type="radio"] + label o, #request_fixed input[type="checkbox"] + label o {
  display: inline-block;
  width: 1rem;
  height: 1rem;
  margin-right: 10px;
  border: #fff 2px solid;
  background: #fff;
  vertical-align: baseline;
  box-shadow: 0 0 0 1px #b4b4b4;
  border-radius: 100%;
}
#request_fixed input[type="radio"]:checked + label o, #request_fixed input[type="checkbox"]:checked + label o {
  background: #dc164b;
}
#request_fixed #request_ck + label {
  position: relative;
  color: #888;
  font-size: 1rem;
  line-height: 1.3;
  margin: 0 10px;
  padding-left: 1.5rem;
  margin-bottom: 2rem;
}
#request_fixed #request_ck + label a {
  text-decoration: underline;
  color: #208cd0;
}
#request_fixed #request_ck + label o {
  position: absolute;
  left: 0;
  top: 3px;
  width: 1rem;
  height: 1rem;
  margin: 0;
}
#request_fixed .request_bt {
  font-size: 0;
  position: absolute;
  left: 0;
  top: 0;
  -ms-transform: translateX(-100%);
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
}
#request_fixed .request_bt li {
  font-size: 1.4rem;
  line-height: 1.3;
  display: block;
  width: 100px;
  color: #fff;
  text-align: center;
}
#request_fixed .request_bt li label, #request_fixed .request_bt li a {
  position: relative;
  cursor: pointer;
  display: block;
  width: 100%;
  height: 100%;
  padding: 15px 20px 30px 20px;
  background: linear-gradient(45deg, rgba(0, 0, 0, 0) 5%, #dc164b 0%);
  transition: background 0.5s;
}
#request_fixed .request_bt li label:hover, #request_fixed .request_bt li a:hover {
  background: linear-gradient(45deg, rgba(0, 0, 0, 0) 5%, #9f052e 0%);
}
#request_fixed .request_bt li label:after, #request_fixed .request_bt li a:after {
  content: "";
  display: block;
  position: absolute;
  width: 10px;
  height: 10px;
  bottom: 0;
  left: 0;
  background: linear-gradient(to top right, rgba(0, 0, 0, 0) 49%, #fe7495 0%);
}
#request_fixed .request_bt li i {
  position: absolute;
  width: 58px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  left: 50%;
  bottom: 0;
  margin-left: -29px;
  -ms-transform: translateY(60%);
  -webkit-transform: translateY(60%);
  transform: translateY(60%);
}
#request_fixed .request_bt li i:before {
  display: block;
  height: 0;
  content: "";
  margin-top: 100%;
}
#request_fixed .request_bt li:first-of-type, #request_fixed .request_bt li:nth-of-type(2) {
  display: none;
}
#request_fixed .request_bt li:last-of-type i {
  background-image: url("../images/request_bt_icon_01.png");
}
#request_fixed .request_content {
  background: #fff;
  padding: 18px 12px 2rem 12px;
  border: 1px solid #b4b4b4;
}
#request_fixed .request_content input[type='text'] {
  display: block;
  width: 100%;
  height: 100%;
  padding: 2px 5px;
  font-size: 1.2rem;
  border: 1px solid #b4b4b4;
}
#request_fixed .request_content input[type='text']::-webkit-input-placeholder {
  font-size: 1rem;
}
#request_fixed .request_content input[type='text']:-moz-input-placeholder {
  font-size: 1rem;
}
#request_fixed .request_content input[type='text']:-ms-input-placeholder {
  font-size: 1rem;
}
#request_fixed .request_content h4 {
  text-align: center;
  font-size: 1.4rem;
  color: #dc164b;
  padding: 0 10px 10px 10px;
  margin-bottom: 15px;
  border-bottom: 1px solid #575757;
}
#request_fixed .request_content h4 b {
  font-weight: bold;
  margin-right: 8px;
}
#request_fixed .request_content ul {
  padding: 0 10px;
  margin-bottom: 1.4rem;
}
#request_fixed .request_content ul li {
  position: relative;
  margin-bottom: 10px;
  height: 30px;
  padding-left: 55px;
  font-size: 0;
}
#request_fixed .request_content ul li:before {
  position: absolute;
  content: "";
  line-height: 30px;
  display: block;
  height: 100%;
  top: 0;
  left: 0;
  font-size: 1.2rem;
}
#request_fixed .request_content ul li:nth-of-type(1):before {
  content: "姓 名";
}
#request_fixed .request_content ul li:nth-of-type(2):before {
  content: "性 別";
}
#request_fixed .request_content ul li:nth-of-type(3):before {
  content: "手 機";
}
#request_fixed .request_content button {
  position: relative;
  display: block;
  cursor: pointer;
  padding: 5px 30px 5px 15px;
  font-size: 1.2rem;
  color: #fff;
  border: none;
  background: #dc164b;
  margin: 0 auto;
  transition: background 0.3s;
}
#request_fixed .request_content button:hover {
  background: #9f052e;
}
#request_fixed .request_content button:after {
  position: absolute;
  display: block;
  content: "";
  width: 0;
  height: 0;
  top: 50%;
  right: 10px;
  margin-top: -5px;
  border-style: solid;
  border-width: 5px 0 5px 10px;
  border-color: transparent transparent transparent #ffffff;
}

#popup {
  position: fixed;
  display: none;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 99;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  background: rgba(0, 0, 0, 0.8);
}
#popup .close {
  cursor: pointer;
  position: absolute;
  width: 40px;
  top: 0;
  right: 0;
  background: url("../images/popup_close.png") center no-repeat;
  background-size: 100% auto;
  z-index: 5;
  -ms-transform: translate(50%, -50%);
  -webkit-transform: translate(50%, -50%);
  transform: translate(50%, -50%);
}
#popup .close:before {
  display: block;
  height: 0;
  content: "";
  margin-top: 100%;
}
#popup > div {
  position: relative;
  display: none;
  margin: 170px auto 100px auto;
}
#popup > div img {
  display: block;
  width: 100%;
  height: auto;
}
#popup > div img.pc {
  display: block;
}
#popup > div img.mob {
  display: none;
}
#popup #alert_msg {
  width: 85%;
  max-width: 400px;
}
#popup #alert_msg h6 {
  padding: 8px 15px 5px 15px;
  font-size: 2.6rem;
  color: #fff;
  font-weight: bold;
  background: #dc164b;
  border-radius: 8px 8px 0 0;
}
#popup #alert_msg .text {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 15px;
  border: 2px solid #dc164b;
  font-size: 1.4rem;
  line-height: 1.6;
  background: url("../images/idle_bg_1.png") #fff;
  border-radius: 0 0 8px 8px;
}
#popup #alert_msg .text p {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
#popup #alert_msg .text .icon {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: 40%;
  margin-top: -50px;
}
#popup #alert_msg .text .icon img {
  display: block;
  width: 100%;
  height: auto;
}
#popup #quick_entry {
  width: 100%;
  max-width: 1100px;
  background: #fff;
  padding-bottom: 20px;
}
#popup #quick_entry .close {
  display: none;
}
#popup #quick_entry dl dd {
  padding: 20px;
  display: none;
}
#popup #quick_entry h6 {
  position: absolute;
  font-size: 1.4rem;
  font-weight: bold;
  top: 0;
  left: 5%;
  color: #fff;
  padding: 10px 30px;
  background: linear-gradient(135deg, rgba(0, 0, 0, 0) 5%, #87b9ad 0%);
  -ms-transform: translateY(-100%);
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
}
#popup #quick_entry h6:after {
  content: "";
  display: block;
  position: absolute;
  width: 16px;
  height: 16px;
  top: 0;
  left: 0;
  background: linear-gradient(135deg, rgba(0, 0, 0, 0) 49%, #aae7d8 0%);
}
#popup #quick_entry > img {
  padding: 20px;
}
#popup #quick_entry ul {
  text-align: center;
  font-size: 0;
}
#popup #quick_entry ul li {
  display: inline-block;
  width: 30%;
  max-width: 260px;
  margin: 0 1%;
}
#popup #quick_entry ul li a {
  display: block;
}
#popup #idle {
  padding-bottom: 1px;
  width: 85%;
  max-width: 870px;
  background: url("../images/idle_bg.png") #fff;
}
#popup #idle .slide {
  position: relative;
  overflow: hidden;
  width: calc(100% - 110px);
  max-width: 600px;
  margin: 30px auto;
  padding-bottom: 65px;
}
#popup #idle .slide ul.slides {
  white-space: nowrap;
  font-size: 0;
}
#popup #idle .slide ul.slides li {
  display: inline-block;
  white-space: normal;
  opacity: 0;
  transition: opacity 0.3s;
}
#popup #idle .slide ul.slides li .con {
  position: relative;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 2% 28px 2%;
}
#popup #idle .slide ul.slides li .con > img {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: 36%;
  max-width: 202px;
  margin-right: 15px;
}
#popup #idle .slide ul.slides li .con .text {
  font-size: 1.4rem;
  line-height: 1.6;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
#popup #idle .slide ul.slides li .con .text h6 {
  font-size: 2.1rem;
  font-weight: bold;
  margin-bottom: 0.8rem;
}
#popup #idle .slide ul.slides li .con .text a {
  position: absolute;
  display: block;
  background: #dc164b;
  color: #fff;
  font-size: 1rem;
  padding: 2px 30px;
  bottom: 0;
  border-radius: 5px;
}
#popup #idle .slide ul.flex-direction-nav li {
  position: absolute;
  display: block;
  width: 51px;
  height: 51px;
  top: 50%;
  overflow: hidden;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% auto;
  text-indent: -9999px;
}
#popup #idle .slide ul.flex-direction-nav li a {
  display: block;
  width: 100%;
  height: 100%;
}
#popup #idle .slide ul.flex-direction-nav li.flex-nav-prev {
  left: 0;
  background-image: url("../images/idle_prev.png");
  -ms-transform: translate(-100%, -60%);
  -webkit-transform: translate(-100%, -60%);
  transform: translate(-100%, -60%);
}
#popup #idle .slide ul.flex-direction-nav li.flex-nav-next {
  right: 0;
  background-image: url("../images/idle_next.png");
  -ms-transform: translate(100%, -60%);
  -webkit-transform: translate(100%, -60%);
  transform: translate(100%, -60%);
}
#popup #idle .slide ol.flex-control-nav {
  position: absolute;
  display: none;
  width: 100%;
  text-align: center;
  bottom: 0;
}
#popup #idle .slide ol.flex-control-nav li {
  display: inline-block;
  width: 12px;
  height: 12px;
  margin: 0 5px;
  overflow: hidden;
  text-indent: -9999px;
}
#popup #idle .slide ol.flex-control-nav li a {
  display: block;
  width: 100%;
  height: 100%;
  background: #b4b4b4;
  border-radius: 100%;
}
#popup #idle .slide ol.flex-control-nav li a.flex-active {
  background: #dc164b;
}
#popup #milestone, #popup #focus, #popup #awards, #popup #scale {
  width: 85%;
  background: #fff;
  max-width: 800px;
  margin: 50px auto;
}
#popup #milestone img, #popup #focus img, #popup #awards img, #popup #scale img {
  display: block;
  padding: 20px;
}
#popup #milestone h2, #popup #focus h2, #popup #awards h2, #popup #scale h2 {
  padding: 20px;
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
  color: #fff;
  background: #dc164b;
}
#popup #focus input[type="radio"] {
  display: none;
}
#popup #focus img {
  position: relative;
  display: none;
}
#popup #focus p {
  display: block;
  padding: 20px 0;
  margin: 0 20px;
  font-size: 1.2rem;
  border-top: 1px solid #575757;
  color: #777;
}
#popup #focus .text {
  padding: 30px 40px 20px 40px;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
#popup #focus .text label {
  cursor: pointer;
  color: #575757;
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  font-size: 1.4rem;
  font-weight: bold;
  width: 30%;
  margin-right: 5%;
  margin-bottom: 1.5rem;
}
#popup #focus .text label:nth-of-type(3n) {
  margin-right: 0;
}
#popup #focus .text label b {
  display: inline-block;
  width: 110px;
  vertical-align: middle;
}
#popup #focus .text label span {
  display: inline-block;
  font-size: 1.2rem;
  font-weight: 300;
  color: #575757;
  vertical-align: middle;
}
#popup #focus #focus_1:checked ~ .img #img_1 {
  display: block;
}
#popup #focus #focus_1:checked ~ .text #text_1 {
  color: #dc164b;
}
#popup #focus #focus_2:checked ~ .img #img_2 {
  display: block;
}
#popup #focus #focus_2:checked ~ .text #text_2 {
  color: #dc164b;
}
#popup #focus #focus_3:checked ~ .img #img_3 {
  display: block;
}
#popup #focus #focus_3:checked ~ .text #text_3 {
  color: #dc164b;
}
#popup #focus #focus_4:checked ~ .img #img_4 {
  display: block;
}
#popup #focus #focus_4:checked ~ .text #text_4 {
  color: #dc164b;
}
#popup #focus #focus_5:checked ~ .img #img_5 {
  display: block;
}
#popup #focus #focus_5:checked ~ .text #text_5 {
  color: #dc164b;
}
#popup #focus #focus_6:checked ~ .img #img_6 {
  display: block;
}
#popup #focus #focus_6:checked ~ .text #text_6 {
  color: #dc164b;
}
#popup #focus #focus_7:checked ~ .img #img_7 {
  display: block;
}
#popup #focus #focus_7:checked ~ .text #text_7 {
  color: #dc164b;
}
#popup #focus #focus_8:checked ~ .img #img_8 {
  display: block;
}
#popup #focus #focus_8:checked ~ .text #text_8 {
  color: #dc164b;
}
#popup #focus #focus_9:checked ~ .img #img_9 {
  display: block;
}
#popup #focus #focus_9:checked ~ .text #text_9 {
  color: #dc164b;
}
#popup #focus #focus_10:checked ~ .img #img_10 {
  display: block;
}
#popup #focus #focus_10:checked ~ .text #text_10 {
  color: #dc164b;
}
#popup #focus #focus_11:checked ~ .img #img_11 {
  display: block;
}
#popup #focus #focus_11:checked ~ .text #text_11 {
  color: #dc164b;
}
#popup #focus #focus_12:checked ~ .img #img_12 {
  display: block;
}
#popup #focus #focus_12:checked ~ .text #text_12 {
  color: #dc164b;
}
#popup #focus #focus_13:checked ~ .img #img_13 {
  display: block;
}
#popup #focus #focus_13:checked ~ .text #text_13 {
  color: #dc164b;
}
#popup #focus #focus_14:checked ~ .img #img_14 {
  display: block;
}
#popup #focus #focus_14:checked ~ .text #text_14 {
  color: #dc164b;
}
#popup #focus #focus_15:checked ~ .img #img_15 {
  display: block;
}
#popup #focus #focus_15:checked ~ .text #text_15 {
  color: #dc164b;
}
#popup #focus #focus_16:checked ~ .img #img_16 {
  display: block;
}
#popup #focus #focus_16:checked ~ .text #text_16 {
  color: #dc164b;
}
#popup #focus #focus_17:checked ~ .img #img_17 {
  display: block;
}
#popup #focus #focus_17:checked ~ .text #text_17 {
  color: #dc164b;
}
#popup #focus #focus_18:checked ~ .img #img_18 {
  display: block;
}
#popup #focus #focus_18:checked ~ .text #text_18 {
  color: #dc164b;
}

#mask {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
  opacity: 0;
  z-index: 98;
  background: rgba(0, 0, 0, 0.8);
  transition: opacity 0.5s;
}
#mask label {
  display: block;
  width: 100%;
  height: 100%;
}
#mask.pop {
  height: 100%;
  opacity: 1;
}

.red {
  color: #dc164b;
}
.red_size {
  font-size: 1.8rem;
}
.underLine{
  text-decoration: underline;
}
.boldTxt{
  font-weight: bold !important;
}
.b {
  font-weight: bold;
}

.green {
  color: #199da8;
}

.margin_c {
  margin: 0 auto;
}

.text_c {
  text-align: center;
}

.text_r {
  text-align: right;
}

.canscroll {
  display: block;
  margin: 0 auto;
  overflow: visible;
  -webkit-overflow-scrolling: touch;
}
.canscroll img {
  max-width: 760px;
  display: block;
  margin: 0 auto;
  margin-bottom: 3rem;
}
.canscroll img:nth-last-of-type(1), .canscroll img:nth-last-of-type(2) {
  margin-bottom: 0;
}
.canscroll img.pc {
  display: block;
}
.canscroll img.mob {
  display: none;
  width: 100%;
}
.canscroll table.style_2 {
  margin-bottom: 3rem;
}
.canscroll table.style_2.nomg{
  margin-bottom: 0 !important;
}
.canscroll table.style_2:last-of-type {
  margin-bottom: 0;
}
.canscroll.flexBarBox{
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  justify-content: flex-start;
}
.canscroll.flexBarBox div:first-child{
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  width: 2em;
  flex-shrink: 0;
  color: #fff;
  background-color: #199da8;
  padding: 5px;
  line-height: 1.35;
  text-align: center;
}
.canscroll.flexBarBox div:first-child:after{
  content: '';
  position: absolute;
  bottom: -20px; left: 50%;
  transform: translateX(-50%);
  width: 0px;
   height: 0px;
   border-style: solid;
   border-width: 20px 25px 0 25px;
   border-color: #199DA8 transparent transparent transparent;
}
.canscroll.flexBarBox div:last-child{
  flex: 1;
  margin-left: 1em;
}
.canscroll.flexBarBox div:last-child>strong{
  font-size: 1.4rem;
  color: #199da8;
  font-weight: bold;
}
.canscroll.flexBarBox div:last-child >table{
  margin: 8px 0;
}
.canscroll.flexBarBox div table .th{
  position: relative;
}
.canscroll.flexBarBox div table .th{
  background-color: #38bdc8 !important;
}
.canscroll.flexBarBox div table .th::before{
  content: '';
  position: absolute;
  left: -10px;
  top: 50%;
  transform: translateY(-50%);
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 5.5px 10px 5.5px 0;
  border-color: transparent #38bdc8 transparent transparent;
}

input, button, textarea, select {
  font-family: inherit;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
}

dl.datainput {
  width: 100%;
  font-size: 1.5rem;
  line-height: 1.5;
  margin-bottom: 2rem;
  color: #888;
}
dl.datainput dt {
  font-size: 2.25rem;
  font-weight: bold;
  margin-bottom: 1.5rem;
}
dl.datainput dd {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 1.2rem;
  padding: 5px 10px 5px 5px;
  border: 1px solid #b4b4b4;
  border-radius: 8px;
}
dl.datainput dd:last-of-type {
  margin-bottom: 0;
}
dl.datainput dd .text {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  text-align: left;
  font-size: 0;
}
dl.datainput dd .text.short {
  position: relative;
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: calc(18% + 20px);
  padding-right: 4%;
  margin-right: 4%;
}
dl.datainput dd .text.short:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  width: 0;
  height: 1.3rem;
  margin-top: -0.65rem;
  border-right: 1px solid #b4b4b4;
}
dl.datainput dd .text input[type="text"] {
  font-size: 1.5rem;
  height: 100%;
  width: 100%;
  border: none;
  color: #888;
}
dl.datainput dd .text select {
  font-size: 1.5rem;
  height: 100%;
  width: 100%;
  border: none;
  padding-right: 20px;
  color: #888;
  background: url("../images/form_icon_a.png") no-repeat center right;
  background-size: 15px auto;
  padding-right: 0\0;
  background: none\0;
}
dl.datainput dd .text input[type="radio"] {
  display: none;
}
dl.datainput dd .text input[type="radio"] + label {
  font-size: 1.5rem;
  cursor: pointer;
}
dl.datainput dd .text input[type="radio"] + label:last-of-type {
  margin-left: 10%;
}
dl.datainput dd .text input[type="radio"] + label o {
  display: inline-block;
  width: 1.2rem;
  height: 1.2rem;
  margin-right: 10px;
  border: #fff 2px solid;
  background: #fff;
  vertical-align: baseline;
  box-shadow: 0 0 0 1px #b4b4b4;
  border-radius: 100%;
}
dl.datainput dd .text input[type="radio"]:checked + label o {
  background: #dc164b;
}
dl.datainput dd i {
  position: relative;
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  text-align: center;
  width: 90px;
  font-weight: bold;
  margin-right: 10px;
}
dl.datainput dd i:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  width: 0;
  height: 1.3rem;
  margin-top: -0.65rem;
  border-right: 1px solid #b4b4b4;
}

.chbox {
  position: relative;
  cursor: pointer;
  display: block;
  font-size: 1rem;
  line-height: 1.3;
  padding-left: 2rem;
  margin-bottom: 2rem;
  text-align: left;
  color: #888;
}
.chbox a {
  text-decoration: underline;
  color: #208cd0;
}
.chbox input[type="checkbox"] {
  display: none;
}
.chbox input[type="checkbox"] + o {
  position: absolute;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  top: -2px;
  left: 0;
  border: #fff 2px solid;
  background: #fff;
  box-shadow: 0 0 0 1px #b4b4b4;
  border-radius: 100%;
}
.chbox input[type="checkbox"]:checked + o {
  background: #dc164b;
}

#wrapper {
  position: relative;
  overflow-x: hidden;
}
#wrapper.ofh {
  height: 100%;
  overflow: hidden;
}

#content {
  position: relative;
  margin: 0 auto;
  box-shadow: 0 -5px 5px rgba(0, 0, 0, 0.1);
}
#content .content {
  width: 90%;
  max-width: 1045px;
  margin: 0 auto;
  padding: 2.6rem 0 4rem 0;
}
#content .content.only_t {
  padding: 2.6rem 0 0 0;
}
#content .content.only_b {
  padding: 0 0 2.6rem 0;
}

header {
  position: relative;
  width: 100%;
  color: #fff;
  height: 180px;
  background-color: #dc164b;
}
header .content {
  position: relative;
  max-width: 1100px;
  height: 100%;
  margin: 0 auto;
  padding-top: 50px;
  text-align: right;
}
header .content .message {
  position: absolute;
  text-align: left;
  color: #000;
  display: block;
  bottom: 10px;
  right: 30px;
  width: 445px;
  padding: 10px;
  background: #ffc619;
  z-index: 1;
  -ms-transform: translateY(-100%);
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
}
header .content .message i {
  padding: 0 10px 0 25px;
  font-size: 1.3rem;
  font-weight: bold;
  border-right: 1px #c79f25 solid;
  background: url("../images/message_icon.png") no-repeat left center;
  background-size: auto 100%;
}
header .content .message .message_content {
  position: absolute;
  height: 19px;
  left: 105px;
  right: 10px;
  top: 8px;
  overflow: hidden;
}
header .content .message .message_content ul {
  position: absolute;
  display: block;
  width: 100%;
  top: 0;
  left: 0;
}
header .content .message .message_content ul li {
  display: block;
  height: 19px;
  line-height: 19px;
}
header .content .message .message_content ul li span, header .content .message .message_content ul li small {
  display: inline-block;
  vertical-align: middle;
}
header #logo {
  position: absolute;
  display: block;
  width: 150px;
  background: url("../images/logo.png") no-repeat top center;
  background-size: 100% auto;
  top: 30px;
  left: 10px;
}
header #logo:before {
  display: block;
  height: 0;
  content: "";
  margin-top: 48%;
}
header #nav_mb {
  display: none;
  position: absolute;
  width: 40px;
  height: 40px;
  top: 50%;
  right: 3%;
  margin-top: -20px;
}
header #nav_mb i, header #nav_mb o, header #nav_mb u {
  position: absolute;
  display: block;
  left: 0;
  height: 2px;
  background: #fff;
  opacity: 1;
  -ms-transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  -moz-transition: width 0.2s 0.4s, top 0.2s 0.2s, opacity 0.1s 0.2s, -moz-transform 0.2s;
  -o-transition: width 0.2s 0.4s, top 0.2s 0.2s, opacity 0.1s 0.2s, -o-transform 0.2s;
  -webkit-transition: width 0.2s, top 0.2s, opacity 0.1s, -webkit-transform 0.2s;
  -webkit-transition-delay: 0.4s, 0.2s, 0.2s, 0s;
  transition: width 0.2s 0.4s, top 0.2s 0.2s, opacity 0.1s 0.2s, -webkit-transform 0.2s;
  transition: width 0.2s 0.4s, top 0.2s 0.2s, opacity 0.1s 0.2s, transform 0.2s;
  transition: width 0.2s 0.4s, top 0.2s 0.2s, opacity 0.1s 0.2s, transform 0.2s, -webkit-transform 0.2s;
}
header #nav_mb i {
  top: 8px;
  width: 100%;
}
header #nav_mb o {
  top: 19px;
  width: 100%;
}
header #nav_mb u {
  top: 30px;
  width: 100%;
}
header #nav {
  display: inline-block;
  vertical-align: middle;
  font-size: 0;
  margin-right: 10px;
}
header #nav li {
  display: inline-block;
  text-align: center;
  margin-right: 4px;
  min-width: 64px;
  height: 30px;
  line-height: 30px;
  font-size: 1.1rem;
  vertical-align: middle;
  transition: background-color 0.3s;
}
header #nav li input[type="checkbox"] {
  display: none;
}
header #nav li:nth-last-of-type(2) {
  min-width: auto;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url("../images/nav_fb.png");
}
header #nav li:nth-last-of-type(2) a {
  width: 30px;
  padding: 0;
}
header #nav li:nth-last-of-type(2) a:before {
  display: block;
  height: 0;
  content: "";
  margin-top: 100%;
}
header #nav li:nth-last-of-type(1) {
  min-width: auto;
  margin-right: 0;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url("../images/nav_youtube.png");
}
header #nav li:nth-last-of-type(1) a {
  width: 30px;
  padding: 0;
}
header #nav li:nth-last-of-type(1) a:before {
  display: block;
  height: 0;
  content: "";
  margin-top: 100%;
}
header #nav li:after {
  display: inline-block;
  content: "";
  pointer-events: none;
  position: relative;
  width: 0;
  height: 10px;
  margin-left: 8px;
  border-right: 1px solid #fff;
}
header #nav li:nth-last-of-type(-n+3):after {
  display: none;
}
header #nav li:hover .subnav {
  height: auto;
  opacity: 1;
  padding-top: 10px;
  border-bottom: 1px solid #bfbfbf;
}
header #nav li:hover .subnav_arrow {
  opacity: 1;
  border-width: 0 10px 10px 10px;
}
header #nav li > a, header #nav li > label {
  position: relative;
  display: inline-block;
  padding: 0 5px;
}
header #nav li .subnav_arrow {
  position: absolute;
  width: 0;
  height: 0;
  left: 50%;
  bottom: 0;
  border-style: solid;
  border-width: 0;
  border-color: transparent transparent #333 transparent;
  opacity: 0;
  -ms-transform: translate(-50%, 100%);
  -webkit-transform: translate(-50%, 100%);
  transform: translate(-50%, 100%);
  transition: opacity 0.3s;
}
header #nav li .subnav {
  position: absolute;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  /* right: 2%;*/
  width: 30%;
  max-width: 315px;
  height: 0;
  opacity: 0;
  text-align: left;
  overflow: hidden;
  z-index: 99;
  transition: opacity 0.3s;
}
header #nav li .subnav.nav_s {
    width: 200px !important;
    right: 2%;
}
header #nav li .subnav dl {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  border-right: 1px solid #f0f0f0;
  background: #fff;
}
header #nav li .subnav dl:last-of-type {
  border-right: 1px solid #bfbfbf;
}
header #nav li .subnav dl:last-of-type dt {
  position: relative;
}
header #nav li .subnav dl:last-of-type dt:after {
  content: "";
  position: absolute;
  height: 100%;
  width: 0;
  right: -1px;
  top: 0;
  border-left: 1px solid #333;
}
/* header #nav li .subnav dl:first-of-type {
  border-left: 1px solid #bfbfbf;
}
header #nav li .subnav dl:first-of-type dt {
  position: relative;
}
header #nav li .subnav dl:first-of-type dt:before {
  content: "";
  position: absolute;
  height: 100%;
  width: 0;
  left: -1px;
  top: 0;
  border-left: 1px solid #333;
} */
header #nav li .subnav dl dt {
  position: relative;
  display: block;
  background: #333;
  color: #fff;
  line-height: 1;
}
header #nav li .subnav dl dt label {
  display: block;
  padding: 10px 20px;
}
header #nav li .subnav dl dt img {
  pointer-events: none;
  position: relative;
  display: inline-block;
  vertical-align: sub;
  margin-right: 8px;
}
header #nav li .subnav dl dd {
  background: #fff;
  color: #575757;
  margin: 0 12px;
  border-bottom: 1px solid #f0f0f0;
  transition: all 0.3s;
}
header #nav li .subnav dl dd:hover {
  color: #dc164b;
}
header #nav li .subnav dl dd.champion {
  color: #dc164b;
  font-weight:bold;
}
header #nav li .subnav dl dd.champion:hover {
  color: #dc164b;
}
header #nav li .subnav dl dd:last-child {
  border-bottom: none;
}
header #nav li .subnav dl a {
  display: block;
  line-height: 1.3;
  padding: 12px 8px;
}
header #nav li .subnav dl dd.champion a img {
    vertical-align: bottom;
}

footer {
  position: relative;
  background: #333;
  color: #b4b4b4;
}
footer a {
  transition: color 0.3s;
}
footer a:hover {
  color: #eee;
}
footer ul {
  position: relative;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  padding: 5rem 50px 5rem 20px;
}
footer ul > li {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
footer ul > li.comodo_secure {
  position: absolute;
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  right: 20px;
  bottom: 50px;
  z-index: 5;
}
footer ul > li input[id*="footer_ck_"] {
  display: none;
}
footer ul > li dl {
  font-size: 1rem;
  line-height: 1.3;
  margin-bottom: 20px;
}
footer ul > li dl:last-of-type {
  margin-bottom: 0;
}
footer ul > li dl dt, footer ul > li dl dd {
  position: relative;
  padding: 1px 0;
}
footer ul > li dl dt {
  color: #fff;
}
footer ul > li dl dd {
  padding-left: 10px;
}
footer ul > li dl dd:after {
  content: "-";
  display: block;
  position: absolute;
  left: 0;
  top: 1px;
}
footer p {
  padding: 10px 0;
  font-size: 0.86rem;
  line-height: 1.3;
  text-align: center;
  color: #333;
  background: #f5f5f5;
}
footer p br {
  display: none;
}
footer p a {
  display: inline-block;
  margin-right: 5px;
  padding-right: 5px;
}
footer p a:hover {
  color: #dc164b;
}
a.ft_map{
  padding: 10px 10px 10px 0;
}
#index_top_banner {
  width: 100%;
  background: url("../images/bg.png"), url("../images/index_slide_bg.gif") bottom center no-repeat #e6e6e6;
  background-size: auto auto, auto 100%;
}
#index_top_banner .slide_content {
  opacity: 0;
}
#index_top_banner #slide {
  position: relative;
  margin: -50px auto 0 auto;
  max-width: 1100px;
  background: #fff;
  z-index: 1;
}
#index_top_banner #slide:after, #index_top_banner #slide:before {
  display: block;
  content: "";
  position: absolute;
  width: 90%;
  height: 1px;
  left: 50%;
  z-index: 2;
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
#index_top_banner #slide:before {
  top: 0;
  width: 98%;
  box-shadow: 0 0 10px 1px rgba(0, 0, 0, 0.3);
}
#index_top_banner #slide:after {
  bottom: 0;
  box-shadow: 0 0 50px 20px rgba(0, 0, 0, 0.2);
}
#index_top_banner #slide > button {
  position: absolute;
  cursor: pointer;
  width: 40px;
  top: 50%;
  border: none;
  background-color: rgba(0, 0, 0, 0.3);
  background-size: 60% auto;
  background-position: center center;
  background-repeat: no-repeat;
}
#index_top_banner #slide > button:before {
  display: block;
  height: 0;
  content: "";
  margin-top: 300%;
}
#index_top_banner #slide > button:first-of-type {
  left: 0;
  background-image: url("../images/slide_prev_m.png");
  -ms-transform: translate(-100%, -50%);
  -webkit-transform: translate(-100%, -50%);
  transform: translate(-100%, -50%);
}
#index_top_banner #slide > button:last-of-type {
  right: 0;
  background-image: url("../images/slide_next_m.png");
  -ms-transform: translate(100%, -50%);
  -webkit-transform: translate(100%, -50%);
  transform: translate(100%, -50%);
}
#index_top_banner #slide .message {
  position: absolute;
  display: block;
  top: 0;
  right: 30px;
  width: 420px;
  padding: 10px;
  background: #ffc619;
  z-index: 1;
  -ms-transform: translateY(-100%);
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
}
#index_top_banner #slide .message i {
  padding: 0 10px 0 25px;
  font-size: 1.3rem;
  font-weight: bold;
  border-right: 1px #c79f25 solid;
  background: url("../images/message_icon.png") no-repeat left center;
  background-size: auto 100%;
}
#index_top_banner #slide .message .message_content {
  position: absolute;
  height: 19px;
  left: 105px;
  right: 10px;
  top: 8px;
  overflow: hidden;
}
#index_top_banner #slide .message .message_content ul {
  position: absolute;
  display: block;
  width: 100%;
  top: 0;
  left: 0;
}
#index_top_banner #slide .message .message_content ul li {
  display: block;
  height: 19px;
  line-height: 19px;
}
#index_top_banner #slide .message .message_content ul li span, #index_top_banner #slide .message .message_content ul li small {
  display: inline-block;
  vertical-align: middle;
}
#index_top_banner #slide > i {
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 25px 25px 0 25px;
  border-color: #ffffff transparent transparent transparent;
  z-index: 5;
  -ms-transform: translate(-50%, 100%);
  -webkit-transform: translate(-50%, 100%);
  transform: translate(-50%, 100%);
}
#index_top_banner #slide .slide {
  position: relative;
  overflow: hidden;
  padding: 20px;
  background: #fff;
  z-index: 3;
}
#index_top_banner #slide .slide ul.slides {
  font-size: 0;
  white-space: nowrap;
}
#index_top_banner #slide .slide ul.slides > li {
  position: relative;
  display: inline-block;
  white-space: normal;
  vertical-align: top;
}
#index_top_banner #slide .flex-control-nav {
  position: absolute;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  bottom: 0;
  left: 150px;
  right: 150px;
  z-index: 2;
}
#index_top_banner #carousel {
  position: relative;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto;
  width: 95%;
  max-width: 1045px;
  margin-top: 15px;
}
#index_top_banner #carousel li {
  position: relative;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  background-position: bottom center;
  background-size: auto 100%;
  background-repeat: no-repeat;
  height: 100%;
}
#index_top_banner #carousel li:nth-of-type(2) {
  -webkit-flex: 1.5;
      -ms-flex: 1.5;
          flex: 1.5;
}
#index_top_banner #carousel li:nth-of-type(2) > div {
  cursor: auto;
  width: 90%;
  padding: 15px;
  -ms-transform: translate(-50%, 130%);
  -webkit-transform: translate(-50%, 130%);
  transform: translate(-50%, 130%);
  box-shadow: 0 8px 15px rgba(0, 0, 0, 0.3);
}
#index_top_banner #carousel li:nth-of-type(2) > div:after {
  font-size: 2rem;
}
#index_top_banner #carousel li img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  opacity: 0;
  margin: 0 auto;
  pointer-events: none;
}
#index_top_banner #carousel li > h2 {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
  text-indent: -9999px;
}
#index_top_banner #carousel li > div {
  position: absolute;
  cursor: pointer;
  bottom: 0;
  width: 80%;
  left: 50%;
  padding: 10px;
  background: #ccc;
  text-align: center;
  z-index: 5;
  border-radius: 8px;
  -ms-transform: translate(-50%, 160%);
  -webkit-transform: translate(-50%, 160%);
  transform: translate(-50%, 160%);
}
#index_top_banner #carousel li > div a {
  position: absolute;
  cursor: pointer;
  display: block;
  height: 60%;
  background-position: center top;
  background-repeat: no-repeat;
  background-size: 100% auto;
  top: 50%;
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
#index_top_banner #carousel li > div a img {
  opacity: 1;
}
#index_top_banner #carousel li > div a:first-of-type {
  left: 20px;
}
#index_top_banner #carousel li > div a:last-of-type {
  right: 20px;
}
#index_top_banner #carousel li > div:after {
  content: "";
  display: block;
  color: #fff;
  font-size: 1.4rem;
}

/* type_1友醫靠  醫療保障 */
/* type_2醫路友保 醫療保障 */
/* type_3友保心安 醫療保障 */
/* type_4醫身守護 醫療保障 */
/* type_5醫諾千金 醫療保障 */
#index_top_banner #carousel.type_1 li:nth-of-type(1),
#index_top_banner #carousel.type_2 li:nth-of-type(1),
#index_top_banner #carousel.type_3 li:nth-of-type(1),
#index_top_banner #carousel.type_4 li:nth-of-type(1),
#index_top_banner #carousel.type_5 li:nth-of-type(1) {
  background-image: url("../images/index_carousel_icon_03.png");
}
#index_top_banner #carousel.type_1 li:nth-of-type(1) div,
#index_top_banner #carousel.type_2 li:nth-of-type(1) div,
#index_top_banner #carousel.type_3 li:nth-of-type(1) div,
#index_top_banner #carousel.type_4 li:nth-of-type(1) div,
#index_top_banner #carousel.type_5 li:nth-of-type(1) div {
  background: #76c081;
}
#index_top_banner #carousel.type_1 li:nth-of-type(1) div:after,
#index_top_banner #carousel.type_2 li:nth-of-type(1) div:after,
#index_top_banner #carousel.type_3 li:nth-of-type(1) div:after,
#index_top_banner #carousel.type_4 li:nth-of-type(1) div:after,
#index_top_banner #carousel.type_5 li:nth-of-type(1) div:after {
  content: "意外保障";
}
#index_top_banner #carousel.type_1 li:nth-of-type(2),
#index_top_banner #carousel.type_2 li:nth-of-type(2),
#index_top_banner #carousel.type_3 li:nth-of-type(2),
#index_top_banner #carousel.type_4 li:nth-of-type(2),
#index_top_banner #carousel.type_5 li:nth-of-type(2) {
  background-image: url("../images/index_carousel_icon_02_h.png");
}
#index_top_banner #carousel.type_1 li:nth-of-type(2) div,
#index_top_banner #carousel.type_2 li:nth-of-type(2) div,
#index_top_banner #carousel.type_3 li:nth-of-type(2) div,
#index_top_banner #carousel.type_4 li:nth-of-type(2) div,
#index_top_banner #carousel.type_5 li:nth-of-type(2) div {
  background: #dc164b;
}
#index_top_banner #carousel.type_1 li:nth-of-type(2) div:after,
#index_top_banner #carousel.type_2 li:nth-of-type(2) div:after,
#index_top_banner #carousel.type_3 li:nth-of-type(2) div:after,
#index_top_banner #carousel.type_4 li:nth-of-type(2) div:after,
#index_top_banner #carousel.type_5 li:nth-of-type(2) div:after {
  content: "醫療保障";
}
#index_top_banner #carousel.type_1 li:nth-of-type(3),
#index_top_banner #carousel.type_2 li:nth-of-type(3),
#index_top_banner #carousel.type_3 li:nth-of-type(3),
#index_top_banner #carousel.type_4 li:nth-of-type(3),
#index_top_banner #carousel.type_5 li:nth-of-type(3){
  background-image: url("../images/index_carousel_icon_01.png");
}
#index_top_banner #carousel.type_1 li:nth-of-type(3) div,
#index_top_banner #carousel.type_2 li:nth-of-type(3) div,
#index_top_banner #carousel.type_3 li:nth-of-type(3) div,
#index_top_banner #carousel.type_4 li:nth-of-type(3) div,
#index_top_banner #carousel.type_5 li:nth-of-type(3) div {
  background: #ddc074;
}
#index_top_banner #carousel.type_1 li:nth-of-type(3) div:after,
#index_top_banner #carousel.type_2 li:nth-of-type(3) div:after,
#index_top_banner #carousel.type_3 li:nth-of-type(3) div:after,
#index_top_banner #carousel.type_4 li:nth-of-type(3) div:after,
#index_top_banner #carousel.type_5 li:nth-of-type(3) div:after{
  content: "銀髮族保障";
}


/* type_6老有所醫 銀髮族保障 */
/* type_7老當醫壯 銀髮族保障 */
/* type_8長友守護 銀髮族保障 */
#index_top_banner #carousel.type_6 li:nth-of-type(1),
#index_top_banner #carousel.type_7 li:nth-of-type(1),
#index_top_banner #carousel.type_8 li:nth-of-type(1) {
  background-image: url("../images/index_carousel_icon_02.png");
}
#index_top_banner #carousel.type_6 li:nth-of-type(1) div,
#index_top_banner #carousel.type_7 li:nth-of-type(1) div,
#index_top_banner #carousel.type_8 li:nth-of-type(1) div {
  background: #e76080;
}
#index_top_banner #carousel.type_6 li:nth-of-type(1) div:after,
#index_top_banner #carousel.type_7 li:nth-of-type(1) div:after,
#index_top_banner #carousel.type_8 li:nth-of-type(1) div:after {
  content: "醫療保障";
}
#index_top_banner #carousel.type_6 li:nth-of-type(2),
#index_top_banner #carousel.type_7 li:nth-of-type(2),
#index_top_banner #carousel.type_8 li:nth-of-type(2) {
  background-image: url("../images/index_carousel_icon_01_h.png");
}
#index_top_banner #carousel.type_6 li:nth-of-type(2) div,
#index_top_banner #carousel.type_7 li:nth-of-type(2) div,
#index_top_banner #carousel.type_8 li:nth-of-type(2) div {
  background: #d0a739;
}
#index_top_banner #carousel.type_6 li:nth-of-type(2) div:after,
#index_top_banner #carousel.type_7 li:nth-of-type(2) div:after,
#index_top_banner #carousel.type_8 li:nth-of-type(2) div:after {
  content: "銀髮族保障";
}
#index_top_banner #carousel.type_6 li:nth-of-type(3),
#index_top_banner #carousel.type_7 li:nth-of-type(3),
#index_top_banner #carousel.type_8 li:nth-of-type(3) {
  background-image: url("../images/index_carousel_icon_03.png");
}
#index_top_banner #carousel.type_6 li:nth-of-type(3) div,
#index_top_banner #carousel.type_7 li:nth-of-type(3) div,
#index_top_banner #carousel.type_8 li:nth-of-type(3) div {
  background: #75c07f;
}
#index_top_banner #carousel.type_6 li:nth-of-type(3) div:after,
#index_top_banner #carousel.type_7 li:nth-of-type(3) div:after,
#index_top_banner #carousel.type_8 li:nth-of-type(3) div:after {
  content: "意外保障";
}

/* type_9快意人生 意外保險 */
#index_top_banner #carousel.type_9 li:nth-of-type(1) {
  background-image: url("../images/index_carousel_icon_01.png");
}
#index_top_banner #carousel.type_9 li:nth-of-type(1) div {
  background: #ddc074;
}
#index_top_banner #carousel.type_9 li:nth-of-type(1) div:after {
  content: "銀髮族保障";
}
#index_top_banner #carousel.type_9 li:nth-of-type(2) {
  background-image: url("../images/index_carousel_icon_03_h.png");
}
#index_top_banner #carousel.type_9 li:nth-of-type(2) div {
  background: #3ea84c;
}
#index_top_banner #carousel.type_9 li:nth-of-type(2) div:after {
  content: "意外保障";
}
#index_top_banner #carousel.type_9 li:nth-of-type(3) {
  background-image: url("../images/index_carousel_icon_02.png");
}
#index_top_banner #carousel.type_9 li:nth-of-type(3) div {
  background: #e76080;
}
#index_top_banner #carousel.type_9 li:nth-of-type(3) div:after {
  content: "醫療保障";
}



#index_submenu .content {
  position: relative;
  padding: 30px 0 1.2% 0;
  text-align: center;
}
#index_submenu .content > p,
#index_submenu .content > h1 {
  display: block;
  width: 100%;
  max-width: 1000px;
  margin: 20px auto 0;
  text-align: center;
  line-height: 1.5;
  color: #888; }
  #index_submenu.type_1 .info,
  #index_submenu.type_2 .info,
  #index_submenu.type_3 .info,
  #index_submenu.type_4 .info,
  #index_submenu.type_5 .info {
    background-image: url("../images/index_submenu_bg_01.jpg"); }
    #index_submenu.type_1 .info a:nth-of-type(1),
    #index_submenu.type_2 .info a:nth-of-type(1),
    #index_submenu.type_3 .info a:nth-of-type(1),
    #index_submenu.type_4 .info a:nth-of-type(1),
    #index_submenu.type_5 .info a:nth-of-type(1) {
      display: block; }
  
  #index_submenu.type_6 .info,
  #index_submenu.type_7 .info,
  #index_submenu.type_8 .info {
    background-image: url("../images/index_submenu_bg_02.jpg"); }
    #index_submenu.type_6 .info a:nth-of-type(2),
    #index_submenu.type_7 .info a:nth-of-type(2),
    #index_submenu.type_8 .info a:nth-of-type(2) {
      display: block; }
  
  #index_submenu.type_9 .info {
    background-image: url("../images/index_submenu_bg_03.jpg"); }
    #index_submenu.type_9 .info a:nth-of-type(3) {
      display: block; }

#index_submenu .info {
  position: relative;
  display: inline-block;
  width: 68%;
  background-repeat: no-repeat;
  background-position: left center;
  background-size: cover;
}
#index_submenu .info:before {
  display: block;
  height: 0;
  content: "";
  margin-top: 41.6%;
}
#index_submenu .info a {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/* #index_submenu .submenu {
  position: absolute;
  bottom: 0;
  right: -2%;
  width: 36.939%;
  background: url("../images/notebook_bg.png") no-repeat top center;
  background-size: cover;
}
#index_submenu .submenu:before {
  display: block;
  height: 0;
  content: "";
  margin-top: 85.495%;
}
#index_submenu .submenu ul {
  position: absolute;
  top: 24%;
  bottom: 9%;
  left: 12%;
  right: 12%;
}
#index_submenu .submenu ul li {
  position: relative;
  cursor: pointer;
  display: inline-block;
  width: 100%;
  background-size: 100% auto;
  background-position: top center;
  background-repeat: no-repeat;
  margin-bottom: 1%;
}
#index_submenu .submenu ul li:before {
  display: block;
  height: 0;
  content: "";
  margin-top: 24.137%;
}
#index_submenu .submenu ul li a {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
#index_submenu .submenu ul li:nth-of-type(1) {
  background-image: url("../images/notebook_bt_01.png");
}
#index_submenu .submenu ul li:nth-of-type(1):hover {
  background-image: url("../images/notebook_bt_01_h.png");
}
#index_submenu .submenu ul li:nth-of-type(2) {
  background-image: url("../images/notebook_bt_02.png");
}
#index_submenu .submenu ul li:nth-of-type(2):hover {
  background-image: url("../images/notebook_bt_02_h.png");
}
#index_submenu .submenu ul li:nth-of-type(3) {
  background-image: url("../images/notebook_bt_03.png");
}
#index_submenu .submenu ul li:nth-of-type(3):hover {
  background-image: url("../images/notebook_bt_03_h.png");
} */

.slide_content {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  transition: opacity 0.5s;
}

.slide_content.award:after {
  position: absolute;
  right:15px; top:0px;
  width:119px; height: 267px;
  background:url(../images/index_slide_award.png) 0 0 no-repeat;
  content:"";
}
.slide_content.award2:after {
  position: absolute;
  right:15px; top:0px;
  width:119px; height: 267px;
  background:url(../images/index_slide_award2.png) 0 0 no-repeat;
  content:"";
}

.slide_content .img {
  position: relative;
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: 59%;
  overflow: hidden;
}
.slide_content .img img {
  position: relative;
  display: block;
  width: auto;
  height: auto;
  min-width: 100%;
  min-height: 100%;
  left: 50%;
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.slide_content .img img.pc {
  display: block;
}
.slide_content .img img.mob {
  display: none;
}

.slide_content .text {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding: 0 18px;
  color: #000;
}
.slide_content .text img {
  display: block;
  width: 100%;
  max-width: 377px;
}
.slide_content .text h3 {
  font-size: 1.75rem;
  font-weight: bold;
  line-height: 1.3;
}
.slide_content .text h3:last-of-type {
  margin-bottom: 1.5rem;
}
.slide_content .text h3.text_small {
  font-size: 1.75rem;
}
.slide_content .text h3.text_bottom{
  margin-bottom: 1.5rem;
}
.slide_content .text h3.pc{
  display: block
}
.slide_content .text h3.mob{
   display: none
}
.slide_content .text small {
  margin-top: 10px;
  display: inline-block;
  font-size: 0.8rem;
  /* padding-left: 30px; */
  color: #888;
  line-height: 1.35;
}
.slide_content .text small.annotation {
  display: inline;
}
.text_color {
  color: #000;
  font-weight: 300;
}
.slide_content .text ol > li {
  display: block;
  font-size: 1rem;
  line-height: 20px;
  padding-left: 30px;
  background: url("../images/slide_icon.png") no-repeat left top;
  background-size: 20px auto;
  margin-bottom: 10px;
}
.slide_content .text ol > li:last-of-type {
  margin-bottom: 0;
}

#index_list {
  background: #f5f5f5;
  box-shadow: 0 -5px 5px rgba(0, 0, 0, 0.1);
}
#index_list .content > p {
  display: block;
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
  text-align: center;
  line-height: 1.5;
  color: #888;
}
#index_list ul {
  width: 95%;
  margin: 0 auto;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
#index_list ul > li {
  position: relative;
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: 31%;
  margin-bottom: 2rem;
  background: #fff;
  border: 1px solid #b4b4b4;
  min-height: 350px;
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}
#index_list ul > li:nth-of-type(3n+2) {
  margin-left: 3.5%;
  margin-right: 3.5%;
}
#index_list ul > li.news {
  padding-bottom: 30px;
}
#index_list ul > li.style_3 a {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-top: 30px;
  padding-bottom: 60px;
}
#index_list ul > li.style_3 a .text {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  word-wrap: break-word;
  max-width: 180px;
}
#index_list ul > li.style_3 a .text h5 {
  font-weight: bold;
  font-size: 1.6rem;
  line-height: 1.6;
  margin-bottom: 5px;
}
#index_list ul > li.style_3 a .text small {
  font-size: 1.2rem;
  line-height: 1.6;
}
#index_list ul > li.style_2 .text {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  min-height: 150px;
  color: #575757;
  padding: 20px 10px 30px 10px;
  word-wrap: break-word;
  background: rgba(255, 255, 255, 0.85);
}
#index_list ul > li.style_2 .text h4 {
  font-weight: bold;
  font-size: 1.6rem;
  line-height: 1.6;
}
#index_list ul > li.style_2 .text p {
  font-size: 1.2rem;
  line-height: 1.6;
}
#index_list ul > li > a {
  display: block;
  width: 100%;
  height: 100%;
  padding-bottom: 30px;
}
#index_list ul > li .photo {
  display: inline-block;
  width: 100%;
  background-image: url("../images/list_news_bg.jpg");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}
#index_list ul > li .photo:before {
  display: block;
  height: 0;
  content: "";
  margin-top: 56.25%;
}
#index_list ul > li .tag {
  position: absolute;
  display: block;
  padding: 8px 10px;
  left: -10px;
  top: 10px;
  color: #fff;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1;
  background: #ffb422;
}
#index_list ul > li .more {
  position: absolute;
  display: block;
  right: 0;
  bottom: 0;
  width: auto;
  height: auto;
  padding: 5px 21px 5px 10px;
  font-size: 1rem;
  color: #767676;
  background: #eee;
  z-index: 5;
  transition: background 0.3s;
}
#index_list ul > li .more:hover {
  background: #ddd;
}
#index_list ul > li .more:after {
  position: absolute;
  content: "";
  display: block;
  width: 6px;
  height: 10px;
  top: 50%;
  right: 10px;
  margin-top: -5px;
  background: url("../images/more_icon.png") no-repeat center;
  background-size: 100% auto;
}
#index_list ul > li ol {
  padding: 10px;
  font-size: 1.2rem;
  line-height: 1.6;
}
#index_list ul > li ol > li {
  position: relative;
  display: block;
  margin-bottom: 10px;
  padding-bottom: 10px;
  padding-left: 15px;
  border-bottom: 1px dotted #b4b4b4;
}
#index_list ul > li ol > li a {
  display: block;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  transition: color 0.5s;
}
#index_list ul > li ol > li a:hover {
  color: #dc164b;
}
#index_list ul > li ol > li a:hover:before {
  background: #dc164b;
}
#index_list ul > li ol > li a:before {
  position: absolute;
  content: "";
  display: block;
  width: 3px;
  height: 3px;
  top: 12px;
  left: 5px;
  background: #000;
  transition: background 0.5s;
  border-radius: 100%;
}
#index_list ul > li dl {
  padding: 10px;
  font-size: 1.2rem;
  line-height: 1.6;
}
#index_list ul > li dl dt {
  font-size: 1.4rem;
  font-weight: bold;
  color: #dc164b;
  margin-bottom: 15px;
}
#index_list ul > li dl dd {
  position: relative;
  display: block;
  margin-bottom: 5px;
  padding-left: 15px;
  overflow: hidden;
}
#index_list ul > li dl dd:before {
  position: absolute;
  content: "";
  display: block;
  width: 3px;
  height: 3px;
  top: 12px;
  left: 5px;
  background: #000;
  border-radius: 100%;
}

/* 202401新增index保險slide及專業區塊列表 START */

.desTxt{
  position: relative;
  width: 80%;
  max-width: 655px;
  padding: 20px 25px;
  margin: 0 auto;
  padding-top: 110px;
  /* border: 1px solid #dcdcdc;
  border-radius: 20px; */
}
.desTxt p{
  position: relative;
  color: #333333;
  font-size: 24px;
  line-height: 1.35;
  font-weight: bold;
  text-align: center;
  z-index: 1;
}
/* .desTxt:after{
  content: '';
  display: block;
  position: absolute;
  bottom: -24px; left: 50%;
  transform: translateX(-50%);
  width: 30px;
  height: 25px;
  background: url('/images/triangle.png') center no-repeat;
  background-size: contain;
  z-index: 0;
} */

.desTxt ._mb{
  display: none;
}

.insurance_slidewrap, .insurance_slidewrap .insurance_slide{
  position: relative;
  width: 100%;
  max-width: 1010px;
  margin: auto;
}

.insurance_slidewrap .content{
  position: relative;
  padding-top: 0 !important;
}

.insurance_slidewrap .slickArrow{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 25px;
}

.insurance_slidewrap .prevArrow{
  left: 1.25%;

  animation-name: moveL;
  animation-duration: 1s;
  animation-iteration-count:infinite;
  transition-timing-function: linear;
  animation-direction:alternate;
}
.insurance_slidewrap .nextArrow{
  right: 1.25%;

  animation-name: moveR;
  animation-duration: 1s;
  animation-iteration-count:infinite;
  transition-timing-function: linear;
  animation-direction:alternate;
}

@keyframes moveR {
  0% { right: 1.25%; }
  40% { right: 0.25%; }
  50% { right: 0.5%; }
  50% { right: 1.25%; }
}

@keyframes moveL {
  0% { left: 1.25%; }
  40% { left: 0.25%; }
  50% { left: 0.5%; }
  50% { left: 1.25%; }
}

.insurance_slidewrap, .insurance_slidewrap .insurance_slide .slick-track{
  display: flex;
  align-items: stretch;
}

.insurance_slidewrap .insurance_slide a{
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  width: 25%;
  max-width: 252px;
  height: auto;
  margin: 0 6px;
  padding: 25px 18px;
  border: 1px solid #dcdcdc;
  border-radius: 18px;
}

.insurance_slidewrap .insurance_slide a:hover >div{
 background-color: #e42a43;
}

.insurance_slidewrap .insurance_slide a >strong{
  font-size: 22px;
  color: #000;
  font-weight: bold;
}

.insurance_slidewrap .insurance_slide a >p{
  width: 100%;
  font-size: 16px;
  font-weight: 400;
  color: #464646;
  line-height: 1.35;
  text-align: left;
  margin-bottom: auto;
}

.insurance_slidewrap .insurance_slide a > img{
  position: relative;
  width: 58%;
  max-width: 151px;
  margin: 10px auto 5px;
}

.insurance_slidewrap .insurance_slide a >div{
  width: 80%;
  /* max-width: 100px; */
  font-size: 16px;
  font-weight: 500;
  color: #fff;
  background-color: #ff5b71;
  padding: 12px;
  margin-top: 10px;
  line-height: 1;
  border-radius: 100px;
  text-align: center;
  transition: all 0.2s;
}

@media only screen and (max-width: 1045px) {
  .desTxt{
    width: 90%;
    /* max-width: 100%; */
    padding: 11vw 4vw 2vw !important;
    /* border-radius: 2vw; */
  }
  .desTxt p{
    font-size: 2.15vw;
  }

  /* .desTxt:after{
    bottom: -4.15vw;
    width: 5vw;
    height: 4.5vw;
  } */

  .insurance_slidewrap .content{
    width: 100% !important;
    padding-top: 0 !important;
  }

}

@media only screen and (max-width: 901px) {
  .desTxt{
    padding: 14vw 4vw 2vw !important;
  }
  .desTxt p{
    font-size: 2.8vw;
  }
  .insurance_slidewrap{
    padding-bottom: 3rem;
  }
  .insurance_slidewrap .insurance_slide a{
    max-width: 100%;
    padding: 7vw 3vw 5.5vw 14vw;
  }
  .insurance_slidewrap .insurance_slide a > img{
    position: absolute;
    left: 3.5%;
    top: 17%;
    width: 34%;
    margin: 0;
  }
  .insurance_slidewrap .insurance_slide a >strong,
  .insurance_slidewrap .insurance_slide a >p{
    align-self: flex-start;
    padding-left: 27%;
  }

  .insurance_slidewrap .insurance_slide a >strong{
    margin-bottom: 1.25vw;
    font-size: 3.25vw;
  }

  .insurance_slidewrap .insurance_slide a >p{
    font-size: 2.25vw;
  }
  
  .insurance_slidewrap .insurance_slide a >p{
    margin-bottom: 1vw;
  }

  .insurance_slidewrap .insurance_slide a >div{
    width: 40%;
    max-width: 100%;
    margin-top: 1vw;
    font-size: 2.5vw;
    margin-top: auto;
  }
}

@media only screen and (max-width: 520px) {
  ._mbi{
    display: inline;
  }
  .pageh1{
    font-size: 2rem;
    margin-bottom: 1.85rem;
    padding: 0 4vw;
  }
  .bottomh1{
    font-size: 1.35rem;
    padding-top: 2vw;
  }
  .desTxt{
    width: 92%;
    padding: 22vw 0 4vw !important;
  }

  .desTxt p{
    font-size: 4.35vw;
  }

  .desTxt ._mb{
    display: inline;
  }

  /* .desTxt:after{
    bottom: -4.15vw;
    width: 5vw;
    height: 4.5vw;
  } */

  .insurance_slidewrap .content{
    width: 100% !important;
    padding: 0 !important;
  }

  .insurance_slidewrap .insurance_slide a >strong{
    margin-bottom: 2vw;
    font-size: 5.5vw;
  }

  .insurance_slidewrap .insurance_slide a >p{
    font-size: 3.85vw;
  }

  .insurance_slidewrap .insurance_slide a >div{
    width: 48%;
    margin-top: 1vw;
    font-size: 4.25vw;
  }

  .chbox{
    font-size: 1.35rem;
  }

  .canscroll.flexBarBox div:first-child:after{
    bottom: -4vw;
    border-width: 4vw 5vw 0 5vw;
  }

}

/* 202401新增index保險slide及專業區塊列表 END */

small.annotation {
  font-size: 1rem;
  font-weight: normal;
  font-style: normal;
  color: #777;
}

small.additional-size {
  font-size: 1rem;
  /* font-weight: normal; */
}
h4.section_title {
  font-size: 2.6rem;
  font-weight: bold;
  border-bottom: 1px solid #575757;
}
h4.section_title img {
  display: inline-block;
  vertical-align: middle;
}

h2.section_title_new {
  font-size: 2.6rem;
  font-weight: bold;
  border-bottom: 1px solid #575757;
}

h2.section_title_new img {
  display: inline-block;
  vertical-align: middle;
}

h2.section_title {
  font-size: 1.8rem;
  font-weight: bold;
  color: #fff;
  line-height: 1.3;
  margin-top: 3.5rem;
  margin-bottom: 2rem;
}
h2.section_title span {
  display: inline-block;
  background: #dc164b;
  padding: 5px 15px;
  border-radius: 8px;
}
.section_content{
  margin-bottom: 2em;
}
.section_content_title{
  font-size: 24px;
  font-weight: bold;
  text-align: left;
  margin-top: 2em;
  margin-bottom: 1em;
  line-height: 1.4;
}
.section_content_title span{
  display: inline-block;
  background: #dc164b;
  padding: 5px 10px;
  margin-right: 0.5em;
  border-radius: 8px;
  color: #fff;
}
.section_content p{
  text-align: left;
  line-height: 1.5;
  font-size: 21px;
}

fieldset.section_title {
  border: none;
  border-top-width: 1px;
  border-top-style: solid;
  margin-bottom: 3rem;
  margin-top: 3.6rem;
}
fieldset.section_title:first-of-type {
  margin-top: 0;
}
fieldset.section_title legend {
  font-size: 2.6rem;
  font-weight: bold;
  padding: 0 5px;
  margin: 0 auto;
}
fieldset.section_title .red {
  border-top-color: #dc164b;
}
fieldset.section_title .green {
  border-top-color: #199da8;
}

p.section_title {
  font-size: 1.4rem;
  line-height: 1.3;
  margin-bottom: 2.6rem;
}
p.section_title b {
  font-size: 1.8rem;
}

small.example {
  display: block;
  color: #333;
  padding: 15px 15px 15px 75px;
  font-size: 1.4rem;
  line-height: 1.5;
  background: url("../images/example_icon.png") #ebebeb no-repeat 15px center;
  margin-bottom: 40px;
  text-align: justify;
  border-radius: 10px;
}
small.example b {
  font-size: 1.6rem;
  font-weight: bold;
}
small.example.blue {
  margin-top: 4rem;
  color: #fff;
  background: url("../images/example_icon_1.png") #199da8 no-repeat 15px center;
}
small.example.blue:first-of-type {
  margin-top: 0;
}

small.source {
  display: block;
  color: #888;
  font-size: 1rem;
  line-height: 1.3;
  margin: 15px auto;
}

table.style_1 {
  width: 100%;
  max-width: 600px;
  border: 1px solid #575757;
}
table.style_1 + small.source {
  min-width: 600px;
}
table.style_1 th, table.style_1 td {
  padding: 8px 12px;
  border: 1px solid #575757;
}
table.style_1 thead th {
  background: #ff7696;
  color: #fff;
}
table.style_1 tbody th {
  background: #ffcccc;
}
table.style_1 tbody td:first-of-type {
  background: #ffe5e5;
}

table.style_2 {
  width: 100%;
  font-size: 1.3rem;
  line-height: 1.4;
  border-collapse: separate;
  border-spacing: 3px;
}
table.style_2 + small.source {
  width: 100%;
}
table.style_2.cdd th, table.style_2.cdd td {
  color: #000;
}
table.style_2.white th,
table.style_2.white .th {
  color: #fff;
  background: #575757;
}
table.style_2.white td {
  background: #fff;
}
table.style_2.white td.deep {
  background: #b4b4b4;
}
table.style_2.red th {
  color: #fff;
  background: #dc164b;
}
table.style_2.red td {
  background: #ffeced;
}
table.style_2.red td.deep {
  background: #ffd0d2;
}
table.style_2.pink th,
table.style_2.pink .th {
  color: #fff;
  background: #fd7277;
}
table.style_2.pink td {
  background: #ffeded;
}
table.style_2.pink td.deep {
  background: #ffd0d2;
}
table.style_2.mix tr td.tdred{
  background-color: #ffd0d2;
}
table.style_2.mix tr td.tdgreen{
  background-color: #c1ecf2;
}
table.style_2.mix tr td.tdpurple{
  background-color: #eeddff;
}
table.style_2.green th,
table.style_2.green .th {
  color: #fff;
  background: #199da8;
}
table.style_2.green td {
  background: #e2f4f5;
}
table.style_2.green td.grey{
  color: #575757;
  background: #e5e5e5;
}
table.style_2.green td.deep {
  background: #c1edf1;
}
table.style_2.blue th,
table.style_2.blue .th {
  color: #fff;
  background: #69a6ed;
}
table.style_2.blue td {
  background: #ebf4ff;
}
table.style_2.blue td.deep {
  background: #daebff;
}
table.style_2.purple th {
  color: #fff;
  background: #9d78be;
}
table.style_2.purple td {
  background: #f8f1ff;
}
table.style_2.purple td.deep {
  background: #efddff;
}
table.style_2 th small.annotation {
  color: #fff;
}
table.style_2 td ul.disc{
  list-style: disc outside;
  padding-left: 1.3em;
} 
table.style_2 th, table.style_2 td {
  padding: 10px 20px;
  font-weight: bold;
  color: #575757;
  
}
table.style_2 th, table.style_2 td.red {
  
  color: #dc164b;
  
}
table.style_2 th, table.style_2 td small.sml{
  font-size: smaller;
  font-weight: 400;
}
table.style_2 th.top_left, table.style_2 td.top_left {
  border-top-left-radius: 10px;
}
table.style_2 th.top_right, table.style_2 td.top_right {
  border-top-right-radius: 10px;
}
table.style_2 th.bottom_left, table.style_2 td.bottom_left {
  border-bottom-left-radius: 10px;
}
table.style_2 th.bottom_right, table.style_2 td.bottom_right {
  border-bottom-right-radius: 10px;
}
table.style_2 th b, table.style_2 td b {
  font-size: 1.6rem;
}
table.style_2 th i, table.style_2 td i {
  font-size: 1rem;
}
table.style_2 th small.sp, table.style_2 td small.sp {
  margin-top: 0.5rem;
  display: block;
  font-size: 1rem;
  line-height: 1.6;
  text-align: left;
  color: #777;
}
table.style_2 th small.sp.text_c, table.style_2 td small.sp.text_c {
  text-align: center;
}
table.style_2 td.vtl{
  writing-mode: vertical-rl;
}

#top_banner {
  background: #e6e6e6 url("../images/bg.png");
  margin: 0 auto;
  padding-bottom: 85px;
}
#top_banner .top_info {
  position: relative;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  margin: -50px auto 15px auto;
  max-width: 1100px;
  background: #fff;
  padding: 10px;
  z-index: 1;
}
#top_banner .top_info > li {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  padding-right: 12px;
  margin-right: 12px;
  border-right: 1px solid #ccc;
}
#top_banner .top_info > li:nth-of-type(2) {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: 235px;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
}
#top_banner .top_info > li:nth-of-type(3) {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: 170px;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: 0;
  margin-right: 0;
  border-right: none;
}
#top_banner .top_info > li a {
  cursor: pointer;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  /*height: 90px;*/
  height: 60px;
  color: #fff;
  font-size: 2.1rem;
  font-weight: bold;
  background: #dc164b;
  border: none;
  outline: none;
  border-radius: 8px;
  transition: background 0.3s;
}
#top_banner .top_info > li a:hover {
  background: #9f052e;
}

#top_banner .top_info > li a.share {
  display: inline-block;
  width: 100%;
  background: none;
}
#top_banner .top_info > li a.share:hover {
  background: none;
  opacity: 0.8;
}

#top_banner .top_info > li a.share img {
  width: 100%;
}

#top_banner .top_info > li h1 {
  position: relative;
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: 100%;
  font-size: 1.5rem;
  color: #000;
  padding-bottom: 5px;
  margin-bottom: 5px;
  border-bottom: 1px solid #ccc;
  font-weight: bold;
  line-height: 1.5;
}

#top_banner .top_info > li h1 font{
  font-size: 2.1rem;
  color: #dc164b;
  padding-bottom: 10px;
}

#top_banner .top_info > li a.sharetitle{
  position: absolute;
  top: -1px;
  right: 35px;
  display: none;
  float: right;
  width: 90px;
  height: auto;
  background: none;
}

#top_banner .top_info > li a.sharetitle:hover{
  background: none;
}

#top_banner .top_info > li a.sharetitle img{
  width: 100%;
}

#top_banner .top_info > li h2 {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: 100%;
  font-size: 1.6rem;
  color: #dc164b;
  margin-bottom: 10px;
  font-weight: bold;
  text-align: center;
}
#top_banner .top_info > li h2 img {
  display: inline-block;
  margin-right: 5px;
  vertical-align: middle;
}

#top_banner .top_info > li h3 {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: 100%;
  font-size: 2.2rem;
  color: #dc164b;
  font-weight: bold;
  text-align: center;
}

#top_banner .top_info > li h3.spec {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: 100%;
  font-size: 1.6rem;
  color: #dc164b;
  margin-bottom: 10px;
  font-weight: bold;
  text-align: center;
}
#top_banner .top_info > li h3.spec img {
  display: inline-block;
  margin-right: 5px;
  vertical-align: middle;
}

#top_banner .top_info > li .forhtitle {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: 100%;
  font-size: 2.2rem;
  color: #dc164b;
  font-weight: bold;
  text-align: center;
}

#top_banner .top_info > li .forhtitle.spec {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: 100%;
  font-size: 1.6rem;
  color: #dc164b;
  margin-bottom: 10px;
  font-weight: bold;
  text-align: center;
}
#top_banner .top_info > li .forhtitle.spec img {
  display: inline-block;
  margin-right: 5px;
  vertical-align: middle;
}

#top_banner .top_info > li ul {
  width: 100%;
}
#top_banner .top_info > li ul li {
  display: -webkit-inline-flex;
  display: -moz-inline-flex;
  display: -ms-inline-flex;
  display: -o-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
#top_banner .top_info > li ul li p {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 1.5rem;
  line-height: 1.3;
}
#top_banner .top_info > li ul li p span {
  font-weight: bold;
}
#top_banner .top_info > li ul li img {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: auto;
  margin-right: 5px;
  vertical-align: middle;
}
#top_banner .top_info > li ul _:-ms-lang(x), #top_banner .top_info > li ul li {
  width: 100%;
}
#top_banner .page_slide {
  position: relative;
  margin: 0 auto;
  max-width: 1100px;
  background: #fff;
  z-index: 1;
  padding: 20px;
}
#top_banner .page_slide.b .flex-control-nav li a i {
  color: #199da8;
}
#top_banner .page_slide.r .flex-control-nav li a i {
  color: #dc164b;
}
#top_banner .page_slide.w .flex-control-nav li a i {
  color: #575757;
}
#top_banner .page_slide.g .flex-control-nav li a i {
  color: #435c2f;
}
#top_banner .page_slide > div {
  position: relative;
  overflow: hidden;
}
#top_banner .page_slide > div ul.slides {
  font-size: 0;
  white-space: nowrap;
}
#top_banner .page_slide > div ul.slides li {
  display: inline-block;
}
#top_banner .page_slide .flex-direction-nav .flex-nav-prev, #top_banner .page_slide .flex-direction-nav .flex-nav-next {
  position: absolute;
  display: block;
  bottom: 0;
  width: 14px;
  height: 23px;
  bottom: 1.5rem;
  margin-bottom: -8px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
#top_banner .page_slide .flex-direction-nav .flex-nav-prev a, #top_banner .page_slide .flex-direction-nav .flex-nav-next a {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  text-indent: -999px;
}
#top_banner .page_slide .flex-direction-nav .flex-nav-prev {
  left: 120px;
  background-image: url("../images/slide_prev.png");
}
#top_banner .page_slide .flex-direction-nav .flex-nav-next {
  right: 120px;
  background-image: url("../images/slide_next.png");
}
#top_banner .page_slide .flex-control-nav {
  position: absolute;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  bottom: 1.5rem;
  left: 150px;
  right: 150px;
  background: #fff;
  height: 8px;
  z-index: 2;
  border-radius: 8px;
  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5) inset;
}
#top_banner .page_slide .flex-control-nav li {
  position: relative;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
#top_banner .page_slide .flex-control-nav li a {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 16px;
  height: 16px;
  margin-top: -8px;
  margin-left: -8px;
  background: transparent;
  box-shadow: -2px -2px 5px transparent inset, 0 0 0 4px rgba(225, 33, 78, 0);
  border-radius: 100%;
  transition: all 0.3s;
}
#top_banner .page_slide .flex-control-nav li a.flex-active {
  background: #fff;
  box-shadow: -2px -2px 5px rgba(0, 0, 0, 0.5) inset, 0 0 0 4px rgba(225, 33, 78, 0.8);
}
#top_banner .page_slide .flex-control-nav li a.flex-active:before {
  border-color: #dc164b transparent transparent transparent;
}
#top_banner .page_slide .flex-control-nav li a:before {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 7px 0 7px;
  border-color: #fff transparent transparent transparent;
  bottom: 23px;
  left: 50%;
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
#top_banner .page_slide .flex-control-nav li a i {
  display: block;
  text-align: center;
  font-size: 1.3rem;
  position: absolute;
  font-weight: bold;
  bottom: 35px;
  left: 50%;
  padding: 5px 0;
  white-space: nowrap;
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  text-shadow: 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 8px rgba(0, 0, 0, 0.2), 0px 0px 8px rgba(0, 0, 0, 0.2), 0px 0px 8px rgba(0, 0, 0, 0.2), 0px 0px 8px rgba(0, 0, 0, 0.2), 0px 0px 8px rgba(0, 0, 0, 0.2), 0px 0px 8px rgba(0, 0, 0, 0.2);
}
#top_banner .page_slide img {
  width: 100%;
  height: auto;
  opacity: 0;
  transition: opacity 0.3s;
}
#top_banner .page_slide img.pc {
  display: block;
}
#top_banner .page_slide img.mb {
  display: none;
}

#tab_menu {
  position: absolute;
  width: 100%;
  left: 0;
  top: 0;
  padding-top: 15px;
  overflow: hidden;
  -ms-transform: translateY(-100%);
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
}
#tab_menu.fixed {
  position: fixed;
  z-index: 97;
  background: #e6e6e6 url("../images/bg.png");
  -ms-transform: translateY(0);
  -webkit-transform: translateY(0);
  transform: translateY(0);
}
#tab_menu.fixed:after {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  left: 0;
  bottom: -5px;
  height: 5px;
  box-shadow: 0 -5px 5px rgba(0, 0, 0, 0.1);
}
#tab_menu ul {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  max-width: 1100px;
  padding: 0 30px;
  margin: 0 auto;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
#tab_menu li {
  position: relative;
  cursor: pointer;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  height: 55px;
  margin: 0 5px;
  font-size: 2.1rem;
  font-weight: bold;
  color: #fff;
  background: #b4b4b4;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  overflow: hidden;
  border-radius: 8px 8px 0 0;
  transition: background 0.2s;
}
#tab_menu li a {
  width: 100%;
  height: 100%;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
#tab_menu li img {
  position: relative;
  margin-right: 10px;
}
#tab_menu li:after {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  left: 0;
  bottom: -5px;
  height: 5px;
  box-shadow: 0 -5px 5px rgba(0, 0, 0, 0.1);
}
#tab_menu li:last-of-type {
  height: 55px !important;
  background: #dc164b !important;
}
#tab_menu li:last-of-type:hover {
  background: #9f052e !important;
}
#tab_menu li.on {
  height: 70px;
  background: #80d0ee !important;
}
#tab_menu li:hover {
  background: #777;
}

#tab_content {
  width: 100%;
  margin: 0 auto;
}
#tab_content > li {
  display: none;
  width: 100%;
}
#tab_content > li:first-of-type {
  display: block;
}
#tab_content > li section {
  overflow: hidden;
  width: 100%;
  display: block;
}
#tab_content > li section:nth-of-type(odd) {
  background: #f9f9f9;
}
#tab_content > li section:nth-of-type(even) {
  background: #fff;
}

.prod_title {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 25px 0 15px 0;
  border-bottom: 1px solid #b4b4b4;
  border-top: 1px solid #b4b4b4;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-bottom: 3rem;
}
.title_color {
  color: #000;
}
.prod_title.fc {
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.prod_title .img {
  position: relative;
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: auto;
  margin-top: -27px;
  margin-right: 30px;
}
.prod_title .img img {
  display: block;
}
.prod_title .text {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.prod_title .text h4 {
  font-weight: bold;
  font-size: 2.6rem;
  line-height: 1.3;
  color: #dc164b;
  margin-bottom: 10px;
}
.prod_title .text p {
  font-size: 1.6rem;
  line-height: 1.3;
}
.prod_title .text p span {
  font-weight: bold;
  color: #fff;
  display: inline-block;
  padding: 5px 8px;
  background: #dc164b;
  margin-left: 5px;
  border-radius: 1rem;
}
.bg-text {
  font-weight: bold;
  color: #fff;
  display: inline-block;
  padding: 5px 8px;
  background: #dc164b;
  margin-left: 5px;
  border-radius: 1rem;
}
.prod_title .text *:last-child {
  margin-bottom: 0;
}

.prod_title_list {
  display: block;
  text-align: justify;
}
.prod_title_list li {
  position: relative;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 0 1.6rem;
  font-size: 1.4rem;
  line-height: 1.5;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 2rem;
}
.prod_title_list li:last-of-type {
  margin-bottom: 0;
}
.prod_title_list li .icon {
  position: relative;
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  max-width: 73px;
  width: 20%;
  margin-right: 1.6rem;
  border-radius: 100%;
}
.prod_title_list li .icon:after {
  content: "";
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  top: 30%;
  right: -15px;
  border-style: solid;
  border-width: 20px 20px 0 0;
}
.prod_title_list li .icon img {
  display: block;
  width: 100%;
}
.prod_title_list li p {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.prod_title_list li p b {
  font-weight: bold;
}
.prod_title_list li:nth-of-type(1) .icon {
  background-color: #68c9ed;
}
.prod_title_list li:nth-of-type(1) .icon:after {
  border-color: #68c9ed transparent transparent transparent;
}
.prod_title_list li:nth-of-type(2) .icon {
  background-color: #31b3e4;
}
.prod_title_list li:nth-of-type(2) .icon:after {
  border-color: #31b3e4 transparent transparent transparent;
}

#prod_news {
  display: block;
  color: #575757;
}
#prod_news .prod_news_title {
  display: block;
  width: 100%;
  height: auto;
}
#prod_news .prod_news_content {
  display: block;
  width: 100%;
  padding: 2.6rem 6rem 2.6rem 6rem;
  background-color: #fcfcfc;
  *zoom: 1;
  filter: progid:DXImageTransform.Microsoft.gradient(gradientType=1, startColorstr='#FFFCFCFC', endColorstr='#FFDDDDDD');
  background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuMjgwODE0IiB5MT0iLTAuMTAyMjA4IiB4Mj0iMC43MTkxODYiIHkyPSIxLjEwMjIwOCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZjZmNmYyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2RkZGRkZCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');
  background-size: 100%;
  background-image: linear-gradient(160deg, #fcfcfc 0%, #dddddd 100%);
  border-radius: 1rem 1rem 0 0;
  box-shadow: 10px 3px 25px rgba(0, 0, 0, 0.15);
}
#prod_news .prod_news_content h4 {
  position: relative;
  text-align: center;
  font-size: 1.8rem;
  line-height: 1.5;
  font-weight: bold;
  margin-bottom: 1.5rem;
  border-bottom: 1px solid #575757;
}
#prod_news .prod_news_content h4 span {
  font-size: 1.3rem;
  display: block;
  position: absolute;
  right: 0;
  top: 50%;
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
#prod_news .prod_news_content .flexslider {
  position: relative;
  display: block;
}
#prod_news .prod_news_content .flexslider > div {
  width: 100%;
  overflow: hidden;
}
#prod_news .prod_news_content .flexslider .flex-control-nav {
  text-align: center;
  margin-top: 2rem;
}
#prod_news .prod_news_content .flexslider .flex-control-nav li {
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 0 5px;
}
#prod_news .prod_news_content .flexslider .flex-control-nav li a {
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
  overflow: hidden;
  text-indent: -9999px;
  border: 2px #fff solid;
  background: #b4b4b4;
  border-radius: 100%;
}
#prod_news .prod_news_content .flexslider .flex-control-nav li a.flex-active {
  background: #575757;
}
#prod_news .prod_news_content .flexslider ul.slides {
  white-space: nowrap;
}
#prod_news .prod_news_content .flexslider ul.slides li {
  display: inline-block;
  color: #575757;
  line-height: 1.5;
  white-space: normal;
}
#prod_news .prod_news_content .flexslider ul.slides li h2 {
  font-size: 2.5rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 1rem;
}

#prod_news .prod_news_content .flexslider ul.slides li.h3spec h3 {
  font-size: 2.5rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 1rem;
}

#prod_news .prod_news_content .flexslider ul.slides li .text {
  font-weight: bold;
  font-size: 1.2rem;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding: 2px;
}
#prod_news .prod_news_content .flexslider ul.slides li .text img {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: auto;
  margin-right: 1rem;
}
#prod_news .prod_news_content .flexslider ul.slides li .text p {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  white-space: initial;
}
#prod_news .prod_news_content .flexslider ul.slides li .text p span {
  display: block;
  margin-top: 1rem;
}
.prod_lsitTitle{
  color: #dc164b;
  font-weight: bold;
  font-size: 36px;
  padding: 25px 0 15px 0;
  margin-bottom: 3rem;
  line-height: 1.4;
}
.prod_list_subTitle{
  margin-top: 0.5em;
  margin-bottom: 0.5em;
  color: #dc164b;
  font-size: 30px;
  font-weight: 600;
  position: relative;
  z-index: 1;
  display: inline-block;
}
/* .prod_list_subTitle::before {
  content: "";
  position: absolute;
  height: 0.7em;
  top: 0.6em;
  width: 100%;
  z-index: -1;
  background-image: linear-gradient(transparent 50%, rgba(255, 222, 36, 0.87) 50%);
} */
.prod_list > li .text .prod_list_subTitle~h4{
  margin-top: 0em;
}
.prod_list {
  display: block;
  text-align: justify;
}
.prod_list > li {
  position: relative;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 0 1.6rem;
  font-size: 1.4rem;
  line-height: 1.5;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-bottom: 2rem;
}
.prod_list > li:last-of-type {
  margin-bottom: 0;
}
.prod_list > li .icon {
  position: relative;
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  max-width: 110px;
  margin-right: 1.6rem;
  border-radius: 100%;
}
.prod_list > li .icon img {
  display: block;
  width: 100%;
}
.prod_list > li .text {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 1.4rem;
}
.prod_list > li .text h4 {
  font-weight: bold;
  font-size: 2rem;
  margin-top: 2rem;
  margin-bottom: 1rem;
}
.prod_list > li .text h4 i {
  font-size: 1.4rem;
}
.prod_list > li .text ol {
  display: block;
}
.prod_list > li .text ol li {
  position: relative;
  display: block;
  padding-left: 2rem;
  margin-bottom: 0.8rem;
}
.prod_list > li .text ol li table.style_2 th, .prod_list > li .text ol li table.style_2 td {
  font-weight: 300;
}
.prod_list > li .text ol li span {
  font-weight: bold;
}
.prod_list > li .text ol li img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
}
.prod_list > li .text ol li b{
  font-weight: bold;
}
.prod_list > li .text ol li:last-of-type {
  margin-bottom: 0;
}
.prod_list > li .text ol li:before {
  content: "";
  position: absolute;
  display: block;
  left: 10px;
  top: 0.5rem;
  width: 0.7rem;
  height: 0.7rem;
  background: #dc164b;
  border-radius: 100%;
}

.prod_list_1 {
  text-align: justify;
}
.prod_list_1 li {
  margin-bottom: 3rem;
}
.prod_list_1 li:last-of-type {
  margin-bottom: 0;
}
.prod_list_1 li:nth-of-type(1) h4 .icon, .prod_list_1 li:nth-of-type(1) h4 .text span {
  background: #f8b54b;
}
.prod_list_1 li:nth-of-type(2) h4 .icon, .prod_list_1 li:nth-of-type(2) h4 .text span {
  background: #44c6f1;
}
.prod_list_1 li:nth-of-type(3) h4 .icon, .prod_list_1 li:nth-of-type(3) h4 .text span {
  background: #9bcb63;
}
.prod_list_1 li:nth-of-type(4) h4 .icon, .prod_list_1 li:nth-of-type(4) h4 .text span {
  background: #f4afa1;
}
.prod_list_1 li h4 {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.6rem;
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: 1rem;
}
.prod_list_1 li h4 .icon {
  position: relative;
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  border-radius: 100%;
  z-index: 5;
}
.prod_list_1 li h4 .text {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.prod_list_1 li h4 .text span {
  padding: 10px 15px 10px 50px;
  display: inline-block;
  margin-left: -50px;
  border-radius: 0 15px 15px 0;
}
.prod_list_1 li ol {
  padding-left: 6rem;
  padding-right: 3rem;
  font-size: 1.4rem;
  line-height: 1.5;
}
.prod_list_1 li ol li {
  position: relative;
  padding-left: 1.8rem;
  margin-bottom: 1.5rem;
}
.prod_list_1 li ol li.sp {
  width: 200%;
}
.prod_list_1 li ol li.sp table {
  width: 50%;
}
.prod_list_1 li ol li:last-of-type {
  margin-bottom: 0;
}
.prod_list_1 li ol li:before {
  content: "";
  position: absolute;
  display: block;
  left: 5px;
  top: 0.6rem;
  width: 0.7rem;
  height: 0.7rem;
  background: #e1214e;
  border-radius: 100%;
}
.prod_list_1 li ol li span {
  font-weight: bold;
}
.prod_list_1 li ol li table.style_2 th, .prod_list_1 li ol li table.style_2 td {
  font-weight: 300;
}

.prod_list_2 {
  width: 90%;
  margin: 0 auto;
  font-size: 1.4rem;
  line-height: 1.5;
  margin-top: 3.5rem;
}
.prod_list_2 li {
  position: relative;
  padding-left: 1.8rem;
  margin-bottom: 1.5rem;
}
.prod_list_2 li:last-of-type {
  margin-bottom: 0;
}
.prod_list_2 li:before {
  content: "";
  position: absolute;
  display: block;
  left: 5px;
  top: 0.6rem;
  width: 0.7rem;
  height: 0.7rem;
  background: #e1214e;
  border-radius: 100%;
}

input[id*="switch_ck_"] {
  display: none;
  opacity: 0;
}
input[id*="switch_ck_"] ~ .content {
  display: none;
}
input[id*="switch_ck_"] + .switch {
  margin: 20px auto;
  width: 100%;
  max-width: 1100px;
  text-align: center;
  border-top: 1px dashed #ffc2d0;
}
input[id*="switch_ck_"] + .switch legend {
  color: #dc164b;
  font-size: 1rem;
  padding: 0 10px;
  margin: 0 auto;
}
input[id*="switch_ck_"] + .switch legend label {
  display: block;
  cursor: pointer;
}
input[id*="switch_ck_"] + .switch legend label ol {
  padding: 5px 10px;
  background: #ffc2d0;
  border-radius: 8px;
}
input[id*="switch_ck_"] + .switch legend label ol li {
  display: inline-block;
  vertical-align: middle;
  height: 20px;
  line-height: 20px;
}
input[id*="switch_ck_"] + .switch legend label ol li:nth-of-type(1) {
  margin-right: 5px;
}
input[id*="switch_ck_"] + .switch legend label ol li:nth-of-type(2) {
  position: relative;
  padding-right: 8px;
  margin-right: 8px;
}
input[id*="switch_ck_"] + .switch legend label ol li:nth-of-type(2):after {
  content: "";
  display: block;
  position: absolute;
  width: 0;
  height: 16px;
  right: 0;
  top: 2px;
  border-right: 1px solid #dc164b;
}
input[id*="switch_ck_"] + .switch legend label ol li:nth-of-type(3) {
  position: relative;
  width: 20px;
}
input[id*="switch_ck_"] + .switch legend label ol li:nth-of-type(3) i, input[id*="switch_ck_"] + .switch legend label ol li:nth-of-type(3) o {
  display: block;
  position: absolute;
  width: 16px;
  height: 2px;
  background: #dc164b;
  left: 50%;
  top: 50%;
  margin-top: -1px;
  margin-left: -8px;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
input[id*="switch_ck_"] + .switch legend label ol li:nth-of-type(3) o {
  -ms-transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}
input[id*="switch_ck_"] + .switch legend label ol li:nth-of-type(3) i {
  -ms-transform: rotate(270deg);
  -webkit-transform: rotate(270deg);
  transform: rotate(270deg);
}
input[id*="switch_ck_"]:checked ~ .content {
  display: block;
}
input[id*="switch_ck_"]:checked + .switch legend label ol li:nth-of-type(3) o {
  -ms-transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
input[id*="switch_ck_"]:checked + .switch legend label ol li:nth-of-type(3) i {
  -ms-transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}

ul.lf_w {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
ul.lf_w.fs {
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}
ul.lf_w > li {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
ul.lf_w > li.no_f {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
}
ul.lf_w > li img {
  display: block;
  width: 100%;
}

dl.note_list {
  text-align: justify;
  font-size: 1rem;
  line-height: 1.3;
  color: #575757;
  margin-bottom: 3rem;
}
dl.note_list:last-of-type {
  margin-bottom: 0;
}
dl.note_list .big {
  font-size: 1.3rem;
}
dl.note_list dt {
  font-weight: bold;
  margin-bottom: 10px;
}
dl.note_list dd {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 10px;
}
dl.note_list dd:last-of-type {
  margin-bottom: 0;
}
dl.note_list dd a.und {
  text-decoration: underline;
}
dl.note_list dd i {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: 55px;
  text-align: center;
}

#qa {
  display: block;
  font-size: 1.5rem;
  line-height: 1.3;
  font-weight: bold;
}
#qa li {
  width: 100%;
  margin-top: 2.5rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #b4b4b4;
}
#qa li input[id*="qa_ck"] {
  display: none;
}
#qa li input[id*="qa_ck"]:checked ~ .q i {
  background: #dc164b !important;
}
#qa li input[id*="qa_ck"]:checked ~ .a {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
}
#qa li .q, #qa li .a {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  margin-bottom: 1.5rem;
}
#qa li .q img, #qa li .a img {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: auto;
  margin-right: 10px;
}
#qa li .q {
  cursor: pointer;
  padding-right: 85px;
}
#qa li .q i {
  border: none;
  font-size: 1.3rem;
  color: #fff;
  background: #9b8b8b;
  font-weight: 300;
  padding: 2px 15px;
  position: absolute;
  right: 0;
  top: 50%;
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  border-radius: 8px;
  transition: background 0.5s;
}
#qa li .q:hover i {
  background: #675757;
}
#qa li .a {
  display: none;
  color: #0066ff;
}
#qa li .a a {
  color: #b4b4b4;
  text-decoration: underline;
  transition: color 0.3s;
}
#qa li .a a:hover {
  color: #dc164b;
}

#table_tab_menu {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  max-width: 1100px;
  padding: 0 30px;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-top: 5rem;
}
#table_tab_menu li {
  position: relative;
  cursor: pointer;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  height: 55px;
  margin: 0 5px;
  font-size: 2rem;
  font-weight: bold;
  color: #fff799;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 8px 8px 0 0;
  transition: background 0.2s;
}
#table_tab_menu li:after {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  left: 0;
  bottom: -5px;
  height: 5px;
  box-shadow: 0 -5px 5px rgba(0, 0, 0, 0.2);
}
#table_tab_menu li.on {
  height: 70px;
}
#table_tab_menu li:nth-of-type(1) {
  background: #fd7278;
}
#table_tab_menu li:nth-of-type(2) {
  background: #69a6ed;
}
#table_tab_menu li:nth-of-type(3) {
  background: #9d78be;
}
#table_tab_menu li.sp:before {
  pointer-events: none;
  position: absolute;
  content: "";
  display: block;
  top: 0;
  left: 0;
  width: 74px;
  height: 54px;
  background: url("../images/crown_icon.png") no-repeat center;
  background-size: cover;
  -ms-transform: translate(-54%, -54%) rotate(-45deg);
  -webkit-transform: translate(-54%, -54%) rotate(-45deg);
  transform: translate(-54%, -54%) rotate(-45deg);
}

#table_tab_content {
  margin-top: -3px;
  border-radius: 10px;
}
#table_tab_content li {
  display: none;
}
#table_tab_content li:first-of-type {
  display: block;
}

#form {
  padding-top: 2.6rem;
  background: #f5f5f5;
}
#form.nobg {
  background: none;
}
#form.nobg ul.form_con > li:last-of-type {
  background: url(../images/form_bg_01-1.jpg) top center no-repeat, url(../images/form_bg_03-1.jpg) bottom center no-repeat, url(../images/form_bg_02-1.jpg) top center repeat;
  background-size: 100% auto;
}
#form.notp {
  padding-top: 0;
}
#form ul.form_con {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  width: 90%;
  max-width: 1100px;
  margin: 0 auto;
}
#form ul.form_con > li {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
}
#form ul.form_con > li:first-of-type {
  height: 645px;
  width: 201px;
  margin-right: 2rem;
}
#form ul.form_con > li:last-of-type {
  width: 100%;
  max-width: 664px;
  min-height: 700px;
  background: url(../images/form_bg_01.jpg) top center no-repeat, url(../images/form_bg_03.jpg) bottom center no-repeat, url(../images/form_bg_02.jpg) top center repeat;
  background-size: 100% auto;
  padding: 110px 140px 40px 140px;
  text-align: center;
}
#form ul.form_con > li button {
  cursor: pointer;
  background: #f8b54b;
  color: #000;
  border: none;
  width: 100%;
  /* max-width: 240px; */
  font-size: 1.8rem;
  font-weight: bold;
  padding: 12px 0;
  border-radius: 1.3rem;
  transition: background 0.5s;
}
#form ul.form_con > li button:hover {
  background: #dc164b;
  color: #fff;
}
#form ul.form_con > li ol {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: center;
  height: 100%;
}
#form ul.form_con > li ol li {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
#form ul.form_con > li ol li.no_f {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
}
#form .form_note {
  padding: 2.6rem 0;
  width: 100%;
  background: #f0f0f0;
  text-align: center;
}
#form .form_note a.switch {
  display: inline-block;
  color: #dc164b;
  font-size: 1rem;
}
#form .form_note a.switch ol {
  padding: 5px 10px;
  background: #ffc2d0;
  border-radius: 8px;
}
#form .form_note a.switch ol li {
  display: inline-block;
  vertical-align: middle;
  height: 20px;
  line-height: 20px;
}
#form .form_note a.switch ol li:nth-of-type(1) {
  margin-right: 5px;
}
#form .form_note a.switch ol li:nth-of-type(2) {
  position: relative;
}
#form .form_note p {
  display: block;
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
  line-height: 1.5;
  color: #888;
}
#form .form_note p span {
  display: block;
  font-weight: bold;
  font-size: 1.6rem;
  margin-top: 2.6rem;
  margin-bottom: 1rem;
}

.step_title {
  text-align: center;
  padding: 15px 0;
  color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
  background: #575757;
  margin-bottom: 50px;
  border-radius: 8px;
}

#page_top_banner {
  background: #e6e6e6 url("../images/bg.png");
  margin: -50px auto 0 auto;
  padding-bottom: 20px;
}
#page_top_banner.no_top {
  margin-top: 0;
  padding-bottom: 0;
}
#page_top_banner .banner {
  position: relative;
  width: 100%;
  max-width: 1100px;
  padding: 20px;
  margin: 0 auto;
  background: #fff;
  z-index: 1;
}
#page_top_banner .banner.planning {
  display: none;
}
#page_top_banner .banner img {
  width: 100%;
}
#page_top_banner .banner img.pc {
  display: block;
}
#page_top_banner .banner img.mob {
  display: none;
}

#about {
  color: #575757;
  line-height: 2;
  text-align: center;
}
#about p {
  font-size: 1.4rem;
  margin-bottom: 3rem;
}
#about h2 {
  font-size: 3.3rem;
  color: #dc164b;
  font-weight: bold;
  margin-bottom: 3rem;
}
#about ul li {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 2rem;
}
#about ul li:nth-of-type(1) > div:first-of-type {
  background-image: url("../images/about_01.jpg");
}
#about ul li:nth-of-type(1) > div:last-of-type {
  background-image: url("../images/about_02.jpg");
}
#about ul li:nth-of-type(2) > div:first-of-type {
  background-image: url("../images/about_03.jpg");
}
#about ul li:nth-of-type(2) > div:last-of-type {
  background-image: url("../images/about_04.jpg");
}
#about ul li > div {
  position: relative;
  cursor: pointer;
  color: #fff;
  line-height: 1.5;
  text-align: left;
  overflow: hidden;
  background-position: top left;
  background-repeat: no-repeat;
  background-size: cover;
}
#about ul li > div:first-of-type {
  margin-right: 10px;
}
#about ul li > div .text {
  position: absolute;
  top: 1rem;
  left: 1rem;
}
#about ul li > div .text h3 {
  font-weight: bold;
  font-size: 2.6rem;
}
#about ul li > div .text small {
  font-size: 1.4rem;
}
#about ul li .f1 {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
#about ul li .f1:before {
  display: block;
  height: 0;
  content: "";
  margin-top: 100%;
}
#about ul li .f2 {
  -webkit-flex: 2;
      -ms-flex: 2;
          flex: 2;
}

#news_list li {
  width: 100%;
  font-size: 1.4rem;
  line-height: 1.5;
  font-weight: bold;
  color: #575757;
  border-top: 1px solid #dedede;
}
#news_list li:last-of-type {
  border-bottom: 1px solid #dedede;
}
#news_list li a {
  display: -webkit-inline-flex;
  display: -moz-inline-flex;
  display: -ms-inline-flex;
  display: -o-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 20px 15px;
  transition: color 0.3s;
}
#news_list li a:hover {
  color: #dc164b;
}
#news_list li a span {
  font-weight: 300;
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: auto;
  margin-top: 0.2rem;
  font-size: 1.2rem;
  margin-right: 2rem;
}

#news_page {
  display: block;
  width: 100%;
  text-align: center;
  margin-top: 1rem;
  margin-bottom: 3rem;
}
#news_page li {
  cursor: pointer;
  display: inline-block;
  font-size: 1rem;
  padding: 3px 5px;
  color: #dedede;
  margin: 5px;
  border: 1px solid #dedede;
}
#news_page li.on {
  color: #fff;
  background: #dc164b;
  border: 1px solid #dc164b;
}

#news_content h1 {
  text-align: center;
  color: #dc164b;
  font-size: 2.4rem;
  line-height: 1.6;
  font-weight: bold;
  border-bottom: 1px solid #dc164b;
  padding-bottom: 1rem;
  margin-bottom: 2rem;
}
#news_content img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}
#news_content .iframe {
  position: relative;
  display: block;
  max-width: 100%;
  width: 1080px;
  margin: 0 auto;
  padding-top: 56.25%;
}
#news_content .iframe iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
#news_content .img, #news_content .text, #news_content .iframe {
  margin-bottom: 2rem;
}
#news_content p {
  line-height: 1.5;
  font-size: 1.2rem;
}
#news_content .bt {
  position: relative;
  color: #575757;
  font-size: 1.2rem;
  line-height: 1.6;
  margin-bottom: 3rem;
}
#news_content .bt:after {
  display: block;
  height: 0;
  clear: both;
  content: "";
}
#news_content .bt a {
  display: none;
  transition: color 0.5s;
}
#news_content .bt a:hover {
  color: #dc164b;
}
#news_content .bt .next {
  float: right;
}

#planning_step_1 .step_title , #planning_step_1 .choose_list {
  display: none;
}

#planning_step_2 {
  display: none;
}

.choose_list {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-bottom: 50px;
}
.choose_list li {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: 33.3%;
  padding: 15px;
  text-align: center;
  border-right: 1px solid #dedede;
  border-bottom: 1px solid #dedede;
}
/* .choose_list li:nth-of-type(4n) {
  border-right: none;
}
.choose_list li:nth-last-of-type(-n+4) {
  border-bottom: none;
} */
.choose_list li:nth-of-type(3n) {
  border-right: none;
}
.choose_list li:nth-last-of-type(-n+3) {
  border-bottom: none;
}
.choose_list li img {
  display: block;
  width: 100%;
  max-width: 200px;
  margin: 0 auto 10px auto;
  /* margin-bottom: 10px; */
  cursor: pointer;
}
.choose_list li input[type="checkbox"] {
  display: none;
}
.choose_list li input[type="checkbox"] + label .title {
  position: relative;
  display: inline-block;
  cursor: pointer;
  text-align: left;
  padding-left: 1.5rem;
  line-height: 1.3;
  color: #575757;
}
.choose_list li input[type="checkbox"] + label .title p {
  font-size: 1.6rem;
  font-weight: bold;
}
.choose_list li input[type="checkbox"] + label .title small {
  font-size: 1.1rem;
}
.choose_list li input[type="checkbox"] + label .title o {
  position: absolute;
  display: block;
  width: 1rem;
  height: 1rem;
  top: 8px;
  left: 0;
  border: #fff 2px solid;
  background: #fff;
  box-shadow: 0 0 0 1px #b4b4b4;
  border-radius: 100%;
}
.choose_list li input[type="checkbox"]:checked + label .title o {
  background: #dc164b;
}

#planning_data {
  position: relative;
  width: 100%;
  max-width: 700px;
  margin: 0 auto;
  text-align: center;
  padding: 30px 100px;
  margin-bottom: 50px;
  border: 5px dotted #dedede;
  border-radius: 30px;
}
#planning_data legend {
  font-size: 2.4rem;
  font-weight: bold;
  margin: 0 auto;
  color: #575757;
  padding: 2px 0 2px 35px;
  background: url("../images/planning_data_icon.png") no-repeat top left;
  background-size: auto 100%;
}
#planning_data button {
  position: absolute;
  cursor: pointer;
  bottom: 0;
  left: 50%;
  font-size: 1.6rem;
  font-weight: bold;
  color: #fff;
  background: #dc164b;
  border: none;
  padding: 10px 20px;
  width: 180px;
  border-radius: 10px;
  transition: background 0.5s;
  -ms-transform: translate(-50%, 50%);
  -webkit-transform: translate(-50%, 50%);
  transform: translate(-50%, 50%);
  box-shadow: 8px 8px 0 0 #dedede;
}
#planning_data button:hover {
  background: #9f052e;
}

#choose_old {
  position: relative;
  overflow: hidden;
  max-width: 900px;
  padding: 0 50px 80px 50px;
  margin: 0 auto;
  border-bottom: 1px solid #dedede;
}
#choose_old h2 {
  text-align: center;
  font-size: 1.8rem;
  font-weight: bold;
  color: #575757;
  margin-bottom: 3.3rem;
}
#choose_old h2 span {
  font-size: 4.5rem;
  color: #dc164b;
  margin: 0 1rem;
}
#choose_old ol {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 2rem;
}
#choose_old ol li {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin: 0 4%;
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 100% auto;
}
#choose_old ol li:before {
  display: block;
  height: 0;
  content: "";
  margin-top: 100%;
}
#choose_old ol li:nth-of-type(1) {
  background-image: url("../images/choose_old_icon_01.png");
}
#choose_old ol li:nth-of-type(1).on {
  background-image: url("../images/choose_old_icon_h_01.png");
}
#choose_old ol li:nth-of-type(2) {
  background-image: url("../images/choose_old_icon_02.png");
}
#choose_old ol li:nth-of-type(2).on {
  background-image: url("../images/choose_old_icon_h_02.png");
}
#choose_old ol li:nth-of-type(3) {
  background-image: url("../images/choose_old_icon_03.png");
}
#choose_old ol li:nth-of-type(3).on {
  background-image: url("../images/choose_old_icon_h_03.png");
}
#choose_old ol li:nth-of-type(4) {
  background-image: url("../images/choose_old_icon_04.png");
}
#choose_old ol li:nth-of-type(4).on {
  background-image: url("../images/choose_old_icon_h_04.png");
}
#choose_old ol li:nth-of-type(5) {
  background-image: url("../images/choose_old_icon_05.png");
}
#choose_old ol li:nth-of-type(5).on {
  background-image: url("../images/choose_old_icon_h_05.png");
}
#choose_old .old_range {
  position: relative;
  width: 82%;
  margin: 0 auto;
}
#choose_old .old_range:before, #choose_old .old_range:after {
  position: absolute;
  display: block;
  bottom: 0;
  color: #575757;
  font-size: 1.4rem;
  font-weight: bold;
}
#choose_old .old_range:before {
  content: "15歲";
  left: 0;
  -ms-transform: translate(-50%, 180%);
  -webkit-transform: translate(-50%, 180%);
  transform: translate(-50%, 180%);
}
#choose_old .old_range:after {
  content: "80歲";
  right: 0;
  -ms-transform: translate(50%, 180%);
  -webkit-transform: translate(50%, 180%);
  transform: translate(50%, 180%);
}
#choose_old:after {
  display: block;
  content: "";
  position: absolute;
  width: 90%;
  height: 50px;
  left: 50%;
  z-index: 2;
  bottom: -50px;
  width: 100%;
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  border-radius: 100%;
  box-shadow: 0 0 20px 5px rgba(0, 0, 0, 0.1);
}

.planning_list {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
}
.planning_list li {
  display: none;
  position: relative;
  padding: 50px;
  overflow: hidden;
  border-bottom: 1px solid #dedede;
}
.planning_list li:after {
  display: block;
  content: "";
  position: absolute;
  width: 90%;
  height: 50px;
  left: 50%;
  z-index: 2;
  bottom: -50px;
  width: 100%;
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  border-radius: 100%;
  box-shadow: 0 0 20px 5px rgba(0, 0, 0, 0.1);
}
.planning_list li h6 {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1rem;
  padding-left: 1.4rem;
}
.planning_list li h6 img {
  display: block;
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  margin-right: 1rem;
  padding-right: 1rem;
  border-right: 1px solid #dedede;
}
.planning_list li h6 a {
  padding: 10px 30px;
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  display: block;
  font-size: 1.6rem;
  font-weight: bold;
  color: #fff;
  background: #dc164b;
  border-radius: 10px;
  transition: background 0.5s;
}
.planning_list li h6 a:hover {
  background: #9f052e;
}
.planning_list li h6 p {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 1.4rem;
  color: #575757;
  font-weight: bold;
}
.planning_list li .no_data {
  position: relative;
  background: #dedede;
  border-radius: 10px;
}
.planning_list li .no_data > span {
  position: absolute;
  display: block;
  top: 50%;
  left: 50%;
  color: #575757;
  font-size: 1.6rem;
  font-weight: bold;
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.planning_list li table.style_2 {
  position: relative;
  opacity: 0;
  z-index: 5;
  background: #fff;
  transition: opacity 0.5s;
}
.planning_list li table.style_2 th {
  color: #fff;
  background: #3e98c7;
}
.planning_list li table.style_2 td {
  background: #eeeeee;
  color: #dc164b;
}
.planning_list li table.style_2 td:first-of-type {
  color: #575757;
}
.planning_list li.open {
  display: block;
}
.planning_list li.open:nth-of-type(odd) table.style_2 th {
  background: #3ec7ad;
}
.planning_list li.open:last-of-type {
  padding-bottom: 0;
  border-bottom: none;
}

.pry_form {
  position: relative;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  border-bottom: 1px solid #b4b4b4;
  margin-bottom: 60px;
  padding: 0 15px;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.pry_form:after {
  position: absolute;
  display: block;
  content: "";
  width: 0;
  height: 0;
  left: 50%;
  bottom: 0;
  border-style: solid;
  border-width: 40px 40px 0 40px;
  border-color: #dc164b transparent transparent transparent;
  -ms-transform: translate(-50%, 100%);
  -webkit-transform: translate(-50%, 100%);
  transform: translate(-50%, 100%);
}
.pry_form > li:last-of-type {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  max-width: 319px;
  width: 30%;
  margin-right: 10%;
}
.pry_form > li:last-of-type img {
  width: 100%;
  height: auto;
}
.pry_form > li:last-of-type img.pc {
  display: block;
}
.pry_form > li:last-of-type img.mob {
  display: none;
}
.pry_form > li:first-of-type {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  width: 100%;
  max-width: 664px;
  background: url(../images/form_bg_01-2.jpg) top center no-repeat, url(../images/form_bg_03-2.jpg) bottom center no-repeat, url(../images/form_bg_02-2.jpg) top center repeat;
  background-size: 100% auto;
  padding: 110px 140px 40px 140px;
  text-align: center;
}
.pry_form > li button {
  cursor: pointer;
  background: #f8b54b;
  color: #000;
  border: none;
  width: 100%;
  max-width: 240px;
  font-size: 1.8rem;
  font-weight: bold;
  padding: 8px 0;
  border-radius: 1.3rem;
  transition: background 0.5s;
}
.pry_form > li button:hover {
  background: #dc164b;
  color: #fff;
}
.pry_form > li ol {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: center;
  height: 100%;
}
.pry_form > li ol li {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.pry_form > li ol li.no_f {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
}

.pay_list {
  width: 100%;
  max-width: 608px;
  margin: 0 auto;
  margin-bottom: 3rem;
}
.pay_list.red li:after {
  border-color: #dc164b transparent transparent transparent;
}
.pay_list.green li:after {
  border-color: #199da8 transparent transparent transparent;
}
.pay_list li {
  position: relative;
  margin-bottom: 2.5rem;
}
.pay_list li img {
  display: block;
  width: 100%;
  height: auto;
}
.pay_list li:after {
  position: absolute;
  display: block;
  content: "";
  width: 0;
  height: 0;
  left: 50%;
  bottom: -1.75rem;
  border-style: solid;
  border-width: 15px 15px 0 15px;
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.pay_list li:last-of-type {
  margin-bottom: 0;
}
.pay_list li:last-of-type:after {
  display: none;
}

#sitemap {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
}
#sitemap dl {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  line-height: 1.5;
  color: #575757;
  margin-right: 6%;
}
#sitemap dl:last-of-type {
  margin-right: 0;
}
#sitemap dl dt {
  font-size: 2.4rem;
  color: #dc164b;
  padding-bottom: 1rem;
  font-weight: bold;
}
#sitemap dl dd {
  font-size: 1.4rem;
  padding: 0 5px;
  border-top: 1px solid #dedede;
}
#sitemap dl dd:last-of-type {
  border-bottom: 1px solid #dedede;
}
#sitemap dl dd a {
  position: relative;
  display: inline-block;
  padding: 10px 0 10px 1.2rem;
  transition: color 0.5s;
}
#sitemap dl dd a:hover {
  color: #dc164b;
}
#sitemap dl dd a:before {
  content: ">";
  position: absolute;
  left: 0;
}

h2.analysis {
  font-size: 2.6rem;
  line-height: 1.4;
  margin-bottom: 3rem;
  text-align: center;
  font-weight: bold;
}
h2.analysis p {
  margin-top: 1rem;
  font-size: 1.4rem;
  font-weight: normal;
}

ul.analysis {
  max-width: 900px;
  margin: 0 auto;
}
ul.analysis li {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding: 3rem 0;
  margin-bottom: 3rem;
  border-top: 1px solid #b4b4b4;
}
ul.analysis li:last-of-type {
  border-bottom: 1px solid #b4b4b4;
}
ul.analysis li .icon {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: 30%;
  margin-right: 1rem;
  max-width: 200px;
}
ul.analysis li .icon img {
  pointer-events: none;
  display: block;
  width: 100%;
  height: auto;
}
ul.analysis li .text {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 1.4rem;
  line-height: 1.6;
}
ul.analysis li .text .bt {
  width: 100%;
  margin-top: 1rem;
  text-align: right;
}
ul.analysis li .text .bt a {
  position: relative;
  display: inline-block;
  margin-right: 10px;
  background: #dc164b;
  color: #fff;
  font-weight: bold;
  padding: 0 30px 0 10px;
  border: 2px solid #dc164b;
}
ul.analysis li .text .bt a:after {
  position: absolute;
  display: block;
  content: "";
  width: 0;
  height: 0;
  top: 50%;
  right: 10px;
  margin-top: -8px;
  border-style: solid;
  border-width: 8px 0 8px 10px;
  border-color: transparent transparent transparent #ffffff;
}
ul.analysis li .text .bt a:last-of-type {
  margin-right: 0;
  background: #fff;
  color: #dc164b;
}
ul.analysis li .text .bt a:last-of-type:after {
  border-color: transparent transparent transparent #dc164b;
}

ul.demand_list {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  width: calc(100% - 140px);
  max-width: 860px;
  margin: 0 auto;
}
ul.demand_list li {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: 25%;
  text-align: center;
  margin-bottom: 5rem;
}
ul.demand_list li label {
  display: block;
  cursor: pointer;
}
ul.demand_list li img {
  pointer-events: none;
  display: block;
  width: 100%;
  max-width: 240px;
  margin: 0 auto;
}
ul.demand_list li p {
  font-size: 1.4rem;
  line-height: 1.3;
  margin-top: 1rem;
}
ul.demand_list li p small {
  font-size: 1rem;
  color: #b4b4b4;
}
ul.demand_list li input[type="checkbox"], ul.demand_list li input[type="radio"] {
  display: none;
}
ul.demand_list li input[type="checkbox"] ~ p, ul.demand_list li input[type="radio"] ~ p {
  color: #575757;
}
ul.demand_list li input[type="checkbox"] ~ .k1, ul.demand_list li input[type="radio"] ~ .k1 {
  display: block;
}
ul.demand_list li input[type="checkbox"] ~ .k2, ul.demand_list li input[type="radio"] ~ .k2 {
  display: none;
}
ul.demand_list li input[type="checkbox"]:checked ~ p, ul.demand_list li input[type="radio"]:checked ~ p {
  color: #dc164b;
}
ul.demand_list li input[type="checkbox"]:checked ~ p small, ul.demand_list li input[type="radio"]:checked ~ p small {
  color: #ffafc5;
}
ul.demand_list li input[type="checkbox"]:checked ~ .k1, ul.demand_list li input[type="radio"]:checked ~ .k1 {
  display: none;
}
ul.demand_list li input[type="checkbox"]:checked ~ .k2, ul.demand_list li input[type="radio"]:checked ~ .k2 {
  display: block;
}

#keywords_step_1 {
  display: block;
  margin-bottom: 3rem;
}
#keywords_step_1 .selected {
  display: block;
  width: 100%;
  max-width: 900px;
  margin: 2rem auto;
  font-size: 1.8rem;
}
#keywords_step_1 .selected i {
  display: inline-block;
  vertical-align: middle;
}
#keywords_step_1 .selected span {
  display: inline-block;
  margin: 0 5px;
  color: #dc164b;
  font-weight: bold;
  vertical-align: middle;
}
#keywords_step_1 .selected a {
  cursor: pointer;
  display: inline-block;
  color: #420314;
  padding: 10px 15px;
  background: #f8bd2f;
  font-weight: bold;
  font-size: 1.4rem;
  vertical-align: middle;
  margin-left: 20px;
  background-color: #ffda81;
  *zoom: 1;
  filter: progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorstr='#FFFFDA81', endColorstr='#FFF8BD2F');
  background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZGE4MSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2Y4YmQyZiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');
  background-size: 100%;
  background-image: linear-gradient(to bottom, #ffda81 0%, #f8bd2f 100%);
  border-radius: 10px;
}
#keywords_step_1 .selected a:after {
  display: inline-block;
  content: "";
  width: 0;
  height: 0;
  top: 50%;
  right: 10px;
  margin-top: -5px;
  border-style: solid;
  border-width: 8px 0 8px 14px;
  border-color: transparent transparent transparent #420314;
  vertical-align: middle;
  margin-left: 5px;
}
#keywords_step_1 ul {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  max-width: 900px;
  margin: 0 auto;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
#keywords_step_1 ul li {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  border-top: 1px solid #575757;
  border-left: 1px solid #575757;
  width: 20%;
  font-size: 1.4rem;
  text-align: center;
}
#keywords_step_1 ul li:nth-of-type(5n) {
  border-right: 1px solid #575757;
}
#keywords_step_1 ul li:nth-last-of-type(-n+5) {
  border-bottom: 1px solid #575757;
}
#keywords_step_1 ul li:last-of-type {
  border-right: 1px solid #575757;
}
#keywords_step_1 ul li img {
  display: block;
  pointer-events: none;
  width: 100%;
  height: auto;
}
#keywords_step_1 ul li label {
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
  cursor: pointer;
  padding-bottom: 2rem;
  z-index: 1;
}
#keywords_step_1 ul li input[type="checkbox"] {
  display: none;
}
#keywords_step_1 ul li input[type="checkbox"] + label {
  color: #575757;
  z-index: 2;
}
#keywords_step_1 ul li input[type="checkbox"] + label .k1 {
  display: block;
}
#keywords_step_1 ul li input[type="checkbox"] + label .k2 {
  display: none;
}
#keywords_step_1 ul li input[type="checkbox"]:checked + label {
  color: #fff;
  font-weight: bold;
  background: #dc164b;
  box-shadow: 0 0 0 1px #fff;
}
#keywords_step_1 ul li input[type="checkbox"]:checked + label .k1 {
  display: none;
}
#keywords_step_1 ul li input[type="checkbox"]:checked + label .k2 {
  display: block;
}

#demand_step_index {
  position: relative;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  max-width: 1045px;
  margin: 0 auto;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
#demand_step_index:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  margin-top: -0.75rem;
  left: 6%;
  width: 88%;
  border-bottom: 1px solid #888;
}
#demand_step_index li {
  position: relative;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  text-align: center;
  z-index: 1;
}
#demand_step_index li i {
  display: block;
  width: 30px;
  height: 30px;
  margin: 0 auto;
  margin-bottom: 10px;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 30px;
  color: #b4b4b4;
  background: #fff;
  border: 1px solid #b4b4b4;
  border-radius: 100%;
}
#demand_step_index li p {
  font-size: 1rem;
  color: #777;
}
#demand_step_index li:last-of-type i {
  width: 70px;
  height: 70px;
  line-height: 70px;
  margin-bottom: 0;
}
#demand_step_index li.on i {
  color: #fff;
  background: #dc164b;
  border: 1px solid #dc164b;
}
#demand_step_index li.on p {
  color: #575757;
  font-weight: bold;
}

div[id*='demand_step_'] {
  position: relative;
  display: none;
}
div[id*='demand_step_'] h6 {
  font-size: 2rem;
  line-height: 1.3;
  font-weight: bold;
  padding-left: 10px;
  width: calc(100% - 140px);
  max-width: 860px;
  border-left: 5px solid #193d56;
  margin: 0 auto;
  margin-bottom: 7rem;
}
div[id*='demand_step_'] a.next {
  right: -1rem;
}
div[id*='demand_step_'] a.next span {
  background-image: url("../images/demand_next.png");
}
div[id*='demand_step_'] a.prev {
  left: -1rem;
}
div[id*='demand_step_'] a.prev span {
  background-image: url("../images/demand_prev.png");
}
div[id*='demand_step_'] a.next, div[id*='demand_step_'] a.prev {
  position: absolute;
  width: 60px;
  font-size: 1rem;
  text-align: center;
  color: #dc164b;
  cursor: pointer;
  top: 50%;
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
div[id*='demand_step_'] a.next span, div[id*='demand_step_'] a.prev span {
  display: inline-block;
  width: 100%;
  margin-bottom: 0.5rem;
  background-color: #dc164b;
  background-size: 100% auto;
  background-position: center center;
  border-radius: 100%;
}
div[id*='demand_step_'] a.next span:after, div[id*='demand_step_'] a.prev span:after {
  display: block;
  content: "";
  width: 100%;
  height: 0;
  margin-top: 100%;
}

#demand_step_1 {
  display: block;
}
#demand_step_1 dl {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  width: calc(100% - 140px);
  max-width: 860px;
  margin: 0 auto;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 1px solid #eee;
  margin-bottom: 3rem;
}
#demand_step_1 dl:last-of-type {
  margin-bottom: 0;
  border-bottom: none;
}
#demand_step_1 dl dt {
  font-size: 2rem;
  line-height: 1.3;
  font-weight: bold;
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: 20%;
  margin-bottom: 5rem;
  text-align: center;
}
#demand_step_1 dl dd {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
#demand_step_1 dl:nth-of-type(3) ul.demand_list li {
  width: 20%;
}
#demand_step_1 dl ul.demand_list {
  width: 100%;
}
#demand_step_1 dl ul.demand_list li {
  margin-bottom: 5rem;
}

#analysis_finish {
  display: none;
}
#analysis_finish .wait {
  display: block;
  width: auto;
  max-width: 100%;
  margin: 100px auto;
}
#analysis_finish .analysis_finish {
  display: none;
}

#consultant .title {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-bottom: 3rem;
}
#consultant .title div {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: 60%;
  max-width: 456px;
}
#consultant .title div img {
  display: block;
  width: 100%;
  height: auto;
}
#consultant .title sapn {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  text-align: right;
  font-weight: bold;
  font-size: 1.6rem;
}
#consultant #slide {
  margin-bottom: 4rem;
}
#consultant #slide .slide {
  position: relative;
}
#consultant #slide .slide .flex-direction-nav > li {
  position: absolute;
  top: 50%;
  width: 39px;
  height: 194px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100% auto;
}
#consultant #slide h1{
  text-align: center;
  font-size: 2rem;
  margin-bottom: 1rem;
}
#consultant #slide .slide .flex-direction-nav > li.flex-nav-prev {
  left: -49px;
  background-image: url("../images/consultant_prev.png");
}
#consultant #slide .slide .flex-direction-nav > li.flex-nav-next {
  right: -49px;
  background-image: url("../images/consultant_next.png");
}
#consultant #slide .slide .flex-direction-nav > li a {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  text-indent: -9999px;
}
#consultant #slide .slide .slides {
  overflow: hidden;
}
#consultant #slide .slide .slides > li {
  opacity: 0;
  transition: opacity 0.5s;
}
#consultant #slide .slide .slides > li .img {
  margin-bottom: 3rem;
}
#consultant #slide .slide .slides > li .img img {
  width: 100%;
  height: auto;
}
#consultant #slide .slide .slides > li .img img.pc {
  display: block;
}
#consultant #slide .slide .slides > li .img img.mob {
  display: none;
}
#consultant #slide .slide .slides > li .text {
  margin: 0 auto;
  width: 90%;
  color: #575757;
}
#consultant #slide .slide .slides > li .text .blue {
  color: #6a8cac;
}
#consultant #slide .slide .slides > li .text p {
  font-size: 1.6rem;
  line-height: 1.5;
  margin-bottom: 1.5rem;
  text-align: justify;
  text-justify: inter-ideograph;
}
#consultant #slide .slide .slides > li .text .aia_consultant {
  color: #000;
  position: relative;
}
#consultant #slide .slide .slides > li .text .aia_consultant img {
  display: block;
  width: 30%;
  position: absolute;
  top: 50%;
  right: 4%;
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  box-shadow: 1rem 1rem 1.2rem rgba(0, 0, 0, 0.3);
}
#consultant #slide .slide .slides > li .text .aia_consultant .name {
  font-size: 1.73rem;
}
#consultant #slide .slide .slides > li .text .aia_consultant ol {
  font-size: 1.3rem;
  line-height: 1.5;
  padding: 1.5rem 37% 1.5rem 1rem;
}
#consultant #slide .slide .slides > li .text .aia_consultant ol.red {
  background: #eee;
}
#consultant #slide .slide .slides > li .text .aia_consultant ol li {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 0.5rem;
}
#consultant #slide .slide .slides > li .text .aia_consultant ol li:last-of-type {
  margin-bottom: 0;
}
#consultant #slide .slide .slides > li .text .aia_consultant ol li i {
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
  width: auto;
}
#consultant #slide .slide .slides > li .text .aia_consultant ol li i:before {
  display: inline-block;
  content: "●";
  margin-right: 1rem;
  margin-top: -0.5rem;
  font-size: 0.5rem;
  vertical-align: middle;
}
#consultant #slide .slide .slides > li .text .aia_consultant ol li i:after {
  display: inline-block;
  content: "/";
  margin: 0 1rem;
  vertical-align: middle;
}
#consultant #slide .slide .slides > li .text .aia_consultant ol li span {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
#consultant #aia_consultants {
  width: 90%;
  margin: 0 auto;
  padding-bottom: 2.6rem;
}
#consultant #aia_consultants .aia_consultants_img {
  position: relative;
  height: auto;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}
#consultant #aia_consultants .aia_consultants_img .img {
  display: block;
  width: 48%;
  height: auto;
  -webkit-flex: none;
      -ms-flex: none;
          flex: none;
}
#consultant #aia_consultants .aia_consultants_img .img:first-of-type {
  margin-right: 4%;
  margin-top: 10%;
}
#consultant #aia_consultants .aia_consultants_img .img img {
  display: block;
  width: 100%;
  height: auto;
  box-shadow: 1rem 1rem 1.2rem rgba(0, 0, 0, 0.3);
}
.btn_eazy_calc{
  margin: 0 auto;
  width: 222px;
  height: 66px;
  display: block;
}
.pop { position: fixed; top: 0px; width: 101%; height: 100%; z-index: 9999; overflow-y: scroll; overflow-x: hidden; display: flex; align-items: center; justify-content: center; }

.black_bg { position: fixed; top: 0px; width: 100%; height: 100%; background-color: #000; opacity: 0.85; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=85)"; filter: alpha(opacity=85); -moz-opacity: 0.85; -khtml-opacity: 0.85; }
.pop_final{
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    opacity : 1;
    transition: opacity 0.3s;
    /* display: none; */
}
.pop_final.hidden{
   opacity: 0;
   pointer-events: none;
}
.pop_final_cnt{
    border: 4px solid #d02148;
    max-width: 850px;
    border-radius: 20px;
    background: #fff;
    min-height: 40vh;
    display: flex;
    align-items: center;
    justify-content: space-between;
    z-index: 9999;
    padding: 30px;
    box-sizing: border-box;
    font-size: 30px;
    color: #000;
    line-height: 1.5;
    flex-wrap: wrap;
    position: relative;
}
.pop_final_cnt span{
    color:#d02148;
    display: block;
    margin-top: 20px;
}
.pop_final_cnt small{
    width: 100%;
    font-size: 13px;

}
.btn_gp{
    width: 100%;
    text-align: center;
}
.btn_final{
    display: inline-block;
    margin-bottom: 20px;
}
.btn_x{
    position: absolute;
    cursor: pointer;
    right: -25px;
    top: -25px;
    width: 50px;
    height: 50px;
}

@media only screen and (max-width: 1023px) {
  .pop_final_cnt{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    width: 90%;
}
  header {
    height: 90px;
    color: #dc164b;
    z-index: 97;
  }
  header #logo {
    width: 140px;
    top: 10px;
    left: 3%;
  }
  header .content {
    text-align: center;
    padding: 0;
  }
  header .content .message {
    display: none;
  }
  header #nav_mb {
    display: block;
  }
  header #nav {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    position: fixed;
    overflow: auto;
    top: 90px;
    left: 0;
    width: 100%;
    max-height: calc(100% - 90px);
    height: 0;
    opacity: 0;
    margin: 0;
    padding: 0 20px;
    background: #eee;
    transition: opacity 0.5s;
  }
  header #nav li {
    position: relative;
    -webkit-flex: none;
        -ms-flex: none;
            flex: none;
    text-align: left;
    margin: 0;
    width: 100%;
    padding: 0;
    height: auto;
    line-height: initial;
    font-size: 1.6rem;
    font-weight: bold;
  }
  header #nav li:after {
    display: none;
  }
  header #nav li:hover .subnav {
    height: auto;
    padding-top: 0;
    border-bottom: none;
  }
  header #nav li:first-of-type > a {
    border-top: none;
  }
  header #nav li:nth-last-of-type(1), header #nav li:nth-last-of-type(2) {
    width: 50%;
    background-size: auto 48px;
  }
  header #nav li:nth-last-of-type(1) > a, header #nav li:nth-last-of-type(2) > a {
    display: block;
    width: 100%;
    border-bottom: none;
    height: 80px;
  }
  header #nav li:nth-last-of-type(1) > a:before, header #nav li:nth-last-of-type(2) > a:before {
    display: none;
  }
  header #nav li:nth-last-of-type(1):after, header #nav li:nth-last-of-type(2):after {
    position: absolute;
    display: block;
    content: "";
    width: 0;
    height: 60px;
    top: 10px;
    margin: 0;
  }
  header #nav li:nth-last-of-type(1) {
    background-image: url("../images/nav_youtube_m.png");
  }
  header #nav li:nth-last-of-type(1):after {
    left: 0;
    border-right: 1px solid #fff;
  }
  header #nav li:nth-last-of-type(2) {
    background-image: url("../images/nav_fb_m.png");
  }
  header #nav li:nth-last-of-type(2):after {
    right: 0;
    border-right: 1px solid #d2d2d2;
  }
  header #nav li > a {
    display: block;
    padding: 10px 0;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #d2d2d2; 
  }
  header #nav li > label {
    display: block;
    padding: 10px 0;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #d2d2d2; 
  }
  /* header #nav li > a, header #nav li > label {
    display: block;
    padding: 10px 0;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #d2d2d2;
  }
  header #nav li > label:before, header #nav li > label:after {
    position: absolute;
    display: block;
    content: "";
    width: 15px;
    height: 2px;
    background: #dc164b;
    right: 10px;
    top: 50%;
    margin: -1px;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }
  header #nav li > label:before {
    -ms-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
  }
  header #nav li > label:after {
    -ms-transform: rotate(270deg);
    -webkit-transform: rotate(270deg);
    transform: rotate(270deg);
  } */
  header #nav li .subnav_arrow {
    display: none;
  }
  header #nav li #subnav_ck:checked + label:before {
    -ms-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  header #nav li #subnav_ck:checked + label:after {
    -ms-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  header #nav li #subnav_ck2:checked ~ .subnav {
    display: block;
  }
  header #nav li #subnav_ck2:checked + label:before {
    -ms-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  header #nav li #subnav_ck2:checked + label:after {
    -ms-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  header #nav li #subnav_ck:checked ~ .subnav {
    display: block;
  }
  header #nav li .subnav {
    position: relative;
    /* display: none; */
    height: auto;
    opacity: 1;
    right: inherit;
    width: 100%;
    font-weight: 300;
  }
  header #nav li .subnav #subnav_1_ck:checked + dl dt label:before, header #nav li .subnav #subnav_2_ck:checked + dl dt label:before, header #nav li .subnav #subnav_3_ck:checked + dl dt label:before {
    -ms-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  header #nav li .subnav #subnav_1_ck:checked + dl dt label:after, header #nav li .subnav #subnav_2_ck:checked + dl dt label:after, header #nav li .subnav #subnav_3_ck:checked + dl dt label:after {
    -ms-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  header #nav li .subnav #subnav_1_ck:checked + dl dd, header #nav li .subnav #subnav_2_ck:checked + dl dd, header #nav li .subnav #subnav_3_ck:checked + dl dd {
    display: block;
  }
  header #nav li .subnav dl {
    display: block;
    width: 100%;
    border: none !important;
    background: none;
  }
  header #nav li .subnav dl dt {
    border: none;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #d2d2d2;
    background: none;
    color: #dc164b;
  }
  header #nav li .subnav.nav_s {
    width: 100% !important;
  }
  header #nav li .subnav dl dt label {
    padding: 10px 0 10px 10px;
  }
  header #nav li .subnav dl dt label:before, header #nav li .subnav dl dt label:after {
    position: absolute;
    display: block;
    width: 15px;
    height: 2px;
    background: #dc164b;
    right: 10px;
    top: 50%;
    margin: -1px;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }
  header #nav li .subnav dl dt label:before {
    -ms-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
  }
  header #nav li .subnav dl dt label:after {
    -ms-transform: rotate(270deg);
    -webkit-transform: rotate(270deg);
    transform: rotate(270deg);
  }
  header #nav li .subnav dl dt:before, header #nav li .subnav dl dt:after, header #nav li .subnav dl dt img {
    display: none;
  }
  header #nav li .subnav dl dd {
    display: block;
    border: none;
    margin: 0;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #d2d2d2 !important;
    background: none;
    font-size: 1.4rem;
  }
  header #nav li .subnav dl dd:hover {
    color: #575757;
  }
  header #nav li .subnav dl dd a {
    padding: 10px 0 10px 20px;
  }
  header #nav li .subnav dl dd a:before {
    content: "-";
    display: inline-block;
    margin-right: 5px;
  }

  .prod_list_1 li ol li.sp {
    width: 100%;
  }
  .prod_list_1 li ol li.sp table {
    width: 100%;
  }

  footer ul {
    display: block;
    padding: 0;
  }
  footer ul > li {
    width: 100%;
  }
  footer ul > li.comodo_secure {
    display: none;
  }
  footer ul > li dl {
    margin: 0;
  }
  footer ul > li dl dt {
    background: #4d4d4d;
    border-bottom: 1px solid #333;
  }
  footer ul > li dl dd {
    display: none;
  }
  footer ul > li dl dd:after {
    top: 5px;
    left: 10px;
  }
  footer ul > li dl label {
    position: relative;
    display: block;
    width: 100%;
    padding: 10px;
  }
  footer ul > li dl label:before, footer ul > li dl label:after {
    position: absolute;
    display: block;
    content: "";
    width: 15px;
    height: 2px;
    background: #b4b4b4;
    right: 10px;
    top: 50%;
    margin: -1px;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }
  footer ul > li dl label:before {
    -ms-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
  }
  footer ul > li dl label:after {
    -ms-transform: rotate(270deg);
    -webkit-transform: rotate(270deg);
    transform: rotate(270deg);
  }
  footer ul > li dl a {
    display: block;
    width: 100%;
    padding: 5px 10px;
  }
  footer ul > li input[id*="footer_ck_"]:checked + dl dt label:before {
    -ms-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  footer ul > li input[id*="footer_ck_"]:checked + dl dt label:after {
    -ms-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  footer ul > li input[id*="footer_ck_"]:checked + dl dd {
    display: block;
  }
  footer p {
    padding: 10px;
    text-align: left;
    line-height: 1.8;
  }
  footer p a {
    margin: 0;
    padding: 0;
  }
  footer p a:first-of-type {
    margin-right: 10px;
    padding-right: 10px;
    position: relative;
  }
  footer p a:first-of-type:after {
    content: "";
    position: absolute;
    display: block;
    height: 10px;
    width: 0;
    right: 0;
    top: 4px;
    border-right: 1px solid #666;
  }
  footer p br {
    display: block;
  }
  a.ft_map{
    padding: 10px;
  }
  #nav_ch:checked ~ #wrapper {
    height: 100%;
    overflow: hidden;
  }
  #nav_ch:checked ~ #wrapper #mask {
    height: 100%;
    opacity: 1;
  }
  #nav_ch:checked ~ #wrapper header {
    z-index: 99;
  }
  #nav_ch:checked ~ #wrapper header #nav {
    height: auto;
    opacity: 1;
  }
  #nav_ch:checked ~ #wrapper header #nav_mb i, #nav_ch:checked ~ #wrapper header #nav_mb o, #nav_ch:checked ~ #wrapper header #nav_mb u {
    width: 100%;
    top: 19px;
    opacity: 1;
    -moz-transition: width 0.2s, top 0.2s 0.2s, opacity 0.1s 0.4s, -moz-transform 0.2s 0.4s;
    -o-transition: width 0.2s, top 0.2s 0.2s, opacity 0.1s 0.4s, -o-transform 0.2s 0.4s;
    -webkit-transition: width 0.2s, top 0.2s, opacity 0.1s, -webkit-transform 0.2s;
    -webkit-transition-delay: 0s, 0.2s, 0.4s, 0.4s;
    transition: width 0.2s, top 0.2s 0.2s, opacity 0.1s 0.4s, -webkit-transform 0.2s 0.4s;
    transition: width 0.2s, top 0.2s 0.2s, opacity 0.1s 0.4s, transform 0.2s 0.4s;
    transition: width 0.2s, top 0.2s 0.2s, opacity 0.1s 0.4s, transform 0.2s 0.4s, -webkit-transform 0.2s 0.4s;
  }
  #nav_ch:checked ~ #wrapper header #nav_mb o {
    opacity: 0;
  }
  #nav_ch:checked ~ #wrapper header #nav_mb i {
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  #nav_ch:checked ~ #wrapper header #nav_mb u {
    -ms-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }

  #index_top_banner {
    border: none;
  }
  #index_top_banner #slide {
    margin-top: 0;
  }
  #index_top_banner #slide > button {
    z-index: 5;
  }
  #index_top_banner #slide > button:first-of-type {
    -ms-transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
  }
  #index_top_banner #slide > button:last-of-type {
    -ms-transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
  }
  #index_top_banner #slide .message {
    display: none;
  }

  .slide_content {
    display: block;
  }
  .slide_content.award:after {
    display:none;
  }
   .slide_content.award2:after {
    display:none;
  }
  .slide_content .img {
    width: 100%;
    margin-bottom: 1rem;
  }
  .slide_content .img img {
    display: block;
    width: 100%;
    height: auto;
    min-width: auto;
    min-height: auto;
  }
  .slide_content .img img.pc {
    display: none;
  }
  .slide_content .img img.mob {
    display: block;
  }
  .slide_content .text {
    padding: 0;
    margin-bottom: 1rem;
    text-align: center;
  }
  .slide_content .text h3.pc{
    display: none;
  }
  .slide_content .text h3.mob{
    display: block
  }
  
  .slide_content .text h3:last-of-type {
    margin-bottom: 1rem;
  }
  .slide_content .text img {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    margin: 0 auto;
  }
  .slide_content .text ol, .slide_content .text small {
    display: none;
  }

  #popup #milestone, #popup #focus, #popup #awards, #popup #scale {
    margin: 10% auto;
  }
  #popup #alert_msg {
    margin: 110px auto;
  }

  #index_list ul {
    width: 100%;
  }
  #index_list ul > li {
    width: 48%;
  }
  #index_list ul > li:nth-of-type(3n+2) {
    margin-left: 0;
    margin-right: 0;
  }
  #index_list ul > li:nth-of-type(even) {
    margin-left: 4%;
  }

  #top_banner .top_info {
    margin-top: 0;
  }
  #top_banner .page_slide .flex-direction-nav .flex-nav-prev, #top_banner .page_slide .flex-direction-nav .flex-nav-next {
    display: none;
  }
  #top_banner .page_slide .flex-control-nav {
    left: 50px;
    right: 50px;
  }
  #top_banner .page_slide .flex-control-nav li a {
    background: #fff;
    box-shadow: -2px -2px 5px rgba(0, 0, 0, 0.2) inset, 0 0 0 3px rgba(225, 33, 78, 0);
  }
  #top_banner .page_slide .flex-control-nav li a:before {
    display: none;
  }
  #top_banner .page_slide .flex-control-nav li a i {
    bottom: 22px;
  }

  .canscroll img {
    margin-bottom: 1rem;
  }
  .canscroll img.pc {
    display: none;
  }
  .canscroll img.mob {
    display: block;
    width: 100%;
  }

  ul.lf_w > li {
    -webkit-flex: none;
        -ms-flex: none;
            flex: none;
    width: 100%;
  }
  ul.lf_w > li > img {
    width: 70%;
    max-width: 300px;
    margin: 2rem auto 0 auto;
  }
  ul.lf_w > li ol {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  #form ul.form_con > li:first-of-type {
    width: 100%;
    height: auto;
    margin-right: 0;
    margin-bottom: 2rem;
  }
  #form ul.form_con > li ol {
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #form ul.form_con > li ol li img {
    display: block;
    width: 100%;
  }
  #form ul.form_con > li ol li.no_f img {
    -ms-transform: rotate(-90deg);
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
  }

  #page_top_banner {
    margin-top: 0;
    padding-bottom: 0;
  }

  .planning_list li {
    padding: 50px 0;
  }

  .pry_form {
    display: block;
  }
  .pry_form:after {
    border-width: 40px 40px 0 40px;
  }
  .pry_form > li:last-of-type {
    max-width: 100%;
    width: 100%;
    margin-right: 0;
  }
  .pry_form > li:last-of-type img.pc {
    display: none;
  }
  .pry_form > li:last-of-type img.mob {
    display: block;
  }
  .pry_form > li:first-of-type {
    margin-bottom: 30px;
  }
  .pry_form > li button {
    cursor: pointer;
    background: #f8b54b;
    color: #000;
    border: none;
    width: 100%;
    max-width: 240px;
    font-size: 1.8rem;
    font-weight: bold;
    padding: 8px 0;
    border-radius: 1.3rem;
    transition: background 0.5s;
  }
  .pry_form > li button:hover {
    background: #dc164b;
    color: #fff;
  }
  .pry_form > li ol {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    text-align: center;
    height: 100%;
  }
  .pry_form > li ol li {
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
  .pry_form > li ol li.no_f {
    -webkit-flex: none;
        -ms-flex: none;
            flex: none;
  }

  #sitemap {
    display: block;
  }
  #sitemap dl {
    display: block;
    margin-right: 0;
    margin-bottom: 3rem;
  }

  div[id*='demand_step_'] a.next, div[id*='demand_step_'] a.prev {
    font-size: 0;
    width: 40px;
  }
  div[id*='demand_step_'] h6 {
    margin-bottom: 5rem;
  }

  #demand_step_1 dl {
    display: block;
    width: calc(100% - 140px);
  }
  #demand_step_1 dl dt {
    font-size: 2rem;
    padding-left: 10px;
    width: 100%;
    border-left: 5px solid #193d56;
    margin: 0 auto;
    margin-bottom: 4rem;
    text-align: left;
  }
  #demand_step_1 dl dt br {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  #request_ch:checked ~ #wrapper #request_fixed {
    overflow: initial;
  }
  #request_ch:checked ~ #wrapper #request_fixed .request_bt li label {
    background: #dc164b;
  }
  #request_ch:checked ~ #wrapper #request_fixed .request_content {
    -ms-transform: translateY(-100%);
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
    transition: -webkit-transform 0.5s;
    transition: transform 0.5s;
    transition: transform 0.5s, -webkit-transform 0.5s;
  }

  header {
    height: 60px;
  }
  header #logo {
    width: 100px;
    top: 6px;
  }
  header #nav {
    top: 60px;
    max-height: calc(100% - 60px);
  }

  footer p {
    font-size: 1.2rem;
    padding-bottom: 60px;
  }
  footer ul > li dl {
    font-size: 1.2rem;
  }
  footer ul > li dl dt {
    font-size: 1.4rem;
  }
  a.ft_map{
    padding: 10px;
  }

  html, body {
    font-size: 10px;
  }

  small.annotation {
    font-size: 1rem;
  }

  small.example {
    font-size: 1rem;
    line-height: 1.6;
    margin-bottom: 2rem;
    background-size: 50px auto;
  }

  table.style_1 th, table.style_1 td {
    padding: 10px 2px;
  }

  table.style_2 th, table.style_2 td {
    padding: 5px;
  }
  /* table.style_2 br {
    display: none;
  } */
  table.style_2 br.mob {
    display: block;
  }

  #request_fixed {
    width: 100%;
    height: 50px;
    top: auto;
    bottom: 0;
    -ms-transform: translateX(0);
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  #request_fixed input[type="radio"] + label, #request_fixed input[type="checkbox"] + label {
    font-size: 1.5rem;
  }
  #request_fixed input[type="radio"] + label o, #request_fixed input[type="checkbox"] + label o {
    width: 1.2rem;
    height: 1.2rem;
  }
  #request_fixed #request_ck + label {
    padding-left: 3.5rem;
  }
  #request_fixed #request_ck + label o {
    width: 2rem;
    height: 2rem;
  }
  #request_fixed .request_bt {
    position: relative;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 100%;
    z-index: 5;
    -ms-transform: translateX(0);
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  #request_fixed .request_bt li {
    font-size: 1.6rem;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
    line-height: 50px;
    font-weight: bold;
    width: auto;
  }
  #request_fixed .request_bt li label, #request_fixed .request_bt li a {
    background: #dc164b;
    padding: 0;
  }
  #request_fixed .request_bt li label:hover, #request_fixed .request_bt li a:hover {
    background: #dc164b;
  }
  #request_fixed .request_bt li label:after, #request_fixed .request_bt li a:after {
    display: none;
  }
  #request_fixed .request_bt li i {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    width: 30px;
    left: initial;
    bottom: initial;
    margin-left: 0;
    margin-right: 6px;
    -ms-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  #request_fixed .request_bt li i:before {
    display: block;
    height: 0;
    content: "";
    margin-top: 100%;
  }
  #request_fixed .request_bt li:first-of-type {
    display: block;
    border-right: 1px solid #c10c3c;
  }
  #request_fixed .request_bt li:first-of-type i {
    background-image: url("../images/request_bt_icon_04.png");
  }
  #request_fixed .request_bt li:nth-of-type(2) {
    display: block;
    border-right: 1px solid #c10c3c;
    border-left: 1px solid #e63c69;
  }
  #request_fixed .request_bt li:nth-of-type(2) i {
    background-image: url("../images/request_bt_icon_02.png");
  }
  #request_fixed .request_bt li:last-of-type {
    border-left: 1px solid #e63c69;
  }
  #request_fixed .request_bt li:last-of-type i {
    background-image: url("../images/request_bt_icon_03.png");
  }
  #request_fixed .request_content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: 30px 15px;
    border: none;
    overflow: auto;
    -ms-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transition: -webkit-transform 0.5s;
    transition: transform 0.5s;
    transition: transform 0.5s, -webkit-transform 0.5s;
  }
  #request_fixed .request_content input[type='text'] {
    font-size: 1.8rem;
  }
  #request_fixed .request_content input[type='text']::-webkit-input-placeholder {
    font-size: 1.3rem;
  }
  #request_fixed .request_content input[type='text']:-moz-input-placeholder {
    font-size: 1.3rem;
  }
  #request_fixed .request_content input[type='text']:-ms-input-placeholder {
    font-size: 1.3rem;
  }
  #request_fixed .request_content h4 {
    font-size: 2.3rem;
    padding-bottom: 20px;
    margin-bottom: 20px;
  }
  #request_fixed .request_content ul li {
    height: 34px;
    line-height: 34px;
  }
  #request_fixed .request_content ul li:before {
    font-weight: bold;
    font-size: 1.8rem;
    line-height: 34px;
  }
  #request_fixed .request_content button {
    font-weight: bold;
    font-size: 1.8rem;
    padding: 8px 40px 8px 25px;
    border-radius: 1.3rem;
  }
  #request_fixed .request_content button:after {
    right: 20px;
  }

  dl.datainput dt {
    font-size: 3rem;
  }
  dl.datainput dd i {
    width: 60px;
  }

  #popup .close {
    width: 30px;
  }
  #popup #milestone img, #popup #focus img, #popup #awards img, #popup #scale img {
    padding: 10px;
  }
  #popup #milestone h2, #popup #focus h2, #popup #awards h2, #popup #scale h2 {
    padding: 20px 5px;
  }
  #popup #focus .text {
    padding: 20px 20px 10px 20px;
  }
  #popup #focus .text label {
    width: 47%;
    margin-right: 6%;
  }
  #popup #focus .text label b {
    width: 68px;
  }
  #popup #focus .text label:nth-of-type(3n) {
    margin-right: 6%;
  }
  #popup #focus .text label:nth-of-type(even) {
    margin-right: 0;
  }

  #content {
    box-shadow: 0 -3px 3px rgba(0, 0, 0, 0.2);
  }
  #content .content {
    padding: 2rem 0;
  }
  #content .content.only_t {
    padding: 2rem 0 0 0;
  }
  #content .content.only_b {
    padding: 0 0 2rem 0;
  }

  #index_top_banner {
    padding-top: 1px;
    padding-bottom: 1px;
    background: url(../images/bg.png) #e6e6e6;
    background-size: auto auto;
  }
  #index_top_banner #slide {
    width: 95%;
    margin-top: 2.5%;
  }
  #index_top_banner #slide:after {
    display: none;
    box-shadow: 0 0 15px 10px rgba(0, 0, 0, 0.2);
  }
  #index_top_banner #slide > i {
    border-width: 15px 15px 0 15px;
    display: none;
  }
  #index_top_banner #slide .slide {
    padding: 5px;
  }
  #index_top_banner #carousel {
    margin-top: 2.5%;
  }
  #index_top_banner #carousel li:nth-of-type(1), #index_top_banner #carousel li:nth-of-type(3) {
    display: none;
  }
  #index_top_banner #carousel li:nth-of-type(2) > div {
    width: 80%;
    padding: 12px;
    box-shadow: 0 5px 5px rgba(0, 0, 0, 0.3);
  }
  #index_top_banner #carousel li:nth-of-type(2) > div:after {
    font-size: 2rem;
    font-weight: bold;
  }
  #index_top_banner #carousel li > div {
    border-radius: 5px;
  }
  #index_top_banner #carousel li > div a:first-of-type {
    left: 12px;
  }
  #index_top_banner #carousel li > div a:last-of-type {
    right: 12px;
  }
  #index_top_banner #carousel li > img {
    display: none;
  }
  .slide_content .text img {
    width: 60%;
    margin: 10px 0 0 10px;
  }

  #index_submenu .content {
    padding: 70;
  }
  #index_submenu.type_1 .info {
    background-image: url("../images/index_submenu_bg_01_m.jpg");
  }
  #index_submenu.type_2 .info {
    background-image: url("../images/index_submenu_bg_01_m.jpg");
  }
  #index_submenu.type_3 .info {
    background-image: url("../images/index_submenu_bg_01_m.jpg");
  }
  #index_submenu.type_4 .info {
    background-image: url("../images/index_submenu_bg_01_m.jpg");
  }
  #index_submenu.type_5 .info {
    background-image: url("../images/index_submenu_bg_01_m.jpg");
  }
  #index_submenu.type_6 .info {
    background-image: url("../images/index_submenu_bg_02_m.jpg");
  }
  #index_submenu.type_7 .info {
    background-image: url("../images/index_submenu_bg_02_m.jpg");
  }
  #index_submenu.type_8 .info {
    background-image: url("../images/index_submenu_bg_02_m.jpg");
  }
  #index_submenu.type_9 .info {
    background-image: url("../images/index_submenu_bg_03_m.jpg");
  }
  #index_submenu .info {
    width: 100%;
    margin-bottom: 10px;
  }
  #index_submenu .info:before {
    display: block;
    height: 0;
    content: "";
    margin-top: 50%;
  }
  #index_submenu .submenu {
    position: relative;
    display: inline-block;
    width: 100%;
    right: initial;
    background: url("../images/notebook_bg_m.png") no-repeat top center;
    background-size: cover;
  }
  #index_submenu .submenu:before {
    display: block;
    height: 0;
    content: "";
    margin-top: 53.333%;
  }
  #index_submenu .submenu ul {
    position: absolute;
    top: 21%;
    bottom: 15%;
    left: 7%;
    right: 7%;
    white-space: nowrap;
    font-size: 0;
  }
  #index_submenu .submenu ul li {
    width: 31%;
    margin-bottom: 0;
  }
  #index_submenu .submenu ul li:before {
    display: block;
    height: 0;
    content: "";
    margin-top: 125%;
  }
  #index_submenu .submenu ul li:nth-of-type(1) {
    background-image: url("../images/notebook_bt_01_m.png");
  }
  #index_submenu .submenu ul li:nth-of-type(1):hover {
    background-image: url("../images/notebook_bt_01_m_h.png");
  }
  #index_submenu .submenu ul li:nth-of-type(2) {
    background-image: url("../images/notebook_bt_02_m.png");
    margin: 0 3.5%;
  }
  #index_submenu .submenu ul li:nth-of-type(2):hover {
    background-image: url("../images/notebook_bt_02_m_h.png");
  }
  #index_submenu .submenu ul li:nth-of-type(3) {
    background-image: url("../images/notebook_bt_03_m.png");
  }
  #index_submenu .submenu ul li:nth-of-type(3):hover {
    background-image: url("../images/notebook_bt_03_m_h.png");
  }

  #index_list ul {
    display: block;
    width: 100%;
    max-width: 320px;
  }
  #index_list ul > li {
    display: inline-block;
    width: 100%;
    min-height: auto;
  }
  #index_list ul > li.style_2:before {
    display: block;
    height: 0;
    content: "";
    margin-top: 100%;
  }
  #index_list ul > li.style_2 .text {
    min-height: 80px;
  }
  #index_list ul > li.style_2 .text h4 {
    font-size: 2rem;
  }
  #index_list ul > li.style_2 .text p {
    font-size: 1.4rem;
  }
  #index_list ul > li.style_3 a .text h5 {
    font-size: 2rem;
  }
  #index_list ul > li.style_3 a .text small {
    font-size: 1.4rem;
  }
  #index_list ul > li:nth-of-type(even) {
    margin-left: 0;
  }
  #index_list ul > li .tag {
    font-size: 2rem;
  }
  #index_list ul > li .more {
    font-size: 1.3rem;
  }
  #index_list ul > li dl {
    font-size: 1.4rem;
  }
  #index_list ul > li dl dt {
    font-size: 2rem;
  }
  #index_list ul > li ol {
    font-size: 1.6rem;
    font-weight: bold;
  }

  #top_banner {
    padding-bottom: 65px;
  }
  #top_banner .top_info {
    padding: 10px;
    margin-bottom: 0;
  }
  #top_banner .top_info > li:nth-of-type(1) {
    margin-right: 0;
    padding-right: 0;
    border: none;
  }
  #top_banner .top_info > li:nth-of-type(2), #top_banner .top_info > li:nth-of-type(3) {
    display: none;
  }
  #top_banner .top_info > li h1 {
    /* display: flex;
    align-items: center; */
    font-style: 1.5rem;
    padding-bottom: 10px;
  }
  #top_banner .top_info > li a.sharetitle{
    display: inline-block;
  }
  #top_banner .top_info > li ul li img {
    max-height: 20px;
  }
  #top_banner .top_info > li ul li p {
    font-size: 1.4rem;
  }
  #top_banner .page_slide {
    padding: 0;
    border-radius: 0;
  }
  #top_banner .page_slide .flex-direction-nav .flex-nav-prev, #top_banner .page_slide .flex-direction-nav .flex-nav-next {
    display: none;
    width: 19px;
    height: 30px;
    bottom: 50%;
    margin-bottom: 0;
    -ms-transform: translateY(50%);
    -webkit-transform: translateY(50%);
    transform: translateY(50%);
  }
  #top_banner .page_slide .flex-direction-nav .flex-nav-prev {
    left: 10px;
    background-image: url("../images/slide_prev_m.png");
  }
  #top_banner .page_slide .flex-direction-nav .flex-nav-next {
    right: 10px;
    background-image: url("../images/slide_next_m.png");
  }
  #top_banner .page_slide .flex-control-nav {
    bottom: 1rem;
    left: 10px;
    right: 10px;
  }
  #top_banner .page_slide .flex-control-nav li a {
    width: 14px;
    height: 14px;
    margin-top: -7px;
    margin-left: -7px;
    box-shadow: -2px -2px 5px rgba(0, 0, 0, 0.2) inset, 0 0 0 3px rgba(225, 33, 78, 0);
  }
  #top_banner .page_slide .flex-control-nav li a.flex-active {
    box-shadow: -2px -2px 5px rgba(0, 0, 0, 0.5) inset, 0 0 0 3px rgba(225, 33, 78, 0.8);
  }
  #top_banner .page_slide .flex-control-nav li a:before {
    display: none;
  }
  #top_banner .page_slide .flex-control-nav li a i {
    bottom: 18px;
    text-shadow: 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 2px #fff, 0px 0px 5px rgba(0, 0, 0, 0.2), 0px 0px 5px rgba(0, 0, 0, 0.2), 0px 0px 5px rgba(0, 0, 0, 0.2), 0px 0px 5px rgba(0, 0, 0, 0.2), 0px 0px 5px rgba(0, 0, 0, 0.2), 0px 0px 5px rgba(0, 0, 0, 0.2);
  }
  #top_banner .page_slide img.pc {
    display: none;
  }
  #top_banner .page_slide img.mb {
    display: block;
  }

  #tab_menu {
    padding-top: 10px;
  }
  #tab_menu ul {
    padding: 0 1rem;
  }
  #tab_menu ul li {
    font-size: 1.6rem;
    height: 40px;
  }
  #tab_menu ul li:after {
    bottom: -2px;
    height: 2px;
    box-shadow: 0 -3px 3px rgba(0, 0, 0, 0.2);
  }
  #tab_menu ul li.on {
    height: 55px;
  }
  #tab_menu ul li:last-of-type {
    height: 40px !important;
  }
  #tab_menu ul li img {
    display: none;
  }

  .prod_title {
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    border-top: none;
    padding-bottom: 2rem;
    margin-bottom: 2rem;
  }
  .prod_title .img {
    max-width: 50%;
    margin-right: 0;
    margin-bottom: 1rem;
  }
  .prod_title .img.style_2 {
    max-width: 30%;
  }
  .prod_title .img img {
    width: 100%;
    height: auto;
  }
  .prod_title .text {
    -webkit-flex: none;
        -ms-flex: none;
            flex: none;
    width: 100%;
    text-align: center;
  }
  .prod_title .text h4 {
    font-size: 1.8rem;
  }
  .prod_title .text p {
    font-size: 1.4rem;
  }
  .prod_title .text p span {
    margin: 0;
    padding: 2px 4px;
    border-radius: 8px;
  }

  .prod_title_list li {
    padding: 0;
  }

  .prod_list {
    text-align: initial;
  }
  .prod_list > li {
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-bottom: 3rem;
    padding: 0;
  }
  .prod_list > li .icon {
    margin-right: 0;
    max-width: 110px;
  }
  .prod_list > li .text {
    -webkit-flex: none;
        -ms-flex: none;
            flex: none;
    width: 100%;
  }
  .prod_list > li .text h4 {
    margin-top: 1rem;
  }

  .prod_list_1 {
    text-align: initial;
  }

  dl.note_list {
    text-align: initial;
  }

  #prod_news .prod_news_content {
    padding: 30px;
  }
  #prod_news .prod_news_content .flexslider ul.slides li h2 {
    font-size: 1.6rem;
  }
  #prod_news .prod_news_content .flexslider ul.slides li h2 br {
    display: none;
  }
  #prod_news .prod_news_content .flexslider ul.slides li.h3spec h3 {
    font-size: 1.6rem;
  }
  #prod_news .prod_news_content .flexslider ul.slides li.h3spec h3 br {
    display: none;
  }
  #prod_news .prod_news_content .flexslider ul.slides li .text {
    font-size: 1.4rem;
    display: block;
  }
  #prod_news .prod_news_content .flexslider ul.slides li .text img {
    display: block;
    margin: 0 auto 1rem auto;
    max-width: 30%;
  }

  #qa li .q {
    padding-right: 70px;
  }
  #qa li .q:hover i {
    background: #9b8b8b;
  }
  #qa li .q img, #qa li .a img {
    width: 45px;
  }

  #table_tab_menu {
    margin-top: 0;
  }
  #table_tab_menu li {
    height: 40px;
    font-size: 1.4rem;
  }
  #table_tab_menu li.sp:before {
    width: 40px;
    height: 29px;
  }
  #table_tab_menu li:after {
    bottom: -2px;
    height: 2px;
    box-shadow: 0 -3px 3px rgba(0, 0, 0, 0.2);
  }
  #table_tab_menu li.on {
    height: 55px;
  }

  #form ul.form_con {
    width: 100%;
  }
  #form ul.form_con > li:last-of-type {
    min-height: auto;
    padding: 20px;
    background: #fff !important;
  }
  #form ul.form_con > li dl dd {
    background-color: #fff;
  }
  #form ul.form_con > li ol li.no_f {
    width: 14px;
  }

  #page_top_banner .banner {
    padding: 10px;
  }
  #page_top_banner .banner img.pc {
    display: none;
  }
  #page_top_banner .banner img.mob {
    display: block;
  }

  #about ul li {
    display: block;
    margin-bottom: 0;
  }
  #about ul li > div {
    display: inline-block;
    width: 100%;
    margin-bottom: 1rem;
  }
  #about ul li > div:first-of-type {
    margin-right: 0;
  }
  #about ul li .f1:before, #about ul li .f2:before {
    display: block;
    height: 0;
    content: "";
    margin-top: 50%;
  }

  #news_list li a {
    padding: 20px 0;
  }

  .step_title {
    padding: 12px 0;
    margin-bottom: 30px;
  }

  .choose_list {
    margin-bottom: 30px;
  }
  .choose_list li {
    width: 50%;
    padding: 10px;
  }
  .choose_list li:nth-of-type(3n) {
    border-right: 1px solid #dedede;
  }
  .choose_list li:nth-last-of-type(-n+3) {
    border-bottom: 1px solid #dedede;
  }
  .choose_list li:nth-last-of-type(-n+4) {
    border-bottom: 1px solid #dedede;
  }
  .choose_list li:nth-last-of-type(-n+2) {
    border-bottom: none;
  }
  .choose_list li:nth-of-type(2n) {
    border-right: none;
  }
  .choose_list li input[type="checkbox"] + label .title {
    padding-left: 2rem;
  }
  .choose_list li input[type="checkbox"] + label .title o {
    width: 1.5rem;
    height: 1.5rem;
    top: 0;
  }

  #planning_data {
    padding: 20px 30px;
    margin-bottom: 30px;
    border: 3px dotted #dedede;
  }
  #planning_data legend {
    padding-left: 25px;
  }
  #planning_data button {
    box-shadow: 5px 5px 0 0 #dedede;
  }

  #choose_old {
    padding: 0 0 50px 0;
  }
  #choose_old ol li {
    margin: 0 1%;
  }

  .planning_list li {
    padding: 30px 0;
  }
  .planning_list li h6 img {
    height: 30px;
  }
  .planning_list li h6 a {
    padding: 5px 10px;
    font-size: 1.4rem;
    border-radius: 5px;
  }

  .pay_list li:after {
    border-width: 10px 10px 0 10px;
  }

  .pry_form {
    margin-bottom: 40px;
    padding: 0;
  }
  .pry_form:after {
    border-width: 30px 30px 0 30px;
  }
  .pry_form > li:first-of-type {
    min-height: auto;
    padding: 0;
    background: #fff;
  }
  .pry_form > li ol li.no_f {
    width: 14px;
  }

  ul.analysis li {
    display: block;
    padding: 2rem 0;
    margin-bottom: 2rem;
  }
  ul.analysis li:last-of-type {
    padding-bottom: 4rem;
    margin-bottom: 3rem;
  }
  ul.analysis li .icon {
    width: 200px;
    margin-right: 0;
    margin: 0 auto 1rem auto;
  }
  ul.analysis li .text {
    font-size: 1.5rem;
  }
  ul.analysis li .text .bt {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -ms-flexbox;
    display: flex;
    text-align: center;
    margin-top: 2rem;
  }
  ul.analysis li .text .bt a {
    display: block;
    padding: 5px 10px;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
  ul.analysis li .text .bt a:after {
    top: -2px;
    right: 0;
    margin-top: 0;
    margin-left: 10px;
    position: relative;
    display: inline-block;
    vertical-align: middle;
  }

  ul.demand_list {
    width: 100%;
  }
  ul.demand_list li {
    width: 33.3%;
    margin-bottom: 3rem;
  }
  ul.demand_list li label {
    display: block;
    cursor: pointer;
  }
  ul.demand_list li img {
    pointer-events: none;
    display: block;
    width: 100%;
    max-width: 240px;
    margin: 0 auto;
  }
  ul.demand_list li p {
    font-size: 1.5rem;
    line-height: 1.3;
    margin-top: 1rem;
  }
  ul.demand_list li p small {
    font-size: 1.2rem;
  }
  ul.demand_list li input[type="checkbox"], ul.demand_list li input[type="radio"] {
    display: none;
  }
  ul.demand_list li input[type="checkbox"] ~ p, ul.demand_list li input[type="radio"] ~ p {
    color: #575757;
  }
  ul.demand_list li input[type="checkbox"] ~ .k1, ul.demand_list li input[type="radio"] ~ .k1 {
    display: block;
  }
  ul.demand_list li input[type="checkbox"] ~ .k2, ul.demand_list li input[type="radio"] ~ .k2 {
    display: none;
  }
  ul.demand_list li input[type="checkbox"]:checked ~ p, ul.demand_list li input[type="radio"]:checked ~ p {
    color: #dc164b;
  }
  ul.demand_list li input[type="checkbox"]:checked ~ .k1, ul.demand_list li input[type="radio"]:checked ~ .k1 {
    display: none;
  }
  ul.demand_list li input[type="checkbox"]:checked ~ .k2, ul.demand_list li input[type="radio"]:checked ~ .k2 {
    display: block;
  }

  #keywords_step_1 {
    display: block;
  }
  #keywords_step_1 .selected a {
    margin-left: 10px;
  }
  #keywords_step_1 .selected a:after {
    border-width: 6px 0 6px 10px;
    margin-top: -4px;
  }
  #keywords_step_1 ul li {
    width: 25%;
    font-size: 1.6rem;
    line-height: 1.4;
  }
  #keywords_step_1 ul li:nth-of-type(5n) {
    border-right: initial;
  }
  #keywords_step_1 ul li:nth-last-of-type(-n+5) {
    border-bottom: initial;
  }
  #keywords_step_1 ul li:nth-of-type(4n) {
    border-right: 1px solid #575757;
  }
  #keywords_step_1 ul li:nth-last-of-type(-n+4) {
    border-bottom: 1px solid #575757;
  }
  #keywords_step_1 ul li img {
    width: 100%;
    height: auto;
  }
  #keywords_step_1 ul li label {
    position: relative;
    width: 100%;
    height: 100%;
    display: block;
    cursor: pointer;
    padding-bottom: 2rem;
    z-index: 1;
  }
  #keywords_step_1 ul li input[type="checkbox"] {
    display: none;
  }
  #keywords_step_1 ul li input[type="checkbox"] + label {
    color: #575757;
    z-index: 2;
  }
  #keywords_step_1 ul li input[type="checkbox"] + label .k1 {
    display: block;
  }
  #keywords_step_1 ul li input[type="checkbox"] + label .k2 {
    display: none;
  }
  #keywords_step_1 ul li input[type="checkbox"]:checked + label {
    color: #fff;
    font-weight: bold;
    background: #dc164b;
    box-shadow: 0 0 0 1px #fff;
  }
  #keywords_step_1 ul li input[type="checkbox"]:checked + label .k1 {
    display: none;
  }
  #keywords_step_1 ul li input[type="checkbox"]:checked + label .k2 {
    display: block;
  }

  #demand_step_index:after {
    margin-top: 0;
  }
  #demand_step_index li i {
    overflow: hidden;
    margin-bottom: 0;
  }
  #demand_step_index li p {
    display: none;
  }
  #demand_step_index li:last-of-type i {
    width: 30px;
    height: 30px;
    line-height: 30px;
  }
  #demand_step_index li.on i {
    color: #fff;
    background: #dc164b;
    border: 1px solid #dc164b;
  }
  #demand_step_index li.on p {
    color: #575757;
    font-weight: bold;
  }

  div[id*='demand_step_'] {
    padding-bottom: 50px;
    margin-bottom: 5rem;
  }
  div[id*='demand_step_'] h6 {
    width: 100%;
    margin-bottom: 3rem;
  }
  div[id*='demand_step_'] a.next, div[id*='demand_step_'] a.prev {
    font-size: 0;
    top: inherit;
    bottom: 0;
    font-size: 0;
    width: auto;
    -ms-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  div[id*='demand_step_'] a.next i, div[id*='demand_step_'] a.prev i {
    display: none;
  }
  div[id*='demand_step_'] a.next span, div[id*='demand_step_'] a.prev span {
    width: 30px;
    margin-bottom: 0;
    vertical-align: middle;
  }
  div[id*='demand_step_'] a.next {
    right: 0;
  }
  div[id*='demand_step_'] a.next:before {
    content: "下一頁";
    display: inline-block;
    color: #dc164b;
    font-size: 1.4rem;
    margin-right: 10px;
    vertical-align: middle;
  }
  div[id*='demand_step_'] a.prev {
    left: 0;
  }
  div[id*='demand_step_'] a.prev:after {
    content: "上一頁";
    display: inline-block;
    color: #dc164b;
    font-size: 1.4rem;
    margin-left: 10px;
    vertical-align: middle;
  }

  #demand_step_1 dl {
    width: 100%;
  }
  #demand_step_1 dl dt {
    margin-bottom: 1.5rem;
  }
  #demand_step_1 dl:nth-of-type(3) ul.demand_list li {
    width: 33.3%;
  }
  #demand_step_1 dl ul.demand_list li {
    margin-bottom: 3rem;
  }

  .chbox {
    padding-left: 2.5rem;
  }
  .chbox input[type="checkbox"] + o {
    width: 2rem;
    height: 2rem;
  }

  #consultant .title {
    display: block;
    margin-bottom: 2rem;
  }
  #consultant .title div {
    width: 100%;
    max-width: initial;
  }
  #consultant .title div img {
    display: block;
    width: 100%;
    height: auto;
  }
  #consultant .title sapn {
    display: block;
    text-align: left;
    margin-top: 3rem;
  }
  #consultant #slide {
    margin-bottom: 3rem;
  }
  #consultant #slide .slide .flex-direction-nav > li {
    position: fixed;
    width: 30px;
    height: 50px;
    background-color: #6a8cac;
    background-size: 20px auto;
  }
  #consultant #slide .slide .flex-direction-nav > li.flex-nav-prev {
    left: 0;
    background-image: url("../images/slide_prev_m.png");
  }
  #consultant #slide .slide .flex-direction-nav > li.flex-nav-next {
    right: -6%;
    right: 0;
    background-image: url("../images/slide_next_m.png");
  }
  #consultant #slide .slide .slides li .img img.pc {
    display: none;
  }
  #consultant #slide .slide .slides li .img img.mob {
    display: block;
  }
  #consultant #slide .slide .slides li .text p {
    font-size: 1.4rem;
  }
  #consultant #slide .slide .slides li .text .aia_consultant img {
    width: 100%;
    max-width: 150px;
    position: relative;
    top: 0;
    right: 0;
    margin: 0 auto;
    margin-bottom: 2rem;
    -ms-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0);
    box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.3);
  }
  #consultant #slide .slide .slides li .text .aia_consultant ol {
    padding-right: 1rem;
  }
  #consultant #aia_consultants .aia_consultants_img {
    display: block;
  }
  #consultant #aia_consultants .aia_consultants_img .img {
    width: 100%;
  }
  #consultant #aia_consultants .aia_consultants_img .img:first-of-type {
    margin-right: 0;
    margin-top: 0;
    margin-bottom: 2rem;
  }
  

.pop_final_cnt{
    border: 4px solid #d02148;
    width: 85%;
    border-radius: 2rem;
    background: #fff;
    z-index: 9999;
    padding: 0.5rem 2rem 2rem;
    box-sizing: border-box;
    font-size: 2rem;
    color: #000;
    line-height: 1;
    flex-wrap: wrap;
    position: relative;
}
.pop_final_cnt span{
    color:#d02148;
    display: block;
}
.pop_final_cnt small{
    width: 100%;
    font-size: 1.5rem;
    line-height: 1;

}
.pop_final_info{
    margin-top: 5rem;
}
.btn_gp{
    width: 100%;
    text-align: center;
    margin-top: 2rem;
    margin-bottom: 2rem;
}
.btn_final{
    display: inline-block;
}
.btn_x{
    position: absolute;
    cursor: pointer;
    right: -25px;
    top: -25px;
    width: 50px;
    height: 50px;
}
.pop_final_img{
  width: 15rem;
  margin: 2rem auto 1rem;
}
.btn_final{
    width: 15rem;
    margin: 0 auto;
}

.btn_final img,.pop_final_img img{ width: 100%; }
}

/*-----jeter modify 20250210 start-----*/
.hassle{
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.hassle .extracomment{
  padding-right: 5px;
  font-size: 1rem;
  flex: 1;
}

.hassle small.source{
  display: inline-block !important;
  margin: 15px 0;
}
/*-----jeter modify 20250210 end-----*/

/*--20250212 jeter modify start--*/

span.extramemo{
  display: inline-block;
  width: 100%;
  font-size: 1rem;
  font-weight: normal !important;
}

/*--20250212 jeter modify start--*/

