@import url("reset.css");

.m-box-modal .modal-txt {
  font-size: 16px;
  letter-spacing: 0;
  color: black;
}
.m-box-modal .modal-inner .modal-link-wrap {
  letter-spacing: 0;
  font-size: 16px;
}

#l-footer .footer-top .top-inner .top-other>li a {
  letter-spacing: 0;
}

/* -------------------------------
            header
---------------------------------- */

.header-pc a {
	transition: .3s;
}

.header-pc a:hover {
	opacity: .7;
}

.-sp {
	display: none;
}

@media only screen and (max-width:767px) {
	.-sp {
		display: block;
	}
	.-pc {
		display: none;
	}
}

.header-sp {
	display: none;
}

.header-pc {
	height: 63px;
  background: #93D500;
	position: sticky;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 10;
}

.header-pc-nav {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	height: 100%;
	max-width: 1600px;
	min-width: 1000px;
	margin: auto;
	padding: 0 20px;
}

.header-pc-logo {
	max-width: 165px;
	width: 100%;
	display: flex;
	align-items: center;
}

.header-pc-logo img {
	max-width: 165px;
	width: 100%;
}

.header-pc-menu {
	display: flex;
	align-items: center;
	justify-content: center;
	list-style: none;
	max-width: 100vw;
	width: 80%;
}

.header-pc-menu li a {
	display: block;
	padding: 25px 50px;
	height: 100%;
	font-size: 12px;
  text-align: center;
	color: #FFF;
	text-decoration: none;
	white-space: nowrap;
	letter-spacing: 0.14em;
	fill: #fff;
}

.header-pc-menu li a:hover {
	opacity: 1;
	background-color: rgba(255,255,255,.3);
	fill: #fff;
}

.header-pc-menu .now-page a {
	opacity: 1;
	background-color: rgba(255,255,255,.3);
}

.header-pc-menu-sns {
	width: 52px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	list-style: none;
}

.header-pc-menu-sns-item-btn {
	display: block;
	width: 100%;
	max-width: 20px;
}

.header-pc-menu-sns-item-btn-img {
	width: 100%;
}

.header-sns-sp {
	display: none;
}

.header-blue-line {
	width: 100%;
	height: 11px;
	background-color: #00A0E9;
}

@media only screen and (max-width:999px) {

	.header-pc {
		display: none;
	}

	.header-sp {
		display: block;
		height: 50px;
		background: #93D500;
		position: sticky;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 10;
	}

	.header-sp-nav {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		height: 100%;
	}

	.header-sp-logo {
		display: block;
		width: 100%;
		max-width: 125px;
		margin-left: 2%;
	}

	.header-sp-humburger {
		position: relative;
		display: block;
		width: 30px;
		height: 20px;
		margin-right: 2%;
		cursor: pointer;
	}

	.header-sp-humburger-cont span {
		position: absolute;
		right: 0;
		display: block;
		width: 100%;
		height: 1px;
		background-color: white;
	}

	.header-sp-humburger-cont span:nth-child(1) {
		top: 0;
	}

	.header-sp-humburger-cont span:nth-child(2) {
		top: 0;
		bottom: 0;
		margin: auto;
	}

	.header-sp-humburger-cont span:nth-child(3) {
		bottom: 0;
	}

	.header-green-line {
		width: 100%;
		height: 8px;
		background-color: #99D000;
	}

	.header-sp-navcont {
		position: absolute;
    top: 50px;
    left: 0;
		width: 100%;
		height: auto;
		background: white;
	}

	.header-sp-navcont .header-sp-navcont-menu {
		width: 45.3vw;
		height: 0;
		line-height: 0;
		margin: auto;
		overflow: hidden;
		transition: height .3s ease,
		padding .3s ease,
		overflow .3s ease;
	}

	.header-sp-navcont.is-open .header-sp-navcont-menu {
		height: 100%;
		padding: 50px 0;
	}

	.header-sp-navcont-menu-item {
		margin: 10px 0 0;
		padding: 4vw 0 0;
		height: auto;
		text-align: center;
		border-bottom: solid 1px #99D000;
	}

	.header-sp-navcont-menu-item-btn {
		fill: #99D000;
	}

	.header-sp-navcont-menu-item-btn:hover {
		opacity: 1;
		background-color: transparent;
		fill: #00A0E9;
	}

	.header-sp-navcont-menu-item:nth-child(1) a svg {
		max-width: 260px;
		min-width: 170px;
    width: 45.3vw;
		height: auto;
		aspect-ratio: 151/16;
	}

	.header-sp-navcont-menu-item:nth-child(2) a svg {
		max-width: 125px;
		min-width: 84px;
    width: 22.5vw;
		height: auto;
		aspect-ratio: 225/49;
	}

	.header-sp-navcont-menu-item:nth-child(3) a svg {
		max-width: 125px;
		min-width: 84px;
    width: 22.5vw;
		height: auto;
		aspect-ratio: 225/49;
	}

	.header-sp-navcont-menu-item:nth-child(4) a svg {
		max-width: 90px;
		min-width: 51px;
    width: 13.65vw;
		height: auto;
		aspect-ratio: 273/85;
	}

	.header-sp-menu-sns {
		display: block;
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		list-style: none;
		padding: 40px 0 0;
	}

	.header-sp-menu-sns-item {
		display: block;
		width: 28px;
		box-sizing: border-box;
		margin-right: 16px;
	}

	.header-sp-menu-sns-item:last-child {
		margin-right: 0;
	}

	.header-sp-menu-sns-item-btn {
		padding: 0;
		display: block;
		border-bottom: none;
	}

	.header-sp-menu-sns-item-btn img {
		max-width: none;
		width: 100%;
	}

}

