@charset "UTF-8";

/*色の設定
-----------------------------------------*/
:root
{
	--bluedeep: #92C4DA;
	--bluelight: #CFEAF5;
	--bluefont: #8EBCD1;
	--red: #EE887E;
	--graylight: #F7F7F7;
	--yerrow: #fff4b6;
}

/* page-title
-----------------------------------------*/
.page-title
{
	padding-top: 0;
	height: auto;
}

.page-title img
{
	width: 100%;
	padding-bottom: 0;
}

@media (max-width: 769px)
{}


.ehon01
{
	width: 820px;
	margin: 60px auto 100px
}

/* 解説
-----------------------------------------*/
.ehon01 .explanation
{
	margin-bottom: 40px;
	padding: 0 20px;
}

.ehon01 .explanation hgroup h2
{
	font-size: 30px;
	padding-bottom: 0.5em;
	letter-spacing: 0;
}

.ehon01 .explanation hgroup p
{
	font-size: 25px;
}

.ehon01 .explanation .flex
{
	display: flex;
	flex-wrap: wrap;
	margin: 75px auto 0;
}

.ehon01 .explanation .flex img
{
	width: 262px;
	margin: 0 calc((45% - 262px)/2);
}

.ehon01 .explanation .flex .txt
{
	padding-top: 2em;
	width: 55%;
	font-size: 17px;
	letter-spacing: 0.02em;
}

.ehon01 .explanation .flex .txt small
{
	display: block;
	line-height: 1.7;
	padding-top: 2em;
}

.ehon01 .explanation .flex .txt a
{
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	color: #fff;
	text-align: center;
	background-color: rgb(233, 150, 122);
	width: 260px;
	height: 46px;
	border-radius: 10px;
	margin-top: 26px;
}

/* 内容
-----------------------------------------*/
.ehon01 .content
{
	margin-bottom: 30px;
	padding: 0 20px;
}

.ehon01 .content h2
{
	padding-bottom: 50px;
}

.ehon01 .content h2 img
{
	width: 159px;
}

.ehon01 .content .flex
{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 1em;
}

.ehon01 .content .flex .txt
{
	width: calc(100% - 300px);
	letter-spacing: 0.02em;
}

.ehon01 .content p
{
	padding-bottom: 1em;
}

.ehon01 .content .flex .img
{
	width: 270px;
}

.ehon01 .content h3
{
	padding: 1em 0 0.5em;
}

.ehon01 .content ul.list
{
	margin-left: 1.2em;
}

.ehon01 .content ul.list li
{
	position: relative;
}

.ehon01 .content ul.list li::before
{
	position: absolute;
	content: '◆';
	top: 0;
	left: -1.2em;
	width: 1em;
	height: 1em;
}

.ehon01 .content .event
{
	padding: 10px 20px;
	margin: 40px 0 60px 0;
	border: dashed 2px #668ad8;
	background: #f1f8ff;
	box-shadow: 0px 0px 0px 10px #f1f8ff;
}

.ehon01 .content .event h3
{
	color: #668ad8;
	padding: 10px 0;
	font-weight: bold;
	text-align: center;
}

.ehon01 .content .event ul
{
	list-style: none;
	font-size: 13px;
	letter-spacing: 0.01em;
}

.ehon01 .content .event ul li
{
	width: 740px;
	height: 30px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 9px;
	border-bottom: 1px dotted #668ad8;
}

.ehon01 .content .event ul li a,
.ehon01 .content .event .list
{
	color: #668ad8;
	font-size: 13px;
}

.ehon01 .content .event ul li span:nth-child(1)
{
	width: 45px;
	text-align: center;
	padding: 3px 0;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #ccc;
	height: 18px;
	line-height: 1;
	font-size: 10.5px;
	margin-right: 8px;
	border-radius: 4px;
}

.ehon01 .content .event ul li span:nth-child(2)
{
	width: 100px;
}

.ehon01 .content .event ul li span:nth-child(3)
{
	width: 80px;
}

.ehon01 .content .event ul li span:nth-child(4)
{
	width: 340px;
}

.ehon01 .content .event ul li span:nth-child(5)
{
	width: 130px;
}

/* スライダー
-----------------------------------------*/
.slider-thumbnail .swiper-slide
{
	opacity: .5;
	transition: opacity .5s;
	width: calc(100% / 3);
}

.slider-thumbnail .swiper-slide.swiper-slide-thumb-active
{
	opacity: 1;
}

/* レイアウトのためのスタイル */
/* swiper */
.swiper-container
{
	position: relative;
	margin: 0 auto;
	width: 600px;
	padding: 0 50px;
}

.swiper
{
	width: 100%;
	padding: 0 30px
}

.swiper-wrapper
{
	width: 100%;
	margin-top: 2rem !important;
	display: flex;
	align-items: center;
}

