@charset "utf-8";

/* **********************************************************
	common overwrite
********************************************************** */
.wrapper {
	overflow: visible;
	position: relative;
	height: 100%;
}

/* **********************************************************
	home__title
********************************************************** */
.home__title {
	padding: 75px 0 55px 0;
}

.home__title h2 {
	color: #004d92;
	font-size: 36px;
	font-size: 3.6rem;
	font-weight: bold;
	line-height: 1.2;
	text-align: center;
}

.home__title p {
	text-align: center;
	margin-top: 30px;
}

.home__title p.ruby {
	color: #00a2c9;
	font-weight: bold;
	line-height: 1.2;
	text-align: center;
	margin-top: 10px;
}

/*	@media
---------------------------------------------------------- */
@media (max-width: 640px) {
	.home__faq h2 {
		color: #004d92;
		font-size: 21px;
		font-size: 2.1rem;
		font-weight: bold;
		line-height: 1.2;
		text-align: center;
	}

	.home__faq h2 {
		color: #004d92;
		font-size: 21px;
		font-size: 2.1rem;
		font-weight: bold;
		line-height: 1.2;
		text-align: center;
	}

	.home__title p {
		font-size: 12px;
		font-size: 1.2rem;
		text-align: left;
		margin-top: 15px;
		padding: 0 20px;
	}

	.home__title p.ruby {
		color: #00a2c9;
		font-size: 12px;
		font-size: 1.2rem;
		font-weight: bold;
		line-height: 1.2;
		text-align: center;
		margin-top: 5px;
	}
}


/* **********************************************************
	home__branding
********************************************************** */
.home__branding {
	background: url(/images/img_branding.jpg) center center no-repeat;
	background-size: cover;
	padding: 0 10px;
	height: 100%;
}

.home__branding .mdl__inner {
	display: table;
	height: 100%;
}

.home__branding .mdl__inner>p {
	position: absolute;
	bottom: 20px;
	left: 50%;
	margin-left: -5px;
}

.home__branding .mdl__inner>p img {
	width: 11px;
	height: auto;
}

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

.home__branding h1 {
	color: #ffffff;
	font-size: 58px;
	font-size: 5.8rem;
	font-weight: bold;
	line-height: 1.2;
	text-align: center;
	padding-top: 125px;
}

.home__branding .lead {
	color: #ffffff;
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
	margin-top: 20px;
	text-align: center;
}

.home__branding .btn {
	margin-top: 75px;
	text-align: center;
}

.home__branding .btn span {
	display: block;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 48px;
	text-align: left;
	padding-left: 60px;
}

.home__branding .btn a {
	background: url(/images/btn_mail.png) no-repeat;
	display: inline-block;
	color: #ffffff;
	width: 274px;
}

.home__branding .btn a:hover {
	background: url(/images/btn_mail_on.png) no-repeat;
	text-decoration: none;
}

.home__branding {
	position: relative;
	background: none;
}

.home__branding .bgList {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
}

.home__branding .bgList .bg {
	background: url('/images/img_branding.jpg') no-repeat center center;
	background-size: cover;
}

.home__branding .bgList .bg02 {
	background-image: url('/images/casting_top_2.jpg');
}

.home__branding .bgList .bg03 {
	background-image: url('/images/casting_top_3.jpg');
}

.home__branding .bgList .bg04 {
	background-image: url('/images/casting_top_4.jpg');
}

.home__branding .bgList .bg05 {
	background-image: url('/images/casting_top_5.jpg');
}

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


/*	@media
---------------------------------------------------------- */
@media (max-width: 640px) {
	.home__branding {
		background: url(/images/img_branding_sp.jpg) center center no-repeat;
		background-size: cover;
		padding: 0 10px;
	}

	.home__branding h1 {
		color: #ffffff;
		font-size: 25px;
		font-size: 2.5rem;
		font-weight: bold;
		line-height: 1.2;
		text-align: center;
		padding-top: 35px;
	}

	.home__branding .lead {
		color: #ffffff;
		font-size: 14px;
		font-size: 1.4rem;
		font-weight: bold;
		margin-top: 20px;
		text-align: center;
	}

	.home__branding .btn {
		margin-top: 80px;
		text-align: center;
	}

	.home__branding .btn span {
		display: block;
		font-size: 12px;
		font-size: 1rem;
		line-height: 33px;
		text-align: left;
		padding-left: 43px;
	}

	.home__branding .btn a {
		background: url(/images/btn_mail_sp.png) no-repeat;
		background-size: 188px 33px;
		display: inline-block;
		color: #ffffff;
		width: 188px;
	}

	.home__branding .btn a:hover {
		background: url(/images/btn_mail_sp.png) no-repeat;
		background-size: 188px 33px;
		text-decoration: none;
	}
}


/* **********************************************************
	home__about
********************************************************** */
.home__about {
	padding-top: 0;
	padding-bottom: 0;
}

.home__about .about__list {
	margin: 0 -10px;
}

.home__about .about__list .list__block {
	display: table;
	width: 100%;
}

.home__about .about__list .list__block a {
	color: #464646;
	display: table-cell;
	line-height: 1.2;
	text-align: center;
	vertical-align: middle;
	padding: 80px 10px 75px 10px;
	width: 33.33%;
	z-index: 2;
}

.home__about .about__list .list__block a:hover {
	text-decoration: none;
	opacity: 0.6;
}

.home__about .about__list .list__block .block_1:after {
	background-repeat: no-repeat;
	background-position: center center no-repeat;
	background-size: cover;
	opacity: 0.4;
	background-image: url(../images/img_about_01.jpg);
}

