@charset "UTF-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css?family=Poppins:400,700&display=swap');


/*-------------------- Reset */
h1,
h2,
h3,
p,
dl,
dt,
dd,
li {
  margin: 0;
  word-break: break-word;
}
a {
  color: #000;
  text-decoration: none; 
}
  a:hover {
    text-decoration: none;
	color: inherit;
}

ul, ol {
  list-style: none;
  margin: 0;
  padding: 0; 
}
/*-------------------- /Reset */
html {
  overflow-x: hidden;
  font-size: 62.5%;
}

body {
  background: #ffffff;
  color: #333333;
  line-height: 1.8em;
  font-size: 1.5rem;
  /*font-family: "Open Sans", Arial, sans-serif;*/
  /*font-family: 'Avenir','Helvetica Neue','Helvetica','Arial','Hiragino Sans',"游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;*/
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック体", YuGothic, "Yu Gothic Medium", sans-serif;
  font-weight: 500;
  font-feature-settings: "pkna" 1;
  padding-top: 70px;
  /*position: relative;
  overflow: hidden;*/
}
@media screen and (max-width: 991px){
body {
	padding-top: 70px;
	font-size: 1.4rem;
}
}
@media screen and (max-width: 480px){
body {
  font-size: 1.3rem;
}
}

a {
	transition: .3s;
}

.pad0 {
	padding:0;
}
.pad5 {
	padding:0 0.5em;
}
.mt0 {
	margin-top: 0px;
}
.ml10 {
	margin-left: 10px;
}
.mr5 {
	margin-right: 5px;
}
.mr10 {
	margin-right: 10px;
}
.mt10 {
	margin-top: 10px;
}
.mt15 {
	margin-top: 15px;
}
.mt20 {
	margin-top: 20px;
}
.mt30 {
	margin-top: 30px;
}
.mt40 {
	margin-top: 40px;
}
.mt50 {
	margin-top: 50px;
}
.mt160 {
	margin-top: 160px;
}
.mb5 {
	margin-bottom: 5px;
}
.mb10 {
	margin-bottom: 10px;
}
.mb20 {
	margin-bottom: 20px;
}
.mb30 {
	margin-bottom: 30px;
}
.mb40 {
	margin-bottom: 40px;
}
.mb60 {
	margin-bottom: 60px;
}
.mb100 {
	margin-bottom: 100px;
}
.pt10 {
	padding-top: 10px;
}
.pt40 {
	padding-top: 40px;
}
.pt50 {
	padding-top: 50px;
}
.pt60 {
	padding-top: 60px;
}
.pb10 {
	padding-bottom: 10px;
}
.pb40 {
	padding-bottom: 40px;
}
.pb60 {
	padding-bottom: 60px;
}


.img-pcnone {
	display: none;
}
.img-spnone {
	display: block;
}
@media screen and (max-width: 768px){
.img-pcnone {
	display: block;
}
.img-spnone {
	display: none;
}
}

