@charset "UTF-8";
.toTop, .pagetop, .to_topbox, #pageTop, .p-sensya-goTop {
  display: none !important; }

.main_outer1 {
  background-color: #f7f7f7;
  padding: 10px;
  padding-bottom: 0; }
  @media (max-width: 767px) {
    .main_outer1 {
      padding: 1.33333333vw;
      padding-bottom: 0; } }

.main_outer2 {
  background-color: #fff;
  border-radius: 3px;
  padding: 1px; }

main html, main body, main div, main span, main applet, main object, main iframe,
main h1, main h2, main h3, main h4, main h5, main h6, main p, main blockquote, main pre,
main a, main abbr, main acronym, main address, main big, main cite, main code,
main del, main dfn, main em, main img, main ins, main kbd, main q, main s, main samp,
main small, main strike, main strong, main sub, main sup, main tt, main var,
main b, main u, main i, main center,
main dl, main dt, main dd, main ol, main ul, main li,
main fieldset, main form, main label, main legend,
main table, main caption, main tbody, main tfoot, main thead, main tr, main th, main td,
main article, main aside, main canvas, main details, main embed,
main figure, main figcaption, main footer, main header, main hgroup,
main menu, main nav, main output, main ruby, main section, main summary,
main time, main mark, main audio, main video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline; }

main html {
  line-height: 1; }

main ol, main ul {
  list-style: none; }

main table {
  border-collapse: collapse;
  border-spacing: 0; }

main caption, main th, main td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle; }

main q, main blockquote {
  quotes: none; }

main q:before, main q:after, main blockquote:before, main blockquote:after {
  content: "";
  content: none; }

main a img {
  border: none; }

main article, main aside, main details, main figcaption, main figure, main footer, main header, main hgroup, main main, main menu, main nav, main section, main summary {
  display: block; }

@media all and (min-width: 768px) {
  main .sp_br {
    display: none; } }

@media all and (max-width: 767px) {
  main .pc_br {
    display: none; } }