.home__about .about__list .list__block .block_1:hover {
	background-repeat: no-repeat;
	background-position: center center no-repeat;
	background-size: cover;
	opacity: 0.9;
	background-image: url(../images/img_about_01.jpg);
	color: #FFFFFF;
}

.home__about .about__list .list__block .block_5:after {
	background-repeat: no-repeat;
	background-position: center center no-repeat;
	background-size: cover;
	background-image: url(../images/img_about_03-2.jpg);
	opacity: 0.4;
}

.home__about .about__list .list__block .block_5:hover {
	background-repeat: no-repeat;
	background-position: center center no-repeat;
	background-size: cover;
	background-image: url(../images/img_about_03-2.jpg);
	opacity: 0.9;
	color: #FFFFFF;
}

.home__about .about__list .list__block .block_5:after {
	background-repeat: no-repeat;
	background-position: center center no-repeat;
	background-image: url(../images/img_about_03-2.jpg);
	background-size: cover;
}

.home__about .about__list .list__block .block_4:after {
	background-repeat: no-repeat;
	background-position: center center no-repeat;
	background-size: cover;
	background-image: url(../images/img_arroyse.jpg);
	opacity: 0.4;
}

.home__about .about__list .list__block .block_4:hover {
	background-repeat: no-repeat;
	background-position: center center no-repeat;
	background-size: cover;
	background-image: url(../images/img_arroyse.jpg);
	opacity: 0.9;
	color: #FFFFFF;
}

.home__about .about__list .list__block .block_2:after {
	background-repeat: no-repeat;
	background-position: center center no-repeat;
	background-size: cover;
	background-image: url(../images/img_about_02.jpg);
	opacity: 0.4;
}

.home__about .about__list .list__block .block_2:hover {
	background-repeat: no-repeat;
	background-position: center center no-repeat;
	background-size: cover;
	background-image: url(../images/img_about_02.jpg);
	opacity: 0.9;
	color: #FFFFFF;
}

.home__about .about__list .list__block .block_6:after {
	background-repeat: no-repeat;
	background-position: center center no-repeat;
	background-size: cover;
	background-image: url(../images/img_about_equikment.jpg);
	opacity: 0.4;
}

.home__about .about__list .list__block .block_6:hover {
	background-repeat: no-repeat;
	background-position: center center no-repeat;
	background-size: cover;
	background-image: url(../images/img_about_equikment.jpg);
	opacity: 0.9;
	color: #FFFFFF;
}

.home__about .about__list .list__block .block_3:after {
	background-repeat: no-repeat;
	background-position: center center no-repeat;
	background-size: cover;
	background-image: url(../images/img_about_03.jpg);
	opacity: 0.4;
}

.home__about .about__list .list__block .block_3:hover {
	background-repeat: no-repeat;
	background-position: center center no-repeat;
	background-size: cover;
	background-image: url(../images/img_about_03.jpg);
	opacity: 0.9;
	color: #FFFFFF;
}

.home__about .about__list .list__block dt {
	font-size: 26px;
	font-size: 2.6rem;
	font-weight: bold;
	margin-bottom: 10px;
}

.home__about .about__list .list__block dd {
	font-weight: bold;
}

/*	@media
---------------------------------------------------------- */
@media (max-width: 640px) {
	.home__about {
		padding: 0;
	}

	.home__about .about__list {
		margin: 0;
	}

	.home__about .about__list .list__block {
		display: block;
		width: auto;
	}

	.home__about .about__list .list__block a {
		color: #464646;
		display: block;
		line-height: 1.2;
		text-align: center;
		vertical-align: middle;
		padding: 40px 10px 30px 10px;
		width: auto;
		z-index: 2;
	}

	.home__about .about__list .list__block a:hover {
		text-decoration: none;
	}

	.home__about .about__list .list__block .block_1:after {
		background: url(/images/img_about_01.jpg) center center no-repeat;
		background-size: cover;
	}

	.home__about .about__list .list__block .block_4:after {
		background-repeat: no-repeat;
		background-position: center center no-repeat;
		background-image: url(../images/img_arroyse.jpg);
		background-size: cover;
	}

	.home__about .about__list .list__block .block_2:after {
		background: url(/images/img_about_02.jpg) center center no-repeat;
		background-size: cover;
	}

	.home__about .about__list .list__block .block_6:after {
		background-repeat: no-repeat;
		background-position: center center no-repeat;
		background-image: url(../images/img_about_equikment.jpg);
		background-size: cover;
	}

	.home__about .about__list .list__block .block_3:after {
		background: url(/images/img_about_03.jpg) center center no-repeat;
		background-size: cover;
	}

	.home__about .about__list .list__block dt {
		font-size: 18px;
		font-size: 1.8rem;
		font-weight: bold;
		margin-bottom: 5px;
	}

	.home__about .about__list .list__block dd {
		font-size: 12px;
		font-size: 1.2rem;
		font-weight: bold;
	}
}


/* **********************************************************
	home__corporate
********************************************************** */
.home__corporate {
	padding: 0 10px 80px 10px;
}

.home__corporate .corporate__slide {
	position: relative;
	padding: 0 30px;
}

.home__corporate .corporate__slide button {
	cursor: pointer;
	border: none;
	outline: none;
	padding: 0;
	appearance: none;
}

.home__corporate .corporate__slide .slick-next {
	background: url(/common/images/arw_next3.png) no-repeat;
	text-indent: -9999px;
	overflow: hidden;
	position: absolute;
	top: 50%;
	right: 0px;
	margin-top: -10px;
	width: 11px;
	height: 19px;
}

