#toumeisei_1,
#toumeisei_2 {
	padding-top: 80px;
	margin-top: -80px;
}

#ideal_link_2,
#ideal_link_3 {
	padding-top: 60px;
	margin-top: -60px;
}

@media only screen and (max-width: 980px) {
	#ideal_link_2,
	#ideal_link_3 {
		padding-top: 0;
		margin-top: 0;
	}
}

.index .subnavi ul li:nth-child(1) a {
	color: #ce3a27;
}

.president .subnavi ul li:nth-child(2) a {
	color: #ce3a27;
}

.ideal .subnavi ul li:nth-child(3) a {
	color: #ce3a27;
}

.corp_index .subnavi ul li.sub a:first-child {
	color: #ce3a27;
}

.corp_csr .subnavi ul li.sub a:nth-child(2) {
	color: #ce3a27;
}

.corp_organization .subnavi ul li.sub a:nth-child(3) {
	color: #ce3a27;
}

.corp_access .subnavi ul li.sub a:nth-child(4) {
	color: #ce3a27;
}

.corp_step .subnavi ul li.sub a:nth-child(5) {
	color: #ce3a27;
}

.corp_data .subnavi ul li.sub a:nth-child(6) {
	color: #ce3a27;
}

.corp_teikan .subnavi ul li.sub a:nth-child(7) {
	color: #ce3a27;
}

.enterprise .subnavi ul li:nth-child(5) a {
	color: #ce3a27;
}

.movie .subnavi ul li:nth-child(6) a {
	color: #ce3a27;
}

.toumeisei .subnavi ul li:nth-child(7) a {
	color: #ce3a27;
}

.faq .subnavi ul li:nth-child(8) a {
	color: #ce3a27;
}

#contents_container .container_wrapper .frame_contents .frame + .frame {
	margin-top: 20px;
}

#contents_container .container_wrapper .frame_contents .img_president {
	max-width: 400px;
	width: 100%;
	height: auto;
	margin: 0 auto;
	text-align: center;
}

#contents_container .container_wrapper .frame_contents .img_organization {
	max-width: 700px;
	width: 100%;
	height: auto;
	margin: 0 auto;
	text-align: center;
}

#contents_container .container_wrapper .frame_contents .img_enterprise {
	max-width: 500px;
	width: 100%;
	height: auto;
	margin: 0 auto;
	text-align: center;
}

#contents_container .container_wrapper .frame_contents .access {
	overflow: hidden;
	padding-bottom: 20px;
	border-bottom: 1px solid #ddd;
	margin-bottom: 20px;
	display: table;
	width: 100%;
}
#contents_container .container_wrapper .frame_contents .access:last-child {
	padding-bottom: 0;
	border-bottom: none;
	margin-bottom: 0;
}
#contents_container .container_wrapper .frame_contents .access ul {
	display: table-cell;
	vertical-align: top;
	width: 58%;
}
#contents_container .container_wrapper .frame_contents .access ul li {
	float: left;
	width: 50%;
	box-sizing: border-box;
	padding-right: 20px;
}
#contents_container .container_wrapper .frame_contents .access ul li img {
	width: 100%;
	height: auto;
}
#contents_container .container_wrapper .frame_contents .access ul li p {
	padding: 0;
	font-size: 1.1rem;
	line-height: 150%;
}
#contents_container .container_wrapper .frame_contents .access ul li h4 {
	border: none;
	padding-bottom: 10px;
	margin-bottom: 0;
}
#contents_container .container_wrapper .frame_contents .access ul li {
}
#contents_container .container_wrapper .frame_contents .access .map_right {
	display: table-cell;
}
#contents_container .container_wrapper .frame_contents .access .map_right a {
	display: block;
	font-size: 1rem;
	text-align: right;
	text-decoration: underline;
}

#contents_container .container_wrapper .frame_contents .access .map_right iframe {
	width: 100%;
	height: 180px;
}

.step01 {
	overflow: hidden;
	width: 100%;
}