.red1{
	color: #a00000;
}
.red2{
	color: #c40000;
}
.futo {
	font-weight: bold;
}
.min {
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
hr.style1 {
	margin-top: 10px;
	margin-bottom: 10px;
	border: 0;
	border-top: 1px dotted #cccccc;
}

.waku {
	border: 1px solid #c40000;
}

.btn.btn-warning {
	color: #ffffff;
	background-color: #a00000;
	border: none;
	font-size: 15px;
	transition: .2s;
	border-radius: 0px;
	padding: 1em 2em;
}
.btn.btn-warning a { 
    color:#ffffff;
	text-decoration:none;
}
.btn.btn-warning:hover,.btn.btn-warning:active {
	background-color: #c40000;
	color: #ffffff;
	text-decoration: none;
	border: none;
	transform: none;
}

/* trimming */
.thumbs{
  width: 100%;
  height: 100%;
  max-width: 800px;
  position: relative;
}
.thumbs::before{
  content: "";
  display: block;
  padding-top: 100%;
}
.thumbs a{
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
/*.thumbs a{
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  overflow: hidden;
}*/
.thumbs img{
  width: 100%;
  height: auto;
  line-height: 0;
  position: absolute;
  bottom: 0;
}


.navbar-fixed-bottom .navbar-collapse, .navbar-fixed-top .navbar-collapse {
	max-height: 350px;
}

.probootstrap-navbar .navbar-brand {
	padding-top: 0!important;
    padding-bottom: 0!important;
    font-size: 30px;
    text-transform: uppercase;
    background: url(../img/common/h_logo.png) left top no-repeat;
    top: 12px;
    position: relative;
    width: 224px;
    height: 55px;
    text-indent: -999999px;
    -webkit-transition: .2s all;
    transition: .2s all;
}
@media screen and (max-width: 991px){
.navbar .container {
	width: 100%;
}
.probootstrap-navbar .navbar-brand {
    width: 224px;
	/*background-size: contain;*/
	top: 13px!important;
    background-position: left 0px;
}
.navbar>.container .navbar-brand, .navbar>.container-fluid .navbar-brand {
	margin-right: -10px;
}
}
.probootstrap-navbar .navbar-nav>li>a {
	color: #333333;
    font-size: 1.4rem;
	font-weight: bold;
    position: relative;
	text-shadow: 0 0 5px #ffffff;
}
@media screen and (max-width: 991px){
.probootstrap-navbar .navbar-nav>li>a {
    font-size: 1.3rem;
}
}
.probootstrap-navbar .navbar-nav>li>a:hover {
	color: #a00000;
}
.probootstrap-navbar.scrolled .navbar-nav > li > a {
	color: #333333;
	padding:25px 0;
}
.probootstrap-navbar.scrolled .navbar-nav > li > a:hover {
	color: #a00000 !important;
}
.probootstrap-navbar.scrolled .navbar-nav > li.gnav_contact > a {
	color: #ffffff;
	background-color: bb0000;
	padding:25px 10px;
	text-shadow: none;
}
.probootstrap-navbar.scrolled .navbar-nav > li.gnav_contact > a:hover  {
	color: #ffffff !important;
	background-color: #a00000;
}
@media screen and (max-width: 991px){
.probootstrap-navbar .parent-nav-link-padding, .probootstrap-navbar .navbar-brand, .probootstrap-navbar .navbar-nav > li > a {
	padding-top: 12px !important;
	padding-bottom: 12px !important;
}
}

@media screen and (max-width: 991px){
.probootstrap-navbar .navbar-nav>li>a {
	padding-top: 8px;
	padding-bottom: 8px;
	/*color: rgba(0,0,0,0.7);*/
}
}

.probootstrap-navbar .navbar-brand, .probootstrap-navbar .navbar-nav>li>a, .probootstrap-navbar .parent-nav-link-padding {
	margin-left: 10px;
    margin-right: 10px;
    padding: 25px 0;
}
.probootstrap-navbar .navbar-nav>li.gnav_contact>a {
	color: #ffffff;
	background-color: bb0000;
	padding:30px 10px;
	text-shadow: none;
}
.probootstrap-navbar .navbar-nav>li.gnav_contact>a:hover {
	color: #ffffff !important;
	background-color: #a00000;
}
@media screen and (max-width: 990px){
.probootstrap-navbar .navbar-nav>li {
	text-align: center;
	border-bottom: 1px dotted #333333;
}
.probootstrap-navbar .navbar-nav>li:last-child {
	border-bottom: none;
}
.probootstrap-navbar .navbar-nav>li.gnav_contact>a {
	background: none;
	color: #333333;
}
.probootstrap-navbar .navbar-nav>li.gnav_contact>a:hover {
	background: none;
	color: #a00000 !important;
}
.probootstrap-navbar.scrolled .navbar-nav > li.gnav_contact > a {
	background: none;
	color: #333333;
}
.probootstrap-navbar.scrolled .navbar-nav > li.gnav_contact > a:hover {
	background: none;
	color: #a00000 !important;
}
}

.probootstrap-navbar .dropdown-menu {
	background-color: #ededed;
}

.probootstrap-navbar .dropdown > .dropdown-menu > li a {
	padding: 10px;
	color: rgba(0,0,0,0.7);
}
@media screen and (max-width: 990px){
.probootstrap-navbar .dropdown > .dropdown-menu > li {
	position: relative;
}
.probootstrap-navbar .dropdown > .dropdown-menu > li::before {
	font-family: "Font Awesome 5 Free"; 
	content: "\f0da";
	font-weight: bold;
	position: absolute;
	color: #0000ff;
	right : 0.7em;
	top: 50%;
	-moz-transform: translateY(-50%);
  	-webkit-transform: translateY(-50%);
  	-o-transform: translateY(-50%);
  	-ms-transform: translateY(-50%);
  	transform: translateY(-50%);
}
.probootstrap-navbar .dropdown > .dropdown-menu > li a {
	text-align: center;
}
}
.probootstrap-navbar .dropdown > .dropdown-menu > li a:hover {
  border-top: none;
  background: #ffffff;
  color: #0000ff;
}

.probootstrap-navbar .dropdown > .dropdown-menu > li.open > a, .probootstrap-navbar .dropdown > .dropdown-menu > li:hover > a, .probootstrap-navbar .dropdown > .dropdown-menu > li:focus > a, .probootstrap-navbar .dropdown > .dropdown-menu > li:active > a {
  border-top: none;
  color: #0000ff;
  background: #ffffff;
}

.probootstrap-navbar .navbar-nav > li > .dropdown-menu:before {
	border: 1px solid #ededed;
	content: "";
	position: absolute;
	top: -20px;
	left: 40px;
	border-color: rgba(133,200,221,0);
	border-bottom-color: #ededed;
	border-width: 10px;
	margin-left: -10px;
}
.navbar-toggle .icon-bar{
	display: block;
	width:30px;
	height: 3px;
	border-radius: 2px;
}
.navbar-toggle .icon-bar+.icon-bar {
	margin-top: 6px;
}
.probootstrap-navbar .navbar-header .sp-nav-entry {
	display: none;
}
@media screen and (max-width: 990px){
.probootstrap-navbar .navbar-header .sp-nav-entry{
	display: block;
	float: right;
}
.probootstrap-navbar .navbar-header .sp-nav-entry a {
	color: #ffffff;
	background-color: #a00000;
	text-align:center;
	font-size: 1.2rem;
	width: 80px;
	height: 71px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-right: 15px;
}
}
@media screen and (max-width: 390px){
.probootstrap-navbar .navbar-header .sp-nav-entry{
	display: none;
}
}

.probootstrap-section {
  padding: 4em 0;
}



/*-------------------サイドメニュー*/
.s_menu ul {
	padding: 0 ;
	margin: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
}
.s_menu ul li {
	padding: 0;
	margin: 0;
	list-style: none;
	position: relative;
}
.s_menu ul li a {
	width: 100%;
	padding: 0.7em;
	background-size: cover;
	color: #ffffff;
	transition: .4s;
	font-size: 1.5rem;
	line-height: 1.5em;
	height: 70px;
	display: flex;
	align-items: center;
	background-color: #00a7b3;
	border-bottom: 1px dashed #ffffff;
}
.s_menu ul li a:hover {
	text-decoration: none;
	opacity: .6;
}
.s_menu ul li:last-child a{
	border-bottom: none;
}
.s_menu ul li a::before {
	font-family: "Font Awesome 5 Free"; 
	content: "\f0da";
	font-weight: bold;
	position: absolute;
	color: #ffffff;
	right : 0.7em;
	top: 50%;
	-moz-transform: translateY(-50%);
  	-webkit-transform: translateY(-50%);
  	-o-transform: translateY(-50%);
  	-ms-transform: translateY(-50%);
  	transform: translateY(-50%);
}
@media screen and (max-width: 991px) {
.s_menu ul li a br.sp_none{
	display: none;
}
}


.section-heading h2 {
	display: inline-block;
	line-height: 1.8em;
	font-size: 2.2rem;
	font-weight: 700;
	letter-spacing: 0.2em;
	color: #333333;
	position: relative;
}
.section-heading h2::before,
.section-heading h2::after {
	content: "";
	width: 80px;
	height: 1px;
	background-color: #a00000;
	position: absolute;
	top: 50%;
}
.section-heading h2::before {
	left: -130px;
}
.section-heading h2::after {
	right: -130px;
}

@media screen and (max-width: 768px) {
.section-heading h2 {
	font-size: 1.8rem;
}
.section-heading h2::before,
.section-heading h2::after {
	width: 60px;
}
.section-heading h2::before {
	left: -90px;
}
.section-heading h2::after {
	right: -90px;
}
}
@media screen and (max-width: 480px) {
.section-heading h2 {
	font-size: 1.6rem;
}
}

.lead {
	display: block;
	font-size: 1.4rem;
	line-height: 1.4rem;
	color: #333333;
	margin-bottom: 0;
	letter-spacing: 0.2em;
	font-family: 'Times New Roman','Georgia',serif;
}
@media screen and (max-width: 768px) {
  .lead {
	  font-size: 1.1rem;
	  line-height: 1.1rem;
  }
}

.copyright {
    font-size: 12px !important;
    text-align: center;
    margin: 1em auto;
    display: block;
    padding: 20px 0 40px;
	color:#ffffff !important;
}
@media screen and (max-width: 991px) {
  .copyright {
    padding: 10px 0 50px;
}
}
@media screen and (max-width: 480px) {
  .copyright {
    padding: 10px 0 30px;
}
}

.probootstrap-footer-social li ul {
	padding-left: 20px;
}

.ttl{
	font-size: 2.2rem;
}
@media screen and (max-width: 768px){
.ttl{
	font-size: 1.7rem;
}
}
@media screen and (max-width: 480px){
.ttl{
	font-size: 1.5rem;
}
}


/*-----------------------TOP*/
.top .sec {
	padding: 4em 0;
}

.top .section-heading {
	margin-bottom: 2em;
}


.top .bg_news {
	background-color: #ffffff;
}
.top .news {
	overflow: auto;
    clear: both;
    height: 180px;
    overflow-y: scroll;
    box-sizing: border-box;
	background-color: #ffffff;
	width: 100%;
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
}
.top .news .inner {
	/*padding: 0.4em 0.7em 0.4em 0.7em;*/
	padding: 0;
}
.top .news .inner dl {
	display: flex;
	border-bottom: 1px solid #cccccc;
	padding-bottom: 10px;
	margin-bottom: 10px;
}
.top .news .inner dl dt.date{
	font-weight: bold;
	color: #333333;
	width: 120px;
	line-height: 1.8em;
}
.top .news .inner dl dd {
	width: calc(100% - 120px);
	line-height: 1.6em;
}
@media screen and (max-width: 768px){
.top .news .inner dl {
	flex-direction: column;
}
.top .news .inner dl dt.date{
	width: 100%;
	margin-bottom: 5px;
}
.top .news .inner dl dd {
	width: 100%;
}
}
.top .news .inner dl dd a {
	color: #333333;
}
.top .news .inner dl dd a:hover {
	text-decoration: underline;
}

.top .greeting {
	background-image: url(../img/top/bg_greeting.png);
	background-position: bottom center;
	background-size: cover;
	background-repeat: no-repeat;
}
.top .greeting-inner {
	width: 100%;
	max-width: 900px;
	padding: 30px 50px;
	margin: 0 auto;
	background-color: rgba(255,255,255,0.9);
	color: #333333;
}
@media screen and (max-width: 768px) {
.top .greeting-inner {
	width: 90%;
	padding: 20px;
}
}




/*---------------フッター*/
.footer {
	background-color: #333333;
	color: #ffffff;
}
@media screen and (max-width: 991px) {
.footer .container {
	width: 100%;
	/*margin-left: 10px;
	margin-right: 10px;*/
}
}
.footer h1 {
	font-size: 1.3rem;
	line-height:1.8em;
	margin: 20px auto 30px;
	padding: 0 10px;
	text-align: left;
	color: #ffffff;
}

.footer a{
	color: #ffffff;
}
.footer .footer-inner {
	width: 100%;
	max-width: 1170px;
	padding: 0 10px;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}
/*.footer .footer-inner .footer-company {
	width: 50%;
	line-height: 1.6em;
}*/
.footer .footer-inner ul.footerlink {
	display:-webkit-flex;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	flex-grow: 1;
	justify-content: center;
	margin-top: 20px;
}
.footer .footer-inner ul.footerlink li a{
	display: block;
	padding: 5px 15px;
}
.footer .footer-inner ul.footerlink li a:hover{
	text-decoration: underline;
}
@media screen and (max-width: 768px){
.footer h1 {
	font-size: 1.2rem;
}
.footer .footer-inner .footer-company {
	width: 100%;
	margin-bottom: 20px;
}
}
@media screen and (max-width: 480px){
.footer .footer-inner ul.footerlink {
	width: 100%;
	flex-direction: column;
}
.footer .footer-inner ul.footerlink li a{
	width: 100%;
	padding: 0;
	margin-bottom: 7px;
}
}




/* ページトップ */
@media only screen and (min-width: 767px), print {
#page-top {
    position: fixed;
    bottom: 50px;
    right: 20px;
    font-size: 70%;
	z-index: 9999;
}
#page-top a {
    background-color: rgba(160,0,0,0.8);
    text-decoration: none;
    color: rgba(255,255,255,1);
    width: 60px;
	height: 60px;
    display: block;
    border-radius: 50%;
	border: none;
	text-align: center;
	line-height: 60px;
	vertical-align: middle;
}
#page-top a:hover {
    text-decoration: none;
    background-color: rgba(196,0,0,0.8);
	color: rgba(255,255,255,1);
}
}

