/*--------------------------------------------------------------
	追加css
--------------------------------------------------------------*/
body {
font-family: 'Noto Sans Japanese',"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","Hiragino Kaku Gothic Pro W3","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
}
::selection { background-color: rgba(77, 166, 255, 0.55); }
a:hover { opacity: 0.6; transition: 0.5s; }

.restaurant-page-header:before { background: none; }
.bg-dark-30:before { background: none; }

.module-title { margin-bottom: 40px; }
.module-title + .module-subtitle { margin-top: 0; }

@media (min-width: 768px) {
.container { width: 100%; max-width: 1200px; } 
}



/*--------------------------------------------------------------
	top-menu
--------------------------------------------------------------*/
.navbar-custom .dropdown-toggle:after,.navbar-custom .dropdown-menu .dropdown-toggle:after { content: ""; }
.navbar-custom .nav li > a { font-size: 16px; font-weight: bold; line-height: 1.5em; color: #fff; }
.navbar-brand { padding: 10px; }
.navbar-brand img { height: 35px; }
.navbar-custom { 
background: rgb(31,38,103);
background: linear-gradient(90deg, rgba(31,38,103,1) 0%, rgba(0,64,152,0.8015405991498161) 50%, rgba(31,38,103,1) 100%);
}
@media (min-width: 768px) { 
.navbar-transparent { padding-bottom: 0; padding-top: 0; } 
}
@media (max-width: 767px){
.navbar-brand img { margin-top: -3px; }
}


/*--------------------------------------------------------------
	top-slider
--------------------------------------------------------------*/
.caption-content {
font-family: 'Noto Sans JP', sans-serif; /* Google font */
z-index: 3;
position: absolute;
top: 50%;
left: 50%;
margin-right: -50%;
transform: translate(-50%, -50%);
color: #fff;
}

.slides .caption-content { 
font-size: 40px;
font-weight: bold; 
text-align: center; 
line-height: 1.5em; 
filter: drop-shadow(5px 5px 3px rgba(0,0,0,0.32)); 
}

.home-section { max-height: 700px; }
.hero-slider,.hero-slider .flex-viewport { max-height: 700px; }
.hero-slider .slides { max-height: 700px; }

.hero-slider .slides li:nth-child(2) { background-image: url(../images/main_slider_01.jpg); }
.hero-slider .slides li:nth-child(3) { background-image: url(../images/main_slider_02.jpg); }
.hero-slider .slides li:nth-child(4) { background-image: url(../images/main_slider_03.jpg); }
.hero-slider .slides li:nth-child(5) { background-image: url(../images/main_slider_04.jpg); }
.hero-slider .slides li:nth-child(6) { background-image: url(../images/main_slider_05.jpg); }
@media (max-width: 767px) {
.hero-slider .slides li:nth-child(2) { background-image: url(../images/main_slider_01_mb.jpg); }
.hero-slider .slides li:nth-child(3) { background-image: url(../images/main_slider_02_mb.jpg); }
}


@media (max-width: 500px){	
.slides .caption-content { font-size: 30px; }
}
@media (max-width: 350px){
.slides .caption-content { font-size: 24px; }
}



/*--------------------------------------------------------------
	業務内容
--------------------------------------------------------------*/
.copy_text { margin: 0 auto 70px auto; }
.copy_text p { font-size: 18px; line-height: 2em; color: #fff; text-align: center; }

@media (max-width: 767px){
.copy_text { max-width: 700px; }
.copy_text p { text-align: left; }
.copy_text span br { display: none; }
}

.about .container { 
max-width: 900px;
}
.about .module, .module-small { 
padding: 70px 0; 
background: rgb(31,38,103);
background: linear-gradient(90deg, rgba(31,38,103,1) 0%, rgba(0,64,152,1) 50%, rgba(31,38,103,1) 100%);
}
.about .module-title { 
font-family: 'Noto Sans JP', sans-serif; /* Google font */ 
font-size: 40px; 
color: #fff; 
}
.about .module-title span { 
display: block;
width: 100%;
font-size: 18px;
text-align: center;
color: #fff;
border-top: 3px solid #fff;
margin-top: 5px;
padding-top: 5px;
}
.about .module-subtitle { 
font-family: 'Noto Sans JP', sans-serif; /* Google font */ 
font-size: 24px;
color: #fff;
margin-bottom: 40px; 
}

@media (max-width: 767px){
.about .container { max-width: 700px; }
}
@media (max-width: 700px){
.about .module-subtitle { text-align: left; }
.about .module-subtitle br { display: none; }
}
@media (max-width: 500px){
.about .module-title { font-size: 30px; }
}



.about .box01,
.about .box02,
.about .box03,
.about .box04 { 
border-bottom: 1px solid #fff; 
margin-bottom: 40px;
padding-bottom: 40px;
}
.about .box01 h3,
.about .box02 h3,
.about .box03 h3,
.about .box04 h3 { 
font-family: 'Noto Sans JP', sans-serif; /* Google font */ 
font-size: 30px;
font-weight: bold;
line-height: 1.5em;
color: #fff;
margin-bottom: 20px;
}

.about .box04 { margin-bottom: 0; }
.about .box04 p { 
font-size: 18px;
color: #fff;
margin-top: 20px;
}

.about .box01 .home-section,
.about .box02 .home-section,
.about .box03 .home-section,
.about .box04 .home-section { 
max-height: 500px; 
}
.about .box01 .hero-slider,.hero-slider .flex-viewport,
.about .box02 .hero-slider,.hero-slider .flex-viewport,
.about .box03 .hero-slider,.hero-slider .flex-viewport,
.about .box04 .hero-slider,.hero-slider .flex-viewport { 
max-height: 500px; 
}
.about .box01 .hero-slider .slides,
.about .box02 .hero-slider .slides,
.about .box03 .hero-slider .slides,
.about .box04 .hero-slider .slides { 
max-height: 500px; 
}

/* ガス・水道本管工事 */ 
.about .box01 .hero-slider .slides li:nth-child(1) { background-image: url(../images/honkan_slider_01.jpg); }
.about .box01 .hero-slider .slides li:nth-child(2) { background-image: url(../images/honkan_slider_02.jpg); }
.about .box01 .hero-slider .slides li:nth-child(3) { background-image: url(../images/honkan_slider_03.jpg); }

/* ガス・水道設備工事 */ 
.about .box02 .hero-slider .slides li:nth-child(1) { background-image: url(../images/setubi_slider_01.jpg); }
.about .box02 .hero-slider .slides li:nth-child(2) { background-image: url(../images/setubi_slider_02.jpg); }
.about .box02 .hero-slider .slides li:nth-child(3) { background-image: url(../images/setubi_slider_03.jpg); }

/* 土木工事 */
.about .box03 .hero-slider .slides li:nth-child(1) { background-image: url(../images/doboku_slider_01.jpg); }
.about .box03 .hero-slider .slides li:nth-child(2) { background-image: url(../images/doboku_slider_02.jpg); }
.about .box03 .hero-slider .slides li:nth-child(3) { background-image: url(../images/doboku_slider_03.jpg); }

/* 災害復旧 */ 
.about .box04 .hero-slider .slides li:nth-child(1) { background-image: url(../images/saigai_slider_01.jpg); }
.about .box04 .hero-slider .slides li:nth-child(2) { background-image: url(../images/saigai_slider_02.jpg); }
.about .box04 .hero-slider .slides li:nth-child(3) { background-image: url(../images/saigai_slider_03.jpg); }

@media (max-width: 767px){
.about .box01 h3,
.about .box02 h3,
.about .box03 h3,
.about .box04 h3 { 
font-size: 24px; 
}	
.about .box01 .home-section,
.about .box02 .home-section,
.about .box03 .home-section,
.about .box04 .home-section { 
max-height: 50vw; 
}
.about .box01 .hero-slider,.hero-slider .flex-viewport,
.about .box02 .hero-slider,.hero-slider .flex-viewport,
.about .box03 .hero-slider,.hero-slider .flex-viewport,
.about .box04 .hero-slider,.hero-slider .flex-viewport { 
max-height: 50vw; 
}
.about .box01 .hero-slider .slides,
.about .box02 .hero-slider .slides,
.about .box03 .hero-slider .slides,
.about .box04 .hero-slider .slides { 
max-height: 50vw; 
}
.about .box01 .flex-control-nav,
.about .box02 .flex-control-nav,
.about .box03 .flex-control-nav,
.about .box04 .flex-control-nav { 
bottom: 0; 
}
}



/*--------------------------------------------------------------
	会社案内
--------------------------------------------------------------*/
.profile .container { 
max-width: 700px; 
}
.profile .module, .module-small { 
padding: 70px 0; 
background: rgb(31,38,103);
background: linear-gradient(90deg, rgba(31,38,103,1) 0%, rgba(0,64,152,1) 50%, rgba(31,38,103,1) 100%);
}
.profile .module-title { 
font-family: 'Noto Sans JP', sans-serif; /* Google font */ 
font-size: 40px; 
color: #fff;
}
.profile .module-title span { 
display: block;
width: 100%;
font-size: 18px;
text-align: center;
color: #fff;
border-top: 3px solid #fff;
margin-top: 5px;
padding-top: 5px;
}
.profile li { font-size: 18px; line-height: 1.5em; color: #fff; border-bottom: 1px solid #fff; padding-bottom: 15px; margin-bottom: 15px; }
.profile li:last-child { margin-bottom: 0; }
.profile li span { font-weight: bold; }

.profile table { width: 100%; font-size: 18px; line-height: 1.5em; color: #fff; }
.profile th { font-weight: bold; border-bottom: 1px solid #fff; padding: 15px; }
.profile td { border-bottom: 1px solid #fff; padding: 15px; }

@media (max-width: 767px){
.profile th { display: block; border-bottom: none; padding-bottom: 0; }
.profile td { display: block; }
}
@media (max-width: 500px){
.profile .module-title { font-size: 30px; }
.profile .box .text h3 { font-size: 24px; }
}



/*--------------------------------------------------------------
	アクセス
--------------------------------------------------------------*/
.access .container { 
max-width: 700px; 
}
.access .module, .module-small { 
padding: 70px 0; 
background: rgb(31,38,103);
background: linear-gradient(90deg, rgba(31,38,103,1) 0%, rgba(0,64,152,1) 50%, rgba(31,38,103,1) 100%);
}
.access .module-title { 
font-family: 'Noto Sans JP', sans-serif; /* Google font */ 
font-size: 40px; 
color: #fff;
}
.access .module-title span { 
display: block;
width: 100%;
font-size: 18px;
text-align: center;
color: #fff;
border-top: 3px solid #fff;
margin-top: 5px;
padding-top: 5px;
}
.access li { font-size: 18px; line-height: 1.5em; color: #fff; text-align: center; }
.access li br { display: none; }
.access a { text-decoration: underline; font-weight: bold; color: #fff; }

.access .access_btn { 
display: block;
max-width: 500px;
margin: 0 auto;
}
.access .access_btn a { 
font-family: 'Noto Sans JP', sans-serif;
font-size: 30px;
font-weight: bold;
text-align: center;
line-height: 1.5em;
color: #1e2666;
display: block;
background: #fff;
margin-top: 20px;
padding: 10px 20px;
border-radius: 20px;
text-decoration: none;
}

@media (max-width: 500px){
.access li br { display: block; }
.access .module-title { font-size: 30px; }
.access .box .text h3 { font-size: 24px; }
.access .access_btn a { font-size: 20px; }
}



/*--------------------------------------------------------------
	採用情報
--------------------------------------------------------------*/
/* 担当者からのメッセージ　釣りバカ社長からひと言 */
.message .container { 
max-width: 900px; 
}
.message .module, .module-small { 
padding: 70px 0; 
background: rgb(31,38,103);
background: linear-gradient(90deg, rgba(31,38,103,1) 0%, rgba(0,64,152,1) 50%, rgba(31,38,103,1) 100%);
}
.message .module-title { 
font-family: 'Noto Sans JP', sans-serif; /* Google font */
font-size: 40px; 
color: #fff;
}
.message .module-title span { 
display: block;
width: 100%;
font-size: 18px;
text-align: center;
color: #fff;
border-top: 3px solid #fff;
margin-top: 5px;
padding-top: 5px;
}


.message .box01 {
display: flex; 
justify-content: space-between; 
border-bottom: 1px solid #fff; 
margin-bottom: 40px;
padding-bottom: 40px;
}
.message .box01 .text { width: 49%; }
.message .box01 .phot { width: 49%; margin-left: 2%; }
.message .box01 h3 { 
font-family: 'Noto Sans JP', sans-serif; /* Google font */ 
font-size: 24px;
font-weight: bold;
line-height: 1.5em;
color: #fff;
margin-bottom: 5px;
}
.message .box01 p { color: #fff; }


.message .box02 {
display: flex; 
justify-content: space-between; 
border-bottom: 1px solid #fff; 
padding-bottom: 40px;
}
.message .box02 .text { width: 69%; margin-left: 2%; }
.message .box02 .phot { width: 29%; }
.message .box02 h3 { 
font-family: 'Noto Sans JP', sans-serif; /* Google font */ 
font-size: 24px;
font-weight: bold;
line-height: 1.5em;
color: #fff;
margin-bottom: 5px;
}
.message .box02 p { color: #fff; }
.message .box02 p strong {
font-family: 'Noto Sans JP', sans-serif; /* Google font */ 
font-size: 18px;
}


@media (max-width: 767px){
.message .container { max-width: 700px; }

.message .box01 { display: block; }
.message .box01 .text { width: 100%; margin-bottom: 20px; }
.message .box01 .phot { width: 100%; margin-left: 0; }

.message .box02 { flex-direction: column-reverse; }
.message .box02 .text { width: 100%; margin-bottom: 20px; margin-left: 0; }
.message .box02 .phot { width: 100%; }
}
@media (max-width: 500px){
.message .module-title { font-size: 30px; }
}



/* ガス工事の作業内容 */
.work .container { 
max-width: 900px; 
}
.work .module, .module-small { 
padding: 70px 0; 
background: rgb(31,38,103);
background: linear-gradient(90deg, rgba(31,38,103,1) 0%, rgba(0,64,152,1) 50%, rgba(31,38,103,1) 100%);
}
.work .module-title { 
font-family: 'Noto Sans JP', sans-serif; /* Google font */
font-size: 40px; 
color: #fff;
}
.work .module-title span { 
display: block;
width: 100%;
font-size: 18px;
text-align: center;
color: #fff;
border-top: 3px solid #fff;
margin-top: 5px;
padding-top: 5px;
}
.work .sp01 { margin-top: 140px; }


.work .box01 {
display: flex; 
justify-content: space-between; 
border-bottom: 1px solid #fff; 
margin-bottom: 40px;
padding-bottom: 40px;
}
.work .box01 .text { width: 49%; }
.work .box01 .phot { width: 49%; margin-left: 2%; }
.work .box01 h3 { 
font-family: 'Noto Sans JP', sans-serif; /* Google font */ 
font-size: 24px;
font-weight: bold;
line-height: 1.5em;
color: #fff;
margin-bottom: 5px;
}
.work .box01 p { color: #fff; }


.work .summary { background: #D5E2F7; margin-top: 70px; padding: 20px; }

.work .box02 {
display: flex; 
justify-content: space-between;
border-bottom: 1px solid #111;
margin-bottom: 20px;
padding-bottom: 20px;
}
.work .box02:last-child {
border-bottom: none;
margin-bottom: 0;
padding-bottom: 0;
}
.work .box02 .text { width: 69%; }
.work .box02 .phot { width: 29%; margin-left: 2%; }
.work .box02 h3 { 
font-family: 'Noto Sans JP', sans-serif; /* Google font */ 
font-size: 24px;
font-weight: bold;
line-height: 1.5em;
color: #fff;
margin-bottom: 20px;
}
.work .box02 p { color: #111; }


@media (max-width: 767px){
.work .container { max-width: 700px; }

.work .box01 { display: block; }
.work .box01 .text { width: 100%; margin-bottom: 20px; }
.work .box01 .phot { width: 100%; margin-left: 0; }
	
.work .box02 { display: block; }
.work .box02 .text { width: 100%; margin-bottom: 20px; }
.work .box02 .phot { width: 100%; margin-left: 0; }
.work .box02 .phot img { display: block; margin: 0 auto; }
}
@media (max-width: 500px){
.work .module-title { font-size: 30px; }
}



/* イベント */
.event .container { 
max-width: 700px; 
}
.event .module, .module-small { 
padding: 70px 0; 
background: rgb(31,38,103);
background: linear-gradient(90deg, rgba(31,38,103,1) 0%, rgba(0,64,152,1) 50%, rgba(31,38,103,1) 100%);
}
.event .module-title { 
font-family: 'Noto Sans JP', sans-serif; /* Google font */
font-size: 40px; 
color: #fff;
}
.event .module-title span { 
display: block;
width: 100%;
font-size: 18px;
text-align: center;
color: #fff;
border-top: 3px solid #fff;
margin-top: 5px;
padding-top: 5px;
}


.event .box01 .home-section { 
max-width: 500px;
max-height: 300px;
margin: 0 auto;
}
.event .box01 .hero-slider,.hero-slider .flex-viewport { 
max-height: 300px; 
}
.event .box01 .hero-slider .slides { 
max-height: 300px; 
}
.event .box01 .hero-slider .slides li:nth-child(1) { background-image: url(../images/recruit/event_slider_01.jpg); }
.event .box01 .hero-slider .slides li:nth-child(2) { background-image: url(../images/recruit/event_slider_02-2.jpg); }
.event .box01 .hero-slider .slides li:nth-child(3) { background-image: url(../images/recruit/event_slider_03-2.jpg); }
.event .box01 .hero-slider .slides li:nth-child(4) { background-image: url(../images/recruit/event_slider_04.jpg); }
.event .box01 .hero-slider .slides li:nth-child(5) { background-image: url(../images/recruit/event_slider_05.jpg); }
.event .box01 p { color: #fff; margin-bottom: 20px; }

@media (max-width: 767px){	
.event .container { max-width: 700px; }	

.event .box01 .home-section { 
max-width: 100%;
max-height: 50vw; 
}
.event .box01 .hero-slider,.hero-slider .flex-viewport { 
max-height: 50vw; 
}
.event .box01 .hero-slider .slides { 
max-height: 50vw; 
}
.event .box01 .flex-control-nav { 
bottom: 0; 
}
}
@media (max-width: 500px){
.event .module-title { font-size: 30px; }
}



/* お問合せ */
.contact .container { 
max-width: 900px; 
}
.contact .module, .module-small { 
padding: 70px 0; 
background: rgb(31,38,103);
background: linear-gradient(90deg, rgba(31,38,103,1) 0%, rgba(0,64,152,1) 50%, rgba(31,38,103,1) 100%);
}
.contact .module-title { 
font-family: 'Noto Sans JP', sans-serif; /* Google font */
font-size: 40px; 
color: #fff;
}
.contact .module-title span { 
display: block;
width: 100%;
font-size: 18px;
text-align: center;
color: #fff;
border-top: 3px solid #fff;
margin-top: 5px;
padding-top: 5px;
}

.contact .box01 a { 
font-family: 'Noto Sans JP', sans-serif; /* Google font */ 
font-size: 30px;
font-weight: bold;
text-align: center;
line-height: 1.5em;
color: #1e2666;
display: block;
max-width: 500px;
background: #fff;
margin: 0 auto;
padding: 10px 20px;
border-radius: 20px;
}

.contact .box01 a span br { display: none; }

@media (max-width: 767px) {
.contact .container { max-width: 700px; }	
}

@media (max-width: 500px) {
.contact .module-title { font-size: 30px; }
.contact .box01 a { font-size: 20px; }
.contact .box01 a span br { display: block; }
}



/*--------------------------------------------------------------
	back
--------------------------------------------------------------*/
.back_01 .testimonial { background-image: url(../images/back_01.jpg); }
.back_02 .testimonial { background-image: url(../images/back_02.jpg); }
.back_03 .testimonial { background-image: url(../images/back_03.jpg); }

@media (max-width: 767px) {
.parallax-bg { background-attachment: local; }
}



/*--------------------------------------------------------------
	footer
--------------------------------------------------------------*/
.footer { padding-top: 0; }
.copyright { text-align: center; color: #fff; }
.bg-green { 
background: rgb(31,38,103);
background: linear-gradient(90deg, rgba(31,38,103,1) 0%, rgba(0,64,152,1) 50%, rgba(31,38,103,1) 100%);
}



/*--------------------------------------------------------------
	animation
--------------------------------------------------------------*/
.fadeUp{
animation-name:fadeUpAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(100px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}


/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
 
.fadeUpTrigger{
    opacity: 0;
}