.step01_left {
	width: 48%;
	float: left;
}

.step01_right {
	width: 48%;
	margin-left: 4%;
	float: right;
}

.stepicn1 {
	color: #e10f00;
}

.stepicn2 {
	color: #0088c4;
}

#contents_container .container_wrapper .frame_contents .step01_left h4 {
	border: none;
	margin: 0;
	padding: 0;
	text-align: center;
	padding: 10px;
	font-size: 1.2rem;
	line-height: 130%;
	font-weight: 100;
	color: #fff;
	background: #fe3c32;
	background: -moz-linear-gradient(top, #fe3c32 0%, #e10f00 100%);
	background: -webkit-linear-gradient(top, #fe3c32 0%, #e10f00 100%);
	background: linear-gradient(to bottom, #fe3c32 0%, #e10f00 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fe3c32', endColorstr='#e10f00',GradientType=0 );
}

#contents_container .container_wrapper .frame_contents .step01_right h4 {
	border: none;
	margin: 0;
	padding: 0;
	text-align: center;
	padding: 10px;
	font-size: 1.2rem;
	line-height: 130%;
	font-weight: 100;
	color: #fff;
	background: #01a2e8;
	background: -moz-linear-gradient(top, #01a2e8 0%, #0088c4 100%);
	background: -webkit-linear-gradient(top, #01a2e8 0%, #0088c4 100%);
	background: linear-gradient(to bottom, #01a2e8 0%, #0088c4 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#01a2e8', endColorstr='#0088c4',GradientType=0 );
}

table.step {
	width: 100%;
	margin: 0 auto;
	border-collapse: separate;
	border-spacing: 0px 2px;
	font-size: 12px;
	line-height: 150%;
	font-size: 1.2rem;
}

table.step th,
table.step td {
	padding: 10px;
}

table.step th {
	background: #666666;
	vertical-align: middle;
	text-align: left;
	width: 90px;
	overflow: visible;
	position: relative;
	color: #fff;
	font-weight: normal;
	font-size: 15px;
}

table.step th:after {
	left: 100%;
	top: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(136, 183, 213, 0);
	border-left-color: #666666;
	border-width: 8px;
	margin-top: -8px;
}

#contents_container .container_wrapper .frame_contents table.step td p {
	padding: 0;
	margin: 0;
	text-indent: -1.2rem;
	padding-left: 1.2rem;
}

@-moz-document url-prefix() {
	table.step th::after {
		float: right;
		padding: 0;
		left: 30px;
		top: 8px;
		content: " ";
		height: 0;
		width: 0;
		position: relative;
		pointer-events: none;
		border: 8px solid transparent;
		border-left: #666666 8px solid;
		margin-top: -8px;
	}
}

table.step td {
	background: #eee;
	padding-left: 25px;
}

table.step tr:nth-child(2n) td {
	padding-left: 25px;
	background: #f8f8f8;
}

#contents_container .container_wrapper .frame_contents div.step_txt {
	text-align: center;
	position: relative;
}
#contents_container .container_wrapper .frame_contents div.step_txt:before {
	border-left: 1px solid #c00;
	height: 30px;
	width: 1px;
	display: block;
	content: "";
	position: absolute;
	left: 50%;
	margin: -30px 0 0 0;
}

#contents_container .container_wrapper .frame_contents div.step_txt span {
	display: block;
	border: 1px solid #c00;
	padding: 10px;
	max-width: 100%;
	margin: 28px auto 0;
	font-size: 1.2rem;
}

#contents_container .container_wrapper .frame_contents div.step span strong {
	font-weight: bold;
}

#contents_container .container_wrapper .frame_contents .agree_box {
	padding: 15px;
	border: 1px solid #ddd;
	border-radius: 5px;
}

#contents_container .container_wrapper .frame_contents .agree_box p {
	font-size: 1.1rem;
}

#contents_container .container_wrapper .frame_contents .agree_box ul li {
	list-style: disc;
	margin-left: 25px;
	font-size: 1.1rem;
	line-height: 150%;
}

