@charset "UTF-8";

/* ****************************************************
Title: base.css
***************************************************** */
a:link    {cursor: pointer; }
a:visited {  }
a:hover   {  }
a:active  {  }

h1 {  }



/* # body
---------------------------------------------------------------------------- */
body {
}


/* # header
---------------------------------------------------------------------------- */
#header {width: 100%;
  background-color: #09204D;
  padding: 10px 0;
  z-index: 10;
  position: fixed;
  top:0;
  box-sizing: border-box;
}

#header #logo {
  margin-left: 10px;
}

#header .head_nav {
  width: 100%;
  margin: 0 auto;
}

#header .head_nav #nav{

  width: 100%;
}

#header .head_nav #nav > ul > li {
  text-align: center;
  line-height: 1.2;
  margin-left: 1.5em;
  margin-right: 1.5em;
}
#header .head_nav #nav li#logo {
  margin-right: auto;
  text-align: left;
}

#header .head_nav #nav li#logo img {
  width: 85%;
}


#header .head_nav #nav li span {
  display: block;
}

#header .head_nav #nav li .en {
  letter-spacing: 0.05em;
  margin-bottom: .5em;
}

#header .head_nav #nav li .ja {
  font-size: 80%;
  letter-spacing: 0.05em;
}

#header .head_nav #nav li .anchor a {
  text-decoration: none;
  color: #fff;
  padding: 22px 0;
  cursor: pointer;
}

#header .head_nav #nav li .anchor:hover {
  color: #ccc;
}


#header .head_nav #nav li.sns {

}
#header .head_nav #nav li.sns a {
  color: #fff;
  margin-left: 15px;
  font-size: 300%;
}


#header .sns #com_name {
  font-size: 80%;
  color: #fff;
  margin-bottom: 5px;
}

#header .sns ul a i {
  color: #fff;
  font-size: 100%;
  margin-left: 10px;
}

.menu > ul > li > ul > li.nav_head {
  width: 900px;
margin: 0 auto;
text-align: left;
padding-bottom: 1em;
margin-bottom: 1em;
border-bottom: 1px #ccc solid;
color: #333;
font-weight: bold;
}

.menu > ul > li > ul  li.nav_child {
  margin-right: 30px;
  font-size:90%;
}
.menu > ul > li > ul  li.nav_child a {
  color:#333;
  margin-right: 10px;
  text-decoration: underline;
}

.menu > ul > li > ul  li.nav_child a:hover {
  color: #999;
  text-decoration: none;
}

/* # gNavi
---------------------------------------------------------------------------- */
#nav {
}


#va2 {width: 100%;margin:0 auto 100px; position: relative;}
#va2 img {width: 100%;}

.slick-dots {bottom: 30px;}
.slick-dots li {margin: 0 10px;}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before
{
    opacity: 1;
    color: #fff;
}
.slick-dots li button:before {font-size: 14px;color: #6e6e6f; opacity: 1;}
.slick-dots li.slick-active button:before {color: #fff;opacity: 1;}

.slideArea{position: relative;}

.iconScrol{position: absolute; bottom: 10px; left: 50%; transform: translateX(-50%); -webkit-transform:translateX(-50%); z-index: 100;}

.iconScrol p{ color: #fff; text-align: center; border: 2px #fff solid; border-radius: 50%; width: 4em; height: 4em; line-height: 4em; position: relative; font-size: 80%;}

.iconScrol p::after{
  content: "\f107";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  left: 50%;
  bottom: -1em;
  transform: translateX(-50%);
  -webkit-transform:translateX(-50%);
  animation: scroll 2s ease-out infinite;
}

@keyframes scroll{
  40%{
    opacity: 1;
    transform: translateY(0) translateX(-50%);
  }
  80%{
    opacity: 1;
    transform: translateY(.8em) translateX(-50%);
  }
  100%{
    opacity: 0;
    transform: translateY(1em) translateX(-50%);
  }
}

/* # pageBody
---------------------------------------------------------------------------- */

#pagebody,
#footer  {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}
#pagebody,
#footer {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}
#pagebody,
#footer {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}
#pagebody,
#footer {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}
#pagebody,
#footer {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}


#pagebody .fadein,
#footer.fadein {
  opacity : 0;
  transform: translateY(20px);
  transition: all 1s;
}



/* # content
---------------------------------------------------------------------------- */


body#secondary #pagebody {
}

body#secondary #pagebody h1.cont_bar{
  font-size: 150%;
  font-weight: bold;
  margin-bottom: 50px;
}