@media screen and (min-width: 481px)  and (max-width: 768px) {
#page-top {
    position: fixed;
    bottom: 50px;
    right: 10px;
    font-size: 8px;
	z-index: 9999;
}
#page-top a {
    background-color: rgba(160,0,0,0.8);
    text-decoration: none;
    color: rgba(255,255,255,1);
    width: 60px;
	height: 60px;
    display: block;
	border-radius: 50%;
	border: none;
	text-align: center;
	line-height: 60px;
	vertical-align: middle;
}
#page-top a:hover {
    text-decoration: none;
    background-color: rgba(196,0,0,0.8);
	color: rgba(255,255,255,1);
} 
}
@media screen and (max-width: 480px) {
 #page-top {
    position: fixed;
    bottom: 50px;
    right: 10px;
    font-size: 8px;
	z-index: 9999;
}
#page-top a {
    background-color: rgba(160,0,0,0.8);
    text-decoration: none;
    color: rgba(255,255,255,1);
    width: 60px;
	height: 60px;
    display: block;
	border-radius: 50%;
	border: none;
	text-align: center;
	line-height: 60px;
	vertical-align: middle;
}
#page-top a:hover {
    text-decoration: none;
    background-color: rgba(196,0,0,0.8);
	color: rgba(255,255,255,1);
} 
}



