@charset "utf-8";
/* CSS Document */
main {
	padding-bottom: 0;
}
#add_banner_contents {
	padding-top: 20px;
}
/* トップページのスクロール */
.scroller_section {
	width: 100%;
	height: 600px;
	overflow: hidden;
	position: relative;
	margin-bottom: 30px;
}
.loopSliderWrap {
    top: 0;
    left: 0;
    height: 600px;
    overflow: hidden;
    position: absolute;
	display: flex;
}
.simply-scroll {
	margin-bottom: 50px;
	display: flex;
}
.simply-scroll li {
	min-width: 600px;
	width: 600px;
	height: 600px;
}
.scroller_box li{
	position: relative;
	overflow: hidden;
}
.scroller_box li img {
	object-fit: cover;
	width: 100%;
	height: 100%
}
_:lang(x)::-ms-backdrop, .scroller_box li img {
	font-family: 'object-fit: cover;';
}
.simply-scroll-container { 
	position: relative;
}
.simply-scroll-clip { 
	position: relative;
	overflow: hidden;
}
.simply-scroll { 
	overflow: hidden;
	margin: 0;
	padding: 0;
	list-style: none;
}
.simply-scroll li {
	margin-right: 24px;
	list-style: none;
}	
.simply-scroll li.item_1 img {
	border: none;
	display: block;
	width: 100%;
}
.simply-scroll li.item_4 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
}
.simply-scroll li.item_4 a {
	width: 48%;
	height: 48%;
	margin-bottom: 4%;
}
.simply-scroll li.item_4 img {
	border: none;
	display: block;
	width: 100%;
}
.simply-scroll { 
	width: 100%;
	height: 600px;
}
.simply-scroll .simply-scroll-list li {
	float: left;
	height: 200px;
}
.simply-scroll-list li a {
	transition: all 300ms 0s ease;
	display: block;
}
.simply-scroll-list li a:hover {
	opacity: 0.6;
}

/* バナーのホバーした時の表示 */
.simply-scroll li a {
	position: relative;
	display: block;
	color: #000000;
}
.simply-scroll li a .hover_box {
	position: absolute;
	left: 7.25%;
	top: 7.25%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	background-color: rgba(255,255,255,0.90);
	width: 85%;
	height: 85%;
	transform:scale(0, 0);
	transition: all 300ms 0s ease;
	opacity: 0;
	padding-top: 80%;
}
.simply-scroll li a:hover .hover_box {
	padding-top: 0;
	transform:scale(0.9999999, 0.9999999);
	opacity: 1;
}
.simply-scroll li a .hover_box .type {
	background-size: 30px;
	background-position: center top;
	background-repeat: no-repeat;
	padding-top: 33px;
	padding-left: 0;
	margin-bottom: 5px;
}
.simply-scroll li a .hover_box .type i {
	border-bottom: none;
	display: inline-block;
	margin: auto;
	font-style: normal;
}
.simply-scroll li a .hover_box .banner_title {
	font-weight: bold;
	padding: 0 12px;
}



@media screen and (max-width: 760px) {
	.scroller_section {
		height: 74vw;
		margin-bottom: 5vw;
	}
	.loopSliderWrap {
		height: 70vw;
	}
	.simply-scroll li {
		width: 70vw;
		min-width: 70vw;
		height: 70vw;
	}
	.simply-scroll-list li {
		margin-right: 2vw;
	}
	.simply-scroll .simply-scroll-list li {
		float: left;
		height: 20vw;
	}
	.simply-scroll {
		margin-right: 2vw;
		height: 70vw;
	    margin-bottom: 5vw;
	}
	
	/* バナーのホバーした時の表示 */
	.simply-scroll li a .hover_box .type {
		background-size: 5vw;
		padding-top: 5.5vw;
		margin-bottom: 0.5vw;
	}
	.simply-scroll li a .hover_box .type i {
		font-size: 2.5vw;
	}
	.simply-scroll li a .hover_box .banner_title {
		padding: 0 1vw;
		font-size: 2vw;
	}
	
	.simply-scroll li.item_1 a .hover_box .type {
		background-size: 5vw;
		padding-top: 5.5vw;
		margin-bottom: 0.5vw;
	}
	.simply-scroll li.item_1 a .hover_box .type i {
		font-size: 3vw;
	}
	.simply-scroll li.item_1 a .hover_box .banner_title {
		padding: 0 1vw;
		font-size: 3vw;
	}
	
	
}


