@charset "UTF-8";


/*********************** 共通 ***********************/

html {
	margin: 0 !important;
	font-family: "Yu Gothic", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	font-weight: 400;
}

body {
	height: 100%;
	margin: 0;
	padding: 0;
	overflow-x: hidden;
}

.clearfix:after {
	content:" ";
	display:block;
	clear:both;
}

a {
	color: #231815;
}
a:hover {
	color: #9fa0a0;
}
a:hover img {
	opacity: 0.7;
}

a.anchor{
    display: block;
    padding-top: 130px;
    margin-top: -130px;
}
a.anchor2{
    display: block;
    padding-top: 130px;
    margin-top: -130px;
}

div.anchor_a {
    display: block;
    padding-top: 130px;
    margin-top: -130px;
}
div.anchor_p {
    display: block;
    padding-top: 130px;
    margin-top: -130px;
}

.arrow{
	position: relative;
	display: inline-block;
	padding: 0 0 0 10px;
	color: #000;
	vertical-align: middle;
	text-decoration: none;
	font-size: 13px;
}
.arrow::before,
.arrow::after{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.post-edit-link {
	display: none;
}


.mt0 {
	margin-top:0;
}
.mt10 {
	margin-top:10px;
}
.mt20 {
	margin-top:20px;
}
.mt30 {
	margin-top:30px;
}
.mt40 {
	margin-top:40px;
}
.mt50 {
	margin-top:50px;
}
.mt60 {
	margin-top:60px;
}
.mt70 {
	margin-top:70px;
}
.mt80 {
	margin-top:80px;
}
.mt90 {
	margin-top:90px;
}
.mt100 {
	margin-top:100px;
}
.mr0 {
	margin-right:0;
}
.mr10 {
	margin-right:10px;
}
.mr20 {
	margin-right:20px;
}
.mr30 {
	margin-right:30px;
}
.mr40 {
	margin-right:40px;
}
.mr50 {
	margin-right:50px;
}
.mr60 {
	margin-right:60px;
}
.mr70 {
	margin-right:70px;
}
.mb0 {
	margin-bottom:0;
}
.mb10 {
	margin-bottom:10px;
}
.mb20 {
	margin-bottom:20px;
}
.mb30 {
	margin-bottom:30px;
}
.mb40 {
	margin-bottom:40px;
}
.mb50 {
	margin-bottom:50px;
}
.mb60 {
	margin-bottom:60px;
}
.mb70 {
	margin-bottom:70px;
}
.mb80 {
	margin-bottom:80px;
}
.mb90 {
	margin-bottom:90px;
}
.mb100 {
	margin-bottom:100px;
}
.ml0 {
	margin-left:0;
}
.ml10 {
	margin-left:10px;
}
.ml20 {
	margin-left:20px;
}
.ml30 {
	margin-left:30px;
}
.ml40 {
	margin-left:40px;
}
.pt0 {
	padding-top:0;
}
.pt5 {
	padding-top:5px;
}
.pt10 {
	padding-top:10px;
}
.pt20 {
	padding-top:20px;
}
.pt30 {
	padding-top:30px;
}
.pt40 {
	padding-top:40px;
}
.pt50 {
	padding-top:50px;
}
.pt60 {
	padding-top:60px;
}
.pr0 {
	padding-right:0;
}
.pr10 {
	padding-right:10px;
}
.pr20 {
	padding-right:20px;
}
.pr30 {
	padding-right:30px;
}
.pr40 {
	padding-right:40px;
}
.pb0 {
	padding-bottom:0;
}
.pb5 {
	padding-bottom:5px;
}
.pb10 {
	padding-bottom:10px;
}
.pb20 {
	padding-bottom:20px;
}
.pb30 {
	padding-bottom:30px;
}
.pb40 {
	padding-bottom:40px;
}
.pb50 {
	padding-bottom:50px;
}
.pb60 {
	padding-bottom:60px
}
.pl0 {
	padding-left:0;
}
.pl10 {
	padding-left:10px;
}
.pl20 {
	padding-left:20px;
}
.pl30 {
	padding-left:30px;
}
.pl40 {
	padding-left:40px;
}

.bg_f9f4f4 {
	background: #f9f4f4;
}

.pc_only, .pc-only {
	display: block !important;
}
.sp_only, .sp-only {
	display: none !important;
}

@media screen and (max-width: 880px) {

	div.anchor_a {
		display: block;
		padding-top: 110px;
		margin-top: -110px;
	}
	div.anchor_p {
		display: block;
		padding-top: 110px;
		margin-top: -110px;
	}


	.pc_only, .pc-only {
		display: none !important;
	}
	.sp_only, .sp-only {
		display: block !important;
	}

}





/* 共通ヘッダー */

#common-header {
	position: fixed;
	width: 100%;
	height: 123px;
	margin: 0;
	background: #fff;
	z-index: 999;
}
#aisin-group-navi-block {
	width: 100%;
	height: 45px;
	padding: 10px 20px;
	border-bottom: 1px solid #707070;
}
#aisin-group-navi-block .header_aisin_navi {
	width: 125px;
	height: auto;
	float: right;
}

