/*------------------------------------
共通で使うもの
--------------------------------------*/
.navigation{
  position: fixed;
  top: 0;
  left: 0;
  height:160px;
  background-color: rgba(255, 255, 255, 0.7);
}

@media screen and (max-width: 768px){
.navigation{
  position: fixed;
  top: 0;
  left: 0;
  height:100px;
  background-color: rgba(255, 255, 255, 0.7);
}
}
main {
  margin-top: 160px;
}
.clear{clear:both;}
section{
  clear: both;
}
h2{
    text-align: center;
    font-size: 2rem;
    margin-bottom: 40px;
}
h2 span {
  display: block;
  border-radius:10px;
  -webkit-border-radius:10px;
  -moz-border-radius:10px;
  font-size: 0.9rem;
  color: #fff;
  width: 100px;
  margin-left: auto;
  margin-right: auto;
  padding: 5px;
  margin-bottom: 10px;
}
.container {
  padding: 60px 0;
}

/*************************
パララックス
*************************/
section.web_outline_img{
	height:600px;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: cover;
	}

div.web_service_img{
height:403px;
  	background-position: 50% 50%;
  	background-repeat: no-repeat;
  	background-attachment: fixed;
  	background-size: cover;
  	}
section.company_img{
	height:auto;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: cover;
	}
.web_outline_img{
  background: url(../img/top_back.jpg) no-repeat;
	}
.web_service_img{
  background: url(../img/about_web.png) no-repeat;
	}
.company_img{
  background: url(../img/company_back2.jpg) no-repeat;
	}

@media screen and (max-width: 768px){
section.web_outline_img{
	height:400px;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: cover;
	}

div.web_service_img{
    height:300px;
  	background-position: 50% 50%;
  	background-repeat: no-repeat;
  	background-attachment: fixed;
  	background-size: cover;
  	}
section.company_img{
	height:auto;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: cover;
	}
.web_outline_img{
  background: url(../img/top_back.jpg) no-repeat;
  background-size: 60%;
	}
.web_service_img{
  background: url(../img/about_web.png) no-repeat;
  background-size: 60%;
	}
.company_img{
  background: url(../img/company_back2.jpg) no-repeat;
	}
}

a.staff-txt{
	background-color: #060;
	color:#fff;
	padding: 2px 5px;
  -webkit-border-radius: 9;
  -moz-border-radius: 9;
  border-radius: 9px;
}

a:hover.staff-txt{
	background-color: #89C800;
	color:#fff;
	padding: 2px 5px;
  -webkit-border-radius: 9;
  -moz-border-radius: 9;
  border-radius: 9px;
}
/*************************
Animations
*************************/

.fromTopIn
{
	transition: transform 1.0s ease, opacity 1.0s ease;
	transform: translate(0,0);
	opacity: 1.0;
}

.fromTopOut
{
	transition: transform 1.0s ease, opacity 1.0s ease;
	transform: translate(0,-10px);
	opacity: 0.0;
}

.fromBottomIn
{
	transition: transform 1.0s ease, opacity 1.0s ease;
	transform: translate(0,0);
	opacity: 1.0;
}

.fromBottomOut
{
	transition: transform 1.0s ease, opacity 1.0s ease;
	transform: translate(0,10px);
	opacity: 0.0;
}

.fromLeftIn
{
	transition: transform 1.0s ease, opacity 1.0s ease;
	transform: translate(0,0);
	opacity: 1.0;
}

.fromLeftOut
{
	transition: transform 1.0s ease, opacity 1.0s ease;
	transform: translate(-10px,0);
	opacity: 0.0;
}

.fromRightIn
{
	transition: transform 1.0s ease, opacity 1.0s ease;
	transform: translate(0,0);
	opacity: 1.0;
}

.fromRightOut
{
	transition: transform 1.0s ease, opacity 1.0s ease;
	transform: translate(10px, 0);
	opacity: 0.0;
}

.scaleUpIn
{
	transition: transform 1.0s ease, opacity 1.0s ease;
	transform: scale(1.0,1.0);
	opacity: 1.0;
}

.scaleUpOut
{
	transition: transform 1.0s ease, opacity 1.0s ease;
	transform: scale(1.3,1.3);
	opacity: 0.0;
}

