/* contents common
-------------------------------------------*/

.page-header{
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 200px;
	margin-top: 130px;
}
.page-header h2{
	padding-top: 60px;
	font-size: 35px;
	line-height: 1.5;
	letter-spacing: .1em;
}
.page-header h2 span{
	display: block;
	font-size: 17px;
}
.page-contents{
	position: relative;
	width: 100%;
	margin: 0 auto;
}
.page-contents .outer{
	padding-bottom: 150px;
}
.page-contents .outer h4{
	font-weight: bold;
	text-align: left;
	font-size: 19px;
	letter-spacing: .15em;
}
.page-contents .outer h4 span{
	padding-left: 1%;
	font-size: 70%;
	font-weight: normal;
}
.list_flex{
	width: 100%;
	padding: 40px 0;
	font-size: 15px;
	text-align: left;
}
.list_flex li{
	padding: 2% 0;
	line-height: 1.5;
}
.list_flex li.item-list{
	border-top: 1px solid #ddd;
}
.list_flex li dt{
	padding-bottom: 1%;
	font-weight: bold;
	font-size: 90%;
	color: #aaa;
}
.list_flex li a{
	color: var(--main-green);
}
.list_flex li a:hover{
	opacity: var(--hover);
}
.about .list_flex li.item-list,
.two-column-list .list_flex li.item-list{
	border-bottom: 1px solid #ddd;
}
.about .list_flex li.item-list dd,
.two-column-list .list_flex li.item-list dd{
	padding: 3% 0;
}

@media screen and (max-width: 960px){
	.page-header{
		height: 160px;
		margin-top: 80px;
	}
	.page-header h2{
		padding-top: 50px;
		font-size: 30px;
	}
	.page-header h2 span{
		font-size: 16px;
	}
}
@media screen and (max-width: 650px){
	.page-header{
		height: 140px;
		margin-top: 10%;
	}
	.page-header h2{
		font-size: 25px;
		line-height: 1.5;
	}
	.page-header h2 span{
		font-size: 14px;
	}
	.page-contents .outer{
		padding-bottom: 15%;
	}
	.page-contents .outer h4{
		font-size: 15px;
	}
	.list_flex{
		padding: 5% 0;
		font-size: 13px;
	}
	.list_flex li{
		padding: 1% 0;
	}
}

/* ABOUT
-------------------------------------------*/

.about .page-contents{
	position: relative;
	width: 100%;
	background: url(../img/about/about-bg_l.png) center top repeat-x;
	background-size: 1340px auto;
}
.about .inner{
	width: 680px;
	margin: 0 auto;
}
.about .inner h2,
.about .inner p{
	padding-top: 10%;
	letter-spacing: 0.2em;
}
.about .inner h2{
	font-size: 36px;
	line-height: 1.5;
}
.about .inner p{
	font-size: 15px;
	text-align: left;
	line-height: var(--p-height);
}
.about .inner h2 .pink{
	color: var(--main-pink);
}
.about .inner h2 .green{
	color: var(--main-green);
}

@media screen and (max-width: 960px){
	.about .page-contents{
		position: relative;
		width: 100%;
		background: url(../img/about/about-bg_m.png) center top repeat-x;
		background-size: 110% auto;
	}
	.about .inner{
		width: 80%;
	}
	.about .inner h2,
	.about .inner p{
		padding-top: 8%;
	}
	.about .inner h2{
		font-size: 32px;
	}
	.about .inner p{
		font-size: 15px;
	}

}
@media screen and (max-width: 650px){
	.about .page-contents{
		background: url(../img/about/about-bg_s.png) center top no-repeat;
		background-size: 102% auto;
	}
	.about .inner h2{
		font-size: 18px;
	}
	.about .inner p{
		font-size: 13px;
	}
}

/* Product
-------------------------------------------*/

/* .header-nav
 -------------------*/