/* -------------------------------
             key-visual
---------------------------------- */
.keyvisual {
  margin-top: 11px;
}

.keyvisual .kv-img {
  position: relative;
}

.keyvisual .kv-img img {
  width: 100%;
}

@media only screen and (max-width:999px) {
  .keyvisual {
    margin-top: 8px;
  }
}


/* -------------------------------
             lead-movie
---------------------------------- */
.lead-movie {
  max-width: 834px;
  margin: auto;
  padding: 50px 0 80px;
  text-align: center;
}

.lead-movie .movie-cont {
  display: block;
  width: 356px;
  margin: 80px auto 0;
  flex-wrap: wrap;
  align-items: center;
  position: relative;
}

.lead-movie .movie-cont .movie-text {
  width: 20.916666666666667vw;
  aspect-ratio: 86.405/16.951;
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(-20.916666666666667vw - 4vw);
  margin: auto;
}

.lead-movie .movie-cont .movie-cont-btn {
  display: inline-block;
  width: 356px;
  aspect-ratio: 89/50;
  cursor: pointer;
  position: relative;
}

.lead-movie .movie-cont-btn::before {
  content: "";
  width: 356px;
  height: 2px;
  background-color: #A2DB02;
  position: absolute;
  top: -10px;
  left: 0;
}

.lead-movie .movie-cont-btn::after {
  content: "";
  width: 356px;
  height: 2px;
  background-color: #00A0E9;
  position: absolute;
  bottom: -10px;
  left: 0;
}

.lead-movie .movie-cont .movie-cont-btn .cover {
  width: 356px;
  aspect-ratio: 89/50;
  background-color: rgba(210, 199, 197, 0.5);
  position: absolute;
  top: 0;
  left: 0;
  transition: background-color .3s ease;
}

.information-movie .movie-cont .movie-cont-img .cover {
  width: 100%;
  height: 100%;
  background-color: rgba(210, 199, 197, 0.5);
  position: absolute;
  top: 0;
  left: 0;
  transition: background-color .3s ease;
}

.lead-movie .movie-cont .movie-cont-btn .cover::after,
.information-movie .movie-cont .movie-cont-img .cover::after {
  content: "";
  background-image: url(../img/icon-movieplay-d.svg);
  background-position: center center;
  background-size: 100% auto;
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 73px;
  height: 73px;
  transition: .25s transform;
}