/* ------------------------------------------------------------ */
/* 新着の情報(バナーリスト) */
/* ------------------------------------------------------------ */
.contents_list {
	padding-bottom: 100px;
}
.contents_list ul {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	padding-bottom: 40px;
}
.contents_list ul li {
	width: 30%;
	margin-right: 5%;
	margin-bottom: 50px;
}
.contents_list ul li:nth-child(3n) {
	margin-right: 0%;
}
.contents_list ul li a {
	text-decoration: none;
	color: #000000;
}
.contents_list ul li figure {
	margin-bottom: 25px;
	position: relative;
}
.contents_list ul li figure img {
	max-width: 100%;
	display: block;
}

/* バナーのホバーした時の表示 */
.contents_list ul li figure .hover_box {
	position: absolute;
	left: 7.25%;
	top: 7.25%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	background-color: rgba(255,255,255,0.90);
	width: 85%;
	height: 85%;
	transform:scale(0, 0);
	transition: all 300ms 0ms ease;
	opacity: 0;
	padding-top: 80%;
}
.contents_list ul li a:hover figure .hover_box {
	padding-top: 0%;
	transform:scale(1, 1);
	opacity: 1;
}
.contents_list ul li figure .hover_box .type {
	background-size: 30px;
	background-position: center top;
	background-repeat: no-repeat;
	padding-top: 33px;
	padding-left: 0;
	margin-bottom: 5px;
}
.contents_list ul li figure .hover_box .type i {
	border-bottom: none;
	display: inline-block;
	margin: auto;
}
.contents_list ul li figure .hover_box .banner_title {
	font-weight: bold;
	padding: 0 12px;
}


