@charset "UTF-8";

#support {
	position: relative;
}

#support p {
	font-size: 1.6rem;
}

#support .page_top_btn {
	position: fixed;
	bottom: 20px;
	right: 14px;
	z-index: 99997;
}

#support .page_top_btn a {
	display: block;
	width: 50px;
	height: 50px;
	background: rgba(0, 0, 0, .5);
	border-radius: 5px;
	text-align: center;

	position: relative;
	padding-top: 30px;
}

#support .page_top_btn a span {
	font-size: 1.0rem;
	color: #FFF;
}

#support .page_top_btn a:before {
	content: '';
	width: 10px;
	height: 10px;
	border-top: solid 2px #FFF;
	border-left: solid 2px #FFF;
	transform: rotate(45deg);
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	top: 15px;
}


@media screen and (max-width: 959px) {

	#support .page_top_btn {
		position: fixed;
		bottom: 15px;
		right: 14px;
		z-index: 99997;
	}

	#support .page_top_btn a {
		display: block;
		width: 30px;
		height: 30px;
		background: rgba(0, 0, 0, .5);
		border-radius: 5px;
		position: relative;
	}

	#support .page_top_btn a span {
		display: none;
	}

	#support .page_top_btn a:hover {
		opacity: 1;
	}

	#support .page_top_btn a:before {
		content: '';
		width: 8px;
		height: 8px;
		border-top: solid 2px #FFF;
		border-left: solid 2px #FFF;
		transform: rotate(45deg);
		position: absolute;
		top: 3px;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
	}

}



/* header */

#support header {
	background: #f0f0f0;
	padding: 10px 0;
	margin-bottom: 50px;
}

#support header .inner {
	display: flex;
	align-items: center;
}

#support header .inner p {
	width: 20%;
	margin-right: 20px;
}

#support header .inner h1 {
	font-size: 2.0rem;
	font-weight: bold;
}

@media screen and (max-width: 959px) {

	#support header {
		margin-bottom: 30px;
	}

	#support header .inner p {
		width: 30%;
	}

}




/* main */

#support main {
	width: 960px;
	margin: auto;
	display: flex;
	justify-content: space-between
}

#support aside {
	width: 25%;
}

#support #detail {
	width: 72%;
}

#support aside section,
#support #detail section {
	border: #3492ee 1px solid;
	margin-bottom: 20px;
}

#support aside section:last-child,
#support #detail section:last-child {
	margin-bottom: 0;
}

#support h2 {
	padding: 10px;
	background: #3492ee;
	color: #FFF;
	font-size: 1.6rem;
	font-weight: bold;
	position: relative;
	padding-left: 35px;
	line-height: 1.0;
}

#support h2:before {
	content: '';
	width: 18px;
	height: 18px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	left: 10px;
}

#support #inquire h2:before {
	background: url(../img/support/icon_inquire.svg) no-repeat;
	background-size: cover;
}

#support #portal h2:before {
	background: url(../img/support/icon_portal.svg) no-repeat;
	background-size: cover;
}

#support #service h2:before {
	background: url(../img/support/icon_link.svg) no-repeat;
	background-size: cover;
}

/*
#support #service h2:before {
	background: url(../img/support/icon_site.svg) no-repeat;
	background-size: cover;
}
*/

#support #other h2:before {
	background: url(../img/support/icon_link.svg) no-repeat;
	background-size: cover;
}

#support #news h2:before {
	background: url(../img/support/icon_info.svg) no-repeat;
	background-size: cover;
}

#support #doc h2:before {
	background: url(../img/support/icon_dl.svg) no-repeat;
	background-size: cover;
}

#support .support_inner {
	padding: 15px;
}

@media screen and (max-width: 959px) {

	#support main {
		width: 95%;
		flex-wrap: wrap-reverse;
		margin: auto;
	}

	#support aside {
		width: 100%;
	}

	#support #detail {
		width: 100%;
		margin-bottom: 50px;
	}

	#support h2 {
		text-align: center;
	}
}



/* aside */