.lead-movie .movie-cont .movie-cont-btn:hover .cover,
.information-movie .movie-cont .movie-cont-img:hover .cover {
  background-color: rgba(210, 199, 197, 0.2);
}

.lead-movie .movie-cont .movie-cont-btn:hover .cover::after,
.information-movie .movie-cont .movie-cont-img:hover .cover::after {
  content: "";
  transform: scale(1.1);
}

@keyframes movieAnime {
  0% {
    width: 73px;
    height: 73px;
  }
  100% {
    width: 83px;
    height: 83px;
  }
}

@media screen and (max-width: 899px) {
  .lead-movie {
    padding: 10vw 4vw 12.2vw;
  }

  .lead-movie .movie-cont .movie-cont-img {
    width: 64.2vw;
    margin: 0 auto 6.1vw;
  }

  .lead-movie .movie-cont {
    width: 57.6vw;
    margin: 16.933333333333333vw auto 0;
  }

  .lead-movie .movie-cont .movie-text {
    width: 100%;
    aspect-ratio: 275.2578/47.8516;
    position: relative;
    top: -6.4vw;
    bottom: 0;
    left: auto;
    margin: auto;
  }

  .lead-movie .movie-cont-btn::before,
  .lead-movie .movie-cont-btn::after {
    width: 100%;
  }

  .lead-movie .movie-cont .movie-cont-btn {
    width: 100%;
    position: relative;
  }

  .lead-movie .movie-cont .movie-cont-btn .img {
    width: 100%;
  }

  .lead-movie .movie-cont .movie-cont-btn .cover {
    width: 100%;
  }


  .lead-movie .movie-cont .movie-cont-btn .cover::after,
  .information-movie .movie-cont .movie-cont-img .cover::after {
    width: 11.8vw;
    height: 11.8vw;
  }

}



/* -------------------------------
             section
---------------------------------- */
.section-case,
.section-feature,
.section-information {
  background-image: url(../img/section-bg.svg);
  background-repeat: no-repeat;
  background-position: center 5px;
  background-size: 100% auto;
}

.section-title {
  aspect-ratio: 1200/176.6308;
  background: url(../img/section-title-bg.svg) center / max(100% , 1200px) 100% no-repeat;
  display: flex;
  justify-content: center;
  align-items: center;
}

.section-title-bg {
  width: max(100vw, 1200px);
}

.section-case .section-title-txt {
  width: 44.24vw;
  height: 100%;
  aspect-ratio: 530.8882/90.9971;
  margin-top: -1.5vw;
}

.section-case-img {
  width: min(calc(100% - 160px), 880px);
  margin: 75px auto 100px;
}

.section-feature .section-title-txt,
.section-information .section-title-txt {
  width: 11.0225vw;
  height: 100%;
  aspect-ratio: 132.2712/31.6836;
  margin-top: -2vw;
}

.section-feature-img {
  width: min(calc(100% - 160px), 880px);
  margin: 75px auto 100px;
}

.section-sub-title {
  height: 51px;
  margin: auto;
}

.information-movie {
  width: min(35.916666666666667vw, 431px);
  margin: auto;
  padding: 6.666666666666667vw 0 0;
  text-align: center;
}

.information-movie .movie-cont {
  display: inline-block;
  position: relative;
}

.information-movie .movie-cont .movie-cont-btn {
  display: inline-block;
  width: 356px;
  aspect-ratio: 89/50;
  cursor: pointer;
  position: relative;
}

.information-movie .movie-cont .movie-cont-btn .cover {
  width: 356px;
  aspect-ratio: 89/50;
  background-color: rgba(210, 199, 197, 0.5);
  position: absolute;
  top: 0;
  left: 0;
  transition: background-color .3s ease;
}

.information-movie .movie-cont .movie-cont-btn:hover .cover {
  background-color: rgba(210, 199, 197, 0.2);
}

.section-information .img-text{
  width: min(52vw, 624px);
  height: 100%;
  aspect-ratio: 624.0132/27.8633;
  margin: 2.5vw auto 100px;
}

