.modal .content .body {
	margin: 0;	
}

@font-face {
    font-family: 'Escoredream';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-1Thin.woff') format('woff');
    font-weight: 100;
    font-display: swap;
}

@font-face {
    font-family: 'Escoredream';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-2ExtraLight.woff') format('woff');
    font-weight: 200;
    font-display: swap;
}

@font-face {
    font-family: 'Escoredream';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-3Light.woff') format('woff');
    font-weight: 300;
    font-display: swap;
}

@font-face {
    font-family: 'Escoredream';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-4Regular.woff') format('woff');
    font-weight: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Escoredream';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-5Medium.woff') format('woff');
    font-weight: 500;
    font-display: swap;
}

@font-face {
    font-family: 'Escoredream';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-6Bold.woff') format('woff');
    font-weight: 600;
    font-display: swap;
}

@font-face {
    font-family: 'Escoredream';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-7ExtraBold.woff') format('woff');
    font-weight: 700;
    font-display: swap;
}

@font-face {
    font-family: 'Escoredream';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-8Heavy.woff') format('woff');
    font-weight: 800;
    font-display: swap;
}

@font-face {
    font-family: 'Escoredream';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-9Black.woff') format('woff');
    font-weight: 900;
    font-display: swap;
}

body,
input,
select {
  font-family: 'Escoredream', 'Noto Sans KR', sans-serif;
}

 		:root {
 			--main-color: #101010;
 		}
 	
 		.product_detail {
  		width: 100%;
  		position: relative;
 			display: flex;
 			align-items: flex-start;
 			gap: 2rem;
 		}
 		
 		.product_detail .image {
 			width: 28rem;
 			border: 1px solid #eee;
 			position: relative;
 			border-radius: .8rem;
 		}
 		
 		.product_detail .image img {
 			width: 100%;
 			border-radius: .8rem;
 		}
 		
 		.product_detail .text {
 			flex: 1;
 		}
 		
 		.product_detail .text .title {
 			font-size: 2rem;
 			font-weight: 500;
 			margin-bottom: 1rem;
 		}
 		
 		.product_detail .text .summary {
 			font-size: 1.5rem;
 			color: #808080;
 		}
 		
 		.product_detail .text .summary p {
 			position: relative;
 			display: flex;
 			flex-wrap: wrap;
 			gap: .6rem;
 			margin-top: .6rem;
 		}
 		
 		.product_detail .text .summary p:first-child {
 			margin-top: .2rem;
 		}
 		
 		.product_detail .text .summary p span {
 			display: inline-flex;
 			align-items: center;
 			gap: .6rem;
 		}
 		
 		.product_detail .text .summary p span:after {
 			content: "|";
 			display: inline-block;
 			font-size: 1.2rem;
 		}
 		
 		.product_detail .text .summary p span:last-child:after {
 			display: none;
 		}
 		
 		.product_detail .text .price {
 			font-size: 2.4rem;
 			font-weight: 600;
 			margin-top: 2rem;
 		}
 		
 		.product_detail .text .option {
 			background-color: #fafafa;
 			padding: 2rem;
 			margin-top: 1rem;
 			border: 1px solid #eee;
 			border-radius: .8rem;
 		}
 		
 		.product_detail .text .option p {
 			font-size: 1.4rem;
 			margin-bottom: 1rem;
 		}
 		
 		.product_detail .text .option .count_box_group {
 			display: flex;
 			justify-content: space-between;
 		}
 		
 		.product_detail .text .option .count_box_group .option_total_amt {
 			font-size: 1.6rem;
 			font-weight: 500;
 		}
 		
 		.product_detail .text .option .count_box {
 			width: fit-content;
 			display: flex;
 		}
 		
 		.product_detail .text .option .count_box button {
 			all: unset;
    cursor: pointer;
    box-sizing: border-box;
    border: 1px solid #eee;
    width: 3.2rem;
    height: 3.2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
 		}
 		
 		.product_detail .text .option .count_box input {
 			width: 3.2rem;
 			height: 3.2rem;
 			font-size: 1.4rem;
 			text-align: center;
 			border: 1px solid #eee;
 		}
 		
 		.product_detail .text .total_amt_group {
 			margin-top: 1rem;
 		}
 		
 		.product_detail .text .total_amt_group ul li {
 			display: flex;
 			align-items: baseline;
 			justify-content: space-between;
 			margin-top: .4rem;
 		}
 		
 		.product_detail .text .total_amt_group ul li:first-child {
 			margin-top: 0;
 		}
 		
 		.product_detail .text .total_amt_group ul li:last-child {
 			border-top: 1px solid #eee;
 			padding-top: 1rem;
 			margin-top: 1rem;
 		}
 		
 		.product_detail .text .total_amt_group p {
 			font-size: 1.6rem;
 		}
 		
 		.product_detail .text .total_amt_group .total_amt {
 			font-size: 2.4rem;
 			font-weight: 700;
 			color: #E60044;
 		}
 		
 		.product_detail .text .button_group {
 			margin-top: 2rem;
 		}
 		
 		.product_detail .text .button_group button {
 			all: unset;
    cursor: pointer;
    box-sizing: border-box;
    border: 1px solid #eee;
    width: 100%;
    height: 5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    font-weight: 500;
    border-radius: .8rem;
 		}
 	
