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



.inner:after {
  content:"";
  clear: both;
  display: block;
}




/*--------header-----------*/

#top-head {
  top: -100px;
  position: fixed;
  width: 100%;
  margin: 100px auto 0;
  padding: 0px 0 0;
  line-height: 1;
  z-index: 999;
background: #fff!important;
	height:93px;

}

#top-head a,
#top-head {
    color: #101010;
    text-decoration: none;
}

#top-head .inner {
    position: relative;
	width:100%!important;
	background: #fff!important;

}
#top-head .logo {
    position: absolute;
	left:0px;
	top:0;
	width:30%;
	max-width:160px;
    height: 93px;
	z-index: 1000000!important;
}

#top-head .logo a {
  position: absolute;
  width: 100%;

}

#top-head .header-cv{
	position: absolute;
	right:20px;
	top:25px;
background-image: url(../img/btn_header-cv_on.svg);
}
#top-head .header-cv img:hover{
	opacity: 0 ;
	  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
#global-nav{
	background-color:#000;

}
#global-nav .logo{
	position:absolute;
	top:0;
	left:0;
}
#global-nav ul {
    list-style: none;
    position: absolute;
    top: 35px;
    left: 180px;
    font-size: 14px;
}
#global-nav ul li {
    float: left;
    padding:0 0px 0 0;
}
@media only screen and (min-width: 1080px) and (max-width: 3000px) {

#global-nav ul li::after{
   content: '　/　';
}
#global-nav ul li:nth-child(9):after{
   content: "　"!important;
}
}
#global-nav ul li a {
    padding: 5px 5px;
    position: relative;
    display: inline-block;
}

#global-nav ul li a::after {
   content: '';
   position: absolute;
   bottom: 0;
   left: 0;
   width: 100%;
   height: 2px;
   -webkit-transform: scaleX(0);
   -ms-transform: scaleX(0);
   transform: scaleX(0);
   background-color: #fff;
   -webkit-transition: all .3s ease;
   transition: all .3s ease;
}

#global-nav ul li a:hover::after {
  -webkit-transform: scaleX(1);
  -ms-transform: scaleX(1);
  transform: scaleX(1);
}

nav span{
    background:#666;
    height:2px;
    display:block;
    position:relative;
    width:50px;
    left:0;
}


/*--------固定化されたときのCSS-----------*/

#top-head.fixed {
    margin-top: 0;
    top: 0;
    position: fixed;
    padding-top: 0px;
    background: #fff!important;
/*    background: rgba(255,255,255,.7);*/
/*    transition: top 0s ease-in;
    -webkit-transition: top 0s ease-in;
    -moz-transition: top 0s ease-in;*/
	z-index: 10000000000000;
}

/*#top-head.fixed .logo {
  position: relative;
    font-size: 24px;
    color: #333;
}

#top-head.fixed .logo a {
  position: absolute;
  width: 100%;
  height: 30px;

}
#top-head.fixed #global-nav ul li a {
    color: #333;
    padding: 0 20px;
    padding-bottom: 10px;
}



/*-----------スマホのトグルボタンのCSS-------------*/

#nav-toggle {
    display: none;
    position: absolute;
    right: 95px;
    top: 14px;
    width: 34px;
    height: 36px;
    cursor: pointer;
    z-index: 101;
}
#nav-toggle div {
    position: relative;
}
#nav-toggle span {
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    background: #000;
    left: 0;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
}
#nav-toggle span:nth-child(1) {
    top: 0;
}
#nav-toggle span:nth-child(2) {
    top: 11px;
}
#nav-toggle span:nth-child(3) {
    top: 22px;
}


/*---------gnav sp--------------*/
/*-----------スマホ-------------*/
@media screen and (max-width: 767px) {
    .head-inner {
      display: none;
    }

    .slick-next {
      right: 0;
    }

    #top-head,
    .inner {
        width: 100%;
        padding: 0;
    }
    #top-head {
        top: 0;
        position: fixed;
        margin-top: 0;
		height:69px!important;
    }
    /* Fixed reset */
    #top-head.fixed {
        padding-top: 0;
        background: transparent;
    }

	#top-head .header-cv{
