@charset "utf-8";

* {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

html, body,.body_wrap,main_wrap {
	min-width: 100%;
	min-height: 100%;
}

body {
	color: #666;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5em;
}

.body_wrap {
	min-height:100%;
	margin-bottom:-50px;
	
	overflow:hidden;
}

/* header 固定 */
header {
	background:rgba(255,255,255,0.9);
}
.main_wrap {
	margin-top:65px;
}

/* リンク */
a {
	text-decoration:none;
}

a:hover, a:focus {
	text-decoration: none;
}

a.fax-none {
	pointer-events: none;
	color: #666666;
}

.sec_footer a{
	color: #fff;
}

@media (min-width: 751px) {
	a[href^="tel:"] {
		pointer-events: none;
		cursor: default;
		color: #666666;
	}
	.sec_footer a{
		color: #fff;
	}
}

/* オーバーフロー */
.overflow {
	overflow:hidden;
}

/*テキストの上下左右のpadding用box */
.text-box01 {
	padding:1.5em 10px;
	overflow:hidden;
}

/*リスト*/
.indent {
	padding-left:1.5em;
}

.non-list {
	list-style:none;
	/* padding-left:1em; */
	padding: 0 2em;
}


/*装飾*/
hr {
	border-top: 1px solid #ccc;
}

.dotted {
	border:0;
	border-top:1px dotted #ccc;
}

dt,dd {
	display:inline-block;
	vertical-align:top;
}

/* footerの上げた分を下げるためのpadding */
.main_wrap {
	padding-bottom:50px;
}

.indent {
	padding-left:1.5em;
}

.headerBanner {
	height:400px;
}

.secondBanner {
	height:600px;
}

/* thanksページ用 footer下部固定設定 */
.main_wrap-thanks {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

.main_wrap-thanks .sec_footer {
	margin-top: auto;
}

/*====================================
TOPバナー
====================================*/
/*事業案内*/
.top_bana01 {
	background: url(../img/bana01.jpg?20250116) no-repeat top center;
	height: 400px;
	margin: 0 auto;
	padding: 0;
	position: absolute;
	width: 100%;
	z-index: 100;
}

/*会社概要*/
.top_bana02 {
	background: url(../img/bana02.jpg?20250116) no-repeat top center;
	height: 400px;
	margin: 0 auto;
	padding: 0;
	position: absolute;
	width: 100%;
	z-index: 100;
}

/*求人案内*/
.top_bana04 {
	background: url(../img/bana04.jpg?20250116) no-repeat top center;
	height: 400px;
	margin: 0 auto;
	padding: 0;
	position: absolute;
	width: 100%;
	z-index: 100;
}

/*お問合せ*/
.top_bana05 {
	background: url(../img/bana05.jpg?20250116) no-repeat top center;
	height: 400px;
	margin: 0 auto;
	padding: 0;
	position: absolute;
	width: 100%;
	z-index: 100;
}

/*会社概要差し込み*/
.second_bana01 {
	position: absolute;
	background: url(../img/bana06.jpg?20250116) no-repeat top center;
	height: 600px;
	margin: 0 auto;
	padding: 0;
	width: 100%;
	z-index: 100;
}

/*====================================
bootstrap デザインのリセット
====================================*/
/*nav*/
.navbar {
	margin-bottom:0;
	font-size:14px;
}
.navbar-default {
	background-color:rgba(0,0,0,0);
	border-color:rgba(0,0,0,0);
	border-radius: 0;
}

.h1, .h2, .h3, h1, h2, h3 {
	margin-top:0;
	margin-bottom:0;
}

.jumbotron {
	background-color:rgba(0,0,0,0);
	border-radius:0;
}
p {
	margin:0;
}

a>i.fa-map-marker-alt {
	color:red;
	padding-right:.5em;
}

/*====================================
INFORMATION
====================================*/
.scroll-box {
	overflow: auto;
	height: 300px;
	margin-top: 30px;
}

.scroll-box::-webkit-scrollbar {
	all:unset;
	width: 12px;
	background: transparent;
}

.scroll-box::-webkit-scrollbar-track {
	all:unset;
	-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.2);
	border-radius: 8px;
	background: transparent;
}

.scroll-box::-webkit-scrollbar-thumb {
	all:unset;
	-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
	border-radius: 8px;
	background: transparent;
}

.scroll-box::-webkit-scrollbar-thumb:hover {
	-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.5);
	background: transparent;
}