.product .header-nav{
	width: 100%;
}
.product .header-nav ul{
	display: flex;
	align-items: center;
}
.product .header-nav li{
	width: 100%;
	height: 100px;
	line-height: 100px;
}
.product .header-nav li a{
	display: block;
	width: 100%;
}
.product .header-nav li p{
	display: inline-block;
	padding-right: 30px;
	font-weight: bold;
	color: #fff;
	background: url(../img/product/icon-ander-white.svg) right center no-repeat;
	background-size: 20px;
}
.product .header-nav li img{
	margin-right: 3%;
	vertical-align: middle;
	box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2);
}
.product .header-nav li.ca a:hover img,
.product .header-nav li.gul a:hover img{
	opacity: var(--hover);
}
/* ca */
.product .header-nav li.ca{
	background-color: var(--main-ca);
}
.product .header-nav li.ca a:hover{
	background-color: var(--sub-ca);
}
.product .header-nav li.ca img{
	width: 50px;
	height: auto;
}
/* gul */
.product .header-nav li.gul{
	background-color: var(--main-gul);
}
.product .header-nav li.gul a:hover{
	background-color: var(--sub-gul);
}
.product .header-nav li.gul img{
	width: 80px;
	height: auto;
}

/* product common
 -------------------*/
.product .page-contents{
	padding-top: 80px;
}
.product .page-contents h3{
	font-size: 30px;
	letter-spacing: 0.15em;
	padding-bottom: 5%;
}
.product .page-contents h3 span{
	font-size: 50%;
}

.product #feature{
	position: relative;
	width: 100%;
	padding-bottom: 15%;
}
#feature .main-image{
	width: 80vw;
	height: 45vw;
	border-radius: 0px 20px 20px 0px;
}
#feature .item{
	position: absolute;
	top: 25vw;
	right: 5vw;
	width: 35vw;
	height: auto;
	padding: 3%;
	color: #fff;
	border-radius: 20px;
}
#feature .item .read{
	padding-bottom: 5%;
	letter-spacing: 0.3em;
	font-weight: bold;
}
#feature .item ul{
	width: 100%;
	margin: 0 auto;
	padding-bottom: 3%;
}
#feature .item li{
	padding-bottom: 3%;
	font-size: 18px;
	letter-spacing: 0.2em;
	line-height: var(--p-height);
}
#feature .item li span{
	padding-right: 10px;
	font-weight: bold;
}
.product #product-description{
	width: 100%;
	height: auto;
	padding-top: 5%;
	text-align: justify;
}
#product-description .r-content,
#product-description .l-content{
	display: flex;
	justify-content:space-between;
	padding: 5% 0;
}
#product-description .t-block{
	width: 50vw;
}
#product-description p{
	padding-bottom: 5%;
}
#product-description p.read,
#product-description p.read-copy{
	font-weight: bold;
}
#product-description p.read{
	font-size: 185%;
	line-height: 1.5;
}
#product-description p.read-copy{
	font-size: 125%;
}
#product-description p.text{
	line-height: 2.2;
}
#product-description .i-block{
	width: 43vw;
}
#product-description .i-block img{
	width: 100%;
	height: auto;
	object-fit: cover;
	object-position: center center;
}
#product-description .r-content .t-block{
	padding-left: 10vw;
}
#product-description .r-content .i-block img{
	border-radius: 20px 0 0 20px;
}
#product-description .l-content .t-block{
	padding-right: 10vw;
}
#product-description .l-content .i-block img{
	border-radius: 0 20px 20px 0;
}
#product-description .l-content .i-block .s-img{
	padding-top: 5%;
	padding-left: 20vw;
}
#product-description .l-content .i-block .s-img img{
	border-radius: 20px;
	border: 4px solid #fff;
}
.product #spec{
	position: relative;
	width: 960px;
	margin: 0 auto;
	padding-top: 10%;
}
#spec .spec-list{
	padding-top: 5%;
	text-align: left;
}
.spec-list .list_flex{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.spec-list .list_flex li{
	width: 47%;
}
.spec-list p,
.spec-list .precautions{
	padding: 40px 0;
	line-height: var(--p-height);
}
.spec-list .precautions{
	text-indent: -1em;
	padding-left: 1em;
}
/*more-btn*/
.product .more-btn a{
	border: none;
	background: url(../img/product/icon-cart.svg) 75% center no-repeat;
	background-size: 24px auto;
	background-color: #fff;
	padding-right: 12px;
}
.product .more-btn a:hover{
	background: url(../img/product/icon-cart-white.svg) 75% center no-repeat;
	background-size: 24px auto;
	background-color: #444;
	color: #fff;
}
.product #product-description .more-btn a,
.product #spec .more-btn a{
	background: url(../img/product/icon-cart-white.svg) 70% center no-repeat;
	background-size: 24px auto;
	background-color: #444;
	color: #fff;
	width: 350px;
	padding-right: 12px;
}
#spec .more-btn{
	padding: 3% 0 0;
}
.product .product-f_nav{
	position: relative;
	width: 100%;
	margin-bottom: 10%;
}
.product .product-f_nav .inner{
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 70%;
	margin: 0 auto;
	padding: 5% 0;
}
.product-f_nav .inner .text{
	width: 60vw;
	color: #fff;
	text-align: left;
}
.product-f_nav .text .recommend{
	display: inline;
	font-size: 13px;
	font-weight: bold;
	border-bottom: 4px solid #fff;
	padding-bottom: 4px;
}
.product-f_nav .text .title{
	font-size: 25px;
	font-weight: bold;
	margin: 10% 0 5%;
}
.product-f_nav .text .read{
	font-size: 14px;
	line-height: 1.5;
	padding-bottom: 5%;
}
.product-f_nav .text .more-btn a{
	margin-left: 0;
}
.product-f_nav .inner .item{
	width: 40vw;
	margin: 0 auto;
}
.product-f_nav .item img{
	width: 100%;
	height: auto;
}

