@charset "UTF-8";
/* CSS Document */

/* CSS Document */

* {
	margin:0;
	padding:0;
}

/* =========================================================
Reset
========================================================= */
html, body, div, ul, ol, li, dl, dt, dd, h1, h1, h3, h4, h5, h6, pre, form, p, blockquote, fieldset, input { margin: 0; padding: 0; }
ol, ul { list-style: none; }
fieldset, img { border: none; }
table { border-collapse: collapse; border-spacing: 0; }
td { padding: 0; }
a:focus{ outline: none; }


.clearfix {
zoom: 1;
}

.clearfix:after {
display: block;
clear: both;
content: "";
}
.img-responsive {
display: block;
width: 100%;
height: auto;
}

img {
max-width: 100%;
width:100%;
height: auto;
border: 0;
}


body {
font-family:YuGothic,'Yu Gothic',"メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

a:link {
text-decoration:none;
}

a:visited {
text-decoration:none;
}

a:hover img {
		opacity:0.7;
	filter:alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
	 transition-property: all;
	 transition: 0.3s linear;
}

.br_sp {
        display:none;
}


ul li {
	list-style-type: none;
}

#header_inner_sp {
	display:none;
}

#nav-drawer {
	display:none;
}

/* PC  */

#header {
	width: 100%;
	color: #454545;
}


#header #header_inner {
	max-width: 1000px;
	margin: 0 auto;	
	padding: 10px 0;
}

#header #header_inner #logo_area h1 {
	padding-left: 10px;
}

#header #header_inner #logo_area h1 img {
	max-width:600px; 
}



#g_navi {
	width: 100%;
	background: #000;
	height: 50px;
}

#g_navi ul {
	max-width: 1000px;
	margin: 0 auto;
}

#g_navi ul {
	max-width: 1000px;
	list-style: none;
	margin: 0 auto;
	padding: 0;
}
#g_navi ul::after {
	content: "";
	display: block;
	clear: both;
}
#g_navi ul > li {
	float: left;
	position: relative;
	width: 25%;
	box-sizing: border-box;
	line-height: 50px;
	z-index: 1;
}
#g_navi ul li a {
	display: block;
	text-decoration: none;
	color: #333;
	text-align: center;
}
#g_navi ul li:hover {
	background: #323232;
}
#g_navi ul > li ul {
	display: none;
	position: absolute;
	top: 100%;
	width: 100%;
}
#g_navi ul > li li {
	float: none;
	width: 100%;
	background: #000;
}
#g_navi ul li:hover ul {
	display: block;
}

#g_navi ul li:first-child {
border-left:none;
	overflow:hidden;
}

#g_navi ul li a:link {
	color:#fff;

}

#g_navi ul li a:visited {
	color:#fff;
}


#eye_catch {
	clear: both;
	max-width: 1000px;
	margin: 0 auto;
}

#contents {
	width:100%;
	overflow:hidden;
}

#contents #contents_inner {
	max-width:1000px;
	overflow:hidden;
	margin:20px auto;
	padding: 0 20px;
}


#contents #contents_inner h2 {
    font-weight: normal;
    font-size: 24px;
    margin: 30px 0;
    color: #333;
	text-align: center;
}

#contents #contents_inner h3 {
    font-size: 16px;
    font-weight: normal;
	margin: 10px 0;
}

.sec_common ul li {
	position: relative;
  width: 100%;
  height:auto;
  overflow: hidden;
}
.sec_common ul li img {
  margin: 0;
  padding: 0;
}
.sec_common ul li img {
  width: 100%;
}
.sec_common .sec_common-text {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  color: #fff;
  background-color: rgba(0,0,0,0.65);
  /*透明にして表示させない*/
  opacity: 0;
  /*ホバーの動き方*/
  transition: .3s ease-in-out;
}
.sec_common .sec_common-text .text1 {
  font-size: 22px;
  padding: 0 20px 10px;
}
.sec_common .sec_common-text .text2 {
 font-size: 16px;
position: relative;
top: 40%;
margin-left: 50%;
transform: translate(-50%, -40%);
width: auto;
text-align: center;
	margin-bottom: 15px;
}
/*ホバーエフェクト*/
.sec_common ul li:hover .sec_common-text {
  /*不透明にして表示*/
  opacity: 1;
  /*padding-topで上からスライド*/
  padding-top: 10px;
}

.favorite_item ul {
	display: flex;
	 flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-around;
}

.favorite_item ul li {
	width: 30%;
  margin-bottom: 20px;
  flex: 0 1 auto;
}

.favorite_item ul li a {
	display: block;
	
}

.favorite_item ul li a:link {
	color: #fff;
	text-decoration: none;
	
}

.favorite_item ul li a:visited {
	color: #fff;
	text-decoration: none;
	
}