#header-block {
	position: relative;
	width: 100%;
	height: 78px;
	margin: 0 auto;
	border-bottom: 1px solid #707070;
}
.header_logo_block {
	position: absolute;
	width: 280px;
	height: auto;
	margin: auto;
	top: 15px;
	left: 20px;
}
.header_navi_block {
	position: absolute;
	width: fit-content;
	top: 26px;
	right: 20px;
}
.header_link_block {
	position: absolute;
	top: 0;
	right: 0px;
}
.header_navi {
	padding: 0 15px;
	float: left;
}
.header_navi a {
	font-size: 1.6rem;
	font-weight: 700;
}
.header_navi_sp_block {
	display: none;
}


@media screen and (max-width: 880px) {

	#common-header {
		position: fixed;
		width: 100%;
		height: 100px;
		margin: 0;
		background: #fff;
		z-index: 999;
	}
	#header-block {
		width: 100%;
		height: 55px;
		margin: 0 auto;
	}
	.header_logo_block {
		position: absolute;
		width: 200px;
		height: auto;
		margin: auto;
		top: 10px;
		left: 15px;
	}
	.header_navi_block {
		display:none;
	}

	.header_navi_sp_block {
		display: block;
		position: fixed;
		z-index: 9;
		top: 60px;
		right: 15px;
		width: 40px;
		height: 40px;
	}
	#nav-drawer {
		display:block;
		position: relative;
	}
	.nav-unshown {
		display:none;
	}
	#nav-open {
		display: inline-block;
		width: 35px;
		height: 30px;
		top: 0px;
		right: 0px;
		position: absolute;
		vertical-align: middle;
		cursor: pointer;
	}
	#nav-open .btnDesign {
		display: block;
		width: 20px;
		height: 2px;
		background-color: #ed6d2c; /* 線の色 */
		position: absolute;
		left: 0;
		right: 0;
		margin: auto;
		transition: .3s;
	}
	#nav-open .btnDesign.btnTop {
		top: 5px;
	}
	#nav-open .btnDesign.btnBom {
		top: 17px;
	}
	#nav-open .btnDesign.btnMdl {
		top: 11px;
	}

	#nav-close {
		display: none;/*はじめは隠しておく*/
		position: fixed;
		z-index: 99;
		top: 100px;
		right: 0;
		width: 100%;
		height: calc(100% - 100px);
		background: #efefef;
		opacity: 0;
		transition: .3s ease-in-out;
	}
	#nav-content {
		/*overflow: auto;*/
		position: fixed;
		top: 100px;
		left: 2.5%;
		z-index: 9999;/*最前面に*/
		width: 95%;/*右側に隙間を作る（閉じるカバーを表示）*/
		height: auto;
		transition: .3s ease-in-out;/*滑らかに表示*/
		-webkit-transform: translateX(155%);
		transform: translateX(155%);/*左に隠しておく*/
	}
	#nav-content .menu {
		margin: 0;
		padding: 0;
		z-index: 88;
		display:-webkit-box;
		display:-moz-box;
		display:-ms-box;
		display:-webkit-flexbox;
		display:-moz-flexbox;
		display:-ms-flexbox;
		display:-webkit-flex;
		display:-moz-flex;
		display:-ms-flex;
		display:flex;
		-webkit-box-lines:multiple;
		-moz-box-lines:multiple;
		-webkit-flex-wrap:wrap;
		-moz-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
	}
	#nav-content .menu .menu-item {
		width: 100%;
		display: inline-block;
	}
	#nav-content .menu .menu-item a {
		color: #231815;
		display: block;
		padding: 15px 30px;
		font-size: 1.5rem;
		font-weight: 700;
		text-align: left;
		text-decoration: none;
	}
	#nav-content .menu .menu-item a:hover {
		color: #231815;
	}
	#nav-content .menu .menu-item:last-child a {
		border-right: none;
	}
	#nav-content .menu {
		/*display: none;*/
		position: absolute;
		width: 100%;
	}
	#nav-content .menu .menu-item a {
		border-bottom: 1px solid #bababa;
		border-right: none;
	}
	#nav-content .menu .menu-item:last-child a {
		/*border-bottom: none;*/
	}

	#nav-input:checked ~ #nav-open .btnDesign.btnTop {
		top: 11px;
		transform: rotate(45deg);
	}
	#nav-input:checked ~ #nav-open .btnDesign.btnBom {
		top: 11px;
		transform: rotate(-45deg);
	}
	#nav-input:checked ~ #nav-open .btnDesign.btnMdl {
		width: 0;
		height: 0;
	}


	#nav-input:checked ~ #nav-close {
		display: block;/*カバーを表示*/
		opacity: 1;
	}
	#nav-input:checked ~ #nav-content {
		-webkit-transform: translateX(0%);
		transform: translateX(0%);/*中身を表示（右へスライド）*/
		box-shadow: 6px 0 25px rgba(0,0,0,.15);
	}


}


