@charset "utf-8";
/* CSS Document */
/*――――――――――――――――――――――――――――――――――――――――――――
/* FV Area
――――――――――――――――――――――――――――――――――――――――――――――*/
/* Area */
.fvArea {
	width: 100%;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}
.fvArea .l-inner {
	width: 100%;
	max-width: 100%;
	padding: 0 clamp(1.875rem, -0.447rem + 4.83vw, 3.75rem) /*769-30/1390-60*/ ;
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0));
}
.fvArea .fvFlexBox {
	display: flex;
	justify-content: center;
}
/* ContBox */
.fvArea .fvFlexBox .fvContBox {
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 830px;
	color: #FFF;
	font-weight: 700;
	text-shadow: 0px 0px 7px rgba(0, 0, 0, 0.7);
}
.fvArea .fvFlexBox .fvContBox .fvContBox__txt1 {
	margin-bottom: 0.2em;
}
.fvArea .fvFlexBox .fvContBox .fvContBox__txt2 {
	display: flex;
	align-items: center;
	line-height: 1;
}
.fvArea .fvFlexBox .fvContBox .fvContBox__txt2 .country-flag {
	width: clamp(3.75rem, 2.202rem + 3.22vw, 5rem) /*769-60/1390-80*/ ;
	aspect-ratio: 10 / 7;
	margin-right: 20px;
	object-fit: cover;
}
/* ContBox 日本語の場合 */
.fvArea .fvFlexBox .fvContBox .fvContBox__txt1.lang-jp {
	font-size: clamp(1.25rem, 0.476rem + 1.61vw, 1.875rem) /*769-20/1390-30*/ ;
}
.fvArea .fvFlexBox .fvContBox .fvContBox__txt2.lang-jp {
	font-size: clamp(2.625rem, 0.922rem + 3.54vw, 4rem) /*769-42/1390-64*/ ;
}
/* ImgBox */
.fvArea .fvFlexBox .fvImgBox {
	max-width: 300px;
	width: 50%;
	margin-top: clamp(1.563rem, -0.372rem + 4.03vw, 3.125rem) /*769-25/1390-50*/ ;
}
@media screen and (max-width: 768px) {
	.fvArea .l-inner {
		padding-top: 10%;
		padding-bottom: 0;
	}
	.fvArea .fvFlexBox {
		flex-wrap: wrap;
    	justify-content: flex-end;
		gap: 0.5rem;
		padding-top: 0;
	}
	.fvArea .fvFlexBox .fvContBox {
		width: 100%;
	}
	.fvArea .fvFlexBox .fvContBox .fvContBox__txt1 {
		margin-bottom: 0.5rem;
	}
	.fvArea .fvFlexBox .fvContBox .fvContBox__txt2 {
		line-height: 1.5;
		margin-bottom: 1rem;
	}
	.fvArea .fvFlexBox .fvContBox .fvContBox__txt1.lang-jp {
		font-size: clamp(1rem, 0.559rem + 1.96vw, 1.5rem) /*360-16/768-24*/ ;
	}
	.fvArea .fvFlexBox .fvContBox .fvContBox__txt2.lang-jp {
		font-size: clamp(1.5rem, 0.507rem + 4.41vw, 2.625rem) /*360-24/768-42*/ ;
	}
	.fvArea .fvFlexBox .fvImgBox {
		margin-top: 0 
	}
}
@media screen and (max-width: 500px) {
	.fvArea .fvFlexBox .fvImgBox {
		max-width: 475px;
	}
}
/*――――――――――――――――――――――――――――――――――――――――――――
/* Announcement Bar
――――――――――――――――――――――――――――――――――――――――――――――*/
.AnnBar {
	background-color: #108DF9;
	color: #FFF;
	font-weight: 700;
	font-size: 16px;
	padding: 0.75rem 0;
	overflow: hidden;
}
.AnnBar__wrapper {
	display: flex;
	width: fit-content;
	animation: AnnBar-scroll-left 30s linear infinite;
}
.AnnBar__contents {
	display: flex;
}
.AnnBar__contents-item {
	flex: 0 0 auto;
	margin-right: 3em;
	white-space: nowrap;
}
.AnnBar__contents-item a {
	color: #FFF;
	text-decoration: underline;
}
@keyframes AnnBar-scroll-left {
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(-50%);
	}
}
@media screen and (max-width: 768px) {
	.AnnBar {
		font-size: 14px;
	}
}
/*――――――――――――――――――――――――――――――――――――――――――――
/* Plan Select
――――――――――――――――――――――――――――――――――――――――――――――*/
.planSelectBox {
	max-width: 100%;
	margin: 0 auto;
}
.planSelectBox__title {
	
	display: flex;
	align-items: center;
	padding: 2rem 2rem 0 2rem;
	font-weight: bold;
	font-size: clamp(1rem, 0.845rem + 0.32vw, 1.125rem) /*769-16/1390-18*/ ;
	background-color: #FFF;
	border-radius: 8px 8px 0 0;
}
.planSelectBox__title img {
	width: 24px;
	aspect-ratio: 16 / 16;
	margin-right: 10px;
	object-fit: cover;
}
.planSelectBox__capacities {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	overflow: visible;
	margin-bottom: 2rem;
	padding: 1.5rem 2rem 2rem;
	background: #FFF;
	border-radius: 0 0 8px 8px;
}
.planSelectBox__capacity {
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	min-width: 0;
	max-width: 100%;
	padding: 0.5rem 1rem;
	font-weight: 700;
	font-size: clamp(1rem, 0.845rem + 0.32vw, 1.125rem) /*769-16/1390-18*/ ;
	text-align: center;
	border: 2px solid #DDD;
	border-radius: 8px;
	background: #FFFFFF;
	/*box-shadow: 0 4px 0 rgba(0, 0, 0, 0.1);*/
}
.planSelectBox__capacity--selected {
	border-color: #108df9;
	background-color: #e7f0f8;
}
.planSelectBox__days {
	display: none;
	flex-wrap: wrap;
	gap: 1rem;
	padding: 1.5rem 2rem 2rem;
	background: #FFFFFF;
	border-radius: 0 0 8px 8px;
}
.planSelectBox__days--active {
	display: flex;
}
.planSelectBox__day {
	flex: 0 0 calc(50% - 0.5rem);
	border: 2px solid #DDD;
	border-radius: 8px;
	padding: 1rem;
	display: flex;
	align-items: stretch;
	background: #fff;
	gap: 1rem;
	cursor: pointer;
}
.planSelectBox__day--selected {
	border: 2px solid #108df9;
	background: #e7f0f8;
}
.planSelectBox__radio-wrapper {
	display: flex;
	align-items: center;
}
.planSelectBox__radio-wrapper input[type="radio"] {
	appearance: none;
	position: relative;
	cursor: pointer;
	width: 1.3rem;
	height: 1.3rem;
	margin: 0;
	border: 2px solid #DDD;
	border-radius: 50%;
	background: #FFF;
}
.planSelectBox__radio-wrapper input[type="radio"]:checked {
	border-color: #108df9;
}
.planSelectBox__radio-wrapper input[type="radio"]:checked::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 0.6rem;
	height: 0.6rem;
	background: #108df9;
	border-radius: 50%;
}
.planSelectBox__day-content {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.planSelectBox__day-header {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 1rem;
}
.planSelectBox__day-left {
	display: flex;
	flex-direction: column;
}
.planSelectBox__day-left-group {
	display: flex;
	align-items: center;
	gap: 0.5rem;
}
.planSelectBox__day-title {
	font-weight: 700;
	font-size: clamp(1.125rem, 0.815rem + 0.64vw, 1.375rem) /*769-18/1390-22*/ ;
}
.planSelectBox__day-desc {
	font-size: clamp(0.75rem, 0.595rem + 0.32vw, 0.875rem) /*769-12/1390-14*/ ;
}
.planSelectBox__day-right {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}
.planSelectBox__price {
	font-weight: 700;
	font-size: clamp(1.5rem, 0.881rem + 1.29vw, 2rem) /*769-24/1390-32*/ ;
	line-height: 1;
	white-space: nowrap;
}
.planSelectBox__discount {
	font-size: clamp(0.875rem, 0.72rem + 0.32vw, 1rem) /*769-14/1390-16*/ ;
	font-weight: bold;
	color: #f4511e;
	background: #fff9f2;
	display: inline-block;
	padding: 0.1rem 0.4rem;
	border-radius: 6px;
	margin-bottom: 0.4rem;
}
.planSelectBox__price--original {
	text-decoration: line-through;
	margin-left: 0.5rem;
	color: #888;
	font-size: 0.9rem;
}
.planSelectBox__button {
	cursor: pointer;
	display: block;
	width: 100%;
	margin-top: 1rem;
	padding: 0.5rem 1rem;
	font-size: clamp(1rem, 0.845rem + 0.32vw, 1.125rem) /*769-16/1390-18*/ ;
	font-weight: 700;
	color: white;
	border: none;
	background-color: #108df9;
	background-image: url("/esim/assets/images/common/icon_cart.svg");
	background-size: 20px;
	background-position: center right 15px;
	background-repeat: no-repeat;
	border-radius: 8px;
	box-shadow: 0 4px 0 rgba(0, 0, 0, 0.1);
	transition: opacity 0.5s ease;
}
.planSelectBox__button:hover {
	opacity: 0.7;
}
@media (max-width: 1000px) {
	.planSelectBox__day {
		flex: 0 0 100%;
	}
}
@media (max-width: 768px) {
	.PlanSelect.l-section {
		padding-bottom: 50px;
	}
	.planSelectBox__title {
		margin-bottom: 1rem;
		padding: 0.75rem 0 1rem;
		font-weight: bold;
		font-size: clamp(1rem, 0.845rem + 0.32vw, 1.125rem) /*769-16/1390-18*/ ;
		background-color: inherit;
		border-bottom: 2px solid #CCC;
	}
	.planSelectBox__title img {
		width: 20px;
	}
	.planSelectBox__capacities {
		flex-wrap: wrap;
		justify-content: space-between;
		gap: 6px;
		padding: 0;
		background: none;
	}
	.planSelectBox__capacity {
		flex: 0 0 calc(33.333% - 4px);
		box-sizing: border-box;
	}
	.planSelectBox__capacity:last-child {
		margin-right: auto;
	}
	.planSelectBox__days {
		gap: 1rem;
		padding: 0;
		background: none;
	}
}
/*――――――――――――――――――――――――――――――――――――――――――――
/* Product Information
――――――――――――――――――――――――――――――――――――――――――――――*/
.ProductInformation.l-section {
	padding-top: 0;
}
.l-ProductInformation__container {
	/*max-width: 900px;*/
	margin: 0 auto;
}
.ProductInformation table {
	border-top: 1px solid #ccc;
	border-collapse: collapse;
	padding: 0;
	width: 100%;
	table-layout: fixed;
	font-size: clamp(0.875rem, 0.765rem + 0.49vw, 1rem) /*360-14/768-16*/ ;
}
.ProductInformation table tr {
	border-bottom: 1px solid #ccc;
}
.ProductInformation table th {
	padding: .75em;
	box-sizing: border-box;
	width: 20%;
	text-align: left;
	vertical-align: middle;
}
.ProductInformation table td {
	padding: .75em;
	box-sizing: border-box;
}
.ProductInformation table ul {
	padding-left: 1.0em;
}
.ProductInformation table li {
	position: relative;
	text-indent: -1.0em;
}
.ProductInformation table a {
	text-decoration: underline;
}
@media screen and (max-width: 768px) {
	.ProductInformation.l-section {
		background: #FFF;
	}
	.ProductInformation table tr {
		display: block;
	}
	.ProductInformation table th {
		display: block;
		border-bottom: 1px solid #F0F0F0;
		width: 100%;
		font-weight: bold;
	}
	.ProductInformation table td {
		display: block;
	}
}


/*――――――――――――――――――――――――――――――――――――――――――――
/* Flow
――――――――――――――――――――――――――――――――――――――――――――――*/
.l-flow {
	background: #63d6f3;
}
.l-flow .c-secTtl {
	color: white;
}
.l-flow__steps {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
}
.l-flow__steps .step {
	max-width: 250px;
	width: 25%;
}
.l-flow__steps .step img {
	width: 100%;
	height: auto;
}
.l-flow__steps .arrow {
	display: flex;
	max-width: 14px;
	width: 1.4%;
}
.l-flow__steps .step-title {
	font-weight: bold;
	margin-top: 15px;
	text-align: center;
}
.l-flow__steps .step-desc {
	font-size: 14px;
	margin-top: 5px;
	text-align: center;
}
.l-flow__buttons {
	margin-top: 40px;
	display: flex;
	justify-content: center;
	gap: 20px;
}
.l-flow__buttons .button {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: calc(50% - 10px);
	padding: 20px 25px;
	color: #000;
	font-size: 22px;
	font-weight: 700;
	text-decoration: none;
	border-radius: 8px;
	box-shadow: 0 4px 0 rgba(0, 0, 0, 0.1);
	background-color: #fff;
	background-image: url("/esim/assets/images/common/icon_arrow.svg");
	background-repeat: no-repeat;
	background-size: 8px;
	background-position: right 20px center;
}
.l-flow__buttons .button img.icon {
	height: 24px;
	width: auto;
}
@media (max-width: 768px) {
	.l-flow__steps {
		justify-content: flex-start;
		flex-direction: column;
		gap: 2em;
	}
	.l-flow__steps .step {
		max-width: 100%;
		width: 100%;
		display: flex;
		align-items: center;
		gap: 1em;
	}
	.l-flow__steps .step img {
		width: 100px;
		height: 140px;
		object-fit: cover;
		object-position: top;
		display: block;
	}
	.l-flow__steps .arrow {
		display: none;
	}
	.l-flow__steps .step-text {
		flex: 1;
	}
	.l-flow__steps .step-title {
		margin-top: 0;
		text-align: left;
	}
	.l-flow__steps .step-desc {
		text-align: left;
	}
	.l-flow__buttons {
		margin-top: 2em;
	}
	.l-flow__buttons .button {
		gap: 5px;
		width: 100%;
		padding: 10px 15px;
		font-size: clamp(1rem, 0.669rem + 1.47vw, 1.375rem) /*360-16/768-22*/ ;
		background-size: 6px;
		background-position: right 14px center;
	}
	.l-flow__buttons .button img.icon {
		height: 20px;
	}
}
@media (max-width: 550px) {
	.l-flow__buttons {
		flex-direction: column;
	}
}

/*――――――――――――――――――――――――――――――――――――――――――――
/* How To 動画で解説
――――――――――――――――――――――――――――――――――――――――――――――*/

.l-howto {
	background: #333;
}
.l-howto .c-secTtl {
	color: white;
}
.l-howto__youtube-area {
	width: 100%;
	font-size: 0;
}
.l-howto__youtube-area .box {
	width: calc((100% / 2) - 1rem);
	display: inline-block;
	margin: 0 2rem 0 0;
	vertical-align: top;
}
.l-howto__youtube-area .box:last-child {
	margin: 0;
}	
.l-howto__youtube-area .box .youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	margin-bottom: 1rem;
}
.l-howto__youtube-area .box .youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}	
.l-howto__youtube-area .box .title {
	font-size: 16px;
	line-height: 1.5em;
	text-align: center;
	font-weight: bold;
	color: white;
}
.l-howto__youtube-area .box .sp_show {
	display: none;
}