.scaleDownIn
{
	transition: transform 1.0s ease, opacity 1.0s ease;
	transform: scale(1.0,1.0);
	opacity: 1.0;
}

.scaleDownOut
{
	transition: transform 1.0s ease, opacity 1.0s ease;
	transform: scale(0.7,0.7);
	opacity: 0.0;
}

/*************************
メディアクエリ
*************************/
@media screen and (max-width: 960px){
	.box{
		width:auto;
		}
	}
/*背景画像の固定*/
body, html, main {
    /* important */
    height: 100%;
}
.cd-fixed-bg {
    min-height: 100%;
    background-size: cover;
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-position: center center;
}
.cd-scrolling-bg {
    min-height: 100%;
}

/*TOP画像*/
.web_outline {
  background-size:100%;
  height:961px;
  display: flex;          /* 2 */
  justify-content: center;/* 3 */
  align-items: center;    /* 4 */
}
.web_outline div{
  background:rgba(0, 0, 0, 0.40);
  color: #FFF;
  width: 100%;
  height: 333px;
  display: flex;          /* 2 */
  justify-content: center;/* 3 */
  align-items: center;    /* 4 */
  -webkit-flex-direction: column; /* Safari */
  flex-direction:         column;
}

.web_outline div h2{
  font-size: 4rem;
  text-shadow:2px 2px 3px #5e5e5e;
}

.web_outline p.outline_descript{
color: #FFF;
text-shadow:2px 2px 3px #5e5e5e;
}

@media screen and (max-width: 768px){
.web_outline div{
  background:rgba(0, 0, 0, 0.40);
  color: #FFF;
  width: 100%;
  height: 200px;
  display: flex;          /* 2 */
  justify-content: center;/* 3 */
  align-items: center;    /* 4 */
  -webkit-flex-direction: column; /* Safari */
  flex-direction:         column;
}

.web_outline div h2{
  font-size: 2rem;
  text-shadow:2px 2px 3px #5e5e5e;
  margin-bottom: 10px;
}
}