/* #ca */
#ca #feature .main-image{
	background: url(../img/product/main-ca.jpg) no-repeat;
	background-position: center center;
	background-size: cover;
}
#ca #product-description{
	background-color: #e9f9ff;
}
#ca #feature .item,
#ca #product-description .more-btn a:hover,
#ca #spec .more-btn a:hover{
	background-color: var(--main-ca);
}
#ca .product-f_nav{
	background-color: var(--main-gul);
}
#ca .product-f_nav .text .more-btn a{
	background: url(../img/common/icon-arrow-gp.svg) 90% center no-repeat;
	background-size: 20px 20px;
	background-color: #fff;
}
#ca .product-f_nav .text .more-btn a:hover{
	background-color: var(--sub-gul);
}
#ca .product-f_nav .item img{
	width: 70%;
}

/* #gul */
#gul #feature .main-image{
	background: url(../img/product/main-gul.jpg) no-repeat;
	background-position: center center;
	background-size: cover;
}
#gul #product-description{
	background-color: #fff7e2;
}
#gul #feature .item,
#gul #product-description .more-btn a:hover,
#gul #spec .more-btn a:hover{
	background-color: var(--main-gul);
}
#gul .product-f_nav{
	background-color: var(--main-ca);
}
#gul .product-f_nav .text .more-btn a{
	background: url(../img/common/icon-arrow-ca.svg) 90% center no-repeat;
	background-size: 20px 20px;
	background-color: #fff;
}
#gul .product-f_nav .text .more-btn a:hover{
	background-color: var(--sub-ca);
}
#gul .product-f_nav .item img{
	width: 50%;
}