.swiper-slide img
{
	width: 100%;
	height: 100%;
	object-fit: contain;
}

/* 前への矢印カスタマイズ */
.swiper-button-prev::after
{
	color: transparent;
	background-image: url(../img/ehon/cursor-prev.png);
	background-repeat: no-repeat;
}

/* 次への矢印カスタマイズ */
.swiper-button-next::after
{
	color: transparent;
	background-image: url(../img/ehon/cursor-next.png);
	background-repeat: no-repeat;
}

/* thumbnail */
.thumbnail .swiper-wrapper
{
	width: 80%;
	margin-top: 2rem !important;
	display: flex;
	align-items: center;
}

.thumbnail .swiper-slide
{
	opacity: .4;
}

.swiper-slide-thumb-active
{
	opacity: 1 !important;
}

.thumbnail img
{
	max-width: 154px;
	height: 101px;
}

/* 購入
-----------------------------------------*/
.ehon01 .buy
{
	width: 780px;
	margin: 60px auto;
	background: #fffcd9;
	padding: 35px 3px 40px;
}

.ehon01 .buy .flex
{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.ehon01 .buy .flex .img
{
	width: 37%;
	padding: 0 7%
}

.ehon01 .buy .txt
{
	width: 63%;
}

.ehon01 .buy .txt h4
{
	font-size: 24px;
	font-weight: bold;
	line-height: 1.3;
}

.ehon01 .buy .txt p
{
	font-size: 18px;
	font-weight: bold;
	line-height: 1.4;
	padding-top: 0.5em;
}

.ehon01 .buy .txt ul
{
	font-size: 14px;
	line-height: 1.4;
	margin: 10px 0;
}

.ehon01 .buy a
{
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	text-align: center;
	font-size: 14px;
	background-color: rgb(233, 150, 122);
	border-radius: 5px;
	width: 260px;
	height: 45px;
	margin-top: 1em;
}

.ehon01 .buy .bottom
{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 100%;
	font-size: 14px;
	line-height: 1.5;
	letter-spacing: 0;
	padding-top: 2em;
}

.ehon01 .buy .bottom .left
{
	width: 55%;
}

.ehon01 .buy .bottom .right
{
	width: 45%;
}

.ehon01 .buy .bottom dl
{
	display: flex;
	flex-wrap: wrap;
	padding-bottom: 0.5em;
}

.ehon01 .buy .bottom dt
{
	font-weight: normal;
}

/* 本のトップへ
-----------------------------------------*/
.ehon01 .link
{
	display: block;
	width: 309px;
	margin: 0 auto;
}

@media (max-width: 769px)
{
	.ehon01
	{
		width: 95%;
		margin: 30px auto 50px;
	}

	.ehon01 .explanation
	{
		margin-bottom: 30px;
	}

	.ehon01 .explanation hgroup h2
	{
		font-size: 20px;
		line-height: 1.5;
	}

	.ehon01 .explanation hgroup p
	{
		font-size: 16px;
	}

	.ehon01 .explanation .flex
	{
		margin: 25px auto 0;
	}

	.ehon01 .explanation .flex img
	{
		margin: 0 auto 20px;
		width: 180px;
	}

	.ehon01 .explanation .flex .txt
	{
		width: 100%;
		font-size: 14px;
	}

	.ehon01 .explanation .flex .txt a
	{
		margin: 20px auto 0;
	}

	.ehon01 .content
	{
		margin-bottom: 0;
	}

	.ehon01 .content h2
	{
		padding-bottom: 25px;
	}

	.ehon01 .content h2 img
	{
		width: 130px;
	}

	.ehon01 .content .flex .txt,
	.ehon01 .content .flex .img
	{
		width: 100%;
	}

	.ehon01 .content .event
	{
		margin: 20px auto 30px;
	}

	.ehon01 .content .event ul li
	{
		width: 100%;
		height: auto;
	}

	.ehon01 .contact
	{
		width: 95%;
		margin: 20px auto 50px;
	}

	.ehon01 .contact a
	{
		margin-left: 0;
		margin-top: 10px;
		width: 250px;
		text-align: center;
	}

	.ehon01 .buy
	{
		width: 95%;
		margin: 30px auto;
		padding: 35px 25px 40px;
	}

	.ehon01 .buy .flex .img
	{
		width: 150px;
		padding: 0;
		margin: 0 auto 15px
	}

	.ehon01 .buy .txt
	{
		width: 100%;
	}

	.ehon01 .buy .txt h4
	{
		font-size: 18px;
		text-align: center;
	}

	.ehon01 .buy .txt p
	{
		font-size: 16px;
	}

	.ehon01 .buy a
	{
		height: 40px;
		margin: 0 auto;
	}

	.ehon01 .buy .bottom .left,
	.ehon01 .buy .bottom .right
	{
		width: 100%;
	}

	.thumbnail img
	{
		height: 35px;
	}
}