@charset "utf-8";
/*__ common parts __*/
.br_sp{display: block;}
.br_pc{display: inline;}
.hide_sp{display: none;}
.hide_pc{display: inline;}
.head_wrap{
	border-bottom:8px solid #23496f;
}
div.err{
	color:red;
	line-height: 2;
}
#header{
	width:900px;
	margin:0 auto;
}
#header h2{
	color:#22496e;
	font-size:1rem;
}
#header #top_header{
	display:flex ;
	justify-content: space-between;
	align-items: center;
}
#header #top_header h1{
	width:209px;
	height:48px;
}
#header #top_header h1 a{
	display: block;
	width:209px;
	height:48px;
	text-indent:100%;
	white-space: nowrap;
	overflow: hidden;
	background-image:url("../img/logo.gif");
	background-repeat: no-repeat;
	background-position: 0 0;
}

#header #top_header #address_block{
}
#header #top_header #address_block ul{
	display: flex;
	justify-content: flex-end;
	list-style-type: none;
}
#header #top_header #address_block ul li{
	margin-left:1rem;
}
#header #top_header #address_block ul li a{
	font-size:1.1rem;
}
#header #top_header #address_block p {
	text-align: right;
}
.cont01 .container .address p a,
#header #top_header #address_block p a{
	text-decoration: none;
	color:#22496e;
	font-size:4rem;
	font-weight: bold;
	letter-spacing: 1px;
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}


#main_visual{
	width:1000px;
	height:554px;
	margin:0 auto;
	background-image:url("../img/main_visual.jpg");
	background-repeat: no-repeat;
	background-position: center center;
}

#navi_block{
	border-top:8px solid #23496f;
	border-bottom:8px solid #23496f;
	background: #cacaca; 
	background: -moz-linear-gradient(top,  #cacaca 0%, #ffffff 100%); 
	background: -webkit-linear-gradient(top,  #cacaca 0%,#ffffff 100%); 
	background: linear-gradient(to bottom,  #cacaca 0%,#ffffff 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cacaca', endColorstr='#ffffff',GradientType=0 );
}
#navi_block ul{
	display: flex;
	justify-content: space-between;
	list-style-type: none;
	width:800px;
	margin:0 auto;
	border-left:2px solid #fff;
	box-sizing:border-box;
}
#navi_block ul li{
	width:20%;
	box-sizing:border-box;
	border-right:2px solid #fff;
}
#navi_block ul li a{
	display:block;
	width:100%;
	height:67px;
	text-align: center;
	text-decoration: none;
	color:#22496e;
	font-size:1.3rem;
}
#navi_block ul li a span{
	color:#fff;
	display: block;
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	padding-top:15px;
	letter-spacing: 2px;
	text-indent: 2px;
	text-shadow: 0 0 5px rgba(0,0,0,0.8);
}


.footer_banner .container{
	padding-top: 0;
	margin-bottom:50px;
}

#footer{
	background-color: #eeefef;
}
#footer div.footer_flex{
	width:800px;
	margin:0 auto;
	padding-top:60px;
	display: flex;
	justify-content: space-between;t
}
#footer div.footer_flex div.address{
	color:#231815;
	padding-left:40px;
}
#footer div.footer_flex div.address span{
	font-size:1.4rem;
}
#footer div.footer_flex div.address h2{
	margin:0;
	padding: 0;
	font-size:2.3rem;
	margin-bottom:20px;
}
#footer div.footer_flex div.address p{
	font-size:1.4rem;
	margin-bottom:30px;
}
#footer div.footer_flex div.address p a{
	text-decoration: none;
}
#footer div.footer_flex div.sitemap ul {
	list-style-type: none;
	margin-top:30px;
}
#footer div.footer_flex div.sitemap ul li{
	margin-bottom:5px;
}
#footer div.footer_flex div.sitemap ul li a{
	font-size:1.6rem;
}


div.catalog{
	width:640px;
	margin:0 auto;
	display: flex;
}
div.catalog div{
	width:244px;
}
div.catalog ul{
	list-style-type: none;
	margin-left:25px;
}
div.catalog ul li.adobe{
	margin-bottom:15px;
}

div.copyright{
	width:640px;
	margin:50px auto 0;
	padding-bottom:20px;
	text-align: center;
	color:#22496e;
	font-size:1.5rem;
	font-weight: bold;
	letter-spacing: 4px;
	text-indent: 4px;
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}