/*====================================
文字の色
====================================*/
/* メインカラー */
.text01 {
	color:#2174af;
}

/* セカンドカラー */
.text02 {
	color:#2f95de;
}

/* さし色 */
.text03 {
	color:#505066;
}
/*====================================
背景の色
====================================*/
.bg00 {
	background:#fff;
}

.bg01 {
	background:#6194bd;
	color:#fff;
}

.bg02 {
	background:#fafafa;
}

.bg03 {
	background:#eee;
}

.bg04 {
	background:#88bfbf;
}

.bg05 {
	background:#6194bd;
	color:#fff;
}


/*====================================
見出しのスタイル
====================================*/
h1 {
	font-size:24px;
	font-weight:900;
}

h2 {
	font-size:20px;
}

h3 {
	font-size:18px;
}

/*キャッチコピー*/
h1.description {
	color:#fff;
	font-size:10px;
	text-align:center;
	line-height:13px;
}

.arrow_line {
	position: relative;
	bottom: 20px;
	left: 50%;
	z-index: 2;
	display: inline-block;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	text-decoration: none;
}

.arrow_line span {
	position: absolute;
	top: 0;
	left: 50%;
	width: 18px;
	height: 18px;
	margin-left: -12px;
	border-left: 2px solid #12a5de;
	border-bottom: 2px solid #2e76c2;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	box-sizing: border-box;
}

.h13 {
	font-family: "Julius Sans One", 游ゴシック体, "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	margin-bottom: 10px;
	color: rgb(102, 102, 102);
	font-size: 28px;
	text-align: center;
	font-weight: 300;
}

.h14{
	color: #505050;/*文字色*/
	padding: 0.5em;/*文字周りの余白*/
	display: inline-block;/*おまじない*/
	line-height: 1.3;/*行高*/
	background: #dbebf8;/*背景色*/
	vertical-align: middle;/*上下中央*/
	border-radius: 25px 0px 0px 25px;/*左側の角を丸く*/
	width:100%;
}


/*====================================
罫線
====================================*/
hr.dotted {
	border:0;
	border-top:1px dotted #ccc;
}
/*====================================
リスト
====================================*/
/* マーク無し*/
.non_mark {
	list-style:none;
}

.indent {
	margin-left:1.5em;
}

.list01 {
	line-height:1.5em;
}

ul.listBorder li {
	border-bottom:1px dotted #ccc;
}
/*====================================
スライダー1
====================================*/

.TopBanner, .swiper-container, .swiper-wrapper, .swiper-slide {
	min-width: 100vw;
	min-height: 100vh;
	margin-top:-65px;
	padding-top:65px;
}

.swiper-slide {
	position:relative;
}

.slider_box {
	position:absolute;
	bottom:50px;
	right:50px;
	display:block;
	padding:10px;
	border-radius: 4px;
	color:#fff;
	text-shadow: 
        #666 1px 1px 0, black -1px -1px 0,/*右下、左上*/
        #666 -1px 1px 0, black 1px -1px 0,/*右上、左下*/
        #666 0px 1px 0, black  0-1px 0,/*右、左*/
        #666 -1px 0 0, black 1px 0 0;/*上、下*/
}

.slider_box h1 {
	font-size:30px;
	text-align:right;
}

.top01 {
	background: url(../img/slider01.jpg?20250116) no-repeat center;
	background-size: cover;
}

.top02 {
	background: url(../img/slider02.jpg?20250116) no-repeat center;
	background-size: cover;
}

.top03 {
	background: url(../img/slider03.jpg?20250116) no-repeat center;
	background-size: cover;
}

/*====================================
section
====================================*/
.content_wrap {
	padding-top:20px;
	padding-bottom:20px;
}

.content h1 {
	margin-bottom:10px;
}

.content p {
	padding:10px 5px;
}

.content01 .row {
	padding-bottom:30px;
}

.bg_message {
	background:url(../img/message.jpg?20250116) right no-repeat;
	background-size: auto, cover;
	height:500px;
	margin-top:50px;
}

.msg_wrap {
	position:relative;
}

.msg_bg {
	/* margin-top:150px; */
	/* background:#6194bd; */
	background: #6194bd;
	color:#fff;
	padding-top:20px;
	padding-bottom:35px;
}

