﻿/* =================================== */
/*	Basic Style 
/* =================================== */

body {
	background-color: #fff;
	font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro";
    	line-height: 24px;
	font-size: 16px;
	color: #616161;
}

figure, p, address {
	margin: 0;
}

p {
	line-height: 25px;
}

iframe {
	border: 0;
}

a {
    -webkit-transition: all 0.3s ease-out 0s;
       -moz-transition: all 0.3s ease-out 0s;
        -ms-transition: all 0.3s ease-out 0s;
         -o-transition: all 0.3s ease-out 0s;
            transition: all 0.3s ease-out 0s;
}

a, a:hover, a:focus, .btn:focus {
	text-decoration: none;
	outline: none;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
	font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro";
	color: #252525;
	font-weight: bold;
}

h1, h2 {
	font-size: 27px;
	line-height: 1.3em;
}


ul li {
	margin-left: 30px;
}


main > section {
	padding: 70px 0;
}

main > section#service1 {
	padding: 0;
}

.sec-title {
	margin-bottom: 0;
	padding: 0 10px 30px 10px;
}

.sec-title h2 {
    font-size: 27px;
    margin: 0 0 30px;
    padding-bottom: 30px;
    position: relative;
    text-transform: uppercase;
}

.sec-title h2:after {
    border-bottom: 1px solid #dc0007;
    content: "";
    display: block;
    left: 45%;
    bottom: 0;
    position: absolute;
    width: 115px;
}

.parallax {
    background-attachment: fixed;
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
}


/**
/*	Header
/* ==========================================*/

#navigation {
    -webkit-transition: all 0.8s ease 0s;
       -moz-transition: all 0.8s ease 0s;
        -ms-transition: all 0.8s ease 0s;
         -o-transition: all 0.8s ease 0s;
            transition: all 0.8s ease 0s;

	background-color: rgba(255,255,255,1);
	box-shadow: 0 1px 4px rgba(53,53,53, 0.8) ;
	padding: 5px 0;
	font-weight: bold;
	font-family: メイリオ,Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro";
}

#navigation.animated-header {
	padding: 10px 0;
}

h1.navbar-brand {
	margin: 0;
	padding: 5px 15px 5px 15px;
	height: 70px;
}

.navbar-inverse .navbar-nav > li > a {
	color: #b28247;
	font-size: 15px;
	text-transform: uppercase;
	line-height: 15px;
}

.navbar-inverse .navbar-nav > li > a:hover  {
	color: #e6b67b;
}

.navbar-inverse .navbar-nav > li > a:visited {
	color: #b28247;
}

ul.nav li {
	margin-left: 0;
}

.navbar-fixed-top .navbar-collapse, .navbar-fixed-bottom .navbar-collapse {
	max-height: 380px;
}

@media (min-width: 768px) {
	.navbar-nav > li > a {
		padding-top: 25px;
		padding-bottom: 25px;
	}
}

/*=================================================================
	Home Slider
==================================================================*/

.site-content {
	margin-top: 80px;
}

#home-slider {
    position: relative;
    padding: 10px 0 0 0;
    height: auto !important;
}

.sl-slider-wrapper {
    width: 100%;
    height: auto !important;
    margin: 0 auto;
    position: relative;
    overflow: hidden;
}

.sl-slider {
    position: absolute;
    top: 0;
    left: 0;
}

.sl-slide,
.sl-slides-wrapper,
.sl-slide-inner {
    position: absolute;
    width: 100%;
    height: auto;
    top: 0;
    left: 0;
} 

.sl-slide {
    z-index: 1;
}

.sl-content {
	margin: auto;
	width: 100%;
	max-width: 1350px;
}

@media (max-width: 991px) and (min-width: 650px) {
	.hidden-sm {
		display: block !important;
	}
}

/*=================================================================
	Services
==================================================================*/

.service-icon {
    border: 3px solid transparent;
    display: inline-block;
    height: 85px;
    width: 85px;
    line-height: 101px;

    border: 3px solid #dc0007;
    margin-bottom: 20px;
    color: #dc0007;
}

.service-item:hover .service-icon {
    border: 3px solid #dc0007;
    margin-bottom: 20px;
    color: #dc0007;
}

.service-item {
	margin-top: 30px;
	margin-bottom: 30px;
}

.service-item h3 {
	margin: 20px 0 30px 0;
	font-size: 20px;
	text-transform: uppercase;
}

.service-item p {
	padding: 0 10px;
	line-height: 1.5em;
	text-align: left;
}