.information-solmack-img {
  width: min(41.25vw, 495px);
  aspect-ratio: 495.7437/277.5075;
  margin: 80px auto;
  transform: translateX(min(4.285714285714286vw, 60px));
}

.information-solmack-table {
  max-width: 732px;
  width: calc(100% - 4vw);
  margin: 0 auto 100px;
  border-collapse: collapse ;
}

.information-solmack-table .solmack-element {
  width: 16%;
  text-align: center;
  font-size: 14px;
  letter-spacing: 0;
  line-height: 1.285;
  padding: 10px;
  border: solid 1px #9E9F9F;
  background-color: #99D000;
  color: #fff;
}

.information-solmack-table .solmack-text {
  width: 84%;
  font-size: 14px;
  letter-spacing: 0;
  line-height: 1.142;
  padding: 6px 20px;
  border: solid 1px #9E9F9F;
  font-feature-settings: "palt";
  color: #595757;
}

.information-solmack-table .solmack-text-flex {
  display: flex;
}

.information-solmack-table .solmack-text-flex-col:first-child {
  margin-right: 15px;
}

.information-solmack-table .solmack-text span {
  border: solid .5px #9E9F9F;
  padding: 2px;
}

.information-solmack-table .solmack-text span > span {
  border: solid .5px #9E9F9F;
  padding: 0.5px;
}

@media screen and (max-width:767px) {
  .section-title {
    width: 100%;
    height: calc(176 * 100vw / 750);
    background: url(../img/section-title-bg.svg) center center / 1600px 100% no-repeat;
  }

  .section-case-img,
  .section-feature-img {
    width: min(78.666666666666667vw, 590px);
    margin: 8vw auto 13.333333333333333vw;
  }

  .section-case .section-title-txt {
    width: 70vw;
    min-width: auto;
    margin-top: -3vw;
  }

  .section-feature .section-title-txt {
    width: 20vw;
    min-width: auto;
  }

  .section-information .section-title-txt {
    width: 20vw;
    min-width: auto;
  }
}

.section-information-qa .section-sub-title {
  padding: 0 4vw;
}

.section-information-qa .information-qa-list {
  padding: 55px 0 20px;
}

.section-information-qa .information-qa-item {
  margin: 0 0 24px;
}

.section-information-qa .information-qa-btn {
  position: relative;
  cursor: pointer;
  display: block;
}

.section-information-qa .information-title-bg {
  position: relative;
}

.section-information-qa .information-qa-item .information-title-bg::after {
  content: "";
  width: 100%;
  height: 8px;
  background-color: #00A0E9;
  position: absolute;
  bottom: -8px;
  left: 0;
}

.section-information-qa .information-qa-item:nth-child(even) .information-title-bg::after {
  background-color: #93D500;
}

.section-information-qa .information-qa-item .information-title {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 21.123px;
}

.section-information-qa .information-qa-item:nth-child(1) .information-title {
  aspect-ratio: 557.0313/21.123;
}

.section-information-qa .information-qa-item:nth-child(2) .information-title {
  aspect-ratio: 700.4277/21.8047;
}

.section-information-qa .information-qa-item:nth-child(3) .information-title {
  aspect-ratio: 745.8467/21.123;
}

.section-information-qa .information-qa-item:nth-child(4) .information-title {
  aspect-ratio: 754.5483/21.3428;
}

.section-information-qa .information-qa-item:nth-child(5) .information-title {
  aspect-ratio: 871.7808/21.2334;
}

.section-information-qa .information-qa-item:nth-child(6) .information-title {
  aspect-ratio: 722.8247/21.2334;
}

.section-information-qa .information-qa-item:nth-child(7) .information-title {
  aspect-ratio: 695.8984/21.2334;
}

.section-information-qa .information-qa-item:nth-child(8) .information-title {
  aspect-ratio: 706.8452/21.8047;
}

.section-information-qa .information-qa-item:nth-child(9) .information-title {
  aspect-ratio: 301.94/21.18;
}

.section-information-qa .information-arrow {
  width: 30px;
  height: 30px;
  position: absolute;
  top: 50%;
  right: 2%;
  transform: translate(0, -50%);
  transition: transform .3s;
}