body#secondary #pagebody h1.cont_bar span{
  background: linear-gradient(transparent 60%, #E3E8E9 60%);
}


body#secondary .header_c {
  background-color: #ffffff;
  height: 30px;
  overflow: hidden;
}
body#secondary .hc_side {
  width: 270px;
  box-sizing: border-box;
}
body#secondary .header_c .hc_side {
  background-color: #BFC6CD;
  height: 30px;
}
body#secondary .c_headarea {
}
body#secondary .c_headarea .head_des {
  height: 300px;
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size: cover;
  box-sizing: border-box;
  color: #2B2B2B;
}

body#secondary .company .c_headarea .head_des {

}
body#secondary .business .c_headarea .head_des {
  background-image: url(../img/common/business_bg.png);
}
body#secondary .project .c_headarea .head_des {
  background-image: url(../img/common/project_bg.png);
}
body#secondary .contact .c_headarea .head_des {
}
body#secondary .gallery .c_headarea .head_des {
}
body#secondary .news .c_headarea .head_des {
  background-image: url(../img/common/news_bg.png);
}
body#secondary .notfound .c_headarea .head_des {
  background-image: url(../img/common/nf_bg.png);
}
body#secondary .info .c_headarea .head_des {
}
  
body#secondary .c_headarea .head_des h2.en {
  font-size: 200%;
  font-weight: 600;
  padding-top: 100px;
  line-height: 1.8;
}
body#secondary .c_headarea .head_des h1.ja {
  font-weight: 600;
  font-size: 120%;
  letter-spacing: 0.05em;
}
body#secondary #contents {
  background-color: #FFF;
}
body#secondary .contents_area {
  flex-direction: row-reverse;
  color: #333;
}

body#secondary .pankuzu {
  margin-bottom: 20px;
  margin-top: 120px;
  font-size: 90%;
}

body#secondary .content_acf .pankuzu {
  margin-bottom: 20px;
  margin-top: 0;
  font-size: 90%;
}

body#secondary .pankuzu li {
  margin-right: 5px;
  color: #666;
}

body#secondary .pankuzu li a {
  color: #707070;
  text-decoration: none;
}

body#secondary .pankuzu li a:hover{
   text-decoration: none;
 }
body#secondary .text_area {
  box-sizing: border-box;
  padding: 100px 0 90px;
  background-color: #fff;
}

body#secondary .content_acf .text_area{
	padding:3%;
}


body#secondary #contents .totop {
  text-align: right;
  margin-top:40px;
  padding-bottom: 40px;
}

body#secondary #contents .totop a {
  color: #707070;
  text-decoration: none;
}
body#secondary #contents .totop a:hover {
  text-decoration: underline;
}

/* # footer
---------------------------------------------------------------------------- */
#footer .com_link_area {
  background: #09204D;
  padding: 70px 0;
}

#footer .com_link_area .flex{
  align-items: flex-start;
  justify-content: space-between;
}

footer .com_link_area .flex .mr40{
  margin-right: 40px;
}

#footer .com_link_area .f_cont .f_com_info {
  color: #FFF;
  padding-right: 50px;
  margin-right: 100px;
}
#footer .com_link_area .f_cont .f_com_info h1 {
  font-size: 120%;
}
#footer .com_link_area .f_cont .f_com_info p{
  font-size: 100%;
}
#footer .com_link_area .f_cont .f_com_info .com_add{
  white-space: nowrap;
}
#footer .com_link_area .f_cont .f_com_info .relation a{
  color: #FFF;
  text-decoration: none;
}
#footer .com_link_area .f_cont .f_com_info .relation a:hover{
  text-decoration: underline;
}
#footer .com_link_area .f_cont .f_page_link{
  width: 810px;
}
#footer .com_link_area .f_cont .f_page_link nav ul {

}

