@charset "UTF-8";
/* ===================================================================
CSS information
 file name	:	template_c2.css
 style info :	corporate No.2 用の cssの定義
=================================================================== */
/*-----------------------------------------------------------------

common 共通

-----------------------------------------------------------------*/
html.active {
	overflow: hidden;
}

@media only screen and (max-width: 690px) {
	.txt_l_sp {
		text-align: left !important;
	}
	.txt_c_sp {
		text-align: center !important;
	}
	.txt_r_sp {
		text-align: right !important;
	}
}

main.titlenone {
	margin-top: 80px;
}

@media only screen and (max-width: 690px) {
	main.titlenone {
		margin-top: 50px;
	}
}

#contents, #container {
	margin-bottom: 70px;
}

@media only screen and (max-width: 979px) {
	#contents, #container {
		margin-bottom: 40px;
	}
}

@media only screen and (max-width: 690px) {
	#content, #container {
		margin-bottom: 30px;
	}
	#contents_right {
		margin-bottom: 0;
	}
}

/*-----------------------------------------------------------------

header

-----------------------------------------------------------------*/
header.template_c2 {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
	width: 100%;
}

header.template_c2 #header {
	width: 100%;
	background-color: #ffffff;
	-webkit-box-shadow: 0 0 10px 3px rgba(0, 0, 0, 0.1);
	box-shadow: 0 0 10px 3px rgba(0, 0, 0, 0.1);
}

header.template_c2 #header_area {
	max-width: 1200px;
	margin: auto;
	height: 85px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

header.template_c2 #header_logo {
	width: 160px;
}

header.template_c2 #header_logo a {
	display: block;
}

header.template_c2 #header_logo img {
	max-width: 100%;
	width: auto;
	height: auto;
}

header.template_c2 .gnavi_area {
	margin-left: auto;
	height: 100%;
	display: block;
}

header.template_c2 .gnavi_area nav {
	height: 100%;
}

header.template_c2 .gnavi_contact {
	display: none;
}

header.template_c2 .gnavi_area ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	height: 100%;
}

header.template_c2 .gnavi_area ul li {
	margin-right: 2em;
	list-style: none;
	height: 100%;
}

header.template_c2 .gnavi_area ul li a {
	height: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 8px 0;
	position: relative;
	font-weight: bold;
	-webkit-transition: all .3s ease 0s;
	-o-transition: all .3s ease 0s;
	transition: all .3s ease 0s;
	font-size: 13px;
}

header.template_c2 .gnavi_area ul li a::after {
	position: absolute;
	bottom: 0;
	content: "";
	display: block;
	height: 3px;
	width: 100%;
	background-color: #ffffff;
	-webkit-transition: all .3s ease 0s;
	-o-transition: all .3s ease 0s;
	transition: all .3s ease 0s;
}

header.template_c2 .gnavi_area ul li a:hover {
	text-decoration: none;
	color: #ED1C21;
}

header.template_c2 .gnavi_area ul li a:hover::after {
	background-color: #ED1C21;
}

header.template_c2 .gnavi_area ul li.main_current a {
	text-decoration: none;
	color: #ED1C21;
}

header.template_c2 .gnavi_area ul li.main_current a::after {
	background-color: #ED1C21;
}

header.template_c2 #contact_area {
	width: 110px;
	height: 85px;
}

header.template_c2 #contact_area a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	height: 100%;
	background: #ED1C21 url("../image/common/icon_mail.png") no-repeat center 20px/20px auto;
	color: #ffffff;
	padding: 30px 10px 0;
	text-align: center;
	text-decoration: none;
	line-height: 1.2;
	font-size: 13px;
	font-weight: bold;
}

header.template_c2 #contact_area a:hover {
	background-color: #BF080D;
}

header.template_c2 #contact_area2 {
	width: 110px;
	height: 85px;
}

header.template_c2 #contact_area2 a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	height: 100%;
	background: #293337 url("../image/common/icon_mail.png") no-repeat center 20px/20px auto;
	color: #ffffff;
	padding: 30px 10px 0;
	text-align: center;
	text-decoration: none;
	line-height: 1.2;
	font-size: 13px;
	font-weight: bold;
}

header.template_c2 #contact_area2 a:hover {
	background-color: #111111;
}

header.template_c2 .search_btn {
	position: absolute;
	right: 0;
	top: 0;
	width: 100px;
	height: 85px;
	background-color: #293337;
	color: #ffffff;
	padding: 8px;
	text-align: center;
}

header.template_c2 .search_btn .fab {
	display: block;
	font-size: 24px;
	margin-top: 8px;
	margin-bottom: 4px;
}

header.template_c2 .search_area {
	display: none;
	padding: 16px 8px;
	background-color: #ffffff;
	max-width: 1200px;
	margin: auto;
	width: 100%;
}

header.template_c2 .search_area::after {
	content: "";
	display: table;
	clear: both;
}

header.template_c2 .search_txt {
	float: left;
	width: 80%;
	height: 56px;
	line-height: 60px;
	padding: 0 20px;
	border: 2px solid #eeeeee;
	border-radius: 4px;
	background-color: #ffffff;
	vertical-align: middle;
}

header.template_c2 .submit_btn {
	float: right;
	width: 19%;
	background-color: #293337;
	color: #ffffff;
	border-radius: 4px;
	border: none;
	height: 56px;
	line-height: 56px;
}

@media only screen and (max-width: 1119px) {
	header.template_c2 #header_logo {
		margin-left: 16px;
	}
	header.template_c2 .gnavi_area ul li {
		margin-right: 1.5em;
	}
	header.template_c2 .search_btn {
		width: 90px;
		font-size: 12px;
	}
	header.template_c2 .search_btn .fab {
		font-size: 20px;
		margin-top: 12px;
	}
	header.template_c2 #contact_area {
		width: 90px;
	}
	header.template_c2 #contact_area a {
		font-size: 12px;
	}
	header.template_c2 #contact_area2 {
		width: 90px;
	}
	header.template_c2 #contact_area2 a {
		font-size: 12px;
	}
}

header.template_c2 .gnavi_btn_sp {
	display: none;
}

