@charset "utf-8";
/* CSS Document */

.wrap{
	height: 100%;
	overflow: hidden;
}

/* header
--------------------------------------------------*/
.header-inner{
	width: 100%;
	max-width: 1050px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}
.g-nav{
	position: absolute;
	right: 0;
	top: 12px;
	width: 100%;
	text-align: right;
}
.g-nav li{
	display: inline-block;
	padding-right: 20px;
	line-height: 1em;
}
.g-nav li a{
	border-bottom: none;
	color: #444;
	text-decoration: none;
}
@media screen and (min-width: 769px) {
	.g-nav li a:hover {
		border-bottom: 1px solid #444;
	}
}
.icon{
	display: inline-block;
	background-repeat: no-repeat;
	padding-right: 8px;
}
.icon-home{
	width: 20px;
	height: 15px;
	background-image: url(/esh/assets/img/common/icon_home.png);
	background-size: 20px auto;
}
.icon-saga-u{
	width: 20px;
	height: 15px;
	background-image: url(/esh/assets/img/common/icon_saga-u.png);
	background-size: 20px auto;
}
.header-logo{
	padding: 22px 0;
}
.header-logo a{
	border-bottom: none;
	width: 250px;
	height: 106px;
	font-size: 0;
	display: block;
	margin: 0 auto;
	background: url(/esh/assets/img/common/logo.png) no-repeat;
	background-size: 250px auto;
}

/* footer
--------------------------------------------------*/
footer{
	background-color: #444;
}
.footer-inner{
	width: 100%;
	max-width: 1050px;
	margin-left: auto;
	margin-right: auto;
	padding: 13px 0;
}
.footer-nav{
	text-align: right;
}
.footer-nav li{
	display: inline-block;
	padding-right: 20px;
	line-height: 1em;
}
.footer-nav li a,
.footer-nav li span{
	border-bottom: none;
	color: #fff;
	text-decoration: none;
}
@media screen and (min-width: 769px) {
	.footer-nav li a:hover,
	.footer-nav li span:hover{
		cursor: pointer;
		border-bottom: 1px solid #fff;
	}
}
.icon-home.icon-white{
	width: 20px;
	height: 15px;
	background-image: url(/esh/assets/img/common/icon_home_white.png);
	background-size: 20px auto;
}
.icon-saga-u.icon-white{
	width: 20px;
	height: 15px;
	background-image: url(/esh/assets/img/common/icon_saga-u_white.png);
	background-size: 20px auto;
}
.icon-pagetop.icon-white{
	width: 20px;
	height: 15px;
	background-image: url(/esh/assets/img/common/icon_pagetop.png);
	background-size: 20px auto;
}


/* content
--------------------------------------------------*/
.inner{
	width: 100%;
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
}

.view-pc{
	display: block;
}
.view-sp{
	display: none;
}

.g-p-s{
	padding-bottom: 0.5em;
}
.g-p{
	padding-bottom: 1em;
}

.block{
	padding-bottom: 20px;
}
.block-md{
	padding-bottom: 30px;
}
.block-lg{
	padding-bottom: 50px;
}

.section{
	padding-bottom: 60px;
}
.section:last-child{
	padding-bottom: 120px;
}

