@charset "UTF-8";
html {
  font-size: 4.268vw;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, sans-serif;
  color: #212121;
  line-break: strict;
  word-wrap: break-word;
  overflow-wrap: break-word;
  height: 100%;
}

@media (min-width: 768px) {
  html {
    font-size: 1.1713vw;
  }
}

body {
  margin: 0 calc(100% - 100vw) 0 0;
  background-color: #ededed;
  overflow-y: scroll;
  overflow-x: hidden;
}

body.noscroll {
  overflow: hidden;
  position: relative;
}

body.noscroll::before {
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background-image: url();
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  width: 100%;
  height: 100%;
  content: "";
  z-index: 1;
  background-color: #333333;
  opacity: .5;
}

h1, h2, h3, h4, h5, h6 {
  margin: 0;
}

a {
  color: #212121;
  text-decoration: none;
  -webkit-transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
}

a:focus, a:hover {
  -webkit-transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  color: #212121;
  opacity: 0.7;
}

button, input, select, label {
  cursor: pointer;
}

[class~=globalheader],
[class^=globalheader_] {
  position: fixed;
  top: 0;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 3.125rem;
  background-color: #212121;
  color: #fff;
  -webkit-transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
}

[class~=globalheader].hidden,
[class^=globalheader_].hidden {
  top: -3.1875rem;
  -webkit-transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
}

.noscroll [class~=globalheader], .noscroll
[class^=globalheader_] {
  z-index: 0;
}

@media (min-width: 768px) {
  [class~=globalheader],
  [class^=globalheader_] {
    height: 5rem;
    position: static;
  }
}

.globalheader-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 12.5rem;
  height: 3.125rem;
  font-weight: normal;
}

@media (min-width: 768px) {
  .globalheader-title {
    width: 29.5rem;
    height: 5rem;
  }
}

.globalheader-home {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.625rem;
  width: 10.5rem;
  height: 1.875rem;
}

@media (min-width: 768px) {
  .globalheader-home {
    padding: 1.25rem 0.625rem 1.25rem 1.25rem;
    width: 18.3125rem;
  }
}

.globalheader-logo {
  display: block;
  width: 100%;
}

.globalheader-lead {
  font-size: 0.75rem;
  font-weight: normal;
  display: none;
}

@media (min-width: 768px) {
  .globalheader-lead {
    display: block;
  }
}

.globalheader-menu {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  margin: 0 0 0 auto;
  padding-left: 0;
  width: 6.25rem;
  height: 3.125rem;
}

@media (min-width: 768px) {
  .globalheader-menu {
    position: absolute;
    right: 5rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    width: 47.75rem;
    height: 5rem;
  }
}

.globalheader-button {
  width: 3.125rem;
  height: 3.125rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  background-color: #EB3C46;
  color: #fff;
  cursor: pointer;
}

.globalheader-button > span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.globalheader-button > span img {
  display: block;
  width: 100%;
}

@media (min-width: 768px) {
  .globalheader-button {
    position: fixed;
    z-index: 2;
    right: 0;
    display: block;
    width: 5rem;
    height: 5rem;
  }
}

.globalnav .globalheader-button {
  background-color: #212121;
}

.globalheader-button .icon_menu {
  width: 1.25rem;
  height: 0.9375rem;
}

.globalheader-button .icon_menu img {
  height: auto;
}

@media (min-width: 768px) {
  .globalheader-button .icon_menu {
    width: 1.5rem;
    height: 1.1875rem;
  }
}

.globalheader-button .iconlabel {
  margin-top: 0.375rem;
  width: 1.375rem;
  height: 0.5rem;
}

@media (min-width: 768px) {
  .globalheader-button .iconlabel {
    width: 1.5rem;
    height: 0.5625rem;
  }
}

[class~=globalheader-menuitem],
[class^=globalheader-menuitem_] {
  background-color: #212121;
}

[class~=globalheader-menuitem] a,
[class^=globalheader-menuitem_] a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 3.125rem;
  height: 3.125rem;
  text-decoration: none;
  color: #fff;
}

.globalheader-menuitem_index {
  display: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-left: 0.0625rem #333333 solid;
}

@media (min-width: 768px) {
  .globalheader-menuitem_index {
    position: relative;
    left: 0;
    display: block;
    font-size: 0.75rem;
  }
  .globalheader-menuitem_index a {
    width: 10rem;
    height: 5rem;
  }
}

.globalheader-menuitem_window {
  display: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-left: 0.0625rem #333333 solid;
}

@media (min-width: 768px) {
  .globalheader-menuitem_window {
    position: relative;
    display: block;
    font-size: 0.75rem;
  }
  .globalheader-menuitem_window a {
    width: 10rem;
    height: 5rem;
  }
}

.globalheader-menuitem_history {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-left: 0.0625rem #333333 solid;
}

.globalheader-menuitem_history a {
  width: 3.125rem;
  height: 3.125rem;
}