@media screen and (max-width: 1200px){
	#feature .item{
		width: 43vw;
	}
}
@media screen and (max-width: 960px){
	.product .header-nav li{
		width: 90%;
		height: 130px;
		line-height: normal;
		display: flex;
		align-items: center;
	}
	.product .header-nav li a{
		height: 100%;
	}
	.product .header-nav li p{
		display: block;
		font-size: 15px;
		line-height: 2;
		padding: 0;
		background: none;
	}
	.product .header-nav li img{
		margin: 0 0 10px;
	}
	.product .header-nav li.ca img{
		margin-top: 20px;
	}
	.product .header-nav li.gul img{
		margin-top: 37px;
	}
	.product .page-contents h3{
		font-size: 27px;
	}
	#feature .main-image{
		width: 85vw;
		margin-bottom: 10vw;
	}
	#feature .item{
		top: 30vw;
		right: 2vw;
		width: 50vw;
	}
	#feature .item li{
		font-size: 16px;
		line-height: 1.6;
	}
	.product #product-description{
		padding-top: 10%;
	}
	#product-description p.read{
		font-size: 155%;
	}
	#product-description p.read-copy{
		font-size: 105%;
		padding-top: 3%;
	}
	#product-description p.text{
		font-size: 14px;
	}
	#product-description .t-block,
	#product-description .i-block{
		width: 48vw;
	}
	#product-description .r-content,
	#product-description .l-content{
		padding: 3% 0;
	}
	#product-description .r-content .t-block{
		padding-left: 5vw;
	}
	#product-description .l-content .t-block{
		padding-right: 5vw;
	}
	#product-description .l-content .i-block .s-img{
		padding-left: 10vw;
	}
	.product #spec{
		width: 90%;
	}
	.product .more-btn a{
		width: 100%;
	}
	.product .product-f_nav .inner{
		width: 80%;
	}
}
@media screen and (max-width: 650px){
	.product .header-nav ul{
		display: block;
	}
	.product .header-nav li{
		width: 100%;
		height: 60px;
		line-height: 60px;
	}
	.product .header-nav li p{
		display: inline-block;
		font-size: 12px;
		padding-right: 30px;
		background: url(../img/product/icon-ander-white.svg) right center no-repeat;
		background-size: 16px;
	}
	.product .header-nav li img{
		margin-right: 3%;
	}
	.product .header-nav li.ca img,
	.product .header-nav li.gul img{
		margin-top: 10px;
	}
	.product .header-nav li.ca img{
		width: 30px;
	}
	.product .header-nav li.gul img{
		width: 50px;
	}
	.product .page-contents h3{
		font-size: 18px;
		letter-spacing: 0.1em;
	}
	.product .page-contents{
		padding-top: 15%;
	}
	.product #feature{
		padding-bottom: 15%;
	}
	#feature .main-image{
		width: 100vw;
		height: 45vw;
		border-radius: 0;
		margin-bottom: 0;
	}
	#feature .item{
		position: relative;
		top: 0;
		right: 0;
		width: 100vw;
		margin: 0 auto;
		padding: 6% 3%;
		border-radius: 0;
	}
	#feature .item li{
		padding-bottom: 1%;
		font-size: 14px;
	}
	.product #product-description{
		padding: 10% 0 15%;
	}
	#product-description .r-content,
	#product-description .l-content{
		width: 100%;
		display: block;
		padding: 0 0 2%;
	}
	#product-description .r-content .t-block,
	#product-description .l-content .t-block{
		width: 90%;
		margin: 0 auto;
		padding: 0;
	}
	#product-description .i-block{
		width: 80%;
		margin: 0 auto;
		padding: 0;
	}
	#product-description p.read{
		font-size: 145%;
		padding-top: 8%
	}
	#product-description p.read-copy{
		font-size: 115%;
		padding-top: 2%;
	}
	#product-description p.text{
		font-size: 13px;
	}
	#product-description p{
		padding-bottom: 5%;
	}
	#product-description .r-content .i-block img,
	#product-description .l-content .i-block img,
	#product-description .l-content .i-block .s-img img{
		border-radius: 10px;
	}
	#product-description .l-content .i-block .s-img{
		padding: 2% 0;
	}
	#product-description .more-btn{
		padding-top: 5%;
	}
	.product #spec{
		width: 90%;
		padding-top: 15%;
	}
	#spec .spec-list{
		padding-top: 15%;
	}
	.spec-list .list_flex{
		display: block;
	}
	.spec-list .list_flex li{
		width: 100%;
		padding: 3% 0;
	}
	.spec-list p,
	.spec-list .precautions{
		padding: 3% 0;
	}
	.spec-list .precautions{
		padding-left: 1em;
	}
	#spec .more-btn{
		padding: 5% 0;
	}
	.product .product-f_nav{
		margin-bottom: 0;
	}
	.product .product-f_nav .inner{
		flex-wrap: wrap;
		flex-direction: column-reverse;
		width: 80%;
		padding: 10% 0;
	}
	.product-f_nav .inner .text,
	.product-f_nav .inner .item{
		width: 100%;
		text-align: center;
	}
	.product-f_nav .text .recommend{
		font-size: 11px;
		border-bottom: 2px solid #fff;
	}
	.product-f_nav .text .title{
		font-size: 18px;
		margin: 7% 0 4%;
	}
	.product-f_nav .text .read{
		font-size: 12px;
	}
	.product-f_nav .inner .item{
		padding-bottom: 5%;
	}
	#ca .product-f_nav .item img{
		width: 60%;
	}
	#gul .product-f_nav .item img{
		width: 40%;
	}
}