#footer .com_link_area .f_cont .f_page_link nav ul li{
  font-size: 85%;
  margin-bottom: 5px;
  font-weight: 400;
}

#footer .com_link_area .f_cont .f_page_link nav ul li:last-child{
  margin-bottom: 0px;
}
#footer .com_link_area .f_cont .f_page_link nav ul .top_nav {
  font-size: 100%;
  font-weight: 600;
  color: #FFF;
  text-decoration: none;
}
#footer .com_link_area .f_cont .f_page_link nav ul li  a {
  color: #FFF;
  text-decoration: none;
}
#footer .com_link_area .f_cont .f_page_link nav ul li a:hover {
  text-decoration:underline;
}

#footer .com_link_area .f_cont .f_page_link nav ul.other_link li{
  margin-bottom: 10px}

#footer .com_link_area .f_cont .f_page_link nav ul.other_link li a{
  background:#fff;
  color: #5E6F7D;
  position: relative;
  padding: 10px 40px 10px 20px;
}

#footer .com_link_area .f_cont .f_page_link nav ul.other_link li.mem{
  display: none;
}

#footer .com_link_area .f_cont .f_page_link nav ul.other_link li a span {
  display: block;
}
#footer .com_link_area .f_cont .f_page_link nav ul.other_link li a i{
font-size: 240%;
margin-right: 13px;
}
#footer .com_link_area .f_cont .f_page_link nav ul.other_link li a:hover {
  text-decoration: none;
  opacity: 0.7;
}
#footer .com_link_area .f_cont .f_page_link nav ul.other_link li.mem a i{
transform: rotate(-45deg);
}
#footer .com_link_area .f_cont .f_page_link nav ul.other_link li a span.ja {
  font-size: 120%;
}
#footer .com_link_area .f_cont .f_page_link nav ul.other_link li a span.en{
  font-size: 70%;
}


#footer .f_bs_link {
  background: #FFF;
  padding: 20px 0;

}

#footer .f_bs_link .flex.jc_sb.w1000 {
  align-items: center;
}

#footer .f_bs_link nav#f_navi {
  width: 65%;
}

#footer .f_bs_link nav#f_navi ul {
  width: 100%;
  align-items: center;
}
#footer .f_bs_link nav#f_navi ul li {
  width: 23%;
}
#footer .f_bs_link nav#f_navi ul li img {
  width: 100%;
}
#footer .f_bs_link nav#f_navi ul li a:hover {
  opacity: 0.7;
}

#footer .f_bs_link #f_cont2{
  font-size: 80%;
  width: 100%;
}
#footer .f_bs_link #f_cont2 .sm_pp{
  display: none;
}
#footer .f_bs_link #f_cont2 ul {
  justify-content: flex-end;
}
#footer .f_bs_link #f_cont2 ul li.sitemap a {
  padding-right: 10px;
  margin-right: 10px;
  border-right: 1px #fff solid;
}
#footer .f_bs_link #f_cont2 a{
  color: #fff;
  text-decoration: none;
}
#footer .f_bs_link #f_cont2 a:hover {
  text-decoration:underline;
}
#footer .f_bs_link .address {
  text-align: center;
  color: #09204D;
  padding:0;
  width: 30%;
  text-align: right;
  font-size: 80%;
}

.f_bs_link .flex {
  align-items: center;
}

.font_b{font-weight: 600;}


/* # lNavi
---------------------------------------------------------------------------- */
#f_nav {
}