/* font style */
.blue{
	color: #005da1;
}
.red{
	color: #ef5350;
}
.text-line{
	font-weight: bolder;
	position: relative;
	background: linear-gradient(transparent 60%, #bee0f7 60%);
}
.fsize-sm{
	font-size: 83.4%;
	line-height: 2em;
}
.fsize-md{
	font-size: 120%;
	line-height: 2em;
}
.fsize-lg{
	font-size: 140%;
	line-height: 2em;
}

/* hx */
.ttl2{
	font-size: 220%;
	line-height: 1.2em;
	color: #fff;
	background-color: #005da1;
	border-bottom: 3px solid #118ce2;
	padding: 18px 20px;
	margin-bottom: 50px;
}
.ttl3{
	font-size: 180%;
	border: 1px solid #c2c2c2;
	padding: 10px;
	margin-bottom: 30px;
}
.ttl3 span{
	display: block;
	position: relative;
	padding-left: 25px;
	padding-top: 8px;
	padding-bottom: 8px;
}
.ttl3 span:before{
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 8px;
	height: 100%;
	background-color: #005da1;
}

/* main-head */
.main-head{
	padding: 80px 0;
	background: url(/esh/assets/img/common/bg_title.jpg) no-repeat;
	background-size: cover;
}
.main-head__title{
	font-size: 294%;
	line-height: 1em;
	font-weight: bold;
	text-align: center;
}

/* btn */
.btn{
	border-bottom: none;
	display: inline-block;
	color: #fff;
	background-color: #ef5350;
	text-decoration: none;
	padding: 12px 11px 11px;
	vertical-align: middle;
	line-height: 1em;
}
@media screen and (min-width: 769px) {
	.btn{
		-moz-backface-visibility: hidden;
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
		-moz-transition: all .3s;
		-webkit-transition: all .3s;
		transition: all .3s;
	}
	.btn:hover{
		background-color: #e83a3a;
	}
}
.icon-pdf{
	display: inline-block;
	vertical-align: middle;
	width: 20px;
	height: 25px;
	margin-top: -2px;
	background: url(/esh/assets/img/common/icon_pdf.png) no-repeat;
	background-size: 20px auto;
}

/* ul, ol */
.list-ol li{
	margin-left: 1.5em;
	padding-left: 0.5em;
	list-style: decimal;
	color: #005da1;
}
.list-diamond li{
	position: relative;
	padding-left: 1.5em;
}
.list-diamond li:before{
	content: "";
	position: absolute;
	top: 9px;
	left: 0;
	width: 15px;
	height: 18px;
	background: url(/esh/assets/img/common/list_diamond.png) no-repeat;
	background-size: 15px auto;
}
.list-circle li{
	position: relative;
	padding-left: 1.5em;
}
.list-circle li:before{
	content: "";
	position: absolute;
	top: 7px;
	left: 0;
	width: 14px;
	height: 14px;
	background: url(/esh/assets/img/common/list_circle.png) no-repeat;
	background-size: 14px auto;
}
.list-caption li{
	position: relative;
	padding-left: 1.5em;
}
.list-caption li:before{
	content: "※";
	position: absolute;
	left: 0;
}
.indent-1{
	padding-left: 1em;
}
.indent-2{
	padding-left: 2em;
}

/* dl */
.dl-table{
	overflow: hidden;
}
.dl-table dt{
	color: #005da1;
	font-weight: bold;
	float: left;
	width: 60px;
}
.dl-table dd{
	padding-left: 60px;
}

/* grid */
.grid{
	overflow: auto;
	margin: -10px;
}
.grid-el{
	float: left;
	padding: 10px;
	box-sizing: border-box;
}
.grid-2 .grid-el{
	width: 50%;
}

/* media-grid */
.media-grid{
	overflow: hidden;
}
.media-grid .img-left{
	float: left;
	margin-right: 15px;
	margin-bottom: 15px;
}
.media-grid .img-right{
	float: right;
	margin-left: 15px;
	margin-bottom: 15px;
}

/* breadcrumb */
.breadcrumb ul{
	text-align: right;
	padding: 25px 0 45px;
}
.breadcrumb ul li{
	display: inline-block;
	padding-left: 35px;
	position: relative;
	line-height: 1em;
}
.breadcrumb ul li:before{
	content: "";
	position: absolute;
	left: 15px;
	top: 0;
	width: 1px;
	height: 100%;
	background-color: #444;
}
.breadcrumb ul li:first-child:before{
	content: none;
}
.breadcrumb ul li a{
	color: #444;
	border-bottom: none;
}
@media screen and (min-width: 769px) {
	.breadcrumb ul li a:hover{
		border-bottom: 1px solid #444;
	}
}

/* table */
.nowrap{
	white-space: nowrap;
}
.table-style table{
	width: 100%;
}
.table-style th,
.table-style td{
	text-align: left;
	vertical-align: top;
	padding-top: 8px;
	padding-bottom: 8px;
	word-wrap: break-word;
}
.table-style th{
	color: #005da1;
	font-weight: bold;
	position: relative;
	padding-left: 1.5em;
}
.table-style th:before{
	content: "";
	position: absolute;
	top: 16px;
	left: 0;
	width: 14px;
	height: 14px;
	background: url(/esh/assets/img/common/list_circle.png) no-repeat;
	background-size: 14px auto;
}
.table-style td{
	padding-left: 15px;
	padding-right: 15px;
}
.table-style-2 table{
	width: 100%;
}
.table-style-2 th,
.table-style-2 td{
	padding: 6px 12px;
	border: 1px solid #118ce2;
	vertical-align: middle;
	word-wrap: break-word;
}
.table-style-2 th{
	font-weight: normal;
	text-align: center;
	background-color: #bee0f7;
}

/*===============================================

 max-width:1050~

================================================*/
@media screen and (max-width: 1050px) {
	.header-inner{
		width: auto;
	}
	
	.footer-inner{
		width: auto;
	}
	
	.inner{
		width: auto;
		padding-left: 10px;
		padding-right: 10px;
	}
	.main-head{
		padding-left: 10px;
		padding-right: 10px;
	}
	.breadcrumb{
		padding-left: 10px;
		padding-right: 10px;
	}
}

/*===============================================

 max-width:768~

================================================*/
@media screen and (max-width: 768px) {
	.g-nav{
		position: inherit;
		right: inherit;
		top: inherit;
		padding-top: 12px;
	}
	
	.footer-nav li{
		padding-right: 10px;
	}
	
	.view-pc{
		display: none;
	}
	.view-sp{
		display: block;
	}

	.sp-indent-0{
		padding-left: 0;
	}
	.sp-indent-1{
		padding-left: 1em;
	}
	.sp-indent-2{
		padding-left:2em;
	}

	.media-grid .img-left{
		float: none;
	}
	.media-grid .img-right{
		float: none;
	}
	.table-scroll{
		width: 100%;
		max-width: 768px;
		overflow: auto;
		padding-bottom: 0;
		margin-bottom: 20px;
	}
	.table-scroll table{
		width: 100%;
	}
	.table-scroll::-webkit-scrollbar{
		height: 8px;
	}
	.table-scroll::-webkit-scrollbar-track{
		background: #F1F1F1;
	}
	.table-scroll::-webkit-scrollbar-thumb {
		background: #aaa;
		border-radius: 5px;
	}
}