/* Column
-------------------------------------------*/
.column-page-header{
	position: relative;
	width: 100%;
	padding: 8% 0;
}
.column-page_copy{
	position: relative;
	width: 100%;
	margin: 0 auto;
	text-align: center;
}
.column-page_copy div{
	margin: 0 auto;
}
.column-page_copy .tag{
	width: 90px;
	height: 24px;
	line-height: 24px;
	border-radius: 12px;
	font-weight: bold;
	font-size: 13px;
	color: #fff;
	background-color: var(--main-green);
}
.column-page_copy .title{
	width: 35vw;
	height: auto;
	padding-top: 2%;
}
#column-001{
	background: url(../img/column/001/main-visual_001.jpg) center center no-repeat;
	background-size: cover;
}
.column-page_read{
	width: 100%;
	background-color: var(--main-green);
}
.column-page_read p{
	width: 60vw;
	margin: 0 auto;
	padding: 3% 0;
	text-align: justify;
	line-height: 2;
	color: #fff;
}
#column-content{
	position: relative;
	width: 100%;
}
#column-content .headline{
	padding-bottom: 10%;
	font-size: 30px;
	font-weight: bold;
}
#column-content .headline p{
	display: inline-block;
	vertical-align: middle;
}
#column-content .headline .figure{
	margin-right: 2%;
	padding-bottom: 1%;
	color: var(--main-green);
	border-bottom: 4px solid;
	border-color: var(--main-green);
}
#column-content .member-list{
	width: 760px;
	margin: 0 auto;
	padding: 100px 0 150px;
}
#column-content .member-list ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#column-content .member-list li{
	width: 48%;
	padding: 3%;
	border-radius: 10px;
	background-color: #dce8c1;
}
#column-content .member-list li img{
	width: 100px;
	height: auto;
	padding-bottom: 5%;
}
#column-content .member-list li p{
	line-height: var(--p-height);
}
#column-content .member-list li .name{
	font-weight: bold;
}
#column-content .member-list li .career{
	padding: 3% 0;
	font-size: 11px;
	line-height: 1.5;
}
#column-content .member-list li .caption{
	font-size: 13px;
	text-align: justify;
}
#interview{
	position: relative;
	width: 760px;
	margin: 0 auto;
}
#interview .talk{
	display: flex;
	flex-wrap: wrap;
	text-align: justify;
	line-height: 2;
}
#interview .talk dt{
	width: 20%;
	font-weight: bold;
}
#interview .talk dd{
	width: 80%;
	padding-bottom: 5%;
}
#youtube{
	position: relative;
	width: 100%;
}
#youtube .caption{
	display: inline-block;
	padding: 10px 50px;
	margin-bottom: 1%;
	font-size: 130%;
	font-weight: bold;
	padding-bottom: 10px;
	background: url(../img/common/icon-backslash.svg) left center no-repeat,
				url(../img/common/icon-slash.svg) right center no-repeat;
	background-size: 28px auto;
}
#youtube .caption span{
	font-size: 200%;
	color: var(--main-green);
}
#youtube .bg{
	padding: 50px 0;
	background-color: var(--main-green);
}
#youtube .inner{
	width: 960px;
	margin: 0 auto;
}
.youtube-frame{
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.youtube-frame iframe{
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}
.column #gaiyou{
	position: relative;
	width: 960px;
	margin: 0 auto;
}
.column #gaiyou .inner{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.two-column-list{
	width: 46%;
}