display:none;

}


    #mobile-head {
       background-color: transparent;
        width: 100%;
        height: 56px;
        z-index: 999;
        position: relative;
    }
    #top-head.fixed .logo,
    #top-head .logo {
    }

	#top-head .logo {
    float: left;
    position: relative;
	z-index: 1000000;
}

	#top-head .logo img{
		width:110px!important;
		height:auto;
	}


    #global-nav {
        position: absolute;
        /* 開いてないときは画面外に配置 */
        top: -700px!important;
        background: #000;
        width: 100%;
        text-align: center;
        padding: 10px 0;
        -webkit-transition: .5s ease-in-out;
        -moz-transition: .5s ease-in-out;
        transition: .5s ease-in-out;
    }
    #global-nav ul {
        list-style: none;
        position: static;
        right: 0;
        bottom: 0;
        font-size: 14px;
    }
    #global-nav ul li {
        float: none;
        position: static;
        padding: 0px 0!important;
        color: #fff;
    }
    #top-head #global-nav ul li a,
    #top-head.fixed #global-nav ul li a {
        width: 100%;
        display: block;
        color: #fff;
        padding: 25px 0!important;
    }

	#global-nav ul li::after{
   content: ' ';
}

    #nav-toggle {
        display: block;
    }
    /* #nav-toggle 切り替えアニメーション */
    .open #nav-toggle span:nth-child(1) {
        top: 11px;
        -webkit-transform: rotate(315deg);
        -moz-transform: rotate(315deg);
        transform: rotate(315deg);
    }
    .open #nav-toggle span:nth-child(2) {
        width: 0;
        left: 50%;
    }
    .open #nav-toggle span:nth-child(3) {
        top: 11px;
        -webkit-transform: rotate(-315deg);
        -moz-transform: rotate(-315deg);
        transform: rotate(-315deg);
    }
    /* #global-nav スライドアニメーション */
    .open #global-nav {
        /* #global-nav top + #mobile-head height */
        -moz-transform: translateY(768px);
        -webkit-transform: translateY(768px);
        transform: translateY(768px) !important;
    }
}

/*------------タブレット用------------------*/

@media screen and (max-width: 1080px) {
  .head-inner {
    display: block;


  }

  .slick-next {
    right: 0;
  }
	#top-head .logo {
    position: absolute;
		top:0;
		left:0;
	z-index: 1000000;
}

	#top-head .logo img{
		width:95px!important;
		height:auto;
	}
  #top-head .inner {
      width: 100%;
      padding: 0;
	  height:69px!important;
	  position: relative;
	  top:0;
	  left:0;
	  display: block;
  }
  #top-head {
      top: 0;
      position: fixed;
      margin-top: 0;
max-height:69px!important;

	}
  /* Fixed reset */
  #top-head.fixed {
      padding-top: 0;
      background: transparent;
max-height:69px!important;
  }
  #mobile-head {
      width: 100%;
	  height:69px;
      z-index: 999;
      position: absolute;
	  top:0;
  }
  #top-head.fixed .logo,
  #top-head .logo {
      position: absolute;
      left: 0px;
      top: 0px;
  }
	#top-head .logo img{
		width:100%;
		height:auto;
	}
#top-head .header-cv{
display:none;
}

  #global-nav {
      position: absolute;
      /* 開いてないときは画面外に配置 */
      top: -550px;
      background: #000;
      width: 100%;
      text-align: center;
      padding: 10px 0;
      -webkit-transition: .5s ease-in-out;
      -moz-transition: .5s ease-in-out;
      transition: .5s ease-in-out;
  }
  #global-nav ul {
      list-style: none;
      position: static;
      right: 0;
      bottom: 0;
      font-size: 14px;
  }
  #global-nav ul li {
      float: none;
      position: static;
      padding: 0px 0;
      color: #fff;
  }
  #top-head #global-nav ul li a,
  #top-head.fixed #global-nav ul li a {
      width: 100%;
      display: block;
      color: #fff;
      padding: 18px 0;
  }
  #nav-toggle {
      display: block;
      right: 20px;
      top: 20px;
  }
  /* #nav-toggle 切り替えアニメーション */
  .open #nav-toggle span:nth-child(1) {
      top: 11px;
      -webkit-transform: rotate(315deg);
      -moz-transform: rotate(315deg);
      transform: rotate(315deg);
  }
  .open #nav-toggle span:nth-child(2) {
      width: 0;
      left: 50%;
  }
  .open #nav-toggle span:nth-child(3) {
      top: 11px;
      -webkit-transform: rotate(-315deg);
      -moz-transform: rotate(-315deg);
      transform: rotate(-315deg);
  }
  /* #global-nav スライドアニメーション */
  .open #global-nav {
      /* #global-nav top + #mobile-head height */
      -moz-transform: translateY(618px);
      -webkit-transform: translateY(618px);
      transform: translateY(618px);
  }


}