.item_bnr ul {
	display: flex;
	 flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: center;
}

.item_bnr ul li {
	width: 48%;
  margin-bottom: 10px;
  flex: 0 1 auto;
}

#footer {
	width: 100%;
	overflow: hidden;
	background: #000;
	margin-top: 60px;
}

#footer #footer_inner {
	max-width: 1000px;
	margin: 20px auto;
	overflow: hidden;
}

.footer_menu {
  overflow: hidden;
}


#footer ul {
	padding: 20px;
	overflow: hidden;
}

#footer ul li {
	list-style-type: none;
font-size: 16px;
width: 20%;
	padding: 10px 0;
color: #fff;
	float: left;
}

#footer a:link {
	color:#fff;
}

#footer a:visited {
	color:#fff;
}

#footer ul li a:hover {
	text-decoration:underline;
}

#footer .footer_about {
	color: #fff;
	padding: 20px;
}

#footer .footer_about h3 {
	font-weight: normal;
}

#footer .copyright {
	font-size: 12px;
	text-align: center;
	margin-bottom:20px;
	color: #fff;
}


/*slider */
.slider4-wrap {
  width: 100%;
  margin: 0 auto;
  position: relative;
}
.slider-4 .slick-slide {
  height: auto;
  overflow: hidden;
}
.slider-4 .slick-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.dots-4 .slick-dots {
  text-align: center;
}
.dots-4 .slick-dots li {
  display: inline-block;
}
.dots-4 .slick-dots button {
  display: block;
  width: 10px;
  height: 10px;
  margin: 6px;
  font-size: 0;
  padding: 0;
  border: 0;
  outline: none;
  cursor: pointer;
  background: #bcbcbc;
  border-radius: 50%;
}
.dots-4 .slick-dots .slick-active button {
  background: #0a467d;
}
.progress_bar {
  width: 100%;
  background: #eaeaea;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
}
.progress_bar .bar {
  width: 0%;
  height: 4px;
  background: #0a467d;
}
/* slider end */



/* company page start  */


.company_list {
    margin-bottom: 30px;
	max-width: 800px;
    overflow: hidden;
    margin: 40px auto;
}

.company_list-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
	max-width:800px;
}

.company_list-heading {
    font-size: 14px;
    line-height: 1.8;
    -ms-flex-preferred-size: 200px;
    flex-basis: 200px;
    max-width: 200px;
    padding-right: 40px;
    letter-spacing: 0.05em;
    color: #545454;
	display: grid;
}

.company_list-detection {
    font-size: 14px;
    line-height: 1.8;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    letter-spacing: 0.05em;
}

.company_list-border {
    padding: 15px 0;
    border-top: 1px solid #d5d5d5;
}

.is-last {
    border-bottom: 1px solid #d5d5d5;
}

/* company page end  */



/*******************************
* フォームの設定
********************************/
/* フォーム入力項目 */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 textarea  {
	width:95%;
	 padding: 8px 15px;
	 margin-right: 10px;
	 margin-top: 10px;
	 border: 1px solid #ddd;
	 border-radius: 3px;
}

input.wpcf7-form-control.wpcf7-submit {
    margin: 10px auto;
    width: 300px;
    height: 60px;
    background: #F90;
    color: #FFF;
    font-size: 1.1em;
    font-weight: bold;
	border-radius:10px;
	letter-spacing: 0.2em;
    border: 1px solid #ffae13;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    -ms-transition: 0.3s;
    transition: 0.3s;
}

.subbtn {
    width: 300px;
    margin: 10px auto;
}

.wpcf7-form-control.wpcf7-select.wpcf7-validates-as-required.formtype {
    margin: 10px 0 20px 0px;
    width: 98%;
    padding: 8px 15px;
    border: 1px solid #ddd;
    border-radius: 3px;
}

span.formtxt {
    font-size: 12px;
    color: #ff0000;
    line-height: 20px;
}

/*タブレット用*/
@media screen and (max-width: 969px) {

	#g_navi {
		display: none;
	}	

#header_inner_sp {
	display:block;
	overflow:hidden;
	box-shadow: 0px 5px 3px -3px rgba(0,0,0,0.2);
  -webkit-box-shadow: 0px 5px 3px -3px rgba(0,0,0,0.2);
  -moz-box-shadow: 0px 5px 3px -3px rgba(0,0,0,0.2);
	top:0;
}

	div#logo_area {
		float: left;
		width: 60%;
		padding: 10px;
	}
	
	
#header_inner {
	display:none;
}

#header {
  padding:10px 0;
  height:auto;
	line-height: 0;
}


#nav-drawer {
  position: relative;
  display:block;
  float:right;
  padding:10px;
}

/*チェックボックス等は非表示に*/
.nav-unshown {
  display:none;
}

