.main.mod-3rd {
  font-size: 14px;
}
@media screen and (min-width: 768px) {
  .main.mod-3rd {
    font-size: 16px;
  }
}
.main.mod-3rd .mod-img-caption {
  text-align: center;
  margin-top: 5px;
  font-size: 13px;
  font-weight: 500;
}

.mod-kv img {
  width: 100%;
}
.mod-kv__pc {
  display: none;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .mod-kv__pc {
    display: block;
  }
}
.mod-kv__sp {
  display: block;
  width: 100%;
  height: 100vh;
}
.mod-kv__sp img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 768px) {
  .mod-kv__sp {
    display: none;
  }
}

.mod-a {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
  padding: 20px 30px;
  overflow: hidden;
  background: #fff;
  color: #222;
  position: relative;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
.mod-a:before {
  content: "";
  width: 10px;
  height: 100%;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  background: #b8b8b8;
}
@media screen and (min-width: 768px) {
  .mod-a:not(:first-child) {
    padding-top: 60px;
  }
}
.wrapper > .mod-a:not(:first-child) {
  padding-top: 80px;
}
.wrapper > .mod-a::after {
  transform: translate(-50%, -50%) rotate(13deg);
}
.mod-a h2 {
  color: rgb(231, 68, 95);
  font-size: clamp(20px, 3.6rem, 25px);
}
@media screen and (min-width: 768px) {
  .mod-a h2 {
    font-size: clamp(30px, 2.9rem, 35px);
  }
}
@media screen and (min-width: 768px) {
  .mod-a--middle h2 {
    font-size: 38px;
  }
  .mod-a--large h2 {
    font-size: 42px;
  }
}

.mod-b {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
  background-color: #c9c9c9;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
.mod-b:not(:first-child) {
  padding-top: 50px;
}
@media screen and (min-width: 768px) {
  .mod-b:not(:first-child) {
    padding-top: 80px;
  }
}
.mod-b h3 {
  padding: 20px 30px;
  position: relative;
  font-size: clamp(18px, 3.4rem, 22px);
  font-weight: bold;
  color: rgb(231, 68, 95);
}
.mod-b h3::before {
  width: 5rem;
  height: 8px;
  top: 0;
  left: 0;
  position: absolute;
  content: "";
}
@media screen and (min-width: 768px) {
  .mod-b h3 {
    font-size: clamp(26px, 2.5rem, 30px);
  }
}

.mod-c {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
  border-left: 8px solid #b8b8b8;
  padding: 10px 25px;
  position: relative;
  font-weight: bold;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
.mod-c:not(:first-child) {
  padding-top: 40px;
}
@media screen and (min-width: 768px) {
  .mod-c:not(:first-child) {
    padding-top: 50px;
  }
}
.mod-c::before, .mod-c::after {
  width: 8px;
  height: 8px;
  position: absolute;
  content: "";
}
.mod-c::before {
  top: 0;
  left: -8px;
  height: 50%;
  background-color: #b8b8b8;
}
.mod-c::after {
  top: -8px;
  left: 0;
  background-color: #2a2a2a;
}
.mod-c h4 {
  color: rgb(231, 68, 95);
  font-size: clamp(18px, 2.2rem, 20px);
}
@media screen and (min-width: 768px) {
  .mod-c h4 {
    font-size: clamp(20px, 2.2rem, 24px);
  }
}

.mod-text {
  text-align: justify;
  word-break: break-all;
  font-size: 14px;
}
.mod-text:not(:first-child) {
  padding-top: 20px;
}
@media screen and (min-width: 768px) {
  .mod-text {
    font-size: 16px;
  }
  .mod-text:not(:first-child) {
    padding-top: 30px;
  }
}

.mod-d {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
}
.mod-d--padding .mod-text {
  padding: 20px;
}
.mod-d:not(:first-child) {
  padding-top: 30px;
}
@media screen and (min-width: 768px) {
  .mod-d:not(:first-child) {
    padding-top: 40px;
  }
}
@media screen and (min-width: 768px) {
  .mod-d--middle .mod-text {
    font-size: 18px;
  }
  .mod-d--large .mod-text {
    font-size: 20px;
  }
}

.mod-list-cir:not(:first-child), .mod-list-num:not(:first-child) {
  margin-top: 30px;
}
.mod-list-num {
  counter-reset: li;
}
.mod-list-cir-item:not(:first-child), .mod-list-num-item:not(:first-child) {
  margin-top: 20px;
}
@media screen and (min-width: 768px) {
  .mod-list-cir-item:not(:first-child), .mod-list-num-item:not(:first-child) {
    margin-top: 30px;
  }
}
.mod-list-cir-item {
  position: relative;
  padding-left: 2.2rem;
}
@media screen and (min-width: 768px) {
  .mod-list-cir-item {
    padding-left: 18px;
  }
}
.mod-list-cir-item::before {
  width: 6px;
  height: 6px;
  position: absolute;
  background-color: #444444;
  content: "";
  top: 7px;
  left: 0;
}
@media screen and (min-width: 768px) {
  .mod-list-cir-item::before {
    max-width: auto;
    left: 4px;
  }
}
.mod-list-num-item {
  position: relative;
  text-indent: -22px;
  padding-left: 22px;
}
@media screen and (min-width: 768px) {
  .mod-list-num-item {
    text-indent: -18px;
    padding-left: 18px;
  }
}
.mod-list-num-item::before {
  padding-right: 6px;
  content: counter(li) ".";
  counter-increment: li;
  color: #444444;
  font-weight: bold;
}

.mod-e {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
}
.mod-e:not(:first-child) {
  padding-top: 30px;
}
@media screen and (min-width: 768px) {
  .mod-e:not(:first-child) {
    padding-top: 30px;
  }
}
.mod-e .mod-link[target=_blank]:after {
  content: "";
  background-image: url(../img/common/external-black.svg);
  background-size: cover;
  background-position: center;
  width: 16px;
  height: 16px;
  display: inline-block;
  vertical-align: middle;
  margin-left: 5px;
}

.mod-06 {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
}
.mod-06:not(:first-child) {
  padding-top: 30px;
}
@media screen and (min-width: 768px) {
  .mod-06:not(:first-child) {
    padding-top: 30px;
  }
}

.mod-f {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
  display: flex;
  gap: 40px;
}
.mod-f:not(:first-child) {
  padding-top: 30px;
}
@media screen and (min-width: 768px) {
  .mod-f:not(:first-child) {
    padding-top: 30px;
  }
}
@media screen and (min-width: 768px) {
  .mod-f {
    gap: 56px;
  }
  .mod-f::after {
    display: block;
    clear: both;
    content: "";
  }
  .mod-f.mod-f--ratio1 .mod-f-text {
    width: calc(50% - 28px);
  }
  .mod-f.mod-f--ratio1 .mod-f-img {
    width: calc(50% - 28px);
  }
  .mod-f.mod-f--ratio2 .mod-f-text {
    width: calc(67% - 28px);
  }
  .mod-f.mod-f--ratio2 .mod-f-img {
    width: calc(33% - 28px);
  }
  .mod-f.mod-f--ratio3 .mod-f-text {
    width: calc(75% - 28px);
  }
  .mod-f.mod-f--ratio3 .mod-f-img {
    width: calc(25% - 28px);
  }
}
.mod-f--right {
  flex-direction: column-reverse;
}
@media screen and (min-width: 768px) {
  .mod-f--right {
    flex-direction: row-reverse;
  }
}
.mod-f--left {
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .mod-f--left {
    flex-direction: row;
  }
}
.mod-f-img {
  position: relative;
  flex-shrink: 0;
}
.mod-f-img img.full {
  max-width: 100%;
  margin: 0 auto;
  display: block;
  -o-object-fit: unset;
     object-fit: unset;
  width: auto;
  height: auto;
}
.mod-f-img.trim {
  aspect-ratio: 4/3;
}
@media screen and (max-width: 767px) {
  .mod-f-img.trim {
    aspect-ratio: 4/3;
  }
}
@media screen and (min-width: 768px) {
  .mod-f-img.trim {
    height: 400px;
  }
}
.mod-f-img.trim a {
  height: 100%;
}
.mod-f-img.trim img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.mod-f-img .mod-img {
  height: 35rem;
}
@media screen and (min-width: 768px) {
  .mod-f-img .mod-img {
    height: 40rem;
  }
}
.mod-f-text {
  padding-top: 30px;
  flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .mod-f-text {
    padding-top: 0;
  }
  .mod-f-text.left, .mod-f-text.right {
    width: calc(100% - 50% - 50px);
  }
  .mod-f-text.left {
    float: left;
  }
  .mod-f-text.right {
    float: right;
  }
  .mod-f-text.mod-a:not(:first-child), .mod-f-text.mod-b:not(:first-child), .mod-f-text.mod-c:not(:first-child), .mod-f-text.mod-text:not(:first-child), .mod-f-text.mod-o:not(:first-child), .mod-f-text.mod-18:not(:first-child) {
    padding-top: 30px;
  }
  .mod-f-text.mod-h-block {
    margin: 0 auto 0 0;
  }
}
.mod-f-text.mod-h-03:first-child, .mod-f-text.mod-text:first-child {
  padding-top: 30px;
}
.mod-f .mod-c {
  max-width: 100%;
  width: 100%;
}
.mod-f .mod-09,
.mod-f .mod-o {
  margin: 30px auto;
  width: 100%;
  max-width: 100%;
}
@media screen and (min-width: 768px) {
  .mod-f .mod-09,
  .mod-f .mod-o {
    margin: 40px 0 0;
  }
}
.mod-f .mod-o td:first-child {
  background: #EDE5D4;
  border-bottom: 1px solid #fff;
  font-weight: 600;
  text-align: center;
  vertical-align: middle;
}
.mod-f .mod-h {
  width: -moz-fit-content;
  width: fit-content;
  margin-left: 0;
}

.mod-link {
  color: rgb(69, 110, 78);
}
a.mod-link {
  display: inline;
}

.mod-link:visited {
  color: rgb(69, 110, 78);
}

.mod-g {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
}
.mod-g-img {
  width: -moz-fit-content;
  width: fit-content;
}
.mod-g-img.trim a {
  height: 100%;
}
.mod-g-img.trim .mod-img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.mod-g-img.full img {
  max-width: 100%;
  -o-object-fit: unset;
     object-fit: unset;
  width: auto;
}

.mod-h {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
  margin: 30px auto;
}
@media screen and (min-width: 768px) {
  .mod-h {
    margin: 40px auto;
  }
}
.mod-h-block {
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 20px 60px 20px 30px;
  position: relative;
  background-color: #5c5252;
  color: #fff;
  font-weight: bold;
  transition: opacity 0.3s;
  will-change: opacity;
}
.mod-h-block:hover {
  transition: 0.3s;
  opacity: 0.7;
}
.mod-h-block[target=_blank]:after {
  content: "";
  background-image: url(../img/common/external.svg);
  background-size: cover;
  background-position: center;
  width: 16px;
  height: 16px;
  display: inline-block;
  vertical-align: middle;
  margin-left: 5px;
}
.mod-h .--small {
  width: 50%;
}
@media screen and (min-width: 768px) {
  .mod-h .--small {
    width: 300px;
    margin: 0 auto;
  }
}
.mod-h .--middle {
  width: 75%;
}
@media screen and (min-width: 768px) {
  .mod-h .--middle {
    width: 50%;
    margin: 0 auto;
  }
}
.mod-h .--full {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .mod-h .--full {
    margin: 0 auto;
  }
}
.mod-h-wrapper::after {
  top: 50%;
  right: 30px;
  position: absolute;
  content: "";
  transform: translateY(-50%);
}

a.mod-09-block:not([href^=http]) .mod-h-wrapper::after,
a.mod-h-block:not([href^=http]) .mod-09-wrapper::after,
a.mod-09-block:not([href^=http]) .mod-09-wrapper::after {
  content: "";
  background: url("../assets/img/shared/icon-link-01.svg");
  background-size: 18px 22px;
  background-repeat: no-repeat;
  width: 18px;
  height: 22px;
  background-position: right 0 center;
}

a.mod-h-block[href^=http] .mod-h-wrapper::after,
a.mod-09-block[href^=http] .mod-h-wrapper::after,
a.mod-h-block[href^=http] .mod-09-wrapper::after,
a.mod-09-block[href^=http] .mod-09-wrapper::after {
  content: "";
  background: url(../img/common/external.svg);
  width: 20px;
  height: 20px;
  background-position: right 0 center;
}

.mod-i {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
  padding: 30px 20px;
}
.mod-i:not(:first-child) {
  padding-top: 50px;
}
@media screen and (min-width: 768px) {
  .mod-i {
    padding: 30px;
  }
  .mod-i:not(:first-child) {
    padding-top: 80px;
  }
}
.mod-i-block {
  position: relative;
  display: block;
}
.mod-i-block:not(:first-child) {
  padding-top: 30px;
}
.mod-i-block:nth-of-type(odd) .mod-i-text::after {
  right: 0;
}
.mod-i-block:nth-of-type(even) .mod-i-text::after {
  left: 0;
}
@media screen and (min-width: 768px) {
  .mod-i-block {
    display: flex;
  }
  .mod-i-block:not(:first-child) {
    padding-top: 30px;
  }
  .mod-i-block.left .mod-i-img {
    order: 1;
  }
  .mod-i-block.left .mod-i-text {
    order: 2;
  }
  .mod-i-block.left .mod-i-text .mod-h-02::before {
    top: 1rem;
    left: -80px;
  }
  .mod-i-block.right .mod-i-img {
    order: 2;
  }
  .mod-i-block.right .mod-i-text {
    order: 1;
  }
  .mod-i-block.right .mod-i-text .mod-h-02::before {
    top: 1rem;
    right: -80px;
  }
}
.mod-i-img {
  overflow: hidden;
  z-index: 1;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .mod-i-img {
    width: 50%;
    position: relative;
  }
}
.mod-i-img .mod-img {
  height: 35rem;
}
@media screen and (min-width: 768px) {
  .mod-i-img .mod-img {
    height: 45rem;
  }
}
.mod-i-text {
  background-color: #fff;
  color: #000;
  position: relative;
  z-index: 2;
  padding: 40px 30px;
}
@media screen and (min-width: 768px) {
  .mod-i-text {
    box-sizing: border-box;
    width: 50%;
    padding: 60px 50px;
  }
}
.mod-i-text .mod-h-02 {
  position: relative;
}
.mod-i-text .mod-h-02::before {
  position: absolute;
  background-color: #fff;
  content: "";
  z-index: 3;
}
.mod-i-text .mod-h-02::before {
  width: 8px;
  height: 100%;
  top: 0;
  left: -30px;
}
@media screen and (min-width: 768px) {
  .mod-i-text .mod-h-02::before {
    width: 60px;
    height: 8px;
  }
}

.mod-j {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
  display: grid;
  grid-gap: 25px;
}
.mod-j:not(:first-child) {
  padding-top: 50px;
}
@media screen and (max-width: 767px) {
  .mod-j {
    grid-template-columns: 1fr !important;
  }
}
@media screen and (min-width: 768px) {
  .mod-j:not(:first-child) {
    padding-top: 60px;
  }
}
.mod-j-block {
  display: block;
  position: relative;
  overflow: hidden;
  background-color: #fff;
  transition: background-color 0.5s;
  height: -moz-fit-content;
  height: fit-content;
  height: 100%;
}
.mod-j-block.mod-text-box::after {
  top: auto;
  bottom: 0;
}
.mod-j-img {
  position: relative;
}
.mod-j-img .mod-img {
  height: 35rem;
}
@media screen and (min-width: 768px) {
  .mod-j-img .mod-img {
    height: 25rem;
  }
}
.mod-j-text {
  position: relative;
  height: -moz-fit-content;
  height: fit-content;
  z-index: 2;
  color: #000;
  padding: 30px 0;
}

.mod-text-box .mod-j-text {
  box-sizing: border-box;
  padding: 20px 20px 78px;
  position: relative;
  z-index: 9;
  border: 8px solid #3b4b40;
}
.mod-text-box .mod-j-text::after {
  top: auto;
  bottom: -8px;
  right: -8px;
  z-index: 10;
}

.mod-link {
  color: rgb(69, 110, 78);
}
.mod-link:visited {
  color: #000;
}

.mod-k {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
}
@media screen and (min-width: 768px) {
  .mod-k--3col .mod-k__block {
    max-width: 30%;
  }
  .mod-k--2col .mod-k__block {
    max-width: 45%;
  }
  .mod-k--1col .mod-k__block {
    max-width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .mod-k__inner {
    display: grid;
    flex-wrap: wrap;
    grid-gap: 40px;
    padding-left: 0;
    padding-right: 0;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto;
  }
}
@media screen and (min-width: 768px) {
  .mod-k.mod-k--1col {
    grid-template-columns: repeat(1, fit-content(100%));
  }
  .mod-k.mod-k--2col .mod-k__inner {
    grid-template-columns: repeat(2, fit-content(100%));
  }
  .mod-k.mod-k--3col .mod-k__inner {
    grid-template-columns: repeat(3, fit-content(100%));
  }
  .mod-k.mod-k--4col .mod-k__inner {
    grid-template-columns: repeat(4, fit-content(100%));
  }
  .mod-k.mod-k--5col .mod-k__inner {
    grid-template-columns: repeat(5, fit-content(100%));
  }
}
.mod-k-block {
  display: block;
  position: relative;
  overflow: hidden;
  transition: background-color 1s;
  will-change: background-color;
  width: -moz-fit-content;
  width: fit-content;
}
.mod-k-block h4 {
  width: 100%;
  word-break: break-all;
}
.mod-k-block:after {
  position: absolute;
  right: 20px;
  top: 0;
  bottom: 0;
  margin: auto;
}
.mod-k-block.solid {
  background-color: #c9c9c9;
  color: #000;
}
.mod-k-block.line {
  background-color: #c9c9c9;
  border-top: 3px solid #b8b8b8;
  color: #000;
}
.mod-k-text {
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
  z-index: 2;
  padding: 20px 50px 20px 20px;
}
@media screen and (min-width: 768px) {
  .mod-k-text {
    padding: 20px 50px 20px 20px;
  }
}
.mod-k.is-anchor .mod-k-block:after {
  content: "";
  border: 1px solid #000;
  border-left: 0;
  border-bottom: 0;
  box-sizing: border-box;
  transform: translateY(-25%) rotate(135deg);
  width: 10px;
  height: 10px;
  display: inline-block;
  vertical-align: middle;
  margin-left: 5px;
  position: absolute;
  right: 20px;
  top: 0;
  bottom: 0;
  margin: auto;
  background-image: none;
}
.mod-k.is-anchor .mod-k-block.solid {
  background-color: #c9c9c9;
  color: #000;
}
.mod-k.is-anchor .mod-k-block.line {
  background-color: #c9c9c9;
  border-top: 3px solid #b8b8b8;
  color: #000;
}

.mod-k {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
}
.mod-k--bg {
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  .mod-k--3col {
    grid-template-columns: 1fr 1fr 1fr;
  }
  .mod-k--2col {
    grid-template-columns: 1fr 1fr;
  }
  .mod-k--1col {
    grid-template-columns: 1fr;
  }
}
@media screen and (min-width: 768px) {
  .mod-k {
    display: grid;
    grid-gap: 25px;
    padding-left: 0;
    padding-right: 0;
  }
}
.mod-k-block {
  display: block;
  position: relative;
  overflow: hidden;
  transition: background-color 1s;
  will-change: background-color;
}
.mod-k-block h4 {
  width: 100%;
  word-break: break-all;
}
.mod-k-block[target=_blank]:after {
  content: "";
  background-image: url(../img/common/external.svg);
  background-size: cover;
  background-position: center;
  width: 16px;
  height: 16px;
  display: inline-block;
  vertical-align: middle;
  margin-left: 5px;
  position: absolute;
  right: 20px;
  top: 0;
  bottom: 0;
  margin: auto;
}
.mod-k-block.solid {
  background-color: #c9c9c9;
  color: #000;
}
.mod-k-block.line {
  background-color: #c9c9c9;
  border-top: 3px solid #b8b8b8;
  color: #000;
}
.mod-k-block :hover {
  transition-duration: 0.3s;
  opacity: 0.7;
}
.mod-k-text {
  position: relative;
  z-index: 2;
  padding: 20px 50px 20px 20px;
}
@media screen and (min-width: 768px) {
  .mod-k-text {
    padding: 20px 50px 20px 20px;
  }
}
.mod-k.is-anchor .mod-k-block {
  background-color: #c9c9c9;
}
.mod-k.is-anchor .mod-k-block:after {
  content: "";
  border: 1px solid #000;
  border-left: 0;
  border-bottom: 0;
  box-sizing: border-box;
  transform: translateY(-25%) rotate(135deg);
  width: 10px;
  height: 10px;
  display: inline-block;
  vertical-align: middle;
  margin-left: 5px;
  position: absolute;
  right: 20px;
  top: 0;
  bottom: 0;
  margin: auto;
  background-image: none;
}

.mod-k-plus {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 15px;
}
@media screen and (min-width: 768px) {
  .mod-k-plus.mod-k--2col {
    grid-template-columns: 1fr 1fr;
  }
  .mod-k-plus.mod-k--3col {
    grid-template-columns: 1fr 1fr 1fr;
  }
  .mod-k-plus.mod-k--4col {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
  .mod-k-plus.mod-k--5col {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  }
}

/*
** mod-img
*/
.mod-img {
  width: 100%;
  transition: transform 1s cubic-bezier(0.075, 0.82, 0.165, 1);
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  opacity: 1;
}
.mod-l {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
}
.mod-l:not(:first-child) {
  padding-top: 50px;
}
@media screen and (min-width: 768px) {
  .mod-l {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  .mod-l:not(:first-child) {
    padding-top: 60px;
  }
}
@media screen and (min-width: 768px) {
  .mod-l--two {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 25px;
  }
}
@media screen and (min-width: 768px) {
  .mod-l--three {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 25px;
  }
}
.mod-l-block {
  display: block;
  position: relative;
  overflow: hidden;
  transition-duration: 0.3s;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .mod-l-block:not(:first-child) {
    padding-top: 30px;
  }
}
.mod-l a.mod-l-block:hover {
  opacity: 0.7;
  transition-duration: 0.3s;
}

.mod-col-img {
  position: relative;
  width: 100%;
}
.mod-col-img.full img {
  width: 100%;
  margin: 0 auto;
  display: block;
  height: auto;
}
.mod-col-img.trim {
  aspect-ratio: 4/3;
}
@media screen and (max-width: 767px) {
  .mod-col-img.trim {
    aspect-ratio: 4/3;
  }
}
@media screen and (min-width: 768px) {
  .mod-col-img.trim {
    height: 400px;
  }
}
.mod-col-img.trim a {
  height: 100%;
}
.mod-col-img.trim img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.mod-col-title.mod-c {
  margin-top: 17px;
  margin-left: 0;
  margin-bottom: 10px;
  padding: 10px 25px;
}

.mod-col-text {
  position: relative;
  z-index: 1;
  color: #000;
  transition: background-color 1s cubic-bezier(0.075, 0.82, 0.165, 1);
  will-change: background-color;
  padding-top: 15px;
}
@media screen and (min-width: 768px) {
  .mod-col-text {
    padding-top: 15px;
  }
}
.mod-col-text .mod-h-03 {
  padding-top: 30px;
}

.mod-o {
  overflow-x: auto;
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
}
.mod-o__wrapper {
  position: relative;
}
.mod-o table {
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
  min-width: 667px;
  background-color: #f1f1f1;
}
@media screen and (min-width: 768px) {
  .mod-o table {
    width: 100%;
  }
}
.mod-o table td {
  padding: 15px;
  border: 1px solid #ccc;
}
.mod-o__table-wrapper {
  width: 100%;
}
.mod-o.--top table tr:first-child td {
  background: #6d6d6d;
  font-weight: 600;
  text-align: center;
  vertical-align: middle;
}
.mod-o.--top.--large table tr:first-child td {
  height: 80px !important;
}
.mod-o.--top.--medium table tr:first-child td {
  height: 50px !important;
}
.mod-o.--top.--small table tr:first-child td {
  height: auto !important;
}
.mod-o.--left table tr td:first-child {
  background: #c9c9c9;
  border-bottom: 1px solid #fff;
  font-weight: 600;
  text-align: center;
  vertical-align: middle;
}
.mod-o.--left.--large table tr td:first-child {
  width: 300px !important;
}
.mod-o.--left.--medium table tr td:first-child {
  width: 200px !important;
}
.mod-o.--left.--small table tr td:first-child {
  width: 150px !important;
}
.mod-o.--lefttop table tr:first-child td:not(td:first-child) {
  background: #6d6d6d;
  font-weight: 600;
  text-align: center;
  vertical-align: middle;
}
.mod-o.--lefttop.--large tr:first-child td:not(td:first-child) {
  height: 80px !important;
}
.mod-o.--lefttop.--large tr td:first-child {
  width: 300px !important;
}
.mod-o.--lefttop.--medium tr:first-child td:not(td:first-child) {
  height: 50px !important;
}
.mod-o.--lefttop.--medium tr td:first-child {
  width: 200px !important;
}
.mod-o.--lefttop.--small tr:first-child td:not(td:first-child) {
  height: auto !important;
}
.mod-o.--lefttop.--small tr td:first-child {
  width: 150px !important;
}
.mod-o.--lefttop tr td:first-child {
  background: #c9c9c9;
  border-bottom: 1px solid #fff;
  font-weight: 600;
  text-align: center;
  vertical-align: middle;
}
@media screen and (min-width: 768px) {
  main > .wrapper > .mod-o {
    box-sizing: border-box;
  }
}

.mod-p {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
  height: 0px;
  background: #666;
  border: none;
}
.mod-p:not(:first-child) {
  padding-top: 40px;
}
@media screen and (min-width: 768px) {
  .mod-p:not(:first-child) {
    padding-top: 60px;
  }
}

.mod-q {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
}
.mod-q:not(:first-child) {
  padding-top: 30px;
}
@media screen and (min-width: 768px) {
  .mod-q:not(:first-child) {
    padding-top: 60px;
  }
}

.mod-q-block {
  position: relative;
}
.mod-q-block:not(:first-child) {
  padding-top: 50px;
}

.mod-q-title {
  padding: 20px 20px 20px 60px;
  position: relative;
  overflow: hidden;
  z-index: 2;
  background-color: #333e8d;
  border-top: 2px solid #2a2a2a;
  color: rgb(231, 68, 95);
  cursor: pointer;
}
.mod-q-title:hover {
  transition-duration: 0.3s;
  opacity: 0.7;
}
.mod-q-title::before, .mod-q-title::after {
  position: absolute;
  z-index: 2;
  background-color: rgb(231, 68, 95);
  content: "";
  will-change: transform;
}
.mod-q-title::after {
  transform: translateY(50%);
  transition: transform 0.3s;
  width: 2px;
  height: 18px;
  bottom: 50%;
  left: 28px;
}
.mod-q-title::before {
  width: 18px;
  height: 2px;
  bottom: calc(50% - 1px);
  left: 20px;
}
.mod-q-block.is-open .mod-q-title::after {
  transform: translateY(50%) rotate(0) rotate(90deg);
  transition: transform 0.3s;
}
.mod-q-block.is-open .mod-q-title::before {
  opacity: 0;
  transform: translateY(50%) rotate(0) rotate(90deg);
  transition: transform 0.3s, opacity 0.3s;
}

.mod-q-content {
  position: relative;
  display: none;
  border-bottom: 2px solid #2a2a2a;
  background-color: #fff;
}
.mod-q-content::after {
  width: 100%;
  height: 1px;
  top: 0;
  left: 0;
  position: absolute;
  content: "";
  opacity: 0;
  transition: opacity 1s cubic-bezier(0.075, 0.82, 0.165, 1);
}
.mod-q-content__inner.--right {
  display: flex;
  justify-content: space-between;
  padding-right: 15px;
}
@media screen and (max-width: 767px) {
  .mod-q-content__inner.--right {
    flex-direction: column;
  }
}
.mod-q-content__inner.--right img {
  margin: 30px 0 auto;
}
@media screen and (max-width: 767px) {
  .mod-q-content__inner.--right img {
    margin: 30px auto auto;
    width: 100% !important;
  }
}
.mod-q-content .mod-text {
  padding: 20px;
  opacity: 0;
  transition: opacity 1s cubic-bezier(0.075, 0.82, 0.165, 1);
  will-change: opacity;
}
.mod-q-content .mod-text:hover {
  transition-duration: 0.3s;
  opacity: 0.7;
}
.mod-q-content img {
  width: auto;
  max-width: 90%;
  margin: 0 auto;
  display: block;
  padding-bottom: 50px;
}
.mod-q-block.is-open .mod-q-content::after {
  opacity: 1;
}
.mod-q-block.is-open .mod-q-content .mod-text {
  opacity: 1;
}

.mod-r {
  background-color: #fff;
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
  padding: 20px;
}
.mod-r:not(:first-child) {
  padding-top: 40px;
}
@media screen and (min-width: 768px) {
  .mod-r {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 30px;
    padding: 30px;
  }
  .mod-r:not(:first-child) {
    padding-top: 60px;
  }
  .mod-r--3 {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.mod-r-block {
  padding: 20px;
  overflow: hidden;
  border-left: 3px solid;
  padding-bottom: 25px;
}
@media screen and (min-width: 768px) {
  .mod-r-block {
    box-sizing: border-box;
  }
}
.mod-r--a .mod-r-block {
  border-color: #2a2a2a;
  background-color: #fff;
}
.mod-r--b .mod-r-block {
  border-color: #678cc4;
  background-color: #000071;
  color: #fff;
}

.mod-youtube {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
  max-width: 1000px;
  display: flex;
  justify-content: center;
}
.mod-youtube:not(:first-child) {
  padding-top: 60px;
}
@media screen and (max-width: 767px) {
  .mod-youtube {
    flex-direction: column;
  }
}
.mod-youtube--multi .mod-youtube__videoview__wrapper {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .mod-youtube--multi .mod-youtube__videoview__wrapper {
    width: 75%;
  }
}
.mod-youtube__videoview__wrapper {
  position: relative;
  position: relative;
  width: 100%;
  height: -moz-fit-content;
  height: fit-content;
  aspect-ratio: 16/9;
}
.mod-youtube__videoview__wrapper:hover {
  cursor: pointer;
}
.mod-youtube__videoview__wrapper img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 16/9;
}
.mod-youtube__videoview {
  position: relative;
}
.mod-youtube__videoview:after {
  content: "";
  background-image: url(../img/mod-3rd/youtube-icon.svg);
  background-position: center;
  background-size: 100px 100px;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  background-repeat: no-repeat;
  transition-duration: 0.3s;
}
.mod-youtube__videoview:after:hover {
  opacity: 0.7;
  transition-duration: 0.3s;
}
.mod-youtube__videoview.--play:after {
  display: none;
}
.mod-youtube__list {
  display: flex;
  flex-direction: column;
  width: 25%;
}
@media screen and (max-width: 767px) {
  .mod-youtube__list {
    width: 100%;
  }
  .mod-youtube__list .mod-youtube__link {
    font-size: 1.2rem;
  }
}
.mod-youtube__list__item {
  transition-duration: 0.3s;
  position: relative;
}
@media screen and (min-width: 768px) {
  .mod-youtube__list__item {
    height: 33.333333%;
  }
}
@media screen and (max-width: 767px) {
  .mod-youtube__list__item {
    width: 33.333333%;
  }
}
.mod-youtube__list__item:hover {
  opacity: 0.7;
  transition-duration: 0.3s;
  cursor: pointer;
}
@media all and (max-width: 1080px) {
  .mod-youtube__list__item {
    aspect-ratio: 16/9;
    width: 100%;
    height: auto;
  }
}
@media screen and (max-width: 767px) {
  .mod-youtube__list__item {
    width: 100%;
    aspect-ratio: auto;
  }
}
@media screen and (max-width: 767px) {
  .mod-youtube__list--thumb {
    flex-direction: row;
  }
  .mod-youtube__list--thumb .mod-youtube__link {
    width: 33.333333%;
    height: auto;
  }
  .mod-youtube__list--thumb .mod-youtube__link a p {
    font-size: 1.2rem;
  }
}
.mod-youtube__list--thumb .mod-youtube__list__item {
  background-color: #666;
}
@media screen and (max-width: 767px) {
  .mod-youtube__list--thumb .mod-youtube__list__item {
    width: 33.333333%;
  }
}
.mod-youtube__list--thumb .mod-youtube__list__item img {
  opacity: 0.5;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.mod-youtube__list--thumb .mod-youtube__list__item:after {
  content: "";
  background-image: url(../img/mod-3rd/youtube-icon.svg);
  background-position: center;
  background-size: 50px 50px;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  background-repeat: no-repeat;
}
.mod-youtube__list--text .mod-youtube__list__item {
  background-color: #fff;
  padding: 15px 30px;
  border-bottom: 1px solid #666;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.mod-youtube__list--text .mod-youtube__list__item h5 {
  font-size: 1.4rem;
}
.mod-youtube__list--text .mod-youtube__list__item h6 {
  font-size: 1.2rem;
}
.mod-youtube__list--text .mod-youtube__list__item:after {
  content: url(../img/mod-3rd/youtube-arrow.png);
  position: absolute;
  right: 7px;
  top: 0;
  bottom: 0;
  margin: auto;
  height: 25px;
}
@media all and (max-width: 1080px) {
  .mod-youtube__list--text .mod-youtube__list__item h5 {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  .mod-youtube__list--text .mod-youtube__list__item h6 {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
}
@media screen and (max-width: 767px) {
  .mod-youtube__list--text .mod-youtube__list__item {
    text-align: center;
    height: 75px;
  }
}
.mod-youtube__list--text .mod-youtube__link {
  background: #0189c3;
}
.mod-youtube__link {
  background-color: rgba(50, 50, 50, 0.6);
  display: flex;
  align-items: center;
  justify-content: center;
  transition-duration: 0.3s;
  height: 33.333333%;
}
.mod-youtube__link:hover {
  opacity: 0.7;
  transition-duration: 0.3s;
  cursor: pointer;
}
.mod-youtube__link a[target=_blank]:after {
  content: "";
  background: url(../img/common/external.svg);
  width: 20px;
  height: 20px;
  background-position: right 0 center;
  background-size: cover;
}
.mod-youtube__link a {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.mod-youtube__link p {
  font-size: 14px;
}
@media all and (max-width: 1080px) {
  .mod-youtube__link {
    aspect-ratio: 16/9;
    width: 100%;
    height: auto;
  }
}
@media screen and (max-width: 767px) {
  .mod-youtube__link {
    width: 100%;
    height: 75px;
    aspect-ratio: auto;
    text-align: center;
  }
}
.mod-youtube iframe {
  width: 100%;
  aspect-ratio: 16/9;
}
.mod-youtube__videobox_item {
  background-color: #fff;
  padding: 20px;
}

.mod-youtube--2col {
  display: flex;
  aspect-ratio: auto;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 25px;
}
.mod-youtube--2col__block {
  width: 47%;
}
@media screen and (max-width: 767px) {
  .mod-youtube--2col__block {
    width: 100%;
    padding-bottom: 15px;
  }
}
.mod-youtube--2col__block h4 {
  font-size: 14px;
  line-height: 20px;
  margin-top: 8px;
}
.mod-youtube--2col__block h3 {
  font-size: 16px;
  line-height: 22px;
  margin-top: 8px;
}

.mod-news__contents {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
}
.mod-news__tab {
  display: flex;
  grid-gap: 10px;
}
.mod-news__tab span {
  background-color: #fff;
  color: #2fac6f;
  font-size: 1.125em;
  padding: 15px 0;
  display: block;
  width: 25%;
  border-radius: 10px 10px 0px 0px;
  text-align: center;
  transition-duration: 0.3s;
}
@media screen and (max-width: 767px) {
  .mod-news__tab span {
    font-size: 14px;
    padding: 12px 0;
  }
}
.mod-news__tab span.-active {
  background-color: #2fac6f;
  color: #fff;
}
.mod-news__tab span:hover {
  cursor: pointer;
  transition-duration: 0.3s;
  color: #fff;
  background-color: #2fac6f;
}
.mod-news__list ul {
  display: none;
  padding-top: 10px;
  background-color: #fff;
  padding: 0 40px;
}
@media screen and (max-width: 767px) {
  .mod-news__list ul {
    padding: 0 15px;
  }
}
.mod-news__list ul.-active {
  display: block;
}
.mod-news__list li a {
  display: flex;
  align-items: flex-start;
  align-items: center;
  padding: 21px;
  border-bottom: 2px solid #d1f0d3;
  transition-duration: 0.3s;
}
.mod-news__list li a:hover {
  opacity: 0.7;
  transition-duration: 0.3s;
}
@media screen and (max-width: 767px) {
  .mod-news__list li a {
    padding: 15px 0 0;
    flex-wrap: wrap;
    font-size: 1.4rem;
  }
}
.mod-news__list li a span.date {
  padding: 10px 0;
  color: #000;
}
@media screen and (max-width: 767px) {
  .mod-news__list li a span.date {
    padding: 3px;
  }
}
.mod-news__list li a span.cat {
  background-color: #af9c33;
  margin: 0 45px;
  padding: 1px;
  color: #fff;
  border-radius: 8px;
  display: inline-block;
  width: 140px;
  flex-shrink: 0;
  letter-spacing: 0px;
  text-align: center;
}
.mod-news__list li a span.cat.--cat1 {
  background-color: #4884EA;
}
.mod-news__list li a span.cat.--cat2 {
  background-color: #D5BE45;
}
.mod-news__list li a span.cat.--cat3 {
  background-color: #FC7382;
}
.mod-news__list li a span.cat.--cat4 {
  background-color: #fc73da;
}
@media screen and (max-width: 767px) {
  .mod-news__list li a span.cat {
    margin: 0 15px;
    padding: 5px 10px;
    text-align: center;
    -moz-text-align-last: center;
         text-align-last: center;
    width: -moz-fit-content;
    width: fit-content;
    font-size: 12px;
  }
}
.mod-news__list li a span.title {
  color: #000;
  padding: 10px 0;
  overflow: hidden;
  height: 3rem;
  line-height: 3rem;
  white-space: nowrap;
  text-overflow: ellipsis;
}
@media screen and (max-width: 767px) {
  .mod-news__list li a span.title {
    width: 100%;
  }
}

.mod-t {
  width: 90%;
  max-width: 900px;
  margin: 0 auto;
  overflow: hidden;
}
.mod-t__view {
  aspect-ratio: 9/4;
}
.mod-t__view img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.mod-t__thumbnail-list {
  display: flex;
  position: relative;
}
.mod-t__thumbnail-list img {
  width: 100%;
  aspect-ratio: 9/4;
  -o-object-fit: cover;
     object-fit: cover;
}
.mod-t__thumbnail-list .swiper-wrapper div:not(.swiper-slide-thumb-active) {
  filter: brightness(0.7);
}
.mod-t__thumbnail-list .swiper-button-next, .mod-t__thumbnail-list .swiper-button-prev {
  color: #ffffff;
}

.mod-pdf {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
}
.mod-pdf iframe {
  max-height: 800px;
  aspect-ratio: 1/1.4;
}
.mod-pdf__inner {
  margin-top: 25px;
}
.mod-pdf__text {
  display: flex;
  gap: 15px;
  align-items: center;
  margin-top: 20px;
  justify-content: end;
}
@media screen and (max-width: 767px) {
  .mod-pdf__text {
    flex-direction: column;
    align-items: end;
    margin-bottom: 50px;
  }
}
.mod-pdf__text a {
  background: #e5e5e5;
  color: #000;
  padding: 10px 25px;
  border-radius: 50px;
  transition-duration: 0.3s;
}
.mod-pdf__text a:hover {
  opacity: 0.7;
  transition-duration: 0.3s;
}

@keyframes scroll-hint-appear {
  0% {
    transform: translateX(40px);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  50%, 100% {
    transform: translateX(-40px);
    opacity: 0;
  }
}
.scroll-hint.is-right-scrollable {
  background: linear-gradient(270deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint.is-right-scrollable.is-left-scrollable {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0)), linear-gradient(270deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint.is-left-scrollable {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint-icon {
  position: absolute;
  top: calc(50% - 25px);
  left: calc(50% - 60px);
  box-sizing: border-box;
  width: 120px;
  height: 80px;
  border-radius: 5px;
  transition: opacity 0.3s;
  opacity: 0;
  background: rgba(0, 0, 0, 0.7);
  text-align: center;
  padding: 20px 10px 10px 10px;
}

.scroll-hint-icon-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-height: 100%;
  pointer-events: none;
}

.scroll-hint-text {
  font-size: 10px;
  color: #FFF;
  margin-top: 5px;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon {
  opacity: 0.8;
}

.scroll-hint-icon:before {
  display: inline-block;
  width: 40px;
  height: 40px;
  color: #FFF;
  vertical-align: middle;
  text-align: center;
  content: "";
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDM8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIiBmaWxsPSIjZmZmIi8+PC9nPjwvZz48L3N2Zz4=);
}

.scroll-hint-icon:after {
  content: "";
  width: 34px;
  height: 14px;
  display: block;
  position: absolute;
  top: 10px;
  left: 50%;
  margin-left: -20px;
  background-repeat: no-repeat;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDE8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIgZmlsbD0iI2ZmZiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiIGZpbGw9IiNmZmYiLz48L2c+PC9nPjwvc3ZnPg==);
  opacity: 0;
  transition-delay: 2.4s;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:after {
  opacity: 1;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:before {
  animation: scroll-hint-appear 1.2s linear;
  animation-iteration-count: 2;
}

.scroll-hint-icon-white {
  background-color: #FFF;
  box-shadow: 0 4px 5px rgba(0, 0, 0, 0.4);
}

.scroll-hint-icon-white:before {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDQ8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIi8+PC9nPjwvZz48L3N2Zz4=);
}

.scroll-hint-icon-white:after {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDI8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiLz48L2c+PC9nPjwvc3ZnPg==);
}

.scroll-hint-icon-white .scroll-hint-text {
  color: #000;
}/*# sourceMappingURL=mod-3rd.css.map */