/* __index__ */
.container{
	width:800px;
	margin:0 auto;
	padding-top:50px;
}
.index01 h3{
	margin-top:50px;
	padding:20px 0;
	width:100%;
	text-align: center;
	background-color:#23496f;
}
.flexbox{
	display: flex;
	justify-content: space-between;
	list-style-type: none;
}
.index01 .container .left_block{
	width:292px;
}
.index01 .container .right_block{
	width:465px;
}
.index01 .container .right_block h5{
	color:#22496e;
	font-size:1.6rem;
	margin-top:20px;
	margin-bottom:30px;
}
.index01 .container .right_block p{
	font-size:1.2rem;
	line-height: 1.8;
}

.index02{
	width:100%;
	background-color: #efefef;
}
.index02 .container,
.guide01 .container{
	width:700px;
	margin:70px auto 50px;
	padding-bottom:20px;
}
.index02 .container ul.flexbox,
.guide01 .container ul.flexbox{
	flex-wrap: wrap;
	justify-content: space-between;
	display: flex;
}
.index02 .container ul.flexbox li,
.guide01 .container ul.flexbox li{
	width:185px;
	text-align: center;
	margin-bottom:40px
}
.index02 .container ul.flexbox li h5,
.guide01 .container ul.flexbox li h5{
	color:#22496e;
	font-weight:bold;
	font-size:2.2rem;
	margin-top:15px;
}
.index02 .container ul.flexbox li p,
.guide01 .container ul.flexbox li p{
	margin-top:10px;
	font-size:1.5rem;
	text-align: left;
}


/* __ 下層ページ汎用 __*/
h2.title{
	width:100%;
	height:60px;
	margin-top:63px;
/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#22496e+0,d0d0d1+100&1+41,0+100 */
background: -moz-linear-gradient(top,  rgba(34,73,110,1) 0%, rgba(105,128,151,1) 41%, rgba(208,208,209,0) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  rgba(34,73,110,1) 0%,rgba(105,128,151,1) 41%,rgba(208,208,209,0) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  rgba(34,73,110,1) 0%,rgba(105,128,151,1) 41%,rgba(208,208,209,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#22496e', endColorstr='#00d0d0d1',GradientType=0 ); /* IE6-9 */

}
h2.title p{
	width:220px;
	height:60px;
	background-image:url("../img/h2_title.png");
	background-position: left center;
	background-repeat: no-repeat;
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size:2rem;
	color:#fff;
	margin:0 auto;
	display: flex;
	align-items: center;
	text-indent: 70px;
	letter-spacing: 2px;
}
h4.title{
	font-size:1.7rem;
	color:#fff;
	text-indent: 27px;
	line-height: 2.7;
	letter-spacing: 3px;
	background: -moz-linear-gradient(left,  rgba(159,160,160,1) 0%, rgba(255,255,255,0) 100%);
	background: -webkit-linear-gradient(left,  rgba(159,160,160,1) 0%,rgba(255,255,255,0) 100%); 
	background: linear-gradient(to right,  rgba(159,160,160,1) 0%,rgba(255,255,255,0) 100%); 
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#9fa0a0', endColorstr='#00ffffff',GradientType=1 ); 
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	margin-bottom:45px;
}

/* __ guide __ */
.guide01{
	background-color:#eeefef;
}
.guide01 .container{
	margin:45px auto 50px;
}
.index02 .container ul.flexbox li h5 a,
.guide01 .container ul.flexbox li h5 a{
	text-decoration: none;
	color:#22496e;
}
.guide h3{
	width:100%;
	height:145px;
	margin-top:60px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	display: flex;
	align-items: center;
}
.guide h3#OA{
	background-image: url("../img/guide_img01.jpg");
}
.guide h3#BP{
	background-image: url("../img/guide_img02.jpg");
}
.guide h3#PC{
	background-image: url("../img/guide_img03.jpg");
}
.guide h3#NW{
	background-image: url("../img/guide_img04.jpg");
}
.guide h3#OI{
	background-image: url("../img/guide_img05.jpg");
}
.guide h3 p{
	width:100%;
	background-color:rgba(255,255,255,0.8);
	font-size:2.2rem;
	color:#22496e;
	font-weight: bold;
	text-align: center;
	padding:7px 0;
	letter-spacing: 2px;
	text-indent: 2px;
}
.guide .container{
	width:780px;
	margin:0 auto;
}
.guide .container h4,
.common .container h4{
	font-size:1.6rem;
	height: 30px;
	color:#22496e;
	background-image:url("../img/h4_index.png");
	background-repeat: no-repeat;
	background-position: left center;
	text-indent: 40px;
	line-height: 1.8;
	letter-spacing: 1px;
}
.guide .container ul{
	list-style-type: none;
}
.guide .container ul li:nth-child(even){
	width:200px;
	margin-left: 60px;
}
.guide .container ul li img{
	text-align: right;
}
.guide .container p{
	font-size:1.4rem;
	padding-left: 41px;
    margin-top: 15px;
    margin-bottom: 30px;
}
.guide .container p.wide{
	padding-left: 0;
	margin-top:0;
}