.service-item p.pointPic {
	padding: 5px 10px 10px 10px;
}

.service-item p.pointPic img {
	max-width: 100%;
	height: auto;
}

.service-item p.point {
	padding: 10px 10px 0 10px;
	text-align: center;
}

p.point2 {
	padding: 20px 0;
	line-height: 1.5em;
	text-align: center;
}

.service-item ul {
	padding: 0 10px;
	text-align: left;
}

.service-item ul li {
	padding-bottom: 10px;
	line-height: 1.5em;
}

.serviceTop {
	background: #fff;
	padding: 0;
	color: #6a3906;
}

.serviceTop .sec-title h2 {
	color: #dc0007;
}

.serviceTop .sec-title h2:after {
	border-bottom: 1px solid #dc0007;
}

.serviceTop .overlay {
	background-color: rgba(230,182,123, 0.1);
	padding: 20px 0 40px;
}

.serviceTop .service-item:hover .service-icon {
	border: 3px solid #dc0007;
	color: #dc0007;
}

.serviceUnder {
	background: #fff;
	padding: 0;
	color: #6a3906;
}

.serviceUnder .sec-title h2 {
	color: #dc0007;
}

.serviceUnder .sec-title h2:after {
	border-bottom: 1px solid #dc0007;
}

.serviceUnder .overlay {
	background-color: rgba(230,182,123, 0.1);
	padding: 70px 0 40px;
}

.serviceUnder .service-item:hover .service-icon {
	border: 3px solid #dc0007;
	color: #dc0007;
}

.faq img {
	float: left;
	margin: 0 1% 10px 0;
	width: 5%;
	max-width: 50px;
	height: auto;
}

.faq p {
	float: right;
	width: 94%;
}

/*=================================================================
	plan
==================================================================*/

.plan {
	background: #fff;
	padding: 0;
	color: #6a3906;
}

.plan .sec-title h2 {
	color: #dc0007;
}

.plan .sec-title h2:after {
	border-bottom: 1px solid #dc0007;
}

.plan .overlay {
	/*background-color: rgba(230,182,123, 0.1);*/
	padding: 70px 0 40px;
}

.project-wrapper {
    margin: 0 20px;;
    padding: 0;
    list-style: none;
    text-align: center;
}

.project-wrapper li {
    display: inline-block;
}

.portfolio-item {
	/*cursor: pointer;*/
	margin: 0 1% 3% 0;
	overflow: hidden;
	position: relative;
	/*width: 32%;*/
	width: 48%;
	vertical-align: top;
}

.portfolio-item:last-child {
	margin: 0 0 3% 0;
}

figcaption.mask {
	background-color: rgba(54, 55, 50, 0.79);
	color: #fff;
	padding: 25px 20px;
	width: 100%;
	min-height: 210px;
	text-align: left;
    
    -webkit-transition: all 0.4s ease 0s;
       -moz-transition: all 0.4s ease 0s;
        -ms-transition: all 0.4s ease 0s;
         -o-transition: all 0.4s ease 0s;
            transition: all 0.4s ease 0s;
}

figcaption.mask h3 {
	margin: 0 0 10px 0;
	color: #fff;
	line-height: 1.5em;
}

figcaption.mask p {
	font-size: 100%;
	line-height: 1.5em;
}

/*============================================================
	Footer
==============================================================*/

#footer {
    background-color: #2E2E2E;
    padding: 70px 0;
    color: #fff;
}

.footer-content {
    width: 390px;
    margin: 0 auto;
}

.footer-content > div {
    margin-bottom: 40px;
}

.footer-content > div > p:first-child {
    margin-bottom: 15px;
    text-transform: uppercase;
}

.footer-content > p {
    color: #ababab;
    font-size: 12px;
}


/*============================================================ 
	Responsive Styles
 ============================================================*/

/*============================================================
	Tablet (Portrait) Design for a width of 768px
==============================================================*/

@media (min-width: 768px) and (max-width: 979px) {

.nav > li > a {
        position: relative;
        display: block;
        padding: 10px 6px;
    }

/* about */
    .service-item {
        margin-bottom: 50px;
    }

/* plan */
    .portfolio-item {
        width: 48%;
    }

    .portfolio-item:nth-child(even) {
        margin-right: 0;
    }

    figcaption.mask p.maskGuide {
	min-height: 130px;
    }

    figcaption.mask h3 {
	font-size: 20px;
    }
}


