@charset "UTF-8";
.btn01 {
	margin-block-end:20px;
}
.btn01 a {
	background: linear-gradient(to right, #954eb1, #d45886);
}

.lenses-section {
	margin: 3rem 0 4rem;
  padding: 3.5rem 2.5rem 4rem;
  background: #fff;
  border: 0.1rem solid #d9d9d9;
  border-radius: 1.6rem;
  box-sizing: border-box;
}

.lenses-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.lens-card {
  margin: 0;
  padding: 0;
  list-style: none;
}

.lens-card__inner {
  display: grid;
  grid-template-columns: 16rem minmax(0, 1fr) 30rem;
  align-items: center;
  column-gap: 3.2rem;
  min-height: 15rem;
  padding: 1rem 0;
  border-bottom: 0.1rem dotted #bfbfbf;
  box-sizing: border-box;
}

.lens-card__media {
  width: 16rem;
  margin: 0;
}

.lens-card__image {
  display: flex;
  align-items: center;
  justify-content: center;
  /* width: 16rem;
  height: 6.2rem; */
  margin: 0;
  overflow: visible;
  background: transparent;
}

.lens-card__image img {
  display: block;
  width: 100%;
  /* max-width: 16rem;
  max-height: 6.2rem; */
  height: auto;
  object-fit: contain;
}

.lens-card__content {
  min-width: 0;
}

.lens-card__genre {
  margin-bottom: 0.8rem;
  font-size: 1.4rem;
  line-height: 1.5;
  font-weight: 700;
  color: #8c8c8c;
  letter-spacing: 0.04em;
}

.lens-card__title {
  margin: 0;
  font-size: 2rem;
  line-height: 1.4;
  font-weight: 700;
  letter-spacing: 0.02em;
  word-break: break-word;
}

.lens-card__action {
  display: flex;
  justify-content: flex-end;
}

.lens-card__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 20px;
  border-radius: 9999px;
  background: linear-gradient(90deg, #9f52c8 0%, #e25e8f 100%);
  box-shadow: 0 0.6rem 1.4rem rgba(171, 83, 168, 0.22);
  color: #fff;
  font-size: 1.6rem;
  line-height: 1.2;
  font-weight: 700;
  text-decoration: none;
  letter-spacing: 0.04em;
  text-align: center;
  transition: opacity 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease;
  box-sizing: border-box;
  white-space: nowrap;
}

a.lens-card__button:hover {
  opacity: 0.96;
  transform: translateY(-0.2rem);
  box-shadow: 0 1rem 2rem rgba(171, 83, 168, 0.28);
}

.lens-card__button--disabled {
  opacity: 0.6;
  pointer-events: none;
}
.lens-card__genre {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0 0 0.6rem;
  padding: 0;
  list-style: none;
}

.lens-card__genreItem {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 10px;
  font-size: 1.2rem;
  font-weight: 700;
  color: #000;
}
.lens-card:nth-child(1) .lens-card__inner {
  padding-top: 0;
}
.un_mpp_product_type__mp {
  background-color: #f9be00;
}

.un_mpp_product_type__mf {
  background-color: #19284b;
  color: #fff;
}

.un_mpp_product_type__toric {
  background-color: #adc9f1;
}

.un_mpp_product_type__colorcon {
  background-color: #f3d3de;
}
@media screen and (max-width: 768px) {
  .lenses-section {
    margin: 2rem 0 4rem;
    padding: 1.6rem 1.2rem 1.8rem;
    border-radius: 1.2rem;
  }

  .lens-card__inner {
    display: flex;
    align-items: center;
    gap: 1.2rem;
    min-height: auto;
    padding: 1.2rem 0;
    flex-wrap: wrap;
  }

  .lens-card:nth-child(1) .lens-card__inner {
    padding-top: 0;
  }

  .lens-card__media {
    width: 160px;
    min-width: 160px;
    margin: 0;
  }

  .lens-card__content {
    flex: 1 1 auto;
    width: calc(100% - 180px);
  }

  .lens-card__genre {
    margin-bottom: 0.3rem;
    font-size: 1.1rem;
    line-height: 1.4;
  }

  .lens-card__title {
    font-size: 1.5rem;
    line-height: 1.4;
    word-break: break-word;
  }

  .lens-card__action {
    flex: 0 0 auto;
    display: flex;
    justify-content: flex-end;
    margin-inline-start: auto;
  }

  .lens-card__button {
    width: auto;
    min-width: 0;
    min-height: auto;
    padding: 0.9rem 1.4rem;
    font-size: 1.2rem;
    line-height: 1.3;
    white-space: nowrap;
  }
}

.introduction-wrap {
	padding: 3rem 3rem 2.8rem;
	border: 0.1rem solid #cfcfcf;
	border-radius: 0.8rem;
	background: #fff;
	box-sizing: border-box;
}
.introduction-wrap .wrap {
	border-bottom:1px dotted #ccc;
	padding-block-end:10px;
}
@media screen and (max-width: 768px) {
	.introduction-wrap .wrap {
		flex-wrap:wrap;
		padding-block-end:20px;
	}
}
.introduction-wrap .wrap figure {
	width:160px !important;
}
.introduction-wrap .wrap p:nth-child(2) {
	width:60%;
}
@media screen and (max-width: 1000px) {
	.introduction-wrap .wrap p:nth-child(2) {
		width:50%;
	}
}
@media screen and (max-width: 768px) {
	.introduction-wrap .wrap p:nth-child(2) {
		width:calc(100% - 180px);
	}
}

.item-name {
	font-size: 2rem;
	line-height: 1.45;
	font-weight: 700;
	color: #2f2f2f;
}
.introduction-wrap .btn01 {
	margin-inline-start: auto;
}
.introduction-wrap .btn01 a {
	color:#fff;
	box-shadow: 0 3px 7px rgba(0, 0, 0, .15);
	background: linear-gradient(to right, #954eb1, #d45886);
	padding:8px 20px;
	border-radius:200px;
}
.index-01 .tab-content .item {
	display: grid;
}
.index-01 .tab-content .item a {
	display: grid;
	grid-template-columns: subgrid;
	grid-row: span 3;
}

.index-03 li:nth-child(2) a:before {
    background: url(../images/common/item-int10.png) center / contain no-repeat;
}
.index-03 li:nth-child(3) a:before {
    background: url(../images/common/item-int2.png) center / contain no-repeat;
}
.index-03 li:nth-child(4) a:before {
    background: url(../images/common/item-int3.png) center / contain no-repeat;
}
.index-03 li:nth-child(5) a:before {
    background: url(../images/common/item-int4.png) center / contain no-repeat;
}
.index-03 li:nth-child(6) a:before {
    background: url(../images/common/item-int5.png) center / contain no-repeat;
}
.index-03 li:nth-child(7) a:before {
    background: url(../images/common/item-int6.png) center / contain no-repeat;
}
.index-03 li:nth-child(8) a:before {
    background: url(../images/common/item-int11.png) center / contain no-repeat;
}
.index-03 li:nth-child(9) a:before {
    background: url(../images/common/item-int7.png) center / contain no-repeat;
}
.index-03 li:nth-child(10) a:before {
    background: url(../images/common/item-int8.png) center / contain no-repeat;
}
.index-03 li:nth-child(11) a:before {
	content: "";
	background: url(../images/common/item-int12.png) center / contain no-repeat;
	display: block;
	width: min(5vw, 45px);
	aspect-ratio: 1.5 / 1;
}
.card._index .card-item {
	display:flex;
	flex-wrap:nowrap;
	align-items:center;
	gap:20px;
}
@media screen and (max-width: 768px) {
	.card._index .card-item {
		flex-wrap:wrap;
	}
}
.card._index ._index-blog .card-tag {
	display:flex;
	justify-content:center;
	min-width: 180px;
}
@media screen and (max-width: 1100px) {
	.card._index ._index-blog .card-tag {
		min-width:140px;
	}	
}
@media screen and (max-width: 768px) {
	.card._index ._index-blog .card-tag {
		min-width:180px;
	}	
}
.card._index ._index-news .card-tag {
	display:flex;
	justify-content:center;
	min-width: 170px;
}
@media screen and (max-width: 1100px) {
	.card._index ._index-news .card-tag {
		min-width: 130px;
	}
}
@media screen and (max-width: 768px) {
	.card._index ._index-news .card-tag {
		min-width: 170px;
	}
}

.card._index ._index-news .card-time {
	min-width: 90px;
}
@media screen and (max-width: 1100px) {
	.card._index ._index-news .card-time {
		min-width: 70px;
	}
}
@media screen and (max-width: 768px) {
	.card._index ._index-news .card-time {
		min-width: 150px;
	}
}
@media screen and (max-width: 640px) {
	.card._index ._index-news .card-time {
		min-width: 120px;
	}
}
@media screen and (max-width: 540px) {
	.card._index ._index-news .card-time {
		min-width: 100px;
	}
}
@media screen and (max-width: 480px) {
	.card._index ._index-news .card-time {
		min-width: 90px;
	}
}
.card._index ._index-blog .card-time {
	min-width: 100px;
}
@media screen and (max-width: 1100px) {
	.card._index ._index-blog .card-time {
		min-width: 80px;
	}
}
@media screen and (max-width: 768px) {
	.card._index ._index-blog .card-time {
		min-width: 150px;
	}
}
@media screen and (max-width: 640px) {
	.card._index ._index-blog .card-time {
		min-width: 130px;
	}
}
@media screen and (max-width: 540px) {
	.card._index ._index-blog .card-time {
		min-width: 110px;
	}
}
@media screen and (max-width: 480px) {
	.card._index ._index-blog .card-time {
		min-width: 100px;
	}
}
.card._index .card-title {
	width: stretch;
}