@charset "utf-8";
/*------------------------------------------------------------
	汎用スタイル
------------------------------------------------------------*/
/* clearfix */	
.clearfix:after {content: "";display: block;clear: both;}
/* flex */	
.flex,.flexA,.flexB,.flexC {display: flex;flex-wrap: wrap;}
.flexA {justify-content: space-around;}
.flexB {justify-content: space-between;}
.flexC {justify-content: center;}
/*------------------------------------------------------------
	content
------------------------------------------------------------*/
.content {
	max-width: 1080px;
	margin: 0 auto;
	padding: 0 40px;
	box-sizing: border-box;
}

@media all and (max-width: 896px) {
	.content {
		max-width: inherit;
		padding: 0;
	}
}

/*------------------------------------------------------------
	font
------------------------------------------------------------*/
.en {
	font-family: 'Roboto', sans-serif;
}

/*------------------------------------------------------------
	comLink
------------------------------------------------------------*/
.comLink {
	padding: 65px 0 63px 26px;
	text-align: center;
	background: url("../../img/common/bg01.jpg") no-repeat top center;
	background-size: cover;
}
.comLink a {
	min-height: 25px;
	padding-right: 33px;
	display: inline-block;
	font-size: 2.2rem;
	font-weight: 900;
	letter-spacing: -0.08em;
	background: url("../../img/common/icon03.png") no-repeat top 8px right;
	background-size: 21px auto;
}

@media all and (min-width: 897px) {
	.comLink a:hover {
		color: #DA3915;
	}
}

@media all and (max-width: 896px) {
	.comLink {
		padding: 35px 5px 38px;
	}
	.comLink a {
		min-height: 20px;
		padding-right: 25px;
		font-size: 1.9rem;
		background-position: top 5px right 1px;
		background-size: 19px auto;
	}
	.comLink a:active,
	.comLink a:hover {
		color: #DA3915;
	}
	
}

@media all and (max-width: 340px) {
	.comLink a {
		padding-right: 20px;
		font-size: 1.8rem;
	}
}

/*------------------------------------------------------------
	comTab
------------------------------------------------------------*/
.comTab {
	max-width: 812px;
	margin: 0 auto;
}
.comTab table {
	width: 100%;
	border-collapse: collapse;
}
.comTab table th,
.comTab table td {
	padding: 37px 5px 37px 40px;
	line-height: 2.11;
	font-size: 1.8rem;
	vertical-align: top;
	text-align: left;
	box-sizing: border-box;
	border-bottom: 1px solid #000;
	border-top: 1px solid #000;
	word-break: break-all;
}
.comTab table th {
	padding-left: 7px;
	width: 15.6%;
	border-right: 26px solid #fff;
	font-weight: 700;
}
.comTab table td span {
	display: block;
	margin-top: 20px;
}

@media all and (max-width: 896px) {
	.comTab {
		max-width: inherit;
		margin: 0 55px;
	}
	.comTab table {
		border-top: 1px solid #000;
	}
	.comTab table th,
	.comTab table td {
		display: block;
		width: 100% !important;
		padding: 4px 2px 16px;
		line-height: 1.56;
		font-size: 1.1rem;
		border-top: none;
	}
	.comTab table th {
		padding: 13px 3px 0;
		border: none;
	}
	.comTab table td span {
		margin-top: 15px;
	}
	
}

/*------------------------------------------------------------
	pageTitle
------------------------------------------------------------*/
.pageTitle {
	position: relative;
	background-color: #D93915;
}
.pageTitle .bg > img {
	width: 100%;
}

@media all and (max-width: 896px) {
	.pageTitle {
		height: auto;
		text-align: center;
	}
	.pageTitle .spImg img {
		width: 375px;
	}
}

/*------------------------------------------------------------
	comAbout
------------------------------------------------------------*/
.comAbout {
	padding: 116px 0 161px;
	text-align: center;
}
.comAbout h2 {
	margin-bottom: 31px;
}
.comAbout h2 img {
	height: 104px;
}
.comAbout p {
	line-height: 2.07;
}

@media all and (max-width: 896px) {
	.comAbout {
		padding: 63px 0 75px;
	}
	.comAbout h2 {
		margin-bottom: 14px;
	}
	.comAbout h2 img {
		height: 54px;
	}
	.comAbout p {
		line-height: 1.77;
	}
	.comAbout p span {
		margin-top: 2px;
		display: block;
		font-size: 1.05rem;
	}
	
}