.msg_bg p {
	padding:10px;
	padding-left:30%;
}

.msg_bg h2 {
	font-size:28px;
	letter-spacing:.2em;
	text-align:left;
	padding-top:30px;
	padding-left:25%;
}

.msg_bg h2.name {
	text-align:right;
}

.msg_bg h2 > small {
	color:#fff;
	padding-right:1em;
}

.map_wrap {
	margin-top:50px;
	margin-bottom:-30px;
}

hr.ceo_line {
	position:absolute;
	width:100%;
	left:0;
	margin-top:0;
	border-top: 5px solid #fff;
	z-index:50;
}

.btn_detail a:hover {
	opacity: .7;
}

.btn_detail a label{
	cursor: pointer;
}

/*リクルート*/
.borderBox {
padding: 5px;
    border: 1px solid #ccc;
    background: #fff;
    border-radius: 2px;
    box-shadow: 0 0 3px #eee;
    margin-bottom: 10px;
 	line-height:1.5em;
}

.borderLine03 {
		padding-top: 5px;
    font-weight: bold;
    border-bottom: 1px solid #ccc;
    background-color: #fff;
    margin-bottom: 5px;
    overflow: hidden;
}

.borderLine03 span {
	padding-left: 5px;
}
.borderLine03 span small {
	color: #1c1c1c;
}
h3.des {
    color: #2e76c2;
    font-size: 16px;
    padding-top: 10px;
    padding-bottom: 10px;
    line-height: 1.5em;
}

span.label {
    margin: 5px;
}

.job_list {
    padding-top: 1em;
}

.job_list .indent {
	margin-left: 0;
}


/*====================================
table
====================================*/
table {
	width: 100%;
	margin-top: 30px;
	border-collapse: collapse;
}

th {
	width: 230px;
	padding: 10px;
	border-bottom: #fff 1px solid;
	font-weight: normal;
	text-align: left;
	vertical-align:top;
	background:#eee;
}

td {
	padding: 10px;
	border-top: #eee 1px solid;
	border-bottom: #eee 1px solid;
	text-align: left;
	vertical-align:top;
}

tr:hover {
	color: #333;
}

td.valign {
	vertical-align:bottom;
}

table.history th {
	vertical-align:top;
	width: 100px;
	padding: 10px;
	border-top: #eee 1px solid;
	border-bottom: #eee 1px solid;
	font-weight: normal;
	text-align: left;
	vertical-align:top;
	background:#fff;
	font-weight:bold;
}

table.history td ol {
	list-style:none;
}


dl.normal_dl>dt {
    display: block;
    color: #337ab7;
    font-weight: 900;
}

dl.normal_dl> dd {
    margin-left: 2em;
}
/*====================================
form
====================================*/
form {
	margin-bottom: 30px;
}

.formTable th {
	text-align:right;
	padding-right:1em;
	background:#eee;
	border-bottom:none;
	padding:3px 5px;
}

.formTable td {
	padding:3px 10px;
}

input {
	margin:3px;
	padding:3px 10px;
	width:99%;
	box-sizing: border-box;
	border:0;
	color:#aaa;
	border:solid 1px #ccc;
	margin:0 0 20px;
}

textarea {
	width:100%;
}

.submit-btn {
	width:150px;
	background:#12a5de;
	color:#fff;
	margin:10px auto;
	transition: ease .3s;
}

.submit-btn:hover {
	background: #fff;
    color: #12a5de;
    border: 1px solid #12a5de;
}

input , textarea {
	border:#ccc;
	border-radius:4px;
	margin:3px;
	padding:3px 10px;
	width:99%;
	box-sizing: border-box;
	border:0;
	color:#666;
	border:solid 1px #ccc;
	margin:0 0 20px;
}

form table {
	background:#eee;
	border-radius:4px;
	font-size:14px;
	padding-top:15px;
	margin-top: 20px;
}

::-webkit-input-placeholder {
	color: #ccc;
}
::-moz-placeholder {
	color: #ccc; opacity: 1;
}
:-ms-input-placeholder {
	color: #ccc;
}

.table-container {
	background: #eee;
	padding-top: 1px;
}

/*====================================
footer
====================================*/
.sec_footer {
	position:relative;
	width:100%;
	background:#6194bd;
	margin-top:65px;
}


