@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&display=swap&family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700');

/* COMMON */
#eglp {
	margin: 0;
	padding: 0;
	font-size: 14px;
	font-weight: 400;
	font-family: "Noto Serif JP", sans-serif;
	font-optical-sizing: auto;
	line-height: 1.85;
	color: #040404;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#eglp * {
	color: #777;
	text-decoration: none;
	transition: 1s;
}
#eglp h1, #eglp h2, #eglp h3, #eglp h4, #eglp h5, #eglp h6 {
	font-weight: normal;
}

#eglp img {
	width: 100%;
}

#eglp p {
	text-align: justify;
}

#eglp a.blank[target="_blank"] {
	position: relative;
}
#eglp a.blank[target="_blank"]:after {
	font-family: "FontAwesome";
	content: "\f2d2";
	font-weight: 400;
	position: absolute;
	box-sizing: border-box;
	top: 0;
	right: 0;
	background: #999;
	color: #fff;
	padding: 1px 4px;
	font-size: 8px;
}

/* FLEX */
#eglp .flex {
	display: flex;
	flex-wrap: wrap;
}
	#eglp .flex.col2 > * {
		width: 50%;
	}

/* BUTTON LIST */
#eglp .buttonList {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
	#eglp .buttonList > * {
		margin: 8px;
		cursor: pointer;
	}
	#eglp .buttonList > * a {
		display: block;
		padding: 4px 36px;
		color: #5A77A6;
		font-weight: 700;
		border: 1px solid #5A77A6;
	}
	#eglp .buttonList > * a:hover {
		color: #FFF;
		background: #5A77A6;
	}

/* ANIMATION */
#eglp .fadein_text {
	transform: translateY(60px);
	opacity: 0;
}
#eglp .slidein_image:nth-child(even) {
	opacity: 0;
}
	#eglp .slidein_image:nth-child(even) {
		transform: translateY(100%);
	}
	#eglp .slidein_image:nth-child(odd) {
		transform: translateX(-80%);
	}

/* LINK_TEXT */
#eglp .link_text {
	font-size: 1.4rem;
	text-align: center;
	border: 1px solid #AAA;
	cursor: pointer;
}
	#eglp .link_text:hover {
		background: #FFF;
	}

/* KV AREA */
#eglp .kv {
	position: relative;
	height: 480px;
	overflow: hidden;
	background-image: url("../img/kv-pc.png"), linear-gradient(to right, #FFF, #CCC);
	background-size: cover;
}
	#eglp .kv > div {
		position: absolute;
		top: 25%;
		left: 55%;
	}
		#eglp .kv > div h1 img {
			margin-bottom: 12%;
			width: 200px;
		}
	#eglp .kv > div h2 {
		line-height: 4rem;
	}
		#eglp .kv > div h2 span {
			padding-left: 4px;
			color: #FFF;
			background-image: linear-gradient(45deg, #035dab, #09348b);
			-webkit-background-clip: text;
			-webkit-text-fill-color: transparent;
		}

/* CONTENT AREA */
#eglp .contentArea {
}
	#eglp .contentArea > div {
		padding: 60px 0;
		background: #FFF;
	}
	#eglp .contentArea h2 {
		margin: 0 auto 80px auto;
		width: fit-content;
		color: #ced8eb;
		font-family: "Cormorant Garamond";
		text-align: center;
		font-size: 6rem;
		letter-spacing: 1.2rem;
		background-image: linear-gradient(0deg, #af70c1, #a0a8ca);
		-webkit-background-clip: text;
		-webkit-text-fill-color: transparent;
	}
		#eglp .contentArea h2 span {
			display: block;
			color: #ced8eb;
			font-family: "Noto Serif JP", sans-serif;
			font-size: 1.8rem;
			letter-spacing: 0.2rem;
		}

/* FOOTER AREA */
#eglp .footerArea {
	padding: 36px 0 12px 0;
	background: #5A77A6;
}
	#eglp .footerArea .flex {
		margin: 48px 0;
		justify-content: space-evenly;
	}
	#eglp .footerArea p {
		color: #FFF;
		text-align: center;
	}
		#eglp .footerArea p.produce {
			font-size: 2.4rem;
		}

/*----- CONTENT AREA -----*/

/* CONCEPT	*/
#eglp .contentArea .conceptArea {
	background: #EDF1F7;

}
	#eglp .contentArea .conceptArea p {
		margin: 0 auto;
		padding: 6px 0;
		width: fit-content;
		text-align: center;
	}