/*============================================================
	Mobile (Portrait) Design for a width of 320px
==============================================================*/

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

    body {
        font-size: 14px;
    }

    .parallax {
        background-position: center top !important;
    }

    .sec-title h2 {
        font-size: 25px;
    }

    .sec-title h2:after {
        left: 30%;
    }

    .sec-title h2:after {
        left: 34%;
    }

/*navigation*/
	.navbar-inverse .navbar-toggle {
		margin-top: 18px;
		border-color: #b28247;
	}

	.navbar-inverse .navbar-toggle .icon-bar {
		background-color: #b28247;
	}

	.navbar-inverse .navbar-toggle:hover,
	.navbar-inverse .navbar-toggle:focus {
		background-color: transparent;
	}

	.navbar-inverse .navbar-collapse {
		margin-top: 10px;
		border-color: #e6b67b;
	}

/* service */
    .service-item {
        width: 100%;
    }

/*plan*/
    .portfolio-item {
        margin: 0 auto 10px;
        font-size: 14px;
        width: 100%;
    }

    figcaption.mask {
        color: #fff;
        padding: 15px;
    }

/* footer */
    .footer-content {
        width: 100%;
    }

}


/*============================================================
	Mobile (Landscape) Design for a width of 480px
==============================================================*/

@media only screen and (min-width: 480px) and (max-width: 767px) {

    .sec-title h2:after {
        left: 38%;
    }

/* service */
    .service-item {
        margin: 0 auto 50px;
    }

/* plan */
    .portfolio-item {
        width: 48%;
    }

    figcaption.mask {
        /*bottom: -132px;*/
    }

/* footer */
    .footer-content {
        width: 380px;
    }
}

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

	.logoHd {
		width: 180px;
		height: auto;
	}
	.navbar-inverse .navbar-toggle {
		margin-top: 14px;
	}

	h1.navbar-brand {
		padding: 5px 10px 5px 10px;
		height: 70px;
		font-size: 17px;
	}

	figcaption.mask h3 {
		font-size: 18px;
	}

	.sec-title h2 {
		font-size: 21px;
	}

	.sec-title p {
		padding: 0 15px;
	}

	.service-item h3 {
		margin: 20px 5px 30px 5px;
	}

	.service-item p {
		padding: 0 10px;
		text-align: left;
	}
}

/*========================================
	お問合せフォーム
========================================*/

table.contact {
	margin: 20px 0 0 0;
	padding: 0;
	width: 100%;
	border: solid 1px #e5e5e5;
}

table.contact tr {
	border-top: solid 1px #bbb;
}

table.contact th {
	font-weight: normal;
	background: #8fc31f;
	text-align: left;
	vertical-align: top;
	padding: 10px;
	white-space: nowrap;
	color: #fff;
	font-size: 85%;
	font-weight: bold;
}

table.contact td {
	background: #fff;
	padding: 18px 15px;
}

table.contact td.title {
	background: #fff;
	padding: 10px;
	font-weight: bold;
	font-size: 80%;
}

table.contact table tr:first-child {
	border: none;
}

.require {
	color: #006934;
	font-size: 70%;
	font-weight: normal;
	white-space: nowrap;
}
.require:before {
	content: ' ';
	white-space: normal;
}

input[type="submit"] {
	margin-top: 10px;
}

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

	table.contact { margin: 0; }
	table.contact th,
	table.contact td{
		width: 100%;
		display: block;
		border-top: none;
		padding-left: 10px;
		text-align: left;
	}

	table.contact td .wpcf7-list-item{
		margin-left: 0;
		display: block;
	}

	table.contact input,
	table.contact textarea {
		width: 100%;
	}

	textarea,
	input[type="text"],
	/*input[type="number"],*/
	input[type="email"] {
		width:100%;
		margin:5px 0 15px;
	}

	table.contact input[type="checkbox"] {
		width:10%;
	}

	span.wpcf7-list-item {
		display: block;
	}
}

/*========================================
	汎用
========================================*/

/*========================================
	1-1.Forms Module
========================================*/

form {
	margin: 0;
}

legend {
	margin-left: 1em;
	padding: 0 10px;
	font-size: 90%;
}

input {
	padding: 5px;
}

textarea {
	padding: 5px;
}

/*========================================
	2-5.company
========================================*/

.companyWrap {
	margin: 0 10px;
}

.companyWrap h2 {
	margin: 0 0 10px 0;
	padding: 13px 10px;
	color: #dc0007;
	font-weight: bold;
	font-size: 120%;
}

.companyWrap p {
	color:#252525;
	padding: 10px;
}

/*========================================
	2-7.table
========================================*/