main {
  width: 100%;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%;
  font-size: 16px;
  word-wrap: break-word;
  overflow-wrap: break-word;
  line-height: 1.2;
  vertical-align: top;
  color: #333333; }

@media all and (max-width: 767px) {
  main {
    font-size: 3.4667vw; } }

main *, main *:before, main *:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

main a {
  text-decoration: none;
  color: #3C3C3C; }

main a {
  -webkit-transition-property: opacity;
  transition-property: opacity;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s; }

main a:hover {
  opacity: 0.7; }

body main {
  position: relative; }

body main .contents {
  width: 1120px;
  margin: auto; }

@media all and (max-width: 767px) {
  body main .contents {
    width: auto;
    margin: auto; } }

body main .buttons {
  margin: 60px 0;
  padding: 0 2px;
  text-align: center;
  font-size: 0; }

@media all and (max-width: 767px) {
  body main .buttons {
    margin: 10.6667vw 0;
    text-align: center;
    padding: 0 0.3333vw; } }

body main .buttons .button {
  display: inline-block;
  text-align: center;
  background-color: #ed1a3a;
  border-radius: 4px;
  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
  color: white;
  font-size: 14px;
  font-weight: bold;
  min-width: 320px;
  line-height: 1;
  padding: 16px;
  position: relative;
  vertical-align: middle;
  cursor: pointer;
  -webkit-transition-property: background-color;
  transition-property: background-color; }

@media all and (min-width: 768px) {
  body main .buttons .button:nth-child(n+2) {
    margin-left: 30px; } }

body main .buttons .button.white {
  background-color: white;
  color: #333333; }

body main .buttons .button.white::before {
  background-image: url("../img/arrow_r_right.png"); }

body main .buttons .button.white:hover {
  background-color: white; }

body main .buttons .button:hover {
  background-color: #ed656e;
  opacity: 1; }

body main .buttons .button.overlay::before {
  -webkit-transition-property: opacity;
  transition-property: opacity;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s; }

body main .buttons .button.overlay:hover {
  opacity: 1; }

body main .buttons .button.overlay:hover::before {
  opacity: 0.5; }

body main .buttons .button.overlay:hover > * {
  opacity: 0.5; }

body main .buttons .button.overlay > * {
  -webkit-transition-property: opacity;
  transition-property: opacity;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s; }

body main .buttons .button.gray {
  background-color: #f2f2f2;
  color: #333333;
  -webkit-transition-property: opacity;
  transition-property: opacity; }

body main .buttons .button.gray:hover {
  opacity: 0.7; }

@media all and (min-width: 768px) {
  body main .buttons .button.gray {
    width: 300px;
    padding: 12px; } }

body main .buttons .button.gray::before {
  background-image: url("../img/arrow_r_right.png"); }

body main .buttons .button.drawer {
  background-color: #f2f2f2;
  color: #333333;
  -webkit-transition-property: opacity;
  transition-property: opacity;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s; }

body main .buttons .button.drawer:hover {
  opacity: 0.7; }

@media all and (min-width: 768px) {
  body main .buttons .button.drawer {
    width: 300px; } }

body main .buttons .button.drawer::before {
  background-image: url("../img/arw_plus.png"); }

body main .buttons .button.drawer.opening::before, body main .buttons .button.drawer.opened::before {
  background-image: url("../img/arw_neg.png"); }

body main .buttons .button > img {
  float: left;
  display: block;
  height: 100%;
  width: auto;
  margin-right: 15px; }

@media all and (max-width: 767px) {
  body main .buttons .button > img {
    margin-right: 4vw; } }

@media all and (max-width: 767px) {
  body main .buttons .button {
    display: block;
    text-align: left;
    border-radius: 0.8vw;
    -webkit-box-shadow: 0 0.5333vw 0.6667vw rgba(0, 0, 0, 0.2);
    box-shadow: 0 0.5333vw 0.6667vw rgba(0, 0, 0, 0.2);
    font-size: 3.4667vw;
    min-width: auto;
    padding: 4vw; } }

body main .buttons .button::before {
  content: "";
  background-image: url("../img/arrow_w_right.png");
  background-size: 100% 100%;
  position: absolute;
  width: 18px;
  height: 18px;
  right: 16px;
  top: 50%;
  margin-top: -9px; }

@media all and (max-width: 767px) {
  body main .buttons .button::before {
    width: 4.2667vw;
    height: 4.2667vw;
    right: 4vw;
    top: 50%;
    margin-top: -2.1333vw; } }

body main .buttons .button[target='_blank']::after {
  display: inline-block;
  content: "";
  width: 19px;
  height: 15px;
  background-image: url("../../st-template/img/link_l.png");
  background-size: 100% 100%;
  margin-left: 10px;
  margin-bottom: -2px; }

@media all and (max-width: 767px) {
  body main .buttons .button[target='_blank']::after {
    width: 3.7333vw;
    height: 3.4667vw;
    margin-left: 2.6667vw;
    margin-bottom: 0; } }

body main .buttons.link_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 1120px;
  margin: 40px auto; }

@media all and (max-width: 767px) {
  body main .buttons.link_list {
    width: 90.4vw; } }

body main .buttons.link_list .button {
  background-color: #f2f2f2;
  color: #333333;
  font-weight: bold;
  text-align: left;
  width: 550px;
  margin: 0 0 16px 0;
  -webkit-transition-property: opacity;
  transition-property: opacity; }

body main .buttons.link_list .button:hover {
  background-color: #f2f2f2;
  opacity: 0.7; }

@media all and (max-width: 767px) {
  body main .buttons.link_list .button {
    width: 100%;
    margin: 0 0 1.8667vw 0; } }

body main .buttons.link_list .button::before {
  background-image: url("../img/arrow_r_right.png"); }

body main .products {
  width: 1120px;
  border-width: 1px;
  border-color: #d7d7d7;
  border-style: solid none solid none;
  position: relative;
  margin-bottom: 60px; }

@media all and (max-width: 767px) {
  body main .products {
    border: 0.2667vw none #ececec;
    border-top-style: solid;
    margin-bottom: 8vw;
    width: 90.4vw;
    margin-left: auto;
    margin-right: auto; } }

body main .products::before {
  content: "";
  position: absolute;
  background-color: white;
  width: 51px;
  height: 3px;
  left: 0;
  top: -1.8px; }

@media all and (max-width: 767px) {
  body main .products::before {
    width: 8.25vw;
    height: 0.5333vw;
    top: -0.2667vw; } }

body main .products::after {
  content: "";
  position: absolute;
  background-image: url("../img/h2.png");
  background-size: 100% 100%;
  width: 50px;
  height: 3px;
  left: 0;
  top: -1.8px; }

@media all and (max-width: 767px) {
  body main .products::after {
    width: 8vw;
    height: 0.5333vw;
    top: -0.4667vw; } }

body main .products h2 {
  font-size: 24px;
  font-weight: bold;
  padding-top: 20px;
  padding-bottom: 10px; }

@media all and (max-width: 767px) {
  body main .products h2 {
    font-size: 4.8vw;
    padding-top: 5.3333vw;
    padding-bottom: 8vw; } }

@media all and (max-width: 767px) {
  body main .products.no_info {
    border-bottom: 0.2667vw solid #ececec; }
  body main .products.no_info h2 {
    border: none;
    padding-bottom: 0vw; } }

body main .products .products_items {
  overflow: hidden;
  font-size: 0;
  width: 1120px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

@media all and (max-width: 767px) {
  body main .products .products_items {
    width: 90.4vw; } }

body main .products .products_items .products_item {
  vertical-align: top;
  margin: 30px 28px 30px 0;
  width: 255px; }

@media all and (min-width: 768px) {
  body main .products .products_items .products_item:nth-child(4n) {
    margin-right: 0; } }

@media all and (max-width: 767px) {
  body main .products .products_items .products_item {
    margin: 0 3.3333vw 4.6667vw 0;
    width: 43.2vw;
    overflow: hidden; }
  body main .products .products_items .products_item:nth-child(2n) {
    margin-right: 0; }
  body main .products .products_items .products_item:nth-last-child(1), body main .products .products_items .products_item:nth-last-child(2) {
    margin-bottom: 0; } }

body main .products .products_items .products_item .img {
  margin-bottom: 25px;
  border: solid 1px #d9d9d9; }

body main .products .products_items .products_item .img img {
  display: block;
  width: 100%;
  height: auto; }

@media all and (max-width: 767px) {
  body main .products .products_items .products_item .img {
    margin-bottom: 3.3333vw; } }

body main .products .products_items .products_item .copy {
  font-size: 12px;
  font-weight: bold;
  line-height: 1.8;
  margin-bottom: 10px; }

@media all and (max-width: 767px) {
  body main .products .products_items .products_item .copy {
    font-size: 2.9333vw;
    margin-bottom: 1.7vw; } }

body main .products .products_items .products_item .maker {
  color: #666666;
  font-size: 12px;
  margin-bottom: -10px; }

@media all and (max-width: 767px) {
  body main .products .products_items .products_item .maker {
    margin-bottom: -3.2vw;
    font-size: 2.9333vw; } }

body main .products .products_items .products_item .name {
  font-size: 14px;
  font-weight: bold;
  line-height: 1.6;
  margin-bottom: 5px; }

@media all and (max-width: 767px) {
  body main .products .products_items .products_item .name {
    font-size: 3.2vw;
    margin-bottom: 0.6667vw; } }

body main .products .products_items .products_item .price {
  font-size: 18px;
  font-weight: bold;
  color: #ed1a3b;
  margin-bottom: 20px; }

@media all and (max-width: 767px) {
  body main .products .products_items .products_item .price {
    font-size: 3.2vw;
    margin-bottom: 4.6667vw;
    margin-top: -2.6667vw; } }

body main .products .products_items .products_item .price.tax::after {
  font-size: 66.66%;
  content: "+税"; }

@media all and (max-width: 767px) {
  body main .products .products_items .products_item .price.tax::after {
    font-size: 2.9333vw; } }

body main .products .products_items .products_item .link {
  font-size: 14px;
  font-weight: bold;
  line-height: 18px; }

@media all and (max-width: 767px) {
  body main .products .products_items .products_item .link {
    font-size: 3.4667vw;
    line-height: 4.2667vw; } }

body main .products .products_items .products_item .link::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  background-image: url("../img/arrow_r_right.png");
  background-size: 100% 100%;
  width: 18px;
  height: 18px;
  margin-left: 12px; }

@media all and (max-width: 767px) {
  body main .products .products_items .products_item .link::after {
    width: 4.2667vw;
    height: 4.2667vw;
    margin-left: 2vw; } }

body main .products .products_items .products_item .stSiteHeaderSpTitle {
  font-size: 14px;
  font-weight: bold;
  line-height: 1.8;
  margin-bottom: 5px;
  padding: 0;
  text-align: left; }

@media all and (max-width: 767px) {
  body main .products .products_items .products_item .stSiteHeaderSpTitle {
    font-size: 3.2vw;
    margin-bottom: 0.6667vw; } }

body main .products .products_items .products_item .description {
  font-size: 13px;
  font-weight: 400;
  line-height: 2;
  margin-bottom: 20px; }

@media all and (max-width: 767px) {
  body main .products .products_items .products_item .description {
    font-size: 2.9333vw;
    margin-bottom: 4.6667vw; } }

body main .products .products_items .products_item .title {
  font-size: 14px;
  text-align: left;
  padding: 0;
  font-weight: bold;
  line-height: 1.8;
  margin: 15px auto 10px; }

body main .products .products_items a.products_item {
  -webkit-transition-property: none;
  transition-property: none; }

body main .products .products_items a.products_item:hover {
  opacity: 1; }

body main .products .products_items a.products_item:hover .maker,
body main .products .products_items a.products_item:hover .title,
body main .products .products_items a.products_item:hover .name {
  text-decoration: underline; }

body main .products .products_items a.products_item:hover .link,
body main .products .products_items a.products_item:hover .img {
  opacity: 0.7; }

body main .products .products_items a.products_item .link,
body main .products .products_items a.products_item .img {
  -webkit-transition-property: opacity;
  transition-property: opacity;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  opacity: 1; }

body main .faq_detail .detail .info h3,
body main .faq_detail .detail .answer > h3,
body main .maintenance_top .etc_items .item .title h3,
body main .column_detail .article > h2 {
  margin: 50px 0 30px 0;
  font-size: 20px;
  font-weight: bold;
  padding-left: 20px;
  position: relative; }

@media all and (max-width: 767px) {
  body main .faq_detail .detail .info h3,
  body main .faq_detail .detail .answer > h3,
  body main .maintenance_top .etc_items .item .title h3,
  body main .column_detail .article > h2 {
    margin: 6.6667vw 0 4vw 0;
    font-size: 4vw;
    padding-left: 4vw;
    line-height: 1.7; } }

body main .faq_detail .detail .info h3::before,
body main .faq_detail .detail .answer > h3::before,
body main .maintenance_top .etc_items .item .title h3::before,
body main .column_detail .article > h2::before {
  content: "";
  position: absolute;
  left: 0;
  top: 3px;
  background-image: url("../img/column_h2.png");
  background-size: 100% 100%;
  width: 5px;
  height: 20px; }

@media all and (max-width: 767px) {
  body main .faq_detail .detail .info h3::before,
  body main .faq_detail .detail .answer > h3::before,
  body main .maintenance_top .etc_items .item .title h3::before,
  body main .column_detail .article > h2::before {
    top: 1.6vw;
    width: 1.3333vw;
    height: 4vw; } }

body main .faq_detail .detail .answer > h3 {
  margin-top: 10px; }

@media all and (max-width: 767px) {
  body main .faq_detail .detail .answer > h3 {
    margin-top: 0.5333vw; } }

body main ol {
  line-height: 2.4;
  margin-bottom: 20px; }

@media all and (max-width: 767px) {
  body main ol {
    line-height: 1.8;
    margin-bottom: 5.6667vw; } }

body main ol li {
  position: relative;
  padding-left: 30px; }

@media all and (max-width: 767px) {
  body main ol li {
    padding-left: 4.6667vw;
    margin-bottom: 2vw; } }

body main ol li::before {
  position: absolute;
  content: "*.";
  left: 0; }

body main ol li:nth-of-type(1)::before {
  content: "1."; }

body main ol li:nth-of-type(2)::before {
  content: "2."; }

body main ol li:nth-of-type(3)::before {
  content: "3."; }

body main ol li:nth-of-type(4)::before {
  content: "4."; }

body main ol li:nth-of-type(5)::before {
  content: "5."; }

body main ol li:nth-of-type(6)::before {
  content: "6."; }

body main ol li:nth-of-type(7)::before {
  content: "7."; }

body main ol li:nth-of-type(8)::before {
  content: "8."; }

body main ol li:nth-of-type(9)::before {
  content: "9."; }

body main ul {
  line-height: 2.4;
  margin-bottom: 20px; }

@media all and (max-width: 767px) {
  body main ul {
    line-height: 1.8;
    margin-bottom: 5.6667vw; } }

body main ul li {
  position: relative;
  padding-left: 30px; }

@media all and (max-width: 767px) {
  body main ul li {
    padding-left: 4.6667vw;
    margin-bottom: 2vw; } }

body main ul li::before {
  position: absolute;
  content: "・";
  left: 0; }

body main p {
  margin: 30px 0;
  line-height: 1.8; }

@media all and (max-width: 767px) {
  body main p {
    margin: 6vw 0 3vw 0; } }

body main p .note {
  display: block;
  font-weight: bold; }

@media all and (max-width: 767px) {
  body main p .note {
    margin-bottom: 2vw; } }

body main p a {
  display: inline-block;
  position: relative;
  padding-right: 6px; }

@media all and (max-width: 767px) {
  body main p a {
    padding-right: 1.8vw; } }

@media all and (min-width: 768px) {
  body main p a:hover {
    opacity: 1;
    text-decoration: underline; } }

body main p a[target='_blank']::after {
  content: "";
  display: inline-block;
  background-image: url("../img/link.png");
  background-size: 100% 100%;
  width: 11px;
  height: 9px;
  margin-left: 5px; }

@media all and (max-width: 767px) {
  body main p a[target='_blank']::after {
    margin-left: 1.3333vw; } }

body main > * > h1 {
  text-align: center;
  font-weight: bold;
  font-size: 30px;
  line-height: 1;
  margin: 65px 0 50px 0; }

@media all and (max-width: 767px) {
  body main > * > h1 {
    font-size: 5.6vw;
    margin: 10vw 0 6.6667vw 0; } }

body main > * > h1 .sub {
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  margin-bottom: 16px;
  display: block; }

@media all and (max-width: 767px) {
  body main > * > h1 .sub {
    font-size: 3.7333vw;
    margin-bottom: 3.3333vw; } }

body main > * > h2,
body main > * > * > h2 {
  border-top: solid 1px #e4e4e4;
  width: 1120px;
  font-size: 24px;
  font-weight: bold;
  margin: 50px auto 40px auto;
  padding-top: 20px;
  position: relative;
  line-height: 1; }

@media all and (max-width: 767px) {
  body main > * > h2,
  body main > * > * > h2 {
    width: auto;
    font-size: 4.8vw;
    padding-top: 5.3333vw;
    margin: 6.6667vw 4.6667vw; } }

body main > * > h2::before,
body main > * > * > h2::before {
  content: "";
  position: absolute;
  background-color: white;
  width: 51px;
  height: 3px;
  left: 0;
  top: -1.8px; }

@media all and (max-width: 767px) {
  body main > * > h2::before,
  body main > * > * > h2::before {
    width: 8.25vw;
    height: 0.5333vw;
    top: -0.2667vw; } }

body main > * > h2::after,
body main > * > * > h2::after {
  content: "";
  position: absolute;
  background-image: url("../img/h2.png");
  background-size: 100% 100%;
  width: 50px;
  height: 3px;
  left: 0;
  top: -1.8px; }

@media all and (max-width: 767px) {
  body main > * > h2::after,
  body main > * > * > h2::after {
    width: 8vw;
    height: 0.5333vw;
    top: -0.4667vw; } }

body main > * > h2.icon_title,
body main > * > * > h2.icon_title {
  padding-left: 40px; }

@media all and (max-width: 767px) {
  body main > * > h2.icon_title,
  body main > * > * > h2.icon_title {
    padding-left: 8vw; } }

body main > * > h2.icon_title img,
body main > * > * > h2.icon_title img {
  position: absolute;
  width: 24px;
  height: 24px;
  left: 0;
  margin-top: 2px; }

@media all and (max-width: 767px) {
  body main > * > h2.icon_title img,
  body main > * > * > h2.icon_title img {
    width: 4.8vw;
    height: 4.8vw;
    margin-top: 0.1333vw; } }

body main .header_offset {
  pointer-events: none;
  margin-top: -110px;
  padding-top: 110px; }

@media all and (max-width: 767px) {
  body main .header_offset {
    margin-top: -24.5333vw;
    padding-top: 24.5333vw; } }

body main .thumbnail1 {
  display: block;
  overflow: hidden;
  margin: 48px 0 40px; }

@media all and (max-width: 767px) {
  body main .thumbnail1 {
    margin: 6.4vw 0 5.3333vw; } }

body main .thumbnail1 .img {
  display: block;
  width: 600px;
  height: auto;
  float: left;
  margin-right: 35px; }

@media all and (max-width: 767px) {
  body main .thumbnail1 .img {
    width: 100%;
    margin-right: 0; } }

body main .thumbnail1 .img > img {
  width: 100%;
  height: auto; }

body main .thumbnail1 .right {
  float: left;
  width: 480px; }

@media all and (max-width: 767px) {
  body main .thumbnail1 .right {
    width: 100%; } }

body main .thumbnail1 .right .title {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.6;
  margin: 0 0 15px 0; }

@media all and (max-width: 767px) {
  body main .thumbnail1 .right .title {
    font-size: 3.2vw;
    margin: 2.6667vw 0 0vw 0; } }

body main .thumbnail1 p {
  font-size: 14px;
  line-height: 1.8;
  margin: 15px 0; }

@media all and (max-width: 767px) {
  body main .thumbnail1 p {
    font-size: 2.9333vw;
    margin: 1.0667vw 0 2vw 0; } }

body main .thumbnails4, body main .thumbnails4.drawer > div,
body main .thumbnails3 {
  width: 1120px;
  clear: both;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 40px 0 0 0; }

@media all and (max-width: 767px) {
  body main .thumbnails4, body main .thumbnails4.drawer > div,
  body main .thumbnails3 {
    width: 90.4vw;
    margin-left: auto;
    margin-right: auto; } }

body main .thumbnails4 .thumbnail, body main .thumbnails4.drawer > div .thumbnail,
body main .thumbnails3 .thumbnail {
  display: block;
  width: 255px;
  margin-right: 33px;
  margin-bottom: 40px; }

@media all and (max-width: 767px) {
  body main .thumbnails4 .thumbnail, body main .thumbnails4.drawer > div .thumbnail,
  body main .thumbnails3 .thumbnail {
    margin-right: 0;
    margin-bottom: 0; } }

body main .thumbnails4 .thumbnail .img,
body main .thumbnails3 .thumbnail .img {
  display: block; }

body main .thumbnails4 .thumbnail .img > img,
body main .thumbnails3 .thumbnail .img > img {
  display: block;
  width: 100%;
  height: auto; }

body main .thumbnails4 .thumbnail .title,
body main .thumbnails3 .thumbnail .title {
  font-size: 14px;
  margin: 15px 0;
  font-weight: bold;
  line-height: 1.8; }

body main .thumbnails4 .thumbnail p,
body main .thumbnails3 .thumbnail p {
  margin: 15px 0;
  font-size: 13px; }

body main .thumbnails4 .thumbnail .date,
body main .thumbnails3 .thumbnail .date {
  color: #99999999;
  font-size: 12px;
  font-weight: bold; }

body main .thumbnails4 .thumbnail > *:nth-last-child(1), body main .thumbnails4.drawer > div .thumbnail > *:nth-last-child(1),
body main .thumbnails3 .thumbnail > *:nth-last-child(1) {
  margin-bottom: 0; }

body main .thumbnails3 .thumbnail {
  width: 350px; }

@media all and (max-width: 767px) {
  body main .thumbnails3 .thumbnail {
    width: auto; }
  body main .thumbnails3 .thumbnail:nth-of-type(1) {
    padding-top: 0; } }

@media all and (max-width: 767px) {
  body main .thumbnails3 {
    display: block;
    margin: 0 auto; }
  body main .thumbnails3 .thumbnail {
    width: auto;
    padding: 4.8vw 0;
    border: 0.2667vw #e5e5e5 none;
    border-bottom-style: solid;
    overflow: hidden; }
  body main .thumbnails3 .thumbnail .img {
    width: 43.2vw;
    float: left;
    margin-right: 4vw; }
  body main .thumbnails3 .thumbnail .title {
    font-size: 3.2vw;
    margin: -1.3333vw 0 0 0; }
  body main .thumbnails3 .thumbnail p {
    font-size: 2.9333vw;
    margin: 1.0667vw 0;
    width: 42vw;
    display: inline-block; } }

@media all and (min-width: 768px) {
  body main .thumbnails4 .thumbnail:nth-child(4n) {
    margin-right: 0; } }

@media all and (min-width: 768px) {
  body main .thumbnails3 .thumbnail:nth-child(3n) {
    margin-right: 0; } }

@media all and (max-width: 767px) {
  body main .thumbnails4, body main .thumbnails4.drawer > div,
  body main .thumbnails4.drawer > div,
  body main .thumbnails4.drawer > div.drawer > div {
    margin-top: 7.3333vw;
    margin-bottom: 0; }
  body main .thumbnails4 .thumbnail, body main .thumbnails4.drawer > div .thumbnail,
  body main .thumbnails4.drawer > div .thumbnail,
  body main .thumbnails4.drawer > div.drawer > div .thumbnail {
    width: 43.2vw;
    margin-bottom: 0;
    margin-right: 4vw; }
  body main .thumbnails4 .thumbnail:nth-child(2n),
  body main .thumbnails4.drawer > div .thumbnail:nth-child(2n),
  body main .thumbnails4.drawer > div.drawer > div .thumbnail:nth-child(2n) {
    margin-right: 0; }
  body main .thumbnails4 .thumbnail:nth-last-child(n + 3),
  body main .thumbnails4.drawer > div .thumbnail:nth-last-child(n + 3),
  body main .thumbnails4.drawer > div.drawer > div .thumbnail:nth-last-child(n + 3) {
    margin-bottom: 8vw; }
  body main .thumbnails4 .thumbnail .img,
  body main .thumbnails4.drawer > div .thumbnail .img,
  body main .thumbnails4.drawer > div.drawer > div .thumbnail .img {
    width: 43.2vw;
    float: none; }
  body main .thumbnails4 .thumbnail .stSiteHeaderSpTitle,
  body main .thumbnails4.drawer > div .thumbnail .stSiteHeaderSpTitle,
  body main .thumbnails4.drawer > div.drawer > div .thumbnail .stSiteHeaderSpTitle {
    font-size: 3.2vw;
    font-weight: 500;
    margin: 2vw 0 1.0667vw 0; }
  body main .thumbnails4 .thumbnail .date,
  body main .thumbnails4.drawer > div .thumbnail .date,
  body main .thumbnails4.drawer > div.drawer > div .thumbnail .date {
    font-size: 2.9333vw; }
  body main .thumbnails4 .thumbnail p,
  body main .thumbnails4.drawer > div .thumbnail p,
  body main .thumbnails4.drawer > div.drawer > div .thumbnail p {
    font-size: 2.9333vw;
    margin: 1.0667vw 0; } }

body main .thumbnail1,
body main .thumbnail {
  -webkit-transition-property: none;
  transition-property: none; }

body main .thumbnail1 .img,
body main .thumbnail .img {
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: opacity;
  transition-property: opacity; }

body main .thumbnail1:hover,
body main .thumbnail:hover {
  opacity: 1; }

body main .thumbnail1:hover .img,
body main .thumbnail:hover .img {
  opacity: 0.7; }

body main .thumbnail1:hover .title,
body main .thumbnail1:hover .name,
body main .thumbnail:hover .title,
body main .thumbnail:hover .name {
  text-decoration: underline; }

body main .thumbnails4.drawer, body main .thumbnails4.drawer > div.drawer {
  -webkit-transition-duration: 500ms;
  transition-duration: 500ms;
  -webkit-transition-property: height;
  transition-property: height;
  overflow: hidden;
  margin-top: 0;
  display: block; }

body main .thumbnails4.drawer.closed, body main .thumbnails4.drawer > div.drawer.closed {
  height: 0; }

body main .thumbnails4.drawer > div,
body main .thumbnails4.drawer > div.drawer > div {
  margin: 0;
  padding: 0;
  border: none 0; }

@media all and (min-width: 768px) {
  body main .thumbnails4.drawer > div .thumbnail:nth-child(4n), body main .thumbnails4.drawer > div.drawer > div .thumbnail:nth-child(4n) {
    margin-right: 0; } }

@media all and (max-width: 767px) {
  body main .thumbnails4.drawer > div .thumbnail:nth-child(2n),
  body main .thumbnails4.drawer > div.drawer > div .thumbnail:nth-child(2n) {
    margin-right: 0; } }

@media all and (max-width: 767px) {
  body main .thumbnails4.drawer .thumbnail:nth-child(1), body main .thumbnails4.drawer .thumbnail:nth-child(2) {
    padding-top: 8vw; } }

body main .icon_menu {
  margin: 60px auto;
  width: 1120px; }

@media all and (max-width: 767px) {
  body main .icon_menu {
    width: auto;
    padding: 6.4vw 4.5333vw 0;
    margin: 0; } }

body main .icon_menu .icons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 0;
  line-height: 1; }

@media all and (max-width: 767px) {
  body main .icon_menu .icons {
    border: solid 0.2667vw #d7d7d7;
    border-radius: 0.6667vw;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    padding: 4vw 0;
    font-size: 0; } }

body main .icon_menu .icons .icon {
  width: 180px;
  height: 120px;
  text-align: center;
  border-radius: 4px;
  background-color: #f2f2f2;
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  padding-left: 0;
  vertical-align: text-bottom; }

body main .icon_menu .icons .icon::before {
  content: none; }

@media all and (max-width: 767px) {
  body main .icon_menu .icons .icon {
    width: 40vw;
    height: 22.6667vw;
    display: inline-block; }
  body main .icon_menu .icons .icon:nth-child(odd) {
    margin-right: 1.6vw; }
  body main .icon_menu .icons .icon:nth-last-child(n + 3) {
    margin-bottom: 1.6vw; } }

body main .icon_menu .icons .icon a {
  padding: 20px 0 0 0;
  display: block;
  width: 100%;
  height: 100%; }

@media all and (max-width: 767px) {
  body main .icon_menu .icons .icon a {
    padding-top: 4vw; } }

body main .icon_menu .icons .icon a .img {
  display: block;
  height: 45px;
  margin-bottom: 20px; }

@media all and (max-width: 767px) {
  body main .icon_menu .icons .icon a .img {
    height: 8.8vw;
    margin-bottom: 2.6667vw; } }

body main .icon_menu .icons .icon a .img img {
  display: block;
  height: 100%;
  width: auto;
  margin: auto; }

body main .icon_menu .icons .icon a .name {
  font-size: 14px;
  font-weight: bold; }

@media all and (max-width: 767px) {
  body main .icon_menu .icons .icon a .name {
    font-size: 3.2vw; } }

body main .icon_menu .icons .icon a .name .sub {
  display: block;
  line-height: 1.3;
  font-size: 12px;
  margin-top: -6px; }

@media all and (max-width: 767px) {
  body main .icon_menu .icons .icon a .name .sub {
    font-size: 2.4vw;
    margin-top: -1.2vw; } }

body main .icon_menu .buttons {
  margin-top: 30px; }

@media all and (max-width: 767px) {
  body main .icon_menu .buttons {
    margin-top: 4vw; } }

body main .icon_menu .buttons .button {
  height: 60px;
  text-align: left;
  padding: 10px 16px;
  line-height: 40px; }

@media all and (max-width: 767px) {
  body main .icon_menu .buttons .button {
    height: 13.8667vw;
    padding: 2.9333vw 4vw;
    margin-bottom: 1.8667vw;
    font-size: 3.4667vw;
    vertical-align: top;
    line-height: 7.8667vw; } }

body main .questions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  overflow: hidden;
  -webkit-transition: height 500ms linear 0s;
  transition: height 500ms linear 0s;
  margin-bottom: -20px; }

body main .questions.closed .measure {
  height: 0;
  padding-top: 0;
  padding-bottom: 0; }

body main .questions.closed .measure .question {
  opacity: 0;
  pointer-events: none; }

@media all and (max-width: 767px) {
  body main .questions {
    display: block;
    margin: 8vw 0 0 0;
    padding: 0; } }

body main .questions .measure {
  padding-bottom: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 1120px; }

@media all and (max-width: 767px) {
  body main .questions .measure {
    padding-bottom: 0.6667vw;
    width: 90.4vw; } }

body main .questions > .question:nth-child(1),
body main .questions > .question:nth-child(2) {
  margin-top: 0; }

body main .questions .question {
  width: 100%;
  margin: 0 0 20px 0; }

@media all and (max-width: 767px) {
  body main .questions .question {
    width: 100%;
    margin: 0; } }

body main .questions .question .q {
  display: block;
  margin: 20px 0;
  background-color: #f8f1e4;
  text-align: left;
  height: 60px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  padding: 0 50px 0 60px;
  line-height: 57px;
  -webkit-transition-property: opacity;
  transition-property: opacity; }

body main .questions .question .q:hover {
  background-color: #f8f1e4;
  opacity: 0.7; }

@media all and (max-width: 767px) {
  body main .questions .question .q {
    line-height: 1.7;
    white-space: normal;
    height: auto;
    margin: 5.3333vw 0 4vw 0;
    padding: 4vw 12.6667vw 4vw 14vw; } }

body main .questions .question .q::before {
  content: "";
  position: absolute;
  background-image: url("../img/icon_q.png");
  width: 29px;
  height: 29px;
  background-size: 100% 100%;
  left: 15px;
  top: 50%;
  margin-top: -14.5px; }

@media all and (max-width: 767px) {
  body main .questions .question .q::before {
    width: 6.4vw;
    height: 6.4vw;
    left: 4vw;
    margin-top: -3.2vw; } }

body main .questions .question .a {
  text-align: left;
  line-height: 1.8;
  font-size: 14px;
  padding-left: 26px;
  position: relative; }

@media all and (max-width: 767px) {
  body main .questions .question .a {
    font-size: 3.2vw;
    padding-left: 6.4vw; } }

body main .questions .question .a::before {
  content: "A.";
  font-weight: bold;
  position: absolute;
  left: 0;
  top: 0; }

@media all and (max-width: 767px) {
  body main .questions .measure .question .q {
    margin-top: 1.0667vw; } }

@media all and (max-width: 767px) {
  body main .questions + .buttons {
    margin-top: 7vw; } }

body main .page_description {
  font-size: 14px;
  text-align: center; }

@media all and (max-width: 767px) {
  body main .page_description {
    font-size: 3.4667vw; } }

@media all and (max-width: 767px) {
  body main .tab_info {
    margin-bottom: 11.3333vw; } }

body main .tab_info .tabs {
  width: 1120px;
  margin: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  height: 60px;
  line-height: 60px; }

@media all and (max-width: 767px) {
  body main .tab_info .tabs {
    width: 90.4vw;
    height: 12.8vw;
    line-height: 12.8vw; } }

body main .tab_info .tabs .tab {
  height: 100%;
  border-radius: 4px 4px 0 0;
  background-color: #f2f2f2;
  width: 544px;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
  -webkit-transition-duration: 500ms;
  transition-duration: 500ms;
  -webkit-transition-property: opacity;
  transition-property: opacity;
  cursor: pointer; }

@media all and (max-width: 767px) {
  body main .tab_info .tabs .tab {
    border-radius: 0.6667vw 0.6667vw 0 0;
    width: 43.5vw;
    font-size: 3.2vw; } }

body main .tab_info .tabs .tab.selected {
  color: white;
  background-color: #ed1a3a; }

body main .tab_info .tabs .tab:hover {
  opacity: 0.5; }

body main .tab_info .tabs .tab::before {
  content: '';
  width: 22px;
  height: 22px;
  margin-right: 10px;
  display: inline-block;
  vertical-align: middle;
  background-size: 100% 100%;
  line-height: 10;
  margin-top: -5px; }

@media all and (max-width: 767px) {
  body main .tab_info .tabs .tab::before {
    width: 4.2667vw;
    height: 4.2667vw;
    margin-right: 2.4vw;
    margin-top: -0.9333vw; } }

body main .tab_info .tab_contents {
  border-bottom: solid 1px #ed1a3a;
  border-top: solid 1px #ed1a3a;
  overflow: hidden;
  padding-top: 0;
  padding-bottom: 10px; }

@media all and (max-width: 767px) {
  body main .tab_info .tab_contents {
    border-width: 0.5333vw;
    padding-bottom: 0; } }

body main .tab_info .tab_contents .tab_content {
  display: none;
  width: 1120px;
  margin: auto; }

@media all and (max-width: 767px) {
  body main .tab_info .tab_contents .tab_content {
    width: 90.4vw; } }

body main .tab_info .tab_contents .tab_content.selected {
  display: block; }

body main .tab_info .tab_contents .tab_content h2 {
  text-align: center;
  font-size: 28px;
  font-weight: bold;
  line-height: 1;
  color: black;
  margin-bottom: 40px; }

body main .tab_info .tab_contents .tab_content h2 .sub {
  display: block;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.6;
  margin-bottom: 15px; }

@media all and (max-width: 767px) {
  body main .tab_info .tab_contents .tab_content h2 .sub {
    font-size: 3.7333vw;
    margin-bottom: 4vw; } }

@media all and (max-width: 767px) {
  body main .tab_info .tab_contents .tab_content h2 {
    font-size: 5.6vw;
    margin-bottom: 0; } }

@media all and (min-width: 768px) {
  body main .tab_content > .buttons,
  body main > .buttons {
    margin: 50px 0; }
  body main .tab_content > .buttons .button,
  body main > .buttons .button {
    width: 320px; } }
/*# sourceMappingURL=st_style.css.map */