@media only screen and (max-width:780px) {
	.l-howto__youtube-area .box {
		width: 100%;
		display: block;
		margin: 0 0 2rem 0;
	}
	.l-howto__youtube-area .box .pc_show {
		display: none;
	}
	.l-howto__youtube-area .box .sp_show {
		display: block;
	}
}

/*――――――――――――――――――――――――――――――――――――――――――――
/* FAQ
――――――――――――――――――――――――――――――――――――――――――――――*/

.l-faq {
	background: #FFF !important;
}
.l-faq__container .faq-item {
	background-color: #f5f6f8 !important;
}
.l-faq__container .view-all {
	background-color: #f5f6f8 !important;
}




/*――――――――――――――――――――――――――――――――――――――――――――
/* reviewArea
――――――――――――――――――――――――――――――――――――――――――――――*/
.reviewArea__inner {
  background: #fff;
  border-radius: 10px;
  max-width: 1160px;
  margin: 0 auto;
  padding: 30px 60px 35px;
}
.reviewArea__inner .detailBox__ttl {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 15px;
}
.reviewArea__inner .reviewBox {
  background: #f5f6f8;
  border-radius: 10px;
  padding: 20px;
  width: 25%;
}
.reviewArea__inner .review__average {
  font-size: 14px;
  font-weight: 600;
}
.reviewArea__inner .review__averageNum {
  font-size: 30px;
  line-height: 1;
  font-weight: 600;
  margin-bottom: 5px;
}
.reviewArea__inner .review__body {
  width: 100%;
}
.reviewArea__inner .searchResultList__eval {
  display: flex;
  column-gap: 5px;
  margin-bottom: 10px;
}
.reviewArea__inner .evalIconList {
  display: flex;
}
.reviewArea__inner .evalIconList.bg-type {
  width: 80px;
  height: 16px;
  background-color: #d3d3d3;
  position: relative;
}
.reviewArea__inner .evalIconList.bg-type i {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background-color: #108df9;
  z-index: 0;
}
.reviewArea__inner .evalIconList.bg-type i.light {
  background-color: #88c1f2;
}
.reviewArea__inner .evalIconList.bg-type img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.reviewArea__inner .evalIconList__num {
  color: #151515;
  font-size: 14px;
}
.reviewArea__inner .evalIconList__num span.col-blue {
  color: #108df9;
}
.reviewArea__inner .generalReviewList {
  display: table;
  width: 100%;
}
.reviewArea__inner .generalReviewList__item {
  display: table-row-group;
}
.reviewArea__inner .generalReviewList__label {
  display: table-cell;
  font-weight: 600;
  color: #108df9;
  line-height: 1;
  vertical-align: middle;
  font-size: 14px;
  padding-right: 10px;
  padding-bottom: 8px;
}
.reviewArea__inner .generalReviewList__bar {
  display: table-cell;
  vertical-align: middle;
  padding-bottom: 8px;
}
.reviewArea__inner .generalReviewList__bar > span {
  border: 1px solid #d5d5d5;
  border-radius: 3px;
  display: block;
  height: 20px;
  position: relative;
  background: #fff;
  width: 134px;
  overflow: hidden;
}
.reviewArea__inner .generalReviewList__bar > span span {
  position: absolute;
  display: block;
  background: #108df9;
  left: 0;
  top: 0;
  height: 100%;
}
.reviewArea__inner .generalReviewList__percentage {
  vertical-align: middle;
  display: table-cell;
  text-align: right;
  line-height: 1;
  font-size: 14px;
  padding-bottom: 8px;
  padding-left: 10px;
}
.reviewArea__box {
  display: flex;
  align-items: flex-start;
  column-gap: 30px;
}
@media screen and (min-width: 1201px) {
  .reviewArea__box .reviewBox {
    position: sticky;
    top: 105px;
    height: fit-content;
  }
}
.reviewArea .review__slide {
  position: relative;
  margin-bottom: 30px;
}
.reviewArea .review__slide .swiper-button-prev {
  position: absolute;
  background: url("/assets/images/detail/slide_arrow_perv.svg") no-repeat;
  width: 31px;
  height: 31px;
  left: -15px;
}
.reviewArea .review__slide .swiper-button-prev::after {
  content: none;
}
.reviewArea .review__slide .swiper-button-next {
  position: absolute;
  background: url("/assets/images/detail/slide_arrow.svg") no-repeat;
  width: 31px;
  height: 31px;
  right: -15px;
}
.reviewArea .review__slide .swiper-button-next::after {
  content: none;
}
.reviewArea .review__slide .swiper-slide img {
  border-radius: 5px;
}
.reviewArea .review__noreview {
  margin-bottom: 50px;
  text-align: center;
}
.reviewArea .review__noreview dl dt {
  font-weight: 300;
  font-size: 14px;
  margin-bottom: 30px;
}
.reviewArea .review__noreview dl dd {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  display: flex;
  font-size: 14px;
  margin: 0 auto;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: #0f8df8;
}
.reviewArea .detailBoxList__item {
  border-bottom: 1px solid #d3d3d3;
  margin-bottom: 30px;
  padding-bottom: 30px;
}
.reviewArea .detailBoxList__item .reviewFlexBox {
  display: flex;
  align-items: flex-start;
  column-gap: 30px;
}
.reviewArea .detailBoxList__item .reviewFlexBox .reviewAvatar {
  width: 21.3333333333%;
  background: #f5f6f8;
  border-radius: 10px;
  padding: 20px;
  text-align: center;
}
.reviewArea .detailBoxList__item .reviewFlexBox .reviewAvatar__name {
  font-size: 14px;
  margin-bottom: 10px;
}
.reviewArea .detailBoxList__item .reviewFlexBox .reviewAvatar__imgBox {
  width: 58px;
  height: 58px;
  border-radius: 50%;
  display: flex;
  border: 2px solid #dbdbdb;
  align-items: center;
  background: #108df9;
  color: #fff;
  font-size: 18px;
  justify-content: center;
  margin: 0 auto 10px;
}
.reviewArea .detailBoxList__item .reviewFlexBox .reviewAvatar .evalIconList__num {
  font-weight: 600;
}
.reviewArea .detailBoxList__item .reviewDetail {
  width: 74.6666666667%;
  position: relative;
}
.reviewArea .detailBoxList__item .reviewDetail .reviewList__shop {
  display: flex;
  align-items: center;
  font-size: 14px;
  margin-bottom: 20px;
}
.reviewArea .detailBoxList__item .reviewDetail .reviewList__shop .grumet__info {
  margin-bottom: 0;
  margin-left: 15px;
}
.reviewArea .detailBoxList__item .reviewDetail .reviewList__title {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 15px;
}
.reviewArea .detailBoxList__item .reviewDetail .reviewList__title.company {
  display: inline-block;
  color: #108df9;
  margin-bottom: 5px;
}
.reviewArea .detailBoxList__item .reviewDetail .reviewList__comment {
  font-size: 14px;
  margin-bottom: 20px;
}
.reviewArea .detailBoxList__item .reviewDetail .reviewList__comment.--txt--hidden {
  height: 80px;
  transition: height 0.3s ease;
  overflow: hidden;
  position: relative;
}
.reviewArea .detailBoxList__item .reviewDetail .reviewList__comment.--txt--hidden::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%);
}
.reviewArea .detailBoxList__item .reviewDetail .reviewList__comment.--txt--hidden.is-active {
  height: auto;
  overflow: visible;
}
.reviewArea .detailBoxList__item .reviewDetail .reviewList__comment.--txt--hidden.is-active::before {
  display: none;
}
.reviewArea .detailBoxList__item .reviewDetail .reviewList__fig {
  margin-bottom: 15px;
  display: flex;
  column-gap: 5px;
}
.reviewArea .detailBoxList__item .reviewDetail .reviewList__fig li img {
  border-radius: 5px;
}
.reviewArea .detailBoxList__item .reviewDetail .reviewList__moreBtn {
  width: fit-content;
  line-height: 1;
  font-size: 12px;
  font-weight: 600;
  color: white;
  padding: 5px 23px 5px 8px;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #108df9;
  border-radius: 12px;
  margin-top: 10px;
  opacity: 1;
  visibility: visible;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  height: 23px;
  cursor: pointer;
  position: relative;
}
.reviewArea .detailBoxList__item .reviewDetail .reviewList__moreBtn::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 8px;
  margin: auto;
  width: 11px;
  height: 11px;
  background: url("/assets/images/common/ico_detail-white-blue.svg") no-repeat center;
  background-size: 11px 11px;
}
.reviewArea .detailBoxList__item .reviewDetail .reviewList__moreBtn.is-deactive::after {
  transform: rotate(180deg);
}
.reviewArea .detailBoxList__item .reviewDetail .reviewList__date {
  font-size: 12px;
  color: #bcbcbc;
}
.reviewArea .detailBoxList__item .reviewDetail .review-delete-icon {
  position: absolute;
  top: 0;
  right: 0;
  width: 16px;
  height: 16px;
}
.reviewArea .detailBoxList__item .reviewDetail .vertical-dot {
  display: block;
  width: 16px;
  height: 16px;
  background: url(/coupon/assets/images/common/vertical-dot.svg) no-repeat center top;
  background-size: 100% auto;
  cursor: pointer;
}
.reviewArea .detailBoxList__item .reviewDetail .reviewList__response {
  background: #f5f6f8;
  border-radius: 14px;
  margin-top: 25px;
  padding: 25px;
}
.reviewArea .detailBoxList__item .reviewDetail .reviewList__response .reviewList__title {
  display: flex;
  align-items: center;
  column-gap: 10px;
}
.reviewArea .detailBoxList__item .reviewDetail .reviewList__response .reviewList__title::before {
  content: "";
  display: block;
  width: 20px;
  height: 15px;
  background: url("/assets/images/common/ico_res.svg") no-repeat;
  background-size: contain;
}
.reviewArea .detailBoxList__item .reviewDetail .reviewList__response .reviewList__comment {
  margin-bottom: 10px;
}
.reviewArea .writeReview {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 30px;
  margin-top: 40px;
  margin-bottom: 30px;
}
.reviewArea .writeReview__txt {
  font-size: 14px;
}
.reviewArea .writeReview__link {
  font-size: 12px;
  color: #108df9;
  border: 1px solid #108df9;
  border-radius: 12px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 4px 23px 4px 8px;
  line-height: 1;
  position: relative;
}
.reviewArea .writeReview__link.-on span {
  transform: rotate(0);
}
.reviewArea .writeReview__link span {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 8px;
  margin: auto;
  width: 13px;
  height: 13px;
  display: block;
  transform: rotate(180deg);
}
.reviewArea .review__form {
  background: #f5f6f8;
  border-radius: 10px;
  padding: 30px;
  display: none;
  position: relative;
}
.reviewArea .review__form dl {
  border-bottom: 1px solid #d1d1d1;
  margin-bottom: 20px;
  padding-bottom: 20px;
}
.reviewArea .review__form dl.-rate dt {
  font-size: 12px;
}
.reviewArea .review__form dl.-rate dt span.rate__reset {
  margin-left: 50px;
}
.reviewArea .review__form dl.-rate dt span.rate__reset a {
  font-size: 10px;
  color: #108df9;
  text-decoration: underline;
}
.reviewArea .review__form dl.-rate dd .rate__list {
  display: flex;
}
.reviewArea .review__form dl.-rate dd .rate__listItem {
  width: 28px;
  height: 24px;
  padding-right: 4px;
}
.reviewArea .review__form dl.-rate dd .rate__listItem.-on span {
  background: #108df9;
}
.reviewArea .review__form dl.-rate dd .rate__listItem span {
  clip-path: url(#star);
  cursor: pointer;
  display: block;
  width: 24px;
  height: 24px;
  background: #d3d3d3;
}
.reviewArea .review__form dl.-name dd input {
  max-width: 200px;
}
.reviewArea .review__form dl.-fig dd .review__formFig {
  display: flex;
  column-gap: 10px;
  margin-bottom: 18px;
}
.reviewArea .review__form dl.-fig dd .review__formFig li {
  width: 90px;
  height: 90px;
}
.reviewArea .review__form dl.-fig dd .review__formFig li .review__formFigWrap {
  overflow: hidden;
  border-radius: 10px;
  height: 90px;
  width: 90px;
  border: 2px solid #d3d3d3;
}
.reviewArea .review__form dl.-fig dd .review__formFig li .review__formFigDelete {
  font-size: 10px;
  color: #108df9;
  display: block;
  width: fit-content;
  margin: 5px auto 0;
  text-decoration: underline;
}
.reviewArea .review__form dl.-fig dd .review__formFig li .review__formFigAdd {
  width: 90px;
  height: 90px;
  background: #f2f2f2;
  border: 2px dashed #b2b2b2;
  border-radius: 10px;
  text-align: center;
  font-size: 14px;
  padding-top: 20px;
  color: #b2b2b2;
  font-weight: 600;
}
.reviewArea .review__form dl.-fig dd .review__formFig li .review__formFigAdd::before {
  content: url("/assets/images/detail/icon_plus.svg");
  display: block;
}
.reviewArea .review__form dl.-fig dd .review__formFig li img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.reviewArea .review__form dl.-body {
  border-bottom: none;
  padding-bottom: 0;
}
.reviewArea .review__form dl.-body dd textarea {
  min-height: 125px;
}
.reviewArea .review__form dl dt {
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 10px;
}
.reviewArea .review__form dl #starRate {
  visibility: hidden;
  position: absolute;
  z-index: -1;
}
.reviewArea .review__form dl.error .error-message {
  display: block;
}
.reviewArea .review__form dl.error input, .reviewArea .review__form dl.error textarea {
  border-color: #FF3B30;
  background-color: #FCEEEC;
}
.reviewArea .review__form .error-message {
  display: none;
  margin-top: 4px;
  color: #FF3B30;
  font-weight: 700;
}
.reviewArea .review__form .error-message::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  vertical-align: sub;
  margin-right: 4px;
  background: url(/assets/images/common/ico_error.svg) no-repeat center;
}
@media screen and (max-width: 768px) {
  .reviewArea .review__form .error-message::before {
    width: 16px;
    height: 16px;
    margin-right: 2px;
    background-size: cover;
  }
}
.reviewArea .review__form button {
  background: #108df9;
  border-radius: 16px;
  color: #fff;
  font-size: 14px;
  display: block;
  font-weight: 600;
  padding: 5px 20px;
  margin: 0 auto;
}
.reviewArea .review__form-loading {
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.8);
  top: 0;
  left: 0;
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 2;
}