.editor-content {
	color: #666;
	padding: 2rem 1rem;
	font-size: 1.5rem;
}
 		
.book_intro {
    color: #333;
    padding: 1rem;
}

.book_intro h3 {
    font-size: 1.8rem;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 1rem;
}

.book_intro h4 {
    font-size: 1.6rem;
    font-weight: 600;
    color: #222;
    margin-bottom: 0.5rem;
}

.book_intro p {
	font-size: 1.5rem;
    margin-bottom: 1rem;
    line-height: 1.7;
}

.book_intro .part p {
    padding-left: 1rem;
}

.book_intro br {
}

.book_intro section {
	margin-top: 1rem;
}

.book_intro section ~ section {
	border-top: 1px solid #eee;
	padding-top: 3rem;
	margin-top: 3rem;
}

img {
	max-width: 100%;
}

.container .body .content_box .form_box {
	gap: 2rem;
}

.container .body .content_box .form_box .row {
	gap: 1rem;
}

.container .body .content_box .form_box .row h2 {
	font-size: 2rem;
	font-weight: 600;
	color: #202020;
	padding-bottom: 1rem;
}

.container .body .content_box .form_box .row .select,
.container .body .content_box .form_box .row .inputbox {
	height: 5rem;
	border-radius: .8rem;
}

.inputbox input {
	border-radius: .8rem;
}

.container .bottom .button,
.container .bottom .button:hover {
	background-color: #E60044;
}

.swiper-pagination-bullet-active {
	background-color: #E60044;
}

.modal .content .bottom a {
	background-color: #a9a9a9;
}

 		@media screen and (max-width: 519px) {
          .product_detail {
          	flex-direction: column;
          }
          
          .product_detail .image {
          	width: 100%;
          	height: auto;
          	margin: 0 auto;
          }
          
          .product_detail .image img {
          	width: 100%;
          }
          
          .product_detail .text {
          	width: 100%;
          }
      }
      
.col {
	display: flex;
	gap: 1rem;
}

.button {
	height: 5rem;
	all: unset;
    cursor: pointer;
    box-sizing: border-box;
    border: 1px solid #eee;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    white-space: nowrap;
    border-radius: .8rem;
    padding: 0 2rem;
}

.gv_content {
  font-size: 16px;
  padding: 20px 10px;
}

.gv_content > div {
	padding-bottom: 40px;
}

.gv_content > div ~ div {
  border-top: 1px solid #ddd;
  padding: 40px 0;
}

.gv_content > div:last-child {
	padding-bottom: 0;
}

.gv_content h4 {
  font-size: 24px;
  color: #333;
  margin: 0 0 20px
}

.gv_content p {
  line-height: 1.8;
}

.gv_youtube {
  margin: 50px 0;
  position: relative;
  max-width: 100%;
  padding-bottom: 56.25%;
  height: 0;
}

.gv_youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.mline {
  width: 1px;
  height: 12px;
  background: #ddd;
  display: inline-block;
  margin: 0 5px
}