@media only screen and (max-width: 690px) {
	header.template_c2 {
		/* -------- gnavi st */
	}
	header.template_c2 #header {
		-webkit-box-shadow: 0 0 5px 1px rgba(0, 0, 0, 0.1);
		box-shadow: 0 0 5px 1px rgba(0, 0, 0, 0.1);
	}
	header.template_c2 #header_area {
		height: 50px;
	}
	header.template_c2 #header_logo {
		width: auto;
	}
	header.template_c2 #header_logo img {
		height: 50px;
		display: block;
		padding: 8px 0;
	}
	header.template_c2 #contact_area, header.template_c2 #contact_area2 {
		display: none;
	}
	header.template_c2 .search_btn .txt {
		display: none;
	}
	header.template_c2 .search_btn {
		width: 50px;
		height: 50px;
		right: 50px;
	}
	header.template_c2 .search_btn .fab {
		margin-top: 6px;
	}
	header.template_c2 .search_txt {
		width: 75%;
		height: 46px;
		line-height: 50px;
	}
	header.template_c2 .submit_btn {
		width: 24%;
		height: 46px;
		line-height: 46px;
	}
	header.template_c2 .gnavi_area {
		display: none;
		position: static;
		padding: 0;
		width: 100%;
		height: 100%;
		background-color: #ffffff;
	}
	header.template_c2 .gnavi_contact {
		display: block;
		padding: 1.5em 24px;
	}
	header.template_c2 .gnavi_contact + .gnavi_contact {
		padding: 0 24px 1.5em;
		margin-top: -0.5em;
	}
	header.template_c2 .gnavi_contact a {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		background: #ED1C21;
		color: #ffffff;
		border-radius: 4px;
		padding: 12px;
		text-align: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		font-size: 15px;
	}
	header.template_c2 .gnavi_contact a .txt {
		padding-left: 25px;
		background: url("../image/common/icon_mail.png") no-repeat left center/15px auto;
	}
	header.template_c2 .gnavi_contact.no2 a {
		background: #293337;
	}
	header.template_c2 .gnavi_area ul {
		display: block;
		border-top: 1px solid #eeeeee;
	}
	header.template_c2 .gnavi_area ul li {
		width: 100%;
		margin-right: 0;
		height: auto;
		border-bottom: 1px solid #eeeeee;
	}
	header.template_c2 .gnavi_area ul li a {
		width: 100%;
		height: 100%;
		display: block;
		padding: 12px 16px;
	}
	header.template_c2 .gnavi_area ul li a::after {
		display: none;
	}
	header.template_c2 .gnavi_btn_sp {
		display: block;
		position: absolute;
		top: 8px;
		width: 60px;
		right: 12px;
		text-align: center;
		line-height: 1;
	}
	header.template_c2 .gnavi_btn_sp .close {
		display: none;
		font-weight: bold;
	}
	header.template_c2 .gnavi_btn_sp .open {
		font-weight: bold;
	}
	header.template_c2 .gnavi_btn_sp.active .close {
		display: block;
		font-weight: bold;
	}
	header.template_c2 .gnavi_btn_sp.active .open {
		display: none;
	}
	header.template_c2 .gnavi_btn_sp_in {
		position: relative;
		width: 26px;
		height: 20px;
		cursor: pointer;
		z-index: 2;
	}
	header.template_c2 .gnavi_btn_sp_in,
	header.template_c2 .gnavi_btn_sp_in span {
		display: inline-block;
		-webkit-transition: all .4s;
		-o-transition: all .4s;
		transition: all .4s;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
	header.template_c2 .gnavi_btn_sp_in span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 4px;
		background-color: #333333;
		border-radius: 4px;
	}
	header.template_c2 .gnavi_btn_sp_in span:nth-of-type(1) {
		top: 0;
	}
	header.template_c2 .gnavi_btn_sp_in span:nth-of-type(2) {
		top: 8px;
	}
	header.template_c2 .gnavi_btn_sp_in span:nth-of-type(3) {
		top: 16px;
	}
	header.template_c2 .gnavi_btn_sp.active .gnavi_btn_sp_in span:nth-of-type(1) {
		-webkit-transform: translateY(16px) rotate(-45deg);
		-ms-transform: translateY(16px) rotate(-45deg);
		transform: translateY(16px) rotate(-45deg);
		top: -8px;
	}
	header.template_c2 .gnavi_btn_sp.active .gnavi_btn_sp_in span:nth-of-type(2) {
		opacity: 0;
	}
	header.template_c2 .gnavi_btn_sp.active .gnavi_btn_sp_in span:nth-of-type(3) {
		-webkit-transform: translateY(-16px) rotate(45deg);
		-ms-transform: translateY(-16px) rotate(45deg);
		transform: translateY(-16px) rotate(45deg);
		top: 24px;
	}
}

body.dcms_editor header.template_c2 {
	position: static;
}

/*-----------------------------------------------------------------

メインイメージ slick

-----------------------------------------------------------------*/
.main_area {
	margin-top: 85px;
	height: 640px;
	width: 100%;
	z-index: 2;
	margin-bottom: 0;
}

.main_area .slick-track, .main_area .slick-list {
	height: 100%;
}

.main_area .main_block {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.main_area .main_txt {
	display: table;
	width: 90%;
	max-width: 1000px;
	margin: auto;
	height: 100%;
}

.main_area .main_txt_in {
	display: table-cell;
	vertical-align: middle;
}

.main_area .main_lead {
	font-size: 40px;
}

.main_area .main_btn a {
	display: inline-block;
	background-color: #293337;
	color: #ffffff;
	padding: 16px 4em;
	text-align: center;
	position: relative;
	line-height: 1.2;
	border-color: #293337;
	border-width: 2px;
	border-style: solid;
	margin-top: 48px;
	min-width: 240px;
}

.main_area .main_btn a::after {
	content: "";
	width: 6px;
	height: 6px;
	border-top: 2px solid #ffffff;
	border-right: 2px solid #ffffff;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: calc(50% - 4px);
	right: 1.5em;
	-webkit-transition: all .3s ease 0s;
	-o-transition: all .3s ease 0s;
	transition: all .3s ease 0s;
}

.main_area .main_btn a:hover::after {
	border-color: #333333;
	right: 1.3em;
}

.main_area .main_btn a:hover {
	background-color: #ffffff;
	color: #293337;
	text-decoration: none;
}

@media only screen and (max-width: 690px) {
	.main_area {
		margin-top: 50px;
		height: 400px;
	}
	.main_area .main_lead {
		font-size: 28px;
		line-height: 1.4;
	}
	.main_area .main_btn a {
		margin-top: 20px;
	}
}

/*-----------------------------------------------------------------

top lead

-----------------------------------------------------------------*/
#top_lead {
	background-color: #f5f5f5;
	padding-bottom: 60px;
	margin-bottom: 60px;
}

#top_lead .lead_block {
	background-color: #ffffff;
	width: 100%;
	max-width: 880px;
	margin: -60px auto 0;
	position: relative;
	z-index: 100;
	padding: 40px 40px;
	text-align: center;
	-webkit-box-shadow: 0 8px 20px 2px rgba(0, 0, 0, 0.1);
	box-shadow: 0 8px 20px 2px rgba(0, 0, 0, 0.1);
}

#top_lead .lead_title {
	font-size: 32px;
	font-weight: bold;
	line-height: 1.2;
}

@media only screen and (max-width: 1119px) {
	#top_lead .lead_block {
		width: 88%;
		margin-top: -120px;
	}
}

@media only screen and (max-width: 690px) {
	#top_lead {
		margin-bottom: 40px;
		padding-bottom: 40px;
	}
	#top_lead .lead_block {
		margin: -70px auto 0;
		padding: 24px 16px;
	}
	#top_lead .lead_title {
		font-size: 22px;
	}
}

body.dcms_editor #top_lead .lead_block,
body#tinymce #top_lead .lead_block {
	margin: 0 auto;
}

/*-----------------------------------------------------------------

top title

-----------------------------------------------------------------*/
.top_title_center_underbar {
	text-align: center;
	font-size: 32px;
	line-height: 1.2;
	font-weight: bold;
}

.top_title_center_underbar_en {
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	letter-spacing: .1em;
	margin-top: 20px;
}

.top_title_left_underbar {
	text-align: left;
	font-size: 32px;
	line-height: 1.2;
	font-weight: bold;
}

.top_title_left_underbar_en {
	text-align: left;
	font-size: 16px;
	font-weight: bold;
	letter-spacing: .1em;
	margin-top: 24px;
}

.top_title_s_left_underbar {
	text-align: left;
	font-size: 28px;
	line-height: 1.2;
	font-weight: bold;
}

.top_title_s_left_underbar_en {
	text-align: left;
	font-size: 15px;
	font-weight: bold;
	letter-spacing: .1em;
	margin-top: 12px;
}

@media only screen and (max-width: 690px) {
	.top_title_center_underbar,
	.top_title_left_underbar {
		font-size: 26px;
	}
	.top_title_center_underbar_en,
	.top_title_left_underbar_en {
		font-size: 14px;
		margin-top: 20px;
	}
	.top_title_s_left_underbar {
		font-size: 24px;
	}
	.top_title_s_left_underbar_en {
		font-size: 12px;
	}
}

/*-----------------------------------------------------------------

footer

-----------------------------------------------------------------*/
body.page_index footer.template_c2 {
	margin-top: 80px;
}

footer.template_c2 #footer_lead {
	border-top: 1px solid #cccccc;
}

footer.template_c2 .footer_lead_block {
	padding-top: 20px;
	padding-bottom: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

footer.template_c2 .footer_logo {
	width: 220px;
}

footer.template_c2 .footer_logo a {
	display: block;
}

footer.template_c2 .footer_logo a img {
	max-width: 100%;
	width: auto;
	height: auto;
}

footer.template_c2 .footer_sns {
	margin-left: auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

footer.template_c2 .footer_sns a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-left: 10px;
}

footer.template_c2 #footer_nav {
	background-color: #f5f5f5;
}

footer.template_c2 #footer_nav .footer_nav_block {
	padding-top: 48px;
	padding-bottom: 16px;
}

