@charset "UTF-8";

/*---------------------------------------
	sp/pc
---------------------------------------*/
.sp{display:none!important}.sp-tab{display:none!important}.tab{display:none!important}.tab-pc{display:block!important}.pc{display:block!important}@media(max-width:1039px){.sp{display:none!important}.sp-tab{display:block!important}.tab{display:block!important}.tab-pc{display:block!important}.pc{display:none!important}}@media(max-width:767px){.sp{display:block!important}.sp-tab{display:block!important}.tab{display:none!important}.tab-pc{display:none!important}.pc{display:none!important}}

/*---------------------------------------
	flex
---------------------------------------*/
.dis_flex{display:flex}.flex_direction_row_r{flex-direction:row-reverse}.flex_direction_col{flex-direction:column}.flex_direction_col_r{flex-direction:column-reverse}.flex_wrap_wrap{flex-wrap:wrap}.flex_wrap_wrap_r{flex-wrap:wrap-reverse}.justify_content_flexend{justify-content:flex-end}.justify_content_center{justify-content:center}.justify_content_between{justify-content:space-between}.justify_content_around{justify-content:space-around}.align_items_flexstart{align-items:flex-start}.align_items_flexend{align-items:flex-end}.align_items_center{align-items:center}.align_items_baseLine{align-items:baseline}@media (max-width:1039px){.flex_direction_row_tab{flex-direction:row}.flex_direction_row_r_tab{flex-direction:row-reverse}.flex_direction_col_tab{flex-direction:column}.flex_direction_col_r_tab{flex-direction:column-reverse}.flex_wrap_nowrap_tab{flex-wrap:nowrap}.flex_wrap_wrap_tab{flex-wrap:wrap}.flex_wrap_wrap_r_tab{flex-wrap:wrap-reverse}.justify_content_flexstart_tab{justify-content:flex-start}.justify_content_flexend_tab{justify-content:flex-end}.justify_content_center_tab{justify-content:center}.justify_content_between_tab{justify-content:space-between}.justify_content_around_tab{justify-content:space-around}.align_items_stretch_tab{align-items:stretch}.align_items_flexstart_tab{align-items:flex-start}.align_items_flexend_tab{align-items:flex-end}.align_items_center_tab{align-items:center}.align_items_baseLine_tab{align-items:baseline}}@media (max-width:767px){.flex_direction_row_sp{flex-direction:row}.flex_direction_row_r_sp{flex-direction:row-reverse}.flex_direction_col_sp{flex-direction:column}.flex_direction_col_r_sp{flex-direction:column-reverse}.flex_wrap_nowrap_sp{flex-wrap:nowrap}.flex_wrap_wrap_sp{flex-wrap:wrap}.flex_wrap_wrap_r_sp{flex-wrap:wrap-reverse}.justify_content_flexstart_sp{justify-content:flex-start}.justify_content_flexend_sp{justify-content:flex-end}.justify_content_center_sp{justify-content:center}.justify_content_between_sp{justify-content:space-between}.justify_content_around_sp{justify-content:space-around}.align_items_stretch_sp{align-items:stretch}.align_items_flexstart_sp{align-items:flex-start}.align_items_flexend_sp{align-items:flex-end}.align_items_center_sp{align-items:center}.align_items_baseLine_sp{align-items:baseline}}

/*---------------------------------------
	container, sec, inner
---------------------------------------*/
#container {
	overflow: hidden;
}
.main {
	position: relative;
	z-index: 0;
}
.main .sec {
	position: relative;
	z-index: -2;
}
.main .inner {
	position: relative;
	width: 1440px;
	margin: 0 auto;
	z-index: 0;
}
@media (max-width:1439px){
	.main .inner {
		width: 1040px;
	}
}
@media (max-width:1039px){
	.main .inner {
		width: 100%;
		padding: 0 3.1em;
	}
}
@media (max-width:767px){
	.main .inner {
		padding: 0 2em;
	}
}

/*---------------------------------------
	ttl
---------------------------------------*/
.sec_ttl {
	width: 360px;
	margin: 0 auto;
}
.sec_ttl_img {
	position: relative;
	display: block;
	text-align: center;
	height: 0;
	padding-bottom: 16%;
}
.sec_ttl_img::after {
	content: '';
	position: absolute;
	display: block;
	background: var(--base-col-g);
	width: 100%;
	height: 11px;
	bottom: -6px;
	left: 0;
	z-index: -1;
}
.sec_sub_ttl {
	display: block;
	color: var(--base-col-g);
	font-size: 1.8rem;
	line-height: 1;
	text-align: center;
	padding-top: 0.8em;
}
@media (max-width:767px){
	.sec_ttl {
		width: 180px;
	}
	.sec_ttl_img::after {
		height: 5.5px;
		bottom: -3px;
	}
	.sec_sub_ttl {
		font-size: 1.2rem;
		padding-top: 0.8em;
	}
}

/*---------------------------------------
	animation
---------------------------------------*/
.fade-up {
	opacity: 0;
	transform: translate(0, 20px);
	transition: transform 0.5s 0.5s, opacity 0.5s 0.5s;
}
.fade-right {
	transform: translate3d(-100%, 0, 0);
	transition: transform 1s 0s;
}
.fade-left {
	transform: translate3d(100%, 0, 0);
	transition: transform 1s 0s;
}
.is-fade {
	opacity: 1.0;
	transform: translate(0, 0);
	transform: translate3d(0, 0, 0);
}