.home__corporate .corporate__slide .slick-prev {
	background: url(/common/images/arw_prev3.png) no-repeat;
	text-indent: -9999px;
	overflow: hidden;
	position: absolute;
	top: 50%;
	left: 0px;
	margin-top: -10px;
	width: 11px;
	height: 19px;
}

.home__corporate .corporate__slide .slide__overflow {
	overflow: hidden;
}

.home__corporate .corporate__slide .slick-list {
	margin: 0 -15px;
}

.home__corporate .corporate__slide .slick-slide {
	overflow: hidden;
	margin: 0 15px;
}

.home__corporate .corporate__slide img {
	width: 100%;
	height: auto;
}

.home__corporate .corporate__slide dl {
	background-color: #004d92;
	color: #ffffff;
	padding: 15px 20px;
}

.home__corporate .corporate__slide a:hover dl {
	background-color: #00a2c9;
}

.home__corporate .corporate__slide dt {
	display: inline-block;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
	vertical-align: middle;
}

.home__corporate .corporate__slide dd {
	display: inline-block;
	font-size: 12px;
	font-size: 1.2rem;
	vertical-align: middle;
}

/*	@media
---------------------------------------------------------- */
@media (max-width: 640px) {
	.home__corporate {
		padding: 0 10px 40px 10px;
	}

	.home__corporate .corporate__slide {
		position: relative;
		padding: 0 15px;
	}

	.home__corporate .corporate__slide button {
		cursor: pointer;
		border: none;
		outline: none;
		padding: 0;
		appearance: none;
	}

	.home__corporate .corporate__slide .slick-next {
		background: url(/common/images/arw_next_sp.png) no-repeat;
		background-size: 5px 9px;
		text-indent: -9999px;
		overflow: hidden;
		position: absolute;
		top: 50%;
		right: 0px;
		margin-top: -5px;
		width: 5px;
		height: 9px;
	}

	.home__corporate .corporate__slide .slick-prev {
		background: url(/common/images/arw_prev_sp.png) no-repeat;
		background-size: 5px 9px;
		text-indent: -9999px;
		overflow: hidden;
		position: absolute;
		top: 50%;
		left: 0px;
		margin-top: -5px;
		width: 5px;
		height: 9px;
	}

	.home__corporate .corporate__slide .slide__overflow {
		overflow: hidden;
	}

	.home__corporate .corporate__slide .slick-list {
		margin: 0 -7px;
		width: 120%;
	}

	.home__corporate .corporate__slide .slick-slide {
		overflow: hidden;
		margin: 0 7px;
	}

	.home__corporate .corporate__slide img {
		width: 100%;
		height: auto;
	}

	.home__corporate .corporate__slide dl {
		background-color: #004d92;
		color: #ffffff;
		padding: 8px 10px;
	}

	.home__corporate .corporate__slide a:hover dl {
		background-color: #004d92;
	}

	.home__corporate .corporate__slide dt {
		display: block;
		font-size: 16px;
		font-size: 1.6rem;
		font-weight: bold;
		vertical-align: middle;
	}

	.home__corporate .corporate__slide dd {
		display: block;
		font-size: 10px;
		font-size: 1.0rem;
		vertical-align: middle;
	}
}


/* **********************************************************
	home__casting
********************************************************** */
.home__casting {
	background-color: #f3f3f3;
	overflow: hidden;
}

.home__casting__sp {
	display: none;
}

.home__casting .casting__list {
	overflow: hidden;
	margin: 0 -1px;
}

.home__casting .casting__block {
	border-collapse: separate;
	border-spacing: 1px;
	display: table;
	margin-bottom: -1px;
	width: 100%;
}

.home__casting .casting__block>div {
	background-color: #000000;
	color: #ffffff;
	cursor: pointer;
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	padding: 90px 10px;
	z-index: 2;
}

.home__casting .casting__block>div p {}

.home__casting .casting__block>div.selected p {
	display: none;
}

.home__casting .casting__block>div p span {
	border: 1px solid #ffffff;
	display: inline-block;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 25px;
	padding: 5px 10px;
}

.home__casting .casting__block>div dt {
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 10px;
}

.home__casting .casting__block>div.selected dl {
	display: none;
}

.home__casting .casting__block>div:after {
	opacity: 0.5;
}

.home__casting .casting__block>div:hover:after,
.home__casting .casting__block>div.selected:after {
	opacity: 1;
}

.home__casting .casting_1 {}

.home__casting .casting_1>div {
	width: 50%;
}

.home__casting .casting_1 .block_1:after {
	background: url(/images/img_casting_01.jpg) center center no-repeat;
	background-size: cover;
}

.home__casting .casting_1 .block_2:after {
	background: url(/images/img_casting_03.jpg) center center no-repeat;
	background-size: cover;
}

.home__casting .casting_2 {}

.home__casting .casting_2>div {
	width: 33.33%;
}

.home__casting .casting_2 .block_3:after {
	background: url(/images/img_casting_12.jpg) center center no-repeat;
	background-size: cover;
}

.home__casting .casting_2 .block_4:after {
	background: url(/images/img_casting_05.jpg) center center no-repeat;
	background-size: cover;
}

.home__casting .casting_2 .block_5:after {
	background: url(/images/img_casting_10.jpg) center center no-repeat;
	background-size: cover;
}

.home__casting .casting_3 {}

.home__casting .casting_3>div {
	width: 50%;
}

.home__casting .casting_3 .block_6:after {
	background: url(/images/img_casting_09.jpg) center center no-repeat;
	background-size: cover;
}

.home__casting .casting_3 .block_7:after {
	background: url(/images/img_casting_08.jpg) center center no-repeat;
	background-size: cover;
}