footer.template_c2 .footer_nav_block {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

footer.template_c2 .fnav_unit {
	width: 25%;
}

footer.template_c2 .fnav_unit_one {
	margin-bottom: 32px;
}

footer.template_c2 .fnav_title {
	margin-bottom: 16px;
}

footer.template_c2 .fnav_title a {
	background: url("../image/icon_arr.png") no-repeat left 5px/10px auto;
	padding-left: 18px;
	line-height: 1.2;
	font-size: 15px;
	font-weight: bold;
}

footer.template_c2 .fnav_list li {
	list-style: none;
	padding-left: 10px;
	margin-bottom: 8px;
	line-height: 1.4;
}

footer.template_c2 .fnav_list li a {
	position: relative;
	padding-left: 13px;
}

footer.template_c2 .fnav_list li a::before {
	content: '';
	width: 4px;
	height: 4px;
	border: 0px;
	border-top: solid 1px #ED1C21;
	border-right: solid 1px #ED1C21;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -2px;
}

footer.template_c2 #footer_info {
	background-color: #293337;
}

footer.template_c2 #footer_info .inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding-top: 8px;
	padding-bottom: 8px;
}

footer.template_c2 #footer_info .footer_info_navi a {
	color: #ffffff;
	padding-right: 32px;
}

footer.template_c2 #footer_info .footer_info_navi a + a {
	padding-left: 32px;
	border-left: 1px solid #ffffff;
}

footer.template_c2 #footer_info small {
	margin-left: auto;
	color: #ffffff;
}

@media only screen and (max-width: 979px) {
	body.page_index footer.template_c2 {
		margin-top: 60px;
	}
	footer.template_c2 .fnav_unit {
		width: 33.333%;
	}
}

@media only screen and (max-width: 690px) {
	body.page_index footer.template_c2 {
		margin-top: 40px;
	}
	footer.template_c2 .fnav_unit {
		width: 100%;
	}
	footer.template_c2 .fnav_unit_one {
		margin-bottom: 0;
	}
	footer.template_c2 #footer_nav .footer_nav_block {
		padding: 0;
	}
	footer.template_c2 .fnav_list {
		display: none;
	}
	footer.template_c2 .fnav_title {
		margin-bottom: 0;
	}
	footer.template_c2 .fnav_title a {
		display: block;
		padding: 12px 8px 12px 35px;
		background-position: 15px 15px;
		border-top: 1px solid #eeeeee;
		font-size: 14px;
		font-weight: normal;
	}
	footer.template_c2 .fnav_unit:last-child .fnav_title a {
		border-bottom: 1px solid #eeeeee;
	}
	footer.template_c2 #footer_info .inner {
		display: block;
		text-align: center;
		padding-top: 20px;
		padding-bottom: 8px;
	}
	footer.template_c2 #footer_info .footer_info_navi a {
		color: #ffffff;
		padding: 2px 24px;
		font-size: 12px;
	}
	footer.template_c2 #footer_info small {
		display: block;
		margin-top: 20px;
		padding-top: 8px;
		border-top: 1px solid rgba(255, 255, 255, 0.1);
	}
	footer.template_c2 .footer_logo {
		max-width: 120px;
	}
	footer.template_c2 .footer_sns a img {
		width: 30px;
		height: 30px;
	}
}

/*-----------------------------------------------------------------

ぱんくず locator

-----------------------------------------------------------------*/
#locator_template_c2 {
	font-size: 10px;
	line-height: 1.4;
	padding: 12px 0;
	border-width: 1px 0 1px 0;
	border-style: solid;
	width: 100vw;
	margin-bottom: 40px;
	margin-top: 85px;
	margin-bottom: 0;
	width: 100%;
}

#locator_template_c2 li {
	display: inline-block;
	list-style: none;
	margin-right: 6px;
	position: relative;
}

#locator_template_c2 li::after {
	content: ">";
	margin-left: 6px;
}

#locator_template_c2 li a {
	text-decoration: underline;
}

#locator_template_c2 li:last-child::after {
	display: none;
}

#locator_template_c2 li:first-child {
	margin-left: 0;
}

@media only screen and (max-width: 690px) {
	#locator_template_c2 {
		margin-top: 50px;
		padding: 8px 0;
	}
}

/*-----------------------------------------------------------------

 pagetop

-----------------------------------------------------------------*/
#topcontrol {
	z-index: 150;
	margin-bottom: 0;
}

#topcontrol a.pagetop {
	background-image: none;
}

a.pagetop {
	width: 72px;
	height: 72px;
	display: block;
	z-index: 50;
	border: #333333;
	background-color: #333333;
	position: relative;
}

a.pagetop::before {
	position: absolute;
	top: calc(50% - 6px);
	left: 0;
	right: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	width: 24px;
	height: 24px;
	border-top: 2px solid #ffffff;
	border-right: 2px solid #ffffff;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

@media only screen and (max-width: 979px) {
	#topcontrol {
		margin-bottom: 0;
	}
	a.pagetop {
		width: 50px;
		height: 50px;
		background-size: 50px 50px;
	}
	a.pagetop::before {
		top: calc(50% - 4px);
		width: 16px;
		height: 16px;
	}
}

@media only screen and (max-width: 690px) {
	#topcontrol {
		display: none;
	}
}

/*-----------------------------------------------------------------*/
/* サイトマップ */
/*-----------------------------------------------------------------*/
#sitemap li {
	margin: 10px 0;
	padding: 0 0 0 15px;
	list-style-type: none;
	position: relative;
}

#sitemap ul {
	padding: 0 0 5px 25px;
}

#sitemap ul li {
	margin: 5px 0;
}

#sitemap li::before {
	content: "";
	width: 4px;
	height: 4px;
	border-top: 2px solid #CA062B;
	border-right: 2px solid #CA062B;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 12px;
	left: 0;
}

/*-----------------------------------------------------------------

pagetitle

-----------------------------------------------------------------*/
#pagetitle.template_c2 {
	padding: 80px 0;
	margin-bottom: 40px;
	text-align: center;
	background-image: url(https://soispace.com/dcms_media/image/pagetitle_bg_template_c2.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
}

#pagetitle.template_c2 .pagetitle_bg {
	position: absolute;
	top: 0;
	left: 0;
	background-color: rgba(0, 0, 0, 0.6);
	z-index: 2;
}

#pagetitle.template_c2 .pagetitle_block {
	position: relative;
	z-index: 3;
}

#pagetitle.template_c2 .pagetitle_block .pagetitle {
	color: #ffffff;
	font-size: 32px;
	font-weight: bold;
	position: relative;
}

#pagetitle.template_c2 .pagetitle_block .pagetitle::after {
	content: "";
	width: 30px;
	height: 4px;
	background-color: #ED1C21;
	position: absolute;
	bottom: -10px;
	left: calc(50% - 15px);
}

@media only screen and (max-width: 979px) {
	#contents_left #pagetitle.template_c2 {
		margin-right: calc(50% - 50vw);
		margin-left: calc(50% - 50vw);
	}
	#pagetitle.template_c2 {
		margin-bottom: 24px;
		padding: 20px 0;
	}
	#pagetitle.template_c2 .pagetitle_block .pagetitle {
		font-size: 24px;
		margin-top: 15px;
		margin-bottom: 15px;
	}
	#pagetitle.template_c2 .pagetitle_block .pagetitle::after {
		height: 3px;
		bottom: -5px;
	}
}

/*-----------------------------------------------------------------

 rss

-----------------------------------------------------------------*/
.rss_box dl {
	padding-bottom: 16px;
	margin-bottom: 16px;
	border-width: 0 0 1px 0;
	border-style: solid;
}

.rss_box dl:after {
	content: "";
	display: table;
	clear: both;
}

.rss_date {
	float: left;
	width: 12%;
}

.rss_title {
	float: right;
	width: 88%;
	padding-left: 20px;
}

.rss_title a:hover {
	text-decoration: underline;
}

.rss_contents {
	clear: both;
	padding: 8px 0 0 calc(12% + 20px);
	font-size: .9em;
}

.rss_new {
	display: inline-block;
	padding: 3px 12px 2px;
	font-size: 10px;
	margin-right: 10px;
	vertical-align: middle;
	border-radius: 4px;
}

@media only screen and (max-width: 979px) {
	.rss_date {
		width: 14%;
	}
	.rss_title {
		width: 86%;
	}
	.rss_contents {
		padding-left: calc(14% + 15px);
	}
}

@media only screen and (max-width: 690px) {
	.rss_date,
	.rss_title {
		width: 100%;
		float: none;
	}
	.rss_date {
		font-size: .85em;
	}
	.rss_title {
		padding: 3px 0;
	}
	.rss_contents {
		padding: 5px 0 0 0;
	}
}

/*-----------------------------------------------------------------

NEWS-F

-----------------------------------------------------------------*/
.rss_f {
	border-width: 1px;
	border-style: solid;
}

