/*
	* Bootstrap サイト全体に掛かるカスタムCSS

	@media screen and (max-width: 1199px) {}
	@media screen and (max-width: 991px) {}
	@media print {}
	@media screen and (max-width: 767px) {}
 
	xl-1200(max-1199)
	lg-992(max-991)
	md-768(max-767)
	sm-576(max-575)

	-------------------

	タグ参考
		display: -webkit-flex;
		display: flex;
		flex-direction: row-reverse; 左から並べる
	  flex-direction: column; 上から並べる
	  flex-direction: column-reverse; 下から並べる
		justify-content: center; 中央揃え
		justify-content: space-between; 均等割
		justify-content: space-around; 均等割/
		justify-content: flex-end; 右揃え
		flex-wrap: wrap; 折返し・下へ
		flex-wrap: wrap-reverse; 折返し・上へ
		
		:first-child
		:last-child
		:nth-child(n)
		
		::before{
		content: '';
	
		border-radius: 0px;
		-webkit-border-radius: 0px;
		-moz-border-radius: 0px;
	
		transform: skew(45deg);
		transform: skewX(45deg);
		transform:rotate(45deg);

	-------------------

	基本設定上書き
	コンテナサイズ
	marginセット
	画面幅に応じて改行
	画面幅に応じてブロック要素に
	画面幅に応じてインライン要素に
	画面幅に応じて非表示に
	画像ホバー時に少し拡大
	要素幅の指定
	パンくずリスト
	アンカーポイント移動時の余白調整
	サイドバー
	フッター

*/