.home__casting .casting__details {
	display: none;
	text-align: left;
	position: relative;
	z-index: 2;
}

.home__casting .casting__details .details__block {
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	display: none;
	position: relative;
	padding: 40px;
	width: 100%;
}

.home__casting .casting__details .details__block:after {
	background: url(/images/arw_casting_pos.png) no-repeat;
	content: "";
	position: absolute;
	top: -20px;
	margin-left: -17px;
	overflow: hidden;
	width: 35px;
	height: 20px;
}

.home__casting .casting__details .block_1:after {
	left: 25%;
}

.home__casting .casting__details .block_2:after {
	left: 75%;
}

.home__casting .casting__details .block_3:after {
	left: 16.66%;
}

.home__casting .casting__details .block_4:after {
	left: 50%;
}

.home__casting .casting__details .block_5:after {
	left: 83.34%;
}

.home__casting .casting__details .block_6:after {
	left: 25%;
}

.home__casting .casting__details .block_7:after {
	left: 75%;
}

.home__casting .casting__details .details__L {
	display: table-cell;
	vertical-align: top;
	padding-right: 30px;
	width: 220px;
}

.home__casting .casting__details .details__L>dl {
	display: table;
}

.home__casting .casting__details .details__L>dl>dt {
	display: table-cell;
	vertical-align: middle;
	white-space: nowrap;
	width: 40px;
}

.home__casting .casting__details .details__L>dl>dt {
	border: 1px solid #004d93;
	color: #004d93;
	display: inline-block;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 40px;
	text-align: center;
	width: 40px;
}

.home__casting .casting__details .details__L>dl>dd {
	display: table-cell;
	line-height: 1.2;
	vertical-align: middle;
	word-wrap: break-word;
	overflow-wrap: break-word;
	padding-left: 13px;
}

.home__casting .casting__details .details__L>dl>dd dt {
	color: #004d93;
	font-size: 28px;
	font-size: 2.8rem;
	font-weight: bold;
}

.home__casting .casting__details .details__L>dl>dd dd {
	color: #00a2c9;
}

.home__casting .casting__details .details__L p {
	margin-top: 30px;
}

.home__casting .casting__details .details__L p a {
	background-color: #004d93;
	color: #ffffff;
	font-weight: bold;
	padding: 10px 15px;
}

.home__casting .casting__details .details__L p a:hover {
	background-color: #00a2c9;
	text-decoration: none;
}

.home__casting .casting__details .details__L p a span {
	background: url(/common/images/arw_next.png) right center no-repeat;
	text-align: center;
	padding: 0 35px;
}

.home__casting .casting__details .details__R {
	display: table-cell;
	font-size: 16px;
	font-size: 1.6rem;
	vertical-align: top;
}

.home__casting .casting__details .details__R p {
	display: none;
}

.home__casting .casting__details .details__R dt {
	color: #004d93;
	font-weight: bold;
}

.home__casting .casting__details .details__R dd {
	padding-bottom: 5px;
}