#contents_container .container_wrapper .frame_contents .agree_box_inner {
	padding: 15px;
	border: 1px solid #ddd;
	border-radius: 5px;
}

#contents_container .container_wrapper .frame_contents .agree_box ol li {
	list-style-type: decimal;
	margin-left: 25px;
	font-size: 1.1rem;
	line-height: 150%;
}

#acMenu {
	margin: -20px 0 0 0;
	padding: 0;
}

#acMenu dt {
	position: relative;
	display: block;
	width: 100%;
	box-sizing: border-box;
	cursor: pointer;
	padding: 15px 35px 15px 15px;
	overflow: hidden;
	cursor: pointer;
	background: #ecf5f8;
	border: 1px solid #c6dfe5;
	margin-top: 10px;
	line-height: 150%;
	font-size: 1.2rem;
}

#acMenu dd {
	width: 100%;
	box-sizing: border-box;
	padding: 15px;
	overflow: hidden;
	line-height: 150%;
	font-size: 1.2rem;
}

#acMenu dt:after {
	position: absolute;
	top: 50%;
	right: 10px;
	margin-top: -0.8rem;
	font-family: FontAwesome;
	content: "\f078";
	color: #c00;
	font-size: 1rem;
	-moz-transition: all, 0.25s, linear;
	-o-transition: all, 0.25s, linear;
	-webkit-transition: all, 0.25s, linear;
	transition: all, 0.25s, linear;
	-moz-transform: translate(0, 50%);
	-ms-transform: translate(0, 50%);
	-webkit-transform: translate(0, 50%);
	transform: translate(0, 50%);
	-moz-transform: rotate(-180deg);
	-ms-transform: rotate(-180deg);
	-webkit-transform: rotate(-180deg);
	transform: rotate(-180deg);
}

#acMenu dt.active:after {
	-moz-transform: translate(0, 100%);
	-ms-transform: translate(0, 100%);
	-webkit-transform: translate(0, 100%);
	transform: translate(0, 100%);
	-moz-transform: rotate(-0deg);
	-ms-transform: rotate(-0deg);
	-webkit-transform: rotate(-0deg);
	transform: rotate(-0deg);
}

.movie_thumb ul li a:hover {
	opacity: 0.8;
}

.bx-wrapper {
	position: relative;
	width: 100%;
	margin: 0px auto;
	padding: 0px 0px 10px;
	clear: both;
	overflow: visible;
}
.bx-wrapper .bxslider {
	margin: 0px;
	overflow: visible;
}
.bx-viewport {
	z-index: 1;
}
.bx-wrapper div {
	padding: 0px;
	overflow: hidden;
}
.bx-wrapper .slide {
	position: relative;
	z-index: 10;
	margin: 0px;
	overflow: hidden;
}
.bx-wrapper .slide img {
	width: 100%;
	height: auto;
}
.bx-has-controls-direction {
	position: static;
	width: 100%;
	margin-top: 10px;
	overflow: visible;
	vertical-align: middle;
}
.bx-wrapper .bx-controls {
	margin: 0px;
	overflow: hidden;
}
.bx-wrapper .bx-pager {
	position: absolute;
	bottom: 6px;
	right: 0px;
	left: 0px;
	z-index: 80;
	text-align: center;
}
.bx-wrapper .bx-pager .bx-pager-item {
	display: inline-block;
	overflow: visible;
}
.bx-wrapper .bx-pager.bx-default-pager a {
	display: block;
	color: #333333;
	background: #ffffff;
	text-indent: -100em;
	width: 12px;
	height: 12px;
	margin: 0px 8px;
	border-radius: 6px;
	text-align: left;
	overflow: hidden;
}
.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active {
	color: #ffffff;
	background: #111111;
}
.bx-wrapper .bx-controls .bx-prev,
.bx-wrapper .bx-controls .bx-next {
	position: absolute;
	bottom: -15px;
	width: 30px;
	height: 30px;
	background: no-repeat center center;
	text-indent: -100em;
	opacity: 0.8;
	z-index: 210;
	overflow: hidden;
	transition-duration: 0.3s;
}
.bx-wrapper .bx-controls .bx-prev {
	top: 50%;
	left: 2%;
	background-image: url(../img/prev.png);
}
.bx-wrapper .bx-controls .bx-next {
	top: 50%;
	right: 2%;
	background-image: url(../img/next.png);
}
.bx-wrapper .bx-caption {
	position: absolute;
	bottom: 10px;
	left: 10px;
	padding: 15px 35px;
	background: rgba(255, 255, 255, 0.6);
}
.bx-wrapper .bx-caption span {
	font-size: 1.7em;
	letter-spacing: 0.2em;
	-webkit-font-smoothing: antialiased;
}
.content_wrap {
	margin-bottom: 30px;
}

