@charset "UTF-8";

/* ---------------------------------------
  よくある質問
-----------------------------------------*/

/* mv
--------------------------------*/
#sec_mv .mv_img {
	background-image: url(../img/faq/pagettl_img_pc.jpg);
	background-position: center top;
}

@media screen and (max-width: 768px) {
	#sec_mv .mv_img {
		background-image: url(../img/faq/pagettl_img_sp.jpg);
	}
}


/* pagelink
--------------------------------*/
#pagelink {
	padding: 100px 0 120px;
}

#pagelink .list {
	max-width: 996px;
}

#pagelink .list .item {
	width: 282px;
}

#pagelink .list .item a {
	position: relative;
	display: block;
	text-align: center;
	font-size: 1.8rem;
	line-height: 1;
	padding: 0 2em 1.1em;
	background: url(../img/common/btn_bg.svg) no-repeat left bottom;
}

#pagelink .list .item a::before {
	content: "";
	width: 6px;
	height: 24px;
	border-left: 1px solid #000;
	border-bottom: 1px solid #000;
	position: absolute;
	top: -0.2em;
	right: 1em;
	transform: skewY(-45deg);
	transition: .3s ease;
}

@media screen and (min-width: 769px) {
	#pagelink .list .item:nth-child(n + 4) {
		margin-top: 40px;
	}

	#pagelink .list .item a:hover::before {
		transform: skewY(-45deg) translateY(4px);
	}
}

@media screen and (max-width: 768px) {
	#pagelink {
		padding: 18vw 0;
	}

	#pagelink .list {
		max-width: inherit;
	}

	#pagelink .list .item {
		width: 59.6vw;
		margin: 0 auto;
	}

	#pagelink .list .item + .item {
		margin-top: 4.2vw;
	}

	#pagelink .list .item a {
		font-size: 3.2vw;
		padding: 0 2em 1.4em;
		background-size: auto .9vw;
	}

	#pagelink .list .item a::before {
		width: 1.07vw;
		height: 4.8vw;
		top: -0.3em;
	}
}

/* faq_block
--------------------------------*/
.faq_block {
	padding: 0 0 120px;
}

.faq_block .ttl {
	font-size: 2.7rem;
	letter-spacing: 0.1em;
	margin-bottom: .5em;
}

.faq_block .inner {
	width: 996px;
	margin-left: auto;
}
.faq_block .faq_box{
	
	border-bottom: 1px solid #000;
}
.faq_block .faq_box + .faq_box {
	margin-top: 20px;
}

.faq_block .faq_box .q_txt {
	position: relative;
	font-weight: 500;
	font-size: 1.8rem;
	line-height: 1.9;
	letter-spacing: 0.1em;
	padding: 15px 44px 15px 18px;
	border-bottom: 2px solid #000;
	cursor: pointer;
}


.faq_block .faq_box .acdbtn .ico {
	width: 17px;
	height: 17px;
	position: absolute;
	top: 50%;
	right: 14px;
	margin-top: -8px;

}

.faq_block .faq_box .acdbtn .ico::before,
.faq_block .faq_box .acdbtn .ico::after {
	content: '';
	position: absolute;
	left: 0;
	top: 8px;
	background: #000;
	width: 100%;
	height: 1px;
	transition: .3s ease;
}

.faq_block .faq_box .acdbtn .ico::before {
	transform: rotate(90deg);
}

.faq_block .faq_box .acdbtn.open .ico::before {
	transform: rotate(45deg);
}

.faq_block .faq_box .acdbtn.open .ico::after {
	transform: rotate(-45deg);
}

.faq_block .faq_box .acdcnt {
	display: none;
}

.faq_block .faq_box .a_txt {
	position: relative;
	letter-spacing: 0.08em;
	padding: 18px 0 30px 18px;
}

#allergy {
	display: block;
    padding-bottom: 60px;
    margin-top: -60px;
}

@media screen and (max-width: 768px) {
	.faq_block {
		padding: 0 0 18vw;
	}

	.faq_block .ttl {
		font-size: 4.8vw;
	}

	.faq_block .inner {
		width: 100%;
	}

	.faq_block .faq_box + .faq_box {
		margin-top: 4vw;
	}

	.faq_block .faq_box .q_txt {
		font-size: 3.47vw;
		padding: 2.4vw 8vw 2.4vw 0;
	}

	.faq_block .faq_box .acdbtn .ico {
		width: 2.8vw;
		height: 2.8vw;
		right: 2.6vw;
		margin-top: -1.4vw;

	}

	.faq_block .faq_box .acdbtn .ico::before,
	.faq_block .faq_box .acdbtn .ico::after {
		top: calc((2.8vw - 1px) / 2);
	}


	.faq_block .faq_box .a_txt {
		padding: 2.8vw 0 4vw;
	}

	#allergy {
		padding-bottom: 10vw;
		margin-top: -10vw;
	}
}