/* 検索 */
.search-radio {
}
.search-radio table{
	margin-bottom:0px!important;
	padding-bottom:0px!important;
	margin-right:25px;
	min-width:100px;
}

.search-radio table td,
.search-radio table th{
	display:inline-block;
	}
.search-radio table th{
	padding-right:12px;
	width:25px;

}

.result-box{
	padding:20px;
	width:100%;
	background: #ebebeb;
	font-weight: 900;
}

.searchbox{
	border:6px solid #ebebeb;
	padding:25px;
	margin-bottom:25px;
	background:#fcfcfc;
}

.searchbox h4{
	text-align:center;
	border-bottom:1px solid #727b86;
	padding-bottom:10px;
	margin-bottom:15px;
	font-size:1.2em;
}
#searchbox li{
	display:inline-block!important;
	margin-bottom:0px;
}
.searchbox span{
	text-align:center;
	width:100%;
	display: block;
}
.searchbox label{
	white-space:nowrap;
	margin-right:20px;
	height:30px;
	display: inline-block;
	overflow: hidden;
	z-index: auto;


}
.searchbox input{
	border-radius:300px;
	background: #273445;
	color:#fff;
	padding:3px 25px 3px 25px;
	margin-left: auto;
	margin-right: auto;
	display: inline-block;
}
.searchbox .btn-submit{
	margin-top:-20px;
}


.search-radio span{
	display: inline-block;
	margin-left:-10px;
	margin-right:10px;
	}

/*
県別検索
***********************/
.kenbetsu h3{
	border-bottom:1px solid #999;
	margin-bottom:15px;
	font-size:1.5rem;
	padding-bottom:5px;
}
.kenbetsu .catch-box-main-area{
	display: block;
	width:100%;
	clear: both;
	padding:0px 0 0 0;
	margin:0!important;
	height:auto;
}
.kenbetsu .catch-box-main-area .area-header{
	float:left;
	width:120px;
	text-align: left!important;
	font-size: 0.8rem
}
.kenbetsu .catch-box-main-area .area-header h4{
	text-align: left;
	border-bottom:0px;
	font-size:1rem;
	line-height:100%;
	padding-top:7px;
}
.kenbetsu .catch-box-main-area .list-horizon-btn li{
	margin-right:5px;
}
.kenbetsu .catch-box-main-area .list-horizon-btn a{
	border:1px solid #0d2a5e;
	padding:2px 5px;
	color:#0d2a5e;
	text-decoration: none;
	border-radius:5px;
	font-size:1rem;
}
.kenbetsu .catch-box-main-area .list-horizon-btn .is-non-active{
	border:1px solid #cccccc;
	padding:2px 5px;
	color:#cccccc;
	text-decoration: none;
	border-radius:5px;
	font-size:1rem;
}