.video_box + .movie_thumb ,
.swiper-container + .movie_thumb {
	padding-top: 15px;
}

.movie_thumb ul {
	overflow: hidden;
}

.movie_thumb ul + h4 {
	margin-top: 20px;
}

.movie_thumb ul li {
	width: 25%;
	float: left;
}

.movie_thumb ul li:nth-child(4n + 1) {
	clear: both;
}

.next_movie a,
.movie_thumb ul li a {
	position: relative;
	display: block;
	padding: 10px 5px 0;
	color: #cd1730;
	font-size: 0.9em;
	line-height: 130%;
}

.next_movie a img,
.movie_thumb ul li a img {
	width: 100%;
	height: auto;
	padding-bottom: 0px;
}

.next_movie a span,
.movie_thumb ul li a span {
	display: block;
}
.next_movie a:before,
.next_movie a:after,
.movie_thumb ul li a:before,
.movie_thumb ul li a:after {
	display: block;
	content: " ";
	position: absolute;
}
.next_movie a:before,
.movie_thumb ul li a:before {
	top: 50%;
	left: 50%;
	width: 52px;
	height: 52px;
	margin: -26px 0px 0px -26px;
	background: rgba(0, 0, 0, 0.6);
	border-radius: 50%;
}
.next_movie a:after,
.movie_thumb ul li a:after {
	top: 50%;
	left: 50%;
	margin: -14px 0px 0px -10px;
	border: 14px solid transparent;
	border-left: 28px solid #ffffff;
}

.next_movie a {
	position: relative;
	display: block;
	padding: 10px 10px 0px;
	color: #cd1730;
	font-size: 0.9em;
}
.next_movie a img {
	width: 100%;
	height: auto;
}
.next_movie a span {
	display: block;
}
.next_movie a:before,
.next_movie a:after {
	display: block;
	content: " ";
	position: absolute;
}
.next_movie a:before {
	top: 50%;
	left: 50%;
	width: 52px;
	height: 52px;
	margin: -26px 0px 0px -26px;
	background: rgba(0, 0, 0, 0.6);
	border-radius: 50%;
}
.next_movie a:after {
	top: 50%;
	left: 50%;
	margin: -14px 0px 0px -10px;
	border: 14px solid transparent;
	border-left: 28px solid #ffffff;
}

.next_movie {
	position: absolute;
	top: auto;
	left: 20px;
	right: 20px;
	bottom: 25px;
	background: rgba(0, 0, 0, 0.5);
}
.next_movie a,
.next_movie a:visited {
	display: none;
	position: absolute;
	top: 35%;
	right: 34%;
	width: 30%;
	max-width: 300px;
	padding: 10px;
	color: #ffffff;
	background: rgba(0, 0, 0, 0.5);
	text-decoration: none;
}
.next_movie a.replay {
	right: auto;
	left: 20%;
	width: 25%;
}
.next_movie a.next {
	right: 20%;
	width: 25%;
}
.next_movie a span {
	font-size: 1.2em;
}
.next_movie a span.title {
	text-align: center;
	font-weight: bold;
}
.next_movie a.replay:before {
	background: rgba(0, 0, 0, 0.6);
}
.next_movie a.replay:after {
	width: 52px;
	height: 52px;
	margin: -26px 0px 0px -26px;
	border: none;
	background: url(../img/replay.png) no-repeat center center;
}

