/*=====================================================
	TOP
====================================================*/
.fs-body-top {
	background: #333F48;
}
.fs-body-top p {
	margin: 0;
	padding: 0;
}
.fs-body-top a:hover {
	text-decoration: none;
}
ul li:marker {
	display: none;
}
.top {
	position: relative;
    padding-bottom: 31%;
}
.top__img {
	width: 57.8%;
	position: absolute;
    right: 0;
}
.top__img img {
	width: 100%;
}
.h2 {
	font-family: 'Josefin Sans', 'Noto Sans JP', 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', Meiryo, sans-serif;
	font-size: 48px;
	color: #FFF;
	text-align: center;
    line-height: 1.6;
    letter-spacing: 4px;
}
.line-up {
	margin-bottom: 100px;
}
.line-up__list {
	display: flex;
	justify-content: space-between;
	padding: 0;
}
.line-up__list li {
	width: calc((100% - 80px) / 2);
	margin: 0 20px;
	position: relative;
}
.line-up__list-tag {
	color: #FFF;
    width: 89px;
    height: 89px;
    font-size: 20px;
    padding: 20px!important;
    background: linear-gradient(0deg, #111111, #333F48);
	background: -moz-linear-gradient(90deg, rgba(17,17,17,1) 0%, rgba(51,63,72,1) 100%);
	background: -webkit-linear-gradient(90deg, rgba(17,17,17,1) 0%, rgba(51,63,72,1) 100%);
    text-align: center;
    position: absolute;
    top: -44.5px;
    left: 20px;
	display: flex;
    justify-content: center;
    align-items: center;
}
.line-up__list-txt {
    color: #FFF;
    position: absolute;
    bottom: 7%;
    left: 20px;
    font-size: 18px;
	padding-left: 40px!important;
	line-height: 1.4;
}
.line-up__list li:first-child .line-up__list-txt {
	background: rgba(50,62,70,0.9);
}
.line-up__list-txt:before {
    display: inline-block;
    content: "";
    width: 21px;
    height: 16px;
    background: url(https://vixion.itembox.design/item/img/icon_arrow.png)no-repeat center center/contain;
    position: absolute;
    top: 7px;
    left: 10px;
}
/*.line-up__list-txt:after {
    display: inline-block;
    content: "";
    width: 10px;
    height: 10px;
    border-top: 1px solid #FFF;
    border-right: 1px solid #FFF;
    transform: rotate(45deg);
    margin-right: 10px;
    position: absolute;
    top: 10px;
    left: 2%;
}*/
.news {
	margin-bottom: 100px;
}
.news dl {
	width: 90%;
	overflow: hidden;
	margin: 0 auto;
}
.news dt, .news dd a {
	color: #FFF;
	font-size: 16px;
}
.news dt, .news dd {
	margin-bottom: 25px;
}
.news dt {
	width: 14%;
	float: left;
}
.news dd a {
	display: block;
	overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.contact__inner,
.contact__tel {
	width: calc(100% - 40px);
	margin: 0 auto;
}
.contact__inner {
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
	padding: 0;
}
.contact__inner li {
	width: calc((100% - 40px) / 3);
	position: relative;
	background: #333F48;
}
.contact__inner li:before,
.contact__tel:before {
	display: block;
	content: "";
	width: calc(100% + 10px);
	height: calc(100% + 10px);
	background: url(https://vixion.itembox.design/item/img/dot_bg.jpg)repeat center center/auto;
	position: absolute;
	top: -5px;
	left: -5px;
	z-index: -1;
}
.contact__inner li a {
	display: flex;
	height: 97px;
	justify-content: center;
	align-items: center;
	color: #FFF;
	position: relative;
	transition: 0.2s;
	font-size: 16px;
}
.contact__inner li a:hover {
	color: #FFFF00;
}
.contact__inner li span:after {
    display: inline-block;
	content: "";
    width: 8px;
    height: 8px;
    border-top: 1px solid #FFF;
    border-right: 1px solid #FFF;
    transform: rotate(45deg);
    margin-right: 10px;
}
.contact__inner li span:before {
    display: inline-block;
    content: "";
    width: 8px;
    height: 8px;
    border-top: 1px solid #FFF;
    border-right: 1px solid #FFF;
    transform: rotate(45deg);
}
.contact__inner li a:hover span:after,
.contact__inner li a:hover span:before {
	border-top: 1px solid #FFFF00;
    border-right: 1px solid #FFFF00;
}
.contact__tel {
	height: 115px;
	display: flex;
	position: relative;
	color: #FFF;
	align-items: center;
	justify-content: space-between;
	background: #333F48;
}
.contact__tel-title {
	width: 35%;
	text-align: center;
	font-size: 23px;
	position: relative;
}
.contact__tel-title:after {
	display: inline-block;
	content: "";
	width: 1px;
	height: 62px;
	background: #FFF;
	position: absolute;
	right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}
.contact__tel-txt {
	width: 65%;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
}
.contact__tel-txt a {
	font-size: 47px;
	font-weight: bold;
	color: #FFF;
	font-family: 'future', 'Noto Sans JP', 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', Meiryo, sans-serif;
}
.contact__tel-txt a:before {
	display: inline-block;
	content: "";
	width: 52px;
	height: 41px;
	background: url(https://vixion.itembox.design/item/img/icon_tel.svg)no-repeat center center/contain;
	margin-right: 5px;
}
.contact__tel-txt p {
	font-size: 16px;
}

@media (min-width:768px) {
	.logo {
		position: absolute;
		top: 120px;
		left: 15px;
		width: 36.2%;
	}
	.logo a {
		background: url(https://vixion.itembox.design/item/img/logo.png)no-repeat center center/contain;
		display: block;
		width: 100%;
		padding-bottom: 35%;
	}
	a[href*="tel:"] {
		pointer-events: none;
		cursor: default;
	}
}

@media (max-width:767px) {
	.top {
		padding-bottom: 45%;
	}
	.top__img {
		width: 90%;
		left: 0;
		right: 0;
		margin: auto!important;
		top: 10%;
	}
	.h2 {
		font-size: 35px;
	}
	.line-up__list {
		display: block;
		padding: 0 20px;
	}
	.line-up__list li {
		width: 100%;
   		margin: 0 0 50px 0;
	}
	.line-up__list-tag {
		width: 53px;
		height: 53px;
		padding: 0!important;
		font-size: 14px;
		top: -20px;
	}
	.line-up__list-thumb img {
		width: 100%;
	}
	.line-up__list-txt {
		font-size: 16px;
		padding-left: 4%;
	}
	.line-up__list-txt:before {
		top: 4px;
    	left: 15px;
		width: 16px;
	}
	/*.line-up__list-txt:after {
		left: 5px;
		top: 6px;
	}*/
	.line-up__list-txt span {
		font-size: 12px;
	}
	.news dl {
		margin: 0;
		width: 100%;
		position: relative;
	}
	.news dt {
		width: 30%;
	}
	.news dd {
		width: 100%;
		padding-left: 30%;
		margin-left: 0;
		/*border-bottom: 1px solid #FFF;*/
		padding-bottom: 20px;
	}
	.news dd a {
		display: -webkit-box;
		overflow: hidden;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
		white-space: normal;
	}
	.contact__inner {
		width: 100%;
	}
	.contact__inner li span:before, 
	.contact__inner li span:after {
		display: none!important;
	}
	.contact__inner li a {
		font-size: 12px;
	}
	.contact__inner li a:after {
		display: block;
		content: "";
		width: 15px;
		height: 12px;
		background: url(https://vixion.itembox.design/item/img/sp_icon_arrow.png)no-repeat left center/auto;
		margin-left: 5px;
	}
	.contact__inner li a:hover:after {
		background: url(https://vixion.itembox.design/item/img/sp_icon_arrow.png)no-repeat right center/auto;
	}
	.contact__inner li:first-child a:after {
		position: absolute;
		right: 5px;
		bottom: 34%;
	}
	.contact__inner li:nth-child(2) a:after {
		position: absolute;
		right: 3px;
		bottom: 34%;
	}
	.contact__tel {
		width: 100%;
		display: block;
	}
	.contact__tel-title {
		width: 90%;
		font-size: 16px;
		margin: 0 auto!important;
		border-bottom: 1px solid #FFF;
		padding: 10px 0!important;
	}
	.contact__tel-title:after {
		display: none;
	}
	.contact__tel-txt {
		width: 100%;
		height: auto;
		padding: 20px 0;
	}
	.contact__tel-txt a {
		font-size: 25px;
		white-space: nowrap;
	}
	.contact__tel-txt a:before {
		width: 25px;
    	height: 20px;
	}
	.contact__tel-txt p {
		font-size: 12px;
	}
}