.section-information-qa .information-arrow .information-arrow-cont {
  position: relative;
}

.section-information-qa .information-arrow .information-arrow-cont span:nth-child(1) {
  width: 20px;
  height: 2px;
  background-color: #fff;
  position: absolute;
  top: 14px;
  left: -2px;
  transform: rotate(-45deg);
}

.section-information-qa .information-arrow .information-arrow-cont span:nth-child(2) {
  width: 20px;
  height: 2px;
  background-color: #fff;
  position: absolute;
  top: 14px;
  left: 11px;
  transform: rotate(45deg);
}

.section-information-qa .information-arrow.active {
  transform: translate(0, -50%) rotate(180deg);
}

.section-information-qa .information-qa-cont {
  text-align: center;
  padding: 0 4% 0;
  overflow: hidden;
  visibility: hidden;
  opacity: 0;
  height: 0;
  transition: visibility .3s ease,
  height .3s ease,
  opacity .3s ease,
  padding .3s ease;
}

.section-information-qa .information-qa-cont.active {
  text-align: center;
  padding: 42px 4% 28px;
  visibility: visible;
  opacity: 1;
  height: auto;
}

.section-information-qa .information-answer {
  width: 17px;
  margin: 0 auto 20px;
}

.section-information-qa .information-answer-text {
  font-weight: bold;
  color: #727171;
}

.section-information-qa .information-answer-text .sp-br {
  display: none;
}

.section-information-qa .information-answer-text .pc-br {
  display: block;
}

@media screen and (max-width: 980px) {
  .information-movie {
    width: 65.466666666666667vw;
    margin: auto;
    padding-top: 8.5vw;
  }
  .section-information .img-text{
    width: min(71.466666666666667vw, 536px);
    margin: 2.5vw auto 10.4vw;
  }
  .information-solmack-img {
    width: min(68vw, 510px);
    margin: 8.933333333333333vw auto;
    transform: translateX(0);
  }
  .information-movie .movie-cont .movie-cont-btn::before {
    top: -87px;
    left: calc(50% - 67px);
  }
  .section-information-qa .section-sub-title {
    width: 63.45vw;
  }
  .section-information-qa .information-qa-list {
    padding-top: 6.8vw;
    padding-bottom: 0;
  }

  .section-information-qa .information-qa-cont {
    padding: 0 4% 0;
  }

  .section-information-qa .information-qa-cont.active {
    padding: 3.333333333333333vw 4% 5.2vw;
  }

  .section-information-qa .information-answer {
    margin: 0 auto 3.333333333333333vw;
  }

  .information-movie .movie-cont {
    width: 100%;
  }

  .information-movie .movie-cont::before,
  .information-movie .movie-cont::after {
    width: 100%;
  }

  .information-movie .movie-cont .movie-cont-btn {
    width: 100%;
  }

  .information-movie .movie-cont .movie-cont-btn img {
    width: 100%;
  }

  .information-movie .movie-cont .movie-cont-btn .cover {
    width: 100%;
  }

  .section-information-movie,
  .section-information-solmack {
    padding: 0 4vw;
  }
  .section-information-solmack .section-sub-title {
    width: 64.6vw;
  }
  .section-information-movie .section-sub-title {
    width: 63.45vw;
  }

  .information-solmack-table {
    margin-bottom: 19.6vw;
  }
  .information-solmack-table .solmack-element {
    font-size: 2.25vw;
    padding: 1.7vw 0;
    width: 15vw;
  }

  .information-solmack-table .solmack-text {
    font-size: 2.25vw;
    padding: 1.7vw 2.9vw;
    width: auto;
  }

  .section-information-qa .information-qa-item .information-title {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }

  .section-information-qa .information-title-bg {
    position: relative;
  }

  .section-information-qa .information-qa-item .information-title-bg::after {
    content: "";
    width: 100%;
    height: 8px;
    position: absolute;
    bottom: -8px;
    left: 0;
  }

  .section-information-qa .information-answer {
    width: 2.2vw;
    margin-bottom: 3.1vw;
  }
  .section-information-qa .information-answer-text {
    font-size: 2vw;
    letter-spacing: .1em;
  }
  .section-information-qa .information-answer-text .sp-br {
    display: block;
  }

  .section-information-qa .information-answer-text .pc-br {
    display: none;
  }

  .section-information-qa .information-arrow {
    width: 4.3vw;
    height: 4.3vw;
    position: absolute;
    top: 50%;
    right: 3vw;
    transform: translate(0, -50%);
    transition: transform .3s;
    background: url(../img/arrow.svg) center center no-repeat;
    background-size: contain;
  }

  .section-information-qa .information-arrow .information-arrow-cont span {
    display: none;
  }

  .section-information-qa .information-qa-cont.active {
    padding: 5vw 0 1vw;
  }

  .section-information-qa .information-qa-item .information-title {
    width: auto;
    height: min(7.866666666666667vw, 59px);
  }

  .section-information-qa .information-qa-item:nth-child(9) .information-title {
    width: auto;
    height: min(3.466666666666667vw, 26px);
  }

  .section-information-qa .information-qa-item:nth-child(1) .information-title {
    aspect-ratio: 369.2852/58.9424;
  }

  .section-information-qa .information-qa-item:nth-child(2) .information-title {
    aspect-ratio: 446.0098/58.8389;
  }

  .section-information-qa .information-qa-item:nth-child(3) .information-title {
    aspect-ratio: 498.2002/58.9424;
  }

  .section-information-qa .information-qa-item:nth-child(4) .information-title {
    aspect-ratio: 507.3838/58.917;
  }

  .section-information-qa .information-qa-item:nth-child(5) .information-title {
    aspect-ratio: 646.4751/58.9688;
  }

  .section-information-qa .information-qa-item:nth-child(6) .information-title {
    aspect-ratio: 471.3574/58.9688;
  }

  .section-information-qa .information-qa-item:nth-child(7) .information-title {
    aspect-ratio: 441.8242/58.9688;
  }

  .section-information-qa .information-qa-item:nth-child(8) .information-title {
    aspect-ratio: 452.666/59.5928;
  }

  .section-information-qa .information-qa-item:nth-child(9) .information-title {
    aspect-ratio: 312.79/23.22;
  }
}

