.l-overlay {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  right: 0;
  background-color: rgba(26,26,26, .8);
  z-index: 110;
  visibility: hidden;
  opacity: 0;
}
.l-overlay.is-open {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}

.c-semiArchive {
  margin: 3em auto 0;
}
@media screen and (min-width: 744px) {
  .c-semiArchive {
    margin: min(7vw, 70px) auto 0;
  }
}

.c-semiArchive .c-semiArchive__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: .5em;
  margin-top: 5.1282051282vw;
}
@media screen and (min-width: 744px) {
  .c-semiArchive .c-semiArchive__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: min(2vw, 20px);
    margin-top: min(1.4641288433vw, 20px);
  }
}
.c-semiArchive .c-semiArchive__item .actions {
  margin-top: .1em;
}
@media screen and (min-width: 744px) {
  .c-semiArchive .c-semiArchive__item .actions {
    margin-top: min(.5vw, 5px);
  }
}
.c-semiArchive .c-semiArchive__item .actions .actionsModal,
.c-semiArchive .c-semiArchive__item .actions .actionsLink {
  position: relative;
  background-color: #f5f3f2;
  width: 100%;
  text-align: left;
  font-size: 4.102564102564102vw;
  font-family: 'TsukuGoPro-B', sans-serif;
  /* height: min(4.5vw, 45px); */
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  justify-content: flex-start;
  padding: .7em;
  transition: all 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}
@media screen and (min-width: 744px) {
  .c-semiArchive .c-semiArchive__item .actions .actionsModal,
  .c-semiArchive .c-semiArchive__item .actions .actionsLink {
    font-size: min(1.6vw, 16px);
    height: min(4.5vw, 45px);
    padding: 0 min(1.5vw, 15px);
  }
}
.c-semiArchive .c-semiArchive__item .actions .actionsLink {
  margin-top: .1em;
}
@media screen and (min-width: 744px) {
  .c-semiArchive .c-semiArchive__item .actions .actionsLink {
    margin-top: min(.5vw, 5px);
  }
}
.c-semiArchive .c-semiArchive__item .actions .actionsModal .ico {
  display: block;
  width: .8em;
  height: .8em;
  position: absolute;
  top: 50%;
  right: .5em;
  transform: translateY(-50%);
}
@media screen and (min-width: 744px) {
  .c-semiArchive .c-semiArchive__item .actions .actionsModal .ico {
    width: min(1.2vw, 12px);
    height: min(1.2vw, 12px);
    right: min(1.2vw, 12px);
  }
}
.c-semiArchive .c-semiArchive__item .actions .actionsModal .ico::before,
.c-semiArchive .c-semiArchive__item .actions .actionsModal .ico::after {
  content: '';
  width: 100%;
  height: .1em;
  background-color: #1a1a1a;
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
}
@media screen and (min-width: 744px) {
  .c-semiArchive .c-semiArchive__item .actions .actionsModal .ico::before,
  .c-semiArchive .c-semiArchive__item .actions .actionsModal .ico::after {
    height: min(2vw, 2px);
  }
}
.c-semiArchive .c-semiArchive__item .actions .actionsModal .ico::after {
  transform: rotate(90deg);
}
.c-semiArchive .c-semiArchive__item .actions .actionsLink::after {
  content: '';
  width: .8em;
  height: .8em;
  position: absolute;
  top: 50%;
  right: .5em;
  transform: translateY(-50%);
  background: url('../image/ico_arrow.svg') no-repeat center;
  background-size: 100% 100%;
  transition: all 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}
@media screen and (min-width: 744px) {
  .c-semiArchive .c-semiArchive__item .actions .actionsLink::after {
    width: min(1.2vw, 12px);
    height: min(1.2vw, 12px);
    right: min(1.2vw, 12px);
  }
}
.c-semiArchive .c-semiArchive__item .actions .actionsModal:hover,
.c-semiArchive .c-semiArchive__item .actions .actionsLink:hover {
  background-color: #1a1a1a;
  color: #fff;
}
.c-semiArchive .c-semiArchive__item .actions .actionsModal:hover .ico::before,
.c-semiArchive .c-semiArchive__item .actions .actionsModal:hover .ico::after {
  background-color: #fff;
}
.c-semiArchive .c-semiArchive__item .actions .actionsLink:hover::after {
  background: url('../image/ico_arrow_wh.svg') no-repeat center;
}

