/* Scss Document */
@keyframes amico {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-12px);
  }
  100% {
    transform: translateY(0);
  }
}
.keyvisual {
  width: 100%;
  position: relative;
  overflow: hidden;
}
.keyvisual-title {
  position: relative;
  overflow: hidden;
  line-height: 0;
  text-indent: 100%;
  white-space: nowrap;
  margin: auto;
  z-index: 3;
  text-align: center;
  background: linear-gradient(-180deg, rgb(251, 245, 221) 0%, rgb(252, 155, 0) 100%);
  width: 100%;
  height: 502px;
  clip-path: inset(0);
}
@media screen and (max-width: 1110px) {
  .keyvisual-title {
    height: 62vw;
  }
}
.keyvisual-title::before {
  position: fixed;
  display: block;
  content: "";
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
  background-image: url("../img/bg-lattice.svg");
  background-position: center top;
  background-size: 170px auto;
  opacity: 0.11;
}
@media screen and (max-width: 1110px) {
  .keyvisual-title::before {
    background-size: 30% auto;
  }
}
.keyvisual-title::after {
  position: absolute;
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-image: url("../img/img-mainvisual-pc.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: auto 100%;
}
@media screen and (max-width: 1110px) {
  .keyvisual-title::after {
    background-image: url("../img/img-mainvisual-sp.png");
  }
}
.keyvisual-image-wrap {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  margin: auto;
  max-width: 950px;
  height: 502px;
}
@media screen and (max-width: 1110px) {
  .keyvisual-image-wrap {
    height: 62vw;
  }
}
.keyvisual-image {
  position: absolute;
  left: 16.5%;
  margin: auto;
  bottom: -26px;
  width: 25%;
  animation: amico 6s linear infinite normal;
  z-index: 3;
}
@media screen and (max-width: 1110px) {
  .keyvisual-image {
    width: 30.5%;
    bottom: -5%;
    left: 10%;
  }
}

.link {
  padding: 100px 0;
  background: url("../img/bg-white.jpg");
  margin: 0 auto;
}
@media screen and (max-width: 1110px) {
  .link {
    padding: 12.5vw 0;
    margin: 0;
  }
}
.link.mt0 {
  margin: 0;
  background: none;
  padding: 0 0 60px;
}
@media screen and (max-width: 1110px) {
  .link.mt0 {
    padding: 0;
  }
}
.link-onecolumn {
  width: 950px;
  margin: 0 auto 50px;
}
@media screen and (max-width: 1110px) {
  .link-onecolumn {
    width: 100%;
    margin: 0 auto 5vw;
  }
}
.link-twocolumn {
  margin: 0 auto;
  width: 950px;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 1110px) {
  .link-twocolumn {
    margin: 0 5%;
    width: 90%;
  }
}
.link-amiami, .link-ejas {
  border-radius: 9999px;
  width: 950px;
  height: 150px;
  display: block;
  line-height: 110px;
  padding: 0 0 0 60px;
  background: #fff;
  position: relative;
  transition: 0.2s;
}
@media screen and (max-width: 1110px) {
  .link-amiami, .link-ejas {
    width: 90%;
    height: 13vw;
    line-height: 13vw;
    padding: 0 0 0 5vw;
    margin: 0 0 0 5%;
  }
}
.link-amiami:hover, .link-ejas:hover {
  transform: translateX(5px);
}
@media screen and (max-width: 1110px) {
  .link-amiami:hover, .link-ejas:hover {
    transform: translateX(1vw);
  }
}
@media screen and (max-width: 1110px) {
  .link-amiami img {
    width: 70vw;
    position: relative;
    top: -3vw;
  }
}
.link-ejas {
  margin: 0 0 60px;
}
@media screen and (max-width: 1110px) {
  .link-ejas {
    margin: 0 auto 10vw;
  }
}
.link-ejas img {
  position: relative;
  top: 6px;
}
@media screen and (max-width: 1110px) {
  .link-ejas img {
    width: 75vw;
    top: -1.75vw;
  }
}
.link-taobao, .link-weibo, .link-official {
  width: 100%;
  max-width: 460px;
  line-height: 84px;
  height: 84px;
  font-weight: 900;
  font-size: 1.5rem;
  border-radius: 84px;
  padding: 0 40px;
  background: #fff;
  position: relative;
  display: inline-block;
  color: #333;
  z-index: 1;
  transition: 0.2s;
}
@media screen and (max-width: 1110px) {
  .link-taobao, .link-weibo, .link-official {
    max-width: calc(50% - 2vw);
    line-height: 9vw;
    height: 9vw;
    font-size: clamp(0.8rem, 2.5vw, 1.5rem);
    border-radius: 8vw;
    padding: 0 4vw;
  }
}
.link-taobao:hover, .link-weibo:hover, .link-official:hover {
  transform: translateX(5px);
}
@media screen and (max-width: 1110px) {
  .link-taobao:hover, .link-weibo:hover, .link-official:hover {
    transform: translateX(1vw);
  }
}
.link-taobao {
  padding-left: 60px;
}
@media screen and (max-width: 1110px) {
  .link-taobao {
    padding-left: 5.5vw;
  }
}
.link-weibo:before {
  content: "";
  display: inline-block;
  position: relative;
  background: url(../img/btn-weibo.png) no-repeat;
  background-size: contain;
  width: 31px;
  height: 31px;
  margin: 0 0.75em 0 0;
  top: 0.25em;
}
@media screen and (max-width: 1110px) {
  .link-weibo:before {
    background: url(../img/btn-weibo.png) no-repeat 0 0;
    background-size: contain;
    width: 3.6vw;
    margin: 0 1.5vw 0 0;
    top: 0.8vw;
    height: 3.6vw;
  }
}
.link-official {
  padding-left: 60px;
}
@media screen and (max-width: 1110px) {
  .link-official {
    max-width: 60vw;
    line-height: 10vw;
    height: 10vw;
    padding-left: 7vw;
  }
}
.link-text {
  font-size: 1.75rem;
  text-align: center;
  font-weight: 700;
}
@media screen and (max-width: 1110px) {
  .link-text {
    font-size: 3.75vw;
  }
}

.arrow {
  position: absolute;
  right: 30px;
  top: calc(50% - 10px);
  width: 36px;
  height: 20px;
}
@media screen and (max-width: 1110px) {
  .arrow {
    right: 3vw;
    top: calc(50% - 1.5vw);
    width: 3vw;
    height: 3vw;
  }
}
.arrow:before {
  content: "";
  width: 36px;
  height: 1px;
  background: #a5a096;
  display: block;
  position: absolute;
  top: 50%;
}
@media screen and (max-width: 1110px) {
  .arrow:before {
    width: 3vw;
    height: 0.25vw;
  }
}
.arrow:after {
  content: "";
  width: 14px;
  height: 14px;
  display: block;
  border-right: solid 1px #a5a096;
  border-bottom: solid 1px #a5a096;
  transform: rotate(-45deg);
  right: 1px;
  position: absolute;
  top: calc(50% - 7px);
}
@media screen and (max-width: 1110px) {
  .arrow:after {
    width: 1.5vw;
    height: 1.5vw;
    top: calc(50% - 0.5vw);
    right: 0;
    border-right: solid 0.25vw #a5a096;
    border-bottom: solid 0.25vw #a5a096;
  }
}

.content .headline-sub {
  line-height: 1.4;
  margin: 0 0 25px;
  text-align: center;
  font-weight: 700;
  font-size: 1.9rem;
}
@media screen and (max-width: 1110px) {
  .content .headline-sub {
    margin: 0 0 4.5vw;
    font-size: 4.2vw;
  }
}
.content .benefit .container {
  text-align: center;
}
.content .benefit-goods {
  margin-bottom: 60px;
}
@media screen and (max-width: 1110px) {
  .content .benefit-goods {
    margin-bottom: 8vw;
  }
}
.content .benefit-goods:last-child {
  margin-bottom: 0;
}
.content .benefit-goods img {
  margin: 0 0 15px;
}
@media screen and (max-width: 1110px) {
  .content .benefit-goods img {
    margin: 0 0 3vw;
  }
}
.content .benefit-goods p {
  line-height: 1.4;
  font-size: 2rem;
  font-weight: 700;
}
@media screen and (max-width: 1110px) {
  .content .benefit-goods p {
    font-size: 5vw;
  }
}
.content .benefit-goods p .txt-small {
  font-size: 1.4rem;
}
@media screen and (max-width: 1110px) {
  .content .benefit-goods p .txt-small {
    font-size: 3.4vw;
  }
}
.content .benefit-goods p .note {
  display: block;
  font-weight: 400;
  font-size: 1rem;
  margin: 10px 0 0;
}
@media screen and (max-width: 1110px) {
  .content .benefit-goods p .note {
    font-size: 2.7vw;
    margin: 1.5vw 0 0;
  }
}
.content .ejas {
  padding-bottom: 0;
}
.content .ejas .link {
  padding-bottom: 0;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 1110px) {
  .content .outline {
    padding-bottom: 18vw;
  }
}
.content .outline-map {
  width: 50%;
  height: 100%;
  z-index: 2;
  background: #ccc;
  position: absolute;
  right: 0;
  top: 0;
}
@media screen and (max-width: 1110px) {
  .content .outline-map {
    width: 100%;
    height: 120vw;
    position: relative;
    margin: 0 auto;
  }
}
.content .outline-map iframe {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
}
.content .outline-table {
  font-size: 1.25rem;
  margin: 0 auto 30px;
  width: 100%;
}
@media screen and (max-width: 1110px) {
  .content .outline-table {
    font-size: 3vw;
    margin: 0 auto 3vw;
  }
}
.content .outline-table tr {
  border-bottom: solid 1px rgba(165, 160, 150, 0.5);
  line-height: 1.2;
}
.content .outline-table tr:last-child {
  border-bottom: none;
}
.content .outline-table th {
  padding: 1.25em 1.25em 1.25em 0;
  font-weight: 700;
}
@media screen and (max-width: 1110px) {
  .content .outline-table th {
    font-size: 3.4vw;
  }
}
.content .outline-table td {
  padding: 1.25em 0.75em 1.25em 0;
  font-weight: 700;
}
@media screen and (max-width: 1110px) {
  .content .outline-table td {
    font-size: 3.4vw;
  }
}
.content .outline-table td span {
  font-weight: 400;
  font-size: 0.9rem;
}
@media screen and (max-width: 1110px) {
  .content .outline-table td span {
    font-size: 2.5vw;
  }
}
.content .outline .link-onecolumn {
  width: 100%;
  display: flex;
  justify-content: center;
}

.list-item {
  width: calc(50% - 15px);
}
@media screen and (max-width: 1110px) {
  .list-item {
    width: calc(50% - 2.5vw);
  }
}
.list-thumb {
  margin: 0 0 10px;
}
@media screen and (max-width: 1110px) {
  .list-thumb {
    margin: 0 0 1.5vw;
  }
}
.list-thumb img {
  transition: 0.4s;
}
.list-name {
  font-size: 1.2rem;
}
@media screen and (max-width: 1110px) {
  .list-name {
    font-size: clamp(0.65rem, 3vw, 1.1rem);
    margin: 0 0 3vw;
  }
}
.list:after {
  content: "";
  width: calc(50% - 15px);
}

.notice {
  margin: 0 auto;
  width: 950px;
  font-size: 1.25rem;
}
@media screen and (max-width: 1110px) {
  .notice {
    width: 100%;
    font-size: 3vw;
  }
}
.notice li {
  text-indent: -0.6rem;
  padding: 0 0 0 1rem;
  margin: 0 0 0.5rem;
}
.notice li:last-child {
  margin: 0;
}
.notice li:before {
  content: "";
  width: 4px;
  height: 4px;
  background: #fff;
  border-radius: 50%;
  display: inline-block;
  position: relative;
  top: -5px;
  margin: 0 0.5rem 0 0;
}
@media screen and (max-width: 767px) {
  .notice li:before {
    width: 3px;
    height: 3px;
  }
}
.notice li a {
  color: #ffaf3a;
  text-decoration: underline;
}

.modal {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 99999;
  background: #fff url("../img/bg-white.jpg");
  width: 100%;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
}
.modal-container {
  width: 950px;
  margin: 0 auto;
}
@media screen and (max-width: 1110px) {
  .modal-container {
    width: 90%;
    font-size: 3vw;
  }
}
.modal-close {
  width: 100px;
  height: 100px;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 100;
  cursor: pointer;
}
@media screen and (max-width: 1110px) {
  .modal-close {
    width: 14vw;
    height: 14vw;
  }
}
.modal-close:after {
  content: "MENU";
  width: 100%;
  font-weight: 700;
  color: #333;
  display: block;
  text-align: center;
  position: absolute;
  bottom: 15px;
}
@media screen and (max-width: 1110px) {
  .modal-close:after {
    bottom: 1.5vw;
    font-size: 2.5vw;
  }
}
.modal-close span {
  width: 45px;
  height: 2px;
  display: block;
  background: #333;
  position: absolute;
  left: 28px;
  top: 40px;
  transition: 0.2s;
}
@media screen and (max-width: 1110px) {
  .modal-close span {
    width: 8vw;
    height: 0.5vw;
    left: 3.5vw;
    top: 6vw;
  }
}
.modal-close span:nth-child(1) {
  transform: translateY(0) rotate(20deg);
}
.modal-close span:nth-child(2) {
  transform: translateY(0) rotate(-20deg);
  width: 45px;
  left: 28px;
}
@media screen and (max-width: 1110px) {
  .modal-close span:nth-child(2) {
    transform: translateY(0) rotate(-20deg);
    width: 8vw;
    left: 3.5vw;
  }
}
.modal-close:after {
  content: "CLOSE";
}
.modal-close span:nth-child(1) {
  transform: translateY(0) rotate(20deg);
}
.modal-close span:nth-child(2) {
  transform: translateY(0) rotate(-20deg);
  width: 45px;
  left: 28px;
}
@media screen and (max-width: 1110px) {
  .modal-close span:nth-child(2) {
    transform: translateY(0) rotate(-20deg);
    width: 8vw;
    left: 3.5vw;
  }
}
.modal p {
  margin: 0 0 30px;
}
@media screen and (max-width: 1110px) {
  .modal p {
    margin: 0 0 3vw;
  }
}
.modal .link {
  padding: 0;
  margin: 0;
  background: none;
}
.modal .link-taobaoocolumn {
  padding: 2vw 0 0;
  justify-content: center;
  width: 100%;
}/*# sourceMappingURL=top.css.map */