table {
	margin: 0;
	border: 1px solid #c5c5c5;
	border-collapse: separate;
	border-spacing: 4px;
	width: 100%;
}

th {
	font-weight: normal;
	background: #e5e5e5;
	text-align: left;
	vertical-align: top;
	padding: 18px 15px;
	white-space: nowrap;
}

td {
	background: #fff;
	padding: 18px 15px;
	border: 1px solid #e5e5e5;
	width: 80%;
}

.mailform span {
	margin-right: 20px;
}

/*========================================
	2-7.SP
========================================*/

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

	.col-sm-4{width:33.33333333%}

	/*========================================
		table.mailform
	========================================*/

	table.mailform {
		width: 100%;
	}

	table.mailform input {
		max-width: 100%;
	}

}

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

	img {
		max-width: 100% !important;
		height: auto;
	}

	.col-sm-4{width:100%}

	/*========================================
		2-7.table
	========================================*/

	.companyWrap table th,
	.companyWrap table td {
		padding: 18px 0;
		width: 100%;
		display: block;
		border-top: none;
		text-align: center;
	}

	table.mailform th,
	table.mailform td {
		text-align: center !important;
	}
}

/*========================================
	汎用
========================================*/

main > section#service div.thanks {
	padding-top: 100px;
}

/* ページトップ */
#page-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
	font-size: 80%;
}
#page-top a {
	background: #b28247;
	text-decoration: none;
	color: #fff;
	width: 90px;
	padding: 15px 0;
	text-align: center;
	display: block;
	border-radius: 8px;
}
#page-top a:hover {
	text-decoration: none;
	background: #e6b67b;
}

.clearfix:after{
	content:"";
	display:block;
	clear:both;
}

/* 余白 */
.mb0 {margin-bottom:0;}
.mb10{margin-bottom:10px;}
.mb15{margin-bottom:15px;}
.mb20{margin-bottom:20px;}
.mb25{margin-bottom:25px;}
.mb30{margin-bottom:30px;}
.mb40{margin-bottom:40px;}

.mb70{margin-bottom:70px;}

.pb10{padding-bottom:10px;}
.pb20{padding-bottom:20px;}
.pb30{padding-bottom:30px;}

/* 配置 */
.txtC{text-align:center !important;}
.txtL{text-align:left;}
.txtR{text-align:right;}

/* フロート */
.floatl{float:left;margin:0;}
.floatr{float:right;margin:0;}
.floatl10{float:left;margin:0 10px 10px 0;}
.floatr10{float:right;margin:0 0 10px 10px;}
.floatl15{float:left;margin:0 15px 10px 0;}
.floatr15{float:right;margin:0 0 10px 15px;}
.floatl20{float:left;margin:0 20px 10px 0;}
.floatr20{float:right;margin:0 0 10px 20px;}

.clear{clear:both;}

.bold{font-weight:bold;}

/* フォントサイズのパターン */
.font200{font-size:200%;}
.font150{font-size:150%;}
.font140{font-size:140%;}
.font130{font-size:130%;}
.font120{font-size:120%;}
.font110{font-size:110%;}
.font90{font-size:90%;}
.font80{font-size:80%;font-weight:normal;}
.font70{font-size:70%;font-weight:normal;}
.font60{font-size:60%;font-weight:normal;}
.font50{font-size:50%;font-weight:normal;}

/* フォント色のパターン */
.fontred1{color:#FF0000;}
.fontred2{color:#FF3300;}
.fontred3{color:#d7000f;}
.fontorange1{color:#FF6600;}
.fontorange2{color:#FF9900;}
.fontorange3{color:#FF4E00;}
.fontyellow1{color:#FFcc00;}
.fontyellow2{color:#FFFF00;}
.fontblue1{color:#0000FF;}
.fontblue2{color:#3399CC;}
.fontblue3{color:#0168AE;}
.fontblue4{color:#1d2088;}
.fontgreen1{color:#006600;}
.fontgreen2{color:#99CC00;}
.fontgreen3{color:#84B648;}
.fontgreen4{color:#2a706f;}
.fontbrown1{color:#993300;}
.fontbroun2{color:#CC9966;}
.fontpurple1{color:#6633CC;}
.fontpurple2{color:#9999FF;}
.fontpink1{color:#FF33CC;}
.fontpink2{color:#FF99CC;}
.fontpink3{color:#fae2e7;}
.fontpink4{color:#dc007f;}
.fontgray1{color:#666666;}
.fontgray2{color:#999999;}
.fontw{color:#ffffff;}


@media (min-width: 768px){
.col-sm-4 {
    height: 600px;
}
}