/* 基本設定上書き */
	body{background-color: #f8f7f0;}
	html{background-color: #f8f7f0;}

	/* 画像要素レスポンシブ対応に */
	img{max-width: 100%;height: auto;width /***/:auto;line-height: 0;}
	img[src$=".svg"] {width: 100%;}

	/* 画像要素レスポンシブ対応に（object_fit） */
	.cus-object-fit-cover{
		object-fit: cover;
		font-family: 'object-fit: cover;';
	}
	.cus-object-fit-contain{
		object-fit: contain;
		font-family: 'object-fit: contain;';
	}

/* コンテナサイズ */
	.cus-container-1590{
		margin-left: auto;
		margin-right: auto;
		width: 1590px;
	}
	.cus-container{
		margin-left: auto;
		margin-right: auto;
		width: 1200px;
	}
	.cus-container-980{
		margin-left: auto;
		margin-right: auto;
		width: 980px;
	}
	.cus-row{/* rowタグの余白削除 */
		overflow: hidden;
		margin-left: 0px;
		margin-right: 0px;
	}
	@media screen and (max-width: 1590px) {
		.cus-container-1590{width: 96%;}
	}
	@media screen and (max-width: 1199px) {
		.cus-container{width: 96%;}
	}
	@media screen and (max-width: 980px) {
		.cus-container-980{width: 96%;}
	}
	@media print {
		.cus-container-1590{width: 94%;}
		.cus-container{width: 94%;}
		.cus-container-980{width: 94%;}
	}
	@media screen and (max-width: 767px) {
		.cus-container-1590{width: 94%;}
		.cus-container{width: 94%;}
		.cus-container-980{width: 94%;}
	}

/* marginセット */
	.cus-mb-200{margin-bottom: 200px;}
	@media screen and (max-width: 1199px) {.cus-mb-200{margin-bottom: 180px;}}
	@media screen and (max-width: 991px) {.cus-mb-200{margin-bottom: 160px;}}
	@media screen and (max-width: 767px) {.cus-mb-200{margin-bottom: 140px;}}
	@media print {.cus-mb-200{margin-bottom: 100px;}}
	@media screen and (max-width: 575px) {.cus-mb-200{margin-bottom: 100px;}}

	.cus-mb-160{margin-bottom: 160px;}
	@media screen and (max-width: 1199px) {.cus-mb-160{margin-bottom: 150px;}}
	@media screen and (max-width: 991px) {.cus-mb-160{margin-bottom: 130px;}}
	@media screen and (max-width: 767px) {.cus-mb-160{margin-bottom: 100px;}}
	@media print {.cus-mb-160{margin-bottom: 60px;}}
	@media screen and (max-width: 575px) {.cus-mb-160{margin-bottom: 80px;}}

	.cus-mb-120{margin-bottom: 120px;}
	@media screen and (max-width: 1199px) {.cus-mb-120{margin-bottom: 100px;}}
	@media screen and (max-width: 991px) {.cus-mb-120{margin-bottom: 80px;}}
	@media screen and (max-width: 767px) {.cus-mb-120{margin-bottom: 60px;}}
	@media print {.cus-mb-120{margin-bottom: 40px;}}
	@media screen and (max-width: 575px) {.cus-mb-120{margin-bottom: 50px;}}

	.cus-mb-100{margin-bottom: 100px;}
	@media screen and (max-width: 1199px) {.cus-mb-120{margin-bottom: 85px;}}
	@media screen and (max-width: 991px) {.cus-mb-120{margin-bottom: 70px;}}
	@media screen and (max-width: 767px) {.cus-mb-120{margin-bottom: 55px;}}
	@media print {.cus-mb-120{margin-bottom: 35px;}}
	@media screen and (max-width: 575px) {.cus-mb-120{margin-bottom: 45px;}}

	.cus-mb-80{margin-bottom: 80px;}
	@media screen and (max-width: 1199px) {.cus-mb-80{margin-bottom: 70px;}}
	@media screen and (max-width: 991px) {.cus-mb-80{margin-bottom: 60px;}}
	@media screen and (max-width: 767px) {.cus-mb-80{margin-bottom: 50px;}}
	@media print {.cus-mb-80{margin-bottom: 30px;}}
	@media screen and (max-width: 575px) {.cus-mb-80{margin-bottom: 40px;}}

	.cus-mb-50{margin-bottom: 50px;}
	@media screen and (max-width: 1199px) {.cus-mb-50{margin-bottom: 40px;}}
	@media screen and (max-width: 991px) {.cus-mb-50{margin-bottom: 35px;}}
	@media screen and (max-width: 767px) {.cus-mb-50{margin-bottom: 30px;}}
	@media print {.cus-mb-50{margin-bottom: 20px;}}
	@media screen and (max-width: 575px) {.cus-mb-50{margin-bottom: 25px;}}

	.cus-mb-30{margin-bottom: 30px;}
	@media screen and (max-width: 1199px) {.cus-mb-30{margin-bottom: 25px;}}
	@media screen and (max-width: 991px) {.cus-mb-30{margin-bottom: 20px;}}
	@media screen and (max-width: 767px) {.cus-mb-30{margin-bottom: 20px;}}
	@media print {.cus-mb-30{margin-bottom: 20px;}}
	@media screen and (max-width: 575px) {.cus-mb-30{margin-bottom: 20px;}}

/* 画面幅に応じて改行 */
	.cus-br-res{display: none;}
	@media screen and (min-width: 1200px) {
		.cus-br-over{display: block;}
	}
	@media screen and (min-width: 992px) and (max-width: 1199px) {
		.cus-br-xl{display: block;}
	}
	@media screen and (min-width: 768px) and (max-width: 991px) {
		.cus-br-lg{display: block;}
	}
	@media screen and (min-width: 576px) and (max-width: 767px) {
		.cus-br-md{display: block;}
	}
	@media screen and (max-width: 575px) {
		.cus-br-sm{display: block;}
	}

/* 画面幅に応じてブロック要素に */
	@media screen and (min-width: 1200px) {
		.cus-block-over{display: block;}
	}
	@media screen and (min-width: 992px) and (max-width: 1199px) {
		.cus-block-xl{display: block;}
	}
	@media screen and (min-width: 768px) and (max-width: 991px) {
		.cus-block-lg{display: block;}
	}
	@media screen and (min-width: 576px) and (max-width: 767px) {
		.cus-block-md{display: block;}
	}
	@media screen and (max-width: 575px) {
		.cus-block-sm{display: block;}
	}

/* 画面幅に応じてインライン要素に */
	@media screen and (min-width: 1200px) {
		.cus-block-over{display: inline;}
	}
	@media screen and (min-width: 992px) and (max-width: 1199px) {
		.cus-block-xl{display: inline;}
	}
	@media screen and (min-width: 768px) and (max-width: 991px) {
		.cus-block-lg{display: inline;}
	}
	@media screen and (min-width: 576px) and (max-width: 767px) {
		.cus-block-md{display: inline;}
	}
	@media screen and (max-width: 575px) {
		.cus-block-sm{display: inline;}
	}

/* 画面幅に応じて非表示に */
	@media screen and (min-width: 1200px) {
		.cus-none-over{display: none;}
	}
	@media screen and (min-width: 992px) and (max-width: 1199px) {
		.cus-none-xl{display: none;}
	}
	@media screen and (min-width: 768px) and (max-width: 991px) {
		.cus-none-lg{display: none;}
	}
	@media print {
		.cus-none-lg{display: none;}
	}
	@media screen and (min-width: 576px) and (max-width: 767px)  {
		.cus-none-md{display: none;}
	}
	@media screen and (max-width: 575px) {
		.cus-none-sm{display: none;}
	}

/* 画像ホバー時に少し拡大 */
	.cus-img-zoom{
		overflow: hidden;
		width: 100%;
	}
	.cus-img-zoom img{
		transition: 0.5s all;
	}
	.cus-img-zoom img:hover{
		transform: scale(1.2,1.2);
		transition: 0.7s all;
	}

/* 要素幅の指定 */
	.cus-width-5{width: 5%;}
	.cus-width-10{width: 10%;}
	.cus-width-15{width: 15%;}
	.cus-width-20{width: 20%;}
	.cus-width-25{width: 25%;}
	.cus-width-30{width: 30%;}
	.cus-width-35{width: 35%;}
	.cus-width-40{width: 40%;}
	.cus-width-45{width: 45%;}
	.cus-width-50{width: 50%;}
	.cus-width-55{width: 55%;}
	.cus-width-60{width: 60%;}
	.cus-width-65{width: 65%;}
	.cus-width-70{width: 70%;}
	.cus-width-75{width: 75%;}
	.cus-width-80{width: 80%;}
	.cus-width-85{width: 85%;}
	.cus-width-90{width: 90%;}
	.cus-width-95{width: 95%;}
	.cus-width-100{width: 100%;}
	@media screen and (min-width: 992px) and (max-width: 1199px) {
		.cus-width-xl-5{width: 5%;}
		.cus-width-xl-10{width: 10%;}
		.cus-width-xl-15{width: 15%;}
		.cus-width-xl-20{width: 20%;}
		.cus-width-xl-25{width: 25%;}
		.cus-width-xl-30{width: 30%;}
		.cus-width-xl-35{width: 35%;}
		.cus-width-xl-40{width: 40%;}
		.cus-width-xl-45{width: 45%;}
		.cus-width-xl-50{width: 50%;}
		.cus-width-xl-55{width: 55%;}
		.cus-width-xl-60{width: 60%;}
		.cus-width-xl-65{width: 65%;}
		.cus-width-xl-70{width: 70%;}
		.cus-width-xl-75{width: 75%;}
		.cus-width-xl-80{width: 80%;}
		.cus-width-xl-85{width: 85%;}
		.cus-width-xl-90{width: 90%;}
		.cus-width-xl-95{width: 95%;}
		.cus-width-xl-100{width: 100%;}
	}
	@media screen and (min-width: 768px) and (max-width: 991px) {
		.cus-width-lg-5{width: 5%;}
		.cus-width-lg-10{width: 10%;}
		.cus-width-lg-15{width: 15%;}
		.cus-width-lg-20{width: 20%;}
		.cus-width-lg-25{width: 25%;}
		.cus-width-lg-30{width: 30%;}
		.cus-width-lg-35{width: 35%;}
		.cus-width-lg-40{width: 40%;}
		.cus-width-lg-45{width: 45%;}
		.cus-width-lg-50{width: 50%;}
		.cus-width-lg-55{width: 55%;}
		.cus-width-lg-60{width: 60%;}
		.cus-width-lg-65{width: 65%;}
		.cus-width-lg-70{width: 70%;}
		.cus-width-lg-75{width: 75%;}
		.cus-width-lg-80{width: 80%;}
		.cus-width-lg-85{width: 85%;}
		.cus-width-lg-90{width: 90%;}
		.cus-width-lg-95{width: 95%;}
		.cus-width-lg-100{width: 100%;}
	}
	@media screen and (min-width: 576px) and (max-width: 767px)  {
		.cus-width-md-5{width: 5%;}
		.cus-width-md-10{width: 10%;}
		.cus-width-md-15{width: 15%;}
		.cus-width-md-20{width: 20%;}
		.cus-width-md-25{width: 25%;}
		.cus-width-md-30{width: 30%;}
		.cus-width-md-35{width: 35%;}
		.cus-width-md-40{width: 40%;}
		.cus-width-md-45{width: 45%;}
		.cus-width-md-50{width: 50%;}
		.cus-width-md-55{width: 55%;}
		.cus-width-md-60{width: 60%;}
		.cus-width-md-65{width: 65%;}
		.cus-width-md-70{width: 70%;}
		.cus-width-md-75{width: 75%;}
		.cus-width-md-80{width: 80%;}
		.cus-width-md-85{width: 85%;}
		.cus-width-md-90{width: 90%;}
		.cus-width-md-95{width: 95%;}
		.cus-width-md-100{width: 100%;}
	}
	@media screen and (max-width: 575px) {
		.cus-width-sm-5{width: 5%;}
		.cus-width-sm-10{width: 10%;}
		.cus-width-sm-15{width: 15%;}
		.cus-width-sm-20{width: 20%;}
		.cus-width-sm-25{width: 25%;}
		.cus-width-sm-30{width: 30%;}
		.cus-width-sm-35{width: 35%;}
		.cus-width-sm-40{width: 40%;}
		.cus-width-sm-45{width: 45%;}
		.cus-width-sm-50{width: 50%;}
		.cus-width-sm-55{width: 55%;}
		.cus-width-sm-60{width: 60%;}
		.cus-width-sm-65{width: 65%;}
		.cus-width-sm-70{width: 70%;}
		.cus-width-sm-75{width: 75%;}
		.cus-width-sm-80{width: 80%;}
		.cus-width-sm-85{width: 85%;}
		.cus-width-sm-90{width: 90%;}
		.cus-width-sm-95{width: 95%;}
		.cus-width-sm-100{width: 100%;}
	}

/* パンくずリスト */
	@media screen and (max-width: 575px) {
		.cus-breadcrumb{
			display: none !important;
		}
	}

/* アンカーポイント移動時の余白調整 */
	.cus-anker-point{
		position: relative;
		top: -80px;
		display: block;
	}
	@media screen and (max-width: 767px) {
		.cus-anker-point{
			top: -70px;
		}
	}

/* サイドバー */
	#sidebar{
		position: fixed;
		right: 0px;
		bottom: 20%;
		border: #f8f7f0 solid 1px;
		border-right: #f8f7f0 solid 0px;
		z-index: 99;
	}
	#sidebar .recruit{
		display: block;
		border-bottom: #f8f7f0 solid 1px;
		background-color: #a2332f;
		padding: 15px;
		font-size: 20px;
		color: white;
		line-height: 1.4;
		text-align: center;
		text-decoration: none;
	}
	#sidebar .pagetop{
		display: block;
		background-color: #21345c;
		padding: 15px;
		text-align: center;
	}

	#sidebar .recruit .txt{
		display: block;
	}
	@media screen and (max-width: 1589px) {
		#sidebar .recruit{
			padding: 12px;
			font-size: 18px;
		}
		#sidebar .pagetop{
			padding: 12px;
		}
	}
	@media screen and (max-width: 1199px) {
		#sidebar .recruit{
			padding: 10px;
			font-size: 17px;
		}
		#sidebar .pagetop{
			padding: 10px;
		}
	}
	@media screen and (max-width: 991px) {
		#sidebar .recruit{
			font-size: 16px;
		}
	}
	@media print {
		#sidebar{
			display: none;
		}
	}
	@media screen and (max-width: 767px) {
		#sidebar .recruit{
			font-size: 14px;
		}
		#sidebar .pagetop img{
			width: 7px;
		}
	}

