@charset "utf-8";

/* top
----------------------------------------- */
.mainVisual {
	margin-bottom: 30px;
	text-align: center;
}
.mainVisual img {
	width: 100%;
	
}
.mainVisual .pc {
	display: none;
}
.mainVisual .sp {
	display: block;
}

/* sevice */
.service{
	margin-bottom: 60px;
	padding: 0 30px;
}

.service .service-content{}

.service .service-content .col{
	margin-bottom: 40px;
}

.service .service-content .col .icon {
	margin-bottom: 20px;
	text-align: center;
}
.service .service-content .col .icon img {
	width: 49px;
	height: 51px;
}

/* works */
.home .works {
	margin-bottom: 70px;
	padding: 0 30px;
}

.works .worksList{}
.works .worksList li {
	margin-bottom: 40px;
	text-align: center;
	overflow: hidden;
	border: 1px solid #e0e0e0;
}
.works .worksList li:last-child {
	
}
.works .worksList li img{width: 100%; height: auto; transition:ease all .5s}
.works .worksList li a:hover img{transform: scale(1.05)}

/* note */
.home .note {
	margin-bottom: 30px;
	padding: 0 30px;
}

.note li {
	margin-bottom: 40px;
	
	
}

.note li:last-child {
	margin-bottom: 0;
}
.note figure {
	margin-bottom: 30px;
	text-align: center;
	
}
.note figure img {width: 100%; height: auto; transition: ease all .5s}
.note li figure{overflow: hidden}
.note li figure a:hover img{transform: scale(1.05)}

.note .cont {
	margin-bottom: 20px;
	text-align: left;
}
.note .detail {
	font-family: "Montserrat", sans-serif;
	font-weight: 400;
	padding: 8px 12px;
	background-color: #eee;
	letter-spacing: 0.1em;
}




/* タブレット向け：760px～960px */
@media only screen and (min-width: 760px) {

/* mainVisual */
.mainVisual {
	margin-bottom: 80px;
	background-color: #ecebeb;
	text-align: center;
}
.mainVisual img {
	
}

/* top */
.mainVisual .pc {
	display: block;
}
.mainVisual .sp {
	display: none;
}

/* sevice */
.service{
	max-width: 920px;
	margin: 0 5% 130px 5%;
	padding: 0;
}

.service .service-content{display: flex; }
.service .service-content .col {
	width: 30%;
	height: auto;
	margin-right: 5%;
}
.service .service-content .col:last-child {
	margin-right: 0;
}
.service .service-content .col .icon {
	margin-bottom: 40px;
	text-align: center;
}
.service .service-content .col .icon img {
	width: 70px;
	height: 73px;
}
.service .service-content .col {
	margin-bottom: 0;
}
.service .service-content .col:last-child {
	margin-bottom: 0;
}
.main h2.ttl {
}
.main h3.ttl {
	margin-bottom: 16px;
	font-size: 22px;
}
.main p.ttl {
	margin-bottom: 45px;
	font-size: 12px;
	letter-spacing: 0.1em;
}

/* works */
.home .works {
	max-width: 920px;
	margin: 0 5% 150px 3%;
	padding: 0;
}

.works .worksList{display: flex; flex-wrap: wrap;}
.works .worksList li{
	box-sizing: border-box;
	width: 30%;
	margin-right: 5%;
	margin-bottom: 60px;
	border: 1px solid #e0e0e0;
	vertical-align: top;
}
.works .worksList li:nth-child(3n){
	margin-right: 0px;
}
.works .worksList li img{width: 100%; height: auto;}


/* blog */
.home .note {
	max-width: 920px;
	margin: 0 5% 50px 5%;
	padding: 0;
}
.note .noteList{display: flex; flex-wrap: wrap;}

.note li {
	display: inline-block;
	width: 30%;
	margin-right: 5%;
	margin-bottom: 60px;
	vertical-align: top;
}
.note  li:nth-child(3n){
	margin-right: 0;
}
.note figure {
}
.note figure img {
	width: 100%;
	height: auto;
}
.note .cont {
	margin-bottom: 20px;
}
.note .detail {
	padding: 8px 12px;
	background-color: #eee;
}
.toTop a {
	display: block;
	width: 24px;
	margin: 0 auto 20px auto;
	padding: 8px 20px;
}

} /* タブレット向け */




/* PC向けレイアウトの指定：961px～ */
@media only screen and (min-width: 961px) {
	
/* sevice */
.service{
	width: 920px;
	margin: 0 auto 130px auto;
	padding: 0;
}
.service .service-content .col {
	
	width: 280px;
	height: auto;
	margin-right: 40px;
}
.main h2.ttl {
	margin-bottom: 65px;
	font-size: 50px;
}
.main h3.ttl {
	font-size: 25px;
}
.main p.ttl {
	font-size: 14px;
}

/* works */
.home .works {
	width: 920px;
	margin: 0 auto 150px auto;
	padding: 0;
}

.works .worksList li{
	width: calc(33.33% - 40px*2/3);
	margin-right: 40px;
}

/* blog */
.home .note {
	width: 920px;
	margin: 0 auto 50px auto;
	padding: 0;
}
.note li {
	width: calc(33.33% - 40px*2/3);
	margin-right: 40px;
}

} /* PC向け */

.contactForm{max-width:400px;}

.contactForm *{box-sizing: border-box}

.contactForm dt {
	display: block;
	margin-bottom: 3px;
	font-size: 13px;
}
.contactForm dt span.required {
	margin-left: 10px;
	padding: 1px 3px;
	background-color: #f45555;
	font-size: 10px;
	color: #FFFFFF;
}
.contactForm dd {
	margin-bottom: 15px;
}
.contactForm dd input {	
	
	
}
.contactForm dd input,
.contactForm dd textarea {
	width: 100%;
	font-size: 16px;
	border: 1px solid #bbbbbb;
	padding:5px 8px;
}
input.submitBtn {
	width: 228px;
	height: 54px;
	margin-top: 30px;
	cursor: pointer;
	background-color: #8e8e8e !important;
	border: none;
	font-size: 15px;
	font-weight: bold;
	color: #FFFFFF;
	margin-left: auto;
    margin-right: auto;
    display: block;
}

/* タブレット向け：760px～960px */
@media only screen and (min-width: 760px) {
	
.txtBox {
	margin-bottom: 50px;
}
.contactForm dd input,
.contactForm dd textarea {
	
}



}



