@charset "utf-8";

button {
	color: #333;
}

/* color-effect */
html {
	scroll-behavior: smooth;
}

.wrap {
	overflow: hidden;
}

.img-wrap {
	text-align: center;
	opacity: 0.5;
}


.cover {
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 0;
}

/* contents */
.main-feature {
    overflow: hidden;
	position: relative;
	max-height: 900px;
	margin-top: 100px;
	margin-bottom: 100px;
}
.main-feature .feature-wrap {
	height: 100%;
}

.main-feature:last-child {
	margin-bottom: 0;
}

.main-feature .back-content {
	position: relative;
	width: 1010px;
	height: 100%;
	/* height: 473px; */
	overflow: hidden;
	margin: -3px auto;
	padding: 2px 0;
}

.main-feature .back-content a {
	display: block;
	width: 100%;
	height: 100%;
}

.main-feature .back-content img {
	display: block;
	object-fit: cover;
	object-position: center;
	width: 100%;
	height: 100%;
}

.main-feature .back-content video {
	position: absolute;
	top: 50%;
	left: 50%;
	min-width: 100%;
	min-height: 100%;
	width: auto;
	height: auto;
	transform: translate(-50%, -50%);
}

.main-feature .inner {
	position: absolute;
	top: 0;
	left: 50%;
	margin: 50px 0 0;
	transform: translateX(-50%);
}

.main-feature .main-title {
	position: relative;
	top: -13px;
	width: 100%;
	/*width:1010px;*/
	font-size: 64px;
	font-weight: 500;
	letter-spacing: -0.03em;
	line-height: 1.1;
}

.main-feature .main-title.light {
	color: #fff;
}

.main-feature .main-title.dark {
	color: #333;
}

.main-feature .main-title .keyword {
	transition: color .5s cubic-bezier(1, 0, 0, 1);
	/* transition:color .5s; */
}

.main-feature .info {
	position: absolute;
	/* top: -75px; */
	top: -80px;
	right: 45px;
	width: 130px;
	text-align: center;
	line-height: 1.1;
}
.main-feature.full .info,
.main-feature.only-txt .info {
	top: 2px;
}

.main-feature .info .num {
	display: block;
	font-size: 70px;
	font-weight: 100;
}

.main-feature .info .date {
	display: block;
	font-size: 17px;
	font-weight: 600;
}

.main-feature .info.dark {
	color: #333;
}

.main-feature .info.light {
	color: #fff;
}

.main-feature.full {
	margin: 0;
	/* height: 900px; */
	color: #fff;
}

.main-feature.full .feature-wrap {
	height: 100%;
	overflow: hidden;
}

.main-feature.full .back-content {
	top: 0;
	left: 0;
	width: 102%;
    height: 102%;
	/* height: 900px; */
	overflow: hidden;
	transition: transform .2s linear;
}

.main-feature.full .back-content:hover {
	transform: scale(1.05) !important;
}

.main-feature.full .back-content img {
	position: relative;
	/* height: auto; */
	transform: translateX(0);
	transition: transform .2s linear;
}

.main-feature.small-txt .main-title {
	top: -6px;
	font-size: 29px;
	font-weight: 600;
	line-height: 1.2;
}

.main-feature.small-txt .keyword:after {
	top: -4px;
	height: 30px;
}

.main-feature.small-txt .main-title a:hover .keyword:after {
	left: 0.2%;
	width: 100%;
}

.ie11 .main-feature.small-txt .main-title a:hover .keyword:after,
.edge .main-feature.small-txt .main-title a:hover .keyword:after {
	left: 0;
	width: 100%;
}

.main-feature.only-txt .inner {
	position: relative;
	/*left:0; transform:translateX(0);*/
}

.main-feature.only-txt .main-title a {
	color: #999;
}

.main-feature.only-txt .main-title .keyword {
	color: #333;
}

.category+.main-feature {
	margin-top: 0;
}

.main-feature .main-title a:hover .keyword:after {
	left: 0.2%;
	width: 100%;
}

.ie11 .main-feature .main-title a:hover .keyword:after,
.edge .main-feature .main-title a:hover .keyword:after {
	left: 0;
	width: 100%;
}

.main-feature.is-ajax {
	opacity: 0;
	transform: translateY(50px);
	will-change: opacity, transform;
}

.main-feature.fadeInUp {
	animation: fadeInUp 1.5s cubic-bezier(0.25, 1, 0.3, 1) forwards;
}

@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translateY(50px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}


/* renewal effect */
.main-feature .keyword {
	position: relative;
	display: inline-block;
	overflow: hidden;
	vertical-align: bottom;
	width: 100%;
}