/* フッター */
	.cus-footer{
		background-color: #0e1626;
		padding: 100px 0;
	}

	.cus-footer-con01{
		display: -webkit-flex;
		display: flex;
	}
	.cus-footer-con01 .con01-left{
		width: 40%;
	}
	.cus-footer-con01 .con01-right{
		width: 60%;
	}

	.cus-footer-text01{
		display: -webkit-flex;
		display: flex;
		color: white;
	}
	.cus-footer-text01 .text01-left{
		position: relative;
		border-right: white solid 2px;
		padding-right: 30px;
		width: 50%;
	}
	.cus-footer-text01 .text01-right{
		padding-left: 30px;
		width: 50%;
	}

	.cus-footer-text01 .text01-left .left-copy{
		position: absolute;
		bottom: 0px;
		left: 0px;
		margin: 0;
		font-size: 12px;
		color: #afb8cc;
	}

	.cus-footer-text01 .text01-right .right-nav{
		padding: 0;
		margin: 0;
		list-style: none;
	}
	.cus-footer-text01 .text01-right .right-nav li{
		margin-bottom: 20px;
	}
	.cus-footer-text01 .text01-right .right-nav li:last-child{
		margin-bottom: 0px;
	}
	.cus-footer-text01 .text01-right .right-nav li a{
		color: white;
		text-decoration: none;
	}
	.cus-footer-text01 .text01-right .right-nav li a:hover{
		text-decoration: underline;
	}

	.cus-table-footer thead{
		text-align: center;
	}

	.cus-table-footer thead tr th{
		position: relative;
		border-top: white solid 1px !important;
		border-left: white solid 1px !important;
		border-right: white solid 1px !important;
		padding: 10px 0;
	}
	.cus-table-footer thead tr th:first-child::before{
		content: '';
		position: absolute;
		top: 50%;
		left: 40%;
		display: block;
		background-color: white;
		width: 20%;
		height: 1px;
	}
	.cus-table-footer tbody th{
		vertical-align: middle;
	}
	.cus-table-footer tbody td{
		font-size: 30px;
		font-weight: 700;
		text-align: center;
		vertical-align: middle;
	}
	
	.cus-footer-copy{
		display: none;
		margin-top: 15px;
		font-size: 12px;
		color: #afb8cc;
		text-align: center;
	}
	@media screen and (max-width: 1589px) {
		.cus-footer{
			padding: 90px 0;
		}

		.cus-footer-con01 .con01-left{
			width: 42%;
		}
		.cus-footer-con01 .con01-right{
			width: 58%;
		}

		.cus-footer-text01 .text01-left{
			padding-right: 24px;
			width: 48%;
		}
		.cus-footer-text01 .text01-right{
			padding-left: 24px;
			width: 52%;
		}

		.cus-table-footer tbody td{
			font-size: 26px;
		}
	}
	@media screen and (max-width: 1199px) {
		.cus-footer{
			padding: 80px 0;
		}

		.cus-footer-con01 .con01-left{
			width: 50%;
		}
		.cus-footer-con01 .con01-right{
			width: 50%;
		}

		.cus-footer-text01 .text01-left{
			padding-right: 20px;
			width: 50%;
		}
		.cus-footer-text01 .text01-right{
			padding-left: 20px;
			width: 50%;
		}

		.cus-table-footer tbody td{
			font-size: 20px;
		}
	}
	@media screen and (max-width: 991px) {
		.cus-footer{
			padding: 70px 0;
		}
	
		.cus-footer-con01{
			display: -webkit-flex;
			display: flex;
		}
		.cus-footer-con01 .con01-left{
			width: 34%;
		}
		.cus-footer-con01 .con01-right{
			width: 66%;
		}
	
		.cus-footer-text01{
			display: block;
		}
		.cus-footer-text01 .text01-left{
			border-right: white solid 0px;
			padding-right: 0px;
			margin-bottom: 20px;
			width: auto;
		}
		.cus-footer-text01 .text01-right{
			padding-left: 0px;
			width: auto;
		}
	
		.cus-footer-text01 .text01-left .left-copy{
			display: none;
		}
	
		.cus-footer-text01 .text01-right .right-nav{
			padding: 0;
			margin: 0;
			list-style: none;
		}
		.cus-footer-text01 .text01-right .right-nav li{
			position: relative;
			padding-left: 15px;
			margin-bottom: 5px;
		}
		.cus-footer-text01 .text01-right .right-nav li::before{
			content: '';
			position: absolute;
			top: 51%;
			left: 0px;
			display: block;
			background-color: white;
			width: 8px;
			height: 1px;
		}

		.cus-table-footer tbody td{
			font-size:	18px;
		}

		.cus-footer-copy{
			display: block;
		}
	}
	@media print {
		.cus-footer{
			padding: 50px 0;
		}
	
		.cus-footer-con01{
			display: -webkit-flex;
			display: flex;
		}
		.cus-footer-con01 .con01-left{
			width: 34%;
		}
		.cus-footer-con01 .con01-right{
			width: 66%;
		}
	
		.cus-footer-text01{
			display: block;
		}
		.cus-footer-text01 .text01-left{
			border-right: white solid 0px;
			padding-right: 0px;
			margin-bottom: 20px;
			width: auto;
		}
		.cus-footer-text01 .text01-right{
			padding-left: 0px;
			width: auto;
		}
	
		.cus-footer-text01 .text01-left .left-copy{
			display: none;
		}
	
		.cus-footer-text01 .text01-right .right-nav{
			padding: 0;
			margin: 0;
			list-style: none;
		}
		.cus-footer-text01 .text01-right .right-nav li{
			position: relative;
			padding-left: 15px;
			margin-bottom: 5px;
		}
		.cus-footer-text01 .text01-right .right-nav li::before{
			content: '';
			position: absolute;
			top: 51%;
			left: 0px;
			display: block;
			background-color: white;
			width: 8px;
			height: 1px;
		}

		.cus-table-footer tbody td{
			font-size:	16px;
		}

		.cus-footer-copy{
			display: block;
		}
	}
	@media screen and (max-width: 767px) {
		.cus-footer{
			padding: 50px 0;
		}
	
		.cus-footer-con01{
			display: block;
		}
		.cus-footer-con01 .con01-left{
			margin-bottom: 20px;
			width: auto;
		}
		.cus-footer-con01 .con01-right{
			width: auto;
		}
	
		.cus-footer-text01{
			display: block;
		}
		.cus-footer-text01 .text01-left{
			border-right: white solid 0px;
			padding-right: 0px;
			width: auto;
		}
		.cus-footer-text01 .text01-right{
			padding-left: 0px;
			width: auto;
		}
	
		.cus-footer-text01 .text01-left .left-copy{
			display: none;
		}
	
		.cus-footer-text01 .text01-right .right-nav{
			overflow: hidden;
			border-top: white solid 1px;
		}
		.cus-footer-text01 .text01-right .right-nav li{
			float: left;
			padding: 0;
			margin: 0px;
			width: 50%;
		}
		.cus-footer-text01 .text01-right .right-nav li:first-child{
			width: 100%;
		}
		.cus-footer-text01 .text01-right .right-nav li:last-child{
			width: 100%;
		}
		.cus-footer-text01 .text01-right .right-nav li::before{
			display: none;
		}
		.cus-footer-text01 .text01-right .right-nav li a{
			display: block;
			border-bottom: white solid 1px;
			padding: 8px 0;
			text-align: center;
		}
		.cus-footer-text01 .text01-right .right-nav li:nth-child(2n) a{
			border-right: white solid 1px;
		}
		.cus-footer-text01 .text01-right .right-nav li:last-child a{
			border-right: white solid 0px;
		}
	
		.cus-table-footer thead{
			text-align: center;
		}
		.cus-table-footer tbody td{
			font-size: 20px;
		}
		
		.cus-footer-copy{
			display: block;
		}
	}