/*	@media
---------------------------------------------------------- */
@media (max-width: 640px) {
	.home__casting {
		display: none;
	}

	.home__casting__sp {
		display: block;
		background-color: #f3f3f3;
		overflow: hidden;
	}

	.home__casting__sp .casting__list {
		overflow: hidden;
		margin: 0 -1px;
	}

	.home__casting__sp .casting__block {
		border-collapse: separate;
		border-spacing: 1px;
		display: table;
		margin-bottom: -1px;
		width: 100%;
		height: 140px;
	}

	.home__casting__sp .casting__block>div {
		background-color: #000000;
		color: #ffffff;
		cursor: pointer;
		display: table-cell;
		text-align: left;
		vertical-align: middle;
		position: relative;
		padding: 0 20px;
		z-index: 2;
	}

	.home__casting__sp .casting__block>div:after {
		content: "";
		opacity: 1;
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: -1;
	}

	.home__casting__sp .casting__block>div p {}

	.home__casting__sp .casting__block>div.selected p {
		display: none;
	}

	.home__casting__sp .casting__block>div p span {
		border: 1px solid #ffffff;
		display: inline-block;
		font-size: 14px;
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 1.2;
		margin-bottom: 8px;
		padding: 10px 10px;
	}

	.home__casting__sp .casting__block>div dt {
		font-size: 16px;
		font-size: 1.6rem;
		font-weight: bold;
		line-height: 1.2;
		margin-bottom: 5px;
	}

	.home__casting__sp .casting__block>div dd {
		font-size: 10px;
		font-size: 1.0rem;
		line-height: 1.2;
	}

	.home__casting__sp .casting__block>div.selected dl {
		display: none;
	}

	.home__casting__sp .casting__block>div:after {
		opacity: 0.5;
	}

	.home__casting__sp .casting__block>div.selected:after {
		opacity: 1;
	}

	.home__casting__sp .casting_1 {}

	.home__casting__sp .casting_1>div {
		width: 50%;
	}

	.home__casting__sp .casting_1 .block_1:after {
		background: url(/images/img_casting_01.jpg) center center no-repeat;
		background-size: cover;
	}

	.home__casting__sp .casting_1 .block_2:after {
		background: url(/images/img_casting_03.jpg) center center no-repeat;
		background-size: cover;
	}

	.home__casting__sp .casting_2 {}

	.home__casting__sp .casting_2>div {
		width: 50%;
	}

	.home__casting__sp .casting_2 .block_3:after {
		background: url(/images/img_casting_12.jpg) center center no-repeat;
		background-size: cover;
	}

	.home__casting__sp .casting_2 .block_4:after {
		background: url(/images/img_casting_05.jpg) center center no-repeat;
		background-size: cover;
	}

	.home__casting__sp .casting_3 {}

	.home__casting__sp .casting_3>div {
		width: 50%;
	}

	.home__casting__sp .casting_3 .block_5:after {
		background: url(/images/img_casting_10.jpg) center center no-repeat;
		background-size: cover;
	}

	.home__casting__sp .casting_3 .block_6:after {
		background: url(/images/img_casting_09.jpg) center center no-repeat;
		background-size: cover;
	}

	.home__casting__sp .casting_4 {}

	.home__casting__sp .casting_4>div {
		width: 50%;
	}

	.home__casting__sp .casting_4 .block_7:after {
		background: url(/images/img_casting_08.jpg) center center no-repeat;
		background-size: cover;
	}

	.home__casting__sp .casting__details {
		display: none;
		text-align: left;
		position: relative;
		z-index: 2;
	}

	.home__casting__sp .casting__details .details__block {
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		display: none;
		position: relative;
		padding: 20px;
		width: 100%;
	}

	.home__casting__sp .casting__details .details__block:after {
		background: url(/images/arw_casting_pos_sp.png) no-repeat;
		background-size: 18px 10px;
		content: "";
		position: absolute;
		top: -10px;
		margin-left: -9px;
		overflow: hidden;
		width: 18px;
		height: 10px;
	}

	.home__casting__sp .casting__details .block_1:after {
		left: 25%;
	}

	.home__casting__sp .casting__details .block_2:after {
		left: 75%;
	}

	.home__casting__sp .casting__details .block_3:after {
		left: 25%;
	}

	.home__casting__sp .casting__details .block_4:after {
		left: 75%;
	}

	.home__casting__sp .casting__details .block_5:after {
		left: 25%;
	}

	.home__casting__sp .casting__details .block_6:after {
		left: 75%;
	}

	.home__casting__sp .casting__details .block_7:after {
		left: 25%;
	}

	.home__casting__sp .casting__details .details__L {
		display: block;
		vertical-align: top;
		padding-right: 0;
		width: auto;
	}

	.home__casting__sp .casting__details .details__L>dl {
		display: table;
	}

	.home__casting__sp .casting__details .details__L>dl>dt {
		display: table-cell;
		vertical-align: middle;
		white-space: nowrap;
		width: 30px;
	}

	.home__casting__sp .casting__details .details__L>dl>dt {
		border: 1px solid #004d93;
		color: #004d93;
		display: inline-block;
		font-size: 14px;
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 30px;
		text-align: center;
		width: 30px;
	}

	.home__casting__sp .casting__details .details__L>dl>dd {
		display: table-cell;
		line-height: 1.2;
		vertical-align: middle;
		word-break: break-all;
		padding-left: 13px;
	}

	.home__casting__sp .casting__details .details__L>dl>dd dt {
		color: #004d93;
		font-size: 16px;
		font-size: 1.6rem;
		font-weight: bold;
	}

	.home__casting__sp .casting__details .details__L>dl>dd dd {
		color: #00a2c9;
		font-size: 10px;
		font-size: 1.0rem;
	}

	.home__casting__sp .casting__details .details__L p {
		display: none;
	}

	.home__casting__sp .casting__details .details__R {
		display: block;
		font-size: 12px;
		font-size: 1.2rem;
		vertical-align: top;
	}

	.home__casting__sp .casting__details .details__R p {
		display: block;
		margin-top: 15px;
	}

	.home__casting__sp .casting__details .details__R p a {
		background-color: #004d93;
		color: #ffffff;
		display: block;
		font-weight: bold;
		padding: 10px 15px;
	}

	.home__casting__sp .casting__details .details__R p a:hover {
		background-color: #004d93;
		text-decoration: none;
	}

	.home__casting__sp .casting__details .details__R p a span {
		background: url(/common/images/arw_next_sp2.png) right center no-repeat;
		background-size: 5px 8px;
		display: block;
		text-align: center;
		padding: 0 10px;
	}

	.home__casting__sp .casting__details .details__R dt {
		color: #004d93;
		font-weight: bold;
		margin-top: 15px;
	}

	.home__casting__sp .casting__details .details__R dd {
		padding-bottom: 0;
	}
}


/* **********************************************************
	home__machining
********************************************************** */
.home__machining {
	overflow: hidden;
	padding-top: 0;
	padding-right: 10px;
	padding-left: 10px;
	padding-bottom: 30px;
}

.home__machining__sp {
	display: none;
}

.home__machining .machining__list {
	overflow: hidden;
	margin: 0 -11px;
}

.home__machining .machining__block {
	border-collapse: separate;
	border-spacing: 1px;
	display: table;
	margin-bottom: -1px;
	width: 100%;
}

.home__machining .machining__block>div {
	background-color: #000000;
	color: #ffffff;
	cursor: pointer;
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	padding: 90px 10px;
	width: 33.33%;
	z-index: 2;
}

.home__machining .machining__block>div p {}

.home__machining .machining__block>div.selected p {
	display: none;
}

.home__machining .machining__block>div p span {
	border: 1px solid #ffffff;
	display: inline-block;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 25px;
	padding: 5px 10px;
}

.home__machining .machining__block>div dt {
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 10px;
}

.home__machining .machining__block>div.selected dl {
	display: none;
}

.home__machining .machining__block>div:after {
	opacity: 0.5;
}

.home__machining .machining__block>div:hover:after,
.home__machining .machining__block>div.selected:after {
	opacity: 1;
}

.home__machining .machining__block .block_1:after {
	background: url(/images/img_machining_01.jpg) center center no-repeat;
	background-size: cover;
}