.c-semiAcvModal {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  z-index: 111;
}
.c-semiAcvModal {
  width: 85.8974358974359vw;
  height: 114.1025641025641vw;
  background-color: #fff;
}
@media screen and (min-width: 744px) {
  .c-semiAcvModal {
    width: min(80vw, 800px);
    height: min(60vw, 600px);
  }
}
.c-semiAcvModal.is-open {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}
.c-semiAcvModal .content {
  width: 100%;
  height: 100%;
  overflow-y: scroll;
  padding: 2em 1em;
}
@media screen and (min-width: 744px) {
  .c-semiAcvModal .content {
    padding: min(6vw, 60px) min(6vw, 60px);
  }
}
.c-semiAcvModal .content .s-hdg2 {
  position: relative;
  padding: 0 0 0 5.641025641vw;
  font-size: 0;
  margin-bottom: 6.4102564103vw;
}
@media screen and (min-width: 744px) {
  .c-semiAcvModal .content .s-hdg2 {
    padding: 0 0 0 min(1.6105417277vw, 22px);
    margin-bottom: min(1.8301610542vw, 25px);
  }
}
.c-semiAcvModal .content .s-hdg2::before {
  content: "";
  width: 2.3076923077vw;
  height: calc(100% - 1.0256410256vw);
  background-color: #FFF9B1;
  position: absolute;
  top: 0.5128205128vw;
  left: 0;
}
@media screen and (min-width: 744px) {
  .c-semiAcvModal .content .s-hdg2::before {
    width: min(0.6588579795vw, 9px);
    height: calc(100% - min(0.2928257687vw, 4px));
    top: min(0.1464128843vw, 2px);
  }
}
.c-semiAcvModal .content .s-hdg2__txt {
  font-size: 5.8974358974vw;
  font-weight: 700;
  font-family: "TsukuGoPro-B", sans-serif;
  letter-spacing: 0.09em;
  display: inline-block;
}
@media screen and (min-width: 744px) {
  .c-semiAcvModal .content .s-hdg2__txt {
    font-size: clamp(1rem, 1.756954612vw, 1.5rem);
  }
}
.c-semiAcvModal .content .s-hdg3 {
  font-size: 5.3846153846vw;
  font-weight: 700;
  font-family: "TsukuGoPro-B", sans-serif;
  letter-spacing: 0.03em;
  margin-top: 10.2564102564vw;
  margin-bottom: 3.8461538462vw;
}
@media screen and (min-width: 744px) {
  .c-semiAcvModal .content .s-hdg3 {
    font-size: clamp(0.75rem, 1.6105417277vw, 1.375rem);
    margin-top: min(2.9282576867vw, 40px);
    margin-bottom: min(1.0980966325vw, 15px);
  }
}
.c-semiAcvModal .content .s-sec__txt {
  font-size: 4.358974359vw;
}
@media screen and (min-width: 744px) {
  .c-semiAcvModal .content .s-sec__txt {
    font-size: clamp(0.75rem, 1.2445095168vw, 1.0625rem);
  }
}
.c-semiAcvModal .content .s-sec__txt + .s-sec__txt {
  margin-top: 5.1282051282vw;
}
@media screen and (min-width: 744px) {
  .c-semiAcvModal .content .s-sec__txt + .s-sec__txt {
    margin-top: min(1.4641288433vw, 20px);
  }
}
.c-semiAcvModal .c-semiAcvModal__closeBtn {
  width: 11.538461538461538vw;
  height: 11.538461538461538vw;
  background-color: #fff9b1;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  transition: all 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.c-semiAcvModal .c-semiAcvModal__closeBtn .line {
  display: block;
  width: 7.6923076923076925vw;
  height: 2px;
  background-color: #1a1a1a;
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  transition: all 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.c-semiAcvModal .c-semiAcvModal__closeBtn .line:first-child {
  transform: rotate(45deg);
}
.c-semiAcvModal .c-semiAcvModal__closeBtn .line:last-child {
  transform: rotate(-45deg);

}
@media screen and (min-width: 744px) {
  .c-semiAcvModal .c-semiAcvModal__closeBtn {
    width: min(6vw, 60px);
    height: min(6vw, 60px);
  }
  .c-semiAcvModal .c-semiAcvModal__closeBtn .line {
    width: min(3.5vw, 35px);
  }
  .c-semiAcvModal .c-semiAcvModal__closeBtn:hover {
    background-color: #1a1a1a;
  }
  .c-semiAcvModal .c-semiAcvModal__closeBtn:hover .line {
    background-color: #fff;
  }
}