.search_contact{
	border-radius:300px;
	background:#3e454f;
	color:#fff;
	padding:10px 30px;
	text-align: center;
	text-decoration: none;
	margin:0 auto;
	display: block;
	max-width:250px;
}
.search_contact:hover{
background:#dd7b85!important;
}
@media screen and (max-width: 900px){
.kenbetsu h3{
	border-bottom:1px solid #999;
	margin-bottom:0px;
	font-size:1.3rem;
	padding-bottom:5px;
	text-align: center;
}
.kenbetsu .catch-box-main-area{
	display: block;
	width:100%;
	clear: both;
	padding:0px 0 0 0;
	margin:0!important;
	height:auto;
}
.kenbetsu .catch-box-main-area .area-header{
	float:none;
	width:100%;
	text-align: center!important;
	font-size: 0.8rem;
		line-height:80%!important;
	height:auto!important;
		padding-bottom:0px!important;
	margin-top:15px;
}
.kenbetsu .catch-box-main-area .area-header h4{
	text-align: center;
	border-bottom:0px;
	font-size:1rem;
	padding-top:0px;
	height:auto!important;
	padding-bottom:0px!important;
		line-height:100%!important;
}
	.kenbetsu .catch-box-main-area .list-horizon-btn{
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		text-align: left;
	}
.kenbetsu .catch-box-main-area .list-horizon-btn li{
	margin-right:0px;
	margin-bottom:5px!important;
		width:31%!important;
		text-align: left;
	display: inline-block
}
.kenbetsu .catch-box-main-area .list-horizon-btn a{
	border:1px solid #0d2a5e;
	padding:2px 5px;
	color:#0d2a5e;
	text-decoration: none;
	border-radius:5px;
	font-size:1rem;
	width:100%!important;
	display: block;
	text-align: center;

}
.kenbetsu .catch-box-main-area .list-horizon-btn .is-non-active{
	border:1px solid #cccccc;
	padding:2px 5px;
	color:#cccccc;
	text-decoration: none;
	border-radius:5px;
	font-size:1rem;
		width:100%!important;

}
}
@media screen and (max-width: 900px){
.search-radio span{
	display: inline-block;
	margin-left:0px;
	margin-right:10px;
	text-align: left;
	}
#searchbox li{
	display:inline-block!important;
	margin-bottom:0px;
	width:120px;
}
}
/***** コンタクトフォーム *****/

.formWrap{
	max-width:900px;
width:98%;
	display: block;
	margin-left:auto;
	margin-right:auto;
}

.formWrap p{
	margin-bottom:20px;
}
.formWrap p:nth-child(2){
	margin-bottom:15px!important;
}

.formWrap .form_tel01{
	width:calc(50% - 20px);
	height:auto;
	margin-right:40px;
	margin-bottom:20px;
}
.formWrap .form_tel02{
	width:calc(50% - 20px);
	height:auto;
	margin-bottom:20px;
}

.formWrap .line-cv{
	width:40%;
	height:auto;
	margin-bottom:20px;
}

.formWrap hr{
	color:#e4ebef!important;
}
.formWrap .hr01{
	margin-bottom:30px ;
	margin-top:40px ;
	height:auto;
}
.formWrap .hr02{
	margin-bottom:40px ;
	margin-top:10px ;
}

.form_tel{
	width:100%;
	height:auto;
	margin-bottom:20px;
}
.text-xs-center{
		text-align:center;
	width:100%;
	display: block;
}
.btn-confirm{
		border-radius:300px;
	background: #273445;
	color:#fff;
	padding:10px 45px 10px 45px;
	margin-left: auto;
	margin-right: auto;
	display: inline-block;
	font-size:1.5em;
	margin-top:20px;
	margin-bottom:20px;
}
.btn-lg{
		border-radius:300px;
	background: #273445;
	color:#fff;
	padding:10px 45px 10px 45px;
	margin-left: auto;
	margin-right: auto;
	display: inline-block;
	font-size:1.5em;
		margin-top:20px;
	margin-bottom:20px;
}
.table-contactform7{
	border:6px solid #e4ebef;
	padding:35px!important;
	margin-left:auto;
	margin-right:auto;
	background: #fff;
	margin-bottom:30px;
	max-width:900px;
}


.required-contactform7{
  padding: 2px 6px 2px 6px;
  background: #DE8686;
  color: #fff;
  border-radius: 3px;
	font-size:0.8em;
	margin-right:10px;
	display: inline-block;

}

.unrequired-contactform7{
  padding: 2px 6px 2px 6px;
  background: #8dcba4;
  color: #fff;
  border-radius: 3px;
	font-size:0.8em;
	margin-right:10px;
	display: inline-block;
}
/* Chrome, Safari */
::-webkit-input-placeholder{
    color: #b3bcc6;
}