/* フッター */

#footer {
	width: 100%;
	height: auto;
	background: #313333;
}

#footer-block {
	position: relative;
	max-width: 1024px;
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 20px;
	display: flex;
    justify-content: center;
    align-items: center;
}

.footer_logo_block {
	width: 200px;
	height: auto;
	float: left;
}
.footer_navi_block {
	width: calc(100% - 240px);
	margin: 0 0 0 40px;
	padding: 0 0 0 40px;
	border-left: 1px solid #fff;
	float: left;
}
.footer_navi_area {
	width: fit-content;
	margin-right: 40px;
	float: left;
}
.footer_navi_link_1 {
	width: 100%;
	padding-bottom: 5px;
}
.footer_navi_link_1 a {
	font-size: 1.5rem;
	font-weight: 400;
	color: #ed6d2c;
}
.footer_navi_link_2 {
	width: 100%;
	padding-bottom: 2px;
}
.footer_navi_link_2 a {
	font-size: 1.25rem;
	font-weight: 400;
	color: #fff;
}
.footer_navi_link_tel {
	font-size: 1.6rem;
	font-weight: 400;
	color: #fff;
}
.footer_navi_link_tel span {
	font-size: 1.8rem;
	font-weight: 700;
}


#footer-copyright-block {
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 5px 20px;
	background: #ed6d2c;
}
#footer-copyright-block .footer_copyright {
	width: 100%;
	font-weight: 400;
	font-size: 1.4rem;
	text-align: right;
	color: #ffffff;
}

@media screen and (max-width: 880px) {

	#footer {
		width: 100%;
		height: auto;
	}

	#footer-block {
		width: 90%;
		height: auto;
		margin: 0 auto;
		padding: 20px 0;
		display: block;
	}
	
	.footer_logo_block {
		width: 200px;
		height: auto;
		margin: 20px 0;
		float: none;
	}
	.footer_navi_block {
		width: 100%;
		margin: auto;
		padding: 0 0 0 0;
		border-left: 0px solid #fff;
		float: none;
	}
	.footer_navi_area {
		width: 100%;
		margin-right: 0px;
		margin-bottom: 15px;
		float: none;
	}

	.footer_navi_link_1 {
		width: 100%;
		margin-bottom: 10px;
		padding-bottom: 5px;
		border-bottom: 1px solid #fff;
	}

	.footer_navi_link_2 {
		width: 100%;
		margin-bottom: 5px;
		padding-bottom: 5px;
		border-bottom: 1px dotted #838383;
	}


	#footer-copyright-block {
		padding: 20px 20px;
	}
	#footer-copyright-block .footer_copyright {
		font-size: 1.2rem;
		text-align: center;
	}

}



/* コンテンツ共通 */

#contents {
	width: 100%;
}

#contents-block {
	position: relative;
	width: 100%;
	height: auto;
	padding-top: 123px;
}

#contents-outer {
	width: 100%;
	height: auto;
}

#contents-main {
	position: relative;
	max-width: 1024px;
	width: 100%;
	margin: 0 auto;
}

#contents-inner {
	max-width: 1024px;
	width: 100%;
	margin: 0 auto;
}
#contents-inner-1024 {
	max-width: 1024px;
	width: 100%;
	margin: 0 auto;
}
#contents-inner-900 {
	max-width: 900px;
	width: 100%;
	margin: 0 auto;
}
#contents-inner-850 {
	max-width: 850px;
	width: 100%;
	margin: 0 auto;
}
#contents-inner-800 {
	max-width: 800px;
	width: 100%;
	margin: 0 auto;
}
#contents-inner-750 {
	max-width: 750px;
	width: 100%;
	margin: 0 auto;
}
#contents-inner-700 {
	max-width: 700px;
	width: 100%;
	margin: 0 auto;
}