/*------------------------------------------------------------
	comBg
------------------------------------------------------------*/
.comBg .bgBox {
/*	padding-top: 95px;*/
	box-sizing: border-box;
}
.comBg .bgBox .inner {
	max-width: 1160px;
	margin: 0 auto;
	padding: 0 40px;
	display: flex;
	align-items: center;
	height: 510px;
	box-sizing: border-box;
}
.comBg .bgBox03 .inner {
	max-width: 1100px;
}
.comBg .bgBox .textBox {
	max-width: 410px;
}
.comBg .bgBox02 .textBox {
	margin-left: 12px;
	max-width: 430px;
}
.comBg .bgBox03 .textBox {
	max-width: 350px;
}
.comBg .bgBox:nth-child(2n+1) .textBox {
	margin: 0 0 0 auto;
}
.comBg .bgBox .textBox p {
	color: #fff;
	font-size: 1.5rem;
	line-height: 1.9;
	text-align: justify;
	text-justify: inter-ideograph;
}
.comBg .bgBox .textBox h2 {
	margin-bottom: 28px;
	text-align: center;
}
.comBg .bgBox .textBox h2 img {
	width: 398px;
}
.comBg .bgBox02 .textBox h2 img {
	width: 430px;
}
.comBg .bgBox03 .textBox h2 img {
	width: 326px;
}
.comBg .bgBox02 .textBox .textImg {
	margin-top: 17px;
}
.comBg .bgBox02 .textBox .textImg img {
	width: 248px;
}
.comBg .bgBox01 {
	background: url("../../img/chain/bg01.jpg") no-repeat center center;
	background-size: 1920px auto;
}
.comBg .bgBox02 {
	/*padding-top: 68px;*/
	background: url("../../img/chain/bg02.jpg") no-repeat center center #0F0F0F;
	background-size: 1920px auto;
}
.comBg .bgBox03 {
/*	padding-top: 104px;*/
	background: url("../../img/chain/bg04.png") no-repeat left center, url("../../img/chain/bg03.jpg") no-repeat center center;
	background-size: 1050px auto,cover;
}

@media all and (min-width: 1920px) {
	.comBg .bgBox01 {
		background-size: cover !important;
	}
	
}

@media all and (max-width: 1770px) {
	.comBg .bgBox03-wid {
		background-position: left -200px center,center center;
	}
}

@media all and (max-width: 1360px) {
	.comBg .bgBox03-wid {
		background-position: left -400px center,center center;
	}
}

@media all and (max-width: 1020px) {
	.comBg .bgBox03-wid {
		background-position: left -500px center,center center;
	}
}

@media all and (max-width: 896px) {
	.comBg .bgBox .inner {
		max-width: inherit !important;
		padding: 51px 0 0;
		display: inherit;
		height: 540px;
	}
	.comBg .bgBox .textBox {
		margin: 0 23px !important;
		max-width: inherit !important;
	}
	.comBg .bgBox .textBox p {
		font-size: 1.35rem;
		line-height: 1.77;
	}
	.comBg .bgBox .textBox h2 {
		margin-bottom: 21px;
	}
	.comBg .bgBox .textBox h2 img {
		width: auto !important;
		max-width: inherit !important;
		height: 119px;
	}
	.comBg .bgBox02 .textBox .textImg {
		margin-top: 11px;
	}
	.comBg .bgBox02 .textBox .textImg img {
		width: 109px;
	}
	.comBg .bgBox01 {
		background: url("../../img/chain/sp_bg01.jpg") no-repeat center bottom;
		background-size: 896px auto;
	}
	.comBg .bgBox02 {
		height: 604px;
		background: url("../../img/chain/sp_bg02.jpg") no-repeat center center #000;
		background-size: 375px auto;
	}
	.comBg .bgBox03 {
		height: 559px;
		background: url("../../img/chain/sp_bg04.png") no-repeat bottom center, url("../../img/chain/sp_bg03.jpg") no-repeat center center;
		background-size: 375px auto,cover;
	}
	
}

@media all and (max-width: 370px) {
	.comBg .bgBox .textBox h2 img {
		height: 100px;
	}
}

/*------------------------------------------------------------
	comPlace
------------------------------------------------------------*/
.comPlace {
	padding: 152px 40px 153px;
	text-align: center;
}
.comPlace h2 {
	margin-bottom: 80px;
}
.comPlace h2 img {
	width: 765px;
}
.comPlace .img {
	margin-bottom: 35px;
}
.comPlace .img img {
	width: 834px;
}
.comPlace .photo img {
	width: 854px;
}
.comPlace .comLink {
	padding: 63px 0 0 26px;
	background: none;
}
.comPlace .comLink a {
	font-size: 2.6rem;
	background-position: right top 10px;
}

@media all and (max-width: 896px) {
	.comPlace {
		padding: 72px 0 77px;
	}
	.comPlace h2 {
		margin-bottom: 43px;
	}
	.comPlace h2 img {
		width: 317px;
	}
	.comPlace .img {
		margin-bottom: 24px;
	}
	.comPlace .img img {
		width: 284px;
	}
	.comPlace .photo {
		margin: 0 40px;
	}
	.comPlace .photo img {
		width: 100%;
	}
	.comPlace .comLink {
		padding: 27px 0 0 26px;
		background: none;
	}
	.comPlace .comLink a {
		font-size: 1.45rem;
		line-height: 1.39;
		background-position: right 3px top 21px;
		background-size: 19px auto;
	}
	
}

