/* variable
----------------------- */
/* font family */
/* media query */
/* color */
/* reset add
----------------------------------- */
img {
  width: 100%;
  height: auto;
  vertical-align: top;
}

ul {
  list-style: none;
}

/* common
------------------ */
body {
  font-family: "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
  background: #ffffff;
  color: #333333;
  font-size: 18px;
  line-height: 1.75;
}
@media screen and (max-width: 480px) {
  body {
    font-size: 14px;
  }
}

.inner {
  max-width: 1100px;
  padding-right: 60px;
  padding-left: 60px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 768px) {
  .inner {
    padding-right: 30px;
    padding-left: 30px;
  }
}
@media screen and (max-width: 480px) {
  .inner {
	  padding:4%;
  }
}

/* import
----------------------------------- */
/* header
----------------------------------- */
#top header {
/*  height: 700px;
  background: url("../images/main.jpg") no-repeat center center/cover;
  margin-bottom: 40px;*/
}
@media screen and (max-width: 480px) {
  #top header {
    margin-bottom: 20px;
  }
}
#top header .inner {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: flex-start;
}
#top header h1 {
  background: #ffffff;
  color: #191970;
  font-size: 30px;
  font-weight: bold;
  display: inline-block;
  padding: 25px 20px;
  line-height: 1.5;
  text-align: center;

}
@media screen and (max-width: 480px) {
  #top header h1 {
    font-size: 25px;
    width: 100%;
    padding: 15px;
  }
}
#top header h1 span {
  font-size: 20px;
  display: block;
}
@media screen and (max-width: 480px) {
  #top header h1 span {
    font-size: 16px;
  }
}
#top header nav {
  background: rgba(255, 255, 255, 0.7);
  margin-top: 20px;
}
@media screen and (max-width: 480px) {
  #top header nav {
    width: 100%;
  }
}
#top header nav ul {
  display: flex;
}
@media screen and (max-width: 480px) {
  #top header nav ul {
    width: 100%;
    justify-content: space-around;
  }
}
#top header nav ul li a {
  color: #008b8b;
  text-decoration: none;
  display: block;
  padding: 10px 20px;
  font-size: 18px;

}
@media screen and (max-width: 480px) {
#top header nav ul li a {
	  padding:0;
}
}
#top header nav ul li a:hover {
  background: rgba(255, 255, 255, 0.7);
}
#top header .text {
  width: 100%;
  padding-top: 150px;

}
@media screen and (max-width: 480px) {
  #top header .text {
    padding-top: 80px;
  }
}
#top header .text p.text1 {
  font-size: 40px;
  font-weight: bold;
}
@media screen and (max-width: 480px) {
  #top header .text p.text1 {
    font-size: 20px;
  }
}
#top header .text p.text2 {
  font-size: 20px;
  color: #484848;
}
@media screen and (max-width: 480px) {
  #top header .text p.text2 {
    font-size: 14px;
  }
}