#site-contents {
	max-width: 1024px;
	width: 100%;
	margin: 0 auto;
}

.contents_page_title {
	width: 100%;
	padding: 10px 20px;
	font-size: 1.8rem;
	font-weight: 700;
	letter-spacing: 0.4em !important;
	text-align: center;
	color: #fff;
	background: #251e1c;
}

@media screen and (max-width: 1080px) {

	#contents-inner-1024 {
		width: 90%;
	}

}
@media screen and (max-width: 980px) {

	#contents-inner-900 {
		width: 90%;
	}

}
@media screen and (max-width: 930px) {

	#contents-inner-850 {
		width: 90%;
	}

}
@media screen and (max-width: 880px) {

	#contents-block {
		width: 100%;
		padding-top: 100px;
	}

	#contents-inner-800 {
		width: 90%;
	}

}
@media screen and (max-width: 830px) {

	#contents-inner-750 {
		width: 90%;
	}

}
@media screen and (max-width: 780px) {

	#contents-inner-700 {
		width: 90%;
	}

}




/*メインイメージ */

#top-img-block {
	width: 100%;
	height: auto;
	margin: 0 auto;
}

.top_img_pc {
	width: 100%;
	/*padding-top: 40%;*/
}
.top_img_sp {
	display: none;
}


@media screen and (max-width: 580px) {

	.top_img_pc {
		display: none;
	}
	.top_img_sp {
		display: block;
		width: 100%;
		padding-top: 60px;
	}

}










@media screen and (max-width: 580px) {

	#common_header {
		width: 100%;
		height: auto;
		margin: 20px auto;
	}


	#site-menu {
		width: 100%;
		margin: 0 auto;
	}

	.site_menu_block li {
		width: 32%;
		width: calc((100% - 4px) / 3);
		width: -webkit-calc((100% - 4px) / 3);
		width: -moz-calc((100% - 4px) / 3);

		display: inline-block;
		list-style-type: none;

		margin-right: 1px;
	}
	.site_menu_block li:last-child {
		margin-right: 0px;
	}

	.header_search_block {
		width: 50%;
		float: right;
		margin: 5px 5% 30px 0;
	}




	.company_block {
		font-size: 16px;
		font-weight: normal;
		margin: 50px 0 0 0;
	}
	.company_name {
		font-size: 28px;
		font-weight: bold;
	}
	.company_tel {
		font-size: 18px;
		font-weight: normal;
	}
	.company_address {
		margin: 10px 0 20px 0;
	}


	#site-contents {
		max-width: 980px;
		width: 90%;
		margin: 0 5%;
	}


}





/*********************** トップページ ***********************/

/* MOVIE Contents */

#movie-contents-wrap {
	position: relative;
	z-index: 2;
	width: 100%;
	height: 56.25vw;
	margin: 0;
	padding: 0;
	overflow: hidden;
}

#top {
	position: relative;
	left: 0;
	top: 0;
	width: 100%;
}

#top .videoareatop{
	position: relative;
	width: 100%;
	padding: calc(1080 / 1920 * 100%) 0 0;
}

#top .videoareatop video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}



.home_introduction_block {
	width: 100%;
	padding: 40px 0;
}

.home_introduction_wrap {
	width: 100%;
	padding: 0;
}
.home_introduction_1 {
	width: 40%;
	float: left;
}
.home_introduction_2 {
	width: 57%;
	margin-left: 3%;
	float: right;
}

.home_introduction_img {
	width: 100%;
	margin: auto;
	padding: 20px 0 0 0;
	font-size: 0;
	display: flex;
	flex-wrap: wrap;
}
.home_introduction_img li {
	width: calc((100% - 31px) / 3);
	display: inline-block;
	list-style-type: none;
	margin-right: 15px;
	padding: 0px;
}
.home_introduction_img li:nth-child(3n) {
	margin-right: 0px;
}


.home_txt_1 {
	width: 100%;
	padding: 0;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.6;
}

@media screen and (max-width: 1024px) {

	.home_introduction_1 {
		width: 32%;
		float: left;
	}
	.home_introduction_2 {
		width: 65%;
		margin-left: 3%;
		float: right;
	}

}
@media screen and (max-width: 880px) {

	.home_introduction_1 {
		width: 50%;
		float: none;
	}
	.home_introduction_2 {
		width: 100%;
		margin-top: 20px;
		margin-left: 0%;
		float: none;
	}

}
@media screen and (max-width: 580px) {

	.home_introduction_1 {
		width: 60%;
		float: none;
	}
	.home_introduction_2 {
		width: 100%;
		margin-top: 20px;
		margin-left: 0%;
		float: none;
	}

}



