/*
----------------------------------------
faq
----------------------------------------
*/

.page-header {
	background: url( ../img/faq/2x/header-bg.png ) center center / cover no-repeat;
}

.search-word {
	padding: 22px 0 40px;
}

.search-word h2 {
	font-size: 3.8rem;
	text-align: center;
	margin-bottom: -38px;
}

.search-word h2 span {
	display: inline-block;
	padding: 0 110px;
	background: url( ../img/common/icn_search@2x.png ) right center / 96px no-repeat;
}

.search-wrap {
	padding: 60px 0;
	border-radius: 5px;
}

.search-wrap .flex .txt {
	width: 74.5%;
}

.search-wrap .flex .txt input[type=text] {
	width: 100%;
	font-size: 2rem;
	letter-spacing: .4px;
	padding: 17px 22px;
}

.search-wrap .flex .txt input[type=text]::-webkit-input-placeholder { /* WebKit, Blink, Edge */
	color: #666;
	font-size: 2rem;
}

.search-wrap .flex .txt input[type=text]:-ms-input-placeholder { /* Internet Explorer 10-11 */
	color: #666;
}

.search-wrap .flex .txt input[type=text]::placeholder{ /* Others */
	color: #666;
}

.faq-menu {
	margin-bottom: 30px;
}

.faq-menu .heading-03 {
	padding: 6px 220px;
	position: relative;
}

.faq-menu .heading-03 .toggle-btn {
	width: 180px;
	color: #1da1f2;
	font-size: 1.6rem;
	text-align: center;
	letter-spacing: .4px;
	line-height: 40px;
	border-radius: 20px;
	background: #fff url( ../img/faq/2x/arrow-open.png ) right 20px center / 14px no-repeat;
	position: absolute;
	top: calc( 50% - 20px );
	right: 30px;
	cursor: pointer;
	transition: all .2s;
}

.faq-menu .heading-03.active .toggle-btn {
	background: #fff url( ../img/faq/2x/arrow-close.png ) right 20px center / 14px no-repeat;
}

.faq-menu-list {
	background: #ebf7ff;
	padding: 30px;
	display: none;
}

.faq-menu-list ul {
	background: #fff;
	border: solid 1px #cadae5;
	padding: 28px 40px;
}

.faq-menu-list li {
	padding: 15px 0 15px 55px;
	position: relative;
}

.faq-menu-list li::before {
	content: 'Q';
	display: inline-block;
	width: 46px;
	height: 46px;
	line-height: 44px;
	text-align: center;
	font-family: 'Lato', sans-serif;
	font-size: 2.1rem;
	font-weight: bold;
	background: #1da1f2;
	color: #fff;
	border-radius: 50%;
	position: absolute;
	top: calc( 50% - 25px );
	left: 0;
}

.faq-menu-list a {
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.6;
	letter-spacing: 1.6px;
	border-bottom: solid 1px #111;
	padding: 3px 0;
}

.faq-menu-list .course {
	font-size: 2rem;
	line-height: 1.6;
	padding: 3px 0;
}

.faq-cont {
	margin: 95px 0 120px;
}

.faq-cont .ttl-01 {
	margin-bottom: -2.8rem;
}

.faq-cont-list {
	background: #ebf7ff;
	padding: 62px 0 80px;
}

.faq-cont-list dt {
	font-size: 2.2rem;
	font-weight: bold;
	line-height: 1.6;
	letter-spacing: 1.5px;
	color: #fff;
	background: #1da1f2;
	padding: 27px 30px 27px 105px;
	border-radius: 5px 5px 0 0;
	position: relative;
}

.faq-cont-list dt::before {
	content: 'Q';
	display: inline-block;
	width: 50px;
	height: 50px;
	line-height: 48px;
	text-align: center;
	font-family: 'Lato', sans-serif;
	font-size: 2.4rem;
	font-weight: bold;
	background: #fff;
	color: #1da1f2;
	border-radius: 50%;
	position: absolute;
	top: calc( 50% - 23px );
	left: 40px;
}

.faq-cont-list dd {
	background: #fff;
	padding: 25px 40px 40px;
	margin-bottom: 30px;
	border: solid 1px #cadae5;
	border-top: none;
	border-radius: 0 0 5px 5px;
}

.faq-cont-list dd h3 {
	font-size: 2.2rem;
	letter-spacing: 1.5px;
	color: #ff9100;
	padding-left: 65px;
	margin-bottom: 25px;
	position: relative;
}

.faq-cont-list dd h3::before {
	content: 'A';
	display: inline-block;
	width: 50px;
	height: 50px;
	line-height: 48px;
	text-align: center;
	font-family: 'Lato', sans-serif;
	font-size: 2.4rem;
	font-weight: bold;
	background: #ff9100;
	color: #fff;
	border-radius: 50%;
	position: absolute;
	top: calc( 50% - 23px );
	left: 0;
}

.faq-cont-list dd p {
	letter-spacing: 1px;
}

.sec {
	padding-bottom: 40px;
}