.rss_f_title {
	font-size: 20px;
	font-weight: bold;
	padding: 12px 24px;
	border-width: 0 0 1px 0;
	border-style: solid;
}

.rss_f dl {
	border-bottom: none;
	padding-bottom: 0;
}

.rss_f dl:last-child {
	margin-bottom: 0;
}

.rss_f .rss_contents {
	display: none;
}

.rss_f_wrap {
	padding: 20px 32px;
}

.rss_f .rss_box {
	padding-right: 40px;
}

@media only screen and (max-width: 979px) {
	.rss_f_wrap {
		padding: 20px 16px;
	}
}

/*-----------------------------------------------------------------

case info

-----------------------------------------------------------------*/
.case_info {
	padding: 16px 0 16px 24px;
	border-left: 2px solid #dddddd;
}

.case_info_list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 8px;
}

.case_info_list dt {
	width: 120px;
	font-weight: bold;
}

.case_info_list dd {
	width: calc(100% - 120px);
	padding-left: 16px;
}

/*-----------------------------------------------------------------

support info

-----------------------------------------------------------------*/
.support_info {
	padding: 3em 5% 1.5em;
	border: 1px solid #dddddd;
}

.support_info_title {
	font-size: 24px;
	line-height: 1.4;
	margin-bottom: 40px;
}

.si_tel, .si_mail {
	font-size: 48px;
	line-height: 1.2;
}

@media only screen and (max-width: 979px) {
	.support_info_title {
		font-weight: bold;
		font-size: 20px;
	}
	.si_tel, .si_mail {
		font-size: 36px;
	}
	.si_tel::before {
		font-size: 20px;
	}
	.si_mail::before {
		font-size: 16px;
	}
}

@media only screen and (max-width: 690px) {
	.support_info {
		padding: 2em 16px .5em;
	}
	.si_tel, .si_mail {
		font-size: 32px;
	}
	.si_tel::before {
		font-size: 16px;
	}
	.si_mail::before {
		font-size: 14px;
	}
}

.dlb_box2-2_it .dlb_box2-2_txt {
	position: relative;
}

.dlb_box2-2_it .dlb_box2-2_txt::before {
	position: absolute;
	top: calc(50% - 10px);
	left: -16px;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 16px 10px 0;
	border-color: transparent #ffffff transparent transparent;
}

.dlb_box2-2_ti .dlb_box2-2_txt {
	position: relative;
}

.dlb_box2-2_ti .dlb_box2-2_txt::after {
	position: absolute;
	top: calc(50% - 10px);
	right: -16px;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 0 10px 16px;
	border-color: transparent transparent transparent #ffffff;
}

@media only screen and (max-width: 690px) {
	.dlb_box2-2_it .dlb_box2-2_txt::before,
	.dlb_box2-2_ti .dlb_box2-2_txt::after {
		display: none;
	}
}

/*-----------------------------------------------------------------

faq

-----------------------------------------------------------------*/
.faq_block {
	padding-top: 16px;
	border-top: 2px solid #dddddd;
}

.faq_title {
	font-size: 120%;
	font-weight: bold;
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: 1px dotted #dddddd;
}

/*-----------------------------------------------------------------

adobe link

-----------------------------------------------------------------*/
.adobe_link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #f5f5f5;
	padding: 3em 1em;
}

.adobe_link .icon {
	margin-right: 5%;
}

.adobe_link .txt a {
	background: url("../image/icon_target.png") no-repeat left center/16px auto;
	padding-left: 20px;
}

.adobe_link .txt a:hover {
	text-decoration: underline;
}

@media only screen and (max-width: 979px) {
	.adobe_link {
		display: none;
	}
}

/*-----------------------------------------------------------------

TOP サービス紹介ブロック

-----------------------------------------------------------------*/
.list_icon li {
	list-style: none;
	background-position: left center;
	background-size: 48px auto;
	padding: 12px 0 12px 70px;
	background-repeat: no-repeat;
	margin-bottom: 16px;
	font-weight: bold;
	font-size: 16px;
}

.list_icon li.list_icon01 {
	background-image: url(../image/icon_chat.png);
}

.list_icon li.list_icon02 {
	background-image: url(../image/icon_headset.png);
}

.list_icon li.list_icon03 {
	background-image: url(../image/icon_laptop.png);
}

.list_icon li.list_icon04 {
	background-image: url(../image/icon_help.png);
}

.col_bg .dlb_box2-2_area .dlb_box2-2_txt {
	background-color: #ffffff;
}

.col_bg .dlb_box2-2_area {
	-webkit-box-shadow: 5px 5px 4px 0px rgba(0, 0, 0, 0.1);
	box-shadow: 5px 5px 4px 0px rgba(0, 0, 0, 0.1);
}

.list_link .col {
	height: 280px;
	position: relative;
	-webkit-transition: all .2s ease 0s;
	-o-transition: all .2s ease 0s;
	transition: all .2s ease 0s;
}

.list_link .col::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(51, 51, 51, 0.7);
}

.list_link .col:hover {
	-webkit-box-shadow: 3px 3px 5px 0px rgba(0, 0, 0, 0.3);
	box-shadow: 3px 3px 5px 0px rgba(0, 0, 0, 0.3);
}

.list_link .col:hover a {
	text-decoration: underline;
}

.list_link .col:hover::before {
	background-color: rgba(51, 51, 51, 0.4);
}

.list_link .list_link_img {
	height: 100%;
}

.list_link .list_link_txt {
	position: absolute;
	z-index: 2;
	height: 100%;
	display: table;
}

.list_link .list_link_txt_in {
	padding: 16px 1em;
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	color: #ffffff;
}

.list_link .list_link_txt_in a {
	color: #ffffff;
}

.list_link .list_link_title {
	font-size: 28px;
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 8px;
}

.list_link .list_link_title_en {
	font-size: 13px;
	margin-bottom: 16px;
	letter-spacing: .1em;
	line-height: 1.2;
}

@media only screen and (max-width: 690px) {
	.list_link .col {
		height: 160px;
	}
	.list_link .list_link_title {
		font-size: 24px;
	}
	.list_link .list_link_txt_in {
		padding: 8px 1.5em;
	}
}

/*---------------------------------------------------------------
-----------------------------------------------------------------

dlb_box3-6_area ブロックダウンロード

-----------------------------------------------------------------
-----------------------------------------------------------------*/
.dlb_box3-6_area .col {
	border: 1px solid #dddddd;
	-webkit-transition: all .3s ease 0s;
	-o-transition: all .3s ease 0s;
	transition: all .3s ease 0s;
	background-color: #ffffff;
}

.dlb_box3-6_area .col:hover {
	-webkit-box-shadow: 5px 2px 10px 2px rgba(0, 0, 0, 0.1);
	box-shadow: 5px 2px 10px 2px rgba(0, 0, 0, 0.1);
}

.dlb_box3-6_area .col:hover .txt_link {
	text-decoration: underline;
	color: #ED1C21;
}

.dlb_box3-6_area .dlb_box3-6_txt {
	padding: 24px;
}

/* ----------------------------

サムネイル名 ： フロー図 No.01

----------------------------- */
.dlb-flow_area_2 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 100%;
}

