/* エントリーリンク
=========================================================================
=========================================================================*/
#entry {
	padding: 80px 20px 60px;
}

#entry ul {
	margin: 0 auto;
	max-width: 960px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 14px 0;
}

#entry ul li {
	position: relative;
	width: calc(310 / 960 * 100%);
}

#entry ul li p {
	position: absolute;
	bottom: 17px;
	right: 22px;
	padding-right: 20px;
	font-weight: bold;
	font-size: 1.9rem;
	color: #FFF;
	background: url(../images/home/entry_arrow.svg) right center no-repeat;
	background-size: 7px auto;
}

/* コンテンツリンク
=========================================================================
=========================================================================*/
#contents {
	margin-bottom: 50px;
	padding: 60px 20px;
	background-color: #E7F1F5;
}

#contents ul {
	margin: 0 auto;
	max-width: 960px;
	display: flex;
	justify-content: space-between;
}

#contents ul li {
	position: relative;
	width: calc(228 / 960 * 100%);
	text-align: center;
}

#contents ul li p {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	font-weight: bold;
	font-size: 1.9rem;
	line-height: 1em;
	color: #FFF;
	white-space: nowrap;
}


/* HEROSPACE
=========================================================================
=========================================================================*/
#hero_space {
	position: relative;
}

#hero_space .slide {
	position: relative;
	width: 100%;
}

.bx-wrapper {
	box-shadow: none;
	border: none;
	margin-bottom: 0;
}

.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
	bottom: 0;
}

.bx-wrapper .bx-controls-auto {
	text-align: left;
}

/* START */
.bx-wrapper .bx-controls-auto .bx-start {
	display: block;
	text-indent: -9999px;
	width: 62px;
	height: 44px;
	outline: 0;
	background: url('../images/home/button_start.svg') center center no-repeat;
	margin: 0;
}

.bx-wrapper .bx-controls-auto .bx-start:hover {
	background: url('../images/home/button_start_on.svg') center center no-repeat;
}

.bx-wrapper .bx-controls-auto .bx-start.active {
	display: none;
}

.bx-wrapper .bx-controls-auto .bx-start:hover,
.bx-wrapper .bx-controls-auto .bx-start.active,
.bx-wrapper .bx-controls-auto .bx-start:focus {
	background-position: center center;
}

/* STOP */
.bx-wrapper .bx-controls-auto .bx-stop {
	display: block;
	text-indent: -9999px;
	width: 62px;
	height: 44px;
	outline: 0;
	background: url('../images/home/button_stop.svg') center center no-repeat;
	margin: 0;
}

.bx-wrapper .bx-controls-auto .bx-stop:hover {
	background: url('../images/home/button_stop_on.svg') center center no-repeat;
}

.bx-wrapper .bx-controls-auto .bx-stop.active {
	display: none;
}

.bx-wrapper .bx-controls-auto .bx-stop:hover,
.bx-wrapper .bx-controls-auto .bx-stop.active,
.bx-wrapper .bx-controls-auto .bx-stop:focus {
	background-position: center center;
}

#hero_space .container {
	position: absolute;
	top: calc(259 / 605 * 100%);
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 860px;
	z-index: 2;
}

@media (max-width:1400px) {
	#hero_space .container {
		width: 100%;
	}
}

#hero_space h1 {
	margin-left: -63px;
	width: calc(702 / 860 * 100%);
}

@media (max-width:1400px) {
	#hero_space h1 {
		margin-left: calc(157 / 1400 * 100%);
		width: calc(702 / 1400 * 100%);
	}
}

/* AD
=========================================================================
=========================================================================*/
#ad {
 padding: 80px 0 0;
}

#ad .container {
	margin: 0 auto;
	width: 960px;
}

/* NEWS & TOPICS
=========================================================================
=========================================================================*/
#news {
	overflow: hidden;
	position: relative;
	margin: 0;
	padding: 80px 0 60px;
	width: 100%;
}

#news .container {
	margin: 0 auto;
	width: 840px;
}

#news h2 {
	margin: 0 auto 40px;
	padding-left: 0.05em;
	font-size: 1.4rem;
	font-weight: bold;
	letter-spacing: 0.03em;
}

#news a {
	text-decoration: none;
}

#news a:hover {
	text-decoration: underline;
}

#news ul {
	margin: 0 auto 20px;
	width: 100%;
	background-color: #FFF;
}

#news ul li {
	margin-bottom: 1em;
	padding-bottom: .25em;
	border-bottom: 1px solid #E3E3E3;
}