.home__machining .machining__block .block_2:after {
	background: url(/images/img_machining_02.jpg) center center no-repeat;
	background-size: cover;
}

.home__machining .machining__block .block_3:after {
	background: url(/images/img_machining_03.jpg) center center no-repeat;
	background-size: cover;
}

.home__machining .machining__details {
	display: none;
	text-align: left;
	position: relative;
	z-index: 2;
}

.home__machining .machining__details .details__block {
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	display: none;
	position: relative;
	padding: 40px;
	width: 100%;
}

.home__machining .machining__details .details__block:after {
	background: url(/images/arw_casting_pos.png) no-repeat;
	content: "";
	position: absolute;
	top: -20px;
	margin-left: -17px;
	overflow: hidden;
	width: 35px;
	height: 20px;
}

.home__machining .machining__details .block_1:after {
	left: 16.66%;
}

.home__machining .machining__details .block_2:after {
	left: 50%;
}

.home__machining .machining__details .block_3:after {
	left: 83.34%;
}

.home__machining .machining__details .details__L {
	display: table-cell;
	vertical-align: top;
	padding-right: 30px;
	width: 220px;
}

.home__machining .machining__details .details__L>dl {
	display: table;
}

.home__machining .machining__details .details__L>dl>dt {
	display: table-cell;
	vertical-align: middle;
	white-space: nowrap;
	width: 40px;
}

.home__machining .machining__details .details__L>dl>dt {
	border: 1px solid #004d93;
	color: #004d93;
	display: inline-block;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 40px;
	text-align: center;
	width: 40px;
}

.home__machining .machining__details .details__L>dl>dd {
	display: table-cell;
	line-height: 1.2;
	vertical-align: middle;
	word-wrap: break-word;
	overflow-wrap: break-word;
	padding-left: 13px;
}

.home__machining .machining__details .details__L>dl>dd dt {
	color: #004d93;
	font-size: 28px;
	font-size: 2.8rem;
	font-weight: bold;
}

.home__machining .machining__details .details__L>dl>dd dd {
	color: #00a2c9;
}

.home__machining .machining__details .details__L p {
	margin-top: 30px;
}

.home__machining .machining__details .details__L p a {
	background-color: #004d93;
	color: #ffffff;
	font-weight: bold;
	padding: 10px 15px;
}

.home__machining .machining__details .details__L p a:hover {
	background-color: #00a2c9;
	text-decoration: none;
}

.home__machining .machining__details .details__L p a span {
	background: url(/common/images/arw_next.png) right center no-repeat;
	text-align: center;
	padding: 0 35px;
}

.home__machining .machining__details .details__R {
	display: table-cell;
	font-size: 16px;
	font-size: 1.6rem;
	vertical-align: top;
}

.home__machining .machining__details .details__R p {
	display: none;
}

.home__machining .machining__details .details__R dt {
	color: #004d93;
	font-weight: bold;
}

.home__machining .machining__details .details__R dd {
	padding-bottom: 5px;
}