.dlb-flow_area_2 .dlb-flow_item {
	width: 120px;
	text-align: center;
	padding: 4% 2%;
	font-size: 12px;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.dlb-flow_area_2 .dlb-flow_num {
	margin-bottom: 30px;
	position: relative;
	letter-spacing: .1em;
	font-weight: bold;
}

.dlb-flow_area_2 .dlb-flow_num::after {
	content: "";
	width: 16px;
	height: 2px;
	position: absolute;
	bottom: -15px;
	left: calc(50% - 8px);
}

.dlb-flow_area_2 .dlb-flow_txt {
	width: calc(100% - 120px);
	padding: 1.5em;
	border-width: 1px;
	border-style: solid;
}

.dlb-flow_area_2 .dlb-flow_title {
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 10px;
	line-height: 1.4;
}

.dlb-flow_area_2 + .dlb-flow_area_2 {
	margin-top: 40px;
}

.dlb-flow_area_2 + .dlb-flow_area_2 .dlb-flow_item::before {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 20px 12px 0 12px;
	position: absolute;
	top: -30px;
	left: calc(50% - 12px);
}

@media only screen and (max-width: 690px) {
	.dlb-flow_area_2 {
		position: relative;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.dlb-flow_area_2 .dlb-flow_item {
		width: 100%;
		max-width: 100%;
		text-align: left;
		padding: 1em 1.5em;
	}
	.dlb-flow_area_2 .dlb-flow_num {
		margin-bottom: 0;
		margin-right: 5px;
		display: inline-block;
		font-size: 12px;
	}
	.dlb-flow_area_2 .dlb-flow_num::after {
		display: none;
	}
	.dlb-flow_area_2::after {
		display: none;
	}
	.dlb-flow_area_2 .dlb-flow_txt {
		display: block;
		width: 100%;
		padding: 20px;
	}
	.dlb-flow_area_2 .dlb-flow_title {
		font-size: 18px;
	}
	.dlb-flow_area_2 .col_l {
		margin-top: 0;
	}
}

.dlb-flow_area_2.last .dlb-flow_item::after,
.dlb-flow_area_2.last::after {
	display: none;
}

/* ----------------------------

サムネイル名 ： ポイント No.01

----------------------------- */
.dlb-point_area_1 .col {
	padding: 24px;
	border: 1px solid #dddddd;
	border-radius: 6px;
}

.dlb-point_area_1 .dlb-point_num {
	width: 90%;
	margin: -44px auto 24px;
	text-align: center;
	background-color: #ED1C21;
	color: #ffffff;
	line-height: 40px;
	font-weight: bold;
}

.dlb-point_area_1 .dlb-point_title {
	font-weight: bold;
	font-size: 18px;
	margin-bottom: 8px;
	line-height: 1.4;
}

@media only screen and (max-width: 979px) {
	.dlb-point_area_1 .col {
		margin-bottom: 50px;
	}
}

@media only screen and (max-width: 690px) {
	.dlb-point_area_1 .col {
		margin-bottom: 40px;
	}
}

/*-----------------------------------------------------------------

サムネイル名 ： box No.

-----------------------------------------------------------------*/
.dlb_box2-9_img {
	float: right;
	width: 240px;
	margin-right: 0;
	margin-left: 32px;
	margin-bottom: 32px;
}

@media only screen and (max-width: 690px) {
	.dlb_box2-9_block {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.dlb_box2-9_img {
		width: 100%;
		-ms-flex-preferred-size: 100%;
		flex-basis: 100%;
		margin: 16px 0 0 0;
		-webkit-box-ordinal-group: 3;
		-ms-flex-order: 2;
		order: 2;
	}
	.dlb_box2-9_txt {
		width: 100%;
		-webkit-box-ordinal-group: 2;
		-ms-flex-order: 1;
		order: 1;
		-ms-flex-preferred-size: 100%;
		flex-basis: 100%;
	}
}

/*-----------------------------------------------------------------

CTA 共通お問い合わせ

-----------------------------------------------------------------*/
#cta_area.template_c2 {
	background-color: #293337;
	padding: 32px 16px 40px;
}

#cta_area.template_c2 .cta_block {
	max-width: 880px;
	margin: auto;
}

#cta_area.template_c2 .cta_title {
	text-align: center;
	color: #ffffff;
	font-size: 22px;
	margin-bottom: 32px;
	font-weight: bold;
	line-height: 1.4;
}

#cta_area.template_c2 .cta_block .col {
	padding: 0 16px;
}

#cta_area.template_c2 .cta_txt {
	text-align: center;
	color: #ffffff;
	font-size: 18px;
	margin-bottom: 16px;
}

#cta_area.template_c2 .cta_btn {
	max-width: 400px;
	margin: auto;
}

#cta_area.template_c2 .cta_btn a {
	display: block;
	color: #ffffff;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	padding: 24px 16px 24px 8px;
	border-radius: 6px;
	-webkit-box-shadow: 0 0 4px 2px rgba(0, 0, 0, 0.2);
	box-shadow: 0 0 4px 2px rgba(0, 0, 0, 0.2);
}

#cta_area.template_c2 .cta_l .cta_btn a {
	background-color: #ED1C21;
}

#cta_area.template_c2 .cta_r .cta_btn a {
	background-color: #1E7B7E;
}

#cta_area.template_c2 .cta_btn a:hover {
	text-decoration: none;
	-webkit-box-shadow: 0 0 8px 4px rgba(0, 0, 0, 0.4);
	box-shadow: 0 0 8px 4px rgba(0, 0, 0, 0.4);
}

@media only screen and (max-width: 690px) {
	#cta_area.template_c2 {
		padding-bottom: 16px;
	}
	#cta_area.template_c2 .cta_title {
		margin-bottom: 8px;
		font-size: 18px;
	}
	#cta_area.template_c2 .cta_block .col {
		width: 100%;
		margin: 16px auto 24px;
	}
	#cta_area.template_c2 .cta_btn a {
		font-size: 16px;
		background-size: 16px auto;
	}
	#cta_area.template_c2 .cta_txt {
		margin-bottom: 12px;
	}
}

/*-----------------------------------------------------------------

製品詳細 (template common)

-----------------------------------------------------------------*/
/*-- template item product btn -----------------------------------------*/
.templateitem_btn_area {
	padding: 40px 0 40px;
}

/* btn */
.templateitem_btn li {
	list-style: none;
	margin-bottom: 0;
}

.templateitem_btn li a {
	display: block;
	text-align: center;
	padding: 16px 8px;
	border-radius: 50px;
	font-weight: bold;
	font-size: 16px;
	position: relative;
}

.templateitem_btn li a::after {
	content: '';
	width: 6px;
	height: 6px;
	border: 0px;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	bottom: calc(50% - 3px);
	right: 30px;
	-webkit-transition: all .2s ease 0s;
	-o-transition: all .2s ease 0s;
	transition: all .2s ease 0s;
}

.templateitem_btn li a:hover {
	text-decoration: none;
}

.templateitem_btn li a:hover::after {
	right: 27px;
}

@media only screen and (max-width: 979px) {
	.templateitem_btn_area {
		padding: 40px 0 15px;
	}
	.templateitem_btn li {
		margin-bottom: 25px;
	}
}

@media only screen and (max-width: 690px) {
	.templateitem_btn_area {
		padding: 30px 0 15px;
	}
	.templateitem_btn li {
		margin-bottom: 15px;
	}
	.templateitem_btn li a {
		font-size: 14px;
	}
}

/*-- template item product link -----------------------------------------*/
/* link */
.templateitem_link li {
	list-style: none;
	margin-bottom: 0;
}

.templateitem_link li a {
	display: block;
	padding: 20px 8px 20px 90px;
	background-size: 40px 40px;
	background-repeat: no-repeat;
	background-position: 30px center;
	font-size: 18px;
	position: relative;
}

.templateitem_link li a::after {
	content: '';
	width: 6px;
	height: 6px;
	border: 0px;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	bottom: calc(50% - 3px);
	right: 30px;
	-webkit-transition: all .2s ease 0s;
	-o-transition: all .2s ease 0s;
	transition: all .2s ease 0s;
}

.templateitem_link li a:hover {
	text-decoration: none;
}

.templateitem_link li a:hover::after {
	right: 27px;
}

.templateitem_link li.icon a {
	padding: 20px 8px 20px 40px;
}

.templateitem_link li em {
	margin-right: 15px;
	font-size: 22px;
}

@media only screen and (max-width: 690px) {
	.templateitem_link li a {
		font-size: 16px;
		background-size: 30px 30px;
		background-position: 20px center;
		padding-left: 70px;
	}
}

/*-- template item product contents title -----------------------------------------*/
.templateitemcon_lead_area {
	margin-bottom: 25px;
}

.templateitemcon_title {
	position: relative;
	font-size: 24px;
	font-weight: bold;
	line-height: 1.4;
	padding-bottom: 10px;
	margin-bottom: 25px;
}

.templateitemcon_title::after {
	content: "";
	width: 40px;
	height: 2px;
	position: absolute;
	bottom: 0;
	left: 0;
}

.templateitemcon_lead {
	font-size: 24px;
	font-weight: bold;
}

@media only screen and (max-width: 979px) {
	.templateitemcon_lead_area {
		margin-bottom: 20px;
	}
	.templateitemcon_lead {
		font-size: 24px;
	}
}

@media only screen and (max-width: 690px) {
	.templateitemcon_title {
		padding-bottom: 10px;
		margin-bottom: 15px;
	}
	.templateitemcon_lead {
		font-size: 18px;
	}
}

