﻿@charset "utf-8";
body {
	-webkit-text-size-adjust: 100%;
	font-size: 14px;
}
img { width:100%; height: auto; }
.sp { display: block; }
.pc { display: none; }

#wrap { min-width:0; margin-top: 60px; }

.f_l ,
.f_r { float: none; }

/* =============================== common =============================== */

.sec { padding: 40px 0; }
.sec_t { padding: 40px 0 0; }
.sec30 { padding: 15px 0; }
.sec50 { padding: 25px 0; }
.inbox { width: 90%; margin-left: 5%; margin-right: 5%; }
.inbox_in { width: 94%; margin-left: 3%; margin-right: 3%; }

.bg01 { background: url(../img/bg_02.jpg); }

.btn01 a {
  background: url(../img/icon_arrow_01.png) no-repeat right 20px center #0068b7;
  background-size: 2%;
  width: 100%;
  line-height: 1;
  padding: 14px 0;
  transition: .3s;
}
.btn01 a:hover {
  background: url(../img/icon_arrow_01.png) no-repeat right 20px center #0068b7;
  background-size: 2%;
  color: #fff;
}

.ttl01 {
  font-size: 28px;
  margin-left: auto;
  margin-right: auto;
  display: block;
}
.ttl01_sub {
  text-align: center;
}
.ttl01_sub span {
  font-size: 14px;
  display: inline-block;
  padding-bottom: 10px;
}

.ttl02 {
  font-size: 18px;
  color: #0068b7;
  padding-bottom: 10px;
  border-bottom: 2px solid #333;
  text-align: left;
  font-weight: normal;
  font-style: italic;
}
.ttl02_sub {
  font-size: 12px;
  margin-left: 10px;
  font-style: normal;
}

.ttl03 {
  font-size: 18px;
  color: #0068b7;
  font-weight: bold;
  text-align: center;
  padding-bottom: 14px;
  background:url(../img/icon_border_03.png) no-repeat center bottom;
}
.ttl04 {
  font-size: 16px;
  font-weight: bold;
  text-align: left;
  padding: 10px 0 10px 20px;
  background: #eee;
}
.ttl05 {
  text-align: center;
  padding: 14px 0;
  color: #0068b7;
  font-size: 16px;
  font-weight: bold;
  background: #ededf3;
}
.ttl06 {
  text-align: left;
  border-bottom: 2px solid #0068b7;
  font-size: 20px;
  font-weight: bold;
  padding-bottom: 8px;
  width: 95%;
}

.ico01 { background: url(../img/icon_border_02.png) no-repeat top left; padding-top: 20px;}

.acc dd { display: none; }


/* =============================== header =============================== */

#header_inner { width: 100%; background: #fff; height: 60px; position: fixed; top: 0; z-index: 1000; }
header h1 { position: absolute; left: 6px; top: 18px; width:230px; }
header #h_tel ,
header #h_contact { display:none; }
header #sp_menu { display:block; width:60px; position: absolute; top:0; right: 0; }
#header_inner h1 img {
    width: 70%;
}

/* =============================== gnav =============================== */

#gnav { display: none; }


/* =============================== footer =============================== */

footer { width: 100%; padding-top: 1.5em; border-top:6px solid #0068b7;  }
footer #fnav { display: none; }
footer #f_logo { width: 66%; margin: 0 auto; }

#copyright { font-size: 10px; padding: 1.5em 0 3em; }


/* =============================== contents =============================== */

#contents { margin-bottom: 3em; }
#contents.sub { margin-bottom: 5em; }


/* =============================== mainslider =============================== */

#mainslide { position: relative; /*margin-bottom: 40px;*/ }
#mainslide .maincopy {
  position: absolute;
  top: 26%;
  right: 0%;
	-webkit-transform: translate(0%, -50%);
	transform: translate(0%, -50%);
  color: #fff;
  font-size: 14px;
  line-height: 160%;
  display: inline-block;
  width: 26%;
  padding: 0;
  text-align: center;
  background: rgba(0,104,183,.9);
  letter-spacing: .1em;
  z-index: 100;
}
#mainslide .maincopy a {
  color: #fff;
  display: block;
  padding: 7px 0;
}

.mainslider-for ,
.mainslider_navbox ,
.mainslider-nav { display: none !important; }

.mainslider-sp { width: 100%; position: relative; }
.mainslider-sp .slick-dots { display: none !important; }