/* main
----------------------------------- */
#top main section {
  margin-bottom: 100px;
}
@media screen and (max-width: 480px) {
  #top main section {
    margin-bottom: 40px;
  }
}
#top main section#s01 .inner {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  background: #131670;

}
@media screen and (max-width: 480px) {
  #top main section#s01 .inner {
    display: block;
  }
}
#top main section#s01 p.image {
  width: calc(460 / 1100 * 100%);
  margin-right: calc(-120 / 1100 * 100%);
}
@media screen and (max-width: 480px) {
  #top main section#s01 p.image {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
  }
}
#top main section#s01 .text {
  width: calc(720 / 1100 * 100%);
  padding: 40px 0 0 40px;
  background: rgba(255, 255, 255, 0.7);

  margin-top: 10px;
  line-height:1.5;
  margin-bottom: 10px;

  z-index: 999;
  font-size: 26px;
  color: #ff6e00;
  text-shadow:#fff 2px 2px 0px;

}
@media screen and (max-width: 480px) {
  #top main section#s01 .text {
    width: 96%;
    padding: 2%;
	margin-top:0;
      }
}
#top main section#s01 .text h2 {
  font-size: 40px;
  color: #000000;
  margin-bottom: 10px;
  line-height: 1.2;
}
@media screen and (max-width: 480px) {
  #top main section#s01 .text h2 {
    font-size: 20px;
  }
 #top main section#s01 .text p {
    font-size: 14px;
    line-height: 1.5;
}
}
#top main section#s01 .text p {
  padding-bottom: 0.75rem;
}
#top main section#s02 h2 {
  font-size: 30px;
  color: #6AA835;
  line-height: 1.2;
  width: calc(620 / 1100 * 100%);
  border-top: solid 1px #333333;
  border-bottom: solid 1px #333333;
  padding: 20px;
  text-align: center;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 40px;
}
@media screen and (max-width: 480px) {
  #top main section#s02 h2 {
    width: auto;
    font-size: 24px;
    margin-bottom: 40px;
	padding:20px 0;
  }
}
#top main section#s02 ul li {
  margin-bottom: 75px;
  padding-top: 40px;
  padding-bottom: 40px;
}
@media screen and (max-width: 480px) {
  #top main section#s02 ul li {
    margin-bottom: 40px;
  }
}
#top main section#s02 ul li:nth-child(1) {
  background: url("../images/num1.webp") no-repeat left center, url("../images/image05.webp") no-repeat right center;
  background-size: 80px 178px, calc(570 / 1100 * 100%);
}
#top main section#s02 ul li:nth-child(2) {
  background: url("../images/num2.webp") no-repeat calc(380 / 1100 * 100%) center, url("../images/image03.webp") no-repeat left center;
  background-size: 80px 178px, calc(380 / 1100 * 100%);
}
#top main section#s02 ul li:nth-child(3) {
  background: url("../images/num3.webp") no-repeat left center, url("../images/image04.webp") no-repeat right center;
  background-size: 80px 178px, calc(570 / 1100 * 100%);
}
#top main section#s02 ul li:nth-child(4) {
  background: url("../images/num4.webp") no-repeat calc(380 / 1100 * 100%) center, url("../images/image05.webp") no-repeat left center;
  background-size: 80px 178px, calc(380 / 1100 * 100%);
}
#top main section#s02 ul li:nth-child(5) {
  background: url("../images/num5.webp") no-repeat left center, url("../images/image04.webp") no-repeat right center;
  background-size: 80px 178px, calc(570 / 1100 * 100%);
}
#top main section#s02 ul li:nth-child(2n+1) {
  padding-left: 40px;
  padding-right: calc(380 / 1100 * 100%);
}
@media screen and (max-width: 480px) {
  #top main section#s02 ul li:nth-child(2n+1) {
    padding: 0 0 0 50px;
    background-position: left top -10px, left -9999px;
    background-size: auto 80px , auto 80px;
  }
}
#top main section#s02 ul li:nth-child(2n) {
  padding-left: calc(380 / 1100 * 100% + 40px);
}
@media screen and (max-width: 480px) {
  #top main section#s02 ul li:nth-child(2n) {
    padding: 0 0 0 50px;
    background-position: left -10px, left -9999px;
    background-size: auto 80px , auto 80px;
  }
}
#top main section#s02 ul li h3 {
  font-size: 30px;
  line-height: 1.2;
  margin-bottom: 10px;
}
@media screen and (max-width: 480px) {
  #top main section#s02 ul li h3 {
    font-size: 18px;
  }
}
#top main section#s03 .inner {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
@media screen and (max-width: 480px) {
  #top main section#s03 .inner {
    display: block;
  }
}
#top main section#s03 h2 {
  font-size: 30px;
  color: #6AA835;