/*-----------------------下固定バナー*/
#fh5co-clients {
    padding: 0.3em 0;
    background: #333333;
	border-top:2px solid #333333;
    position: fixed !important;
    position: absolute;
    bottom: 0;
    width: 100%;
    z-index: 1000;
}

#fh5co-clients img{
	   z-index: 1100;
}
.migisen{
	border-right: solid 1px #ffffff;
	height:80%;
}
.fleft{
	float: left;
}
.fright{
	float: right;
}





/*-----------------------第二階層共通*/
.page-title-out .main_privacy{
	background-image:url(../img/privacy/bg_main.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.page-title-out .main_company{
	background-image:url(../img/company/bg_main.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.page-title-out .main_contact{
	background-image:url(../img/contact/bg_main.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.page-title-out .main_sitemap{
	background-image:url(../img/sitemap/bg_main.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.page-title-out .main_philosophy{
	background-image:url(../img/philosophy/bg_main.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.page-title-out .main_about{
	background-image:url(../img/about/bg_main.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.page-title-out .main_service{
	background-image:url(../img/service/bg_main.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.page-title-out .main_service01{
	background-image:url(../img/service01/bg_main.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.page-title-out .main_service02{
	background-image:url(../img/service02/bg_main.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.page-title-out .main_service03{
	background-image:url(../img/service03/bg_main.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.page-title-out .main_service04{
	background-image:url(../img/service04/bg_main.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.page-title-out .main_service05{
	background-image:url(../img/service05/bg_main.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.page-title-out .main_service06{
	background-image:url(../img/service06/bg_main.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.page-title-out .main_interview{
	background-image:url(../img/interview/bg_main.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.page-title-out .main_wireless{
	background-image:url(../img/wireless/bg_main.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}


#page-title {
    clear: both;
    overflow: hidden;
    position: relative;
    padding: 5em 0 5em 0;
	text-align: center;
}
#page-title h3{
	margin:0 auto 20px;
	font-weight: bold;
	font-size: 2.6rem;
	line-height: 2.6rem;
	letter-spacing: 0.2em;
	color: #ffffff;
	text-shadow: 0 0 5px rgba(0,0,0,0.5);
}
#page-title .lead{
	margin:0 auto;
	font-size: 1.8rem;
	font-weight: 700;
	color: #ffffff;
	text-shadow: 0 0 4px rgba(0,0,0,0.5);
	font-family: 'Times New Roman','Georgia',serif;
}
@media screen and (max-width: 768px){
#page-title{
	padding: 4em 0 4em 0;
}
#page-title h3{
	font-size : 2.4rem;
	margin-bottom: 10px;
}
#page-title .lead{
	font-size: 1.3rem;
}
}
@media screen and (max-width: 480px){
#page-title{
	padding: 3em 0 3em 0;
	}
#page-title h3{
	font-size : 2rem;
	margin-bottom: 10px;
	}
}

/*.main-contents-wrap {
	position: relative;
	overflow: hidden;
	background: rgb(252,224,214); 
background: -moz-linear-gradient(-30deg, rgba(252,224,214,1) 0%, rgba(255,250,250,1) 15%); 
background: -webkit-linear-gradient(-30deg, rgba(252,224,214,1) 0%,rgba(255,250,250,1) 15%); 
background: linear-gradient(130deg, rgba(252,224,214,1) 0%,rgba(255,250,250,1) 15%); 
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#80d3d3', endColorstr='#f8fffe',GradientType=1 );
	z-index: -1;
}*/

.daini {
	margin-top: 60px;
}
@media screen and (max-width: 768px){
.daini .container {
	margin-left: 15px;
	margin-right: 15px;
}
}
.daini .sec {
	margin-bottom: 60px;
	/*max-width: 1000px;*/
	max-width: 1170px;
	margin-left: auto;
	margin-right: auto;
}

.daini .section-heading{
	width: 100%;
	margin-bottom: 40px;
}
/*.daini .section-heading h2{
	padding: 0.4em 0 0.8em 0;
	font-weight: bold;
	color: #333333;
	font-size: 2.4rem;
	line-height: 2.4rem;
	text-align: center;
	letter-spacing: 0.1em;
	position: relative;
	font-family: 'Poppins', sans-serif;
}
.daini .section-heading h2 span {
	font-size: 1.7rem;
}
.daini .section-heading h2::after {
	content: "";
	display: block;
	width: 30px;
	height: 3px;
	background-color: #000b7d;
	position: absolute;
	bottom: 0;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}
.daini .section-heading .lead{
	color: #333333;
	padding: 0.4em 0.5em;
	margin: 15px auto 0;
	font-size: 1.2rem;
	line-height: 1.2rem;
	text-align: center;
}
@media screen and (max-width: 768px) {
.daini .section-heading h2{
	padding: 0.4em 0 0.6em 0;
	font-size: 2rem;
}
.daini .section-heading h2 span {
	font-size: 1.4rem;
}
.daini .section-heading .lead{
	font-size: 1rem;
	line-height: 1rem;
}
}*/
.catch {
	font-size: 2.4rem;
	line-height: 1.8em;
	letter-spacing: 0.07em;
}
@media screen and (max-width: 768px){
.catch {
	font-size: 2rem;
}
}
@media screen and (max-width: 480px){
.catch {
	font-size: 1.7rem;
}
}

.catch2 {
	font-size: 2rem;
	line-height: 1.8em;
	letter-spacing: 0.05em;
}
@media screen and (max-width: 768px){
.catch2 {
	font-size: 1.7rem;
}
}
@media screen and (max-width: 480px){
.catch2 {
	font-size: 1.5rem;
}
}

.catch3 {
	font-size: 1.8rem;
	line-height: 1;
	letter-spacing: 0.07em;
}
@media screen and (max-width: 768px){
.catch3 {
	font-size: 1.5rem;
}
}
@media screen and (max-width: 480px){
.catch3 {
	font-size: 1.4rem;
}
}


.catch-out{
	margin-bottom: 40px;
}


/*---------------プライバシーポリシー*/
.privacy p {
	text-align: justify;
}
.privacy .dl_privacy dt,
.privacy .dl_privacy dd {
	padding: 0;
	line-height: 1.8em;
}
.privacy .dl_privacy dt {
	color: #333333;
	font-size: 1.8rem;
}
.privacy .dl_privacy dd {
	margin-bottom: 30px;
}

@media screen and (max-width: 768px) {
.privacy .dl_privacy dt {
	font-size: 1.5rem;
}
}



/*---------------会社概要*/
.company {
	width: 100%;
	padding-bottom: 40px;
	text-align: left;
	position:relative;
}

.company .dl_com dl,
.company .dl_com dl dt,
.company .dl_com dl dd {
	margin: 0;
	padding: 0;
}
.company .dl_com dt,
.company .dl_com dd {
	padding: 1em 0;
	line-height: 1.6em;
}
.company .dl_com {
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
	border-bottom: 1px solid #cccccc;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.company .dl_com dt {
	border-top: 1px solid #cccccc;
	width: 25%;
}
.company .dl_com dd {
	border-top: 1px solid #cccccc;
	width: 75%;
}
.company .dl_com dd ul li {
	list-style: none;
	margin: 0 0 5px 0;
	line-height: 1.6em;
}
.company .dl_com dd ul li:last-child {
	margin-bottom: 0;
}
.company .dl_com dd span{
	font-weight: bold;
	color: #9d0804;
}
@media screen and (max-width: 768px) {
.company .dl_com {
	font-size: 1.4rem;
}
.company .dl_com dt {
	float: none;
	width: 100%;
	border-top: 1px solid #cccccc;
	padding: 0.7em 0 0.7em 0;
}
.company .dl_com dd {
	border-top: none;
	margin-left: 0;
	padding: 0 0 0.7em 0;
}
}
.company .g-maps {
	position: relative;
	height: 0;
	padding-bottom: 56.25%;
	overflow: hidden;
}
.company .g-maps iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}




/*-----------------------ご相談・お問合せ*/
.contact .sec {
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
}
.contact .sec .catch2 {
	font-weight: bold;
}
.contact .tel {
	font-size: 2.8rem;
	line-height: 1.6em;
	letter-spacing: 0.05em;
	font-weight: bold;
	color: #a00000;
}
@media screen and (max-width: 768px) {
.contact .tel {
	font-size: 2.4rem;
	line-height: 1.6em;
}
}
@media screen and (max-width: 480px) {
.contact .tel {
	font-size: 2rem;
	line-height: 1.6em;
}
}
.contact .lead {
	color: #ffffff;
	background-color: #bc0808;
	padding: 5px 12px 4px;
	margin-top: 5px;
	display: inline-block;
}
.contact .control-label {
	text-align: left;
}
.contact .label {
	display: inline-block;
	font-size: 1rem;
	line-height: 1rem;
	padding: 5px 10px;
	margin-top: -3px;
	background-color: #bc0808;
	color: #ffffff;
	vertical-align: middle;
}
.contact .btn.btn-warning {
	color: #ffffff;
	border: 1px solid #bc0808;
	border-radius: 0px;
	background-color: #bc0808;
	padding: 0.8em 1.5em;
	font-size: 1.4rem;
	transition: .2s;
}
.contact .btn.btn-warning a { 
    color:#ffffff;
	text-decoration:none;
}
.contact .btn.btn-warning:hover,
.contact .btn.btn-warning:active {
	background-color: #d80000;
	border: 1px solid #d80000;
	color: #ffffff;
	text-decoration: none;
	border-radius: 0px;
}
.contact .dl_form dt,
.contact .dl_form dd {
	padding: 1.2em 0.8em;
	line-height: 2.2rem;
}
.contact .dl_form {
	border-bottom: 1px solid #cccccc;
	font-size: 1em;
	margin-bottom: 30px;
}
.contact .dl_form dt {
	border-top: 1px solid #cccccc;
	clear: left;
	float: left;
	width: 25%;
}
.contact .dl_form dd {
	border-top: 1px solid #cccccc;
	margin-left: 25%;
}
.contact .dl_form dd .form-control {
	display: block;
	width: 100%;
	height: 40px;
	padding: 6px 12px;
	margin: 3px auto;
	font-size: 1.4rem;
	line-height: 1.8em;
	color: #555555;
	background-color: #ffffff;
	border: 1px solid #cccccc;
	border-radius: 0;
	box-shadow: inset 0 1px 1px rgba(0,0,0,0);
}
.contact .dl_form dd textarea.form-control {
	height: auto;
}
.contact .sec .catch3 {
	font-weight: bold;
	color: #b70000;
	transition: .4s;
}
.contact .sec .catch3:hover {
	opacity: 0.5;
}
@media screen and (max-width: 768px) {
.contact .dl_form dt {
	padding: 1.3em 0.8em 0.7em;
	line-height: 2.2rem;
}
.contact .dl_form dd {
	padding: 0 0.8em 1.4em;
	line-height: 2.2rem;
}
.contact .dl_form dt {
	float: none;
	width: 100%;
	border-top: 1px solid #cccccc;
	/*background-color: #e7e7e7;*/
}
.contact .dl_form dd {
	border-top: none;
	margin-left: 0;
}
}




/*---------------サイトマップ*/
.sitemap .sitemaplink {
	position: relative;
	list-style-type: none!important;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.sitemap .sitemaplink li {
	list-style-type: none!important;
	width: 31%;
	width: -webkit-calc(100% / 3 - 2%); 
	width: calc(100% / 3 - 2%);
	margin: 0 1% 30px;
}
.sitemap .sitemaplink li a {
	position: relative;
	display: block;
	padding: 10px 15px;
	background-color: #dddddd;
	color: #333333;
	font-weight: 600;
 }
.sitemap .sitemaplink li a:hover {
	background-color: #efefef;
}
.sitemap .sitemaplink li a::before {
  font-family: "Font Awesome 5 Free"; 
  content: "\f105";
  font-weight: bold;
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
  color: #333333;
}
@media screen and (max-width: 768px) {
.sitemap .sitemaplink {
	flex-direction: column;
}
.sitemap .sitemaplink li {
	width: 100%;
}
}




/*---------------経営理念*/
.philosophy .greeting-item {
	width: 100%;
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
}
.philosophy .catch {
	font-size: 2.6rem;
	line-height: 1.8em;
	margin-bottom: 50px;
	text-align: center;
}
@media screen and (max-width: 768px) {
.philosophy .catch {
	font-size: 2.2rem;
	line-height: 1.8em;
	margin-bottom: 30px;
	text-align: center;
}
}
.philosophy .philosophy_bg {
	display: flex;
	flex-wrap: wrap;
}
.philosophy .philosophy_bg li{
	width: 33.333%;
	width: -webkit-calc(100% / 3); 
	width: calc(100% / 3);
	height: 0;
	padding-top: 260px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}
.philosophy .philosophy_bg li.bg01 {
	background-image: url(../img/philosophy/img01.png);
}
.philosophy .philosophy_bg li.bg02 {
	background-image: url(../img/philosophy/img02.png);
}
.philosophy .philosophy_bg li.bg03 {
	background-image: url(../img/philosophy/img03.png);
}
@media screen and (max-width: 960px) {
.philosophy .philosophy_bg li{
	padding-top: 200px;
}
}
@media screen and (max-width: 480px) {
.philosophy .philosophy_bg li.bg01 {
	width: 100%;
} 
.philosophy .philosophy_bg li.bg02,
.philosophy .philosophy_bg li.bg03 {
	width: 50%;
} 
.philosophy .philosophy_bg li{
	padding-top: 130px;
}
}
.philosophy .greeting-item .item-text{
	width: 100%;
	padding-left: 15px;
	padding-right: 15px;
}
.philosophy .greeting-item .item-text > p {
	width: 100%;
	line-height: 2em;
}



/*---------------事業概要*/
.service .intro {
	width: 90%;
	max-width: 900px;
	margin: 80px auto 100px;
}
@media screen and (max-width: 768px) {
.service .intro {
	margin: 50px auto 60px;
}
}
.service .intro .catch {
	font-weight: bold;
	text-align: center;
}
.service .catch2 {
	font-weight: bold;
	text-align: center;
	margin-bottom: 60px;
	position: relative;
}
.service .catch2::after {
	content: "";
	display: block;
	position: absolute;
	background-color: #a00000;
	height: 3px;
	width: 60px;
	bottom: -20px;
	left: 50%;
	transform: translateX(-50%); 
}
@media screen and (max-width: 768px) {
.service .catch2 {
	margin-bottom: 40px;
}
.service .catch2::after {
	width: 50px;
	bottom: -15px;
}
}
.service ul.support_menu {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.service ul.support_menu li {
	width: 31%;
	width: -webkit-calc(100% / 3 - 2%); 
	width: calc(100% / 3 - 2%); 
	margin: 0 1% 30px;
	text-align: center;
	padding-top: 150px;
	background-size: cover;
	background-position: center center;
}
.service ul.support_menu li span {
	display: block;
	background-color: #a00000;
	color: #ffffff;
	padding: 10px;
}
.service ul.support_menu li.menu01 {
	background-image: url(../img/service/menu01.png);
}
.service ul.support_menu li.menu02 {
	background-image: url(../img/service/menu02.png);
}
.service ul.support_menu li.menu03 {
	background-image: url(../img/service/menu03.png);
}
.service ul.support_menu li.menu04 {
	background-image: url(../img/service/menu04.png);
}
.service ul.support_menu li.menu05 {
	background-image: url(../img/service/menu05.png);
}
.service ul.support_menu li.menu06 {
	background-image: url(../img/service/menu06.png);
}
.service ul.support_menu li.menu07 {
	background-image: url(../img/service/menu07.png);
}
.service ul.support_menu li.menu08 {
	background-image: url(../img/service/menu08.png);
}
@media screen and (max-width: 768px) {
.service ul.support_menu li {
	width: 48%;
	width: -webkit-calc(100% / 2 - 2%); 
	width: calc(100% / 2 - 2%); 
	padding-top: 150px;
}
}
@media screen and (max-width: 480px) {
.service ul.support_menu {
	flex-direction: column;
}
.service ul.support_menu li {
	width: 100%;
	padding-top: 0;
	margin: 0 1% 10px;
}
.service ul.support_menu li span {
	background-color: rgba(160,0,0,0.7);
	color: #ffffff;
}
}

.service .item-wrap {
	width: 100%;
	margin-bottom: 50px;
	margin-top: 50px;
}
.service .ttl {
	font-weight: 600;
	color: #a00000;
	margin-bottom: 20px;
}
.service .item {
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
}
.service .item .item-img{
	width: 42%;
}
.service .item .item-text{
	width: 55%;
}
.service .item .item-text dl dt{
	font-size: 1.8rem;
	margin-bottom: 20px;
	line-height: 1.8em;
}
.service .item .item-text dl dd{
	line-height: 1.8em;
}
@media screen and (max-width: 768px) {
.service .item-wrap {
	margin-bottom: 40px;
	margin-top: 40px;
}
.service .ttl {
	margin-bottom: 10px;
}
.service .item {
	flex-direction: column;
	margin-bottom: 20px;
}
.service .item .item-img{
	width: 100%;
}
.service .item .item-text{
	width: 100%;
	order: 1;
	margin-top: 10px;
}
.service .item .item-text dl dt{
	font-size: 1.6rem;
	margin-bottom: 10px;
}
}
.service .specialty ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.service .specialty ul li.box2 {
	width: 48%;
	width: -webkit-calc(100% / 2 - 2%); 
	width: calc(100% / 2 - 2%);
	margin: 0 1%;
	display: flex;
}
.service .specialty .waku {
	padding: 1.5em;
	width: 100%;
}
.service .specialty .catch3 {
	font-weight: 600;
	margin-bottom: 10px;
	line-height: 1.6em;
}
.service ul.list-point {
	display: block;
}
.service ul.list-point li {
	list-style: none;
	position: relative;
	margin-bottom: 5px;
	padding-left: 1.5em;
	line-height: 1.6em;
	font-weight: 600;
}
.service ul.list-point li:before {
	font-family: "Font Awesome 5 Free"; 
	content: "\f101";
	font-weight: bold;
	position: absolute;
	left : 0;
	color: #c40000;
}
.service ul.list-point li span {
	display: block;
	font-size: 1.6rem;
	color: #c40000;
}
@media screen and (max-width: 768px) {
.service .specialty ul {
	flex-direction: column;
}
.service .specialty ul li.box2 {
	display: block;
	width: 100%;
	margin-bottom: 10px;
}
}



/*---------------最新情報詳細ページ*/
.news_s .sec {
	width: 100%;
	max-width: 900px;
	padding-bottom: 40px;
	text-align: left;
	margin-left: auto;
	margin-right: auto;
}
.news_s .sec .section-heading  {
	margin-bottom: 20px;
}
.news_s .sec .section-heading h2::before,
.news_s .sec .section-heading h2::after {
	display: none;
}
.news_s p {
	text-align: justify;
}

.news_s .date{
	display: block;
	font-weight: bold;
	margin-bottom: 7px;
	color: #bb0000;
}
.news_s .item_wrap {
	display: flex;
	flex-wrap: wrap;
	margin-top: 20px;
}
.news_s .item_wrap .item {
	width: 31%;
	width: -webkit-calc(100% / 3 - 20px);
	width: calc(100% / 3 - 20px);
	margin: 0 10px;
	align-items: center;
	justify-content: flex-start;
}
@media screen and (max-width: 768px){
.news_s .item_wrap .item {
	width: 100%;
	margin-bottom: 20px;
	text-align: center;
}
}
.news_s .item_wrap .item img {
	transition: .2s;
}
.news_s .item_wrap .item:hover img {
	opacity: 0.7;
}
