@media (min-width: 768px) {
  .globalheader-menuitem_history {
    position: relative;
    width: 6.25rem;
    height: 5rem;
    line-height: 1;
    font-size: 0.625rem;
    font-weight: bold;
  }
  .globalheader-menuitem_history a {
    width: 6.25rem;
    height: 5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.globalheader-menuitem_history .iconlabel {
  display: none;
}

@media (min-width: 768px) {
  .globalheader-menuitem_history .iconlabel {
    display: block;
    margin-top: 0.625rem;
    font-weight: normal;
  }
}

.globalheader-menuitem_history .icon_history {
  width: 1.25rem;
  height: 1.25rem;
}

@media (min-width: 768px) {
  .globalheader-menuitem_history .icon_history {
    width: 1.5rem;
    height: 1.5rem;
  }
}

.globalheader-menuitem_tel {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-left: 0.0625rem #333333 solid;
}

.globalheader-menuitem_tel a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media (min-width: 768px) {
  .globalheader-menuitem_tel {
    position: relative;
    width: 15rem;
  }
  .globalheader-menuitem_tel a {
    position: fixed;
    z-index: 2;
    right: 10rem;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    width: 16.25rem;
    height: 5rem;
    background-color: #212121;
    pointer-events: none;
  }
}

.globalheader-menuitem_tel .icon_tel {
  width: 1.125rem;
  height: 1.125rem;
}

@media (min-width: 768px) {
  .globalheader-menuitem_tel .icon_tel {
    display: none;
    width: 1.625rem;
    height: 1.625rem;
  }
}

.globalheader-menuitem_tel .text_tel {
  display: none;
}

@media (min-width: 768px) {
  .globalheader-menuitem_tel .text_tel {
    display: block;
    margin-right: 0.3125rem;
    width: 13.75rem;
    height: 2.75rem;
  }
}

.globalheader-menuitem_line {
  display: none;
}

@media (min-width: 768px) {
  .globalheader-menuitem_line {
    position: fixed;
    z-index: 2;
    right: 5rem;
    display: block;
    width: 5rem;
  }
  .globalheader-menuitem_line a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    background-color: #212121;
    width: 5rem;
    height: 5rem;
  }
}

@media (min-width: 768px) {
  .globalheader-menuitem_line .icon_line {
    width: 1.875rem;
    height: 1.75rem;
  }
}

.globalnav {
  background-color: #212121;
  position: relative;
  z-index: 1;
  color: #fff;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  z-index: 10;
  overflow-x: scroll;
  display: none;
  padding: 3.125rem 1.875rem 0;
  color: #fff;
  opacity: .98;
}

.globalnav a, .globalnav * {
  color: #fff;
}

.globalnav a:hover,
.globalnav a:focus {
  opacity: .7;
}

.globalnav a {
  color: #fff;
}

@media (min-width: 768px) {
  .globalnav {
    overflow-x: hidden;
    padding: 8.75rem 0 0;
  }
  .globalnav a {
    font-size: 1.125rem;
  }
}

.globalnav-footer {
  margin: 0 -1.875rem;
  padding: 1.875rem 0 3.125rem;
  border-top: #333333 0.0625rem solid;
}

@media (min-width: 768px) {
  .globalnav-footer {
    position: fixed;
    bottom: 0;
    right: 0;
    left: 0;
    padding: 1.625rem 0 2.5rem;
  }
  .globalnav-footer > div {
    width: 65rem;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.globalnav .globalheader-button {
  position: fixed;
  top: 0;
  right: 0;
  background-color: transparent;
}

.globalnav .iconlist {
  position: absolute;
  top: 1.25rem;
  left: 1.875rem;
}

@media (min-width: 768px) {
  .globalnav .iconlist {
    position: static;
  }
}

.globalnav-title {
  margin: 2.5rem auto 0;
  width: 16.3125rem;
}

@media (min-width: 768px) {
  .globalnav-title {
    margin: 1.875rem 0 0 auto;
  }
}

.globalnav-logo {
  display: block;
  width: 100%;
  margin: 0 auto;
}

.globalfooter {
  position: relative;
  z-index: 0;
  color: #fff;
}

.globalfooter a {
  color: #fff;
}

.globalfooter-pagetop {
  display: none;
}

@media (min-width: 768px) {
  .globalfooter-pagetop {
    position: absolute;
    display: inline-block;
  }
}

@media (min-width: 768px) {
  .globalfooter-pagetoplink {
    position: fixed;
    right: 1.25rem;
    bottom: 1.25rem;
    width: 0.6875rem;
    height: 7.1875rem;
  }
}

.globalfooter-primary {
  padding: 2.5rem 0.625rem;
  background-color: #333333;
  background-image: radial-gradient(circle at top right, #777, transparent 50%), radial-gradient(circle at bottom left, #777, transparent 50%);
  color: #fff;
}

.globalfooter-primary a {
  color: #fff;
  text-decoration: underline;
}

@media (min-width: 768px) {
  .globalfooter-primary {
    padding: 3.75rem 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

@media (min-width: 768px) {
  .globalfooter-primary-01, .globalfooter-primary-02 {
    max-width: 32.5rem;
  }
}

.globalfooter-primary-02 {
  margin-top: 2.5rem;
}

@media (min-width: 768px) {
  .globalfooter-primary-02 {
    margin-top: 0;
  }
}

.globalfooter-secondary {
  padding: 4rem 0.625rem;
  background-color: #212121;
}

@media (min-width: 768px) {
  .globalfooter-secondary {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
  }
}

.globalfooter-title {
  margin: 2.5rem auto 0;
}

.globalfooter-logo {
  display: block;
  width: 18.5625rem;
  margin: 0 auto;
}

.globalfooter-copywright {
  margin: 1.25rem auto 0;
  color: #aaaaaa;
  line-height: 1;
  text-align: center;
}

.maincontents {
  position: relative;
  z-index: 0;
  padding-top: 3.125rem;
}

.noscroll .maincontents {
  z-index: 3;
}

@media (min-width: 768px) {
  .maincontents {
    padding-top: 0;
  }
}

.eyecatch {
  position: relative;
  border-top: 0.0625rem #333333 solid;
}

.eyecatch .badge_top {
  position: absolute;
  bottom: -3.4375rem;
  right: 2.8125rem;
}

.tabarea {
  margin-top: -1.875rem;
  padding-top: 3.125rem;
}

@media (min-width: 768px) {
  .tabarea {
    margin: 1.25rem 3.125rem 0;
    padding-top: 0;
  }
}

.tabarea-tabs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0;
  padding-left: 0;
  list-style: none;
}

.tabarea-tabs li {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.tabarea-tabs li:nth-child(n+2) {
  border-left: 0.0625rem #fff solid;
}

@media (min-width: 768px) {
  .tabarea-tabs {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    border-bottom: #ededed 0.0625rem solid;
  }
  .tabarea-tabs li {
    width: 17.9375rem;
  }
}

.tabarea-tab {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: none;
  width: 100%;
  height: 3.125rem;
  background-color: #dddddd;
  font-size: 0.75rem;
  font-weight: bold;
  color: #888;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.tabarea-tab.active {
  margin-bottom: -0.0625rem;
  border-top: #EB3C46 0.1875rem solid;
  background-color: #fff;
  font-size: 0.875rem;
  color: #212121;
}

@media (min-width: 768px) {
  .tabarea-tab {
    border-right: #ededed 0.0625rem solid;
    border-left: #ededed 0.0625rem solid;
    font-size: 0.9375rem;
  }
  .tabarea-tab.active {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    height: 3.75rem;
    font-size: 1rem;
  }
}

@media (min-width: 768px) {
  .tabarea-tabpanels {
    margin-top: 1.25rem;
  }
}

.tabarea-tabpanel {
  display: none;
}

.tabarea-tabpanel.show {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

@media (min-width: 768px) {
  .tabarea-tabpanel.show {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

[class~=section],
[class^=section_] {
  padding-bottom: 2.5rem;
}

@media (min-width: 768px) {
  [class~=section],
  [class^=section_] {
    padding-bottom: 3.75rem;
  }
}

.section_find {
  background-image: linear-gradient(to bottom, #999 0px, #fff 35.625rem);
}

@media (min-width: 768px) {
  .section_find {
    background-image: linear-gradient(to bottom, #999 0px, #fff 18.75rem);
  }
}

.section_find .section_secondary {
  margin: 1.875rem auto 0;
  padding-bottom: 0;
  border-top: #ededed 0.0625rem solid;
}

.section_find .section_secondary header {
  padding: 1.25rem 0.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.section_find .section_secondary header h3 {
  font-size: 1rem;
  line-height: 1;
}

.section_find .section_secondary header a {
  display: inline-block;
  padding-bottom: 0.1875rem;
  border-bottom: #212121 0.0625rem solid;
  line-height: 1;
  font-size: 0.75rem;
  font-weight: bold;
}

@media (min-width: 768px) {
  .section_find .section_secondary {
    margin-top: 2.5rem;
    padding-bottom: 1.25rem;
    width: 79.0625rem;
    border: #ededed 0.0625rem solid;
  }
  .section_find .section_secondary header {
    padding: 1.25rem;
  }
  .section_find .section_secondary header h3 {
    font-size: 1.25rem;
  }
  .section_find .section_secondary header a {
    font-size: 0.875rem;
  }
}

.section_find .itemlist {
  overflow: scroll;
}

@media (min-width: 768px) {
  .section_find .itemlist {
    overflow: visible;
  }
}

.section_find .itemlist-inner {
  width: 79.25rem;
  margin: 0 auto 0 0.625rem;
  padding-left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media (min-width: 768px) {
  .section_find .itemlist-inner {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: auto;
    margin: 0 1.25rem;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.section_find .item_small {
  margin-top: 0;
  margin-right: 0.625rem;
}

@media (min-width: 768px) {
  .section_find .item_small, .section_find .item_small:nth-child(3n) {
    margin-right: 1.25rem;
  }
}

.section_new {
  background-color: #ededed;
  padding-bottom: 0;
}

.section_new .footer_primary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 5.625rem;
  background-color: #fff;
  position: relative;
}

.section_new .footer_primary p {
  position: relative;
  margin: 0 0 0.625rem;
  border-bottom: #EB3C46 0.1875rem solid;
  font-size: 1.125rem;
  font-weight: bold;
  line-height: 1.5;
}

@media (min-width: 768px) {
  .section_new .footer_primary {
    height: 10rem;
  }
  .section_new .footer_primary p {
    margin: 0 0 2.5rem;
    font-size: 1.5rem;
    border-width: 0.25rem;
  }
}

.section_new .footer_primary::before {
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: auto;
  left: 0;
  margin: auto;
  background-image: url();
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  width: 1.5rem;
  height: 1.5rem;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-color: #ededed transparent transparent transparent;
  border-width: 5.625rem 11.6875rem;
}

@media (min-width: 768px) {
  .section_new .footer_primary::before {
    border-width: 10rem 42.6875rem;
  }
}

.section_new .section_secondary {
  background-color: #fff;
}

.section_new .header_secondary {
  padding: 1.875rem 0.625rem;
}

.section_new .header_secondary h3 {
  text-align: center;
  font-size: 1.875rem;
  line-height: 1.5;
}

@media (min-width: 768px) {
  .section_new .header_secondary h3 {
    font-size: 2.375rem;
  }
  .section_new .header_secondary h3 br {
    display: none;
  }
}

.section_new .header_secondary p {
  padding: 0 1.25rem;
  font-size: 0.875rem;
  text-align: center;
}

@media (min-width: 768px) {
  .section_new .footer_secondary {
    margin-top: 2.5rem;
  }
}

.section_new .footer_secondary .link_primary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.65rem 0 0.5rem;
  width: auto;
  font-size: 1rem;
  outline: none;
  border: none;
  background-color: #EB3C46;
  -webkit-box-shadow: 0 0 0 1px transparent inset;
          box-shadow: 0 0 0 1px transparent inset;
  text-decoration: none;
  font-family: inherit;
  text-align: center;
  border-radius: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  line-height: 1;
  color: #fff;
  -webkit-transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  position: relative;
  margin: 0.625rem;
  height: 3.125rem;
  font-size: 0.875rem;
  font-weight: bold;
}

@supports (all: unset) {
  .section_new .footer_secondary .link_primary {
    padding: 0.5rem 0;
  }
}

.section_new .footer_secondary .link_primary:focus, .section_new .footer_secondary .link_primary:hover {
  -webkit-transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  opacity: 0.7;
}

.section_new .footer_secondary .link_primary::after {
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background-image: url();
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  width: 1.5rem;
  height: 1.5rem;
  content: "";
  top: auto;
  right: 1.25rem;
  bottom: auto;
  left: auto;
  width: 0.9375rem;
  height: 0.375rem;
  border-color: #fff;
  border-style: solid;
  border-width: 0 0.09375rem 0.09375rem 0;
  -webkit-transform: translateX(-0.125rem) skewX(45deg);
          transform: translateX(-0.125rem) skewX(45deg);
}

@media (min-width: 768px) {
  .section_new .footer_secondary .link_primary {
    margin: 0 auto;
    width: 25rem;
    height: 3.75rem;
    font-size: 1.125rem;
  }
}

.section_new .sectionlist {
  overflow: scroll;
}

@media (min-width: 768px) {
  .section_new .sectionlist {
    overflow: visible;
  }
}

.section_new .sectionlist-inner {
  width: 79.25rem;
  margin: 0 auto 0 0.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media (min-width: 768px) {
  .section_new .sectionlist-inner {
    width: 79.25rem;
    margin: 0 auto;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.section_new .section_tertiary {
  width: 18.875rem;
  margin-right: 1.25rem;
  padding-bottom: 1.25rem;
}

.section_new .section_tertiary p {
  margin: 0;
  line-height: 1.5;
  font-size: 0.875rem;
}

.section_new .section_tertiary a {
  text-decoration: underline;
}

.section_new .section_tertiary:last-child {
  margin-right: 0.625rem;
}

.section_new .heading_tertiary {
  position: relative;
  font-size: 1.375rem;
}

.section_new .tag_step {
  position: absolute;
  top: 0;
  left: 0;
}

.section_new .heading-image {
  width: 100%;
}

.section_magazine {
  background-color: #212121;
}

.section_journal {
  background-color: #fff;
}

.section_journal .section_secondary {
  padding-bottom: 0;
}

.section_benefit {
  background-color: #ededed;
}

.section_benefit header {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 2.5rem 1.25rem;
  height: 30rem;
  background-image: url(../img/image-top-benefit-sp.png);
  background-repeat: no-repeat;
  background-size: cover;
}

.section_benefit header h2 {
  font-size: 1.875rem;
  line-height: 1.5;
}

.section_benefit header p {
  width: 12.5rem;
  font-size: 0.875rem;
  font-weight: bold;
}

.section_benefit header p br {
  display: inline;
}

@media (min-width: 768px) {
  .section_benefit header p br {
    display: none;
  }
}

@media (min-width: 768px) {
  .section_benefit {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding-bottom: 0;
  }
  .section_benefit header {
    padding: 5rem 10rem;
    background-image: url(../img/image-top-benefit.png);
    height: 31.25rem;
  }
  .section_benefit header h2 {
    font-size: 3.75rem;
  }
  .section_benefit header p {
    width: auto;
  }
}

.section_benefit .sectionlist {
  overflow: scroll;
}

@media (min-width: 768px) {
  .section_benefit .sectionlist {
    overflow: visible;
  }
}

.section_benefit .sectionlist-inner {
  width: 62.8125rem;
  height: 19.6875rem;
  margin: 0 auto 0 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media (min-width: 768px) {
  .section_benefit .sectionlist-inner {
    width: 100%;
    height: 28.4375rem;
    margin: 0;
  }
}

.section_benefit .section_secondary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-right: 1.25rem;
  padding: 0 2.5rem;
  background-color: #fff;
  width: 19.6875rem;
  height: 19.6875rem;
}

.section_benefit .section_secondary h3 {
  margin-top: 3.75rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto 4.5rem;
  font-size: 1.25rem;
  line-height: 1.3;
  padding: 0.625rem 0;
  text-align: center;
}

@media (min-width: 768px) {
  .section_benefit .section_secondary h3 {
    margin-top: 7.5rem;
    background-size: auto 87;
  }
}

.section_benefit .section_secondary p {
  width: 100%;
  font-size: 0.875rem;
  text-align: center;
}

@media (min-width: 768px) {
  .section_benefit .section_secondary {
    padding: 0 6.625rem;
    width: 28.4375rem;
    height: 28.4375rem;
    margin-right: 0;
  }
  .section_benefit .section_secondary h3 {
    font-size: 1.5rem;
  }
  .section_benefit .section_secondary p {
    font-size: 0.875rem;
  }
}

.section_benefit .section_secondary:nth-child(1) h3 {
  background-image: url(../img/image-number-01.svg);
}

@media (min-width: 768px) {
  .section_benefit .section_secondary:nth-child(1) {
    background-color: #fff;
  }
}

.section_benefit .section_secondary:nth-child(2) h3 {
  background-image: url(../img/image-number-02.svg);
}

@media (min-width: 768px) {
  .section_benefit .section_secondary:nth-child(2) {
    background-color: #eee;
  }
}

.section_benefit .section_secondary:nth-child(3) h3 {
  background-image: url(../img/image-number-03.svg);
}

@media (min-width: 768px) {
  .section_benefit .section_secondary:nth-child(3) {
    background-color: #ddd;
  }
}

.section_footerlist {
  padding-bottom: 0;
}

.section_footerlist:nth-child(n+2) {
  margin-top: 2.5rem;
}

@media (min-width: 768px) {
  .section_footerlist:nth-child(n+2) {
    margin-top: 3.75rem;
  }
}

.section_detail {
  background-color: #fff;
}

@media (min-width: 768px) {
  .section_detail {
    background-color: #ededed;
    padding-bottom: 2.5rem;
  }
}

.section_detail .section_secondary {
  position: relative;
  z-index: 0;
  margin: 0 auto;
  padding-bottom: 0;
  border-top: #ededed 0.0625rem solid;
}

.section_detail .section_secondary header {
  padding: 1.25rem 0.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.section_detail .section_secondary header h3 {
  line-height: 1;
}

.section_detail .section_secondary header a {
  display: inline-block;
  padding-bottom: 0.125rem;
  border-bottom: #212121 0.0625rem solid;
  line-height: 1;
  font-size: 0.75rem;
  font-weight: bold;
}

@media (min-width: 768px) {
  .section_detail .section_secondary {
    margin-top: 2.5rem;
    padding-bottom: 1.25rem;
    width: 79.0625rem;
    border: #ededed 0.0625rem solid;
    background-color: #fff;
  }
  .section_detail .section_secondary header {
    padding: 1.25rem;
  }
  .section_detail .section_secondary header a {
    font-size: 0.875rem;
  }
}

.section_detail .section_secondary .itemlist {
  overflow: scroll;
}

@media (min-width: 768px) {
  .section_detail .section_secondary .itemlist {
    overflow: visible;
  }
}

.section_detail .section_secondary .itemlist-inner {
  width: 79.25rem;
  margin: 0 auto 0 0.625rem;
  padding-left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media (min-width: 768px) {
  .section_detail .section_secondary .itemlist-inner {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: auto;
    margin: 0 1.25rem;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.section_detail .section_secondary .item_small {
  margin-top: 0;
  margin-right: 0.625rem;
}

@media (min-width: 768px) {
  .section_detail .section_secondary .item_small, .section_detail .section_secondary .item_small:nth-child(3n) {
    margin-right: 1.25rem;
  }
}

@media (min-width: 768px) {
  .section-detailinfo {
    background-color: #fff;
    padding-bottom: 5rem;
    min-height: 48.125rem;
  }
  .section-detailinfo > div {
    width: 50%;
    position: relative;
    right: -50%;
  }
  .section-detailinfo > div .imagelist {
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
  }
}

.section_detailcontact {
  background-color: #ededed;
  padding-bottom: 0;
}

.section_detailcontact > div {
  padding: 1.25rem 0.625rem;
}

.section_detailcontact > div div {
  padding: 0;
}

.section_detailcontact > div div p {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1;
}

.section_detailcontact > div div p:nth-child(2) {
  display: none;
}

.section_detailcontact > div div em {
  font-weight: bold;
  font-style: normal;
}

@media (min-width: 768px) {
  .section_detailcontact > div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 1.25rem 3.125rem;
  }
  .section_detailcontact > div div {
    height: 3.125rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .section_detailcontact > div div p {
    font-size: 0.75rem;
  }
  .section_detailcontact > div div p:nth-child(2) {
    display: block;
    color: #EB3C46;
  }
  .section_detailcontact .text_freedial {
    display: block;
    width: 18.5625rem;
    height: 1.75rem;
  }
  .section_detailcontact .text_freedial img {
    width: 100%;
  }
}

.section_search > span {
  display: block;
  padding: 0.625rem;
}

@media (min-width: 768px) {
  .section_search {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-bottom: 0;
  }
  .section_search > span {
    display: block;
    padding: 1.875rem;
  }
}

@media (min-width: 768px) {
  .section_search .section-maincolumn {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    width: 65.375rem;
    padding-bottom: 3.75rem;
  }
}

.section_search .header_search {
  border-bottom: #dddddd 0.0625rem solid;
}

.section_search.section_history .header_search {
  border-bottom-width: 0;
}

.section_search .header-control {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0 0.625rem;
}

@media (min-width: 768px) {
  .section_search .header-control {
    padding: 1.375rem 1.875rem 0.625rem;
  }
}

.section_search .header-check {
  font-size: 0.75rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.section_search .header-checkbox {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 1.125rem;
  height: 1.125rem;
  border-radius: 0;
  border: #aaaaaa 0.0625rem solid;
  margin: 0 0.375rem 0 0;
}

.section_search .header-checkbox:checked {
  border: none;
  background-image: url(../img/icon-check-checked.svg);
  background-size: cover;
}

.section_search .button_estimate {
  display: none;
}

@media (min-width: 768px) {
  .section_search .button_estimate {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 0.5rem 1rem;
    width: 25.5rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    background-color: #EB3C46;
    color: #fff;
    font-size: 0.93175rem;
    font-family: inherit;
    text-align: center;
    border-radius: 0;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    border: none;
    -webkit-box-shadow: 0 0 0 1px transparent inset;
            box-shadow: 0 0 0 1px transparent inset;
    line-height: 1.875rem;
    box-sizing: border-box;
    cursor: pointer;
    -webkit-transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
    transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
    position: fixed;
    top: auto;
    right: 0;
    bottom: -5rem;
    left: 20rem;
    margin: auto;
    content: "";
    z-index: 2;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 3.75rem;
    font-size: 1.125rem;
    font-weight: bold;
    cursor: pointer;
    transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
    position: fixed;
  }
  .section_search .button_estimate:focus, .section_search .button_estimate:hover {
    -webkit-transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
    transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
    opacity: 0.7;
  }
  @supports (all: unset) {
    .section_search .button_estimate {
      line-height: 1;
    }
  }
  .section_search .button_estimate:focus, .section_search .button_estimate:hover {
    -webkit-transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
    transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  }
  .section_search .button_estimate::before {
    display: inline-block;
    position: relative;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: -0.25rem 0.25rem 0 0;
    background-image: url(../img/icon-estimate.svg);
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center;
    width: 1.5rem;
    height: 1.5rem;
    content: "";
  }
  .section_search .button_estimate.display {
    bottom: 1.25rem;
  }
}

.section_search footer {
  text-align: center;
}

.section_search .section_secondary {
  margin: 2.5rem auto -2.5rem;
  padding-bottom: 2.5rem;
  border-top: #ededed 0.0625rem solid;
  background-color: #fff;
}

.section_search .section_secondary header {
  padding: 1.25rem 0.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.section_search .section_secondary header a {
  display: inline-block;
  padding-bottom: 0.125rem;
  border-bottom: #212121 0.0625rem solid;
  line-height: 1;
  font-size: 0.75rem;
  font-weight: bold;
}

@media (min-width: 768px) {
  .section_search .section_secondary {
    width: 59.5625rem;
    border: #ededed 0.0625rem solid;
    margin-bottom: 0;
    padding-bottom: 1.875rem;
  }
  .section_search .section_secondary header {
    padding: 1.25rem;
  }
  .section_search .section_secondary header a {
    font-size: 0.875rem;
  }
}

.section_search .section_secondary .itemlist {
  overflow: scroll;
}

@media (min-width: 768px) {
  .section_search .section_secondary .itemlist {
    overflow: visible;
    padding-bottom: 0;
    margin: 0;
  }
}

.section_search .section_secondary .itemlist-inner {
  width: 59.5625rem;
  margin: 0 auto 0 0.625rem;
  padding-left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media (min-width: 768px) {
  .section_search .section_secondary .itemlist-inner {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: auto;
    margin: 0 1.25rem;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.section_search .section_secondary .item_small {
  margin-top: 0;
  margin-right: 0.625rem;
}

@media (min-width: 768px) {
  .section_search .section_secondary .item_small {
    width: 8.5rem;
  }
  .section_search .section_secondary .item_small, .section_search .section_secondary .item_small:nth-child(3n) {
    margin-right: 1.25rem;
  }
}

@media (min-width: 768px) {
  .section_search .section_secondary .item_small .item-thumb {
    height: 6.6875rem;
  }
}

.section_search .section_secondary .item_small .item-text {
  display: block;
  overflow: hidden;
  height: 3.46875rem;
  font-size: 0.75rem;
  line-height: 1.5;
}

@media (min-width: 768px) {
  .section_search .section_secondary .item_small .item-text {
    font-size: 0.75rem;
    height: 3.46875rem;
  }
}

@supports (all: unset) {
  .section_search .section_secondary .item_small .item-text {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
  }
  @media (min-width: 768px) {
    .section_search .section_secondary .item_small .item-text {
      -webkit-line-clamp: 3;
    }
  }
}

.heading_primary {
  border-left: 0.375rem #212121 solid;
  height: 2.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin: 0 0.625rem;
  padding: 0 0.625rem;
}

@media (min-width: 768px) {
  .heading_primary {
    margin: 0 1.25rem;
    padding: 0 1.125rem;
    border-left-width: 0.625rem;
    height: 3.75rem;
  }
}

.heading_primary .heading-en {
  display: block;
  height: 1.375rem;
}

.heading_primary .heading-en img {
  height: 100%;
  display: block;
}

@media (min-width: 768px) {
  .heading_primary .heading-en {
    height: 1.75rem;
  }
}

.heading_primary .heading-ja {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  display: block;
  margin-left: 0.375rem;
  font-size: 0.75rem;
  text-transform: uppercase;
  width: 100%;
}

@supports (all: unset) {
  .heading_primary .heading-ja {
    line-height: 1.2;
  }
}

@media (min-width: 768px) {
  .heading_primary .heading-ja {
    margin-left: 0.625rem;
    height: 0.9375rem;
    font-size: 0.875rem;
  }
}

.section_magazine .heading_primary {
  border-color: #fff;
  color: #fff;
}

@media (min-width: 768px) {
  .section_search .heading_primary {
    margin: 0;
  }
}

.section_journal .heading_secondary {
  line-height: 1;
}

@media (min-width: 768px) {
  .section_journal .heading_secondary {
    margin: 0 auto;
    width: 79.25rem;
  }
}

.section_journal .heading_secondary span {
  display: inline-block;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
  position: relative;
  left: -1rem;
  bottom: -3.5rem;
}

@media (min-width: 768px) {
  .section_journal .heading_secondary span {
    left: -3.5rem;
    bottom: -3rem;
  }
}

.heading_footerlist {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1rem;
  line-height: 1;
  font-size: 1rem;
}

@media (min-width: 768px) {
  .heading_footerlist {
    margin-bottom: 2.25rem;
    font-size: 1.125rem;
  }
}

.heading_footerlist .icon_footerlist {
  width: 1rem;
  height: 1rem;
  margin-right: 0.625rem;
}

.heading_detail {
  padding: 0.625rem;
}

@media (min-width: 768px) {
  .heading_detail {
    padding: 1.25rem 3.125rem;
  }
}

.heading_detail .tags {
  background-color: transparent;
}

.heading_detail .tag_number {
  color: #212121;
}

.heading_detail .heading-text {
  display: block;
  margin-top: 0.3125rem;
  font-size: 1.125rem;
  line-height: 1.5;
}

@media (min-width: 768px) {
  .heading_detail .heading-text {
    font-size: 1.75rem;
  }
}

.heading_detailcontact {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #212121;
  height: 1.875rem;
  font-size: 0.75rem;
  font-weight: normal;
  color: #fff;
  line-height: 1;
}

@media (min-width: 768px) {
  .heading_detailcontact {
    font-size: 0.875rem;
  }
}

[class~=linklist],
[class^=linklist_] {
  list-style: none;
  padding-left: 0;
  margin: 0;
}

[class~=linklist] a,
[class^=linklist_] a {
  color: #fff;
  text-decoration: underline;
}

.linklist_headerprimary {
  margin: 0;
  padding-bottom: 2.5rem;
}

.linklist_headerprimary > li {
  margin-top: 2.5rem;
}

.linklist_headerprimary > li span {
  height: 1.375rem;
  display: block;
}

.linklist_headerprimary > li img {
  height: 100%;
  display: block;
}

@media (min-width: 768px) {
  .linklist_headerprimary {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 auto;
    padding-bottom: 5rem;
    width: 65rem;
  }
  .linklist_headerprimary > li {
    margin-top: 0;
  }
  .linklist_headerprimary > li span {
    height: 1.8125rem;
  }
}

.linklist_navfooter {
  margin: -1.25rem auto 0;
  width: 12.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.linklist_navfooter li {
  margin-top: 1.25rem;
  padding: 0 0.625rem;
  line-height: 1;
}

.linklist_navfooter a {
  font-size: 0.75rem;
  color: #aaaaaa;
  text-decoration: none;
}

@media (min-width: 768px) {
  .linklist_navfooter {
    width: auto;
    margin-right: -0.8125rem;
  }
  .linklist_navfooter li {
    padding: 0 0.8125rem;
  }
  .linklist_navfooter a {
    font-size: 0.875rem;
  }
}

.linklist_headersecondary > li {
  margin-top: 1.25rem;
  line-height: 1;
  font-size: 0.875rem;
  text-transform: uppercase;
}

@media (min-width: 768px) {
  .linklist_headersecondary {
    margin-top: 3.125rem;
  }
  .linklist_headersecondary li {
    margin-top: 1.875rem;
    margin-right: 7.5rem;
  }
}

.linklist_footerprimary {
  font-size: 0.875rem;
  font-weight: bold;
  margin: 0;
}

.linklist_footerprimary li {
  line-height: 1.5;
}

.linklist_footerprimary > li {
  margin-bottom: 1rem;
}

.linklist_footerprimary > li > a {
  margin-bottom: 0.375rem;
}

@media (min-width: 768px) {
  .linklist_footerprimary > li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 0.375rem;
  }
  .linklist_footerprimary > li > a {
    width: 9.0625rem;
  }
}

.linklist_footersecondary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-size: 0.875rem;
  font-weight: normal;
  margin: 0;
}

.linklist_footersecondary li {
  margin-right: 0.625rem;
}

@media (min-width: 768px) {
  .linklist_footersecondary {
    margin-right: 3.125rem;
    width: 20.3125rem;
  }
}

.linklist_detailcontact {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media (min-width: 768px) {
  .linklist_detailcontact li:nth-child(1),
  .linklist_detailcontact li:nth-child(3) {
    display: none;
  }
}

.linklist_detailcontact .link_primary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.65rem 0 0.5rem;
  width: auto;
  font-size: 1rem;
  outline: none;
  border: none;
  background-color: #EB3C46;
  -webkit-box-shadow: 0 0 0 1px transparent inset;
          box-shadow: 0 0 0 1px transparent inset;
  text-decoration: none;
  font-family: inherit;
  text-align: center;
  border-radius: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  line-height: 1;
  color: #fff;
  -webkit-transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  margin: 0.625rem auto;
  width: 22.1875rem;
  height: 3.125rem;
  font-size: 0.875rem;
}

@supports (all: unset) {
  .linklist_detailcontact .link_primary {
    padding: 0.5rem 0;
  }
}

.linklist_detailcontact .link_primary:focus, .linklist_detailcontact .link_primary:hover {
  -webkit-transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  opacity: 0.7;
}

.linklist_detailcontact .link_tertiary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.65rem 0 0.5rem;
  width: auto;
  font-size: 1rem;
  outline: none;
  border: none;
  background-color: #fff;
  -webkit-box-shadow: 0 0 0 1px transparent inset;
          box-shadow: 0 0 0 1px transparent inset;
  text-decoration: none;
  font-family: inherit;
  text-align: center;
  border-radius: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  line-height: 1;
  color: #212121;
  -webkit-transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  width: 10.75rem;
  height: 3.125rem;
  font-size: 0.75rem;
  font-weight: bold;
}

@supports (all: unset) {
  .linklist_detailcontact .link_tertiary {
    padding: 0.5rem 0;
  }
}

.linklist_detailcontact .link_tertiary:focus, .linklist_detailcontact .link_tertiary:hover {
  -webkit-transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  opacity: 0.7;
}

@media (min-width: 768px) {
  .linklist_detailcontact .link_tertiary {
    width: 16.0625rem;
    background-color: #EB3C46;
    color: #fff;
    font-size: 1rem;
    -webkit-transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
    transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  }
  .linklist_detailcontact .link_tertiary:focus, .linklist_detailcontact .link_tertiary:hover {
    -webkit-transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
    transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
    opacity: .7;
  }
}

.linklist_detailcontact .link_tertiary .icon_mail {
  width: 1rem;
  height: 0.75rem;
  margin-right: 0.625rem;
}

@media (min-width: 768px) {
  .linklist_detailcontact .link_tertiary .icon_mail img:nth-child(1) {
    display: none;
  }
}

.linklist_detailcontact .link_tertiary .icon_mail img:nth-child(2) {
  display: none;
}

@media (min-width: 768px) {
  .linklist_detailcontact .link_tertiary .icon_mail img:nth-child(2) {
    display: inline-block;
  }
}

@media (min-width: 768px) {
  .linklist_detailcontact .link_tertiary .icon_mail {
    margin-right: 0.75rem;
    width: 1.1875rem;
    height: 0.875rem;
  }
}

.linklist_detailcontact .link_tertiary .icon_line {
  width: 1.1875rem;
  height: 1.125rem;
  margin-right: 0.625rem;
}

.linklist_detailcontact .link_tertiary .text_line {
  text-transform: uppercase;
}

.linklist_floatcontact {
  position: fixed;
  bottom: -3.125rem;
  z-index: 3;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 3.125rem;
  border-top: #aaaaaa 0.0625rem solid;
  font-size: 0.75rem;
  -webkit-transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
}

.linklist_floatcontact li {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: calc(100% / 3);
}

.linklist_floatcontact li:not(:last-child) {
  border-right: #aaaaaa 0.0625rem solid;
}

.linklist_floatcontact.show {
  bottom: 0;
  -webkit-transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
}

.linklist_floatcontact button.link_tertiary {
  display: none;
}

.linklist_floatcontact button.link_tertiary.display {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media (min-width: 768px) {
  .linklist_floatcontact {
    display: none;
  }
}

.linklist_floatcontact .link_tertiary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.65rem 0 0.5rem;
  width: 100%;
  font-size: 1rem;
  outline: none;
  border: none;
  background-color: #fff;
  -webkit-box-shadow: 0 0 0 1px transparent inset;
          box-shadow: 0 0 0 1px transparent inset;
  text-decoration: none;
  font-family: inherit;
  text-align: center;
  border-radius: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  line-height: 1;
  color: #212121;
  -webkit-transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  height: 3.125rem;
  font-size: 0.75rem;
  font-weight: bold;
}

@supports (all: unset) {
  .linklist_floatcontact .link_tertiary {
    padding: 0.5rem 0;
  }
}

.linklist_floatcontact .link_tertiary:focus, .linklist_floatcontact .link_tertiary:hover {
  -webkit-transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  opacity: 0.7;
}

.linklist_floatcontact .icon_mail {
  width: 1rem;
  height: 0.75rem;
  margin-right: 0.625rem;
}

.section_search .linklist_floatcontact .icon_mail {
  width: 1.3125rem;
  height: 1.0625rem;
}

.linklist_floatcontact .icon_line {
  width: 1.1875rem;
  height: 1.125rem;
  margin-right: 0.625rem;
}

.linklist_floatcontact .text_line {
  text-transform: uppercase;
}

.linklist_floatcontact .text_small {
  font-size: 0.625rem;
}

.linklist_floatcontact .tag_free {
  background-color: #EB3C46;
  color: #fff;
  width: 1.5625rem;
  height: 1rem;
}

.linklist_topicpath {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  position: relative;
  z-index: 2;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0.625rem;
  width: 100%;
  border-top: #ededed 0.0625rem solid;
  background-color: #fff;
  font-size: 0.625rem;
}

.linklist_topicpath li {
  display: inline;
  font-size: 0.625rem;
}

.linklist_topicpath li:not(:last-child) {
  position: relative;
  padding-right: 1.5rem;
}

.linklist_topicpath li:not(:last-child)::after {
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background-image: url();
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  width: 1.5rem;
  height: 1.5rem;
  content: "";
  top: 0;
  right: 0.5rem;
  bottom: 0;
  left: auto;
  width: 0.5rem;
  height: 0.1875rem;
  border-color: #212121;
  border-style: solid;
  border-width: 0 0.09375rem 0.09375rem 0;
  -webkit-transform: translateX(-0.125rem) skewX(45deg);
          transform: translateX(-0.125rem) skewX(45deg);
}

.linklist_topicpath a {
  color: #212121;
}

[class~=itemlist],
[class^=itemlist_] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0;
  padding-left: 0;
}

[class~=itemlist] li,
[class^=itemlist_] li {
  list-style: none;
}

.section_new .itemlist,
.section_search .itemlist {
  margin-left: 0.625rem;
  padding-bottom: 1.25rem;
}

@media (min-width: 768px) {
  .section_new .itemlist,
  .section_search .itemlist {
    padding-bottom: 3.75rem;
    margin: 0 auto;
  }
}

.section_new .itemlist {
  margin-top: 0.625rem;
}

@media (min-width: 768px) {
  .section_new .itemlist {
    width: 79.25rem;
  }
  .section_new .itemlist .item_large:nth-child(4n) {
    margin-right: 0;
  }
}

.section_search .itemlist {
  margin-top: 0.375rem;
}

@media (min-width: 768px) {
  .section_search .itemlist {
    margin-top: 0;
    width: 59.125rem;
  }
  .section_search .itemlist .item_large:nth-child(3n) {
    margin-right: 0;
  }
}

.itemlist_find {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 1.25rem 0;
  padding-left: 0;
}

.itemlist_find li {
  width: 7.375rem;
  margin-right: 0.0625rem;
  margin-top: 0.0625rem;
}

.itemlist_find li:nth-child(3n) {
  margin-right: 0;
}

.itemlist_find li:nth-child(-n+3) {
  margin-top: 0;
}

.itemlist_find a {
  position: relative;
  display: block;
  overflow: hidden;
}

.itemlist_find a::after {
  display: inline-block;
  position: absolute;
  top: auto;
  right: -0.625rem;
  bottom: -0.5rem;
  left: auto;
  margin: auto;
  background-image: url();
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  width: 1.5rem;
  height: 1.5rem;
  content: "";
  border-color: #EB3C46 transparent transparent transparent;
  border-style: solid;
  border-width: 0.5rem;
  width: 0;
  height: 0;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.itemlist_find img {
  display: block;
  width: 100%;
}

@media (min-width: 768px) {
  .itemlist_find {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin: 1.25rem auto;
    width: 79.375rem;
  }
  .itemlist_find li {
    width: 8.75rem;
    margin-right: 0.0625rem;
  }
  .itemlist_find li:nth-child(3n) {
    margin-right: 0.0625rem;
  }
  .itemlist_find li:nth-child(9n) {
    margin-right: 0;
  }
  .itemlist_find li:nth-child(-n+9) {
    margin-top: 0;
  }
}

.itemlist_find .itemlist-label {
  position: absolute;
  top: auto;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  text-align: center;
  font-size: 0.625rem;
  font-weight: bold;
  line-height: 1.875rem;
}

@media (min-width: 768px) {
  .itemlist_find .itemlist-label {
    font-size: 0.75rem;
    line-height: 2.125rem;
    text-decoration: underline;
  }
}

.itemlist_media {
  line-height: 1.5;
}

@media (min-width: 768px) {
  .itemlist_media {
    width: 79.25rem;
    padding: 0;
  }
}

.section_magazine .itemlist_media {
  margin: 0 0.625rem 0 0.625rem;
}

@media (min-width: 768px) {
  .section_magazine .itemlist_media {
    margin: 0.625rem auto 0;
  }
}

.section_journal .itemlist_media {
  margin: -1.25rem 0.625rem 0 2.25rem;
}

@media (min-width: 768px) {
  .section_journal .itemlist_media {
    margin: -1.25rem 0 0 auto;
    padding-top: 1.25rem;
    padding-right: 3.125rem;
  }
}

.section_journal .section_secondary:nth-child(2) .itemlist_media {
  padding-bottom: 1.25rem;
  border-bottom: #ededed 0.0625rem solid;
}

@media (min-width: 768px) {
  .section_journal .section_secondary:nth-child(2) .itemlist_media {
    padding-top: 0.625rem;
    padding-bottom: 2.5rem;
  }
}

[class~=item],
[class^=item_] {
  margin-top: 1.25rem;
  background-color: #fff;
}

@media (min-width: 768px) {
  [class~=item],
  [class^=item_] {
    margin-right: 1.25rem;
  }
}

.section_journal [class~=item]:nth-child(5):not(.item_empty), .section_journal
[class^=item_]:nth-child(5):not(.item_empty) {
  display: none;
}

@media (min-width: 768px) {
  .section_journal [class~=item]:nth-child(5):not(.item_empty), .section_journal
  [class^=item_]:nth-child(5):not(.item_empty) {
    display: block;
  }
}

.section_journal [class~=item],
.section_magazine [class~=item], .section_journal
[class^=item_],
.section_magazine
[class^=item_] {
  background-color: transparent;
}

@media (min-width: 768px) {
  .section_journal [class~=item]:nth-child(3n),
  .section_magazine [class~=item]:nth-child(3n), .section_journal
  [class^=item_]:nth-child(3n),
  .section_magazine
  [class^=item_]:nth-child(3n) {
    margin-right: 0;
  }
}

.item-link {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  overflow: hidden;
}

.section_new .item-link,
.section_search .item-link {
  background-color: #fff;
}

.section_magazine .item-link {
  position: relative;
  width: 22.1875rem;
  min-height: 6.25rem;
  color: #fff;
}

.section_magazine .item-link::after {
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background-image: url();
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  width: 1.5rem;
  height: 1.5rem;
  content: "";
  top: auto;
  right: 1.25rem;
  bottom: 1.25rem;
  left: auto;
  width: 1.25rem;
  height: 0.5rem;
  border-color: #fff;
  border-style: solid;
  border-width: 0 0.09375rem 0.09375rem 0;
  -webkit-transform: translateX(-0.125rem) skewX(45deg);
          transform: translateX(-0.125rem) skewX(45deg);
}

.section_magazine .item-link:focus, .section_magazine .item-link:hover {
  text-decoration: underline;
  opacity: 1;
}

@media (min-width: 768px) {
  .section_magazine .item-link {
    width: 25.5rem;
  }
}

.section_journal .item-link {
  position: relative;
  padding: 1.25rem;
  width: 20.5625rem;
  min-height: 9.5rem;
  background-color: #ededed;
  color: #212121;
}

.section_journal .item-link::after {
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background-image: url();
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  width: 1.5rem;
  height: 1.5rem;
  content: "";
  top: auto;
  right: 1.25rem;
  bottom: 1.25rem;
  left: auto;
  width: 1.25rem;
  height: 0.5rem;
  border-color: #212121;
  border-style: solid;
  border-width: 0 0.09375rem 0.09375rem 0;
  -webkit-transform: translateX(-0.125rem) skewX(45deg);
          transform: translateX(-0.125rem) skewX(45deg);
}

.section_journal .item-link:focus, .section_journal .item-link:hover {
  opacity: 1;
}

.section_journal .item-link:focus .item-title, .section_journal .item-link:hover .item-title {
  text-decoration: underline;
}

@media (min-width: 768px) {
  .section_journal .item-link {
    width: 25.5rem;
  }
}

.item-thumb {
  position: relative;
  float: left;
  margin-right: 0.625rem;
  background-color: #aaaaaa;
}

.item-thumb img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  font-family: 'object-fit: cover; object-position: center;';
  height: 100%;
  display: block;
}

.item_small .item-thumb {
  height: 6.6875rem;
}

@media (min-width: 768px) {
  .item_small .item-thumb {
    height: 7.8125rem;
  }
}

.item_large .item-thumb {
  height: 7.1875rem;
}

@media (min-width: 768px) {
  .item_large .item-thumb {
    height: 12.5625rem;
  }
}

.section_magazine .item-thumb > img {
  width: 10.75rem;
  height: 6.0625rem;
}

@media (min-width: 768px) {
  .section_magazine .item-thumb > img {
    width: 11.125rem;
    height: 6.25rem;
  }
}

.section_journal .item-thumb {
  height: 7rem;
}

@media (min-width: 768px) {
  .section_journal .item-thumb {
    margin-right: 1.25rem;
  }
}

.item-thumb > [class~=tag],
.item-thumb > [class^=tag_] {
  position: absolute;
  bottom: 0;
  right: 0;
}

.item-title {
  display: block;
  margin-bottom: 0.625rem;
  line-height: 1;
  font-size: 0.75rem;
  font-style: normal;
  font-weight: bold;
  letter-spacing: 0.1em;
}

@media (min-width: 768px) {
  .item-title {
    font-size: 1.375rem;
    margin-bottom: 0.9375rem;
  }
}

.section_journal .item-title {
  font-size: 1.25rem;
}

@media (min-width: 768px) {
  .section_journal .item-title {
    font-size: 1.5rem;
  }
}

.item-description {
  display: block;
  overflow: hidden;
  height: 3.46875rem;
  font-size: 0.75rem;
  line-height: 1.5;
}

@media (min-width: 768px) {
  .item-description {
    font-size: 0.75rem;
    height: 2.34375rem;
  }
}

@supports (all: unset) {
  .item-description {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
  }
  @media (min-width: 768px) {
    .item-description {
      -webkit-line-clamp: 2;
    }
  }
}

.item-check {
  position: absolute;
  white-space: nowrap;
  width: 1px;
  height: 1px;
  overflow: hidden;
  border: 0;
  padding: 0;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  margin: -1px;
}

.item-checklabel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-top: #dddddd 0.0625rem solid;
  height: 2.5rem;
  font-size: 0.75rem;
  font-weight: bold;
  width: 100%;
  position: relative;
}

@media (min-width: 768px) {
  .item-checklabel {
    height: 2.75rem;
  }
}

.item-checklabel::after {
  display: inline-block;
  position: static;
  top: 0;
  right: 1.25rem;
  bottom: 0;
  left: auto;
  margin: 0 0 0 0.625rem;
  background-image: url(../img/icon-check-circle.svg);
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  width: 1.25rem;
  height: 1.25rem;
  content: "";
}

:checked + .item-checklabel::after {
  background-image: url(../img/icon-check-circle-checked.svg);
}

@media (min-width: 768px) {
  .item-checklabel::after {
    position: absolute;
    margin: auto;
  }
}

.item_small {
  width: 10rem;
  background-color: #ededed;
}

.item_small img {
  display: block;
  width: 100%;
}

@media (min-width: 768px) {
  .item_small {
    width: 11.75rem;
  }
}

.item_small .item-thumb {
  float: none;
  margin-right: 0;
}

.item_small .item-text {
  display: block;
  overflow: hidden;
  height: 4.04688rem;
  font-size: 0.875rem;
  line-height: 1.5;
  margin: 0.625rem 0.625rem 0.9375rem;
}

@media (min-width: 768px) {
  .item_small .item-text {
    font-size: 0.875rem;
    height: 4.04688rem;
  }
}

@supports (all: unset) {
  .item_small .item-text {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
  }
  @media (min-width: 768px) {
    .item_small .item-text {
      -webkit-line-clamp: 3;
    }
  }
}

.item_large dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -0.0625rem;
  margin-bottom: 0;
  line-height: 1.5;
  color: #212121;
}

.item_large dt {
  background-color: #ededed;
  width: 3.125rem;
  font-size: 0.6875rem;
  text-align: center;
  letter-spacing: .5em;
  margin-top: 0.0625rem;
}

.item_large dd {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 6.375rem;
  margin-top: 0.0625rem;
  margin-left: 0;
  padding-left: 0.625rem;
  font-size: 0.75rem;
}

@media (min-width: 768px) {
  .item_large dl {
    margin-top: -0.3125rem;
  }
  .item_large dt {
    margin-top: 0.3125rem;
    width: 3.375rem;
  }
  .item_large dd {
    margin-top: 0.3125rem;
    width: 12.3125rem;
  }
}

.section_new .item_large,
.section_search .item_large {
  margin-top: 0.625rem;
  margin-right: 0.625rem;
  width: 10.75rem;
}

@media (min-width: 768px) {
  .section_new .item_large,
  .section_search .item_large {
    margin-top: 1.25rem;
    margin-right: 1.25rem;
    width: 18.8125rem;
  }
}

.item_large .item-title {
  display: block;
  overflow: hidden;
  height: 2.75rem;
  font-size: 0.875rem;
  line-height: 1.5;
}

@media (min-width: 768px) {
  .item_large .item-title {
    font-size: 1rem;
    height: 3.125rem;
  }
}

@supports (all: unset) {
  .item_large .item-title {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }
  @media (min-width: 768px) {
    .item_large .item-title {
      -webkit-line-clamp: 2;
    }
  }
}

.item_large .item-thumb {
  float: none;
  margin-right: 0;
}

.item_large .item-thumb > img {
  width: 100%;
}

.item_large .tags {
  position: absolute;
  bottom: 0;
  right: 0;
}

.item_large .item-text {
  padding: 0.625rem 0.625rem 1rem;
  line-height: 1.5;
  font-size: 0.875rem;
}

@media (min-width: 768px) {
  .item_large .item-text {
    padding: 1.25rem 1.25rem 1rem;
  }
}

.item_empty {
  background-color: transparent;
}

.item_empty span {
  font-size: 0.875rem;
  border-bottom: #212121 0.125rem solid;
}

@media (min-width: 768px) {
  .item_empty span {
    font-size: 1.25rem;
  }
}

.section_new .item_empty {
  width: 10.78125rem;
  height: 100%;
}

@media (min-width: 768px) {
  .section_new .item_empty {
    margin-top: 1.25rem;
    margin-right: 0;
    width: 18.84375rem;
  }
  .section_new .item_empty span {
    font-size: 1.125rem;
  }
}

.item_empty .item-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #fff;
  background-repeat: no-repeat;
  font-weight: bold;
}

.item_empty .item-link::after {
  content: none;
}

.section_new .item_empty .item-link {
  background-color: transparent;
  background-image: url(../img/blank-item-sp.png);
  background-position: center;
  background-size: cover;
  height: 15.9375rem;
  -webkit-transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
}

.section_new .item_empty .item-link span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 7.5rem;
  height: 7.5rem;
  border: #212121 0.125rem solid;
  border-radius: 51%;
  line-height: 1.5;
  text-align: center;
  background-size: 100%;
  background-repeat: no-repeat;
}

.section_new .item_empty .item-link:focus, .section_new .item_empty .item-link:hover {
  -webkit-transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  text-decoration: none;
  opacity: 1;
}

@media (min-width: 768px) {
  .section_new .item_empty .item-link {
    min-height: 22.3125rem;
    background-image: url(../img/blank-item.png);
    -webkit-transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
    transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  }
  .section_new .item_empty .item-link span {
    width: 11.25rem;
    height: 11.25rem;
    background-image: url(../img/circle.svg);
    border: none;
  }
  .section_new .item_empty .item-link:focus, .section_new .item_empty .item-link:hover {
    -webkit-transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
    transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  }
  .section_new .item_empty .item-link:focus span, .section_new .item_empty .item-link:hover span {
    background-image: url(../img/circle-hover.svg);
  }
}

.section_magazine .item_empty .item-link {
  background-color: transparent;
  background-image: url(../img/blank-magazine-sp.png);
  background-position: center;
  -webkit-transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
}

.section_magazine .item_empty .item-link span {
  border-color: #fff;
}

.section_magazine .item_empty .item-link:focus, .section_magazine .item_empty .item-link:hover {
  -webkit-transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  text-decoration: none;
  opacity: 1;
}

.section_magazine .item_empty .item-link:focus span, .section_magazine .item_empty .item-link:hover span {
  border-color: #ff2834;
}

@media (min-width: 768px) {
  .section_magazine .item_empty .item-link {
    padding: 1.25rem;
    background-image: url(../img/blank-magazine.png);
  }
}

.section_journal .item_empty .item-link {
  padding: 0 1.25rem;
  background-image: url(../img/blank-journal-sp.png);
  background-position: 1.25rem center;
  height: 7rem;
  -webkit-transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
}

.section_journal .item_empty .item-link:focus, .section_journal .item_empty .item-link:hover {
  -webkit-transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  text-decoration: none;
  opacity: 1;
}

.section_journal .item_empty .item-link:focus span, .section_journal .item_empty .item-link:hover span {
  border-color: #ff2834;
}

@media (min-width: 768px) {
  .section_journal .item_empty .item-link {
    padding: 1.25rem;
    height: 9.5rem;
    background-image: url(../img/blank-journal.png);
    background-position: center;
  }
}

[class~=icon],
[class^=icon_] {
  display: block;
}

[class~=icon] img,
[class^=icon_] img {
  height: 100%;
  display: block;
}

.iconlist {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 auto;
  padding-left: 0;
  width: 12.5rem;
  list-style: none;
}

.globalnav .iconlist {
  width: 11.25rem;
}

@media (min-width: 768px) {
  .globalnav .iconlist {
    margin: 0;
  }
}

.icon_facebook,
.icon_twitter,
.icon_instagram,
.icon_line {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  width: 1.25rem;
  height: 1.25rem;
}

.icon_facebook .iconlabel,
.icon_twitter .iconlabel,
.icon_instagram .iconlabel,
.icon_line .iconlabel {
  position: absolute;
  white-space: nowrap;
  width: 1px;
  height: 1px;
  overflow: hidden;
  border: 0;
  padding: 0;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  margin: -1px;
}

.icon_before {
  position: relative;
  -webkit-transform: rotate3d(0, 1, 0, 180deg);
          transform: rotate3d(0, 1, 0, 180deg);
}

.icon_before::after {
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background-image: url();
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  width: 1.5rem;
  height: 1.5rem;
  content: "";
  top: auto;
  right: auto;
  bottom: auto;
  left: auto;
  width: 0.90625rem;
  height: 0.375rem;
  border-color: #212121;
  border-style: solid;
  border-width: 0 0.09375rem 0.09375rem 0;
  -webkit-transform: translateX(-0.125rem) skewX(45deg);
          transform: translateX(-0.125rem) skewX(45deg);
}

:not([href]) .icon_before::after {
  border-color: #dddddd;
}

.icon_before .iconlabel {
  position: absolute;
  white-space: nowrap;
  width: 1px;
  height: 1px;
  overflow: hidden;
  border: 0;
  padding: 0;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  margin: -1px;
}

.icon_after {
  position: relative;
}

.icon_after::after {
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background-image: url();
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  width: 1.5rem;
  height: 1.5rem;
  content: "";
  top: auto;
  right: auto;
  bottom: auto;
  left: auto;
  width: 0.90625rem;
  height: 0.375rem;
  border-color: #212121;
  border-style: solid;
  border-width: 0 0.09375rem 0.09375rem 0;
  -webkit-transform: translateX(-0.125rem) skewX(45deg);
          transform: translateX(-0.125rem) skewX(45deg);
}

.icon_after .iconlabel {
  position: absolute;
  white-space: nowrap;
  width: 1px;
  height: 1px;
  overflow: hidden;
  border: 0;
  padding: 0;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  margin: -1px;
}

.icon_search .iconlabel {
  position: absolute;
  white-space: nowrap;
  width: 1px;
  height: 1px;
  overflow: hidden;
  border: 0;
  padding: 0;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  margin: -1px;
}

.tag_step {
  background-color: #212121;
  position: relative;
  z-index: 1;
  color: #fff;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 4.375rem;
  height: 4.375rem;
}

.tag_step a, .tag_step * {
  color: #fff;
}

.tag_step a:hover,
.tag_step a:focus {
  opacity: .7;
}

.tag_step img {
  width: 1.5rem;
}

.tag_new {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 2.5rem;
  height: 1.25rem;
  background-color: #EB3C46;
  line-height: 1;
}

.tag_new img {
  height: 0.5625rem;
}

@media (min-width: 768px) {
  .tag_new {
    height: 1.375rem;
  }
}

.section_detail .tag_new {
  margin-right: 0.625rem;
}

.section_detail .tag_new img {
  height: 0.5625rem;
}

@media (min-width: 768px) {
  .section_detail .tag_new {
    width: 3.375rem;
    height: 1.5rem;
  }
}

.section_magazine .tag_new {
  margin-right: 0;
}

@media (min-width: 768px) {
  .section_magazine .tag_new {
    margin-right: 0;
  }
}

.tag_number {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-left: 0.625rem;
  line-height: 1;
  height: 1.25rem;
  font-size: 0.75rem;
  font-weight: normal;
}

@media (min-width: 768px) {
  .tag_number {
    font-size: 0.875rem;
  }
}

.section_detail .tag_number {
  margin-left: 0;
}

@media (min-width: 768px) {
  .section_detail .tag_number {
    height: 1.5rem;
    font-size: 0.875rem;
  }
}

.tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 1.25rem;
  background-color: rgba(33, 33, 33, 0.5);
  color: #fff;
}

@media (min-width: 768px) {
  .tags {
    height: 1.375rem;
  }
}

.tags .tag_new {
  left: 0;
}

@media (min-width: 768px) {
  .section_detail .tags {
    height: 1.5rem;
  }
}

.tag_free {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.65rem 0 0.5rem;
  width: 2.5rem;
  font-size: 1rem;
  outline: none;
  border: none;
  background-color: #fff;
  -webkit-box-shadow: 0 0 0 1px transparent inset;
          box-shadow: 0 0 0 1px transparent inset;
  text-decoration: none;
  font-family: inherit;
  text-align: center;
  border-radius: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  line-height: 1;
  color: #EB3C46;
  -webkit-transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  position: relative;
  margin-right: 0.625rem;
  height: 1.25rem;
  font-size: 0.625rem;
}

@supports (all: unset) {
  .tag_free {
    padding: 0.5rem 0;
  }
}

.tag_free:focus, .tag_free:hover {
  -webkit-transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  opacity: 0.7;
}

@media (min-width: 768px) {
  .form-labelgroup {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.form-label {
  display: block;
}

.form-label img {
  display: block;
  height: 0.875rem;
}

@media (min-width: 768px) {
  .form-label img {
    height: 0.9375rem;
  }
}

.form-input {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: block;
  padding: 0.5rem 0.875rem;
  border: none;
  width: 14.8125rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 0.75rem;
  line-height: 1;
  background-color: #ededed;
  margin-top: 0.625rem;
  height: 3.125rem;
}

@media (min-width: 768px) {
  .form-input {
    padding: 0.5rem 1rem;
    font-size: 0.875rem;
  }
}

.form-input::-webkit-input-placeholder {
  color: #aaaaaa;
}

.form-input:-ms-input-placeholder {
  color: #aaaaaa;
}

.form-input::-ms-input-placeholder {
  color: #aaaaaa;
}

.form-input::placeholder {
  color: #aaaaaa;
}

@media (min-width: 768px) {
  .form-input {
    margin-top: 0;
    margin-left: 1.25rem;
    width: 32.5rem;
  }
}

.form-button {
  display: block;
  padding: 0.5rem 1rem;
  width: 7.375rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #212121;
  color: #fff;
  font-size: 0.93175rem;
  font-family: inherit;
  text-align: center;
  border-radius: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  -webkit-box-shadow: 0 0 0 1px transparent inset;
          box-shadow: 0 0 0 1px transparent inset;
  line-height: 1.875rem;
  box-sizing: border-box;
  cursor: pointer;
  -webkit-transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  height: 3.125rem;
  font-size: 0.75rem;
}

.form-button:focus, .form-button:hover {
  -webkit-transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  opacity: 0.7;
}

@supports (all: unset) {
  .form-button {
    line-height: 1;
  }
}

.form-button > span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  position: relative;
  bottom: -0.1875rem;
}

@supports (all: unset) {
  .form-button > span {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: static;
  }
}

@media (min-width: 768px) {
  .form-button {
    width: 12.5rem;
    font-size: 1rem;
  }
}

.form-button .icon_search {
  width: 0.75rem;
  height: 0.75rem;
  margin-right: 0.375rem;
  position: relative;
  bottom: -0.1875rem;
}

@supports (all: unset) {
  .form-button .icon_search {
    position: static;
  }
}

@media (min-width: 768px) {
  .form-button .icon_search {
    width: 1rem;
    height: 1rem;
    margin-right: 0.75rem;
  }
}

.form_topsearch {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 1.25rem auto 0;
  max-width: 65rem;
}

.form_topsearch form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

@media (min-width: 768px) {
  .form_topsearch {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    margin-top: 2.5rem;
  }
}

.form_topsearch .link_primary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.65rem 0 0.5rem;
  width: 100%;
  font-size: 1rem;
  outline: none;
  border: none;
  background-color: #EB3C46;
  -webkit-box-shadow: 0 0 0 1px transparent inset;
          box-shadow: 0 0 0 1px transparent inset;
  text-decoration: none;
  font-family: inherit;
  text-align: center;
  border-radius: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  line-height: 1;
  color: #fff;
  -webkit-transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  margin: 0.625rem;
  height: 3.125rem;
  font-size: 0.875rem;
}

@supports (all: unset) {
  .form_topsearch .link_primary {
    padding: 0.5rem 0;
  }
}

.form_topsearch .link_primary:focus, .form_topsearch .link_primary:hover {
  -webkit-transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  opacity: 0.7;
}

@media (min-width: 768px) {
  .form_topsearch .link_primary {
    width: 12.5rem;
    margin: 0 0 0 1.25rem;
    font-size: 1rem;
  }
}

.form_topsearch .link_primary .icon_search {
  width: 0.75rem;
  height: 0.75rem;
  margin-right: 0.625rem;
  position: relative;
  bottom: 0.125rem;
}

@supports (all: unset) {
  .form_topsearch .link_primary .icon_search {
    position: static;
  }
}

@media (min-width: 768px) {
  .form_topsearch .link_primary .icon_search {
    margin-right: 0.75rem;
    width: 1rem;
    height: 1rem;
  }
}

.searchbox {
  background-color: white;
  position: relative;
  z-index: 10;
  color: #212121;
  position: fixed;
  top: 6.5625rem;
  right: auto;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  display: none;
  padding-bottom: 3.125rem;
  width: 100%;
  overflow-x: hidden;
}

.searchbox a, .searchbox * {
  color: #212121;
}

.searchbox a:hover,
.searchbox a:focus {
  opacity: .7;
}

@media (min-width: 768px) {
  .searchbox {
    position: static;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    margin: 0;
    width: 20rem;
    background-color: #fff;
    overflow-x: visible;
  }
}

.searchbox-inner {
  padding-top: 3.125rem;
}

@media (min-width: 768px) {
  .searchbox-inner {
    padding-top: 0;
  }
}

.searchbox-header {
  position: fixed;
  top: 6.5625rem;
  z-index: 2;
  display: block;
  width: 100%;
  background-color: #fff;
}

.searchbox-header h3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 3.125rem;
  font-size: 1rem;
}

@media (min-width: 768px) {
  .searchbox-header {
    display: none;
  }
}

.searchbox .filterlist-button {
  display: block;
  padding: 0.5rem 1rem;
  width: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #fff;
  color: #fff;
  font-size: 0.93175rem;
  font-family: inherit;
  text-align: center;
  border-radius: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  -webkit-box-shadow: 0 0 0 1px transparent inset;
          box-shadow: 0 0 0 1px transparent inset;
  line-height: 1.875rem;
  box-sizing: border-box;
  cursor: pointer;
  -webkit-transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  height: 3.125rem;
  position: absolute;
  top: 0;
  right: 0;
}

.searchbox .filterlist-button:focus, .searchbox .filterlist-button:hover {
  -webkit-transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  opacity: 0.7;
}

@supports (all: unset) {
  .searchbox .filterlist-button {
    line-height: 1;
  }
}

.searchbox .filterlist-button .iconlabel {
  position: absolute;
  white-space: nowrap;
  width: 1px;
  height: 1px;
  overflow: hidden;
  border: 0;
  padding: 0;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  margin: -1px;
}

.searchbox-result {
  display: none;
}

@media (min-width: 768px) {
  .searchbox-result {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 0.5rem 1.25rem;
    background-color: #888;
  }
  .searchbox-result * {
    color: #fff;
  }
}

.searchbox-resultlabel {
  font-size: 1rem;
  font-weight: bold;
  letter-spacing: 0.06em;
}

.searchbox-resultnumber {
  font-size: 0.875rem;
}

.searchbox-resultnumber em {
  font-size: 2.5rem;
  line-height: 1;
  font-style: normal;
  font-weight: bold;
}

.searchbox-form form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.searchbox-form form .searchbox-freeword {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}

.searchbox-form form .formlist {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

.searchbox-freeword {
  padding: 0.625rem;
}

.searchbox-freeword label {
  position: relative;
  display: block;
}

.searchbox-freeword input {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  padding-left: 2.25rem;
  width: 22.1875rem;
  height: 2.75rem;
  border: #ededed 0.0625rem solid;
}

.searchbox-freeword .icon_search {
  position: absolute;
  top: 0;
  right: auto;
  bottom: 0;
  left: 0.625rem;
  margin: auto;
  content: "";
  z-index: 1;
  width: 0.875rem;
  height: 0.875rem;
}

@media (min-width: 768px) {
  .searchbox-freeword {
    padding: 0.75rem 1.25rem;
  }
  .searchbox-freeword input {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    width: 17.5rem;
  }
}

.searchbox-buttons {
  position: fixed;
  bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  z-index: 2;
}

@media (min-width: 768px) {
  .searchbox-buttons {
    position: static;
    width: 20rem;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}

.searchbox-reset {
  display: block;
  padding: 0.5rem 1rem;
  width: calc(100% / 3);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #ededed;
  color: #212121;
  font-size: 0.93175rem;
  font-family: inherit;
  text-align: center;
  border-radius: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  -webkit-box-shadow: 0 0 0 1px transparent inset;
          box-shadow: 0 0 0 1px transparent inset;
  line-height: 1.875rem;
  box-sizing: border-box;
  cursor: pointer;
  -webkit-transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  height: 3.125rem;
  box-sizing: border-box;
}

.searchbox-reset:focus, .searchbox-reset:hover {
  -webkit-transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  opacity: 0.7;
}

@supports (all: unset) {
  .searchbox-reset {
    line-height: 1;
  }
}

.searchbox-submit {
  display: block;
  padding: 0.5rem 1rem;
  width: calc(100% / 3 * 2);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #EB3C46;
  color: #fff;
  font-size: 0.93175rem;
  font-family: inherit;
  text-align: center;
  border-radius: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  -webkit-box-shadow: 0 0 0 1px transparent inset;
          box-shadow: 0 0 0 1px transparent inset;
  line-height: 1.875rem;
  box-sizing: border-box;
  cursor: pointer;
  -webkit-transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  height: 3.125rem;
  box-sizing: border-box;
}

.searchbox-submit:focus, .searchbox-submit:hover {
  -webkit-transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  opacity: 0.7;
}

@supports (all: unset) {
  .searchbox-submit {
    line-height: 1;
  }
}

.formlist {
  margin: 0;
  list-style: none;
  padding-left: 0;
  border-top: #ededed 0.0625rem solid;
}

[class~=formlist-item],
[class^=formlist-item_] {
  position: relative;
  border-bottom: #ededed 0.0625rem solid;
  min-height: 3.125rem;
}

[class~=formlist-item] .label_selectsingle,
[class^=formlist-item_] .label_selectsingle {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 3.125rem;
  padding: 0 0.625rem;
  pointer-events: none;
  font-size: 0.875rem;
  font-weight: bold;
}

[class~=formlist-item] .label_selectsingle::after,
[class^=formlist-item_] .label_selectsingle::after {
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0.625rem;
  bottom: 0;
  left: auto;
  margin: auto;
  background-image: url(../img/icon-arrow-select.svg);
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  width: 0.375rem;
  height: 0.75rem;
  content: "";
}

@media (min-width: 768px) {
  [class~=formlist-item] .label_selectsingle::after,
  [class^=formlist-item_] .label_selectsingle::after {
    right: 1.25rem;
  }
}

@media (min-width: 768px) {
  [class~=formlist-item] .label_selectsingle,
  [class^=formlist-item_] .label_selectsingle {
    padding-left: 1.25rem;
  }
}

[class~=formlist-item] .select_selectsingle,
[class^=formlist-item_] .select_selectsingle {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: auto;
  margin: auto;
  content: "";
  z-index: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: none;
  padding: 0 2.5rem 0 0.625rem;
  width: 70%;
  background-color: #fff;
  text-align: right;
  font-size: 0.75rem;
  color: #aaaaaa;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

@media (min-width: 768px) {
  [class~=formlist-item] .select_selectsingle,
  [class^=formlist-item_] .select_selectsingle {
    padding-left: 1.25rem;
  }
}

[class~=formlist-item] .select_selectsingle option,
[class^=formlist-item_] .select_selectsingle option {
  text-align: left;
}

[class~=formlist-item] .label_selectmultiple,
[class~=formlist-item] .label_inputmultiple,
[class~=formlist-item] .label_childlist,
[class^=formlist-item_] .label_selectmultiple,
[class^=formlist-item_] .label_inputmultiple,
[class^=formlist-item_] .label_childlist {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 3.125rem;
  min-width: 5rem;
  margin-right: auto;
  padding: 0 0 0 0.625rem;
  font-size: 0.875rem;
  font-weight: bold;
}

@media (min-width: 768px) {
  [class~=formlist-item] .label_selectmultiple,
  [class~=formlist-item] .label_inputmultiple,
  [class~=formlist-item] .label_childlist,
  [class^=formlist-item_] .label_selectmultiple,
  [class^=formlist-item_] .label_inputmultiple,
  [class^=formlist-item_] .label_childlist {
    padding-left: 1.25rem;
  }
}

[class~=formlist-item] .label_childlist,
[class^=formlist-item_] .label_childlist {
  display: none;
}

@media (min-width: 768px) {
  [class~=formlist-item] .label_childlist,
  [class^=formlist-item_] .label_childlist {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 3.75rem;
    min-width: 0;
    margin-right: auto;
  }
}

[class~=formlist-item] .select_selectmultiple,
[class~=formlist-item] .input_inputmultiple,
[class^=formlist-item_] .select_selectmultiple,
[class^=formlist-item_] .input_inputmultiple {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 4.75rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  height: 1.875rem;
  background-color: #fff;
  border: #dddddd 0.0625rem solid;
}

[class~=formlist-item] .text_wave,
[class^=formlist-item_] .text_wave {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 2.25rem;
  height: 2.25rem;
  font-size: 0.75rem;
  color: #aaaaaa;
}

@media (min-width: 768px) {
  [class~=formlist-item] .text_wave,
  [class^=formlist-item_] .text_wave {
    width: 1.125rem;
  }
}

[class~=formlist-item] .text_unit,
[class^=formlist-item_] .text_unit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 2.25rem;
  height: 2.25rem;
  font-size: 0.75rem;
  line-height: 0.8;
}

[class~=formlist-item] .text_unit small,
[class^=formlist-item_] .text_unit small {
  font-size: 0.625rem;
}

@media (min-width: 768px) {
  [class~=formlist-item] .text_unit,
  [class^=formlist-item_] .text_unit {
    width: 1.875rem;
  }
}

[class~=formlist-item] .text_unitsmall,
[class^=formlist-item_] .text_unitsmall {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 2.25rem;
  height: 2.25rem;
  font-size: 0.625rem;
}

@media (min-width: 768px) {
  [class~=formlist-item] .text_unitsmall,
  [class^=formlist-item_] .text_unitsmall {
    width: 1.875rem;
  }
}

[class~=formlist-item] .text_sp,
[class^=formlist-item_] .text_sp {
  display: inline;
}

@media (min-width: 768px) {
  [class~=formlist-item] .text_sp,
  [class^=formlist-item_] .text_sp {
    display: none;
  }
}

[class~=formlist-item] .text_pc,
[class^=formlist-item_] .text_pc {
  display: none;
}

@media (min-width: 768px) {
  [class~=formlist-item] .text_pc,
  [class^=formlist-item_] .text_pc {
    display: inline;
  }
}

.formlist-item_multiple {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media (min-width: 768px) {
  .formlist-item_multiple {
    padding-right: 0.625rem;
  }
}

@media (min-width: 768px) {
  .formlist-item_listmultiple {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding-right: 0.625rem;
  }
}

.formlist-childlist {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.formlist-childlist dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 3.125rem;
  width: 5rem;
  margin-right: auto;
  padding: 0 0 0 0.625rem;
  font-size: 0.875rem;
  font-weight: bold;
}

.formlist-childlist dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: 0;
  height: 3.125rem;
}

@media (min-width: 768px) {
  .formlist-childlist {
    width: 14.125rem;
  }
  .formlist-childlist dt {
    padding-left: 0;
    width: 1.625rem;
    font-size: 0.8125rem;
    font-weight: normal;
  }
  .formlist-childlist dd {
    width: 12.4375rem;
  }
}

.formlist-enumerate {
  padding: 0 0.625rem 0.625rem;
}

.formlist-enumerate label {
  display: inline-block;
  margin: 0 0.625rem 0.3125rem 0;
  font-size: 0.875rem;
}

@media (min-width: 768px) {
  .formlist-enumerate {
    padding: 0 1.25rem 0.625rem;
  }
}

.sliderlist_eyecatch {
  background-color: #212121;
  border-top: 0.25rem #212121 solid;
  border-bottom: 0.25rem #212121 solid;
}

@media (min-width: 768px) {
  .sliderlist_eyecatch {
    border-top: 5px #212121 solid;
    border-bottom: 5px #212121 solid;
  }
}

.sliderlist_eyecatch a {
  display: block;
  border-right: 0.25rem #212121 solid;
  border-left: 0.25rem #212121 solid;
  border-top: 0.25rem #212121 solid;
  border-bottom: 0.25rem #212121 solid;
}

@media (min-width: 768px) {
  .sliderlist_eyecatch a {
    border-right: 5px #212121 solid;
    border-left: 5px #212121 solid;
    border-top: 5px #212121 solid;
    border-bottom: 5px #212121 solid;
  }
}

.sliderlist_eyecatch img {
  width: 100%;
  display: block;
}

.sliderlist_eyecatch .slider_page01 {
  width: 22rem;
}

@media (min-width: 768px) {
  .sliderlist_eyecatch .slider_page01 {
    min-width: 352px;
    width: 22rem;
  }
}

.sliderlist_eyecatch .slider_page02 {
  width: 22rem;
}

@media (min-width: 768px) {
  .sliderlist_eyecatch .slider_page02 {
    min-width: 352px;
    width: 22rem;
  }
}

.sliderlist_eyecatch .slider_page03 {
  width: 22rem;
}

@media (min-width: 768px) {
  .sliderlist_eyecatch .slider_page03 {
    min-width: 352px;
    width: 22rem;
  }
}

.sliderlist_eyecatch .slider_page03-01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.sliderlist_eyecatch .slider_page03-01 a {
  width: 50%;
}

.imagelist-primary .imagelist-item {
  height: 17.5625rem;
}

@media (min-width: 768px) {
  .imagelist-primary .imagelist-item {
    height: 32.25rem;
  }
}

.imagelist-primary img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  font-family: 'object-fit: cover; object-position: center;';
  width: 100%;
  height: 100%;
  display: block;
}

@media (min-width: 768px) {
  .imagelist-primary .test .imagelist-item:first-child {
    z-index: 10;
  }
}

.imagelist-primary .slick-next,
.imagelist-primary .slick-prev {
  width: 50%;
  height: 100%;
  bottom: 0;
}

.imagelist-primary .slick-next::before,
.imagelist-primary .slick-prev::before {
  position: absolute;
  content: "";
  display: block;
  width: 0.75rem;
  height: 1.5rem;
  background-image: url(../img/icon-arrow.svg);
  background-repeat: no-repeat;
}

@media (min-width: 768px) {
  .imagelist-primary .slick-next::before,
  .imagelist-primary .slick-prev::before {
    width: 1.71875rem;
    height: 3.4375rem;
    background-image: url(../img/icon-arrow-large.svg);
  }
}

.imagelist-primary .slick-next {
  right: 0;
  z-index: 1001;
}

.imagelist-primary .slick-next::before {
  right: 0.625rem;
}

@media (min-width: 768px) {
  .imagelist-primary .slick-next::before {
    right: 0.625rem;
  }
}

.imagelist-primary .slick-prev {
  left: 0;
  z-index: 1001;
}

.imagelist-primary .slick-prev::before {
  left: 0.625rem;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

@media (min-width: 768px) {
  .imagelist-primary .slick-prev::before {
    left: 0.625rem;
  }
}

.imagelist-primary .slick-overlay-image {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 1000;
}

.imagelist-primary .slick-overlay-image img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  font-family: 'object-fit: cover; object-position: center;';
}

.imagelist-secondary {
  margin-top: 0.625rem;
  height: 3.75rem;
}

.imagelist-secondary img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  font-family: 'object-fit: cover; object-position: center;';
  height: 100%;
  width: 100%;
}

@media (min-width: 768px) {
  .imagelist-secondary {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 42.6875rem;
    margin-top: 0;
    height: auto;
  }
}

.imagelist-secondary .imagelist-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 3.75rem;
  height: 3.75rem;
  overflow: hidden;
}

@media (min-width: 768px) {
  .imagelist-secondary .imagelist-item {
    width: 5.27344rem !important;
    height: 5.25rem;
    margin-top: 0.0625rem;
    margin-right: 0.0625rem;
  }
  .imagelist-secondary .imagelist-item:nth-child(8n) {
    margin-right: 0;
  }
}

.badge_top {
  display: none;
}

@media (min-width: 768px) {
  .badge_top {
    position: relative;
    position: absolute;
    display: block;
    width: 10.3125rem;
    height: 10.3125rem;
    border-radius: 51%;
    -webkit-box-shadow: 0.125rem 0.125rem 0 0.125rem rgba(33, 33, 33, 0.5);
            box-shadow: 0.125rem 0.125rem 0 0.125rem rgba(33, 33, 33, 0.5);
  }
  .badge_top::after {
    display: inline-block;
    position: absolute;
    top: auto;
    right: 0;
    bottom: 2.1875rem;
    left: 0;
    margin: auto;
    background-image: url(../img/icon-arrow-outline.svg);
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center;
    width: 1.6875rem;
    height: 0.75rem;
    content: "";
  }
  .badge_top::before {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    background-image: url();
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center;
    width: 1.5rem;
    height: 1.5rem;
    content: "";
    width: 10.3125rem;
    height: 10.3125rem;
    border-radius: 51%;
    background-color: #EB3C46;
    background-image: url(../img/badge-top-background.svg);
    background-repeat: no-repeat;
    background-size: 9.375rem;
    z-index: 0;
    -webkit-animation: 20s infinite linear badge-rotate;
            animation: 20s infinite linear badge-rotate;
  }
  .badge_top .badge-inner {
    position: relative;
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 100%;
    height: 100%;
    color: #fff;
  }
  .badge_top .badge-text {
    font-size: 0.6875rem;
    text-align: center;
    line-height: 1.3;
    letter-spacing: .1em;
    margin-bottom: 0.625rem;
  }
  .badge_top .badge-number {
    height: 2.5rem;
    line-height: 1;
    margin-bottom: 1.25rem;
  }
  .badge_top .badge-number em {
    font-style: normal;
    font-size: 2.5rem;
  }
  .badge_top .badge-number span {
    font-size: 0.75rem;
  }
}

@-webkit-keyframes badge-rotate {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@keyframes badge-rotate {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

.descriptionlist_small {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0;
  padding: 1.25rem 0.625rem;
}

.descriptionlist_small dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 0.125rem;
  width: 7.1875rem;
  height: 2.75rem;
  font-size: 0.875rem;
  font-weight: bold;
  background-color: #ededed;
}

.descriptionlist_small dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 0.125rem;
  margin-left: 1.25rem;
  width: 12.5rem;
  height: 2.75rem;
}

.descriptionlist_small ul {
  margin: 0;
  padding-left: 0;
  font-size: 0.75rem;
  list-style: none;
}

.descriptionlist_small li {
  line-height: 1.5;
}

.descriptionlist_small em {
  font-size: 0.875rem;
  font-style: normal;
  font-weight: bold;
}

.descriptionlist_small em span {
  font-size: 1rem;
  color: #EB3C46;
}

@media (min-width: 768px) {
  .descriptionlist_small {
    padding: 0 3.125rem 1.25rem;
  }
  .descriptionlist_small dt {
    margin-top: 0.0625rem;
    width: 7.5rem;
    height: 2.25rem;
  }
  .descriptionlist_small dd {
    margin-top: 0.0625rem;
    margin-left: 1.25rem;
    width: 27.5rem;
    height: 2.25rem;
  }
  .descriptionlist_small ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .descriptionlist_small li {
    margin-right: 1.25rem;
  }
}

.descriptionlist_large {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0;
  width: 100%;
}

.descriptionlist_large dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0.625rem;
  width: calc(100% / 3);
  min-height: 2.25rem;
  background-color: #ededed;
  font-size: 0.75rem;
  font-weight: bold;
  line-height: 1.3;
}

.descriptionlist_large dt:nth-of-type(n+2) {
  border-top: 0.0625rem #fff solid;
}

@media (min-width: 768px) {
  .descriptionlist_large:only-child dt {
    width: calc(100% / 6);
  }
}

.descriptionlist_large dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-left: 0;
  padding: 0.625rem 0.9375rem;
  width: calc(100% / 3 * 2);
  background-color: #fff;
  font-size: 0.875rem;
  line-height: 1.5;
}

.descriptionlist_large dd:nth-of-type(n+2) {
  border-top: 0.0625rem #fff solid;
}

@media (min-width: 768px) {
  .descriptionlist_large:only-child dd {
    width: calc(100% / 6 * 5);
  }
}

.pagination {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: auto;
  margin: 0 auto;
  padding-left: 0;
  background-color: #fff;
  list-style: none;
}

.pagination li {
  border-right: #ededed 0.0625rem solid;
}

.pagination li:last-child {
  border-right: 0;
}

.pagination li:nth-child(n+8):not(:last-child) {
  display: none;
}

@media (min-width: 768px) {
  .pagination li:nth-child(n+8):not(:last-child) {
    display: block;
  }
}

.pagination li:last-child {
  margin-left: auto;
}

.pagination a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 2.875rem;
  height: 2.875rem;
  background-color: #fff;
}

.pagination a[aria-current="true"] {
  background-color: #EB3C46;
  color: #fff;
}

@media (min-width: 768px) {
  .pagination {
    max-width: 38.1875rem;
  }
  .pagination a {
    width: 3.125rem;
    height: 3.125rem;
  }
}

.pagination .icon_before::after,
.pagination .icon_after::after {
  -webkit-transform: translate(-0.625rem, -0.375rem) skewX(45deg);
          transform: translate(-0.625rem, -0.375rem) skewX(45deg);
}

@supports (all: unset) {
  .pagination .icon_before::after,
  .pagination .icon_after::after {
    -webkit-transform: translateX(-0.125rem) skewX(45deg);
            transform: translateX(-0.125rem) skewX(45deg);
  }
}

[class~=filterlist],
[class^=filterlist_] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  padding-left: 0;
  margin: 0;
}

.filterlist-select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-block;
  padding: 0 0.875rem 0 1.25rem;
  outline: none;
  border-radius: 0.25rem;
  background-color: transparent;
  background-image: url("../img/icon-filter-color.svg");
  background-repeat: no-repeat;
  background-position: left center;
  background-origin: border-box;
  background-size: 0.875rem 0.8125rem;
  width: 100%;
  height: 2.375rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 0.75rem;
  color: #212121;
  line-height: 1.3rem;
  cursor: pointer;
  border: none;
}

@media (min-width: 768px) {
  .filterlist-select {
    background-size: 1.125rem 1rem;
  }
}

@media (min-width: 768px) {
  .filterlist-select {
    padding-right: 1.875rem;
    padding-left: 1.75rem;
    font-size: 0.875rem;
  }
}

.filterlist_form {
  margin-left: auto;
}

.filterlist_form li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 0.9375rem;
}

@media (min-width: 768px) {
  .filterlist_form li:nth-child(1) {
    position: relative;
  }
  .filterlist_form li:nth-child(1)::after {
    display: inline-block;
    position: absolute;
    top: -0.5rem;
    right: 0.1875rem;
    bottom: 0;
    left: auto;
    margin: auto;
    background-image: url();
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center;
    width: 0.0625rem;
    height: 1.5rem;
    content: "";
    border-width: 0.125rem 0.125rem 0 0;
    border-color: #212121;
    border-style: solid;
    width: 0.625rem;
    height: 0.625rem;
    background-color: transparent;
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
  }
}

.filterlist_form li:nth-child(2) {
  position: relative;
}

.filterlist_form li:nth-child(2)::before {
  display: inline-block;
  position: absolute;
  top: 0;
  right: auto;
  bottom: 0;
  left: 0;
  margin: auto;
  background-image: url();
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  width: 0.0625rem;
  height: 0.875rem;
  content: "";
  background-color: #aaaaaa;
}

@media (min-width: 768px) {
  .filterlist_form li:nth-child(2) {
    display: none;
  }
}

.filterlist_form .filterlist-button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  height: 2.375rem;
  padding: 0 0 0 1rem;
  background-color: transparent;
  background-image: url("../img/icon-search-color.svg");
  background-repeat: no-repeat;
  background-position: left center;
  background-origin: border-box;
  background-size: 0.75rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 0.75rem;
  cursor: pointer;
  outline: none;
}

.filterlist_link {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0.375rem 0.625rem 0;
}

.filterlist_link li {
  margin-top: 0.625rem;
  margin-right: 0.625rem;
}

.filterlist_link a {
  background-color: white;
  position: relative;
  z-index: 1;
  color: #212121;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 1.25rem;
  height: 1.625rem;
  border-radius: 0.875rem;
  font-size: 0.75rem;
  font-weight: bold;
}

.filterlist_link a a, .filterlist_link a * {
  color: #212121;
}

.filterlist_link a a:hover,
.filterlist_link a a:focus {
  opacity: .7;
}

@media (min-width: 768px) {
  .filterlist_link a {
    padding: 0 0.875rem;
  }
}

@media (min-width: 768px) {
  .filterlist_link {
    margin: 0.625rem 1.875rem 0;
  }
  .filterlist_link li {
    margin-right: 1.25rem;
  }
  .filterlist_link a {
    height: 1.875rem;
    border-radius: 1rem;
  }
}

.summarynavigation {
  position: fixed;
  top: -3.125rem;
  z-index: 3;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 3.125rem;
  background-color: #ededed;
  border-bottom: #aaaaaa 0.0625rem solid;
}

.summarynavigation.show {
  top: 0;
  -webkit-transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
}

@media (min-width: 768px) {
  .summarynavigation {
    top: -5rem;
    width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 0.9375rem 5rem 0.75rem 0.9375rem;
    border-bottom: #aaaaaa 0.1875rem solid;
    height: 5rem;
  }
}

.summarynavigation-thumb {
  width: 3.125rem;
  height: 3.125rem;
}

.summarynavigation-thumb img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  font-family: 'object-fit: cover; object-position: center;';
  width: 100%;
  height: 100%;
  display: block;
}

.summarynavigation-name {
  display: none;
}

@media (min-width: 768px) {
  .summarynavigation-name {
    display: block;
    margin-right: 0.625rem;
    margin-left: 0.9375rem;
    width: 22.5625rem;
    font-size: 1.125rem;
    font-weight: bold;
    line-height: 1.3;
  }
}

.summarynavigation-num {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 4.6875rem;
  padding-left: 0.625rem;
  line-height: 1.5;
  font-size: 0.75rem;
  position: relative;
}

.summarynavigation-num em {
  font-style: normal;
}

.summarynavigation-num br {
  display: inline;
}

@media (min-width: 768px) {
  .summarynavigation-num br {
    display: none;
  }
}

@media (min-width: 768px) {
  .summarynavigation-num {
    padding: 0;
    width: 9.375rem;
    height: 3.125rem;
    border: #aaaaaa 0.0625rem solid;
    line-height: 1.3;
    text-align: center;
  }
  .summarynavigation-num em {
    font-weight: bold;
  }
}

.summarynavigation-num::after {
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: auto;
  margin: auto;
  background-image: url();
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  width: 0.0625rem;
  height: 1.5rem;
  content: "";
  height: 1.875rem;
  background-color: #aaaaaa;
}

@media (min-width: 768px) {
  .summarynavigation-num::after {
    right: -0.3125rem;
    border-width: 0.0625rem 0.0625rem 0 0;
    border-color: #aaaaaa;
    border-style: solid;
    width: 0.5rem;
    height: 0.5rem;
    background-color: #ededed;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
}

.summarynavigation-numtext {
  display: none;
}

@media (min-width: 768px) {
  .summarynavigation-numtext {
    display: inline;
  }
}

.summarynavigation-nav {
  width: 7.8125rem;
}

.summarynavigation-nav a {
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-top: 0.75rem;
  height: 3.125rem;
  font-size: 0.75rem;
  font-weight: bold;
  text-align: center;
  line-height: 1;
  position: relative;
}

.summarynavigation-nav a::after {
  display: inline-block;
  position: absolute;
  top: auto;
  right: 0;
  bottom: 0.625rem;
  left: 0;
  margin: auto;
  background-image: url();
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  width: 0.5rem;
  height: 1.5rem;
  content: "";
  border-width: 0 0 0.1875rem 0.1875rem;
  border-color: #aaaaaa;
  border-style: solid;
  height: 0.5rem;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

@media (min-width: 768px) {
  .summarynavigation-nav {
    display: none;
  }
}

.summarynavigation-phone {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 7.8125rem;
}

.summarynavigation-phone a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.65rem 0 0.5rem;
  width: 100%;
  font-size: 1rem;
  outline: none;
  border: none;
  background-color: #EB3C46;
  -webkit-box-shadow: 0 0 0 1px transparent inset;
          box-shadow: 0 0 0 1px transparent inset;
  text-decoration: none;
  font-family: inherit;
  text-align: center;
  border-radius: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  line-height: 1;
  color: #fff;
  -webkit-transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  height: 3.125rem;
  font-size: 0.75rem;
  font-weight: bold;
}

@supports (all: unset) {
  .summarynavigation-phone a {
    padding: 0.5rem 0;
  }
}

.summarynavigation-phone a:focus, .summarynavigation-phone a:hover {
  -webkit-transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  opacity: 0.7;
}

@media (min-width: 768px) {
  .summarynavigation-phone {
    margin-left: 1.25rem;
    width: auto;
  }
  .summarynavigation-phone a {
    width: 2.1875rem;
    background-color: transparent;
    pointer-events: none;
  }
  .summarynavigation-phone img {
    display: block;
    margin-left: 0.625rem;
    width: 15rem;
  }
}

.summarynavigation-phone .tag_free {
  height: 1rem;
  width: 1.5625rem;
  font-weight: normal;
}

@media (min-width: 768px) {
  .summarynavigation-phone .tag_free {
    display: block;
    margin-right: 0;
    background-color: #EB3C46;
    width: 2.25rem;
    height: 1.75rem;
    color: #fff;
    font-weight: bold;
  }
}

.summarynavigation-phonetext {
  display: inline;
}

@media (min-width: 768px) {
  .summarynavigation-phonetext {
    display: none;
  }
}

.summarynavigation-phonenumber {
  display: none;
}

@media (min-width: 768px) {
  .summarynavigation-phonenumber {
    display: block;
  }
}

.summarynavigation-mail {
  display: none;
}

@media (min-width: 768px) {
  .summarynavigation-mail {
    display: block;
    margin-left: auto;
  }
  .summarynavigation-mail .icon_mail {
    width: 1rem;
    height: 0.75rem;
  }
}

.summarynavigation-line {
  display: none;
}

@media (min-width: 768px) {
  .summarynavigation-line {
    display: block;
  }
}

.summarynavigation .link_tertiary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.65rem 0 0.5rem;
  width: 9.8125rem;
  font-size: 0.75rem;
  outline: none;
  border: none;
  background-color: #fff;
  -webkit-box-shadow: 0 0 0 1px transparent inset;
          box-shadow: 0 0 0 1px transparent inset;
  text-decoration: none;
  font-family: inherit;
  text-align: center;
  border-radius: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  line-height: 1;
  color: #212121;
  -webkit-transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  transition: 0.2s cubic-bezier(0.95, 0.05, 0.795, 0.035);
  height: 3.125rem;
  margin-right: 1.25rem;
  font-weight: bold;
}

@supports (all: unset) {
  .summarynavigation .link_tertiary {
    padding: 0.5rem 0;
  }
}

.summarynavigation .link_tertiary:focus, .summarynavigation .link_tertiary:hover {
  -webkit-transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  opacity: 0.7;
}

.summarynavigation .icon_line,
.summarynavigation .icon_mail {
  margin-right: 0.625rem;
}

.summarynavigation .globalheader-button {
  display: none;
  top: 0;
}

@media (min-width: 768px) {
  .summarynavigation .globalheader-button {
    display: inline;
  }
}

.text_line {
  text-transform: uppercase;
}
