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


/*---------------------------------
article
---------------------------------*/
.main_images01{
    width: 100%;
    min-width: 1100px;
    height: 587px;
    overflow: hidden;
    background: url("../img/main_top_1.png") no-repeat center;
    background-size: cover;
}
.main_images02{
    width: 100%;
    min-width: 1100px;
    height: 587px;
    overflow: hidden;
    background: url("../img/main_top_2.png") no-repeat center;
    background-size: cover;
}
.main_images03{
    width: 100%;
    min-width: 1100px;
    height: 587px;
    overflow: hidden;
    background: url("../img/main_top_3.png") no-repeat center;
    background-size: cover;
}
.main_img{
/*    text-align: left;*/
    width: 547px;
    height: 253px;
    position: absolute;
    top: 229px;
    left: 0px;
    background: url("../img/main_img_text.png") no-repeat left;
}

.sec01_main_title, .sec02_main_title, .sec03_main_title{
    color: #11559e;
    font-size: 36px;
    font-weight: 100;
    margin: 0 0 23px;
    font-family: "Noto Sans CJK JP" ;
}

/*---------------------------------
ボタンアニメーション
---------------------------------*/

.button01{
    display: inline-block;
    position: relative;
    z-index: 2;
    border: 2px solid #11559e;
    line-height: 45px;
    outline: none;
    overflow: hidden;
}
.button01:hover{
    background: #fff;
    border: 2px solid #11559e;
}
.button01 a:hover{
    color: #11559e;
}
.button01:before,
.button01:after{
    position: absolute;
	  z-index: -1;
	  display: block;
	  content: '';
    top: 0;
    left: -100%;
	  width: 100%;
	  height: 100%;
	  background-color: #fff;
}
.button01,
.button01:before,
.button01:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .5s;
	transition: all .5s;
}
.button01 a:before{
    right: 0;
}
.button01 a:after{
    left:0;
}
.button01:hover:before,
.button01:hover:after {
    left: 0;
}


.button02{
    position: relative;
    z-index: 2;
    border: 2px solid #11559e;
    outline: none;
    overflow: hidden;
}
.button02:hover{
    background: #fff;
    border: 2px solid #11559e;
}
.button02 a:hover{
    color: #fff;
}
.button02:before,
.button02:after{
    position: absolute;
	  z-index: -1;
	  display: block;
	  content: '';
    top: 0;
    left: -100%;
	  width: 100%;
	  height: 100%;
	  background-color: #11559e;
}
.button02,
.button02:before,
.button02:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .5s;
	transition: all .5s;
}
.button02 a:before{
    right: 0;
}
.button02 a:after{
    left:0;
}
.button02:hover:before,
.button02:hover:after {
    left: 0;
}

/*---------------------------------
アコーディオンナビ
---------------------------------*/
.service, .active_nav_service, .gnav_current_service,
.case, .active_nav_case, .gnav_current_case,
.propose, .active_nav_propose, .gnav_current_propose,
.company, .active_nav_company, .gnav_current_company,
.quality, .active_nav_quality, .gnav_current_quality,
.blog, .active_nav_blog, .gnav_current_blog{
    display: none;
}

#home_navbg{
    width: 100%;
    background: #fff;
    height: 48px;
    position: absolute;
    top: 151px;
    z-index: 60;
    display: none;
    box-shadow: 0 2px 10px 0;
}

/*
.home{
    background: #fff none repeat scroll 0 0;
    display: none;
    height: 48px;
    position: absolute;
    top: 151px;
    width: 100%;
    z-index: 52;
}
*/
/*
.active_nav_home{
    display: none;
    width: 100%;
    min-width: 700px;
    height: 49px;
    margin: 0 auto;
    background: #fff;
    box-shadow: 0px 0px 10px;
}
*/

/*---------------------------------
コンテンツ
---------------------------------*/
/*section 1*/
.sec01{
    background: url("../img/bg_01.png") no-repeat center;
    background-size: cover;
    width: 100%;
    min-width: 1100px;
    overflow: hidden;
    margin: 0 auto;
}
.sec01_contents01{
    width: 1000px;
    overflow: hidden;
    margin: 0 auto;
}
.sec01_left{
    float: left;
    width: 470px;
    overflow: hidden;
    margin: 98px 0 55px 0px;
}
.sec01_sub_title{
    color: #11559e;
    font-size: 19px;
    font-weight: bold;
    font-family: "Noto Sans CJK JP" ;
    line-height: 1.5;
    margin: 0 0 23px;
}
.sec01_text{
    line-height: 1.7;
    font-size: 16px;
    font-weight: 100;
    color: #444;
}