/*********************** 会社情報 ***********************/

.about_section_img {
	position: relative;
	width: 100%;
	height: 450px;
	margin: 0;
	padding: 0;
}

.about_sub_img {
	position: relative;
	width: 100%;
	height: 355px;
	margin: 0;
	padding: 0;
}
.about01 {
	background: url(../images/about/a_01.jpg) no-repeat 0 0;
	background-size: cover;
	background-position: center center;
}
.about02 {
	background: url(../images/about/a_02.jpg) no-repeat 0 0;
	background-size: cover;
	background-position: center center;
}
.about03 {
	background: url(../images/about/a_03.jpg) no-repeat 0 0;
	background-size: cover;
	background-position: center center;
}

.about_section_title {
	max-width: 400px;
	width: 100%;
	margin: 20px auto 5px auto;
	padding: 5px 0;
	font-size: 2.0rem;
	font-weight: 700;
	letter-spacing: 0.6em !important;
	text-align: center;
	border-bottom: 4px solid #ed6d2c;
}
.about_section_sub_title {
	max-width: 400px;
	width: 100%;
	margin: 0px auto 20px auto;
	padding: 0;
	font-size: 1.4rem;
	font-weight: 400;
	text-align: center;
}


.about_message_block {
	width: 100%;
	padding: 20px 0 0 0;
}
.about_message_1 {
	width: 25%;
	height: auto;
	float: left;
}
.about_message_2 {
	position: relative;
	width: 72%;
	height: auto;
	margin-left: 3%;
	float: right;
}
.about_message_sign {
	position: relative;
	top: -25px;
	left: 110px;
	width: 240px;
	height: auto;
}


.about_management_block {
	width: 100%;
	padding: 20px 0;
}
.about_management {
	width: 100%;
	height: auto;
	margin: auto;
	padding: 0 0 20px 0;
	font-size: 0;
	display: flex;
	flex-wrap: wrap;
}
.about_management li {
	display: inline-block;
	list-style-type: none;
	padding: 0px;
}
.about_management li:nth-child(1) {
	width: 15%;
	margin: 0px;
}
.about_management li:nth-child(2) {
	width: 72%;
	margin-left: 3%;
}

.about_management_title {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	border: 2px solid #000;
}


.about_profile_block {
	width: 100%;
	padding: 0;
}

.about_profile_wrap {
	width: 100%;
	padding: 10px 0;
	border-bottom: 1px solid #231815;
}
.about_profile_1 {
	width: 15%;
	font-size: 1.45rem;
	font-weight: 700;
	line-height: 1.6;
	float: left;
}
.about_profile_2 {
	width: 85%;
	font-size: 1.45rem;
	font-weight: 400;
	line-height: 1.6;
	float: right;
}

.about_organization_block {
	width: 100%;
	padding: 15px 0;	
	border-bottom: 1px solid #231815;
}
.about_organization_chart {
	width: 90%;
	height: auto;
	margin: auto;
}


#about_access_map {
	position: relative;
	width: 100%;
	height: 450px;
}
#about_access_map iframe{
	position: absolute;
	width: 100%;
	height: 100%;
}


.about_history_block {
	width: 100%;
	padding: 20px 0 60px 0;
}
.about_history_wrap {
	width: 100%;
	padding: 5px 0;
}
.about_history_1 {
	width: 120px;
	font-size: 1.45rem;
	font-weight: 700;
	line-height: 1.6;
	float: left;
}
.about_history_2 {
	width: calc(100% - 140px);
	margin-left: 20px;
	font-size: 1.45rem;
	font-weight: 700;
	line-height: 1.6;
	float: right;
}



.about_txt_1 {
	width: 100%;
	padding: 30px 0;
	font-size: 6.5rem;
	font-family: "Zen Old Mincho", serif;
	font-weight: 400;
	font-style: normal;
}
.about_txt_2 {
	width: 100%;
	padding-bottom: 40px;
	font-size: 1.7rem;
	font-weight: 700;
	line-height: 2.3;
}
.about_txt_3 {
	width: 100%;
	padding: 20px 0;
	font-size: 1.5rem;
	line-height: 1.9;
	letter-spacing: 0em !important;
}
.about_txt_4 {
	width: 100%;
	padding-bottom: 10px;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 2.0;
}
.about_txt_5 {
	width: 100%;
	padding: 0 0 10px 0;
	font-size: 1.45rem;
	font-weight: 700;
	line-height: 1.6;
	letter-spacing: 0em !important;
}
.about_txt_6 {
	font-size: 2.2rem;
	font-weight: 700;
}
.about_txt_7 {
	width: 100%;
	font-size: 1.7rem;
	font-weight: 700;
	line-height: 1.7;
}