.main-feature .keyword i {
	position: relative;
	z-index: 2;
	font-style: normal;
}

.main-feature .main-title a:hover .keyword {
	color: #333;
}

.main-feature .keyword:after {
	position: absolute;
	top: -4px;
	right: 0;
	width: 0;
	height: 60px;
	content: '';
	background: #ff0;
	transition: width .5s cubic-bezier(1, 0, 0, 1);
}

.main-feature .keyword i {
	position: relative;
	z-index: 2;
	font-style: normal;
}

.main-feature .main-title a:hover .keyword:after {
	left: 0.2%;
	width: 100%;
}

.ie11 .main-feature .main-title a:hover .keyword:after,
.edge .main-feature .main-title a:hover .keyword:after {
	left: 0;
	width: 100%;
}

/* no keyword effect */
.main-feature .main-title a {
	background-repeat: no-repeat;
	background-size: 0% 100%;
	transition: background-size 0.8s;
	background-image: linear-gradient(transparent 24%, #ff0 24%, #ff0 73%, transparent 73%);
}

.main-feature .main-title a.hover {
	color: #333;
	background-size: 100% 100%;
}

/* ScrollBar */

/* theme "light-3", "dark-3" */

.mCSB_scrollTools {
	opacity: 1;
}

.mCS-dark-3.mCSB_scrollTools .mCSB_draggerRail {
	right: 0;
	width: 7px;
	background-color: #000;
	background-color: rgba(0, 0, 0, 0.1);
}

.mCS-dark-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
	width: 7px;
}

.mCS-light-3.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-3.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-light-3.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-dark-3.mCSB_scrollTools_horizontal .mCSB_draggerRail {
	width: 100%;
	height: 7px;
	margin: 5px 0;
}

/* theme "dark-3" */

.mCS-dark-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
	background-color: #ff0;
	background-color: rgba(255, 255, 0, 1);
}

.mCS-dark-3.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
	background-color: rgba(255, 255, 0, 1);
	width: 18px;
}

.mCS-dark-3.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-dark-3.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
	background-color: #ff0;
	background-color: rgba(255, 255, 0, 1);
}

.mCS-dark-3.mCSB_scrollTools .mCSB_draggerRail {
	background-color: rgba(0, 0, 0, 0.1);
}

.mCS-dark-3.mCSB_scrollTools:hover .mCSB_draggerRail,
.mCS-dark-3.mCSB_scrollTools:hover .mCSB_dragger_bar {
	width: 18px;
}

.mCSB_scrollTools .mCSB_draggerContainer {
	left: auto;
	right: 0;
}

.mCSB_scrollTools .mCSB_draggerContainer .mCSB_draggerRail,
.mCSB_scrollTools .mCSB_draggerContainer .mCSB_dragger_bar,
.mCS-dark-3.mCSB_scrollTools .mCSB_dragger .mCSB_draggerRail,
.mCS-dark-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
	transition: all 0.2s;
}

.mCSB_inside>.mCSB_container {
	margin-right: 0;
}

/* error */
.error {
	height: 100vh;
	box-sizing: border-box;
	margin-bottom: -112px;
}

.error article {
	position: absolute;
	top: 40%;
	left: 50%;
	text-align: center;
	transform: translate(-50%, -50%);
}

.error h1 {
	font-size: 120px;
	font-family: 'FuturaBK', 'NotoSansDL';
}

.error p {
	font-size: 60px;
}

/* layer */

.layer {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
	display: none;
	width: 100%;
	height: 100%;
	overflow-y: auto;
	background: #fff;
}

.layer-inner {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	padding: 150px 0;
	transform: translate(-50%, -50%);
	text-align: center;
}

.layer-title {
	font-size: 80px;
	font-weight: normal;
}

.layer-body {
	padding: 20px 0;
}

.layer-footer {
	margin: 0 -10px;
	padding: 5px 10px;
	text-align: right;
	color: #fff;
	background: #000;
}

.layer-footer input {
	margin-top: -2px;
}

.layer .btn-close {
	position: absolute;
	top: 100px;
	right: 66px;
	width: 54px;
	height: 54px;
	overflow: hidden;
	padding: 0;
	text-indent: -9999px;
}

.layer .btn-close:before {
	position: absolute;
	top: 24px;
	left: -7px;
	width: 68px;
	height: 5px;
	content: '';
	background: #000;
	transform: rotate(45deg);
}

.layer .btn-close:after {
	position: absolute;
	top: 24px;
	left: -7px;
	width: 68px;
	height: 5px;
	content: '';
	background: #000;
	transform: rotate(-45deg);
}

