/*=======================
共通
=======================*/

#main_visual {
  display: block;
  position: relative;
	width: 100%;
  height: 240px;
  background-image: url(../../img/top/main_visual_sp.jpg);
	background-position: center top;
  background-size: contain;
  margin-bottom: 80px;
}

#main_visual .txt_box {
  position: absolute;
  bottom: -60px;
  left: 0;
  width: 240px;
  display: block;
}

#main_visual .txt {
	box-sizing: border-box;
  width: 100%;
  padding: 4% 0 4% 5%;
  background: #8dc031;
}

#main_visual .txt p.t1 {
  font-size: 16px;
  font-weight: bold;
  color: white;
  margin: 0 0 10px;
}

#main_visual .txt p.t2 {
  font-weight: bold;
  font-size: 10px;
  color: #FFF;
  line-height: 1.333;
  letter-spacing: 0.13rem;
  margin: 0 0 3px;
}

#contact-box {
  width: 96%;
  padding: 10px;
  margin: 0 auto;
}

#contact-box .ttl {
  font-size: 24px;
}

#contact-box .left {
  margin-bottom: 10px;
}

#contact-box p {
  font-size: 12px;
}

#contact-box .btn1 {
  width: 270px;
  font-size: 12px;
  padding: 14px 10px 14px 40px;
  background-size: 18px auto;
  background-position: left 10px center;
  margin: 10px auto 20px;
}

#contact-box .btn2 {
  width: 49%;
  font-size: 12px;
  background-size: 18px auto;
  background-position: left 10px center;
  padding: 14px 10px 14px 30px;
  text-align: center;
}

#contact-box .btn3 {
  width: 49%;
  font-size: 12px;
  background-size: 18px auto;
  background-position: left 10px center;
  padding: 14px 10px 14px 30px;
  text-align: center;
}

/*=======================
トップページ
=======================*/
body#top {
  background-image: url(../../img/top/bg1.jpg);
  background-position: center top;
  background-repeat: no-repeat;
}

#top #main {
  background-image: url(../../img/top/bg1.jpg);
  background-position: center top;
  background-repeat: no-repeat;
}

#top #sec1 h2 {
  width: 100%;
  font-size: 24px;
  text-align: center;
  margin-bottom: 10px;
} 

#top #sec1 h2 span {
  width: 100%;
  font-size: 15px;
  text-align: center;
}

#top #sec1 .link {
	width: 100%;
  height: auto;
}

#top #sec1 .link dl {
  display: block;
  padding: 10px 0;
}

#top #sec1 .link dl dt {
  display: block;
  width: 100%;
  font-size: 12px;
}

#top #sec1 .link dl dd {
  display: block;
  width: 100%;
  font-size: 12px;
}

#top #sec2 {
  padding: 20px 0;
}

#top #sec2 h2 {
  font-size: 24px;
}

#top #sec2 h2 span {
  font-size: 15px;
}

#top #sec2 .box1 {
  margin-bottom: 20px;
}

#top #sec2 .box1 .left {
  order: 2;
  padding: 20px;
}

#top #sec2 .box1 .left .text1 {
  font-size: 12px;
}

#top #sec2 .box1 .left h3 {
  font-size: 18px;
  margin-bottom: 10px;
}

#top #sec2 .box1 .left .text2 {
  font-size: 14px;
}

#top #sec2 .box1 .right {
  order: 1;
}

#top #sec2 .box2 {
  margin-bottom: 20px;
}

#top #sec2 .box2 .right {
  width: 100%;
  padding: 20px;
}

#top #sec2 .box2 .right .text1 {
  font-size: 12px;
}

#top #sec2 .box2 .right h3 {
  font-size: 18px;
  margin-bottom: 10px;
}

#top #sec2 .box2 .right .text2 {
  font-size: 14px;
}

#top #sec2 .box3 .right {
  order: 1;
}

#top #sec2 .box3 {
  padding: 20px;
}

#top #sec2 .box3 .left {
  order: 2;
  width: 100%;
} 

#top #sec2 .box3 h3 {
  font-size: 16px;
  line-height: 1.4;
  position: relative;
  padding: 10px 0 10px 60px;
}

#top #sec2 .box3 h3 span:first-child {
  font-size: 10px;
  position: absolute;
  left: 0;
  top: 16px;
}

#top #sec2 .box3 h3 span.number {
  font-size: 12px;
  width: 24px;
  height: 24px;
  line-height: 24px;
  margin: 0 10px 0 4px;
  position: absolute;
  left: 24px;
  top: 9px;
}

#top #sec2 .box3 dl dt {
  font-size: 16px;
}

#top #sec3 {
  padding: 20px 0;
}

#top #sec3 h2 {
  font-size: 24px;
}

#top #sec3 .box {
  width: 48%;
  margin-bottom: 10px;
}

#top #sec3 .box p {
  font-size: 12px;
  margin-top: 4px;
  padding: 0;
}

#top #sec4 .inner {
  padding: 20px 0;
}

#top #sec4 h2 {
  font-size: 24px;
}

#top #sec4 h2 span {
  font-size: 15px;
}

#top #sec4 .btn1 {
  width: 280px;
  font-size: 13px;
  padding: 10px 10px 10px 30px;
  background-size: 18px auto;
  background-position: left 10px center;
  margin: 10px auto 0;
}

#top #sec5 .inner {
  width: 90%;
  margin: 0 auto;
  padding: 20px 0;
}

#top #sec5 h2 {
  font-size: 24px;
}

#top #sec5 h2 span {
  font-size: 15px;
}

#top #sec5 dl dt {
  font-size: 16px;
  background-size: 30px auto;
  padding: 10px 0 10px 40px;
}

#top #sec4 .flex {
  display: block;
}

#top #sec5 .box {
  width: 280px;
  margin: 0 auto 10px;
}

#top #sec6 {
  background-color: #f3f3f3;
}

#top #sec6 .inner {
  width: 90%;
  padding: 20px 0;
  margin: 0 auto;
}

#top #sec6 h2 {
  font-size: 24px;
}

#top #sec7 h2 {
  font-size: 24px;
}

#top #sec7 .inner {
  padding: 20px 0;
}

#top #sec7 table {
  width: 100%;
  table-layout: fixed;
} 

#top #sec7 table th {
  width: 90px;
  padding: 10px;
  font-size: 14px;
}

#top #sec7 table td {
  width: calc( 100% - 90px );
  padding: 10px;
  font-size: 14px;
}