/* MERIT	*/
#eglp .contentArea .meritArea {
	background: #EDF1F7;
}
	#eglp .contentArea .meritArea > div {
		margin: 0 auto;
	}

	#eglp .roundList {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		text-align: center;
	}
		#eglp .roundList > * {
			margin: 8px;
			border: 1px solid #AAA;
			border-radius: 50%;
		}
			#eglp .roundList.col4 > * {
				height: 200px;
				width: 200px;
			}
				#eglp .roundList.col4 > * h3 {
					padding-top: 70px;
				}
				#eglp .roundList.col4 > * p {
					text-align: center;
				}

	#eglp .contentArea .meritArea .iconList {
		margin-top: 60px;
	}


	#eglp .iconList {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
		#eglp .iconList > * {
			margin: 0 2%;
		}
			#eglp .iconList.col3 > * {
				width: 25%;
			}
			#eglp .iconList > * img {
				display: block;
				margin: 0 auto;
				width: 64px;
			}
			#eglp .iconList > * h3 {
				padding: 18px 0;
				font-size: 1.8rem;
				text-align: center;
			}
			#eglp .iconList > * p {
				font-size: 1.4rem;
			}

/* SEMINOR	*/
#eglp .contentArea .seminorArea {
	background: #EDF1F7
}
	#eglp .contentArea .seminorArea .program {
		display: flex;
		margin: 0 auto;
		max-width: 768px;
		flex-wrap: wrap;
	}

	#eglp .contentArea .seminorArea .program {
	}
	#eglp .contentArea .seminorArea .program > div {
		flex: 1 1 0;
		margin: 0 0 20px 20px;
		padding: 20px;
		background: #FFF;
	}
	#eglp .contentArea .seminorArea .program > div h3 {
		font-size: 1.6rem;
		text-align: center;
		border-bottom: 1px solid #CCC;
	}
	#eglp .contentArea .seminorArea .program > div p {
		padding: 12px 0;
		font-size: 1.6rem;
	}



/* ITEM	*/
#eglp .contentArea .itemArea {
}
	#eglp .contentArea .itemArea > div {
		padding: 16px;
	}
	#eglp .contentArea .itemArea .contentBox {
		margin: 0 auto;
		max-width: 768px;
	}
		#eglp .contentArea .itemArea .contentBox .flex > div {
			position: relative;
		}
	#eglp .contentArea .itemArea div.flex h4 {
		padding-top: 16px;
	}
		#eglp .contentArea .itemArea div.flex > div:first-child {
			padding: 16px 32px 72px 16px;
		}
		#eglp .contentArea .itemArea div.flex > div:first-child p {
			font-size: 1.2rem;
		}
		#eglp .contentArea .itemArea div.flex > div:last-child {
			padding: 40px 12px;
		}
		#eglp .contentArea .itemArea div.flex > div:last-child {
			width: 100%;
		}
		#eglp .contentArea .itemArea div.flex > div:last-child ul li,
		#eglp .contentArea .itemArea div.flex > div:last-child p {
			font-size: 1.2rem;
		}
		#eglp .contentArea .itemArea div.flex > div:last-child > div {
			padding-top: 16px;
		}
		#eglp .contentArea .itemArea div.flex > div:last-child ul.title {
			padding-top: 8px;
		}
		#eglp .contentArea .itemArea div.flex > div:last-child ul ul li {
			text-indent: 1rem;
		}




	#eglp .contentArea .itemArea h3.category {
		margin: 24px 0;
		text-align: center;
	}
	#eglp .contentArea .itemArea h3.category p {
		text-align: center;
	}

	#eglp .contentArea .itemArea .buttonList {
		position: absolute;
		bottom: 0;
		left: 50%;
		margin-top: 24px;
		width: 100%;
		transform: translateX(-50%);
	}

	/* itemList */
	#eglp .contentArea .itemArea .itemList {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
		#eglp .contentArea .itemArea .itemList > div {
			position: relative;
			margin: 24px 0 24px 0;
			padding-bottom: 80px;
			width: 23%;
		}
		#eglp .contentArea .itemArea .itemList > div p {
			padding: 6px 0;
			text-align: center;
			font-weight: 700;
		}
		#eglp .contentArea .itemArea .itemList > div div {
			line-height: 1.8rem;
		}



#eglp .contentArea .back_blue {
	background: #EDF1F7;
}

@media screen and (max-width: 1199px){
	/*bootstrapを使用する場合。幅を1200pxとして
	左右に15pxずつpaddingをつけている為*/
}
@media screen and (max-width: 1169px){
	/*bootstrapを使用しない場合*/
}