/*-- template item product contents 01 -----------------------------------------*/
.templateitemcon01_area {
	padding: 60px 0;
}

.templateitemcon01_box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.templateitemcon01_img {
	width: 42%;
}

.templateitemcon01_txt {
	width: 58%;
	padding-left: 60px;
}

.templateitemcon01_catch {
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 25px;
}

@media only screen and (max-width: 979px) {
	.templateitemcon01_area {
		padding: 50px 0;
	}
	.templateitemcon01_img {
		width: 45%;
	}
	.templateitemcon01_txt {
		width: 55%;
		padding-left: 30px;
	}
	.templateitemcon01_catch {
		font-size: 20px;
		margin-bottom: 15px;
	}
}

@media only screen and (max-width: 690px) {
	.templateitemcon01_area {
		padding: 30px 0;
	}
	.templateitemcon01_box {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
	}
	.templateitemcon01_img {
		width: 100%;
	}
	.templateitemcon01_txt {
		width: 100%;
		padding-left: 0;
		margin-top: 20px;
	}
	.templateitemcon01_catch {
		font-size: 18px;
	}
}

/*-- template item product contents 02 -----------------------------------------*/
.templateitemcon02_area .col .col {
	margin-bottom: 0;
}

.templateitemcon_subtitle {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 10px;
}

@media only screen and (max-width: 979px) {
	.templateitemcon02_area .col .col {
		width: calc(50% - 12px);
		margin-left: 24px;
	}
	.templateitemcon02_area .col .col:nth-child(2n+1) {
		margin-left: 0;
	}
}

@media only screen and (max-width: 690px) {
	.templateitemcon02_area .col .col {
		width: 100%;
		margin-left: 0;
		margin-bottom: 24px;
	}
	.templateitemcon02_area .col .col:last-child {
		margin-bottom: 0;
	}
	.templateitemcon02_area .col .col:nth-child(2n+1) {
		margin-left: 0;
	}
}

/*-- template item product contents 08 -----------------------------------------*/
@media only screen and (max-width: 979px) {
	.templateitemcon08_area .col .col {
		width: calc(50% - 12px);
		margin-left: 24px;
		margin-bottom: 0;
	}
	.templateitemcon08_area .col .col:nth-child(2n+1) {
		margin-left: 0;
	}
}

@media only screen and (max-width: 690px) {
	.templateitemcon08_area .col {
		margin-bottom: 24px;
	}
	.templateitemcon08_area .col .col {
		width: 100%;
		margin-left: 0;
		margin-bottom: 16px;
	}
}

/*-- template item product contents 09 -----------------------------------------*/
@media only screen and (max-width: 979px) {
	.easyzoom img {
		max-width: 100%;
		height: auto;
		width: auto;
		display: block;
		margin: auto;
	}
}

/*-- template item product contents 10 -----------------------------------------*/
.templateitemcon10_area {
	padding: 30px 0 20px;
}

.templateitemcon10_block {
	max-width: 980px;
}

.templateitemcon10_title {
	font-weight: bold;
	font-size: 24px;
	margin-bottom: 15px;
	text-align: center;
}

.templateitemcon10_box {
	height: 200px;
	position: relative;
}

.templateitemcon10_box::after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 0;
	-webkit-transition: all .3s ease 0s;
	-o-transition: all .3s ease 0s;
	transition: all .3s ease 0s;
}

.templateitemcon10_bg {
	height: 200px;
	position: relative;
}

.templateitemcon10_txt {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 10%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	height: 100%;
	width: 100%;
	font-weight: bold;
	text-align: center;
}

.templateitemcon10_txt a {
	display: block;
	position: relative;
}

.templateitemcon10_txt a[target="_blank"]::before {
	content: "";
	display: block;
	margin: 0 auto 15px;
	width: 20px;
	height: 20px;
}

.templateitemcon10_box:hover a,
.templateitemcon10_box a:hover {
	text-decoration: none;
}

@media only screen and (max-width: 979px) {
	.templateitemcon10_area {
		padding: 40px 0 10px;
	}
	.templateitemcon10_title {
		font-size: 20px;
		margin-bottom: 20px;
	}
	.templateitemcon10_box {
		height: auto;
	}
	.templateitemcon10_box::after {
		display: none;
	}
	.templateitemcon10_block .templateitemcon10_box {
		margin-bottom: 30px;
	}
	.templateitemcon10_txt {
		position: relative;
		height: auto;
		padding: 15px 0 0;
		display: block;
	}
	.templateitemcon10_txt a {
		text-align: left;
	}
	.templateitemcon10_txt a[target="_blank"]::before {
		display: none;
	}
	.templateitemcon10_txt a[target="_blank"]::after {
		content: "";
		display: inline-block;
		width: 14px;
		height: 14px;
		margin-left: 8px;
	}
	.templateitemcon10_bg {
		height: auto;
	}
	.templateitemcon10_bg img {
		height: auto;
		width: auto;
		max-width: 100%;
		display: block;
		margin: auto;
	}
}

/*-- template item product contents 11 -----------------------------------------*/
.templateitemcon11_box {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	height: 280px;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 2% 8%;
}

.templateitemcon11_box::after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 0;
	-webkit-transition: all .3s ease 0s;
	-o-transition: all .3s ease 0s;
	transition: all .3s ease 0s;
	z-index: 0;
}

.templateitemcon11_block .templateitemcon11_box {
	margin: 0;
	width: 50%;
}

.templateitemcon11_boxin {
	position: relative;
	z-index: 1;
	width: 100%;
}

.templateitemcon11_title {
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 20px;
	line-height: 1.4;
}

.templateitemcon11_txt {
	text-align: center;
	margin-bottom: 30px;
}

.templateitemcon11_btn {
	text-align: center;
}

.templateitemcon11_btn a {
	display: inline-block;
	min-width: 300px;
	padding: 10px 8px;
	border-radius: 80px;
	font-size: 16px;
	position: relative;
}

.templateitemcon11_btn a::after {
	content: '';
	width: 6px;
	height: 6px;
	border: 0px;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	bottom: calc(50% - 3px);
	right: 30px;
	-webkit-transition: all .2s ease 0s;
	-o-transition: all .2s ease 0s;
	transition: all .2s ease 0s;
}

.templateitemcon11_btn a:hover {
	text-decoration: none;
}

@media only screen and (max-width: 690px) {
	.templateitemcon11_box {
		height: auto;
		padding: 10% 7%;
	}
	.templateitemcon11_block .templateitemcon11_box {
		width: 100%;
	}
	.templateitemcon11_title {
		font-size: 20px;
	}
	.templateitemcon11_txt {
		margin-bottom: 20px;
	}
}

.btn2lu .dlb_btn {
	width: 48%;
}

.mapinfo .col_bg {
	padding: 20px;
}

/*-----------------------------------------------------------------

txt link

-----------------------------------------------------------------*/
.txt_link.arr a {
	position: relative;
	padding-left: 13px;
}

.txt_link.arr a::before {
	content: '';
	width: 4px;
	height: 4px;
	border: 0px;
	border-width: 2px 2px 0 0;
	border-style: solid;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: calc(50% - 3px);
	left: 0;
	-webkit-transition: all .2s ease 0s;
	-o-transition: all .2s ease 0s;
	transition: all .2s ease 0s;
}

@media all and (-ms-high-contrast: none) {
	.txt_link.arr a::before {
		top: calc(50% - 5px);
	}
}

/*---------------
	subnav
----------------*/
/***-----column2-----***/
#subnav.sb_col2 {
	margin-bottom: 20px;
}

#subnav.sb_col2 ul li {
	list-style: none;
}

#subnav.sb_col2 ul li a {
	width: 100%;
	display: block;
	border-width: 0 0 1px 0;
	border-style: dotted;
	padding: 10px;
}

#subnav.sb_col2 ul li a:hover {
	text-decoration: none;
}

#subnav.sb_col2 ul li ul {
	border-bottom: none;
}

#subnav.sb_col2 ul li ul li a {
	padding: 5px 5px 5px 25px;
}

#subnav_title.sb_col2 a {
	display: block;
	text-align: center;
	padding: 8px 5px;
	font-size: 18px;
}

#subnav_title.sb_col2 a:hover {
	text-decoration: none;
}

#subnav.sb_col2 ul li a {
	padding: 8px 25px 8px 18px;
}