.sec01_btn{
    float: right;
    width: 167px;
    margin: 36px 0 0;
    background: #11559e;
}
.sec01_btn a{
    display: block;
    color: #fff;
    padding: 0 0 0 33px;
    font-size: 16px;
}
.sec01_btn a span:after{
    content: "\f105";
    font-family: "FontAwesome";
    position: relative;
    top: -1px;
    left: 10px;
}
.sec01_right{
    float: right;
    width: 480px;
    padding: 55px 0;
}

/*section 2*/
.sec02{
    background: url("../img/bg_02.png") no-repeat center;
    background-size: cover;
    width: 100%;
    min-width: 1100px;
    overflow: hidden;
    margin: 0 auto;
}
.sec02_contents01{
    margin: 50px 0;
}
.sec02_main_title{
    text-align: center;
}
.sec02_text{
    text-align: center;
    font-size: 16px;
    color: #92b1d2;
    font-family: "Montserrat";
    letter-spacing: 3px;
}
.sec02_contents02{
    width: 1000px;
    overflow: hidden;
    margin: 0 auto;
}
.sec02_contents02 ul{
    letter-spacing: -0.4em;
    margin: -10px -20px;
    position: relative;
}
.sec02_contents02 ul li{
    display: inline-block;
    letter-spacing: 0em;
    width: 25%;
    padding: 10px 20px;
    vertical-align: top;
    position: relative;
}
.sec02_contents02 ul li .box-inline{
    height: 165px;
    margin: 0 0 20px;
    overflow: hidden;
}
.sec02_contents02 ul li img{
    margin: 0 0 20px;
    
    -webkit-transition:all 0.25s ease-in-out;
    transition:all 0.25s ease-in-out;
}
.sec02_contents02 ul li:hover img{
    transform: scale(1.12,1.12);
        -webkit-transform:scale(1.12,1.12);
        -moz-transform:scale(1.12,1.12);
        -ms-transform:scale(1.12,1.12);
        -o-transform:scale(1.12,1.12);
}
.sec02_contents02 ul li a{
    box-sizing: border-box;
}
.sec02_contents02 ul li:hover .box-inline:after{
    border: 5px solid #11559e;
    content: "";
    height: 155px;
    left: 20px;
    position: absolute;
    top: 10px;
    width: 210px;
}
.sec02_contents02 ul li time{
    display: block;
    color: #11559e;
    font-family: "Roboto Condensed";
    font-weight: bold;
    letter-spacing: 0.1em;
    margin: 0 0 10px;
    font-size: 18px;
}
.sec02_contents02 ul li p{
    line-height: 1.4;
    font-size: 16px;
    color: #444;
}
.sec02_contents02 ul li:hover time,
.sec02_contents02 ul li:hover p{
    opacity: 0.7;
}
.sec02_contents03{
    margin: 55px 0;
}
.sec02_contents03 p{
    width: 217px;
    margin: 0 auto;
    border: 2px solid #11559e;
}
.sec02_contents03 p a{
    display: block;
    padding: 12px 15px;
    font-size: 15p;
    color: #00669e;
}
.sec02_contents03 p a:after{
    content: "\f105";
    font-family: "FontAwesome";
    position: relative;
    top: -1px;
    left: 10px;
}

/*section 3*/
.sec03{
    background: url("../img/bg_03.png") no-repeat center;
    background-size: cover;
    width: 100%;
    min-width: 1100px;
    overflow: hidden;
    margin: 0 auto;
}
.sec03_contents01{
    width: 1000px;
    overflow: hidden;
    margin: 0 auto;
}
.sec03_left{
    float: left;
    width: 480px;
    padding: 55px 0;
}
.sec03_right{
    float: right;
    width: 470px;
    overflow: hidden;
    margin: 98px 0 55px 0px;
}
.sec03_sub_title{
    color: #11559e;
    font-size: 19px;
    font-weight: bold;
    font-family: "Noto Sans CJK JP" ;
    line-height: 1.5;
    margin: 0 0 23px;
}
.sec03_text{
    line-height: 1.7;
    font-size: 16px;
    font-weight: 100;
    color: #444;
}
.sec03_btn{
    float: right;
    width: 167px;
    margin: 60px 0 0;
    background: #11559e;
}
.sec03_btn a{
    display: block;
    padding: 0 0 0 33px;
    font-size: 16px;
    color: #fff;
}
.sec03_btn a span:after{
    content: "\f105";
    font-family: "FontAwesome";
    position: relative;
    top: -1px;
    left: 10px;
}