/* その他
---------------------------------------------------------------------------- */
.bold{font-weight:bold;}
.red {color:red;}
.yellow{color:#FFFFBF;}
.gray {color:#555;}
.lh18{line-height: 1.8;}
.ls3{letter-spacing: 0.18em;}
.fl {float:left;}
.fr {float:right;}
.stxt {font-size:80%;}
.sstxt {font-size:75%;}
.mstxt{font-size: 90%;}
.mtxt {font-size:115%;}
.mltxt {font-size:125%;}
.ltxt {font-size:150%;}
.w900 {width:900px; margin: 0 auto;}
.w960 {width:960px; margin: 0 auto;}
.w1000 {width:1000px; margin: 0 auto;}
.w1100 {width:1100px; margin: 0 auto;}
.w1200 {width:1200px; margin: 0 auto;}
.w100{width:100%;}
.dc {display:block; text-align:center;}
.ma {margin-left: auto; margin-right: auto;}
.flex {display: -moz-flex;display: -ms-flex;display: -o-flex;display: -webkit-box;display: -ms-flexbox;display: flex;}
.jc_sb {-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;}
.jc_sa {-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-around;}
.jc_ce {-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;}
.fl_wp {flex-wrap:-webkit-wrap; flex-wrap:-moz-wrap;-ms-flex-wrap:-ms-wrap;flex-wrap:-ms-wrap;flex-wrap:wrap;}
.ai_ce{  -webkit-box-align: center;  -ms-flex-align: center;  align-items: center;}
.txtc {text-align:center;}
body .sp {display: none;}
.pc_none {display:none;}
.center_center{display: flex; align-content: center; justify-content: space-around;}

/* ----------------------------------------
  マージン設定
---------------------------------------- */
.mb0{margin-bottom:0px !important;}.mb5{margin-bottom:5px !important;}
.mb10{margin-bottom:10px !important;}.mb15{margin-bottom:15px !important;}
.mb20{margin-bottom:20px !important;}.mb30{margin-bottom:30px !important;}
.mb35{margin-bottom:35px !important;}.mb40{margin-bottom:40px !important;}
.mb45{margin-bottom:45px !important;}.mb50{margin-bottom:50px !important;}
.mb55{margin-bottom:55px !important;}.mb60{margin-bottom:60px !important;}
.mb65{margin-bottom:65px !important;}.mb70{margin-bottom:70px !important;}
.mb75{margin-bottom:75px !important;}.mb80{margin-bottom:80px !important;}
.mb85{margin-bottom:85px !important;}.mb90{margin-bottom:90px !important;}
.mb95{margin-bottom:95px !important;}.mb100{margin-bottom:100px !important;}

/* clearfix
---------------------------------------------------------------------------- */

.clearfix:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*¥*//*/
  height: auto;
  overflow: hidden;
  /**/
}

@media screen and (max-width: 740px) {

body .pc {display: none;}
body .sp {display: block;}


body.second #pagebody {background-size: cover;}
.w900 {width:100%;box-sizing: border-box;}
.w960 {width:100%;box-sizing: border-box;}
.w1000 {width:100%;box-sizing: border-box;}
.w1100 {width:90%;box-sizing: border-box;}
.w1200 {width:100%;box-sizing: border-box;}
	.w800 {width:90%;box-sizing: border-box;}
.flexsp {display: -moz-flex;display: -ms-flex;display: -o-flex;display: -webkit-box;display: -ms-flexbox;display: flex;}
.jc_sbsp {-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;}
.jc_sasp {-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-around;}
.jc_cesp {-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;}
.fl_wpsp {flex-wrap:-webkit-wrap; flex-wrap:-moz-wrap;-ms-flex-wrap:-ms-wrap;flex-wrap:-ms-wrap;flex-wrap:wrap;}
	.fai_center{align-items:center;}
.ai_ce{  -webkit-box-align: center;  -ms-flex-align: center;  align-items: center;}


/* header 
===================*/
#header .head_nav #nav .logoham{
padding: 2px 10px 2px 5px;
box-sizing: border-box;
}
#header .head_nav #nav #splogo {
width: 50%;
}
#header .head_nav #nav #splogo img {
width: 100%;
}

#header .head_nav #nav li#logo {
display: none;
}

#header .head_nav #nav > ul > li {
margin-left: 0;
margin-right: 0;
text-align: left;
}

#header .head_nav #nav > ul > li span {
padding-left: 20px;
}
#header .head_nav #nav > ul{
border-top: solid 1px #ccc;
}