/* Firefox */
::-moz-placeholder{
    color: #b3bcc6;
}

/* Firefox 18以前 */
:-moz-placeholder{
    color: #b3bcc6;
}

/* IE */
:-ms-input-placeholder{
    color: #b3bcc6;
}

.table-contactform7 tr{
	border-bottom:1px dotted #e4ebef;
}
.table-contactform7 th{
  font-weight:500;
	font-size:1em;
	text-align: left;
	padding:15px 0px 15px 20px;
	width:30%;
	min-width:310px;

}
.table-contactform7 td{
	max-width:590px;
	width:70%;
	position: relative;
	padding:15px 20px 0px 15px;
}

.table-contactform7 input{
  max-width: 70% ;
  margin: 5px 10px 10px 5px;
	border:1px solid #c6cdd7;
	border-radius: 5px;
	padding:5px;
}

.table-contactform7 textarea{
  max-width: 100% ;
  margin: 5px 10px 10px 5px;
	border:1px solid #e4ebef;
}

/* 確認画面テーブル */
.table-contactform7-confirm{
	border:6px solid #e4ebef;
	padding:35px!important;
	margin-left:auto;
	margin-right:auto;
	width:98%!important;
	background: #fff;
	margin-bottom:30px;
}
.table-contactform7-confirm tr{
	border-bottom:1px dotted #e4ebef;
}
.table-contactform7-confirm th{
  font-weight:500;
	font-size:1em;
	text-align: left;
	padding:15px;
	width:27%;
	min-width:270px;

}
.table-contactform7-confirm td{
	position: relative;
	padding:15px;
}

.table-contactform7 input{
  max-width: 70% ;
  margin: 5px 2px 10px 5px;
	border:1px solid #c6cdd7;
	border-radius: 5px;
	padding:5px;
}

label{
	margin-right:15px;
}
.doui{
	text-align:center!important;
	margin-left: auto;
	margin-right: auto;
	display: block!important;
	padding-bottom:15px;
}

/***************/

.address-100 input{
  max-width: 90% !important;
  margin: 5px 10px 10px 5px;
	border:1px solid #e4ebef;
}

.message-100 textarea{
  width: 100%;
  margin: 5px 10px 10px 5px;
	border:1px solid #e4ebef;
}

.wpcf7-validation-errors,
.wpcf7-not-valid-tip,
.error{
	width:200px;
	text-align: center;
	display:block;
	color:#fff;
	background:#af0404;
	border-radius:3px;
	padding:5px;
	font-size:0.8em;
}
.screen-reader-response ul{
	display:none;
}
.screen-reader-response,
.wpcf7-response-output{
	margin-left: auto;
	margin-right: auto;
	width:90%;
	background:#dd7b85;
	padding:15px;
	color:#fff;text-align: center;
	border-radius: 300px;
	margin-bottom:15px;
}



.error_messe{
	text-align: center!important;
	background-repeat: no-repeat!important;
	background-position: 0px 1px!important;
	padding-left: 0px!important;
	padding-bottom: 0px!important;
	color: #e02a2a!important;
	margin-bottom: 10px!important;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif!important;
	text-indent: 10!important;
	height: auto;
	width: auto;
}

.error_title{
	font-size: 16px;
	line-height: 140%;
	color: #e02a2a;
	background-color: #FFECEC;
	padding: 20px;
	border: 1px dotted #C00;
	margin-bottom: 25px;
	text-align: center;
}
.center{
	text-align: center!important;
	line-height: 25px;
	font-size: 14px;
}

#image-btn{
	background-image: url(/img/btn_confirm.gif)!important;
	height: 47px!important;
	width: 198px!important;
	margin-right: auto!important;
	border-top-style: none!important;
	border-right-style: none!important;
	border-bottom-style: none!important;
	border-left-style: none!important;
	cursor:pointer!important;
	text-align: center;
	margin-left: auto;
	border-radius:300px;
}
#image-btn1{
	background-image: url(/img/btn_submit.gif)!important;
	height: 47px!important;
	width: 198px!important;
	margin-right: auto!important;
	border-top-style: none!important;
	border-right-style: none!important;
	border-bottom-style: none!important;
	border-left-style: none!important;
	cursor:pointer!important;
	text-align: center!important;
	margin-left: auto!important;
	margin-bottom:20px;
	border-radius:300px;
	}