/*アイコンのスペース*/
#nav-open {
  display: inline-block;
  width: 30px;
  height: 22px;
  vertical-align: middle;
}

/*ハンバーガーアイコンをCSSだけで表現*/
#nav-open span, #nav-open span:before, #nav-open span:after {
  position: absolute;
  height: 3px;/*線の太さ*/
  width: 25px;/*長さ*/
  border-radius: 3px;
  background: #555;
  display: block;
  content: '';
  cursor: pointer;
}
#nav-open span:before {
  bottom: -8px;
}
#nav-open span:after {
  bottom: -16px;
}

/*閉じる用の薄黒カバー*/
#nav-close {
  display: none;/*はじめは隠しておく*/
  position: fixed;
  z-index: 99;
  top: 0;/*全体に広がるように*/
  left: 0;
  width: 100%;
  height: 100%;
  background: black;
  opacity: 0;
  transition: .3s ease-in-out;
}

/*中身*/
#nav-content {
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;/*最前面に*/
  width: 90%;/*右側に隙間を作る（閉じるカバーを表示）*/
  max-width: 330px;/*最大幅（調整してください）*/
  height: 100%;
  background: #fff;/*背景色*/
  transition: .3s ease-in-out;/*滑らかに表示*/
  -webkit-transform: translateX(-105%);
  transform: translateX(-105%);/*左に隠しておく*/
}

/*チェックが入ったらもろもろ表示*/
#nav-input:checked ~ #nav-close {
  display: block;/*カバーを表示*/
  opacity: .5;
}

#nav-input:checked ~ #nav-content {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);/*中身を表示（右へスライド）*/
  box-shadow: 6px 0 25px rgba(0,0,0,.15);
}


.accordion-001 {
    max-width: 500px;
    background-color: #ffffff;
	    margin-bottom: 5px;
	padding: 10px 0;
	border-bottom: 1px solid #eee;

}

.accordion-001 summary.aaa:not([open]) {
}

.accordion-001 summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1em 2em;
    background-color: #ffffff;
    color: #333;
    font-weight: 600;
    cursor: pointer;
}

.accordion-001 summary.aaa::after {
    transform: translateY(-25%) rotate(45deg);
    width: 7px;
    height: 7px;
    margin-left: 10px;
    content: '';
    transition: transform .3s;
	border-bottom: 3px solid #777;
    border-right: 3px solid #777;
}

.accordion-001[open] summary.aaa::after {
    transform: rotate(225deg);
}

	
	.accordion-001 summary a:link {
		color: #333;
	}
	
	.accordion-001 summary a:visited {
		color: #333;
	}
	
.accordion-001 p {
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: 2em;
    color: #000000;
    transition: transform .5s, opacity .5s;
}


.accordion-001[open] p {
    transform: none;
    opacity: 1;
}
	

	.accordion-001 p a:link {
		color: #333;
	}
	
		.accordion-001 p a:visited {
		color: #333;
	}
}

/*スマホ用*/
@media screen and (max-width: 719px) {

	#contents #contents_inner h2 { 
		font-size: 21px;
	}
	
div#contents_left {
    width: 100%;
    float: none;
}

div#contents_left ul li {
    margin-right: 0;
    margin-bottom: 10px;
}
	
div#fb_area {   
	width: 100%;
    float: none;
}
	
#header_inner_sp #logo_area h1 a:link {
	color:#454545;
}

#header_inner_sp #logo_area h1 a:visited {
	color:#454545;
}


	.favorite_item ul li {
	width:46%;
}

.sec_common .sec_common-text .text2 {
 font-size: 11px;
position: relative;
top: 30%;
margin-left: 50%;
transform: translate(-50%, -30%);
width: auto;
text-align: center;
	margin-bottom: 15px;
}

#footer ul {
	padding: 10px;
}

#footer ul li {
font-size: 14px;
width: 50%;
	text-align: center;
}

	#footer h3 {
		font-size: 14px;
	}
	#footer p {
		font-size: 14px;
	}
	
/* company sp start */

.company_box {
    padding: 0 20px;
}
	
.company_box h2 {
    font-size: 21px;
}
	
.company_list {
    margin-bottom: 20px;
    border-top: 1px solid #d5d5d5;
}


.company_list-item {
    display: block;
    padding: 20px 0;
    border-bottom: 1px solid #d5d5d5;
}

.company_list-heading {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%;
    margin-bottom: 10px;
    padding-right: 0;
}

.company_list-border {
    padding: 0;
    border: none;
}

.company_list-border {
    padding: 0;
    border: none;
}

.u-sp-inline {
    display: inline!important;
}

.is-last {
    border: none;
}
/* company sp end */

/* form */

.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 textarea  {
	width:92%;
}

	}