#header .head_nav #nav li .anchor {
padding: 1.01em 0;
border-bottom: solid 1px #ccc;
}

.menu > ul > li > ul {
padding: 20px 20px 5px 20px;
}

.menu > ul > li > ul > li.nav_head{
width: 100%;
margin-bottom: 0;
}

.menu > ul > li > ul li.nav_child {
margin-right: 0;
width: 100%;
box-sizing: border-box;
padding-right: 1.5em;
border-bottom: solid 1px #ccc;
}

.menu > ul > li > ul li.nav_child:last-child{
border-bottom: none;
}

.menu > ul > li > ul li.nav_child  a{
text-decoration: none;
}

#header .sns #com_name {
display: none;
}

#header .sns .fr {
float: none;
}

#header .sns .fr div {
width: 50%;
}
#header .head_nav #nav li.sns a {
margin-left: 0;
padding: 1.5em 0;
}

#header .head_nav #nav li.sns a i {
font-size: 200%;
text-align: center;
display: block;
}


/* va
======================*/
#va2 {
margin: 50px auto 20px;
}

/* secondary
======================*/
body#secondary .pankuzu{
  margin-bottom: 0px;
  margin-top: 70px;
  padding: 0 20px;
}

body#secondary .contents_area{width: 95%;}
body#secondary .text_area{padding: 50px 5%;}
body#secondary .section{width: 100%;line-height: 1.8;}

body#secondary #contents .totop{
  text-align: center;
  margin-top: 0;
  padding-bottom: 0;
}
body#secondary #contents .totop a {
  padding: 20px 0;
  display: block;
}
  
body#secondary .c_headarea .head_des {
  height: 200px;
}


  
body#secondary .c_headarea .head_des h2.en {
  padding-top: 50px;
}


/* Footer 
======================*/
#footer .com_link_area {
padding: 30px 20px;
}

#footer .com_link_area .f_cont .f_com_info {
padding-right: 0;
margin-right: 0;
border-right:none;
text-align: center;
width: 100%;
margin-bottom: 20px;
}

#footer .com_link_area .f_cont .f_page_link nav ul{
width: 48%;
margin-bottom: 20px;
}


  
#footer .com_link_area .f_cont .f_page_link nav ul .top_nav{
font-weight: bold;
}

#footer .com_link_area .f_cont .f_page_link nav ul li{
font-size: 90%;
}

#footer .com_link_area .f_cont .f_page_link nav ul li a {
display: block;
width: 100%;
border-bottom: #ccc dotted 1px;
box-sizing: border-box;
padding: 0 0 3px 10px;
}


#footer .com_link_area .f_cont .f_page_link nav ul.other_link{
width:100%;
}

#footer .com_link_area .f_cont .f_page_link nav ul.other_link li a {
display: flex;
}

#footer .f_bs_link {
padding: 20px;
}
#footer .f_bs_link nav#f_navi ul{
width:100%;
margin-bottom: 10px;
flex-wrap: wrap;
}

#footer .f_bs_link nav#f_navi ul li{
width: 49%;
margin-bottom: 10px;
}

#footer .f_bs_link #f_cont2 {
width: 100%;
}
#footer .f_bs_link #f_cont2 .address{
text-align: center;
}
  

h2.title_agency {
    font-size: 16px;
    padding-left: 8px;
}
.bukken_dl_tel_waku.flex,.flex.f_contact {
    flex-wrap: wrap;
}
.left_box {
    width: 100%;
}
.bukken_dl_tel_waku_left {
    width: 100%;
}
.bukken_dl_tel_waku_center {
    width: 100%;
}
.left_box h3 {
  height: 50px;
  line-height: 50px;
}
.sakura_list li {
    width: 100%;
    margin-right: 0%;
}
  
.p_right {
  position: relative;
  display: block;
}
span.bigger {
    display: block;
    line-height: 1.2;
}
.col4 {
    width: 50%;
    margin: 20px auto;
}
.contact_area {
    width: 100%;
    text-align: left;
}
  
.mb100{
  margin-bottom: 30px!important;
}
  
.mb50{margin-bottom: 20px!important;}

}