@charset "utf-8";
/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}
html {
  font-size: 62.5%;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}
nav ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none;
}
/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}
/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}
del {
  text-decoration: line-through;
}
abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}

input, select {
  vertical-align: middle;
}
/* Global */
body {
  margin: 0;
  background-color: #fff;
  font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", Helvetica, Avenir, "Open Sans", Arial, Verdana, Roboto, sans-serif;
  font-size: 1.8rem;
  line-height: 2.0;
  color: #333;
  -webkit-text-size-adjust: 100%;
}
a {
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}
/* Main contents */
#main section {
  padding: 50px 0;
}
#main .service h2, #main .company h2, #main .client h2, #main .cases_list h2 {
  font-family: "Helvetica Neue", Helvetica, Avenir, "Open Sans", Arial, Verdana, Roboto, sans-serif;
  margin: 0 0 35px;
  font-size: 2.4rem;
  font-weight: 700;
	color: #50b381
}

#about h2, #main .cta h2 {
  font-family: "Helvetica Neue", Helvetica, Avenir, "Open Sans", Arial, Verdana, Roboto, sans-serif;
  margin: 0 0 10px;
  font-size: 2.4rem;
  font-weight: 700;
}
#service h3{
	color: #142a3a;
}

.news h2 {
  font-family: "Helvetica Neue", Helvetica, Avenir, "Open Sans", Arial, Verdana, Roboto, sans-serif;
  margin: 0 0 10px;
  font-size: 2.4rem;
  font-weight: 700;
}

.txt_s{ font-size: 1.4rem; }

/* News section */
#news {
  color: #fff;
}
.news {
  width: 100%;
  padding: 35px 0;
  background-color: #5dc892;
}
.news .topics {
  width: 980px;
  margin: 0 auto;
}
.news ol {
  list-style:disc outside;
  margin: 0 0 0 20px;
  padding: 0;
}
.news ol li a {
  margin-bottom: 20px;
  color: #fff;
}
.news ol li:last-child {
  margin-bottom: 0;
}

.fb_icon a {
  margin-top: 10px;
  color: #fff;
  font-size: 3.0rem;
}
.service-menu dd {
  margin-bottom: 20px;
}
.mgb10 {
  margin-bottom: 10px;
}
.mgb20 {
  margin-bottom: 20px;
}
.mgb30 {
  margin-bottom: 30px;
}
.clearfix::after {
  display: block;
  clear: both;
  content: "";
}

ul.list01 li{
	margin-left: 20px;
}


@media screen and (min-width: 767px) { /*ウィンドウ幅が767px以上の場合に適用*/
.pc-hide{display: none;}
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ddd;
  margin: 1em auto;
  padding: 0;
	width: 1000px;
}
  .top_message {
    width: 100%;
    height: 400px;
    font-size: 3.0rem;
    line-height: 180%;
    font-weight: 700;
    color: #fff;
    text-align: center;
background-image: url("../images/kv.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}
  .top_message p {
    padding-top: 120px;
  }
  /* Global */
  body {
    min-width: 1000px;
    margin: 0;
  }
  /* Header */
  #header {
    background: #142a3a;
    color: #fff;
  }
  #header .wrapper {
    width: 1000px;
    height: 46px;
    margin: 0 auto;
    padding: 20px 0 10px;
  }
  #header h1 {
    float: left;
    margin: 0;
    padding-top: 5px;
  }
  #header h1 img {
    vertical-align: top;
  }
  #gnav {
    float: right;
  }
  #gnav ul {
    list-style: none;
    overflow: hidden;
    margin: 0;
    padding-left: 12px;
  }
  #gnav li {
    display: inline-block;
    border-right: 1px solid #63727d;
    font-size: 1.4rem;
    line-height: 1em;
  }
  #gnav li:last-child {
    border-right: none;
  }
  #gnav li a {
    font-weight: 700;
    padding: 0 12px;
    color: #5dc892;
  }
  #gnav ul img {
    vertical-align: top;
  }
  /* Main contents */
  #main {
    width: 100%;
    font-size: 1.6rem;
  }
  /* Footer */
  #footer {
    width: 100%;
    height: 25px;
    padding: 30px 0;
    background-color: #fff;
  }
  .wrapper {
    width: 1000px;
    margin: 0 auto;
  }
  #footer h2 {
    float: left;
    margin: 0;
  }
  #footer .copyright {
    float: right;
    margin: 0;
    padding-top: 5px;
    font-size: 1rem;
    line-height: 1.3;
    text-align: right;
  }
	
/* about */
#about {
  width: 100%;
  background-color: #50b381;
  color: #fff;
}
	
#about .about {
  width: 980px;
  margin: 0 auto;
}
#service {
  width: 100%;
  background-color: #fff;
}
.service {
  width: 980px;
  margin: 0 auto;
}
#service ul {
  list-style: outside disc;
  margin-left: 20px;
}
#service li {
  margin-bottom: 10px;
}
/* company section */
#company {
  width: 100%;
}
.company {
  width: 980px;
  margin: 0 auto;
}

#main .company h3 {
  margin: 0;
}

#main .member dl, #main .company dl {
  margin: 0;
}
#main .member dt, #main .company dt {
  clear: left;
  float: left;
}
#main .member dd, #main .company dd {
  margin-left: 0;
}
#main .company a {
  color: #50b381;
}
/* Client section */
#client {
  width: 100%;
}
.client {
  width: 1000px;
  margin: 0 auto 30px;
}
#main .client ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
#main .client li {
  float: left;
}
	