/*section 4*/
.sec04{
    width: 100%;
    min-width: 1100px;
    height: 556px;
    overflow: hidden;
    margin: 0 auto;
    background: #f9f9f3;
}
.sec04_contents01{
    width: 1000px;
    overflow: hidden;
    margin: 0 auto;
}
.sec04_left{
    float: left;
    width: 454px;
    overflow: hidden;
    margin: 73px 0 0px;
}
.sec04_main_title{
    color: #11559e;
    font-size: 28px;
    font-weight: 100;
    margin: 0 0 15px;
    font-family: "Noto Sans CJK JP" ;
}
.sec04_text01{
    font-size: 16px;
    color: #92b1d2;
    font-family: "Montserrat";
    letter-spacing: 3px;
    width: 100px;
    float: left;
}
.sec04_text02{
    font-size: 13px;
    color: #00669e;
    font-family: "Montserrat";
    float: right;
    width: 172px;
    margin: 0 0 20px;
}
.sec04_text02:hover{
    opacity: 0.7;
}
.sec04_text02 span:after{
    content: "\f105";
    font-family: "FontAwesome";
    position: relative;
    top: -1px;
    left: 10px;
}
.faq{
    clear: both;
    margin: 15px 0;
    padding: 0 0 20px 0;
    border-bottom: 2px solid #eee;
}
.faq_last{
    margin: 15px 0;
    padding: 0 0 20px 0;
}
.faq_Q{
    margin: 0 0 5px;
}
.faq_Q a{
    color: #00669e;
    font-size: 17px;
}
.faq_Q a:hover{
    text-decoration: underline;
}
.faq_Q:before{
    content: url("../img/img_q.png");
    position: relative;
    top: 6px;
    margin: 0 10px 0 0;
}
.faq_Q_br{
    margin: 0 0 5px;
}
.faq_Q_br a{
    color: #00669e;
    font-size: 17px;
    line-height: 1.5;
    display: inline-block;
}
.faq_Q_br:before{
    content: url("../img/img_q.png");
    position: relative;
    top: -18px;
    margin: 0 10px 0 0;
}
.faq_A a{
    color: #ff6200;
    font-size: 16px;
}
.faq_A a:hover{
    text-decoration: underline;
}
.faq_A:before{
    content: url("../img/img_a.png");
    position: relative;
    top: 6px;
    margin: 0 10px 0 0;
}

/*section 5*/
.sec05_right{
    float: right;
    width: 454px;
    overflow: hidden;
    margin: 73px 0 0px;
}
.sec05_main_title{
    color: #11559e;
    font-size: 28px;
    font-weight: 100;
    margin: 0 0 15px;
    font-family: "Noto Sans CJK JP" ;
}
.sec05_text01{
    font-size: 16px;
    color: #92b1d2;
    font-family: "Montserrat";
    letter-spacing: 3px;
    width: 100px;
    float: left;
}
.sec05_text02{
    font-size: 13px;
    color: #00669e;
    font-family: "Montserrat";
    float: right;
    width: 145px;
    margin: 0 0 20px;
}
.sec05_text02:hover{
    opacity: 0.7;
}
.sec05_text02 span:after{
    content: "\f105";
    font-family: "FontAwesome";
    position: relative;
    top: -1px;
    left: 10px;
}
.blog_news{
    clear: both;
    width: 456px;
    overflow: hidden;
    margin: 15px 0 25px;
    position: relative;
}
.blog_img{
    float: right;
    width: 120px;
    height: 90px;
}

.blog_news:hover .blog_img:after{
    border: 5px solid #11559e;
    content: "";
    height: 80px;
    left: 336px;
    position: absolute;
    top: 0;
    width: 108px;
}
.blog_contents{
    float: left;
    width: 323px;
}
.blog_contents dl a{
    display: block;
    overflow: hidden;
}
.blog_contents dl:hover .blog_text{
    color: #00669e;
}
.blog_contents dl dt{
    margin: 0 0 10px;
}
.blog_contents dl dt time{
    color: #00669e;
    font-size: 15px;
    font-weight: bold;
}
.blog_contents dl dd .blog_title{
    color: #00669e;
    font-size: 15px;
    font-weight: bold;
    margin: 0 0 10px;
}
.blog_contents dl dd .blog_text{
    color: #444;
    font-size: 14px;
    line-height: 1.3;
}