;
  border-top: solid 1px #333333;
  border-bottom: solid 1px #333333;
  width: calc(380 / 1100 * 100%);
  display: flex;
  align-items: center;
  align-content: center;
  justify-content: center;
  margin-bottom: 40px;
}
@media screen and (max-width: 480px) {
  #top main section#s03 h2 {
    width: auto;
    font-size: 24px;
    margin-bottom: 0px;
    padding: 10px;
    border-bottom: none;
  }
}
#top main section#s03 table {
  width: calc(720 / 1100 * 100%);
  margin-bottom: 40px;
}
@media screen and (max-width: 480px) {
  #top main section#s03 table {
    width: 100%;
    margin-bottom: 20px;
  }
    #top main section#s03 table tr{
			  display:flex;
			  flex-wrap: wrap;
			  justify-content: center;
			  width:100%;
			  align-items: center;
}
}
#top main section#s03 table th, #top main section#s03 table td {
  line-height: 1.5;
  height: 100px;
  padding: 20px;
  border-top: solid 1px #333333;
  border-bottom: solid 1px #333333;
  vertical-align: middle;
}
@media screen and (max-width: 480px) {
  #top main section#s03 table th, #top main section#s03 table td {
    padding: 10px;
  }
}
#top main section#s03 table th {
  color: #008b8b;
  font-size: 24px;
  text-align: center;
  white-space: nowrap;
}
@media screen and (max-width: 480px) {
  #top main section#s03 table th {
    white-space: inherit;
  }
#top main section#s03 table th, #top main section#s03 table td{
	text-align:center;
	height:auto;
} 
}
#top main section#s03 table small {
  font-size: 14px;
}
#top main section#s04 h2 {
  font-size: 30px;
  font-size: 34px;
  color: #6AA835;
  line-height: 1.2;
  width: calc(620 / 1100 * 100%);
  border-top: solid 1px #333333;
  border-bottom: solid 1px #333333;
  padding: 20px;
  text-align: center;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 40px;
}
@media screen and (max-width: 480px) {
  #top main section#s04 h2 {
    width: auto;
    font-size: 24px;
    margin-bottom: 20px;
  }
}
#top main section#s04 ul {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 480px) {
  #top main section#s04 ul {
    display: block;
  }
}
#top main section#s04 ul li {
  text-align: center;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 480px) {
  #top main section#s04 ul li {
    width: 100%;
    margin-bottom: 40px;
  }
}
#top main section#s04 ul li p.image {
  margin-bottom: 20px;
}
@media screen and (max-width: 480px) {
  #top main section#s04 ul li p.image {
    width: 80%;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 0;
  }
}
#top main section#s04 ul li h3 {
  text-align: center;
  margin-bottom: 10px;
  font-size: 20px;
}
@media screen and (max-width: 480px) {
  #top main section#s04 ul li h3 {
    font-size: 18px;
  }
}
#top main section#s05 .box {
  max-width: 720px;
  margin-right: auto;
  margin-left: auto;
  border-top: solid 1px #333333;
  border-bottom: solid 1px #333333;
  padding: 40px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: row-reverse;
}
@media screen and (max-width: 480px) {
  #top main section#s05 .box {
    display: block;
    padding: 20px;
  }
}
#top main section#s05 .box p.image {
  width: calc(50% - 20px);
}
@media screen and (max-width: 480px) {
  #top main section#s05 .box p.image {
    width: 80%;
    margin-right: auto;
    margin-left: auto;
  }
}
#top main section#s05 .box .text {
  width: calc(50% - 20px);
}
@media screen and (max-width: 480px) {
  #top main section#s05 .box .text {
    width: 100%;
    margin-bottom: 20px;
  }
}
#top main section#s05 .box .text h3 {
  font-size: 24px;
}
@media screen and (max-width: 480px) {
  #top main section#s05 .box .text h3 {
    text-align: center;
    font-size: 18px;
  }
}
#top main #form {
  background: #F7F7F7;
  padding-top: 40px;
  padding-bottom: 40px;
}

/* footer
----------------------------------- */
footer p.copyright {
  text-align: center;
  padding: 20px;
}
/* カスタマイズ220829
----------------------------------- */
.sp_br{
	display:none;
}
.br_pc{
	display:inline-block;
}
@media screen and (max-width: 480px){
#top main section#s03 table .text_left , .text_left {
	text-align:left;
	display:block;
}
.sp_br{
	display: inline-block;
}
.br_pc{
	display: none;
}
#top main section#s03 table .sp_border_none , #top main section#s03 table th, #top main section#s03 table td{
	border:none;
}
#top main section#s03 table .sp_border{
	border-bottom:1px #333 solid;
	border-top:1px #333 solid;
}
.mr_tm_10px{
	display:block;
	margin-top:-4px;
}
.text_shadow{
	text-shadow:#fff 2px 2px 0px;
	line-height: 1.2;

}
.width_40{
	width:40%;
}
}