.guide .container ul li.right {
	width:180px;
}
.guide .container ul li.right img{
	margin-left:0px;
}
.guide .container ul li h5{
font-size: 1.6rem;
    color: #22496e;
    border-bottom: 1px solid #22496e;
    margin-left: 45px;
    text-indent: 18px;
    padding-bottom: 6px;
    position: relative;
}
.guide .container ul li h5:before{
    content: "●";
    font-size: 1.4rem;
    color: #22496e;
    position: absolute;
    top: 19px;
    left: -21px;
}

/* __ company __*/
.company01 .container ul.flexbox{
	width:740px;
	margin:0 auto;
}
.company01 .container ul.flexbox li p{
	font-size:1.4rem;
	margin-left:60px;
	line-height: 1.9
}
.company01 .container ul.flexbox li.ceo{
	width:200px;
	text-align: center;
}
.company01 .container ul.flexbox li.ceo p{
	margin-top:22px;
	font-size:1.7rem;
	margin-left:0;
}
.company01 .container ul.flexbox li.ceo p span{
	font-size:1.4rem;
}

.company02 .container table,
.company04 .container table{
	width:610px;
	margin:0 auto;
	border-bottom:1px solid #231815;
}
.company04 .container table{
	width:700px;
}
.company02 .container table tr th,
.company02 .container table tr td,
.company04 .container table tr th,
.company04 .container table tr td{
	padding:10px;
	font-size:1.3rem;
	font-weight: normal;
	letter-spacing: 1px;
	vertical-align: top;
}
.company02 .container table tr th,
.company04 .container table tr th{
	width:120px;
	border-top:1px solid #231815;
	border-right:1px solid #231815;
}
.company04 .container table tr th{
	width:170px;
}
.company02 .container table tr td,
.company04 .container table tr td{
	padding-left: 70px;
	border-top:1px solid #231815;
}

/* __ contact __ */
.contact01 p{
	width:555px;
	margin:0 auto;
	font-size:1.6rem;
	letter-spacing: 1px;
	text-indent: 1px;
}
span.red{
	color:red;
}
.contact01 .container .address p{
	margin-top:30px;
	text-align: center;
}
.contact01 .container .address p a{
	text-decoration: underline;
}
.contact01 .container .contactform{
	border-top:1px dashed #3e3a39;
	padding-top:15px;
	margin-top:15px;
}
.contact01 .container .contactform dl{
	width:800px;
	margin:0 auto;
	display: flex;
	align-items: center;
	background-color:#dcdddd;
	margin-bottom:8px;
}
.contact01 .container .contactform dl dt,
.contact01 .container .contactform dl dd{
	padding:15px 10px;
	font-size:1.6rem;
	font-weight: normal;
}
.contact01 .container .contactform dl dt{
	text-align: right;
	width:265px;
	letter-spacing: 1px;
}
.contact01 .container .contactform dl dd input[type="text"]{
	width: 400px;
	border:0 none;
	padding:7px;
	font-size:1.5rem;
}
.contact01 .container .contactform dl dd input[type="text"].postid{
	width:180px;
	margin-bottom:10px;
}
.contact01 .container .contactform dl dd textarea{
	width:400px;
	height:130px;
	padding:7px;
	font-size:1.5rem;
}
.contact01 .container .contactform dl dd label{
	margin-right:20px;
}
.contact01 .container .contactform dl dd label input{
	margin-right:5px;
}
.contact01 .container .contactform div.button{
	margin-top:30px;
	text-align: center;
}
.contact01 .container .contactform div.button input{
	width:185px;
	height:40px;
	border-radius: 30px;
	color:#fff;
	font-size:2rem;
	text-align: center;
}
.contact01 .container .contactform div.button input.reset{
	background-color: #727171;
}
.contact01 .container .contactform div.button input.submit{
	background-color: #22496e;
	margin-left:50px;
}