#support aside #inquire p {
	font-size: 1.4rem;
	margin-bottom: 10px;
}

#support aside #inquire dl {
	margin-bottom: 10px;
}

#support aside #inquire dl dt ul li {
	font-size: 1.4rem;
	font-weight: bold;
	position: relative;
	color: #00468a;
}

#support aside #inquire dl dt ul li:last-child {
	margin-bottom: 0;
}

#support aside #inquire dl dd {
	padding: 10px 0;
}

#support aside #inquire dl dd#mail a {
	font-size: 1.15rem;
	padding-left: 15px;
	position: relative;
}

#support aside #inquire dl dd#mail a:before {
	content: '';
	width: 10px;
	height: 10px;
	background: url(../img/support/icon_mail.svg) no-repeat;
	background-size: cover;
	position: absolute;
	top: 3px;
	left: 0;
}

#support aside #inquire dl dd#mail p:last-child {
	font-size: 1.0rem;
}

#support aside #service a {
	display: block;
	font-size: 1.2rem;
	font-weight: bold;
	position: relative;
	padding-right: 20px;
}

#support aside #service a:before {
	content: '';
	width: 5px;
	height: 5px;
	border-top: #00468a 2px solid;
	border-right: #00468a 2px solid;
	transform: rotate(45deg);
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 0;
}

#support aside #other .support_inner .other_box h3 {
	font-size: 1.6rem;
	font-weight: bold;
	color: #00468a;
	margin-bottom: 10px;
}

#support aside #other .support_inner .other_box ul li{
	font-size: 1.6em;
}

#support aside #other ul li {
	margin-bottom: 20px;
}

#support aside #other ul li a img {
	max-height: 60px;
}

#support aside #other ul li:last-child {
	margin-bottom: 0;
}



@media screen and (max-width: 959px) {


	#support aside #inquire dl dt {
		font-size: 1.4rem;
		font-weight: bold;
		padding-left: 10px;
		border-left: #00468A 5px solid;
	}

	#support aside #inquire dl dd {
		text-align: center;
	}

	#support aside #inquire dl dd#tel p:first-child {
		font-size: 4.0rem;
		padding-left: 0px;
	}

	#support aside #inquire dl dd#tel p:first-child:before {
		width: 30px;
		height: 30px;
		top: 3px;
		left: 5%;
	}

	#support aside #inquire dl dd#mail a {
		font-size: 2.0rem;
		padding-left: 30px;
	}

	#support aside #inquire dl dd#mail a:before {
		width: 25px;
		height: 25px;
	}

	#support aside #service .support_inner {
		text-align: center;
	}

}



/* detail */

#support #detail #news dl {
	padding: 20px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#support #detail #news dl dt {
	width: 18%;
	font-size: 1.4rem;
}

#support #detail #news dl dd {
	width: 80%;
	font-size: 1.4rem
}

#support #detail #news dl dd a {
	text-decoration: underline;
}

#support #detail #news .support_inner {
	padding: 20px;
	text-align: center;
}

#support #detail #news .support_inner a {
	display: inline-block;
	margin: auto;
	padding: 20px 100px;
	background: #feffe4;
	color: #3492ee;
	font-size: 1.5rem;
	font-weight: bold;
	text-align: center;
	border: #3492ee solid 1px;
	position: relative;
}

#support #detail #news .support_inner a:before {
	content: '';
	width: 40px;
	height: 40px;
	background: url(../../common/img/icon_news.svg) no-repeat;
	background-size: cover;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	left: 15px;
}

#support #detail #news .support_inner a:after {
	content: '';
	width: 8px;
	height: 8px;
	border-top: #3492ee 2px solid;
	border-right: #3492ee 2px solid;
	transform: rotate(45deg);
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 15px;
}

@media screen and (max-width: 767px) {

	#support #detail #news dl {
		display: block;
	}

	#support #detail #news dl dt {
		width: 100%;
	}

	#support #detail #news dl dd {
		width: 100%;
	}

	#support #detail #news .support_inner a:before {
		content: '';
		width: 30px;
		height: 30px;
	}
}