/* バナー下のテキスト表示 */
.contents_list ul li dl dt{
	font-size: 17.5px;
	color: #444444;
	font-weight: bold;
	line-height: 1.2;
	height: 45px;
}
.contents_list ul li dl dd {
	color: #000000;
	height: 70px;
}
.contents_list ul li .item_foot {
	display: flex;
	justify-content: space-between;
	align-items: center;
    margin-top: 10px;
}
.contents_list ul li .type {
	font-size: 16px;
	font-weight: bold;
	background-repeat: no-repeat;
	background-position: bottom left;
	padding-left: 35px;
	background-size: contain;
}
.contents_list ul li .type i {
	text-decoration: none;
	font-style: normal;
	border-bottom: dotted 2px;
	padding-bottom: 4px;
	display: inline-block;
	line-height: 1;
}
.contents_list ul li .type.cate_1 { color: #f0982c; background-image: url(../../img/global/c_icon_1.png); }
.contents_list ul li .type.cate_2 { color: #2dabc4; background-image: url(../../img/global/c_icon_2.png); }
.contents_list ul li .type.cate_3 { color: #f387dd; background-image: url(../../img/global/c_icon_3.png); }
.contents_list ul li .date {
	font-size: 14px;
}
.add_contents_list {
	border: none;
	background-image: url(../../img/global/bg_1.png);
	display: block;
	width: 100%;
	padding: 20px 0;
	cursor: pointer;
	font-weight: bold;
	font-size: 16px;
	transition: all 300ms 0s ease;
	outline: none;
}
.add_contents_list i {
	display: block;
	font-size: 30px;
	line-height: 1;
}
.add_contents_list:hover {
	color: #ffa010;
}

.loding_add_contents {
	border: none;
	background-image: url(../../img/global/bg_1.png);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 20px 0;
	cursor: pointer;
	font-weight: bold;
	font-size: 16px;
	outline: none;
}
@media screen and (max-width: 1060px) {
	.contents_list ul li dl dt{
		font-size: 1.8vw;
	}
	.contents_list ul li dl dd {
		font-size: 1.6vw;
	}
}
@media screen and (max-width: 760px) {
	.contents_list ul li .item_foot {
	    margin-top: 1vw;
	}
	main {
		margin-top: 20.5vw;
	}
	.contents_list {
		padding-bottom: 15vw;
	}
	.contents_list ul {
		padding-bottom: 0vw;
	}
	.contents_list ul li figure {
		margin-bottom: 4vw;
	}
	.contents_list ul li figure img {
		max-width: 100%;
		width: 100%;
		display: block;
	}
	.contents_list ul li {
		width: 48%;
		margin-right: 0%;
		margin-bottom: 7vw;
	}
	/*.contents_list ul li:first-child {
		width: 100%;
	}*/
	.contents_list ul li:nth-child(3n) {
		margin-right: 0%;
	}
	/*.contents_list ul li:nth-child(2n) {
		margin-right: 4%;
	}*/
	.contents_list ul li:nth-child(odd) {
		margin-right: 4%;
	}
	.contents_list ul li dl dt{
		font-size: 3vw;
	    height: 8vw;
	}
	/*.contents_list ul li:first-child dl dt {
		font-size: 5.5vw;
		height: 15vw;
	}*/
	.contents_list ul li dl dd {
		font-size: 2.4vw;
	    height: 10vw;
		line-height: 1.4;
	}
	/*.contents_list ul li:first-child dl dd {
		font-size: 4vw;
	    height: 14vw;
	}*/
	.contents_list ul li .type i {
		padding-bottom: 1vw;
		line-height: 1;
	    font-size: 2.9vw;
	}
	.contents_list ul li .date {
		font-size: 2.6vw;
	}
	.add_contents_list {
		padding: 3vw 0;
		font-size: 3vw;
	}
	.add_contents_list i {
		font-size: 3.4vw;
	}
	.contents_list ul li .type {
		padding-left: 5vw;
		display: flex;
	    align-items: center;
	}
	
	/* バナーのホバーした時の表示 */
	.contents_list ul li figure .hover_box .type {
		background-size: 5vw;
		padding-top: 7vw;
		margin-bottom: 1vw;
	}
	.contents_list ul li figure .hover_box .type i {
		font-size: 2.9vw;
	}
	.contents_list ul li figure .hover_box .banner_title {
		padding: 0 2vw;
		font-size: 3vw;
	}
	.contents_list ul li:first-child figure .hover_box .type {
		background-size: 10vw;
		padding-top: 14vw;
		margin-bottom: 2vw;
	}
	.contents_list ul li:first-child figure .hover_box .type i {
		font-size: 4vw;
	}
	.contents_list ul li:first-child figure .hover_box .banner_title {
		padding: 0 4vw;
		font-size: 4.6vw;
	}
}


/* ------------------------------------------------------------ */
/* ニュース一覧 */
/* ------------------------------------------------------------ */
section.news {
	background-color: #f4f4f4;
	padding-top: 50px;
	padding-bottom: 50px;
}
section.news dl {
	display: flex;
}
section.news dt {
	line-height: 1;
	margin-right: 77px;
	border-right: solid 1px #000000;
	width: 145px;
	min-width: 145px;
}
section.news dt h2 {
	margin-bottom: 15px;
}
section.news dt a {
	text-decoration: none;
	line-height: 1;
	display: inline-block;
	border-bottom: dotted 2px #AAAAAA;
	color: #333333;
	padding:3px 0 6px 0 ;
	font-weight: bold;
	font-size: 14px;
	transition: transform 0.5s linear;
}
section.news dd {
	flex-grow: 1;
}
section.news dl ul {
	list-style: none;
}
section.news dl ul li {
	margin-bottom: 35px;
}
section.news dl ul li:last-child {
	margin-bottom: 0px;
}
section.news dl ul li span {
	display: block;
	line-height: 1;
	font-weight: bold;
	margin-bottom: 10px;
	font-size: 16px;
}
section.news dl ul li p {
	font-size: 16px;
	line-height: 1.6;
}

@media screen and (max-width: 760px) {
	section.news {
		padding-top: 4vw;
		padding-bottom: 10vw;
	}
	section.news dt h2 {
		margin-bottom: 1vw;
		font-size: 5vw;
	}
	section.news dt a {
		padding: 1vw 0 1vw 0;
		font-weight: bold;
		font-size: 3vw;
	}
	section.news dl {
		display: block;
	}
	section.news dt {
		border: none;
		width: 100%;
		text-align: center;
		margin-bottom: 4vw;
	}
	section.news dl ul li span {
		font-size: 2.7vw;
		margin-bottom: 1vw;
	}
	section.news dl ul li p {
		font-size: 2.5vw;
	}
}