.faq-cont-list-item-youtube{
	text-align: center;
}
.faq-cont-list-item-image{
	text-align: center;
}
.faq-cont-list-item-link a{
	color: #0000EE;
}
.faq-cont-list-item-link a:hover{
	cursor: pointer;
	background:linear-gradient(transparent 70%, #FFFF00 0%);
}

/*
----------------------------------------
1200
----------------------------------------
*/

@media screen and ( max-width: 1200px ) {

	.faq-menu .heading-03 {
		padding: 6px 220px 6px 30px;
		text-align: left;
	}

}


/*
----------------------------------------
1000
----------------------------------------
*/

@media screen and ( max-width: 1000px ) {

	.search-wrap .flex {
		padding: 0 30px;
	}

	.faq-menu-list {
		padding: 20px;
	}

	.faq-menu-list ul {
		padding: 20px;
	}

	.faq-menu .heading-03 {
		font-size: 2.2rem;
		padding: 6px 160px 6px 30px;
	}

	.faq-menu .heading-03 .toggle-btn {
		width: 150px;
	}

}


/*
----------------------------------------
768
----------------------------------------
*/

@media screen and ( max-width: 768px ) {

	.search-wrap {
		padding: 35px 0 20px;
	}

	.search-word {
		padding: 20px 0 30px;
	}

	.search-word h2 {
		font-size: 2.4rem;
		margin-bottom: -24px;
	}

	.search-word h2 span {
		padding: 0 55px 0 0;
		background: url( ../img/common/icn_search@2x.png ) right center / 48px no-repeat;
	}

	.search-wrap .flex {
		padding: 0 15px;
	}

	.search-wrap .flex .txt {
		width: 100%;
		margin-bottom: 15px;
	}

	.search-wrap .flex .btn {
		width: 100%;
		text-align: center;
	}

	.search-wrap .flex .txt input[type=text] {
		font-size: 1.8rem;
	}

	.search-wrap .flex .txt input[type=text]::-webkit-input-placeholder {
		font-size: 1.8rem;
	}

	.faq-menu .heading-03 {
		font-size: 1.8rem;
		padding: 15px 45px 15px 15px;
		letter-spacing: 0;
	}

	.faq-menu .heading-03 .toggle-btn {
		width: 28px;
		height: 28px;
		overflow: hidden;
		text-indent: -9999px;
		background: #fff url( ../img/faq/2x/arrow-open.png ) center 11px / 14px no-repeat;
		top: calc( 50% - 14px );
		right: 10px;
	}

	.faq-menu .heading-03.active .toggle-btn {
		background: #fff url( ../img/faq/2x/arrow-close.png ) center bottom 11px / 14px no-repeat;
	}

	.faq-menu {
		margin-bottom: 20px;
	}

	.faq-menu-list {
		padding: 20px 15px;
	}

	.faq-menu-list ul {
		padding: 10px 15px;
	}

	.faq-menu-list li {
		padding: 10px 0 10px 40px;
	}

	.faq-menu-list li::before {
		width: 32px;
		height: 32px;
		line-height: 30px;
		font-size: 1.7rem;
		top: 11px;
	}

	.faq-menu-list a,
	.faq-menu-list .course {
		font-size: 1.6rem;
		letter-spacing: 0;
	}

	.faq-cont .ttl-01 {
		margin-bottom: -1.2rem;
	}

	.faq-cont .ttl-01 h2 {
		font-size: 2.4rem;
	}

	.faq-cont {
		margin: 40px 0;
	}

	.faq-cont-list {
		padding: 45px 0 20px;
	}

	.faq-cont-list dt {
		font-size: 1.7rem;
		letter-spacing: 0;
		padding: 15px 15px 15px 57px;
	}

	.faq-cont-list dt::before {
		width: 32px;
		height: 32px;
		line-height: 30px;
		font-size: 1.7rem;
		top: 12.5px;
		left: 15px;
	}

	.faq-cont-list dd {
		padding: 20px 15px 25px;
	}

	.faq-cont-list dd h3 {
		font-size: 1.7rem;
		letter-spacing: 0;
		line-height: 1.6;
		padding: 2px 0 2px 42px;
		margin-bottom: 10px;
	}

	.faq-cont-list dd h3::before {
		width: 32px;
		height: 32px;
		line-height: 30px;
		font-size: 1.7rem;
		top: 0;
		left: 0;
	}

	.faq-cont-list dd p {
		font-size: 1.5rem;
		letter-spacing: 0;
	}

}


/*
----------------------------------------
hover
----------------------------------------
*/

@media screen and ( min-width: 769px ) {

	.faq-menu .heading-03 .toggle-btn:hover {
		background: #ebf7ff url( ../img/faq/2x/arrow-open.png ) right 20px center / 14px no-repeat;
	}

	.faq-menu .heading-03.active .toggle-btn:hover {
		background: #ebf7ff url( ../img/faq/2x/arrow-close.png ) right 20px center / 14px no-repeat;
	}

}