.slide-dots {
  width: 100%;
  position: absolute;
  bottom: -30px;
}
.slide-dots button {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.slide-dots {
  text-align: center;
  width: 100%;
  margin: 0 auto;
}
.slide-dots ul { letter-spacing: -.4em; }
.slide-dots li {
  display: inline-block;
  letter-spacing: normal;
  margin: 0 15px;
}
.slide-dots li button {
  position: relative;
  text-indent: -9999px;
}
.slide-dots li button:before {
  content: '●';
  font-size: 1.4em;
  color:#ccc;
  text-indent: 0px;
  position: absolute;
  top: 0;
  left: 0;
}
.slide-dots li.slick-active button:before {
  color:#0068b7;
}


/* =============================== content =============================== */

#top_about p { font-size: 14px; line-height: 180%; }
#top_about .tx_c { text-align: left; }
#top_about iframe {
    width: 100%;
}

#top_business .bs_slidebox { width: 98%; margin: 0 auto;}
#top_business .bs_slidebox .box {
  width: 100%;
  box-sizing: border-box;
  padding: 4px 0 20px;
  margin: 8px 0.4%;
  background: #fff;
  box-shadow:0px 0px 6px 4px rgba(0,0,0,0.08);
}
#top_business .bs_slidebox .box a img { margin: 0 2%; width: 96%; }
#top_business .bs_slidebox .box p {
  margin-top: 10px;
  background: url(../img/icon_arrow_02.png) no-repeat left 4px center;
  font-size: 13px;
  background-size:10px;
  padding-left: 20px;
}
#top_business .bs_slidebox .box a:hover img {
  opacity: 1;
  transition: 1;
}
#top_business .bs_slidebox .box a:hover p {
  background: url(../img/icon_arrow_02.png) no-repeat left 4px center;
  opacity: 1;
  text-decoration: none;
}

/*hover caption kaiten*/
figcaption { display: none; }
figure:hover figcaption { display: none; }


#top_works .copy01 { font-size: 14px; }
#top_works li { margin-right: 0; margin-bottom: 10px; }
#top_works li:last-child { margin-bottom: 0; }
#top_works .on ,
#top_works li:hover .on {
  min-width: 0;
  width: 48%;
  padding: 20px 0;
}
#top_works .on h3 { color: #fff; font-size: 16px; line-height: 1; }
#top_works .on p ,
#top_works li:hover .on p { display: none; }
#top_works li:hover .on h3 {
  margin-bottom: 0;
  padding-bottom: 0;
  background: none;
}
#top_works .copy01, #top_sns .copy01 {
    font-size: 14px;
    text-align: left;
    width: 90%;
    margin: 0 auto 30px;
}

#top_block.sec { padding-top: 20px; }

#top_topics { width: 100%; margin-bottom:40px; }
#top_topics h2 .ttl02_sub { display: block; }
#top_topics h2 .ttl02_link { float: right; margin-top: -20px; }
#top_topics h2 .ttl02_link a {
  background: url(../img/icon_arrow_03.png) no-repeat left center;
  background-size: 12px;
  padding-left: 18px;
  font-style: normal;
}
#top_topics h2 .ttl02_link a:hover {
  background: url(../img/icon_arrow_03.png) no-repeat left center;
  background-size: 12px;   
}
#top_topics ul { width: 90%; margin-left: auto; margin-right: auto; }
#top_topics li a { transition: .3s; display: block; padding: 20px 0; }
#top_topics li a:hover { opacity: 1; }
#top_topics li:last-child { border-bottom: 1px solid #ddd; }
#top_topics li .ph { width: 20%; }
#top_topics li .txt { width: 74%; margin-left: 4%; }
#top_topics li .date { margin-bottom: 5px; font-size: 11px; }
#top_topics li .tag { 
  padding: 3px 15px;
  line-height: 1;
  font-size: 10px;
  margin-left: 10px;
}
#top_topics li .ttl_txt { font-size: 13px; }


#top_recruit { width: 100%; }
#top_recruit p { font-size: 14px; line-height: 160%; }
#top_recruit .copy01 { font-size: 14px; }
#top_recruit .btn01 a { width: 100%; font-size: 12px; }

div#top_sns_box {
    display: block;
    width: 100%;
}
#top_sns_box iframe {
    width: 90%;
}
div#top_sns_box img {
    width: 90%;
}
#top_about video {
	width: 100%;
}