@media (hover:hover) {
  a.card-link-indicator[href]:hover {
    text-decoration: none;
  }
}
.header-logo {
  width: fit-content;
}
.localnav {
  @media all and (min-width: 768.98px){
    position: static;
  }

  &.-clone {
    @media all and (max-width: 768.98px) {
      top: 44px;
      z-index: 2;
    }
  }
} 
.localnav__link.active {
    color: #505054 !important;
    font-weight: normal;

    &:hover {
      color: #0064d2 !important;
    }
}
main#main {
  --arrow-icon: url("data:image/svg+xml;charset=utf-8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22utf-8%22%3F%3E%0D%0A%3C!--%20Generator%3A%20Adobe%20Illustrator%2027.9.4%2C%20SVG%20Export%20Plug-In%20.%20SVG%20Version%3A%209.03%20Build%2054784)%20%20--%3E%0D%0A%3Csvg%20version%3D%221.1%22%20id%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20x%3D%220px%22%0D%0A%09%20y%3D%220px%22%20viewBox%3D%220%200%2080%2020%22%20style%3D%22enable-background%3Anew%200%200%2080%2020%3B%22%20xml%3Aspace%3D%22preserve%22%3E%0D%0A%3Cstyle%20type%3D%22text%2Fcss%22%3E%0D%0A%09.st0%7Bopacity%3A0.996%3Benable-background%3Anew%20%20%20%20%3B%7D%0D%0A%3C%2Fstyle%3E%0D%0A%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_1309%22%20class%3D%22st0%22%20d%3D%22M0%2C13.9l2.4%2C2.4L10%2C8.5l7.6%2C7.9l2.4-2.4L10%2C3.6L0%2C13.9z%22%2F%3E%0D%0A%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_1309_00000181071478262970997990000002076088678787333795_%22%20class%3D%22st0%22%20d%3D%22M33.9%2C20l2.4-2.4L28.5%2C10l7.9-7.6%0D%0A%09L33.9%2C0L23.6%2C10L33.9%2C20z%22%2F%3E%0D%0A%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_1309_00000083049120826640697600000007239184265341564348_%22%20class%3D%22st0%22%20d%3D%22M46.1%2C0l-2.4%2C2.4l7.9%2C7.6l-7.9%2C7.6%0D%0A%09l2.4%2C2.4l10.3-10L46.1%2C0z%22%2F%3E%0D%0A%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_1309_00000001652832629473048770000005762476836519592605_%22%20class%3D%22st0%22%20d%3D%22M80%2C6.1l-2.4-2.4L70%2C11.5l-7.6-7.9%0D%0A%09L60%2C6.1l10%2C10.3L80%2C6.1z%22%2F%3E%0D%0A%3C%2Fsvg%3E%0D%0A");
  --pdf-icon: url("data:image/svg+xml;charset=utf-8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyNy45LjQsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA5LjAzIEJ1aWxkIDU0Nzg0KSAgLS0+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IuODrOOCpOODpOODvF8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiDQoJIHk9IjBweCIgdmlld0JveD0iMCAwIDIwIDIwIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyMCAyMDsiIHhtbDpzcGFjZT0icHJlc2VydmUiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCI+DQo8cGF0aCBkPSJNMiw0SDB2MTRjMCwxLjEsMC45LDIsMiwyaDE0di0ySDJWNHoiLz4NCjxnPg0KCTxwYXRoIGQ9Ik0xOCwwSDZDNC45LDAsNCwwLjksNCwydjEyYzAsMS4xLDAuOSwyLDIsMmgxMmMxLjEsMCwyLTAuOSwyLTJWMkMyMCwwLjksMTkuMSwwLDE4LDB6IE05LjUsNy41QzkuNSw4LjMsOC44LDksOCw5SDd2Mkg1LjUNCgkJVjVIOGMwLjgsMCwxLjUsMC43LDEuNSwxLjVWNy41eiBNMTQuNSw5LjVjMCwwLjgtMC43LDEuNS0xLjUsMS41aC0yLjVWNUgxM2MwLjgsMCwxLjUsMC43LDEuNSwxLjVWOS41eiBNMTguNSw2LjVIMTd2MWgxLjVWOUgxN3YyDQoJCWgtMS41VjVoM1Y2LjV6Ii8+DQoJPHJlY3QgeD0iNyIgeT0iNi41IiB3aWR0aD0iMSIgaGVpZ2h0PSIxIi8+DQoJPHJlY3QgeD0iMTIiIHk9IjYuNSIgd2lkdGg9IjEiIGhlaWdodD0iMyIvPg0KPC9nPg0KPC9zdmc+DQo=");

  /* --arrow-icon: url("../img/common/icons-arrow.svg"); */
  /* --pdf-icon: url("../img/common/icons-link.svg"); */
}
main .button a {
  color: inherit;
}
main .button:hover {
  text-decoration: none;
}
.h2 {
  scroll-margin-top: 45px;
}
@media all and (max-width: 768.98px) {
  main:has(.localnav) h2 {
    scroll-margin-top: 100px;
  }
}
.disp-sp {
  display: block !important;
}
.disp-pc {
  display: none !important;
}
.disp-none {
  display: none;
}
.border-none {
  border: none !important;
}
.txt-normal {
  font-weight: normal !important;
}
.txt-bold {
  font-weight: bold !important;
}
.txt-center {
  text-align: center !important;
}
.w-40p {
  width: 40% !important;
}
.break { display:block; height:1em; }
.top-key-visual,
.top-key-visual .top-key-visual-item {
  height: auto;
}
.top-key-visual-item .top-key-visual-thumbnail > a img, .top-key-visual-item .top-key-visual-thumbnail img {
  height: auto;
}
@media all and (max-width: 767.98px) {
  .flex-col-reverse-sp {
    flex-direction: column-reverse;
  }
}
@media (max-width: 768.98px) {
    .header {
      z-index: 1001;
    }
}
@media all and (min-width: 768px) {
  .disp-sp {
    display: none !important;
  }
  .disp-pc {
    display: block !important;
  }
}
.card-link-indicator {
  position: relative;
  height: 100%;

  &::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 25px;
    height: 25px;
    background-color: var(--tos-blue);
    clip-path: polygon(100% 0, 100% 100%, 0 100%);
  }
  &:hover::after {
    background-color: var(--tos-red);
  }
}
.box-shadow {
  box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.2);
}
[class*="border-radius-"] {
  border-radius: 5px;

  &.border-radius-top {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
  }

  &.border-radius-bottom-left {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
}
.border-radius-5 {
  border-radius: 5px;
}
.is-pill {
  border-radius: 9999px;
}
[class*="link-icon-arrow--"] {
  --cols: 4;
  position: relative;
}
.button[class*="link-icon-arrow--"] {
  padding-right: 2em;
}
[class*="link-icon-arrow--"]::after {
  content: "";
  position: absolute;
  -webkit-mask-image: var(--arrow-icon);
          mask-image: var(--arrow-icon);
  background-color: currentColor;
  
  -webkit-mask-position: calc(var(--index) * (100% / (var(--cols) - 1))) 0%;
          mask-position: calc(var(--index) * (100% / (var(--cols) - 1))) 0%;
  -webkit-mask-size: calc(var(--cols) * 100%) 100%;
          mask-size: calc(var(--cols) * 100%) 100%;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
}
.link-icon-arrow--right {
  --index: 2;
}
.link-icon-arrow--right::after {
  top: 50%;
  right: 0.5rem;
  transform: translate(0px, -50% );
  min-width: 1em;
  min-height: 1em;
}
.link-icon-arrow--down {
  --index: 3;
}
.link-icon-arrow--down::after {
  top: 50%;
  right: 1.5rem;
  transform: translate(0px, -50% );
  min-width: .7em;
  min-height: .7em;
}
.claassification-item:has(a) {
  height: 100%;
}
.claassification-item a {
  display: block;
  height: 100%;

  &:hover {
    opacity: 0.8;
  }
}
.article-item-textarea {
  background-color: white;
  color: #000;
}
.contact-area {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 200px;
  margin-top: 80px;
  background-image: url("../img/common/inquiry_sp.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position-x: right;

  & a:hover {

    & .contact-button {
      text-decoration: none;
    }
  }
  
  & .contact-button {
    width: 300px;
  }

  & .contact-button:hover {
    cursor: pointer;
    text-decoration: underline;
  }
}
@media all and (min-width: 768px) {
  .contact-area {
    background-image: url("../img/common/inquiry_pc.png");
  }
}

.icon-pdf {
    width: 20px;
    height: 20px;
    padding-inline: 16px;
    -webkit-mask-image: var(--pdf-icon);
            mask-image: var(--pdf-icon);
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    background-color: currentColor;
}
.icon-badge li {
    position: relative;
    padding-inline-start: .7em;
    margin-inline-start: 1em;

    &::before {
        content: "";
        position: absolute;
        top: 0;
        left: -1em;
        width: 19px;
        height: 19px;
        padding-inline-start: 2em;
        transform: translateY(20%);
        background-image: url("../img/common/icon-badge.png");
        background-repeat: no-repeat;
        background-size: contain;
    }

    &:not(:last-of-type) {
        margin-bottom: 1rem;
    }
}

/***** slick関連 *****/
[data-slider]:has(.article-item) .article-item {
  height: 100%;
  padding-inline: 1px;
  margin-inline: 0;
}
[data-slider] {
  position: relative;
}
.slick-arrow {
  --cols: 4;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 50px;
  height: 50px;
  background-color: var(--tos-blue);
  border: none;
  border-radius: 50%;
  color: white;
  font-size: 0;
  line-height: 0;
  z-index: 1;
}
.slick-arrow:hover {
  opacity: 0.8;
}
.slick-prev::after,
.slick-next::after {
  min-width: 25px;
  min-height: 25px;
}
.slick-prev  {
  --index: 1;
  left: 0px;
  @media all and (min-width: 768px) {
    left: -7px;
  }
}
.slick-next {
  --index: 2;
  right: 0px;
  @media all and (min-width: 768px) {
    right: -7px;
  }
}
.slick-arrow::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-mask-image: var(--arrow-icon);
          mask-image: var(--arrow-icon); 
  -webkit-mask-position: calc(var(--index) * (100% / (var(--cols) - 1))) 0%;
          mask-position: calc(var(--index) * (100% / (var(--cols) - 1))) 0%;
  -webkit-mask-size: calc(var(--cols) * 100%) 100%;
          mask-size: calc(var(--cols) * 100%) 100%;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  background-color: currentColor;
}
.slick-list {
  padding-bottom: 2rem;
}
[data-slider] .slick-track {
  display: flex !important;
}
[data-slider] .slick-slide {
  height: auto !important; 
  display: flex !important; 
}
[data-slider] .slick-slide > div,
[data-slider] .slide {
  display: flex;
  flex-direction: column;
  width: 100%;
}
[data-slider] .article-item-title {
  margin-top: auto; 
}
[data-slider].slick-initialized {
  display: block;
}
@media all and (min-width: 768px) {
  [data-slider="info"]:has(.article-item) .article-item {
    padding-inline: 15px;
  }
}
/***** /slick関連 *****/

@media all and (max-width: 767.98px) {
  #main:has(.localnav.-clone:not([hidden])) #localnav-original {
    visibility: hidden;  
  }
}