/*	@media
---------------------------------------------------------- */
@media (max-width: 640px) {
	.home__machining {
		display: none;
	}

	.home__machining__sp {
		display: block;
		overflow: hidden;
	}

	.home__machining__sp .machining__list {
		overflow: hidden;
		margin: 0 -1px;
	}

	.home__machining__sp .machining__block {
		border-collapse: separate;
		border-spacing: 1px;
		display: table;
		margin-bottom: -1px;
		width: 100%;
		height: 200px;
	}

	.home__machining__sp .machining__block>div {
		background-color: #000000;
		color: #ffffff;
		cursor: pointer;
		display: table-cell;
		text-align: left;
		vertical-align: middle;
		position: relative;
		padding: 0 20px;
		z-index: 2;
	}

	.home__machining__sp .machining__block>div:after {
		content: "";
		opacity: 1;
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: -1;
	}

	.home__machining__sp .machining__block>div p {
		float: left;
		margin-right: 10px;
	}

	.home__machining__sp .machining__block>div.selected p {
		display: none;
	}

	.home__machining__sp .machining__block>div p span {
		border: 1px solid #ffffff;
		display: inline-block;
		font-size: 14px;
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 1.2;
		padding: 10px 10px;
	}

	.home__machining__sp .machining__block>div dt {
		font-size: 16px;
		font-size: 1.6rem;
		font-weight: bold;
		line-height: 1.2;
		margin-bottom: 5px;
	}

	.home__machining__sp .machining__block>div dd {
		font-size: 10px;
		font-size: 1.0rem;
		line-height: 1.2;
	}

	.home__machining__sp .machining__block>div.selected dl {
		display: none;
	}

	.home__machining__sp .machining__block>div:after {
		opacity: 0.5;
	}

	.home__machining__sp .machining__block>div.selected:after {
		opacity: 1;
	}

	.home__machining__sp .machining_1 {}

	.home__machining__sp .machining_1>div {
		width: auto;
	}

	.home__machining__sp .machining_1 .block_1:after {
		background: url(/images/img_machining_01.jpg) center center no-repeat;
		background-size: cover;
	}

	.home__machining__sp .machining_2 {}

	.home__machining__sp .machining_2>div {
		width: auto;
	}

	.home__machining__sp .machining_2 .block_2:after {
		background: url(/images/img_machining_02.jpg) center center no-repeat;
		background-size: cover;
	}

	.home__machining__sp .machining_3 {}

	.home__machining__sp .machining_3>div {
		width: auto;
	}

	.home__machining__sp .machining_3 .block_3:after {
		background: url(/images/img_machining_03.jpg) center center no-repeat;
		background-size: cover;
	}

	.home__machining__sp .machining__details {
		display: none;
		text-align: left;
		position: relative;
		z-index: 2;
	}

	.home__machining__sp .machining__details .details__block {
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		display: none;
		position: relative;
		padding: 20px;
		width: 100%;
	}

	.home__machining__sp .machining__details .details__block:after {
		background: url(/images/arw_casting_pos_sp.png) no-repeat;
		background-size: 18px 10px;
		content: "";
		position: absolute;
		top: -10px;
		margin-left: -9px;
		overflow: hidden;
		width: 18px;
		height: 10px;
	}

	.home__machining__sp .machining__details .block_1:after {
		left: 50%;
	}

	.home__machining__sp .machining__details .block_2:after {
		left: 50%;
	}

	.home__machining__sp .machining__details .block_3:after {
		left: 50%;
	}

	.home__machining__sp .machining__details .details__L {
		display: block;
		vertical-align: top;
		padding-right: 0;
		width: auto;
	}

	.home__machining__sp .machining__details .details__L>dl {
		display: table;
	}

	.home__machining__sp .machining__details .details__L>dl>dt {
		display: table-cell;
		vertical-align: middle;
		white-space: nowrap;
		width: 30px;
	}

	.home__machining__sp .machining__details .details__L>dl>dt {
		border: 1px solid #004d93;
		color: #004d93;
		display: inline-block;
		font-size: 14px;
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 30px;
		text-align: center;
		width: 30px;
	}

	.home__machining__sp .machining__details .details__L>dl>dd {
		display: table-cell;
		line-height: 1.2;
		vertical-align: middle;
		word-break: break-all;
		padding-left: 13px;
	}

	.home__machining__sp .machining__details .details__L>dl>dd dt {
		color: #004d93;
		font-size: 16px;
		font-size: 1.6rem;
		font-weight: bold;
	}

	.home__machining__sp .machining__details .details__L>dl>dd dd {
		color: #00a2c9;
		font-size: 10px;
		font-size: 1.0rem;
	}

	.home__machining__sp .machining__details .details__L p {
		display: none;
	}

	.home__machining__sp .machining__details .details__R {
		display: block;
		font-size: 12px;
		font-size: 1.2rem;
		vertical-align: top;
	}

	.home__machining__sp .machining__details .details__R p {
		display: block;
		margin-top: 15px;
	}

	.home__machining__sp .machining__details .details__R p a {
		background-color: #004d93;
		color: #ffffff;
		display: block;
		font-weight: bold;
		padding: 10px 15px;
	}

	.home__machining__sp .machining__details .details__R p a:hover {
		background-color: #004d93;
		text-decoration: none;
	}

	.home__machining__sp .machining__details .details__R p a span {
		background: url(/common/images/arw_next_sp2.png) right center no-repeat;
		background-size: 5px 8px;
		display: block;
		text-align: center;
		padding: 0 10px;
	}

	.home__machining__sp .machining__details .details__R dt {
		color: #004d93;
		font-weight: bold;
		margin-top: 15px;
	}

	.home__machining__sp .machining__details .details__R dd {
		padding-bottom: 0;
	}
}


/* **********************************************************
	home__topics
********************************************************** */
.home__topics {
	background: url(/images/img_topics.jpg) center center no-repeat;
	background-size: cover;
	padding: 75px 10px 60px 10px;
}

.home__topics .topics__block {
	display: table;
	width: 100%;
}

.home__topics .topics__left {
	display: table-cell;
	vertical-align: top;
	white-space: nowrap;
	padding: 0 60px 0 25px;
}

.home__topics .topics__left h2 {
	color: #00a2c9;
	font-size: 36px;
	font-size: 3.6rem;
	font-weight: bold;
	line-height: 1.2;
}

.home__topics .topics__left .ruby {
	color: #ffffff;
	font-weight: bold;
	line-height: 1.2;
	margin-top: 10px;
}

.home__topics .topics__left .btn {
	margin-top: 20px;
}

.home__topics .topics__left .btn a {
	border: 1px solid #ffffff;
	color: #ffffff;
	display: inline-block;
	font-weight: bold;
	padding: 7px 15px 7px 0;
}

.home__topics .topics__left .btn a:hover {
	background-color: #00a2c9;
	text-decoration: none;
}

.home__topics .topics__left .btn a span {
	background: url(/common/images/arw_next.png) right center no-repeat;
	display: block;
	padding: 0 20px;
}

.home__topics .topics__right {
	display: table-cell;
	vertical-align: top;
	padding-right: 25px;
}

.home__topics .topics__right .btn {
	display: none;
}

.home__topics .topics__right li {
	color: #ffffff;
	position: relative;
	padding: 0 0 15px 7em;
}

.home__topics .topics__right li em {
	position: absolute;
	top: 0px;
	left: 0px;
}

.home__topics .topics__right a {
	color: #ffffff;
}

.home__topics .topics__right a:hover {
	color: #ffffff;
}