/*------------------------------------------------------------
	comDeve
------------------------------------------------------------*/
.comDeve {
	padding: 173px 0 167px;
	background-color: #DA3915;
}
.comDeve h2 {
	margin-bottom: 95px;
	text-align: center;
}
.comDeve h2 img {
	width: 811px;
}
.comDeve .topTextImg {
	margin: -44px 0 97px;
	text-align: center;
}
.comDeve .topTextImg img {
	width: 725px;
}
.comDeve .imgBox {
	padding-bottom: 31px;
}
.comDeve .photo {
	margin-top: 67px;
	float: right;
	width: 34.2%;
}
.comDeve .txtBox {
	width: 61.1%;
	float: left;
}
.comDeve p {
	color: #fff;
	line-height: 1.81;
	text-align: justify;
	text-justify: inter-ideograph;
}
.comDeve .ttl {
	margin-bottom: 12px;
	color: #000;
	font-size: 2.6rem;
	font-weight: 700;
}

@media all and (max-width: 896px) {
	.comDeve {
		padding: 52px 0 35px;
	}
	.comDeve h2 {
		margin-bottom: 34px;
	}
	.comDeve h2 img {
		width: 296px;
	}
	.comDeve .topTextImg {
		margin: -10px 0 33px;
	}
	.comDeve .topTextImg img {
		width: 296px;
	}
	.comDeve .imgBox {
		padding: 0 23px 45px;
	}
	.comDeve .photo {
		margin: 19px 1px 0;
		float: none;
		width: auto !important;
	}
	.comDeve .photo img {
		width: 100%;
	}
	.comDeve .txtBox {
		float: none;
		width: auto !important;
	}
	.comDeve p {
		line-height: 1.77;
	}
	.comDeve .ttl {
		margin-bottom: 12px;
		font-size: 1.65rem;
		text-align: center;
	}
	
}

/*------------------------------------------------------------
	comLine
------------------------------------------------------------*/
.comLine {
	padding: 166px 0 180px;
	background-color: #000;
}
.comLine h2 {
	text-align: center;
}
.comLine h2 img {
	width: 268px;
}
.comLine .imgUl {
	max-width: 718px;
	margin: -20px auto 63px;
}
.comLine .imgUl li {
	width: 307px;
}
.comLine .imgUl li:last-child {
	margin-right: -40px;
	width: 324px;
}
.comLine .imgUl li p {
	margin-top: 28px;
	color: #fff;
	font-size: 1.5rem;
}
.comLine .txtUl {
	max-width: 744px;
	margin: 0 auto;
	padding: 18px 5px 0;
	border-top: 1px solid #4D4D4D;
	box-sizing: border-box;
}
.comLine .txtUl li {
	color: #fff;
	line-height: 1.66;
	font-size: 1.4rem;
}
.comLine .txtUl li span {
	margin: -1px 2px 0 0;
	font-size: 0.9rem;
	display: inline-block;
	vertical-align: middle;
}

@media all and (max-width: 896px) {
	.comLine {
		padding: 62px 0 105px;
	}
	.comLine h2 img {
		width: 204px;
	}
	.comLine .imgUl {
		max-width: inherit;
		display: inherit;
		margin: -15px auto 61px;
	}
	.comLine .imgUl li {
		text-align: center;
		width: auto !important;
	}
	.comLine .imgUl li img {
		width: 210px;
	}
	.comLine .imgUl li:last-child {
		margin: 50px 0 0;
	}
	.comLine .imgUl li:last-child img {
		width: 220px;
	}
	.comLine .imgUl li p {
		margin-top: 15px;
		font-size: 1.25rem;
	}
	.comLine .txtUl {
		max-width: inherit;
		margin: 0 25px;
		padding: 14px 1px 0;
	}
	.comLine .txtUl li {
		line-height: 1.52;
		font-size: 1.15rem;
	}
	
}

/*------------------------------------------------------------
	inview
------------------------------------------------------------*/
.inview {
    opacity: 0;
    -webkit-transform: translate(0px, 50px);
    transform: translate(0px, 50px);
    -webkit-transition: all 1.5s;
	transition: all 1.5s;
}
.up {
    -webkit-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
    opacity: 1;
}

/*------------------------------------------------------------
	loading
------------------------------------------------------------*/
.loading {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #000;
	z-index: 100;
}
.loading .logoTxt {
	position: absolute;
	top: 50%;
	left: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	-webkit-atransform: translate(-50%,-50%);
	overflow: hidden;
}
.loading .logoTxt.up {
	overflow: visible;
}
.loading .logoTxt img {
	position: relative;
	top: 0;
	width: 176px;
}

/*------------------------------------------------------------
	comScroll
------------------------------------------------------------*/
.comScroll {
	padding-top: 23px;
	text-align: center;
}
.comScroll img {
	width: 37px;
}

@media all and (max-width: 896px) {
	.comScroll {
		display: none;
	}
	
}