@media screen and (max-width: 1200px) {
  .reviewArea__inner .reviewArea__box {
    display: block;
  }
  .reviewArea__inner .generalReviewList {
    width: auto;
  }
  .reviewArea__inner .reviewBox {
    width: auto;
    margin-bottom: 50px;
  }
  .reviewArea__inner .review__body {
    width: auto;
  }
}
@media screen and (max-width: 768px) {
  .reviewArea__inner {
    padding: 30px 20px;
  }
  .reviewArea__header {
    display: block;
  }
  .reviewArea__header .searchResultList__header {
    margin-bottom: 20px;
  }
  .reviewArea .searchResultList__eval {
    display: block;
    margin-bottom: 15px;
  }
  .reviewArea__box {
    display: block;
  }
  .reviewArea .review__slide img {
    width: 100%;
  }
  .reviewArea .detailBoxList__item .reviewFlexBox {
    display: block;
  }
  .reviewArea .detailBoxList__item .reviewFlexBox .reviewAvatar {
    text-align: left;
    width: auto;
    display: flex;
    column-gap: 10px;
    align-items: center;
    margin-bottom: 20px;
  }
  .reviewArea .detailBoxList__item .reviewFlexBox .reviewAvatar__imgBox {
    margin: 0;
  }
  .reviewArea .detailBoxList__item .reviewFlexBox .reviewAvatar__name {
    margin-bottom: 0;
  }
  .reviewArea .detailBoxList__item .reviewFlexBox .reviewAvatar .searchResultList__eval {
    display: flex;
    margin-bottom: 0;
    margin-top: 5px;
  }
  .reviewArea .detailBoxList__item .reviewDetail {
    width: auto;
  }
  .reviewArea .reviewArea .writeReview {
    justify-content: flex-start;
  }
  .reviewArea .review__form {
    padding: 30px 20px;
  }
}