.footer_image {
	position:absolute;
	width:100%;
	height:400px;
	top:-100px;
	left:0;
	right:0;
	bottom:0;
	background:url(../img/footer.png) right no-repeat;
	background-size:100% auto;
}

.sec_footer p {
	line-height:1.5em;
	font-weight:normal;
	font-size:14px;
	color:#fff;
	text-shadow:
	  #6194bd 2px 0px,  #6194bd -2px 0px,
    #6194bd 0px -2px, #6194bd 0px 2px,
    #6194bd 2px 2px , #6194bd -2px 2px,
    #6194bd 2px -2px, #6194bd -2px -2px,
    #6194bd 1px 2px,  #6194bd -1px 2px,
    #6194bd 1px -2px, #6194bd -1px -2px,
    #6194bd 2px 1px,  #6194bd -2px 1px,
    #6194bd 2px -1px, #6194bd -2px -1px;
}


.copy {
	text-align:center;
	font-size:small;
	height:50px;
	margin-top:-50px;
	overflow:hidden;
}

.copy p {
	line-height:50px;
}

p.markbox img {
	padding:12px;
	width:68px;
}

/*====================================
INFORMATION info.php用
====================================*/
/*information管理画面*/
.login {
	background-color: #eee;
	text-align:center;
	height:100%;
}

.login_title {
	letter-spacing:.7em;
	border-bottom:1px solid #ccc;
	margin-top:30px;
}

.login_box {
	background:#fff;
	width:350px;
	margin:50px auto;
	padding:20px;
	text-align:left;
	border-radius:4px;
	-moz-box-shadow: 5px 5px 5px rgba(0,0,0,0.4);
	-webkit-box-shadow: 5px 5px 5px rgba(0,0,0,0.4);
	-o-box-shadow: 5px 5px 5px rgba(0,0,0,0.4);
	-ms-box-shadow: 5px 5px 5px rgba(0,0,0,0.4);
}
.login_box form {
	margin:20px;
}

#info p {
	padding:10px 5px;
}

.info_admin_title {
	font-size:20px;
	font-weight:bold;
	border-left:5px solid #4169e1;
	background:#dedede;
	margin-bottom:30px;
	color:#333;
	text-shadow:none;
	padding:10px;
	padding-left:.5em;
}


#info input[type=text] {
	width: 80%;
	box-sizing: border-box;
}

input.smt_btn {
	width:150px;
	color:#333;
}

.thanks_wrap {
	margin:100px auto 20px;
	padding:20px;
	border-radius:4px;
	background:#f5f5f5;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	text-align:center;
}

.thanks_wrap h1 {
	margin-bottom:50px;
}

span.red {
	padding-left:5px;
	color:red;
}

/*====================================
media Query（ここは共通）
====================================*/
@media (max-width: 1024px) {
	.top01 {
		background: url(../img/slider01-sm.jpg?20250116) no-repeat center;
	  	background-size: cover;
	}

	.top02 {
		background: url(../img/slider02-sm.jpg?20250116) no-repeat center;
		background-size: cover;
	}

	.top03 {
		background: url(../img/slider03-sm.jpg?20250116) no-repeat center;
		background-size: cover;
	}

	.top_bana01 {
		background: url(../img/bana01-sm.jpg?20250116) no-repeat top center;
		height: 400px;
		margin: 0 auto;
		padding: 0;
		position: absolute;
		width: 100%;
		z-index: 100;
	}

	.top_bana02 {
		background: url(../img/bana02-sm.jpg?20250116) no-repeat top center;
		height: 400px;
		margin: 0 auto;
		padding: 0;
		position: absolute;
		width: 100%;
		z-index: 100;
	}

	.top_bana03 {
		background: url(../img/bana03-sm.jpg?20250116) no-repeat top center;
		height: 400px;
		margin: 0 auto;
		padding: 0;
		position: absolute;
		width: 100%;
		z-index: 100;
	}

	.top_bana04 {
		background: url(../img/bana04-sm.jpg?20250116) no-repeat top center;
		height: 400px;
		margin: 0 auto;
		padding: 0;
		position: absolute;
		width: 100%;
		z-index: 100;
	}

	.top_bana05 {
		background: url(../img/bana05-sm.jpg?20250116) no-repeat top center;
		height: 400px;
		margin: 0 auto;
		padding: 0;
		position: absolute;
		width: 100%;
		z-index: 100;
	}

	.top_bana06 {
		background: url(../img/bana06-sm.jpg?20250116) no-repeat top center;
		height: 400px;
		margin: 0 auto;
		padding: 0;
		position: absolute;
		width: 100%;
		z-index: 100;
	}

	.top_bana07 {
		background: url(../img/bana07-sm.jpg?20250116) no-repeat top center;
		height: 400px;
		margin: 0 auto;
		padding: 0;
		position: absolute;
		width: 100%;
		z-index: 100;
	}
}