/* common */
.common .container p{
	width:715px;
	margin:0 auto;
	font-size:1.4rem;
	line-height: 1.6;
}
.common .container .flexbox{
		width: 715px;
	margin:10px auto;
}
.common .container .flexbox>ul{
	list-style-type: none;

	width:50%;
}
.common .container .flexbox>ul>li{
	border-left: 5px solid #23496f;
	padding-left: 10px;
}
.common .container .flexbox>ul>li h5{
	margin-bottom:10px;
}
.common .container .flexbox>ul>li h5 a{
	font-size: 1.5rem;
	letter-spacing: 3px;
	color:#22496e;
}
.common .container .flexbox>ul>li ul{
	list-style-type: none;
	margin-bottom:20px;
}
.common .container .flexbox>ul>li ul li{
	border-left: 5px solid #366a9f;
	padding-left: 10px;
	margin-bottom:8px;
}
.common .container .flexbox>ul>li ul li a{
	font-size: 1.3rem;
	letter-spacing: 3px;
}

.block404{
	width: 715px;
	margin: 20px auto 30px;
	background-color: #22496e;
	color: #fff;
	box-sizing: border-box;
	padding: 20px;
}
.block404 h5{
	text-align: center;
	font-size: 3.2rem;
	padding-bottom: 15px;
	border-bottom: 1px solid #fff;
	margin-bottom: 20px;
}
.block404 p{
	font-size:1.6rem !important;
	width:100% !important;
}
/*テーブル全体の設定*/
table.recruit_area{
    max-width: 677.33px;
	width: 100%;
    margin: 0 auto 50px;
    border-collapse: separate;
    border-spacing: 0 5px;  
}
/*タイトル設定*/
table.recruit_area caption{
    text-align: center;
    font-size: 2.3rem;
    margin-bottom: 27px;
    font-weight: bold;
    letter-spacing: 0.2em;
}
/*文字の大きさ設定*/
.recruit_item,
table.recruit_area td,
p.recruit_item_text,
span.recruit_span
{
    font-size: 1.6rem;
}
/*表細部設定*/
/*th部分*/
.recruit_item{
    width: 120px;
    background-color: #23496E;
    color: #ffffff;
    height: 50px;
    letter-spacing: 0.2em;
    font-weight: normal;
	text-align: center;
}
/*td部分設定*/
table.recruit_area td{
    font-weight: bold;
    letter-spacing: 0.08em;
    padding-left: 1.6rem;
    word-break: keep-all;
}
/*備考事項設定*/
.text_part{
    padding-top: 16.5px;
}
p.recruit_item_text{
    line-height: 1.5;
    padding-bottom: 20px;
	margin: 0;
}
p.recruit_item_text:last-child{
    padding-bottom: 0;
}

/*応募補足文設定*/
.recruit_sub_text{
    font-size: 1.7rem;
    text-align: center;
    color: #23496E;
    font-weight: bold;
    letter-spacing: 0.1em;
    margin-bottom: 20px;
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

/*ボタンエリア設定*/
.recruit_btn_container{
    max-width: 715px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    text-align: center;
}
/*各ボタン設定*/
a.recruit_btn{
    max-width: 300px;
    width: 100%;
    padding: 16px 2%;
    text-decoration: none;
    font-size: 2.2rem;
    font-weight: bold;
    color: #ffffff;
    letter-spacing: 0.15em;
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    transition: 0.5s all;
}
a.recruit_btn:first-child{
	letter-spacing: 0.4em;
}
.recruit_btn:hover{
    transform: translateY(4px);
}
.tel_btn{
    background-color: #E04C06;
}
.contact_btn{
    background-color: #23496E;
}
.recruit_container{
	padding-top: 0;
	margin-bottom: 50px;
    box-sizing: border-box;
    font-size: 62.5%;

}


/*【スマートフォン横】*/
@media screen and (min-width: 481px) {
} 

/*【タブレット縦以上】*/
@media screen and (min-width: 769px) {
    /*__ common parts __*/
    .br_sp{display: inline;}
    .br_pc{display: block;}
    .hide_sp{display: inline;}
    .hide_pc{display: none;}
}