@media screen and (max-width: 1024px){
}

@media (max-width: 767px){
	#eglp .headerArea {
		display: block;
		height: 180px;
	}
	#eglp .headerArea .ledexte_logo {
		padding: 16px 0;
		width: 100%;
	}
		#eglp .headerArea .ledexte_logo img {
			display: block;
			margin: 0 auto;
			bottom: 0;
			left: 0;
		}
	#eglp .headerArea .salon_sum {
		text-align: center;
		font-size: 1.6rem;
	}
	#eglp .headerArea .link_salon {
		left: 20px;
		bottom: -24px;
	}
	#eglp .headerArea .link_icon {
		position: absolute;
		right: 40px;
	}

	#eglp .kv {
		height: 240px;
	}
	#eglp .kv > div {
		top: 15%;
	}
	#eglp .kv > div h1 img {
		width: 100px;
	}
	#eglp .kv > div h2 {
		line-height: 3.2rem;
		font-size: 1.6rem;
	}

	#eglp .campaignBtn {
		padding: 0 12px;
	}
		#eglp .campaignBtn img {
			border-radius: 24px;
		}

	#eglp .innerLinkArea {
		display: none;
	}
	#eglp .flex {
		display: block;
	}
	#eglp .flex.col2 > * {
		width: auto;
	}
	#eglp .bannerArea .flowArea {
		padding-top: 18px;
	}

	#eglp .bannerArea .flowArea > div {
		margin: 0 auto 48px auto;
		max-width: 90%;
		padding: 12px;
	}
	#eglp .bannerArea .flowArea h3 {
		top: -28px;
	}
	#eglp .contentArea .visualMargin_01 {
		background-size: auto;
	}
	#eglp .roundList.col4 > * {
		width: 160px;
		height: 160px;
	}
	#eglp .roundList.col4 > * h3 {
		padding-top: 48px;
	}
	#eglp .iconList {
		display: block;
	}
	#eglp .iconList.col3 > * {
		width: auto;
		padding: 0 40px;
		margin: 0 0 60px 0;
	}

	#eglp .contentArea .seminorArea .flex {
		display: block;
	}
	#eglp .contentArea .seminorArea .flex img {
		width: 100%;
	}
	#eglp .contentArea .seminorArea .flex .program > div {
		margin: 16px;
	}
	#eglp .contentArea .seminorArea .flex .program {
		font-size: 1.6rem;
	}
	#eglp .buttonList > * {
		margin: 16px 2px 0px 2px;
	}
	#eglp .contentArea .itemArea .itemList > div {
		margin: 24px 0 40px 0;
		width: 45%;
		padding-bottom: 54px;
	}
	#eglp .contentArea .itemArea .itemList > div div {
		line-height: 3rem;
		font-size: 1.6rem;
	}
	#eglp .contentArea .itemArea .itemList > div p {
		font-size: 1.8rem;
	}
	#eglp .contentArea .seminorArea .program {
		display: block;
	}
	#eglp .contentArea .seminorArea .program > div {
		margin: 16px 20px;
	}

	#eglp .contentArea .itemArea > div.flex {
		margin: 0 32px
	}
	#eglp .contentArea .itemArea div.flex > div:nth-child(2) {
		padding: 40px 12px;
	}
	#eglp .contentArea .itemArea > div.remark {
		margin: 0 24px;
	}
	#eglp .contentArea .qaArea h4.openCloseBtn {
		padding-left: 16px;
		font-size: 2rem;
	}
	#eglp .contentArea .qaArea [data-area] div p.question {
		padding-left: 16px;
	}
	#eglp .contentArea .qaArea [data-area] div p.answer {
		padding: 8px 16px;
		font-size: 1.6rem;
	}
	#eglp .contentArea .voiceArea > div {
		display: block;
	}
	#eglp .contentArea .voiceArea > div > div {
		margin: 0px 6% 60px 6%;
		width: auto;
	}
	#eglp .contentArea .voiceArea > div .shop p {
		padding: 8px 0 0 0;
	}
	#eglp .contentArea .voiceArea > div .text {
		font-size: 1.6rem;
	}
	#eglp .footerArea .flex div {
		padding: 12px 120px;
	}

	#eglp .contentArea .instagramArea {
		display: block;
	}
	#eglp .contentArea .instagramArea iframe {
    top: 0;
    margin: 0;
		min-width: auto!important;
    max-width: 100%!important;
    height: 520px;
    overflow: hidden;
	}

}