@media screen and (max-width: 1200px) {

	.about_section_img {
		width: 100%;
		height: 300px;
	}

	.about_sub_img {
		width: 100%;
		height: 240px;
	}

	#about_access_map {
		width: 100%;
		height: 420px;
	}

}
@media screen and (max-width: 980px) {

	.about_section_img {
		width: 100%;
		height: 260px;
	}

	.about_sub_img {
		width: 100%;
		height: 180px;
	}

	#about_access_map {
		width: 100%;
		height: 380px;
	}

}
@media screen and (max-width: 880px) {

	.about_message_1 {
		width: 35%;
		height: auto;
		float: left;
	}
	.about_message_2 {
		width: 100%;
		height: auto;
		margin-top: 20px;
		margin-left: 0%;
		float: left;
	}

	.about_management li:nth-child(1) {
		width: 100%;
		margin: 0px 0 10px 0;
	}
	.about_management li:nth-child(2) {
		width: 100%;
		margin-left: 0%;
		margin-bottom: 20px;
	}


	.about_profile_1 {
		width: 100%;
		margin-bottom: 5px;
		font-size: 1.4rem;
		font-weight: 700;
		line-height: 1.6;
		float: left;
	}
	.about_profile_2 {
		width: 95%;
		font-size: 1.4rem;
		font-weight: 400;
		line-height: 1.6;
		float: right;
	}


	.about_organization_chart {
		width: 100%;
		height: auto;
		margin: auto;
	}


	.about_history_1 {
		width: 105px;
		font-size: 1.25rem;
		font-weight: 700;
		line-height: 1.6;
		float: left;
	}
	.about_history_2 {
		width: calc(100% - 120px);
		margin-left: 15px;
		font-size: 1.25rem;
		font-weight: 700;
		line-height: 1.6;
		float: right;
	}


	.about_txt_1 {
		width: 100%;
		padding: 20px 0;
		font-size: 5.5rem;
	}
	.about_txt_2 {
		width: 100%;
		padding-bottom: 40px;
		font-size: 1.5rem;
		font-weight: 700;
		line-height: 2.1;
	}
	.about_txt_3 {
		width: 100%;
		padding: 20px 0;
		font-size: 1.4rem;
		line-height: 1.9;
		letter-spacing: 0em !important;
	}
	.about_txt_4 {
		width: 100%;
		padding-bottom: 10px;
		font-size: 2.2rem;
		font-weight: 700;
		line-height: 2.0;
	}
	.about_txt_5 {
		width: 100%;
		padding: 0 0 10px 0;
		font-size: 1.4rem;
		font-weight: 700;
		line-height: 1.6;
		letter-spacing: 0em !important;
	}
	.about_txt_6 {
		font-size: 2.0rem;
		font-weight: 700;
	}
	.about_txt_7 {
		width: 100%;
		font-size: 1.5rem;
		font-weight: 700;
		line-height: 1.7;
	}

}
@media screen and (max-width: 768px) {

	.about_section_img {
		width: 100%;
		height: 200px;
	}

	.about_sub_img {
		width: 100%;
		height: 140px;
	}

	#about_access_map {
		width: 100%;
		height: 340px;
	}

	.about_txt_1 {
		width: 100%;
		padding: 20px 0;
		font-size: 4.4rem;
	}

}
@media screen and (max-width: 580px) {

	.about_section_img {
		width: 100%;
		height: 130px;
	}

	.about_sub_img {
		width: 100%;
		height: 100px;
	}

	.about_message_1 {
		width: 45%;
		height: auto;
		float: left;
	}
	.about_message_sign {
		position: relative;
		top: 0;
		left: 20px;
		width: 180px;
		height: auto;
	}

	#about_access_map {
		width: 100%;
		height: 300px;
	}

	.about_txt_1 {
		width: 100%;
		padding: 20px 0;
		font-size: 3.3rem;
		line-height: 1.2;
	}

}


/*********************** 製品情報 ***********************/

.products_main_img {
	position: relative;
	width: 100%;
	height: 550px;
	margin: 0;
	padding: 0;
	background: url(../images/products/p_01.jpg) no-repeat 0 0;
	/*background-size: contain;*/
	background-size: cover;
	background-position: center center;
}

.products_sub_img {
	position: relative;
	width: 100%;
	height: 355px;
	margin: 0;
	padding: 0;
}