#image-btn2{
	background-image: url(/img/btn_back.gif)!important;
	height: 47px!important;
	width: 198px!important;
	margin-right: auto!important;
	border-top-style: none!important;
	border-right-style: none!important;
	border-bottom-style: none!important;
	border-left-style: none!important;
	cursor:pointer!important;
	text-align: center!important;
	margin-left: auto!important;
	border-radius:300px;
	}
input[type="submit"] {
	border-width: 0px;
	display: block;
}
input[type="image"] {
	border-width: 0px;
	display: block;
}
input[type="button"] {
	border-width: 0px;
	display: block;
}

.iframe{
padding:10px;
width:100%;
height:200px;
	border:1px solid #c6cdd7;
overflow:scroll;
overflow-x: hidden;
	margin-bottom:10px;
}

.iframe p{
	margin-bottom:20px;
}

 select{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0;
    height: 30px;
    background: transparent;
    position: relative;
    z-index: 1;
    padding: 0 40px 0 10px;
    border: 1px solid #ccc;
}
select::-ms-expand {
    display: none;
}
.selectWrap{
    position: relative;
    display: inline-block;
}
.selectWrap::before{
    content: '';
    position: absolute;
    z-index: 0;
    top: 0;
    right: 0;
    background: #ccc;
    height: 100%;
    width: 30px;
}
.selectWrap::after{
    content: '';
    position: absolute;
    z-index: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    right: 9px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 6px 0 6px;
    border-color: #fff transparent transparent transparent;
}

/* エラー画面 */
.table-contactform7-confirm {
	padding:30px;
}
.table-contactform7-confirm p{
	text-align: center!important;
}
#formWrap{
	width:100%!important;
}
#formWrap h4{
	border-radius:300px;
	background:#e02a2a;
	white-space: normal;
		margin-top:-0px;

}



@media screen and (min-width: 900px){
  .table-contactform7 th{
    width:100%;
  }
	.table-contactform7 label{
		display:inline-block!important;
		white-space: normal;
	}
    }

@media screen and (max-width: 900px){
.table-contactform7{
  display:block;
	padding:0px!important;
}

  .table-contactform7 tbody,
  .table-contactform7 tr{
    display: block;
    width: 100%;
  }
  .table-contactform7 th{
	 width:100%;
  display:block;
  margin: 0 auto;
  border:none;
 text-align: left;
	  background: #f9e8ea;
	  padding-left:10px!important;
}
.table-contactform7 td{
  display: list-item;
  list-style-type:none;
  margin:0;
  padding:10px;
  width: 100%;
  border-top: none !important;
}
	.search-radio{
		width:90%;
	}

.unrequired-contactform7{
  padding: 2px 6px 2px 6px;
  background: #8dcba4;
  color: #fff;
  border-radius: 3px;
	font-size:0.8em;
	margin-right:10px;
	display: inline-block;
}

	.formWrap .form_tel01{
	width:100%;
	height:auto;
	margin-right:0px;
	margin-bottom:30px;
}
.formWrap .form_tel02{
	width:100%;
	height:auto;
	margin-bottom:20px;
}

.formWrap .line-cv{
	width:100%;
	height:auto;
	margin-bottom:20px;
}


/* エラー画面 */
.table-contactform7-confirm {
	padding:10px!important;
}
.table-contactform7-confirm p{
	text-align: left!important;
}
	#formWrap{
	width:100%!important;
}
#formWrap h4{
	border-radius:300px;
	background:#e02a2a;
	white-space: normal;
	font-size:1em;
	margin-top:-0px;
	padding:20px;

}

/* 確認画面 */

	.table-contactform7-confirm th{
	width:100%;
		display: block;

}
.table-contactform7-confirm td{
		width:100%;
		display: block;
			position: relative;
	padding:10px;
		  background: #f9e8ea;

}


}