@media screen and (max-width: 960px){
	.column-page_copy .title{
		width: 40vw;
	}
	.column-page_read p{
		width: 80vw;
	}
	#column-content .headline{
		padding-bottom: 5%;
	}
	#column-content .member-list{
		width: 90vw;
		padding: 10% 0 15%;
	}
	#column-content .member-list li{
		width: 48%;
		padding: 3%;
	}
	#column-content .member-list li .career{
		padding: 2% 0 5%;
	}
	#column-content .member-list li .caption{
		font-size: 12px;
	}
	#interview,
	#youtube .inner,
	.column #gaiyou{
		width: 90vw;
	}
	#youtube .caption{
		padding: 10px 40px;
		background-size: 22px auto;
	}
	#youtube .bg{
		padding: 50px 0;
	}
	.column #gaiyou .inner{
		display: block;
	}
	.two-column-list{
		width: 100%;
	}
	#gaiyou .two-column-list .list_flex{
		padding-top: 20px;
	}
}
@media screen and (max-width: 650px){
	.column-page_copy .title{
		width: 50vw;
	}
	.column-page_read p{
		width: 90vw;
		font-size: 12px;
		line-height: var(--p-height);
	}
	#column-content .headline{
		padding-bottom: 8%;
		font-size: 20px;
	}
	#column-content .member-list{
		padding: 15% 0 20%;
	}
	#column-content .member-list ul{
		display: block;
	}
	#column-content .member-list li{
		position: relative;
		width: 100%;
		padding: 8% 8% 5%;
		margin-bottom: 3%;
	}
	#column-content .member-list li img{
		position: absolute;
		left: 5%;
		top: 5%;
		width: 100px;
		height: auto;
	}
	#column-content .member-list li .name,
	#column-content .member-list li .career{
		margin-left: 110px;
		text-align: left;
		padding: 0;
	}
	#column-content .member-list li .name{
		font-size: 14px;
	}
	#column-content .member-list li .career{
		padding: 3% 0 0;
	}
	#column-content .member-list li .caption{
		padding-top: 24px;
		line-height: 1.5;
	}
	#interview .talk dt{
		width: 25%;
	}
	#interview .talk dd{
		width: 75%;
	}
	#youtube .caption{
		padding: 10px 26px;
		font-size: 13px;
		background-size: 16px auto;
	}
	.column #gaiyou .inner{
		display: block;
	}
	.two-column-list .item-list{
		margin-bottom: 5%;
	}
}

/* Blog
-------------------------------------------*/
.blog .page-contents{
	position: relative;
	width: 960px;
	margin: 0 auto 10%;
	text-align: justify;
}
.posts-list ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.posts-list ul::before{
	content: "";
	display: block;
	width: 23%;
	order: 1;
}
.posts-list ul::after{
	content: "";
	display: block;
	width: 23%;
}
.posts-list li{
	width: 23%;
	overflow: hidden;
	padding-bottom: 3%;
}
.posts-list li a{
	display: block;
}
.posts-list li .thumb{
	position: relative;
	width: 100%;
	height: 150px;
	overflow: hidden;
	border-radius: 10px;
}
.posts-list li .thumb img{
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.posts-list li a:hover{
	color: #444;
	opacity: var(--hover);
}
.posts-list li .caption{
	width: 100%;
	line-height: 1.4;
	letter-spacing: 0.08em;
}
.posts-list li .caption p.data{
	font-size: 13px;
	padding: 5% 0 0;
}
.posts-list li .caption p.title{
	font-size: 14px;
	padding: 3% 0 0;
}
/* ページネーション */
.post_footer{
	position: relative;
	width: 100%;
}
#pagination{
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 20px 0;
	font-size: 13px;
}
#pagination span,
#pagination a{
	display: block;
	float: left;
	width: auto;
	padding: 8px 12px;
	margin: 2px 8px 2px 0;
	text-decoration: none;
	background-color: #fff;
	border: 1px solid #ddd;
	border-radius: 20px;
}
#pagination a:hover,
#pagination .current{
	background-color: #ddd;
}
#pagination .current{
	font-weight: bold;
}

/* Single
 -------------------*/
.page-contents .post-area,
.page-contents .pager{
	position: relative;
	width: 70%;
	margin: 0 auto;
}
.post-area .caption > *{
	width: 100%;
	padding-top: 3%;
}
.post-area .caption h3{
	font-size: 20px;
	line-height: 1.5;
	padding-bottom: 5%;
}
.post-area .post-contents{
	position: relative;
	width: 100%;
	margin: 0 auto;
	line-height: 2;
}
.post-area p a{
	color: var(--main-pink);
}
.post-area p a:hover{
	opacity: var(--hover);
}
/* ページネーション */
.page-contents .pager{
	margin-top: 5%;
	padding: 20px 0 0;
	text-align: center;
	border-top: 1px dotted #ddd;
}
.page-contents .pager div{
	display: inline-block;
	font-size: 12px;
}
.page-contents .pager div a:hover{ text-decoration: underline; }
.page-contents .pager .prev{ float: left; }
.page-contents .pager .next{ float: right; }