.section-solmack {
  padding: 100px 0;
}

.section-solmack .solmack-brand {
  margin: auto;
  width: min(calc(100% - 160px), 600px);
}

@media screen and (max-width: 767px) {
  .section-solmack {
    padding: 13.33vw 0;
  }

  .section-solmack .solmack-brand {
    width: min(92vw, 600px);
  }
}

.purchase-link {
  margin-bottom: 100px;
}

@media screen and (max-width: 980px) {
  .purchase-link {
    margin-bottom: 19.6vw;
  }
}

/* -------------  Youtubeポップアップ  ------------- */
.movie-item .js-modal-wrap {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  z-index: 10;
  visibility: hidden;
  transition: .2s ease;
  pointer-events: none;
}

.movie-item .js-modal-wrap.open {
  opacity: 1;
  visibility: visible;
  pointer-events: all;
}

.movie-item .js-modal-wrap .js-modal-bg,
.movie-item .js-modal-wrap.open .js-modal-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}

.movie-item .js-modal-wrap.open .js-modal-inner,
.movie-item .js-modal-wrap .js-modal-inner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: .3s ease;
}

.movie-item .js-modal-wrap.open .js-modal-close,
.movie-item .js-modal-wrap .js-modal-close {
  width: 26px;
  position: absolute;
  top: -34px;
  right: 0;
  fill: #fff;
  cursor: pointer;
  transition: .2s all;
}

.movie-item .js-modal-wrap.open .js-modal-close:hover {
  fill: #99D000;
}

@media screen and (max-width: 767px) {
  .movie-item iframe {
    max-width: 100%;
    height: auto;
    aspect-ratio: 350 / 197;
  }

  .movie-item .js-modal-wrap.open .js-modal-inner {
    width: calc(100% - 40px);
  }
}