/* bootstrap Ipadでハンバーガー表示 */
@media (max-width: 991px) {
    .navbar-header {
        float: none;
    }
    .navbar-toggle {
        display: block;
    }
    .navbar-collapse {
        border-top: 1px solid transparent;
        box-shadow: inset 0 1px 0 rgba(255,255,255,0.1);
    }
    .navbar-collapse.collapse {
        display: none!important;
    }
    .navbar-nav {
        float: none!important;
        margin: 7.5px -15px;
    }
    .navbar-nav>li {
        float: none;
    }
    .navbar-nav>li>a {
        padding-top: 10px;
        padding-bottom: 10px;
    }
    .navbar-text {
        float: none;
        margin: 15px 0;
    }
    .navbar-collapse.collapse.in {
        display: block!important;
    }
    .collapsing {
        overflow: hidden!important;
    }
}

@media (max-width: 768px) {
	.msg_bg {
		margin-top:50px;
	}

	.bg_ceo {
		position: absolute;
		height: auto;
		width: 100%;
		margin-top: -50px;
		border-bottom: 3px solid #fff;
		top: 0;
		left: 0;
		text-align:right;
		padding: 0;
	}

	.bg_ceo img {
		width:200px;
	}

	.msg_bg h2 {
		padding-left:15px;
	}

	.msg_bg p {
		padding-left:15px;
	}

	.msg_box {
		margin-top:150px;
	}

	.slider_box h1 {
		font-size:25px;
	}

	.non-list {
		padding: 0;
	}
}

@media (max-width: 414px) {
	h1.logo {
		line-height:50px;
	}

	h1.logo img {
		max-width:200px;
	}

	.slider_box {
		position: absolute;
		bottom: 30px;
		right: 0;
		left:0;
	}

	.slider_box h1 {
		/* font-size:18px; */
		text-align:center;
	}

	.msg_bg h2 {
		font-size: 26px;
	}

	th,td {
		width:100%;
		display: block;
	}

	table.history th.year {
		display:inline-block;
		width:35%;
		background:#f5f5f5;
	}

	table.history th.month {
		display:inline-block;
		width:65%;
		background:#f5f5f5;
	}

	.formTable th {
		text-align:left;
	}
}

@media (max-width: 350px) {
	h1.logo {
		line-height:50px;
	}
	h1.logo img {
		max-width:200px;
	}
	.msg_bg h2 {
		font-size: 22px;
	}
}

@media (min-width: 413px) {
	.slider_box br {
		display:none;
	}
}

@media (min-width: 769px){
	.bg_ceo {
		position: absolute;
		text-align: right;
		bottom: 0;
		right: 0;
		padding-right: 0;
	}

	.bg_ceo img {
		width: 350px;
	}

	.msg_bg h2 {
		padding-left: 5%;
	}

	.msg_bg p {
		padding: 10px;
		padding-left: 10px;
		width:70%;
	}
}

@media (min-width: 900px) {
	.bg_ceo img {
		width: 400px;
	}
}

@media (min-width: 991px){
	.msg_bg h2 {
		padding-left: 15%;
	}

	.msg_bg p {
		padding-left: 20%;
		width:auto;
	}
}

@media (min-width: 1400px) {
	.container_business, .container_company, .container_recruit, .pager {
		margin-bottom: 100px;
	}
}

div#contents-maker-news {
	margin-top: 20px;
    text-align: left;
    padding: 0 2em;
}

div#contents-maker-news div.cm-box {
	border-bottom: 1px dotted #333333;
	margin-bottom: 8px;
}

div#contents-maker-news dl {
	margin-bottom: 0;
}

div#contents-maker-news dl dt {
	font-weight: bold;
	margin: 0 0 3px;
}

.recruit_movie {
	max-width: 600px;
	margin: 0 auto 60px;
	text-align: center;
}