#subnav.sb_col2 ul li.current ul li a {
	padding: 8px 28px 8px 28px;
}

#subnav.sb_col2 ul li.current ul li.current ul li a {
	padding: 8px 28px 8px 38px;
	font-size: 0.8em;
}

#subnav.sb_col2 ul li.current ul li.current ul li.current ul li a {
	padding: 8px 28px 8px 48px;
}

#subnav.sb_col2 ul li.current ul li.current ul li.current ul li.current ul li a {
	padding: 8px 28px 8px 55px;
}

/***-----column2 No.02-----***/
#subnav.sb_col2_accordion {
	margin-bottom: 20px;
}

#subnav.sb_col2_accordion ul li {
	list-style: none;
}

#subnav.sb_col2_accordion ul li a {
	width: 100%;
	display: block;
	border-width: 0 0 1px 0;
	border-style: dotted;
	padding: 10px;
}

#subnav.sb_col2_accordion ul li a:hover {
	text-decoration: none;
}

#subnav.sb_col2_accordion ul li ul {
	border-bottom: none;
}

#subnav.sb_col2_accordion ul li ul li a {
	padding: 5px 5px 5px 25px;
}

#subnav.sb_col2_accordion .sp_btn {
	display: none;
}

#subnav_title.sb_col2_accordion a {
	display: block;
	text-align: center;
	padding: 8px 40px 8px 40px;
	font-size: 18px;
}

#subnav_title.sb_col2_accordion a:hover {
	text-decoration: none;
}

@media only screen and (max-width: 979px) {
	#subnav.sb_col2_accordion #subnav_title {
		position: relative;
	}
	#subnav.sb_col2_accordion .sp_btn {
		display: block;
		position: absolute;
		top: calc(50% - 15px);
		right: 10px;
		z-index: 2;
		width: 30px;
		height: 30px;
		border: 1px solid #cccccc;
	}
	#subnav.sb_col2_accordion .sp_btn::before, #subnav.sb_col2_accordion .sp_btn .in::after {
		position: absolute;
		top: calc(50% - 1px);
		left: 50%;
		content: '';
		display: inline-block;
		width: 10px;
		height: 2px;
		background-color: #fff;
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		transform: translateX(-50%);
	}
	#subnav.sb_col2_accordion .sp_btn .in:after {
		top: 8px;
		left: 4px;
		-webkit-transform: rotate(90deg);
		-ms-transform: rotate(90deg);
		transform: rotate(90deg);
	}
	#subnav.sb_col2_accordion .sp_btn.active .in:after {
		display: none;
	}
	#subnav.sb_col2_accordion .sp_btn:after {
		position: absolute;
		top: calc(50% - 5px);
		left: 50%;
		content: '';
		display: inline-block;
		width: 2px;
		height: 10px;
		background-color: #fff;
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		transform: translateX(-50%);
	}
	#subnav.sb_col2_accordion .sp_btn.active:after {
		display: none;
	}
	#subnav.sb_col2_accordion #subnav_list {
		display: none;
	}
	#subnav_title.sb_col2_accordion a {
		padding: 12px 40px 12px 40px;
	}
}

#subnav.sb_col2_accordion ul li a {
	padding: 8px 25px 8px 18px;
}

#subnav.sb_col2_accordion ul li.current ul li a {
	padding: 8px 28px 8px 28px;
}

#subnav.sb_col2_accordion ul li.current ul li.current ul li a {
	padding: 8px 28px 8px 38px;
	font-size: 0.8em;
}

#subnav.sb_col2_accordion ul li.current ul li.current ul li.current ul li a {
	padding: 8px 28px 8px 48px;
}

#subnav.sb_col2_accordion ul li.current ul li.current ul li.current ul li.current ul li a {
	padding: 8px 28px 8px 55px;
}

/***-----column1 01-----***/
#subnav.sb_col1_1 {
	margin-bottom: 40px;
	text-align: center;
}

#subnav.sb_col1_1 ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

#subnav.sb_col1_1 ul li {
	list-style: none;
	margin: 4px 0;
}

#subnav.sb_col1_1 ul li a {
	display: block;
	padding: 8px 24px;
	line-height: 1.4;
	font-size: 95%;
}

#subnav.sb_col1_1 ul li a:hover {
	text-decoration: none;
}

#subnav.sb_col1_1 ul li a::after {
	content: '';
	width: 4px;
	height: 4px;
	border: 0px;
	border-width: 2px 2px 0 0;
	border-style: solid;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: calc(50% - 3px);
	left: 0;
	-webkit-transition: all .2s ease 0s;
	-o-transition: all .2s ease 0s;
	transition: all .2s ease 0s;
	font-size: 14px;
	content: "\f138";
	margin-left: 8px;
}

#subnav.sb_col1_1 ul li a {
	border-width: 0 1px 0 1px;
	border-style: solid;
	margin-left: -1px;
}

#subnav.sb_col1_1 ul li.current a::after {
	content: '';
	width: 4px;
	height: 4px;
	border: 0px;
	border-width: 2px 2px 0 0;
	border-style: solid;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: calc(50% - 3px);
	left: 0;
	-webkit-transition: all .2s ease 0s;
	-o-transition: all .2s ease 0s;
	transition: all .2s ease 0s;
}

#subnav_title.sb_col1_1 {
	position: relative;
	text-align: center;
	margin-bottom: 24px;
}

#subnav_title.sb_col1_1 a {
	display: inline-block;
	position: relative;
	z-index: 1;
	padding: 0 32px;
	font-size: 2rem;
}

#subnav_title.sb_col1_1::before {
	content: "";
	width: 100%;
	height: 1px;
	position: absolute;
	top: 50%;
	left: 0;
}

@media only screen and (max-width: 690px) {
	#subnav.col1_1 {
		margin-bottom: 40px;
		text-align: left;
	}
	#subnav.col1_1 ul li {
		font-size: 1.4rem;
		display: block;
	}
	#subnav.col1_1 ul li a {
		padding: 8px;
	}
	#subnav.col1_1 ul li a::before {
		content: '';
		width: 4px;
		height: 4px;
		border: 0px;
		border-width: 2px 2px 0 0;
		border-style: solid;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		transform: rotate(45deg);
		position: absolute;
		top: calc(50% - 3px);
		left: 0;
		-webkit-transition: all .2s ease 0s;
		-o-transition: all .2s ease 0s;
		transition: all .2s ease 0s;
	}
	#subnav.col1_1 ul li a::after {
		display: none;
	}
	#subnav.col1_1 ul li:not(:last-child) a {
		border-right: none;
	}
	#subnav.col1_1 ul li.current a::before {
		content: '';
		width: 4px;
		height: 4px;
		border: 0px;
		border-width: 2px 2px 0 0;
		border-style: solid;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		transform: rotate(45deg);
		position: absolute;
		top: calc(50% - 3px);
		left: 0;
		-webkit-transition: all .2s ease 0s;
		-o-transition: all .2s ease 0s;
		transition: all .2s ease 0s;
	}
	#subnav.col1_1 ul li.current a::after {
		display: none;
	}
	#subnav.col1_1 ul li:not(:last-child) a {
		border-right: none;
	}
	#subnav_title.col1_1 {
		margin-bottom: 16px;
	}
	#subnav_title.col1_1 a {
		padding: 0 16px;
		font-size: 1.8rem;
	}
}

/***-----column1 02-----***/
.sb_col1_2_wrap {
	padding: 8px;
}

#subnav.sb_col1_2 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.sb_col1_2_wrap #subnav_title {
	border-width: 0 2px 0 0;
	border-style: solid;
}

.sb_col1_2_wrap #subnav_title a {
	font-weight: bold;
	padding: 0 16px;
	text-decoration: none;
}

.sb_col1_2_wrap #subnav_list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.sb_col1_2_wrap #subnav_list li {
	list-style: none;
	padding: 0 16px;
	border-width: 0 1px 0 0;
	border-style: solid;
	font-size: 90%;
}

