/* カスタマイズ用CSS */

/*モーダル本体の指定 + モーダル外側の背景の指定*/
.modal-container{
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1010;
	width: 100%;
	height: 100%;
	text-align: center;
	background: rgba(0,0,0,50%);
	padding: 40px 20px;
	overflow: auto;
	opacity: 0;
	visibility: hidden;
	transition: .3s;
    box-sizing: border-box;
}
/*モーダル本体の擬似要素の指定*/
.modal-container:before{
	content: "";
	display: inline-block;
	vertical-align: middle;
	height: 100%;
}
/*モーダル本体に「active」クラス付与した時のスタイル*/
.modal-container.active{
	opacity: 1;
	visibility: visible;
}
/*モーダル枠の指定*/
.modal-body{
	position: relative;
	display: inline-block;
	vertical-align: middle;
	max-width: 800px;
	width: 90%;
}
/*モーダルを閉じるボタンの指定*/
.modal-close{
	position: absolute;
	display: flex;
    align-items: center;
    justify-content: center;
	top: -40px;
	right: -40px;
	width: 40px;
	height: 40px;
	font-size: 40px;
	color: #fff;
	cursor: pointer;
}
/*モーダル内のコンテンツの指定*/
.modal-content{
	background: #fff;
	text-align: left;
	padding: 30px;
}
#paysort {
		height:90vh;
}
.hide {
		display: none;
}
header.ec-layoutRole__header {
		flex-wrap: wrap;
}
.ec-footerRole {
    background: #363636;
}
.table > :not(:first-child) {
		border:none;
}
.table th {
		background-color: #E7E7E7;
}
.table th, 
.table td {
		border: 1px solid #CCCCCC;
		border-collapse: collapse;
}
.ec-pageHeader {
		margin-top: 50px;
}
.box_voice {
		background-color: #f7f7f7;
		padding: 25px 30px;
		border-radius: 10px;
		margin-bottom: 30px;
}
.ec-blockTopBtn {
		width:40px;
}
@media only screen and (min-width: 768px) {
		.ec-headerRole {
				width:20%;
		}
		.ec-headerNaviRole {
				width: 80%;
		}
		.ec-mainNaviRole {
				width: 100%;
				background-color: #363636;
		}
		.ec-itemNav__nav li a {
    color: #ffffff;
    background: #363636;
  }
		.ec-itemNav__nav > li:hover > a {
				color: #ffffff;
    background: #484848;
		}
		.ec-itemNav__nav {
				display: flex;
				justify-content: space-around;
				margin: 0px auto;
				width: 100%;
    max-width: 1150px;
  }
		.ec-itemNav__nav li {
				float:none;
		}
		.ec-itemNav__nav li ul {
				background: #363636;
				justify-content: space-around;
		}
		.ec-itemNav__nav li ul li a {
				background: #616161;
				width:200px;
    border-radius: 10px;
    margin: 5px 5px 5px;
		}
		.ec-headerNaviRole {
    padding-bottom: 20px;
  }
		.ec-itemNav__nav li ul li {
    border-radius: 10px;
				display: flex;
    align-items: center;
  }
		.ec-itemNav__nav li ul li ul {
    top: 12px;
    left: 100%;
    width: auto;
}
}
@media (min-width:768px) and (max-width:991px){
		header.ec-layoutRole__header {
    flex-wrap: wrap;
    flex-direction: column;
  }
		.ec-headerNaviRole {
				width: 100%;
				justify-content: space-between;
		}
		.ec-headerNaviRole:after {
				display: none;
		}
		.ec-headerTitle .ec-headerTitle__title a {
				margin-bottom: 0px;
		}
		.ec-headerRole {
    width: 100%;
  }
		.ec-itemNav__nav li ul {
				width:50vh;
		}
}
@media only screen and (max-width: 767px) {
  .modal-container{
				padding: 40px 0px;
		}
		/*モーダル枠の指定*/
		.modal-body{
			padding: 0px;
		}
		.modal-close{
			right: -10px;
		}
		.ec-mainNaviRole {
				display: none;
		}
		.ec-headerNaviRole {
    justify-content: center;
    flex-direction: column;
    padding: 0px 10px 20px;
  }
		.ec-headerTitle .ec-headerTitle__title a {
				margin-bottom: 15px;
		}
}