/*	@media
---------------------------------------------------------- */
@media (max-width: 640px) {
	.home__topics {
		background: none;
		background-size: cover;
		padding: 75px 0 0 0;
	}

	.home__topics .topics__block {
		display: block;
		width: auto;
	}

	.home__topics .topics__left {
		background: url(/images/img_topics.jpg) center center no-repeat;
		background-size: cover;
		display: block;
		vertical-align: top;
		white-space: nowrap;
		padding: 30px 10px 20px 10px;
	}

	.home__topics .topics__left h2 {
		color: #00a2c9;
		font-size: 21px;
		font-size: 2.1rem;
		font-weight: bold;
		line-height: 1.2;
		text-align: center;
	}

	.home__topics .topics__left .ruby {
		color: #ffffff;
		font-size: 12px;
		font-size: 1.2rem;
		font-weight: bold;
		line-height: 1.2;
		margin-top: 10px;
		text-align: center;
	}

	.home__topics .topics__left .btn {
		display: none;
		margin-top: 20px;
	}

	.home__topics .topics__left .btn a {
		border: 1px solid #ffffff;
		color: #ffffff;
		display: inline-block;
		font-weight: bold;
		padding: 7px 15px 7px 0;
	}

	.home__topics .topics__left .btn a:hover {
		background-color: #00a2c9;
		text-decoration: none;
	}

	.home__topics .topics__left .btn a span {
		background: url(/common/images/arw_next.png) right center no-repeat;
		display: block;
		padding: 0 20px;
	}

	.home__topics .topics__right {
		background-color: #000000;
		display: block;
		vertical-align: top;
		padding: 20px 20px 40px 20px;
	}

	.home__topics .topics__right .btn {
		border-top: 1px solid #4d4d4d;
		border-bottom: 1px solid #4d4d4d;
		display: block;
	}

	.home__topics .topics__right .btn a {
		color: #ffffff;
		display: block;
		font-size: 12px;
		font-size: 1.2rem;
		text-align: center;
		padding: 10px 15px;
	}

	.home__topics .topics__right .btn a span {
		background: url(/common/images/arw_next_sp2.png) right center no-repeat;
		background-size: 5px 13px;
		display: block;
		padding: 0 10px;
	}

	.home__topics .topics__right li {
		color: #ffffff;
		font-size: 12px;
		font-size: 1.2rem;
		position: relative;
		padding: 0 0 15px 0;
	}

	.home__topics .topics__right li em {
		display: block;
		position: relative;
		top: auto;
		left: auto;
	}
}


/* **********************************************************
	home__service
********************************************************** */
.home__service {
	padding: 0 10px 80px 10px;
}

.home__service .service__slide {
	position: relative;
	padding: 0 30px;
}

.home__service .service__slide button {
	cursor: pointer;
	border: none;
	outline: none;
	padding: 0;
	appearance: none;
}

.home__service .service__slide .slick-next {
	background: url(/common/images/arw_next3.png) no-repeat;
	text-indent: -9999px;
	overflow: hidden;
	position: absolute;
	top: 50%;
	right: 0px;
	margin-top: -10px;
	width: 11px;
	height: 19px;
}

.home__service .service__slide .slick-prev {
	background: url(/common/images/arw_prev3.png) no-repeat;
	text-indent: -9999px;
	overflow: hidden;
	position: absolute;
	top: 50%;
	left: 0px;
	margin-top: -10px;
	width: 11px;
	height: 19px;
}

.home__service .service__slide .slide__overflow {
	overflow: hidden;
}

.home__service .service__slide .slick-list {
	margin: 0 -17px 0 -18px;
}

.home__service .service__slide .slick-slide {
	overflow: hidden;
	margin: 0 17px 0 18px;
}

.home__service .service__slide img {
	width: 100%;
	height: auto;
}

.home__service .service__slide a:hover img {
	filter: progid:DXImageTransform.Microsoft.Alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}

/*	@media
---------------------------------------------------------- */
@media (max-width: 640px) {
	.home__service {
		padding: 0 10px 40px 10px;
	}

	.home__service .service__slide {
		position: relative;
		padding: 0 15px;
	}

	.home__service .service__slide button {
		cursor: pointer;
		border: none;
		outline: none;
		padding: 0;
		appearance: none;
	}

	.home__service .service__slide .slick-next {
		background: url(/common/images/arw_next_sp.png) no-repeat;
		background-size: 5px 9px;
		text-indent: -9999px;
		overflow: hidden;
		position: absolute;
		top: 50%;
		right: 0px;
		margin-top: -5px;
		width: 5px;
		height: 9px;
	}

	.home__service .service__slide .slick-prev {
		background: url(/common/images/arw_prev_sp.png) no-repeat;
		background-size: 5px 9px;
		text-indent: -9999px;
		overflow: hidden;
		position: absolute;
		top: 50%;
		left: 0px;
		margin-top: -5px;
		width: 5px;
		height: 9px;
	}

	.home__service .service__slide .slide__overflow {
		overflow: hidden;
	}

	.home__service .service__slide .slick-list {
		margin: 0 -7px;
		width: 120%;
	}

	.home__service .service__slide .slick-slide {
		overflow: hidden;
		margin: 0 7px;
	}

	.home__service .service__slide img {
		width: 100%;
		height: auto;
	}

	.home__service .service__slide a:hover img {
		filter: progid:DXImageTransform.Microsoft.Alpha(opacity=100);
		-moz-opacity: 1;
		opacity: 1;
	}
}

.aboutbox {
	background-color: #004d92;
	height: 10px;
	overflow: hidden;
}

/* **********************************************************
	faq__btn
********************************************************** */
.faq__btn {
	padding-right: 10px;
	padding-left: 10px;
	padding-bottom: 80px;
	margin-top: -35px;
}

.faq__btn p {
	text-align: center;
	padding-right: 0px;
}

.faq__btn a {
	background-color: #004d92;
	color: #ffffff;
	display: inline-block;
	padding-top: 0;
	padding-right: 30px;
	padding-left: 30px;
	padding-bottom: 0;
}

.faq__btn a:hover {
	background-color: #00a2c9;
	color: #ffffff;
	text-decoration: none;
}

.faq__btn a span {
	background-repeat: no-repeat;
	background-position: right center no-repeat;
	display: block;
	font-weight: bold;
	padding-top: 10px;
	padding-left: 0px;
	padding-bottom: 10px;
}