@media screen and (max-width: 960px){
	.blog .page-contents{
		width: 90%;
	}
	.posts-list ul::before,
	.posts-list ul::after,
	.posts-list li{
		width: 31%;
	}
	.posts-list li .thumb{
		height: 18vw;
	}
	
	.page-contents .post-area,
	.page-contents .pager{
		width: 90%;
	}
}
@media screen and (max-width: 650px){
	.blog .page-contents{
		margin: 2% auto 15%;
	}
	.posts-list ul{
		width: 100%;
		margin: 0 auto;
		display: block;
	}
	.posts-list li{
		width: 100%;
	}
	.posts-list li a{
		display: flex;
		justify-content: space-between;
	}
	.posts-list li .thumb{
		width: 40%;
		height: 24vw;
	}
	.posts-list li .caption{
		width: 60%;
		padding-left: 5%;
	}
	.posts-list li .caption p.data{
		font-size: 11px;
		padding: 0;
	}
	.posts-list li .caption p.title{
		font-size: 12px;
	}
	#pagination{
		font-size: 11px;
	}
	
	.page-contents .post-area,
	.page-contents .pager{
		width: 100%;
	}
	.post-area .caption h3{
		font-size: 15px;
	}
	.post-area .post-contents{
		line-height: var(--p-height);
	}
	.page-contents .pager{
		margin-top: 8%;
		padding-top: 3%;
	}
	.page-contents .pager div{
		font-size: 10px;
	}
}

/* Contact
-------------------------------------------*/

.contact .page-contents{
	padding-top: 40px;
}
.contact #e-mail{
	position: relative;
	width: 760px;
	margin: 0 auto;
}
.contact .contact-tit{
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	padding-bottom: 5%;
}
.contact .contact-tit img{
	width: 60px;
	height: 60px;
	margin-bottom: 3%;
}
.contact p{
	line-height: var(--p-height);
}
.contact p.comment{
	width: 100%;
	padding: 20px;
	font-size: 12px;
	margin: 20px auto;
	border-radius: 10px;
	background-color: #f2f2f2;
}
.contact .tel{
	font-size: 40px;
	font-weight: bold;
}
.contact .tel span{
	font-size: 60%;
}
@media screen and (max-width: 960px){
	.contact #e-mail{
		width: 90%;
	}
}
@media screen and (max-width: 650px){
	.contact .page-contents{
		padding-top: 0;
	}
	.contact #e-mail{
		width: var(--sp-width);
	}
	.contact .contact-tit{
		font-size: 15px;
	}
	.contact .contact-tit img{
		width: 40px;
		height: 40px;
	}
	.contact p.comment{
		padding: 4%;
		font-size: 11px;
		line-height: 1.5;
		margin: 3% auto;
	}
	.contact .tel{
		font-size: 30px;
	}
}

/* Term, Privacy
-------------------------------------------*/

.privacy .page-header h2{
	font-size: 24px;
	padding-top: 6%;
}
.privacy .page-contents{
	position: relative;
	width: 960px;
	height: auto;
	margin: 0 auto 10%;
	line-height: 2;
	text-align: justify;
}
.privacy .page-contents h3{
	font-size: 16px;
	padding-bottom: 1%;
}
.privacy .page-contents p{
	font-size: 14px;
	padding: 0 0 4% 2%;
}
.privacy .page-contents p.read{
	padding-left: 0;
}
@media screen and (max-width: 960px){
	.privacy .page-header h2{
		font-size: 20px;
		padding-top: 6%;
	}
	.privacy .page-contents{
		width: 90%;
	}
	.privacy .page-contents h3{
		font-size: 15px;
	}
	.privacy .page-contents p{
		font-size: 13px;
		padding: 0 0 3% 1%;
	}
}
@media screen and (max-width: 650px){
	.privacy .page-header h2{
		font-size: 16px;
		padding-top: 8%;
	}
	.privacy .page-contents{
		margin-top: -30px;
	}
	.privacy .page-contents h3{
		font-size: 13px;
	}
	.privacy .page-contents p{
		font-size: 12px;
	}
}