/* doc */


#support #detail #doc p {
	margin-bottom: 10px;
}

#support #detail #doc #note_list {
	margin-bottom: 30px;
}

#support #detail #doc #note_list li {
	font-size: 1.4rem;
	color: #808080;
	margin-bottom: 5px;
	padding-left: 15px;
	position: relative;
}

#support #detail #doc #note_list li:before {
	content: '※';
	position: absolute;
	left: 0;
	top: 0;
}

#support #detail #doc div div h3 {
	font-size: 1.8rem;
	font-weight: bold;
	color: #00468a;
	margin-bottom: 10px;
	padding: 3px 0 3px 10px;
	border-left: #00468a 5px solid;
}

#support #detail #doc div div h4 {
	font-size: 1.6rem;
	font-weight: bold;
	margin-bottom: 10px;
}

#support #detail #doc h4+p {
	font-size: 1.6rem;
	margin-bottom: 10px;
}

#support #detail #doc table {
	width: 100%;
	border-collapse: collapse;
}

#support #detail #doc table * {
	font-size: 1.3rem;
}

#support #detail #doc table tr th,
#support #detail #doc table tr td {
	padding: 10px;
	border: #CCC 1px solid;
}

#support #detail #doc table tr th {
	background: #CFE7FF;
	font-weight: bold;
}

#support #detail #doc table tr th:first-child {
	width: 22%;
}

#support #detail #doc table tr td a {
	text-decoration: underline;
	position: relative;
}

#support #detail #doc table tr td.pdf a:after {
	content: 'PDF';
	padding: 3px 5px;
	background: #E81224;
	color: #FFF;
	font-size: 1.0rem;
	border-radius: 2px;
	position: absolute;
	top: 0;
	right: -40px;
	text-decoration: none;
}

#support #detail #doc table tr td.excel a:after {
	content: 'xlsx';
	padding: 3px 5px;
	background: #2BB858;
	color: #FFF;
	font-size: 1.0rem;
	border-radius: 2px;
	position: absolute;
	top: 0;
	right: -40px;
	text-decoration: none;
}

#support #detail #doc table tr td a+p {
	font-size: 1.2rem;
	margin-top: 10px;
}

#support #detail #doc table tr td .red {
	color: #e81224;
}

#support #detail #doc div div,
#support #detail #doc div div div {
	margin-bottom: 30px;
}

#support #detail #doc div div:last-child,
#support #detail #doc div div div:last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 959px) {


	#support #detail #doc .menu_list .menu_box {
		flex-wrap: wrap;
		justify-content: space-between;
	}

	#support #detail #doc .menu_list .menu_box dl {
		width: 45%;
		margin-right: 0px;
		margin-bottom: 30px;
	}

	#support #detail #doc .menu_list .menu_box dl:last-child {
		margin-right: 0;
	}

	#support #detail #doc .menu_list .menu_box dl dt {
		margin-bottom: 5px;
	}

	#support #detail #doc .menu_list .menu_box dl dd li {
		margin-bottom: 5px;
	}

	#support #detail #doc h4+p {
		font-size: 1.4rem;
	}

	#support #detail #doc table {
		width: 100%;
		border-collapse: collapse;
	}

	#support #detail #doc table * {
		font-size: 1.2rem;
	}

	#support #detail #doc table tr th:first-child {
		width: 20%;
	}

	#support #detail #doc table tr td a {
		line-height: 2.0;
	}

	#support #detail #doc table tr td.pdf a:after {
		display: block;
		padding: 5px;
		top: auto;
		line-height: 1.0;
		bottom: 0;
		right: -40px;
	}

	#support #detail #doc table tr td.excel a:after {
		display: block;
		padding: 5px;
		top: auto;
		line-height: 1.0;
		bottom: 0;
		right: -40px;
	}

}



/* footer */

#support footer {
	text-align: center;
	background: #f0f0f0;
	padding: 10px 0;
}

#support footer p {
	color: #808080;
	margin: 0;
}