/*――――――――――――――――――――――――――――――――――――――――――――
/* searchPagination
――――――――――――――――――――――――――――――――――――――――――――――*/
.searchPagination {
  margin: 0 auto 0;
  display: flex;
  justify-content: center;
}

.searchPaginationList {
  display: flex;
  align-items: center;
  gap: 0 5px;
}

.searchPaginationList__item {
  width: 34px;
  height: 34px;
  overflow: hidden;
}

.searchPaginationList__link {
  width: 100%;
  height: 100%;
  display: block;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #ffffff;
  font-size: 14px;
  color: #666666;
  border: 1px solid #e2e2e2;
  border-radius: 50%;
}
.searchPaginationList__link:hover {
  background-color: #0f8df8;
  color: #ffffff;
  border: 1px solid #0f8df8;
}
.searchPaginationList__link.is-active {
  background-color: #0f8df8;
  color: #ffffff;
  border: 1px solid #0f8df8;
}

.l-reviews__button .view-all {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: 900px;
	margin: 40px auto 0;
	padding: 20px 25px;
	color: #000;
	font-size: 22px;
	font-weight: 700;
	text-decoration: none;
	border-radius: 8px;
  border: 1px solid #d3d3d3;
	background-color: #fff;
	background-image: url("../../images/common/icon_arrow.svg");
	background-repeat: no-repeat;
	background-size: 8px;
	background-position: right 20px center;
}
@media (max-width: 768px) {
	.l-reviews__button .view-all {
		margin-top: 20px;
		padding: 10px 15px;
		font-size: clamp(1rem, 0.669rem + 1.47vw, 1.375rem) /*360-16/768-22*/ ;
		background-size: 6px;
		background-position: right 15px center;
	}
}