.bxslider img {
	max-width: 100%;
	width: auto;
}

@media only screen and (max-width: 980px) {
	.movie_thumb ul li {
		width: 33.33333%;
		float: left;
	}

	.movie_thumb ul li:nth-child(4n + 1) {
		clear: inherit;
	}

	.movie_thumb ul li:nth-child(3n + 1) {
		clear: both;
	}

	#acMenu dd {
		display: none;
	}

	#acMenu dt:after {
		position: absolute;
		top: 50%;
		right: 10px;
		margin-top: -0.8rem;
		font-family: FontAwesome;
		content: "\f078";
		color: #c00;
		font-size: 1rem;
		-moz-transition: all, 0.25s, linear;
		-o-transition: all, 0.25s, linear;
		-webkit-transition: all, 0.25s, linear;
		transition: all, 0.25s, linear;
		-moz-transform: translate(0, 100%);
		-ms-transform: translate(0, 100%);
		-webkit-transform: translate(0, 100%);
		transform: translate(0, 100%);
		-moz-transform: rotate(-0deg);
		-ms-transform: rotate(-0deg);
		-webkit-transform: rotate(-0deg);
		transform: rotate(-0deg);
	}

	#acMenu dt.active:after {
		-moz-transform: translate(0, 50%);
		-ms-transform: translate(0, 50%);
		-webkit-transform: translate(0, 50%);
		transform: translate(0, 50%);
		-moz-transform: rotate(-180deg);
		-ms-transform: rotate(-180deg);
		-webkit-transform: rotate(-180deg);
		transform: rotate(-180deg);
	}
}

@media only screen and (max-width: 767px) {
	#contents_container .container_wrapper .frame_contents .access:last-child {
		padding-bottom: 0;
		border-bottom: none;
		margin-bottom: 0;
	}
	#contents_container .container_wrapper .frame_contents .access ul {
		display: block;
		vertical-align: top;
		width: 100%;
	}
	#contents_container .container_wrapper .frame_contents .access ul li {
		float: left;
		width: 50%;
		box-sizing: border-box;
		padding-right: 20px;
	}
	#contents_container .container_wrapper .frame_contents .access .map_right {
		display: block;
	}

	.bx-wrapper .bx-caption span {
		font-size: 1.3em;
		letter-spacing: 0.1em;
	}

	#contents_container .container_wrapper .frame_contents .access ul li {
		float: left;
	}

	#contents_container .container_wrapper .frame_contents .access ul li img {
		max-width: 100%;
		width: auto;
		height: auto;
	}

	#contents_container .container_wrapper .frame_contents .access ul li p {
		padding: 0;
		font-size: 1rem;
	}
	#contents_container .container_wrapper .frame_contents .access ul li h4 {
		font-size: 1.2rem;
		line-height: 130%;
		padding: 0 0 10px;
	}

	#contents_container .container_wrapper .frame_contents .access .map_right {
		float: none;
		clear: both;
	}

	#contents_container .container_wrapper .frame_contents .access .map_right iframe {
		width: 100%;
		margin-top: 20px;
	}

	#contents_container .container_wrapper .frame_contents table.step td p {
		padding: 0;
		margin: 0;
		font-size: 1rem;
		text-indent: -1rem;
		padding-left: 1rem;
	}
}

@media only screen and (max-width: 480px) {
	#contents_container .container_wrapper .frame_contents .access ul li:nth-child(1) {
		width: 50%;
	}
	#contents_container .container_wrapper .frame_contents .access ul li:nth-child(2) {
		width: 50%;
	}

	.movie_thumb ul li {
		width: 50%;
		float: left;
	}

	.movie_thumb ul li:nth-child(2n + 1) {
		clear: both;
	}

	.movie_thumb ul li:nth-child(3n + 1) {
		clear: inherit;
	}
}