/* Cases section */
#cases {
  width: 100%;
}
.cases_list {
  width: 1000px;
  margin: 0 auto 30px;
}
#main .cases_list ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
#main .cases_list li {
	display: block;
  float: left;
	margin-right: 30px;
}
.cases_list img{
		box-shadow: 0 5px 5px 0 rgba(0, 0, 0, .2);
	}
.cases_list p{ text-align: center; color: #666; font-size: 1.2rem; }
.lead {
  font-size: 2.0rem;
}
	
/* cta */
#cta {
  width: 100%;
  background-color:#455765;
  color: #fff;
	text-align: center;
	background-image: url("../images/cta-bg.png");
    background-position: top center;
    background-repeat: no-repeat;
    background-size: cover;
}
	
#cta .cta {
  width: 880px;
  margin: 0 auto;
}
#cta .cta a {
	display: block;
 	width: 300px;
	background-color:#FF9E32;
	margin: 20px auto 0 auto;
	padding: 15px 0;
	color: #455765;
	border-radius: 4px;
}
	
.pc-hide{display: none;}

}
@media screen and (max-width: 767px) { /*ウィンドウ幅が最大767pxまでの場合に適用*/
  .sp-hide {
    display: none;
  }
  /* Global */
  body {
    margin: 0;
  }
	
 /* Header */
  #header {
    background: #142a3a;
    color: #fff;
  }
  #header .wrapper {
    padding: 15px;
  }
  #header h1 {
    margin: 0;
    padding-top: 5px;
  }
  #header h1 img {
    vertical-align: top;
  }

  #gnav {
    padding-top: 10px;
  }
  #gnav ul {
    list-style: none;
    overflow: hidden;
    margin: 0;
    line-height: 1.8;
  }
  #gnav li {
    display: inline-block;
    padding-right: 15px;
  }
  #gnav li:last-child {
    padding-right: 0;
  }
  #gnav li a {
    font-weight: 700;
    color: #3A9F75;
  }
/* Main contents */
  #main {
    width: 100%;
    font-size: 1.6rem;
  }
  hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ddd;
  margin: 1em auto;
  padding: 0;
	width: 95%;
}
  .top_message {
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    background-image: url("../images/kv.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .top_message p {
    padding: 40px 0;
    margin: 0 15px;
  }
  .news h2 {
    font-family: "Helvetica Neue", Helvetica, Avenir, "Open Sans", Arial, Verdana, Roboto, sans-serif;
    margin: 0 0 10px;
    font-size: 2.4rem;
    font-weight: 700;
  }
  .news .topics {
    width: 90%;
    margin: 0 5%;
    padding: 0;
  }
  .news ol {
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .news ol {
  list-style:disc outside;
  margin: 0 0 0 20px;
  padding: 0;
}
  .news ol li:last-child {
    margin-bottom: 0;
  }
	
/* about */
#about {
  width: 100%;
  background-color: #50b381;
  color: #fff;
}
#about .about {
  margin: 0 15px;
}
/* service */	
#service {
  width: 100%;
}
.service {
  margin: 0 15px;
}
#service ul {
  list-style: outside disc;
  margin-left: 20px;
}
#service li {
  margin-bottom: 10px;
}
/* company section */
#company {
  width: 100%;
}
.company {
  margin: 0 15px;
}
#main .company h3 {
  margin: 0;
}
#main .member dl, #main .company dl {
  margin: 0;
}
#main .member dt, #main .company dt {
  clear: left;
  float: left;
}
#main .member dd, #main .company dd {
  margin-left: 0;
}
#main .company a {
  color: #50b381;
}
/* Cases section */
#cases {
  width: 100%;
}
.cases_list {
  margin: 0 15px;
}
#main .cases_list ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
#main .cases_list li {
	display: block;
	margin-bottom: 30px;
}
.cases_list img{
	width: 90%;
	box-shadow: 0 5px 5px 0 rgba(0, 0, 0, .2);
	margin: 0 5%;
	}
.cases_list p{ text-align: center; color: #666; }
	
/* Client section */
#client {
  width: 100%;
margin: 0 auto 30px;
}
.client {
  margin: 0 15px;
}
#main .client ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
#main .client li {
  float: left;
}
/* Footer */
  #footer {
    width: 100%;
    padding: 30px 0;
    background-color: #fff;
	  text-align: center;
  }
  .wrapper {
    margin: 0 15px;
  }
  #footer h2 {
    margin: 0;
  }
  #footer .copyright {
    margin: 0;
    padding-top: 10px;
    font-size: 1rem;
    line-height: 1.3;
  }
	.lead {
		font-size: 2.0rem;
		text-align: left;
}
/* cta */
#cta {
  width: 100%;
  background-color:#455765;
  color: #fff;
	text-align: center;
	background-image: url("../images/cta-bg.png");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}
	
#cta .cta {
	padding: 0 32px;
}
#cta .cta a {
	display: block;
 	width: 90%;
	background-color:#FF9E32;
	margin: 20px auto 0 auto;
	padding: 15px 0;
	color: #455765;
	border-radius: 4px;
}
	
ul.list01 li{
	margin-left: 40px;
}

.sp-hide{display: none;}

}