.products02 {
	background: url(../images/products/p_02.jpg) no-repeat 0 0;
	background-size: cover;
	background-position: center center;
}
.products03 {
	background: url(../images/products/p_03.jpg) no-repeat 0 0;
	background-size: cover;
	background-position: center center;
}
.products04 {
	background-color: #dbdada;
	/*
	background: url(../images/products/p_04.jpg) no-repeat 0 0;
	background-size: cover;
	background-position: center center;
	*/
}
.products05 {
	background: url(../images/products/p_05.jpg) no-repeat 0 0;
	background-size: cover;
	background-position: center center;
}

.products_sub_txt {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}
.products_sub_title {
	font-size: 3.6rem;
	font-weight: 700;
	color: #fff;
	text-shadow: 2px 2px 5px #000;
	text-align: center;
}
.products_sub_title span {
    letter-spacing: 2.5rem !important;
    margin-right: -2.5rem !important;
    display: block;
}

.products_txt_0 {
	position: relative;
	z-index: 2;
	width: 100%;
	padding-bottom: 40px;
	font-size: 1.7rem;
	font-weight: 700;
	line-height: 2.3;
}
.products_txt_1 {
	width: 100%;
	padding: 40px 0;
	font-size: 4.4rem;
	font-family: "Zen Old Mincho", serif;
	font-weight: 400;
	font-style: normal;
}
.products_txt_2 {
	width: 100%;
	padding-bottom: 40px;
	font-size: 1.7rem;
	font-weight: 700;
	line-height: 2.3;
}
.products_txt_3 {
	width: 100%;
	padding: 20px 0;
	font-size: 1.6rem;
	line-height: 1.9;
	letter-spacing: 0.1em !important;
}


.products_detail_img_0 {
	position:absolute;
	z-index: 1;
	bottom: 0;
	right: 0;
	width: 200px;
	height: auto;
	margin: 0;
}

.products_detail_img_1 {
	width: 100%;
	height: auto;
	margin-bottom: 10px;
}

.products_detail_img_2 {
	width: 100%;
	margin-bottom: 130px;
	padding: 0;
	font-size: 0;
	display: flex;
	flex-wrap: wrap;
}
.products_detail_img_2 li {
	width: calc((100% - 11px) / 2);
	display: inline-block;
	list-style-type: none;
	margin-right: 10px;
	padding: 0px;
	font-size: 16px;
}
.products_detail_img_2 li:nth-child(2n) {
	margin-right: 0px;
}

@media screen and (max-width: 1200px) {

	.products_main_img {
		width: 100%;
		height: 500px;
	}

	.products_sub_img {
		width: 100%;
		height: 300px;
	}

}
@media screen and (max-width: 980px) {

	.products_main_img {
		width: 100%;
		height: 450px;
	}

	.products_sub_img {
		width: 100%;
		height: 240px;
	}

	.products_txt_0 {
		width: calc(100% - 150px);
		padding-bottom: 40px;
		font-size: 1.7rem;
		font-weight: 700;
		line-height: 2.3;
	}

}
@media screen and (max-width: 768px) {

	.products_main_img {
		width: 100%;
		height: 400px;
	}

	.products_sub_img {
		width: 100%;
		height: 200px;
	}

	.products_sub_title {
		font-size: 3.0rem;
		font-weight: 700;
		letter-spacing: 0.6em !important;
		color: #fff;
		text-align: center;
	}

	.products_txt_0 {
		width: 100%;
		padding-bottom: 5px;
		font-size: 1.5rem;
		font-weight: 700;
		line-height: 2.1;
	}
	.products_txt_1 {
		width: 100%;
		padding: 30px 0;
		font-size: 4.4rem;
		line-height: 1.2;
	}
	.products_txt_2 {
		width: 100%;
		padding-bottom: 40px;
		font-size: 1.7rem;
		font-weight: 700;
		line-height: 2.1;
	}
	.products_txt_3 {
		width: 100%;
		padding: 20px 0;
		font-size: 1.6rem;
		line-height: 1.7;
		letter-spacing: 0.1em !important;
	}

	.products_detail_img_0 {
		position: relative;
		z-index: 1;
		bottom: 0;
		right: 0;
		width: 55%;
		height: auto;
		margin: 0 5% 0 auto;
		padding-bottom: 40px;
	}

}
@media screen and (max-width: 580px) {

	.products_main_img {
		width: 100%;
		height: 240px;
	}

	.products_sub_img {
		width: 100%;
		height: 120px;
	}

	.products_txt_1 {
		width: 100%;
		padding: 30px 0;
		font-size: 3.0rem;
		line-height: 1.2;
	}

}