#news ul li:last-child {
	margin-bottom: 0;
}

#news ul li a {
	line-height: 1.53em;
	display: flex;
	justify-content: flex-start;
}

#news ul li p {
	display: inline-block;
	width: calc(128 / 840 * 100%);
}

#news ul li h3 {
	display: inline-block;
	width: calc(606 / 840 * 100%);
	overflow-wrap: break-word;
}

/* ----- ボタン：もっと詳しく ----- */
#news a.button_more {
	position: relative;
	display: block;
	margin: 0 0 15px auto;
	width: 60px;
	font-weight: normal;
	font-size: 1.3rem;
	line-height: 1em;
	text-decoration: none;
}

#news a.button_more:hover,
#news a.button_more:visited {
	color: #707070;
	text-decoration: none !important;
}

#news a.button_more::before {
	content: "";
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto 0;
	width: 7px;
	height: 100%;
	background: url(../images/home/news_button_more_arrow.svg) center center no-repeat;
	background-size: contain;
}





/*  スマホ（740px以下）
=========================================================================
=========================================================================*/
@media (max-width:740px) {
	/* エントリーリンク
	=========================================================================
	=========================================================================*/
	#entry {
		padding: 100px 10px 30px;
	}

	#entry ul {
		flex-wrap: wrap;
		gap: 8px 0;
	}

	#entry ul li {
		width: 100%;
	}

	#entry ul li:nth-child(1) {
		order: 1;
	}
	#entry ul li:nth-child(2) {
		order: 3;
	}
	#entry ul li:nth-child(3) {
		order: 4;
	}
	#entry ul li:nth-child(4) {
		order: 2;
	}

	#entry ul li:nth-child(4) a {
		display: block;
		margin: 8px auto 0;
		width: calc(293 / 300 * 100%);
	}

	#entry ul li p {
		position: absolute;
		bottom: 16px;
		right: 20px;
		font-size: 1.6rem;
	}

	/* コンテンツリンク
	=========================================================================
	=========================================================================*/
	#contents {
		margin-bottom: 0;
		padding: 40px 10px;
	}

	#contents ul {
		flex-wrap: wrap;
		gap: 4px 0;
	}

	#contents ul li {
		position: relative;
		width: calc(148 / 300 * 100%);
		text-align: center;
	}

	#contents ul li p {
		font-size: 1.2rem;
	}

	/* HEROSPACE
	=========================================================================
	=========================================================================*/
	#hero_space .container {
		top: calc(100 / 245 * 100%);
		width: 100%;
	}

	#hero_space h1 {
		margin-left: calc(20 / 320 * 100%);
		width: calc(230 / 320 * 100%);
	}

	/* AD
	=========================================================================
	=========================================================================*/
	#ad {
		padding: 40px 25px 0;
	}

	#ad .container {
		width: 100%;
	}

	/* NEWS & TOPICS
	=========================================================================
	=========================================================================*/
	#news {
		padding: 56px 25px 26px;
		width: 100%;
		background: url(../images/home/news_bg.svg) center top 70px no-repeat;
		background-size: 100% auto;
	}

	#news .container {
		width: 100%;
	}

	#news h2 {
		margin: 0 auto 10px;
		font-size: 1.7rem;
	}

	#news ul {
		margin: 0 auto 10px;
		padding: 20px 10px 10px;
		width: 100%;
		font-size: 1.2rem;
	}

	#news ul li p {
		display: inline-block;
		width: calc(60 / 230 * 100%);
	}

	#news ul li h3 {
		display: inline-block;
		width: calc(170 / 230 * 100%);
		overflow-wrap: break-word;
	}

	/* ----- ボタン：もっと詳しく ----- */
	#news a.button_more {
		position: relative;
		display: block;
		margin: 0 0 15px auto;
		width: 60px;
		font-weight: normal;
		font-size: 1.3rem;
		line-height: 1em;
		text-decoration: none;
	}

	#news a.button_more:hover,
	#news a.button_more:visited {
		color: #707070;
		text-decoration: none !important;
	}

	#news a.button_more::before {
		content: "";
		position: absolute;
		right: 0;
		top: 0;
		bottom: 0;
		margin: auto 0;
		width: 7px;
		height: 100%;
		background: url(../images/home/news_button_more_arrow.svg) center center no-repeat;
		background-size: contain;
	}



}

/*  スマホ（480px以下）
=========================================================================
=========================================================================*/
@media (max-width:480px) {}