.layer .btn-complete {
	display: inline-block;
	width: 230px;
	height: 54px;
	border: 5px solid #000;
	font-size: 17px;
	font-weight: 600;
	transition: all .3s;
	line-height: 54px;
}

.layer .btn-complete:hover {
	background: #000;
	color: #fff;
}

.modal-complete .layer-body {
	text-align: center;
}

/*.modal-complete .btn-complete{display:block; width:70px; height:30px; margin:20px auto 0; text-align:center; line-height:30px; border:3px solid #000; background:#fff; transition:all .3s;}
.modal-complete .btn-complete:hover{color:#fff; background:#000;}*/

@media screen and (max-width:1650px) {
	.main-feature .back-content {
		width: 750px;
		/* height: 352px; */
	}

	.main-feature .inner {
		max-width: 950px;
	}

	.main-feature .main-title {
		width: 750px;
	}

	.main-feature .info {
		right: 15px;
	}
}

/* tablet */
@media screen and (max-width:1200px) {
	.main-feature .back-content {
		width: 550px;
		/* height: 260px; */
	}

	.main-feature .inner {
		max-width: 610px;
	}

	.main-feature .main-title {
		width: 500px;
	}

	.main-feature .info {
		right: -45px;
	}

	.main-feature.titleline .keyword:after {
		background: none;
		-webkit-transition: none;
		transition: none;
	}

	.main-feature.titleline .main-title a:hover .keyword {
		color: inherit;
	}
}

@media screen and (max-width:1023px) {
	.main-feature {
		margin: 0;
	}

	.main-feature.only-txt {
		/* margin: 15px 0; */
	}
    
    #article-list > .main-feature.only-txt {
        padding: 120px 0 0;
    }
    #article-list > .main-feature.only-txt .inner {
        margin: 0;
    }

	.main-feature:last-child {
		margin-bottom: 0 !important;
	}

	.main-feature .back-content {
		width: 100%;
		/* height: 450px; */
	}

	.main-feature .back-content img {
		position: absolute;
		left: 50%;
		width: auto;
		/* height: 450px; */
		transform: translateX(-50%);
	}

	.main-feature .inner {
		top: auto;
		bottom: 0;
		left: 0;
		box-sizing: border-box;
		/* padding: 77px 25px 30px; */
		padding: 28px 25px 30px;
		transform: translateX(0);
	}

	.main-feature.small-txt .main-title,
	.main-feature .main-title {
		top: 0;
		width: 100%;
		font-size: 22px;
		font-weight: 600;
		line-height: 1.2;
	}

	.main-feature .keyword:after,
	.main-feature.small-txt .keyword:after {
		height: 24px;
	}

	.main-feature .info {
		position: absolute;
		top: 0;
		right: auto;
		width: 130px;
		text-align: left;
	}

	.main-feature .info .num {
		font-size: 50px;
		line-height: .85;
	}

	.main-feature .info .date {
		font-size: 15px;
		font-weight: 500;
	}

	.main-feature.full .back-content {
		position: absolute;
		top: 0;
		left: 0;
		width: 102%;
		/* max-height: 580px; */
		/* height: 100%; */
		/* height: 580px; */
	}

	.main-feature.full .back-content:hover {
		transform: scale(1) translateX(0) !important;
	}

	.main-feature.full .back-content img {
		position: absolute;
		left: 50%;
		width: auto;
		/* max-height: 580px; */
		transform: translateX(-50%) !important;
	}

	.main-feature.only-txt .inner {
		margin-left: 0;
	}

	.category+.main-feature.only-txt {
		margin-top: 100px;
	}

	#anchor-11 .main-title {
		margin-top: 14px;
	}

	/* color-effect */
	.vhs-filter {
		height: 100%;
	}

	/*.layer{display:block;}*/
	.layer-title {
		padding: 0 21px;
		font-size: 32px;
		font-weight: normal;
	}

	.layer .btn-close {
		top: 50px;
		right: 25px;
		width: 27px;
		height: 27px;
	}

	.layer .btn-close:before {
		top: 13px;
		left: -4px;
		width: 34px;
		height: 2px;
	}

	.layer .btn-close:after {
		top: 13px;
		left: -4px;
		width: 34px;
		height: 2px;
	}

	.layer .btn-complete {
		width: 160px;
		height: 36px;
		border: 3px solid #000;
		font-size: 15px;
		line-height: 36px;
	}

	/* error */
	.error {
		margin-bottom: -70px;
	}

	.error article {
		width: 100%;
	}

	.error h1 {
		font-size: 65px;
	}

	.error p {
		font-size: 32px;
	}
}