/*Web制作について*/
.web_service_back{
  background-size:100%;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.web_service_back h2{
  margin-bottom: 0;
  color: #FFF;
  font-size: 4rem;
  text-shadow:2px 2px 3px #5e5e5e;
}

@media screen and (max-width: 768px){
.web_service_back h2{
  margin-bottom: 0;
  color: #FFF;
  font-size: 2rem;
  text-shadow:2px 2px 3px #5e5e5e;
}
}

.web_service_people {
  margin-bottom: 15px;
}

.web_service_people ul{
    display: -webkit-flex;
    display: flex;
    background: url(../img/web_service_people_bottom.png) repeat-x;
    background-position: bottom;
}

.web_service_people ul li{
  margin: 0 30px 75px;
}

@media screen and (max-width: 768px){
  .web_service_people img{
  width: 130%;
}
.web_service_people ul li{
  margin: 0 10px 75px;
}
}

.web_service .container h3{
  text-align: center;
  font-weight: bold;
  font-size: 1.6rem;
  line-height: 2.4rem;
}

.web_service .container h3 span{
  background:rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #ffffbc 0%) repeat scroll 0 0;
}

.web_service .container h4{
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 25px;
}
ul.web_service_list{
  width: 90%;
  background-color: rgb(251, 255, 201);
  margin: 0 auto;
  padding: 20px 30px;
}
.web_service_list li{
  width: 90%;
  font-size: 1.0rem;
  font-weight: bold;
  margin-bottom: 20px;
  list-style:disc;
  margin-bottom: 5px;
}
/*サービス内容*/
.web_works {
  background-color: #fafafa;
}
.web_works h2 span{
  background-color: #00b2b2;
}
.web_works h3{
  text-align: center;
  font-size: 1.2rem;
  font-weight:bold;
  margin-top: 110px;
  margin-bottom: 20px;
}
.web_works .row p {
position: relative;
}

/*.web_works .row p:after {
content: "";
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 4px;
background: -webkit-repeating-linear-gradient(-45deg, #5e6665, #5e6665 2px, #fff 2px, #fff 4px);
background: repeating-linear-gradient(-45deg, #5e6665, #5e6665 2px, #fff 2px, #fff 4px);
}*/
.web_works .row div{
  padding: 0 40px;
  margin-bottom: 40px;
}
.web_works .row div:after {
content: "";
position: absolute;
left: auto;
right: auto;
bottom: 0;
width: 80%;
height: 4px;
background: -webkit-repeating-linear-gradient(-45deg, #5e6665, #5e6665 2px, #fff 2px, #fff 4px);
background: repeating-linear-gradient(-45deg, #5e6665, #5e6665 2px, #fff 2px, #fff 4px);
}
.homepage_box{
  background: url(../img/service_icon1.png) no-repeat top center;
}
.ec_box{
  background: url(../img/service_icon2.png) no-repeat top center;
}
.webmanagement_box{
  background: url(../img/service_icon3.png) no-repeat top center;
}
.sns_box{
  background: url(../img/service_icon4.png) no-repeat top center;
}
.server_box{
  background: url(../img/service_icon5.png) no-repeat top center;
}
.acess_box{
  background: url(../img/service_icon6.png) no-repeat top center;
}

/**/
/*制作フロー*/
.web_flow{
  text-align: center;
  background: rgba(254,246,254,1);
  background: -moz-linear-gradient(top, rgba(254,246,254,1) 0%, rgba(255,255,255,1) 61%, rgba(255,255,255,1) 100%);
  background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(254,246,254,1)), color-stop(61%, rgba(255,255,255,1)), color-stop(100%, rgba(255,255,255,1)));
  background: -webkit-linear-gradient(top, rgba(254,246,254,1) 0%, rgba(255,255,255,1) 61%, rgba(255,255,255,1) 100%);
  background: -o-linear-gradient(top, rgba(254,246,254,1) 0%, rgba(255,255,255,1) 61%, rgba(255,255,255,1) 100%);
  background: -ms-linear-gradient(top, rgba(254,246,254,1) 0%, rgba(255,255,255,1) 61%, rgba(255,255,255,1) 100%);
  background: linear-gradient(to bottom, rgba(254,246,254,1) 0%, rgba(255,255,255,1) 61%, rgba(255,255,255,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fef6fe', endColorstr='#ffffff', GradientType=0 );
  background-image: url(../img/flow_image1.png), url(../img/flow_image3.png), url(../img/flow_image2.png), url(../img/flow_image4.png);
  background-position: left 70px, -70px bottom, right 250px, right bottom;
  background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
  background-size: 22%, 22%, 22%, 22%;
}

@media screen and (max-width: 768px){
  .web_flow{
  text-align: center;
  background: rgba(254,246,254,1);
  background: -moz-linear-gradient(top, rgba(254,246,254,1) 0%, rgba(255,255,255,1) 61%, rgba(255,255,255,1) 100%);
  background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(254,246,254,1)), color-stop(61%, rgba(255,255,255,1)), color-stop(100%, rgba(255,255,255,1)));
  background: -webkit-linear-gradient(top, rgba(254,246,254,1) 0%, rgba(255,255,255,1) 61%, rgba(255,255,255,1) 100%);
  background: -o-linear-gradient(top, rgba(254,246,254,1) 0%, rgba(255,255,255,1) 61%, rgba(255,255,255,1) 100%);
  background: -ms-linear-gradient(top, rgba(254,246,254,1) 0%, rgba(255,255,255,1) 61%, rgba(255,255,255,1) 100%);
  background: linear-gradient(to bottom, rgba(254,246,254,1) 0%, rgba(255,255,255,1) 61%, rgba(255,255,255,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fef6fe', endColorstr='#ffffff', GradientType=0 );
  background-image: url(../img/flow_image1.png), url(../img/flow_image3.png), url(../img/flow_image2.png), url(../img/flow_image4.png);
  background-position: left 30px, -30px bottom, right 140px, right bottom;
  background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
  background-size: 18%, 18%, 18%, 18%;
}
}

.web_flow h2 span{
  background-color: #e8a19c;
}
.web_flow dt{
  width: 100px;
  height: 100px;
  white-space: nowrap;
  border-radius: 50%;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  font-size: 1.5rem;
  font-weight: bold;
  color: #000;
  background-color: #fae0e1;
  margin: 0 auto;
  display: flex;          /* 2 */
  justify-content: center;/* 3 */
  align-items: center;    /* 4 */
  margin-bottom: 20px;
}

.web_flow dd{
  margin-bottom: 60px;
}

@media screen and (max-width: 768px){
.web_flow dd{
  margin-bottom: 60px;
  padding: 0 30px;
}
}
/*製作費について*/
.web_price{
  background: url(../img/about_web.jpg) no-repeat;
}
.web_price h2 span{
  background-color: #f78200;
}


.web_price table {
border-collapse: collapse;
width:80%;
margin: 0 auto 20px auto;
margin-top:20px;
}
.web_price table th.t_top {
border-top-width: 2px;
border-top-style: solid;
border-top-color: #333;
}
.web_price table th {
border-bottom: #333 1px solid;
text-align: left;
padding:10px;
font-weight: 600;
background-color: #F1F1F1;
}
.web_price table td.t_top {
border-top: #333 2px solid;
}
.web_price table td {
border-bottom: #333 1px solid;
text-align: left;
padding: 10px;
line-height:140%;
background-color: #fff;
}
.web_price table td.price {
text-align:right}
.web_price ul{
  width:80%;
  margin: 0 auto 20px 0;
}
.web_price .price-txt ul{
  width:80%;
  margin: 0 auto 10px 0;
}

.web_price .price-txt p{
  padding-bottom: 0;
  text-align: right;
  font-weight: bold;
}

/*料金例*/
.web_exprice{

}
.web_exprice h2 span{
  background-color: #b2b200;
}
/*会社案内*/
.company {
    height: 100%;
    position: relative;
}
.company .container{
  padding-top: 0px;
  padding-bottom: 0px;
}

.company h2 span{
  background-color: #8bc600;
}
.company_info{
  padding-top: 40px;
  padding-bottom: 40px;
}

.company table {
border-collapse: collapse;
width:90%;
margin: 0 auto 20px auto;
}
.company table th.t_top {
border-top-width: 2px;
border-top-style: solid;
border-top-color: #333;
}
.company table th {
border-bottom: #333 1px solid;
text-align: left;
padding:10px;
font-weight: 600;
background-color: #F1F1F1;
}
.company table td.t_top {
border-top: #333 2px solid;
}
.company table td {
border-bottom: #333 1px solid;
text-align: left;
padding: 10px;
line-height:140%;
background-color: #fff;
}

/*お問合せ*/
.contact{
  width: 100%;
}
.contact h2 {
  padding: 40px 0;
}
.contact h2 span{
  background-color: #8bc600;
}
.contact .container{
  height: 100%;
  background:rgba(255, 255, 255, 0.45);
}
/**/
.footer_navi{
  background: url(../img/footer_back.jpg) no-repeat;
  background-size: 100%;
  text-align: center;
}
.footer_navi ul{
display: -webkit-flex; /* Safari */
display: flex;
width: 70%;
margin: 20px auto;
}

.footer_navi .primary-nav li{
  margin: 0 18px;
  -webkit-justify-content: space-around; /* Safari */
  justify-content:         space-around;
}
.footer_navi .primary-nav li a{
  color: #000;
  font-weight: bold;
}
.footer_navi .primary-nav li a:hover{
  color: rgb(213, 128, 50);
  font-weight: bold;
}
.footer_navi address{
  clear: both;
    color: #000;
    font-weight: bold;
}

@media screen and (max-width: 768px){
.footer_navi{
  background: url(../img/footer_back.jpg) no-repeat;
  background-size: 140%;
  height: 450px;
  text-align: center;
}
.footer_navi ul{
display:block;
width: 70%;
margin: 20px auto;
}
.footer_navi .primary-nav li{
  margin: 10px 0;
  display: block;
}
}
@media screen and (max-width: 768px){
header .header-nav {
display: none;
font-size: 150%;
}
}
@media screen and (min-width: 769px){
.mobile_menu{
display: none;
}
}
.company table td span.ITlink{
  font-weight:bold;
  padding-left: 10px;
}

.web_banner {
	margin: 10PX auto 10px;
}

.web_banner:hover {
	filter:alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}

#price .col-md-4 .plan{
  background-color: #fff;
  margin: : 10px;
  padding: 20px;
}
#price .col-md-4 .plan h3{
  text-align: center;
  font-size:1.2rem;
  font-weight:bold;
}