@media only screen and (max-width: 979px) {
	.sb_col1_2_wrap {
		padding: 0;
		position: absolute;
		width: 100%;
		z-index: 3;
	}
	#subnav.sb_col1_2 {
		display: none;
	}
	#sb_col1_2_btn {
		width: 30px;
		height: 30px;
		position: absolute;
		top: -40px;
		right: 2%;
	}
	#sb_col1_2_btn::before {
		font-family: "Font Awesome 5 Free";
		content: "\f078";
		font-size: 20px;
		text-decoration: none;
		display: inline-block;
		width: 30px;
		height: 30px;
		text-align: center;
	}
	#sb_col1_2_btn.active::before {
		content: "\f077";
	}
	.sb_col1_2_wrap #subnav_title {
		border-width: 0 0 1px 0;
	}
	.sb_col1_2_wrap #subnav_title a {
		padding: 8px;
		display: block;
	}
	.sb_col1_2_wrap #subnav_list {
		display: block;
	}
	.sb_col1_2_wrap #subnav_list li {
		padding: 8px;
		border-width: 0 0 1px 0;
	}
	.sb_col1_2_wrap #subnav_list li:last-child {
		border: none;
	}
	.sb_col1_2_wrap #subnav_list li a {
		display: block;
	}
}

/*-----------------------------
	subnav template_c3 one column
------------------------------*/
#subnav.template_c3_one {
	margin-top: 80px;
}

#subnav.template_c3_one .inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	border-top: 1px solid #ebebeb;
	border-bottom: 1px solid #ebebeb;
	padding: 0;
	width: calc(1200px - 32px);
}

#subnav.template_c3_one #subnav_title a {
	display: block;
	padding: 24px 40px;
	text-align: center;
	font-weight: bold;
	color: #ffffff;
	position: relative;
	background-color: #0D3780;
}

#subnav.template_c3_one #subnav_list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin-left: 16px;
}

#subnav.template_c3_one #subnav_list li {
	list-style: none;
}

#subnav.template_c3_one #subnav_list li a {
	display: block;
	padding: 8px 24px;
	border-right: 1px solid #dddddd;
	font-size: 95%;
}

#subnav.template_c3_one #subnav_list li.current a {
	font-weight: bold;
}

@media only screen and (max-width: 979px) {
	#subnav.template_c3_one {
		margin-top: 40px;
	}
	#subnav.template_c3_one .inner {
		display: block;
		padding: 0;
		width: 100%;
	}
	#subnav.template_c3_one #subnav_title a {
		width: 100%;
		font-size: 16px;
		padding: 8px 16px;
	}
	#subnav.template_c3_one #subnav_list {
		display: block;
		margin-left: 0;
	}
	#subnav.template_c3_one #subnav_list li a {
		padding: 10px 16px;
		margin-right: 0;
		font-size: 95%;
		border-top: 1px dotted #ebebeb;
	}
}

/*-----------------------------
	subnav template_c3 two column
------------------------------*/
#subnav.template_c3_two #subnav_title a {
	display: block;
	padding: 32px 40px;
	text-align: center;
	font-weight: bold;
	color: #ffffff;
	font-size: 18px;
	position: relative;
	background-color: #0D3780;
}

#subnav.template_c3_two #subnav_list li {
	list-style: none;
}

#subnav.template_c3_two #subnav_list li a {
	display: block;
	padding: 20px 16px;
	font-size: 95%;
	border-bottom: 1px dotted #999999;
}

#subnav.template_c3_two #subnav_list li.current a {
	font-weight: bold;
}

@media only screen and (max-width: 979px) {
	#subnav.template_c3_two {
		width: 100vw;
		margin-left: -3vw;
	}
	#subnav.template_c3_two #subnav_title a {
		width: 100%;
		font-size: 16px;
		padding: 8px 16px;
	}
	#subnav.template_c3_two #subnav_list {
		display: block;
		margin-left: 0;
	}
	#subnav.template_c3_two #subnav_list li a {
		padding: 10px 16px;
		margin-right: 0;
		font-size: 95%;
		border-top: none;
		border-bottom: 1px dotted #ebebeb;
	}
}

/*-----------------------------
	subnav template_c4 one column
------------------------------*/
#subnav.template_c4_one {
	margin-top: 80px;
}

#subnav.template_c4_one .inner_m, #subnav.template_c4_one .inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	border-top: 1px solid #ebebeb;
	border-bottom: 1px solid #ebebeb;
	padding: 0;
	width: calc(1200px - 32px);
}

#subnav.template_c4_one #subnav_title a {
	display: block;
	padding: 24px 40px;
	text-align: center;
	font-weight: bold;
	color: #ffffff;
	position: relative;
	background-color: #0D3780;
}

#subnav.template_c4_one #subnav_list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin-left: 16px;
}

#subnav.template_c4_one #subnav_list li {
	list-style: none;
}

#subnav.template_c4_one #subnav_list li a {
	display: block;
	padding: 8px 24px;
	border-right: 1px solid #dddddd;
	font-size: 95%;
}

#subnav.template_c4_one #subnav_list li.current a {
	font-weight: bold;
}

@media only screen and (max-width: 979px) {
	#subnav.template_c4_one {
		margin-top: 40px;
	}
	#subnav.template_c4_one .inner_m, #subnav.template_c4_one .inner {
		display: block;
		padding: 0;
		width: 100%;
	}
	#subnav.template_c4_one #subnav_title a {
		width: 100%;
		font-size: 16px;
		padding: 8px 16px;
	}
	#subnav.template_c4_one #subnav_list {
		display: block;
		margin-left: 0;
	}
	#subnav.template_c4_one #subnav_list li a {
		padding: 10px 16px;
		margin-right: 0;
		font-size: 95%;
		border-top: 1px dotted #ebebeb;
	}
}

/*-----------------------------
	subnav template_c4 two column
------------------------------*/
#subnav.template_c4_two #subnav_title a {
	display: block;
	padding: 32px 40px;
	text-align: center;
	font-weight: bold;
	color: #ffffff;
	font-size: 18px;
	position: relative;
	background-color: #0D3780;
}

#subnav.template_c4_two #subnav_list li {
	list-style: none;
}

#subnav.template_c4_two #subnav_list li a {
	display: block;
	padding: 20px 16px;
	font-size: 95%;
	border-bottom: 1px dotted #999999;
}

#subnav.template_c4_two #subnav_list li.current a {
	font-weight: bold;
}

@media only screen and (max-width: 979px) {
	#subnav.template_c4_two {
		width: 100vw;
		margin-left: -3vw;
	}
	#subnav.template_c4_two #subnav_title a {
		width: 100%;
		font-size: 16px;
		padding: 8px 16px;
	}
	#subnav.template_c4_two #subnav_list {
		display: block;
		margin-left: 0;
	}
	#subnav.template_c4_two #subnav_list li a {
		padding: 10px 16px;
		margin-right: 0;
		font-size: 95%;
		border-top: none;
		border-bottom: 1px dotted #ebebeb;
	}
}

/*-----------------------------
	subnav template_c6 two column
------------------------------*/
/***-----column2-----***/
#subnav.template_c6_two {
	margin-bottom: 20px;
}

#subnav.template_c6_two ul li {
	list-style: none;
	margin-top: 1px;
}

#subnav.template_c6_two ul li a {
	width: 100%;
	display: block;
	background-color: #f5f5f5;
}

#subnav.template_c6_two ul li a:hover {
	text-decoration: none;
}

#subnav.template_c6_two ul li ul {
	border-bottom: none;
}

#subnav.template_c6_two ul li ul li a {
	padding: 5px 5px 5px 25px;
}

#subnav.template_c6_two #subnav_title a {
	display: block;
	text-align: center;
	padding: 15px 5px;
	background-color: #555555;
	color: #ffffff;
}

#subnav.template_c6_two #subnav_title a:hover {
	text-decoration: none;
}

#subnav.template_c6_two ul li a {
	padding: 15px 15px 15px 30px;
	position: relative;
}

#subnav.template_c6_two ul li a::before {
	content: '';
	width: 6px;
	height: 6px;
	border: 0px;
	border-width: 1px 1px 0 0;
	border-style: solid;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	left: 15px;
	margin-top: -2px;
}

#subnav.template_c6_two ul li.current ul li a {
	padding: 5px 10px 5px 40px;
}

#subnav.template_c6_two ul li.current ul li a::before {
	left: 25px;
}

#subnav.template_c6_two ul li.current ul li.current ul li + li {
	margin-top: 0;
}

#subnav.template_c6_two ul li.current ul li.current ul li + li a {
	padding-top: 0;
}

#subnav.template_c6_two ul li.current ul li.current ul li a {
	padding: 5px 10px 5px 55px;
}

#subnav.template_c6_two ul li.current ul li.current ul li a::before {
	display: none;
}