/*********************** 社内の取り組み・個人情報保護方針 ***********************/

.policy_txt_1 {
	width: 100%;
	font-size: 1.7rem;
	font-weight: 700;
}
.policy_txt_2 {
	width: 100%;
	padding-top: 30px;
	font-size: 1.7rem;
	font-weight: 700;
	line-height: 1.8;
}
.policy_txt_3 {
	width: 100%;
	padding: 5px 0;
	font-size: 1.5rem;
	line-height: 1.8;
}

.policy_top {
	width: 100%;
	padding-top: 60px;
}
.policy_bottom {
	width: 100%;
	padding-bottom: 60px;
}

@media screen and (max-width: 880px) {

	.policy_txt_1 {
		width: 100%;
		font-size: 1.5rem;
		font-weight: 700;
	}
	.policy_txt_2 {
		width: 100%;
		padding-top: 30px;
		font-size: 1.5rem;
		font-weight: 700;
		line-height: 1.8;
	}
	.policy_txt_3 {
		width: 100%;
		padding: 5px 0;
		font-size: 1.4rem;
		line-height: 1.6;
	}

}



/*********************** 財務情報 ***********************/

.ir_list_wrap {
	width: 100%;
	height: auto;
}

.ir_list_table {
	width: 100%;
	border-spacing: 1px;
	border: 1px solid #ccc;
}

.ir_bs_list {
	width: 100%;
	margin: 20px auto;
	padding: 0;
	font-size: 0;
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid #707070;
	border-right: 1px solid #707070;
}
.ir_bs_list li {
	display: inline-block;
	list-style-type: none;
	margin: 0;
	padding: 15px 10px;
	font-size: 1.5rem;
}
.ir_bs_list li:nth-child(1) {
	font-weight: 700;
	text-align: center;
	background: #eee;
}
.ir_bs_list li:nth-child(2) {
	font-weight: 700;
	text-align: center;
	background: #eee;
}
.ir_bs_list li:nth-child(3) {
	font-weight: 700;
	line-height: 32px;
	text-align: center;
	background: #eee;
}
.ir_bs_list li.ir_bs_period {
	width: 40%;
	line-height: 32px;
	border-left: 1px solid #707070;
	border-bottom: 1px solid #707070;
}
.ir_bs_list li.ir_bs_year {
	width: 40%;
	line-height: 32px;
	border-left: 1px solid #707070;
	border-bottom: 1px solid #707070;
}
.ir_bs_list li.ir_bs_file {
	width: 20%;
	text-align: center;
	border-left: 1px solid #707070;
	border-bottom: 1px solid #707070;
}



.ir_txt_1 {
	width: 100%;
	font-size: 1.7rem;
	font-weight: 700;
}
.ir_txt_2 {
	width: 100%;
	padding-top: 30px;
	font-size: 1.7rem;
	font-weight: 700;
	line-height: 1.8;
}
.ir_txt_3 {
	width: 100%;
	padding: 5px 0;
	font-size: 1.5rem;
	line-height: 1.8;
}

.ir_top {
	width: 100%;
	padding-top: 60px;
}
.ir_bottom {
	width: 100%;
	padding-bottom: 60px;
}


@media screen and (max-width: 880px) {

	.ir_bs_list li {
		display: inline-block;
		list-style-type: none;
		margin: 0;
		padding: 13px 8px;
		font-size: 1.2rem;
	}

	.ir_bs_list li.ir_bs_period {
		width: 40%;
		line-height: 1.5;
	}
	.ir_bs_list li.ir_bs_year {
		width: 40%;
		line-height: 1.5;
	}


	.ir_txt_1 {
		width: 100%;
		font-size: 1.5rem;
		font-weight: 700;
	}
	.ir_txt_2 {
		width: 100%;
		padding-top: 30px;
		font-size: 1.5rem;
		font-weight: 700;
		line-height: 1.8;
	}
	.ir_txt_3 {
		width: 100%;
		padding: 5px 0;
		font-size: 1.4rem;
		line-height: 1.6;
	}


}



/*********************** 採用情報 ***********************/

.jobs_comming_soon {
	width: 100%;
	height: 400px;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #dbdada;
}

.jobs_txt_1 {
	width: 100%;
	font-size: 2.0rem;
	font-weight: 700;
	letter-spacing: 0.3em !important;
	text-align: center;
}

@media screen and (max-width: 580px) {

	.jobs_comming_soon {
		width: 100%;
		height: 250px;
	}

	.jobs_txt_1 {
		width: 100%;
		font-size: 1.8rem;
		letter-spacing: 0.2em !important;
	}

}



